WO2023238199A1 - 3次元位置情報を取得するロボット装置の制御装置およびロボット装置 - Google Patents

3次元位置情報を取得するロボット装置の制御装置およびロボット装置 Download PDF

Info

Publication number
WO2023238199A1
WO2023238199A1 PCT/JP2022/022821 JP2022022821W WO2023238199A1 WO 2023238199 A1 WO2023238199 A1 WO 2023238199A1 JP 2022022821 W JP2022022821 W JP 2022022821W WO 2023238199 A1 WO2023238199 A1 WO 2023238199A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
dimensional
position information
unit
control
Prior art date
Application number
PCT/JP2022/022821
Other languages
English (en)
French (fr)
Inventor
順一郎 吉田
Original Assignee
ファナック株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ファナック株式会社 filed Critical ファナック株式会社
Priority to PCT/JP2022/022821 priority Critical patent/WO2023238199A1/ja
Priority to TW112116998A priority patent/TW202348379A/zh
Publication of WO2023238199A1 publication Critical patent/WO2023238199A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/04Viewing devices
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • G01B11/245Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures using a plurality of fixed, simultaneously operating transducers
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • G01B11/25Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object

Definitions

  • the present invention relates to a control device for a robot device and a robot device that acquire three-dimensional position information.
  • a visual sensor that images an object and detects three-dimensional position information on the surface of the object (for example, Japanese Patent Application Laid-Open No. 63-251192).
  • a two-dimensional camera can be used as a visual sensor that detects such a three-dimensional position.
  • stereo cameras that detect three-dimensional position information of an object using parallax between two two-dimensional cameras, visual sensors that detect the three-dimensional position of an object using a phase shift method, and the like are known.
  • the visual sensor can be attached, for example, to the tip of the arm of the robot (for example, Japanese Patent Application Publication No. 2020-38074).
  • a visual sensor When a visual sensor is attached to a robot, it is possible to capture images with the visual sensor while driving the robot. By capturing images while driving the robot, it is possible to quickly capture images of the target object from various directions. For example, when simulating a robot device, there are cases where it is desired to obtain in advance three-dimensional position information of peripheral objects such as devices, stands, or shelves around the robot. When acquiring three-dimensional position information of surrounding objects, images can be captured while driving the robot.
  • a control device for a robot device includes a three-dimensional visual sensor including a two-dimensional camera that images a target object, and a robot.
  • the control device includes a motion detection section that detects the motion state of the robot, and an imaging control section that changes the exposure conditions of the two-dimensional camera.
  • the control device includes a position information generation unit that generates three-dimensional position information of the object based on a two-dimensional image captured by a two-dimensional camera.
  • the control device includes a compositing unit that performs control for compositing a plurality of two-dimensional images or control for compositing a plurality of three-dimensional position information.
  • the imaging control section captures two-dimensional images at predetermined intervals under predetermined exposure conditions.
  • the imaging control section changes the exposure conditions and captures a plurality of two-dimensional images
  • the composition section captures the plurality of two-dimensional images or the plurality of three-dimensional position information. Synthesize.
  • FIG. 2 is a block diagram of a first robot device including a first control device.
  • FIG. 2 is a schematic diagram of a visual sensor in an embodiment.
  • FIG. 3 is a perspective view of the pedestal and the visual sensor when capturing an image while changing the position and orientation of the visual sensor. It is a perspective view explaining the three-dimensional point obtained based on the output of a visual sensor.
  • It is a flowchart of the 1st control which acquires three-dimensional positional information of a target object in an embodiment.
  • FIG. 3 is a block diagram of a processing unit of a second control device of the first robot device in the embodiment.
  • It is a flowchart of the 2nd control which acquires three-dimensional positional information of a target object in an embodiment. It is a side view of the 2nd robot device in an embodiment.
  • the robot device of this embodiment includes a robot and a three-dimensional visual sensor that acquires three-dimensional positional information regarding the surface of an object.
  • FIG. 1 is a perspective view of the first robot device in this embodiment.
  • FIG. 2 is a block diagram of the first robot device in this embodiment.
  • the first robot device 3 includes a hand 5 as a work tool for gripping a workpiece, and a robot 1 that moves the hand 5.
  • the robot device 3 includes a first control device 2 that controls the robot 1 and the hand 5.
  • the robot device 3 includes a visual sensor 30 that is a three-dimensional visual sensor that acquires information regarding the surface of a target object.
  • the robot 1 of this embodiment is an articulated robot including a plurality of joints 18.
  • Robot 1 includes an upper arm 11 and a lower arm 12.
  • the lower arm 12 is supported by a pivot base 13.
  • the swing base 13 is supported by a base 14.
  • the robot 1 includes a wrist 15 connected to the end of the upper arm 11.
  • Wrist 15 includes a flange 16 to which hand 5 is fixed.
  • the robot 1 of this embodiment has six drive axes, the invention is not limited to this configuration.
  • the robot can be any robot capable of moving work tools.
  • the visual sensor 30 is attached to the robot 1.
  • Visual sensor 30 is fixed to flange 16 via support member 68.
  • the visual sensor 30 of this embodiment is supported by the robot 1 so that its position and posture change together with the hand 5.
  • the robot 1 of this embodiment includes a robot drive device 21 that drives constituent members such as the upper arm 11.
  • Robot drive device 21 includes a plurality of drive motors for driving upper arm 11 , lower arm 12 , pivot base 13 , and wrist 15 .
  • Hand 5 includes a hand drive device 22 that drives hand 5 .
  • the hand drive device 22 of this embodiment drives the hand 5 using air pressure.
  • the hand driving device 22 includes a pump, a solenoid valve, and the like for driving the fingers of the hand 5.
  • the control device 2 includes an arithmetic processing device 24 (computer) including a CPU (Central Processing Unit) as a processor.
  • the arithmetic processing unit 24 includes a RAM (Random Access Memory), a ROM (Read Only Memory), etc. that are connected to the CPU via a bus.
  • the robot device 3 the robot 1 and the hand 5 are driven based on an operation program 41.
  • the robot device 3 of this embodiment has a function of automatically transporting a workpiece.
  • the arithmetic processing unit 24 of the control device 2 includes a storage unit 42 that stores information regarding control of the robot device 3.
  • the storage unit 42 can be configured with a non-temporary storage medium capable of storing information.
  • the storage unit 42 can be configured with a storage medium such as a volatile memory, a nonvolatile memory, a magnetic storage medium, or an optical storage medium.
  • An operation program 41 created in advance for operating the robot 1 is input to the control device 2 .
  • the operation program 41 is stored in the storage section 42.
  • the arithmetic processing unit 24 includes a motion control section 43 that controls the motion of the robot.
  • the motion control section 43 sends motion commands for driving the robot 1 to the robot drive section 44 based on the motion program 41 .
  • Robot drive unit 44 includes an electric circuit that drives a drive motor.
  • the robot drive unit 44 supplies electricity to the robot drive device 21 based on the operation command.
  • the operation control section 43 sends an operation command for driving the hand drive device 22 to the hand drive section 45 .
  • the hand drive unit 45 includes an electric circuit that drives a pump and the like.
  • the hand drive section 45 supplies electricity to the hand drive device 22 based on the operation command.
  • the operation control unit 43 corresponds to a processor that operates according to the operation program 41.
  • the processor reads the operation program 41 and executes the control defined in the operation program 41, thereby functioning as the operation control section 43.
  • the robot 1 includes a state detector for detecting the position and orientation of the robot 1.
  • the state detector in this embodiment includes a position detector 23 attached to the drive motor of each drive shaft of the robot drive device 21.
  • the position detector 23 is composed of, for example, an encoder. The position and orientation of the robot 1 are detected by the output of the position detector 23.
  • the control device 2 includes a teaching operation panel 49 as an operation panel through which a worker manually operates the robot device 3.
  • the teaching pendant 49 includes an input section 49a for inputting information regarding the robot 1, the hand 5, and the visual sensor 30.
  • the input section 49a includes operating members such as a keyboard, dial, and buttons.
  • the teaching pendant 49 includes a display section 49b that displays information regarding control of the robot device 3.
  • the display section 49b is configured with a display panel such as a liquid crystal display panel or an organic EL (Electro Luminescence) panel.
  • a robot coordinate system 71 is set that remains immovable when the position and posture of the robot 1 changes.
  • the origin of the robot coordinate system 71 is located at the base 14 of the robot 1.
  • the robot coordinate system 71 is also called a world coordinate system or a reference coordinate system.
  • the position of the origin is fixed and the direction of the coordinate axes is fixed. Even if the position and orientation of the robot 1 change, the position and orientation of the robot coordinate system 71 do not change.
  • a flange coordinate system 72 is set on the surface of the flange 16 to which the hand 5 is fixed.
  • the origin of the flange coordinate system 72 is located at the rotation center of the flange 16.
  • the rotation axis of the flange 16 is set to the Z axis of the flange coordinate system 72.
  • the flange coordinate system 72 is also referred to as a hand coordinate system.
  • the position of the robot 1 in this embodiment corresponds to the position of the origin of the flange coordinate system 72 in the robot coordinate system 71.
  • the posture of the robot 1 corresponds to the posture of the flange coordinate system 72 with respect to the robot coordinate system 71.
  • FIG. 3 shows a schematic diagram of the visual sensor in this embodiment.
  • visual sensor 30 of the present embodiment is a three-dimensional visual sensor (three-dimensional camera) that can acquire three-dimensional positional information on the surface of an object.
  • the visual sensor 30 of this embodiment is a stereo camera including a first camera 31 and a second camera 32.
  • Each of the cameras 31 and 32 is a two-dimensional camera that can capture two-dimensional images.
  • the two cameras 31 and 32 are placed apart from each other.
  • the relative positions of the two cameras 31 and 32 are predetermined.
  • the visual sensor 30 of this embodiment includes a projector 33 that projects pattern light such as a striped pattern toward a workpiece. Cameras 31 and 32 and projector 33 are arranged inside casing 34.
  • a sensor coordinate system 73 is set for the visual sensor 30.
  • the sensor coordinate system 73 is a coordinate system in which the origin is fixed at an arbitrary position on the visual sensor 30.
  • the position and orientation of the sensor coordinate system 73 change together with the visual sensor 30.
  • the sensor coordinate system 73 of this embodiment is set so that the Z axis is parallel to the optical axis of the camera included in the visual sensor 30.
  • the sensor coordinate system 73 moves and rotates together with the flange coordinate system 72. Further, the position of the origin of the sensor coordinate system 73 in the flange coordinate system 72 and the attitude of the sensor coordinate system 73 with respect to the flange coordinate system 72 are determined in advance.
  • a jog operation can be performed in which the position of the robot moves or rotates in the direction of the coordinate axes of the coordinate system corresponding to the button. In jog operation, the robot moves while the button is pressed.
  • the operation control section 43 may have the function of the manual control section 52.
  • the processing unit 51 includes a position information generation unit 54 that generates three-dimensional position information of the object based on the two-dimensional image acquired from the visual sensor 30.
  • the position information generation unit 54 has a function of converting the position information on the surface of the object obtained in the sensor coordinate system 73 to the position information on the surface of the object expressed in the robot coordinate system 71.
  • the position information generation unit 54 converts the position (coordinate values) of the three-dimensional point in the sensor coordinate system 73 into the position (coordinate value) of the three-dimensional point in the robot coordinate system 71 based on the position and orientation of the robot 1. It has the function of converting.
  • the processing unit 51 includes an imaging control unit 59 that controls imaging by the visual sensor 30.
  • the imaging control unit 59 controls the timing of imaging by the visual sensor 30.
  • the imaging control unit 59 changes the exposure conditions of the two-dimensional camera included in the visual sensor 30.
  • the exposure conditions in this embodiment include the exposure time (shutter speed) of the two-dimensional camera.
  • the processing unit 51 includes an information processing unit 55 that processes the three-dimensional position information generated by the position information generation unit 54. Alternatively, the information processing unit 55 processes a two-dimensional image obtained by the two-dimensional camera of the visual sensor 30.
  • the information processing section 55 includes a synthesis section 57 that synthesizes two-dimensional images or three-dimensional position information.
  • the information processing unit 55 includes a determination unit 58 that determines whether there is a defect in the two-dimensional image or three-dimensional position information.
  • the determining unit 58 determines whether the two-dimensional image has a defect such as blown-out highlights or blown-out shadows. For example, when all the pixels within an area of a predetermined size have pixel values of blown-out highlights or blown-out shadows, the determination unit 58 determines that the area is defective.
  • the processing unit 51 described above corresponds to a processor that is driven according to the operating program 41.
  • the manual control unit 52, motion detection unit 53, position information generation unit 54, information processing unit 55, composition unit 57, determination unit 58, and imaging control unit 59 included in the processing unit 51 are controlled by a processor that is driven according to the operation program 41. Equivalent to.
  • the processors read the operating program 41 and execute the control defined in the operating program 41, thereby functioning as respective units.
  • the control device of the robot device can store three-dimensional position information of peripheral objects placed around the robot device.
  • the control device can determine whether the robot device comes into contact with a surrounding object. For example, when a worker operates a teaching operation panel to manually drive a robot, the control device can determine whether or not the robot device comes into contact with a surrounding object.
  • the control device performs control to prevent the robot from driving when it is determined that the robot device comes into contact with a surrounding object.
  • control can be performed to slow down or stop the robot when the robot device approaches a surrounding object.
  • the control device can display a warning to stop the robot on the display section of the display operation panel.
  • FIG. 4 shows a perspective view of the visual sensor and the pedestal when acquiring three-dimensional position information on the surface of the pedestal.
  • the operator manually drives the robot 1.
  • the operator operates the input section 49a of the teaching operation panel 49.
  • the manual control unit 52 changes the position and posture of the robot according to the operation of the input unit 49a.
  • the worker places the visual sensor 30 at position P30a by jogging.
  • the position and orientation of the visual sensor 30 are changed to a position P30b and a position P30c.
  • the imaging control unit 59 captures images using the cameras 31 and 32 at predetermined intervals while the visual sensor 30 is moving. In the imaging area 79 of the visual sensor 30, three-dimensional points can be generated on the surface facing the visual sensor 30.
  • the operator changes the position and posture of the robot 1 so that the cameras 31 and 32 capture images of all surfaces for which three-dimensional position information is required.
  • images are captured at various positions and postures so that all surfaces of the pedestal 65 are captured.
  • the positional information generation unit 54 can show three-dimensional positional information on the surface of the object in a perspective view of a group of three-dimensional points as shown in FIG. Further, the position information generation unit 54 can generate three-dimensional position information on the surface of the object in the form of a distance image or a three-dimensional map.
  • a distance image is a two-dimensional image that expresses positional information on the surface of an object. In the distance image, the distance from the visual sensor 30 to a three-dimensional point is represented by the density or color of each pixel.
  • a three-dimensional map expresses positional information on the surface of an object by a set of coordinate values (x, y, z) of three-dimensional points on the surface of the object. The coordinate values at this time can be expressed in any coordinate system such as the sensor coordinate system 73 or the robot coordinate system 71.
  • a distance image will be mainly used as an example of three-dimensional position information on the surface of a target object.
  • the position information generation unit 54 of this embodiment generates a distance image in which the color density is changed depending on the distance from the visual sensor 30 to the three-dimensional point 70.
  • the position information generation unit 54 in this embodiment is arranged in the processing unit 51 of the arithmetic processing unit 24, it is not limited to this form.
  • the position information generation section may be placed inside the visual sensor. That is, the visual sensor may include an arithmetic processing unit including a processor such as a CPU, and the processor of the arithmetic processing unit of the visual sensor may function as the position information generation unit. In this case, the visual sensor outputs a three-dimensional map, a distance image, or the like.
  • the processing unit 51 of the present embodiment is configured to perform automatic imaging control to take and stop imaging of the visual sensor 30 depending on the driving state of the robot 1.
  • the automatic imaging control of this embodiment includes normal imaging control and composition control.
  • the motion detection unit 53 detects whether or not the robot 1 is moving. Normal imaging control is performed while the motion detection unit 53 is detecting the motion of the robot 1. In normal imaging control, the imaging control unit 59 uses the cameras 31 and 32 to capture two-dimensional images at predetermined intervals. The image capture control unit 59 captures an image while changing the position and orientation of the visual sensor 30. Further, the imaging control unit 59 captures a two-dimensional image under the same predetermined exposure conditions.
  • the imaging control unit 59 can capture images at predetermined time intervals.
  • the imaging control unit 59 captures images using the cameras 31 and 32 at time intervals within a range of 300 msec to 500 msec.
  • the predetermined interval is not limited to an interval of time, but may be an interval of moving distance of a predetermined portion.
  • the moving distance of the origin position of the robot's flange coordinate system may be used.
  • the rotation angle interval of a predetermined portion may be used.
  • the predetermined intervals may not be constant intervals.
  • the position information generation unit 54 generates three-dimensional position information at predetermined intervals.
  • the information processing unit 55 of this embodiment performs synthesis control to compensate for defects in the two-dimensional image or three-dimensional position information.
  • the motion detection unit 53 detects whether or not the robot 1 is moving. When the motion detection unit 53 detects that the robot 1 has stopped, the synthesis control is performed. In the composition control, the imaging control unit 59 automatically changes the exposure conditions and captures a plurality of two-dimensional images. The imaging control unit 59 captures a plurality of two-dimensional images while changing the exposure time by a factor of 10 from 0.1 msec to 100 msec, for example. Alternatively, the imaging control unit 59 may change the amount of light from the lighting device. For example, the imaging control unit 59 uses the cameras 31 and 32 to capture a plurality of images while increasing the light amount by 10% from the light amount of 0% (lights off) to the light amount of 100% (all lights on). This imaging is performed by both the first camera 31 and the second camera 32.
  • the position information generation unit 54 generates a plurality of three-dimensional position information from the two-dimensional images under a plurality of exposure conditions. Then, the synthesizing unit 57 synthesizes the plurality of three-dimensional position information to generate one piece of three-dimensional position information. Alternatively, the synthesizing unit 57 synthesizes two-dimensional images under a plurality of exposure conditions for each image of the cameras 31 and 32. The position information generation unit 54 may generate three-dimensional position information based on two two-dimensional images synthesized for each of the cameras 31 and 32.
  • the combining unit 57 selects one distance image with medium exposure conditions.
  • the combining unit 57 identifies pixels for which distance information does not exist.
  • the combining unit 57 can then acquire distance information of a distance image acquired under other exposure conditions for pixels for which distance information does not exist.
  • the combining unit 57 deletes pixels for which distance information is missing in the plurality of distance images.
  • the combining unit 57 may calculate the average value of distance information of a plurality of distance images for all pixels for which distance information exists.
  • the combining unit can combine a plurality of pieces of three-dimensional position information to generate combined position information that is three-dimensional position information after combining.
  • FIG. 6 shows a flowchart of the first control in this embodiment.
  • the worker manually drives the robot 1 through a jog operation to perform normal imaging control.
  • the display section 49b of the teaching pendant 49 displays a distance image. Then, the operator determines whether or not there is a defect in the distance image. If the distance image has a defect and the operator manually stops the robot 1, composition control is performed.
  • step 81 the operator operates the teaching operation panel 49 to drive the robot 1 to a position and posture at which imaging is to be started.
  • the manual control unit 52 drives the robot 1 so that the visual sensor 30 is placed at a position P30a in response to an operator's operation.
  • the visual sensor 30 is arranged at a position P30a directly above the pedestal 65 as a target object.
  • step 82 automatic imaging control is started.
  • the operator transmits a command to start automatic imaging control to the imaging control section 59 and the motion detection section 53 by operating the input section 49a.
  • step 83 the operator manually drives the robot 1. For example, as shown by arrow 96a, the position and orientation of visual sensor 30 are changed from position P31a to position P30b.
  • the motion detection unit 53 detects the movement of the robot 1.
  • the imaging control unit 59 performs normal imaging control to capture two-dimensional images at predetermined intervals and under predetermined exposure conditions.
  • the position information generation unit 54 generates three-dimensional position information based on two-dimensional images captured by the cameras 31 and 32. Here, the position information generation unit 54 generates a distance image.
  • the display section 49b of the teaching pendant 49 displays a distance image every time a distance image is generated.
  • the operator views the distance image displayed on the display unit 49b while driving the robot 1.
  • the operator determines whether there is a defect in the distance information.
  • Distance information is not generated for areas where there are defects in the two-dimensional image. For example, the position of a three-dimensional point is not calculated in the sensor coordinate system 73.
  • defective pixels with missing distance information are displayed with a predetermined density. For example, when a distance image is created so that the color density changes depending on the distance, the defective pixel is displayed in the darkest color. The operator can easily determine whether distance information is missing by looking at the distance image.
  • step 85 the motion detection unit 53 determines that the robot 1 is not stopped. Control returns to step 83. In steps 83 and 84, the driving of the robot 1 and the generation of distance images are continued.
  • step 85 the motion detection section 53 detects that the robot 1 has stopped. Normal imaging control is stopped by a worker's operation. Control passes to step 88 .
  • step 88 the imaging control unit 59 determines whether or not the driving of the robot 1 is finished. When imaging of the object from various directions is completed, driving of the robot 1 is ended. In this case, the operator operates the teaching pendant 49 to send a command to the processing unit 51 to end the driving of the robot 1 . If the driving of the robot 1 has not been completed, control proceeds to step 86.
  • the imaging control unit 59 starts composition control.
  • the imaging control unit 59 changes the exposure conditions and captures a plurality of two-dimensional images.
  • the position information generation unit 54 generates a distance image corresponding to the exposure condition every time the two-dimensional camera performs one image capture.
  • the combining unit 57 of the information processing unit 55 generates a combined distance image as three-dimensional position information from the plurality of distance images.
  • This control generates a composite distance image free of defects.
  • the display section 49b displays the composite image generated by the composition section 57. The operator can check the image displayed on the display section 49b. After this, control returns to step 83. The worker resumes driving the manual robot.
  • the motion detection unit 53 detects that the driving of the robot 1 has resumed, the composition control is stopped and the normal imaging control is started.
  • step 88 when driving of the manual robot 1 is completed, control moves to step 89. That is, when imaging from various directions is completed, control moves to step 89.
  • step 89 the operator operates the input section 49a of the teaching pendant 49 to transmit a command to end the automatic imaging control to the imaging control section 59 and the motion detection section 53, and this control ends.
  • the operator can change the position and orientation of the visual sensor 30 so that the entire desired surface of the pedestal 65 is imaged. Then, three-dimensional positional information on the surface of the pedestal 65 can be obtained by capturing images from various angles.
  • the position information generation unit 54 can convert the three-dimensional position information acquired in the sensor coordinate system 73 into three-dimensional position information in the robot coordinate system 71.
  • the processing unit 51 can store the position and orientation of the visual sensor 30 and three-dimensional position information in the storage unit 42 . Furthermore, the processing unit 51 integrates or averages a plurality of pieces of three-dimensional position information acquired at a plurality of positions and postures of the robot 1, thereby obtaining three-dimensional position information on the surface of the pedestal 65 (see FIG. 5). can be generated.
  • the combining unit 57 combines a plurality of distance images to generate a combined distance image; however, the configuration is not limited to this; for example, the combining unit 57 A plurality of two-dimensional images captured by the second camera 31 and the second camera 32 may be combined. As a method for synthesizing two-dimensional images, any synthesis method that increases the dynamic range can be adopted.
  • the synthesis unit 57 can synthesize two-dimensional images using the HDR (High Dynamic Range) method. By combining a plurality of two-dimensional images with different exposure conditions, a two-dimensional composite image with a large dynamic range can be obtained.
  • the combining unit 57 combines two-dimensional images for each of the cameras 31 and 32 to generate a combined two-dimensional image.
  • the position information generation unit 54 generates three-dimensional position information such as a distance image based on the composite two-dimensional image of the first camera 31 and the composite two-dimensional image of the second camera 32. I do not care.
  • the time it takes to stop the robot can be shortened.
  • three-dimensional position information of surrounding objects can be generated in a short time.
  • three-dimensional position information of surrounding objects can be easily generated.
  • the processing unit 51 can change the combining method and display the combined distance image on the display unit 49b.
  • the processing unit 51 can change the method of synthesizing distance images to the method of synthesizing two-dimensional images. Then, the operator may resume driving the robot when a composite distance image with fewer defects is acquired. With this control, it is possible to more reliably obtain three-dimensional position information with fewer defects.
  • the determination unit 58 determines whether there is a pixel for which there is no distance information in the three-dimensional position information generated by normal imaging control.
  • the determination unit 58 can determine that there is a defect in the three-dimensional position information when there are pixels for which there is no distance information.
  • the determination unit 58 can perform determination for each piece of three-dimensional position information that is created.
  • the determination unit 58 can determine whether or not there is a defect in the two-dimensional images captured by the cameras 31 and 32. For example, the determination unit 58 determines a pixel with a white pixel value that deviates from a predetermined determination range or a pixel with a black pixel value that deviates from a predetermined determination range as a defective pixel. If all pixels within a region of a predetermined size have defective pixel values, the determination unit 58 determines that blown-out highlights or blown-out shadows have occurred in that region. That is, the determining unit 58 determines that a defect exists in the two-dimensional image.
  • the manual control unit 52 issues a command to stop driving the robot 1 regardless of the operator's operation of the teaching operation panel 49. is transmitted to the operation control section 43.
  • the motion control unit 43 stops the robot 1.
  • stoppage of the robot 1 is detected, and the imaging control unit 59 performs composition control.
  • the imaging control unit 59 automatically changes exposure conditions and captures a plurality of two-dimensional images.
  • the combining unit 57 can combine two-dimensional images or three-dimensional position information.
  • the determining unit 58 may automatically determine the presence of a defect in the three-dimensional position information or the two-dimensional image, and forcibly stop the robot 1.
  • the manual control section 52 releases the forced stop of the robot 1.
  • the manual control unit 52 resumes driving the robot 1 in response to the operator's operation of the teaching operation panel 49. That is, the operator can perform a jog operation by operating the input section 49a of the teaching operation panel 49.
  • the motion detection unit 53 detects the movement of the robot 1, and normal imaging control is restarted.
  • FIG. 7 shows a block diagram of the processing section of the second control device in the first robot device in this embodiment.
  • the second control device automatically drives the robot to obtain three-dimensional position information of the object.
  • An operator creates an operation program for automatically driving the robot 1 in advance. Then, the robot is driven according to the operation program, and images are captured by the visual sensor 30 under automatic imaging control to obtain three-dimensional position information of surrounding objects.
  • the processing unit 61 includes an automatic control unit 62 that generates an operation command to automatically drive the robot 1 according to a predetermined operation program.
  • the automatic control unit 62 sends an operation command to the operation control unit 43.
  • the motion control section 43 drives the robot based on motion commands from the automatic control section 62.
  • the operation control section 43 may have the function of the automatic control section 62.
  • the other configuration of the processing section 61 is similar to the configuration of the processing section 51 of the first control device 2 (see FIG. 2).
  • step 93 while the robot 1 is being driven by the operation command from the automatic control unit 62, the determination unit 58 determines whether or not there is a defect in the two-dimensional image or three-dimensional position information. In this example, it is determined whether a defect exists in the distance image. In step 93, if there is no defect in the two-dimensional image or three-dimensional position information, control moves to step 95.
  • step 95 the imaging control unit 59 determines whether or not the driving of the robot 1 has ended. That is, it is determined whether the robot 1 has been driven to the end point of the motion path in the motion program. In step 95, if driving of the robot 1 has not been completed, control returns to step 92. In this way, three-dimensional positional information on the surface of the object can be generated while automatically driving the robot 1 based on a previously created operation program.
  • step 94 the automatic control unit 62 sends a command to stop the robot 1.
  • the motion detection section 53 detects the stoppage of the robot 1, and the imaging control section 59 performs composition control.
  • steps 86 and 87 the combining unit 57 combines the two-dimensional images or three-dimensional position information.
  • the synthesizing unit 57 generates a composite distance image from a plurality of distance images as three-dimensional position information in which defects have been corrected.
  • the automatic control unit 62 releases the command to stop the robot 1. Control then returns to step 92. Since the robot 1 is automatically driven, composition control is stopped and normal imaging control is started.
  • the imaging control unit 59 calculates a variable by multiplying the moving speed of the visual sensor 30 (unit: mm/sec) by the exposure time of the cameras 31 and 32 (unit: sec). This variable corresponds to the distance that the visual sensor 30 moves during exposure. When this variable exceeds a predetermined determination value, the imaging control unit 59 determines that the speed at which the robot 1 is driven with respect to the exposure time of the cameras 31 and 32 exceeds a predetermined determination value. The imaging control unit 59 then performs control to shorten the current exposure time. For example, the imaging control unit 59 performs control to reduce the exposure time at a predetermined rate. Alternatively, the operator can create a table of exposure times for the values of the above variables in advance. The imaging control unit 59 may perform control to shorten the exposure time based on this table.
  • the hand 5 corresponds to the object for which three-dimensional position information is to be obtained.
  • the control device of the second robot device 6 images the surface of the hand 5 in various positions and postures of the hand 5.
  • the control device generates three-dimensional position information on the surface of the hand 5 based on the output of the visual sensor 30.
  • the three-dimensional visual sensor of this embodiment is a stereo camera, it is not limited to this form. Any visual sensor including a two-dimensional camera can be used as the visual sensor.
  • a visual sensor that detects the three-dimensional position of an object using a phase shift method can be employed.
  • a sensor that calculates the position of a three-dimensional point on the surface of the object by acquiring a two-dimensional image of the object whose distance to the object is known can be employed as the three-dimensional visual sensor.
  • Robot 2 Control device 3 6 Robot device 5 Hand P5a, P5b, P5c Position 23 Position detector 24 Arithmetic processing unit 30 Visual sensor P30a, P30b, P30c Position 31, 32 Camera 43 Operation control section 49 Teaching operation panel 49a Input section 52 Manual control section 53 Motion detection section 54 Position information generation section 57 Combination section 58 Judgment section 59 Imaging control section 62 Automatic control section 65 Mount 70 Three-dimensional point

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Manipulator (AREA)

Abstract

ロボット装置の制御装置は、2次元カメラの露光条件を変更する撮像制御部と、2次元カメラにて撮像された2次元画像に基づいて対象物の3次元位置情報を生成する位置情報生成部とを備える。制御装置は、複数の3次元位置情報を合成する合成部を備える。ロボットが動作している期間中に、撮像制御部は、予め定められた露光条件にて予め定められた間隔にて2次元画像を撮像する。ロボットが停止した場合に、撮像制御部は、露光条件を変更して複数の2次元画像を撮像し、合成部は、複数の3次元位置情報を合成する。

Description

3次元位置情報を取得するロボット装置の制御装置およびロボット装置
 本発明は、3次元位置情報を取得するロボット装置の制御装置およびロボット装置に関する。
 従来の技術においては、対象物を撮像し、対象物の表面の3次元位置情報を検出する視覚センサが知られている(例えば、特開昭63-251192号公報)。このような3次元の位置を検出する視覚センサでは、2次元カメラを採用することができる。例えば、2台の2次元カメラの視差により対象物の3次元位置情報を検出するステレオカメラ、または、位相シフト法により対象物の3次元の位置を検出する視覚センサ等が知られている。
 近年においては、ロボットがハンドでワークを把持したときのワークの位置のずれ、または、架台に固定されたワークの位置のずれを、視覚センサにて取得されたワークの3次元の位置に基づいて算出する装置が知られている。視覚センサは、例えばロボットのアームの先端部に取り付けることができる(例えば、特開2020-38074号公報)。
 ロボットに視覚センサを取り付けた場合に、ロボットを駆動しながら視覚センサにて画像を撮像することができる。ロボットを駆動しながら画像を撮像することにより、対象物を様々な方向から迅速に撮像することができる。例えば、ロボット装置のシミュレーションを行う場合に、ロボットの周りの装置、台、または棚などの周辺物の3次元位置情報を事前に取得したい場合が有る。周辺物の3次元位置情報を取得する場合に、ロボットを駆動しながら画像を撮像することができる。
 ところで、光の強度、光の向き、および対象物の表面の形状等に応じて、対象物の輪郭線などの特徴部分が精度よく撮像されない場合が有る。例えば、2次元画像に白飛びまたは黒つぶれが生じる場合が有る。このような場合に、複数の画像を合成してダイナミックレンジが大きな画像を取得することが知られている(例えば、特開2002-334326号公報)。
特開昭63-251192号公報 特開2020-38074号公報 特開2002-334326号公報
 ロボットを駆動しながら視覚センサの2次元カメラにて画像を撮像する場合に、2次元画像に白飛びまたは黒つぶれが生じると、対象物の3次元位置情報を正確に取得できなくなる。作業者は、ロボットを少し移動するごとにロボットを停止して2次元カメラの露光条件を調整することができる。または、予め複数の露光条件を設定しておいて、ロボットを少し移動するごとに複数の露光条件にて撮像を繰り返すことができる。しかしながら、これらの方法では、画像を撮像する度にロボットを停止する必要が有り、作業に多くの時間がかかるという問題がある。
 本開示の態様のロボット装置の制御装置は、対象物を撮像する2次元カメラを含む3次元視覚センサとロボットとを備える。制御装置は、ロボットの動作状態を検出する動作検出部と、2次元カメラの露光条件を変更する撮像制御部とを備える。制御装置は、2次元カメラにて撮像された2次元画像に基づいて対象物の3次元位置情報を生成する位置情報生成部を備える。制御装置は、複数の2次元画像を合成する制御または複数の3次元位置情報を合成する制御を実施する合成部を備える。動作検出部がロボットの動作を検出している期間中に、撮像制御部は、予め定められた露光条件にて予め定められた間隔にて2次元画像を撮像する。動作検出部がロボットの停止を検出した場合に、撮像制御部は、露光条件を変更して複数の2次元画像を撮像し、合成部は、複数の2次元画像または複数の3次元位置情報を合成する。
 本開示の態様のロボット装置は、前述の制御装置と、対象物を撮像する2次元カメラを含む3次元視覚センサと、ロボットとを備える。
 本開示の一態様によれば、対象物の3次元位置情報を短時間に取得できるロボット装置の制御装置およびロボット装置を提供することができる。
実施の形態における第1のロボット装置の斜視図である。 第1の制御装置を備える第1のロボット装置のブロック図である。 実施の形態における視覚センサの概略図である。 視覚センサの位置および姿勢を変更して撮像するときの架台および視覚センサの斜視図である。 視覚センサの出力に基づいて得られた3次元点を説明する斜視図である。 実施の形態における対象物の3次元位置情報を取得する第1の制御のフローチャートである。 実施の形態における第1のロボット装置の第2の制御装置の処理部のブロック図である。 実施の形態における対象物の3次元位置情報を取得する第2の制御のフローチャートである。 実施の形態における第2のロボット装置の側面図である。
 図1から図9を参照して、実施の形態におけるロボット装置の制御装置およびロボット装置について説明する。本実施の形態のロボット装置は、ロボットと、対象物の表面に関する3次元位置情報を取得する3次元視覚センサとを備える。
 図1は、本実施の形態における第1のロボット装置の斜視図である。図2は、本実施の形態における第1のロボット装置のブロック図である。図1および図2を参照して、第1のロボット装置3は、ワークを把持するための作業ツールとしてのハンド5と、ハンド5を移動するロボット1とを備える。ロボット装置3は、ロボット1およびハンド5を制御する第1の制御装置2を備える。ロボット装置3は、対象物の表面に関する情報を取得する3次元視覚センサである視覚センサ30を備える。
 本実施の形態のロボット1は、複数の関節部18を含む多関節ロボットである。ロボット1は、上部アーム11と下部アーム12とを含む。下部アーム12は、旋回ベース13に支持されている。旋回ベース13は、ベース14に支持されている。ロボット1は、上部アーム11の端部に連結されているリスト15を含む。リスト15は、ハンド5を固定するフランジ16を含む。本実施の形態のロボット1は、6個の駆動軸を有するが、この形態に限られない。ロボットは、作業ツールを移動可能な任意のロボットを採用することができる。
 また、ロボット1に取り付けられる作業ツールは、ハンド5に限られず、ロボット装置3が行う作業に応じた任意の作業ツールを採用することができる。例えば、溶接を行う作業ツールまたはシール材を塗布する作業ツール等を採用することができる。
 第1のロボット装置3では、視覚センサ30は、ロボット1に取り付けられている。視覚センサ30は、支持部材68を介して、フランジ16に固定されている。本実施の形態の視覚センサ30は、ハンド5と共に位置および姿勢が変化するようにロボット1に支持されている。
 本実施の形態のロボット1は、上部アーム11等の構成部材を駆動するロボット駆動装置21を含む。ロボット駆動装置21は、上部アーム11、下部アーム12、旋回ベース13、およびリスト15を駆動するための複数の駆動モータを含む。ハンド5は、ハンド5を駆動するハンド駆動装置22を含む。本実施の形態のハンド駆動装置22は、空気圧によりハンド5を駆動する。ハンド駆動装置22は、ハンド5の指部を駆動するためのポンプおよび電磁弁等を含む。
 制御装置2は、プロセッサとしてのCPU(Central Processing Unit)を含む演算処理装置24(コンピュータ)を備える。演算処理装置24は、CPUにバスを介して互いに接続されたRAM(Random Access Memory)およびROM(Read Only Memory)等を有する。ロボット装置3は、動作プログラム41に基づいてロボット1およびハンド5が駆動する。本実施の形態のロボット装置3は、ワークを自動的に搬送する機能を有する。
 制御装置2の演算処理装置24は、ロボット装置3の制御に関する情報を記憶する記憶部42を含む。記憶部42は、情報の記憶が可能で非一時的な記憶媒体にて構成されることができる。例えば、記憶部42は、揮発性メモリ、不揮発性メモリ、磁気記憶媒体、または光記憶媒体等の記憶媒体にて構成することができる。制御装置2には、ロボット1の動作を行うために予め作成された動作プログラム41が入力される。動作プログラム41は、記憶部42に記憶される。
 演算処理装置24は、ロボットの動作を制御する動作制御部43を含む。動作制御部43は、動作プログラム41に基づいてロボット1を駆動するための動作指令をロボット駆動部44に送出する。ロボット駆動部44は、駆動モータを駆動する電気回路を含む。ロボット駆動部44は、動作指令に基づいてロボット駆動装置21に電気を供給する。また、動作制御部43は、ハンド駆動装置22を駆動する動作指令をハンド駆動部45に送出する。ハンド駆動部45は、ポンプ等を駆動する電気回路を含む。ハンド駆動部45は、動作指令に基づいてハンド駆動装置22に電気を供給する。
 動作制御部43は、動作プログラム41に従って駆動するプロセッサに相当する。プロセッサが動作プログラム41を読み込んで、動作プログラム41に定められた制御を実施することにより、動作制御部43として機能する。
 ロボット1は、ロボット1の位置および姿勢を検出するための状態検出器を含む。本実施の形態における状態検出器は、ロボット駆動装置21の各駆動軸の駆動モータに取り付けられた位置検出器23を含む。位置検出器23は、例えばエンコーダにより構成されている。位置検出器23の出力により、ロボット1の位置および姿勢が検出される。
 制御装置2は、作業者がロボット装置3を手動にて操作する操作盤としての教示操作盤49を含む。教示操作盤49は、ロボット1、ハンド5、および視覚センサ30に関する情報を入力する入力部49aを含む。入力部49aは、キーボード、ダイヤル、およびボタンなどの操作部材により構成されている。教示操作盤49は、ロボット装置3の制御に関する情報を表示する表示部49bを含む。表示部49bは、液晶表示パネルまたは有機EL(Electro Luminescence)パネル等の表示パネルにて構成されている。
 本実施の形態のロボット装置3には、ロボット1の位置および姿勢が変化した時に不動のロボット座標系71が設定されている。図1に示す例では、ロボット1のベース14に、ロボット座標系71の原点が配置されている。ロボット座標系71は、ワールド座標系または基準座標系とも称される。ロボット座標系71は、原点の位置が固定され、座標軸の向きが固定されている。ロボット1の位置および姿勢が変化してもロボット座標系71の位置および姿勢は変化しない。
 ロボット装置3には、フランジ16のハンド5が固定される表面にフランジ座標系72が設定されている。フランジ座標系72の原点は、フランジ16の回転中心に配置されている。ここでの例では、フランジ16の回転軸がフランジ座標系72のZ軸に設定されている。フランジ座標系72は手先座標系とも称される。本実施の形態のロボット1の位置は、ロボット座標系71におけるフランジ座標系72の原点の位置に対応する。また、ロボット1の姿勢は、ロボット座標系71に対するフランジ座標系72の姿勢に対応する。
 なお、作業ツールにツール座標系が配置されていても構わない。そして、ロボット座標系71におけるツール座標系の原点の位置をロボットの位置として、ロボット座標系71に対するツール座標系の姿勢をロボットの姿勢としても構わない。
 図3に、本実施の形態における視覚センサの概略図を示す。図2および図3を参照して、本実施の形態の視覚センサ30は、対象物の表面の3次元位置情報が取得可能な3次元視覚センサ(3次元カメラ)である。本実施の形態の視覚センサ30は、第1のカメラ31および第2のカメラ32を含むステレオカメラである。それぞれのカメラ31,32は、2次元の画像を撮像することができる2次元カメラである。2台のカメラ31,32は互いに離れて配置されている。2台のカメラ31,32の相対的な位置は予め定められている。本実施の形態の視覚センサ30は、ワークに向かって縞模様などのパターン光を投影するプロジェクタ33を含む。カメラ31,32およびプロジェクタ33は、筐体34の内部に配置されている。
 図1を参照して、ロボット装置3では、視覚センサ30に対してセンサ座標系73が設定されている。センサ座標系73は、原点が視覚センサ30の任意の位置に固定された座標系である。センサ座標系73は、視覚センサ30と共に位置および姿勢が変化する。本実施の形態のセンサ座標系73は、Z軸が視覚センサ30に含まれるカメラの光軸と平行になるように設定されている。センサ座標系73は、フランジ座標系72と共に移動したり回転したりする。また、フランジ座標系72におけるセンサ座標系73の原点の位置およびフランジ座標系72に対するセンサ座標系73の姿勢は予め定められている。
 図2を参照して、本実施の形態における制御装置2の演算処理装置24は、演算処理を行う処理部51を含む。処理部51は、作業者による教示操作盤49の操作に応じてロボット1およびハンド5を手動にて駆動する動作指令を生成する手動制御部52を含む。手動制御部52は、ロボット1およびハンド5の動作指令を動作制御部43に送出する。作業者は、教示操作盤49の入力部49aを操作することにより、所望の方向にロボットの位置および姿勢を変更することができる。
 例えば、入力部49aのボタンを押すと、ボタンに対応する座標系の座標軸の方向にロボットの位置が移動したりロボットが回転したりするジョグ操作を行うことができる。ジョグ操作では、ボタンを押している期間にロボットが駆動する。なお、動作制御部43は、手動制御部52の機能を有していても構わない。
 処理部51は、ロボット1の動作状態を検出する動作検出部53を含む。動作検出部53は、例えば位置検出器23の出力に基づいて、ロボット1が動作している状態を検出する。または、動作検出部53は、動作制御部43から発信される動作指令を取得して、ロボット1の動作状態を検出しても構わない。本実施の形態の動作検出部53は、ロボット1が駆動しているか、または、ロボット1が停止しているかを検出することができる。
 処理部51は、視覚センサ30からの取得される2次元画像に基づいて対象物の3次元位置情報を生成する位置情報生成部54を含む。3次元位置情報としては、後述するように、対象物の表面を表す距離画像または3次元マップを例示することができる。位置情報生成部54は、センサ座標系73にて取得される対象物の表面の位置情報を、ロボット座標系71にて表現される対象物の表面の位置情報に変換する機能を有する。例えば、位置情報生成部54は、センサ座標系73における3次元点の位置(座標値)を、ロボット1の位置および姿勢に基づいて、ロボット座標系71における3次元点の位置(座標値)に変換する機能を有する。
 処理部51は、視覚センサ30の撮像を制御する撮像制御部59を含む。撮像制御部59は、視覚センサ30よる撮像の時期を制御する。撮像制御部59は、視覚センサ30に含まれる2次元カメラの露光条件を変更する。本実施の形態における露光条件は、2次元カメラの露光時間(シャッター速度)を含む。
 また、ロボット装置は、対象物を照らす為の照明装置を備えていても構わない。照明装置は、対象物の周りに固定することができる。または、照明装置は、ロボット1に固定されてロボット1の駆動と共に移動しても構わない。撮像制御部59は、照明の明るさを調整するように形成することができる。この場合に、露光条件としては、2次元カメラの露光時間および照明装置の光量のうち少なくも一方を採用することができる。
 処理部51は、位置情報生成部54にて生成された3次元位置情報を処理する情報処理部55を含む。または、情報処理部55は、視覚センサ30の2次元カメラにて得られた2次元画像を処理する。情報処理部55は、2次元画像または3次元位置情報を合成する合成部57を含む。合成部57は、2次元画像の欠陥を修正するように2次元カメラにて撮像された複数の2次元画像を合成する、または、合成部57は、3次元位置情報の欠陥を修正するように、位置情報生成部54にて生成された複数の3次元位置情報を合成する。
 情報処理部55は、2次元画像または3次元位置情報に欠陥があるか否かを判定する判定部58を含む。本実施の形態における判定部58は、2次元画像を判定する場合に、2次元画像に白飛び、または、黒つぶれの欠陥が有るか否かを判定する。例えば、判定部58は、予め定められた大きさの領域の内部の全ての画素が白飛びまたは黒つぶれの画素値である場合に、その領域は欠陥であると判定する。
 一方で、3次元位置情報を判定する場合に、判定部58は、一部の距離情報が欠落している欠陥があるか否かを判定する。例えば、判定部58は、それぞれの画素ごとに距離情報が欠落しているか否かを判定する。判定部58は、一部の画素において距離情報が欠落している場合に、3次元位置情報において欠陥が有ると判定する。
 上記の処理部51は、動作プログラム41に従って駆動するプロセッサに相当する。処理部51に含まれる手動制御部52、動作検出部53、位置情報生成部54、情報処理部55、合成部57、判定部58、および撮像制御部59は、動作プログラム41に従って駆動するプロセッサに相当する。プロセッサが動作プログラム41を読み込んで、動作プログラム41に定められた制御を実施することにより、それぞれのユニットとして機能する。
 本実施の形態におけるロボット装置3は、実際のワークを搬送する作業を実施する前に、ロボット1の周りに配置されたコンベヤまたはロボット等の装置、柵、および架台等の周辺物の3次元位置情報を取得する。すなわち、ロボット1の周りに配置されている周辺物の立体的な情報を取得する。ここでは、ワークを固定するための、架台65の表面の3次元位置情報の取得について説明する。
 ロボット1の周りの物の3次元位置情報は、例えば、ロボット装置のオフラインシュミレーションを実施する前に取得する。シミュレーション装置の表示部は、周辺物の3次元位置情報に基づいて立体的な画像を表示することができる。作業者は、周辺物の画像を見ながら、ロボット、ハンド、およびワークが周辺物に接触しないように、実際の作業におけるロボットの動作経路を生成することができる。または、シミュレーション装置が、自動的に動作経路を生成する機能を有する場合がある。この場合に、作業者は、周辺物の3次元位置情報に基づいて、ロボットの動作の始点および終点を指定する。そして、シミュレーション装置は、ロボットが周辺物に干渉しないように、自動的にロボットの動作経路を生成することができる。
 または、ロボット装置の周りに配置されている周辺物の3次元位置情報をロボット装置の制御装置が記憶しておくことができる。制御装置は、ロボット装置が周辺物に接触するか否かを判定することができる。例えば、作業者が教示操作盤を操作して手動にてロボットを駆動するときに、制御装置は、ロボット装置が周辺物に接触するか否かを判定することができる。制御装置は、ロボット装置が周辺物に接触したりすると判定した場合にロボットの駆動を阻止する制御を実施する。または、ロボット装置が周辺物に接近した時にロボットを減速したり停止したりする制御を行うことができる。更に、制御装置は、ロボットを停止するという警告を表示操作盤の表示部に表示することができる。
 図4に、架台の表面の3次元位置情報を取得するときの視覚センサおよび架台の斜視図を示す。図2および図4を参照して、本実施の形態における第1の制御では、作業者は、手動にてロボット1を駆動する。作業者は、教示操作盤49の入力部49aを操作する。手動制御部52は、入力部49aの操作に応じて、ロボットの位置および姿勢を変更する。
 図4に示す例では、作業者は、ジョグ操作にて位置P30aに視覚センサ30を配置する。この後に、矢印96a,96bに示すように、位置P30bおよび位置P30cまで視覚センサ30の位置および姿勢を変更する。撮像制御部59は、視覚センサ30が移動している期間中に予め定められた間隔にてカメラ31,32にて画像を撮像する。視覚センサ30の撮像領域79において、視覚センサ30に対向する表面に3次元点を生成することができる。作業者は、3次元位置情報が必要な全ての表面をカメラ31,32にて撮像するように、ロボット1の位置および姿勢を変更する。ここでは、架台65の見ることができる全ての表面に3次元位置情報を生成するために、架台65の全ての表面を撮像するように、様々な位置および姿勢にて画像を撮像する。
 位置情報生成部54は、第1のカメラ31および第2のカメラ32にて取得された2次元画像に基づいて画像に含まれる対象物の表面に3次元点を設定する。位置情報生成部54は、第1のカメラ31にて撮像された画像と第2のカメラ32にて撮像された画像とにおける視差に基づいて、視覚センサ30から対象物の表面に設定される3次元点までの距離を算出する。3次元点は、例えば、撮像素子の画素ごとに設定することができる。さらに、位置情報生成部54は、視覚センサ30からの距離に基づいて、センサ座標系73における3次元点の位置の座標値を算出する。
 図5に、位置情報生成部にて生成された3次元点の点群の斜視図を示す。図5は、3次元点を3次元の空間に配置したときの斜視図である。図5では、架台65の輪郭を破線にて示している。3次元点70は、視覚センサ30に対向する物体の表面上に配置される。位置情報生成部54は、撮像領域79の内部に含まれる物体の表面に対して3次元点70を設定する。ここでは、架台65の表面に多数の3次元点70が配置されている。
 位置情報生成部54は、対象物の表面の3次元位置情報を、図5のように3次元点の点群の斜視図にて示すことができる。また、位置情報生成部54は、対象物の表面の3次元位置情報を、距離画像または3次元マップの形式にて生成することができる。距離画像は、2次元の画像により対象物の表面の位置情報を表現したものである。距離画像では、それぞれの画素の濃さ又は色により、視覚センサ30から3次元点までの距離を表す。一方で、3次元マップは、対象物の表面の3次元点の座標値(x,y,z)の集合にて対象物の表面の位置情報を表現したものである。この時の座標値は、センサ座標系73またはロボット座標系71などの任意の座標系にて表現することができる。
 本実施の形態では、対象物の表面の3次元位置情報として、主に距離画像を例に取り上げて説明する。本実施の形態の位置情報生成部54は、視覚センサ30から3次元点70までの距離に応じて色の濃さを変化させた距離画像を生成する。
 なお、本実施の形態の位置情報生成部54は、演算処理装置24の処理部51に配置されているが、この形態に限られない。位置情報生成部は、視覚センサの内部に配置されていても構わない。すなわち、視覚センサがCPU等のプロセッサを含む演算処理装置を含み、視覚センサの演算処理装置のプロセッサが位置情報生成部として機能しても構わない。この場合に、視覚センサからは、3次元マップまたは距離画像等が出力される。
 本実施の形態の処理部51は、ロボット1の駆動状態に応じて視覚センサ30の撮像をしたり撮像を停止したりする自動撮像制御を実施するように形成されている。本実施の形態の自動撮像制御は、通常撮像制御および合成制御を含む。
 動作検出部53は、ロボット1が動作しているか否かを検出する。動作検出部53がロボット1の動作を検出している期間中に通常撮像制御を実施する。通常撮像制御では、撮像制御部59は、カメラ31,32にて予め定められた間隔にて2次元画像を撮像する。撮像制御部59は、視覚センサ30の位置および姿勢を変更している期間中に画像を撮像する。また、撮像制御部59は、予め定められた同一の露光条件にて2次元画像を撮像する。
 撮像制御部59は、予め定められた時間間隔ごとに画像を撮像することができる。例えば、撮像制御部59は、300msec以上500msec以下の範囲内の時間間隔にて、カメラ31,32にて画像を撮像する。予め定められた間隔としては、時間の間隔に限られず、所定の部分の移動距離の間隔でも構わない。例えば、ロボットのフランジ座標系の原点の位置の移動距離を採用しても構わない。または、所定の部分の回転角度の間隔でも構わない。また、予め定められた間隔は、一定の間隔でなくても構わない。位置情報生成部54は、予め定められた間隔ごとに3次元位置情報を生成する。
 通常撮像制御における露光条件は、画像がぶれずに撮像可能な任意の露光条件を採用することができる。例えば、予め定められた一定の露光条件を採用することができる。露光時間は、2次元画像がぶれないように短くすることが好ましい。このために、例えば、照明装置の光量を最大にして、速いシャッタースピードを設定することが好ましい。作業者は、照明装置の光量を最大にして、対象物のうち明るさが中程度の部分を撮像するようにカメラを移動する。そして、2次元画像が撮像できる最小の露光時間を設定することができる。すなわち、照明装置の明るさに合わせて最大のシャッター速度を定めることができる。
 ところで、本実施の形態においては、様々な位置および方向から対象物を撮像するために、照明装置の位置、視覚センサの向き、対象物の表面の材質、および対象物の表面の形状等に依存して、2次元画像に白飛びまたは黒つぶれなどの欠陥が生じる場合がある。2次元画像に欠陥が有る部分については、3次元位置情報は作成できない。そこで、本実施の形態の情報処理部55は、2次元画像または3次元位置情報の欠陥を補う合成制御を実施する。
 動作検出部53は、ロボット1が動作しているか否かを検出する。動作検出部53がロボット1の停止を検出した場合に合成制御を実施する。合成制御では、撮像制御部59は、露光条件を自動的に変更して複数の2次元画像を撮像する。撮像制御部59は、例えば、露光時間を0.1msecから100msecまで、10倍ずつ変更しながら複数の2次元画像を撮像する。または、撮像制御部59は、照明装置の光量を変更しても構わない。例えば、撮像制御部59は、光量が0%(消灯)から光量が100%(全点灯)まで、光量を10%ずつ増やしながらカメラ31,32にて複数の画像を撮像する。この撮像は、第1のカメラ31および第2のカメラ32の両方にて行う。
 次に、位置情報生成部54は、複数の露光条件の2次元画像から複数の3次元位置情報を生成する。そして、合成部57は、複数の3次元位置情報を合成して、1つの3次元位置情報を生成する。または、合成部57は、それぞれのカメラ31,32の画像ごとに複数の露光条件の2次元画像を合成する。位置情報生成部54は、カメラ31,32ごとに合成した2つの2次元画像に基づいて3次元位置情報を生成しても構わない。
 ここでの例は、位置情報生成部54は、それぞれの露光条件に応じた2次元画像に基づいて、露光条件に対応した距離画像を生成する。位置情報生成部54は、複数の距離画像を生成する。そして、合成部57は、複数の距離画像を合成する。
 距離画像の合成方法としては、1つの距離画像において3次元位置(距離情報)が欠落している画素に対して、他の露光条件で撮像した距離画像の画素の3次元位置を補完することができる。例えば、合成部57は、露光条件が中程度の1つの距離画像を選定する。合成部57は、距離情報が存在しない画素を特定する。そして、合成部57は、距離情報が存在しない画素について、他の露光条件にて取得した距離画像の距離情報を取得することができる。または、合成部57は、複数の距離画像において距離情報が欠落している画素を削除する。合成部57は、距離情報が存在する全ての画素について、複数の距離画像の距離情報の平均値を算出しても構わない。
 なお、3次元位置情報が3次元マップの場合には、それぞれの3次元点の座標値を補完したり平均したりすることができる。このように、合成部は、複数の3次元位置情報を合成して、合成後の3次元位置情報である合成位置情報を生成することができる。
 図6に、本実施の形態における第1の制御のフローチャートを示す。第1の制御では、作業者がジョグ操作にてロボット1を手動で駆動して通常撮像制御が実施される。教示操作盤49の表示部49bは、距離画像を表示する。そして、作業者が、距離画像に欠陥があるか否かを判定する。距離画像に欠陥がある場合に、作業者がロボット1を手動で停止すると合成制御が実施される。
 ステップ81において、作業者は、教示操作盤49を操作することにより、撮像を開始する位置および姿勢になる様にロボット1を駆動する。例えば、図4を参照して、手動制御部52は、作業者の操作に応じて、位置P30aに視覚センサ30が配置されるようにロボット1を駆動する。対象物としての架台65の真上の位置P30aに視覚センサ30が配置されている。
 ステップ82において、自動撮像制御を開始する。作業者は、入力部49aの操作により、自動撮像制御を開始する指令を撮像制御部59および動作検出部53に送信する。ステップ83において、作業者はロボット1を手動で駆動する。例えば、矢印96aに示すように、位置P31aから位置P30bに視覚センサ30の位置および姿勢を変更する。
 ステップ84において、動作検出部53は、ロボット1の駆動を検出する。撮像制御部59は、予め定められた間隔および予め定められた露光条件にて2次元画像を撮像する通常撮像制御を実施する。位置情報生成部54は、カメラ31,32にて撮像された2次元画像に基づいて、3次元位置情報を生成する。ここでは、位置情報生成部54は、距離画像を生成する。教示操作盤49の表示部49bは、距離画像が生成される度に距離画像を表示する。
 作業者は、ロボット1を駆動している期間中に、表示部49bに表示される距離画像を見る。作業者は、距離情報に欠陥があるか否かを判定する。2次元画像に欠陥が有る部分には距離情報は生成されない。例えば、3次元点の位置がセンサ座標系73にて算出されない。距離画像において、距離情報が欠落している欠陥の画素は、所定の濃さにて表示される。例えば、距離画像が距離に応じて色の濃さが変化するように作成される場合に、欠陥の画素が最も濃い色にて表示される。作業者は、距離画像を見て、容易に距離情報が欠落しているか否かを判断することができる。
 作業者は、距離画像に欠陥が無いと判断した場合に、手動のロボットの駆動を継続する。ステップ85において、動作検出部53は、ロボット1が停止していないと判定する。制御は、ステップ83に戻る。ステップ83,84において、ロボット1の駆動および距離画像の生成が継続される。
 一方で、ロボット1を駆動している期間中に、作業者は、距離画像に欠陥があると判断した場合に、ロボット1を手動で停止する操作を行う。すなわち、ロボット1のジョグ操作を中断して視覚センサ30の移動を停止する。ステップ85において、動作検出部53は、ロボット1の停止を検出する。作業員の操作により、通常撮像制御が停止する。制御は、ステップ88に移行する。
 ステップ88において、撮像制御部59は、ロボット1の駆動が終了か否かを判定する。様々な方向からの対象物の撮像が完了すると、ロボット1の駆動を終了する。この場合に、作業者は、教示操作盤49の操作により、ロボット1の駆動を終了する指令を処理部51に送出する。ロボット1の駆動が終了していない場合に、制御は、ステップ86に移行する。
 ステップ86において、撮像制御部59は、合成制御を開始する。撮像制御部59は、露光条件を変更して、複数の2次元画像を撮像する。ここでは、位置情報生成部54は、2次元カメラにおける1回の撮像を行う度に、露光条件に対応した距離画像を生成する。ステップ87において、情報処理部55の合成部57は、複数の距離画像から3次元位置情報としての合成距離画像を生成する。この制御により、欠陥が存在しない合成距離画像が生成される。表示部49bは、合成部57にて生成された合成画像を表示する。作業者は、表示部49bに表示される画像を確認することができる。この後に制御は、ステップ83に戻る。作業者は、手動のロボットの駆動を再開する。動作検出部53にてロボット1の駆動の再開が検出されると、合成制御が停止して、通常撮像制御が開始される。
 ステップ88において、手動のロボット1の駆動が完了した場合に、制御はステップ89に移行する。すなわち、様々な方向からの撮像が完了した場合に、制御はステップ89に移行する。ステップ89において、作業者は、教示操作盤49の入力部49aの操作により、自動撮像制御を終了する指令を撮像制御部59および動作検出部53に送信して、この制御が終了する。
 作業者は、架台65の所望の表面の全体が撮像されるように、視覚センサ30の位置および姿勢を変更することができる。そして、様々な角度から撮像して、架台65の表面の3次元位置情報を取得することができる。位置情報生成部54は、センサ座標系73にて取得された3次元位置情報を、ロボット座標系71の3次元位置情報に変換することができる。処理部51は、視覚センサ30の位置および姿勢と3次元位置情報とを、記憶部42に記憶することができる。更に、処理部51は、ロボット1の複数の位置および姿勢にて取得した複数の3次元位置情報を統合したり平均したりすることにより、架台65の表面における3次元位置情報(図5参照)を生成することができる。
 なお、上記の実施の形態においては、合成部57は、複数の距離画像を合成して、合成距離画像を生成しているが、この形態に限られない、例えば、合成部57は、第1のカメラ31および第2のカメラ32にて撮像された複数の2次元画像を合成しても構わない。2次元画像を合成する方法としては、ダイナミックレンジが大きくなるような任意の合成方法を採用することができる。
 例えば、合成部57は、HDR(High Dynamic Range)法により2次元画像を合成することができる。露光条件を変更した複数の2次元画像を合成することにより、ダイナミックレンジの大きな2次元の合成画像を取得することができる。合成部57は、カメラ31,32ごとに2次元の画像を合成して合成2次元画像を生成する。この後に、位置情報生成部54は、第1のカメラ31の合成2次元画像と、第2のカメラ32の合成2次元画像とに基づいて、距離画像等の3次元位置情報を生成しても構わない。
 このように、作業者は、距離画像に欠陥が無い場合には、ロボットの駆動が終了するまで、撮像および距離画像の生成を自動的に繰り返すことができる。作業者は、距離画像の欠陥を見つけた場合にロボット1の駆動を停止する。この操作により、処理部は、露光条件を変更した複数の画像を撮像して、自動的に3次元位置情報または2次元画像を合成する。そして、3次元位置情報を合成した合成位置情報または2次元画像を合成した合成2次元画像から生成された3次元位置情報を生成することができる。作業者は、複数の画像を撮像する操作、または、合成画像を生成する操作等を行わなくても、ロボットを駆動する操作にて、対象物の所望の部分の3次元位置情報を生成することができる。このために、容易に対象物の3次元位置情報を生成することができる。
 また、2次元画像または3次元位置情報に欠陥がある場合に、ロボットを停止するためにロボットを停止する時間を短くすることができる。この結果、周辺物の3次元位置情報を短時間で生成することができる。または、周辺物の3次元位置情報を容易に生成することができる。
 なお、作業者は、表示部49bに表示された合成距離画像を見た時に、合成距離画像に欠陥が残存する場合に、作業者は、合成方法を変更する指令を教示操作盤に入力しても構わない。処理部51は合成方法を変更して合成距離画像を表示部49bに表示することができる。例えば、処理部51は、距離画像を合成する方法から2次元画像を合成する方法に変更することができる。そして、作業者は、欠陥の少ない合成距離画像が取得された場合に、ロボットの駆動を再開しても構わない。この制御により、より確実に欠陥の少ない3次元位置情報を取得することができる。
 なお、ロボットを手動で駆動するときに、視覚センサの移動方向を変更するために、一時的に視覚センサを停止する場合がある。例えば、図4を参照して、視覚センサ30を位置P30aから位置P30bに移動した後に位置P30aに戻す場合がある。視覚センサ30は移動方向を変えるために位置P30bにて一時的に停止する。この場合に、自動撮像制御では合成制御が実施される。合成位置情報が不要であっても合成位置情報が生成される。しかしながら、3次元位置情報として、合成位置情報を採用しても問題は生じないために、合成制御を実施しても構わない。
 ところで、図2を参照して、本実施の形態における情報処理部55は、2次元画像または3次元位置情報に欠陥があるか否かを判定する判定部58を含む。そこで、作業者が3次元位置情報に欠陥があるか否かを判定する代わりに、判定部58が自動的に判定することができる。
 判定部58は、通常撮像制御にて生成された3次元位置情報の中に距離情報がない画素があるか否かを判定する。そして、判定部58は、距離情報がない画素が存在する場合に、3次元位置情報に欠陥があると判定することができる。判定部58は、作成される3次元位置情報ごとに判定を行うことができる。
 または、判定部58は、カメラ31,32にて撮像された2次元画像に欠陥があるか否かを判定することができる。例えば、判定部58は、予め定められた判定範囲を逸脱する白い画素値の画素、または、予め定められた判定範囲を逸脱する黒い画素値の画素を欠陥の画素として判定する。判定部58は、予め定められた大きさの領域の内部の全ての画素が、欠陥の画素値である場合に、その領域に白飛びまたは黒つぶれが生じていると判定する。すなわち、判定部58は、2次元画像に欠陥が存在すると判定する。
 判定部58が3次元位置情報または2次元画像に欠陥があると判定した場合に、手動制御部52は、作業者の教示操作盤49の操作に関わらずに、ロボット1の駆動を停止する指令を動作制御部43に送信する。動作制御部43は、ロボット1を停止する。この制御により、ロボット1の停止が検出されて、撮像制御部59は合成制御を実施する。撮像制御部59は、露光条件を自動で変更して複数の2次元画像を撮像する。そして、合成部57は、2次元画像または3次元位置情報を合成することができる。
 このように、判定部58が自動的に3次元位置情報または2次元画像の欠陥の存在を判定して、ロボット1を強制的に停止しても構わない。合成部57が2次元画像または3次元位置情報の合成を終了した後に、手動制御部52は、ロボット1の強制的な停止を解除する。手動制御部52は、作業者の教示操作盤49の操作に応じてロボット1の駆動を再開する。すなわち、作業者は、教示操作盤49の入力部49aを操作することにより、ジョグ操作を行うことができる。動作検出部53にてロボット1の駆動が検出されて、通常撮像制御が再開される。
 図7に、本実施の形態における第1のロボット装置における第2の制御装置の処理部のブロック図を示す。第2の制御装置は、対象物の3次元位置情報を取得するためにロボットを自動的に駆動する。作業者は、ロボット1を自動的に駆動するための動作プログラムを予め作成する。そして、動作プログラムに従ってロボットが駆動すると共に、自動撮像制御により視覚センサ30にて画像を撮像して、周辺物の3次元位置情報を取得する。
 処理部61は、予め定められた動作プログラムに従って自動的にロボット1を駆動する動作指令を生成する自動制御部62を備える。自動制御部62は、動作制御部43に動作指令を送出する。動作制御部43は、自動制御部62からの動作指令に基づいてロボットを駆動する。なお、動作制御部43は、自動制御部62の機能を有していても構わない。その他の処理部61の構成は、第1の制御装置2の処理部51の構成と同様である(図2を参照)。
 図8に、本実施の形態における第2の制御装置の制御のフローチャートを示す。第2の制御装置は、ロボット1を自動的に駆動して撮像する第2の制御を実施する。作業者は、ロボット1が駆動する動作経路が定められた動作プログラムを予め作成する。例えば、図4に示すように、視覚センサ30が位置P30a、位置P30b、および位置P30cを通る動作経路が定められた動作プログラムを作成する。
 動作プログラムに含まれるロボットの動作経路は、対象物の所望の表面の3次元位置情報を取得できるように、視覚センサ30の様々な位置および姿勢にて対象物を撮像できる経路であることが好ましい。
 ステップ82において、作業者は、教示操作盤49を操作することにより、自動撮像制御を開始する。ステップ92において、作業者は、教示操作盤49を操作することにより、ロボットの自動駆動を開始する。自動制御部62は、動作プログラムに従ってロボット1の動作指令を動作制御部43に送信する。ロボット1の位置および姿勢が変化して、視覚センサ30の位置および姿勢が変化する。
 ステップ84において、動作検出部53は、ロボット1の駆動を検出して、撮像制御部59は、通常撮像制御を実施する。通常撮像制御により対象物の2次元画像が撮像されて3次元位置情報が生成される。ここでの例では、距離画像が生成される。
 ステップ93において、自動制御部62の動作指令によりロボット1を駆動している期間中に、判定部58は、2次元画像または3次元位置情報に欠陥が存在するか否かを判定する。ここでの例では、距離画像に欠陥が存在するか否かを判定する。ステップ93において、2次元画像または3次元位置情報に欠陥が存在しない場合に、制御は、ステップ95に移行する。
 ステップ95において、撮像制御部59は、ロボット1の駆動が終了しているか否かを判定する。すなわち、動作プログラムにおける動作経路の終点までロボット1が駆動しているか否かを判定する。ステップ95において、ロボット1の駆動が終了していない場合に、制御は、ステップ92に戻る。このように、予め作成した動作プログラムに基づいて、ロボット1を自動的に駆動しながら対象物の表面の3次元位置情報を生成することができる。
 一方で、ステップ93において、判定部58が2次元画像または3次元位置情報に欠陥が存在すると判定した場合に、制御はステップ94に移行する。ステップ94において、自動制御部62は、ロボット1を停止する指令を送出する。動作検出部53は、ロボット1の停止を検出し、撮像制御部59は、合成制御を実施する。ステップ86,87において、合成部57は、2次元画像または3次元位置情報を合成する。ここでの例では、合成部57は、欠陥が修正された3次元位置情報として、複数の距離画像から合成距離画像を生成する。
 この後に、自動制御部62は、ロボット1を停止する指令を解除する。そして、制御は、ステップ92に戻る。ロボット1が自動で駆動されるために、合成制御が停止して通常撮像制御が開始される。
 ステップ95において、ロボット1の駆動が終了した場合に、制御は、ステップ89に移行する。ステップ89において、作業者は、教示操作盤49の入力部49aの操作により、自動撮像制御を終了する指令を処理部61に送信して、この制御が終了する。
 このように、第2の制御装置の第2の制御では、自動的にロボット1を駆動するために、自動的に対象物の3次元位置情報を生成することができる。なお、動作プログラムに自動撮像制御を開始する指令文および自動撮像制御を停止する指令文が記載されていても構わない。この制御により、動作プログラムに従って、自動的に自動撮像制御を開始したり終了したりすることができる。
 その他の第2の制御装置の構成、作用、および効果は、第1の制御装置と同様であるので、ここでは説明を繰り返さない。
 ところで、本実施の形態の通常撮像制御では、ロボット1を駆動しながら2次元画像を撮像する。このために、ロボット1が駆動している速度が大きい場合には、2次元画像がぶれる場合がある。そこで、通常撮像制御において、ロボット1の駆動速度に応じて露光時間を予め変更する制御を実施することができる。
 動作検出部53がロボット1の動作を検出している期間中に、撮像制御部59は、カメラ31,32の露光時間に対してロボット1が駆動する速度が予め定められた判定値を超えるか否かを判定することができる。撮像制御部59は、カメラ31,32の露光時間に対してロボット1が駆動する速度が予め定められた判定値を超える場合に、カメラ31,32の露光時間を短くする制御を実施することができる。
 例えば、撮像制御部59は、視覚センサ30の移動速度(単位:mm/sec)にカメラ31,32の露光時間(単位:sec)を乗じた変数を算出する。この変数は、露光している時に視覚センサ30が移動する距離に相当する。撮像制御部59は、この変数が予め定められた判定値を超える場合に、カメラ31,32の露光時間に対してロボット1が駆動する速度が予め定められた判定値を超えると判定する。そして、撮像制御部59は、現在の露光時間を短くする制御を実施する。例えば、撮像制御部59は、露光時間を予め定められた割合にて減少する制御を実施する。または、作業者は、上記の変数の値に対する露光時間の表を予め作成することができる。撮像制御部59は、この表に基づいて、露光時間を短くする制御を実施しても構わない。
 上記の第1のロボット装置3において、視覚センサ30は、ロボット1に取り付けられている。そして、3次元位置情報を取得するための対象物は、ロボット1の周りに配置されている物である。この構成を採用することにより、ロボットの位置および姿勢を変更することにより、ロボット1の周りに配置されている物の3次元位置情報を容易に取得することができる。
 図9に、本実施の形態における第2のロボット装置の概略側面図を示す。第2のロボット装置6においては、視覚センサ30の位置および姿勢が固定されている。視覚センサ30は、支持部材69によりロボット1の設置面に固定されている。ロボット1には、作業ツールとしてハンド5が取り付けられている。
 第2のロボット装置6では、ハンド5が3次元位置情報を取得する対象物に相当する。第2のロボット装置6の制御装置は、様々なハンド5の位置および姿勢においてハンド5の表面を撮像する。制御装置は、視覚センサ30の出力に基づいて、ハンド5の表面の3次元位置情報を生成する。
 ロボット装置の制御装置の構成は、第1のロボット装置における第1の制御装置2または第2の制御装置(図2および図7を参照)と同様である。作業者が手動にてロボット1を駆動するときには、図2に示す処理部51を採用することができる。動作プログラムにてロボット1を自動的に駆動するときには、図7に示す処理部61を採用することができる。
 第2のロボット装置6においては、手動または自動により、矢印97a,97bに示すようにロボット1を駆動する。例えば、ハンド5を位置P5a、位置P5b、および位置P5cに移動する。制御装置は、ロボット1の駆動が自動的に制御されている期間中に自動撮像制御を実施する。すなわち、ロボット1が駆動している期間中に、通常撮像制御を実施し、ロボット1が停止した時には、合成制御を実施することができる。手動または自動のいずれの場合においても、視覚センサ30にて撮像する物としてハンド5の画像を撮像する。ハンド5の3次元位置情報が必要な全ての表面を撮像するように、ロボット1の位置および姿勢を変更する。
 ロボット1を駆動して、様々な方向からハンド5を撮像することにより、ハンド5の表面の3次元位置情報を取得することができる。更に、それぞれの3次元位置情報を取得した時のロボット1の位置および姿勢に基づいて、ロボット1の位置および姿勢に対するハンド5の表面の位置情報を取得することができる。例えば、フランジ座標系72におけるハンド5の表面に設定された3次元点の位置を算出することができる。
 作業者は、ハンド5の3次元位置情報を用いてオフラインシュミレーションを行うことができる。例えば、ハンド5が周辺物に接触しないようにロボット1の動作経路を生成する。または、ロボットの動作経路を自動的に生成するシミュレーション装置では、ハンド5が周辺物に接触しないように、自動的にロボット1の動作経路を生成することができる。
 第2のロボット装置のその他の構成、作用、および効果については、第1のロボット装置と同様であるので、ここでは説明を繰り返さない。
 本実施の形態の3次元視覚センサは、ステレオカメラであるが、この形態に限られない。視覚センサとしては、2次元カメラを含む任意の視覚センサを採用することができる。例えば、位相シフト法により対象物の3次元の位置を検出する視覚センサを採用することができる。または、3次元視覚センサとして、対象物までの距離が既知の対象物の2次元画像を取得することにより、対象物の表面の3次元点の位置を算出するセンサを採用することができる。
 上述のそれぞれの制御においては、機能および作用が変更されない範囲において適宜ステップの順序を変更することができる。
 上記の実施の形態は、適宜組み合わせることができる。上述のそれぞれの図において、同一または相等する部分には同一の符号を付している。なお、上記の実施の形態は例示であり発明を限定するものではない。また、実施の形態においては、請求の範囲に示される実施の形態の変更が含まれている。
 1 ロボット
 2 制御装置
 3,6 ロボット装置
 5 ハンド
 P5a,P5b,P5c 位置
 23 位置検出器
 24 演算処理装置
 30 視覚センサ
 P30a,P30b,P30c 位置
 31,32 カメラ
 43 動作制御部
 49 教示操作盤
 49a 入力部
 52 手動制御部
 53 動作検出部
 54 位置情報生成部
 57 合成部
 58 判定部
 59 撮像制御部
 62 自動制御部
 65 架台
 70 3次元点

Claims (9)

  1.  対象物を撮像する2次元カメラを含む3次元視覚センサとロボットとを備えるロボット装置の制御装置であって、
     ロボットの動作状態を検出する動作検出部と、
     2次元カメラの露光条件を変更する撮像制御部と、
     2次元カメラにて撮像された2次元画像に基づいて前記対象物の3次元位置情報を生成する位置情報生成部と、
     複数の2次元画像を合成する制御または複数の3次元位置情報を合成する制御を実施する合成部とを備え、
     前記動作検出部がロボットの動作を検出している期間中に、前記撮像制御部は、予め定められた露光条件にて予め定められた間隔にて2次元画像を撮像し、
     前記動作検出部がロボットの停止を検出した場合に、前記撮像制御部は、露光条件を変更して複数の2次元画像を撮像し、合成部は、複数の2次元画像または複数の3次元位置情報を合成する、制御装置。
  2.  作業者の操作に応じてロボットを手動にて駆動する動作指令を生成する手動制御部を備え、
     作業者が手動にてロボットを停止した時に、前記動作検出部は、ロボットの停止を検出する、請求項1に記載の制御装置。
  3.  ロボットの動作を制御する動作制御部と、
     2次元画像または3次元位置情報に欠陥が有るか否かを判定する判定部と、を備え、
     前記判定部が2次元画像または3次元位置情報に前記欠陥があると判定した場合に、前記動作制御部は、ロボットを停止する、請求項1または2に記載の制御装置。
  4.  ロボットの動作を制御する動作制御部と、
     予め定められた動作プログラムに従って自動的にロボットを駆動する動作指令を生成する自動制御部と、
     2次元画像または3次元位置情報に欠陥があるか否かを判定する判定部と、を備え、
     前記自動制御部の動作指令によりロボットを駆動している期間中に、前記判定部が2次元画像または3次元位置情報に前記欠陥があると判定した場合に、前記動作制御部は、ロボットを停止する、請求項1に記載の制御装置。
  5.  前記動作検出部がロボットの動作を検出している期間中に、前記撮像制御部は、2次元カメラの露光時間に対してロボットが駆動する速度が予め定められた判定値を超える場合に、2次元カメラの露光時間を短くする制御を実施する、請求項1から4のいずれか一項に記載の制御装置。
  6.  前記露光条件は、2次元カメラの露光時間および照明装置の光量の少なくとも一方である、請求項1から5のいずれか一項に記載の制御装置。
  7.  請求項1に記載の制御装置と、
     対象物を撮像する2次元カメラを含む3次元視覚センサと、
     ロボットとを備える、ロボット装置。
  8.  前記3次元視覚センサは、ロボットに取り付けられており、
     前記対象物は、ロボットの周りに配置されている物である、請求項7に記載のロボット装置。
  9.  ロボットに取り付けられた作業ツールを備え、
     前記3次元視覚センサは、支持部材により予め定められた位置に固定されており、
     前記対象物は、前記作業ツールである、請求項7に記載のロボット装置。
PCT/JP2022/022821 2022-06-06 2022-06-06 3次元位置情報を取得するロボット装置の制御装置およびロボット装置 WO2023238199A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2022/022821 WO2023238199A1 (ja) 2022-06-06 2022-06-06 3次元位置情報を取得するロボット装置の制御装置およびロボット装置
TW112116998A TW202348379A (zh) 2022-06-06 2023-05-08 取得三維位置資訊的機器人裝置的控制裝置及機器人裝置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/022821 WO2023238199A1 (ja) 2022-06-06 2022-06-06 3次元位置情報を取得するロボット装置の制御装置およびロボット装置

Publications (1)

Publication Number Publication Date
WO2023238199A1 true WO2023238199A1 (ja) 2023-12-14

Family

ID=89118012

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/022821 WO2023238199A1 (ja) 2022-06-06 2022-06-06 3次元位置情報を取得するロボット装置の制御装置およびロボット装置

Country Status (2)

Country Link
TW (1) TW202348379A (ja)
WO (1) WO2023238199A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013160530A (ja) * 2012-02-01 2013-08-19 Seiko Epson Corp 検査装置、ロボット装置、検査方法及び検査プログラム
JP2019113895A (ja) * 2017-12-20 2019-07-11 ファナック株式会社 ワークを撮像する視覚センサを備える撮像装置
JP2020060533A (ja) * 2018-10-12 2020-04-16 キヤノン株式会社 光学評価装置、および、光学評価方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013160530A (ja) * 2012-02-01 2013-08-19 Seiko Epson Corp 検査装置、ロボット装置、検査方法及び検査プログラム
JP2019113895A (ja) * 2017-12-20 2019-07-11 ファナック株式会社 ワークを撮像する視覚センサを備える撮像装置
JP2020060533A (ja) * 2018-10-12 2020-04-16 キヤノン株式会社 光学評価装置、および、光学評価方法

Also Published As

Publication number Publication date
TW202348379A (zh) 2023-12-16

Similar Documents

Publication Publication Date Title
JP6734253B2 (ja) ワークを撮像する視覚センサを備える撮像装置
US11345042B2 (en) Robot system equipped with video display apparatus that displays image of virtual object in superimposed fashion on real image of robot
JP5032343B2 (ja) 仮想物体を表示する方法および装置、ならびに環境画像に仮想物体を重ね合せるための方法および装置
CN105666505A (zh) 具备扩展现实对应显示器的机器人系统
JP2010112859A (ja) ロボットシステム、ロボット制御装置およびロボット制御方法
CN112549052A (zh) 用于调整机器人支承的部件位置的机器人装置的控制装置
JPH07286820A (ja) 3次元視覚センサを用いた位置計測方法及び位置ずれ補正方法
WO2021177163A1 (ja) 複数のカメラにて撮像された画像に基づいて物体の表面の位置情報を生成する三次元測定装置
WO2023238199A1 (ja) 3次元位置情報を取得するロボット装置の制御装置およびロボット装置
CN112437908A (zh) 使用结构光的深度感测机器手-眼相机
JP3672970B2 (ja) 非接触画像計測システム
KR20050028847A (ko) 결함검출기 및 결함검출방법
JP2012061587A (ja) ロボットのティーチングシステム
CN110097526B (zh) 工件图像生成装置
JP3340143B2 (ja) 研磨ツールの制御装置
JP2020517966A (ja) 対象物を光学的に検査する検査装置、検査装置を備えた製造システム、及び、検査装置を用いて対象物を光学的に検査する方法
JP2000042960A (ja) マニピュレータの遠隔操作装置
JPH0820207B2 (ja) 光学式3次元位置計測方法
JPH11178014A (ja) 液晶プロジェクタ光学モジュールの調整装置および検査装置
WO2022163580A1 (ja) 視覚センサにて取得される3次元の位置情報から断面画像を生成する処理装置および処理方法
JP5200866B2 (ja) ロボットシステム、ロボット制御装置およびロボット制御方法
Galdelli et al. Empowered Optical Inspection by Using Robotic Manipulator in Industrial Applications
WO2024004681A1 (ja) ロボット教示装置、外観検査システムおよびロボット教示方法
JPH05134737A (ja) ロボツトの教示装置
JP2822314B2 (ja) レーザ加工装置

Legal Events

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

Ref document number: 22945709

Country of ref document: EP

Kind code of ref document: A1