WO2023100667A1 - 把持装置及び把持方法 - Google Patents

把持装置及び把持方法 Download PDF

Info

Publication number
WO2023100667A1
WO2023100667A1 PCT/JP2022/042664 JP2022042664W WO2023100667A1 WO 2023100667 A1 WO2023100667 A1 WO 2023100667A1 JP 2022042664 W JP2022042664 W JP 2022042664W WO 2023100667 A1 WO2023100667 A1 WO 2023100667A1
Authority
WO
WIPO (PCT)
Prior art keywords
distance
finger
sensor
hand
group
Prior art date
Application number
PCT/JP2022/042664
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 ソニーグループ株式会社
Publication of WO2023100667A1 publication Critical patent/WO2023100667A1/ja

Links

Images

Classifications

    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J15/00Gripping heads and other end effectors
    • B25J15/08Gripping heads and other end effectors having finger members

Definitions

  • the present technology relates to a gripping device and a gripping method, and more particularly to a gripping device and a gripping method that enable an object to be quickly and reliably gripped.
  • This technology has been developed in view of this situation, and enables objects to be grasped quickly and reliably.
  • a gripping device includes a hand including a first finger and a second finger capable of pinching an object by moving in directions facing each other; A first sensor group used for measuring the distance and inclination of the object with respect to one finger, and a second sensor group provided on the second finger and used for measuring the distance and inclination of the object with respect to the second finger. and the object based on a first sensor data group from the first sensor group and a second sensor data group from the second sensor group before gripping the object and a control unit that adjusts the relative position and relative attitude of the hand with respect to the hand in parallel.
  • a gripping method includes a hand including a first finger and a second finger capable of pinching an object by moving in directions facing each other; A first sensor group used for measuring the distance and inclination of the object with respect to one finger, and a second sensor group provided on the second finger and used for measuring the distance and inclination of the object with respect to the second finger. a first sensor data group from the first sensor group and a second sensor data group from the second sensor group before gripping the object. Based on this, the relative position and attitude of the hand with respect to the object are adjusted in parallel.
  • a hand including a first finger and a second finger capable of pinching an object by moving in directions facing each other; A first sensor group used for measuring the distance and inclination of the object with respect to the finger, and a second sensor provided on the second finger and used for measuring the distance and inclination of the object with respect to the second finger. based on a first sensor data group from the first sensor group and a second sensor data group from the second sensor group before gripping the object by a gripping device comprising: , the relative position and attitude of the hand with respect to the object are adjusted in parallel.
  • FIG. 2 is a diagram showing a configuration example of a hand of the robot in FIG. 1;
  • FIG. FIG. 4 is a diagram showing examples of a hand coordinate system and a finger coordinate system;
  • 2 is a block diagram showing a configuration example of a control unit of the robot in FIG. 1;
  • FIG. 2 is a flowchart for explaining object gripping control processing executed by the robot of FIG. 1;
  • FIG. 11 is a diagram for explaining a specific example of object gripping control processing;
  • FIG. 10 is a diagram showing an example of gripping an object without adjusting the position of the hand;
  • FIG. 10 is a diagram showing an example of gripping an object without adjusting the distance between the fingers and the object;
  • FIG. 10 is a diagram showing an example of gripping an object without adjusting the posture of the hand;
  • FIG. 10 is a diagram showing an example of gripping an object by adjusting the posture of the hand without adjusting the position of the hand;
  • FIG. 10 is a diagram showing an example of gripping an object after adjusting the distance between the object and the palm using a palm distance sensor;
  • FIG. 10 is a diagram showing an example of a case where the center of the finger does not grip the object and a case where the center of the finger grips the object;
  • FIG. 10 is a diagram showing an example of adjustment of finger positions when links of fingers are not parallel to each other;
  • FIG. 4 is a diagram for explaining a method of controlling drive timing of a distance sensor;
  • FIG. 4 is a diagram for explaining a method of controlling drive timing of a distance sensor;
  • FIG. 4 is a diagram for explaining a method of controlling drive timing of a distance sensor;
  • FIG. 4 is a diagram for explaining a method of controlling drive timing of
  • FIG. 4 is a diagram for explaining a method of controlling drive timing of a distance sensor;
  • FIG. 4 is a diagram for explaining an example of grouping distance sensors and selecting a distance sensor to be used; It is a figure which shows the example of a distance centroid.
  • FIG. 10 is a diagram showing an example of distance gradients;
  • FIG. 10 is a diagram showing an example in which hand position adjustment does not converge;
  • FIG. 10 is a diagram showing an example in which hand position adjustment does not converge;
  • FIG. 4 is a diagram showing the relationship between the posture of the hand around the Y-axis and the contact area of the object;
  • FIG. 10 is a diagram showing an example in which the palm of the hand collides with an object;
  • FIG. 10 is a diagram for explaining a method of adjusting the posture of the hand around the Y-axis; It is a schematic diagram which shows the modification of a hand. It is a schematic diagram which shows the modification of a hand. It is a figure which shows the modification of a hand. It is a figure which shows the structural example of a computer.
  • Embodiment of the present technology >> An embodiment of the present technology will be described with reference to FIGS. 1 to 12.
  • FIG. 1 An embodiment of the present technology will be described with reference to FIGS. 1 to 12.
  • FIG. 1 is a schematic diagram showing an embodiment of a robot 1 to which the present technology is applied.
  • the left and right directions of the robot 1 are defined according to the directions viewed from the robot 1 .
  • the left side of FIG. 1 (the right side as viewed from the robot 1) is the right direction
  • the right side (the left side as viewed from the robot 1) is the left direction.
  • the robot 1 includes a head 11, neck 12, body 13, arms 14L, arms 14R, hands 15L, hands 15R, waist 16, wheels 17L, and wheels 17R.
  • the head 11 is connected to the upper surface of the body 13 via the neck 12 .
  • the head 11 is rotatable, for example, in roll, yaw, and pitch directions with respect to the body 13 via the neck 12 .
  • the torso part 13 is connected above the waist part 16 .
  • the torso portion 13 is rotatable in the yaw direction with respect to the waist portion 16, for example.
  • the arm 14L is a part corresponding to a human left arm and is connected to the upper left end of the body part 13.
  • Arm 14L includes joint 31L, link 32L, joint 33L, and link 34L.
  • the joint 31L is a part corresponding to a human left shoulder joint, and is provided at the upper left end of the body part 13.
  • the link 32L is a part corresponding to the left upper arm of a person, and is connected to the upper left end of the body part 13 via the joint 31L.
  • the link 32L is capable of rotational motion with three degrees of freedom, for example, via the joint 31L. Specifically, for example, the link 32L can rotate and twist in the front-rear and left-right directions.
  • the joint 33L is a part corresponding to the human left elbow joint and is connected to the tip of the link 32L.
  • the link 34L is a part corresponding to a human left forearm and is connected to the link 32L via a joint 33L.
  • the link 34L can rotate with two degrees of freedom with respect to the link 32L via the joint 33L.
  • the link 34L can be rotated or twisted in the direction of extending and contracting the arm 14L (elbow).
  • the arm 14R is a part corresponding to a human right arm and is connected to the upper right end of the torso part 13. Arm 14R includes joint 31R, link 32R, joint 33R, and link 34R. The arm 14R has the same configuration as the arm 14L and can move symmetrically with the arm 14L.
  • the hand 15L is a part corresponding to a human left hand and is connected to the tip of the arm 14L.
  • the hand 15L includes a base portion 41L, fingers 42LL, and fingers 42RL.
  • the base part 41L is a part corresponding to the human palm and the back of the hand, and is connected to the tip of the link 34L.
  • the base portion 41L can, for example, rotate with one degree of freedom with respect to the link 34L. Specifically, for example, the base portion 41L can rotate about an axis extending in the extension direction of the link 34L.
  • the fingers 42LL and 42RL are connected to the tip of the base portion 41L with a predetermined gap therebetween.
  • the fingers 42LL and 42RL can be moved toward and away from each other and can pinch an object.
  • the hand 15R is a part corresponding to a human right hand and is connected to the tip of the arm 14R.
  • the hand 15R includes a base portion 41R, fingers 42LR, and fingers 42RR.
  • the hand 15R has the same configuration as the hand 15L and can move in the same manner as the hand 15R.
  • a wheel 17L is connected to the left end of the waist 16.
  • a wheel 17R is connected to the right end of the waist portion 16 .
  • the robot 1 can move forward, backward, and rotate, for example, with the wheels 17L and 17R.
  • An RGB-D camera 18 is provided near the left eye or right eye (the right eye in this figure) of the head 11 .
  • the RGB-D camera 18 shoots an object, measures the distance to the object, and generates a color image showing the color of each pixel and a distance image showing the distance (depth) of each pixel.
  • the RGB-D camera 18 outputs data representing a color image (hereinafter referred to as color image data) and data representing a distance image (hereinafter referred to as distance image data).
  • the arms 14L and 14R are simply referred to as the arms 14 when there is no need to distinguish them individually.
  • the hand 15L and the hand 15R are simply referred to as the hand 15 when there is no need to distinguish them individually.
  • the joints 31L and 31R are simply referred to as the joints 31 when there is no need to distinguish them individually.
  • the link 32L and the link 32R will simply be referred to as the link 32 unless it is necessary to distinguish them individually.
  • the joints 33L and 33R are simply referred to as the joints 33 when there is no need to distinguish them individually.
  • the link 34L and the link 34R will simply be referred to as the link 34 unless it is necessary to distinguish them individually.
  • the base portion 41L and the base portion 41R are simply referred to as the base portion 41 when there is no need to distinguish them individually.
  • the finger 42LL and the finger 42LR are simply referred to as the finger 42L when there is no need to distinguish them individually.
  • the finger 42RL and the finger 42RR are simply referred to as the finger 42R when there is no need to distinguish them individually.
  • the finger 42L and the finger 42R are simply referred to as the finger 42 when there is no need to distinguish them individually.
  • FIG. 2 shows a configuration example of the hand 15. As shown in FIG.
  • the hand 15 includes the base portion 41, fingers 42L, and fingers 42R.
  • the hand coordinate system which is the coordinate system of the hand 15 .
  • the hand coordinate system is defined by three axes, X-axis, Y-axis, and Z-axis.
  • the Z-axis is an axis parallel to the extending direction of the link 34 of the arm 14, and the direction toward the link 34 is the positive direction.
  • the Y-axis is the direction in which the fingers 42L and 42R face each other, and the direction from the finger 42R to the finger 42L is the positive direction.
  • the X-axis is perpendicular to the Y-axis and the Z-axis, and the positive direction is the direction from the back to the front in the figure.
  • the X-axis direction is defined as the front-rear direction of the hand 15, and the positive direction of the X-axis is defined as the front direction.
  • the Y-axis direction is defined as the lateral direction of the hand 15, and the positive direction of the Y-axis is defined as the left direction.
  • the Z-axis direction is defined as the vertical direction of the hand 15, and the positive direction of the Z-axis is defined as the upward direction.
  • the base portion 41 is composed of a hexahedron made up of six quadrilaterals.
  • a lower surface (front end surface) of the base portion 41 constitutes a palm 41 ⁇ /b>F of the hand 15 .
  • a finger 42L is connected to the left side surface 41SL of the base portion 41, and a finger 42R is connected to the right side surface 41SR.
  • the finger 42R includes joints 51R, links 52R, joints 53R, and links 54R.
  • the joint 51R is connected to the right side surface 41SR of the base portion 41 so as to extend vertically.
  • the link 52R corresponds to the base of a human finger, has a plate shape, and is connected to the right side surface 41SR of the base portion 41 via a joint 51R.
  • the link 52R can rotate around the joint 51R.
  • the joint 53R is connected to the tip of the link 52R.
  • the link 54R has a plate-like shape corresponding to the distal joint of a human finger and is connected to the tip of the link 52R via a joint 53R.
  • the link 54R can rotate around the joint 53R.
  • Finger 42L includes joint 51L, link 52L, joint 53L, and link 54L.
  • the finger 42L has the same configuration as the finger 42R and can move symmetrically with the finger 42R.
  • FIG. 3A shows a finger coordinate system that is the coordinate system of the fingers 42R and 42L.
  • a finger coordinate system of the finger 42R is defined by three axes, x-axis, y-axis, and z-axis.
  • the z-axis is parallel to the extending direction of the link 54R of the finger 42R, and the direction toward the base portion 41 is the positive direction.
  • the y-axis is an axis parallel to the X-axis of the hand coordinate system, and the positive direction is the direction from the front to the back in the figure.
  • the x-axis is an axis perpendicular to the y-axis and the z-axis, and the positive direction is the direction toward the finger 42L.
  • a finger coordinate system of the finger 42L is defined by three axes, x-axis, y-axis, and z-axis.
  • the z-axis is an axis parallel to the extension direction of the link 54L of the finger 42L, and the direction toward the base portion 41 is the positive direction.
  • the y-axis is an axis parallel to the X-axis of the hand coordinate system, and the positive direction is the direction from the back to the front in the figure. Therefore, the y-axis of the finger coordinate system of the finger 42R and the y-axis of the finger coordinate system of the finger 42L are opposite to each other.
  • the x-axis is an axis perpendicular to the y-axis and the z-axis, and the positive direction is the direction toward the finger 42R.
  • a surface on the finger 42L side (inner side) of the link 54R is a surface that comes into contact with an object when gripping it (hereinafter referred to as a contact surface), and is provided with a thin plate-like contact portion 55R.
  • the contact portion 55R covers portions other than both ends of the link 54R in the y-axis direction.
  • Distance sensors 56R-1 to 56R-8 are provided on the contact surface of the link 54R.
  • the distance sensors 56R-1 to 56R-4 are linearly arranged at substantially equal intervals in the z-axis direction at one end (the negative direction of the y-axis) of the contact surface in the y-axis direction.
  • the distance sensors 56R-5 to 56R-8 are linearly arranged at approximately equal intervals in the z-axis direction at the other end (the positive direction of the y-axis) of the contact surface in the y-axis direction.
  • the distance sensor 56R-1 and the distance sensor 56R-5, the distance sensor 56R-2 and the distance sensor 56R-6, the distance sensor 56R-3 and the distance sensor 56R-7, and the distance sensor 56R-4 and the distance sensor 56R-8 are , are arranged side by side in the y-axis direction. Therefore, the distance sensors 56R-1 to 56R-8 are arranged in an array of four in the z-axis direction and two in the y-axis direction.
  • the surface of the link 54L on the finger 42R side is a contact surface that contacts an object when gripping the object, and is provided with a thin plate-like contact portion 55L, similar to the contact surface of the link 54R.
  • the distance sensors 56L-1 to 56L-8 are positioned symmetrically with the distance sensors 56R-1 to 56R-8 of the finger 42R. are placed in Therefore, the distance sensors 56R-1 to 56R-8 and the distance sensors 56L-1 to 56L-8 are arranged at positions facing each other.
  • the distance sensors 56R-1 to 56R-8 and the distance sensors 56L-1 to 56L-8 for example, optical distance sensors using the ToF (Time of Flight) principle are used.
  • the distance sensors 56R-1 to 56R-8 and the distance sensors 56L-1 to 56L-8 are capable of measuring distances within a range of, for example, 0 to 100 mm.
  • the hand 15 is a two-finger parallel gripper. That is, the joints 51L and 53L of the finger 42L and the joints 51R and 53R of the finger 42R are controlled so that the links 54L and 54R move only in the Y-axis direction. As a result, the fingers 42L and 42R move (approach or separate) while maintaining the state in which the contact surface of the link 54L (contact portion 55L) and the contact surface of the link 54R (contact portion 55R) are substantially parallel and facing each other. ) and grasp objects. Therefore, in the hand 15, it is possible to adjust the relative position of each finger 42 with respect to the object without changing the relative position and relative posture of the hand 15 with respect to the object. Relative attitude cannot be adjusted.
  • the joints 51L and 51R are simply referred to as joints 51 when there is no need to distinguish them individually.
  • the link 52L and the link 52R are simply referred to as the link 52 when there is no need to distinguish them individually.
  • the joints 53L and 53R will simply be referred to as joints 53 when there is no need to distinguish them individually.
  • the link 54L and the link 54R will simply be referred to as the link 54 unless it is necessary to distinguish them individually.
  • the contact portion 55L and the contact portion 55R are simply referred to as the contact portion 55 when it is not necessary to distinguish them individually.
  • the distance sensors 56L-1 to 56L-8 are simply referred to as the distance sensor 56L when there is no need to distinguish them individually.
  • the distance sensors 56R-1 to 56R-8 are simply referred to as the distance sensor 56R when there is no need to distinguish them individually.
  • the distance sensor 56L and the distance sensor 56R are simply referred to as the distance sensor 56 when there is no need to distinguish them individually.
  • a sensor group consisting of the distance sensors 56L-1 to 56L-8 and the distance sensors 56R-1 to 56R-8 is hereinafter referred to as a distance sensor group SG.
  • FIG. 4 shows a configuration example of the control unit 101 that executes positioning control (servo) of the hand 15 of the robot 1 and control of gripping of an object by the hand 15 .
  • the positioning of the hand 15 is, for example, a process of adjusting the relative position and orientation of the hand 15 and fingers 42 with respect to the target object (hereinafter referred to as the target object) in order to grip the target object. alignment process).
  • the control unit 101 includes an object measurement unit 111, an inclination measurement unit 112, a nearest neighbor distance measurement unit 113, a control amount calculation unit 114, a control amount calculation unit 115, a control end determination unit 116, a controller 117, and a sensor control unit 118. Prepare.
  • the object measurement unit 111 measures the shape and position of the object based on the color image data and distance image data supplied from the RGB-D camera 18.
  • the object measurement unit 111 supplies information indicating the shape and position of the object to the control amount calculation unit 114 .
  • the inclination measurement unit 112 measures the inclination of the object with respect to each finger 42 based on the distance data group supplied from each distance sensor 56 constituting the distance sensor group SG and the distance between the two fingers calculated by the controller 117. to measure The inclination of the object is represented, for example, by the inclination of each finger 42 of the hand 15 with respect to the contact surface. The distance between both fingers is represented by, for example, the distance between the contact surface of the finger 42L and the contact surface of the finger 42R.
  • the tilt measurement unit 112 supplies information indicating the tilt of the object to the control amount calculation unit 114 .
  • the nearest neighbor distance measuring unit 113 measures the object for each finger 42 based on the distance data group supplied from each distance sensor 56 constituting the distance sensor group SG and the distance between both fingers calculated by the controller 117 . Measure the nearest neighbor distance to .
  • the closest distance to the object is, for example, the shortest distance among the distances to the object measured by the distance sensor 56 of each finger 42 .
  • the nearest neighbor distance measurement unit 113 supplies information indicating the nearest neighbor distance to the object to the control amount calculation unit 114 and the control amount calculation unit 115 .
  • the control amount calculation unit 114 calculates the position at which to grip the object (hereinafter referred to as the target gripping position) based on the measurement result of the shape and position of the object.
  • the control amount calculation unit 114 plans the trajectory of the arm 14 for moving the hand 15 to the point just before the target gripping position.
  • the control amount calculator 114 calculates the control amount of the driving parts (for example, joints 31, 33, base part 41, etc.) of the arm 14 for moving the hand 15 according to the planned trajectory.
  • control amount calculation unit 114 calculates the control amount of the driving unit of the arm 14 necessary for adjusting the relative position and relative attitude of the hand 15 with respect to the object, based on the measurement result of the inclination of the object and the nearest neighbor distance. to calculate
  • the control amount calculation unit 114 supplies information indicating the control amount of the driving unit of the arm 14 to the control end determination unit 116 and the controller 117 .
  • the control amount calculation unit 115 calculates the driving unit of the hand 15 (for example, the joint 51, joint 53 etc.) is calculated.
  • the control amount calculation unit 115 supplies information indicating the control amount of the driving unit of the hand 15 to the control end determination unit 116 and the controller 117 .
  • the control end determination unit 116 determines whether or not to end the positioning control of the hand 15 based on the amount of control of the drive units for the arm 14 and the hand 15 . When the control end determination unit 116 determines to end the positioning control of the hand 15 , it instructs the controller 117 to end the positioning control of the hand 15 .
  • the controller 117 controls the driving units of the arm 14 and the hand 15 based on the control amount supplied from the control amount calculation section 114 and the control amount calculation section 115 .
  • the controller 117 also calculates the distance between the fingers based on the angles of the joints 51L, 51R, 53L, and 53R, and sends the information indicating the distance between the fingers to the inclination measuring unit 112 and the nearest neighbor. It is supplied to the distance measurement unit 113 .
  • the sensor control unit 118 controls the driving timing of each distance sensor 56 based on the distance data supplied from each distance sensor 56.
  • step S1 the robot 1 performs object measurement using the RGB-D camera 18. Specifically, the RGB-D camera 18 photographs the object and supplies the obtained color image data and distance image data to the object measurement unit 111 .
  • the object measurement unit 111 measures the shape and position of the object based on the color image data and the distance image data.
  • the object measurement unit 111 supplies information indicating the shape and position of the object to the control amount calculation unit 114 .
  • step S2 the robot 1 plans the trajectory of the arm 14. Specifically, the control amount calculation unit 114 calculates the target gripping position based on the shape and position of the object. The control amount calculator 114 plans the trajectory of the arm 14 for moving the hand 15 to the vicinity of the target gripping position.
  • step S3 the robot 1 starts approaching the object.
  • the control amount calculation unit 114 calculates the control amount of the driving unit of the arm 14 required to move the arm 14 along the planned trajectory.
  • the control amount calculator 114 supplies information indicating the calculated control amount to the controller 117 .
  • the controller 117 controls the drive section of the arm 14 based on the calculated control amount to move the arm 14 according to the trajectory planned by the control amount calculation section 114 .
  • step S4 the nearest neighbor distance measurement unit 113 determines whether or not the distance sensor 56 has detected an object. This determination process is repeatedly executed until it is determined that the distance sensor 56 has detected the object. Then, when the object is detected by any of the distance sensors 56, the nearest neighbor distance measuring unit 113 determines that the object is detected by the distance sensor 56, and the process proceeds to step S5.
  • step S5 the control unit 101 measures the tilt and distance of the object.
  • the tilt measurement unit 112 measures the tilt of the object based on the distance data from each distance sensor 56 .
  • the tilt measurement unit 112 acquires information indicating the distance between both fingers from the controller 117 .
  • the inclination measuring unit 112 extracts distance data in which the measured distance is within the effective range as effective data, based on the distance between the two fingers.
  • the effective range is set, for example, to a range less than the distance between both fingers.
  • the inclination measuring unit 112 calculates the inclination of the object with respect to the finger 42L by the least squares method, for example, using the distance to the object indicated by the effective data of the distance sensor 56L of the finger 42L. Similarly, the tilt measuring unit 112 calculates the tilt of the object with respect to the finger 42R by the method of least squares, for example, using the distance to the object indicated by the effective data of the distance sensor 56R of the finger 42R. The tilt measurement unit 112 supplies information indicating the tilt of the object to the control amount calculation unit 114 .
  • the nearest neighbor distance measurement unit 113 measures the nearest neighbor distance to the object based on the distance data from each distance sensor 56 . For example, the nearest neighbor distance measurement unit 113 extracts valid data from the distance data of each distance sensor 56 by the same method as the inclination measurement unit 112 .
  • the closest distance measurement unit 113 takes the minimum value of the distance to the object indicated by the valid data of the distance sensor 56L of the finger 42L as the nearest distance from the finger 42L to the object.
  • the nearest neighbor distance measuring unit 113 takes, for example, the minimum value of the distance to the object indicated by the effective data of the distance sensor 56R of the finger 42R as the nearest neighbor distance from the finger 42R to the object.
  • the tilt measurement unit 112 supplies information indicating the closest distance to the object to the control amount calculation unit 114 and the control amount calculation unit 115 .
  • step S6 the robot 1 adjusts the position of the hand 15 based on the sum of the left and right tilts of the object.
  • control amount calculation unit 114 calculates the hand 15 Calculate the target velocity v X ref of .
  • the angle ⁇ Lz is an angle representing the inclination of the object about the z-axis with respect to the finger 42L in the finger coordinate system of the finger 42L.
  • the angle ⁇ Rz is an angle representing the inclination of the object about the z-axis with respect to the finger 42R in the finger coordinate system of the finger 42R.
  • GX is the gain.
  • control amount calculation unit 114 calculates the hand 15 Calculate the target velocity v Z ref of .
  • the angle ⁇ Ly is an angle representing the inclination of the object about the y-axis with respect to the finger 42L in the finger coordinate system of the finger 42L.
  • the angle ⁇ Ry is an angle representing the inclination of the object about the y-axis with respect to the finger 42R in the finger coordinate system of the finger 42R.
  • GZ is the gain.
  • the control amount calculator 114 calculates the control amount of the driving section of the arm 14 necessary to achieve the target speed v X ref and the target speed v Z ref .
  • the control amount calculation unit 114 supplies information indicating the control amount of the driving unit of the arm 14 to the control end determination unit 116 and the controller 117 .
  • the controller 117 controls the driving section of the arm 14 based on the calculated control amount.
  • the speed of the hand 15 in the X-axis direction approaches the target speed v X ref
  • the speed of the hand 15 in the Z-axis direction approaches the target speed v Z ref .
  • the inclination of the object with respect to each finger 42 becomes equal on average.
  • step S7 the robot 1 corrects the posture of the hand 15 based on the difference between the left and right tilts of the object.
  • control amount calculation unit 114 uses the following equation (3) to calculate the angle of the hand 15 around the X-axis of the hand coordinate system based on the difference in inclination of the object around the y-axis of the finger coordinate system with respect to each finger 42 . Calculate the target angular velocity ⁇ X ref of .
  • G Roll is the gain.
  • control amount calculation unit 114 calculates the hand 15 Calculate the target angular velocity ⁇ Z ref of .
  • ⁇ Z ref G Yaw ( ⁇ Lz ⁇ Rz ) (4)
  • G Yaw is the gain.
  • the control amount calculator 114 calculates the control amount of the drive section of the arm 14 necessary to achieve the target angular velocity ⁇ X ref and the target angular velocity ⁇ Z ref .
  • the control amount calculation unit 114 supplies information indicating the control amount of the driving unit of the arm 14 to the control end determination unit 116 and the controller 117 .
  • the controller 117 controls the driving section of the arm 14 based on the calculated control amount.
  • the angular velocity of the hand 15 about the X axis approaches the target angular velocity ⁇ X ref
  • the angular velocity of the hand 15 about the Z axis approaches the target angular velocity ⁇ Z ref .
  • step S6 the inclination of the object for each finger 42 becomes equal on average.
  • the object is a cuboid, for example, the inclination of the object for each finger 42 may be biased.
  • step S7 the biased inclination of the object with respect to each finger 42 is eliminated, and each finger 42 and the object become substantially parallel. That is, the contact surface of each finger 42 and the surface of the object gripped by each finger 42 (hereinafter referred to as gripping surface) are substantially parallel.
  • step S8 the robot 1 corrects the position of the hand 15 based on the difference in the distance between the left and right nearest neighbors of the object.
  • control amount calculation unit 114 uses the following equation (5) to calculate the distance dL from the finger 42L to the object and the distance dR from the finger 42R to the object based on the difference between , the target velocity v Y ref of the hand 15 in the Y-axis direction of the hand coordinate system is calculated.
  • GY is the gain.
  • the control amount calculation unit 114 calculates the control amount of the driving unit of the arm 14 required to achieve the target speed v Y ref .
  • the control amount calculation unit 114 supplies information indicating the control amount of the driving unit of the arm 14 to the control end determination unit 116 and the controller 117 .
  • the controller 117 controls the driving section of the arm 14 based on the calculated control amount. As a result, the speed of the hand 15 in the Y-axis direction approaches the target speed v Y ref . Then, the nearest neighbor distances from each finger 42 to the object become substantially equal.
  • step S9 the robot 1 controls the position of the finger 42 based on the sum of the right and left nearest neighbor areas of the object.
  • control amount calculation unit 115 uses the following equation (6), based on the sum of the nearest distance dL from the finger 42L to the object and the nearest distance dR from the finger 42R to the object. , calculate the target velocity v x ref of each finger 42 in the x-axis direction of the finger coordinate system.
  • G x is the gain.
  • d ref is the target distance between each finger 42 and the object.
  • the target distance d ref is set in consideration of the noise level of the distance sensor 56, for example.
  • the control amount calculation unit 115 calculates the control amount of the driving unit of the hand 15 required to achieve the target speed v x ref .
  • the control amount calculation unit 115 supplies information indicating the control amount of the driving unit of the hand 15 to the control end determination unit 116 and the controller 117 .
  • the controller 117 controls the drive section of the hand 15 based on the calculated control amount. As a result, the velocity of each finger 42 in the x-axis direction approaches the target velocity v x ref .
  • step S10 After the processing of steps S6 to S9, the processing proceeds to step S10.
  • step S10 the control end determination unit 116 determines whether or not the control amount is equal to or less than a certain value. For example, the control end determination unit 116 compares the control amount of each driving unit of the arm 14 and the hand 15 with a predetermined threshold value. When the control amount of at least one driving unit exceeds the threshold value, the control end determination unit 116 determines that the control amount is not equal to or less than the predetermined value, and the process returns to step S5.
  • steps S5 to S10 is repeatedly executed until it is determined in step S10 that the control amount is equal to or less than a certain value.
  • step S10 when the control amounts of all drive units are equal to or less than the threshold, the control end determination unit 116 determines that the control amounts are equal to or less than a certain value, and the process proceeds to step S11.
  • step S11 the robot 1 grips the object.
  • the control end determination unit 116 instructs the controller 117 to end the positioning control of the hand 15 .
  • the controller 117 controls the drive section of the hand 15 to bring the fingers 42 closer together, thereby gripping the object with the fingers 42 .
  • FIG. 6 the effect of the present technology will be described with reference to FIGS. 6 to 12.
  • FIG. 6 shows an example in which the hand 15 grips an object 201 that is an egg.
  • FIG. 6A shows a state in which the side surface of the object 201 is tilted with respect to the contact surface of each finger 42.
  • FIG. 15 is adjusted so that the side surface of the object 201 is substantially parallel to the contact surface of each finger 42, for example, by the process of step S6 in FIG.
  • FIG. 6B shows a state in which the inclination of the side surface of the object 201 with respect to each finger 42 is biased.
  • the posture of the hand 15 is adjusted so that the tilt of the side surface of the object 201 with respect to each finger 42 is substantially equal, for example, by the processing of step S7 in FIG.
  • FIG. 6C shows a state in which the nearest neighbor distances from each finger 42 to the object 201 are biased.
  • the position of the hand 15 is adjusted so that the closest distances from each finger 42 to the target object 201 are substantially equal, for example, by the processing of step S8 in FIG.
  • D in FIG. 6 shows a state in which the nearest neighbor distance from each finger 42 to the object 201 is far.
  • the position of each finger 42 is adjusted so that the closest distance from each finger 42 to the target object 201 becomes a constant value (target distance d ref ) by the processing of step S9 in FIG. be.
  • the side surface (gripping surface) of the object 201 becomes substantially parallel to the contact surface of each finger 42, and the distance between each finger 42 and the object 201 becomes short and substantially equal. Furthermore, the center of the contact surface of each finger 42 and the center of the side surface (gripping surface) of the object 201 approach each other. This prevents the hand 15 from colliding with the object before gripping it. Also, the object 201 is gripped using the center of the contact surface of each finger 42 (while the center of the contact surface of each finger 42 is in contact with the object 201), and the contact of each finger 42 with respect to the object 201 The area is increased, and the object is stably gripped without falling. Furthermore, after the positioning control, the movement distance of each finger 42 is shortened when gripping the object, and each finger 42 contacts the object almost simultaneously, so that the object falls over or is damaged. securely gripped without
  • FIG. 7 shows an example of gripping the object 201 with the hand 15 without adjusting the position of the hand 15 .
  • the object 201 is gripped with the distances between each finger 42 and the object 201 unbalanced. Therefore, as shown in FIG. 7B, when the object 201 is gripped, it may tilt and the contact area between each finger 42 and the object 201 may become smaller. As a result, as shown in FIG. 7C, the object 201 may fall without being stably gripped.
  • the object 201 is gripped after the distance between each finger 42 and the object 201 is adjusted to be substantially equal. As a result, the target object 201 is stably gripped, and the target object 201 is prevented from falling.
  • FIG. 8 shows an example in which the object 201 is gripped in a state where the distance between each finger 42 and the object 201 is wide.
  • each finger 42 may apply a strong impact to the target object 201, and the target object 201 may be damaged.
  • the object 201 is gripped after the distance between each finger 42 and the object 201 is adjusted to be short and substantially equal. This reduces the impact applied when the object 201 is gripped, and prevents the object 201 from being damaged.
  • FIG. 9 shows an example in which the cuboid object 211 is gripped by the hand 15 after only the position of the hand 15 is adjusted.
  • the object 211 is gripped after the position of the hand 15 is adjusted such that the object 211 is positioned approximately between the fingers 42L and 42R.
  • the contact area between each finger 42 and the object 211 is becomes smaller. Therefore, the stability of the target object 211 is lowered, and the possibility of the target object 211 falling increases.
  • the object 211 is light, there is a possibility that the object 211 will move when each finger 42 touches it, and the inclination of the object 211 will be eliminated. However, when the object 211 moves, it may collide with surrounding objects, moving or damaging the surrounding objects, or causing the object 201 to stop moving.
  • the target object 211 is gripped after the posture of the hand 15 is adjusted so that each finger 42 and the side surface of the target object 211 are substantially parallel. Thereby, the contact area between each finger 42 and the object 211 is increased, and the stability of the object 211 is improved.
  • FIG. 10 shows an example in which the target object 211 is gripped after only the posture of the hand 15 is adjusted.
  • the object 211 is gripped after the posture of the hand 15 is adjusted so that the sides of the object 211 are substantially parallel to the fingers 42.
  • the fingers 42 collide with the object 211 while the posture of the hand 15 is being adjusted, or the object 211 is tilted when one of the fingers 42 touches the object 211 first during gripping. , there is a risk of falling over.
  • the object 211 is gripped after adjustment is made so that the sides of each finger 42 and the object 211 are substantially parallel and the distance between each finger 42 and the object 211 is substantially equal. be.
  • distance sensors 221-1 to 221-3 are provided on the palm 41F of the hand 15, and the distance between the object and the palm 41F is adjusted using the distance sensors 221-1 to 221-3.
  • It shows an example of gripping an object after A of FIG. 11 shows an example of gripping a spherical object 231 .
  • B of FIG. 11 shows an example of gripping a spherical object 232 smaller than the object 231 .
  • the auxiliary line H1 indicates the position of the center of the contact surface of each finger 42 (the center of the link 54 in the height direction).
  • the auxiliary line H2 indicates the positions of the upper ends of the object 231 and the object 232 after positioning control.
  • the position of the hand 15 is adjusted so that the closest distance between the palm 41F and the object is constant regardless of the size of the object. This prevents the palm 41F from colliding with the object.
  • the position of the object shifts from the center of each finger 42 in the vertical direction, and the possibility that the object can be grasped at the center of each finger 42 becomes low.
  • FIG. 12 shows an example of holding an object 241, which is a saucepan, with the hand 15.
  • FIG. 12A shows an example of gripping the handle of the object 241 below the center of the contact surface of the finger 42 of the hand 15 .
  • FIG. 12B shows an example of gripping the handle of the object 241 at approximately the center of the contact surface of the finger 42 of the hand 15 .
  • the coordinates of each part of the object 241 in the coordinate system of the robot 1 change according to the position of the finger 42 gripping the object 241, which affects subsequent manipulation of the object 241.
  • the surrounding environment for example, a table
  • the relative positions of the point of action of the object 241 and the environment are shifted. Therefore, it is necessary to detect the contact position of the hand 15 with respect to the object 241 .
  • the object 241 can be gripped at the center of the contact surface of each finger 42, so detection of the contact position of the hand 15 with respect to the object 241 becomes unnecessary. Further, the operation of the target object 241 after the hand 15 has gripped the target object 241 is facilitated.
  • a distributed tactile sensor for example, a pressure distribution sensor, etc.
  • the detection accuracy decreases near the outer periphery of the tactile sensor due to the structure of the tactile sensor.
  • the object 241 can be gripped at the center of the contact surface of each finger 42, so the detection accuracy of the tactile sensor is improved.
  • Positioning control of the hand 15 can be executed so that the hand 15 is almost parallel to the object 251 and the distance between each link 54 and the object 251 is almost equal.
  • the distance sensor 56 measures the distance based on the time it takes for the emitted light to return to the light receiving element.
  • FIGS. 14A and 14B schematically show how light emitted from the distance sensor 56 returns to the distance sensor 56.
  • the light emitting area of the adjacent distance sensor 56 overlaps the detectable area of the light receiving element, and the distance sensor 56 adjacent to the light incident on the light receiving element emits light. There is a risk that the light will be mixed. That is, adjacent distance sensors 56 may interfere with each other, resulting in measurement errors.
  • the light emission area of the adjacent distance sensor 56 and the detectable area of the light receiving element overlap and interfere with each other. more likely.
  • the light emission area of the adjacent distance sensor 56 and the detectable area of the light receiving element overlap, less likely to interfere.
  • the sensor control unit 118 of the robot 1 controls the driving timing of each distance sensor 56 according to the distance to the object.
  • FIG. 15 shows an example of interference between adjacent distance sensors 56-n and 56-(n+1).
  • W indicates the distance between the distance sensor 56-n and the distance sensor 56n+1.
  • dn indicates the measured value of the distance sensor 56-n, ie the distance between the distance sensor 56-n and the object 261;
  • d n+1 indicates the measured value of the distance sensor 56 -(n+1), ie the distance between the distance sensor 56 -(n+1) and the object 261 .
  • conditional expression (7) when the following conditional expression (7) is established, there is a possibility that the distance sensor 56-n and the distance sensor 56-(n+1) interfere with each other, and the driving timing of the distance sensor 56-n and the distance sensor 56-(n+1) is must be shifted. On the other hand, if the conditional expression (7) is not satisfied, the distance sensor 56-n and the distance sensor 56-(n+1) can be driven at the same time without the risk of interference between the distance sensor 56-n and the distance sensor 56-(n+1). is possible.
  • is the spread angle of the light of each distance sensor 56 . Since tan ⁇ is determined by the directivity of the distance sensor 56, it can be calculated in advance.
  • the sensor control unit 118 first divides the distance sensors 56L-1 to 56L-3 of the finger 42L into groups 1 to 3, respectively. Then, the sensor control unit 118 shifts the driving timing of the distance sensors 56 of each group. Thereby, each distance sensor 56L is driven at different timings, and the measured value of each distance sensor 56L is obtained.
  • the sensor control unit 118 controls the combination of the distance sensor 56L-1 and the distance sensor 56L-2, the distance sensor 56L-2 and the distance sensor 56L-3, and the combination of the distance sensor 56-1 and the distance sensor 56L-3, Based on conditional expression (7), it is determined whether or not interference will occur. Then, the sensor control unit 118, for example, interferes with the combination of the distance sensor 56L-1 and the distance sensor 56L-2, and the combination of the distance sensor 56L-2 and the distance sensor 56L-3. If the combination of 56L-3 does not interfere, the distance sensor 56L-1 and the distance sensor 56L-3 are group 1 and the distance sensor 56L-2 is group 2. Then, the sensor control unit 118 drives the distance sensor 56L of group 1 and the distance sensor 56L of group 2 at different timings, and drives the distance sensor 56L of group 1 at the same timing.
  • the driving timing of the distance sensor 56L which was originally divided into three times, is reduced to two times, and the time required for measuring all the distance sensors 56L is shortened.
  • Control of the drive timing of the distance sensor 56R of the finger 42R is also executed by a similar method.
  • the sensor control unit 118 determines the presence or absence of interference between the distance sensors 56L based on the measurement results of the distances of the distance sensors 56L of the finger 42L, and determines whether or not the distance sensors 56L interfere based on the presence or absence of interference. control the drive timing of That is, the sensor control unit 118 simultaneously drives the distance sensors 56L that do not interfere with each other, and drives the distance sensors 56L that interfere with each other at different timings.
  • the sensor control unit 118 determines whether or not there is interference between the distance sensors 56R based on the measurement results of the distances of the distance sensors 56R of the finger 42R. Controls drive timing. That is, the sensor control unit 118 simultaneously drives the distance sensors 56R that do not interfere with each other, and drives the distance sensors 56R that interfere with each other at different timings.
  • control unit 101 divides the distance sensors 56 of each finger 42 into a plurality of groups, and uses the distance sensors 56 of the group with higher reliability to measure the nearest distance and inclination of the object.
  • the control unit 101 sets the distance sensors 56L-1 to 56L-4 arranged at one end of the link 54L of the finger 42L as group 1, and sets the distance sensors 56L-1 to 56L-4 arranged at the other end.
  • Group 2 includes the distance sensors 56L-4 to 56L-8.
  • the control unit 101 measures the nearest neighbor distance and the inclination of the object based on the distance data of the distance sensor 56L of the group 1 .
  • the control unit 101 measures the closest distance and the inclination of the object based on the distance data of the distance sensor 56L of the group 2 .
  • the control unit 101 selects the nearest neighbor distance and the slope of the group having more valid data from among the groups 1 and 2 as representative values.
  • the group including the distance sensor 56L, which is closer to the object has more valid data, so the nearest neighbor distance and inclination of the group including the distance sensor 56L, which is closer to the object, are representative. more likely to be selected as value.
  • the control unit 101 selects the nearest neighbor distance and the slope of the group with the smaller nearest neighbor distance as representative values. As a result, the nearest neighbor distance and inclination of the group including the distance sensor 56L, which is closer to the object, are selected as representative values.
  • the distance sensor 56R is also grouped by a similar method, and the representative value of the closest distance and inclination of the object is selected.
  • the distance data of the distance sensors 56L included in the group with the most effective data or the group with the shortest distance from the object and the distance data of the distance sensors 56R of the finger 42R Positioning control is performed based on the distance data of the distance sensor 56R included in the group with the most effective data, or the group with the shortest distance from the object.
  • a group with more valid data that is, a group with a greater number of detected distances, has higher accuracy and reliability for the measurement results of the nearest neighbor distance and inclination of the object.
  • the distance sensor 56 generally has a cone-shaped field of view, as shown in FIG. 14 described above, so that the greater the distance from the object, the wider the range of reflected light received. Therefore, the distance sensor 56 is more likely to receive reflected light (that is, noise light) from the surrounding environment and the hand 15 itself, in addition to the reflected light from the object. Therefore, the accuracy and reliability of the measurement result of the nearest neighbor distance and inclination of the object are higher for the group including the distance sensors 56 closer to the object.
  • the accuracy and reliability of the measurement result of the nearest neighbor distance and inclination of the object are increased. As a result, the accuracy and reliability of positioning control are improved.
  • the group of the distance sensors 56L-1 to 56L-4 and the group of the distance sensors 56R-1 to 56R-4 can hardly receive the reflected light from the object 271 respectively.
  • the closest distance and inclination of the object 271 to the finger 42L are measured based on the distance data of the group of the distance sensors 56L-5 to 56L-8. Also, based on the distance data of the group of the distance sensors 56R-5 to 56R-8, the closest distance and inclination of the object 271 with respect to the finger 42R are measured. This improves the accuracy and reliability of the measurement results of the nearest neighbor distance and inclination of the object 271 . Then, even if the object 271 is arranged biased in the y-axis direction with respect to each finger 42, the positioning control is performed accurately, and the object 271 can be reliably gripped.
  • the distance centroid zc from each finger 42 to the object is calculated by the following equation (8).
  • d i indicates the distance measurement value of the i-th distance sensor 56
  • zi indicates the position of the i-th distance sensor 56 in the z-axis direction of the finger coordinate system.
  • the distance center of gravity zc represents the bias of the distribution of the distances d i .
  • the position of each finger 42 converges to a position where the distribution of the distances d i is symmetrical on average. .
  • FIG. 17 shows an example of the distance center of gravity zc of the object 301 with respect to the finger 42R.
  • Measurement points P1 through P4 indicate measurement points of the distance sensors 56R-1 through 56R-4, respectively.
  • the position of the finger 42R in the z-axis direction converges at a position where the distribution of distances to the measurement points P1 to P4 is symmetrical on average.
  • the denominator and numerator of Equation (8) include the distance d i , even if the ratio of the distance d i changes, the size of the distance center of gravity z c does not change. For example, since the value of the distance center of gravity zc does not change greatly depending on whether the object is a sphere or an ellipsoid, it is possible to control the position of the hand 15 at the same speed.
  • FIG. 18 shows an example of the inclination of the object 301 with respect to the finger 42R.
  • the inclination of the object 301 is represented by the inclination of the least-squares straight line L1 with respect to the measurement points P1 to P4.
  • the curvature distribution of the object may be used instead of the inclination of the object.
  • the curvature distribution of the object may be used instead of the inclination of the object. For example, by adjusting the position of the hand 15 in a direction with a small curvature (large curvature radius), the contact area of the hand 15 with respect to the object can be widened.
  • measuring the curvature distribution of an object requires more detailed distance distribution data detected by a depth camera or the like.
  • the distance barycenter or curvature distribution of the object may be used to adjust the relative posture of the hand 15 with respect to the object.
  • control unit 101 may first adjust the relative position and orientation of the hand 15 with respect to the object, and then adjust the relative position and orientation of each finger 42 with respect to the object.
  • a distance sensor may be installed on the palm 41F of the hand 15 and used to control the relative position and orientation of the hand 15 with respect to the object.
  • the position adjustment of the hand 15 may not converge and the palm 41A of the hand 15 may collide with the object.
  • a distance sensor may be provided on the palm 41F. Then, for example, the control end determination unit 116 may stop the position control of the hand 15 when the closest distance between the palm 41F and the object becomes equal to or less than a predetermined threshold. Then, the controller 117 may adjust the posture of the link 54 of each finger 42 under the control of the control amount calculator 115 .
  • two or more distance sensors may be provided on the palm 41F, and the control unit 101 may adjust the posture of the hand 15 around the Y-axis based on the distance data from the distance sensors on the palm 41F.
  • FIG. 21 shows the relationship between the posture of the hand 15 around the Y-axis and the contact area between the hand 15 and the object 311.
  • control unit 101 adjusts the posture of the hand 15 around the Y-axis, as indicated by the arrow in A in FIG. 23, based on the distance data from the distance sensor of the palm 41F.
  • positioning control is executed by adjusting the attitude of the hand 15 about the Y axis so that the palm 41F is parallel to the surface of the object 312.
  • the palm 41F is prevented from colliding with the object 312 inside.
  • ⁇ Modified example of configuration of hand> The shape of the hand and the number and positions of the distance sensors shown in FIG. 2 are examples and can be changed.
  • the number of fingers is particularly limited as long as at least one pair of fingers are arranged in opposing positions and are capable of sandwiching an object by moving in mutually opposing directions. not.
  • the fingers 42L and 42R are arranged at positions facing each other, and by moving them in the directions facing each other (the x-axis direction of the finger coordinate system), it is possible to pinch an object. .
  • FIG. 24 schematically shows finger positions of a hand 401 having three fingers.
  • the hand 401 has three fingers, a finger 411L, a finger 411R, and a finger 411C.
  • FIG. 24 schematically shows the positions of the fingers 411L, 411R, and 411C viewed from the Z-axis direction of the hand coordinate system.
  • the fingers 411L and 411R are arranged at positions facing each other. Finger 411L can be moved in the direction of arrow AL1. Finger 411R can move in the direction of arrow AR1 opposite to the direction indicated by arrow AL1. By moving the finger 411L in the direction of the arrow AL1 and moving the finger 411R in the direction of the arrow AR1, the object 402 can be pinched.
  • the finger 411C can be moved in the direction of arrow AC1 orthogonal to arrows AL1 and AL2.
  • fingers such as the fingers 42L and 42R and the fingers 411L and 411R that meet the above conditions and that the hand must have are referred to as essential fingers.
  • the number of joints and links (degree of freedom of fingers) of the required fingers is not particularly limited as long as the above conditions are met.
  • FIG. 25 schematically shows a configuration example of a hand 451 having fingers 461L and 461R, which are essential fingers.
  • parts corresponding to the hand 15 in FIG. 2 are denoted by the same reference numerals.
  • the fingers 461L and 461R are connected to the base portion 41 at substantially the same positions as the fingers 42L and 42R of the hand 15 of FIG.
  • the finger 461L has links 471L to 473L.
  • the links 471L to 473L can rotate around the y-axis of the finger coordinate system via joints (not shown). Therefore, the finger 461L has three degrees of freedom.
  • the finger 461R has links 471R to 473R.
  • the finger 461R has the same configuration as the finger 461L and can move symmetrically with the finger 461L.
  • the fingers 461L and 461R are arranged at positions facing each other.
  • the link 473L of the finger 461L and the link 473R of the finger 461R can pinch the object 452 by moving in opposite directions.
  • each essential finger should be equipped with at least two distance sensors.
  • the distance sensors for the respective essential fingers are arranged at mutually symmetrical positions.
  • FIG. 26 shows a modification of the number and positions of the distance sensors 56 of the hand 15.
  • a distance sensor 56R-1 and a distance sensor 56R-2 are provided on the contact surface of the link 54R of the finger 42R.
  • the distance sensor 56R-1 is arranged substantially in the center of the contact surface in the z-axis direction at one end (the negative direction of the y-axis) of the contact surface of the link 54R in the y-axis direction.
  • the distance sensor 56R-2 is arranged substantially in the center of the contact surface of the link 54R in the z-axis direction at the other (positive y-axis direction) end of the contact surface in the y-axis direction. That is, the distance sensor 56R-1 and the distance sensor 56R-2 are arranged side by side in the y-axis direction at both ends of the contact surface in the y-axis direction.
  • a distance sensor 56L-1 and a distance sensor 56L-2 are provided on the contact surface of the link 54L of the finger 42L.
  • the distance sensor 56L-1 and the distance sensor 56L-2 are arranged at positions symmetrical to the distance sensor 56R-1 and the distance sensor 56R-2. Therefore, the distance sensor 56L-1 and the distance sensor 56R-1 are arranged to face each other, and the distance sensor 56L-2 and the distance sensor 56R-2 are arranged to face each other.
  • the hand 15 of FIG. 26 cannot measure the inclination of the object about the y-axis relative to the finger 42R and the inclination of the object around the y-axis relative to the finger 42L. Therefore, the hand 15 shown in FIG. 26 cannot be adjusted about the X-axis of the hand coordinate system.
  • the distance sensor 56R-1 and the distance sensor 56R-2 are arranged side by side in the z-axis direction of the finger coordinate system, and the distance sensor 56L-1 and the distance sensor 56L-2 are arranged in the z-axis direction of the finger coordinate system.
  • the posture of the hand 15 around the X axis can be adjusted, but the posture of the hand 15 around the Z axis cannot be adjusted.
  • the distance sensors 56 are arranged in the y-axis direction and the z-axis direction for each finger 42 . Therefore, it is possible to adjust the attitude of the hand 15 around the X-axis and around the Z-axis.
  • the distance sensors 56 do not necessarily have to be arranged symmetrically between the finger 42L and the finger 42R. However, it is necessary to match the direction in which the distance sensor 56 is arranged on the contact surface of the link 54L of the finger 42L with the direction in which the distance sensor 56 is arranged on the contact surface of the link 54R of the finger 42R.
  • the distance sensors 56L-1 to 56L-4 and the distance sensors 56R-1 to 56R-4 are arranged in the z-axis direction.
  • the distance sensors 56L-5 to 56L-8 and the distance sensors 56R-5 to 56R-R are arranged in the z-axis direction.
  • Both the distance sensor 56L-1 and the distance sensor 56L-5 and the distance sensor 56R-1 and the distance sensor 56R-5 are arranged in the y-axis direction.
  • Both the distance sensor 56L-2 and the distance sensor 56L-6 and the distance sensor 56R-2 and the distance sensor 56R-6 are arranged in the y-axis direction.
  • Both the distance sensor 56L-3 and the distance sensor 56L-7 and the distance sensor 56R-3 and the distance sensor 56R-7 are arranged in the y-axis direction. Both the distance sensor 56L-4 and the distance sensor 56L-8 and the distance sensor 56R-4 and the distance sensor 56R-8 are arranged in the y-axis direction.
  • the distance sensors 56L-1 and 56L-2 and the distance sensors 56R-1 and 56R-2 are both arranged in the y-axis direction.
  • the distance sensor 56 it is possible to use a distance sensor of a method other than the ToF method as the distance sensor 56 .
  • a distance sensor of a method other than the ToF method it is possible to use a photoreflector, ultrasonic, laser, or other type of distance sensor as the distance sensor 56 .
  • the distance and inclination of the object with respect to each finger 42 can be measured, it is not necessary to use a plurality of distance sensors.
  • at least one distance sensor capable of measuring the distance to the object and at least one tilt detection sensor capable of detecting the tilt of the object may be used.
  • the fingers 42L and 42R may be directly connected without the palm 41F.
  • the series of processes described above can be executed by hardware or by software.
  • a program that constitutes the software is installed in the computer.
  • the computer includes, for example, a computer built into dedicated hardware and a general-purpose personal computer capable of executing various functions by installing various programs.
  • FIG. 27 is a block diagram showing a hardware configuration example of a computer that executes the series of processes described above by a program.
  • CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • An input/output interface 1005 is further connected to the bus 1004 .
  • An input unit 1006 , an output unit 1007 , a storage unit 1008 , a communication unit 1009 and a drive 1010 are connected to the input/output interface 1005 .
  • the input unit 1006 consists of input switches, buttons, a microphone, an imaging device, and the like.
  • the output unit 1007 includes a display, a speaker, and the like.
  • the storage unit 1008 includes a hard disk, nonvolatile memory, and the like.
  • a communication unit 1009 includes a network interface and the like.
  • a drive 1010 drives a removable medium 1011 such as a magnetic disk, optical disk, magneto-optical disk, or semiconductor memory.
  • the CPU 1001 loads, for example, a program recorded in the storage unit 1008 into the RAM 1003 via the input/output interface 1005 and the bus 1004, and executes the program. A series of processes are performed.
  • the program executed by the computer 1000 can be provided by being recorded on removable media 1011 such as package media, for example. Also, the program can be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
  • the program can be installed in the storage unit 1008 via the input/output interface 1005 by loading the removable medium 1011 into the drive 1010 . Also, the program can be received by the communication unit 1009 and installed in the storage unit 1008 via a wired or wireless transmission medium. In addition, programs can be installed in the ROM 1002 and the storage unit 1008 in advance.
  • the program executed by the computer may be a program that is processed in chronological order according to the order described in this specification, or may be executed in parallel or at a necessary timing such as when a call is made. It may be a program in which processing is performed.
  • a system means a set of multiple components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Therefore, a plurality of devices housed in separate housings and connected via a network, and a single device housing a plurality of modules in one housing, are both systems. .
  • this technology can take the configuration of cloud computing in which a single function is shared by multiple devices via a network and processed jointly.
  • each step described in the flowchart above can be executed by a single device, or can be shared by a plurality of devices.
  • one step includes multiple processes
  • the multiple processes included in the one step can be executed by one device or shared by multiple devices.
  • a hand comprising a first finger and a second finger capable of pinching an object by moving in opposite directions; a first sensor group provided on the first finger and used for measuring the distance and tilt of the object with respect to the first finger; a second sensor group provided on the second finger and used to measure the distance and tilt of the object with respect to the second finger; Before gripping the object, the hand relative to the object is determined based on a first sensor data group from the first sensor group and a second sensor data group from the second sensor group. and a control for adjusting position and relative attitude in parallel.
  • the controller controls at least one of a relative position and a relative orientation of the first finger with respect to the object, based on the first sensor data group and the second sensor data group, before gripping the object.
  • the control unit before gripping the object, measures a first nearest neighbor distance and a first inclination of the object with respect to the first finger based on the first sensor data group.
  • a second nearest neighbor distance and a second inclination of the object with respect to the second finger are measured based on two sensor data groups, and the first nearest neighbor distance, the second nearest neighbor distance, the Based on the first tilt and the second tilt, the relative position of the hand, the relative posture of the hand, the relative position of the first finger, the relative posture of the first finger, the second The gripping device according to (2) above, wherein at least one of the relative positions of the fingers and the relative posture of the second fingers is adjusted.
  • the relative position of the first finger and the first distance are adjusted so that the first distance between the first finger and the object and the second distance between the second finger and the object approach target distances.
  • the controller causes the object to be gripped by the first finger and the second finger after setting the first spacing and the second spacing to the target spacing.
  • the control unit controls a first contact surface, which is the surface of the first finger that contacts the object, to be substantially parallel to the object, and a second contact surface, which is the surface of the second finger that contacts the object.
  • the relative position of the hand and the The gripping device according to any one of (1) to (5), which adjusts a relative posture.
  • the control unit determines a first tilt of the object with respect to the first finger, a first nearest neighbor distance, a first distance center of gravity, and a first curvature distribution.
  • a second inclination of the object with respect to the second finger based on the second sensor data group, a second nearest neighbor distance, a second distance center of gravity, and a second measuring at least one of two curvature distributions, at least one of the first slope, the first nearest neighbor distance, the first distance centroid, and the first curvature distribution; adjusting the relative position and relative attitude of the hand based on at least one of the second inclination, the second nearest neighbor distance, the second distance center of gravity, and the second curvature distribution; (6) The gripping device according to (6).
  • the hand is comprising a palm to which the first finger and the second finger are connected; further comprising a third sensor group provided on the palm and used to measure the distance and tilt of the object with respect to the palm, any one of (1) to (7) above, wherein the control unit further adjusts the relative position and orientation of the palm with respect to the object, based on a third sensor data group from the third sensor group A gripping device as described.
  • the third sensor group includes a plurality of distance sensors.
  • the control unit After adjusting the relative position and relative orientation of the hand, the control unit adjusts the relative position and relative orientation of the first finger with respect to the object based on the first sensor data group and the second sensor data group.
  • each of the first sensor group and the second sensor group includes a plurality of distance sensors.
  • each of the distance sensors included in the first sensor group and each of the distance sensors included in the second sensor group are arranged at mutually symmetrical positions.
  • the distance sensor included in the first sensor group is arranged on a first contact surface that is the surface of the first finger that contacts the object.
  • the gripping device according to (12) above, wherein the distance sensor included in the second sensor group is arranged on a second contact surface that is a surface of the second finger that contacts the object.
  • the control unit controls the movement of the first finger and the second finger so that the first contact surface and the second contact surface move toward each other or separate while maintaining a parallel state.
  • the gripping device according to (13) above.
  • the control unit controls drive timing of each distance sensor included in the first sensor group based on a distance to the object measured by each distance sensor included in the first sensor group. and controlling the driving timing of each of the distance sensors included in the second sensor group based on the distance to the object measured by each of the distance sensors included in the second sensor group.
  • the gripping device according to any one of (14).
  • the control unit determines whether or not there is interference between the distance sensors based on the distance to the object measured by each distance sensor, and simultaneously drives the distance sensors determined not to interfere to prevent interference.
  • the gripping device according to (15) above, in which the distance sensor determined to be driven is driven at different timings.
  • the control unit controls the distance sensor included in a group having the most effective data or a group closest to the object, among a plurality of groups obtained by dividing the distance sensor included in the first sensor group. and the distance data included in the group with the most effective data or the group with the closest distance from the object, among a plurality of groups obtained by dividing the distance sensor included in the second sensor group.
  • the gripping device according to any one of (11) to (16), wherein the relative position and orientation of the hand with respect to the object are adjusted based on distance data from a sensor.
  • the valid data is distance data shorter than the distance between the first finger and the second finger.
  • the first sensor group and the second sensor group each include a distance sensor and an inclination detection sensor.
  • a hand comprising a first finger and a second finger capable of pinching an object by moving in opposite directions; a first sensor group provided on the first finger and used for measuring the distance and tilt of the object with respect to the first finger; a second sensor group provided on the second finger and used to measure the distance and tilt of the object with respect to the second finger, Before gripping the object, the hand relative to the object is determined based on a first sensor data group from the first sensor group and a second sensor data group from the second sensor group.
  • a gripping method that adjusts position and relative orientation in parallel.

Landscapes

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

Abstract

本技術は、物体を迅速かつ確実に把持することができるようにする把持装置及び把持方法に関する。 把持装置は、互いに対向する方向に動かすことにより物体を挟むことが可能な第1の指及び第2の指を備えるハンドと、前記第1の指に設けられ、前記第1の指に対する前記物体の距離及び傾きの計測に用いられる第1のセンサ群と、前記第2の指に設けられ、前記第2の指に対する前記物体の距離及び傾きの計測に用いられる第2のセンサ群と、前記物体を把持する前に、前記第1のセンサ群からの第1のセンサデータ群、及び、前記第2のセンサ群からの第2のセンサデータ群に基づいて、前記物体に対する前記ハンドの相対位置及び相対姿勢を並行して調整する制御部とを備える。本技術は、例えば、ロボットアームに適用できる。

Description

把持装置及び把持方法
 本技術は、把持装置及び把持方法に関し、特に、物体を迅速かつ確実に把持できるようにした把持装置及び把持方法に関する。
 従来、それぞれ3つの節を有する4本の指を備え、各指の各節及び掌に距離センサを備えるロボットハンドが提案されている(例えば、特許文献1参照)。
特開2009-274204号公報
 しかしながら、特許文献1に記載のロボットハンドでは、各指の各節及び掌の全ての距離センサと物体との間の距離が同一になるように腕及びロボットハンドが制御された後、物体が把持される。そのため、制御が複雑になり、物体を把持するまでに要する時間が長くなることが想定される。
 本技術は、このような状況に鑑みてなされたものであり、物体を迅速かつ確実に把持できるようにするものである。
 本技術の一側面の把持装置は、互いに対向する方向に動かすことにより物体を挟むことが可能な第1の指及び第2の指を備えるハンドと、前記第1の指に設けられ、前記第1の指に対する前記物体の距離及び傾きの計測に用いられる第1のセンサ群と、前記第2の指に設けられ、前記第2の指に対する前記物体の距離及び傾きの計測に用いられる第2のセンサ群と、前記物体を把持する前に、前記第1のセンサ群からの第1のセンサデータ群、及び、前記第2のセンサ群からの第2のセンサデータ群に基づいて、前記物体に対する前記ハンドの相対位置及び相対姿勢を並行して調整する制御部とを備える。
 本技術の一側面の把持方法は、互いに対向する方向に動かすことにより物体を挟むことが可能な第1の指及び第2の指を備えるハンドと、前記第1の指に設けられ、前記第1の指に対する前記物体の距離及び傾きの計測に用いられる第1のセンサ群と、前記第2の指に設けられ、前記第2の指に対する前記物体の距離及び傾きの計測に用いられる第2のセンサ群とを備える把持装置が、前記物体を把持する前に、前記第1のセンサ群からの第1のセンサデータ群、及び、前記第2のセンサ群からの第2のセンサデータ群に基づいて、前記物体に対する前記ハンドの相対位置及び相対姿勢を並行して調整する。
 本技術の一側面においては、互いに対向する方向に動かすことにより物体を挟むことが可能な第1の指及び第2の指を備えるハンドと、前記第1の指に設けられ、前記第1の指に対する前記物体の距離及び傾きの計測に用いられる第1のセンサ群と、前記第2の指に設けられ、前記第2の指に対する前記物体の距離及び傾きの計測に用いられる第2のセンサ群とを備える把持装置により、前記物体を把持する前に、前記第1のセンサ群からの第1のセンサデータ群、及び、前記第2のセンサ群からの第2のセンサデータ群に基づいて、前記物体に対する前記ハンドの相対位置及び相対姿勢が並行して調整される。
本技術を適用したロボットの構成例を示す模式図である。 図1のロボットのハンドの構成例を示す図である。 ハンド座標系及び指座標系の例を示す図である。 図1のロボットの制御部の構成例を示すブロック図である。 図1のロボットにより実行される物体把持制御処理を説明するためのフローチャートである。 物体把持制御処理の具体例を説明するための図である。 ハンドの位置を調整せずに対象物を把持する例を示す図である。 指と対象物との間隔を調整せずに対象物を把持する例を示す図である。 ハンドの姿勢を調整せずに対象物を把持する例を示す図である。 ハンドの位置を調整せずに、ハンドの姿勢を調整して対象物を把持する例を示す図である。 掌の距離センサを用いて対象物と掌との間の距離を調整してから対象物を把持する例を示す図である。 指の中心で対象物を把持しない場合と指の中心で対象物を把持する場合の例を示す図である。 各指のリンクが互いに平行でない場合の各指の位置の調整例を示す図である。 距離センサの駆動タイミングの制御方法を説明するための図である。 距離センサの駆動タイミングの制御方法を説明するための図である。 距離センサをグループ分けして、使用する距離センサを選択する例を説明するための図である。 距離重心の例を示す図である。 距離勾配の例を示す図である。 ハンドの位置調整が収束しない例を示す図である。 ハンドの位置調整が収束しない例を示す図である。 ハンドのY軸回りの姿勢と対象物の接触面積との関係を示す図である。 ハンドの掌が対象物に衝突する例を示す図である。 ハンドのY軸回りの姿勢の調整方法を説明するための図である。 ハンドの変形例を示す模式図である。 ハンドの変形例を示す模式図である。 ハンドの変形例を示す図である。 コンピュータの構成例を示す図である。
 以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
 1.本技術の実施の形態
 2.変形例
 3.その他
 <<1.本技術の実施の形態>>
 図1乃至図12を参照して、本技術の実施の形態について説明する。
  <ロボット1の構成例>
 図1は、本技術を適用したロボット1の一実施の形態を示す模式図である。
 なお、以下、ロボット1から見た方向により、ロボット1の左右の方向を定義する。例えば、図1の左側(ロボット1から見て右側)を右方向とし、右側(ロボット1から見て左側)を左方向とする。
 ロボット1は、頭部11、首部12、胴体部13、アーム14L、アーム14R、ハンド15L、ハンド15R、腰部16、車輪17L、及び、車輪17Rを備える。
 頭部11は、首部12を介して、胴体部13の上面に接続されている。頭部11は、例えば、首部12を介して、胴体部13に対してロール方向、ヨー方向、及び、ピッチ方向に回転可能である。
 胴体部13は、腰部16の上に接続されている。胴体部13は、例えば、腰部16に対して、ヨー方向に回転可能である。
 アーム14Lは、人間の左腕に対応する部位であり、胴体部13の左上端に接続されている。アーム14Lは、関節31L、リンク32L、関節33L、及び、リンク34Lを備える。
 関節31Lは、人間の左肩関節に対応する部位であり、胴体部13の左上端に設けられている。
 リンク32Lは、人間の左上腕部に対応する部位であり、関節31Lを介して、胴体部13の左上端に接続されている。リンク32Lは、例えば、関節31Lを介して、3自由度の回転運動が可能である。具体的には、例えば、リンク32Lは、前後及び左右方向に回転したり、捻ったりすることが可能である。
 関節33Lは、人間の左肘関節に対応する部位であり、リンク32Lの先端に接続されている。
 リンク34Lは、人間の左前腕部に対応する部位であり、関節33Lを介して、リンク32Lに接続されている。リンク34Lは、例えば、関節33Lを介して、リンク32Lに対して2自由度の回転運動が可能である。具体的には、例えば、リンク34Lは、アーム14L(肘)を伸縮させる方向に回転したり、捻ったりすることが可能である。
 アーム14Rは、人間の右腕に対応する部位であり、胴体部13の右上端に接続されている。アーム14Rは、関節31R、リンク32R、関節33R、及び、リンク34Rを備える。アーム14Rは、アーム14Lと同様の構成を備え、アーム14Lと対称な動きをすることが可能である。
 ハンド15Lは、人間の左手に対応する部位であり、アーム14Lの先端に接続されている。ハンド15Lは、ベース部41L、指42LL、及び、指42RLを備える。
 ベース部41Lは、人間の掌及び手の甲に対応する部位であり、リンク34Lの先端に接続されている。ベース部41Lは、例えば、リンク34Lに対して1自由度の回転運動が可能である。具体的には、例えば、ベース部41Lは、リンク34Lの伸長方向に伸びるを軸回りに回転することが可能である。
 指42LL及び指42RLは、ベース部41Lの先端に所定の間隔を空けて接続されている。指42LL及び指42RLは、互いに接近及び離れる方向に動かすことができ、物体を挟むことができる。
 ハンド15Rは、人間の右手に対応する部位であり、アーム14Rの先端に接続されている。ハンド15Rは、ベース部41R、指42LR、及び、指42RRを備える。ハンド15Rは、ハンド15Lと同様の構成を備え、ハンド15Rと同様な動きをすることが可能である。
 なお、ハンド15L及びハンド15Rの詳細な構成例は、後述する。
 腰部16の左端には、車輪17Lが接続されている。腰部16の右端には、車輪17Rが接続されている。ロボット1は、車輪17L及び車輪17Rにより、例えば、前進、後進、及び、回転することが可能である。
 頭部11の左目又は右目(この図では右目)付近には、RGB-Dカメラ18が設けられている。RGB-Dカメラ18は、被写体を撮影するともに被写体までの距離を計測し、各画素の色を示すカラー画像、及び、各画素の距離(デプス)を示す距離画像を生成する。RGB-Dカメラ18は、カラー画像を示すデータ(以下、カラー画像データと称する)及び距離画像を示すデータ(以下、距離画像データと称する)を出力する。
 以下、アーム14L及びアーム14Rを個々に区別する必要がない場合、単にアーム14と称する。以下、ハンド15L及びハンド15Rを個々に区別する必要がない場合、単にハンド15と称する。以下、関節31L及び関節31Rを個々に区別する必要がない場合、単に関節31と称する。以下、リンク32L及びリンク32Rを個々に区別する必要がない場合、単にリンク32と称する。以下、関節33L及び関節33Rを個々に区別する必要がない場合、単に関節33と称する。以下、リンク34L及びリンク34Rを個々に区別する必要がない場合、単にリンク34と称する。
 以下、ベース部41L及びベース部41Rを個々に区別する必要がない場合、単にベース部41と称する。以下、指42LL及び指42LRを個々に区別する必要がない場合、単に指42Lと称する。以下、指42RL及び指42RRを個々に区別する必要がない場合、単に指42Rと称する。以下、指42L及び指42Rを個々に区別する必要がない場合、単に指42と称する。
  <ハンド15の構成例>
 図2は、ハンド15の構成例を示している。
 上述したように、ハンド15は、ベース部41、指42L、及び、指42Rを備える。
 図3のBは、ハンド15の座標系であるハンド座標系を示している。ハンド座標系は、X軸、Y軸、及び、Z軸の3軸により定義される。Z軸は、アーム14のリンク34の伸長方向に平行な軸であり、リンク34に向かう方向を正方向とする。Y軸は、指42Lと指42Rが対向する方向であり、指42Rから指42Lに向かう方向を正方向とする。X軸は、Y軸及びZ軸に垂直な軸であり、図内の奥から手前に向かう方向を正方向とする。
 なお、以下、X軸方向をハンド15の前後方向とし、X軸の正方向を前方向とする。以下、Y軸方向をハンド15の左右方向とし、Y軸の正方向を左方向とする。以下、Z軸方向をハンド15の上下方向とし、Z軸の正方向を上方向とする。
 ベース部41は、6つの四角形からなる六面体により構成される。ベース部41の下面(先端の面)は、ハンド15の掌41Fを構成する。ベース部41の左側面41SLには指42Lが接続され、右側面41SRには指42Rが接続されている。
 指42Rは、関節51R、リンク52R、関節53R、及び、リンク54Rを備える。
 関節51Rは、ベース部41の右側面41SRに、上下方向に延びるように接続されている。
 リンク52Rは、人間の指の基節に対応し、板状であり、関節51Rを介して、ベース部41の右側面41SRに接続されている。リンク52Rは、関節51Rを軸にして回転することが可能である。
 関節53Rは、リンク52Rの先端に接続されている。
 リンク54Rは、人間の指の末節に対応し板状であり、関節53Rを介してリンク52Rの先端に接続されている。リンク54Rは、関節53Rを軸にして回転することが可能である。
 指42Lは、関節51L、リンク52L、関節53L、及び、リンク54Lを備える。
指42Lは、指42Rと同様の構成を備え、指42Rと対称な動きをすることができる。
 図3のAは、指42R及び指42Lの座標系である指座標系を示している。
 指42Rの指座標系は、x軸、y軸、及び、z軸の3軸により定義される。z軸は、指42Rのリンク54Rの伸長方向に平行な軸であり、ベース部41に向かう方向を正方向とする。y軸は、ハンド座標系のX軸に平行な軸であり、図内の手前から奥に向かう方向を正方向とする。x軸は、y軸及びz軸に垂直な軸であり、指42Lに向かう方向を正方向とする。
 指42Lの指座標系は、x軸、y軸、及び、z軸の3軸により定義される。z軸は、指42Lのリンク54Lの伸長方向に平行な軸であり、ベース部41に向かう方向を正方向とする。y軸は、ハンド座標系のX軸に平行な軸であり、図内の奥から手前に向かう方向を正方向とする。従って、指42Rの指座標系のy軸と指42Lの指座標系のy軸とは、互いに逆方向となる。x軸は、y軸及びz軸に垂直な軸であり、指42Rに向かう方向を正方向とする。
 リンク54Rの指42L側(内側)の面は、物体を把持する場合に物体に接触する面(以下、接触面と称する)であり、薄い板状の接触部55Rが設けられている。接触部55Rは、リンク54Rのy軸方向の両端以外の部分を覆っている。
 また、リンク54Rの接触面には、距離センサ56R-1乃至距離センサ56R-8が設けられている。距離センサ56R-1乃至距離センサ56R-4は、接触面のy軸方向の一方(y軸の負の方向)の端部において、z軸方向に略等間隔に直線状に並べられている。距離センサ56R-5乃至距離センサ56R-8は、接触面のy軸方向の他方(y軸の正の方向)の端部において、z軸方向に略等間隔に直線状に配置されている。
 距離センサ56R-1と距離センサ56R-5、距離センサ56R-2と距離センサ56R-6、距離センサ56R-3と距離センサ56R-7、及び、距離センサ56R-4と距離センサ56R-8は、それぞれy軸方向に並ぶように配置されている。従って、距離センサ56R-1乃至距離センサ56R-8は、z軸方向に4個×y軸方向に2個のアレイ状に配置されている。
 リンク54Lの指42R側(内側)の面は、物体を把持する場合に物体に接触する接触面であり、リンク54Rの接触面と同様に、薄い板状の接触部55Lが設けられている。
 また、図示は省略するが、指42Lのリンク54Lの接触面には、距離センサ56L-1乃至距離センサ56L-8が、指42Rの距離センサ56R-1乃至距離センサ56R-8と対称な位置に配置されている。従って、距離センサ56R-1乃至距離センサ56R-8と距離センサ56L-1乃至距離センサ56L-8とが、それぞれ対向する位置に配置されている。
 距離センサ56R-1乃至距離センサ56R-8及び距離センサ56L-1乃至距離センサ56L-8には、例えば、光学式のToF(Time of Flight)原理を用いた距離センサが用いられる。距離センサ56R-1乃至距離センサ56R-8及び距離センサ56L-1乃至距離センサ56L-8は、例えば、0乃至100mm程度の範囲内の距離計測が可能である。
 なお、ハンド15は、2指平行グリッパである。すなわち、リンク54L及びリンク54RがY軸方向のみに移動するように、指42Lの関節51L及び関節53L、並びに、指42Rの関節51R及び関節53Rが制御される。これにより、指42L及び指42Rは、リンク54Lの接触面(接触部55L)とリンク54Rの接触面(接触部55R)とが略平行かつ対向した状態を維持したまま移動し(接近したり離れたりし)、物体を把持する。従って、ハンド15においては、対象物に対するハンド15の相対位置及び相対姿勢を変更せずに、対象物に対する各指42の相対位置を調整することが可能であるが、対象物に対する各指42の相対姿勢を調整することはできない。
 以下、関節51L及び関節51Rを個々に区別する必要がない場合、単に関節51と称する。以下、リンク52L及びリンク52Rを個々に区別する必要がない場合、単にリンク52と称する。以下、関節53L及び関節53Rを個々に区別する必要がない場合、単に関節53と称する。以下、リンク54L及びリンク54Rを個々に区別する必要がない場合、単にリンク54と称する。以下、接触部55L及び接触部55Rを個々に区別する必要がない場合、単に接触部55と称する。以下、距離センサ56L-1乃至距離センサ56L-8を個々に区別する必要がない場合、単に距離センサ56Lと称する。以下、距離センサ56R-1乃至距離センサ56R-8を個々に区別する必要がない場合、単に距離センサ56Rと称する。以下、距離センサ56L及び距離センサ56Rを個々に区別する必要がない場合、単に距離センサ56と称する。
 以下、距離センサ56L-1乃至距離センサ56L-8及び距離センサ56R-1乃至距離センサ56R-8からなるセンサ群を距離センサ群SGと称する。
  <制御部101の構成例>
 図4は、ロボット1のハンド15の位置決め制御(サーボ)、及び、ハンド15による物体の把持の制御を実行する制御部101の構成例を示している。ハンド15の位置決めとは、例えば、把持対象となる物体(以下、対象物と称する)を把持するために、対象物に対するハンド15及び指42の相対位置及び相対姿勢を調整する処理(対象物に対する位置合わせをする処理)である。
 制御部101は、物体計測部111、傾き計測部112、最近傍距離計測部113、制御量計算部114、制御量計算部115、制御終了判定部116、コントローラ117、及び、センサ制御部118を備える。
 物体計測部111は、RGB-Dカメラ18から供給されるカラー画像データ及び距離画像データに基づいて、対象物の形状及び位置を計測する。物体計測部111は、対象物の形状及び位置を示す情報を制御量計算部114に供給する。
 傾き計測部112は、距離センサ群SGを構成する各距離センサ56から供給される距離データ群、及び、コントローラ117により計算される両指間の距離に基づいて、各指42に対する対象物の傾きを計測する。対象物の傾きは、例えば、ハンド15の各指42の接触面に対する傾きにより表される。両指間の距離は、例えば、指42Lの接触面と指42Rの接触面との間の距離により表される。傾き計測部112は、対象物の傾きを示す情報を制御量計算部114に供給する。
 最近傍距離計測部113は、距離センサ群SGを構成する各距離センサ56から供給される距離データ群、及び、コントローラ117により計算される両指間の距離に基づいて、各指42に対する対象物までの最近傍距離を計測する。対象物までの最近傍距離は、例えば、各指42の距離センサ56により計測される対象物までの距離のうち最も短い距離とされる。最近傍距離計測部113は、対象物までの最近傍距離を示す情報を制御量計算部114及び制御量計算部115に供給する。
 制御量計算部114は、対象物の形状及び位置の計測結果に基づいて、対象物を把持する位置(以下、目標把持位置と称する)を計算する。制御量計算部114は、目標把持位置の手前までハンド15を移動させるためのアーム14の軌道を計画する。制御量計算部114は、計画した軌道に従ってハンド15を移動させるためのアーム14の駆動部(例えば、関節31、関節33、ベース部41等)の制御量を計算する。
 また、制御量計算部114は、対象物の傾き及び最近傍距離の計測結果に基づいて、対象物に対するハンド15の相対位置及び相対姿勢を調整するために必要なアーム14の駆動部の制御量を計算する。
 制御量計算部114は、アーム14の駆動部の制御量を示す情報を制御終了判定部116及びコントローラ117に供給する。
 制御量計算部115は、対象物の最近傍距離の計測結果に基づいて、対象物に対する指42の相対位置及び相対姿勢を調整するために必要なハンド15の駆動部(例えば、関節51、関節53等)の制御量を計算する。制御量計算部115は、ハンド15の駆動部の制御量を示す情報を制御終了判定部116及びコントローラ117に供給する。
 制御終了判定部116は、アーム14及びハンド15の駆動部の制御量に基づいて、ハンド15の位置決め制御を終了するか否かを判定する。制御終了判定部116は、ハンド15の位置決め制御を終了すると判定した場合、ハンド15の位置決め制御の終了をコントローラ117に指示する。
 コントローラ117は、制御量計算部114及び制御量計算部115から供給される制御量に基づいて、アーム14及びハンド15の駆動部を制御する。また、コントローラ117は、関節51L、関節51R、関節53L、及び、関節53Rの角度に基づいて、両指間の距離を計算し、両指間の距離を示す情報を傾き計測部112及び最近傍距離計測部113に供給する。
 センサ制御部118は、各距離センサ56から供給される距離データに基づいて、各距離センサ56の駆動タイミングを制御する。
  <物体把持制御処理>
 次に、図5のフローチャートを参照して、ロボット1により実行される物体把持制御処理について説明する。
 ステップS1において、ロボット1は、RGB-Dカメラ18による物体計測を実行する。具体的には、RGB-Dカメラ18は、対象物を撮影し、得られたカラー画像データ及び距離画像データを物体計測部111に供給する。物体計測部111は、カラー画像データ及び距離画像データに基づいて、対象物の形状及び位置を計測する。物体計測部111は、対象物の形状及び位置を示す情報を制御量計算部114に供給する。
 ステップS2において、ロボット1は、アーム14の軌道を計画する。具体的には、制御量計算部114は、対象物の形状及び位置に基づいて、目標把持位置を計算する。制御量計算部114は、目標把持位置の近傍までハンド15を移動させるためのアーム14の軌道を計画する。
 ステップS3において、ロボット1は、対象物へのアプローチを開始する。具体的には、制御量計算部114は、計画した軌道に従ってアーム14を移動させるために必要なアーム14の駆動部の制御量を計算する。制御量計算部114は、計算した制御量を示す情報をコントローラ117に供給する。
 コントローラ117は、計算された制御量に基づいて、アーム14の駆動部を制御して、制御量計算部114により計画された軌道に従ってアーム14を移動させる。
 ステップS4において、最近傍距離計測部113は、距離センサ56により対象物が検出されたか否かを判定する。この判定処理は、距離センサ56により対象物が検出されたと判定されるまで繰り返し実行される。そして、最近傍距離計測部113は、いずれかの距離センサ56により対象物が検出された場合、距離センサ56により対象物が検出されたと判定し、処理はステップS5に進む。
 ステップS5において、制御部101は、対象物の傾き及び距離を計測する。
 具体的には、傾き計測部112は、各距離センサ56からの距離データに基づいて、対象物の傾きを計測する。例えば、傾き計測部112は、コントローラ117から両指間の距離を示す情報を取得する。傾き計測部112は、両指間の距離に基づいて、計測された距離が有効レンジ内の距離データを有効データとして抽出する。有効レンジは、例えば、両指間の距離未満の範囲に設定される。
 傾き計測部112は、例えば、指42Lの距離センサ56Lの有効データにより示される対象物までの距離を用いて、最小二乗法により、指42Lに対する対象物の傾きを計算する。同様に、傾き計測部112は、例えば、指42Rの距離センサ56Rの有効データにより示される対象物までの距離を用いて、最小二乗法により、指42Rに対する対象物の傾きを計算する。傾き計測部112は、対象物の傾きを示す情報を制御量計算部114に供給する。
 また、最近傍距離計測部113は、各距離センサ56からの距離データに基づいて、対象物までの最近傍距離を計測する。例えば、最近傍距離計測部113は、傾き計測部112と同様の方法により、各距離センサ56の距離データの中から有効データを抽出する。
 最近傍距離計測部113は、例えば、指42Lの距離センサ56Lの有効データにより示される対象物までの距離の最小値を、指42Lから対象物までの最近傍距離とする。同様に、最近傍距離計測部113は、例えば、指42Rの距離センサ56Rの有効データにより示される対象物までの距離の最小値を、指42Rから対象物までの最近傍距離とする。傾き計測部112は、対象物までの最近傍距離を示す情報を制御量計算部114及び制御量計算部115に供給する。
 その後、処理はステップS6乃至ステップS9に進む。すなわち、ステップS6乃至ステップS9の処理が並行して実行される。
 ステップS6において、ロボット1は、対象物の左右の傾きの和に基づいて、ハンド15の位置を調整する。
 例えば、制御量計算部114は、次式(1)を用いて、各指42に対する指座標系のz軸回りの対象物の傾きの和に基づいて、ハンド座標系のX軸方向におけるハンド15の目標速度v refを計算する。
ref=G(θLz+θRz) ・・・(1)
 角度θLzは、指42Lの指座標系において、指42Lに対するz軸回りの対象物の傾きを表す角度である。角度θRzは、指42Rの指座標系において、指42Rに対するz軸回りの対象物の傾きを表す角度である。Gは、ゲインである。
 例えば、制御量計算部114は、次式(2)を用いて、各指42に対する指座標系のy軸回りの対象物の傾きの和に基づいて、ハンド座標系のZ軸方向におけるハンド15の目標速度v refを計算する。
ref=G(θLy+θRy) ・・・(2)
 角度θLyは、指42Lの指座標系において、指42Lに対するy軸回りの対象物の傾きを表す角度である。角度θRyは、指42Rの指座標系において、指42Rに対する対象物のy軸回りの傾きを表す角度である。Gは、ゲインである。
 制御量計算部114は、目標速度v ref及び目標速度v refを実現するために必要なアーム14の駆動部の制御量を計算する。制御量計算部114は、アーム14の駆動部の制御量を示す情報を制御終了判定部116及びコントローラ117に供給する。
 コントローラ117は、計算された制御量に基づいて、アーム14の駆動部を制御する。これにより、ハンド15のX軸方向の速度が目標速度v refに近づき、ハンド15のZ軸方向の速度が目標速度v refに近づく。そして、各指42に対する対象物の傾きが平均的に等しくなる。
 ステップS7において、ロボット1は、対象物の左右の傾きの差に基づいて、ハンド15の姿勢を補正する。
 例えば、制御量計算部114は、次式(3)を用いて、各指42に対する指座標系のy軸回りの対象物の傾きの差に基づいて、ハンド座標系のX軸回りのハンド15の目標角速度ω refを計算する。
ω ref=GRoll(θLy-θRy) ・・・(3)
 GRollは、ゲインである。
 例えば、制御量計算部114は、次式(4)を用いて、各指42Lに対する指座標系のz軸回りの対象物の傾きの差に基づいて、ハンド座標系のZ軸回りのハンド15の目標角速度ω refを計算する。
ω ref=GYaw(θLz-θRz) ・・・(4)
 GYawは、ゲインである。
 制御量計算部114は、目標角速度ω ref及び目標角速度ω refを実現するために必要なアーム14の駆動部の制御量を計算する。制御量計算部114は、アーム14の駆動部の制御量を示す情報を制御終了判定部116及びコントローラ117に供給する。
 コントローラ117は、計算された制御量に基づいて、アーム14の駆動部を制御する。これにより、ハンド15のX軸回りの角速度が目標角速度ω refに近づき、ハンド15のZ軸回りの角速度が目標角速度ω refに近づく。
 ステップS6の処理により、各指42に対する対象物の傾きが平均的に等しくなるが、例えば、対象物が直方体である場合、各指42に対する対象物の傾きに偏りが生じるときがある。これに対して、ステップS7の処理により、各指42に対する対象物の傾きの偏りが解消され、各指42と対象物とがほぼ平行になる。すなわち、各指42の接触面と、各指42により把持される対象物の面(以下、把持面と称する)とが略平行になる。
 ステップS8において、ロボット1は、対象物の左右の最近傍距離の差に基づいて、ハンド15の位置を補正する。
 例えば、制御量計算部114は、次式(5)を用いて、指42Lから対象物までの最近傍距離dと、指42Rから対象物までの最近傍距離dとの差に基づいて、ハンド座標系のY軸方向におけるハンド15の目標速度v refを計算する。
ref=G(d-d) ・・・(5)
 Gは、ゲインである。
 制御量計算部114は、目標速度v refを実現するために必要なアーム14の駆動部の制御量を計算する。制御量計算部114は、アーム14の駆動部の制御量を示す情報を制御終了判定部116及びコントローラ117に供給する。
 コントローラ117は、計算された制御量に基づいて、アーム14の駆動部を制御する。これにより、ハンド15のY軸方向の速度が目標速度v refに近づく。そして、各指42から対象物までの最近傍距離がほぼ等しくなる。
 ステップS9において、ロボット1は、対象物の左右の最近傍領域の和に基づいて、指42の位置を制御する。
 例えば、制御量計算部115は、次式(6)を用いて、指42Lから対象物までの最近傍距離dと、指42Rから対象物までの最近傍距離dとの和に基づいて、指座標系のx軸方向における各指42の目標速度v refを計算する。
ref=G(d+d-2dref)=G(d-dref+d-dref
                            ・・・(6)
 Gは、ゲインである。drefは、各指42と対象物との間の目標間隔である。
 なお、目標間隔drefが小さくなるほど、位置決め制御の後に対象物を把持するために各指42を閉じる量が小さくなるため、高速な把持が期待できる。一方、目標間隔drefが小さくなるほど、距離センサ56のノイズ等により、各指42が対象物と衝突する可能性が高くなる。従って、目標間隔drefは、例えば、距離センサ56のノイズの大きさ等を考慮して設定される。
 制御量計算部115は、目標速度v refを実現するために必要なハンド15の駆動部の制御量を計算する。制御量計算部115は、ハンド15の駆動部の制御量を示す情報を制御終了判定部116及びコントローラ117に供給する。
 コントローラ117は、計算された制御量に基づいて、ハンド15の駆動部を制御する。これにより、各指42のx軸方向の速度が目標速度v refに近づく。
 ステップS8及びステップS9の処理により、各指42と対象物との間隔が、目標間隔drefに収束する。
 ステップS6乃至ステップS9の処理の後、処理はステップS10に進む。
 ステップS10において、制御終了判定部116は、制御量が一定値以下であるか否かを判定する。例えば、制御終了判定部116は、アーム14及びハンド15の各駆動部の制御量を、それぞれ所定の閾値と比較する。制御終了判定部116は、少なくとも1つの駆動部の制御量が閾値を超える場合、まだ制御量が一定値以下でないと判定し、処理はステップS5に戻る。
 その後、ステップS10において、制御量が一定値以下であると判定されるまで、ステップS5乃至ステップS10の処理が繰り返し実行される。
 一方、ステップS10において、制御終了判定部116は、全ての駆動部の制御量が閾値以下である場合、制御量が一定値以下であると判定し、処理はステップS11に進む。
 ステップS11において、ロボット1は、対象物を把持する。具体的には、制御終了判定部116は、ハンド15の位置決め制御の終了をコントローラ117に指示する。コントローラ117は、ハンド15の駆動部を制御して、各指42を互いに接近させることにより、各指42により対象物を把持させる。
 その後、物体把持制御処理は終了する。
 ここで、図6乃至図12を参照して、本技術の効果について説明する。
 図6は、卵である対象物201をハンド15により把持する場合の例を示している。
 図6のAは、対象物201の側面が各指42の接触面に対して傾いている状態を示している。これに対して、例えば、図5のステップS6の処理により、対象物201の側面が各指42の接触面に対してほぼ平行になるように、ハンド15の位置が調整される。
 図6のBは、各指42に対する対象物201の側面の傾きが偏っている状態を示している。これに対して、例えば、図5のステップS7の処理により、各指42に対する対象物201の側面の傾きがほぼ等しくなるように、ハンド15の姿勢が調整される。
 図6のCは、各指42から対象物201までの最近傍距離が偏っている状態を示している。これに対して、例えば、図5のステップS8の処理により、各指42から対象物201までの最近傍距離がほぼ等しくなるように、ハンド15の位置が調整される。
 図6のDは、各指42から対象物201までの最近傍距離が離れている状態を示している。これに対して、例えば、図5のステップS9の処理により、各指42から対象物201までの最近傍距離が一定値(目標間隔dref)になるように、各指42の位置が調整される。
 このように、ハンド15の姿勢及び位置、並びに、各指42の位置が並行して調整される。これにより、ハンド15の位置決め制御が高速化され、迅速に収束する。
 また、対象物201の側面(把持面)が各指42の接触面に対してほぼ平行になり、各指42と対象物201との間隔が短く、かつ、ほぼ等しくなる。さらに、各指42の接触面の中心と、対象物201の側面(把持面)の中心とが接近する。これにより、把持前にハンド15が対象物に衝突することが防止される。また、各指42の接触面の中心を用いて(各指42の接触面の中心が対象物201に接触した状態で)対象物201が把持されるとともに、対象物201に対する各指42の接触面積が大きくなり、対象物が落下することなく、安定して把持される。さらに、位置決め制御の後、対象物を把持する際に各指42が動く距離が短くなり、かつ、各指42がほぼ同時に対象物に接触するため、対象物が転倒したり、破損したりすることなく、確実に把持される。
 図7は、ハンド15の位置を調整せずに、対象物201をハンド15により把持する例を示している。この場合、図7のAに示されるように、各指42と対象物201との間の間隔が不均衡な状態で対象物201が把持される。そのため、図7のBに示されるように、対象物201が把持されたときに傾き、各指42と対象物201との接触面積が小さくなるおそれがある。その結果、図7のCに示されるように、対象物201が安定して把持されずに、落下してしまうおそれがある。
 一方、本技術によれば、各指42と対象物201との間隔がほぼ等しくなるように調整されてから、対象物201が把持される。これにより、対象物201が安定して把持され、対象物201の落下が防止される。
 図8は、各指42と対象物201との間隔が開いた状態から対象物201が把持される例を示されている。この場合、例えば、図8のBに示されるように、各指42により対象物201に強い衝撃が加わり、対象物201が破損してしまうおそれがある。
 一方、本技術によれば、各指42と対象物201との間隔が短くかつほぼ等しくなるように調整されてから、対象物201が把持される。これにより、対象物201を把持したときに加わる衝撃が緩和され、対象物201が破損することが防止される。
 図9は、ハンド15の位置のみが調整された後、直方体の対象物211をハンド15により把持する例を示している。例えば、図9のAに示されるように、指42Lと指42Rのほぼ中間に対象物211が配置されるようにハンド15の位置が調整された後、対象物211が把持される。この場合、各指42に対して対象物211の側面が傾いているため、図9のBに示されるように、対象物211を把持した場合に、各指42と対象物211との接触面積が小さくなる。このため、対象物211の安定性が低下し、対象物211が落下する可能性が高くなる。
 また、対象物211が軽い場合、各指42が接触したときに対象物211が動き、対象物211の傾きが解消される可能性がある。しかし、対象物211が動くことにより周囲の物体に衝突し、周囲の物体を移動又は破損させたり、対象物201が動かなくなったりするおそれがある。
 一方、本技術によれば、各指42と対象物211の側面とがほぼ平行になるようにハンド15の姿勢が調整されてから、対象物211が把持される。これにより、各指42と対象物211との接触面積が大きくなり、対象物211の安定性が向上する。
 図10は、ハンド15の姿勢のみが調整された後、対象物211が把持される例を示している。例えば、図10のA及びBに示されるように、各指42に対して対象物211の側面がほぼ平行になるように、ハンド15の姿勢が調整された後、対象物211が把持される。この場合、例えば、ハンド15の姿勢を調整中に指42が対象物211に衝突したり、把持時に一方の指42が先に対象物211に接触したりすることにより、対象物211が傾いたり、倒れたりするおそれがある。
 一方、本技術によれば、各指42と対象物211の側面がほぼ平行になり、各指42と対象物211との間隔がほぼ等しくなるように調整されてから、対象物211が把持される。これにより、ハンド15の位置決め制御中に指42が対象物211に衝突したり、把持時に一方の指42が先に対象物211に接触したりすることが防止され、対象物211が傾いたり、倒れたりすることが防止される。
 図11は、ハンド15の掌41Fに距離センサ221-1乃至距離センサ221-3を設け、距離センサ221-1乃至距離センサ221-3を用いて対象物と掌41Fとの間の距離を調整してから対象物を把持する例を示している。図11のAは、球状の対象物231を把持する例を示している。図11のBは、対象物231より小さい球状の対象物232を把持する例を示している。補助線H1は、各指42の接触面の中心(リンク54の高さ方向の中心)の位置を示している。補助線H2は、位置決め制御後の対象物231及び対象物232の上端の位置を示している。
 この例では、対象物の大きさに関わらず、掌41Fと対象物の最近傍距離が一定になるように、ハンド15の位置が調整される。これにより、掌41Fが対象物に衝突することが防止される。一方、この場合、対象物の位置が、各指42の中心から上下方向にずれ、各指42の中心で対象物を把持できる可能性が低くなる。
 一方、本技術によれば、上述したように、各指42の接触面の中心で対象物を把持することが可能になる。
 図12は、片手鍋である対象物241をハンド15により把持する例を示している。図12のAは、ハンド15の指42の接触面の中心より下方で対象物241の取っ手を把持する例を示している。図12のBは、ハンド15の指42の接触面のほぼ中心で対象物241の取っ手を把持する例を示している。
 この図に示されるように、対象物241を把持する指42の位置に応じて、ロボット1の座標系における対象物241の各部の座標が変化し、その後の対象物241の操作に影響が生じる。例えば、対象物241を周囲の環境(例えば、台等)に接触させる場合、対象物241の作用点と環境との相対位置がずれる。そのため、対象物241に対するハンド15の接触位置の検出が必要になる。
 一方、本技術によれば、各指42の接触面の中心で対象物241を把持することができるため、対象物241に対するハンド15の接触位置の検出が不要になる。また、ハンド15が対象物241を把持した後の対象物241の操作が容易になる。
 また、例えば、各指42の接触部55に分布式の触覚センサ(例えば、圧力分布センサ等)を設ける場合、触覚センサの構造上、触覚センサの外周付近は、検出精度が低下する。
 一方、本技術によれば、各指42の接触面の中心で対象物241を把持することができるため、触覚センサの検出精度が向上する。
 なお、例えば、図13に示されるように、指42Lのリンク54Lの接触面と、指42Rのリンク54Rの接触面とが平行でない場合も、上述した処理により、各リンク54の接触面が、対象物251に対してほぼ平行になり、各リンク54と対象物251との間隔がほぼ等しくなるように、ハンド15の位置決め制御を実行することができる。
  <<2.変形例>>
 以下、上述した本技術の実施の形態の変形例について説明する。
  <距離センサ56の駆動タイミングに関する変形例>
 距離センサ56が光学式ToFセンサにより構成される場合、距離センサ56は、発光した光が受光素子までに戻ってくるまでの時間に基づいて、距離を計測する。
 図14のA及びBは、距離センサ56から発光された光が距離センサ56に戻ってくるまでの様子を模式的に示している。なお、図14のA及びBでは、図を分かりやすくするために、距離センサ56R-4及び距離センサ56L-4の図示が省略されている。
 この図に示されるように、対象物の位置によって、隣接する距離センサ56の光の放射領域と受光素子の検出可能領域がオーバーラップし、受光素子に入射する光に隣接する距離センサ56が発光した光が混入するおそれがある。すなわち、隣接する距離センサ56が干渉し、計測誤差が生じるおそれがある。
 例えば、図14のAに示されるように、各指42と対象物261との間隔が離れると、隣接する距離センサ56の光の放射領域と受光素子の検出可能領域がオーバーラップし、干渉する可能性が高くなる。一方、例えば、図14のBに示されるように、各指42と対象物262との間隔が近づくと、隣接する距離センサ56の光の放射領域と受光素子の検出可能領域がオーバーラップし、干渉する可能性が低くなる。
 これに対して、上述した先行技術文献1では、距離センサを1つずつ順番に駆動することにより、距離センサの干渉を防止することが提案されている。しかし、全ての距離センサの計測が完了するまでに時間を要するため、特に対象物が動く場合に、制御性能が低下し、位置や姿勢の誤差が残留し、位置決め制御の収束に時間を要するおそれがある。
 これに対して、例えば、ロボット1のセンサ制御部118は、対象物までの距離に応じて、各距離センサ56の駆動タイミングを制御する。
 図15は、隣接する距離センサ56-nと距離センサ56-(n+1)が干渉している場合の例を示している。Wは、距離センサ56-nと距離センサ56n+1との間隔を示している。dは、距離センサ56-nの計測値、すなわち、距離センサ56-nと対象物261との間の距離を示している。dn+1は、距離センサ56-(n+1)の計測値、すなわち、距離センサ56-(n+1)と対象物261との間の距離を示している。
 例えば、次の条件式(7)が成立する場合、距離センサ56-nと距離センサ56-(n+1)が干渉するおそれがあり、距離センサ56-nと距離センサ56-(n+1)の駆動タイミングをずらす必要がある。一方、条件式(7)が成立しない場合、距離センサ56-nと距離センサ56-(n+1)が干渉するおそれがなく、距離センサ56-nと距離センサ56-(n+1)を同時に駆動することが可能である。
tanφ+dn+1tanφn+1>W+α ・・・(7)
 なお、φは、各距離センサ56の光の広がり角である。tanφは、距離センサ56の指向性により決まるため、事前に計算することが可能である。
 例えば、図14の例の場合、センサ制御部118は、まず指42Lの距離センサ56L-1乃至距離センサ56L-3をそれぞれグループ1乃至グループ3に分割する。そして、センサ制御部118は、各グループの距離センサ56の駆動タイミングをずらす。これにより、各距離センサ56Lが異なるタイミングで駆動され、各距離センサ56Lの計測値が取得される。
 次に、センサ制御部118は、距離センサ56L-1と距離センサ56L-2、距離センサ56L-2と距離センサ56L-3、及び、距離センサ56-1と距離センサ56L-3の組み合わせについて、条件式(7)に基づいて、干渉が発生するか否かを判定する。そして、センサ制御部118は、例えば、距離センサ56L-1と距離センサ56L-2、及び、距離センサ56L-2と距離センサ56L-3の組み合わせがそれぞれ干渉し、距離センサ56-1と距離センサ56L-3の組み合わせが干渉しない場合、距離センサ56L-1と距離センサ56L-3をグループ1とし、距離センサ56L-2をグループ2とする。そして、センサ制御部118は、グループ1の距離センサ56Lとグループ2の距離センサ56Lを異なるタイミングで駆動するとともに、グループ1の距離センサ56Lを同じタイミングで駆動する。
 これにより、最初は、距離センサ56Lの駆動タイミングが3回に分かれていたのが、2回に減少し、全ての距離センサ56Lの計測に要する時間が短縮される。
 そして、図14のBに示されるように、各距離センサ56Lが干渉しなくなった時点で、全ての距離センサ56Lが同じタイミングで駆動されるようになる。
 指42Rの距離センサ56Rの駆動タイミングの制御も同様の方法により実行される。
 なお、最初に全ての距離センサ56の組み合わせについて干渉の有無をチェックするようにすることが望ましいが、実用上は、隣接する距離センサ56間、及び、2つ隣の距離センサ56間の干渉のみをチェックすれば十分である。
 このように、センサ制御部118は、指42Lの各距離センサ56Lの距離の計測結果に基づいて、各距離センサ56L間の干渉の有無を判定し、干渉の有無に基づいて、各距離センサ56Lの駆動タイミングを制御する。すなわち、センサ制御部118は、互いに干渉しない距離センサ56Lを同時に駆動し、互いに干渉する距離センサ56Lを異なるタイミングで駆動する。
 同様に、センサ制御部118は、指42Rの各距離センサ56Rの距離の計測結果に基づいて、各距離センサ56R間の干渉の有無を判定し、干渉の有無に基づいて、各距離センサ56Rの駆動タイミングを制御する。すなわち、センサ制御部118は、互いに干渉しない距離センサ56Rを同時に駆動し、互いに干渉する距離センサ56Rを異なるタイミングで駆動する。
 これにより、比較的少ない計算量で、距離センサ56間の干渉を防止しつつ、距離センサ56の計測時間を短縮することが可能になる。
  <最近傍距離及び傾きの計測方法に関する変形例>
 例えば、制御部101は、各指42の距離センサ56をそれぞれ複数のグループに分割し、より信頼性が高いグループの距離センサ56を用いて、対象物の最近傍距離及び傾きを計測するようにしてもよい。
 具体的には、例えば、制御部101は、指42Lのリンク54Lの一方の端部に配置されている距離センサ56L-1乃至距離センサ56L-4をグループ1とし、他方の端部に配置されている距離センサ56L-4乃至距離センサ56L-8をグループ2とする。制御部101は、グループ1の距離センサ56Lの距離データに基づいて、対象物の最近傍距離及び傾きを計測する。また、制御部101は、グループ2の距離センサ56Lの距離データに基づいて、対象物の最近傍距離及び傾きを計測する。
 そして、制御部101は、グループ1及びグループ2のうち、有効データが多い方のグループの最近傍距離及び傾きを代表値として選択する。通常、対象物からの距離がより近い距離センサ56Lを含むグループの方が有効データの数が多くなるため、対象物からの距離がより近い距離センサ56Lを含むグループの最近傍距離及び傾きが代表値として選択される可能性が高くなる。
 なお、制御部101は、グループ1及びグループ2の有効データの数が同じ場合、最近傍距離が小さい方のグループの最近傍距離及び傾きを代表値として選択する。これにより、対象物からの距離がより近い距離センサ56Lを含むグループの最近傍距離及び傾きが代表値として選択される。
 指42Rについても同様の方法により、距離センサ56Rがグループ分けされ、対象物の最近傍距離及び傾きの代表値が選択される。
 これより、指42Lの距離センサ56Lのうち、最も有効データが多いグループ、又は、対象物からの距離が最も近いグループに含まれる距離センサ56Lの距離データ、並びに、指42Rの距離センサ56Rのうち、最も有効データが多いグループ、又は、対象物からの距離が最も近いグループに含まれる距離センサ56Rの距離データに基づいて、位置決め制御が行われるようになる。
 ここで、有効データが多いグループ、すなわち、距離の検出数が多いグループほど、対象物の最近傍距離及び傾きの計測結果に対する精度及び信頼性が高くなる。
 また、距離センサ56は、上述した図14に示されるように、一般的にコーン状の視野を持っているため、対象物からの距離が遠くなるほど、より広い領域から反射光を受光する。そのため、距離センサ56は、対象物からの反射光以外に、周囲の環境やハンド15自身からの反射光(すなわち、ノイズ光)を受光する可能性が高くなる。従って、対象物からの距離が近い距離センサ56を含むグループほど、対象物の最近傍距離及び傾きの計測結果の精度及び信頼性が高くなる。
 従って、上述した方法により、対象物の最近傍距離及び傾きの代表値が選択されることにより、対象物の最近傍距離及び傾きの計測結果の精度及び信頼性が高くなる。その結果、位置決め制御の精度及び信頼性が向上する。
 例えば、ハンド15と対象物271との位置関係が図16に示される状態である場合、距離センサ56L-5乃至距離センサ56L-8のグループ、及び、距離センサ56R-5乃至距離センサ56R-8のグループは、それぞれ対象物271からの反射光を受光する。一方、距離センサ56L-1乃至距離センサ56L-4のグループ、及び、距離センサ56R-1乃至距離センサ56R-4のグループは、それぞれ対象物271からの反射光をほとんど受光することができない。
 この場合、距離センサ56L-5乃至距離センサ56L-8のグループの距離データに基づいて、指42Lに対する対象物271の最近傍距離及び傾きが計測される。また、距離センサ56R-5乃至距離センサ56R-8のグループの距離データに基づいて、指42Rに対する対象物271の最近傍距離及び傾きが計測される。これにより、対象物271の最近傍距離及び傾きの計測結果の精度及び信頼性が向上する。そして、対象物271が各指42に対してy軸方向に偏って配置されていても、正確に位置決め制御が実行され、対象物271が確実に把持されるようになる。
  <ハンド15及び指42の位置及び姿勢の制御に関する変形例>
 上述した式(1)及び(2)では、ハンド15の位置の調整に、各指42に対する対象物の傾きを用いる例を示したが、各指42から対象物までの距離重心を用いることも可能である。
 各指42から対象物までの距離重心zは、次式(8)により計算される。
=Σ(d)/Σ ・・・(8)
 dは、i番目の距離センサ56の距離の計測値を示し、zは、i番目の距離センサ56の指座標系のz軸方向の位置を示している。
 距離重心zは、距離dの分布の偏りを表しており、距離重心zを用いることにより、距離dの分布が平均的に対称となる位置に、各指42の位置が収束する。
 例えば、図17は、指42Rに対する対象物301の距離重心zの例を示している。計測点P1乃至計測点P4は、距離センサ56R-1乃至距離センサ56R-4の計測点をそれぞれ示している。この場合、計測点P1乃至計測点P4に対する距離の分布が平均的に対称となる位置に、指42Rのz軸方向の位置が収束する。
 なお、式(8)の分母及び分子には距離dが含まれるため、距離dの比率が変化しても、距離重心zの大きさは変化しない。例えば、対象物が球体である場合と楕円体である場合とで、距離重心zの値は大きく変動しないため、同様の速度でハンド15の位置を制御することが可能になる。
 なお、指42に対する対象物の傾きmは、例えば、次式(9)により計算される。
m=Σ(d)/Σ  ・・・(9)
 例えば、図18は、指42Rに対する対象物301の傾きの例を示している。例えば、対象物301の傾きは、計測点P1乃至計測点P4に対する最小二乗直線L1の傾きにより表される。
 式(9)では、分子のみに距離dが含まれる。従って、同じ形状の対象物に対して距離dが変化した場合でも、すなわち、距離dにオフセットが加わった場合でも、傾きmの値は変動しない。そのため、対象物までの距離に関わらず、同じ速度で指42の位置を制御することが可能になる。
 また、対象物の傾きの代わりに、対象物の曲率分布を用いてもよい。例えば、曲率の小さい(曲率半径が大きい)方向にハンド15の位置を調整することにより、対象物に対するハンド15の接触面積を広くすることができる。
 なお、対象物の曲率分布の計測には、デプスカメラ等により検出される、より細かい距離分布のデータが必要になる。
 また、例えば、対象物の距離重心や曲率分布を対象物に対するハンド15の相対姿勢の調整に用いるようにしてもよい。
 さらに、例えば、制御部101は、先に対象物に対するハンド15の相対位置及び相対姿勢を調整した後、対象物に対する各指42の相対位置及び相対姿勢を調整するようにしてもよい。
 また、例えば、ハンド15の掌41Fに距離センサを設置し、対象物に対するハンド15の相対位置及び相対姿勢の制御に利用してもよい。
 例えば、対象物の形状及びハンド15の指先(リンク54)の初期姿勢によっては、ハンド15の位置調整が収束せずに、ハンド15の掌41Aが対象物に衝突する場合がある。
 例えば、図19のA及びBに示すように、三角錐の対象物281を把持する場合、ハンド15の位置調整が収束せず、掌41Fが対象物281の先端に衝突するおそれがある。
 例えば、図20のA及びBに示されるように、各指42のリンク54が内側に曲がっている場合に直方体の対象物291を把持するとき、ハンド15の位置調整が収束せず、掌41Fが対象物291の先端に衝突するおそれがある。
 これに対して、例えば、掌41Fに距離センサを設けるようにしてもよい。そして、例えば、制御終了判定部116は、掌41Fと対象物との最近傍距離が所定の閾値以下になった場合、ハンド15の位置制御を停止するようにしてもよい。そして、コントローラ117は、制御量計算部115の制御の下に、各指42のリンク54の姿勢を調整するようにしてもよい。
 また、例えば、掌41Fに2個以上の距離センサを設け、制御部101が、掌41Fの距離センサの距離データに基づいて、ハンド15のY軸回りの姿勢を調整するようにしてもよい。
 図21は、ハンド15のY軸回りの姿勢と、ハンド15と対象物311の接触面積との関係を示している。
 なお、図21乃至図23では、説明を分かりやすくするために、ハンド15のリンク52R及びリンク54Rの形状を他の例と異なる形状にしている。
 例えば、図21のA乃至Cに示されるように、対象物311に対するハンド15のY軸回りの姿勢(Y軸回りの傾き)が変化しても、リンク54Rと対象物311との接触面積はほとんど変化しない。すなわち、ハンド15のY軸回りの姿勢は、対象物311を把持した場合の安定性にあまり寄与しない。
 一方、例えば、図22に示されるように、ハンド15により対象物312を把持する場合、ハンド15のY軸回りの姿勢によっては、掌41Fが対象物312に衝突し、ハンド15の位置調整が失敗するおそれがある。
 これに対して、例えば、制御部101は、掌41Fの距離センサの距離データに基づいて、図23のAの矢印で示されるように、ハンド15のY軸回りの姿勢を調整する。
 なお、図23のA及びBの対象物312の掌41F側の面の丸印は、掌41Fの距離センサの計測点を示している。
 そして、例えば、図23のBに示されるように、掌41Fが対象物312の面に対して平行になるように、ハンド15のY軸回りの姿勢が調整されることにより、位置決め制御の実行中に掌41Fが対象物312に衝突することが防止される。
  <ハンドの構成に関する変形例>
 図2に示されるハンドの形状、並びに、距離センサの数及び位置は一例であり、変更することが可能である。
 具体的には、本技術においては、対向する位置に配置され、互いに対向する方向に動かすことにより、物体を挟むことが可能な1組の指を少なくとも備えていれば、指の数は特に限定されない。
 例えば、図2のハンド15においては、指42L及び指42Rが互いに対向する位置に配置され、互いに対向する方向(指座標系のx軸方向)に動かすことにより、物体を挟むことが可能である。
 図24は、3本の指を備えるハンド401の指の位置を模式的に示している。
 具体的には、ハンド401は、指411L、指411R、及び、指411Cの3本の指を備えている。図24は、指411L、指411R、及び、指411Cの位置を、ハンド座標系のZ軸方向から見た図を模式的に示している。
 指411L及び指411Rは、互いに対向する位置に配置されている。指411Lは、矢印AL1の方向に動かすことが可能である。指411Rは、矢印AL1により示される方向に対向する矢印AR1の方向に動かすことが可能である。そして、指411Lを矢印AL1の方向に動かし、指411Rを矢印AR1の方向に動かすことにより、対象物402を挟むことが可能である。
 一方、指411Cは、矢印AL1及び矢印AL2に直交する矢印AC1の方向に動かすことが可能である。
 以下、指42L及び指42R、並びに、指411L及び指411Rのように、上述した条件を満たし、ハンドが備える必要がある指を必須指と称する。
 必須指は、上述した条件を満たせば、関節及びリンクの数(指の自由度)は特に限定されない。
 例えば、図25は、必須指である指461L及び指461Rを備えるハンド451の構成例を模式的に示している。なお、図中、図2のハンド15と対応する部分には同じ符号を付している。
 指461L及び指461Rは、ベース部41において、図2のハンド15の指42L及び指42Rとほぼ同様の位置に接続されている。
 指461Lは、リンク471L乃至リンク473Lを備えている。リンク471L乃至リンク473Lは、図示せぬ関節を介して、指座標系のy軸回りに回転することが可能である。従って、指461Lの自由度は3となる。
 指461Rは、リンク471R乃至リンク473Rを備えている。指461Rは、指461Lと同様の構成を備え、指461Lと対称な動きをすることができる。
 指461L及び指461Rは、互いに対向する位置に配置されている。指461Lのリンク473L及び指461Rのリンク473Rは、互いに対向する方向に動かすことにより、対象物452を挟むことが可能である。
 なお、ハンド451においては、対象物に対するハンド15の相対位置及び相対姿勢を変更せずに、対象物に対する指461L及び指461Rの相対位置に加えて、相対姿勢も調整することが可能である。
 また、各必須指は、少なくとも2個の距離センサを備えていればよい。なお、各必須指の距離センサは、互いに対称な位置に配置されることが望ましい。
 図26は、ハンド15の距離センサ56の数及び位置の変形例を示している。
 この例では、指42Rのリンク54Rの接触面に距離センサ56R-1及び距離センサ56R-2が設けられている。
 距離センサ56R-1は、リンク54Rの接触面のy軸方向の一方(y軸の負の方向)の端部において、接触面のz軸方向のほぼ中央に配置されている。距離センサ56R-2は、接触面のy軸方向の他方(y軸の正の方向)の端部において、リンク54Rの接触面のz軸方向のほぼ中央に配置されている。すなわち、距離センサ56R-1と距離センサ56R-2は、接触面のy軸方向の両端に、y軸方向に並ぶように配置されている。
 図示は省略するが、指42Lのリンク54Lの接触面に距離センサ56L-1及び距離センサ56L-2が設けられている。距離センサ56L-1及び距離センサ56L-2は、距離センサ56R-1及び距離センサ56R-2と対称な位置に配置されている。従って、距離センサ56L-1と距離センサ56R-1が対向する位置に配置され、距離センサ56L-2と距離センサ56R-2が対向する位置に配置されている。
 この場合、距離センサ56R-1と距離センサ56R-2とを結ぶy軸方向に対して垂直、かつ、距離センサ56R-1及び距離センサ56R-2の計測方向であるx軸方向に対して垂直なz軸回りの指42Rに対する対象物の傾きを計測可能である。同様に、距離センサ56L-1と距離センサ56L-2とを結ぶy軸方向に対して垂直、かつ、距離センサ56L-1及び距離センサ56L-2の計測方向であるx軸方向に対して垂直なz軸回りの指42Lに対する対象物の傾きが計測可能である。従って、図26のハンド15では、ハンド座標系のZ軸回りの姿勢調整が可能になる。
 一方、図26のハンド15では、指42Rに対するy軸回りの対象物の傾き、及び、指42Lに対する対象物のy軸回りの傾きの計測ができない。従って、図26のハンド15では、ハンド座標系のX軸回りの姿勢調整はできない。
 なお、例えば、距離センサ56R-1及び距離センサ56R-2を指座標系のz軸方向に並べるように配置し、距離センサ56L-1及び距離センサ56L-2を指座標系のz軸方向に並べるように配置した場合、X軸回りのハンド15の姿勢調整が可能になり、Z軸回りのハンド15の姿勢調整が不可となる。
 一方、図2のハンド15においては、各指42において、距離センサ56がy軸方向及びz軸方向に並んでいる。従って、X軸回り及びZ軸回りのハンド15の姿勢調整が可能になる。
 なお、指42Lと指42Rとで、必ずしも距離センサ56を対称に配置する必要はない。ただし、指42Lのリンク54Lの接触面において距離センサ56を配置する方向と、指42Rのリンク54Rの接触面において距離センサ56を配置する方向とを一致させる必要がある。
 例えば、図2のハンド15においては、距離センサ56L-1乃至距離センサ56L-4と距離センサ56R-1乃至距離センサ56R-4とが、ともにz軸方向に並べられている。距離センサ56L-5乃至距離センサ56L-8と距離センサ56R-5乃至距離センサ56R-Rとが、ともにz軸方向に並べられている。距離センサ56L-1及び距離センサ56L-5と距離センサ56R-1及び距離センサ56R-5とが、ともにy軸方向に並べられている。距離センサ56L-2及び距離センサ56L-6と距離センサ56R-2及び距離センサ56R-6とが、ともにy軸方向に並べられている。距離センサ56L-3及び距離センサ56L-7と距離センサ56R-3及び距離センサ56R-7とが、ともにy軸方向に並べられている。距離センサ56L-4及び距離センサ56L-8と距離センサ56R-4及び距離センサ56R-8とが、ともにy軸方向に並べられている。
 例えば、図26のハンド15においては、距離センサ56L-1及び距離センサ56L-2と距離センサ56R-1及び距離センサ56R-2とが、ともにy軸方向に並べられている。
 また、例えば、ToF方式以外の方式の距離センサを距離センサ56に用いることが可能である。例えば、フォトリフレクタ、超音波、レーザ等の方式の距離センサを距離センサ56に用いることが可能である。
 さらに、各指42に対する対象物の距離及び傾きを計測できれば、必ずしも複数の距離センサを用いる必要はない。例えば、対象物までの距離を測定可能な距離センサ、及び、対象物の傾きを検出可能な傾き検出センサを少なくとも1つずつ用いるようにしてもよい。
 また、例えば、必ずしもハンドに掌を設ける必要はない。例えば、指42Lと指42Rが、掌41Fを介さずに直接接続するようにしてもよい。
 <<3.その他>>
  <コンピュータの構成例>
 上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
 図27は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
 コンピュータ1000において、CPU(Central Processing Unit)1001,ROM(Read Only Memory)1002,RAM(Random Access Memory)1003は、バス1004により相互に接続されている。
 バス1004には、さらに、入出力インタフェース1005が接続されている。入出力インタフェース1005には、入力部1006、出力部1007、記憶部1008、通信部1009、及びドライブ1010が接続されている。
 入力部1006は、入力スイッチ、ボタン、マイクロフォン、撮像素子などよりなる。出力部1007は、ディスプレイ、スピーカなどよりなる。記憶部1008は、ハードディスクや不揮発性のメモリなどよりなる。通信部1009は、ネットワークインタフェースなどよりなる。ドライブ1010は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア1011を駆動する。
 以上のように構成されるコンピュータ1000では、CPU1001が、例えば、記憶部1008に記録されているプログラムを、入出力インタフェース1005及びバス1004を介して、RAM1003にロードして実行することにより、上述した一連の処理が行われる。
 コンピュータ1000(CPU1001)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア1011に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
 コンピュータ1000では、プログラムは、リムーバブルメディア1011をドライブ1010に装着することにより、入出力インタフェース1005を介して、記憶部1008にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部1009で受信し、記憶部1008にインストールすることができる。その他、プログラムは、ROM1002や記憶部1008に、あらかじめインストールしておくことができる。
 なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
 また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
 さらに、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
 また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
 さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
  <構成の組み合わせ例>
 本技術は、以下のような構成をとることもできる。
(1)
 互いに対向する方向に動かすことにより物体を挟むことが可能な第1の指及び第2の指を備えるハンドと、
 前記第1の指に設けられ、前記第1の指に対する前記物体の距離及び傾きの計測に用いられる第1のセンサ群と、
 前記第2の指に設けられ、前記第2の指に対する前記物体の距離及び傾きの計測に用いられる第2のセンサ群と、
 前記物体を把持する前に、前記第1のセンサ群からの第1のセンサデータ群、及び、前記第2のセンサ群からの第2のセンサデータ群に基づいて、前記物体に対する前記ハンドの相対位置及び相対姿勢を並行して調整する制御部と
 を備える把持装置。
(2)
 前記制御部は、前記物体を把持する前に、前記第1のセンサデータ群及び前記第2のセンサデータ群に基づいて、前記物体に対する前記第1の指の相対位置及び相対姿勢のうち少なくとも1つ、並びに、前記第2の指の相対位置及び相対姿勢のうち少なくとも1つをさらに並行して調整する
 前記(1)に記載の把持装置。
(3)
 前記制御部は、前記物体を把持する前に、前記第1のセンサデータ群に基づいて、前記第1の指に対する前記物体の第1の最近傍距離及び第1の傾きを計測し、前記第2のセンサデータ群に基づいて、前記第2の指に対する前記物体の第2の最近傍距離及び第2の傾きを計測し、前記第1の最近傍距離、前記第2の最近傍距離、前記第1の傾き、及び、前記第2の傾きに基づいて、前記ハンドの相対位置、前記ハンドの相対姿勢、前記第1の指の相対位置、前記第1の指の相対姿勢、前記第2の指の相対位置、及び、前記第2の指の相対姿勢のうち少なくとも1つを調整する
 前記(2)に記載の把持装置。
(4)
 前記第1の指と前記物体との第1の間隔、及び、前記第2の指と前記物体との第2の間隔が目標間隔に近づくように、前記第1の指の相対位置及び前記第2の指の相対位置を調整する
 前記(2)又は(3)に記載の把持装置。
(5)
 前記制御部は、前記第1の間隔及び前記第2の間隔を前記目標間隔に設定した後、前記第1の指及び前記第2の指により前記物体を把持させる
 前記(4)に記載の把持装置。
(6)
 前記制御部は、前記物体に接触する前記第1の指の面である第1の接触面が前記物体とほぼ平行になり、前記物体に接触する前記第2の指の面である第2の接触面が前記物体とほぼ平行になり、前記物体を把持した場合に前記第1の接触面の中心及び前記第2の接触面の中心が前記物体に接触するように、前記ハンドの相対位置及び相対姿勢を調整する
 前記(1)乃至(5)のいずれかに記載の把持装置。
(7)
 前記制御部は、前記第1のセンサデータ群に基づいて、前記第1の指に対する前記物体の第1の傾き、第1の最近傍距離、第1の距離重心、及び、第1の曲率分布のうち少なくとも1つを計測し、前記第2のセンサデータ群に基づいて、前記第2の指に対する前記物体の第2の傾き、第2の最近傍距離、第2の距離重心、及び、第2の曲率分布のうち少なくとも1つを計測し、前記第1の傾き、前記第1の最近傍距離、前記第1の距離重心、及び、前記第1の曲率分布のうち少なくとも1つ、並びに、前記第2の傾き、前記第2の最近傍距離、前記第2の距離重心、及び、前記第2の曲率分布のうち少なくとも1つに基づいて、前記ハンドの相対位置及び相対姿勢を調整する
 前記(6)に記載の把持装置。
(8)
 前記ハンドは、
  前記第1の指及び前記第2の指が接続されている掌を
 備え、
 前記掌に設けられ、前記掌に対する前記物体の距離及び傾きの計測に用いられる第3のセンサ群を
 さらに備え、
 前記制御部は、前記第3のセンサ群からの第3のセンサデータ群に基づいて、前記物体に対する前記掌の相対位置及び相対姿勢をさらに調整する
 前記(1)乃至(7)のいずれかに記載の把持装置。
(9)
 前記第3のセンサ群は、複数の距離センサを含む
 前記(8)に記載の把持装置。
(10)
 前記制御部は、前記ハンドの相対位置及び相対姿勢を調整した後、前記第1のセンサデータ群及び前記第2のセンサデータ群に基づいて、前記物体に対する前記第1の指の相対位置及び相対姿勢、並びに、前記第2の指の相対位置及び相対姿勢を調整する
 前記(1)に記載の把持装置。
(11)
 前記第1のセンサ群及び前記第2のセンサ群は、それぞれ複数の距離センサを含む
 前記(1)乃至(10)のいずれかに記載の把持装置。
(12)
 前記第1のセンサ群に含まれる各前記距離センサと、前記第2のセンサ群に含まれる各前記距離センサとは、互いに対称な位置に配置される
 前記(11)に記載の把持装置。
(13)
 前記第1のセンサ群に含まれる前記距離センサは、前記物体と接触する前記第1の指の面である第1の接触面に配置され、
 前記第2のセンサ群に含まれる前記距離センサは、前記物体と接触する前記第2の指の面である第2の接触面に配置される
 前記(12)に記載の把持装置。
(14)
 前記第1の接触面と前記第2の接触面とは対向し、
 前記制御部は、前記第1の接触面と前記第2の接触面とが平行な状態を維持したまま接近したり離れたりするように前記第1の指及び前記第2の指の動きを制御する
 前記(13)に記載の把持装置。
(15)
 前記制御部は、前記第1のセンサ群に含まれる各前記距離センサにより計測される前記物体までの距離に基づいて、前記第1のセンサ群に含まれる各前記距離センサの駆動タイミングを制御し、前記第2のセンサ群に含まれる各前記距離センサにより計測される前記物体までの距離に基づいて、前記第2のセンサ群に含まれる各前記距離センサの駆動タイミングを制御する
 前記(11)乃至(14)のいずれかに記載の把持装置。
(16)
 前記制御部は、各前記距離センサにより計測される前記物体までの距離に基づいて、各前記距離センサ間の干渉の有無を判定し、干渉しないと判定された前記距離センサを同時に駆動し、干渉すると判定された前記距離センサを異なるタイミングで駆動する
 前記(15)に記載の把持装置。
(17)
 前記制御部は、前記第1のセンサ群に含まれる前記距離センサを分割した複数のグループのうち、最も有効データが多いグループ、又は、前記物体からの距離が最も近いグループに含まれる前記距離センサの距離データ、並びに、前記第2のセンサ群に含まれる前記距離センサを分割した複数のグループのうち、最も有効データが多いグループ、又は、前記物体からの距離が最も近いグループに含まれる前記距離センサの距離データに基づいて、前記ハンドの前記物体に対する相対位置及び相対姿勢を調整する
 前記(11)乃至(16)のいずれかに記載の把持装置。
(18)
 前記有効データは、前記第1の指と前記第2の指との間の距離より短い距離データである
 前記(17)に記載の把持装置。
(19)
 前記第1のセンサ群及び前記第2のセンサ群は、それぞれ距離センサ及び傾き検出センサを含む
 前記(1)乃至(10)のいずれかに記載の把持装置。
(20)
 互いに対向する方向に動かすことにより物体を挟むことが可能な第1の指及び第2の指を備えるハンドと、
 前記第1の指に設けられ、前記第1の指に対する前記物体の距離及び傾きの計測に用いられる第1のセンサ群と、
 前記第2の指に設けられ、前記第2の指に対する前記物体の距離及び傾きの計測に用いられる第2のセンサ群と
 を備える把持装置が、
 前記物体を把持する前に、前記第1のセンサ群からの第1のセンサデータ群、及び、前記第2のセンサ群からの第2のセンサデータ群に基づいて、前記物体に対する前記ハンドの相対位置及び相対姿勢を並行して調整する
 把持方法。
 なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
 1 ロボット, 14L,14R アーム, 15L,15R ハンド, 18 RGB-Dカメラ, 31L,31R 関節, 32L,32R リンク, 33L,33R 関節, 34L,34R リンク, 41L,41R ベース部, 41F 掌, 42LL,42LR,42RL,42RR 指, 51L,51R 関節, 52L,52R リンク, 53L,53R 関節, 54L,54R リンク, 55L,55R 接触部, 56L-1乃至56L-8,56R-1乃至56R-8 距離センサ, 111 物体計測部, 112 傾き計測部, 113 最近傍距離計測部, 114制御量計算部, 115 制御量計測部, 116 制御終了判定部, 117 コントローラ, 118 センサ制御部, 401 ハンド, 411L乃至411C 指, 451 ハンド, 461L,461R 指, 471L乃至473L,471R乃至473R リンク

Claims (20)

  1.  互いに対向する方向に動かすことにより物体を挟むことが可能な第1の指及び第2の指を備えるハンドと、
     前記第1の指に設けられ、前記第1の指に対する前記物体の距離及び傾きの計測に用いられる第1のセンサ群と、
     前記第2の指に設けられ、前記第2の指に対する前記物体の距離及び傾きの計測に用いられる第2のセンサ群と、
     前記物体を把持する前に、前記第1のセンサ群からの第1のセンサデータ群、及び、前記第2のセンサ群からの第2のセンサデータ群に基づいて、前記物体に対する前記ハンドの相対位置及び相対姿勢を並行して調整する制御部と
     を備える把持装置。
  2.  前記制御部は、前記物体を把持する前に、前記第1のセンサデータ群及び前記第2のセンサデータ群に基づいて、前記物体に対する前記第1の指の相対位置及び相対姿勢のうち少なくとも1つ、並びに、前記第2の指の相対位置及び相対姿勢のうち少なくとも1つをさらに並行して調整する
     請求項1に記載の把持装置。
  3.  前記制御部は、前記物体を把持する前に、前記第1のセンサデータ群に基づいて、前記第1の指に対する前記物体の第1の最近傍距離及び第1の傾きを計測し、前記第2のセンサデータ群に基づいて、前記第2の指に対する前記物体の第2の最近傍距離及び第2の傾きを計測し、前記第1の最近傍距離、前記第2の最近傍距離、前記第1の傾き、及び、前記第2の傾きに基づいて、前記ハンドの相対位置、前記ハンドの相対姿勢、前記第1の指の相対位置、前記第1の指の相対姿勢、前記第2の指の相対位置、及び、前記第2の指の相対姿勢のうち少なくとも1つを調整する
     請求項2に記載の把持装置。
  4.  前記第1の指と前記物体との第1の間隔、及び、前記第2の指と前記物体との第2の間隔が目標間隔に近づくように、前記第1の指の相対位置及び前記第2の指の相対位置を調整する
     請求項2に記載の把持装置。
  5.  前記制御部は、前記第1の間隔及び前記第2の間隔を前記目標間隔に設定した後、前記第1の指及び前記第2の指により前記物体を把持させる
     請求項4に記載の把持装置。
  6.  前記制御部は、前記物体に接触する前記第1の指の面である第1の接触面が前記物体とほぼ平行になり、前記物体に接触する前記第2の指の面である第2の接触面が前記物体とほぼ平行になり、前記物体を把持した場合に前記第1の接触面の中心及び前記第2の接触面の中心が前記物体に接触するように、前記ハンドの相対位置及び相対姿勢を調整する
     請求項1に記載の把持装置。
  7.  前記制御部は、前記第1のセンサデータ群に基づいて、前記第1の指に対する前記物体の第1の傾き、第1の最近傍距離、第1の距離重心、及び、第1の曲率分布のうち少なくとも1つを計測し、前記第2のセンサデータ群に基づいて、前記第2の指に対する前記物体の第2の傾き、第2の最近傍距離、第2の距離重心、及び、第2の曲率分布のうち少なくとも1つを計測し、前記第1の傾き、前記第1の最近傍距離、前記第1の距離重心、及び、前記第1の曲率分布のうち少なくとも1つ、並びに、前記第2の傾き、前記第2の最近傍距離、前記第2の距離重心、及び、前記第2の曲率分布のうち少なくとも1つに基づいて、前記ハンドの相対位置及び相対姿勢を調整する
     請求項6に記載の把持装置。
  8.  前記ハンドは、
      前記第1の指及び前記第2の指が接続されている掌を
     備え、
     前記掌に設けられ、前記掌に対する前記物体の距離及び傾きの計測に用いられる第3のセンサ群を
     さらに備え、
     前記制御部は、前記第3のセンサ群からの第3のセンサデータ群に基づいて、前記物体に対する前記掌の相対位置及び相対姿勢をさらに調整する
     請求項1に記載の把持装置。
  9.  前記第3のセンサ群は、複数の距離センサを含む
     請求項8に記載の把持装置。
  10.  前記制御部は、前記ハンドの相対位置及び相対姿勢を調整した後、前記第1のセンサデータ群及び前記第2のセンサデータ群に基づいて、前記物体に対する前記第1の指の相対位置及び相対姿勢、並びに、前記第2の指の相対位置及び相対姿勢を調整する
     請求項1に記載の把持装置。
  11.  前記第1のセンサ群及び前記第2のセンサ群は、それぞれ複数の距離センサを含む
     請求項1に記載の把持装置。
  12.  前記第1のセンサ群に含まれる各前記距離センサと、前記第2のセンサ群に含まれる各前記距離センサとは、互いに対称な位置に配置される
     請求項11に記載の把持装置。
  13.  前記第1のセンサ群に含まれる前記距離センサは、前記物体と接触する前記第1の指の面である第1の接触面に配置され、
     前記第2のセンサ群に含まれる前記距離センサは、前記物体と接触する前記第2の指の面である第2の接触面に配置される
     請求項12に記載の把持装置。
  14.  前記第1の接触面と前記第2の接触面とは対向し、
     前記制御部は、前記第1の接触面と前記第2の接触面とが平行な状態を維持したまま接近したり離れたりするように前記第1の指及び前記第2の指の動きを制御する
     請求項13に記載の把持装置。
  15.  前記制御部は、前記第1のセンサ群に含まれる各前記距離センサにより計測される前記物体までの距離に基づいて、前記第1のセンサ群に含まれる各前記距離センサの駆動タイミングを制御し、前記第2のセンサ群に含まれる各前記距離センサにより計測される前記物体までの距離に基づいて、前記第2のセンサ群に含まれる各前記距離センサの駆動タイミングを制御する
     請求項11に記載の把持装置。
  16.  前記制御部は、各前記距離センサにより計測される前記物体までの距離に基づいて、各前記距離センサ間の干渉の有無を判定し、干渉しないと判定された前記距離センサを同時に駆動し、干渉すると判定された前記距離センサを異なるタイミングで駆動する
     請求項15に記載の把持装置。
  17.  前記制御部は、前記第1のセンサ群に含まれる前記距離センサを分割した複数のグループのうち、最も有効データが多いグループ、又は、前記物体からの距離が最も近いグループに含まれる前記距離センサの距離データ、並びに、前記第2のセンサ群に含まれる前記距離センサを分割した複数のグループのうち、最も有効データが多いグループ、又は、前記物体からの距離が最も近いグループに含まれる前記距離センサの距離データに基づいて、前記ハンドの前記物体に対する相対位置及び相対姿勢を調整する
     請求項11に記載の把持装置。
  18.  前記有効データは、前記第1の指と前記第2の指との間の距離より短い距離データである
     請求項17に記載の把持装置。
  19.  前記第1のセンサ群及び前記第2のセンサ群は、それぞれ距離センサ及び傾き検出センサを含む
     請求項1に記載の把持装置。
  20.  互いに対向する方向に動かすことにより物体を挟むことが可能な第1の指及び第2の指を備えるハンドと、
     前記第1の指に設けられ、前記第1の指に対する前記物体の距離及び傾きの計測に用いられる第1のセンサ群と、
     前記第2の指に設けられ、前記第2の指に対する前記物体の距離及び傾きの計測に用いられる第2のセンサ群と
     を備える把持装置が、
     前記物体を把持する前に、前記第1のセンサ群からの第1のセンサデータ群、及び、前記第2のセンサ群からの第2のセンサデータ群に基づいて、前記物体に対する前記ハンドの相対位置及び相対姿勢を並行して調整する
     把持方法。
PCT/JP2022/042664 2021-12-01 2022-11-17 把持装置及び把持方法 WO2023100667A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021195417 2021-12-01
JP2021-195417 2021-12-01

Publications (1)

Publication Number Publication Date
WO2023100667A1 true WO2023100667A1 (ja) 2023-06-08

Family

ID=86612080

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/042664 WO2023100667A1 (ja) 2021-12-01 2022-11-17 把持装置及び把持方法

Country Status (1)

Country Link
WO (1) WO2023100667A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04171191A (ja) * 1990-10-31 1992-06-18 Sanyo Electric Co Ltd ロボットハンド及びその制御方法
JPH0947986A (ja) * 1995-08-09 1997-02-18 Toshiba Corp ロボットハンド及び位置姿勢補正ロボット並びに自動教示ロボット
JP2009274204A (ja) * 2008-05-13 2009-11-26 Samsung Electronics Co Ltd ロボット、ロボットハンド及びロボットハンドの制御方法
JP2019002794A (ja) * 2017-06-15 2019-01-10 日本精工株式会社 近接覚センサの制御方法
JP2022120550A (ja) * 2021-02-05 2022-08-18 キヤノン株式会社 ロボットシステム、ロボットシステムの制御方法、ロボットシステムを用いた物品の製造方法、制御プログラムおよび記録媒体

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04171191A (ja) * 1990-10-31 1992-06-18 Sanyo Electric Co Ltd ロボットハンド及びその制御方法
JPH0947986A (ja) * 1995-08-09 1997-02-18 Toshiba Corp ロボットハンド及び位置姿勢補正ロボット並びに自動教示ロボット
JP2009274204A (ja) * 2008-05-13 2009-11-26 Samsung Electronics Co Ltd ロボット、ロボットハンド及びロボットハンドの制御方法
JP2019002794A (ja) * 2017-06-15 2019-01-10 日本精工株式会社 近接覚センサの制御方法
JP2022120550A (ja) * 2021-02-05 2022-08-18 キヤノン株式会社 ロボットシステム、ロボットシステムの制御方法、ロボットシステムを用いた物品の製造方法、制御プログラムおよび記録媒体

Similar Documents

Publication Publication Date Title
WO2021232669A1 (zh) 机器人运动规划方法、路径规划方法、抓取方法及其装置
JP6640792B2 (ja) ハンド制御装置、ハンド制御方法、およびハンドのシミュレーション装置
Bäuml et al. Catching flying balls with a mobile humanoid: System overview and design considerations
US9193072B2 (en) Robot and control method thereof
Platt et al. Nullspace composition of control laws for grasping
CN111615443B (zh) 信息处理装置、信息处理方法和信息处理系统
Maldonado et al. Robotic grasping of unmodeled objects using time-of-flight range data and finger torque information
US20190212807A1 (en) Tracking Torso Leaning to Generate Inputs for Computer Systems
US20240009857A1 (en) Information processing device, information processing method, and program
US20210394362A1 (en) Information processing device, control method, and program
JP4211701B2 (ja) ロボットハンドの把持制御装置
US20200189101A1 (en) Trajectory generation system and trajectory generating method
US11123872B2 (en) Control apparatus that controls arm for gripping object
Farrugia et al. Swarm robotics for object transportation
You et al. Model-free grasp planning for configurable vacuum grippers
Sato et al. High-speed catching by multi-vision robot hand
WO2023100667A1 (ja) 把持装置及び把持方法
Yu et al. Estimation of mass and center of mass of graspless and shape-unknown object
JP4956964B2 (ja) ロボットハンドの把持制御装置
CN107811698A (zh) 骨骼复位方法及装置、计算机可读存储介质
CN112236272B (zh) 把持姿态评价装置和把持姿态评价程序
JP2002036159A (ja) ロボットハンドの制御方法
WO2023100666A1 (ja) 移動体及び位置決め制御方法
JP2007007797A (ja) 歩行ロボット
Caccavale et al. Kinematic control with force feedback for a redundant bimanual manipulation system

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: 22901100

Country of ref document: EP

Kind code of ref document: A1