WO2021117701A1 - マスタスレーブシステム及び制御方法 - Google Patents

マスタスレーブシステム及び制御方法 Download PDF

Info

Publication number
WO2021117701A1
WO2021117701A1 PCT/JP2020/045599 JP2020045599W WO2021117701A1 WO 2021117701 A1 WO2021117701 A1 WO 2021117701A1 JP 2020045599 W JP2020045599 W JP 2020045599W WO 2021117701 A1 WO2021117701 A1 WO 2021117701A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
force
posture
command
master
Prior art date
Application number
PCT/JP2020/045599
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 CN202080086306.7A priority Critical patent/CN114829076B/xx
Priority to JP2021563963A priority patent/JP7288521B2/ja
Priority to US17/784,120 priority patent/US20230038804A1/en
Publication of WO2021117701A1 publication Critical patent/WO2021117701A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J3/00Manipulators of master-slave type, i.e. both controlling unit and controlled unit perform corresponding spatial movements
    • B25J3/04Manipulators of master-slave type, i.e. both controlling unit and controlled unit perform corresponding spatial movements involving servo mechanisms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/02Hand grip control means
    • B25J13/025Hand grip control means comprising haptic means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/005Manipulators for mechanical processing tasks
    • B25J11/0065Polishing or grinding
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/02Hand grip control means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/085Force or torque sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1689Teleoperation
    • 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/37Master-slave robots
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40144Force sensation feedback from slave
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40183Tele-machining
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45058Grinding, polishing robot

Definitions

  • This disclosure relates to a master-slave system and a control method.
  • Patent Document 1 discloses an articulated master / slave manipulator that restrains the tip movement of a slave arm within a work range that is limited in advance.
  • the operation control device of the master / slave manipulator performs restraint control that adds a constraint condition that sets the amount of change in an unnecessary direction to 0 to the amount of change in the position and posture of the master arm, thereby moving the slave arm. Restrain.
  • the operation control device determines the vector obtained by projecting the change amount vector of the position and posture of the master arm onto the vector of the constraint condition as the change amount vector of the position and posture of the slave arm.
  • the slave arm performs an operation corresponding to the amount of change in the position and posture of the slave arm obtained by adding a constraint condition to the amount of change in the position and posture of the master arm. Therefore, the state of the master arm such as the position and the posture may not be the same as the state of the slave arm such as the position and the posture. In this case, there is a difference between the state of the slave arm that the operator feels from the state of the master arm and the actual state of the slave arm, and the operator may not be able to operate the slave arm as intended.
  • An object of the present disclosure is to provide a master-slave system and a control method capable of regulating the operation of a slave device while maintaining the state of the master device and the state of the slave device in the same state.
  • the master-slave system is an operation detection unit that detects and outputs operation information, which is information input by applying a force to the operation end and the operation end.
  • a master device including a force applying unit for applying a force to the operation end, a slave device including an acting unit for applying an action to an object and an operating unit for moving the acting unit, and a control device.
  • the control device outputs a command for causing the acting unit to perform an operation in which the restricting condition is reflected by the operating unit in accordance with the restricting condition for restricting the predetermined movement of the operating unit and the operation information.
  • a second unit that outputs a command for causing the force applying unit to apply a force to the operation end that opposes an input to the operation end that commands the predetermined movement of the action unit according to the unit and the regulation condition. Includes command section.
  • FIG. 1 is a schematic view showing an example of a robot system according to an embodiment.
  • FIG. 2 is a side view showing an example of the configuration of the end effector according to the embodiment.
  • FIG. 3 is a side view showing an example of the detection shaft of the force sensor of the end effector of FIG.
  • FIG. 4 is a perspective view showing an example of the configuration of the operation device of the operation input device according to the embodiment.
  • FIG. 5 is a perspective view showing an example of a detection shaft of the force sensor of the operating device of FIG.
  • FIG. 6 is a block diagram showing an example of the functional configuration of the robot system according to the embodiment.
  • FIG. 7 is a block diagram showing an example of the hardware configuration of the control device according to the embodiment.
  • FIG. 1 is a schematic view showing an example of a robot system according to an embodiment.
  • FIG. 2 is a side view showing an example of the configuration of the end effector according to the embodiment.
  • FIG. 3 is a side view showing an example of the detection shaft of
  • FIG. 8 is a flowchart showing an example of the operation of the robot system according to the embodiment in the regulation mode.
  • FIG. 9 is a flowchart showing an example of an operation of shifting the end effector of the robot system according to the embodiment to the basic posture.
  • FIG. 10 is a side view showing an example of an obstacle in the transition during the transition of the end effector to the basic posture.
  • FIG. 11 is a side view showing an example of the avoidance operation during the transition of the end effector to the basic posture.
  • the master-slave system applies a force to an operation end, an operation detection unit that detects and outputs operation information which is information input by applying a force to the operation end, and an operation detection unit. It includes a master device including a force applying unit, a slave device including an action unit that applies an action to an object and an operation unit that moves the action unit, and a control device, and the control device is a control device of the action unit.
  • the first command unit that outputs a command for the operating unit to perform an operation in which the restricting condition is reflected by the operating unit according to the restricting condition for restricting the predetermined movement and the operation information, and according to the restricting condition.
  • the control device operates the action unit according to the operation information while restricting the predetermined movement of the action unit according to the regulation conditions. Further, the control device regulates the input to the operation end that commands a predetermined movement of the action unit by applying a force to the operation end. Therefore, while the state of the master device and the state of the slave device are maintained in the same state, the slave device performs an operation reflecting the regulation conditions.
  • the first and second command units may output operation commands, control commands, and the like as commands.
  • the slave device can move the position and posture of the action unit by the moving unit, and the operating end can be moved so as to change the position and posture.
  • the regulation condition may be a condition for restricting the movement of the posture of the action unit as the predetermined movement.
  • the control device operates the acting unit while restricting the movement of the posture of the acting unit. Further, the control device regulates the movement of the posture of the operating end corresponding to the movement of the posture of the regulated acting unit. Therefore, while the posture of the master device and the posture of the slave device are maintained in the same posture, the slave device performs an operation reflecting the regulation conditions.
  • the operation detection unit may detect the direction and magnitude of the force applied to the operation end as the operation information.
  • the command of the direction and magnitude of the force applied to the operating end can be converted into the command of the moving direction, the moving speed and the acting force in the moving direction of the acting unit. Therefore, the operator can control the operation of the action unit by applying a force to the operation end.
  • the operation detection unit may detect the magnitude of the force applied to the operation end in the three-axis direction and the moment of the force around the three axes as the operation information. ..
  • the command of the magnitude of the force applied in the three-axis direction to the operating end can be converted into the command of the moving speed and the acting force of the acting portion in the three-axis direction.
  • the command of the moment of force applied to the operation end around the three axes can be converted into the command of the rotational speed and the rotational force of the acting portion around the three axes. Therefore, the operator can control the position and posture of the working portion by applying a force to the operating end.
  • the regulation condition is a condition that regulates the movement of the posture of the action unit corresponding to the moment of force around the three axes of the operation information as the predetermined movement.
  • the control device regulates the moment of force around the three axes included in the operation information according to the regulation conditions, and outputs a command using the regulation operation information to move the posture of the action unit.
  • the operation that reflects the regulation can be made to the slave device.
  • the acting unit may include a grinding device
  • the operating unit may include a robot arm.
  • the posture of the grinding wheel of the grinding device is preferably a predetermined posture with respect to the object to be ground.
  • the control device can freely control the posture of the grinding wheel by using the robot arm to obtain a predetermined posture.
  • the control device further includes a reception unit that receives a transition command for shifting the posture of the action unit to a predetermined posture, and the reception unit receives the transition command. Then, the first command unit may output a command for changing the posture of the action unit to the predetermined posture.
  • the control device shifts the posture of the acting unit to a predetermined posture according to the shift command.
  • the predetermined posture may be a preferable posture or a basic posture of the working part. Then, the transition of the posture of the action unit as described above does not require an operation using the operation end, and can be easily executed.
  • the force applying unit is connected to the operating end so that the operating end can be moved by the force applied by the force applying unit, and the receiving unit shifts to the operating end.
  • the second command unit Upon receiving the command, the second command unit further outputs a command for causing the force applying unit to apply a force to the operation end that causes the posture of the operation end to correspond to the predetermined posture. May be good.
  • the control device shifts the posture of the working portion to a predetermined posture and shifts the posture of the operating end to a posture corresponding to the predetermined posture of the working portion in accordance with the shift command. Therefore, it is possible to obtain the desired posture while making the postures of both the working portion and the operating end correspond to each other.
  • the slave device further includes a force detection unit that detects a force received by the action unit from the object, and the first command unit is the predetermined unit of the action unit.
  • the force detecting unit detects a force during the transition to the posture of
  • the position of the acting unit may be moved and a command for making the posture of the acting unit into the predetermined posture may be output.
  • the control device moves the position of the action unit so as to avoid contact, collision, etc., for example.
  • the posture of the working part can be set to a predetermined posture.
  • the control device may move the position of the working part and shift the posture of the working part in parallel, stop the movement of the posture of the working part, and move the position of the working part.
  • the posture of the working part may be changed after the movement.
  • the control device may start the transition of the posture of the acting unit after the movement of the position of the acting unit is completed, and the transition of the posture of the acting unit is started during the movement of the position of the acting unit, and the movement of the position is started. And the transition of the posture of the acting part may be performed in parallel.
  • the control method is a control method for controlling a slave device operated by a master device, and is information that is input when a force is applied to an operation end of the master device.
  • the operation unit of the slave device issues a command for causing the operation unit to perform an operation reflecting the regulation conditions.
  • FIG. 1 is a schematic view showing an example of the robot system 1 according to the embodiment.
  • the robot system 1 according to the embodiment includes a robot 10, a control device 20, an image pickup device 30, an operation input device 40, and a presentation device 50.
  • the robot system 1 constitutes a master-slave system
  • the robot 10 constitutes a slave device
  • the operation input device 40 constitutes a master device.
  • the control device 20 controls the overall operation of the robot system 1.
  • the control device 20 performs bilateral control between the robot 10 and the operation input device 40.
  • the robot 10 is an industrial robot in this embodiment. Although the robot 10 is fixedly arranged on the base 13, it may be arranged in a movable device such as a transfer device and configured to be movable.
  • the robot 10 includes an end effector 11 as an action unit that applies an action to an object to be processed, and a robot arm 12 as an action unit that moves the end effector 11 so as to execute the action.
  • the end effector 11 is configured to apply a grinding action to the object, and the following description will be given.
  • Such an end effector 11 is provided with a grinding device 11a that grinds an object, and is attached to the tip of a robot arm 12.
  • the action of the end effector 11 is not limited to grinding, and may be any action.
  • the action of the end effector 11 may be an action in which a preferable posture of the end effector 11 exists with respect to the target of action.
  • grinding is a process of removing unnecessary parts of an object to obtain a required size and shape, and a process of scraping the surface of the object to obtain the required dimensions.
  • Grinding which is a process for adjusting the shape and surface roughness
  • polishing which is a process for smoothing the surface of an object.
  • An example of the grinding device 11a is a grinding device that uses electric power or air pressure as a power source, such as a grinder, an orbital sander, a random orbit sander, a delta sander, and a belt sander, but is not limited thereto.
  • the grinder may be a grinder of a type that rotates a disk-shaped grinding wheel, a type that rotates a conical or columnar grinding wheel, or the like.
  • grinding is a process of scraping off an unnecessary portion of the metal object W in the grinding target area WA to smooth the surface of the grinding target area WA.
  • the electric disc grinder is provided with a disk-shaped grinding wheel 11b.
  • An example of an unnecessary portion in the grinding target area WA is a welding mark such as a welding bead of the target object W.
  • the grinding device 11a grinds the welding mark and its surroundings by pressing the rotating grinding wheel 11b against the welding mark or the like in the grinding target area WA.
  • the object W shown in FIG. 1 is the wall of a large tank.
  • the robot arm 12 is not particularly limited as long as it has a configuration capable of changing the position and / or posture of the grinding device 11a at its tip, but in the present embodiment, it is a vertical articulated robot arm.
  • the robot arm 12 may be configured as, for example, a horizontal articulated type, a polar coordinate type, a cylindrical coordinate type, a rectangular coordinate type, or another type of robot arm.
  • the robot arm 12 is fixed to the base 13.
  • the robot arm 12 has joints JT1, JT2, which sequentially rotatably connect the links 12a, 12b, 12c, 12d and 12f arranged in order from the base to the tip and the links 12a, 12b, 12c, 12d and 12f. It includes JT3, JT4, JT5 and JT6, and arm drive devices M1, M2, M3, M4, M5 and M6 that rotationally drive the joints JT1, JT2, JT3, JT4, JT5 and JT6, respectively.
  • the link 12a is attached to the base 13 via the joint JT1.
  • the tip of the link 12f constitutes a mechanical interface and is connected to the end effector 11.
  • the operation of the arm drive devices M1, M2, M3, M4, M5 and M6 is controlled by the control device 20.
  • the arm drive devices M1, M2, M3, M4, M5 and M6 each use electric power as a power source and have a servomotor Ma (see FIG. 6) as an electric motor for driving them, but the present invention is not limited thereto.
  • the number of joints of the robot arm 12 is not limited to 6, and may be 7 or more or 5 or less.
  • FIG. 2 is a side view showing an example of the configuration of the end effector 11 according to the embodiment.
  • FIG. 3 is a side view showing an example of the detection axis of the force sensor 11e of the end effector 11 of FIG.
  • the end effector 11 includes a grinding device 11a, a grinding wheel 11b, a fixture 11c, and a force sensor 11e.
  • the fitting 11c is configured to support the grinding device 11a and be connected to the link 12f, and attaches the grinding device 11a to the link 12f.
  • the force sensor 11e is arranged between the attachment 11c and the link 12f, detects a reaction force acting on the link 12f from the attachment 11c, and outputs the reaction force to the control device 20.
  • the reaction force is a force that the grinding device 11a receives from the object W during the grinding operation.
  • the force sensor 11e is an example of a force detection unit.
  • the force sensor 11e has the forces Fxe, Fye, and Fze in the axial directions of the Xe axis, the Ye axis, and the Ze axis, which are orthogonal to each other, and the Xe axis, the Ye axis, and the Ze axis.
  • Six-axis forces with moments Mxe, Mye, and Mze, which are rotational forces around each axis, are detected.
  • the Ze axis is the same axis as the twist rotation axis S6 of the link 12f, and the positive direction of the Ze axis is the direction from the link 12f toward the end effector 11.
  • the origin Oe is the intersection of the interface surface 12fa forming the mechanical interface of the link 12f and the Ze axis.
  • the Xe axis and the Ye axis are axes extending along the interface surface 12fa.
  • the force sensor 11e is not limited to the sensor that detects the force of the 6 axes, and may be, for example, a sensor that detects some of the forces of the 6 axes.
  • the image pickup device 30 is arranged at the link 12e of the robot arm 12.
  • the image pickup apparatus 30 may include a camera (not shown), and may further include a light source such as an LED (light emission diode) and a strobe for illuminating the subject.
  • the camera of the image pickup apparatus 30 is directed along the axial direction of the twist rotation axis S6 and in the direction toward the end effector 11, and can image the grinding target region WA and its surroundings.
  • the position of the imaging device 30 may be any position as long as it can image the grinding target region WA, and may be a position on the robot arm 12 other than the link 12e or a position outside the robot arm 12.
  • the image pickup device 30 causes the camera to perform an image pickup operation in accordance with the command of the control device 20.
  • the image pickup device 30 sends a signal or the like of an image captured by the camera to the control device 20.
  • the image taken by the camera may be expressed as the image taken by the image pickup apparatus 30.
  • the camera of the image pickup device 30 captures an image for detecting a three-dimensional position or the like which is a position in the three-dimensional space of the subject with respect to the image pickup device 30 such as a distance to the subject.
  • the camera is a camera that captures a digital image, and uses a stereo camera, a monocular camera, a TOF camera (Time-of-Flight-Camera), a pattern light projection camera such as stripe projection, or a light cutting method. It may have the configuration of the existing camera or the like.
  • the camera of the image pickup apparatus 30 is a stereo camera.
  • FIG. 4 is a perspective view showing an example of the configuration of the operation device 400 of the operation input device 40 according to the embodiment.
  • FIG. 5 is a perspective view showing an example of a detection shaft of the force sensor 405 of the operation device 400 of FIG.
  • FIG. 6 is a block diagram showing an example of the functional configuration of the robot system 1 according to the embodiment.
  • the operation input device 40 is arranged away from the robot 10 and receives commands, data, information and the like input by the user P who manages and / or operates the robot system 1. , The command, data, information, etc. are output to the control device 20.
  • the operation input device 40 is connected to the control device 20 via wired communication or wireless communication.
  • the format of wired communication and wireless communication may be any format.
  • the operation input device 40 includes an operation device 400, an input device 410, and an operation control device 420.
  • the operation control device 420 controls the operation of the entire operation input device 40, and transmits / receives information, commands, data, and the like to / from the control device 20.
  • the operation device 400 receives an input for manually operating the robot 10, and outputs operation information, which is the input information, to the operation control device 420. Further, the operation device 400 gives a force such as a reaction force to the operation force to the user P who is operating the operation device 400 under the control of the operation control device 420.
  • the input device 410 receives input of information, commands, data, etc. and outputs it to the operation control device 420.
  • the input device 410 may include known input devices such as levers, buttons, keys, touch panels, joysticks, and motion capture.
  • the input device 410 receives inputs such as the operation of the image pickup device 30, various commands such as a command to set the end effector 11 in a predetermined posture, switching of control modes, information on the object to be ground, and information on the area to be ground.
  • the predetermined posture of the end effector 11 may be the predetermined posture of the end effector 11 with respect to the surface of the grinding target region.
  • the posture of the end effector 11 with respect to the surface of the grinding target region is the posture of the grinding wheel 11b with respect to the surface of the grinding target region.
  • the information on the area to be ground may include information such as the quantity, position, posture, shape and dimensions of the area to be ground.
  • the operating device 400 includes a grip portion 401, a support portion 402, an arm 403, a motor 404, and a force sensor 405.
  • the grip portion 401 is configured to be grippable by the user P.
  • the grip portion 401 has the same shape as the grinder which is the grinding device 11a, but is not limited thereto.
  • the grip portion 401 includes two handle portions 401a and 401b that can be gripped by the user P.
  • the user P operates the robot 10 to perform a grinding operation by moving the grip portion 401 while gripping the handle portions 401a and 401b so as to grip the grinding device 11a and actually grind.
  • the grip portion 401 includes an input portion 401c such as a push button for operating the grinding device 11a and the like.
  • the grip portion 401 is an example of an operating end.
  • the support portion 402 supports the grip portion 401.
  • the support portion 402 is movably supported by six arms 403.
  • the six arms 403 are composed of three pairs.
  • the three pairs of arms 403 extend radially from the support 402 in three directions.
  • Each arm 403 has a joint 403a and is flexible around the joint 403a.
  • One end of each arm 403 is rotatably connected to the support portion 402 around three orthogonal axes via a universal joint such as a ball joint.
  • the other end of each arm 403 is connected to the rotation shaft of the motor 404 arranged on the support base 406 below the support portion 402 via a speed reducer or the like (not shown).
  • the joint 403a of each arm 403 rotatably connects two columnar members constituting the arm 403 around three orthogonal axes via a universal joint such as a ball joint.
  • the six motors 404 are arranged on the support base 406.
  • the six motors 404 are composed of three pairs.
  • the motors 404 of each pair are arranged so that their rotation axes are coaxial, and are connected to the arms 403 of one pair.
  • the three pairs of motors 404 are arranged so that their respective rotation axes constitute each side of the triangle.
  • Each motor 404 is composed of a servo motor or the like.
  • the grip portion 401 as described above can take various positions and postures in the three-dimensional space. Then, each arm 403 operates to rotate each motor 404 according to the position and posture of the grip portion 401. The amount of rotation, that is, the angle of rotation of the six motors 404 corresponding to the position and posture of the grip portion 401 is uniquely determined.
  • the force sensor 405 is arranged between the grip portion 401 and the support portion 402, and detects the force acting between them. As shown in FIG. 5, in the present embodiment, the force sensor 405 has forces Fxc, Fic, and Fzc in the axial directions of the Xc axis, the Yc axis, and the Zc axis, which are orthogonal to each other, and the Xc axis, the Yc axis, and the Zc axis. Six-axis forces with moments Mxc, Myc, and Mzc, which are rotational forces around each axis, are detected.
  • the Zc axis is an axis that passes through the center of the circular contact surface 401d with the force sensor 405 in the grip portion 401 and is perpendicular to the contact surface 401d.
  • the Zc-axis positive direction is the direction from the force sensor 405 toward the grip portion 401.
  • the intersection of the contact surface 401d and the Zc axis is the origin Occ.
  • the Xc axis and the Yc axis are axes extending along the contact surface 401d.
  • the Xc axis, the Yc axis, and the Zc axis are associated with the Xe axis, the Ye axis, and the Ze axis of the force sensor 11e of the end effector 11, respectively.
  • the Xc-axis positive direction may correspond to the Xe-axis negative direction
  • the Yc-axis positive direction may correspond to the Ye-axis positive direction
  • the Zc-axis positive direction may correspond to the Ze-axis negative direction
  • the Xc-axis positive direction may correspond.
  • the direction may correspond to the Xe-axis positive direction
  • the Yc-axis positive direction may correspond to the Ye-axis positive direction
  • the Zc-axis positive direction may correspond to the Ze-axis positive direction.
  • the force sensor 405 is not limited to the sensor that detects the force of the 6 axes, and may be, for example, a sensor that detects some of the forces of the 6 axes.
  • the force sensor 405 is an example of an operation detection unit, and the motor 404 is an example of a force application unit.
  • the control device 20 performs bilateral force sense control so as to correspond the positions, postures, and force states between the operation device 400 and the robot 10.
  • Each motor 404 includes, but is not limited to, a rotation sensor (not shown) such as an encoder that detects the amount of rotation of the rotor of the servomotor, and a current sensor (not shown) that detects the drive current of the servomotor. ..
  • the operation control device 420 uses operation information including a force detection signal (hereinafter, also referred to as “force signal”) of the 6 axes of the force sensor 405 to command a position, a posture, a position, a moving speed of the posture, a force, and the like. It is output to the control device 20 as a command.
  • a force detection signal hereinafter, also referred to as “force signal”
  • the control device 20 provides feedback to the motor 404 to generate a force that applies a detection signal (hereinafter, also referred to as a “rotation signal” and a “current signal”) of the rotation sensor and the current sensor of each motor 404 to the grip portion 401. Used as information.
  • the control device 20 may use the command value of the current supplied to the servomotor by the drive circuit of the servomotor as feedback information.
  • the operation command is an example of operation information.
  • the control device 20 uses operation commands to generate operation commands and the like, which will be described later.
  • the operation command includes commands such as a three-dimensional position, posture, position, movement speed of the posture, and acting force of the end effector 11 according to the operation command.
  • the control device 20 controls the output torque of each motor 404 based on the 6-axis force data indicated by the detection signal of the force sensor 11e of the end effector 11 and the feedback information of the operation device 400. That is, the control device 20 servo-controls the six motors 404.
  • the control device 20 controls the output torque of each motor 404 so as to generate a force to be applied to the grip portion 401.
  • the above-mentioned force is a reaction force corresponding to the force data of the force sensor 11e with respect to the operating force of the gripping portion 401 by the user P, and a force for regulating the movement of the position and / or posture of the gripping portion 401 with respect to the operating force. And so on.
  • the configuration of the operating device 400 is not limited to the configuration shown in FIG. 4, and may be any configuration that can limit the movement of the portion operated by the user P, for example.
  • the configuration of the operating device 400 may be a configuration that restricts the movement of the portion by applying a force to the portion to be operated, or may be a configuration that mechanically restricts the movement of the portion.
  • the operating device 400 may be configured to be composed of a master robot similar to the robot arm 12, and the robot 10 may be configured to be controlled as a slave robot.
  • the operating device 400 may be a joystick or the like.
  • the configuration of the operation device 400 is such that when an operation of applying a force to the grip portion 401 is performed by the user P, the operation information corresponding to the force is detected, but the configuration is not limited to this.
  • the movement amount of the position and posture of the grip portion 401 that moves when a force is applied may be detected as operation information.
  • the movement amount may be detected from the rotation amount of each motor 404.
  • the force applied to the grip portion 401 may be detected from the load of each motor 404.
  • the presentation device 50 presents an image, a sound, and the like for operating the robot system 1 received from the control device 20 to the user P of the robot system 1.
  • Examples of the presentation device 50 include, but are not limited to, a liquid crystal display and an organic or inorganic EL display (Electro-Luminescence Display).
  • the presenting device 50 may include a speaker that emits sound.
  • the presentation device 50 presents the image captured by the image pickup device 30 to the user P who operates the operation input device 40.
  • FIG. 7 is a block diagram showing an example of the hardware configuration of the control device 20 according to the embodiment.
  • the control device 20 includes a CPU (Central Processing Unit) 201, a ROM (Read Only Memory) 202, a RAM (Random Access Memory) 203, a memory 204, and an input / output I / F (interface). : Interface) 205 and 206, driving I / F 207 and 208, and imaging I / F 209 are included as components.
  • Each of the above components is connected via bus, wired or wireless communication. Not all of the above components are essential.
  • the CPU 201 is a processor and controls the entire operation of the control device 20.
  • the ROM 202 is composed of a non-volatile semiconductor memory or the like, and stores a program, data, or the like for causing the CPU 201 to control the operation.
  • the RAM 203 is composed of a volatile semiconductor memory or the like, and temporarily stores a program executed by the CPU 201 and data in the middle of processing or processed.
  • the memory 204 is composed of a semiconductor memory such as a volatile memory and a non-volatile memory, and a storage device such as a hard disk (HDD: Hard Disc Drive) and an SSD (Solid State Drive), and stores various information.
  • HDD Hard Disc Drive
  • SSD Solid State Drive
  • the program for operating the CPU 201 is stored in the ROM 202 or the memory 204 in advance.
  • the CPU 201 reads a program from the ROM 202 or the memory 204 into the RAM 203 and develops the program.
  • the CPU 201 executes each coded instruction in the program expanded in the RAM 203.
  • Each function of the control device 20 may be realized by a computer system including a CPU 201, a ROM 202, a RAM 203, or the like, or may be realized by a dedicated hardware circuit such as an electronic circuit or an integrated circuit, and the computer system and the hardware may be realized. It may be realized by a combination of circuits.
  • Such a control device 20 may be composed of, for example, a microcontroller, an MPU (Micro Processing Unit), an LSI (Large Scale Integration), a system LSI, a PLC (Programmable Logic Controller), a logic circuit, or the like. Good.
  • the plurality of functions of the control device 20 may be realized by being individually integrated into one chip, or may be realized by being integrated into one chip so as to include a part or all of them. Further, each circuit may be a general-purpose circuit or a dedicated circuit.
  • an FPGA Field Programmable Gate Array
  • a reconfigurable processor that can reconfigure the connection and / or setting of circuit cells inside the LSI, or multiple functions for a specific application.
  • An ASIC Application Specific Integrated Circuit
  • ASIC Application Specific Integrated Circuit
  • the image pickup I / F 209 controls the drive of the image pickup element (not shown) of the camera of the image pickup apparatus 30 according to the command of the CPU 201.
  • the image pickup I / F 209 captures the signal of the image captured by the image pickup apparatus 30 into the RAM 203 or the memory 204.
  • a circuit or the like for driving the image pickup device 30 may be provided between the image pickup I / F 209 and the image pickup device 30 inside or outside the control device 20.
  • the first input / output I / F 205 is connected to the operation input device 40 and inputs / outputs signals such as information, data and commands.
  • a circuit or the like for converting and amplifying a signal may be provided between the first input / output I / F 205 and the operation input device 40 inside or outside the control device 20.
  • the second input / output I / F 206 is connected to the presentation device 50 and inputs / outputs signals such as screen data, voice data, information and commands.
  • a circuit or the like for converting and amplifying a signal may be provided between the second input / output I / F 206 and the presenting device 50 inside or outside the control device 20.
  • the first drive I / F 207 is connected to the arm drive devices M1, M2, M3, M4, M5 and M6 of the robot 10 and inputs / outputs signals such as information and commands.
  • An arm drive circuit (not shown) is provided between the first drive I / F 207 inside or outside the control device 20 and the arm drive devices M1, M2, M3, M4, M5 and M6.
  • the arm drive circuit supplies electric power to the servomotors of the arm drive devices M1, M2, M3, M4, M5 and M6 in accordance with the command of the CPU 201 to control the drive of each servomotor.
  • the second drive I / F 208 is connected to the grinding device 11a of the end effector 11 and inputs / outputs signals such as information and commands.
  • a grinding drive circuit (not shown) is provided between the second drive I / F 208 and the grinding device 11a inside or outside the control device 20. The grinding drive circuit supplies electric power to the grinding device 11a and controls the driving of the grinding device 11a in accordance with the command of the CPU 201.
  • the operation control device 420 of the operation input device 40 includes an input processing unit 421 and an operation control unit 422 as functional components.
  • the control device 20 includes an image pickup control unit 20a, an image processing unit 20b and 20c, an operation command unit 20d and 20e, an operation control unit 20f, an operation information processing unit 20g, an attitude determination unit 20h, and an avoidance determination unit 20i.
  • the avoidance route determination unit 20j and the storage unit 20p are included as functional components. Not all of the above functional components are required.
  • the functions of the input processing unit 421 and the operation control unit 422 of the operation control device 420 are realized by a computer system such as a CPU, a hardware circuit, or a combination of the computer system and the hardware circuit.
  • the functions of the functional components other than the storage unit 20p of the control device 20 are realized by the CPU 201 and the like, and the functions of the storage unit 20p are realized by the memory 204, the ROM 202 and / or the RAM 203.
  • the input processing unit 421 of the operation control device 420 outputs information, data, commands, etc. received from the input device 410, the force sensor 405, and the motor 404 to the control device 20.
  • the input processing unit 421 receives a command for the operation of the image pickup device 30, a command for shifting to a predetermined posture, a command for switching the control mode, information on the object to be ground, information on the area to be ground, and the like from the input device 410. To receive.
  • the operation command of the image pickup device 30 includes a command of start of image pickup, end of image pickup, and command of image pickup timing.
  • the command for shifting to a predetermined posture is a command for shifting the posture of the end effector 11 and the grinding device 11a to a preset posture.
  • An example of a predetermined posture is a basic posture for a grinding operation.
  • An example of a command for switching the control mode is a command for switching between a regulated mode that regulates at least a part of the movement of the grip portion 401 of the end effector 11 and the operating device 400 and a non-regulated mode that does not regulate the above.
  • the input processing unit 421 detects the detected value of the force of 6 axes from the force signal of the force sensor 405. Further, the input processing unit 421 outputs the calculation processing value of the 6-axis force detection value or the 6-axis force detection value to the control device 20. For example, the input processing unit 421 generates an operation command for the end effector 11 by arithmetically processing the detected values of the forces of the six axes, and outputs the operation command to the control device 20.
  • the operation commands include an operation position command that commands the amount of change in the position of the end effector 11, the direction of change and the speed of change, the amount of change in posture, the direction of change and the speed of change, and the acting force that the end effector 11 applies to the object. Includes operating force commands that command the size and direction of.
  • the input processing unit 421 receives the detection signals of the rotation sensor and the current sensor from each motor 404, detects the rotation amount and the current value of each motor 404 from the detection signals, and outputs the feedback information to the control device 20.
  • the operation control unit 422 controls the drive of each motor 404. Specifically, the operation control unit 422 receives an operation command including an operation drive command and / or an operation regulation command from the second operation command unit 20e of the control device 20. The operation control unit 422 generates torque such as a rotational load (also referred to as “load torque”) in each motor 404 in accordance with the above operation command. This rotational load acts as a force that opposes the operating force that the user P gives to the grip portion 401. The operation control unit 422 controls the torque of each motor 404 by using the rotation amount and the current value detected by each motor 404 as feedback information.
  • a rotational load also referred to as “load torque”
  • the operation drive command includes a command for giving the grip portion 401 a reaction force corresponding to the magnitude and direction of the reaction force received by the end effector 11 from the object to be ground.
  • the magnitude and direction of the reaction force correspond to the magnitude and direction of the force detected by the force sensor 11e.
  • the operation drive command includes a command for giving a force for moving the grip portion 401 to the grip portion 401 so that the position and posture of the grip portion 401 correspond to the position and posture of the end effector 11.
  • the operation control unit 422 generates a control command for driving each motor 404 so as to apply a force of magnitude and direction according to the operation drive command to the grip unit 401, and outputs the control command to the motor 404.
  • the user P operates the grip portion 401 while feeling the reaction force from the grip portion 401 as if receiving a reaction force from the object, for example. Further, the motor 404 moves the grip portion 401 so that the position and posture of the grip portion 401 correspond to the position and posture of the end effector 11.
  • the operation regulation command is a command for giving the grip portion 401 a regulatory force that regulates at least a part of the movement of the grip portion 401 in the regulation mode.
  • the regulatory force is a regulatory force according to the regulatory condition 20pb stored in the storage unit 20p, and includes the magnitude and direction of the force that restricts at least a part of the movement of the position and the movement of the posture of the grip portion 401.
  • the above-mentioned regulatory force is the magnitude of the force for reducing the amount of movement of the position and posture of the grip portion 401 corresponding to the movement of the position and posture of the end effector 11 regulated by the regulation condition 20pb to 0 (zero). Including direction.
  • the operation control unit 422 generates a control command for driving each motor 404 so as to apply a regulation force of a magnitude and a direction in accordance with the operation regulation command to the grip unit 401, and outputs the control command to the motor 404.
  • the user P operates the grip portion 401, for example, while feeling that the grip portion 401 is subject to the regulation that prevents the movement.
  • the regulatory force can prevent the grip portion 401 from moving even if the user P gives the grip portion 401 an operating force to move the movement.
  • the magnitude of the regulatory force of the operation regulation command may be a predetermined magnitude, and the motion control unit 422 may adjust the regulatory force according to the detection value of the force sensor 405. .
  • the motion control unit 422 adjusts the magnitude of the regulatory force to a magnitude equal to or greater than the detection value of the force sensor 405 in the regulated movement direction in response to the operating force given by the user P to the grip portion 401. May be good.
  • the storage unit 20p of the control device 20 stores various information and enables the stored information to be read out.
  • the storage unit 20p stores information or the like input via the input device 410 of the operation input device 40.
  • the storage unit 20p stores camera parameters including external parameters and internal parameters of the camera of the image pickup apparatus 30 as information used for image processing.
  • An example of an external parameter is a parameter indicating the position (three-dimensional position) and orientation (direction of the center of the optical axis) of the camera.
  • Examples of internal parameters are parameters that indicate the distortion of the camera lens, the focal length, the size of one pixel of the image sensor, the pixel coordinates of the center of the optical axis, and the like.
  • the storage unit 20p may store the object to be ground by the robot 10 in association with the position, shape, dimensions, and the like of the grinding target area of the object. Further, the storage unit 20p may store the image data captured by the image pickup apparatus 30, the processed image data of the image data, and / or the program. Further, the storage unit 20p stores the posture information 20pa, the regulation condition 20pb, and the avoidance information 20pc.
  • the regulation condition 20pb is information for regulating at least a part of the movement of the position and posture of the end effector 11. Specifically, the regulation condition 20pb includes information for restricting the movement of the end effector 11 so as not to move the end effector 11 in at least one direction of the movement direction of the position and the movement direction of the posture. In the present embodiment, the regulation condition 20pb regulates only the movement of the posture of the end effector 11, but the regulation condition 20pb may regulate only the movement of the position, and regulates the movement of both the position and the posture. You may.
  • the regulation condition 20pb may be information for imposing a limit on the operation position command of the operation command of the operation control device 420, and the operation of the end effector 11 generated by the first operation command unit 20d based on the operation command. It may be information for imposing restrictions on the position command of the command.
  • the operation command of the end effector 11 includes at least a position command and a force command, and in the present embodiment, both are included.
  • the position command represents the position of the end effector 11.
  • the force command represents the force applied by the end effector 11 to the object.
  • the position command may include a command for the three-dimensional position and the three-dimensional posture of the end effector 11. Further, the position command may include the execution time of the command of the three-dimensional position and the three-dimensional posture.
  • the force command may include a command of the magnitude of the force and the direction of the force. In addition, the force command may include the execution time of the force magnitude and direction command.
  • "force” includes at least the magnitude and direction of the force
  • position refers to at least three of the three-dimensional positions and three-dimensional postures. It means that it can include a dimensional position.
  • the three-dimensional position and the three-dimensional posture are the positions and postures in the three-dimensional space.
  • the three-dimensional position and the three-dimensional posture may be defined using a world coordinate system, a robot coordinate system, or the like.
  • the world coordinate system is a coordinate system set in the space where the robot 10 is arranged.
  • the robot coordinate system is a coordinate system based on the robot 10, and may be, for example, a coordinate system based on the base 13 on which the robot arm 12 is installed. In the present embodiment, since the robot arm 12 is fixed, the world coordinate system and the robot coordinate system are set to be the same.
  • the regulation condition 20pb that regulates the movement of the posture of the end effector 11 may include information that restricts the movement of the posture and the movement speed included in the operation position command and the position command.
  • the regulation condition 20pb may include information that limits the rotational displacement and rotational speed around the three axes corresponding to the moments of force around the three axes of the force sensors 11e and 405 to limit values such as 0 (zero). Good.
  • the regulation condition 20pb is not limited to this, but the regulation condition 20pb is the rotational displacement and rotation speed of the force sensor 11e around each axis of the Xe axis and the Ye axis, or each of the Xe axis, the Ye axis, and the Ze axis. Limit the rotational displacement and rotational speed around the axis.
  • the regulation condition 20pb determines the rotational displacement and rotational speed of the force sensor 405 around each of the Xc and Yc axes, or the rotational displacement and rotational speed of the Xc, Yc, and Zc axes. Restrict.
  • the rotational movement around the Xe axis and the Xc axis corresponds to the movement of the end effector 11 and the grip portion 401 in the pitching direction, respectively.
  • the rotational movement around the Ye axis and the Yc axis corresponds to the movement of the end effector 11 and the grip portion 401 in the rolling direction, respectively.
  • the rotational movement around the Ze axis and the Zc axis corresponds to the movement of the end effector 11 and the grip portion 401 in the yawing direction.
  • the regulation condition 20pb that regulates the movement of the position of the end effector 11 may include information that restricts the operation position command and commands such as displacement and movement speed of the position included in the position command.
  • the regulation condition 20pb may include information that limits the displacement and moving speed of the positions of the force sensors 11e and 405 in the triaxial direction corresponding to the forces in the triaxial direction to a limit value such as 0.
  • the regulation condition 20pb is orthogonal to the moving direction among the displacement and the moving speed of the position in the three axial directions. It may include information that limits the component in the direction of rotation to a limit value such as 0.
  • the moving direction of the end effector 11 is the direction in which the end effector 11 is moved during the grinding operation, such as the direction of the approximate straight line of the locus of the end effector 11 and the direction of the tangential line of the locus of the end effector 11. Good.
  • the posture information 20pa is information on a predetermined posture set in the end effector 11.
  • the control device 20 shifts the posture of the end effector 11 to a predetermined posture in response to the shift command input to the operation input device 40.
  • the predetermined posture is set as the basic posture which is the basic posture of the end effector 11 at the time of grinding work.
  • the predetermined posture will also be referred to as the basic posture.
  • the basic posture is also a preferable posture of the end effector 11 during the grinding operation.
  • the basic posture may be set as a posture with respect to the robot 10, a posture with respect to the surface of the grinding target area WA, and the like.
  • the basic posture is set as the posture with respect to the surface of the grinding target region WA.
  • the avoidance information 20pc is information for moving the position of the end effector 11 when the transition of the posture of the end effector 11 according to the transition command is hindered.
  • the above-mentioned obstacle is that the end effector 11 cannot shift to the basic posture due to contact or collision with another object.
  • the above-mentioned obstacle is detected by the control device 20 based on the detection value of the force sensor 11e during the transition.
  • the avoidance information 20pc may be information for instructing the movement of the position at a predetermined distance in a direction other than the direction opposite to the direction of the reaction force detected by the force sensor 11e.
  • the avoidance information 20pc may be information that commands the movement of the position in a predetermined direction and distance such as the negative direction of the Ze axis.
  • the image pickup control unit 20a controls the operation of the image pickup device 30 and acquires the image data captured by the image pickup device 30.
  • the image pickup control unit 20a associates two image data images taken at the same time by an image pickup device 30 provided with a stereo camera and outputs the two image data to the image processing units 20b and 20c and the like.
  • To capture an image by the image pickup device 30 and to acquire the image data captured by the image pickup device 30 is to acquire one still image data captured by the image pickup device 30 and by the image pickup device 30. This includes acquiring one frame of still image data from the captured moving image data.
  • the first image processing unit 20b detects the three-dimensional position of each position of the subject projected on the image data by processing the image data acquired from the image pickup control unit 20a, and represents the three-dimensional position of each position. Generates three-dimensional image data, which is image data. Specifically, the first image processing unit 20b identifies the grinding target region WA projected on each of the two image data images captured at the same time by the image pickup apparatus 30. For example, even if the first image processing unit 20b extracts the edge of the grinding target area WA from each image data by comparing it with the shape of the grinding target area WA stored in the storage unit 20p by a pattern matching method or the like. Good.
  • the first image processing unit 20b performs image processing by a stereo matching method or the like using the camera parameters stored in the storage unit 20p, so that at least one of the two image data is in the grinding target region WA.
  • the distance between the subject projected on the three pixels and the image pickup device 30 is detected.
  • the first image processing unit 20b detects a three-dimensional position in the three-dimensional space in which the robot system 1 exists for the subject projected on each pixel whose distance is detected.
  • the first image processing unit 20b uses the three-dimensional positions of at least three pixels of the grinding target region WA to detect the plane formed by the three-dimensional positions in the three-dimensional space as the surface of the grinding target region WA. ..
  • the plane detection method may be any known method.
  • the first image processing unit 20b may detect a plane passing through the three-dimensional positions of at least three pixels as the surface of the grinding target region WA.
  • the first image processing unit 20b may detect as the surface of the grinding target region WA a plane passing through the three-dimensional positions of at least three pixels or its vicinity, that is, a plane close to the three-dimensional positions of at least three. Good.
  • the first image processing unit 20b detects a curved surface passing through the three-dimensional positions of at least three pixels, and sets a plane perpendicular to the normal of the curved surface and having an intersection with the curved surface as the surface of the grinding target region WA. It may be detected.
  • the first image processing unit 20b outputs information such as the three-dimensional position and the three-dimensional posture of the surface of the grinding target region WA to the posture determination unit 20h, the storage unit 20p, and the like.
  • the second image processing unit 20c outputs the image data acquired from the image pickup control unit 20a to the presentation device 50 and displays it.
  • the second image processing unit 20c may acquire the processed image data from the first image processing unit 20b and output the image data representing the three-dimensional shape of the grinding target region WA to the presentation device 50.
  • the image data may be a distance image or the like in which the pixel value of each pixel is the distance value from the image pickup apparatus 30 to the subject.
  • the distance value may be represented by the shade or color of the pixels.
  • the posture determination unit 20h determines the basic posture to be transferred to the end effector 11 in response to the posture transition command input to the operation input device 40.
  • the posture determining unit 20h requests the first image processing unit 20b for information on the surface of the grinding target region WA.
  • the first image processing unit 20b requests the image pickup control unit 20a to take an image of the grinding target area WA, and performs image processing on the image data received from the image pickup control unit 20a to obtain a three-dimensional position on the surface of the grinding target area WA and 3 Information such as a three-dimensional posture is detected and output to the posture determination unit 20h.
  • the posture determination unit 20h reads the posture information 20pa from the storage unit 20p, and detects the information on the basic posture of the end effector 11 with respect to the surface of the grinding target region WA by using the posture information 20pa and the surface information of the grinding target region WA. To do.
  • the posture determination unit 20h outputs information on the basic posture such as the posture angle around each coordinate axis to the first operation command unit 20d.
  • the posture determination unit 20h ends the information on the basic posture included in the posture information 20pa.
  • the information on the basic posture of the effector 11 is determined.
  • the first operation command unit 20d generates an operation command for causing the end effector 11 to perform the desired operation, and outputs the operation command to the operation control unit 20f.
  • the operation command may include a command for operating the grinding device 11a.
  • the first operation command unit 20d is an example of the first command unit.
  • the first operation command unit 20d generates an operation command for causing the end effector 11 to perform an operation corresponding to the operation command received from the operation input device 40. Further, in the regulation mode, the first operation command unit 20d applies the regulation condition 20pb of the storage unit 20p to the operation command, and generates an operation command reflecting the regulation condition. The first operation command unit 20d may also output the operation command and / or the regulation condition 20pb reflecting the regulation condition to the second operation command unit 20e. Further, the first operation command unit 20d generates an operation command for moving the posture of the end effector 11 to the basic posture according to the transition command received from the operation input device 40. Further, the first operation command unit 20d generates an operation command for moving the position of the end effector 11 along the avoidance route received from the avoidance route determination unit 20j.
  • the first operation command unit 20d converts the operation position command and the operation force command included in the operation command into the position command and the force command in the robot coordinate system, and converts the position command and the force command into the position command and the force command. Generate an operation command that includes.
  • the first operation command unit 20d processes the operation position command by applying the regulation condition 20pb and generates and outputs the operation command using the processed operation position command and the operation force command. Good.
  • the first operation command unit 20d generates an operation command using the operation position command and the operation force command, processes the operation command by applying the regulation condition 20pb, and outputs the processed operation command. You may.
  • the motion control unit 20f generates a control command for operating each part of the robot 10 according to the motion command received from the first motion command unit 20d, and outputs the control command to the robot 10.
  • the motion control unit 20f acquires information on the operation state of each part of the robot 10 from the motion information processing unit 20g, and uses the information as feedback information to generate a control command.
  • the motion control unit 20f operates the servomotor Ma of the arm drive devices M1, M2, M3, M4, M5 and M6 of the robot arm 12 and the motor (not shown) of the grinding device 11a of the end effector 11. Generate a control command to make it.
  • the motion information processing unit 20g detects and processes the motion information of the robot 10.
  • the operation information processing unit 20g detects the ON state and the OFF state of the grinding device 11a as operation information based on the energized state of the grinding device 11a and the like.
  • the motion information processing unit 20g includes the detection value of the rotation sensor Mb of each of the servomotor Ma of the arm drive devices M1, M2, M3, M4, M5 and M6, the detection value of the current sensor Mc of the servomotor Ma, and the end effector.
  • the detection value of the force sensor 11e of 11 is acquired as operation information.
  • the motion information processing unit 20g may acquire the command value of the current supplied to the servomotor Ma by the drive circuit of the servomotor Ma as the motion information.
  • the motion information processing unit 20g outputs the motion information as feedback information to the motion control unit 20f and the second motion command unit 20e.
  • the detection value of the rotation sensor Mb of the servomotor Ma of the arm drive devices M1, M2, M3, M4, M5 and M6 and the detection value of the current sensor Mc of the servomotor Ma are the detection values of the end effector 11. It is position data indicating the displacement and displacement speed of the position and attitude, and the detected value of the force sensor 11e is force data indicating the magnitude and direction of the reaction force received by the end effector 11.
  • the second operation command unit 20e generates a motor operation command which is an operation command for applying a force to the grip unit 401 of the operation device 400 and moving the position and posture of the grip unit 401, and the operation input device 40. Output to. Motor operation commands include operation drive commands and / or operation regulation commands.
  • the second operation command unit 20e is an example of the second command unit.
  • the second operation command unit 20e gives the grip unit 401 a reaction force corresponding to the magnitude and direction of the force detected by the force sensor 11e based on the force data of the operation information received from the operation information processing unit 20g. Generates motor operation commands, including operation drive commands.
  • the second operation command unit 20e uses the position data of the operation information received from the operation information processing unit 20g and the position data of the operation information of the grip unit 401 received from the operation input device 40, and the position and posture of the grip unit 401. Generates a motor operation command including an operation drive command for moving the grip portion 401 so as to correspond to the position and orientation of the end effector 11.
  • the operation drive command may include at least one of a position command and a force command for the grip portion 401.
  • the motor 404 of the operating device 400 has the position and orientation of the end effector 11 that operates unregulated in the non-regulated mode, the position and attitude of the end effector 11 that operates under the regulation in the regulated mode, and a transition command.
  • the grip portion 401 is moved so as to correspond the position and posture of the end effector 11 that operates according to the procedure, the position and posture of the end effector 11 that operates along the avoidance path, and the position and posture of the grip portion 401. be able to.
  • the detected value of the rotation sensor (not shown) of the motor 404 is the position data indicating the displacement and the displacement speed of the position and posture of the grip portion 401, and the detected value of the force sensor 405 is.
  • the force data indicating the magnitude and direction of the force acting on the grip portion 401.
  • the second operation command unit 20e gives the grip unit 401 a force that opposes the input of the force to the grip unit 401 that commands the movement of the end effector 11 in the direction restricted by the regulation condition 20pb in the regulation mode.
  • the above-mentioned opposing force is the magnitude of the force for reducing the amount of movement of the grip portion 401 corresponding to the movement of the position and posture of the end effector 11 regulated by the regulation condition 20pb to 0 (zero).
  • Sa and direction may be included.
  • the operation control command may include at least one of a position command and a force command for the grip portion 401.
  • the second operation command unit 20e generates the motor operation command by using the detection value of the force sensor 405 received from the operation input device 40 and the operation command reflecting the regulation condition 20pb and / or the regulation condition 20pb. May be good.
  • the motor 404 of the operating device 400 can apply a force to the grip portion 401 to prevent the grip portion 401 from moving in the direction limited by the regulation condition 20 pb. Therefore, the position and orientation of the end effector 11 that operates according to the regulation condition 20pb and the position and orientation of the grip portion 401 can exhibit the same behavior.
  • the avoidance determination unit 20i determines whether or not it is necessary to avoid moving the position of the end effector 11 during the transition to the basic posture of the end effector 11, and outputs the determination result to the avoidance route determination unit 20j.
  • the avoidance determination unit 20i determines that avoidance is necessary when the force sensor 11e detects an input of a force larger than the threshold value, that is, a force exceeding the threshold value during the transition to the basic posture of the end effector 11. In this case, the avoidance determination unit 20i outputs the command for executing avoidance and the direction of the force exceeding the threshold value detected by the force sensor 11e to the avoidance route determination unit 20j.
  • the threshold value may be set according to various conditions such as the working environment of the robot system 1, the required force detection sensitivity, and the type of the object, and may be set to a value of 0 or more, for example.
  • the threshold value may be the magnitude of the force that hinders the transition of the end effector 11 to the basic posture.
  • the threshold value may be the magnitude of the force representing the contact between the end effector 11 and the object.
  • the avoidance route determination unit 20j determines an avoidance route for avoiding the end effector 11 and outputs the avoidance route to the first operation command unit 20d. Specifically, when the avoidance route determination unit 20j receives the avoidance execution command from the avoidance determination unit 20i, the avoidance route determination unit 20j reads the avoidance information 20pc from the storage unit 20p. Further, the avoidance route determination unit 20j applies the direction of the force received from the avoidance determination unit 20i to the avoidance information 20pc, thereby determining the movement direction and the movement distance of the position of the end effector 11 for avoiding the input of the force. Determine the avoidance route to include.
  • the support portion 402 moves together with the grip portion 401 and changes its posture, causes each of the six arms 403 to perform operations such as bending and changing its posture, and rotates the rotation axis of the motor 404 connected to the arm 403.
  • the operation control device 420 outputs an operation command based on the rotation signal of the rotation sensor of the motor 404 and the force signal of the force sensor 405 to the control device 20.
  • the control device 20 generates an operation command based on the operation command, and operates the robot 10 according to the operation command.
  • the control device 20 operates the robot arm 12 so that the change in the position of the end effector 11, the change in the posture, and the acting force on the object W via the grinding device 11a reflect the above-mentioned force signal.
  • the user P can operate the grip portion 401 of the operating device 400 to cause the robot 10 to perform the intended operation.
  • control device 20 generates a load torque corresponding to the reaction force in each motor 404 in order to give the grip portion 401 a reaction force corresponding to the force data based on the detection signal of the force sensor 11e of the end effector 11. ..
  • the user P can operate the position and posture of the grip portion 401 while feeling the reaction force from the grip portion 401 as if receiving the reaction force from the object W, for example.
  • the reaction force of the grip portion 401 reflects the magnitude and direction of the force detected by the force sensor 11e.
  • the reaction force of the grip portion 401 makes the user P feel the state of the grinding device 11a during grinding, which differs depending on the surface state of the object W.
  • the reaction force of the grip portion 401 can make the user P feel the feeling that the user P's hand receives when the user P holds and grinds the grinding device 11a.
  • the robot arm 12 can change the position and posture of the end effector 11 far beyond the movable range of the grip portion 401. Further, the end effector 11 can generate an acting force that greatly exceeds the force applied to the grip portion 401.
  • FIG. 8 is a flowchart showing an example of the operation of the robot system 1 according to the embodiment in the regulation mode.
  • step S101 the user P desires the posture of the grinding wheel 11b of the grinding device 11a of the end effector 11 with respect to the surface of the grinding target region WA by operating the operating device 400. Shift to posture.
  • the transition to the desired posture by the user P may be performed before the start of the grinding work or during the grinding work.
  • the transition to the desired posture may be a transition to the basic posture in accordance with the transition command. If the posture of the grinding wheel 11b is already a desired posture, the process of this step may be omitted.
  • step S102 the user P inputs a command for executing the regulation mode to the input device 410 of the operation input device 40, and the operation control device 420 of the operation input device 40 receives the command and outputs the command to the control device 20. ..
  • step S103 the control device 20 starts and executes control in the regulation mode. Specifically, the control device 20 limits the rotational displacement of the end effector 11 around each axis of the Xe axis, the Ye axis, and the Ze axis with respect to the first set posture which is the current posture of the end effector 11, and the grip portion 401. Control is performed so as to limit the rotational displacement of the grip portion 401 around each axis of the Xc axis, the Yc axis, and the Zc axis with respect to the second set posture which is the current posture of the above.
  • step S104 when an operation is input to the grip portion 401 of the operation device 400 by the user P, the operation control device 420 generates an operation command based on the force signal of the force sensor 405 corresponding to the input operation. Output to the control device 20.
  • step S105 the control device 20 gives an operation command reflecting the regulation condition 20pb by using the regulation condition 20pb of the storage unit 20p and the operation command.
  • the control device 20 performs a process of setting the command value corresponding to the moment around each axis of the Xc axis, the Yc axis, and the Zc axis to 0 in the operation command, or the Xe axis in the operation command generated by using the operation command.
  • Ye-axis and Ze-axis are processed to set the command value corresponding to the moment around each axis to 0.
  • step S106 the control device 20 generates a control command for operating each part of the robot 10 according to the operation command, and outputs the control command to the robot 10.
  • step S107 the robot arm 12 moves the position of the end effector 11 according to the operation command while limiting the change in the posture of the end effector 11 from the first set posture. That is, the robot arm 12 performs a limited operation in accordance with the regulation condition 20pb.
  • step S108 the control device 20 gives the grip portion 401 a moment that opposes the detected value of the moment around each axis of the force sensor 405 based on the regulation condition 20pb and the detected value of the force sensor 405.
  • An operation command is generated and output to the operation input device 40.
  • the motor operation command is a command for driving the motor 404 of the operation input device 40 so as to give the grip portion 401 a moment for canceling the moment around each axis input to the grip portion 401 by the user P. That is, the control device 20 outputs a motor operation command for limiting the operation of the grip portion 401 according to the regulation condition 20pb.
  • step S109 the operation control device 420 applies a force to the grip portion 401 by driving each motor 404 in accordance with the motor operation command, and limits the rotational displacement of the grip portion 401 around each axis of the force sensor 405. .. That is, the operation control device 420 limits the operation of the grip portion 401 by the driving force of each motor 404.
  • step S110 the control device 20 determines whether or not the command for terminating the regulation mode has been accepted via the input device 410, and if accepted (Yes in step S110), ends a series of processes and accepts the command. If not (No in step S110), the process returns to step S104.
  • control device 20 maintains the posture of the end effector 11 and the posture of the grip portion 401 in the same desired posture, and adjusts the end effector 11 according to the operation input to the grip portion 401. Make it work.
  • FIG. 9 is a flowchart showing an example of an operation of shifting the end effector 11 of the robot system 1 according to the embodiment to the basic posture.
  • step S201 the user P inputs a command to shift the end effector 11 to the basic posture to the input device 410 of the operation input device 40, and the operation control device 420 receives the command and controls the control device. Output to 20.
  • step S202 the user P moves the end effector 11 to a desired position with respect to the grinding target region WA by operating the operating device 400. If the position of the end effector 11 is already a desired position, the process of this step may be omitted.
  • step S203 the user P inputs a command for executing imaging to the input device 410, and the operation control device 420 receives the command and outputs the command to the control device 20.
  • step S204 the control device 20 causes the image pickup device 30 to image the grinding target region WA.
  • step S205 the control device 20 processes the image data of the grinding target region WA to generate three-dimensional image data of the image data.
  • step S206 the control device 20 detects the posture of the surface of the grinding target region WA using the three-dimensional image data.
  • step S207 the control device 20 determines the basic posture of the end effector 11 by using the posture information 20pa of the storage unit 20p and the posture information of the surface of the grinding target region WA.
  • step S208 the control device 20 operates the robot arm 12 so as to shift the posture of the end effector 11 to the basic posture. That is, the control device 20 executes the transition to the basic posture.
  • step S209 the control device 20 determines whether or not a force exceeding the threshold value is detected by the force sensor 11e, and if it is detected (Yes in step S209), proceeds to step S210, and if it is not detected (step S209).
  • step S209, No) proceeds to step S212.
  • FIG. 10 is a side view showing an example in which a transition obstacle occurs during the transition of the end effector 11 to the basic posture.
  • the posture of the end effector 11 in which the grinding wheel 11b is parallel to the vertical plane as shown by the solid line is shifted to the basic posture in which the grinding wheel 11b is inclined obliquely with respect to the vertical plane, and is shown by a broken line.
  • the end effector 11 collides with the object A.
  • step S210 the control device 20 stops the posture shift, and further uses the avoidance information of the storage unit 20p and the direction of the force exceeding the threshold value detected by the force sensor 11e to set the avoidance path of the end effector 11. decide.
  • the avoidance path is a path of a predetermined distance in the direction of the force exceeding the threshold value.
  • the avoidance path is a path of a predetermined distance in the direction of the force Fr exceeding the threshold value detected by the force sensor 11e.
  • step S211 the control device 20 operates the robot arm 12 so as to move the end effector 11 along the avoidance path, and proceeds to step S209. That is, the control device 20 executes the avoidance of the end effector 11.
  • the control device 20 moves the end effector 11 in the direction of the force Fr by a predetermined distance.
  • FIG. 11 is a side view showing an example of the avoidance operation during the transition of the end effector 11 to the basic posture.
  • the end effector 11 stopped in the state of FIG. 10 shown by the solid line is moved along the avoidance path as shown by the broken line.
  • step S212 the control device 20 determines whether or not the transition to the basic posture is completed, and if it is completed (Yes in step S212), the series of processes is completed, and if it is not completed (in step S212). No) returns to step S208. For example, in FIG. 11, since the transition to the basic posture is not completed after the avoidance of step S211 is completed, the process of shifting to the basic posture after step S208 is repeated.
  • the control device 20 can shift the end effector 11 to the basic posture in response to the occurrence of troubles such as contact and collision with other objects. Further, when the force sensor 11e detects a force exceeding the threshold value while the end effector 11 is moving along the avoidance path, the control device 20 can reset the avoidance path according to the direction of the force. .. Further, the control device 20 detects the posture of the surface of the grinding target region WA, thereby enabling the transition to the basic posture corresponding to various postures of the surface of the grinding target region WA.
  • the control device 20 separately executes the movement of the end effector 11 along the avoidance path and the shift of the posture of the end effector 11 to the basic posture. Specifically, the control device 20 resumes the shift of the posture of the end effector 11 to the basic posture after the movement of the end effector 11 along the avoidance path is completed.
  • the avoidance operation of the end effector 11 is not limited to the above.
  • the control device 20 may restart the transition of the posture of the end effector 11 to the basic posture while the end effector 11 is moving along the avoidance path, and perform the two operations in parallel.
  • control device 20 may simultaneously start the movement of the end effector 11 along the avoidance path and the resumption of the transition of the posture of the end effector 11 to the basic posture, and perform the two operations in parallel. Further, when the force sensor 11e detects a force exceeding the threshold value during parallel operation, the control device 20 may reset the avoidance path corresponding to the direction of the force.
  • the control device 20 detects the posture of the surface of the grinding target region WA for determining the basic posture by processing the image captured by the image pickup device 30, but is not limited to this. ..
  • the posture of the surface can be detected by using a device capable of detecting the distance to the object.
  • a device capable of detecting the distance to the object.
  • such a device may be a sensor that detects a distance using a light wave, a laser, an ultrasonic wave, or the like.
  • the robot 10 which is an industrial robot is exemplified as the mechanical device to which the technique of the present disclosure can be applied, but the mechanical device to which the technique of the present disclosure can be applied is an industrial robot. It may be a mechanical device other than the above.
  • the mechanical device may be a service robot, a construction machine, a tunnel excavator, a crane, a cargo handling vehicle, a humanoid, or the like.
  • Service robots are robots used in various service industries such as nursing care, medical care, cleaning, security, guidance, rescue, cooking, and product provision.
  • the technique of the present disclosure may be a control method.
  • the control method according to one aspect of the present disclosure is a control method for controlling a slave device operated by a master device, which is information input by applying a force to an operation end of the master device.
  • the operating unit of the slave device In order for the operating unit of the slave device to perform an operation in which the restricting condition is reflected by the operating unit of the slave device in accordance with the information and the regulatory conditions for restricting the predetermined movement of the operating unit that acts on the object in the slave device.
  • the above control method may be realized by a circuit such as a CPU and an LSI, an IC card, a single module, or the like.
  • the technique of the present disclosure may be a program for executing the above control method, or may be a non-temporary computer-readable recording medium in which the above program is recorded. Needless to say, the above program can be distributed via a transmission medium such as the Internet.
  • the numbers such as the ordinal number and the quantity used above are all examples for concretely explaining the technology of the present disclosure, and the present disclosure is not limited to the illustrated numbers.
  • the connection relationship between the components is illustrated for the purpose of specifically explaining the technique of the present disclosure, and the connection relationship for realizing the function of the present disclosure is not limited thereto.
  • the division of blocks in the functional block diagram is an example, and even if a plurality of blocks are realized as one block, one block is divided into a plurality of blocks, and / or some functions are transferred to another block. Good.
  • a single piece of hardware or software may process the functions of a plurality of blocks having similar functions in parallel or in a time division manner.
  • Robot system master-slave system
  • Robot slave device
  • End effector acting part
  • Grinding device 12
  • Robot arm moving part
  • Control device 20d 1st operation command unit (1st command unit)
  • 20e 2nd operation command unit (2nd command unit)
  • Operation input device master device
  • Operation device 401
  • Grip operation end
  • motor force application part
  • 405 force sensor operation detection unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)

Abstract

マスタスレーブシステム(1)は、操作端(401)と、前記操作端に力が加えられることで入力される操作情報を検出し出力する操作検出部(405)と、前記操作端に力を与える力付与部(404)とを備えるマスタ装置(40)と、対象物に作用を加える作用部(11)と前記作用部を移動させる動作部(12)とを備えるスレーブ装置(10)と、制御装置(20)とを備え、前記制御装置は、前記作用部の所定の移動を規制する規制条件と前記操作情報とに従って、前記動作部によって前記作用部に前記規制条件が反映された動作をさせるための指令を出力する第1指令部(20d)と、前記規制条件に従って、前記作用部の前記所定の移動を指令する前記操作端への入力に対抗する前記操作端への力を前記力付与部に与えさせるための指令を出力する第2指令部(20e)とを含む。

Description

マスタスレーブシステム及び制御方法 関連出願への相互参照
 本件出願は、2019年12月13日に日本特許庁に出願された特願2019-225696号の優先権を主張するものであり、その全体を参照することにより本件出願の一部となすものとして引用する。
 本開示は、マスタスレーブシステム及び制御方法に関する。
 従来、ロボットは、人の行為を代替するために用いられてきた。例えば、特許文献1は、スレーブアームの先端動作を予め制限した作業範囲内に拘束する多関節型マスタ・スレーブマニピュレータを開示している。上記マスタ・スレーブマニピュレータの運転制御装置は、マスタアームの位置及び姿勢の変化量に、不必要な方向の変化量を0とする拘束条件を付加する拘束制御を実施することで、スレーブアームの運動を拘束する。具体的には、運転制御装置は、マスタアームの位置及び姿勢の変化量ベクトルを拘束条件のベクトルに投影して得られるベクトルを、スレーブアームの位置及び姿勢の変化量ベクトルに決定する。
特開平6-262548号公報
 特許文献1では、スレーブアームは、マスタアームの位置及び姿勢の変化量に拘束条件を付加して得られるスレーブアームの位置及び姿勢の変化量に対応する動作を行う。このため、マスタアームの位置及び姿勢等の状態とスレーブアームの位置及び姿勢等の状態とが同様にならない場合がある。この場合、操作者がマスタアームの状態から感じるスレーブアームの状態と実際のスレーブアームの状態との間に差異が生じ、操作者は自身の意図通りにスレーブアームを操作できないおそれがある。
 本開示は、マスタ装置の状態とスレーブ装置の状態とを同様の状態に維持しつつスレーブ装置の動作を規制することができるマスタスレーブシステム及び制御方法を提供することを目的とする。
 上記目的を達成するために、本開示の一態様に係るマスタスレーブシステムは、操作端と、前記操作端に力が加えられることで入力される情報である操作情報を検出し出力する操作検出部と、前記操作端に力を与える力付与部とを備えるマスタ装置と、対象物に作用を加える作用部と前記作用部を移動させる動作部とを備えるスレーブ装置と、制御装置とを備え、前記制御装置は、前記作用部の所定の移動を規制する規制条件と前記操作情報とに従って、前記動作部によって前記作用部に前記規制条件が反映された動作をさせるための指令を出力する第1指令部と、前記規制条件に従って、前記作用部の前記所定の移動を指令する前記操作端への入力に対抗する前記操作端への力を前記力付与部に与えさせるための指令を出力する第2指令部とを含む。
 本開示によれば、マスタ装置の状態とスレーブ装置の状態とを同様の状態に維持しつつスレーブ装置の動作を規制することが可能になる。
図1は、実施の形態に係るロボットシステムの一例を示す概略図である。 図2は、実施の形態に係るエンドエフェクタの構成の一例を示す側面図である。 図3は、図2のエンドエフェクタの力センサの検出軸の一例を示す側面図である。 図4は、実施の形態に係る操作入力装置の操作装置の構成の一例を示す斜視図である。 図5は、図4の操作装置の力センサの検出軸の一例を示す斜視図である。 図6は、実施の形態に係るロボットシステムの機能的な構成の一例を示すブロック図である。 図7は、実施の形態に係る制御装置のハードウェア構成の一例を示すブロック図である。 図8は、実施の形態に係るロボットシステムの規制モードでの動作の一例を示すフローチャートである。 図9は、実施の形態に係るロボットシステムのエンドエフェクタを基本姿勢に移行させる動作の一例を示すフローチャートである。 図10は、エンドエフェクタの基本姿勢への移行中における移行の支障の発生例を示す側面図である。 図11は、エンドエフェクタの基本姿勢への移行中における回避動作の例を示す側面図である。
 まず、本開示の態様例を説明する。本開示の一態様に係るマスタスレーブシステムは、操作端と、前記操作端に力が加えられることで入力される情報である操作情報を検出し出力する操作検出部と、前記操作端に力を与える力付与部とを備えるマスタ装置と、対象物に作用を加える作用部と前記作用部を移動させる動作部とを備えるスレーブ装置と、制御装置とを備え、前記制御装置は、前記作用部の所定の移動を規制する規制条件と前記操作情報とに従って、前記動作部によって前記作用部に前記規制条件が反映された動作をさせるための指令を出力する第1指令部と、前記規制条件に従って、前記作用部の前記所定の移動を指令する前記操作端への入力に対抗する前記操作端への力を前記力付与部に与えさせるための指令を出力する第2指令部とを含む。
 上記態様によると、制御装置は、規制条件に従って作用部の所定の移動を規制しつつ操作情報に従って作用部を動作させる。さらに、制御装置は、操作端に力を与えることで、作用部の所定の移動を指令する操作端への入力を規制する。よって、マスタ装置の状態とスレーブ装置の状態とが同様の状態に維持されつつ、スレーブ装置が規制条件が反映された動作を行う。例えば、第1及び第2指令部は、指令として、動作指令及び制御指令等を出力してもよい。
 本開示の一態様に係るマスタスレーブシステムにおいて、前記スレーブ装置は、前記動作部によって前記作用部の位置及び姿勢を移動させ、前記操作端は、位置及び姿勢を変えるように移動可能であり、前記規制条件は、前記所定の移動として、前記作用部の姿勢の移動を規制する条件であってもよい。上記態様によると、制御装置は、作用部の姿勢の移動を規制しつつ作用部を動作させる。さらに、制御装置は、規制される作用部の姿勢の移動に対応する操作端の姿勢の移動を規制する。よって、マスタ装置の姿勢とスレーブ装置の姿勢とが同様の姿勢に維持されつつ、スレーブ装置が規制条件が反映された動作を行う。
 本開示の一態様に係るマスタスレーブシステムにおいて、前記操作検出部は、前記操作端に加えられる力の方向及び大きさを前記操作情報として検出してもよい。上記態様によると、操作端に加えられる力の方向及び大きさの指令は、作用部の移動方向、移動速度及び当該移動方向での作用力の指令に変換され得る。よって、操作者は、操作端に力を加えることで作用部の動作を制御することができる。
 本開示の一態様に係るマスタスレーブシステムにおいて、前記操作検出部は、前記操作端に加えられる3軸方向の力の大きさ及び3軸周りの力のモーメントを前記操作情報として検出してもよい。上記態様によると、操作端に加えられる3軸方向の力の大きさの指令は、当該3軸方向の作用部の移動速度及び作用力の指令に変換され得る。操作端に加えられる3軸周りの力のモーメントの指令は、当該3軸周りの作用部の回転速度及び回転力の指令に変換され得る。よって、操作者は、操作端に力を加えることで作用部の位置及び姿勢を制御することができる。
 本開示の一態様に係るマスタスレーブシステムにおいて、前記規制条件は、前記所定の移動として、前記操作情報の前記3軸周りの力のモーメントに対応する前記作用部の姿勢の移動を規制する条件であってもよい。上記態様によると、制御装置は、規制条件に従って操作情報に含まれる3軸周りの力のモーメントを規制し、規制後の操作情報を用いて指令を出力することで、作用部の姿勢の移動の規制が反映された動作をスレーブ装置にさせることができる。
 本開示の一態様に係るマスタスレーブシステムにおいて、前記作用部は、研削装置を含み、前記動作部は、ロボットアームを含んでもよい。上記態様によると、研削作業では、研削装置の研削砥石の姿勢は研削対象物に対して所定の姿勢であることが好ましい。制御装置は、ロボットアームを用いて研削砥石の姿勢を自在に制御し、所定の姿勢にすることができる。
 本開示の一態様に係るマスタスレーブシステムにおいて、前記制御装置は、前記作用部の姿勢を所定の姿勢に移行させるための移行指令を受け付ける受付部をさらに含み、前記受付部が前記移行指令を受け付けると、前記第1指令部は、前記作用部の姿勢を前記所定の姿勢にさせるための指令を出力してもよい。上記態様によると、制御装置は、移行指令に従って、作用部の姿勢を所定の姿勢に移行させる。例えば、所定の姿勢は作用部の好ましい姿勢又は基本的な姿勢等であってもよい。そして、上記のような作用部の姿勢の移行は、操作端を用いた操作を必要とせず、簡易に実行可能である。
 本開示の一態様に係るマスタスレーブシステムにおいて、前記力付与部は、前記力付与部が与える力によって前記操作端を移動させることができるように前記操作端と接続され、前記受付部が前記移行指令を受け付けると、前記第2指令部は、前記操作端の姿勢を前記所定の姿勢に対応する姿勢にさせる前記操作端への力を前記力付与部に与えさせるための指令をさらに出力してもよい。上記態様によると、制御装置は、移行指令に従って、作用部の姿勢を所定の姿勢に移行させ、且つ、操作端の姿勢を作用部の所定の姿勢に対応する姿勢に移行させる。よって、作用部及び操作端の両方の姿勢を対応させつつ目的とする姿勢にすることができる。
 本開示の一態様に係るマスタスレーブシステムにおいて、前記スレーブ装置は、前記作用部が前記対象物から受ける力を検出する力検出部をさらに備え、前記第1指令部は、前記作用部の前記所定の姿勢への移行中、前記力検出部が力を検出すると、前記作用部の位置を移動させ、且つ前記作用部の姿勢を前記所定の姿勢にさせるための指令を出力してもよい。上記態様によると、制御装置は、作用部の姿勢の移行中、接触及び衝突等により力検出部で力が検出されると、例えば、接触及び衝突等を回避するように作用部の位置を移動させ、且つ、作用部の姿勢を所定に姿勢にすることができる。よって、確実な姿勢の移行が可能になる。なお、力の検出後において、制御装置は、作用部の位置の移動と作用部の姿勢の移行とを並行して行ってもよく、作用部の姿勢の移行を停止し、作用部の位置の移動後に作用部の姿勢の移行を行ってもよい。後者の場合、制御装置は、作用部の位置の移動完了後に作用部の姿勢の移行を開始してもよく、作用部の位置の移動中に作用部の姿勢の移行を開始し、位置の移動と作用部の姿勢の移行とを並行して行ってもよい。
 本開示の一態様に係る制御方法は、マスタ装置によって操作されるスレーブ装置を制御する制御方法であって、前記マスタ装置の操作端に力が加えられることで入力される情報である操作情報と、前記スレーブ装置における対象物に作用を加える作用部の所定の移動を規制する規制条件とに従って、前記スレーブ装置の動作部によって前記作用部に前記規制条件が反映された動作をさせるための指令を出力することと、前記規制条件に従って、前記作用部の前記所定の移動を指令する前記操作端への入力に対抗する前記操作端への力を、前記マスタ装置に生成させるための指令を出力することとを含む。上記態様によると、本開示の一態様に係るマスタスレーブシステムと同様の効果が得られる。
 (実施の形態)
 以下において、本開示の実施の形態を、図面を参照しつつ説明する。なお、以下で説明する実施の形態は、いずれも包括的又は具体的な例を示すものである。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、添付の図面における各図は、模式的な図であり、必ずしも厳密に図示されたものでない。さらに、各図において、実質的に同一の構成要素に対しては同一の符号を付しており、重複する説明は省略又は簡略化される場合がある。また、本明細書及び請求の範囲では、「装置」とは、1つの装置を意味し得るだけでなく、複数の装置からなるシステムも意味し得る。
 [ロボットシステムの構成]
 実施の形態に係るロボットシステム1の構成を説明する。図1は、実施の形態に係るロボットシステム1の一例を示す概略図である。図1に示すように、実施の形態に係るロボットシステム1は、ロボット10と、制御装置20と、撮像装置30と、操作入力装置40と、提示装置50とを備える。ロボットシステム1は、マスタスレーブシステムを構成し、ロボット10はスレーブ装置を構成し、操作入力装置40はマスタ装置を構成する。制御装置20は、ロボットシステム1の全体の動作を制御する。制御装置20は、ロボット10と操作入力装置40との間でバイラテラル制御を行う。
 ロボット10は、本実施の形態では産業用ロボットである。ロボット10は、基台13上に固定して配置されるが、搬送装置等の移動可能な装置に配置され、移動できるように構成されてもよい。ロボット10は、処理の対象物に対して作用を加える作用部としてのエンドエフェクタ11と、当該作用を実行するようにエンドエフェクタ11を動かす動作部としてのロボットアーム12とを備える。本実施の形態では、エンドエフェクタ11は、対象物に対して研削の作用を加えるように構成されるとして、以下の説明を行う。このようなエンドエフェクタ11は、対象物に対して研削を施す研削装置11aを備え、ロボットアーム12の先端に取り付けられる。なお、エンドエフェクタ11の作用は、研削に限定されず、いかなる作用であってもよい。例えば、エンドエフェクタ11の作用は、作用対象に対して好ましいエンドエフェクタ11の姿勢が存在する作用であってもよい。
 本明細書及び請求の範囲において、「研削」は、対象物の不要な部分を除去することで所要の寸法及び形状等にする加工である切削と、対象物の表面を削り取ることで所要の寸法、形状及び表面粗さ等にする加工である研削と、対象物の表面を滑らかにする加工である研磨とを含み得る。
 研削装置11aの例は、グラインダ、オービタルサンダ、ランダムオービットサンダ、デルタサンダ及びベルトサンダ等の電力又は空気圧を動力源とする研削装置であるが、これに限定されない。グラインダは、円盤状の研削砥石を回転させるタイプ、円錐状又は柱状の研削砥石を回転させるタイプ等のグラインダであってもよい。
 本実施の形態では、「研削」は、金属製の対象物Wの研削対象領域WA内の不要な部分を削り取り、研削対象領域WAの表面を滑らかにする加工であるとし、研削装置11aは、円盤状の研削砥石11bを備える電動ディスクグラインダであるとして以下の説明を行う。研削対象領域WA内の不要な部分の例は、対象物Wの溶接ビードのような溶接痕等である。研削装置11aは、回転する研削砥石11bが研削対象領域WA内の溶接痕等に押し当てられることで、当該溶接痕及びその周辺を研削する。図1に示される対象物Wは、大型タンクの壁である。
 ロボットアーム12は、その先端の研削装置11aの位置及び/又は姿勢を変更することができる構成を有すれば、特に限定されないが、本実施の形態では、垂直多関節型ロボットアームである。なお、ロボットアーム12は、例えば、水平多関節型、極座標型、円筒座標型、直角座標型、又はその他の型式のロボットアームとして構成されてもよい。
 ロボットアーム12は基台13に固定される。ロボットアーム12は、その基部から先端に向かって順に配置されたリンク12a、12b、12c、12d及び12fと、リンク12a、12b、12c、12d及び12fを順次回転可能に接続する関節JT1、JT2、JT3、JT4、JT5及びJT6と、関節JT1、JT2、JT3、JT4、JT5及びJT6それぞれを回転駆動するアーム駆動装置M1、M2、M3、M4、M5及びM6とを備える。リンク12aは関節JT1を介して基台13に取り付けられる。リンク12fの先端部はメカニカルインタフェースを構成し、エンドエフェクタ11と接続される。アーム駆動装置M1、M2、M3、M4、M5及びM6の動作は制御装置20によって制御される。アーム駆動装置M1、M2、M3、M4、M5及びM6はそれぞれ、電力を動力源とし、これらを駆動する電気モータとしてサーボモータMa(図6参照)を有するが、これに限定されない。なお、ロボットアーム12の関節の数量は、6つに限定されず、7つ以上又は5つ以下であってもよい。
 図2は、実施の形態に係るエンドエフェクタ11の構成の一例を示す側面図である。図3は、図2のエンドエフェクタ11の力センサ11eの検出軸の一例を示す側面図である。図2に示すように、エンドエフェクタ11は、研削装置11aと、研削砥石11bと、取付具11cと、力センサ11eとを備える。取付具11cは、研削装置11aを支持し且つリンク12fと接続されるように構成され、研削装置11aをリンク12fに取り付ける。力センサ11eは、取付具11cとリンク12fとの間に配置され、取付具11cからリンク12fに作用する力である反力を検出し制御装置20に出力する。反力は、研削作業時に研削装置11aが対象物Wから受ける力である。力センサ11eは力検出部の一例である。
 図3に示すように、本実施の形態では、力センサ11eは、互いに直交するXe軸、Ye軸及びZe軸それぞれの軸方向の力Fxe、Fye及びFzeと、Xe軸、Ye軸及びZe軸それぞれの軸周りの回転力であるモーメントMxe、Mye及びMzeとの6軸の力を検出する。Ze軸は、リンク12fの捻れ回転軸S6と同一の軸であり、Ze軸正方向は、リンク12fからエンドエフェクタ11に向かう方向である。リンク12fのメカニカルインタフェースを構成するインタフェース面12faとZe軸との交点が原点Oeである。Xe軸及びYe軸は、インタフェース面12fa上に沿って延びる軸である。なお、力センサ11eは上記6軸の力を検出するセンサに限定されず、例えば、上記6軸の力のうちのいくつかを検出するセンサであってもよい。
 図1及び図2に示すように、撮像装置30は、ロボットアーム12のリンク12eに配置される。撮像装置30は、カメラ(図示略)を備え、被写体を照明するためのLED(light emitting diode)及びストロボ等の光源をさらに備えてもよい。撮像装置30のカメラは、捻れ回転軸S6の軸方向に沿い且つエンドエフェクタ11に向かう方向に指向され、研削対象領域WA及びその周辺を撮像することができる。なお、撮像装置30の位置は、研削対象領域WAを撮像できる位置であればよく、リンク12e以外のロボットアーム12上の位置、又は、ロボットアーム12の外部の位置であってもよい。撮像装置30は、制御装置20の指令に従って、カメラに撮像動作をさせる。撮像装置30は、カメラによって撮像された画像の信号等を制御装置20に送る。なお、以下の説明において、カメラが撮像することを、撮像装置30が撮像すると表現する場合がある。
 撮像装置30のカメラは、被写体までの距離等の撮像装置30に対する被写体の3次元空間内の位置である3次元位置等を検出するための画像を撮像する。例えば、当該カメラは、デジタル画像を撮像するカメラであり、ステレオカメラ、単眼カメラ、TOFカメラ(トフカメラ:Time-of-Flight-Camera)、縞投影等のパターン光投影カメラ、又は光切断法を用いたカメラ等の構成を有してもよい。本実施の形態では、撮像装置30のカメラはステレオカメラである。
 図4は、実施の形態に係る操作入力装置40の操作装置400の構成の一例を示す斜視図である。図5は、図4の操作装置400の力センサ405の検出軸の一例を示す斜視図である。図6は、実施の形態に係るロボットシステム1の機能的な構成の一例を示すブロック図である。図1、図4及び図6に示すように、操作入力装置40は、ロボット10から離れて配置され、ロボットシステム1を管理及び/又は操作するユーザPによる指令、データ及び情報等の入力を受け付け、当該指令、データ及び情報等を制御装置20に出力する。操作入力装置40は制御装置20と有線通信又は無線通信を介して接続される。有線通信及び無線通信の形式はいかなる形式であってもよい。
 操作入力装置40は、操作装置400と、入力装置410と、操作制御装置420とを備える。操作制御装置420は、操作入力装置40全体の動作を制御し、制御装置20と情報、指令及びデータ等の送受信を行う。操作装置400は、ロボット10を手動運転で操作するための入力を受け付け、入力された情報である操作情報を操作制御装置420に出力する。また、操作装置400は、操作制御装置420の制御によって、操作装置400を操作しているユーザPに、操作力に対する反力等の力を与える。
 入力装置410は、情報、指令及びデータ等の入力を受け付け、操作制御装置420に出力する。例えば、入力装置410は、レバー、ボタン、キー、タッチパネル、ジョイスティック、モーションキャプチャ等の既知の入力装置を備えてもよい。入力装置410は、撮像装置30の動作、エンドエフェクタ11を所定の姿勢にする指令などの様々な指令、制御モードの切り替え、研削の対象物の情報及び研削対象領域の情報等の入力を受け付ける。エンドエフェクタ11の所定の姿勢は、研削対象領域の表面に対するエンドエフェクタ11の所定の姿勢であってもよい。研削対象領域の表面に対するエンドエフェクタ11の姿勢は、研削対象領域の表面に対する研削砥石11bの姿勢である。研削対象領域の情報は、研削対象領域の数量、位置、姿勢、形状及び寸法等の情報を含んでもよい。
 図4に示すように、操作装置400は、把持部401と、支持部402と、アーム403と、モータ404と、力センサ405とを備える。把持部401は、ユーザPによって把持可能であるように構成される。本実施の形態では、把持部401は、研削装置11aであるグラインダと同様の形状を有するが、これに限定されない。把持部401は、ユーザPが握ることができる2つのハンドル部401a及び401bを含む。ユーザPは、研削装置11aを把持して実際に研削するようにハンドル部401a及び401bを握った状態で把持部401を移動させることによって、ロボット10を操作し研削動作させる。また、把持部401は、研削装置11aの操作等のための押しボタン等の入力部401cを含む。把持部401は操作端の一例である。
 支持部402は、把持部401を支持する。支持部402は、6つのアーム403によって移動可能に支持されている。6つのアーム403は、3つのペアで構成される。3つのペアのアーム403は、支持部402から3方向に放射状に延びる。各アーム403は、関節403aを有し、関節403aを中心に屈曲可能である。各アーム403の一端は、ボールジョイント等の自在継手を介して、直交する3軸周りに回動可能に支持部402と接続される。各アーム403の他端は、支持部402の下方の支持台406上に配置されたモータ404の回転軸と、減速機等(図示略)を介して接続される。各アーム403の関節403aは、当該アーム403を構成する2つの柱状部材を、ボールジョイント等の自在継手を介して、直交する3軸周りに回動可能に接続する。
 6つのモータ404が支持台406上に配置されている。6つのモータ404は、3つのペアで構成される。各ペアのモータ404は、それぞれの回転軸が同軸となるように配置され、1つのペアのアーム403と接続される。3つのペアのモータ404は、それぞれの回転軸が三角形の各辺を構成するように配置されている。各モータ404は、サーボモータ等で構成される。
 上述のような把持部401は、3次元空間内で様々な位置及び姿勢をとることができる。そして、把持部401の位置及び姿勢に対応して、各アーム403が動作し各モータ404を回転させる。把持部401の位置及び姿勢に対応する6つのモータ404の回転量つまり回転角は、一義的に定まる。
 力センサ405は、把持部401と支持部402との間に配置され、この間に作用する力を検出する。図5に示すように、本実施の形態では、力センサ405は、互いに直交するXc軸、Yc軸及びZc軸それぞれの軸方向の力Fxc、Fyc及びFzcと、Xc軸、Yc軸及びZc軸それぞれの軸周りの回転力であるモーメントMxc、Myc及びMzcとの6軸の力を検出する。
 Zc軸は、把持部401における力センサ405との円形接触面401dの中心を通り且つ接触面401dと垂直な軸である。Zc軸正方向は、力センサ405から把持部401に向かう方向である。接触面401dとZc軸との交点が原点Ocである。Xc軸及びYc軸は、接触面401d上に沿って延びる軸である。また、これに限定されないが、本実施の形態では、Xc軸、Yc軸及びZc軸はそれぞれ、エンドエフェクタ11の力センサ11eのXe軸、Ye軸及びZe軸と対応付けられている。例えば、Xc軸正方向はXe軸負方向に対応し、Yc軸正方向はYe軸正方向に対応し、且つZc軸正方向はZe軸負方向に対応してもよく、又は、Xc軸正方向はXe軸正方向に対応し、Yc軸正方向はYe軸正方向に対応し、且つZc軸正方向はZe軸正方向に対応してもよい。なお、力センサ405は上記6軸の力を検出するセンサに限定されず、例えば、上記6軸の力のうちのいくつかを検出するセンサであってもよい。力センサ405は操作検出部の一例であり、モータ404は力付与部の一例である。
 本実施の形態では、制御装置20は、操作装置400とロボット10との間で位置、姿勢及び力の状態を対応させるようにバイラテラル方式での力覚制御を行う。これに限定されないが、各モータ404は、サーボモータの回転子の回転量を検出するエンコーダ等の回転センサ(図示略)と、サーボモータの駆動電流を検出する電流センサ(図示略)とを備える。操作制御装置420は、力センサ405の6軸の力の検出信号(以下、「力信号」とも呼ぶ)を含む操作情報を、位置、姿勢、位置及び姿勢の移動速度並びに力等を指令する操作指令として制御装置20に出力する。制御装置20は、各モータ404の回転センサ及び電流センサの検出信号(以下、「回転信号」及び「電流信号」とも呼ぶ)を、把持部401へ付与する力をモータ404に発生させるためのフィードバック情報として用いる。なお、制御装置20は、サーボモータの駆動回路が当該サーボモータに供給する電流の指令値をフィードバック情報として用いてもよい。操作指令は、操作情報の一例である。
 制御装置20は、操作指令を用いて後述する動作指令等を生成する。動作指令は、操作指令に従ったエンドエフェクタ11の3次元の位置、姿勢、位置及び姿勢の移動速度並びに作用力等の指令を含む。さらに、制御装置20は、エンドエフェクタ11の力センサ11eの検出信号が示す6軸の力データと操作装置400のフィードバック情報とに基づいて、各モータ404の出力トルクを制御する。つまり、制御装置20は6つのモータ404をサーボ制御する。制御装置20は、把持部401に付与すべき力を発生させるように各モータ404の出力トルクを制御する。例えば、上記力は、ユーザPによる把持部401の操作力に対する力センサ11eの力データに対応した反力、及び、操作力に対して把持部401の位置及び/又は姿勢の移動を規制する力等である。
 操作装置400の構成は、図4の構成に限定されず、例えば、ユーザPによって操作される部位の移動を制限できる構成であればよい。例えば、操作装置400の構成は、操作される部位に力を与えることで当該部位の移動を制限する構成であってもよく、当該部位の移動を機械的に制限する構成であってもよい。例えば、操作装置400は、ロボットアーム12と類似するマスタロボットで構成され、ロボット10がスレーブロボットとして制御されるように構成されてもよい。又は、操作装置400は、ジョイスティック等であってもよい。
 また、操作装置400の構成は、ユーザPによって把持部401に力を加える操作が行われると、当該力に対応する操作情報を検出する構成であるが、これに限定されない。例えば、操作装置400において、力が加えられることによって移動する把持部401の位置及び姿勢の移動量が操作情報として検出されてもよい。上記移動量は各モータ404の回転量から検出されてもよい。さらに、操作情報として、把持部401に加えられる力が、各モータ404の負荷から検出されてもよい。
 提示装置50は、制御装置20から受け取るロボットシステム1を動作させるための画像及び音声等を、ロボットシステム1のユーザPに提示する。提示装置50の例は、液晶ディスプレイ(Liquid Crystal Display)及び有機又は無機ELディスプレイ(Electro-Luminescence Display)等であるが、これらに限定されない。提示装置50は、音声を発するスピーカを備えてもよい。例えば、提示装置50は、撮像装置30によって撮像された画像を、操作入力装置40を操作するユーザPに提示する。
 [制御装置のハードウェア構成]
 制御装置20のハードウェア構成を説明する。図7は、実施の形態に係る制御装置20のハードウェア構成の一例を示すブロック図である。図7に示すように、制御装置20は、CPU(Central Processing Unit)201と、ROM(Read Only Memory)202と、RAM(Random Access Memory)203と、メモリ204と、入出力I/F(インタフェース:Interface)205及び206と、駆動I/F207及び208と、撮像I/F209とを構成要素として含む。上記構成要素はそれぞれ、バス、有線通信又は無線通信を介して接続されている。なお、上記構成要素の全てが必須ではない。
 例えば、CPU201はプロセッサであり、制御装置20の動作の全体を制御する。ROM202は不揮発性半導体メモリ等で構成され、CPU201に動作を制御させるためのプログラム及びデータ等を格納する。RAM203は揮発性半導体メモリ等で構成され、CPU201で実行するプログラム及び処理途中又は処理済みのデータ等を一時的に格納する。メモリ204は、揮発性メモリ及び不揮発性メモリなどの半導体メモリ、ハードディスク(HDD:Hard Disc Drive)及びSSD(Solid State Drive)等の記憶装置で構成され、種々の情報を記憶する。
 例えば、CPU201が動作するためのプログラムは、ROM202又はメモリ204に予め保持されている。CPU201は、ROM202又はメモリ204からプログラムをRAM203に読み出して展開する。CPU201は、RAM203に展開されたプログラム中のコード化された各命令を実行する。
 制御装置20の各機能は、CPU201、ROM202及びRAM203等からなるコンピュータシステムにより実現されてもよく、電子回路又は集積回路等の専用のハードウェア回路により実現されてもよく、上記コンピュータシステム及びハードウェア回路の組み合わせにより実現されてもよい。
 このような制御装置20は、例えば、マイクロコントローラ、MPU(Micro Processing Unit)、LSI(Large Scale Integration:大規模集積回路)、システムLSI、PLC(Programmable Logic Controller)、論理回路等で構成されてもよい。制御装置20の複数の機能は、個別に1チップ化されることで実現されてもよく、一部又は全てを含むように1チップ化されることで実現されてもよい。また、回路はそれぞれ、汎用的な回路でもよく、専用の回路でもよい。LSIとして、LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、LSI内部の回路セルの接続及び/又は設定を再構成可能なリコンフィギュラブルプロセッサ、又は、特定用途向けに複数の機能の回路が1つにまとめられたASIC(Application Specific Integrated Circuit)等が利用されてもよい。
 撮像I/F209は、CPU201の指令に従って、撮像装置30のカメラの撮像素子(図示略)の駆動を制御する。撮像I/F209は、撮像装置30によって撮像された画像の信号をRAM203又はメモリ204に取り込む。撮像装置30の駆動のための回路等が、制御装置20の内部又は外部における撮像I/F209と撮像装置30との間に設けられてもよい。
 第1入出力I/F205は、操作入力装置40と接続され、情報、データ及び指令等の信号を入出力する。信号を変換及び増幅等する回路等が、制御装置20の内部又は外部における第1入出力I/F205と操作入力装置40との間に設けられてもよい。
 第2入出力I/F206は、提示装置50と接続され、画面データ、音声データ、情報及び指令等の信号を入出力する。信号を変換及び増幅等する回路等が、制御装置20の内部又は外部における第2入出力I/F206と提示装置50との間に設けられてもよい。
 第1駆動I/F207は、ロボット10のアーム駆動装置M1、M2、M3、M4、M5及びM6と接続され、情報及び指令等の信号を入出力する。アーム駆動回路(図示略)が、制御装置20の内部又は外部における第1駆動I/F207とアーム駆動装置M1、M2、M3、M4、M5及びM6との間に設けられる。アーム駆動回路は、CPU201の指令に従って、アーム駆動装置M1、M2、M3、M4、M5及びM6のサーボモータに電力を供給し各サーボモータの駆動を制御する。
 第2駆動I/F208は、エンドエフェクタ11の研削装置11aと接続され、情報及び指令等の信号を入出力する。研削駆動回路(図示略)が、制御装置20の内部又は外部における第2駆動I/F208と研削装置11aとの間に設けられる。研削駆動回路は、CPU201の指令に従って、研削装置11aに電力を供給し研削装置11aの駆動を制御する。
 [ロボットシステムの機能的構成]
 ロボットシステム1の機能的構成を説明する。図6に示すように、操作入力装置40の操作制御装置420は、入力処理部421と動作制御部422とを機能的構成要素として含む。制御装置20は、撮像制御部20aと、画像処理部20b及び20cと、動作指令部20d及び20eと、動作制御部20fと、動作情報処理部20gと、姿勢決定部20hと、回避判定部20iと、回避経路決定部20jと、記憶部20pとを機能的構成要素として含む。上記機能的構成要素の全てが必須ではない。
 操作制御装置420の入力処理部421及び動作制御部422の機能は、CPU等のコンピュータシステム、ハードウェア回路、又は、コンピュータシステム及びハードウェア回路の組み合わせによって実現される。制御装置20の記憶部20pを除く機能的構成要素の機能は、CPU201等によって実現され、記憶部20pの機能は、メモリ204、ROM202及び/又はRAM203によって実現される。
 操作制御装置420の入力処理部421は、入力装置410、力センサ405及びモータ404から受け取る情報、データ及び指令等を制御装置20に出力する。例えば、入力処理部421は、入力装置410から、撮像装置30の動作の指令、所定の姿勢への移行の指令、制御モードの切り替えの指令、研削の対象物の情報及び研削対象領域の情報等を受け取る。
 撮像装置30の動作の指令は、撮像開始、撮像終了及び撮像タイミングの指令等を含む。所定の姿勢への移行の指令は、エンドエフェクタ11及び研削装置11aの姿勢を予め設定された姿勢に移行させる指令である。所定の姿勢の例は、研削動作のための基本姿勢等である。制御モードの切り替えの指令の例は、エンドエフェクタ11及び操作装置400の把持部401の移動の少なくとも一部を規制する規制モードと、上記規制をしない非規制モードとを切り替える指令等である。
 また、入力処理部421は、力センサ405の力信号から6軸の力の検出値を検出する。さらに、入力処理部421は、6軸の力の検出値、又は、6軸の力の検出値の演算処理値を制御装置20に出力する。例えば、入力処理部421は、6軸の力の検出値を演算処理することで、エンドエフェクタ11に対する操作指令を生成し制御装置20に出力する。操作指令は、エンドエフェクタ11の位置の変化量、変化方向及び変化速度、並びに、姿勢の変化量、変化方向及び変化速度等を指令する操作位置指令と、エンドエフェクタ11が対象物に加える作用力の大きさ及び方向等を指令する操作力指令とを含む。
 また、入力処理部421は、各モータ404から回転センサ及び電流センサの検出信号を受け取り、当該検出信号から各モータ404の回転量及び電流値を検出し、フィードバック情報として制御装置20に出力する。
 動作制御部422は、各モータ404の駆動を制御する。具体的には、動作制御部422は、制御装置20の第2動作指令部20eから、操作駆動指令及び/又は操作規制指令を含む動作指令を受け取る。動作制御部422は、上記動作指令に従って、各モータ404に回転負荷(「負荷トルク」とも呼ばれる)等のトルクを発生させる。この回転負荷は、ユーザPが把持部401に与える操作力に対抗する力として作用する。動作制御部422は、各モータ404で検出される回転量及び電流値をフィードバック情報として用いて、各モータ404のトルクを制御する。
 操作駆動指令は、エンドエフェクタ11が研削の対象物から受ける反力の大きさ及び方向に対応する反力を把持部401に与えるための指令を含む。上記反力の大きさ及び方向は、力センサ11eで検出される力の大きさ及び方向に対応する。また、操作駆動指令は、把持部401の位置及び姿勢をエンドエフェクタ11の位置及び姿勢に対応させるように把持部401を移動させるための力を把持部401に与えるための指令を含む。動作制御部422は、操作駆動指令に従った大きさ及び方向の力を把持部401に与えるように各モータ404に駆動させるための制御指令を生成し、当該モータ404に出力する。これにより、ユーザPは、例えば、対象物から反力を受けているように把持部401から反力を感じつつ把持部401を操作する。また、把持部401の位置及び姿勢がエンドエフェクタ11の位置及び姿勢と対応するように、モータ404が把持部401を移動させる。
 操作規制指令は、規制モードにおいて把持部401の移動の少なくとも一部を規制する規制力を把持部401に与えるための指令である。上記規制力は、記憶部20pに記憶される規制条件20pbに従った規制力であり、把持部401の位置の移動及び姿勢の移動の少なくとも一部を制限する力の大きさ及び方向を含む。例えば、上記規制力は、規制条件20pbで規制されるエンドエフェクタ11の位置及び姿勢の移動に対応する把持部401の位置及び姿勢の移動量を0(零)にするための力の大きさ及び方向を含む。動作制御部422は、操作規制指令に従った大きさ及び方向の規制力を把持部401に与えるように各モータ404に駆動させるための制御指令を生成し、当該モータ404に出力する。これにより、ユーザPは、例えば、上記移動をさせないような規制を把持部401に受けているように感じつつ、把持部401を操作する。さらに、規制力は、ユーザPが把持部401に上記移動をさせる操作力を与えても把持部401に上記移動をさせないようにすることも可能である。
 なお、操作規制指令の規制力の大きさは、予め決められた大きさであってもよく、動作制御部422が、力センサ405の検出値に対応して上記規制力を調節してもよい。例えば、動作制御部422は、ユーザPが把持部401に与える操作力に対応して、規制された移動方向への力センサ405の検出値以上の大きさに規制力の大きさを調節してもよい。
 制御装置20の記憶部20pは、種々の情報を記憶し、記憶している情報の読み出しを可能にする。例えば、記憶部20pは、操作入力装置40の入力装置410を介して入力される情報等を記憶する。また、記憶部20pは、画像処理に用いられる情報として、撮像装置30のカメラの外部パラメタと内部パラメタと含むカメラパラメタを記憶する。外部パラメタの例は、カメラの位置(3次元位置)及び向き(光軸中心の向き)等を示すパラメタである。内部パラメタの例は、カメラのレンズの歪み、焦点距離、撮像素子の1画素のサイズ及び光軸中心の画素座標等を示すパラメタである。また、記憶部20pは、ロボット10によって研削処理される対象物と当該対象物の研削対象領域の位置、形状及び寸法等とを関連付けて記憶してもよい。また、記憶部20pは、撮像装置30によって撮像された画像データ、当該画像データの処理画像データ及び/又はプログラム等を記憶してもよい。また、記憶部20pは、姿勢情報20paと、規制条件20pbと、回避情報20pcとを記憶する。
 規制条件20pbは、エンドエフェクタ11の位置及び姿勢の移動の少なくとも一部を規制するための情報である。具体的には、規制条件20pbは、位置の移動方向及び姿勢の移動方向のうちの少なくとも1つの方向へエンドエフェクタ11を移動させないように、エンドエフェクタ11の移動を制限するための情報を含む。本実施の形態では、規制条件20pbは、エンドエフェクタ11の姿勢の移動のみを規制するが、規制条件20pbは、位置の移動のみを規制してもよく、位置及び姿勢の両方の移動を規制してもよい。規制条件20pbは、操作制御装置420の操作指令の操作位置指令に対して制限を加えるための情報であってもよく、操作指令に基づき第1動作指令部20dによって生成されるエンドエフェクタ11の動作指令の位置指令に対して制限を加えるための情報であってもよい。
 ここで、エンドエフェクタ11の動作指令は、位置指令及び力指令の少なくとも位置指令を含み、本実施の形態では、両方を含む。位置指令は、エンドエフェクタ11の位置を表す。力指令は、エンドエフェクタ11が対象物に加える力を表す。位置指令は、エンドエフェクタ11の3次元位置及び3次元姿勢の指令を含んでもよい。さらに、位置指令は、3次元位置及び3次元姿勢の指令の実行時刻を含んでもよい。力指令は、力の大きさ及び力の方向の指令を含んでもよい。さらに、力指令は、力の大きさ及び方向の指令の実行時刻を含んでもよい。本明細書及び請求の範囲において、「力」とは、力の大きさ及び方向のうちの少なくとも力の大きさを含み、「位置」とは、3次元位置及び3次元姿勢のうちの少なくとも3次元位置を含み得ることを意味する。
 3次元位置及び3次元姿勢は、3次元空間内での位置及び姿勢である。3次元位置及び3次元姿勢は、ワールド座標系及びロボット座標系等を用いて定義されてもよい。ワールド座標系は、ロボット10が配置される空間に設定される座標系である。ロボット座標系は、ロボット10を基準とする座標系であり、例えば、ロボットアーム12が据え付けられる基台13を基準とする座標系であってもよい。本実施の形態では、ロボットアーム12が固定されているため、ワールド座標系とロボット座標系とは同じであるとして設定される。
 例えば、エンドエフェクタ11の姿勢の移動を規制する規制条件20pbは、操作位置指令及び位置指令に含まれる姿勢の変位及び移動速度等の指令に対して制限する情報を含んでもよい。例えば、規制条件20pbは、力センサ11e及び405の3軸周りの力のモーメントに対応する3軸周りの回転変位及び回転速度等を、0(零)等の制限値に制限する情報を含んでもよい。これに限定されないが、本実施の形態では、規制条件20pbは、力センサ11eのXe軸及びYe軸の各軸周りの回転変位及び回転速度等、又は、Xe軸、Ye軸及びZe軸の各軸周りの回転変位及び回転速度等を制限する。又は、規制条件20pbは、力センサ405のXc軸及びYc軸の各軸周りの回転変位及び回転速度等、又は、Xc軸、Yc軸及びZc軸の各軸周りの回転変位及び回転速度等を制限する。
 例えば、Xe軸及びXc軸周りの回転移動はそれぞれ、エンドエフェクタ11及び把持部401のピッチング方向の移動に対応する。Ye軸及びYc軸周りの回転移動はそれぞれ、エンドエフェクタ11及び把持部401のローリング方向の移動に対応する。Ze軸及びZc軸周りの回転移動はエンドエフェクタ11及び把持部401のヨーイング方向の移動に対応する。
 例えば、エンドエフェクタ11の位置の移動を規制する規制条件20pbは、操作位置指令及び位置指令に含まれる位置の変位及び移動速度等の指令に対して制限する情報を含んでもよい。例えば、規制条件20pbは、力センサ11e及び405の3軸方向の力に対応する3軸方向の位置の変位及び移動速度等を、0等の制限値に制限する情報を含んでもよい。例えば、エンドエフェクタ11の移動方向に直交する方向のエンドエフェクタ11の位置の移動が規制される場合、規制条件20pbは、3軸方向の位置の変位及び移動速度等のうち、上記移動方向に直交する方向の成分を0等の制限値に制限する情報を含んでもよい。なお、エンドエフェクタ11の移動方向は、エンドエフェクタ11の軌跡の近似直線の方向、及びエンドエフェクタ11の軌跡の接線の方向等の、研削作業中にエンドエフェクタ11が移動される方向であってもよい。
 姿勢情報20paは、エンドエフェクタ11に設定された所定の姿勢の情報である。制御装置20は、操作入力装置40に入力される移行指令に対応して、エンドエフェクタ11の姿勢を所定の姿勢に移行させる。本実施の形態では、所定の姿勢は、研削作業時のエンドエフェクタ11の基本的な姿勢である基本姿勢として設定される。以下において、所定の姿勢を基本姿勢とも表記する。基本姿勢は、研削作業時のエンドエフェクタ11の好ましい姿勢でもある。基本姿勢は、ロボット10に対する姿勢、及び研削対象領域WAの表面に対する姿勢等として設定されてもよい。本実施の形態では、基本姿勢は、研削対象領域WAの表面に対する姿勢として設定される。
 回避情報20pcは、移行指令に従ったエンドエフェクタ11の姿勢の移行に支障が生じたときにエンドエフェクタ11の位置を移動させるための情報である。例えば、上記支障は、エンドエフェクタ11が他の物体と接触又は衝突等することにより基本姿勢に移行できないことである。上記支障は、制御装置20によって、移行中の力センサ11eの検出値に基づき検出される。回避情報20pcは、力センサ11eによって検出される反力の方向と反対の方向以外の方向への所定の距離での位置の移動を指令する情報であってもよい。又は、回避情報20pcは、例えばZe軸負方向等の予め決められた方向及び距離での位置の移動を指令する情報であってもよい。
 撮像制御部20aは、撮像装置30の動作を制御し、撮像装置30によって撮像された画像データを取得する。撮像制御部20aは、ステレオカメラを備える撮像装置30によって同時刻に撮像された2つの画像データを対応付けて画像処理部20b及び20c等に出力する。撮像装置30によって画像を撮像すること、及び、撮像装置30によって撮像された画像データを取得することは、撮像装置30によって撮像された1つの静止画像データを取得すること、及び、撮像装置30によって撮像された動画データから1フレームの静止画像データを取得することを含む。
 第1画像処理部20bは、撮像制御部20aから取得された画像データを処理することで、当該画像データに写し出される被写体の各位置の3次元位置を検出し、各位置の3次元位置を表す画像データである3次元画像データを生成する。具体的には、第1画像処理部20bは、撮像装置30によって同時刻に撮像された2つの画像データそれぞれに写し出される研削対象領域WAを特定する。例えば、第1画像処理部20bは、記憶部20pに記憶される研削対象領域WAの形状とのパターンマッチング手法等で比較することにより、各画像データにおいて研削対象領域WAのエッジを抽出してもよい。さらに、第1画像処理部20bは、記憶部20pに記憶されるカメラパラメタを用いたステレオマッチング手法等で画像処理することにより、当該2つの画像データの少なくとも一方の研削対象領域WA内において、少なくとも3つの画素に写し出される被写体と撮像装置30との距離を検出する。さらに、第1画像処理部20bは、距離が検出された各画素に写し出される被写体について、ロボットシステム1が存在する3次元空間内での3次元位置を検出する。
 さらに、第1画像処理部20bは、研削対象領域WAの少なくとも3つの画素の3次元位置を用いて、当該3次元位置が3次元空間内で形成する平面を研削対象領域WAの表面として検出する。なお、上記平面の検出方法は、既知のいかなる方法であってもよい。例えば、第1画像処理部20bは、少なくとも3つの画素の3次元位置を通る平面を研削対象領域WAの表面として検出してもよい。又は、第1画像処理部20bは、少なくとも3つの画素の3次元位置又はその近傍を通る平面、つまり、少なくとも3つの上記3次元位置に近似する平面を研削対象領域WAの表面として検出してもよい。又は、第1画像処理部20bは、少なくとも3つの画素の3次元位置を通る曲面を検出し、当該曲面の法線に垂直であり且つ当該曲面と交点を有する平面を研削対象領域WAの表面として検出してもよい。第1画像処理部20bは、研削対象領域WAの表面の3次元位置及び3次元姿勢等の情報を姿勢決定部20h及び記憶部20p等に出力する。
 第2画像処理部20cは、撮像制御部20aから取得された画像データを提示装置50に出力し表示させる。第2画像処理部20cは、第1画像処理部20bから処理済みの画像データを取得し、研削対象領域WAの3次元形状を表す画像データを提示装置50に出力してもよい。例えば、上記画像データは、各画素の画素値が撮像装置30から被写体までの距離値である距離画像等であってもよい。距離値は、画素の濃淡又は色で表されてもよい。
 姿勢決定部20hは、操作入力装置40に入力される姿勢の移行指令に対応して、エンドエフェクタ11に移行させる基本姿勢を決定する。姿勢決定部20hは、操作入力装置40からエンドエフェクタ11の姿勢の移行指令を受け取ると、第1画像処理部20bに研削対象領域WAの表面の情報を要求する。第1画像処理部20bは、撮像制御部20aに研削対象領域WAの撮像を要求し、撮像制御部20aから受け取る画像データを画像処理することで、研削対象領域WAの表面の3次元位置及び3次元姿勢等の情報を検出し、姿勢決定部20hに出力する。姿勢決定部20hは、記憶部20pから姿勢情報20paを読み出し、姿勢情報20paと研削対象領域WAの表面の情報とを用いて、研削対象領域WAの表面に対するエンドエフェクタ11の基本姿勢の情報を検出する。姿勢決定部20hは、各座標軸周りの姿勢角等の基本姿勢の情報を第1動作指令部20dに出力する。
 なお、姿勢情報20paが研削対象領域WAの表面に対する基本姿勢の情報ではなく、ロボット10に対する基本姿勢の情報を含む場合、姿勢決定部20hは、姿勢情報20paに含まれる基本姿勢の情報を、エンドエフェクタ11の基本姿勢の情報に決定する。
 第1動作指令部20dは、エンドエフェクタ11に目的とする動作をさせるための動作指令を生成し、動作制御部20fに出力する。動作指令は、研削装置11aを動作させるための指令を含んでもよい。第1動作指令部20dは第1指令部の一例である。
 例えば、第1動作指令部20dは、操作入力装置40から受け取る操作指令に対応する動作をエンドエフェクタ11にさせるための動作指令を生成する。さらに、第1動作指令部20dは、規制モードでは、記憶部20pの規制条件20pbを動作指令に適用し、規制条件が反映された動作指令を生成する。第1動作指令部20dは、規制条件が反映された動作指令及び/又は規制条件20pbを、第2動作指令部20eにも出力してもよい。また、第1動作指令部20dは、操作入力装置40から受け取る移行指令に従って基本姿勢にエンドエフェクタ11の姿勢を移動させるための動作指令を生成する。また、第1動作指令部20dは、回避経路決定部20jから受け取る回避経路に沿ってエンドエフェクタ11の位置を移動させるための動作指令を生成する。
 例えば、非規制モードでは、第1動作指令部20dは、操作指令に含まれる操作位置指令及び操作力指令を、ロボット座標系での位置指令及び力指令に変換し、当該位置指令及び力指令を含む動作指令を生成する。規制モードでは、第1動作指令部20dは、規制条件20pbを適用することで操作位置指令を処理し、処理後の操作位置指令と操作力指令とを用いて動作指令を生成し出力してもよい。又は、第1動作指令部20dは、操作位置指令と操作力指令とを用いて動作指令を生成し、規制条件20pbを適用することで当該動作指令を処理し、処理後の動作指令を出力してもよい。
 動作制御部20fは、第1動作指令部20dから受け取る動作指令に従ってロボット10の各部を動作させるための制御指令を生成し、ロボット10に出力する。動作制御部20fは、ロボット10の各部の動作状態の情報を動作情報処理部20gから取得し、当該情報をフィードバック情報として用いて制御指令を生成する。具体的には、動作制御部20fは、ロボットアーム12のアーム駆動装置M1、M2、M3、M4、M5及びM6のサーボモータMaとエンドエフェクタ11の研削装置11aのモータ(図示略)とを動作させるための制御指令を生成する。
 動作情報処理部20gは、ロボット10の動作情報を検出し処理する。動作情報処理部20gは、研削装置11aの通電状態等に基づき研削装置11aのON状態及びOFF状態を動作情報として検出する。動作情報処理部20gは、アーム駆動装置M1、M2、M3、M4、M5及びM6それぞれのサーボモータMaの回転センサMbの検出値と、当該サーボモータMaの電流センサMcの検出値と、エンドエフェクタ11の力センサ11eの検出値とを動作情報として取得する。なお、動作情報処理部20gは、サーボモータMaの駆動回路が当該サーボモータMaに供給する電流の指令値を動作情報として取得してもよい。動作情報処理部20gは、上記動作情報をフィードバック情報として動作制御部20f及び第2動作指令部20eに出力する。例えば、動作情報において、アーム駆動装置M1、M2、M3、M4、M5及びM6のサーボモータMaの回転センサMbの検出値、及び、サーボモータMaの電流センサMcの検出値は、エンドエフェクタ11の位置及び姿勢の変位及び変位速度を示す位置データであり、力センサ11eの検出値は、エンドエフェクタ11が受ける反力の大きさ及び方向を示す力データである。
 第2動作指令部20eは、操作装置400の把持部401への力の付与、及び、把持部401の位置及び姿勢の移動等のための動作指令であるモータ動作指令を生成し操作入力装置40に出力する。モータ動作指令は、操作駆動指令及び/又は操作規制指令を含む。第2動作指令部20eは第2指令部の一例である。
 例えば、第2動作指令部20eは、動作情報処理部20gから受け取る動作情報の力データに基づき、力センサ11eによって検出された力の大きさ及び方向に対応する反力を把持部401に与えるための操作駆動指令を含むモータ動作指令を生成する。
 また、第2動作指令部20eは、動作情報処理部20gから受け取る動作情報の位置データと操作入力装置40から受け取る把持部401の動作情報の位置データとを用いて、把持部401の位置及び姿勢をエンドエフェクタ11の位置及び姿勢に対応させるように把持部401を移動させるための操作駆動指令を含むモータ動作指令を生成する。操作駆動指令は、把持部401に対する位置指令及び力指令の少なくとも1つを含んでもよい。これにより、操作装置400のモータ404は、非規制モードで規制を受けずに動作するエンドエフェクタ11の位置及び姿勢、規制モードでの規制を受けて動作するエンドエフェクタ11の位置及び姿勢、移行指令に従って動作するエンドエフェクタ11の位置及び姿勢、並びに、回避経路に沿って動作するエンドエフェクタ11の位置及び姿勢等と、把持部401の位置及び姿勢とを対応させるように、把持部401を移動させることができる。
 例えば、把持部401の動作情報において、モータ404の回転センサ(図示略)の検出値は、把持部401の位置及び姿勢の変位及び変位速度を示す位置データであり、力センサ405の検出値は、把持部401に作用する力の大きさ及び方向を示す力データである。
 また、第2動作指令部20eは、規制モードにおいて、規制条件20pbによって制限された方向へのエンドエフェクタ11の移動を指令する把持部401への力の入力に対抗する力を把持部401に与えるための操作規制指令を含むモータ動作指令を生成する。例えば、上記の対抗する力は、規制条件20pbで規制されるエンドエフェクタ11の位置及び姿勢の移動に対応する把持部401の位置及び姿勢の移動量を0(零)にするための力の大きさ及び方向を含んでもよい。操作規制指令は、把持部401に対する位置指令及び力指令の少なくとも1つを含んでもよい。
 第2動作指令部20eは、操作入力装置40から受け取る力センサ405の検出値と、規制条件20pb及び/又は規制条件20pbが反映された動作指令とを用いて、上記モータ動作指令を生成してもよい。これにより、操作装置400のモータ404は、規制条件20pbによって制限された方向への把持部401の移動を阻止する力を把持部401に与えることができる。よって、規制条件20pbに従って動作するエンドエフェクタ11の位置及び姿勢と、把持部401の位置及び姿勢とが同様の挙動を示すことができる。
 回避判定部20iは、エンドエフェクタ11の基本姿勢への移行中、エンドエフェクタ11の位置を移動させる回避が必要であるか否かを判定し、判定結果を回避経路決定部20jに出力する。回避判定部20iは、エンドエフェクタ11の基本姿勢への移行中、力センサ11eが閾値よりも大きい力、つまり閾値超の力の入力を検出すると、回避が必要であると決定する。この場合、回避判定部20iは、回避を実行する指令と、力センサ11eによって検出された閾値超の力の方向とを回避経路決定部20jに出力する。閾値は、ロボットシステム1の作業環境、要求される力の検知感度及び対象物の種類等の様々な条件に対応して設定されてもよく、例えば、0以上の値で設定されてもよい。例えば、閾値は、エンドエフェクタ11の基本姿勢への移行を妨げるような力の大きさであってもよい。例えば、閾値は、エンドエフェクタ11と物体との接触を表すような力の大きさであってもよい。
 回避経路決定部20jは、エンドエフェクタ11を回避させるための回避経路を決定し、第1動作指令部20dに出力する。具体的には、回避経路決定部20jは、回避判定部20iから回避の実行指令を受け取ると、記憶部20pから回避情報20pcを読み出す。さらに、回避経路決定部20jは、回避判定部20iから受け取った力の方向を回避情報20pcに適用することによって、当該力の入力を回避するためのエンドエフェクタ11の位置の移動方向及び移動距離を含む回避経路を決定する。
 [ロボットシステムの動作]
 [非規制モードでの操作入力装置の操作によるロボットの動作]
 非規制モードでの操作入力装置40の操作装置400の操作によるロボット10の動作を説明する。図1、図4及び図6に示すように、例えば、ユーザPは、把持部401のハンドル部401a及び401bを握り、エンドエフェクタ11の研削装置11aの目的の位置への移動方向及び目的の姿勢への回動方向へ、把持部401を移動させ姿勢を変える。また、ユーザPは把持部401の入力部401cへの入力を与えることで、研削装置11aを起動させる。
 支持部402は、把持部401と一緒に移動し且つ姿勢を変え、6つのアーム403それぞれに屈曲及び姿勢変化等の動作をさせ、当該アーム403と接続されたモータ404の回転軸を回転させる。操作制御装置420は、当該モータ404の回転センサの回転信号及び力センサ405の力信号に基づく操作指令を制御装置20に出力する。
 制御装置20は、操作指令に基づき動作指令を生成し、当該動作指令に従ってロボット10を動作させる。制御装置20は、エンドエフェクタ11の位置の変化、姿勢の変化及び研削装置11aを介した対象物Wへの作用力が上記力信号を反映するように、ロボットアーム12を動作させる。これにより、ユーザPは、操作装置400の把持部401を操作して、ロボット10に意図する動作をさせることができる。
 さらに、制御装置20は、エンドエフェクタ11の力センサ11eの検出信号に基づく力データに対応する反力を把持部401に与えるために、当該反力に対応する負荷トルクを各モータ404に発生させる。これにより、ユーザPは、例えば、対象物Wから反力を受けているように把持部401から反力を感じつつ、把持部401の位置及び姿勢を操作することができる。
 把持部401の反力は、力センサ11eによって検出される力の大きさ及び方向を反映する。このような把持部401の反力は、対象物Wの表面状態に応じて異なる研削中の研削装置11aの状態を、ユーザPの手に感じさせることができる。例えば、把持部401の反力は、ユーザPが研削装置11aを手持ちし研削する場合にユーザPの手が受ける感触を、ユーザPの手に感じさせることができる。
 また、力センサ405の力信号が示す位置の変化量、姿勢の変化量及び力の大きさ等の指令に対して、エンドエフェクタ11の位置の変化量、姿勢の変化量及び作用力の大きさ等の指令は、割り増しされる。これにより、ロボットアーム12は、把持部401の可動範囲を大きく超えてエンドエフェクタ11の位置及び姿勢を変えることができる。さらに、エンドエフェクタ11は、把持部401に加えられる力を大きく超えた作用力を発生させることができる。
 [規制モードでの動作]
 規制モードでのロボットシステム1の動作の一例を説明する。本例では、規制モードにおいて、エンドエフェクタ11のXe軸、Ye軸及びZe軸の各軸周りの回転変位が制限され、操作装置400の把持部401のXc軸、Yc軸及びZc軸の各軸周りの回転変位が制限されるものとする。図8は、実施の形態に係るロボットシステム1の規制モードでの動作の一例を示すフローチャートである。
 図8に示すように、ステップS101において、ユーザPは、操作装置400を操作することによって、エンドエフェクタ11の研削装置11aの研削砥石11bの姿勢を、研削対象領域WAの表面に対して所望の姿勢に移行させる。ユーザPによる所望の姿勢への移行は、研削作業開始前であってもよく、研削作業中であってもよい。所望の姿勢への移行は、移行指令に従った基本姿勢への移行であってもよい。なお、研削砥石11bの姿勢が既に所望の姿勢である場合、本ステップの処理は省略されてもよい。
 次いで、ステップS102において、ユーザPは、操作入力装置40の入力装置410に、規制モードを実行する指令を入力し、操作入力装置40の操作制御装置420は当該指令を受け付け制御装置20に出力する。
 次いで、ステップS103において、制御装置20は、規制モードでの制御を開始し実行する。具体的には、制御装置20は、エンドエフェクタ11の現状の姿勢である第1設定姿勢に対するXe軸、Ye軸及びZe軸の各軸周りのエンドエフェクタ11の回転変位を制限し、把持部401の現状の姿勢である第2設定姿勢に対するXc軸、Yc軸及びZc軸の各軸周りの把持部401の回転変位を制限するように制御を行う。
 次いで、ステップS104において、ユーザPによって操作装置400の把持部401に操作が入力されると、操作制御装置420は、入力された操作に対応する力センサ405の力信号に基づき操作指令を生成し制御装置20に出力する。
 次いで、ステップS105において、制御装置20は、記憶部20pの規制条件20pbと操作指令とを用いて、規制条件20pbが反映された動作指令する。例えば、制御装置20は、操作指令においてXc軸、Yc軸及びZc軸の各軸周りのモーメントに対応する指令値を0にする処理、又は、操作指令を用いて生成された動作指令においてXe軸、Ye軸及びZe軸の各軸周りのモーメントに対応する指令値を0にする処理を行う。
 次いで、ステップS106において、制御装置20は、動作指令に従ってロボット10の各部を動作させるための制御指令を生成し、ロボット10に出力する。次いで、ステップS107において、ロボットアーム12は、第1設定姿勢からのエンドエフェクタ11の姿勢の変化を制限しつつ、操作指令に従ってエンドエフェクタ11の位置を移動させる。つまり、ロボットアーム12は、規制条件20pbに従って制限された動作を行う。
 さらに、ステップS108において、制御装置20は、規制条件20pbと力センサ405の検出値とに基づき、力センサ405の各軸周りのモーメントの検出値に対抗するモーメントを把持部401に与えるためのモータ動作指令を生成し、操作入力装置40に出力する。モータ動作指令は、ユーザPによって把持部401に入力される各軸周りのモーメントを打ち消すモーメントを把持部401に与えるように、操作入力装置40のモータ404を駆動させるための指令である。つまり、制御装置20は、規制条件20pbに従って把持部401の動作を制限するためのモータ動作指令を出力する。
 次いで、ステップS109において、操作制御装置420は、モータ動作指令に従って各モータ404を駆動させることで把持部401に力を付与し、力センサ405の各軸周りの把持部401の回転変位を制限する。つまり、操作制御装置420は、各モータ404の駆動力により把持部401の動作を制限する。
 次いで、ステップS110において、制御装置20は、入力装置410を介して規制モードを終了する指令を受け付けたか否かを判定し、受け付けた場合(ステップS110でYes)に一連の処理を終了し、受け付けていない場合(ステップS110でNo)にステップS104に戻る。
 ステップS101からステップS110の処理により、制御装置20は、エンドエフェクタ11の姿勢と把持部401の姿勢とを同一の所望の姿勢に維持しつつ、把持部401に入力される操作に従ってエンドエフェクタ11を動作させる。
 [エンドエフェクタの基本姿勢への移行動作]
 ロボットシステム1におけるエンドエフェクタ11の姿勢を基本姿勢に移行させる動作の一例を説明する。図9は、実施の形態に係るロボットシステム1のエンドエフェクタ11を基本姿勢に移行させる動作の一例を示すフローチャートである。
 図9に示すように、ステップS201において、ユーザPは、操作入力装置40の入力装置410に、エンドエフェクタ11を基本姿勢へ移行する指令を入力し、操作制御装置420は当該指令を受け付け制御装置20に出力する。
 次いで、ステップS202において、ユーザPは、操作装置400を操作することによって、エンドエフェクタ11を研削対象領域WAに対する所望の位置に移動させる。なお、エンドエフェクタ11の位置が既に所望の位置である場合、本ステップの処理は省略されてもよい。
 次いで、ステップS203において、ユーザPは、入力装置410に撮像実行の指令を入力し、操作制御装置420は当該指令を受け付け制御装置20に出力する。
 次いで、ステップS204において、制御装置20は、撮像装置30に研削対象領域WAを撮像させる。次いで、ステップS205において、制御装置20は、研削対象領域WAの画像データを処理することで、当該画像データの3次元画像データを生成する。次いで、ステップS206において、制御装置20は、3次元画像データを用いて、研削対象領域WAの表面の姿勢を検出する。次いで、ステップS207において、制御装置20は、記憶部20pの姿勢情報20paと研削対象領域WAの表面の姿勢の情報とを用いて、エンドエフェクタ11の基本姿勢を決定する。
 次いで、ステップS208において、制御装置20は、エンドエフェクタ11の姿勢を基本姿勢に移行させるように、ロボットアーム12を動作させる。つまり、制御装置20は基本姿勢への移行を実行する。
 次いで、ステップS209において、制御装置20は、力センサ11eによって閾値超の力が検出されたか否かを判定し、検出された場合(ステップS209でYes)にステップS210に進み、検出されない場合(ステップS209でNo)にステップS212に進む。例えば、図10に示すように、閾値超の力が検出された場合、エンドエフェクタ11が他の物体Aと接触又は衝突することにより移行の支障が発生した可能性がある。図10は、エンドエフェクタ11の基本姿勢への移行中における移行の支障の発生例を示す側面図である。図10では、実線で示されるように研削砥石11bが鉛直面と平行であるエンドエフェクタ11の姿勢が、研削砥石11bが鉛直面に対し斜めに傾斜する基本姿勢に移行される途中で、破線で示されるようにエンドエフェクタ11が物体Aと衝突する。
 ステップS210において、制御装置20は、姿勢の移行を停止し、さらに、記憶部20pの回避情報と力センサ11eによって検出された閾値超の力の方向とを用いて、エンドエフェクタ11の回避経路を決定する。本例では、回避経路は、閾値超の力の方向への所定の距離の経路である。図10では、回避経路は、力センサ11eによって検出される閾値超の力Frの方向への所定の距離の経路である。
 次いで、ステップS211において、制御装置20は、回避経路に沿ってエンドエフェクタ11を移動させるように、ロボットアーム12を動作させ、ステップS209に進む。つまり、制御装置20はエンドエフェクタ11の回避を実行する。例えば、図11に示すように、制御装置20は、エンドエフェクタ11を力Frの方向へ所定の距離だけ移動させる。図11は、エンドエフェクタ11の基本姿勢への移行中における回避動作の例を示す側面図である。図11では、実線で示される図10の状態で停止したエンドエフェクタ11が、破線で示されるように回避経路に沿って移動される。
 ステップS212において、制御装置20は、基本姿勢への移行が完了したか否かを判定し、完了済みの場合(ステップS212でYes)に一連の処理を終了し、未完了の場合(ステップS212でNo)にステップS208に戻る。例えば、図11では、ステップS211の回避完了後、基本姿勢への移行が完了していないため、ステップS208以降の基本姿勢への移行の処理が繰り返される。
 ステップS201からステップS212の処理により、制御装置20は、他の物体との接触及び衝突等の支障の発生に対応して、エンドエフェクタ11を基本姿勢に移行させることができる。さらに、制御装置20は、回避経路に沿ったエンドエフェクタ11の移動中に力センサ11eによって閾値超の力が検出されると、当該力の方向に対応して回避経路を再設定することができる。また、制御装置20は、研削対象領域WAの表面の姿勢を検出することで、研削対象領域WAの表面の様々な姿勢に対応した基本姿勢への移行を可能にする。
 なお、ステップS201からステップS212の処理では、制御装置20は、回避経路に沿ったエンドエフェクタ11の移動と、基本姿勢へのエンドエフェクタ11の姿勢の移行とを別々に実行する。具体的には、制御装置20は、回避経路に沿ったエンドエフェクタ11の移動完了後に、基本姿勢へのエンドエフェクタ11の姿勢の移行を再開する。しかしながら、エンドエフェクタ11の回避動作は上記に限定されない。例えば、制御装置20は、回避経路に沿ったエンドエフェクタ11の移動中に、基本姿勢へのエンドエフェクタ11の姿勢の移行を再開し、2つの動作を並行して行ってもよい。又は、制御装置20は、回避経路に沿ったエンドエフェクタ11の移動と、基本姿勢へのエンドエフェクタ11の姿勢の移行の再開とを同時に開始し、2つの動作を並行して行ってもよい。さらに、制御装置20は、並行した動作中に力センサ11eによって閾値超の力が検出されると、当該力の方向に対応して回避経路を再設定してもよい。
 (その他の実施の形態)
 以上、本開示の実施の形態の例について説明したが、本開示は、上記実施の形態に限定されない。すなわち、本開示の範囲内で種々の変形及び改良が可能である。例えば、各種変形を実施の形態に施したもの、及び、異なる実施の形態における構成要素を組み合わせて構築される形態も、本開示の範囲内に含まれる。
 例えば、実施の形態において、制御装置20は、撮像装置30によって撮像された画像を処理することで、基本姿勢を決定するための研削対象領域WAの表面の姿勢を検出するが、これに限定されない。上記表面の姿勢は、対象物までの距離を検出することができる装置を用いて検出することができる。例えば、このような装置は、光波、レーザ又は超音波等を用いて距離を検出するセンサであってもよい。
 また、実施の形態では、本開示の技術が適用可能である機械装置として、産業用ロボットであるロボット10が例示されているが、本開示の技術が適用可能である機械装置は、産業用ロボット以外の機械装置であってもよい。例えば、当該機械装置は、サービスロボット、建設機械、トンネル掘削機、クレーン、荷役搬送車、及びヒューマノイド等であってもよい。サービスロボットは、介護、医療、清掃、警備、案内、救助、調理、商品提供等の様々なサービス業で使用されるロボットである。
 また、本開示の技術は、制御方法であってもよい。例えば、本開示の一態様に係る制御方法は、マスタ装置によって操作されるスレーブ装置を制御する制御方法であって、前記マスタ装置の操作端に力が加えられることで入力される情報である操作情報と、前記スレーブ装置における対象物に作用を加える作用部の所定の移動を規制する規制条件とに従って、前記スレーブ装置の動作部によって前記作用部に前記規制条件が反映された動作をさせるための指令を出力することと、前記規制条件に従って、前記作用部の前記所定の移動を指令する前記操作端への入力に対抗する前記操作端への力を、前記マスタ装置に生成させるための指令を出力することとを含む。上記制御方法は、CPU、LSIなどの回路、ICカード又は単体のモジュール等によって、実現されてもよい。
 また、本開示の技術は、上記制御方法を実行するためのプログラムであってもよく、上記プログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
 また、上記で用いた序数、数量等の数字は、全て本開示の技術を具体的に説明するために例示するものであり、本開示は例示された数字に制限されない。また、構成要素間の接続関係は、本開示の技術を具体的に説明するために例示するものであり、本開示の機能を実現する接続関係はこれに限定されない。
 また、機能ブロック図におけるブロックの分割は一例であり、複数のブロックを一つのブロックとして実現する、一つのブロックを複数に分割する、及び/又は、一部の機能を他のブロックに移してもよい。また、類似する機能を有する複数のブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
1 ロボットシステム(マスタスレーブシステム)
10 ロボット(スレーブ装置)
11 エンドエフェクタ(作用部)
11a 研削装置
12 ロボットアーム(動作部)
20 制御装置
20d 第1動作指令部(第1指令部)
20e 第2動作指令部(第2指令部)
40 操作入力装置(マスタ装置)
400 操作装置
401 把持部(操作端)
404 モータ(力付与部)
405 力センサ(操作検出部)

Claims (10)

  1.  操作端と、前記操作端に力が加えられることで入力される情報である操作情報を検出し出力する操作検出部と、前記操作端に力を与える力付与部とを備えるマスタ装置と、
     対象物に作用を加える作用部と前記作用部を移動させる動作部とを備えるスレーブ装置と、
     制御装置とを備え、
     前記制御装置は、
     前記作用部の所定の移動を規制する規制条件と前記操作情報とに従って、前記動作部によって前記作用部に前記規制条件が反映された動作をさせるための指令を出力する第1指令部と、
     前記規制条件に従って、前記作用部の前記所定の移動を指令する前記操作端への入力に対抗する前記操作端への力を前記力付与部に与えさせるための指令を出力する第2指令部とを含む
     マスタスレーブシステム。
  2.  前記スレーブ装置は、前記動作部によって前記作用部の位置及び姿勢を移動させ、
     前記操作端は、位置及び姿勢を変えるように移動可能であり、
     前記規制条件は、前記所定の移動として、前記作用部の姿勢の移動を規制する条件である
     請求項1に記載のマスタスレーブシステム。
  3.  前記操作検出部は、前記操作端に加えられる力の方向及び大きさを前記操作情報として検出する
     請求項1または請求項2に記載のマスタスレーブシステム。
  4.  前記操作検出部は、前記操作端に加えられる3軸方向の力の大きさ及び3軸周りの力のモーメントを前記操作情報として検出する
     請求項3に記載のマスタスレーブシステム。
  5.  前記規制条件は、前記所定の移動として、前記操作情報の前記3軸周りの力のモーメントに対応する前記作用部の姿勢の移動を規制する条件である
     請求項4に記載のマスタスレーブシステム。
  6.  前記作用部は、研削装置を含み、
     前記動作部は、ロボットアームを含む
     請求項1から請求項5までのいずれか一項に記載のマスタスレーブシステム。
  7.  前記制御装置は、前記作用部の姿勢を所定の姿勢に移行させるための移行指令を受け付ける受付部をさらに含み、
     前記受付部が前記移行指令を受け付けると、
     前記第1指令部は、前記作用部の姿勢を前記所定の姿勢にさせるための指令を出力する
     請求項1から請求項6までのいずれか一項に記載のマスタスレーブシステム。
  8.  前記力付与部は、前記力付与部が与える力によって前記操作端を移動させることができるように前記操作端と接続され、
     前記受付部が前記移行指令を受け付けると、
     前記第2指令部は、前記操作端の姿勢を前記所定の姿勢に対応する姿勢にさせる前記操作端への力を前記力付与部に与えさせるための指令をさらに出力する
     請求項7に記載のマスタスレーブシステム。
  9.  前記スレーブ装置は、前記作用部が前記対象物から受ける力を検出する力検出部をさらに備え、
     前記第1指令部は、前記作用部の前記所定の姿勢への移行中、前記力検出部が力を検出すると、前記作用部の位置を移動させ、且つ前記作用部の姿勢を前記所定の姿勢にさせるための指令を出力する
     請求項7または請求項8に記載のマスタスレーブシステム。
  10.  マスタ装置によって操作されるスレーブ装置を制御する制御方法であって、
     前記マスタ装置の操作端に力が加えられることで入力される情報である操作情報と、前記スレーブ装置における対象物に作用を加える作用部の所定の移動を規制する規制条件とに従って、前記スレーブ装置の動作部によって前記作用部に前記規制条件が反映された動作をさせるための指令を出力することと、
     前記規制条件に従って、前記作用部の前記所定の移動を指令する前記操作端への入力に対抗する前記操作端への力を、前記マスタ装置に生成させるための指令を出力することとを含む
     制御方法。
PCT/JP2020/045599 2019-12-13 2020-12-08 マスタスレーブシステム及び制御方法 WO2021117701A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202080086306.7A CN114829076B (en) 2019-12-13 2020-12-08 Master-slave system and control method
JP2021563963A JP7288521B2 (ja) 2019-12-13 2020-12-08 マスタスレーブシステム及び制御方法
US17/784,120 US20230038804A1 (en) 2019-12-13 2020-12-08 Master-slave system and controlling method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-225696 2019-12-13
JP2019225696 2019-12-13

Publications (1)

Publication Number Publication Date
WO2021117701A1 true WO2021117701A1 (ja) 2021-06-17

Family

ID=76328984

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/045599 WO2021117701A1 (ja) 2019-12-13 2020-12-08 マスタスレーブシステム及び制御方法

Country Status (3)

Country Link
US (1) US20230038804A1 (ja)
JP (1) JP7288521B2 (ja)
WO (1) WO2021117701A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023095926A1 (ja) * 2021-11-29 2023-06-01 京セラ株式会社 ロボット制御装置、ロボット制御システム、及びロボット制御方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01183379A (ja) * 1988-01-12 1989-07-21 Meidensha Corp マスター・スレーブマニプレータの制御方式
JPH04354680A (ja) * 1991-05-30 1992-12-09 Agency Of Ind Science & Technol 同構造型マスタスレーブアームロボット
JPH06134686A (ja) * 1992-10-23 1994-05-17 Hitachi Ltd ハンドコントロ−ラ
JPH06262548A (ja) * 1993-03-09 1994-09-20 Mitsubishi Heavy Ind Ltd 多関節型マスタ・スレーブマニピュレータ
JPH07290377A (ja) * 1994-04-20 1995-11-07 Yaskawa Electric Corp マスタスレーブマニピュレータ装置
JPH08229858A (ja) * 1995-02-28 1996-09-10 Nippon Steel Corp マスタスレーブマニピュレータの制御方法およびその装置
JPH08281573A (ja) * 1995-04-12 1996-10-29 Nippon Steel Corp マスタースレーブマニピュレータとその制御方法
WO2014199414A1 (ja) * 2013-06-13 2014-12-18 テルモ株式会社 医療用マニピュレータおよびその制御方法
JP2017013167A (ja) * 2015-06-30 2017-01-19 株式会社デンソーウェーブ ロボットアームの操作システム
JP2018089736A (ja) * 2016-12-01 2018-06-14 トヨタ自動車株式会社 マスタスレーブシステム
WO2019012812A1 (ja) * 2017-07-12 2019-01-17 ソニー株式会社 制御装置及び制御方法、並びにマスタ-スレーブ・システム

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01183379A (ja) * 1988-01-12 1989-07-21 Meidensha Corp マスター・スレーブマニプレータの制御方式
JPH04354680A (ja) * 1991-05-30 1992-12-09 Agency Of Ind Science & Technol 同構造型マスタスレーブアームロボット
JPH06134686A (ja) * 1992-10-23 1994-05-17 Hitachi Ltd ハンドコントロ−ラ
JPH06262548A (ja) * 1993-03-09 1994-09-20 Mitsubishi Heavy Ind Ltd 多関節型マスタ・スレーブマニピュレータ
JPH07290377A (ja) * 1994-04-20 1995-11-07 Yaskawa Electric Corp マスタスレーブマニピュレータ装置
JPH08229858A (ja) * 1995-02-28 1996-09-10 Nippon Steel Corp マスタスレーブマニピュレータの制御方法およびその装置
JPH08281573A (ja) * 1995-04-12 1996-10-29 Nippon Steel Corp マスタースレーブマニピュレータとその制御方法
WO2014199414A1 (ja) * 2013-06-13 2014-12-18 テルモ株式会社 医療用マニピュレータおよびその制御方法
JP2017013167A (ja) * 2015-06-30 2017-01-19 株式会社デンソーウェーブ ロボットアームの操作システム
JP2018089736A (ja) * 2016-12-01 2018-06-14 トヨタ自動車株式会社 マスタスレーブシステム
WO2019012812A1 (ja) * 2017-07-12 2019-01-17 ソニー株式会社 制御装置及び制御方法、並びにマスタ-スレーブ・システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023095926A1 (ja) * 2021-11-29 2023-06-01 京セラ株式会社 ロボット制御装置、ロボット制御システム、及びロボット制御方法

Also Published As

Publication number Publication date
JPWO2021117701A1 (ja) 2021-06-17
US20230038804A1 (en) 2023-02-09
JP7288521B2 (ja) 2023-06-07
CN114829076A (zh) 2022-07-29

Similar Documents

Publication Publication Date Title
US11241796B2 (en) Robot system and method for controlling robot system
EP3342541B1 (en) Remote control robot system
JP7339806B2 (ja) 制御システム、ロボットシステム及び制御方法
JPWO2009110242A1 (ja) マニピュレータおよびその制御方法
US11691290B2 (en) Robot control method and robot system
CN107336228B (zh) 显示包含附加轴的状态的动作程序的机器人的控制装置
US20180085920A1 (en) Robot control device, robot, and robot system
WO2021117701A1 (ja) マスタスレーブシステム及び制御方法
CN114055460B (zh) 示教方法及机器人系统
US20210402596A1 (en) Control Method for Robot and Robot System
CN114845841B (zh) 控制方法、控制装置、机器人系统、程序及记录介质
CN114829076B (en) Master-slave system and control method
WO2021095833A1 (ja) マスタスレーブシステム及び制御方法
JP7459253B2 (ja) 撮像システム、ロボットシステム及び撮像システムの制御方法
US11759955B2 (en) Calibration method
JP7293844B2 (ja) ロボット
CN112292238A (zh) 机器人的末端执行器在一末端执行器姿势与另一末端执行器姿势之间转移的方法和系统
WO2023013559A1 (ja) ロボットシステム、ロボットの加工方法及び加工プログラム
WO2022220217A1 (ja) ロボットシステム、その制御方法及び制御プログラム
US20230001567A1 (en) Teaching Support Device
US20230264353A1 (en) Manipulation apparatus, robot system, manipulation apparatus control method, and robot system control method
JP2003025263A (ja) パラレルメカニズム機械の制御装置
WO2021210514A1 (ja) ロボットの制御装置及び制御方法、ロボットシステム、ロボットの動作プログラムを生成する装置及び方法
US20210291365A1 (en) Control method for robot and robot system
JP2000084878A (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: 20898621

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021563963

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20898621

Country of ref document: EP

Kind code of ref document: A1