WO2015129474A1 - ロボットアーム装置、ロボットアーム制御方法及びプログラム - Google Patents

ロボットアーム装置、ロボットアーム制御方法及びプログラム Download PDF

Info

Publication number
WO2015129474A1
WO2015129474A1 PCT/JP2015/053876 JP2015053876W WO2015129474A1 WO 2015129474 A1 WO2015129474 A1 WO 2015129474A1 JP 2015053876 W JP2015053876 W JP 2015053876W WO 2015129474 A1 WO2015129474 A1 WO 2015129474A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
arm
joint
control
robot arm
Prior art date
Application number
PCT/JP2015/053876
Other languages
English (en)
French (fr)
Inventor
栄良 笠井
康久 神川
容平 黒田
亘 小久保
利充 坪井
哲治 福島
康宏 松田
宮本 敦史
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to CN201580009570.XA priority Critical patent/CN106061427B/zh
Priority to US15/119,671 priority patent/US10561469B2/en
Priority to EP15754874.4A priority patent/EP3135444B1/en
Priority to JP2016505143A priority patent/JP6614130B2/ja
Publication of WO2015129474A1 publication Critical patent/WO2015129474A1/ja
Priority to US16/743,104 priority patent/US11633245B2/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/30Surgical robots
    • A61B34/32Surgical robots operating autonomously
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/30Surgical robots
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B90/00Instruments, implements or accessories specially adapted for surgery or diagnosis and not covered by any of the groups A61B1/00 - A61B50/00, e.g. for luxation treatment or for protecting wound edges
    • A61B90/06Measuring instruments not otherwise provided for
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B90/00Instruments, implements or accessories specially adapted for surgery or diagnosis and not covered by any of the groups A61B1/00 - A61B50/00, e.g. for luxation treatment or for protecting wound edges
    • A61B90/36Image-producing devices or illumination devices not otherwise provided for
    • A61B90/361Image-producing devices, e.g. surgical cameras
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B90/00Instruments, implements or accessories specially adapted for surgery or diagnosis and not covered by any of the groups A61B1/00 - A61B50/00, e.g. for luxation treatment or for protecting wound edges
    • A61B90/06Measuring instruments not otherwise provided for
    • A61B2090/061Measuring instruments not otherwise provided for for measuring dimensions, e.g. length
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B90/00Instruments, implements or accessories specially adapted for surgery or diagnosis and not covered by any of the groups A61B1/00 - A61B50/00, e.g. for luxation treatment or for protecting wound edges
    • A61B90/06Measuring instruments not otherwise provided for
    • A61B2090/064Measuring instruments not otherwise provided for for measuring force, pressure or mechanical tension
    • A61B2090/066Measuring instruments not otherwise provided for for measuring force, pressure or mechanical tension for measuring torque

Definitions

  • the present disclosure relates to a robot arm device, a robot arm control method, and a program.
  • a balanced arm hereinafter also referred to as a support arm
  • an imaging device at the tip of an arm
  • Methods for performing various treatments such as surgery have been proposed.
  • the balanced arm By using the balanced arm, the affected part can be observed stably from a desired direction, and the treatment can be performed efficiently.
  • Patent Document 1 discloses a medical device support device (balanced arm) that realizes a pivoting operation of an imaging apparatus by appropriately connecting a plurality of link mechanisms and an interlocking mechanism that interlocks these link mechanisms. It is disclosed.
  • the present disclosure proposes a new and improved robot arm device, robot arm control method, and program that can further improve user convenience.
  • a plurality of links are configured to be connected to each other by a joint portion, and the arm portion to which the imaging portion can be connected and the driving of the arm portion are controlled by driving each of the joint portions in cooperation with each other.
  • a drive control unit configured to use the relative position information of the reference position with respect to the arm unit based on the state of the arm unit and distance information between the imaging unit and the reference position.
  • a state of an arm unit configured by connecting a plurality of links to each other by a joint unit and connecting an imaging unit is obtained, and distance information between the imaging unit and a reference position is obtained. And the relative position information of the reference position with respect to the arm unit based on the state of the arm unit and the distance information, so that the reference position is located on the optical axis of the imaging unit. And controlling the driving of the arm part by driving each of the joint parts in a coordinated manner based on the state of the part.
  • a function of acquiring a state of an arm unit that is configured by connecting a plurality of links to each other by a joint unit and is connectable to the imaging unit, and the imaging unit and the reference position
  • the reference position is located on the optical axis of the imaging unit using the function of acquiring distance information, the relative position information of the reference position with respect to the arm unit based on the state of the arm unit and the distance information.
  • the state of the arm unit in a state where the imaging unit is directed to a reference position that is a predetermined point in real space, and the imaging unit and the reference position in a state where the imaging unit is directed to the reference position Based on the distance, a relative position of the reference position with respect to the arm portion is calculated. Based on the calculated relative position, the drive of the arm unit is controlled so that the reference position is located on the optical axis of the imaging unit.
  • the drive control that the arm unit is driven so that the imaging unit always faces the reference position is realized by a simpler operation in which the user operates the arm unit to point the imaging unit to the reference position. The Accordingly, it is possible to improve user convenience when setting the reference position.
  • Such drive control of the arm unit is realized by whole body cooperative control in which each of the joint units is driven in cooperation based on the state of the arm unit.
  • the user can operate the arm part more easily by controlling the driving of the arm part by so-called force control with higher user operability, and further improve the convenience for the user. Can do.
  • FIG. 9 is an explanatory diagram for describing a pivot operation that is a specific example of an arm operation according to an embodiment of the present disclosure. It is explanatory drawing for demonstrating the exercise
  • the reference position in the pivot operation is also referred to as a pivot center point.
  • the configuration of the control system for the robot arm device and the control method for the robot arm device for realizing such control will be described in detail.
  • the pivot operation as described above is realized, for example, by calculating a control value for controlling the drive of the arm unit under the constraint that the reference position is located on the optical axis of the imaging device. Can be done.
  • a pivot operation in which the imaging device moves on a hemisphere centered on the reference position that is, a pivot operation in a state where the distance between the imaging device and the reference position is kept constant.
  • driving the arm unit so that various operations such as a fixing operation in which the position and posture of the arm unit are fixed in a predetermined state (that is, the position and posture of the imaging device are fixed) are realized.
  • a fixing operation in which the position and posture of the arm unit are fixed in a predetermined state (that is, the position and posture of the imaging device are fixed) are realized.
  • the drive control of the robot arm device based on such constraint conditions can be realized by a control method called whole body cooperative control. Therefore, ⁇ 5. Regarding whole body cooperative control>, a configuration of a control system and a control method for realizing whole body cooperative control will be described. In addition, ⁇ 5. Regarding whole body cooperative control>, the whole body cooperative control of the robot arm apparatus will be described from a broader viewpoint as well as the drive control for realizing the pivot operation and the fixed operation described above.
  • a robot arm device mainly used for medical purposes will be described as an example.
  • the present embodiment is not limited to such an example, and can be applied to other fields such as industrial use.
  • a robot apparatus is configured by a multi-link structure in which a plurality of links are connected to each other by a plurality of joints, and the rotation drive at the plurality of the joints is controlled. Some drive is controlled.
  • the arm portion corresponds to the multi-link structure, and the drive of the entire arm portion is controlled by the drive of each joint portion.
  • position control and force control are known as control methods for the robot apparatus and each joint.
  • a command value such as an angle is given to the actuator of the joint, and the driving of the joint is controlled so as to follow the command value.
  • force control a target value of force to be applied to the work target is given as the entire robot apparatus, and driving of the joint portion (for example, torque generated by the joint portion) is controlled so as to realize the force indicated by the target value. Is done.
  • robot devices driven by position control are widely used because of ease of control and ease of system configuration.
  • position control is difficult to respond flexibly to external forces, it is sometimes called “hard control” and performs tasks while performing physical interactions with various external worlds (for example, interpersonal physical interactions). It is not suitable for a robot device.
  • force control is a control method that is particularly suitable for robotic devices that perform interpersonal physical interaction, because the system configuration is complicated, but “soft control” in the order of force can be realized. It can be said.
  • a balance type arm also referred to as a support arm
  • various medical units tip units
  • various imaging devices having an imaging function such as a microscope, an endoscope, and a camera are provided at the tip of the arm portion of the balance type arm, and a practitioner (user) observes an image of the surgical part taken by the imaging device
  • various methods for performing various treatments have been proposed.
  • the balance-type arm needs to have a counterbalance weight (also referred to as a counterweight or a balancer) for balancing the force when the arm portion is moved. is there.
  • a counterbalance weight also referred to as a counterweight or a balancer
  • the device used for the operation is required to be further downsized, and it is difficult to meet such a request with the generally proposed balanced arm.
  • Met. In the balanced arm only a part of the drive of the arm part, for example, only two-axis drive for moving the tip unit on a plane (two-dimensionally) is electric drive, and the arm part and the tip Movement of the unit requires manual positioning by the practitioner and surrounding medical staff.
  • an imaging device may be provided at the tip of the arm portion of a balanced arm or robot arm device, and the product may be observed by the imaging device. It is done. Even in such work, when using a balanced arm or a robot arm device whose drive is controlled by position control, there is a concern that the burden on the user will increase due to the low operability.
  • the present inventors have conceived a robot arm device whose drive is controlled by force control in order to further improve convenience for the user and reduce the burden on the user.
  • the operation of the arm unit according to the user's intuition is realized, and high operability can be obtained.
  • the present inventors control the drive by force control by applying whole body cooperative control using a dynamic system called generalized inverse dynamics as a control method.
  • a dynamic system called generalized inverse dynamics as a control method.
  • the driving of the entire arm unit is controlled by driving each joint unit of the arm unit in a coordinated manner.
  • the control value for controlling the drive of each joint part can be calculated based on the purpose of exercise and the constraint condition set for the entire arm part.
  • the restraint conditions are conditions such as position, speed, force, etc. that limit the movement of the arm part.
  • a constraint condition that a reference position that is a predetermined point in real space is located on the optical axis of the imaging device, each joint for driving the arm unit to realize the constraint condition It is possible to calculate a drive control value of the unit.
  • the drive of the arm unit is controlled so that the imaging device is always facing the surgical site, and the line of sight is It is possible to perform control in response to the user's request to observe the surgical site from different distances or different angles while being fixed to the surgical site.
  • the relative position of the reference position with respect to the robot arm apparatus is derived, and the robot arm apparatus Need to recognize the relative position.
  • the derivation of the relative position corresponds to the process of deriving the reference position in the reference coordinates used by the robot arm device to drive the arm unit.
  • the reference coordinates may be a coordinate system in an internal model of the robot arm device, for example.
  • FIG. 1 is a functional block diagram illustrating a functional configuration of a robot arm control system according to an embodiment of the present disclosure.
  • the robot arm control system 2 includes a robot arm device 10, a control device 20, and a display device 30.
  • the control device 20 performs various calculations for driving the robot arm device 10 by whole body cooperative control, and the drive of the arm portion of the robot arm device 10 is controlled based on the calculation results.
  • the arm unit of the robot arm device 10 is provided with an imaging unit 140 described later, and an image photographed by the imaging unit 140 is displayed on the display screen of the display device 30.
  • the configurations of the robot arm device 10, the control device 20, and the display device 30 will be described in detail.
  • the display device 30 displays various types of information on the display screen in various formats such as text and images, thereby visually notifying the user of the information.
  • the display device 30 displays an image captured by the imaging unit 140 of the robot arm device 10 on a display screen.
  • the display device 30 displays on the display screen an image signal processing unit (not shown) that performs various types of image processing on the image signal acquired by the imaging unit 140 and an image based on the processed image signal. It has the function and configuration of a display control unit (not shown) that performs control to display. Since the configuration of the display device 30 may be the same as that of a general display device, detailed description thereof is omitted here.
  • the robot arm device 10 has an arm part which is a multi-link structure composed of a plurality of joint parts and a plurality of links, and is provided at the tip of the arm part by driving the arm part within a movable range.
  • the position and orientation of the tip unit (imaging unit in this embodiment) to be controlled are controlled.
  • the robot arm device 10 has an arm unit 120.
  • the arm unit 120 includes a joint unit 130 and an imaging unit 140.
  • the arm part 120 is a multi-link structure composed of a plurality of joint parts 130 and a plurality of links, and the drive of each joint part 130 is controlled by being controlled. Since the functions and configurations of the plurality of joint portions 130 included in the arm portion 120 are the same as each other, FIG. 6 illustrates the configuration of one joint portion 130 as a representative of the plurality of joint portions 130.
  • the joint unit 130 rotatably connects between the links in the arm unit 120, and drives the arm unit 120 by controlling the rotation drive by the control from the joint control unit 135 described later.
  • the joint unit 130 includes a joint drive unit 131, a joint state detection unit 132, and a joint control unit 135.
  • the joint control unit 135 includes various processors such as a CPU (Central Processing Unit), and controls the operation of the joint unit 130.
  • the arm control unit 110 includes a drive control unit 111, and the drive of the arm unit 120 is controlled by controlling the drive of the joint unit 130 by the control from the drive control unit 111.
  • the drive control unit 111 controls the rotational speed of the motor that constitutes the joint drive unit 131 by controlling the amount of current supplied to the joint drive unit 131 of the joint unit 130, and The rotation angle and generated torque in the unit 130 are controlled.
  • the drive control of the joint unit 130 by the drive control unit 111 may be performed based on the calculation result in the control device 20.
  • the joint drive unit 131 is a drive mechanism such as a motor that constitutes an actuator of the joint unit 130.
  • the joint unit 130 is rotationally driven.
  • the drive of the joint drive unit 131 is controlled by the drive control unit 111.
  • the motor constituting the joint drive unit 131 is driven by the amount of current according to a command from the drive control unit 111.
  • the joint state detection unit 132 detects the state of the joint unit 130.
  • the state of the joint 130 may mean the state of motion of the joint 130.
  • the state of the joint unit 130 includes information such as the rotation angle, rotation angular velocity, rotation angular acceleration, and generated torque of the joint unit 130.
  • the joint state detection unit 132 is configured by various sensors such as an encoder and a torque sensor, for example, and detects the rotation angle of the joint unit 130 and the generated torque and the external torque of the joint unit 130. be able to.
  • the joint state detection unit 132 transmits the detected state of the joint unit 130 to the control device 20.
  • the imaging unit 140 is an example of a tip unit provided at the tip of the arm unit 120, and has a function of acquiring an image to be shot.
  • the imaging unit 140 is configured by various imaging devices such as a camera and a microscope.
  • the imaging unit 140 is configured by a digital video camera, and can acquire an image signal representing an image to be captured.
  • the imaging unit 140 transmits the acquired image signal to the display device 30.
  • the imaging unit 140 is provided at the tip of the arm unit 120.
  • FIG. 1 a state in which the imaging unit 140 is provided at the distal end of the link at the final stage via the plurality of joint units 130 and the plurality of links is schematically illustrated between the joint unit 130 and the imaging unit 140. It is expressed by However, in this embodiment, the site where the imaging unit 140 is provided is not limited to the tip of the arm unit 120, and the imaging unit 140 may be provided at any site of the arm unit 120.
  • the control device 20 includes a storage unit 220 and a control unit 230.
  • the control unit 230 includes various processors such as a CPU, for example, and controls the control device 20 in an integrated manner and performs various calculations for controlling the driving of the arm unit 120 in the robot arm device 10. Specifically, the control unit 230 performs various calculations in the whole body cooperative control and the ideal joint control in order to control the driving of the arm unit 120 of the robot arm device 10. Further, the control unit 230 performs various processes for deriving a reference position when the imaging unit 140 observes the object.
  • various processors such as a CPU, for example
  • the control unit 230 includes a whole body cooperative control unit 240, an ideal joint control unit 250, and a reference position deriving unit 260.
  • the whole body cooperative control unit 240 performs various calculations related to whole body cooperative control using generalized inverse dynamics.
  • the ideal joint control unit 250 performs various calculations related to ideal joint control that realizes an ideal response based on a theoretical model. By controlling the drive of the robot arm device 10 based on these calculation results, the robot arm device 10 is driven by force control.
  • the processing performed by the whole body cooperative control unit 240 and the ideal joint control unit 250 is described in ⁇ 4.
  • the whole body cooperative control will be described in detail again in>, and only the outline will be briefly described here.
  • the operation space is an important concept in the force control of the robot device.
  • the operation space is a space for describing the relationship between the force acting on the multi-link structure and the acceleration of the multi-link structure.
  • the operation space is, for example, a joint space, a Cartesian space, a momentum space or the like to which a multi-link structure belongs.
  • the motion purpose represents a target value in the drive control of the multi-link structure, and is, for example, a target value such as position, speed, acceleration, force, impedance, etc. of the multi-link structure to be achieved by the drive control.
  • Constraint conditions are constraints regarding the position, speed, acceleration, force, etc. of the multi-link structure, which are determined by the shape and structure of the multi-link structure, the environment around the multi-link structure, settings by the user, and the like.
  • the constraint condition may be various information that restricts (restrains) the movement of the arm unit 120.
  • the constraint condition includes information on generated force, priority, presence / absence of a non-driven joint, vertical reaction force, friction weight, support polygon, and the like.
  • the whole-body cooperative control unit 240 uses inverse generalized dynamics to control values for driving the arm unit 120 so as to achieve a predetermined motion purpose (for example, driving parameters of each joint unit 130 (for example, the joint unit 130).
  • the generated torque value) can be calculated in consideration of a predetermined constraint condition.
  • the control value of the arm unit 120 is calculated by the whole-body cooperative control unit 240 under the constraint that the reference position is located on the optical axis of the imaging unit 140.
  • a control value of the arm unit 120 that causes the imaging unit 140 to perform a pivot operation is calculated.
  • the control value of the arm unit 120 is calculated by the whole body cooperative control unit 240 under the constraint that the position and posture of the arm unit 120 are fixed in a predetermined state, so that the arm unit 120 is fixed. That is, the control value of the arm unit 120 is calculated (that is, the imaging unit 140 is also fixed). Further, for example, the control value of the arm unit 120 is calculated by the whole-body cooperative control unit 240 in a state where the constraint condition is not particularly set, so that the positions and postures of the arm unit 120 and the imaging unit 140 are freely moved. The control value of the arm unit 120 that realizes a free operation that can be performed is calculated. The whole body cooperative control unit 240 provides information about the calculated control value to the ideal joint control unit 250.
  • the ideal joint control unit 250 calculates a command value that is finally used to drive the arm unit 120 by correcting the control value calculated by the whole-body cooperative control unit 240 in consideration of the influence of disturbance.
  • the command value may be a generated torque value of the joint unit 130 in consideration of the influence of disturbance.
  • the ideal joint control unit 250 transmits information about the calculated command value to the robot arm device 10. Based on the command value, the drive control unit 111 drives each joint unit 130, so that the arm unit 120 is driven so as to achieve a predetermined motion purpose under a predetermined constraint condition.
  • the reference position deriving unit 260 derives a reference position that is a reference point in the observation of the object by the imaging unit 140.
  • the derivation of the reference position refers to a reference coordinate system (for example, a coordinate in an internal model) used by the robot arm device 10 to drive the arm unit 120 by calculating a relative position of the reference position with respect to the arm unit 120. It may mean a process of deriving a reference position in the system.
  • a constraint condition that the reference position as described above is located on the optical axis of the imaging unit 140 is set, and under the constraint condition, the whole body cooperation
  • a control value and a command value for driving the arm unit 120 are calculated by the control unit 240 and the ideal joint control unit 250.
  • the reference position deriving unit 260 includes an arm state acquisition unit 241, a distance information acquisition unit 261, and a relative position calculation unit 262.
  • the arm state acquisition unit 241 acquires the state (arm state) of the arm unit 120 based on the state of the joint unit 130 detected by the joint state detection unit 132.
  • the arm state may mean a state of movement of the arm unit 120.
  • the arm state includes information such as the position, speed, acceleration, and force of the arm unit 120.
  • the joint state detection unit 132 acquires information such as the rotation angle, the rotation angular velocity, the rotation angular acceleration, and the generated torque in each joint unit 130 as the state of the joint unit 130.
  • the storage unit 220 stores various types of information processed by the control device 20, and in the present embodiment, the storage unit 220 stores various types of information (arm information) about the arm unit 120.
  • the arm state acquisition unit 241 can acquire the arm information from the storage unit 220. Therefore, the arm state acquisition unit 241 determines the position (coordinates) in space of the plurality of joint units 130, the plurality of links, and the imaging unit 140 based on the state of the joint unit 130 and the arm information (that is, the arm unit 120). The position and orientation, and the position and orientation of the imaging unit 140) and information such as the force acting on each joint unit 130, link, and imaging unit 140 can be acquired as the arm state.
  • various physical quantities included in the arm state may be expressed by a reference coordinate system used for drive control of the arm unit 120, such as a coordinate system of an internal model.
  • the arm state acquisition unit 241 acquires the arm state in a state where the imaging unit 140 is directed to the reference position. Note that the operation of directing the image capturing unit 140 to the reference position may be performed manually by the user while referring to an image captured by the image capturing unit 140 displayed on the display device 30, for example.
  • the arm state acquisition unit 241 provides information about the acquired arm state to the relative position calculation unit 262.
  • the distance information acquisition unit 261 acquires distance information about the distance between the imaging unit 140 and the reference position in a state where the imaging unit 140 is directed to the reference position.
  • the distance information can be acquired based on the focal length of the imaging unit 140.
  • information about the focal length when the imaging unit 140 is directed to the reference position and focused on the reference position may be transmitted from the imaging unit 140 to the distance information acquisition unit 261.
  • the process of focusing on the reference position may be performed manually by the user, or may be performed by the AF function if the imaging unit 140 has an autofocus (AF) function.
  • AF autofocus
  • the storage unit 220 stores information about the performance of the imaging device that constitutes the imaging unit 140, and the distance information acquisition unit 261 refers to the storage unit 220, thereby operating distance corresponding to the focal length.
  • the distance information between the imaging unit 140 and the reference position can be acquired as (WD: Work Distance).
  • the focal length can be calculated by the imaging unit 140 based on the state of the optical system in the imaging unit 140 (for example, the position of a focus adjustment lens).
  • the imaging unit 140 may transmit information about the state of the optical system at the time of focusing to the distance information acquisition unit 261, and the calculation of the focal distance may be performed by the distance information acquisition unit 261.
  • the distance information acquisition unit 261 provides the acquired distance information to the relative position calculation unit 262.
  • the relative position calculation unit 262 calculates the relative position of the reference position with respect to the arm unit 120 based on the arm state acquired by the arm state acquisition unit 241 and the distance information acquired by the distance information acquisition unit 261. Specifically, the relative position calculation unit 262 can recognize the positions and postures of the arm unit 120 and the imaging unit 140 in the reference coordinate system from the arm state of the arm unit 120. Further, the relative position calculation unit 262 can recognize the distance between the imaging unit 140 and the reference position based on the distance information. Therefore, the relative position calculation unit 262 can calculate the relative position of the reference position with respect to the arm unit 120 from these pieces of information.
  • the relative position calculation unit 262 provides information about the calculated relative position to the whole body cooperative control unit 240.
  • the calculation of the relative position of the reference position with respect to the arm unit 120 means that the coordinates of the reference position in the reference coordinate system have been derived. Therefore, the reference position can be set as a constraint condition.
  • the arm unit 120 under the constraint that the reference position is located on the optical axis of the imaging unit 140 using the reference position by the whole body cooperative control unit 240 and the ideal joint control unit 250.
  • a control value and a command value for driving are calculated.
  • the arm unit 120 is driven so that the distance and angle from the reference position can be freely changed while the imaging unit 140 is always facing the reference position (that is, the pivot operation is performed). Will be controlled.
  • a constraint condition that a predetermined point on the optical axis of the imaging unit 140 is fixed at the reference position is further set, so that the distance between the imaging unit 140 and the reference position is kept constant.
  • the drive of the arm unit 120 is controlled so that the pivoting operation is performed in the leaned state.
  • the storage unit 220 stores various types of information processed by the control device 20.
  • the storage unit 220 can store various parameters used in calculations related to whole body cooperative control and ideal joint control performed by the control unit 230.
  • the storage unit 220 may store an exercise purpose and a constraint condition used in a calculation related to the whole body cooperative control by the whole body cooperative control unit 240.
  • the storage unit 220 may store calculation results in calculations related to whole body cooperative control and ideal joint control by the control unit 230, numerical values calculated in the calculation process, and the like.
  • the storage unit 220 may store various types of information related to the arm unit 120 used when the arm state acquisition unit 241 acquires the arm state.
  • the storage unit 220 can store information such as parameters used in various processes performed by the reference position deriving unit 260 and results of the processes. As described above, the storage unit 220 may store various parameters related to various processes performed by the control unit 230, and the control unit 230 performs various processes while transmitting and receiving information to and from the storage unit 220. be able to.
  • the reference position for observing the object by the imaging unit 140 is derived by the reference position deriving unit 260. Then, the derived reference position is set as a constraint condition when performing whole-body cooperative control, whereby a pivot operation centered on the reference position is realized.
  • the derivation of the reference position is performed by acquiring the arm state of the arm unit 120 and the distance information between the imaging unit 140 and the reference position in a state where the imaging unit 140 is directed to the reference position.
  • the arm state of the arm unit 120 can be automatically acquired by the arm state acquisition unit 241 based on the state of the joint unit 130.
  • the distance information can also be automatically acquired by the distance information acquisition unit 261 based on information about the focal length of the imaging unit 140, for example. Therefore, the operation performed by the user for deriving the reference position is only an operation of directing the imaging unit 140 to the reference position while referring to an image captured by the imaging unit 140 displayed on the display device 30. Therefore, for example, the derivation of the reference position and the pivot operation centered on the reference position are realized by a simpler operation than the operation described in Patent Document 1 regardless of the skill level of the operator. As a result, the workload of the operator of the robot arm device 10 at the time of surgery is reduced, so that the user's convenience can be further improved, such as shortening the operation time and reducing the operator's fatigue.
  • such a pivoting operation is performed in the robot arm device 10 whose driving is controlled by so-called force control. Accordingly, the user can more intuitively operate the arm unit 120 at the time of deriving the reference position and at the time of the pivot operation, and the drive control of the robot arm device 10 with higher operability and higher user convenience is realized. Is done.
  • each component of the robot arm control system 2 according to the present embodiment described above may be configured using a general-purpose member or circuit, or hardware specialized for the function of each component. It may be constituted by.
  • the CPU or the like may perform all functions of each component. Therefore, it is possible to appropriately change the configuration to be used according to the technical level at the time of carrying out the present embodiment.
  • a computer program for realizing each function of the robot arm control system 2 according to the present embodiment as described above and mount it on a personal computer or the like.
  • a computer-readable recording medium storing such a computer program can be provided.
  • the recording medium is, for example, a magnetic disk, an optical disk, a magneto-optical disk, a flash memory, or the like.
  • the above computer program may be distributed via a network, for example, without using a recording medium.
  • Robot arm control method Next, a robot arm control method according to an embodiment of the present disclosure will be described.
  • arm control using the reference position is performed (for example, the imaging apparatus performs a pivot operation with the reference position as the pivot center point).
  • the drive control of the arm portion is performed.
  • FIG. 2 the outline
  • the processing procedure of the robot arm control method according to the present embodiment including the reference position derivation method will be described in detail with reference to FIG.
  • FIG. 2 is an explanatory diagram for explaining the outline of the reference position deriving method according to the present embodiment.
  • an imaging device (not shown) provided at the tip of the arm unit 310 of the robot arm device is at a reference position 360 in real space.
  • the arm portion 310 is configured by connecting a plurality of links 312 by a plurality of joint portions 311.
  • the arm part 310, the link 312 and the joint part 311 correspond to the arm part 120, the link and joint part 130 shown in FIG.
  • the robot arm device can be configured by installing the arm unit 310 on a base such as a base.
  • a base such as a base.
  • illustration of a member that hits the base is omitted. .
  • the arm unit 310 is configured to have six degrees of freedom.
  • the configuration of the arm unit 310 of the robot arm device is not limited to the illustrated example.
  • the specific configuration of the arm unit 310 such as the number of joint units 311 disposed and the connection status between the link 312 and the joint unit 311, is appropriately determined so as to realize a desired degree of freedom according to the application of the robot arm device. May be determined.
  • the specific configuration of the arm unit 310 may be determined so that the arm unit 310 has a degree of freedom that allows the imaging apparatus to perform a pivot operation.
  • an arrow representing a reference coordinate system (XYZ coordinates) (for example, a coordinate system in the internal model) used by the robot arm device to drive the arm unit 310 is superimposed on the arm unit 310.
  • XYZ coordinates for example, a coordinate system in the internal model
  • the origin of the XYZ coordinates may be appropriately set at a position where the driving of the arm unit 310 can be easily described.
  • the imaging device is, for example, a camera, a microscope, or the like, and the reference position 360 may be a predetermined position on an observation target (for example, a surgical site of a patient).
  • the line-of-sight direction (optical axis direction) of the imaging device is important. Therefore, in FIG. 2, the imaging device is not illustrated in FIG. 2, and the visual field region 330 of the imaging device is schematically illustrated as a plane. In addition, an arrow indicating coordinates (xyz coordinates) in the visual field region 330 is shown.
  • FIG. 2 the imaging device is not illustrated in FIG. 2
  • the visual field region 330 of the imaging device is schematically illustrated as a plane.
  • an arrow indicating coordinates (xyz coordinates) in the visual field region 330 is shown.
  • the two axes orthogonal to each other in the plane representing the visual field region 330 are the x axis and the y axis, and the line-of-sight direction of the imaging device is a direction perpendicular to the plane representing the visual field region 330.
  • the z axis is used.
  • the imaging device is arranged at the tip of the arm unit 310 so that the line-of-sight direction of the imaging device matches the direction of the link 312 (the hand end direction of the arm unit 310) arranged at the tip of the arm unit 310. It is connected.
  • the present embodiment is not limited to such an example, and the imaging apparatus may be provided in any part of the arm unit 310, and the installation position thereof is not limited.
  • the reference position in order to derive the reference position, it is only necessary to know the position of the imaging device and the distance between the imaging device and the reference position.
  • the tip of the arm part 310 may not be.
  • the process in which the imaging device is directed to the reference position 360 is performed manually by a user with reference to a display device on which an image photographed by the imaging device is displayed, for example, and the reference position 360 is set to the approximate center of the visual field region 330.
  • the arm unit 310 is operated to adjust the position and orientation of the imaging apparatus.
  • the operation mode of the arm unit 310 is set to a free operation mode in which the above-described free operation can be performed.
  • each joint portion 311 can be freely moved in accordance with a user operation input.
  • the user may move the imaging device to an appropriate position and posture by directly applying an external force to the arm unit 310, or by moving the arm unit 310 via various input devices such as a remote controller and a controller.
  • the imaging device may be moved to an appropriate position and posture.
  • the imaging apparatus When the imaging apparatus is directed to the reference position 360, the state of each joint 311 in this state is detected, and the arm state is acquired based on the detected state of each joint 311.
  • the process is performed by a configuration corresponding to the arm state acquisition unit 241 illustrated in FIG.
  • the arm state includes information about the position and orientation of the arm unit 310, and the robot arm device can recognize the positions of the arm unit 310 and the imaging device in the reference coordinate system based on the arm state.
  • distance information representing the distance between the imaging device and the reference position 360 is acquired in a state where the imaging device is directed to the reference position 360.
  • the processing is performed by a configuration corresponding to the distance information acquisition unit 261 shown in FIG.
  • the distance information may be acquired based on the focal distance when the focus of the imaging apparatus is adjusted to the reference position 360.
  • the optical system in the imaging apparatus is appropriately adjusted so that the focus of the imaging apparatus is aligned with the reference position 360 by an AF (autofocus) function provided in the imaging apparatus or manually by the user.
  • the focal length may be calculated based on the state of the optical system.
  • the relative position of the reference position 360 with respect to the arm unit 310 is then calculated.
  • This processing is performed by a configuration corresponding to the relative position calculation unit 262 shown in FIG.
  • the process may be a process of calculating a position (coordinates) of 360 as a reference position in the reference coordinate system.
  • the robot arm device recognizes the position of the imaging device in the reference coordinate system based on the arm state of the arm unit 310, and recognizes the distance from the imaging device to the reference position 360 based on the distance information. From this information, the position of the reference position 360 in the reference coordinate system can be calculated.
  • the coordinates of the reference position 360 in the reference coordinate system are calculated in this way, and drive control of the arm unit 310 using the coordinates of the reference position 360, for example, a pivot operation around the reference position 360 is performed. Etc. will be performed.
  • FIG. 3 is a flowchart showing an example of a processing procedure of the robot arm control method according to the present embodiment.
  • the flowchart shown in FIG. 3 shows a series of processes when the pivot operation is performed in the robot arm apparatus according to the present embodiment. 3 can be executed by the robot arm control system 2 shown in FIG. 1, for example.
  • each process shown in FIG. 3 will be described in association with the configuration of the robot arm control system 2 shown in FIG.
  • the operation mode of the arm unit 120 is shifted to the free operation mode (step S101).
  • the whole body cooperative control unit 240 shown in FIG. 1 calculates a control value that causes the arm unit 120 to perform a free operation, and the drive of the arm unit 120 is controlled based on the control value. It will be.
  • the arm unit 120 can be freely moved in accordance with a user operation input.
  • the arm unit 120 is moved so that the reference position is in the center of the field of view of the imaging unit 140 (step S103).
  • the reference position is, for example, a predetermined point on the patient's surgical site, and is a point that becomes the pivot center point during the pivot operation.
  • the position of the arm unit 120 may be adjusted by a user's manual operation while referring to the display device 30 on which an image captured by the imaging unit 140 is displayed.
  • step S105 the operation mode of the arm unit 120 is shifted to a pivot operation mode in which the imaging unit 140 performs a pivot operation.
  • step S107 it is necessary to set the pivot center point, and therefore it is determined whether or not the pivot center point is set.
  • the pivot center point may also change. Therefore, when the pivot center point is set, the pivot mode is once set and then the mode shifts to the fixed mode. (Step S119 described later), which corresponds to the case of shifting to the pivot operation again. Accordingly, when the process reaches step S107 via step S103, it is basically determined that the pivot center point is not set, and the process proceeds to step S109.
  • step S109 the arm state in a state where the imaging unit 140 is directed to the pivot center point is acquired.
  • step S111 distance information between the imaging unit 140 and the pivot center point is acquired.
  • step S113 the relative position of the pivot center point with respect to the arm unit 120 is calculated.
  • FIG. 3 in order to emphasize that the arm state is acquired in order to derive the reference position, the process of acquiring the arm state is illustrated as step S109 formally.
  • the arm state is always acquired by the arm state acquisition unit 241. Therefore, the arm state is acquired only at the timing shown in step S109. is not.
  • the reference position is set as the pivot center point (step S115).
  • the drive of the arm unit 120 is controlled so that the imaging unit 140 performs a pivot operation around the pivot center point.
  • the user can freely adjust the viewpoint (distance and angle) with the line of sight (optical axis) of the imaging unit 140 directed toward the pivot center point (step S117). Thereby, the user can perform various treatments while observing the same observation target (operation part) from a plurality of viewpoints.
  • the operation mode of the arm unit 120 can be shifted to the fixed operation mode (step S119).
  • the driving of the arm unit 120 is controlled so as to maintain the state at that time, and the position and posture of the arm unit 120 are fixed (step S121). Since the position and orientation of the imaging unit 140 are also fixed at a predetermined position in the fixed operation mode, a captured image from a specific distance and angle is displayed on the display device 30.
  • step S123 After shifting to the fixed operation mode, it is determined whether or not to change the viewpoint again (step S123). When the treatment is continued with the viewpoint fixed as it is, the fixed operation mode is maintained. On the other hand, when it is desired to change the viewpoint again, the process returns to step S105 to shift to the pivot operation mode.
  • the fixed operation mode is shifted to the pivot operation mode
  • the imaging unit 140 remains in the state of being directed to the pivot center point when the pivot operation is performed earlier. Therefore, when the fixed operation mode is shifted to the pivot operation mode, it is determined that the pivot center point is set in the process shown in step S107, and the process of deriving the reference position shown in steps S109 to S115 is omitted. The pivot operation is performed based on the set pivot center point.
  • step S101 is performed again.
  • an operation for directing the imaging unit 140 to the reference position is performed. Specifically, in this operation, the positions and postures of the arm unit 120 and the imaging unit 140 are adjusted so that the reference position is approximately at the center of the visual field region of the imaging unit 140.
  • the position of the imaging unit 140 is adjusted by the user directly applying an external force to the arm unit 120 or moving the arm unit 120 via various input devices such as a remote controller and a controller. It was.
  • the present embodiment is not limited to such an example, and the positions and postures of the arm unit 120 and the imaging unit 140 are adjusted by other methods so that the reference position is approximately at the center of the field of view of the imaging unit 140. Also good.
  • the visual field region may move based on an operation input on a captured image that is captured by the imaging unit 140 and displayed on the display device 30.
  • the operation input may be, for example, processing for selecting a predetermined point on the screen.
  • the selection process may be performed by operating a cursor or pointer in the screen using an input device such as a mouse, or when the screen of the display device 30 is configured by a touch panel. Alternatively, it may be performed by selecting a predetermined point directly by an operating body such as a finger or a stylus pen.
  • the control device 20 acquires the position information of the point selected in the screen of the display device 30, and based on the position information
  • the arm unit 120 may be driven so that the selected point is the center of the field of view of the imaging unit 140.
  • the visual field region may be moved by performing image analysis on a captured image captured by the imaging unit 140.
  • the surgeon attaches a marker to a site to be observed (that is, a site corresponding to the reference position) in the surgical site.
  • the operation of attaching the marker may be performed by attaching a predetermined mark directly to the surgical site using a surgical tool such as an electric knife, or by using a staining solution to remove the surgical site in a predetermined color different from the surrounding tissue. It may be dyed.
  • the control device 20 performs image analysis on a captured image captured by the imaging unit 140 to extract a part to which the marker is attached from the captured image, and the extracted part is a visual field region of the imaging unit 140. You may control the drive of the arm part 120 so that it may become the center.
  • the surgeon can adjust the visual field region by performing an operation on the screen or the surgical site while referring to the screen of the display device 30. It is possible to adjust the visual field region more efficiently and more easily than when directly operating 120.
  • various distance sensors using laser, ultrasonic waves, infrared rays, or the like are provided at the tip of the arm unit 120, and the distance between the imaging unit 140 and the reference position is measured by the distance sensor.
  • the distance information may be acquired.
  • the imaging unit 140 when configured by a plurality of cameras such as a stereo camera and a compound eye camera, the parallax information acquired based on captured images captured by the plurality of cameras.
  • the distance information between the imaging unit 140 and the reference position may be acquired using.
  • an imaging device that captures images of the robot arm device 10 from the outside is provided separately, the distance between the external imaging device and the imaging unit 140 provided in the arm unit 120, and the external imaging.
  • the distance information between the imaging unit 140 and the reference position may be acquired by measuring the distance between the apparatus and the surgical part (reference position).
  • the method of measuring the distance between the external imaging device and the imaging unit 140 or the surgical unit may use the focal length of the external imaging device, or the external imaging device may be a stereo camera or a compound eye camera. In some cases, parallax information may be used.
  • distance information between the imaging unit 140 and the reference position may be acquired by the operator directly inputting distance information as a numerical value.
  • the driving of the arm unit 120 can be controlled by the control device 20 so that the distance between the imaging unit 140 and the reference position becomes the input value.
  • an appropriate method may be selected from these modified examples in consideration of the use of the robot arm device 10 and the environment of the site where the treatment is performed, measurement accuracy, cost, and the like. Further, a plurality of these methods may be used in combination. By measuring the distance by a plurality of methods, the measurement accuracy can be improved, and a pivot operation in which the pivot center point is positioned with higher accuracy can be realized.
  • FIG. 4 is an explanatory diagram for describing an application example in which the robot arm device according to the embodiment of the present disclosure is used for medical purposes.
  • FIG. 4 schematically shows a state of treatment using the robot arm device according to the present embodiment.
  • a doctor who is a practitioner (user) 520 uses a surgical instrument 521 such as a scalpel, a scissors, or a forceps to perform a treatment target (patient) on the treatment table 530.
  • a state in which an operation is performed on 540 is illustrated.
  • the treatment is a general term for various medical treatments performed on a patient who is a treatment target 540 by a doctor who is a user 520, such as surgery and examination.
  • the state of the operation is illustrated as an example of the operation.
  • the operation using the robot arm device 510 is not limited to the operation, and other various operations such as an endoscope are used. It may be an inspection or the like.
  • a robot arm device 510 is provided beside the treatment table 530.
  • the robot arm device 510 includes a base portion 511 that is a base and an arm portion 512 that extends from the base portion 511.
  • the arm portion 512 includes a plurality of joint portions 513a, 513b, and 513c, a plurality of links 514a and 514b connected by the joint portions 513a and 513b, and an imaging unit 515 provided at the tip of the arm portion 512.
  • the arm unit 512 includes three joint units 513a to 513c and two links 514a and 514b.
  • the positions of the arm unit 512 and the imaging unit 515 and The number and shape of the joint portions 513a to 513c and the links 514a and 514b, the direction of the drive shaft of the joint portions 513a to 513c, etc. may be appropriately set so as to realize a desired degree of freedom in consideration of the freedom of posture. .
  • the joint portions 513a to 513c have a function of connecting the links 514a and 514b to each other so as to be rotatable, and the drive of the arm portion 512 is controlled by driving the rotation of the joint portions 513a to 513c.
  • the position of each component of the robot arm device 510 means the position (coordinates) in the space defined for drive control, and the posture of each component is the drive. It means the direction (angle) with respect to an arbitrary axis in the space defined for control.
  • the driving (or driving control) of the arm unit 512 refers to driving (or driving control) of the joint units 513a to 513c and driving (or driving control) of the joint units 513a to 513c. This means that the position and posture of each component of the arm portion 512 are changed (change is controlled).
  • an imaging unit 515 is provided at the tip of the arm unit 512 as an example of the tip unit.
  • the imaging unit 515 is a unit that acquires an image to be captured (captured image), and is, for example, a camera that can capture a moving image or a still image.
  • the posture and position of the arm unit 512 and the imaging unit 515 are detected by the robot arm device 510 so that the imaging unit 515 provided at the distal end of the arm unit 512 images the state of the treatment site of the treatment target 540. Is controlled.
  • the tip unit provided at the tip of the arm portion 512 is not limited to the imaging unit 515, and may be various medical instruments.
  • the medical instrument include a unit having an imaging function, such as an endoscope, a microscope, and the above-described imaging unit 515, and various units used in the operation, such as various surgical instruments and inspection apparatuses.
  • the robot arm apparatus 510 according to the present embodiment is a medical robot arm apparatus provided with a medical instrument.
  • a stereo camera having two imaging units (camera units) may be provided at the tip of the arm unit 512, and shooting may be performed so that the imaging target is displayed as a three-dimensional image (3D image).
  • the robot arm device 510 provided with an imaging unit 515 for photographing a treatment site and a camera unit such as the stereo camera as the distal unit is also referred to as a robot arm device for a video microscope.
  • a display device 550 such as a monitor or a display is installed at a position facing the user 520.
  • a captured image of the treatment site imaged by the imaging unit 515 is displayed on the display screen of the display device 550.
  • the user 520 performs various treatments while viewing the captured image of the treatment site displayed on the display screen of the display device 550.
  • the robot arm device 510 in the medical field, it is proposed to perform an operation while imaging a treatment site by the robot arm device 510.
  • various treatments including surgery it is required to reduce fatigue and burden on the user 520 and the patient 540 by performing the treatment more efficiently.
  • the robot arm device 510 is considered to require the following performance, for example.
  • the robot arm device 510 is required to secure a working space in the operation.
  • the arm unit 512 or the imaging unit 515 obstructs the view of the practitioner or the movement of the hand performing the treatment, the efficiency of the operation Leading to a decline.
  • a plurality of other doctors who perform various support operations such as handing instruments to the user 520 and checking various vital signs of the patient 540 Since a nurse or the like is generally around the user 520 and the patient 540 and there are other devices for performing the support operation, the surgical environment is complicated. Therefore, it is desirable that the robot arm device 510 be smaller.
  • the robot arm device 510 is required to have high operability when moving the imaging unit 515.
  • the user 520 is required to observe the same surgical site from various positions and angles while performing the treatment on the surgical site.
  • the angle of the imaging unit 515 it is necessary to change the angle of the imaging unit 515 with respect to the treatment site.
  • the imaging direction of the imaging unit 515 is fixed to the treatment site (that is, the same site). It is more desirable that only the angle at which the image is taken changes.
  • the imaging unit 515 moves in the plane of the cone with the treatment site as the apex, and a turning operation with the cone axis as a turning axis (
  • the robot arm device 510 has been required to have operability with a higher degree of freedom, such as a pivot operation.
  • the pivot operation is also called a point lock operation.
  • the image pickup unit 515 can be easily moved with one hand, for example, by moving the imaging unit 515 or the above-described pivoting operation.
  • the photographing center of the photographed image photographed by the imaging unit 515 is changed from a site where treatment is performed to another site (for example, a site where the next treatment is performed). There may be a request to move it. Therefore, when changing the position and orientation of the imaging unit 515, not only the method of manually controlling the driving of the arm unit 512 as described above, but also the driving of the arm unit 512 by an operation input from an input unit such as a pedal, for example.
  • Various driving methods for the arm portion 512 such as a method for controlling the movement, are required.
  • the robot arm device 510 is required to have high operability that meets the intuition and demands of the user 520, for example, to realize the above-described pivoting operation and easy manual movement.
  • the robot arm device 510 is required to have stability in drive control of the arm unit 512.
  • the stability of the arm unit 512 with respect to the drive control may be the stability of the position and posture of the tip unit when the arm unit 512 is driven.
  • the stability of the arm unit 512 with respect to the drive control includes smooth movement of the tip unit and suppression of vibration (vibration suppression) when the arm unit 512 is driven.
  • vibration suppression vibration suppression
  • the robot arm device 510 when the robot arm device 510 is used for surgery, a stereo camera having two imaging units (camera units) as a tip unit is provided, and a three-dimensional image (based on an image captured by the stereo camera) A usage method in which a 3D image) is displayed on the display device 550 can be assumed.
  • a 3D image when a 3D image is displayed, if the position and posture of the stereo camera are unstable, there is a possibility of inducing a so-called 3D sickness of the user.
  • the observation range imaged by the imaging unit 515 may be expanded to about ⁇ 15 mm.
  • the present inventors examined a general existing balanced arm and a robot arm device by position control from the viewpoint of the above three performances.
  • a general balance arm usually has a counterbalance weight (both counterweight or balancer) for balancing the force when the arm is moved. Is provided inside the base portion, etc., it is difficult to reduce the size of the balance-type arm device, and it is difficult to say that the performance is satisfied.
  • the present inventors have obtained knowledge that there is a demand for the above-described three performances regarding the robot arm device. However, it is considered that it is difficult to satisfy these performances with a general existing balanced arm or a robot arm device based on position control. As a result of studying a configuration that satisfies the above three performances, the present inventors have come up with a robot arm device, a robot arm control system, a robot arm control method, and a program according to the following embodiments. Hereinafter, these embodiments will be described in detail.
  • the distal end unit of the arm portion of the robot arm device is an imaging unit, and a surgical site is imaged by the imaging unit at the time of surgery as illustrated in FIG.
  • the present embodiment is not limited to such an example.
  • the robot arm control system according to the present embodiment is applicable even when a robot arm device having another tip unit is used for other purposes.
  • FIG. 5 is a schematic diagram illustrating an appearance of a robot arm device according to an embodiment of the present disclosure.
  • the robot arm device 400 includes a base portion 410 and an arm portion 420.
  • the base unit 410 is a base of the robot arm device 400, and the arm unit 420 is extended from the base unit 410.
  • a control unit that integrally controls the robot arm device 400 may be provided in the base unit 410, and the driving of the arm unit 420 may be controlled by the control unit.
  • the said control part is comprised by various signal processing circuits, such as CPU (Central Processing Unit) and DSP (Digital Signal Processor).
  • the arm part 420 includes a plurality of joint parts 421a to 421f, a plurality of links 422a to 422c connected to each other by the joint parts 421a to 421f, and an imaging unit 423 provided at the tip of the arm part 420.
  • the links 422a to 422c are rod-shaped members, one end of the link 422a is connected to the base part 410 via the joint part 421a, the other end of the link 422a is connected to one end of the link 422b via the joint part 421b, The other end of the link 422b is connected to one end of the link 422c via the joint portions 421c and 421d. Furthermore, the imaging unit 423 is connected to the tip of the arm part 420, that is, the other end of the link 422c via joint parts 421e and 421f.
  • the ends of the plurality of links 422a to 422c are connected to each other by the joint portions 421a to 421f with the base portion 410 as a fulcrum, thereby forming an arm shape extending from the base portion 410.
  • the imaging unit 423 is a unit that acquires an image to be captured, and is, for example, a camera that captures a moving image or a still image. By controlling the driving of the arm unit 420, the position and orientation of the imaging unit 423 are controlled. In the present embodiment, the imaging unit 423 images a partial region of the patient's body that is a treatment site, for example.
  • the tip unit provided at the tip of the arm unit 420 is not limited to the imaging unit 423, and various medical instruments may be connected to the tip of the arm unit 420 as the tip unit.
  • the robot arm device 400 according to the present embodiment is a medical robot arm device provided with a medical instrument.
  • the robot arm device 400 will be described with the coordinate axes defined as shown in FIG.
  • the vertical direction, the front-rear direction, and the left-right direction are defined according to the coordinate axes. That is, the vertical direction with respect to the base portion 410 installed on the floor is defined as the z-axis direction and the vertical direction.
  • the direction perpendicular to the z-axis and extending from the base portion 410 to the arm portion 420 (that is, the direction in which the imaging unit 423 is located with respect to the base portion 410) is defined as the y-axis direction and It is defined as the front-rear direction.
  • the directions orthogonal to the y-axis and z-axis are defined as the x-axis direction and the left-right direction.
  • the joint portions 421a to 421f connect the links 422a to 422c so as to be rotatable.
  • the joint portions 421a to 421f have actuators, and have a rotation mechanism that is driven to rotate about a predetermined rotation axis by driving the actuators.
  • the rotational drive in each joint portion 421a to 421f for example, the drive of the arm portion 420 such as extending or shrinking (folding) the arm portion 420 can be controlled.
  • the joint parts 421a to 421f are the whole body cooperative control described later in (5-2-2. Generalized inverse dynamics) and the ideal joint described later in (5-2-3. About ideal joint control).
  • the drive is controlled by the control.
  • the drive control of the joint portions 421a to 421f is specifically the joint portions 421a to 421f. This means that the rotation angle and / or generated torque (torque generated by the joint portions 421a to 421f) is controlled.
  • the robot arm device 400 has six joint portions 421a to 421f, and six degrees of freedom are realized with respect to driving of the arm portion 420.
  • the joint portions 421a, 421d, and 421f have the major axis direction of each of the connected links 422a to 422c and the shooting direction of the connected imaging unit 473 as the rotation axis direction.
  • the joint portions 421b, 421c, and 421e are configured so that the link angle between the links 422a to 422c and the imaging unit 473 connected to each other is a yz plane (a plane defined by the y axis and the z axis).
  • the x-axis direction which is the direction to be changed in (), is provided as the rotation axis direction.
  • the joint portions 421a, 421d, and 421f have a function of performing so-called yawing
  • the joint portions 421b, 421c, and 421e have a function of performing so-called pitching.
  • the robot arm device 400 realizes six degrees of freedom for driving the arm unit 420. Therefore, the imaging unit is within the movable range of the arm unit 420. 423 can be moved freely.
  • a hemisphere is illustrated as an example of the movable range of the imaging unit 423. Assuming that the center point of the hemisphere is the imaging center of the treatment site imaged by the imaging unit 423, the imaging unit 423 is moved on the spherical surface of the hemisphere while the imaging center of the imaging unit 423 is fixed to the center point of the hemisphere. By doing so, the treatment site can be imaged from various angles.
  • the configuration of the joint portions 421a to 421f shown in FIG. 5 will be described in more detail with reference to FIG.
  • the configuration of the actuator which is the configuration mainly related to the rotational drive of the joint portions 421a to 421f, among the configurations of the joint portions 421a to 421f will be described.
  • FIG. 6 is a cross-sectional view schematically illustrating a state in which the actuators of the joint portions 421a to 421f according to an embodiment of the present disclosure are cut along a cross section passing through the rotation axis.
  • the actuator is illustrated among the configurations of the joint portions 421a to 421f, but the joint portions 421a to 421f may have other configurations.
  • the joint portions 421a to 421f have a control unit for controlling driving of the actuator, a support member for connecting and supporting the links 422a to 422c and the imaging unit 423, in addition to the configuration illustrated in FIG.
  • Various configurations necessary for driving the arm portion 420 are provided.
  • the driving of the joint portion of the arm portion may mean the driving of the actuator in the joint portion.
  • the driving of the joint portions 421a to 421f is controlled by ideal joint control described later (5-2-3. About ideal joint control). Therefore, the actuators of the joint portions 421a to 421f shown in FIG. 6 are configured to be able to drive corresponding to ideal joint control. Specifically, the actuators of the joint portions 421a to 421f are configured to be able to adjust the rotation angle and the torque associated with the rotation drive in the joint portions 421a to 421f. In addition, the actuators of the joint portions 421a to 421f are configured so as to be able to arbitrarily adjust the viscous resistance coefficient with respect to the rotational motion.
  • the actuator is easily rotated with respect to an external force (that is, the arm portion 420 is manually operated). It is possible to realize a state of being easily moved) and a state of being difficult to rotate (that is, it is difficult to manually move the arm unit 420).
  • the actuator 430 of the joint portions 421a to 421f includes a motor 424, a motor driver 425, a speed reducer 426, an encoder 427, a torque sensor 428, and a drive shaft 429.
  • the encoder 427, the motor 424, the speed reducer 426, and the torque sensor 428 are connected to the drive shaft 429 in series in this order.
  • the motor 424 is a prime mover in the actuator 430, and rotates the drive shaft 429 around the axis.
  • the motor 424 is an electric motor such as a brushless DC motor.
  • the rotation of the motor 424 is controlled by supplying a current.
  • the motor driver 425 is a driver circuit (driver IC (Integrated Circuit)) that rotates the motor 424 by supplying current to the motor 424, and the rotation of the motor 424 is adjusted by adjusting the amount of current supplied to the motor 424.
  • the number can be controlled.
  • the motor driver 425 can adjust the viscous resistance coefficient with respect to the rotational motion of the actuator 430 as described above by adjusting the amount of current supplied to the motor 424.
  • the speed reducer 426 is connected to the drive shaft 429 and generates a rotational drive force (ie, torque) having a predetermined value by reducing the rotational speed of the drive shaft 429 generated by the motor 424 at a predetermined reduction ratio.
  • a rotational drive force ie, torque
  • the speed reducer 426 a backlashless high performance speed reducer is used.
  • the speed reducer 426 may be a harmonic drive (registered trademark).
  • Torque generated by the speed reducer 426 is output to a subsequent stage (not shown, for example, a connecting member such as the links 422a to 422c or the imaging unit 423) via a torque sensor 428 connected to the output shaft of the speed reducer 426. Is transmitted to.
  • Encoder 427 is connected to drive shaft 429 and detects the rotational speed of drive shaft 429. Based on the relationship between the rotational speed of the drive shaft 429 detected by the encoder and the reduction ratio of the speed reducer 426, information such as the rotational angles, rotational angular velocities, and rotational angular accelerations of the joint portions 421a to 421f can be obtained.
  • the torque sensor 428 is connected to the output shaft of the speed reducer 426, and detects the torque generated by the speed reducer 426, that is, the torque output by the actuator 430.
  • the torque output by the actuator 430 is simply referred to as generated torque.
  • the number of rotations of the motor 424 can be adjusted by adjusting the amount of current supplied to the motor 424.
  • the reduction ratio in the reduction gear 426 may be set as appropriate according to the application of the robot arm device 400. Therefore, the generated torque can be controlled by appropriately adjusting the rotational speed of the motor 424 in accordance with the reduction ratio of the speed reducer 426.
  • information such as the rotation angle, rotation angular velocity, and rotation angular acceleration of the joint portions 421a to 421f can be obtained based on the rotation speed of the drive shaft 429 detected by the encoder 427, and the torque sensor 428 can be obtained.
  • the generated torque in the joint portions 421a to 421f can be detected.
  • the torque sensor 428 can detect not only torque generated by the actuator 430 but also external torque applied from the outside. Therefore, by adjusting the amount of current that the motor driver 425 supplies to the motor 424 based on the external torque detected by the torque sensor 428, the viscous resistance coefficient with respect to the rotational motion as described above can be adjusted. It is possible to realize a state that is easy to rotate or a state that is difficult to rotate with respect to a force applied from the outside.
  • FIG. 7A is a schematic diagram schematically showing a state where the torque sensor 428 shown in FIG. 6 is viewed from the axial direction of the drive shaft 429.
  • the torque sensor 428 includes an outer ring portion 431, an inner ring portion 432, beam portions 433a to 433d, and strain detection elements 434a to 434d.
  • the outer ring portion 431 and the inner ring portion 432 are arranged concentrically.
  • the inner ring portion 432 is connected to the input side, that is, the output shaft from the speed reducer 426, and the outer ring portion 431 is connected to the output side, that is, a rear-stage output member (not shown).
  • the four beam portions 433a to 433d are arranged between the outer ring portion 431 and the inner ring portion 432 arranged concentrically, and connect the outer ring portion 431 and the inner ring portion 432 to each other. As shown in FIG. 7A, the beam portions 433a to 433d are interposed between the outer ring portion 431 and the inner ring portion 432 so that the adjacent beam portions 433a to 433d form an angle of 90 degrees with each other.
  • strain detection elements 434a to 434d are provided in two of the beam portions 433a to 433d facing each other, that is, provided at an angle of 180 degrees with each other. Based on the deformation amounts of the beam portions 433a to 433d detected by the strain detection elements 434a to 434d, the generated torque and the external torque of the actuator 430 can be detected.
  • strain detection elements 434a and 434b are provided in the beam portion 433a, and strain detection elements 434c and 434d are provided in the beam portion 433c.
  • the strain detection elements 434a and 434b are provided so as to sandwich the beam portion 433a, and the strain detection elements 434c and 434d are provided so as to sandwich the beam portion 433c.
  • the strain detection elements 434a to 434d are strain gauges, and are attached to the surfaces of the beam portions 433a and 433c, thereby detecting a geometric deformation amount of the beam portions 433a and 433c based on a change in electric resistance. As shown in FIG.
  • the strain detection elements 434a to 434d are provided at four locations, so that the detection elements 434a to 434d constitute a so-called Wheatstone bridge. Therefore, since the strain can be detected by using a so-called 4-gauge method, it is possible to reduce the influence of interference other than the shaft for detecting strain, the eccentricity of the drive shaft 429, temperature drift, and the like.
  • the beam portions 433a to 433d serve as strain generating bodies for detecting strain.
  • the types of the strain detection elements 434a to 434d according to the present embodiment are not limited to strain gauges, and other elements may be used.
  • the strain detection elements 434a to 434d may be elements that detect deformation amounts of the beam portions 433a to 433d based on changes in magnetic characteristics.
  • the following configuration may be applied in order to improve the detection accuracy of the torque generated by the torque sensor 428 and the external torque.
  • the support moment is released by making the portion of the beam portions 433a to 433d connected to the outer ring portion 431 thinner than other portions, so that the linearity of the detected deformation amount is improved and the radial load is increased. The influence of is reduced.
  • by supporting both the outer ring portion 431 and the inner ring portion 432 with the housing via the bearing it is possible to eliminate the effects of other axial forces and moments from both the input shaft and the output shaft.
  • a both-end supported bearing may be disposed at the other end of the actuator 430 shown in FIG.
  • the configuration of the torque sensor 428 has been described above with reference to FIG. 7A. As described above, the configuration of the torque sensor 428 shown in FIG. 7A enables highly accurate detection of the torque generated by the actuator 430 and the external torque.
  • the configuration of the torque sensor 428 is not limited to the configuration shown in FIG. 7A, and may be another configuration.
  • An example of a configuration other than the torque sensor 428 regarding the torque sensor applied to the actuator 430 will be described with reference to FIG. 7B.
  • FIG. 7B is a schematic diagram illustrating another configuration example of the torque sensor applied to the actuator 430 illustrated in FIG. 6.
  • a torque sensor 428a according to this modification includes an outer ring portion 441, an inner ring portion 442, beam portions 443a to 443d, and strain detection elements 444a to 444d.
  • 7B schematically shows a state where the torque sensor 428a is viewed from the axial direction of the drive shaft 429, as in FIG. 7A.
  • the functions and configurations of the outer ring portion 441, the inner ring portion 442, the beam portions 443a to 443d, and the strain detection elements 444a to 444d are the same as the outer ring portion 431 and the inner ring portion 432 of the torque sensor 428 described with reference to FIG.
  • the beam portions 433a to 433d and the strain detection elements 434a to 434d have substantially the same function and configuration.
  • the torque sensor 428a according to this modification differs in the configuration of the connection portion between the beam portions 443a to 443d and the outer ring portion 441. Therefore, with regard to the torque sensor 428a shown in FIG. 7B, the configuration of the connection portion between the beam portions 443a to 443d and the outer ring portion 441, which is different from the torque sensor 428 shown in FIG. Description of is omitted.
  • connection portion between the beam portion 443b and the outer ring portion 441 is enlarged and shown together with the overall view of the torque sensor 428a.
  • FIG. 7B only the connection portion between the beam portion 443b and the outer ring portion 441, which is one of the four connection portions between the beam portions 443a to 443d and the outer ring portion 441, is illustrated in an enlarged manner.
  • the other three portions, the beam portions 443a, 443c, 443d and the connection portion of the outer ring portion 441 have the same configuration.
  • the outer ring portion 441 is provided with an engagement recess, and the tip of the beam portion 443b is engaged with the engagement recess.
  • gaps G1 and G2 are provided between the beam portion 443b and the outer ring portion 441.
  • the gap G1 represents the gap between the beams 443b in the direction in which the beam portion 443b extends toward the outer ring portion 441
  • the gap G2 represents the gap between the two in a direction orthogonal to the direction.
  • the beam portions 443a to 443d and the outer ring portion 441 are disposed separately with predetermined gaps G1 and G2. That is, in the torque sensor 428a, the outer ring portion 441 and the inner ring portion 442 are separated. Accordingly, since the inner ring portion 442 is not restricted with respect to the outer ring portion 441 and has a degree of freedom of movement, for example, even if vibration occurs when the actuator 430 is driven, a distortion component due to vibration is generated between the inner ring portion 442 and the outer ring portion 441. It can be absorbed by the gaps G1 and G2. Therefore, by applying the torque sensor 428a as the torque sensor of the actuator 430, it is possible to detect the generated torque and the external torque with higher accuracy.
  • various operation spaces are used in a multi-link structure (for example, the arm unit 420 shown in FIG. 5 in the present embodiment) in which a plurality of links are connected by a plurality of joints.
  • Operaation Space Is a basic calculation in the whole body cooperative control of the multi-link structure, which converts the motion purpose regarding various dimensions into torque generated in a plurality of the joint portions in consideration of various constraint conditions.
  • the operation space is an important concept in the force control of the robot device.
  • the operation space is a space for describing the relationship between the force acting on the multi-link structure and the acceleration of the multi-link structure.
  • the operation space is, for example, a joint space, a Cartesian space, a momentum space or the like to which a multi-link structure belongs.
  • the motion purpose represents a target value in the drive control of the multi-link structure, and is, for example, a target value such as position, speed, acceleration, force, impedance, etc. of the multi-link structure to be achieved by the drive control.
  • Constraint conditions are constraints regarding the position, speed, acceleration, force, etc. of the multi-link structure, which are determined by the shape and structure of the multi-link structure, the environment around the multi-link structure, settings by the user, and the like.
  • the constraint condition includes information on generated force, priority, presence / absence of a non-driven joint, vertical reaction force, friction weight, support polygon, and the like.
  • the computation algorithm includes a first stage virtual force determination process (virtual force calculation process), It is configured by a two-stage real force conversion process (real force calculation process).
  • virtual force calculation process which is the first stage
  • the virtual force which is a virtual force acting on the operation space, necessary to achieve each exercise purpose is considered in consideration of the priority of the exercise purpose and the maximum value of the virtual force. decide.
  • actual force calculation process which is the second stage
  • the virtual force obtained above is used as an actual force such as joint force and external force while taking into account constraints on non-driving joints, vertical reaction forces, friction weights, support polygons, and the like.
  • a vector constituted by a certain physical quantity in each joint portion of the multi-link structure is referred to as a generalized variable q (also referred to as a joint value q or a joint space q).
  • the operation space x is defined by the following formula (1) using the time differential value of the generalized variable q and the Jacobian J.
  • q is a rotation angle in the joint portions 421a to 421f of the arm portion 420.
  • equation (2) The equation of motion related to the operation space x is described by the following equation (2).
  • f represents a force acting on the operation space x.
  • ⁇ ⁇ 1 is called an operation space inertia inverse matrix
  • c is called an operation space bias acceleration, which are expressed by the following equations (3) and (4), respectively.
  • H is a joint space inertia matrix
  • is a joint force corresponding to the joint value q (for example, generated torque in the joint portions 421a to 421f)
  • b is a term representing gravity, Coriolis force, and centrifugal force.
  • the LCP can be solved using, for example, an iterative method, a pivot method, a method applying robust acceleration control, or the like.
  • the operation space inertia inverse matrix ⁇ ⁇ 1 and the bias acceleration c are calculated as the above formulas (3) and (4), the calculation cost is high. Therefore, by applying the quasi-dynamics calculation (FWD) that obtains the generalized acceleration (joint acceleration) from the generalized force (joint force ⁇ ) of the multi-link structure, the operation space inertia inverse matrix ⁇ ⁇ 1 is calculated. A method of calculating at higher speed has been proposed.
  • the operation space inertia inverse matrix ⁇ ⁇ 1 and the bias acceleration c are obtained by using a forward dynamics calculation FWD, so that a multi-link structure (eg, arm portion) such as a joint space q, a joint force ⁇ , and a gravity g is used. 420 and information on the forces acting on the joints 421a to 421f).
  • a forward dynamics calculation FWD related to the operation space
  • the operation space inertia inverse matrix ⁇ ⁇ 1 can be calculated with a calculation amount of O (N) for the number N of joints.
  • the condition for achieving the target value of the operation space acceleration (represented by attaching a superscript bar to the second-order differential of x) with a virtual force f vi equal to or less than the absolute value F i is Can be expressed by the following mathematical formula (6).
  • the motion purpose related to the position and speed of the operation space x can be expressed as a target value of the operation space acceleration, and specifically expressed by the following formula (7) (the position of the operation space x
  • the target value of speed is expressed by adding a superscript bar to the first derivative of x and x).
  • the concept of the decomposition operation space it is also possible to set a motion purpose related to an operation space (momentum, Cartesian relative coordinates, interlocking joint, etc.) represented by a linear sum of other operation spaces. It is necessary to give priority between competing exercise purposes.
  • the LCP can be solved for each priority and sequentially from the low priority, and the virtual force obtained by the previous LCP can be applied as a known external force of the next LCP.
  • the subscript a represents a set of drive joint portions (drive joint set), and the subscript u represents a set of non-drive joint portions (non-drive joint set). That is, the upper stage of the above formula (8) represents the balance of the force of the space (non-drive joint space) by the non-drive joint part, and the lower stage represents the balance of the force of the space (drive joint space) by the drive joint part.
  • J vu and J va are a Jacobian non-drive joint component and drive joint component related to the operation space on which the virtual force f v acts, respectively.
  • J eu and J ea are Jacobian non-drive joint components and drive joint components related to the operation space on which the external force fe is applied.
  • ⁇ f v represents a component of the virtual force f v that cannot be realized by the actual force.
  • Equation (8) The upper part of the above equation (8) is indefinite, and for example, fe and ⁇ f v can be obtained by solving a quadratic programming problem (QP: Quadratic Programming Problem) as shown in the following equation (9).
  • QP Quadratic Programming Problem
  • is the difference between the upper sides of the above equation (8) and represents the equation error of equation (8).
  • is a connection vector between fe and ⁇ f v and represents a variable vector.
  • Q 1 and Q 2 are positive definite symmetric matrices that represent weights at the time of minimization.
  • the inequality constraint in the above formula (9) is used to express a constraint condition related to an external force such as a vertical reaction force, a friction cone, a maximum value of an external force, a support polygon, and the like.
  • the inequality constraint relating to the rectangular support polygon is expressed as the following formula (10).
  • z represents the normal direction of the contact surface
  • x and y represent orthogonal two tangential directions perpendicular to z.
  • (F x , F y , F z ) and (M x , M y , M z ) are external force and external force moment acting on the contact point.
  • ⁇ t and ⁇ r are friction coefficients relating to translation and rotation, respectively.
  • (D x , d y ) represents the size of the support polygon.
  • the joint force ⁇ a for achieving a desired exercise purpose can be obtained by sequentially performing the virtual force calculation process and the actual force calculation process. That is, conversely, by reflecting the calculated joint force ⁇ a in the theoretical model in the motion of the joint portions 421a to 421f, the joint portions 421a to 421f are driven to achieve a desired motion purpose. .
  • I a is the moment of inertia (inertia) at the joint
  • ⁇ a is the torque generated by the joints 421a to 421f
  • ⁇ e is the external torque acting on the joints 421a to 421f from the outside
  • ⁇ a is each joint Viscosity resistance coefficient at 421a to 421f.
  • the above formula (12) can be said to be a theoretical model representing the motion of the actuator 430 in the joint portions 421a to 421f.
  • Modeling error may occur between the motion of the joint portions 421a to 421f and the theoretical model shown in the above equation (12) due to the influence of various disturbances.
  • Modeling errors can be broadly classified into those caused by mass properties such as the weight, center of gravity, and inertia tensor of the multi-link structure, and those caused by friction and inertia in the joint portions 421a to 421f.
  • the modeling error due to the former mass property can be reduced relatively easily during the construction of the theoretical model by increasing the accuracy of CAD (Computer Aided Design) data and applying an identification method.
  • CAD Computer Aided Design
  • the modeling error due to the friction and inertia in the latter joint portions 421a to 421f is caused by a phenomenon that is difficult to model, such as friction in the speed reducer 426 of the joint portions 421a to 421f.
  • Modeling errors that cannot be ignored during model construction may remain.
  • an error occurs between the value of inertia I a and viscosity resistance coefficient [nu a in the equation (12), and these values in the actual joints 421a ⁇ 421f.
  • the movement of the joint portions 421a to 421f may not respond according to the theoretical model shown in the above equation (12) due to the influence of such disturbance. Therefore, even if the actual force ⁇ a that is the joint force calculated by the generalized inverse dynamics is applied, there is a case where the motion purpose that is the control target is not achieved.
  • the responses of the joint portions 421a to 421f are corrected so as to perform an ideal response according to the theoretical model shown in the formula (12). Think about it.
  • the ideal joint control is performed by controlling the joints so that the joints 421a to 421f of the robot arm device 400 perform an ideal response as shown in the above formula (12). Called.
  • the actuator whose drive is controlled by the ideal joint control is also referred to as a virtual actuator (VA) because an ideal response is performed.
  • VA virtual actuator
  • FIG. 8 is an explanatory diagram for explaining ideal joint control according to an embodiment of the present disclosure.
  • the conceptual calculator which performs the various calculations which concern on ideal joint control is typically shown with the block.
  • an actuator 610 schematically represents the mechanism of the actuator 430 shown in FIG. 6, and includes a motor 611, a reduction gear 612, an encoder 613, and a torque sensor (Torque).
  • Sensor 614 corresponds to the motor 424, the speed reducer 426, the encoder 427, and the torque sensor 428 (or the torque sensor 428a shown in FIG. 7B) shown in FIG.
  • the actuator 610 responds in accordance with the theoretical model expressed by the mathematical formula (12), and when the right side of the mathematical formula (12) is given, the rotational angular acceleration of the left side is achieved. It is none other than.
  • the theoretical model includes an external torque term ⁇ e that acts on the actuator 610.
  • the external torque ⁇ e is measured by the torque sensor 614.
  • a disturbance observer 620 is applied to calculate a disturbance estimated value ⁇ d that is an estimated value of torque caused by a disturbance based on the rotation angle q of the actuator 610 measured by the encoder 613.
  • a block 631 represents an arithmetic unit that performs an operation in accordance with an ideal joint model (Ideal Joint Model) of the joint portions 421a to 421f shown in the equation (12).
  • the block 631 receives the generated torque ⁇ a , the external torque ⁇ e , and the rotational angular velocity (the first derivative of the rotational angle q) as inputs, and the rotational angular acceleration target value (the rotational angle target value q ref ) shown on the left side of the equation (12). Can be output.
  • the generated torque ⁇ a calculated by the method described in (5-2-2. Generalized inverse dynamics) and the external torque ⁇ e measured by the torque sensor 614 are stored in the block 631. Entered.
  • a rotational angular velocity (first-order differential of the rotational angle q) is calculated by inputting the rotational angle q measured by the encoder 613 to a block 632 representing a computing unit that performs a differential operation.
  • the rotational angular velocity calculated by the block 632 is input to the block 631, whereby the rotational angular acceleration target value is calculated by the block 631.
  • the calculated rotational angular acceleration target value is input to block 633.
  • a block 633 represents a calculator that calculates torque generated in the actuator 610 based on the rotational angular acceleration of the actuator 610.
  • the block 633 can obtain the torque target value ⁇ ref by multiplying the rotational angular acceleration target value by the nominal inertia (nominal inertia) J n in the actuator 610.
  • the desired motion objective should be achieved by causing the actuator 610 to generate the torque target value ⁇ ref.
  • the actual response is affected by disturbances and the like. There is a case. Accordingly, in the present embodiment, to calculate the estimated disturbance value tau d by the disturbance observer 620, corrects the torque target value tau ref using the disturbance estimated value tau d.
  • the disturbance observer 620 calculates a disturbance estimated value ⁇ d based on the torque command value ⁇ and the rotation angular velocity calculated from the rotation angle q measured by the encoder 613.
  • the torque command value ⁇ is a torque value finally generated in the actuator 610 after the influence of the disturbance is corrected.
  • the torque command value ⁇ becomes the torque target value ⁇ ref .
  • the disturbance observer 620 includes a block 634 and a block 635.
  • Block 634 represents a calculator that calculates torque generated in the actuator 610 based on the rotational angular velocity of the actuator 610.
  • the rotational angular velocity calculated by the block 632 is input to the block 634 from the rotational angle q measured by the encoder 613.
  • Block 634 obtains the rotational angular acceleration by performing an operation represented by the transfer function J n s, that is, differentiating the rotational angular velocity, and multiplies the calculated rotational angular acceleration by Nominal Inertia J n.
  • an estimated value (torque estimated value) of the torque actually acting on the actuator 610 can be calculated.
  • a difference between the estimated torque value and the torque command value ⁇ is taken to estimate a disturbance estimated value ⁇ d that is a torque value due to the disturbance.
  • the estimated disturbance value ⁇ d may be a difference between the torque command value ⁇ in the previous control and the estimated torque value in the current control.
  • the estimated torque value calculated by the block 634 is based on an actual measured value
  • the torque command value ⁇ calculated by the block 633 is based on an ideal theoretical model of the joint portions 421a to 421f shown in the block 631. Therefore, by taking the difference between the two, it is possible to estimate the influence of a disturbance that is not considered in the theoretical model.
  • the disturbance observer 620 is provided with a low pass filter (LPF) indicated by a block 635 in order to prevent system divergence.
  • the block 635 performs the operation represented by the transfer function g / (s + g), thereby outputting only the low frequency component for the input value and stabilizing the system.
  • the difference value between the estimated torque value calculated by the block 634 and the torque command value ⁇ ref is input to the block 635, and the low frequency component is calculated as the estimated disturbance value ⁇ d .
  • the torque command value is a torque value that causes the actuator 610 ⁇ is calculated. Then, the actuator 610 is driven based on the torque command value ⁇ . Specifically, the torque command value ⁇ is converted into a corresponding current value (current command value), and the current command value is applied to the motor 611, whereby the actuator 610 is driven.
  • the response of the actuator 610 is obtained even when there is a disturbance component such as friction. Can follow the target value. Further, the drive control of the joint portion 421a ⁇ 421f, it is possible to perform an ideal response that theoretical models according to the assumed inertia I a and viscosity resistance coefficient [nu a.
  • the generalized inverse dynamics used in the present embodiment has been described above, and the ideal joint control according to the present embodiment has been described with reference to FIG.
  • the drive parameters for example, the joint portions 421a to 421f of the joint portions 421a to 421f
  • the whole body cooperative control is performed in which the generated torque value) is calculated in consideration of the constraint conditions.
  • the generated torque value calculated by the whole body cooperative control using the generalized inverse dynamics is corrected in consideration of the influence of disturbance.
  • FIG. 9 is a functional block diagram illustrating a configuration example of a robot arm control system according to an embodiment of the present disclosure.
  • the configuration related to the drive control of the arm unit of the robot arm device is mainly illustrated.
  • a robot arm control system 1 includes a robot arm device 10, a control device 20, and a display device 30.
  • the control device 20 controls the whole body cooperative control described in (5-2-2. Generalized inverse dynamics) and the ideal described in (5-2-3. Ideal joint control). Various calculations in the joint control are performed, and the driving of the arm portion of the robot arm apparatus 10 is controlled based on the calculation results. Further, the arm unit of the robot arm device 10 is provided with an imaging unit 140 described later, and an image photographed by the imaging unit 140 is displayed on the display screen of the display device 30.
  • the robot arm control system 1 shown in FIG. 9 corresponds to the robot arm control system 2 described with reference to FIG.
  • the robot arm device 10 has an arm part which is a multi-link structure composed of a plurality of joint parts and a plurality of links, and is provided at the tip of the arm part by driving the arm part within a movable range. The position and orientation of the tip unit to be controlled are controlled.
  • the robot arm device 10 corresponds to the robot arm device 400 shown in FIG.
  • the robot arm device 10 includes an arm control unit 110 and an arm unit 120.
  • the arm unit 120 includes a joint unit 130 and an imaging unit 140.
  • the arm control unit 110 controls the robot arm device 10 in an integrated manner and controls the driving of the arm unit 120.
  • the arm control unit 110 corresponds to the control unit (not shown in FIG. 5) described with reference to FIG.
  • the arm control unit 110 includes a drive control unit 111, and the drive of the arm unit 120 is controlled by controlling the drive of the joint unit 130 by the control from the drive control unit 111.
  • the drive control unit 111 controls the number of rotations of the motor by controlling the amount of current supplied to the motor in the actuator of the joint unit 130, and the rotation angle and generation in the joint unit 130. Control torque.
  • the drive control of the arm unit 120 by the drive control unit 111 is performed based on the calculation result in the control device 20.
  • each joint unit 130 may be provided with a joint control unit 135, and the driving of the joint unit 130 may be controlled by the joint control unit 135.
  • the arm unit 120 is a multi-link structure composed of a plurality of joints and a plurality of links, and the driving thereof is controlled by the control from the arm control unit 110.
  • the arm part 120 corresponds to the arm part 420 shown in FIG.
  • the arm unit 120 includes a joint unit 130 and an imaging unit 140.
  • the structure of the one joint part 130 is illustrated on behalf of these some joint parts.
  • the joint unit 130 rotatably connects between the links in the arm unit 120, and drives the arm unit 120 by controlling the rotation drive by the control from the arm control unit 110.
  • the joint portion 130 corresponds to the joint portions 421a to 421f shown in FIG.
  • the joint unit 130 includes an actuator, and the configuration of the actuator is the same as the configuration illustrated in FIGS. 6, 7A, and 7B, for example.
  • the joint unit 130 includes a joint drive unit 131 and a joint state detection unit 132.
  • the joint drive part 131 is a drive mechanism in the actuator of the joint part 130, and when the joint drive part 131 drives, the joint part 130 rotationally drives.
  • the drive of the joint drive unit 131 is controlled by the drive control unit 111.
  • the joint driving unit 131 has a configuration corresponding to the motor 424 and the motor driver 425 illustrated in FIG. 6, and the driving of the joint driving unit 131 means that the motor driver 425 responds to a command from the drive control unit 111. This corresponds to driving the motor 424 by the amount.
  • the joint state detection unit 132 detects the state of the joint unit 130.
  • the state of the joint 130 may mean the state of motion of the joint 130.
  • the state of the joint unit 130 includes information such as the rotation angle, rotation angular velocity, rotation angular acceleration, and generated torque of the joint unit 130.
  • the joint state detection unit 132 includes a rotation angle detection unit 133 that detects the rotation angle of the joint unit 130, and a torque detection unit 134 that detects the generated torque and the external torque of the joint unit 130.
  • the rotation angle detection unit 133 and the torque detection unit 134 correspond to the encoder 427 of the actuator 430 shown in FIG. 6 and the torque sensors 428 and 428a shown in FIGS. 7A and 7B, respectively.
  • the joint state detection unit 132 transmits the detected state of the joint unit 130 to the control device 20.
  • the imaging unit 140 is an example of a tip unit provided at the tip of the arm unit 120, and acquires an image to be shot.
  • the imaging unit 140 corresponds to the imaging unit 423 shown in FIG.
  • the imaging unit 140 is a camera or the like that can shoot a shooting target in the form of a moving image or a still image.
  • the imaging unit 140 has a plurality of light receiving elements arranged two-dimensionally, and can acquire an image signal representing an image to be photographed by photoelectric conversion in the light receiving elements.
  • the imaging unit 140 transmits the acquired image signal to the display device 30.
  • the imaging unit 140 is actually provided at the tip of the arm unit 120, as in the robot arm device 400 illustrated in FIG. 5, where the imaging unit 423 is provided at the tip of the arm unit 420. ing.
  • FIG. 9 the state in which the imaging unit 140 is provided at the distal end of the link at the final stage via the plurality of joint units 130 and the plurality of links is schematically illustrated between the joint unit 130 and the imaging unit 140. It is expressed by
  • various medical instruments can be connected to the tip of the arm unit 120 as a tip unit.
  • the medical instrument include various units used for the treatment, such as various surgical instruments such as a scalpel and forceps, and a unit of various inspection apparatuses such as a probe of an ultrasonic inspection apparatus.
  • a unit having an imaging function such as the imaging unit 140 illustrated in FIG. 9, an endoscope, or a microscope may be included in the medical instrument.
  • the robot arm apparatus 10 according to the present embodiment is a medical robot arm apparatus provided with a medical instrument.
  • the robot arm control system 1 according to the present embodiment is a medical robot arm control system. It can be said that the robot arm apparatus 10 shown in FIG.
  • a video microscope robot arm apparatus provided with a unit having an imaging function as a tip unit. Further, a stereo camera having two imaging units (camera units) may be provided at the tip of the arm unit 120, and shooting may be performed so that the imaging target is displayed as a 3D image.
  • the control device 20 includes an input unit 210, a storage unit 220, and a control unit 230.
  • the control unit 230 controls the control device 20 in an integrated manner, and performs various calculations for controlling the driving of the arm unit 120 in the robot arm device 10. Specifically, the control unit 230 performs various calculations in the whole body cooperative control and the ideal joint control in order to control the driving of the arm unit 120 of the robot arm device 10.
  • the function and configuration of the control unit 230 will be described in detail.
  • the whole body cooperative control and the ideal joint control are described above (5-2-2. Generalized inverse dynamics) and the above (5-2-3. Ideal. Since joint control has already been described, detailed description thereof is omitted here.
  • the control unit 230 includes a whole body cooperative control unit 240, an ideal joint control unit 250, and a reference position deriving unit 260.
  • the whole body cooperative control unit 240 performs various calculations related to whole body cooperative control using generalized inverse dynamics.
  • the whole body cooperative control unit 240 acquires the state of the arm unit 120 (arm state) based on the state of the joint unit 130 detected by the joint state detection unit 132. Further, the whole body cooperative control unit 240 generates a generalized inverse power based on the control value for the whole body cooperative control of the arm unit 120 in the operation space based on the arm state, the motion purpose and the constraint condition of the arm unit 120. Calculate using science.
  • the operation space is a space for describing the relationship between the force acting on the arm unit 120 and the acceleration generated in the arm unit 120, for example.
  • the whole body cooperative control unit 240 includes an arm state acquisition unit 241, a calculation condition setting unit 242, a virtual force calculation unit 243, and a real force calculation unit 244.
  • the arm state acquisition unit 241 is illustrated as one function included in the reference position deriving unit 260 for the sake of convenience, but these have similar functions. is there.
  • the arm state acquisition unit 241 acquires the state (arm state) of the arm unit 120 based on the state of the joint unit 130 detected by the joint state detection unit 132.
  • the arm state may mean a state of movement of the arm unit 120.
  • the arm state includes information such as the position, speed, acceleration, and force of the arm unit 120.
  • the joint state detection unit 132 acquires information such as the rotation angle, the rotation angular velocity, the rotation angular acceleration, and the generated torque in each joint unit 130 as the state of the joint unit 130.
  • the storage unit 220 stores various types of information processed by the control device 20, and in the present embodiment, the storage unit 220 stores various types of information (arm information) about the arm unit 120.
  • the arm state acquisition unit 241 can acquire the arm information from the storage unit 220. Therefore, the arm state acquisition unit 241 determines the position (coordinates) in space of the plurality of joint units 130, the plurality of links, and the imaging unit 140 based on the state of the joint unit 130 and the arm information (that is, the arm unit 120). Information such as the shape, the position and orientation of the image capturing unit 140), the force acting on each joint unit 130, the link, and the image capturing unit 140 can be acquired as an arm state.
  • the arm state acquisition unit 241 transmits the acquired arm information to the calculation condition setting unit 242.
  • the calculation condition setting unit 242 sets calculation conditions for calculation related to whole body cooperative control using generalized inverse dynamics.
  • the calculation condition may be an exercise purpose and a constraint condition.
  • the exercise purpose may be various types of information regarding the exercise of the arm unit 120.
  • the purpose of motion is a target value such as the position and orientation (coordinates), speed, acceleration, and force of the imaging unit 140, or the positions (coordinates) of the joints 130 and the links of the arm unit 120. ), Target values such as speed, acceleration and force.
  • the constraint condition may be various types of information that limits (restrains) the movement of the arm unit 120.
  • the constraint condition may be coordinates of a region in which each component of the arm unit is not movable, a non-movable speed, an acceleration value, a force value that cannot be generated, or the like.
  • the limitation range of various physical quantities in the constraint condition may be set because it is impossible to realize the structure of the arm unit 120, or may be set as appropriate by the user.
  • the calculation condition setting unit 242 also includes a physical model for the structure of the arm unit 120 (for example, the number and length of links constituting the arm unit 120, the connection status through the link joint unit 130, and the movement of the joint unit 130).
  • the motion condition and the constraint condition may be set by generating a control model in which the desired motion condition and the constraint condition are reflected in the physical model.
  • the arm unit 120 it is possible to cause the arm unit 120 to perform a desired operation by appropriately setting the exercise purpose and the constraint condition. For example, by setting a target value for the position of the imaging unit 140 as an exercise purpose, the arm unit 120 does not enter a predetermined area in the space as well as moving the imaging unit 140 to the target position. For example, it is possible to drive the arm unit 120 by restricting movement according to the constraint conditions.
  • the purpose of exercise is to move the imaging unit 140 in the plane of the cone with the treatment site as a vertex in a state where the imaging direction of the imaging unit 140 is fixed to the treatment site.
  • a pivoting operation that is a pivoting operation with the axis as a pivotal axis may be used.
  • the turning operation may be performed in a state where the distance between the imaging unit 140 and the point corresponding to the apex of the cone is kept constant.
  • the purpose of exercise may be a content for controlling the torque generated at each joint 130.
  • the purpose of the exercise is to control the state of the joint 130 so as to cancel the gravity acting on the arm 120, and to further support the movement of the arm 120 in the direction of the force applied from the outside.
  • a power assist operation for controlling the state of the joint 130 may be used. More specifically, in the power assist operation, the driving of each joint unit 130 is controlled so as to cause each joint unit 130 to generate generated torque that cancels the external torque due to gravity in each joint unit 130 of the arm unit 120. Thus, the position and posture of the arm unit 120 are held in a predetermined state.
  • each joint 130 is controlled so that a generated torque in the same direction as the applied external torque is generated in each joint 130.
  • The By performing such a power assist operation, when the user manually moves the arm unit 120, the user can move the arm unit 120 with a smaller force, so that the arm unit 120 is moved under zero gravity. It is possible to give the user a feeling of being. It is also possible to combine the above-described pivot operation and the power assist operation.
  • the exercise purpose may mean an operation (exercise) of the arm unit 120 realized in the whole body cooperative control, or an instantaneous exercise purpose (that is, an exercise purpose) in the operation.
  • Target value For example, in the case of the pivot operation described above, the purpose of the image capturing unit 140 to perform the pivot operation itself is a movement purpose. However, during the pivot operation, the image capturing unit 140 within the conical surface in the pivot operation is used. Values such as position and speed are set as instantaneous exercise objectives (target values for the exercise objectives). Further, for example, in the case of the power assist operation described above, the power assist operation for supporting the movement of the arm unit 120 in the direction of the force applied from the outside is itself an exercise purpose, but the power assist operation is performed.
  • the value of the generated torque in the same direction as the external torque applied to each joint portion 130 is set as an instantaneous exercise purpose (target value for the exercise purpose).
  • the instantaneous movement objective for example, the target value of the position, speed, force, etc. of each component member of the arm unit 120 at a certain time
  • the instantaneous movement objective are continuously achieved.
  • it is a concept including both of the operations of the respective constituent members of the arm unit 120 realized over time.
  • an instantaneous exercise purpose is set each time, and the calculation is repeatedly performed, so that the desired exercise purpose is finally achieved.
  • the viscous resistance coefficient in the rotational motion of each joint 130 may be set as appropriate.
  • the joint portion 130 according to the present embodiment is configured so that the viscous resistance coefficient in the rotational motion of the actuator 430 can be appropriately adjusted. Therefore, by setting the viscous resistance coefficient in the rotational motion of each joint portion 130 when setting the motion purpose, for example, it is possible to realize a state that is easy to rotate or a state that is difficult to rotate with respect to a force applied from the outside.
  • the viscous resistance coefficient in the joint portion 130 is set to be small, so that the force required for the user to move the arm portion 120 may be smaller, and the feeling of weight given to the user may be reduced. More conducive. As described above, the viscous resistance coefficient in the rotational motion of each joint 130 may be appropriately set according to the content of the motion purpose.
  • the storage unit 220 may store parameters related to calculation conditions such as exercise purpose and constraint conditions used in calculations related to whole body cooperative control.
  • the calculation condition setting unit 242 can set the constraint condition stored in the storage unit 220 as the constraint condition used for the calculation of the whole body cooperative control.
  • the calculation condition setting unit 242 can set the exercise purpose by a plurality of methods.
  • the calculation condition setting unit 242 may set the exercise purpose based on the arm state transmitted from the arm state acquisition unit 241.
  • the arm state includes information on the position of the arm unit 120 and information on the force acting on the arm unit 120. Therefore, for example, when the user intends to move the arm unit 120 manually, the arm state acquisition unit 241 also acquires information on how the user is moving the arm unit 120 as the arm state. The Therefore, the calculation condition setting unit 242 can set the position, speed, force, and the like at which the user moved the arm unit 120 as an instantaneous exercise purpose based on the acquired arm state. By setting the purpose of exercise in this way, the driving of the arm unit 120 is controlled so as to follow and support the movement of the arm unit 120 by the user.
  • the calculation condition setting unit 242 may set the exercise purpose based on an instruction input by the user from the input unit 210.
  • the input unit 210 is an input interface for a user to input information, commands, and the like regarding drive control of the robot arm device 10 to the control device 20, and in this embodiment, the input unit 210 from the input unit 210 by the user.
  • the exercise purpose may be set based on the operation input.
  • the input unit 210 has operation means operated by a user such as a lever and a pedal, for example, and the position and speed of each constituent member of the arm unit 120 according to the operation of the lever and the pedal.
  • the calculation condition setting unit 242 may set as an instantaneous exercise purpose.
  • the calculation condition setting unit 242 may set the exercise purpose stored in the storage unit 220 as the exercise purpose used for the calculation of the whole body cooperative control.
  • the purpose of movement is to stop the imaging unit 140 at a predetermined point in space
  • the coordinates of the predetermined point can be set in advance as the purpose of movement.
  • the imaging purpose 140 is a motion purpose of moving on a predetermined trajectory in space
  • the coordinates of each point representing the predetermined trajectory can be set in advance as the motion purpose.
  • the exercise purpose may be stored in the storage unit 220 in advance.
  • the purpose of motion is limited to the target value such as the position and speed in the plane of the cone
  • the purpose of motion is the force as the target value. Limited to things.
  • exercise objectives such as pivot action and power assist action
  • information on the range and type of target values that can be set as instantaneous exercise objectives in these exercise objectives It may be stored in the storage unit 220.
  • the calculation condition setting unit 242 can set the exercise purpose including various information related to the exercise purpose.
  • the calculation condition setting unit 242 sets the exercise purpose may be appropriately set by the user according to the use of the robot arm device 10 or the like.
  • the calculation condition setting unit 242 may also set the exercise purpose and the constraint condition by appropriately combining the above methods.
  • the priority of the exercise purpose may be set in the constraint conditions stored in the storage unit 220, and when there are a plurality of different exercise purposes, the calculation condition setting unit 242 The exercise purpose may be set according to the priority of the condition.
  • the calculation condition setting unit 242 transmits the arm state and the set exercise purpose and constraint condition to the virtual force calculation unit 243.
  • the virtual force calculation unit 243 calculates a virtual force in a calculation related to whole body cooperative control using generalized inverse dynamics.
  • the virtual force calculation process performed by the virtual force calculation unit 243 may be, for example, the series of processes described in (5-2-2-1. Virtual force calculation process) above.
  • the virtual force calculation unit 243 transmits the calculated virtual force f v to the real force calculation unit 244.
  • the real force calculation unit 244 calculates the real force in a calculation related to whole body cooperative control using generalized inverse dynamics.
  • the real force calculation process performed by the real force calculation unit 244 may be, for example, the series of processes described above in (5-2-2-2. Real force calculation process).
  • the actual force calculation unit 244 transmits the calculated actual force (generated torque) ⁇ a to the ideal joint control unit 250.
  • the generated torque ⁇ a calculated by the actual force calculation unit 244 is also referred to as a control value or a control torque value in the sense of a control value of the joint unit 130 in the whole body cooperative control.
  • the ideal joint control unit 250 performs various calculations related to ideal joint control that realizes an ideal response based on a theoretical model.
  • the ideal joint control unit 250 corrects the influence of disturbance on the generated torque ⁇ a calculated by the actual force calculation unit 244, thereby realizing a torque command that realizes an ideal response of the arm unit 120.
  • the value ⁇ is calculated. Note that the arithmetic processing performed by the ideal joint control unit 250 corresponds to the series of processing described above (5-2-3. About ideal joint control).
  • the ideal joint control unit 250 includes a disturbance estimation unit 251 and a command value calculation unit 252.
  • the disturbance estimation unit 251 calculates a disturbance estimated value ⁇ d based on the torque command value ⁇ and the rotation angular velocity calculated from the rotation angle q detected by the rotation angle detection unit 133.
  • the torque command value ⁇ here is a command value representing the torque generated in the arm unit 120 that is finally transmitted to the robot arm device 10.
  • the disturbance estimation unit 251 has a function corresponding to the disturbance observer 620 illustrated in FIG.
  • the command value calculator 252 uses the estimated disturbance value ⁇ d calculated by the disturbance estimator 251, and is a torque command that is a command value representing a torque generated in the arm unit 120 that is finally transmitted to the robot arm device 10.
  • the value ⁇ is calculated.
  • the command value calculation unit 252 adds the disturbance estimated value ⁇ d calculated by the disturbance estimation unit 251 to ⁇ ref calculated from the ideal model of the joint unit 130 expressed by the mathematical formula (12).
  • the torque command value ⁇ is calculated. For example, when the disturbance estimated value ⁇ d is not calculated, the torque command value ⁇ becomes the torque target value ⁇ ref .
  • the function of the command value calculation unit 252 corresponds to functions other than the disturbance observer 620 shown in FIG.
  • the ideal joint control unit 250 transmits the calculated torque command value ⁇ to the drive control unit 111 of the robot arm device 10.
  • the drive control unit 111 controls the number of rotations of the motor by performing control to supply a current amount corresponding to the transmitted torque command value ⁇ to the motor in the actuator of the joint unit 130. The rotation angle and generated torque at are controlled.
  • the drive control of the arm unit 120 in the robot arm device 10 is continuously performed while work using the arm unit 120 is performed. And the process demonstrated above in the control apparatus 20 is performed repeatedly. That is, the state of the joint unit 130 is detected by the joint state detection unit 132 of the robot arm device 10 and transmitted to the control device 20.
  • the control device 20 performs various calculations related to the whole body cooperative control and the ideal joint control for controlling the driving of the arm unit 120 based on the state of the joint unit 130, the purpose of exercise, and the constraint condition. Is transmitted to the robot arm device 10.
  • the driving of the arm unit 120 is controlled based on the torque command value ⁇ , and the state of the joint unit 130 during or after driving is detected again by the joint state detection unit 132.
  • the reference position deriving unit 260 derives a reference position that is a reference point in the observation of the object by the imaging unit 140.
  • the function of the reference position deriving unit 260 is described in ⁇ 2. Configuration of Robot Arm Control System> will be described in detail, and thus detailed description thereof is omitted here.
  • Information about the reference position derived by the reference position deriving unit 260 is provided to the calculation condition setting unit 242 or stored in the storage unit 220, for example.
  • the calculation condition setting unit 242 uses the reference position to set a constraint condition such that the reference position is the pivot center point, for example, so that the virtual force calculation unit 243 and the real force calculation unit 244 perform the pivot operation. A control value to be realized is calculated.
  • control device 20 The description of other configurations of the control device 20 will be continued.
  • the input unit 210 is an input interface for a user to input information, commands, and the like regarding drive control of the robot arm device 10 to the control device 20.
  • the driving of the arm unit 120 of the robot arm device 10 may be controlled based on the operation input from the input unit 210 by the user, and the position and posture of the imaging unit 140 may be controlled.
  • the calculation condition setting unit 242 includes the instruction information.
  • the exercise purpose in the whole body cooperative control may be set. As described above, the whole body cooperative control is performed using the exercise purpose based on the instruction information input by the user, thereby realizing the driving of the arm unit 120 according to the operation input of the user.
  • the input unit 210 includes operation means operated by the user such as a mouse, a keyboard, a touch panel, a button, a switch, a lever, and a pedal.
  • operation means operated by the user such as a mouse, a keyboard, a touch panel, a button, a switch, a lever, and a pedal.
  • the input unit 210 includes a pedal
  • the user can control the driving of the arm unit 120 by operating the pedal with a foot. Therefore, even when the user is performing treatment on the patient's surgical site using both hands, the position and posture of the imaging unit 140, that is, the imaging position and the imaging angle of the surgical site by the pedal operation with the foot Can be adjusted.
  • the storage unit 220 stores various types of information processed by the control device 20.
  • the storage unit 220 can store various parameters used in calculations related to whole body cooperative control and ideal joint control performed by the control unit 230.
  • the storage unit 220 may store an exercise purpose and a constraint condition used in a calculation related to the whole body cooperative control by the whole body cooperative control unit 240.
  • the exercise purpose stored in the storage unit 220 may be an exercise purpose that can be set in advance, for example, the imaging unit 140 is stationary at a predetermined point in space.
  • the constraint condition may be set in advance by the user and stored in the storage unit 220 in accordance with the geometric configuration of the arm unit 120, the use of the robot arm device 10, or the like.
  • the storage unit 220 may store various types of information related to the arm unit 120 used when the arm state acquisition unit 241 acquires the arm state. Furthermore, the storage unit 220 may store calculation results in calculations related to whole body cooperative control and ideal joint control by the control unit 230, numerical values calculated in the calculation process, and the like. As described above, the storage unit 220 may store various parameters related to various processes performed by the control unit 230, and the control unit 230 performs various processes while transmitting and receiving information to and from the storage unit 220. be able to.
  • control device 20 The function and configuration of the control device 20 have been described above. Note that the control device 20 according to the present embodiment can be configured by various information processing devices (arithmetic processing devices) such as a PC (Personal Computer) and a server. Next, the function and configuration of the display device 30 will be described.
  • information processing devices such as a PC (Personal Computer) and a server.
  • the display device 30 displays various types of information on the display screen in various formats such as text and images, thereby visually notifying the user of the information.
  • the display device 30 displays an image captured by the imaging unit 140 of the robot arm device 10 on a display screen.
  • the display device 30 displays on the display screen an image signal processing unit (not shown) that performs various types of image processing on the image signal acquired by the imaging unit 140 and an image based on the processed image signal. It has the function and configuration of a display control unit (not shown) that performs control to display.
  • the display device 30 may have various functions and configurations that are generally included in the display device in addition to the functions and configurations described above.
  • the display device 30 corresponds to the display device 550 shown in FIG.
  • each component described above may be configured using a general-purpose member or circuit, or may be configured by hardware specialized for the function of each component.
  • the CPU or the like may perform all functions of each component. Therefore, it is possible to appropriately change the configuration to be used according to the technical level at the time of carrying out the present embodiment.
  • the arm unit 120 which is a multi-link structure in the robot arm device 10 has a degree of freedom of at least 6 degrees of freedom, and a plurality of parts constituting the arm unit 120.
  • Each drive of the joint part 130 is controlled by the drive control part 111.
  • a medical instrument is provided at the tip of the arm unit 120.
  • the state of the joint portion 130 is detected by the joint state detection unit 132 in the robot arm device 10.
  • a torque command value ⁇ as a calculation result is calculated.
  • the driving of the arm unit 120 is controlled based on the torque command value ⁇ .
  • the drive of the arm part 120 is controlled by the whole body cooperative control using generalized inverse dynamics. Therefore, drive control of the arm unit 120 by force control is realized, and a robot arm device with higher operability for the user is realized.
  • ideal joint control is applied to drive control of the arm unit 120 together with whole body cooperative control.
  • disturbance components such as friction and inertia inside the joint portion 130 are estimated, and feedforward control using the estimated disturbance components is performed. Therefore, even when there is a disturbance component such as friction, it is possible to realize an ideal response for driving the joint portion 130. Therefore, in the drive control of the arm unit 120, high-accuracy responsiveness and high positioning accuracy and stability that are less affected by vibration and the like are realized.
  • each of the plurality of joint portions 130 constituting the arm portion 120 has a configuration suitable for ideal joint control, for example, as shown in FIG.
  • the generated torque and the viscous resistance coefficient can be controlled by the current value.
  • the driving of each joint unit 130 is controlled by the current value, and the driving of each joint unit 130 is controlled by grasping the state of the entire arm unit 120 by the whole body cooperative control.
  • the robot arm device 10 can be reduced in size.
  • the power assist operation controls the state of the joint portion 130 so as to cancel the gravity acting on the arm portion 120 and further supports the movement of the arm portion 120 in the direction of the force applied from the outside.
  • This is an operation to control the state of. Specifically, when the user manually moves the arm unit 120, this is an operation of controlling the driving of the arm unit 120 so as to support the force applied by the user. More specifically, in order to realize the power assist operation, first, an external torque in a state where a force other than gravity is not applied to the arm unit 120 is detected by the torque detection unit 134, and the detected external torque is canceled out. An instantaneous motion purpose is set so that the generated torque is generated in each joint 130. At this stage, the position and posture of the arm unit 120 are held in a predetermined state.
  • the tip unit provided at the tip of the arm unit 120 moves on a conical surface having the predetermined point as a vertex in a state where the direction of the tip unit is fixed to a predetermined point in space.
  • This is a turning operation using the cone axis as a turning axis.
  • the pivoting operation is performed when the imaging unit 140 provided at the tip of the arm unit 120 is fixed at a predetermined point in space in the imaging direction of the imaging unit 140. In this state, it is a swiveling operation that moves on the surface of the cone with the predetermined point as the apex, and that uses the axis of the cone as a turning axis.
  • a treatment site is selected as the point corresponding to the apex of the cone in the pivoting operation.
  • the turning operation may be performed in a state where the distance between the tip unit or the imaging unit 140 and the point hitting the apex of the cone is kept constant. Since the direction of the tip unit or the imaging direction of the imaging unit 140 is fixed at a predetermined point in space (for example, a treatment site), the pivot operation is also called a point lock operation.
  • FIG. 10 is an explanatory diagram for describing a pivot operation that is a specific example of an arm operation according to an embodiment of the present disclosure.
  • FIG. 11 is an explanatory diagram for explaining an exercise purpose and a constraint condition for realizing the pivot operation shown in FIG.
  • the treatment site on the patient 750 is set at the apex in the pivoting operation.
  • This vertex is called a pivot point P i .
  • the imaging unit 713 that is a unit corresponding to the imaging unit 140 in FIG. 9 is illustrated in the robot arm apparatus 10 according to the present embodiment.
  • the image pickup unit 713 is moved only on the circumference of the base of the cone A, i.e., the distance between the imaging unit 713 and the pivot point P i is constant
  • the purpose of movement and the constraint conditions may be set so that the imaging unit 713 moves in the plane of the cone A while being maintained.
  • the shape of the cone A that is, the angle ⁇ of the apex of the cone A and the distance between the pivot point Pi and the imaging unit 713 may be appropriately set by the user.
  • the distance between the pivot point P i and the imaging unit 713 is adjusted to the focal length of the optical system in the imaging unit 713.
  • the position of the cone where the imaging unit 713 can move may be moved while the pivot point Pi is fixed.
  • the pivot axis of the cone A is substantially perpendicular to the treatment site
  • the pivot axis of the cone B is substantially horizontal to the treatment site.
  • the conical performing, for example, pivoting, cones A, as in B, such that it can rotate about 90 degrees while fixing the pivot point P i, exercise objectives and constraints may be set.
  • FIG. 10 an example in which the motion purpose and the constraint condition are set so that the imaging unit 713 can move only on the circumference of the bottom surface of the cone A is shown.
  • Such pivoting operation is not limited to this example.
  • the purpose of movement and the constraint conditions are set so that the distance between the pivot point P i and the imaging unit 713 can be freely moved while the position of the pivot point P i and the angle ⁇ of the apexes of the cones A and B are fixed. May be.
  • the focal length (focus) of the imaging unit 713 is appropriately adjusted.
  • it becomes possible to observe the treatment site that meets the user's demands such as observing the treatment site with enlargement or reduction.
  • FIG. 11 how the arm unit 710 having an imaging unit 713 is performing the pivoting operation as a base point to pivot point P i is illustrated.
  • the arm part 710 has a plurality of joint parts 711a, 711b, 711c and a plurality of links 712a, 712b, 712c, and the driving thereof is controlled by the whole body cooperative control and the ideal joint control according to this embodiment.
  • the arm portion 710 and its constituent members have the same configuration as the arm portion 420 and its constituent members according to the present embodiment shown in FIG.
  • the arm coordinate system with zero point at the origin O A is the fulcrum of the arm portion 710, a spatial coordinate system with zero point at the origin O S in space.
  • the movement of the arm unit 710 is managed in the arm coordinate system.
  • the arm coordinate system and the spatial coordinate system are defined so that coordinate conversion into a mutual coordinate system is possible.
  • P w be the imaging center viewed from the spatial coordinate system. Further, in the arm coordinate system from the joint portion 711c for connecting the image pickup unit 713 and the link 712c, a position apart by the focal length f of the imaging unit 713 itself length D and the image sensing unit 713 and the pivot point P i.
  • the purpose of movement and the constraint conditions are set so that the arm unit 710 is driven in a state where the pivot point P i and the imaging center P w coincide with each other. That is, the arm coordinate system is provided with a constraint that fixes the pivot point P i in the arm coordinate system to the imaging center P w in the spatial coordinate system.
  • the imaging unit 713 is positioned on a conical surface having the pivot point P i (that is, the imaging center P w ) as a vertex, or imaging in which the imaging unit 713 faces the pivot point P i.
  • the posture of the unit 713 is set.
  • the orientation of the imaging unit 713 is always set to the imaging center Pw. (i.e., pivot point P i) remains facing, and will remain a distance between the imaging unit 713 and the imaging center P w is kept at the focal length f.
  • pivoting in a state where the distance between the imaging unit 713 and the imaging center P w is held constant is achieved.
  • the above-described method for setting the pivot point P i may be changed.
  • a position separated from the joint unit 711c by the length D of the imaging unit 713 itself by an arbitrary distance is defined as a pivot point Pi , and the arbitrary distance is set as a variable parameter. Good.
  • pivot operation and power assist operation may be used in combination.
  • the pivot operation and the power assist operation are used in combination, for example, when the user manually moves the imaging unit 140, the user feels as if the user has moved the imaging unit 140 under zero gravity with less force.
  • the imaging unit 140 can be moved, and the moving position of the imaging unit 140 is limited to a conical surface. Therefore, the operability of moving the imaging unit 140 during the pivot operation is improved.
  • the power assist operation and the pivot operation have been described as specific examples of the exercise purpose according to the present embodiment.
  • the exercise purpose according to the present embodiment is not limited to such an example. In the present embodiment, for example, the following exercise purposes can be realized.
  • the coordinates of the imaging unit 140 may be set as the purpose of movement so that the position of the imaging unit 140 is fixed at a predetermined point.
  • the purpose of the exercise and the constraint condition are set so that the joint unit 130 and the link are also fixed at a predetermined position and do not move.
  • the joint unit 130 and the link move according to a given external force
  • the purpose of movement and the constraint condition can be set so that the position of the imaging unit 140 is fixed. In the latter case, for example, when the arm unit 120 hinders the work and moves the arm unit 120, the position and posture of other constituent members of the arm unit 120 are moved while the image captured by the imaging unit 140 is fixed. Control with a higher degree of freedom is realized.
  • the exercise purpose and the constraint condition are set so that the operation of immediately stopping the driving of the arm unit 120 is realized. Also good. By performing such an operation, it is possible to reduce the danger when the arm unit 120 collides with a person or an object.
  • the contact of the arm unit 120 with a human or an object may be detected by a change in external torque applied to the joint unit 130 by the joint state detection unit 132, for example.
  • the purpose of exercise may be set so that the imaging unit 140 moves on a predetermined locus in space.
  • the coordinates of each point representing the predetermined locus may be set as the purpose of movement.
  • the movable range of the imaging unit 140 is limited on the locus.
  • the speed of the imaging unit 140, the time for passing through each point, and the like are set as the purpose of movement, so that the imaging unit 140 moves on the predetermined trajectory at a predetermined timing.
  • Such drive control according to the motion setting is effective, for example, when the robot arm device 10 automatically repeats a predetermined work.
  • the purpose of exercise and the restraint conditions may be set so that an operation in which the arm unit 120 does not enter a predetermined area in the space is realized.
  • the user performs an operation while viewing the display screen. Therefore, if the arm part 120 is located in the area between the user and the display screen, the user's field of view is blocked, which may lead to a reduction in the efficiency of the operation. Therefore, for example, by setting the area between the user and the display screen as the intrusion prohibited area of the arm unit 120, the efficiency of the surgery can be improved.
  • the degree of freedom of the arm part 120 is greater than six degrees of freedom. This is because a degree of freedom greater than 6 degrees of freedom can be used as a redundant degree of freedom, so that it is possible to deal with the intrusion prohibited area and the like as described above while ensuring driving of 6 degrees of freedom.
  • the configuration of the robot arm apparatus including the arm unit having a degree of freedom greater than 6 degrees of freedom will be described in detail with reference to FIG.
  • FIG. 12 is a schematic diagram illustrating an appearance of a modified example having redundant degrees of freedom in the robot arm device according to the embodiment of the present disclosure. 12 also shows the same coordinate axis as the direction defined in FIG.
  • a robot arm device 450 includes a base portion 460 and an arm portion 470.
  • the arm unit 470 includes a plurality of joint portions 471a to 471g, a plurality of links 472a to 472d connected to each other by the joint portions 471a to 471g, and an imaging unit 473 provided at the tip of the arm portion 470.
  • the robot arm device 450 shown in FIG. 12 corresponds to a configuration in which the degree of freedom of the arm unit 470 is increased by one with respect to the robot arm device 400 described with reference to FIG.
  • the functions and configurations of the base portion 460, the individual joint portions 471a to 471g and the links 472a to 472d, and the imaging unit 473 are the same as those of the base portion 410 of the robot arm device 400 described with reference to FIG. Since the functions and configurations of the units 421a to 421f, the links 422a to 422c, and the imaging unit 423 are the same, detailed description thereof is omitted. Below, the structure of the arm part 470 which is a difference with the robot arm apparatus 400 is mainly demonstrated.
  • the robot arm device 450 has seven joint portions 471a to 471g, and seven degrees of freedom are realized with respect to driving of the arm portion 470.
  • one end of the link 472a is connected to the base portion 460, and the other end of the link 472a is connected to one end of the link 472b via the joint portion 421a.
  • the other end of the link 422b is connected to one end of the link 472c via the joint portions 471b and 471c.
  • the other end of the link 472c is connected to one end of the link 472d via joint portions 471d and 471e, and the other end of the link 472d is connected to the imaging unit 473 via joint portions 471f and 471g.
  • the ends of the plurality of links 472a to 472d are connected to each other by the joint portions 471a to 471g with the base portion 460 as a fulcrum, thereby forming the arm portion 470 extending from the base portion 460.
  • the joint portions 471a, 471c, 471e, and 471g have the major axis direction of each connected link 472b to 472d and the shooting direction of the connected imaging unit 473 as the rotation axis direction.
  • the joint portions 471b, 471d, and 471f are configured so that the link 472c to 472d and the imaging unit 473 connected to each other have a rotation axis in the x-axis direction, which is a direction in which the coupling angle is changed in the yz plane. The direction is provided.
  • the joint portions 471a, 471c, 471e, and 471g have a so-called yawing function
  • the joint portions 471b, 471d, and 471f have a so-called pitching function.
  • the robot arm device 450 realizes seven degrees of freedom for driving the arm portion 470. Therefore, the imaging unit is within the movable range of the arm portion 470. 473 can be freely moved in the space and has a redundancy degree of freedom.
  • a hemisphere is illustrated as an example of the movable range of the imaging unit 473. If the center point of the hemisphere is the imaging center of the treatment site imaged by the imaging unit 473, the imaging unit 473 is moved on the spherical surface of the hemisphere while the imaging center of the imaging unit 473 is fixed to the center point of the hemisphere.
  • the robot arm device 450 can further limit the trajectory of the arm unit 470 along with the movement of the imaging unit 473 on the hemisphere by having one redundant degree of freedom. Restraint conditions such as prohibited areas can be easily handled.
  • the driving of the arm unit 470 is controlled so that the arm unit 470 does not exist between the monitor on which the image captured by the imaging unit 473 is displayed and the practitioner and the staff. Thus, it is possible to prevent the practitioner and staff from obstructing visual recognition of the monitor.
  • the intrusion prohibition area it is possible to control the drive of the arm unit 470 so that the arm unit 470 moves while avoiding interference (contact) with the practitioner, staff, and other peripheral devices. Become.
  • FIG. 13 is a flowchart illustrating a processing procedure of a robot arm control method according to an embodiment of the present disclosure.
  • the robot arm control method according to the present embodiment is realized by the configuration of the robot arm control system 1 shown in FIG. 9 as an example. Therefore, it can be said that the robot arm control method according to the present embodiment is a medical robot arm control method.
  • the functions of the components of the robot arm control system 1 shown in FIG. 9 are described in (5-2-4. Robot arm control system). The detailed description is omitted here.
  • step S801 the state of the joint unit 130 is detected by the joint state detection unit 132.
  • the state of the joint portion 130 is, for example, a rotation angle, generated torque, and / or external torque in the joint portion 130.
  • the arm state is acquired by the arm state acquisition unit 241 based on the state of the joint unit 130 detected in step S801.
  • the arm state is a state of movement of the arm unit 120, and may be, for example, the position, speed, acceleration, force acting on each component of the arm unit 120, or the like.
  • step S805 based on the arm state acquired in step S803, the exercise condition and constraint conditions used in the calculation in the whole body cooperative control are set by the calculation condition setting unit 242.
  • the calculation condition setting unit 242 does not have to set the exercise purpose based on the arm state.
  • the calculation condition setting unit 242 sets the exercise purpose based on instruction information about driving of the arm unit 120 input by the user from the input unit 210.
  • an exercise purpose stored in advance in the storage unit 220 may be used.
  • the exercise purpose may be set by appropriately combining the above methods.
  • the calculation condition setting unit 242 may use constraint conditions stored in advance in the storage unit 220.
  • step S807 the arm state, based on the motion objects and constraints, calculation for the systemic cooperative control using the generalized inverse dynamics is performed, the control value tau a is calculated.
  • the process performed in step S807 has been described in the series of processes in the virtual force calculation unit 243 and the actual force calculation unit 244 shown in FIG. 9, that is, in the above (5-2-2. Generalized inverse dynamics). It may be a series of processes.
  • step S809 the estimated disturbance value ⁇ d is calculated, the calculation for the ideal joint control is performed using the estimated disturbance value ⁇ d , and the command value ⁇ is calculated from the control value ⁇ a .
  • the process performed in step S809 may be a series of processes in the ideal joint control unit 250 shown in FIG. 9, that is, a series of processes described in (5-2-3. About ideal joint control).
  • step S811 the drive of the joint unit 130 is controlled by the drive control unit 111 based on the command value ⁇ .
  • the arm unit 120 which is a multi-link structure in the robot arm device 10 has a degree of freedom of at least 6 degrees of freedom, and a plurality of parts constituting the arm unit 120.
  • Each drive of the joint part 130 is controlled by the drive control part 111.
  • a medical instrument is provided at the tip of the arm unit 120.
  • the state of the joint portion 130 is detected by the joint state detection unit 132 in the robot arm device 10.
  • a torque command value ⁇ as a calculation result is calculated.
  • the driving of the arm unit 120 is controlled based on the torque command value ⁇ .
  • the drive of the arm part 120 is controlled by the whole body cooperative control using generalized inverse dynamics. Therefore, drive control of the arm unit 120 by force control is realized, and a robot arm device with higher operability for the user is realized.
  • ideal joint control is applied to drive control of the arm unit 120 together with whole body cooperative control.
  • disturbance components such as friction and inertia inside the joint portion 130 are estimated, and feedforward control using the estimated disturbance components is performed. Therefore, even when there is a disturbance component such as friction, it is possible to realize an ideal response for driving the joint portion 130. Therefore, in the drive control of the arm unit 120, high-accuracy responsiveness and high positioning accuracy and stability that are less affected by vibration and the like are realized.
  • each of the plurality of joint portions 130 constituting the arm portion 120 has a configuration suitable for ideal joint control, for example, as shown in FIG.
  • the generated torque and the viscous resistance coefficient can be controlled by the current value.
  • the driving of each joint unit 130 is controlled by the current value, and the driving of each joint unit 130 is controlled by grasping the state of the entire arm unit 120 by the whole body cooperative control.
  • the robot arm device 10 can be reduced in size.
  • the arm unit 120 of the robot arm device 10 is driven by force control, so that even if the arm unit 120 interferes (contacts) with a practitioner or a staff during the driving, However, an excessive force is not generated, and the arm unit 120 is safely stopped. Then, if released from the interference, the arm unit 120 moves to a desired position according to the set motion purpose, and the treatment is continued.
  • force control for driving control of the robot arm device 10 higher safety is ensured against interference between the arm unit 120 and surrounding objects during driving. .
  • the tip unit of the arm portion of the robot arm device is the imaging unit, and the case where the surgical site is imaged by the imaging unit at the time of surgery as shown in FIG. 4 is described. Is not limited to such an example.
  • the robot arm control system 1 according to the present embodiment is applicable even when a robot arm device having another tip unit is used for other purposes.
  • the tip unit may be an endoscope or a laparoscope, or may be another inspection device such as an ultrasonic inspection device or a stomach camera.
  • a laparoscope is inserted into a patient's body, and various types of surgical tools such as forceps and an electric scalpel are inserted while observing images taken by the laparoscope. Treatment is performed.
  • a treatment method for example, if a practitioner can directly operate a treatment tool while operating a laparoscope with a robot arm, a single user can perform the treatment, and more efficiently. Treatment is possible.
  • a general existing balanced arm from the viewpoint of operability, it is difficult for one user to simultaneously operate a surgical instrument with his / her hand and a laparoscope with a robot arm. It was.
  • the existing method requires a plurality of staff members, and it is common for one practitioner to operate a laparoscope with a robot arm while another performs a procedure using a surgical instrument. It was.
  • the robot arm device according to the present embodiment as described above, high operability by the whole body cooperative control is realized.
  • the ideal joint control realizes high-accuracy responsiveness and high stability with less influence of vibration and the like. Therefore, according to the present embodiment, the operation of the laparoscope for observation by the robot arm device and the operation of the surgical tool by one's own hand can be easily performed by one practitioner.
  • the robot arm device according to the present embodiment may be used for purposes other than medical treatment.
  • high-accuracy responsiveness and high stability are realized by ideal joint control, and thus, for example, it is possible to cope with work such as processing and assembly of industrial parts that require high accuracy. is there.
  • the joint part of the robot arm apparatus has a rotation mechanism and the drive of the arm part is controlled by controlling the rotation drive of the rotation mechanism in the above embodiment
  • the present embodiment is It is not limited to such an example.
  • the link constituting the arm portion has a mechanism (for example, one driven by hydraulic pressure or one driven by a ball screw) that expands and contracts in the link extending direction.
  • the length may be variable.
  • the driving of the arm unit is controlled so as to achieve a desired exercise purpose by, for example, whole body cooperative control in consideration of the expansion and contraction of the link in addition to the rotation at the joint unit.
  • the degree of freedom of the arm portion in the robot arm apparatus is 6 degrees of freedom or more has been described, but the present embodiment is not limited to such an example.
  • the present embodiment is not limited to such an example.
  • various exercise purposes can be set according to the use of the robot arm device. Therefore, as long as the set exercise purpose can be achieved, the arm portion may have a degree of freedom lower than 6 degrees of freedom, and a part of the plurality of joint portions constituting the arm portion is generally used. It may be a joint part having a typical joint mechanism.
  • the configuration of the arm portion only needs to be configured so as to be able to achieve the exercise purpose, and may be appropriately configured according to the use of the robot arm device.
  • FIG. 14 is a functional block diagram illustrating a configuration example of the hardware configuration of the robot arm device 10 and the control device 20 according to an embodiment of the present disclosure.
  • the robot arm device 10 and the control device 20 mainly include a CPU 901, a ROM 903, and a RAM 905. Further, the robot arm device 10 and the control device 20 further include a host bus 907, a bridge 909, an external bus 911, an interface 913, an input device 915, an output device 917, a storage device 919, and a drive 921. Connection port 923 and communication device 925.
  • the CPU 901 functions as an arithmetic processing device and a control device, and performs all or part of the operations in the robot arm device 10 and the control device 20 according to various programs recorded in the ROM 903, the RAM 905, the storage device 919, or the removable recording medium 927. Control.
  • the ROM 903 stores programs used by the CPU 901, calculation parameters, and the like.
  • the RAM 905 primarily stores programs used by the CPU 901, parameters that change as appropriate during execution of the programs, and the like. These are connected to each other by a host bus 907 constituted by an internal bus such as a CPU bus.
  • the CPU 901 corresponds to, for example, the joint control unit 135, the arm control unit 110, and the control unit 230 illustrated in FIGS.
  • the host bus 907 is connected to an external bus 911 such as a PCI (Peripheral Component Interconnect / Interface) bus via a bridge 909.
  • an input device 915, an output device 917, a storage device 919, a drive 921, a connection port 923, and a communication device 925 are connected to the external bus 911 via an interface 913.
  • the input device 915 is an operation means operated by the user, such as a mouse, a keyboard, a touch panel, a button, a switch, a lever, and a pedal.
  • the input device 915 may be, for example, remote control means (so-called remote control) using infrared rays or other radio waves, or a mobile phone, a PDA, or the like corresponding to the operation of the robot arm device 10 and the control device 20.
  • the external connection device 929 may be used.
  • the input device 915 includes an input control circuit that generates an input signal based on information input by a user using the above-described operation means and outputs the input signal to the CPU 901, for example.
  • the user of the robot arm device 10 and the control device 20 can input various data and instruct processing operations to the robot arm device 10 and the control device 20 by operating the input device 915.
  • the input device 915 corresponds to, for example, the input unit 210 illustrated in FIG.
  • an exercise purpose for driving the arm unit 120 may be set by an operation input by the user via the input device 915, and whole body cooperative control may be performed according to the exercise purpose.
  • the output device 917 is a device that can notify the user of the acquired information visually or audibly. Examples of such devices include CRT display devices, liquid crystal display devices, plasma display devices, EL display devices, display devices such as lamps, audio output devices such as speakers and headphones, printer devices, and the like.
  • the output device 917 outputs results obtained by various processes performed by the robot arm device 10 and the control device 20, for example. Specifically, the display device displays results obtained by various processes performed by the robot arm device 10 and the control device 20 as text or images.
  • the audio output device converts an audio signal composed of reproduced audio data, acoustic data, and the like into an analog signal and outputs the analog signal.
  • various types of information related to the drive control of the arm unit 120 may be output from the output device 917 in any format.
  • the movement trajectory of each component of the arm unit 120 in the drive control of the arm unit 120 may be displayed on the display screen of the output device 917 in the form of a graph.
  • the display device 30 shown in FIGS. 1 and 9 is a device having a function and configuration as a display device of the output device 917 and a configuration such as a control unit for controlling driving of the display device. Also good.
  • the storage device 919 is a data storage device configured as an example of a storage unit of the robot arm device 10 and the control device 20.
  • the storage device 919 includes, for example, a magnetic storage device such as an HDD (Hard Disk Drive), a semiconductor storage device, an optical storage device, or a magneto-optical storage device.
  • the storage device 919 stores programs executed by the CPU 901 and various data.
  • the storage device 919 corresponds to, for example, the storage unit 220 illustrated in FIGS. 1 and 9.
  • the storage device 919 can store calculation conditions (exercise purpose and constraint conditions) in calculations related to whole body cooperative control using generalized inverse dynamics. 20 may perform calculations related to whole body cooperative control using these calculation conditions stored in the storage device 919.
  • the drive 921 is a reader / writer for a recording medium, and is built in or externally attached to the robot arm device 10 and the control device 20.
  • the drive 921 reads information recorded on a removable recording medium 927 such as a mounted magnetic disk, optical disk, magneto-optical disk, or semiconductor memory, and outputs the information to the RAM 905.
  • the drive 921 can also write a record to a removable recording medium 927 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory that is mounted.
  • the removable recording medium 927 is, for example, a DVD medium, an HD-DVD medium, a Blu-ray (registered trademark) medium, or the like.
  • the removable recording medium 927 may be a compact flash (registered trademark) (CF: CompactFlash), a flash memory, an SD memory card (Secure Digital memory card), or the like. Further, the removable recording medium 927 may be, for example, an IC card (Integrated Circuit card) on which a non-contact IC chip is mounted, an electronic device, or the like. In the present embodiment, various types of information related to the drive control of the arm unit 120 may be read from various types of removable recording media 927 by the drive 921 or written to various types of removable recording media 927.
  • CF CompactFlash
  • SD memory card Secure Digital memory card
  • the connection port 923 is a port for directly connecting a device to the robot arm device 10 and the control device 20.
  • Examples of the connection port 923 include a USB (Universal Serial Bus) port, an IEEE 1394 port, a SCSI (Small Computer System Interface) port, and the like.
  • As another example of the connection port 923 there are an RS-232C port, an optical audio terminal, an HDMI (registered trademark) (High-Definition Multimedia Interface) port, and the like.
  • the robot arm device 10 and the control device 20 can directly acquire various data from the external connection device 929 or provide various data to the external connection device 929.
  • various types of information related to the drive control of the arm unit 120 may be read from various external connection devices 929 via the connection port 923 or written to various external connection devices 929.
  • the communication device 925 is a communication interface configured with, for example, a communication device for connecting to a communication network (network) 931.
  • the communication device 925 is, for example, a communication card for wired or wireless LAN (Local Area Network), Bluetooth (registered trademark), or WUSB (Wireless USB).
  • the communication device 925 may be a router for optical communication, a router for ADSL (Asymmetric Digital Subscriber Line), a modem for various communication, or the like.
  • the communication device 925 can transmit and receive signals and the like according to a predetermined protocol such as TCP / IP, for example, with the Internet or other communication devices.
  • the communication network 931 connected to the communication device 925 is configured by a wired or wireless network, and may be, for example, the Internet, a home LAN, infrared communication, radio wave communication, satellite communication, or the like. .
  • various types of information related to the drive control of the arm unit 120 may be transmitted / received to / from other external devices via the communication network 931 by the communication device 925.
  • the robot arm device 10 naturally includes various configurations corresponding to the arm unit 120 illustrated in FIGS. 1 and 9.
  • a computer program for realizing the functions of the robot arm device 10, the control device 20, and the display device 30 according to the present embodiment as described above can be produced and installed in a personal computer or the like.
  • a computer-readable recording medium storing such a computer program can be provided.
  • the recording medium is, for example, a magnetic disk, an optical disk, a magneto-optical disk, a flash memory, or the like.
  • the above computer program may be distributed via a network, for example, without using a recording medium.
  • a drive control configured to control the driving of the arm unit by driving each of the joint unit in cooperation with an arm unit to which an imaging unit can be connected and a plurality of links connected to each other by the joint unit. And the drive control unit uses the relative position information of the reference position with respect to the arm unit based on the state of the arm unit and the distance information between the imaging unit and the reference position.
  • a robot arm device that controls driving of the arm unit such that a reference position is located on an optical axis of the imaging unit.
  • the drive control unit drives the joint unit based on a control value for cooperative control of the arm unit based on the state of the arm unit acquired based on a plurality of states of the joint unit.
  • the robot arm device wherein the drive control unit controls the state of the arm unit acquired based on the detected states of the joint units, and the movement of the arm unit
  • the robot arm device (2), wherein the driving of the joint unit is controlled based on a control value for whole body cooperative control of the arm unit by generalized inverse dynamics using an object and a constraint condition .
  • the control value includes a virtual force that is applied to achieve the motion purpose in an operation space that describes a relationship between a force that acts on the arm unit and an acceleration that is generated on the arm unit, and the constraint condition.
  • the robot arm device according to (3), wherein the virtual force is calculated based on the actual force for driving the joint unit based on the above.
  • the drive control unit controls the drive of the joint unit based on a command value calculated by correcting the influence of disturbance on the control value.
  • the command value is calculated by correcting the control value using a disturbance estimated value representing an influence of the disturbance on the driving of the joint portion estimated based on the detected state of the joint portion.
  • the robot arm device according to (5).
  • the drive control unit controls the drive of the joint unit based on a constraint condition that the reference position is located on the optical axis of the image pickup unit, so that the image pickup unit faces the reference position.
  • the robot arm device according to any one of (2) to (6), wherein driving of the arm unit is controlled so as to perform a pivot operation with the reference position as a vertex in a state.
  • the drive control unit controls the drive of the joint unit based on a constraint condition that a predetermined point on the optical axis of the imaging unit is fixed at the reference position.
  • the robot arm device according to any one of (2) to (6), wherein the drive of the arm unit is controlled so that a pivot operation centered on the reference position is performed in a state where the reference position is directed.
  • the drive control unit controls the driving of the joint unit based on a constraint condition that the position and posture of the arm unit are fixed, so that the imaging unit is set in a state where the imaging unit faces a predetermined point.
  • the robot arm device according to any one of (2) to (6), wherein the drive of the arm unit is controlled so as to perform an operation fixed at a position.
  • the drive control unit controls the drive of the joint unit so that the position and posture of the arm unit can be arbitrarily changed in accordance with a user operation input.
  • the robot arm device according to claim 1.
  • the drive control unit is fixed at a predetermined position with a pivot operation having the reference position as a vertex with the imaging unit facing the reference position, and with the imaging unit facing a predetermined point.
  • the robot arm device Controlling the drive of the arm unit so as to perform any one of an operation that can be arbitrarily changed according to a user operation input and a position and posture of the arm unit,
  • the robot arm device according to any one of (6) to (6).
  • (12) The robot arm device according to any one of (1) to (11), wherein a distance between the imaging unit and the reference position is acquired based on a focal length of the imaging unit.
  • the plurality of joint units include a joint state detection unit that detects a state of the joint unit, and the joint state detection unit is a torque generated in the joint unit and an externally applied to the joint unit.
  • the robot arm device according to any one of (1) to (12), further including: a torque detection unit that detects torque; and a rotation angle detection unit that detects a rotation angle of the joint unit.
  • the robot arm device according to any one of (2) to (11), wherein the control value is a torque generated at the joint.
  • the robot arm device according to any one of (1) to (14), further including the imaging unit.
  • the imaging unit is a camera used for medical treatment.
  • a computer processor is configured to acquire a state of an arm unit that is configured by connecting a plurality of links to each other by joint units and to which an imaging unit can be connected, and distance information between the imaging unit and a reference position.
  • the arm so that the reference position is located on the optical axis of the imaging unit using the relative position information of the reference position with respect to the arm unit based on the function, the state of the arm unit and the distance information And a function of controlling the driving of the arm unit by driving each of the joint units in a coordinated manner based on the state of the unit.

Abstract

【課題】ユーザの利便性をより向上させることを可能にする。 【解決手段】複数のリンクが関節部によって互いに連結されて構成され、撮像部が接続可能なアーム部と、前記関節部の各々を協調させて駆動させることにより前記アーム部の駆動を制御する駆動制御部と、を備え、前記駆動制御部は、前記アーム部の状態と、前記撮像部と基準位置との距離情報と、に基づく、前記アーム部に対する前記基準位置の相対位置情報を用いて、前記基準位置が前記撮像部の光軸上に位置するように前記アーム部の駆動を制御する、ロボットアーム装置を提供する。

Description

ロボットアーム装置、ロボットアーム制御方法及びプログラム
 本開示は、ロボットアーム装置、ロボットアーム制御方法及びプログラムに関する。
 近年、医療分野においては、アームの先端に撮像装置が設けられたバランス型アーム(以下、支持アームとも呼称する。)を用いて、当該撮像装置によって撮影された術部の画像を観察しながら、手術等の各種の施術を行う方法が提案されている。バランス型アームを用いることにより、所望の方向から安定的に患部を観察することができ、施術を効率的に行うことが可能となる。
 一方、撮像装置によって術部を観察する際には、視点を術部に固定したまま、異なる距離や異なる角度から術部を観察したいという要望がある。このような要望に応えるために、撮像装置に、ピボット動作と呼ばれる、光軸上の一点を中心とした傾斜動を行わせる技術が開発されている。ピボット動作では、撮像装置が、3次元空間上の所定の点(ピボット中心点)を向いた状態で、当該所定の点を頂点とする円錐体の面上を移動する動作が実現される。例えば、特許文献1には、複数のリンク機構と、これらのリンク機構を連動させる連動機構等を適宜連結することにより、撮像装置のピボット動作を実現する医療用機器支持装置(バランス型アーム)が開示されている。
特開2004-105726号公報
 しかしながら、特許文献1に記載の技術では、リンク機構の機械的な構造によりピボット動作が実現されている。機械的な構造によりピボット動作を実現するために、アーム部の構造が複雑であり、その重量や駆動する際の慣性が大きなものとなってしまう可能性がある。
 そこで、本開示では、ユーザの利便性をより向上させることが可能な、新規かつ改良されたロボットアーム装置、ロボットアーム制御方法及びプログラムを提案する。
 本開示によれば、複数のリンクが関節部によって互いに連結されて構成され、撮像部が接続可能なアーム部と、前記関節部の各々を協調させて駆動させることにより前記アーム部の駆動を制御する駆動制御部と、を備え、前記駆動制御部は、前記アーム部の状態と、前記撮像部と基準位置との距離情報と、に基づく、前記アーム部に対する前記基準位置の相対位置情報を用いて、前記基準位置が前記撮像部の光軸上に位置するように前記アーム部の駆動を制御する、ロボットアーム装置が提供される。
 また、本開示によれば、複数のリンクが関節部によって互いに連結されて構成され撮像部が接続可能なアーム部の状態を取得することと、前記撮像部と基準位置との距離情報を取得することと、前記アーム部の状態と前記距離情報とに基づく、前記アーム部に対する前記基準位置の相対位置情報を用いて、前記基準位置が前記撮像部の光軸上に位置するように、前記アーム部の状態に基づいて前記関節部の各々を協調させて駆動させて前記アーム部の駆動を制御することと、を含む、ロボットアーム制御方法が提供される。
 また、本開示によれば、コンピュータのプロセッサに、複数のリンクが関節部によって互いに連結されて構成され撮像部が接続可能なアーム部の状態を取得する機能と、前記撮像部と基準位置との距離情報を取得する機能と、前記アーム部の状態と前記距離情報とに基づく、前記アーム部に対する前記基準位置の相対位置情報を用いて、前記基準位置が前記撮像部の光軸上に位置するように、前記アーム部の状態に基づいて前記関節部の各々を協調させて駆動させて前記アーム部の駆動を制御する機能と、を実現させる、プログラムが提供される。
 本開示によれば、撮像部が実空間上の所定の点である基準位置に向けられた状態におけるアーム部の状態と、撮像部が基準位置に向けられた状態における撮像部と基準位置との距離と、に基づいて、前記アーム部に対する前記基準位置の相対位置が算出される。そして、算出された相対位置に基づいて、基準位置が撮像部の光軸上に位置するように、アーム部の駆動が制御される。このように、撮像部が常に基準位置を向くようにアーム部が駆動されるという駆動制御が、ユーザが、アーム部を操作して撮像部を基準位置に向けるという、より簡易な操作によって実現される。従って、基準位置を設定する際のユーザの利便性を向上させることができる。また、このようなアーム部の駆動制御は、アーム部の状態に基づいて関節部の各々を協調させて駆動させる、全身協調制御によって実現される。このように、ユーザの操作性がより高い、いわゆる力制御によってアーム部の駆動が制御されることにより、ユーザはより容易にアーム部を操作することができ、ユーザの利便性を更に向上させることができる。
 以上説明したように本開示によれば、ユーザの利便性をより向上させることが可能となる。なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
本開示の一実施形態に係るロボットアーム制御システムの機能構成を示す機能ブロック図である。 本実施形態に係る基準位置導出方法の概要について説明するための説明図である。 本実施形態に係るロボットアーム制御方法の処理手順の一例を示すフロー図である。 本開示の一実施形態に係るロボットアーム装置が医療用に用いられる場合の一適用例について説明するための説明図である。 本開示の一実施形態に係るロボットアーム装置の外観を示す概略図である。 本開示の一実施形態に係る関節部のアクチュエータを、回転軸を通る断面で切断した様子を模式的に示す断面図である。 図6に示すトルクセンサを、駆動軸の軸方向から見た様子を模式的に示す概略図である。 図6に示すアクチュエータに適用されるトルクセンサの他の構成例を示す概略図である。 本開示の一実施形態に係る理想関節制御について説明するための説明図である。 本開示の一実施形態に係るロボットアーム制御システムの一構成例を示す機能ブロック図である。 本開示の一実施形態に係るアーム動作の一具体例であるピボット動作について説明するための説明図である。 図10に示すピボット動作を実現するための運動目的及び拘束条件について説明するための説明図である。 本開示の一実施形態に係るロボットアーム装置における冗長自由度を有する変形例の外観を示す概略図である。 本開示の一実施形態に係るロボットアーム制御方法の処理手順を示すフロー図である。 本開示の一実施形態に係るロボットアーム装置及び制御装置のハードウェア構成の一構成例を示す機能ブロック図である。
 以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
 なお、説明は以下の順序で行うものとする。
 1.ロボットアーム装置についての検討
 2.ロボットアーム制御システムの構成
 3.ロボットアーム制御方法
  3-1.ロボットアーム制御方法の概要
  3-2.ロボットアーム制御方法の処理手順
 4.変形例
  4-1.撮像部を基準位置に向ける操作についての変形例
  4-2.撮像部と基準位置との距離情報の取得についての変形例
 5.全身協調制御について
  5-1.医療用ロボットアーム装置についての検討
  5-2.本開示の一実施形態
   5-2-1.ロボットアーム装置の外観
   5-2-2.一般化逆動力学について
   5-2-2-1.仮想力算出処理
   5-2-2-1.実在力算出処理
  5-2-3.理想関節制御について
  5-2-4.ロボットアーム制御システムの構成
  5-2-5.運動目的の具体例
  5-3.ロボットアーム制御方法の処理手順
  5-4.全身協調制御に係るロボットアーム装置のまとめ
 6.ハードウェア構成
 7.補足
 本明細書では、まず、<1.ロボットアーム装置についての検討>において、本開示をより明確なものとするために、ロボットアーム装置の概要について説明するとともに、本発明者らが本開示に想到するに至った背景について説明する。ここで、本開示の好適な一実施形態では、いわゆる力制御によって駆動が制御されるロボットアーム装置において、当該ロボットアーム装置のアーム部に設けられる撮像装置を用いた対象物の観察が行われる。また、その際に、実空間上の所定の点である基準位置が導出され、撮像装置が当該基準位置を向いた状態で当該基準位置を頂点とする円錐体の面上を移動するピボット動作を行うように、アーム部の駆動が制御される。なお、以下では、ピボット動作における基準位置のことをピボット中心点とも呼称する。<2.ロボットアーム制御システムの構成>及び<3.ロボットアーム制御方法>では、このような制御を実現するための、ロボットアーム装置の制御システムの構成及びロボットアーム装置の制御方法について詳細に説明する。
 ここで、上述したようなピボット動作は、例えば基準位置が撮像装置の光軸上に位置するという拘束条件の下で、アーム部の駆動を制御するための制御値が算出されることにより、実現され得る。また、拘束条件を適宜変更することにより、例えば撮像装置が基準位置を中心とする半球上を移動するピボット動作(すなわち、撮像装置と基準位置との距離が一定に保たれた状態でのピボット動作)や、アーム部の位置及び姿勢が所定の状態で固定される(すなわち、撮像装置の位置及び姿勢が固定される)固定動作等の、各種の動作が実現されるように、アーム部の駆動を制御することが可能となる。このような拘束条件に基づくロボットアーム装置の駆動制御は、全身協調制御と呼ばれる制御方式によって実現され得る。そこで、<5.全身協調制御について>では、全身協調制御を実現するための制御システムの構成や、制御方法について説明する。なお、<5.全身協調制御について>では、上述したピボット動作や固定動作を実現するための駆動制御についてだけではなく、ロボットアーム装置の全身協調制御についてより広い見地から説明を行う。
 なお、以下の説明では、本開示の好適な一実施形態として、主に医療用に用いられるロボットアーム装置を例に挙げて説明を行う。ただし、本実施形態はかかる例に限定されず、例えば工業用等、他の分野に対しても適用可能である。
 <1.ロボットアーム装置についての検討>
 まず、本開示の好適な一実施形態について説明するに先立ち、本開示をより明確なものとするために、本発明者らが本開示に想到するに至った背景について説明する。
 一般的に、ロボット装置には、複数のリンクが複数の関節部によって互いに連結された多リンク構造体によって構成され、複数の当該関節部における回転駆動が制御されることにより、ロボット装置全体としての駆動が制御されるものがある。このようなロボットアーム装置では、そのアーム部が当該多リンク構造体に対応しており、アーム部全体の駆動が各関節部の駆動によって制御されることとなる。
 ここで、ロボット装置及び各関節部の制御方式としては、位置制御と力制御とが知られている。位置制御では、関節部のアクチュエータに、例えば角度等の指令値が与えられ、当該指令値に追随するように関節部の駆動が制御される。一方、力制御では、ロボット装置全体として作業対象に加えるべき力の目標値が与えられ、当該目標値が示す力を実現するように関節部の駆動(例えば関節部によって発生されるトルク)が制御される。
 一般的に、制御上の簡便さやシステムの構成のしやすさから、位置制御によって駆動されるロボット装置が広く用いられている。しかしながら、位置制御は、外力に柔軟に応じることが困難であるため、俗に「硬い制御」と呼ばれることがあり、多様な外界との物理インタラクション(例えば、対人物理インタラクション)を行いながらタスクを遂行するロボット装置には適していない。一方、力制御は、システム構成は複雑化する反面、力オーダーでの「柔らかい制御」が実現できるため、特に対人物理インタラクションを行うロボット装置に適した制御方法であり、よりユーザビリティに優れた制御方法と言える。
 例えば、力制御が適用されたロボット装置の一例としては、本願出願人と同一出願人による先行出願である「特開2010-188471号公報」を参照することができる。当該特許文献には、対向する2輪の車輪からなる移動機構と複数の関節部を有する腕部を備えたロボット装置において、当該車輪及び当該関節部の駆動を全体として協調させて制御する(全身協調制御を行う)ロボット装置が開示されている。
 一方、近年、医療分野においては、各種の施術(例えば、手術や検査)を行う際に、アーム部の先端に様々な医療用のユニット(先端ユニット)が設けられたバランス型アーム(支持アームとも呼称する。)を用いる試みが行われている。例えば、バランス型アームのアーム部の先端に顕微鏡や内視鏡、カメラ等の撮像機能を有する様々な撮像装置を設け、施術者(ユーザ)が当該撮像装置によって撮影された術部の画像を観察しながら各種の施術を行う方法が提案されている。
 しかしながら、バランス型アームは、アーム部を移動させた際の力の均衡を取るためのカウンターバランス用ウェイト(カウンターウェイト又はバランサーとも呼称する。)を備える必要があるため、装置が大型化する傾向がある。施術時の作業空間の確保の観点からは、施術に用いられる装置にはより一層の小型化が求められており、一般的に提案されているバランス型アームではこのような要請に応えることが困難であった。また、バランス型アームにおいては、アーム部の駆動の一部のみ、例えば先端ユニットを平面上(2次元上)で移動させるための2軸の駆動のみが電動駆動となっており、アーム部及び先端ユニットの移動には施術者自身や周囲の医療スタッフによる手動での位置決めが必要となる。従って、一般的なバランス型アームでは、撮影時の安定性(例えば先端ユニットの位置決めの精度や制振等)の確保や、例えば視点を患者の体の所定の部位に固定した状態で様々な方向から観察する等の観察の自由度の確保が困難であった。
 特に、アーム部に取り付けられた撮像装置によって術部を観察する際には、視点を術部に固定したまま、異なる距離や異なる角度から当該術部を観察したいという要望がある。このような観察は、撮像装置にピボット動作を行わせることにより実現され得るが、バランス型アームによってピボット動作を行うためには、上記特許文献1に記載されているような複雑な機械的構成が必要となり、高い操作性を得ることは難しい。
 上記事情に鑑みて、バランス型アームに代わる装置として、医療分野においては、より正確により素早く作業を行うために、位置制御によって駆動が制御されるロボットアーム装置が提案されている。しかしながら、施術の更なる効率化及びユーザの負担軽減のために、ロボットアーム装置の駆動制御には、ユーザによってアーム部及び先端ユニットとして設けられる撮像ユニットの位置や姿勢をより直感的に制御することができる、より高い操作性が求められていた。位置制御によって駆動が制御されるロボットアーム装置では、このようなユーザの要望に応えることが困難であった。
 上記のような事情は医療分野に限定されるものではない。例えば、工業分野においても、製品の検品や外観検査等の作業を行うために、バランス型アームやロボットアーム装置のアーム部の先端に撮像装置を設け、当該撮像装置によって製品を観察することが考えられる。このような作業においても、バランス型アームや位置制御によって駆動が制御されるロボットアーム装置を用いる場合には、その操作性の低さから、ユーザの負担が大きくなることが懸念される。
 そこで、より安定性が高く、より操作性の高いアーム部の駆動制御を行うことが可能なロボットアーム装置を実現することにより、ユーザの負担をより軽減することが望まれていた。そこで、本発明者らは、ユーザにとっての利便性をより向上させ、ユーザの負担をより軽減することを可能とするために、力制御によって駆動が制御されるロボットアーム装置に想到した。上述したように、ロボットアーム装置の駆動制御を力制御によって行うことにより、よりユーザの直感に従ったアーム部の動作が実現され、高い操作性を得ることができる。
 下記<4.全身協調制御について>で後述するように、本発明者らは、制御方式として、一般化逆動力学と呼ばれる力学体系を用いた全身協調制御を適用することにより、力制御によって駆動が制御されるロボットアーム装置を実現する。ここで、全身協調制御では、アーム部の各関節部を協調させて駆動させることによりアーム部全体としての駆動が制御されることとなる。また、各関節部の駆動を制御するための制御値は、アーム部全体に対して設定される運動目的や拘束条件に基づいて算出され得る。
 ここで、拘束条件とは、アーム部の運動を制限するような位置や速度、力等の条件のことである。例えば、実空間上の所定の点である基準位置が撮像装置の光軸上に位置するという拘束条件を設定することにより、当該拘束条件を実現するようにアーム部を駆動させるための、各関節部の駆動の制御値を算出することができる。基準位置を観察対象である患者の術部としてこのような拘束条件を設定することにより、撮像装置が常に術部を向いた状態となるようにアーム部の駆動が制御されることとなり、視線を術部に固定したまま、当該術部を異なる距離や異なる角度から観察するという、ユーザの要望に応える制御を行うことが可能となる。
 ここで、基準位置は、実空間上の任意の点であり得るため、基準位置を拘束条件として設定するためには、ロボットアーム装置に対する当該基準位置の相対的な位置を導出し、ロボットアーム装置にその相対的な位置を認識させる必要がある。当該相対的な位置の導出は、ロボットアーム装置がアーム部を駆動するために用いている基準座標における基準位置を導出する処理に対応している。当該基準座標とは、例えばロボットアーム装置が有する内部モデルにおける座標系のことであってよい。
 しかしながら、これまで、力制御によって駆動が制御されるロボットアーム装置において、このような基準位置の導出を行うための適切な方法は、必ずしも確立されていなかった。そこで、力制御によって駆動が制御されるロボットアーム装置においては、アーム部に設けられる撮像装置によって対象物を観察する際の基準位置の導出をより容易に行うための技術が求められていた。本発明者らは、基準位置の導出をより容易に行うための技術について鋭意検討した結果、以下に示す本開示の好適な一実施形態に想到した。以下、本開示の好適な一実施形態について詳しく説明する。
 <2.ロボットアーム制御システムの構成>
 まず、図1を参照して、本開示の一実施形態に係るロボットアーム制御システムの構成について説明する。図1は、本開示の一実施形態に係るロボットアーム制御システムの機能構成を示す機能ブロック図である。
 図1を参照すると、本実施形態に係るロボットアーム制御システム2は、ロボットアーム装置10、制御装置20及び表示装置30を備える。本実施形態においては、制御装置20によって、ロボットアーム装置10を全身協調制御によって駆動するための各種の演算が行われ、当該演算結果に基づいてロボットアーム装置10のアーム部の駆動が制御される。また、ロボットアーム装置10のアーム部には後述する撮像部140が設けられており、撮像部140によって撮影された画像が表示装置30の表示画面に表示される。以下、ロボットアーム装置10、制御装置20及び表示装置30の構成について詳細に説明する。
 表示装置30は、各種の情報を表示画面上にテキスト、イメージ等様々な形式で表示することにより、当該情報をユーザに対して視覚的に通知する。本実施形態においては、表示装置30は、ロボットアーム装置10の撮像部140によって撮影された画像を表示画面上に表示する。具体的には、表示装置30は、撮像部140によって取得された画像信号に各種の画像処理を施す画像信号処理部(図示せず。)や処理された画像信号に基づく画像を表示画面上に表示させる制御を行う表示制御部(図示せず。)等の機能及び構成を有する。なお、表示装置30の構成は、一般的な表示装置と同様であってよいため、ここでは詳細な説明は省略する。
 ロボットアーム装置10は、複数の関節部と複数のリンクから構成される多リンク構造体であるアーム部を有し、当該アーム部を可動範囲内で駆動させることにより、当該アーム部の先端に設けられる先端ユニット(本実施形態では撮像部)の位置及び姿勢の制御を行う。
 図6を参照すると、ロボットアーム装置10はアーム部120を有する。また、アーム部120は、関節部130及び撮像部140を有する。
 アーム部120は、複数の関節部130と複数のリンクから構成される多リンク構造体であり、各関節部130の駆動が制御されることによりその駆動が制御される。なお、アーム部120が有する複数の関節部130の機能及び構成は互いに同様であるため、図6では、それら複数の関節部130を代表して1つの関節部130の構成を図示している。
 関節部130は、アーム部120においてリンク間を互いに回動可能に連結するとともに、後述する関節制御部135からの制御によりその回転駆動が制御されることによりアーム部120を駆動する。関節部130は、関節駆動部131、関節状態検出部132及び関節制御部135を有する。
 関節制御部135は、例えばCPU(Central Processing Unit)等の各種のプロセッサによって構成され、関節部130の動作を制御する。具体的には、アーム制御部110は駆動制御部111を有し、駆動制御部111からの制御によって関節部130の駆動が制御されることにより、アーム部120の駆動が制御される。より具体的には、駆動制御部111は、関節部130の関節駆動部131に対して供給される電流量を制御することにより、関節駆動部131を構成するモータの回転数を制御し、関節部130における回転角度及び発生トルクを制御する。ここで、上述したように、駆動制御部111による関節部130の駆動制御は、制御装置20における演算結果に基づいて行われ得る。
 関節駆動部131は、関節部130のアクチュエータを構成するモータ等の駆動機構である。関節駆動部131が駆動することにより関節部130が回転駆動する。関節駆動部131は、駆動制御部111によってその駆動が制御される。例えば、駆動制御部111からの指令に応じた電流量によって、関節駆動部131を構成するモータが駆動されることとなる。
 関節状態検出部132は、関節部130の状態を検出する。ここで、関節部130の状態とは、関節部130の運動の状態を意味していてよい。例えば、関節部130の状態には、関節部130の回転角度、回転角速度、回転角加速度、発生トルク等の情報が含まれる。本実施形態においては、関節状態検出部132は、例えばエンコーダ及びトルクセンサ等の各種のセンサによって構成されており、関節部130の回転角度、並びに、関節部130の発生トルク及び外トルクを検出することができる。関節状態検出部132は、検出した関節部130の状態を制御装置20に送信する。
 撮像部140は、アーム部120の先端に設けられる先端ユニットの一例であり、撮影対象の画像を取得する機能を有する。具体的には、撮像部140は、カメラや顕微鏡等の各種の撮像装置によって構成される。例えば、撮像部140は、デジタルビデオカメラによって構成されており、撮影対象の画像を表す画像信号を取得することができる。撮像部140は、取得した画像信号を表示装置30に送信する。
 なお、ロボットアーム装置10では、例えば、撮像部140はアーム部120の先端に設けられる。図1では、撮像部140が複数の関節部130及び複数のリンクを介して最終段のリンクの先端に設けられる様子を、関節部130と撮像部140との間にリンクを模式的に図示することにより表現している。ただし、本実施形態では、撮像部140が設けられる部位はアーム部120の先端に限定されず、撮像部140はアーム部120のいずれかの部位に設けられればよい。
 以上、ロボットアーム装置10の機能及び構成について説明した。次に、制御装置20の機能及び構成について説明する。図6を参照すると、制御装置20は、記憶部220及び制御部230を有する。
 制御部230は、例えばCPU等の各種のプロセッサによって構成され、制御装置20を統合的に制御するとともに、ロボットアーム装置10におけるアーム部120の駆動を制御するための各種の演算を行う。具体的には、制御部230は、ロボットアーム装置10のアーム部120の駆動を制御するために、全身協調制御及び理想関節制御における各種の演算を行う。また、制御部230は、撮像部140によって対象物を観察する際の基準位置を導出するための各種の処理を行う。
 制御部230の機能及び構成について詳しく説明する。制御部230は、全身協調制御部240、理想関節制御部250及び基準位置導出部260を有する。
 全身協調制御部240は、一般化逆動力学を用いた全身協調制御に関する各種の演算を行う。また、理想関節制御部250は、理論モデルに基づいた理想的な応答を実現する理想関節制御に関する各種の演算を行う。これらの演算結果に基づいてロボットアーム装置10の駆動が制御されることにより、ロボットアーム装置10が力制御によって駆動されることとなる。ここで、全身協調制御部240及び理想関節制御部250が行う処理については、下記<4.全身協調制御について>で改めて詳しく説明することとし、ここでは概要のみを簡単に説明する。
 一般化逆動力学は、複数のリンクが複数の関節部によって連結されて構成される多リンク構造体(例えばアーム部120)において、各種の操作空間(Operation Space)における様々な次元に関する運動目的を、各種の拘束条件を考慮しながら、複数の当該関節部に生じさせるトルクに変換する、多リンク構造体の全身協調制御における基本演算である。
 操作空間は、ロボット装置の力制御における重要な概念である。操作空間は、多リンク構造体に作用する力と多リンク構造体の加速度との関係を記述するための空間である。多リンク構造体の駆動制御を位置制御ではなく力制御によって行う際に、多リンク構造体と環境との接し方を拘束条件として用いる場合に操作空間という概念が必要となる。操作空間は、例えば、多リンク構造体が属する空間である、関節空間、デカルト空間、運動量空間等である。
 運動目的は、多リンク構造体の駆動制御における目標値を表すものであり、例えば、駆動制御によって達成したい多リンク構造体の位置、速度、加速度、力、インピーダンス等の目標値である。
 拘束条件は、多リンク構造体の形状や構造、多リンク構造体の周囲の環境及びユーザによる設定等によって定められる、多リンク構造体の位置、速度、加速度、力等に関する拘束条件である。拘束条件は、アーム部120の運動を制限(拘束)する各種の情報であってよい。例えば、拘束条件には、発生力、優先度、非駆動関節の有無、垂直反力、摩擦錘、支持多角形等についての情報が含まれる。
 全身協調制御部240は、逆一般化動力学を用いて、所定の運動目的を達成するようにアーム部120を駆動するための制御値(例えば各関節部130の駆動パラメータ(例えば関節部130の発生トルク値))を、所定の拘束条件を考慮して算出することができる。本実施形態では、例えば、基準位置が撮像部140の光軸上に位置するという拘束条件の下で、全身協調制御部240によってアーム部120の制御値が算出される。これにより、撮像部140にピボット動作を行わせるようなアーム部120の制御値が算出されることとなる。また、例えば、アーム部120の位置及び姿勢が所定の状態で固定されるという拘束条件の下で、全身協調制御部240によってアーム部120の制御値が算出されることにより、アーム部120が固定される(すなわち、撮像部140も固定される)ようなアーム部120の制御値が算出されることとなる。また、例えば、拘束条件が特段設定されていない状態で、全身協調制御部240によってアーム部120の制御値が算出されることにより、アーム部120及び撮像部140の位置及び姿勢を自由に移動させることができるフリー動作を実現するようなアーム部120の制御値が算出されることとなる。全身協調制御部240は、算出した制御値についての情報を、理想関節制御部250に提供する。
 理想関節制御部250は、全身協調制御部240により算出された制御値に対して外乱の影響を考慮した補正を行うことにより、最終的にアーム部120を駆動するために用いられる指令値を算出する。例えば、当該指令値は、外乱の影響が考慮された関節部130の発生トルク値であってよい。理想関節制御部250は、算出した指令値についての情報を、ロボットアーム装置10に送信する。当該指令値に基づいて、駆動制御部111が各関節部130を駆動させることにより、所定の拘束条件の下で所定の運動目的を達成するように、アーム部120が駆動されることとなる。
 基準位置導出部260は、撮像部140による対象物の観察における基準となる点である基準位置を導出する。ここで、基準位置の導出とは、アーム部120に対する基準位置の相対位置を算出することにより、ロボットアーム装置10がアーム部120を駆動するために用いている基準座標系(例えば内部モデルにおける座標系)における基準位置を導出する処理を意味していてよい。基準位置導出部260によって導出された基準位置を用いて、例えば、上述したような基準位置が撮像部140の光軸上に位置するという拘束条件が設定され、当該拘束条件の下で、全身協調制御部240及び理想関節制御部250によって、アーム部120を駆動するための制御値及び指令値が計算されることとなる。
 基準位置導出部260の機能について詳細に説明する。基準位置導出部260は、アーム状態取得部241、距離情報取得部261及び相対位置算出部262を有する。
 アーム状態取得部241は、関節状態検出部132によって検出された関節部130の状態に基づいて、アーム部120の状態(アーム状態)を取得する。ここで、アーム状態とは、アーム部120の運動の状態を意味していてよい。例えば、アーム状態には、アーム部120の位置、速度、加速度、力等の情報が含まれる。上述したように、関節状態検出部132は、関節部130の状態として、各関節部130における回転角度、回転角速度、回転角加速度、発生トルク等の情報を取得している。また、後述するが、記憶部220は、制御装置20によって処理される各種の情報を記憶するものであり、本実施形態においては、記憶部220には、アーム部120に関する各種の情報(アーム情報)、例えばアーム部120を構成する関節部130及びリンクの数や、リンクと関節部130との接続状況、リンクの長さ等の情報が格納されていてよい。アーム状態取得部241は、記憶部220から当該アーム情報を取得することができる。従って、アーム状態取得部241は、関節部130の状態とアーム情報とに基づいて、複数の関節部130、複数のリンク及び撮像部140の空間上の位置(座標)(すなわち、アーム部120の位置及び姿勢、並びに、撮像部140の位置及び姿勢)や、各関節部130、リンク及び撮像部140に作用している力等の情報をアーム状態として取得することができる。なお、アーム状態に含まれる各種の物理量は、例えば内部モデルの座標系等、アーム部120の駆動制御に用いられている基準座標系によって表現されてよい。
 本実施形態では、アーム状態取得部241は、撮像部140が基準位置に向けられた状態でのアーム状態を取得する。なお、撮像部140を基準位置に向ける操作は、例えば、表示装置30に表示された撮像部140によって撮影されている画像を参照しながら、ユーザによる手作業で行われてよい。アーム状態取得部241は、取得したアーム状態についての情報を相対位置算出部262に提供する。
 距離情報取得部261は、撮像部140が基準位置に向けられた状態における、撮像部140と基準位置との距離についての距離情報を取得する。例えば、当該距離情報は、撮像部140の焦点距離に基づいて取得され得る。具体的には、撮像部140が基準位置に向けられ、当該基準位置に焦点が合わせられた際における焦点距離についての情報が、撮像部140から距離情報取得部261に送信されてよい。なお、基準位置に焦点を合わせる処理は、ユーザによる手作業によって行われてもよいし、撮像部140がオートフォーカス(AF)機能を有する場合であれば、当該AF機能によって行われてもよい。例えば、記憶部220に、撮像部140を構成する撮像装置の性能についての情報が記憶されており、距離情報取得部261は、記憶部220を参照することにより、当該焦点距離に対応する作動距離(WD:Work Distance)として、撮像部140と基準位置との距離情報を取得することができる。なお、焦点距離は、撮像部140内の光学系の状態(例えば焦点調整用のレンズの位置等)に基づいて、撮像部140によって算出され得る。また、撮像部140は、合焦時の光学系の状態についての情報を距離情報取得部261に送信し、当該焦点距離の算出は距離情報取得部261によって行われてもよい。距離情報取得部261は、取得した距離情報を相対位置算出部262に提供する。
 相対位置算出部262は、アーム状態取得部241によって取得されたアーム状態と、距離情報取得部261によって取得された距離情報と、に基づいて、アーム部120に対する基準位置の相対位置を算出する。具体的には、相対位置算出部262は、アーム部120のアーム状態から、基準座標系におけるアーム部120及び撮像部140の位置及び姿勢を認識することができる。また、相対位置算出部262は、距離情報に基づいて、撮像部140と基準位置との距離を認識することができる。従って、相対位置算出部262は、これらの情報から、アーム部120に対する基準位置の相対位置を算出することができる。
 相対位置算出部262は、算出した相対位置についての情報を、全身協調制御部240に提供する。ここで、アーム部120に対する基準位置の相対位置が算出されたということは、基準座標系における基準位置の座標が導出されたことを意味する。従って、当該基準位置を拘束条件として設定することが可能となる。
 本実施形態では、例えば、全身協調制御部240及び理想関節制御部250によって、当該基準位置を用いて、基準位置が撮像部140の光軸上に位置するという拘束条件の下で、アーム部120を駆動するための制御値及び指令値が算出される。これにより、撮像部140が基準位置を常に向いた状態で、当該基準位置からの距離及び角度は自由に変化可能に動作するように(すなわち、ピボット動作を行うように)、アーム部120の駆動が制御されることとなる。また、上述した拘束条件とともに、撮像部140の光軸上の所定の点が基準位置に固定されるという拘束条件が更に設定されることにより、撮像部140と基準位置との距離が一定に保たれた状態でピボット動作が行われるように、アーム部120の駆動が制御されることとなる。
 記憶部220は、制御装置20によって処理される各種の情報を記憶する。本実施形態においては、記憶部220は、制御部230によって行われる全身協調制御及び理想関節制御に関する演算において用いられる各種のパラメータを記憶することができる。例えば、記憶部220は、全身協調制御部240による全身協調制御に関する演算において用いられる運動目的及び拘束条件を記憶していてもよい。また、記憶部220には、制御部230による全身協調制御及び理想関節制御に関する演算における演算結果や演算過程で算出される各数値等が記憶されてもよい。また、記憶部220には、アーム状態取得部241がアーム状態を取得する際に用いるアーム部120に関する各種の情報が記憶されていてもよい。更に、記憶部220には、基準位置導出部260によって行われる各種の処理において用いられるパラメータや、当該処理の結果等の情報を記憶することができる。このように、記憶部220には、制御部230によって行われる各種の処理に関するあらゆるパラメータが格納されていてよく、制御部230は、記憶部220と相互に情報を送受信しながら各種の処理を行うことができる。
 以上、図1を参照して、本実施形態に係るロボットアーム制御システム2の構成について説明した。以上説明したように、本実施形態では、基準位置導出部260によって、撮像部140によって対象物を観察する際の基準位置が導出される。そして、導出された基準位置が、全身協調制御を行う際の拘束条件として設定されることにより、当該基準位置を中心とするピボット動作が実現される。ここで、基準位置の導出は、基準位置に撮像部140を向けた状態で、アーム部120のアーム状態及び撮像部140と基準位置との距離情報が取得されることにより行われる。アーム部120のアーム状態は、アーム状態取得部241によって、関節部130の状態に基づいて自動的に取得され得る。また、距離情報も、例えば撮像部140の焦点距離についての情報に基づいて、距離情報取得部261によって自動的に取得され得る。従って、基準位置を導出するためにユーザが行う操作は、表示装置30に表示された撮像部140によって撮影されている画像を参照しながら、撮像部140を基準位置に向ける操作だけでよい。よって、例えば上記特許文献1に記載の操作に比べて、より簡易な操作で、操作者の熟練度に依らず、基準位置の導出及び当該基準位置を中心とするピボット動作が実現される。これにより、手術時におけるロボットアーム装置10の操作者の作業負荷が軽減されるため、手術時間の短縮や、操作者の疲労軽減等、ユーザの利便性をより向上させる効果が得られる。また、本実施形態では、いわゆる力制御によって駆動が制御されるロボットアーム装置10において、このようなピボット動作が行われる。従って、基準位置の導出時及びピボット動作時におけるアーム部120の操作をユーザがより直感的に行うことができ、より操作性が高く、ユーザの利便性が高いロボットアーム装置10の駆動制御が実現される。
 なお、以上説明した、本実施形態に係るロボットアーム制御システム2の各構成要素は、汎用的な部材や回路を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。また、各構成要素の機能を、CPU等が全て行ってもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用する構成を変更することが可能である。
 また、上述のような本実施形態に係るロボットアーム制御システム2の各機能を実現するためのコンピュータプログラムを作製し、パーソナルコンピュータ等に実装することが可能である。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリなどである。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信してもよい。
 <3.ロボットアーム制御方法>
 次に、本開示の一実施形態に係るロボットアーム制御方法について説明する。本実施形態に係るロボットアーム制御方法では、基準位置の導出が行われた後に、当該基準位置を用いたアーム部の駆動制御(例えば、撮像装置に基準位置をピボット中心点とするピボット動作を行わせるようなアーム部の駆動制御)が行われる。以下では、まず、図2を参照して、本実施形態に係る基準位置導出方法の概要について説明する。次に、図3を参照して、当該基準位置導出方法も含めた、本実施形態に係るロボットアーム制御方法の処理手順について詳細に説明する。
 (3-1.基準位置導出方法の概要)
 まず、図2を参照して、本実施形態に係る基準位置導出方法の概要について説明する。図2は、本実施形態に係る基準位置導出方法の概要について説明するための説明図である。
 本実施形態に係るロボットアーム制御方法では、まず、図2に示すように、ロボットアーム装置のアーム部310の先端に設けられる撮像装置(図示せず。)が、実空間上の基準位置360に向けられる。アーム部310は、複数のリンク312が複数の関節部311によって連結されて構成される。アーム部310、リンク312及び関節部311は、図1に示すアーム部120、リンク及び関節部130に対応するものである。なお、実際には基台等の台座の上にアーム部310が設置されることによりロボットアーム装置が構成され得るが、図2では、簡単のため、基台に当たる部材の図示は省略している。
 図2に示す例では、アーム部310は、6自由度を有するように構成されている。ただし、ロボットアーム装置のアーム部310の構成は、図示される例に限定されない。関節部311の配設数や、リンク312と関節部311との接続状況等、アーム部310の具体的な構成は、ロボットアーム装置の用途に応じて、所望の自由度を実現するように適宜決定されてよい。例えば、本実施形態であれば、アーム部310の具体的な構成は、撮像装置がピボット動作を行うことができるだけの自由度をアーム部310が有するように決定されればよい。
 また、図2では、ロボットアーム装置がアーム部310を駆動するために用いている基準座標系(X-Y-Z座標)(例えば内部モデルにおける座標系)を表す矢印を、アーム部310に重畳させて模式的に図示している。X-Y-Z座標の原点は、アーム部310の駆動を記述しやすい位置に適宜設定されてよい。
 撮像装置は、例えばカメラや顕微鏡等であり、基準位置360は観察対象(例えば患者の術部等)上の所定の位置であり得る。本実施形態では、撮像装置の視線方向(光軸方向)が重要となるため、図2では、簡単のため、撮像装置の図示を省略し、撮像装置の視野領域330を模式的に平面として図示するとともに、視野領域330内での座標(x-y-z座標)を表す矢印を図示している。ここでは、図2に示すように、視野領域330を表す平面内において互いに直交する2軸をx軸及びy軸とし、撮像装置の視線方向を、視野領域330を表す平面と直交する方向であるz軸としている。
 図2に示す例では、撮像装置は、撮像装置の視線方向がアーム部310の先端に配置されるリンク312の方向(アーム部310の手先方向)と一致するように、アーム部310の先端に接続されている。ただし、本実施形態はかかる例に限定されず、撮像装置は、アーム部310のいずれかの部位に設けられればよく、その設置位置は限定されない。上述したように、本実施形態では、基準位置を導出するためには、撮像装置の位置と、撮像装置と基準位置との距離と、が分かればよいため、撮像装置が設けられる位置は、必ずしもアーム部310の先端でなくてもよい。
 撮像装置が基準位置360に向けられる処理は、例えば、撮像装置によって撮影された画像が表示された表示装置を参照しながらユーザによる手作業によって行われ、基準位置360が視野領域330の略中心となるようにアーム部310が操作され撮像装置の位置及び姿勢が調整される。ここで、当該処理では、例えば、アーム部310の動作モードは、上述したフリー動作を行うことが可能なフリー動作モードに設定されている。フリー動作モードでは、ユーザの操作入力に応じて、各関節部311を自由に移動させることができる。ユーザは、アーム部310に直接外力を加えることによって撮像装置を適切な位置及び姿勢に移動させてもよいし、リモコンやコントローラ等の各種の入力装置を介してアーム部310を移動させることにより、撮像装置を適切な位置及び姿勢に移動させてもよい。
 撮像装置が基準位置360に向けられると、この状態での各関節部311の状態が検出され、検出された各関節部311の状態に基づいてアーム状態が取得される。当該処理は、例えば図1に示すアーム状態取得部241に対応する構成によって行われる。アーム状態はアーム部310の位置及び姿勢についての情報を含んでおり、ロボットアーム装置は、アーム状態に基づいてアーム部310及び撮像装置の基準座標系における位置を認識することができる。
 更に、アーム状態の取得と並行して、撮像装置が基準位置360に向けられた状態で、撮像装置と基準位置360との距離を表す距離情報が取得される。当該処理は、例えば図1に示す距離情報取得部261に対応する構成によって行われる。例えば、当該距離情報は、撮像装置の焦点が基準位置360に合わされた際の焦点距離に基づいて取得されてよい。その場合、例えば、撮像装置に設けられるAF(オートフォーカス)機能によって又はユーザの手作業によって、撮像装置の焦点が基準位置360に合うように撮像装置内部の光学系が適宜調整され、合焦時の光学系の状態に基づいて焦点距離が算出されてもよい。
 アーム部310のアーム状態及びアーム部310と基準位置360との距離情報が取得されると、次に、アーム部310に対する基準位置360の相対位置が算出される。当該処理は、例えば図1に示す相対位置算出部262に対応する構成によって行われる。当該処理は、基準座標系における基準位置に360の位置(座標)を算出する処理であってよい。ロボットアーム装置は、アーム部310のアーム状態に基づいて基準座標系における撮像装置の位置を認識しており、距離情報に基づいて撮像装置から基準位置360までの距離を認識しているため、これらの情報から基準座標系における基準位置360の位置を算出することができる。
 本実施形態では、このようにして基準座標系における基準位置360の座標が算出され、当該基準位置360の座標を用いたアーム部310の駆動制御、例えば、当該基準位置360を中心とするピボット動作等が行われることとなる。
 以上、図2を参照して、本実施形態に係る基準位置決定方法の概要について説明した。
 (3-2.ロボットアーム制御方法の処理手順)
 次に、図3を参照して、本実施形態に係るロボットアーム制御方法の処理手順について説明する。図3は、本実施形態に係るロボットアーム制御方法の処理手順の一例を示すフロー図である。図3に示すフロー図は、本実施形態に係るロボットアーム装置においてピボット動作を行う際における、一連の処理を示している。また、図3に示す一連の処理は、例えば図1に示すロボットアーム制御システム2によって実行され得る。ここでは、図1に示すロボットアーム制御システム2の構成と対応付けながら、図3に示す各処理について説明を行う。
 図3を参照すると、本実施形態に係るロボットアーム制御方法では、まず、アーム部120の動作モードがフリー動作モードに移行される(ステップS101)。当該処理では、例えば、図1に示す全身協調制御部240によって、アーム部120にフリー動作を行わせるような制御値が算出され、当該制御値に基づいて、アーム部120の駆動が制御されることとなる。フリー動作モードでは、ユーザの操作入力に応じて、アーム部120を自由に移動させることができる。
 次に、撮像部140の視野の中心に基準位置が収まるように、アーム部120が移動される(ステップS103)。当該基準位置は、例えば患者の術部上の所定の点であり、ピボット動作時にピボット中心点となる点である。当該処理では、例えば、撮像部140によって撮影された画像が表示された表示装置30を参照しながら、ユーザの手作業によって、アーム部120の位置が調整されてよい。
 次に、アーム部120の動作モードが、撮像部140にピボット動作を行わせるピボット動作モードに移行される(ステップS105)。ピボット動作を行うためには、ピボット中心点が設定される必要があるため、ピボット中心点が設定されているかどうかが判断される(ステップS107)。ここで、アーム部120の位置及び姿勢が変化すれば、ピボット中心点も変化し得るため、ピボット中心点が設定されている場合とは、一旦ピボット中心点が設定された後、固定モードに移行し(後述するステップS119)、再度ピボット動作に移行した場合に相当する。従って、ステップS103を経てステップS107に至った場合には、基本的にはピボット中心点が設定されていないと判断され、ステップS109に進むこととなる。
 ステップS109では、撮像部140がピボット中心点に向けられた状態におけるアーム状態が取得される。次に、ステップS111で、撮像部140とピボット中心点との距離情報が取得される。そして、アーム状態と距離情報とに基づいて、アーム部120に対するピボット中心点の相対位置が算出される(ステップS113)。これらの処理は、例えば図1に示すアーム状態取得部241、距離情報取得部261及び相対位置算出部262によってそれぞれ行われてよい。なお、図3では、基準位置を導出するためにアーム状態が取得されることを強調するために、形式的にステップS109としてアーム状態が取得される処理を図示している。本実施形態では、実際には、全身協調制御が行われている間は、常にアーム状態取得部241によってアーム状態が取得されているため、ステップS109に示すタイミングにおいてのみアーム状態が取得される訳ではない。
 ピボット中心点の相対位置が算出されたら、当該基準位置がピボット中心点として設定される(ステップS115)。これにより、撮像部140が当該ピボット中心点を中心とするピボット動作を行うように、アーム部120の駆動が制御されることとなる。ピボット動作時には、ユーザは、撮像部140の視線(光軸)がピボット中心点に向けられた状態で、その視点(距離及び角度)を自由に調整することができる(ステップS117)。これにより、ユーザは、同一の観察対象(術部)を複数の視点から観察しながら各種の処置を行うことが可能となる。
 ピボット動作を行いながら各種の処置を行ううちに、特定の位置で視点を固定したい場合には、アーム部120の動作モードを固定動作モードに移行させることができる(ステップS119)。固定動作モードでは、アーム部120がその時点での状態を保持するようにその駆動が制御され、アーム部120の位置及び姿勢が固定される(ステップS121)。固定動作モードにより、撮像部140の位置及び姿勢も所定の位置で固定されるため、特定の距離及び角度からの撮像画像が表示装置30に表示されることとなる。
 固定動作モードに移行した後には、再度視点を変更するかどうかが判断される(ステップS123)。そのまま視点を固定して施術を継続する場合には、固定動作モードが維持される。一方、再度視点を変更したい場合には、ステップS105に戻り、ピボット動作モードに移行する。ここで、固定動作モードからピボット動作モードに移行した場合には、撮像部140は、先ほどピボット動作を行った際のピボット中心点を向いたままの状態になっている。従って、固定動作モードからピボット動作モードに移行した場合には、ステップS107に示す処理でピボット中心点が設定されていると判断され、ステップS109~ステップS115に示す基準位置を導出する処理が省略され、設定されているピボット中心点に基づいてピボット動作が行われることとなる。
 また、術者が別の部位を観察したい場合には、固定動作モード又はピボット動作モードからフリー動作モードに移行し、ステップS101からの一連の処理が再度行われることとなる。
 以上、図3を参照して、本実施形態に係るロボットアーム制御方法の処理手順について説明した。
 <4.変形例>
 次に、以上説明した本実施形態に係るロボットアーム制御システム及びロボットアーム制御方法におけるいくつかの変形例について説明する。
 (4-1.撮像部を基準位置に向ける操作についての変形例)
 本実施形態では、基準位置を導出する際に、撮像部140を基準位置に向ける操作が行われる。具体的には、当該操作では、撮像部140の視野領域の略中心に基準位置が来るように、アーム部120及び撮像部140の位置及び姿勢が調整される。上記実施形態では、ユーザが、アーム部120に直接外力を加えることにより、又は、リモコンやコントローラ等の各種の入力装置を介して、アーム部120を移動させ、撮像部140の位置が調整されていた。ただし、本実施形態はかかる例に限定されず、他の方法によって、撮像部140の視野領域の略中心に基準位置が来るように、アーム部120及び撮像部140の位置及び姿勢が調整されてもよい。
 例えば、一変形例として、撮像部140によって撮影され、表示装置30に表示されている撮像画像に対する操作入力に基づいて、視野領域が移動してもよい。当該操作入力とは、例えば画面内の所定の点を選択する処理であってよい。また、当該選択する処理は、例えばマウス等の入力デバイスを用いて画面内のカーソルやポインタを操作することにより行われてもよいし、表示装置30の画面がタッチパネルによって構成されている場合には、指やスタイラスペン等の操作体によって直接的に所定の点を選択することにより行われてもよい。例えば、ユーザが表示装置30の画面内の所定の点を基準位置として選択すると、制御装置20によって、表示装置30の画面内で選択された点の位置情報が取得され、当該位置情報に基づいて、選択された点が撮像部140の視野領域の中心となるように、アーム部120が駆動されてよい。
 また、他の変形例として、撮像部140によって撮影された撮像画像に対して画像解析を行うことにより、視野領域が移動してもよい。例えば、術者は、術部のうち観察したい部位(すなわち基準位置に対応する部位)にマーカーを付す。当該マーカーを付す操作は、例えば電気メス等の術具により所定のマークを術部に直接付すものであってもよいし、染色液を用いて周囲の組織とは異なる所定の色で術部を染色するものであってもよい。例えば、制御装置20は、撮像部140によって撮影された撮像画像を画像解析することにより、撮像画像の中から当該マーカーが付された部位を抽出し、抽出した部位が撮像部140の視野領域の中心となるように、アーム部120の駆動を制御してもよい。
 これらの変形例によれば、術者は、表示装置30の画面を参照しながら、当該画面に対して又は術部に対して操作を行うことにより視野領域を調整することができるため、アーム部120を直接操作する場合に比べて、より効率的に、より容易に、視野領域を調整することが可能となる。
 (4-2.撮像部と基準位置との距離情報の取得についての変形例)
 本実施形態では、基準位置を導出する際に、撮像部140と基準位置との距離情報が取得される。上記実施形態では、当該距離情報は、撮像部140の焦点距離に基づいて取得されていた。ただし、本実施形態はかかる例に限定されず、他の方法によって、撮像部140と基準位置との距離情報が取得されてもよい。
 例えば、一変形例として、アーム部120の先端に、レーザ、超音波又は赤外線等を利用した各種の測距センサが設けられ、当該測距センサによって撮像部140と基準位置との距離が測定されることにより、距離情報が取得されてもよい。
 また、他の変形例として、撮像部140が、ステレオカメラや複眼カメラ等の複数のカメラによって構成される場合には、これらの複数のカメラによって撮影された撮像画像に基づいて取得される視差情報を用いて、撮像部140と基準位置との距離情報が取得されてもよい。
 また、更に他の変形例として、ロボットアーム装置10を外部から撮影する撮像装置を別途設け、当該外部の撮像装置とアーム部120に設けられた撮像部140との距離、及び、当該外部の撮像装置と術部(基準位置)との距離、をそれぞれ測定することにより、撮像部140と基準位置との距離情報が取得されてもよい。外部の撮像装置と撮像部140又は術部との距離を測定する方法は、外部の撮像装置の焦点距離を利用するものであってもよいし、外部の撮像装置がステレオカメラや複眼カメラ等である場合であれば、視差情報を利用したものであってもよい。
 また、更に他の変形例として、術者が直接的に距離情報を数値として入力することにより、撮像部140と基準位置との距離情報が取得されてもよい。この場合、入力された距離情報に基づいて、制御装置20によって、撮像部140と基準位置との距離が入力された値になるように、アーム部120の駆動が制御され得る。
 例えば、これらの変形例の中から、ロボットアーム装置10の用途や施術が行われる現場の環境、測定精度、コスト等を総合的に考慮して、適切な方法が選択されてよい。また、これらの方法が複数組み合わせて用いられてもよい。複数の方法によって距離が測定されることにより、その測定精度を向上させることができ、より高精度にピボット中心点が位置決めされたピボット動作が実現され得る。
<5.全身協調制御について>
 以下では、本実施形態に係る全身協調制御を実現するための制御システムの構成や、制御方法について説明する。ここで、上述したロボットアーム制御システム2や、ロボットアーム制御方法は、医療用のロボットアーム装置に対して好適に適用することが可能である。そこで、以下では、医療用ロボットアーム装置を例に挙げて、ロボットアーム装置の全身協調制御の一実施形態について説明を行う。
 (5-1.医療用ロボットアーム装置についての検討)
 まず、本開示をより明確なものとするために、本発明者らが以下に説明する実施形態に想到するに至った背景について説明する。
 図4を参照して、本開示の一実施形態に係るロボットアーム装置が医療用に用いられる場合の一適用例について説明する。図4は、本開示の一実施形態に係るロボットアーム装置が医療用に用いられる場合の一適用例について説明するための説明図である。
 図4は、本実施形態に係るロボットアーム装置を用いた施術の様子を模式的に表している。具体的には、図4を参照すると、施術者(ユーザ)520である医師が、例えばメス、鑷子、鉗子等の手術用の器具521を使用して、施術台530上の施術対象(患者)540に対して手術を行っている様子が図示されている。なお、以下の説明においては、施術とは、手術や検査等、ユーザ520である医師が施術対象540である患者に対して行う各種の医療的な処置の総称であるとする。また、図4に示す例では、施術の一例として手術の様子を図示しているが、ロボットアーム装置510が用いられる施術は手術に限定されず、他の各種の施術、例えば内視鏡を用いた検査等であってもよい。
 施術台530の脇には本実施形態に係るロボットアーム装置510が設けられる。ロボットアーム装置510は、基台であるベース部511と、ベース部511から延伸するアーム部512を備える。アーム部512は、複数の関節部513a、513b、513cと、関節部513a、513bによって連結される複数のリンク514a、514bと、アーム部512の先端に設けられる撮像ユニット515を有する。図4に示す例では、簡単のため、アーム部512は3つの関節部513a~513c及び2つのリンク514a、514bを有しているが、実際には、アーム部512及び撮像ユニット515の位置及び姿勢の自由度を考慮して、所望の自由度を実現するように関節部513a~513c及びリンク514a、514bの数や形状、関節部513a~513cの駆動軸の方向等が適宜設定されてよい。
 関節部513a~513cは、リンク514a、514bを互いに回動可能に連結する機能を有し、関節部513a~513cの回転が駆動されることにより、アーム部512の駆動が制御される。ここで、以下の説明においては、ロボットアーム装置510の各構成部材の位置とは、駆動制御のために規定している空間における位置(座標)を意味し、各構成部材の姿勢とは、駆動制御のために規定している空間における任意の軸に対する向き(角度)を意味する。また、以下の説明では、アーム部512の駆動(又は駆動制御)とは、関節部513a~513cの駆動(又は駆動制御)、及び、関節部513a~513cの駆動(又は駆動制御)を行うことによりアーム部512の各構成部材の位置及び姿勢が変化される(変化が制御される)ことをいう。
 アーム部512の先端には先端ユニットとして各種の医療用器具が接続される。図4に示す例では、先端ユニットの一例としてアーム部512の先端に撮像ユニット515が設けられている。撮像ユニット515は、撮影対象の画像(撮影画像)を取得するユニットであり、例えば動画や静止画を撮影できるカメラ等である。図4に示すように、アーム部512の先端に設けられた撮像ユニット515が施術対象540の施術部位の様子を撮影するように、ロボットアーム装置510によってアーム部512及び撮像ユニット515の姿勢や位置が制御される。なお、アーム部512の先端に設けられる先端ユニットは撮像ユニット515に限定されず、各種の医療用器具であってよい。当該医療用器具としては、例えば、内視鏡や顕微鏡、上述した撮像ユニット515等の撮像機能を有するユニットや、各種の施術器具、検査装置等、施術に際して用いられる各種のユニットが挙げられる。このように、本実施形態に係るロボットアーム装置510は、医療用器具を備えた医療用ロボットアーム装置であると言える。また、アーム部512の先端に、2つの撮像ユニット(カメラユニット)を有するステレオカメラが設けられ、撮像対象を3次元画像(3D画像)として表示するように撮影が行われてもよい。なお、先端ユニットとして、施術部位を撮影するための撮像ユニット515や当該ステレオカメラ等のカメラユニットが設けられるロボットアーム装置510のことをビデオ顕微鏡用ロボットアーム装置とも呼称する。
 また、ユーザ520と対向する位置には、モニタやディスプレイ等の表示装置550が設置される。撮像ユニット515によって撮影された施術部位の撮影画像は、表示装置550の表示画面に表示される。ユーザ520は、表示装置550の表示画面に表示される施術部位の撮影画像を見ながら各種の処置を行う。
 このように、本実施形態においては、医療分野において、ロボットアーム装置510によって施術部位の撮影を行いながら手術を行うことが提案される。ここで、手術を含む各種の施術においては、より施術を効率的に行うことにより、ユーザ520及び患者540の疲労や負担を軽減することが求められる。このような要求を満たすために、ロボットアーム装置510には、例えば以下のような性能が求められると考えられる。
 まず、1点目として、ロボットアーム装置510には、手術における作業空間を確保することが求められる。ユーザ520が施術対象540に対して各種の処置を行っている最中に、アーム部512や撮像ユニット515が施術者の視界を妨げたり、処置を行う手の動きを妨げたりすると、手術の効率の低下につながる。また、図4では図示していないが、実際の手術現場では、ユーザ520に器具を渡したり、患者540の各種のバイタルサインを確認したりといった、様々なサポート作業を行う複数の他の医師や看護師等がユーザ520及び患者540の周囲にいることが一般的であり、また、当該サポート作業を行うための他の装置等が存在するため、手術環境は煩雑である。従って、ロボットアーム装置510は、より小型であることが望ましい。
 次いで、2点目として、ロボットアーム装置510には、撮像ユニット515を移動させる際の高い操作性が求められる。例えば、手術を行う部位や手術の内容によっては、ユーザ520には、施術部位に対して処置を行っている最中に、同じ施術部位を様々な位置、角度から観察したいという要求がある。施術部位を観察する角度を変えるには、撮像ユニット515の施術部位に対する角度を変更する必要があるが、その際、撮像ユニット515の撮影方向は施術部位に固定されたまま(すなわち、同一の部位を撮影したまま)、撮影する角度だけが変化することがより望ましい。従って、例えば、撮像ユニット515の撮影方向が施術部位に固定された状態で、撮像ユニット515が施術部位を頂点とした円錐の面内を移動する、当該円錐の軸を旋回軸とした旋回動作(ピボット動作)のような、より自由度の高い操作性がロボットアーム装置510に求められていた。なお、撮像ユニット515の撮影方向が所定の施術部位に固定されることから、ピボット動作はポイントロック動作とも呼ばれる。
 また、撮像ユニット515の位置及び角度を変化させるためには、例えばユーザ520が手動でアーム部512を動かすことによって、撮像ユニット515を所望の位置及び角度に動かす方法が考えられる。従って、撮像ユニット515の移動や上述したピボット動作等が、例えば片手でも容易に行える操作性があることが望ましい。
 また、手術時には、例えばユーザ520が両手で処置を行いながら、撮像ユニット515によって撮影される撮影画像の撮影中心を、処置を行っている部位から別の部位(例えば次の処置を行う部位)に移動させたいという要求も考えられる。従って、撮像ユニット515の位置及び姿勢を変化させる際に、上述したような手動によってアーム部512の駆動を制御する方法だけではなく、例えばペダル等の入力部からの操作入力によってアーム部512の駆動を制御する方法のような、多様なアーム部512の駆動方法が求められる。
 このように、2点目の性能として、ロボットアーム装置510には、例えば上述したピボット動作や手動による容易な移動を実現する、よりユーザ520の直感や要望に合った高い操作性が求められる。
 最後に、3点目として、ロボットアーム装置510には、アーム部512の駆動制御における安定性が求められる。アーム部512の駆動制御に対する安定性とは、アーム部512を駆動した際の先端ユニットの位置及び姿勢の安定性のことであってよい。また、アーム部512の駆動制御に対する安定性には、アーム部512を駆動した際の先端ユニットのスムーズな移動や振動の抑制(制振)も含まれる。例えば、図4に示す例のように先端ユニットが撮像ユニット515である場合に、もしも撮像ユニット515の位置や姿勢が安定しないと、表示装置550の表示画面に表示される撮影画像が安定せず、ユーザに不快感を与えかねない。特に、ロボットアーム装置510が手術に用いられる際には、先端ユニットとして2つの撮像ユニット(カメラユニット)を有するステレオカメラが設けられ、当該ステレオカメラによる撮影画像に基づいて生成される3次元画像(3D画像)が表示装置550に表示される使用方法が想定され得る。このように3D画像が表示される場合に、当該ステレオカメラの位置や姿勢が不安定であると、ユーザのいわゆる3D酔いを誘発する可能性がある。また、手術を行う部位や手術の内容によっては、撮像ユニット515によって撮影される観察範囲はφ15mm程度にまで拡大されることがある。このように撮像ユニット515が狭い範囲を拡大して撮影している場合には、撮像ユニット515の僅かな振動が撮像画像の大きな揺れやブレとなって表れる。従って、アーム部512及び撮像ユニット515の駆動制御には、許容範囲1mm程度の高い位置決め精度が要求される。このように、アーム部512の駆動制御においては、高精度の応答性と高い位置決め精度が求められる。
 本発明者らは、上記の3つの性能の観点から、一般的な既存のバランス型アームや位置制御によるロボットアーム装置について検討を行った。
 まず、1点目の手術の作業空間の確保に関しては、一般的なバランス型アームでは、通常、アーム部を移動させた際の力の均衡を取るためのカウンターバランス用ウェイト(カウンターウェイト又はバランサーとも呼称する。)がベース部の内部等に設けられるため、バランス型アームの装置の大きさを小型化することが難しく、当該性能を満たしているとは言い難い。
 また、2点目の高い操作性に関しては、一般的なバランス型アームでは、アーム部の駆動の一部のみ、例えば撮像ユニットを平面上(2次元上)で移動させるための2軸の駆動のみが電動駆動となっており、アーム部及び撮像ユニットの移動には手動による位置決めが必要となるため、高い操作性が実現できるとは言い難い。また、一般的な位置制御によるロボットアーム装置において、アーム部の駆動の制御、すなわち撮像ユニットの位置及び姿勢の制御に用いられる位置制御は、外力に柔軟に応じることが困難であるため、俗に「硬い制御」と呼ばれることがあり、要求されているようなユーザの直感に合った操作性を実現するには適していない。
 また、3点目のアーム部の駆動制御における安定性に関しては、一般的に、アーム部の関節部には、摩擦や慣性等のモデル化することが困難な因子が存在する。一般的なバランス型アームや位置制御によるロボットアーム装置においては、関節部の駆動制御においてこれらの因子が外乱となって表れてしまうことにより、理論上適切な制御値(例えば関節部のモータに印加する電流値)を与えた場合であっても所望の駆動(例えば関節部のモータにおける所望の角度の回転)が実現しないことがあり、要求されているようなアーム部の駆動制御における高い安定性を実現することは困難である。
 以上説明したように、本発明者らは、医療用に用いられるロボットアーム装置について検討した結果、ロボットアーム装置に関して、上述したような3点の性能に対する要求が存在するとの知見を得た。しかしながら、一般的な既存のバランス型アームや位置制御によるロボットアーム装置では、これらの性能を満たすことは困難であると考えられる。本発明者らは、上述した3点の性能を満たす構成について検討した結果、以下に示す実施形態に係るロボットアーム装置、ロボットアーム制御システム、ロボットアーム制御方法及びプログラムに想到した。以下では、これらの実施形態について詳細に説明する。
 (5-2.本開示の一実施形態)
 以下では、本開示の一実施形態に係るロボットアーム制御システムについて説明する。本実施形態に係るロボットアーム制御システムにおいては、ロボットアーム装置に設けられる複数の関節部の駆動を、一般化逆動力学を用いた全身協調制御により制御する。更に、外乱の影響を補正することにより指令値に対する理想的な応答を実現する理想関節制御を当該関節部の駆動制御に適用する。
 以下の本実施形態の説明では、まず、(5-2-1.ロボットアーム装置の外観)で、本実施形態に係るロボットアーム装置の外観を示すとともに、ロボットアーム装置の概略構成について説明する。次いで、(5-2-2.一般化逆動力学について)及び(5-2-3.理想関節制御について)で、本実施形態に係るロボットアーム装置の制御に用いられる一般化逆動力学と理想関節制御の概要について説明する。次いで、(5-2-4.ロボットアーム制御システムの構成)で、本実施形態に係るロボットアーム装置を制御するためのシステムの構成について機能ブロック図を用いて説明する。最後に、(5-2-5.運動目的の具体例)で、本実施形態に係るロボットアーム装置における、一般化逆動力学を用いた全身協調制御の具体例について説明する。
 なお、以下の説明では、本開示の一実施形態として、ロボットアーム装置のアーム部の先端ユニットが撮像ユニットであり、図4に示すように手術時に当該撮像ユニットによって施術部位を撮影する場合について説明するが、本実施形態はかかる例に限定されない。本実施形態に係るロボットアーム制御システムは、他の先端ユニットを有するロボットアーム装置が他の用途に用いられる場合であっても適用可能である。
 (5-2-1.ロボットアーム装置の外観)
 まず、図5を参照して、本開示の一実施形態に係るロボットアーム装置の概略構成について説明する。図5は、本開示の一実施形態に係るロボットアーム装置の外観を示す概略図である。
 図5を参照すると、本実施形態に係るロボットアーム装置400は、ベース部410及びアーム部420を備える。ベース部410はロボットアーム装置400の基台であり、ベース部410からアーム部420が延伸される。また、図5には図示しないが、ベース部410内には、ロボットアーム装置400を統合的に制御する制御部が設けられてもよく、アーム部420の駆動が当該制御部によって制御されてもよい。当該制御部は、例えばCPU(Central Processing Unit)やDSP(Digital Signal Processor)等の各種の信号処理回路によって構成される。
 アーム部420は、複数の関節部421a~421fと、関節部421a~421fによって互いに連結される複数のリンク422a~422cと、アーム部420の先端に設けられる撮像ユニット423を有する。
 リンク422a~422cは棒状の部材であり、リンク422aの一端が関節部421aを介してベース部410と連結され、リンク422aの他端が関節部421bを介してリンク422bの一端と連結され、更に、リンク422bの他端が関節部421c、421dを介してリンク422cの一端と連結される。更に、撮像ユニット423が、アーム部420の先端、すなわち、リンク422cの他端に、関節部421e、421fを介して連結される。このように、ベース部410を支点として、複数のリンク422a~422cの端同士が、関節部421a~421fによって互いに連結されることにより、ベース部410から延伸されるアーム形状が構成される。
 撮像ユニット423は撮影対象の画像を取得するユニットであり、例えば動画、静止画を撮影するカメラ等である。アーム部420の駆動が制御されることにより、撮像ユニット423の位置及び姿勢が制御される。本実施形態においては、撮像ユニット423は、例えば施術部位である患者の体の一部領域を撮影する。ただし、アーム部420の先端に設けられる先端ユニットは撮像ユニット423に限定されず、アーム部420の先端には先端ユニットとして各種の医療用器具が接続されてよい。このように、本実施形態に係るロボットアーム装置400は、医療用器具を備えた医療用ロボットアーム装置であると言える。
 ここで、以下では、図5に示すように座標軸を定義してロボットアーム装置400の説明を行う。また、座標軸に合わせて、上下方向、前後方向、左右方向を定義する。すなわち、床面に設置されているベース部410に対する上下方向をz軸方向及び上下方向と定義する。また、z軸と互いに直交する方向であって、ベース部410からアーム部420が延伸されている方向(すなわち、ベース部410に対して撮像ユニット423が位置している方向)をy軸方向及び前後方向と定義する。更に、y軸及びz軸と互いに直交する方向をx軸方向及び左右方向と定義する。
 関節部421a~421fはリンク422a~422cを互いに回動可能に連結する。関節部421a~421fはアクチュエータを有し、当該アクチュエータの駆動により所定の回転軸に対して回転駆動される回転機構を有する。各関節部421a~421fにおける回転駆動をそれぞれ制御することにより、例えばアーム部420を伸ばしたり、縮めたり(折り畳んだり)といった、アーム部420の駆動を制御することができる。ここで、関節部421a~421fは、下記(5-2-2.一般化逆動力学について)で後述する全身協調制御及び下記(5-2-3.理想関節制御について)で後述する理想関節制御によってその駆動が制御される。また、上述したように、本実施形態に係る関節部421a~421fは回転機構を有するため、以下の説明において、関節部421a~421fの駆動制御とは、具体的には、関節部421a~421fの回転角度及び/又は発生トルク(関節部421a~421fが発生させるトルク)が制御されることを意味する。
 本実施形態に係るロボットアーム装置400は、6つの関節部421a~421fを有し、アーム部420の駆動に関して6自由度が実現されている。具体的には、図5に示すように、関節部421a、421d、421fは、接続されている各リンク422a~422cの長軸方向及び接続されている撮像ユニット473の撮影方向を回転軸方向とするように設けられており、関節部421b、421c、421eは、接続されている各リンク422a~422c及び撮像ユニット473の連結角度をy-z平面(y軸とz軸とで規定される平面)内において変更する方向であるx軸方向を回転軸方向とするように設けられている。このように、本実施形態においては、関節部421a、421d、421fは、いわゆるヨーイングを行う機能を有し、関節部421b、421c、421eは、いわゆるピッチングを行う機能を有する。
 このようなアーム部420の構成を有することにより、本実施形態に係るロボットアーム装置400ではアーム部420の駆動に対して6自由度が実現されるため、アーム部420の可動範囲内において撮像ユニット423を自由に移動させることができる。図5では、撮像ユニット423の移動可能範囲の一例として半球を図示している。半球の中心点が撮像ユニット423によって撮影される施術部位の撮影中心であるとすれば、撮像ユニット423の撮影中心を半球の中心点に固定した状態で、撮像ユニット423を半球の球面上で移動させることにより、施術部位を様々な角度から撮影することができる。
 ここで、図6を参照して、図5に示す関節部421a~421fの構成についてより詳細に説明する。なお、ここでは、図6を参照して、関節部421a~421fの構成のうち、関節部421a~421fの回転駆動に主に関係する構成であるアクチュエータの構成について説明する。
 図6は、本開示の一実施形態に係る関節部421a~421fのアクチュエータを、回転軸を通る断面で切断した様子を模式的に示す断面図である。なお、図6では、関節部421a~421fの構成のうち、アクチュエータのみを図示しているが、関節部421a~421fは、他の構成を有してもよい。例えば、関節部421a~421fは、図6に図示する構成以外にも、アクチュエータの駆動を制御するための制御部や、リンク422a~422c及び撮像ユニット423を接続、支持するための支持部材等、アーム部420の駆動に必要な各種の構成を有する。なお、ここまでの説明及び以下の説明において、アーム部の関節部の駆動とは、関節部におけるアクチュエータの駆動を意味していてもよい。
 なお、上述したように、本実施形態においては、関節部421a~421fは、下記(5-2-3.理想関節制御について)で後述する理想関節制御によってその駆動が制御される。従って、図6に示す関節部421a~421fのアクチュエータは、理想関節制御に対応した駆動を行えるように構成されている。具体的には、関節部421a~421fのアクチュエータは、当該関節部421a~421fにおける回転角度及び回転駆動に伴うトルクを調整できるように構成されている。また、関節部421a~421fのアクチュエータは、回転運動に対する粘性抵抗係数を任意に調整できるように構成されており、例えば外部から加えられる力に対して回転しやすい(すなわち、アーム部420を手動で移動しやすい)状態や回転し難い(すなわち、アーム部420を手動で移動し難い)状態を実現することができる。
 図6を参照すると、本実施形態に係る関節部421a~421fのアクチュエータ430は、モータ424、モータドライバ425、減速機426、エンコーダ427、トルクセンサ428及び駆動軸429を有する。図6に示すように、エンコーダ427、モータ424、減速機426及びトルクセンサ428は、駆動軸429に対して直列にこの順で連結される。
 モータ424は、アクチュエータ430における原動機であり、駆動軸429をその軸周りに回転させる。例えば、モータ424は、ブラシレスDCモータ等の電動モータである。本実施形態においては、モータ424は電流を供給されることによってその回転駆動が制御される。
 モータドライバ425は、モータ424に電流を供給することによりモータ424を回転駆動させるドライバ回路(ドライバIC(Integrated Circuit))であり、モータ424に供給する電流量を調整することにより、モータ424の回転数を制御することができる。また、モータドライバ425は、モータ424に供給する電流量を調整することにより、上述したようなアクチュエータ430の回転運動に対する粘性抵抗係数を調整することができる。
 減速機426は、駆動軸429に接続され、モータ424によって生じた駆動軸429の回転速度を所定の減速比で減速することにより、所定の値を有する回転駆動力(すなわち、トルク)を発生させる。減速機426には、バックラッシレス型の高性能減速機が用いられる。例えば、減速機426は、ハーモニックドライブ(登録商標)であってもよい。減速機426によって生成されたトルクは、減速機426の出力軸に接続されたトルクセンサ428を介して、後段の出力部材(図示せず。例えばリンク422a~422cや撮像ユニット423等の連結部材)に伝達される。
 エンコーダ427は、駆動軸429に接続され、駆動軸429の回転数を検出する。エンコーダによって検出された駆動軸429の回転数と、減速機426の減速比との関係に基づいて、関節部421a~421fの回転角度、回転角速度及び回転角加速度等の情報を得ることができる。
 トルクセンサ428は、減速機426の出力軸に接続され、減速機426によって生成されたトルク、すなわち、アクチュエータ430によって出力されるトルクを検出する。以下の説明では、アクチュエータ430によって出力されるトルクのことを単に発生トルクとも呼称する。
 このように、アクチュエータ430においては、モータ424に供給する電流量を調整することにより、モータ424の回転数を調整することがでる。ここで、減速機426における減速比は、ロボットアーム装置400の用途に応じて適宜設定可能であってよい。従って、減速機426の減速比に応じて、モータ424の回転数を適宜調整することにより、発生トルクを制御することができる。また、アクチュエータ430においては、エンコーダ427によって検出された駆動軸429の回転数に基づいて、関節部421a~421fの回転角度、回転角速度及び回転角加速度等の情報を得ることができ、トルクセンサ428によって、関節部421a~421fにおける発生トルクを検出することができる。
 また、トルクセンサ428は、アクチュエータ430による発生トルクだけでなく、外部から加えられる外トルクも検出することができる。従って、トルクセンサ428によって検出された外トルクに基づいて、モータドライバ425がモータ424に供給する電流量を調整することにより、上述したような回転運動に対する粘性抵抗係数を調整することができ、例えば外部から加えられる力に対して回転しやすい状態や回転し難い状態を実現することができる。
 ここで、図7A及び図7Bを参照して、トルクセンサ428の構成について詳細に説明する。図7Aは、図6に示すトルクセンサ428を、駆動軸429の軸方向から見た様子を模式的に示す概略図である。
 図7Aを参照すると、トルクセンサ428は、外輪部431、内輪部432、梁部433a~433d及び歪み検出素子434a~434dを有する。図7Aに示すように、外輪部431及び内輪部432は同心円状に配置される。本実施形態では、内輪部432が入力側、すなわち、減速機426からの出力軸と接続され、外輪部431が出力側、すなわち、後段の出力部材(図示せず。)と接続される。
 4本の梁部433a~433dは、同心円状に配置された外輪部431と内輪部432との間に配設され、外輪部431と内輪部432とを互いに接続する。図7Aに示すように、梁部433a~433dは、隣り合う梁部433a~433d同士が互いに90度の角度となるように、外輪部431と内輪部432との間に介設される。
 梁部433a~433dのうち、互いに向かい合う、すなわち、互いに180度の角度で設けられる2本には、歪み検出素子434a~434dが設けられる。歪み検出素子434a~434dによって検出された梁部433a~433dの変形量に基づいて、アクチュエータ430の発生トルク及び外トルクを検出することができる。
 図7Aに示す例では、梁部433a~433dのうち、梁部433aに歪み検出素子434a、434bが、梁部433cに歪み検出素子434c、434dが設けられる。また、歪み検出素子434a、434bは梁部433aを挟むように設けられ、歪み検出素子434c、434dは梁部433cを挟むように設けられる。例えば、歪み検出素子434a~434dは歪みゲージであり、梁部433a、433cの表面に貼り付けられることにより、梁部433a、433cの幾何的な変形量を電気抵抗の変化に基づいて検出する。図7Aに示すように4ヶ所に歪み検出素子434a~434dが設けられることにより、検出素子434a~434dがいわゆるホイートストンブリッジを構成する。従って、いわゆる4ゲージ法を用いて歪みを検出することができるため、歪みを検出する軸以外の他軸の干渉や駆動軸429の偏心、温度ドリフト等の影響を低減することができる。
 このように、梁部433a~433dは、歪みを検出するための起歪体の役割を果たす。なお、本実施形態に係る歪み検出素子434a~434dの種類は歪みゲージに限定されず、他の素子が用いられてもよい。例えば、歪み検出素子434a~434dは、磁気特性の変化に基づいて梁部433a~433dの変形量を検出する素子であってもよい。
 また、図6及び図7Aには図示しないが、トルクセンサ428による発生トルク及び外トルクの検出精度を向上させるために、以下に示す構成が適用されてもよい。例えば、梁部433a~433dの外輪部431と接続する部位を他の部位よりも薄肉化することにより、支持モーメントが解放されるため、検出される変形量の線形性が向上されるとともにラジアル荷重による影響が低減される。また、外輪部431及び内輪部432をともにベアリングを介してハウジングで支持することにより、入力軸及び出力軸の双方からの他軸力、モーメントの作用を排除することができる。また、外輪部431に作用する他軸モーメントを低減するために、図6に示すアクチュエータ430の他端、すなわちエンコーダ427が配設される部位に両持ち支持用ベアリングが配設されてもよい。
 以上、図7Aを参照して、トルクセンサ428の構成について説明した。以上説明したように、図7Aに示すトルクセンサ428の構成により、アクチュエータ430の発生トルク及び外トルクの検出において、高精度な検出が可能となる。
 ここで、本実施形態においては、トルクセンサ428の構成は図7Aに示す構成に限定されず、他の構成であってもよい。アクチュエータ430に適用されるトルクセンサについて、トルクセンサ428以外の他の構成の一例を、図7Bを参照して説明する。
 図7Bは、図6に示すアクチュエータ430に適用されるトルクセンサの他の構成例を示す概略図である。図7Bを参照すると、本変形例に係るトルクセンサ428aは、外輪部441、内輪部442、梁部443a~443d及び歪み検出素子444a~444dを有する。なお、図7Bでは、図7Aと同様、トルクセンサ428aを駆動軸429の軸方向から見た様子を模式的に示している。
 トルクセンサ428aにおいて、外輪部441、内輪部442、梁部443a~443d及び歪み検出素子444a~444dの機能及び構成は、図7Aを参照して説明したトルクセンサ428の外輪部431、内輪部432、梁部433a~433d及び歪み検出素子434a~434dの機能及び構成とほぼ同様である。本変形例に係るトルクセンサ428aは、梁部443a~443dと外輪部441との接続部分の構成が異なる。従って、図7Bに示すトルクセンサ428aについては、図7Aに示すトルクセンサ428との相違点である梁部443a~443dと外輪部441との接続部位の構成について主に説明を行い、重複する構成については説明を省略する。
 図7Bを参照すると、トルクセンサ428aの全体図と併せて、梁部443bと外輪部441との接続部位が拡大して図示されている。なお、図7Bでは、梁部443a~443dと外輪部441との4ヶ所の接続部位のうちの1ヶ所である梁部443bと外輪部441との接続部位のみを拡大して図示しているが、他の3ヶ所である梁部443a、443c、443dと外輪部441との接続部位も同様の構成を有している。
 図7Bにおける拡大図を参照すると、梁部443bと外輪部441との接続部位においては、外輪部441に係合凹部が設けられており、梁部443bの先端が係合凹部に係合されることにより両者が接続される。また、当該梁部443bと外輪部441との間には、間隙G1、G2が設けられる。間隙G1は梁部443bが外輪部441に向かって延伸する方向における両者の間隙を表しており、間隙G2は当該方向とは直交する方向における両者の間隙を表している。
 このように、トルクセンサ428aにおいては、梁部443a~443dと外輪部441とが、所定の間隙G1、G2を有して分離して配設される。すなわち、トルクセンサ428aにおいては、外輪部441と内輪部442とが分離している。従って、内輪部442が外輪部441に対して拘束されず動きの自由度を有するため、例えばアクチュエータ430の駆動に際して振動が生じたとしても、振動による歪み成分を内輪部442と外輪部441との間の空隙G1、G2によって吸収することができる。よって、トルクセンサ428aをアクチュエータ430のトルクセンサとして適用することにより、より高精度な発生トルク及び外トルクの検出が実現される。
 なお、図6、図7A及び図7Bに示すような、理想関節制御に対応するアクチュエータ430の構成については、例えば、本願出願人による先行特許出願である特開2009-269102号公報や特開2011-209099号公報を参照することができる。
 以上、図5、図6、図7A及び図7Bを参照して、本実施形態に係るロボットアーム装置400の概略構成について説明した。次に、本実施形態に係るロボットアーム装置400におけるアーム部420の駆動、すなわち、関節部421a~421fの駆動を制御するための全身協調制御及び理想関節制御について説明する。
 (5-2-2.一般化逆動力学について)
 次に、本実施形態におけるロボットアーム装置400の全身協調制御に用いられる一般化逆動力学の概要について説明する。
 一般化逆動力学は、複数のリンクが複数の関節部によって連結されて構成される多リンク構造体(例えば本実施形態においては図5に示すアーム部420)において、各種の操作空間(Operation Space)における様々な次元に関する運動目的を、各種の拘束条件を考慮しながら、複数の当該関節部に生じさせるトルクに変換する、多リンク構造体の全身協調制御における基本演算である。
 操作空間は、ロボット装置の力制御における重要な概念である。操作空間は、多リンク構造体に作用する力と多リンク構造体の加速度との関係を記述するための空間である。多リンク構造体の駆動制御を位置制御ではなく力制御によって行う際に、多リンク構造体と環境との接し方を拘束条件として用いる場合に操作空間という概念が必要となる。操作空間は、例えば、多リンク構造体が属する空間である、関節空間、デカルト空間、運動量空間等である。
 運動目的は、多リンク構造体の駆動制御における目標値を表すものであり、例えば、駆動制御によって達成したい多リンク構造体の位置、速度、加速度、力、インピーダンス等の目標値である。
 拘束条件は、多リンク構造体の形状や構造、多リンク構造体の周囲の環境及びユーザによる設定等によって定められる、多リンク構造体の位置、速度、加速度、力等に関する拘束条件である。例えば、拘束条件には、発生力、優先度、非駆動関節の有無、垂直反力、摩擦錘、支持多角形等についての情報が含まれる。
 一般化動力学においては、数値計算上の安定性と実時間処理可能な演算効率とを両立するため、その演算アルゴリズムは、第1段階である仮想力決定プロセス(仮想力算出処理)と、第2段階である実在力変換プロセス(実在力算出処理)によって構成される。第1段階である仮想力算出処理では、各運動目的の達成に必要な、操作空間に作用する仮想的な力である仮想力を、運動目的の優先度と仮想力の最大値を考慮しながら決定する。第2段階である実在力算出処理では、非駆動関節、垂直反力、摩擦錘、支持多角形等に関する拘束を考慮しながら、上記で得られた仮想力を関節力、外力等の実際の多リンク構造体の構成で実現可能な実在力に変換する。以下、仮想力算出処理及び実在力算出処理について詳しく説明する。なお、以下の仮想力算出処理、実在力算出処理及び後述する理想関節制御の説明においては、理解を簡単にするために、具体例として、図5及び図6に示した本実施形態に係るロボットアーム装置400のアーム部420の構成を例に挙げて説明を行う場合がある。
 (5-2-2-1.仮想力算出処理)
 多リンク構造体の各関節部におけるある物理量によって構成されるベクトルを一般化変数qと呼ぶ(関節値q又は関節空間qとも呼称する。)。操作空間xは、一般化変数qの時間微分値とヤコビアンJとを用いて、以下の数式(1)で定義される。
Figure JPOXMLDOC01-appb-M000001
 本実施形態では、例えば、qはアーム部420の関節部421a~421fにおける回転角度である。操作空間xに関する運動方程式は、下記数式(2)で記述される。
Figure JPOXMLDOC01-appb-M000002
 ここで、fは操作空間xに作用する力を表す。また、Λ-1は操作空間慣性逆行列、cは操作空間バイアス加速度と呼ばれるものであり、それぞれ下記数式(3)、(4)で表される。
Figure JPOXMLDOC01-appb-M000003
 なお、Hは関節空間慣性行列、τは関節値qに対応する関節力(例えば関節部421a~421fおける発生トルク)、bは重力、コリオリ力、遠心力を表す項である。
 一般化逆動力学においては、操作空間xに関する位置、速度の運動目的は、操作空間xの加速度として表現できることが知られている。このとき、上記数式(1)から、運動目的として与えられた目標値である操作空間加速度を実現するために、操作空間xに作用するべき仮想力fは、下記数式(5)のような一種の線形相補性問題(LCP:Linear Complementary Problem)を解くことによって得られる。
Figure JPOXMLDOC01-appb-M000004
 ここで、LとUはそれぞれ、fの第i成分の負の下限値(-∞を含む)、fの第i成分の正の上限値(+∞を含む)とする。上記LCPは、例えばIterative法、Pivot法、ロバスト加速度制御を応用する方法等を用いて解くことができる。
 なお、操作空間慣性逆行列Λ-1、バイアス加速度cは、定義式である上記数式(3)、(4)の通り算出すると計算コストが大きい。従って、多リンク構造体の一般化力(関節力τ)から一般化加速度(関節加速度)を得る準動力学計算(FWD)を応用することにより、操作空間慣性逆行列Λ-1の算出処理をより高速に算出する方法が提案されている。具体的には、操作空間慣性逆行列Λ-1、バイアス加速度cは、順動力学演算FWDを用いることにより、関節空間q、関節力τ、重力g等の多リンク構造体(例えば、アーム部420及び関節部421a~421f)に作用する力に関する情報から得ることができる。このように、操作空間に関する順動力学演算FWDを応用することにより、関節部の数Nに対してO(N)の計算量で操作空間慣性逆行列Λ-1を算出することができる。
 ここで、運動目的の設定例として、絶対値F以下の仮想力fviで操作空間加速度の目標値(xの2階微分に上付きバーを付して表す)を達成するための条件は、下記数式(6)で表現できる。
Figure JPOXMLDOC01-appb-M000005
 また、上述したように、操作空間xの位置、速度に関する運動目的は、操作空間加速度の目標値として表すことができ、具体的には下記数式(7)で表現される(操作空間xの位置、速度の目標値を、x、xの1階微分に上付きバーを付して表す)。
Figure JPOXMLDOC01-appb-M000006
 その他、分解操作空間の考え方を用いることにより、他の操作空間の線形和で表される操作空間(運動量、デカルト相対座標、連動関節等)に関する運動目的を設定することもできる。なお、競合する運動目的間には優先度を与える必要がある。優先度毎かつ低優先度から順に上記LCPを解き、前段のLCPで得られた仮想力を次段のLCPの既知外力として作用させることができる。
 (5-2-2-2.実在力算出処理)
 一般化逆動力学の第2段階である実在力算出処理では、上記(2-2-1.仮想力決定プロセス)で得られた仮想力fを、実在の関節力と外力で置換する処理を行う。仮想力による一般化力τ=J を関節部に生じる発生トルクτと外力fとで実現するための条件は、下記数式(8)で表現される。
Figure JPOXMLDOC01-appb-M000007
 ここで、添え字aは駆動関節部の集合(駆動関節集合)を表し、添え字uは非駆動関節部の集合(非駆動関節集合)を表す。すなわち、上記数式(8)の上段は非駆動関節部による空間(非駆動関節空間)の力の釣り合いを表しており、下段は駆動関節部による空間(駆動関節空間)の力の釣合いを表している。Jvu、Jvaは、それぞれ、仮想力fが作用する操作空間に関するヤコビアンの非駆動関節成分、駆動関節成分である。Jeu、Jeaは、外力fが作用する操作空間に関するヤコビアンの非駆動関節成分、駆動関節成分である。Δfは仮想力fのうち、実在力で実現不能な成分を表す。
 上記数式(8)の上段は不定であり、例えば下記数式(9)に示すような2次計画問題(QP:Quadratic Programing Problem)を解くことで、f及びΔfを得ることができる。
Figure JPOXMLDOC01-appb-M000008
 ここで、εは上記数式(8)の上段の両辺の差であり、数式(8)の等式誤差を表す。ξはfとΔfとの連結ベクトルであり、変数ベクトルを表す。Q及びQは、最小化の際の重みを表す正定値対称行列である。また、上記数式(9)の不等式拘束は、垂直反力、摩擦錐、外力の最大値、支持多角形等、外力に関する拘束条件を表現するのに用いられる。例えば、矩形の支持多角形に関する不等式拘束は、下記数式(10)のように表現される。
Figure JPOXMLDOC01-appb-M000009
 ここで、zは接触面の法線方向を表し、x及びyはzに垂直な直交2接線方向を表す。(F,F,F)及び(M,M,M)は、接触点に作用する外力及び外力モーメントである。μ及びμは、それぞれ並進、回転に関する摩擦係数である。(d,d)は支持多角形のサイズを表している。
 上記数式(9)、(10)から、最小ノルム又は最小誤差の解f、Δfが求められる。上記数式(9)から得られたf、Δfを上記数式(8)の下段に代入することにより、運動目的を実現するために必要な関節力τを得ることができる。
 基底が固定され、非駆動関節が無い系の場合は、関節力のみで全ての仮想力を置換可能であり、上記数式(8)において、f=0、Δf=0とすることができる。この場合、上記数式(8)の下段から、関節力τについて以下の数式(11)を得ることができる。
Figure JPOXMLDOC01-appb-M000010
 以上、本実施形態に係る一般化逆動力学を用いた全身協調制御について説明した。上記のように、仮想力算出処理及び実在力算出処理を順に行うことにより、所望の運動目的を達成するための関節力τを得ることができる。すなわち、逆に言えば、算出された関節力τを関節部421a~421fの運動における理論モデルに反映することにより、関節部421a~421fが、所望の運動目的を達成するように駆動される。
 なお、ここまで説明した一般化逆動力学を用いた全身協調制御について、特に、仮想力fの導出過程や、上記LCPを解き仮想力fを求める方法、QP問題の解法等の詳細については、例えば、本願出願人による先行特許出願である特開2009-95959号公報や特開2010-188471号公報を参照することができる。
 (5-2-3.理想関節制御について)
 次に、本実施形態に係る理想関節制御について説明する。各関節部421a~421fの運動は、下記数式(12)の二次遅れ系の運動方程式によってモデル化される。
Figure JPOXMLDOC01-appb-M000011
 ここで、Iは関節部における慣性モーメント(イナーシャ)、τは関節部421a~421fの発生トルク、τは外部から各関節部421a~421fに作用する外トルク、νは各関節部421a~421fにおける粘性抵抗係数である。上記数式(12)は、関節部421a~421fにおけるアクチュエータ430の運動を表す理論モデルとも言える。
 上記(5-2-2.一般化逆動力学について)で説明したように、一般化逆動力学を用いた演算により、運動目的及び拘束条件を用いて、当該運
 
動目的を実現するために各関節部421a~421fに作用させるべき実在力であるτを算出することができる。従って、理想的には、算出された各τを上記数式(12)に適用することにより、上記数式(12)に示す理論モデルに従った応答が実現する、すなわち、所望の運動目的が達成されるはずである。
 しかし、実際には、様々な外乱の影響により、関節部421a~421fの運動と上記数式(12)に示すような理論モデルとの間には誤差(モデル化誤差)が生じる場合がある。モデル化誤差は、多リンク構造体の重量、重心、慣性テンソル等のマスプロパティに起因するものと、関節部421a~421f内部における摩擦や慣性等に起因するものとに大別することができる。このうち、前者のマスプロパティに起因するモデル化誤差は、CAD(Computer Aided Design)データの高精度化や同定手法の適用によって、理論モデル構築時に比較的容易に低減することが可能である。
 一方、後者の関節部421a~421f内部の摩擦や慣性等に起因するモデル化誤差は、例えば関節部421a~421fの減速機426における摩擦等、モデル化が困難な現象に起因しており、理論モデル構築時に無視できないモデル化誤差が残留し得る。また、上記数式(12)におけるイナーシャIや粘性抵抗係数νの値と、実際の関節部421a~421fにおけるこれらの値との間に誤差が生じている可能性がある。これらのモデル化が困難な誤差は、関節部421a~421fの駆動制御において外乱となり得る。従って、このような外乱の影響により、実際には、関節部421a~421fの運動は、上記数式(12)に示す理論モデル通りには応答しない場合がある。よって、一般化逆動力学によって算出された関節力である実在力τを適用しても、制御目標である運動目的が達成されない場合が生じる。本実施形態では、各関節部421a~421fにアクティブな制御系を付加することで、上記数式(12)に示す理論モデルに従った理想応答を行うよう、関節部421a~421fの応答を補正することを考える。具体的には、本実施形態では、関節部421a~421fのトルクセンサ428、428aを用いた摩擦補償型のトルク制御を行うに留まらず、要求される発生トルクτ、外トルクτに対して、イナーシャI及び粘性抵抗係数νに至るまで理論値に従った理想応答を行うことが可能となる。
 本実施形態では、このように、ロボットアーム装置400の関節部421a~421fが上記数式(12)に示すような理想的な応答を行うように関節部の駆動を制御することを、理想関節制御と呼称する。ここで、以下の説明では、当該理想関節制御によって駆動が制御されるアクチュエータのことを、理想的な応答が行われることから仮想アクチュエータ(VA:Virtualized Actuator)とも呼称する。以下、図8を参照して、本実施形態に係る理想関節制御について説明する。
 図8は、本開示の一実施形態に係る理想関節制御について説明するための説明図である。なお、図8では、理想関節制御に係る各種の演算を行う概念上の演算器をブロックで模式的に図示している。
 図8を参照すると、アクチュエータ610は、図6に示すアクチュエータ430の機構を模式的に表しており、モータ(Motor)611、減速機(Reduction Gear)612、エンコーダ(Encoder)613及びトルクセンサ(Torque Sensor)614は、それぞれ、図6に示すモータ424、減速機426、エンコーダ427及びトルクセンサ428(又は図7Bに示すトルクセンサ428a)に対応している。
 ここで、アクチュエータ610が上記数式(12)で表される理論モデルに従った応答を行なうことは、上記数式(12)の右辺が与えられたときに、左辺の回転角加速度が達成されることに他ならない。また、上記数式(12)に示すように、理論モデルには、アクチュエータ610に作用する外トルク項τが含まれている。本実施形態では、理想関節制御を行うために、トルクセンサ614によって外トルクτを測定する。また、エンコーダ613によって測定されたアクチュエータ610の回転角度qに基づいて外乱に起因するトルクの推定値である外乱推定値τを算出するために、外乱オブザーバ620を適用する。
 ブロック631は、上記数式(12)に示す関節部421a~421fの理想的な関節モデル(Ideal Joint Model)に従った演算を行う演算器を表している。ブロック631は、発生トルクτ、外トルクτ、回転角速度(回転角度qの1階微分)を入力として、上記数式(12)の左辺に示す回転角加速度目標値(回転角目標値qrefの2階微分)を出力することができる。
 本実施形態では、上記(5-2-2.一般化逆動力学について)で説明した方法によって算出された発生トルクτと、トルクセンサ614によって測定された外トルクτが、ブロック631に入力される。一方、微分演算を行う演算器を表すブロック632に、エンコーダ613によって測定された回転角度qが入力されることにより、回転角速度(回転角度qの1階微分)が算出される。上記発生トルクτ及び外トルクτに加えて、ブロック632によって算出された回転角速度がブロック631に入力されることにより、ブロック631によって回転角加速度目標値が算出される。算出された回転角加速度目標値は、ブロック633に入力される。
 ブロック633は、アクチュエータ610の回転角加速度に基づいてアクチュエータ610に生じるトルクを算出する演算器を表す。本実施形態においては、具体的には、ブロック633は、回転角加速度目標値にアクチュエータ610における公称イナーシャ(ノミナルイナーシャ)Jを乗じることにより、トルク目標値τrefを得ることができる。理想の応答においては、アクチュエータ610に当該トルク目標値τrefを生じさせることにより、所望の運動目的が達成されるはずであるが、上述したように、実際の応答には外乱等の影響が生じる場合がある。従って、本実施形態においては、外乱オブザーバ620によって外乱推定値τを算出し、外乱推定値τを用いて当該トルク目標値τrefを補正する。
 外乱オブザーバ620の構成について説明する。図8に示すように、外乱オブザーバ620は、トルク指令値τと、エンコーダ613によって測定された回転角度qから算出される回転角速度に基づいて、外乱推定値τを算出する。ここで、トルク指令値τは、外乱の影響が補正された後の、最終的にアクチュエータ610に生じさせるトルク値である。例えば、外乱推定値τが算出されていない場合には、トルク指令値τはトルク目標値τrefとなる。
 外乱オブザーバ620は、ブロック634とブロック635とから構成される。ブロック634は、アクチュエータ610の回転角速度に基づいてアクチュエータ610に生じるトルクを算出する演算器を表す。本実施形態においては、具体的には、エンコーダ613によって測定された回転角度qから、ブロック632によって算出された回転角速度がブロック634に入力される。ブロック634は、伝達関数Jsによって表される演算を行うことにより、すなわち、当該回転角速度を微分することにより回転角加速度を求め、更に算出された回転角加速度にノミナルイナーシャJを乗じることにより、実際にアクチュエータ610に作用しているトルクの推定値(トルク推定値)を算出することができる。
 外乱オブザーバ620内では、当該トルク推定値とトルク指令値τとの差分が取られることにより、外乱によるトルクの値である外乱推定値τが推定される。具体的には、外乱推定値τは、前周の制御におけるトルク指令値τと、今回の制御におけるトルク推定値との差分であってよい。ブロック634によって算出されるトルク推定値は実際の測定値に基づくものであり、ブロック633によって算出されたトルク指令値τはブロック631に示す関節部421a~421fの理想的な理論モデルに基づくものであるため、両者の差分を取ることによって、上記理論モデルでは考慮されていない外乱の影響を推定することができるのである。
 また、外乱オブザーバ620には、系の発散を防ぐために、ブロック635に示すローパスフィルター(LPF:Low Pass Filter)が設けられる。ブロック635は、伝達関数g/(s+g)で表される演算を行うことにより、入力された値に対して低周波成分のみを出力し、系を安定化させる。本実施形態では、ブロック634によって算出されたトルク推定値とトルク指令値τrefとの差分値は、ブロック635に入力され、その低周波成分が外乱推定値τとして算出される。
 本実施形態では、トルク目標値τrefに外乱オブザーバ620によって算出された外乱推定値τを加算するフィードフォワード制御が行われることにより、最終的にアクチュエータ610に生じさせるトルク値であるトルク指令値τが算出される。そして、トルク指令値τに基づいてアクチュエータ610が駆動される。具体的には、トルク指令値τが対応する電流値(電流指令値)に変換され、当該電流指令値がモータ611に印加されることにより、アクチュエータ610が駆動される。
 以上、図8を参照して説明した構成を取ることにより、本実施形態に係る関節部421a~421fの駆動制御においては、摩擦等の外乱成分があった場合であっても、アクチュエータ610の応答を目標値に追従させることが可能となる。また、関節部421a~421fの駆動制御について、理論モデルが仮定するイナーシャI及び粘性抵抗係数νに従った理想応答を行うことが可能となる。
 なお、以上説明した理想関節制御の詳細については、例えば、本願出願人による先行特許出願である特開2009-269102号公報を参照することができる。
 以上、本実施形態において用いられる一般化逆動力学について説明するとともに、図8を参照して本実施形態に係る理想関節制御について説明した。以上説明したように、本実施形態においては、一般化逆動力学を用いることにより、アーム部420の運動目的を達成するための各関節部421a~421fの駆動パラメータ(例えば関節部421a~421fの発生トルク値)を、拘束条件を考慮して算出する、全身協調制御が行われる。また、図8を参照して説明したように、本実施形態においては、上記一般化逆動力学を用いた全身協調制御により算出された発生トルク値に対して外乱の影響を考慮した補正を行うことにより、関節部421a~421fの駆動制御において理論モデルに基づいた理想的な応答を実現する、理想関節制御が行われる。従って、本実施形態においては、アーム部420の駆動について、運動目的を達成する高精度な駆動制御が可能となる。
 (5-2-4.ロボットアーム制御システムの構成)
 次に、上記(5-2-2.一般化逆動力学について)及び上記(5-2-3.理想関節制御について)で説明した全身協調制御や理想関節制御がロボットアーム装置の駆動制御に適用された、本実施形態に係るロボットアーム制御システムの構成について説明する。
 図9を参照して、本開示の一実施形態に係るロボットアーム制御システムの一構成例について説明する。図9は、本開示の一実施形態に係るロボットアーム制御システムの一構成例を示す機能ブロック図である。なお、図9に示すロボットアーム制御システムでは、ロボットアーム装置のアーム部の駆動の制御に関わる構成について主に図示している。
 図9を参照すると、本開示の一実施形態に係るロボットアーム制御システム1は、ロボットアーム装置10、制御装置20及び表示装置30を備える。本実施形態においては、制御装置20によって、上記(5-2-2.一般化逆動力学について)で説明した全身協調制御及び上記(5-2-3.理想関節制御について)で説明した理想関節制御における各種の演算が行われ、その演算結果に基づいてロボットアーム装置10のアーム部の駆動が制御される。また、ロボットアーム装置10のアーム部には後述する撮像部140が設けられており、撮像部140によって撮影された画像が表示装置30の表示画面に表示される。以下、ロボットアーム装置10、制御装置20及び表示装置30の構成について詳細に説明する。なお、図9に示すロボットアーム制御システム1は、図1を参照して説明したロボットアーム制御システム2に対応するものである。
 ロボットアーム装置10は、複数の関節部と複数のリンクから構成される多リンク構造体であるアーム部を有し、当該アーム部を可動範囲内で駆動させることにより、当該アーム部の先端に設けられる先端ユニットの位置及び姿勢の制御を行う。ロボットアーム装置10は、図5に示すロボットアーム装置400に対応している。
 図9を参照すると、ロボットアーム装置10は、アーム制御部110及びアーム部120を有する。また、アーム部120は、関節部130及び撮像部140を有する。
 アーム制御部110は、ロボットアーム装置10を統合的に制御するとともに、アーム部120の駆動を制御する。アーム制御部110は、図5を参照して説明した制御部(図5には図示せず。)に対応している。具体的には、アーム制御部110は駆動制御部111を有し、駆動制御部111からの制御によって関節部130の駆動が制御されることにより、アーム部120の駆動が制御される。より具体的には、駆動制御部111は、関節部130のアクチュエータにおけるモータに対して供給される電流量を制御することにより、当該モータの回転数を制御し、関節部130における回転角度及び発生トルクを制御する。ただし、上述したように、駆動制御部111によるアーム部120の駆動制御は、制御装置20における演算結果に基づいて行われる。従って、駆動制御部111によって制御される、関節部130のアクチュエータにおけるモータに対して供給される電流量は、制御装置20における演算結果に基づいて決定される電流量である。ただし、本実施形態では、図1に示すように、各関節部130に関節制御部135が設けられ、当該関節制御部135によって、関節部130の駆動が制御されてもよい。
 アーム部120は、複数の関節部と複数のリンクから構成される多リンク構造体であり、アーム制御部110からの制御によりその駆動が制御される。アーム部120は、図5に示すアーム部420に対応している。アーム部120は、関節部130及び撮像部140を有する。なお、アーム部120が有する複数の関節部の機能及び構成は互いに同様であるため、図9では、それら複数の関節部を代表して1つの関節部130の構成を図示している。
 関節部130は、アーム部120においてリンク間を互いに回動可能に連結するとともに、アーム制御部110からの制御によりその回転駆動が制御されることによりアーム部120を駆動する。関節部130は、図5に示す関節部421a~421fに対応している。また、関節部130は、アクチュエータを有し、当該アクチュエータの構成は、例えば図6、図7A及び図7Bに示す構成と同様である。
 関節部130は、関節駆動部131及び関節状態検出部132を有する。
 関節駆動部131は、関節部130のアクチュエータにおける駆動機構であり、関節駆動部131が駆動することにより関節部130が回転駆動する。関節駆動部131は、駆動制御部111によってその駆動が制御される。例えば、関節駆動部131は、図6に示すモータ424及びモータドライバ425に対応する構成であり、関節駆動部131が駆動することは、モータドライバ425が駆動制御部111からの指令に応じた電流量でモータ424を駆動することに対応している。
 関節状態検出部132は、関節部130の状態を検出する。ここで、関節部130の状態とは、関節部130の運動の状態を意味していてよい。例えば、関節部130の状態には、関節部130の回転角度、回転角速度、回転角加速度、発生トルク等の情報が含まれる。本実施形態においては、関節状態検出部132は、関節部130の回転角度を検出する回転角度検出部133及び関節部130の発生トルク及び外トルクを検出するトルク検出部134を有する。なお、回転角度検出部133及びトルク検出部134は、図6に示すアクチュエータ430のエンコーダ427及び図7A及び図7Bに示すトルクセンサ428、428aに、それぞれ対応している。関節状態検出部132は、検出した関節部130の状態を制御装置20に送信する。
 撮像部140は、アーム部120の先端に設けられる先端ユニットの一例であり、撮影対象の画像を取得する。撮像部140は、図5に示す撮像ユニット423に対応している。具体的には、撮像部140は、撮影対象を動画や静止画の形式で撮影することのできるカメラ等である。より具体的には、撮像部140は、2次元上に配列された複数の受光素子を有し、当該受光素子における光電変換により、撮影対象の画像を表す画像信号を取得することができる。撮像部140は、取得した画像信号を表示装置30に送信する。
 なお、図5に示すロボットアーム装置400において撮像ユニット423がアーム部420の先端に設けられていたように、ロボットアーム装置10においても、実際には撮像部140がアーム部120の先端に設けられている。図9では、撮像部140が複数の関節部130及び複数のリンクを介して最終段のリンクの先端に設けられる様子を、関節部130と撮像部140との間にリンクを模式的に図示することにより表現している。
 なお、本実施形態においては、アーム部120の先端には先端ユニットとして各種の医療用器具が接続され得る。当該医療用器具としては、例えば、メスや鉗子等の各種の施術器具や、超音波検査装置の探触子等の各種の検査装置の一ユニット等、施術に際して用いられる各種のユニットが挙げられる。また、本実施形態では、図9に示す撮像部140や、内視鏡、顕微鏡等の撮像機能を有するユニットも医療用器具に含まれてよい。このように、本実施形態に係るロボットアーム装置10は、医療用器具を備えた医療用ロボットアーム装置であると言える。同様に、本実施形態に係るロボットアーム制御システム1は、医療用ロボットアーム制御システムであると言える。なお、図9に示すロボットアーム装置10は、撮像機能を有するユニットを先端ユニットとして備えるビデオ顕微鏡用ロボットアーム装置であるとも言える。また、アーム部120の先端に、2つの撮像ユニット(カメラユニット)を有するステレオカメラが設けられ、撮像対象を3D画像として表示するように撮影が行われてもよい。
 以上、ロボットアーム装置10の機能及び構成について説明した。次に、制御装置20の機能及び構成について説明する。図9を参照すると、制御装置20は、入力部210、記憶部220及び制御部230を有する。
 制御部230は、制御装置20を統合的に制御するとともに、ロボットアーム装置10におけるアーム部120の駆動を制御するための各種の演算を行う。具体的には、制御部230は、ロボットアーム装置10のアーム部120の駆動を制御するために、全身協調制御及び理想関節制御における各種の演算を行う。以下、制御部230の機能及び構成について詳しく説明するが、全身協調制御及び理想関節制御については、上記(5-2-2.一般化逆動力学について)及び上記(5-2-3.理想関節制御について)で既に説明しているため、ここでは詳しい説明は省略する。
 制御部230は、全身協調制御部240、理想関節制御部250及び基準位置導出部260を有する。
 全身協調制御部240は、一般化逆動力学を用いた全身協調制御に関する各種の演算を行う。本実施形態では、全身協調制御部240は、関節状態検出部132によって検出された関節部130の状態に基づいてアーム部120の状態(アーム状態)を取得する。また、全身協調制御部240は、当該アーム状態と、アーム部120の運動目的及び拘束条件と、に基づいて、操作空間におけるアーム部120の全身協調制御のための制御値を、一般化逆動力学を用いて算出する。なお、操作空間とは、例えばアーム部120に作用する力とアーム部120に発生する加速度との関係を記述するための空間である。
 全身協調制御部240は、アーム状態取得部241、演算条件設定部242、仮想力算出部243及び実在力算出部244を有する。ここで、上述した図1では、説明のため、便宜的に、アーム状態取得部241を、基準位置導出部260に含まれる一機能として図示していたが、これらは同様の機能を有するものである。
 アーム状態取得部241は、関節状態検出部132によって検出された関節部130の状態に基づいて、アーム部120の状態(アーム状態)を取得する。ここで、アーム状態とは、アーム部120の運動の状態を意味していてよい。例えば、アーム状態には、アーム部120の位置、速度、加速度、力等の情報が含まれる。上述したように、関節状態検出部132は、関節部130の状態として、各関節部130における回転角度、回転角速度、回転角加速度、発生トルク等の情報を取得している。また、後述するが、記憶部220は、制御装置20によって処理される各種の情報を記憶するものであり、本実施形態においては、記憶部220には、アーム部120に関する各種の情報(アーム情報)、例えばアーム部120を構成する関節部130及びリンクの数や、リンクと関節部130との接続状況、リンクの長さ等の情報が格納されていてよい。アーム状態取得部241は、記憶部220から当該アーム情報を取得することができる。従って、アーム状態取得部241は、関節部130の状態とアーム情報とに基づいて、複数の関節部130、複数のリンク及び撮像部140の空間上の位置(座標)(すなわち、アーム部120の形状や撮像部140の位置及び姿勢)や、各関節部130、リンク及び撮像部140に作用している力等の情報をアーム状態として取得することができる。アーム状態取得部241は、取得したアーム情報を演算条件設定部242に送信する。
 演算条件設定部242は、一般化逆動力学を用いた全身協調制御に関する演算における演算条件を設定する。ここで、演算条件とは、運動目的及び拘束条件であってよい。運動目的は、アーム部120の運動に関する各種の情報であってよい。具体的には、運動目的は、撮像部140の位置及び姿勢(座標)、速度、加速度並びに力等の目標値であったり、アーム部120の複数の関節部130及び複数のリンクの位置(座標)、速度、加速度及び力等の目標値であったりしてもよい。また、拘束条件は、アーム部120の運動を制限(拘束)する各種の情報であってよい。具体的には、拘束条件は、アーム部の各構成部材が移動不可能な領域の座標や、移動不可能な速度、加速度の値、発生不可能な力の値等であってよい。また、拘束条件における各種の物理量の制限範囲は、アーム部120の構造的に実現することが不可能であることから設定されてもよいし、ユーザによって適宜設定されてもよい。また、演算条件設定部242は、アーム部120の構造についての物理モデル(例えば、アーム部120を構成するリンクの数や長さ、リンクの関節部130を介した接続状況、関節部130の可動範囲等がモデル化されたもの)を有し、当該物理モデルに、所望の運動条件及び拘束条件が反映された制御モデルを生成することにより、運動条件及び拘束条件を設定してもよい。
 本実施形態においては、運動目的及び拘束条件を適切に設定することにより、アーム部120に所望の動作を行わせることが可能となる。例えば、運動目的として、撮像部140の位置の目標値を設定することにより撮像部140をその目標の位置に移動させることはもちろんのこと、アーム部120が空間上の所定の領域内に侵入しないようにする等、拘束条件によって移動の制約を設けてアーム部120を駆動させることも可能である。
 運動目的の具体例として、例えば、運動目的は、撮像部140の撮影方向が施術部位に固定された状態で、撮像部140が施術部位を頂点とした円錐の面内を移動する、当該円錐の軸を旋回軸とした旋回動作である、ピボット動作であってもよい。また、当該ピボット動作においては、撮像部140と円錐の頂点に当たる点との距離が一定に保たれた状態で旋回動作が行われてもよい。このようなピボット動作を行うことにより、観察部位を等距離からかつ異なる角度から観察できるようになるため、手術を行うユーザの利便性を向上させることができる。
 また、他の具体例として、運動目的は、各関節部130における発生トルクを制御する内容であってもよい。具体的には、運動目的は、アーム部120に作用する重力を打ち消すように関節部130の状態を制御するとともに、更に外部から与えられた力の方向へのアーム部120の移動をサポートするように関節部130の状態を制御するパワーアシスト動作であってもよい。より具体的には、パワーアシスト動作においては、アーム部120の各関節部130における重力による外トルクを打ち消す発生トルクを各関節部130に生じさせるように各関節部130の駆動が制御されることにより、アーム部120の位置及び姿勢が所定の状態で保持される。この状態で更に外部から(例えばユーザから)外トルクが加えられた場合に、与えられた外トルクと同じ方向の発生トルクを各関節部130に生じさせるように各関節部130の駆動が制御される。このようなパワーアシスト動作を行うことにより、ユーザが手動でアーム部120を動かす場合に、ユーザはより小さい力でアーム部120を移動させることができるため、あたかも無重力下でアーム部120を動かしているような感覚をユーザに対して与えることができる。また、上述したピボット動作と当該パワーアシスト動作とを組み合わせることも可能である。
 ここで、本実施形態において、運動目的とは、全身協調制御において実現されるアーム部120の動作(運動)を意味していてもよいし、当該動作における瞬時的な運動目的(すなわち、運動目的における目標値)を意味していてもよい。例えば上記のピボット動作であれば、撮像部140がピボット動作を行うこと自体が運動目的であるが、ピボット動作を行っている最中においては、当該ピボット動作における円錐面内での撮像部140の位置や速度等の値が、瞬時的な運動目的(当該運動目的における目標値)として設定されている。また例えば上記のパワーアシスト動作であれば、外部から加えられた力の方向へのアーム部120の移動をサポートするパワーアシスト動作を行うこと自体が運動目的であるが、パワーアシスト動作を行っている最中においては、各関節部130に加えられる外トルクと同じ方向への発生トルクの値が、瞬時的な運動目的(当該運動目的における目標値)として設定されている。本実施形態における運動目的は、瞬時的な運動目的(例えばある時間におけるアーム部120の各構成部材の位置や速度、力等の目標値)と、瞬時的な運動目的が連続的に達成された結果、経時的に実現されるアーム部120の各構成部材の動作の、双方を含む概念である。全身協調制御部240における全身協調制御のための演算における各ステップでは瞬時的な運動目的がその都度設定され、当該演算が繰り返し行われることにより、最終的に所望の運動目的が達成される。
 なお、本実施形態においては、運動目的が設定される際に、各関節部130の回転運動における粘性抵抗係数も適宜設定されてよい。上述したように、本実施形態に係る関節部130は、アクチュエータ430の回転運動における粘性抵抗係数を適宜調整できるように構成される。従って、運動目的の設定に際して各関節部130の回転運動における粘性抵抗係数も設定することにより、例えば外部から加えられる力に対して回転しやすい状態や回転し難い状態を実現することができる。例えば上述したパワーアシスト動作であれば、関節部130における粘性抵抗係数が小さく設定されることにより、ユーザがアーム部120を移動させる際に要する力がより小さくてよく、ユーザに与えられる無重力感がより助長される。このように、各関節部130の回転運動における粘性抵抗係数は、運動目的の内容に応じて適宜設定されてよい。
 なお、運動目的の具体例については、下記(5-2-5.運動目的の具体例)で改めて詳しく説明する。
 ここで、本実施形態においては、後述するように、記憶部220には、全身協調制御に関する演算において用いられる運動目的や拘束条件等の演算条件に関するパラメータが格納されていてもよい。演算条件設定部242は、記憶部220に記憶されている拘束条件を、全身協調制御の演算に用いる拘束条件として設定することができる。
 また、本実施形態においては、演算条件設定部242は、複数の方法によって運動目的を設定することができる。例えば、演算条件設定部242は、アーム状態取得部241から送信されるアーム状態に基づいて運動目的を設定してもよい。上述したように、アーム状態には、アーム部120の位置の情報やアーム部120に対して作用する力の情報が含まれる。従って、例えばユーザがアーム部120を手動で移動させようとしている場合には、アーム状態取得部241によって、ユーザがアーム部120をどのように移動させようとしているか、に関する情報もアーム状態として取得される。従って、演算条件設定部242は、取得されたアーム状態に基づいて、ユーザがアーム部120を移動させた位置や速度、力等を瞬時的な運動目的として設定することができる。このように運動目的が設定されることにより、アーム部120の駆動は、ユーザによるアーム部120の移動を追随し、サポートするように制御される。
 また、例えば、演算条件設定部242は、入力部210からユーザによって入力される指示に基づいて運動目的を設定してもよい。後述するが、入力部210は、ユーザが制御装置20にロボットアーム装置10の駆動制御に関する情報や命令等を入力するための入力インターフェースであり、本実施形態においては、ユーザによる入力部210からの操作入力に基づいて、運動目的が設定されてもよい。具体的には、入力部210は、例えばレバー、ペダル等のユーザが操作する操作手段を有し、当該レバー、ペダル等の操作に応じて、アーム部120の各構成部材の位置や速度等が、演算条件設定部242によって瞬時的な運動目的として設定されてもよい。
 更に、例えば、演算条件設定部242は、記憶部220に記憶されている運動目的を、全身協調制御の演算に用いる運動目的として設定してもよい。例えば、空間上の所定の点で撮像部140が静止するという運動目的であれば、当該所定の点の座標を運動目的として予め設定することができる。また、例えば、撮像部140が空間上において所定の軌跡上を移動するという運動目的であれば、当該所定の軌跡を表す各点の座標を運動目的として予め設定することができる。このように、運動目的が予め設定できるものである場合には、当該運動目的が予め記憶部220に記憶されていてもよい。また、例えば上述したピボット動作であれば、運動目的は円錐の面内における位置や速度等を目標値とするものに限られるし、パワーアシスト動作であれば、運動目的は力を目標値とするものに限られる。このように、ピボット動作やパワーアシスト動作のような運動目的が予め設定されている場合には、これらの運動目的における瞬時的な運動目的として設定され得る目標値の範囲や種類等に関する情報が、記憶部220に記憶されていてもよい。演算条件設定部242は、このような運動目的に関する各種の情報も含めて、運動目的として設定することができる。
 なお、演算条件設定部242が、上記のいずれの方法で運動目的を設定するかは、ロボットアーム装置10の用途等に応じてユーザによって適宜設定可能であってよい。また、演算条件設定部242は、また、上記の各方法を適宜組み合わせることにより、運動目的及び拘束条件を設定してもよい。なお、記憶部220に格納されている拘束条件の中に運動目的の優先度が設定されていてもよく、複数の互いに異なる運動目的が存在する場合には、演算条件設定部242は、当該拘束条件の優先度に応じて運動目的を設定してもよい。演算条件設定部242は、アーム状態並びに設定した運動目的及び拘束条件を仮想力算出部243に送信する。
 仮想力算出部243は、一般化逆動力学を用いた全身協調制御に関する演算における仮想力を算出する。仮想力算出部243が行う仮想力の算出処理は、例えば、上記(5-2-2-1.仮想力算出処理)で説明した一連の処理であってよい。仮想力算出部243は、算出した仮想力fを実在力算出部244に送信する。
 実在力算出部244は、一般化逆動力学を用いた全身協調制御に関する演算における実在力を算出する。実在力算出部244が行う実在力の算出処理は、例えば、上記(5-2-2-2.実在力算出処理)で説明した一連の処理であってよい。実在力算出部244は、算出した実在力(発生トルク)τを理想関節制御部250に送信する。なお、本実施形態においては、実在力算出部244によって算出された発生トルクτのことを、全身協調制御における関節部130の制御値という意味で、制御値又は制御トルク値とも呼称する。
 理想関節制御部250は、理論モデルに基づいた理想的な応答を実現する理想関節制御に関する各種の演算を行う。本実施形態では、理想関節制御部250は、実在力算出部244によって算出された発生トルクτに対して外乱の影響を補正することにより、アーム部120の理想的な応答を実現するトルク指令値τを算出する。なお、理想関節制御部250によって行われる演算処理は、上記(5-2-3.理想関節制御について)で説明した一連の処理に対応している。
 理想関節制御部250は、外乱推定部251及び指令値算出部252を有する。
 外乱推定部251は、トルク指令値τと、回転角度検出部133によって検出された回転角度qから算出される回転角速度に基づいて、外乱推定値τを算出する。なお、ここでいうトルク指令値τは、最終的にロボットアーム装置10に送信されるアーム部120での発生トルクを表す指令値である。このように、外乱推定部251は、図8に示す外乱オブザーバ620に対応する機能を有する。
 指令値算出部252は、外乱推定部251によって算出された外乱推定値τを用いて、最終的にロボットアーム装置10に送信されるアーム部120に生じさせるトルクを表す指令値であるトルク指令値τを算出する。具体的には、指令値算出部252は、上記数式(12)に示す関節部130の理想モデルから算出されるτrefに外乱推定部251によって算出された外乱推定値τを加算することにより、トルク指令値τを算出する。例えば、外乱推定値τが算出されていない場合には、トルク指令値τはトルク目標値τrefとなる。このように、指令値算出部252の機能は、図8に示す外乱オブザーバ620以外の機能に対応している。
 以上説明したように、理想関節制御部250においては、外乱推定部251と指令値算出部252との間で繰り返し情報のやり取りが行われることにより、図8を参照して説明した一連の処理が行われる。理想関節制御部250は算出したトルク指令値τをロボットアーム装置10の駆動制御部111に送信する。駆動制御部111は、送信されたトルク指令値τに対応する電流量を、関節部130のアクチュエータにおけるモータに対して供給する制御を行うことにより、当該モータの回転数を制御し、関節部130における回転角度及び発生トルクを制御する。
 本実施形態に係るロボットアーム制御システム1においては、ロボットアーム装置10におけるアーム部120の駆動制御は、アーム部120を用いた作業が行われている間継続的に行われるため、ロボットアーム装置10及び制御装置20における以上説明した処理が繰り返し行われる。すなわち、ロボットアーム装置10の関節状態検出部132によって関節部130の状態が検出され、制御装置20に送信される。制御装置20では、当該関節部130の状態と、運動目的及び拘束条件とに基づいて、アーム部120の駆動を制御するための全身協調制御及び理想関節制御に関する各種の演算が行われ、演算結果としてのトルク指令値τがロボットアーム装置10に送信される。ロボットアーム装置10では、当該トルク指令値τに基づいてアーム部120の駆動が制御され、駆動中又は駆動後の関節部130の状態が、再び関節状態検出部132によって検出される。
 基準位置導出部260は、撮像部140による対象物の観察における基準となる点である基準位置を導出する。ここで、基準位置導出部260の機能については、上記<2.ロボットアーム制御システムの構成>で詳しく説明しているため、ここでは、その詳細な説明は省略する。基準位置導出部260によって導出された基準位置についての情報は、例えば演算条件設定部242に提供され、あるいは記憶部220に記憶される。演算条件設定部242が、当該基準位置を用いて、例えば当該基準位置をピボット中心点とするような拘束条件を設定することにより、仮想力算出部243及び実在力算出部244により、ピボット動作を実現するような制御値が算出されることとなる。
 制御装置20が有する他の構成についての説明を続ける。
 入力部210は、ユーザが制御装置20にロボットアーム装置10の駆動制御に関する情報や命令等を入力するための入力インターフェースである。本実施形態においては、ユーザによる入力部210からの操作入力に基づいて、ロボットアーム装置10のアーム部120の駆動が制御され、撮像部140の位置及び姿勢が制御されてもよい。具体的には、上述したように、ユーザによって入力部210から入力されたアームの駆動の指示に関する指示情報が演算条件設定部242に入力されることにより、演算条件設定部242が当該指示情報に基づいて全身協調制御における運動目的を設定してもよい。このように、ユーザが入力した指示情報に基づく運動目的を用いて全身協調制御が行われることにより、ユーザの操作入力に応じたアーム部120の駆動が実現される。
 具体的には、入力部210は、例えばマウス、キーボード、タッチパネル、ボタン、スイッチ、レバー及びペダル等のユーザが操作する操作手段を有する。例えば入力部210がペダルを有する場合、ユーザは当該ペダルを足で操作することによりアーム部120の駆動を制御することができる。従って、ユーザが患者の施術部位に対して両手を使って処置を行っている場合であっても、足によるペダルの操作によって撮像部140の位置及び姿勢、すなわち、施術部位の撮影位置や撮影角度を調整することができる。
 記憶部220は、制御装置20によって処理される各種の情報を記憶する。本実施形態においては、記憶部220は、制御部230によって行われる全身協調制御及び理想関節制御に関する演算において用いられる各種のパラメータを記憶することができる。例えば、記憶部220は、全身協調制御部240による全身協調制御に関する演算において用いられる運動目的及び拘束条件を記憶していてもよい。記憶部220が記憶する運動目的は、上述したように、例えば撮像部140が空間上の所定の点で静止することのような、予め設定され得る運動目的であってよい。また、拘束条件は、アーム部120の幾何的な構成やロボットアーム装置10の用途等に応じて、ユーザによって予め設定され、記憶部220に格納されていてもよい。また、記憶部220には、アーム状態取得部241がアーム状態を取得する際に用いるアーム部120に関する各種の情報が記憶されていてもよい。更に、記憶部220には、制御部230による全身協調制御及び理想関節制御に関する演算における演算結果や演算過程で算出される各数値等が記憶されてもよい。このように、記憶部220には、制御部230によって行われる各種の処理に関するあらゆるパラメータが格納されていてよく、制御部230は、記憶部220と相互に情報を送受信しながら各種の処理を行うことができる。
 以上、制御装置20の機能及び構成について説明した。なお、本実施形態に係る制御装置20は、例えばPC(Personal Computer)やサーバ等の各種の情報処理装置(演算処理装置)によって構成することができる。次に、表示装置30の機能及び構成について説明する。
 表示装置30は、各種の情報を表示画面上にテキスト、イメージ等様々な形式で表示することにより、当該情報をユーザに対して視覚的に通知する。本実施形態においては、表示装置30は、ロボットアーム装置10の撮像部140によって撮影された画像を表示画面上に表示する。具体的には、表示装置30は、撮像部140によって取得された画像信号に各種の画像処理を施す画像信号処理部(図示せず。)や処理された画像信号に基づく画像を表示画面上に表示させる制御を行う表示制御部(図示せず。)等の機能及び構成を有する。なお、表示装置30は、上記の機能及び構成以外にも、一般的に表示装置が有する各種の機能及び構成を有してもよい。表示装置30は、図4に示す表示装置550に対応している。
 以上、図9を参照して、本実施形態に係るロボットアーム装置10、制御装置20及び表示装置30の機能及び構成について説明した。上記の各構成要素は、汎用的な部材や回路を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。また、各構成要素の機能を、CPU等が全て行ってもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用する構成を変更することが可能である。
 以上説明したように、本実施形態によれば、ロボットアーム装置10における多リンク構造体であるアーム部120が、少なくとも6自由度以上の自由度を有するとともに、当該アーム部120を構成する複数の関節部130のそれぞれの駆動が駆動制御部111によって制御される。そして、当該アーム部120の先端には医療用器具が設けられる。このように、各関節部130の駆動が制御されることにより、より自由度の高いアーム部120の駆動制御が実現され、よりユーザにとって操作性の高い医療用のロボットアーム装置10が実現される。
 より具体的には、本実施形態によれば、ロボットアーム装置10において、関節状態検出部132によって関節部130の状態が検出される。そして、制御装置20において、当該関節部130の状態と、運動目的及び拘束条件とに基づいて、アーム部120の駆動を制御するための一般化逆動力学を用いた全身協調制御に関する各種の演算が行われ、演算結果としてのトルク指令値τが算出される。更に、ロボットアーム装置10において、当該トルク指令値τに基づいてアーム部120の駆動が制御される。このように、本実施形態においては、一般化逆動力学を用いた全身協調制御により、アーム部120の駆動が制御される。従って、力制御によるアーム部120の駆動制御が実現され、よりユーザにとって操作性の高いロボットアーム装置が実現される。また、本実施形態では、全身協調制御において、例えばピボット動作やパワーアシスト動作といった、よりユーザの利便性を向上させる各種の運動目的を実現する制御が可能となる。更に、本実施形態においては、例えばアーム部120を手動で移動させたり、ペダルからの操作入力により移動させたりといった、多様な駆動手段が実現されるため、ユーザの利便性の更なる向上が実現される。
 また、本実施形態においては、アーム部120の駆動制御について、全身協調制御と併せて理想関節制御が適用される。理想関節制御においては、関節部130内部の摩擦や慣性等の外乱成分を推定し、推定した外乱成分を用いたフィードフォワード制御が行われる。従って、摩擦等の外乱成分がある場合であっても、関節部130の駆動について理想的な応答を実現することができる。よって、アーム部120の駆動制御において、振動等の影響がより少ない、高精度の応答性と高い位置決め精度や安定性が実現される。
 更に、本実施形態においては、アーム部120を構成する複数の関節部130のそれぞれが、例えば図6に示すような、理想関節制御に適合した構成を有し、各関節部130における回転角度、発生トルク及び粘性抵抗係数を電流値によって制御することができる。このように、各関節部130の駆動が電流値によって制御され、また、全身協調制御により各関節部130の駆動がアーム部120全体の状態を把握しながら制御されるため、カウンターバランスが不要となり、ロボットアーム装置10の小型化が実現される。
 (5-2-5.運動目的の具体例)
 次に、本実施形態に係る運動目的の具体例について説明する。上記(5-2-4.ロボットアーム制御システムの構成)で説明したように、本実施形態においては、全身協調制御によって各種の運動目的が実現される。ここでは、本実施形態に係る運動目的の具体例として、パワーアシスト動作と、ピボット動作について説明する。なお、以下の運動目的の具体例についての説明では、図9に示す機能ブロック図における参照番号を用いて、本実施形態に係るロボットアーム制御システムの構成部材を表す。
 パワーアシスト動作は、アーム部120に作用する重力を打ち消すように関節部130の状態を制御するとともに、更に外部から与えられた力の方向へのアーム部120の移動をサポートするように関節部130の状態を制御する動作である。具体的には、ユーザがアーム部120を手動で動かす際に、ユーザによって加えられた力をサポートするようにアーム部120の駆動を制御する動作である。より具体的には、パワーアシスト動作を実現するために、まず、重力以外の力がアーム部120に作用していない状態における外トルクがトルク検出部134によって検出され、検出された外トルクを打ち消す発生トルクを各関節部130に生じさせるように、瞬時的な運動目的が設定される。この段階で、アーム部120の位置及び姿勢が所定の状態で保持される。この状態で更に外部から(例えばユーザから)外トルクが加えられた場合に、追加的に与えられた外トルクがトルク検出部134によって検出され、検出された追加的な外トルクと同じ方向の発生トルクを各関節部130に生じさせるという瞬時的な運動目的が更に設定される。このような瞬時的な運動目的に従って各関節部130の駆動が制御されることによりパワーアシスト動作が実現される。パワーアシスト動作により、ユーザはより小さい力でアーム部を移動させることができるため、あたかも無重力下でアーム部120を動かしているような感覚を得ることができ、ユーザによるアーム部120の操作性が向上する。
 ピボット動作は、アーム部120の先端に設けられる先端ユニットが、当該先端ユニットの向きが空間上の所定の点に固定された状態で、当該所定の点を頂点とした円錐の面上を移動する、当該円錐の軸を旋回軸とした旋回動作である。具体的に先端ユニットが撮像部140である場合であれば、ピボット動作は、アーム部120の先端に設けられる撮像部140が、撮像部140の撮影方向が空間上の所定の点に固定された状態で、当該所定の点を頂点とした円錐の面上を移動する、当該円錐の軸を旋回軸とした旋回動作である。ピボット動作における円錐の頂点に当たる点としては、例えば施術部位が選択される。また、ピボット動作においては、先端ユニット又は撮像部140と円錐の頂点に当たる点との距離が一定に保たれた状態で旋回動作が行われてもよい。なお、先端ユニットの向き又は撮像部140の撮影方向が空間上の所定の点(例えば施術部位)に固定されることから、ピボット動作はポイントロック動作とも呼ばれる。
 ピボット動作について、図10及び図11を参照してより詳細に説明する。図10は、本開示の一実施形態に係るアーム動作の一具体例であるピボット動作について説明するための説明図である。図11は、図10に示すピボット動作を実現するための運動目的及び拘束条件について説明するための説明図である。
 図10を参照すると、患者750上における施術部位がピボット動作における頂点に設定されている。当該頂点をピボット点Pと呼称する。図10では、簡単のため、本実施形態に係るロボットアーム装置10のうち、図9における撮像部140に対応するユニットである撮像ユニット713のみを図示している。図10に示すように、ピボット動作においては、撮像ユニット713が円錐Aの底面の円周上に限り移動することができるように、すなわち、撮像ユニット713とピボット点Pとの距離が一定に保たれた状態で撮像ユニット713が円錐Aの面内を移動するように、運動目的及び拘束条件が設定されてもよい。また、円錐Aの形状、すなわち、円錐Aの頂点の角度θや、ピボット点Pと撮像ユニット713との距離は、ユーザによって適宜設定されてよい。例えば、ピボット点Pと撮像ユニット713との距離は撮像ユニット713における光学系の焦点距離に調整される。このようなピボット動作を適用することにより、施術部位を等距離からかつ異なる角度から観察できるようになるため、手術を行うユーザの利便性を向上させることができる。
 また、ピボット動作においては、円錐A及び円錐Bのように、ピボット点Pを固定したまま撮像ユニット713が移動可能な円錐の位置を移動させることができてもよい。図10に示す例では、円錐Aの旋回軸は施術部位に対して略垂直であり、円錐Bの旋回軸は施術部位に対して略水平である。このように、例えばピボット動作を行う円錐を、円錐A、Bのように、ピボット点Pを固定したまま略90度回転できるように、運動目的及び拘束条件が設定されてもよい。このようなピボット動作を適用することにより、施術部位を更に多くの方向から観察できるようになるため、ユーザの利便性を更に向上させることができる。
 なお、図10に示す例では、撮像ユニット713が円錐Aの底面の円周上に限り移動することができるように運動目的及び拘束条件が設定される例を示しているが、本実施形態に係るピボット動作はかかる例に限定されない。例えば、ピボット点Pの位置及び円錐A、Bの頂点の角度θは固定したまま、ピボット点Pと撮像ユニット713との距離は自由に移動できるように、運動目的及び拘束条件が設定されてもよい。このようなピボット動作を適用することにより、角度は固定したまま撮像ユニット713と施術部位との距離だけを変えることができるようになるため、撮像ユニット713の焦点距離(フォーカス)を適宜調整することにより施術部位を拡大又は縮小して観察する等、よりユーザの要求に応える施術部位の観察が可能となる。
 次に、図11を参照して、図10に示したようなピボット動作を実現するための運動目的及び拘束条件について詳しく説明する。図11を参照すると、撮像ユニット713を有するアーム部710がピボット点Pを基点としてピボット動作を行っている様子が図示されている。なお、図11では、撮像ユニット713とピボット点Pとの距離が一定に保たれた状態でのピボット動作を例に挙げて説明を行う。アーム部710は、複数の関節部711a、711b、711cと複数のリンク712a、712b、712cを有し、本実施形態に係る全身協調制御及び理想関節制御によってその駆動が制御されているとする。例えば、アーム部710及びその構成部材は、図5に示した本実施形態に係るアーム部420及びその構成部材と同様の構成を有する。
 ここで、アーム部710の支点である原点Oを零点とするアーム座標系と、空間上の原点Oを零点とする空間座標系を考える。アーム部710の運動はアーム座標系で管理されている。なお、アーム座標系及び空間座標系は、相互の座標系への座標変換が可能であるように定義される。
 空間座標系から見た撮像中心をPとする。また、アーム座標系において、撮像ユニット713とリンク712cとを接続する関節部711cから、撮像ユニット713自体の長さDと撮像ユニット713の焦点距離fだけ離れた位置をピボット点Pとする。
 この状態で、ピボット点Pと撮像中心Pとが一致した状態でアーム部710が駆動されるように、運動目的及び拘束条件を設ける。すなわち、アーム座標系におけるピボット点Pを空間座標系における撮像中心Pに固定するような拘束をアーム座標系において設ける。また、運動目的として、撮像ユニット713がピボット点P(すなわち撮像中心P)を頂点とする円錐の面上に位置するような座標や、撮像ユニット713がピボット点Pを向くような撮像ユニット713の姿勢が設定される。このような拘束条件及び運動目的の下で全身協調制御が行われることにより、アーム部710の動作によって撮像ユニット713の位置及び姿勢が変化したとしても、撮像ユニット713の向きは常に撮像中心P(すなわち、ピボット点P)を向いたまま、かつ、撮像ユニット713と撮像中心Pとの距離が焦点距離fに保たれたままとなる。従って、撮像ユニット713と撮像中心Pとの距離が一定に保たれた状態でのピボット動作が実現される。撮像ユニット713と撮像中心P(又はピボット点P)との距離を変化させながらピボット動作を行う際には、上述したピボット点Pの設定方法を変更すればよい。具体的には、例えば、アーム座標系において、関節部711cから撮像ユニット713自体の長さDと任意の距離だけ離れた位置をピボット点Pとし、当該任意の距離を可変なパラメータとすればよい。
 なお、上述したピボット動作とパワーアシスト動作とが組み合わされて用いられてもよい。ピボット動作とパワーアシスト動作とが組み合わされて用いられる場合、例えばユーザが手動で撮像部140を移動させる際に、ユーザは無重力下で撮像部140を移動させているような感覚でより少ない力で撮像部140を移動させることができるとともに、撮像部140の移動位置は円錐の面内に制限される。従って、ピボット動作時における撮像部140の移動の操作性が向上する。
 以上、本実施形態に係る運動目的の具体例として、パワーアシスト動作及びピボット動作について説明した。なお、本実施形態に係る運動目的はかかる例に限定されない。本実施形態では、例えば以下のような運動目的も実現可能である。
 例えば、撮像部140の位置が所定の点で固定されるように、撮像部140の座標が運動目的として設定されてもよい。この場合、例えばアーム部120の撮像部140以外の構成部材に外部から力が与えられた際に、関節部130及びリンクも所定の位置で固定され移動しないように運動目的及び拘束条件を設定することも可能であるし、関節部130及びリンクは与えられた外力に応じて移動するものの撮像部140の位置は固定されるように運動目的及び拘束条件を設定することも可能である。後者の場合、例えば、アーム部120が作業の妨げとなり移動させようとする際に、撮像部140による撮影画像は固定されたままアーム部120の他の構成部材の位置及び姿勢を移動させるといった、より自由度の高い制御が実現される。
 また、例えば、駆動中にアーム部120がヒトやモノとの接触を検出した場合に、即座にアーム部120の駆動を停止する動作が実現されるように、運動目的及び拘束条件が設定されてもよい。このような動作を行うことにより、アーム部120がヒトやモノに衝突する際の危険性を低減することができる。なお、アーム部120がヒトやモノと接触したことは、例えば関節状態検出部132によって関節部130に加えられた外トルクの変化によって検出されてもよい。
 また、例えば、撮像部140が空間上において所定の軌跡上を移動するように運動目的が設定されてもよい。具体的には、当該所定の軌跡を表す各点の座標が運動目的として設定されてもよい。このように運動目的が設定されることにより、撮像部140の移動可能範囲が当該軌跡上に制限される。更に、当該軌跡を表す各点の座標と併せて、撮像部140の速度や各点を通過する時間等が運動目的として設定されることにより、撮像部140が所定の軌跡上を所定のタイミングで自動的に移動するオートメーション化された駆動を行うこともできる。このような運動設定に従った駆動制御は、例えばロボットアーム装置10が所定の作業を自動的に繰り返し行う場合に有効である。
 また、例えば、空間上の所定の領域内にアーム部120が侵入しない動作が実現されるように、運動目的及び拘束条件が設定されてもよい。図4を参照して説明したように、本実施形態においてはユーザが表示画面を見ながら手術を行う。従って、ユーザと表示画面との間の領域にアーム部120が位置すると、ユーザの視界を遮ることとなり、手術の効率低下につながる恐れがある。従って、例えばユーザと表示画面の間の領域をアーム部120の侵入禁止領域として設定することにより、手術の効率化を図ることができる。
 ここで、このようにアーム部120に侵入禁止領域を設定する場合には、アーム部120の自由度が6自由度よりも多いことが好ましい。何故ならば、6自由度よりも多い自由度を冗長自由度として利用することができるため、6自由度の駆動を確保しつつ、上記のような侵入禁止領域等にも対応できるからである。このような6自由度よりも多い自由度を有するアーム部を備えるロボットアーム装置の構成について、図12を参照して詳しく説明する。
 図12は、本開示の一実施形態に係るロボットアーム装置における冗長自由度を有する変形例の外観を示す概略図である。なお、図12においても、図5で定義した方向と同一の座標軸を図示している。
 図12を参照すると、本変形例に係るロボットアーム装置450は、ベース部460及びアーム部470を備える。また、アーム部470は、複数の関節部471a~471gと、関節部471a~471gによって互いに連結される複数のリンク472a~472dと、アーム部470の先端に設けられる撮像ユニット473を有する。ここで、図12に示すロボットアーム装置450は、図5を参照して説明したロボットアーム装置400に対してアーム部470の自由度が1つ増加した構成に対応している。従って、ベース部460、個々の関節部471a~471g及びリンク472a~472d、並びに、撮像ユニット473の機能及び構成は、図5を参照して説明したロボットアーム装置400のベース部410、個々の関節部421a~421f及びリンク422a~422c、並びに、撮像ユニット423の機能及び構成と同様であるため、詳細な説明は省略する。以下では、ロボットアーム装置400との相違点であるアーム部470の構成について主に説明する。
 本実施形態に係るロボットアーム装置450は、7つの関節部471a~471gを有し、アーム部470の駆動に関して7自由度が実現されている。具体的には、リンク472aの一端がベース部460と連結され、リンク472aの他端が関節部421aを介してリンク472bの一端と連結される。また、リンク422bの他端が関節部471b、471cを介してリンク472cの一端と連結される。更に、リンク472cの他端が関節部471d、471eを介してリンク472dの一端と連結され、472dの他端が関節部471f、471gを介して撮像ユニット473と連結される。このように、ベース部460を支点として、複数のリンク472a~472dの端同士が、関節部471a~471gによって互いに連結されることにより、ベース部460から延伸されるアーム部470が構成される。
 また、図12に示すように、関節部471a、471c、471e、471gは、接続されている各リンク472b~472dの長軸方向及び接続されている撮像ユニット473の撮影方向を回転軸方向とするように設けられており、関節部471b、471d、471fは、接続されている各リンク472c~472d及び撮像ユニット473の連結角度をy-z平面内において変更する方向であるx軸方向を回転軸方向とするように設けられている。このように、本変形例においては、関節部471a、471c、471e、471gは、いわゆるヨーイングを行う機能を有し、関節部471b、471d、471fは、いわゆるピッチングを行う機能を有する。
 このようなアーム部470の構成を有することにより、本実施形態に係るロボットアーム装置450ではアーム部470の駆動に対して7自由度が実現されるため、アーム部470の可動範囲内において撮像ユニット473を空間内で自由に移動させることができるとともに、冗長自由度を有する。図12では、図5と同様に、撮像ユニット473の移動可能範囲の一例として半球を図示している。半球の中心点が撮像ユニット473によって撮影される施術部位の撮影中心であるとすれば、撮像ユニット473の撮影中心を半球の中心点に固定した状態で、撮像ユニット473を半球の球面上で移動させることにより、施術部位をあらゆる角度から撮影することができる。本実施形態に係るロボットアーム装置450は、更に1つの冗長自由度を有することにより、このような撮像ユニット473の半球上の移動とともに、アーム部470の軌道を制限することができ、上述した侵入禁止領域のような拘束条件にも容易に対応することができる。侵入禁止領域を設定することにより、例えば、撮像ユニット473によって撮影された画像が表示されるモニタと施術者及びスタッフとの間にアーム部470が存在しないようにアーム部470の駆動を制御することができ、施術者及びスタッフによるモニタの視認が妨げられることを防ぐことができる。また、侵入禁止領域を設定することにより、施術者及びスタッフや周囲の他の機器との干渉(接触)を避けてアーム部470が移動するようにアーム部470の駆動を制御することが可能となる。
 (5-3.ロボットアーム制御方法の処理手順)
 次に、図13を参照して、本開示の一実施形態に係るロボットアーム制御方法の処理手順について説明する。図13は、本開示の一実施形態に係るロボットアーム制御方法の処理手順を示すフロー図である。なお、以下では、図9に示すロボットアーム制御システム1の構成によって本実施形態に係るロボットアーム制御方法が実現される場合を例に挙げて説明を行う。従って、本実施形態に係るロボットアーム制御方法は医療用ロボットアーム制御方法であると言える。なお、以下の本実施形態に係るロボットアーム制御方法の処理手順についての説明において、図9に示すロボットアーム制御システム1の各構成の機能については、上記(5-2-4.ロボットアーム制御システムの構成)で既に説明しているため、詳細な説明は省略する。
 図13を参照すると、本実施形態に係るロボットアーム制御方法では、まず、ステップS801で、関節状態検出部132によって関節部130の状態が検出される。ここで、関節部130の状態とは、例えば関節部130における回転角度、発生トルク及び/又は外トルクである。
 次にステップS803で、ステップS801で検出された関節部130の状態に基づいて、アーム状態取得部241によってアーム状態が取得される。アーム状態とは、アーム部120の運動の状態のことであり、例えばアーム部120の各構成部材の位置、速度、加速度やアーム部120の各構成部材に作用する力等であってよい。
 次にステップS805で、ステップS803で取得されたアーム状態に基づいて、演算条件設定部242によって全身協調制御における演算で用いられる運動目的及び拘束条件が設定される。なお、演算条件設定部242はアーム状態に基づいて運動目的を設定しなくてもよく、例えば、入力部210からユーザによって入力されるアーム部120の駆動についての指示情報に基づいて運動目的を設定してもよいし、記憶部220に予め格納されている運動目的を用いてもよい。更に、上記の各方法を適宜組み合わせることにより、運動目的を設定してもよい。また、演算条件設定部242は記憶部220に予め格納されている拘束条件を用いてもよい。
 次にステップS807で、アーム状態、運動目的及び拘束条件に基づいて、一般化逆動力学を用いた全身協調制御についての演算が行われ、制御値τが算出される。なお、ステップS807で行われる処理は、図9に示す仮想力算出部243及び実在力算出部244における一連の処理、すなわち、上記(5-2-2.一般化逆動力学について)で説明した一連の処理であってよい。
 次にステップS809で、外乱推定値τが算出され、当該外乱推定値τを用いて、理想関節制御についての演算が行われ、制御値τから指令値τが算出される。なお、ステップS809で行われる処理は、図9に示す理想関節制御部250における一連の処理、すなわち、上記(5-2-3.理想関節制御について)で説明した一連の処理であってよい。
 最後にステップS811で、指令値τに基づいて、駆動制御部111によって関節部130の駆動が制御される。
 以上、図13を参照して、本実施形態に係るロボットアーム制御方法の処理手順について説明した。なお、本実施形態においては、図13に示すステップS801~ステップS811における処理が、アーム部120を用いた作業が行われている間繰り返し行われる。従って、本実施形態においては、アーム部120を用いた作業が行われている間、アーム部120の駆動制御が継続的に行われる。
 (5-4.全身協調制御に係るロボットアーム装置のまとめ)
 以上説明したように、本実施形態においては、以下の効果を得ることができる。
 以上説明したように、本実施形態によれば、ロボットアーム装置10における多リンク構造体であるアーム部120が、少なくとも6自由度以上の自由度を有するとともに、当該アーム部120を構成する複数の関節部130のそれぞれの駆動が駆動制御部111によって制御される。そして、当該アーム部120の先端には医療用器具が設けられる。このように、各関節部130の駆動が制御されることにより、より自由度の高いアーム部120の駆動制御が実現され、よりユーザにとって操作性の高い医療用のロボットアーム装置10が実現される。
 具体的には、本実施形態によれば、ロボットアーム装置10において、関節状態検出部132によって関節部130の状態が検出される。そして、制御装置20において、当該関節部130の状態と、運動目的及び拘束条件とに基づいて、アーム部120の駆動を制御するための一般化逆動力学を用いた全身協調制御に関する各種の演算が行われ、演算結果としてのトルク指令値τが算出される。更に、ロボットアーム装置10において、当該トルク指令値τに基づいてアーム部120の駆動が制御される。このように、本実施形態においては、一般化逆動力学を用いた全身協調制御により、アーム部120の駆動が制御される。従って、力制御によるアーム部120の駆動制御が実現され、よりユーザにとって操作性の高いロボットアーム装置が実現される。また、本実施形態では、全身協調制御において、例えばピボット動作やパワーアシスト動作といった、よりユーザの利便性を向上させる各種の運動目的を実現する制御が可能となる。更に、本実施形態においては、例えばアーム部120を手動で移動させたり、ペダルからの操作入力により移動させたりといった、多様な駆動手段が実現されるため、ユーザの利便性の更なる向上が実現される。
 また、本実施形態においては、アーム部120の駆動制御について、全身協調制御と併せて理想関節制御が適用される。理想関節制御においては、関節部130内部の摩擦や慣性等の外乱成分を推定し、推定した外乱成分を用いたフィードフォワード制御が行われる。従って、摩擦等の外乱成分がある場合であっても、関節部130の駆動について理想的な応答を実現することができる。よって、アーム部120の駆動制御において、振動等の影響がより少ない、高精度の応答性と高い位置決め精度や安定性が実現される。
 更に、本実施形態においては、アーム部120を構成する複数の関節部130のそれぞれが、例えば図6に示すような、理想関節制御に適合した構成を有し、各関節部130における回転角度、発生トルク及び粘性抵抗係数を電流値によって制御することができる。このように、各関節部130の駆動が電流値によって制御され、また、全身協調制御により各関節部130の駆動がアーム部120全体の状態を把握しながら制御されるため、カウンターバランスが不要となり、ロボットアーム装置10の小型化が実現される。
 このように、本実施形態によれば、上記(5-1.医療用ロボットアーム装置についての検討)で説明したロボットアーム装置に求められる性能を全て満たすことができる。従って、本実施形態に係るロボットアーム装置を用いた各種の施術において、より効率的に施術を行うことができ、ユーザや患者の疲労や負担をより軽減することが実現される。
 また、本実施形態では、力制御によってロボットアーム装置10のアーム部120が駆動されることにより、万が一駆動中にアーム部120が施術者やスタッフ等に干渉(接触)したとしても、アーム部120が必要以上の力を発生せず、アーム部120が安全に停止する。そして、当該干渉から解放されれば、設定された運動目的に従って所望の位置までアーム部120が移動し、施術が継続される。このように、本実施形態では、ロボットアーム装置10の駆動制御に力制御が用いられることにより、駆動中におけるアーム部120と周囲の物体との干渉に対して、より高い安全性が確保される。
 なお、例えば、上記実施形態では、ロボットアーム装置のアーム部の先端ユニットが撮像ユニットであり、図4に示すように手術時に当該撮像ユニットによって施術部位を撮影する場合について説明したが、本実施形態はかかる例に限定されない。本実施形態に係るロボットアーム制御システム1は、他の先端ユニットを有するロボットアーム装置が他の用途に用いられる場合であっても適用可能である。例えば、先端ユニットは内視鏡や腹腔鏡であってもよいし、超音波検査器や胃カメラ等、他の検査機器であってもよい。
 例えば、腹腔鏡を用いた施術では、患者の体内に腹腔鏡を挿入し、当該腹腔鏡によって撮影された映像を観察しながら、別途挿入される鉗子や電気メス等の術具を用いて各種の処置が行われる。このような施術方法においては、例えば腹腔鏡をロボットアームによって操作しながら、処置用の術具を施術者が直接操作することができれば、1人のユーザによって施術を行うことができ、より効率的な施術が可能となる。しかしながら、一般的な既存のバランス型アームにおいては、操作性の観点から、1人のユーザが、自身の手による術具の操作とロボットアームによる腹腔鏡の操作とを同時に行うことは困難であった。よって、既存の方法では、複数名のスタッフが必要であり、1人の施術者がロボットアームによって腹腔鏡を操作しながら、他の者が術具を用いた処置を行うことが一般的であった。しかし、本実施形態に係るロボットアーム装置では、上述したように、全身協調制御による高い操作性が実現される。また、理想関節制御により、振動等の影響がより少ない、高精度の応答性と高い安定性が実現される。従って、本実施形態によれば、ロボットアーム装置による観察用の腹腔鏡の操作と、自身の手による術具の操作とを、施術者1人で容易に行うことが可能となる。
 また、本実施形態に係るロボットアーム装置は、医療以外の用途に用いられてもよい。本実施形態に係るロボットアーム装置では、理想関節制御により、高精度の応答性と高い安定性が実現されるため、例えば高い精度が求められる工業部品の加工や組み立て等の作業にも対応可能である。
 また、上記実施形態では、ロボットアーム装置の関節部が回転機構を有し、当該回転機構の回転駆動が制御されることによってアーム部の駆動が制御される場合について説明したが、本実施形態はかかる例に限定されない。例えば、本実施形態に係るロボットアーム装置においては、アーム部を構成するリンクがリンクの延伸方向に伸縮する機構(例えば油圧で駆動するものやボールねじを駆動するもの等)を有し、リンクの長さが可変であってもよい。リンクの長さが可変である場合、例えば関節部における回転に加えてリンクの伸縮も考慮した全身協調制御によって、所望の運動目的を達成するようにアーム部の駆動が制御される。
 また、上記実施形態では、ロボットアーム装置におけるアーム部の自由度が6自由度以上である場合について説明したが、本実施形態はかかる例に限定されない。また、ロボットアーム装置におけるアーム部を構成する複数の関節部が全て理想関節制御に対応するアクチュエータを有する場合について説明したが、本実施形態はかかる例に限定されない。本実施形態においては、ロボットアーム装置の用途に応じて多様な運動目的が設定され得る。従って、設定された運動目的が達成可能であれば、アーム部は、6自由度よりも低い自由度を有してもよいし、アーム部を構成する複数の関節部のうちの一部が一般的な関節機構を有する関節部であってもよい。このように、本実施形態においては、アーム部の構成は、運動目的を達成可能であるように構成されればよく、ロボットアーム装置の用途に応じて適宜構成されてよい。
 <6.ハードウェア構成>
 次に、図14を参照しながら、図1及び図9に示す、本実施形態に係るロボットアーム装置10及び制御装置20のハードウェア構成について、詳細に説明する。図14は、本開示の一実施形態に係るロボットアーム装置10及び制御装置20のハードウェア構成の一構成例を示す機能ブロック図である。
 ロボットアーム装置10及び制御装置20は、主に、CPU901と、ROM903と、RAM905と、を備える。また、ロボットアーム装置10及び制御装置20は、更に、ホストバス907と、ブリッジ909と、外部バス911と、インターフェース913と、入力装置915と、出力装置917と、ストレージ装置919と、ドライブ921と、接続ポート923と、通信装置925とを備える。
 CPU901は、演算処理装置及び制御装置として機能し、ROM903、RAM905、ストレージ装置919又はリムーバブル記録媒体927に記録された各種プログラムに従って、ロボットアーム装置10及び制御装置20内の動作全般又はその一部を制御する。ROM903は、CPU901が使用するプログラムや演算パラメータ等を記憶する。RAM905は、CPU901が使用するプログラムや、プログラムの実行において適宜変化するパラメータ等を一次記憶する。これらはCPUバス等の内部バスにより構成されるホストバス907により相互に接続されている。CPU901は、本実施形態においては、例えば、図1及び図9に示す関節制御部135、アーム制御部110及び制御部230に対応している。
 ホストバス907は、ブリッジ909を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス911に接続されている。また、外部バス911には、インターフェース913を介して、入力装置915、出力装置917、ストレージ装置919、ドライブ921、接続ポート923及び通信装置925が接続される。
 入力装置915は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、レバー及びペダル等、ユーザが操作する操作手段である。また、入力装置915は、例えば、赤外線やその他の電波を利用したリモートコントロール手段(いわゆる、リモコン)であってもよいし、ロボットアーム装置10及び制御装置20の操作に対応した携帯電話やPDA等の外部接続機器929であってもよい。さらに、入力装置915は、例えば、上記の操作手段を用いてユーザにより入力された情報に基づいて入力信号を生成し、CPU901に出力する入力制御回路などから構成されている。ロボットアーム装置10及び制御装置20のユーザは、この入力装置915を操作することにより、ロボットアーム装置10及び制御装置20に対して各種のデータを入力したり処理動作を指示したりすることができる。入力装置915は、本実施形態においては、例えば、図9に示す入力部210に対応する。また、本実施形態においては、入力装置915を介したユーザによる操作入力により、アーム部120の駆動における運動目的が設定され、当該運動目的に従って全身協調制御が行われてもよい。
 出力装置917は、取得した情報をユーザに対して視覚的又は聴覚的に通知することが可能な装置で構成される。このような装置として、CRTディスプレイ装置、液晶ディスプレイ装置、プラズマディスプレイ装置、ELディスプレイ装置及びランプ等の表示装置や、スピーカ及びヘッドホン等の音声出力装置や、プリンタ装置等がある。出力装置917は、例えば、ロボットアーム装置10及び制御装置20が行った各種処理により得られた結果を出力する。具体的には、表示装置は、ロボットアーム装置10及び制御装置20が行った各種処理により得られた結果を、テキスト又はイメージで表示する。他方、音声出力装置は、再生された音声データや音響データ等からなるオーディオ信号をアナログ信号に変換して出力する。本実施形態においては、アーム部120の駆動制御に関する各種の情報が、あらゆる形式で出力装置917から出力されてよい。例えば、アーム部120の駆動制御における、アーム部120の各構成部材の移動の軌跡が、グラフの形式で出力装置917の表示画面に表示されてもよい。なお、例えば、図1及び図9に示す表示装置30は、出力装置917の表示装置としての機能及び構成と、当該表示装置の駆動を制御するための制御部等の構成を備える装置であってもよい。
 ストレージ装置919は、ロボットアーム装置10及び制御装置20の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置919は、例えば、HDD(Hard Disk Drive)等の磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等により構成される。このストレージ装置919は、CPU901が実行するプログラムや各種データ等を格納する。ストレージ装置919は、本実施形態においては、例えば、図1及び図9に示す記憶部220に対応する。また、本実施形態においては、ストレージ装置919は、一般化逆動力学を用いた全身協調制御に関する演算における演算条件(運動目的及び拘束条件)を記憶することができ、ロボットアーム装置10及び制御装置20はストレージ装置919に記憶されているこれらの演算条件を用いて全身協調制御に関する演算を行ってもよい。
 ドライブ921は、記録媒体用リーダライタであり、ロボットアーム装置10及び制御装置20に内蔵、あるいは外付けされる。ドライブ921は、装着されている磁気ディスク、光ディスク、光磁気ディスク又は半導体メモリ等のリムーバブル記録媒体927に記録されている情報を読み出して、RAM905に出力する。また、ドライブ921は、装着されている磁気ディスク、光ディスク、光磁気ディスク又は半導体メモリ等のリムーバブル記録媒体927に記録を書き込むことも可能である。リムーバブル記録媒体927は、例えば、DVDメディア、HD-DVDメディア又はBlu-ray(登録商標)メディア等である。また、リムーバブル記録媒体927は、コンパクトフラッシュ(登録商標)(CF:CompactFlash)、フラッシュメモリ又はSDメモリカード(Secure Digital memory card)等であってもよい。また、リムーバブル記録媒体927は、例えば、非接触型ICチップを搭載したICカード(Integrated Circuit card)又は電子機器等であってもよい。本実施形態においては、アーム部120の駆動制御に関する各種の情報が、ドライブ921によって、各種のリムーバブル記録媒体927から読み出され、又は各種のリムーバブル記録媒体927に書き込まれてよい。
 接続ポート923は、機器をロボットアーム装置10及び制御装置20に直接接続するためのポートである。接続ポート923の一例として、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)ポート等がある。接続ポート923の別の例として、RS-232Cポート、光オーディオ端子、HDMI(登録商標)(High-Definition Multimedia Interface)ポート等がある。この接続ポート923に外部接続機器929を接続することで、ロボットアーム装置10及び制御装置20は、外部接続機器929から直接各種のデータを取得したり、外部接続機器929に各種のデータを提供したりする。本実施形態においては、アーム部120の駆動制御に関する各種の情報が、接続ポート923を介して、各種の外部接続機器929から読み出され、又は各種の外部接続機器929に書き込まれてよい。
 通信装置925は、例えば、通信網(ネットワーク)931に接続するための通信デバイス等で構成された通信インターフェースである。通信装置925は、例えば、有線若しくは無線LAN(Local Area Network)、Bluetooth(登録商標)又はWUSB(Wireless USB)用の通信カード等である。また、通信装置925は、光通信用のルータ、ADSL(Asymmetric Digital Subscriber Line)用のルータ又は各種通信用のモデム等であってもよい。この通信装置925は、例えば、インターネットや他の通信機器との間で、例えばTCP/IP等の所定のプロトコルに則して信号等を送受信することができる。また、通信装置925に接続される通信網931は、有線又は無線によって接続されたネットワーク等により構成され、例えば、インターネット、家庭内LAN、赤外線通信、ラジオ波通信又は衛星通信等であってもよい。本実施形態においては、アーム部120の駆動制御に関する各種の情報が、通信装置925によって、通信網931を介して外部の他の機器との間で相互に送受信されてもよい。
 以上、本開示の実施形態に係るロボットアーム装置10及び制御装置20の機能を実現可能なハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用するハードウェア構成を変更することが可能である。なお、図14では図示しないが、ロボットアーム装置10は、図1及び図9に示すアーム部120に対応する各種の構成を当然備える。
 なお、上述のような本実施形態に係るロボットアーム装置10、制御装置20及び表示装置30の各機能を実現するためのコンピュータプログラムを作製し、パーソナルコンピュータ等に実装することが可能である。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリなどである。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信してもよい。
 <7.補足>
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
 なお、以下のような構成も本開示の技術的範囲に属する。
(1)複数のリンクが関節部によって互いに連結されて構成され、撮像部が接続可能なアーム部と、前記関節部の各々を協調させて駆動させることにより前記アーム部の駆動を制御する駆動制御部と、を備え、前記駆動制御部は、前記アーム部の状態と、前記撮像部と基準位置との距離情報と、に基づく、前記アーム部に対する前記基準位置の相対位置情報を用いて、前記基準位置が前記撮像部の光軸上に位置するように前記アーム部の駆動を制御する、ロボットアーム装置。
(2)前記駆動制御部は、複数の前記関節部の状態に基づいて取得される前記アーム部の状態に基づく、前記アーム部の協調制御のための制御値に基づいて前記関節部の駆動を制御する、前記(1)に記載のロボットアーム装置
(3)前記駆動制御部は、検出された複数の前記関節部の状態に基づいて取得される前記アーム部の状態と、前記アーム部の運動目的及び拘束条件と、を用いた一般化逆動力学による前記アーム部の全身協調制御のための制御値、に基づいて前記関節部の駆動を制御する、前記(2)に記載のロボットアーム装置。
(4)前記制御値は、前記アーム部に作用する力と前記アーム部に発生する加速度との関係を記述する操作空間において前記運動目的を達成するために作用される仮想力と、前記拘束条件に基づいて前記仮想力が前記関節部を駆動するための実在力と、に基づいて算出される、前記(3)に記載のロボットアーム装置。
(5)前記駆動制御部は、前記制御値に対して外乱の影響を補正することにより算出される指令値、に基づいて前記関節部の駆動を制御する、前記(2)~(4)のいずれか1項に記載のロボットアーム装置。
(6)前記指令値は、検出された前記関節部の状態に基づいて推定される前記関節部の駆動に対する外乱の影響を表す外乱推定値を用いて、前記制御値を補正することにより算出される、前記(5)に記載のロボットアーム装置。
(7)前記駆動制御部は、前記撮像部の光軸上に前記基準位置が位置するという拘束条件に基づいて前記関節部の駆動を制御することにより、前記撮像部が前記基準位置を向いた状態で前記基準位置を頂点とするピボット動作を行うように、前記アーム部の駆動を制御する、前記(2)~(6)のいずれか1項に記載のロボットアーム装置。
(8)前記駆動制御部は、前記撮像部の光軸上の所定の点が前記基準位置に固定されるという拘束条件に基づいて前記関節部の駆動を制御することにより、前記撮像部が前記基準位置を向いた状態で前記基準位置を中心とするピボット動作を行うように、前記アーム部の駆動を制御する、前記(2)~(6)のいずれか1項に記載のロボットアーム装置。
(9)前記駆動制御部は、前記アーム部の位置及び姿勢が固定されるという拘束条件に基づいて前記関節部の駆動を制御することにより、前記撮像部が所定の点を向いた状態で所定の位置で固定される動作を行うように、前記アーム部の駆動を制御する、前記(2)~(6)のいずれか1項に記載のロボットアーム装置。
(10)前記駆動制御部は、ユーザの操作入力に応じて前記アーム部の位置及び姿勢を任意に変更可能なように前記関節部の駆動を制御する、前記(2)~(6)のいずれか1項に記載のロボットアーム装置。
(11)前記駆動制御部は、前記撮像部が前記基準位置を向いた状態で前記基準位置を頂点とするピボット動作と、前記撮像部が所定の点を向いた状態で所定の位置で固定される動作と、ユーザの操作入力に応じて前記アーム部の位置及び姿勢を任意に変更可能な動作と、のいずれかの動作を行うように、前記アーム部の駆動を制御する、前記(2)~(6)のいずれか1項に記載のロボットアーム装置。
(12)前記撮像部と前記基準位置との距離は、前記撮像部の焦点距離に基づいて取得される、前記(1)~(11)のいずれか1項に記載のロボットアーム装置。
(13)複数の前記関節部は、前記関節部の状態を検出する関節状態検出部を有し、前記関節状態検出部は、前記関節部での発生トルク及び前記関節部に外部から加えられる外トルクを検出するトルク検出部と、前記関節部の回転角度を検出する回転角度検出部と、を少なくとも有する、前記(1)~(12)のいずれか1項に記載のロボットアーム装置。
(14)前記制御値は、前記関節部での発生トルクである、前記(2)~(11)のいずれか1項に記載のロボットアーム装置。
(15)前記撮像部を更に備える、前記(1)~(14)のいずれか1項に記載のロボットアーム装置。
(16)前記撮像部は、医療処置に用いられるカメラである、前記(1)~(15)のいずれか1項に記載のロボットアーム装置。
(17)複数のリンクが関節部によって互いに連結されて構成され撮像部が接続可能なアーム部の状態を取得することと、前記撮像部と基準位置との距離情報を取得することと、前記アーム部の状態と前記距離情報とに基づく、前記アーム部に対する前記基準位置の相対位置情報を用いて、前記基準位置が前記撮像部の光軸上に位置するように、前記アーム部の状態に基づいて前記関節部の各々を協調させて駆動させて前記アーム部の駆動を制御することと、を含む、ロボットアーム制御方法。
(18)コンピュータのプロセッサに、複数のリンクが関節部によって互いに連結されて構成され撮像部が接続可能なアーム部の状態を取得する機能と、前記撮像部と基準位置との距離情報を取得する機能と、前記アーム部の状態と前記距離情報とに基づく、前記アーム部に対する前記基準位置の相対位置情報を用いて、前記基準位置が前記撮像部の光軸上に位置するように、前記アーム部の状態に基づいて前記関節部の各々を協調させて駆動させて前記アーム部の駆動を制御する機能と、を実現させる、プログラム。
 1  ロボットアーム制御システム
 10  ロボットアーム装置
 20  制御装置
 30  表示装置
 110  アーム制御部
 111  駆動制御部
 120  アーム部
 130  関節部
 131  関節駆動部
 132  回転角度検出部
 133  トルク検出部
 135  関節制御部
 140  撮像部
 210  入力部
 220  記憶部
 230  制御部
 240  全身協調制御部
 241  アーム状態取得部
 242  演算条件設定部
 243  仮想力算出部
 244  実在力算出部
 250  理想関節制御部
 251  外乱推定部
 252  指令値算出部
 260  基準位置導出部
 261  距離情報取得部
 262  相対位置算出部

Claims (18)

  1.  複数のリンクが関節部によって互いに連結されて構成され、撮像部が接続可能なアーム部と、
     前記関節部の各々を協調させて駆動させることにより前記アーム部の駆動を制御する駆動制御部と、
     を備え、
     前記駆動制御部は、前記アーム部の状態と、前記撮像部と基準位置との距離情報と、に基づく、前記アーム部に対する前記基準位置の相対位置情報を用いて、前記基準位置が前記撮像部の光軸上に位置するように前記アーム部の駆動を制御する、
     ロボットアーム装置。
  2.  前記駆動制御部は、複数の前記関節部の状態に基づいて取得される前記アーム部の状態に基づく、前記アーム部の協調制御のための制御値に基づいて前記関節部の駆動を制御する、
     請求項1に記載のロボットアーム装置。
  3.  前記駆動制御部は、検出された複数の前記関節部の状態に基づいて取得される前記アーム部の状態と、前記アーム部の運動目的及び拘束条件と、を用いた一般化逆動力学による前記アーム部の全身協調制御のための制御値、に基づいて前記関節部の駆動を制御する、
     請求項2に記載のロボットアーム装置。
  4.  前記制御値は、前記アーム部に作用する力と前記アーム部に発生する加速度との関係を記述する操作空間において前記運動目的を達成するために作用される仮想力と、前記拘束条件に基づいて前記仮想力が前記関節部を駆動するための実在力と、に基づいて算出される、
     請求項3に記載のロボットアーム装置。
  5.  前記駆動制御部は、前記制御値に対して外乱の影響を補正することにより算出される指令値、に基づいて前記関節部の駆動を制御する、
     請求項2に記載のロボットアーム装置。
  6.  前記指令値は、検出された前記関節部の状態に基づいて推定される前記関節部の駆動に対する外乱の影響を表す外乱推定値を用いて、前記制御値を補正することにより算出される、
     請求項5に記載のロボットアーム装置。
  7.  前記駆動制御部は、前記撮像部の光軸上に前記基準位置が位置するという拘束条件に基づいて前記関節部の駆動を制御することにより、前記撮像部が前記基準位置を向いた状態で前記基準位置を頂点とするピボット動作を行うように、前記アーム部の駆動を制御する、
     請求項2に記載のロボットアーム装置。
  8.  前記駆動制御部は、前記撮像部の光軸上の所定の点が前記基準位置に固定されるという拘束条件に基づいて前記関節部の駆動を制御することにより、前記撮像部が前記基準位置を向いた状態で前記基準位置を中心とするピボット動作を行うように、前記アーム部の駆動を制御する、
     請求項2に記載のロボットアーム装置。
  9.  前記駆動制御部は、前記アーム部の位置及び姿勢が固定されるという拘束条件に基づいて前記関節部の駆動を制御することにより、前記撮像部が所定の点を向いた状態で所定の位置で固定される動作を行うように、前記アーム部の駆動を制御する、
     請求項2に記載のロボットアーム装置。
  10.  前記駆動制御部は、ユーザの操作入力に応じて前記アーム部の位置及び姿勢を任意に変更可能なように前記関節部の駆動を制御する、
     請求項2に記載のロボットアーム装置。
  11.  前記駆動制御部は、
     前記撮像部が前記基準位置を向いた状態で前記基準位置を頂点とするピボット動作と、
     前記撮像部が所定の点を向いた状態で所定の位置で固定される動作と、
     ユーザの操作入力に応じて前記アーム部の位置及び姿勢を任意に変更可能な動作と、
     のいずれかの動作を行うように、前記アーム部の駆動を制御する、
     請求項2に記載のロボットアーム装置。
  12.  前記撮像部と前記基準位置との距離は、前記撮像部の焦点距離に基づいて取得される、
     請求項1に記載のロボットアーム装置。
  13.  複数の前記関節部は、前記関節部の状態を検出する関節状態検出部を有し、
     前記関節状態検出部は、
     前記関節部での発生トルク及び前記関節部に外部から加えられる外トルクを検出するトルク検出部と、
     前記関節部の回転角度を検出する回転角度検出部と、
     を少なくとも有する、
     請求項1に記載のロボットアーム装置。
  14.  前記制御値は、前記関節部での発生トルクである、
     請求項2に記載のロボットアーム装置。
  15.  前記撮像部を更に備える、
     請求項1に記載のロボットアーム装置。
  16.  前記撮像部は、医療処置に用いられるカメラである、
     請求項1に記載のロボットアーム装置。
  17.  複数のリンクが関節部によって互いに連結されて構成され撮像部が接続可能なアーム部の状態を取得することと、
     前記撮像部と基準位置との距離情報を取得することと、
     前記アーム部の状態と前記距離情報とに基づく、前記アーム部に対する前記基準位置の相対位置情報を用いて、前記基準位置が前記撮像部の光軸上に位置するように、前記アーム部の状態に基づいて前記関節部の各々を協調させて駆動させて前記アーム部の駆動を制御することと、
     を含む、ロボットアーム制御方法。
  18.  コンピュータのプロセッサに、
     複数のリンクが関節部によって互いに連結されて構成され撮像部が接続可能なアーム部の状態を取得する機能と、
     前記撮像部と基準位置との距離情報を取得する機能と、
     前記アーム部の状態と前記距離情報とに基づく、前記アーム部に対する前記基準位置の相対位置情報を用いて、前記基準位置が前記撮像部の光軸上に位置するように、前記アーム部の状態に基づいて前記関節部の各々を協調させて駆動させて前記アーム部の駆動を制御する機能と、
     を実現させる、プログラム。
PCT/JP2015/053876 2014-02-28 2015-02-12 ロボットアーム装置、ロボットアーム制御方法及びプログラム WO2015129474A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201580009570.XA CN106061427B (zh) 2014-02-28 2015-02-12 机器人臂设备、机器人臂控制方法和程序
US15/119,671 US10561469B2 (en) 2014-02-28 2015-02-12 Robot arm apparatus and robot arm control method
EP15754874.4A EP3135444B1 (en) 2014-02-28 2015-02-12 Robot arm apparatus, robot arm control method, and program
JP2016505143A JP6614130B2 (ja) 2014-02-28 2015-02-12 手術用ロボットアーム装置、手術用ロボットアーム制御方法及びプログラム
US16/743,104 US11633245B2 (en) 2014-02-28 2020-01-15 Robot arm apparatus and robot arm control method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014038654 2014-02-28
JP2014-038654 2014-02-28

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US15/119,671 A-371-Of-International US10561469B2 (en) 2014-02-28 2015-02-12 Robot arm apparatus and robot arm control method
US16/743,104 Continuation US11633245B2 (en) 2014-02-28 2020-01-15 Robot arm apparatus and robot arm control method

Publications (1)

Publication Number Publication Date
WO2015129474A1 true WO2015129474A1 (ja) 2015-09-03

Family

ID=54008797

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/053876 WO2015129474A1 (ja) 2014-02-28 2015-02-12 ロボットアーム装置、ロボットアーム制御方法及びプログラム

Country Status (5)

Country Link
US (2) US10561469B2 (ja)
EP (1) EP3135444B1 (ja)
JP (1) JP6614130B2 (ja)
CN (1) CN106061427B (ja)
WO (1) WO2015129474A1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105690402A (zh) * 2016-04-12 2016-06-22 上海应用技术学院 一种服务机器人的臂部结构及其控制方法
WO2017082047A1 (ja) * 2015-11-13 2017-05-18 オリンパス株式会社 内視鏡システム
JP2017113343A (ja) * 2015-12-25 2017-06-29 ソニー株式会社 医療用撮像装置及び手術ナビゲーションシステム
JP2019165839A (ja) * 2018-03-22 2019-10-03 株式会社デンソー 治療装置
JP2020520745A (ja) * 2017-05-25 2020-07-16 コヴィディエン リミテッド パートナーシップ 自動誘導付きロボット外科システム
JP2021118912A (ja) * 2016-01-11 2021-08-12 カール・ツアイス・メディテック・アーゲー トルク補償用スタンドおよび方法

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10383765B2 (en) 2012-04-24 2019-08-20 Auris Health, Inc. Apparatus and method for a global coordinate system for use in robotic surgery
US10499999B2 (en) 2014-10-09 2019-12-10 Auris Health, Inc. Systems and methods for aligning an elongate member with an access site
EP3302335A4 (en) 2015-06-03 2019-02-20 Covidien LP OFFSET INSTRUMENT DRIVE UNIT
JP6704255B2 (ja) * 2016-01-19 2020-06-03 ソニー・オリンパスメディカルソリューションズ株式会社 医療用観察装置、医療用観察システム及び画揺れ補正方法
US10667723B2 (en) 2016-02-19 2020-06-02 Covidien Lp Systems and methods for video-based monitoring of vital signs
WO2017169649A1 (ja) * 2016-03-28 2017-10-05 ソニー・オリンパスメディカルソリューションズ株式会社 医療用観察装置、駆動制御方法、医療用観察システム及び支持アーム装置
EP3542973B1 (en) * 2016-11-17 2021-09-22 Fuji Corporation Work robot and work position correction method
US10917543B2 (en) * 2017-04-24 2021-02-09 Alcon Inc. Stereoscopic visualization camera and integrated robotics platform
KR102558063B1 (ko) 2017-06-28 2023-07-25 아우리스 헬스, 인코포레이티드 전자기장 생성기 정렬
US11395703B2 (en) 2017-06-28 2022-07-26 Auris Health, Inc. Electromagnetic distortion detection
US10464209B2 (en) 2017-10-05 2019-11-05 Auris Health, Inc. Robotic system with indication of boundary for robotic arm
US10016900B1 (en) 2017-10-10 2018-07-10 Auris Health, Inc. Surgical robotic arm admittance control
WO2019087904A1 (ja) * 2017-11-01 2019-05-09 ソニー株式会社 手術アームシステム及び手術アーム制御システム
EP3681394A1 (en) 2017-11-13 2020-07-22 Covidien LP Systems and methods for video-based monitoring of a patient
CN111565638B (zh) 2018-01-08 2023-08-15 柯惠有限合伙公司 用于基于视频的非接触式潮气容积监测的系统和方法
JP7079123B2 (ja) * 2018-03-15 2022-06-01 キヤノン株式会社 撮像装置及びその制御方法、撮像システム
CN108789404B (zh) * 2018-05-25 2021-06-18 哈尔滨工程大学 一种基于视觉的串联机器人运动学参数标定方法
EP3806727A1 (en) * 2018-06-15 2021-04-21 Covidien LP Systems and methods for video-based patient monitoring during surgery
CN112584753A (zh) 2018-08-09 2021-03-30 柯惠有限合伙公司 基于视频的患者监测系统以及用于检测和监测呼吸的相关方法
WO2020075423A1 (ja) * 2018-10-10 2020-04-16 ソニー株式会社 ロボット制御装置、ロボット制御方法及びロボット制御プログラム
CN109330544A (zh) * 2018-11-16 2019-02-15 中国医学科学院北京协和医院 一种腔镜支架及腔镜系统
US11617520B2 (en) 2018-12-14 2023-04-04 Covidien Lp Depth sensing visualization modes for non-contact monitoring
US20200231082A1 (en) * 2019-01-21 2020-07-23 Kevin Arnold Morran Remote controlled lighting apparatus
US11315275B2 (en) 2019-01-28 2022-04-26 Covidien Lp Edge handling methods for associated depth sensing camera devices, systems, and methods
EP3975907A4 (en) * 2019-06-03 2023-06-21 Covidien LP EXTERNAL TORQUE OBSERVATION AND COMPENSATION SYSTEM AND APPARATUS FOR SURGICAL ROBOTIC ARM
EP3753520A1 (de) 2019-06-19 2020-12-23 Karl Storz SE & Co. KG Medizinische handhabungsvorrichtung zur steuerung einer handhabungsvorrichtung
US11625107B2 (en) * 2019-06-27 2023-04-11 Intuitive Surgical Operations, Inc. System and method for motion mode management
KR20220056220A (ko) 2019-09-03 2022-05-04 아우리스 헬스, 인코포레이티드 전자기 왜곡 검출 및 보상
CN110557568B (zh) * 2019-09-05 2021-04-09 昭世(北京)科技有限公司 一种基于人工智能模块的摄影设备结构及方法
US11484208B2 (en) 2020-01-31 2022-11-01 Covidien Lp Attached sensor activation of additionally-streamed physiological parameters from non-contact monitoring systems and associated devices, systems, and methods
CN111714210B (zh) * 2020-06-30 2024-02-13 深圳市精锋医疗科技股份有限公司 手术机器人及其控制装置、控制方法
CN113855286B (zh) * 2021-09-24 2023-01-10 四川锋准机器人科技有限公司 一种种植牙机器人导航系统及方法
CN116919330B (zh) * 2023-09-19 2023-12-29 北京大学第三医院(北京大学第三临床医学院) 一种纤维支气管镜

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001300875A (ja) * 2000-04-19 2001-10-30 Denso Corp ロボットシステム
JP2009028851A (ja) * 2007-07-27 2009-02-12 Nachi Fujikoshi Corp ロボット制御装置
WO2009110242A1 (ja) * 2008-03-06 2009-09-11 パナソニック株式会社 マニピュレータおよびその制御方法
JP2010228064A (ja) * 2009-03-27 2010-10-14 National Institute Of Advanced Industrial Science & Technology 福祉用ロボット装置のロボットアーム操作方法、ロボットアーム操作プログラム、及び、記録媒体
JP2012081568A (ja) * 2010-10-14 2012-04-26 Sony Corp ロボットの制御装置及び制御方法、並びにコンピューター・プログラム
JP2012091280A (ja) * 2010-10-27 2012-05-17 Mitsubishi Electric Corp 座標系校正方法及びロボットシステム
WO2012087929A2 (en) * 2010-12-21 2012-06-28 Restoration Robotics, Inc. Methods and systems for directing movement of a tool in hair transplantation procedures
WO2013132501A1 (en) * 2012-03-07 2013-09-12 M.S.T. Medical Surgery Technologies Ltd. Overall endoscopic control system

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6290703A (ja) * 1985-10-17 1987-04-25 Nissan Motor Co Ltd ロボツト制御装置
JPH0544011A (ja) 1991-08-07 1993-02-23 Toyota Motor Corp 硬質無機薄膜形成方法
JP2000115809A (ja) * 1998-09-29 2000-04-21 Mitsubishi Heavy Ind Ltd 三次元表示マンマシン・システム
US6493608B1 (en) * 1999-04-07 2002-12-10 Intuitive Surgical, Inc. Aspects of a control system of a minimally invasive surgical apparatus
JP3421608B2 (ja) * 1999-04-08 2003-06-30 ファナック株式会社 教示モデル生成装置
US8004229B2 (en) * 2005-05-19 2011-08-23 Intuitive Surgical Operations, Inc. Software center and highly configurable robotic systems for surgery and other uses
US8768516B2 (en) * 2009-06-30 2014-07-01 Intuitive Surgical Operations, Inc. Control of medical robotic system manipulator about kinematic singularities
JP4032410B2 (ja) * 2001-11-09 2008-01-16 ソニー株式会社 情報処理システムおよび情報処理方法、プログラムおよび記録媒体、並びに情報処理装置
EP1327421B1 (de) 2001-12-18 2004-03-10 BrainLAB AG Projektion von Patientenbilddaten aus Durchleuchtungs- bzw. Schichtbilderfassungsverfahren auf Videobilder
JP3766805B2 (ja) * 2002-03-15 2006-04-19 株式会社日立製作所 手術支援装置
US6940891B2 (en) * 2002-10-28 2005-09-06 Metron Systems, Inc. High precision optical imaging systems and related systems
JP4064323B2 (ja) 2003-09-08 2008-03-19 オリンパス株式会社 手術用顕微鏡装置
JP2006293624A (ja) * 2005-04-08 2006-10-26 Mitsubishi Electric Corp 多軸制御装置
US7706683B2 (en) * 2005-05-31 2010-04-27 Brainlab Ag Self adjusting operation lamp system
US7907166B2 (en) * 2005-12-30 2011-03-15 Intuitive Surgical Operations, Inc. Stereo telestration for robotic surgery
CN201239247Y (zh) * 2008-08-04 2009-05-20 苏州捷美医疗器械有限公司 医用显微镜的照明系统
JP2010082188A (ja) * 2008-09-30 2010-04-15 Olympus Corp 手術マニピュレータシステム
JP5093058B2 (ja) * 2008-11-04 2012-12-05 株式会社デンソーウェーブ ロボットの座標の結合方法
US9492927B2 (en) * 2009-08-15 2016-11-15 Intuitive Surgical Operations, Inc. Application of force feedback on an input device to urge its operator to command an articulated instrument to a preferred pose
JP5571432B2 (ja) * 2010-03-30 2014-08-13 カール シュトルツ ゲゼルシャフト ミット ベシュレンクテル ハフツング ウント コンパニー コマンディートゲゼルシャフト 医療用ロボットシステム
US9498231B2 (en) * 2011-06-27 2016-11-22 Board Of Regents Of The University Of Nebraska On-board tool tracking system and methods of computer assisted surgery
JP5902425B2 (ja) * 2011-09-21 2016-04-13 株式会社東芝 ロボット制御装置、外乱判定方法およびアクチュエータ制御方法
EP2863827B1 (en) * 2012-06-21 2022-11-16 Globus Medical, Inc. Surgical robot platform
JP6128767B2 (ja) * 2012-07-05 2017-05-17 キヤノン株式会社 ロボット制御装置、及びロボット制御方法
KR20230156801A (ko) * 2012-08-03 2023-11-14 스트리커 코포레이션 로봇 수술을 위한 시스템 및 방법
WO2014139023A1 (en) * 2013-03-15 2014-09-18 Synaptive Medical (Barbados) Inc. Intelligent positioning system and methods therefore
US9827054B2 (en) * 2014-03-14 2017-11-28 Synaptive Medical (Barbados) Inc. Intelligent positioning system and methods therefore
US20150039517A1 (en) 2013-08-05 2015-02-05 Mozido, Inc. Cloud entertainment platform

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001300875A (ja) * 2000-04-19 2001-10-30 Denso Corp ロボットシステム
JP2009028851A (ja) * 2007-07-27 2009-02-12 Nachi Fujikoshi Corp ロボット制御装置
WO2009110242A1 (ja) * 2008-03-06 2009-09-11 パナソニック株式会社 マニピュレータおよびその制御方法
JP2010228064A (ja) * 2009-03-27 2010-10-14 National Institute Of Advanced Industrial Science & Technology 福祉用ロボット装置のロボットアーム操作方法、ロボットアーム操作プログラム、及び、記録媒体
JP2012081568A (ja) * 2010-10-14 2012-04-26 Sony Corp ロボットの制御装置及び制御方法、並びにコンピューター・プログラム
JP2012091280A (ja) * 2010-10-27 2012-05-17 Mitsubishi Electric Corp 座標系校正方法及びロボットシステム
WO2012087929A2 (en) * 2010-12-21 2012-06-28 Restoration Robotics, Inc. Methods and systems for directing movement of a tool in hair transplantation procedures
WO2013132501A1 (en) * 2012-03-07 2013-09-12 M.S.T. Medical Surgery Technologies Ltd. Overall endoscopic control system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3135444A4 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017082047A1 (ja) * 2015-11-13 2017-05-18 オリンパス株式会社 内視鏡システム
JP2017113343A (ja) * 2015-12-25 2017-06-29 ソニー株式会社 医療用撮像装置及び手術ナビゲーションシステム
CN108366833A (zh) * 2015-12-25 2018-08-03 索尼公司 手术信息处理设备和方法
CN108366833B (zh) * 2015-12-25 2021-10-12 索尼公司 手术信息处理设备和方法
JP2021118912A (ja) * 2016-01-11 2021-08-12 カール・ツアイス・メディテック・アーゲー トルク補償用スタンドおよび方法
JP7241799B2 (ja) 2016-01-11 2023-03-17 カール・ツアイス・メディテック・アーゲー トルク補償用スタンドおよび方法
CN105690402A (zh) * 2016-04-12 2016-06-22 上海应用技术学院 一种服务机器人的臂部结构及其控制方法
JP2020520745A (ja) * 2017-05-25 2020-07-16 コヴィディエン リミテッド パートナーシップ 自動誘導付きロボット外科システム
US11839441B2 (en) 2017-05-25 2023-12-12 Covidien Lp Robotic surgical system with automated guidance
JP2019165839A (ja) * 2018-03-22 2019-10-03 株式会社デンソー 治療装置
JP7086381B2 (ja) 2018-03-22 2022-06-20 ソニア・セラピューティクス株式会社 治療装置

Also Published As

Publication number Publication date
US20200146762A1 (en) 2020-05-14
CN106061427A (zh) 2016-10-26
JPWO2015129474A1 (ja) 2017-03-30
US20170007342A1 (en) 2017-01-12
EP3135444A1 (en) 2017-03-01
EP3135444A4 (en) 2017-11-15
CN106061427B (zh) 2020-10-27
EP3135444B1 (en) 2022-04-13
US10561469B2 (en) 2020-02-18
US11633245B2 (en) 2023-04-25
JP6614130B2 (ja) 2019-12-04

Similar Documents

Publication Publication Date Title
JP6614130B2 (ja) 手術用ロボットアーム装置、手術用ロボットアーム制御方法及びプログラム
JP6272885B2 (ja) 医療用ロボットアーム装置、医療用ロボットアーム制御システム、医療用ロボットアーム制御方法及びプログラム
JP6555248B2 (ja) 医療用アーム装置、キャリブレーション方法及びプログラム
JP6586079B2 (ja) アーム装置、及びプログラム
JP6773165B2 (ja) 医療用支持アーム装置、医療用支持アーム制御方法及びプログラム
WO2017169096A1 (ja) 医療用支持アームの制御装置、医療用支持アーム装置の制御方法及び医療用システム
WO2015133291A1 (ja) アクチュエータ及びロボットアーム装置
WO2015137040A1 (ja) ロボットアーム装置、ロボットアーム制御方法及びプログラム
WO2017169082A1 (ja) 制御装置及び制御方法
WO2018221035A1 (ja) 医療用支持アームシステム、医療用支持アームの制御方法、および医療用支持アームの制御装置
WO2015137140A1 (ja) ロボットアームの制御装置、ロボットアームの制御方法及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15754874

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2016505143

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15119671

Country of ref document: US

REEP Request for entry into the european phase

Ref document number: 2015754874

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2015754874

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE