WO2023013740A1 - ロボット制御装置、ロボット制御システム、及びロボット制御方法 - Google Patents

ロボット制御装置、ロボット制御システム、及びロボット制御方法 Download PDF

Info

Publication number
WO2023013740A1
WO2023013740A1 PCT/JP2022/030011 JP2022030011W WO2023013740A1 WO 2023013740 A1 WO2023013740 A1 WO 2023013740A1 JP 2022030011 W JP2022030011 W JP 2022030011W WO 2023013740 A1 WO2023013740 A1 WO 2023013740A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
spatial information
calibration
control unit
information acquisition
Prior art date
Application number
PCT/JP2022/030011
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 CN202280053850.0A priority Critical patent/CN117794704A/zh
Publication of WO2023013740A1 publication Critical patent/WO2023013740A1/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
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/404Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4061Avoiding collision or forbidden zones

Definitions

  • the present disclosure relates to a robot control device, a robot control system, and a robot control method.
  • Patent Document 1 Conventionally, there is known a device that sets a calibration range in advance in an image coordinate system (see Patent Document 1, for example).
  • a robot control device includes a control unit that controls a robot.
  • the control unit acquires a real field size of a space information acquisition unit that captures an action space of the robot and the space information of the space information acquisition unit.
  • the controller sets a predetermined first position based on the real field size and the spatial information.
  • the controller generates a calibration position of the robot based on the first position and the real field size.
  • a robot control system includes the robot control device, the robot, and the spatial information acquisition unit.
  • a control unit that controls a robot acquires a real field size of a spatial information acquiring unit that captures an action space of the robot and an image captured by the spatial information acquiring unit.
  • the robot control method includes the controller setting a predetermined first position based on the real field size of the spatial information acquisition unit and the captured image.
  • the robot control method includes the controller generating a calibration position of the robot based on the first position and the real field size of the spatial information acquisition unit.
  • FIG. 1 is a block diagram showing a configuration example of a robot control system according to an embodiment
  • FIG. 1 is a schematic diagram showing a configuration example of a robot control system according to an embodiment
  • FIG. 4 is a schematic diagram showing an example of FOV (Field Of View) of a spatial information acquisition unit
  • FIG. 4 is a schematic diagram showing an example of candidate positions
  • 4 is a flow chart showing an example procedure of a robot control method according to an embodiment
  • the calibration range can be easily set.
  • a robot control system 1 includes a robot 40 , a robot control device 10 and a spatial information acquisition section 20 .
  • the robot 40 operates in a predetermined motion space.
  • the space information acquisition unit 20 generates depth information of the motion space in which the robot 40 moves.
  • the spatial information acquisition unit 20 calculates the distance to the measurement point located on the surface of the object 50 existing in the motion space.
  • the distance from the spatial information acquisition unit 20 to the measurement point is also called depth.
  • Depth information is information about the depth measured for each measurement point. In other words, the depth information is information about the distance to the measurement point located on the surface of the object 50 existing in the motion space.
  • the depth information may be expressed as a depth map that associates the direction viewed from the spatial information acquisition unit 20 and the depth in that direction.
  • the spatial information acquisition unit 20 generates depth information of the motion space based on the (X, Y, Z) coordinate system.
  • the robot control device 10 operates the robot 40 based on the depth information generated by the space information acquisition section 20 .
  • the robot controller 10 operates the robot 40 based on the (X_RB, Y_RB, Z_RB) coordinate system.
  • the (X_RB, Y_RB, Z_RB) coordinate system may be set as the same coordinate system as the (X, Y, Z) coordinate system, or may be set as a different coordinate system.
  • the robot control device 10 causes the spatial information acquisition unit 20 to set the (X, Y, Z) coordinate system.
  • the depth information generated in (X_RB, Y_RB, Z_RB) is used after being converted into the (X_RB, Y_RB, Z_RB) coordinate system.
  • the number of robots 40 and robot control devices 10 is not limited to one as illustrated, but may be two or more. As illustrated, the number of spatial information acquisition units 20 may be one for one motion space, or may be two or more. Each component will be specifically described below.
  • the robot control device 10 includes a control section 11 and a storage section 12 .
  • the control unit 11 may include at least one processor to implement various functions of the robot control device 10 .
  • the processor may execute programs that implement various functions of the robot controller 10 .
  • a processor may be implemented as a single integrated circuit.
  • An integrated circuit is also called an IC (Integrated Circuit).
  • a processor may be implemented as a plurality of communicatively coupled integrated and discrete circuits.
  • the processor may be configured including a CPU (Central Processing Unit).
  • the processor may be configured including a DSP (Digital Signal Processor) or a GPU (Graphics Processing Unit). Processors may be implemented based on various other known technologies.
  • the storage unit 12 may be configured including an electromagnetic storage medium such as a magnetic disk, or may be configured including a memory such as a semiconductor memory or a magnetic memory.
  • the storage unit 12 may be configured as an HDD (Hard Disk Drive) or an SSD (Solid State Drive).
  • the storage unit 12 stores various information, programs executed by the control unit 11, and the like.
  • the storage unit 12 may function as a work memory for the control unit 11 .
  • the control unit 11 may include at least part of the storage unit 12 .
  • the robot control device 10 may further include a communication device configured to be able to communicate with the spatial information acquisition unit 20 and the robot 40 by wire or wirelessly.
  • a communication device may be configured to be able to communicate with communication schemes based on various communication standards.
  • a communication device may be configured according to known communication technologies. A detailed description of the hardware of the communication device and the like is omitted.
  • the functions of the communication device may be realized by one interface, or may be realized by separate interfaces for each connection destination.
  • the control unit 11 may be configured to communicate with the spatial information acquisition unit 20 and the robot 40 .
  • the control unit 11 may be configured including a communication device.
  • the robot 40 includes an arm 42, an end effector 44 attached to the arm 42, and a mark 46 installed on the end effector 44, as illustrated in FIG. Note that the mark 46 may be placed on the arm 42 instead of the end effector 44 .
  • the arm 42 may be configured as, for example, a 6-axis or 7-axis vertical articulated robot.
  • the arm 42 may be configured as a 3-axis or 4-axis horizontal articulated robot or SCARA robot.
  • Arm 42 may be configured as a 2-axis or 3-axis Cartesian robot.
  • Arm 42 may be configured as a parallel link robot or the like.
  • the number of axes forming the arm 42 is not limited to the illustrated one.
  • the end effector 44 may include, for example, a gripping hand configured to grip a work object.
  • the grasping hand may have multiple fingers. The number of fingers of the grasping hand may be two or more. The fingers of the grasping hand may have one or more joints.
  • the end effector 44 may include a suction hand configured to be able to suction a work target.
  • the end effector 44 may include a scooping hand configured to scoop the work object.
  • the end effector 44 may include a tool such as a drill, and may be configured to perform various machining operations such as drilling holes in a work object.
  • the end effector 44 is not limited to these examples, and may be configured to perform various other operations.
  • the robot 40 can control the position of the end effector 44 by operating the arm 42 .
  • the end effector 44 may have an axis that serves as a reference for the direction in which it acts on the work object. If the end effector 44 has an axis, the robot 40 can control the orientation of the end effector 44 axis by moving the arm 42 .
  • the robot 40 controls the start and end of the motion of the end effector 44 acting on the work piece.
  • the robot 40 can move or process a work object by controlling the position of the end effector 44 or the direction of the axis of the end effector 44 and controlling the motion of the end effector 44 .
  • the robot 40 may further include sensors that detect the state of each component of the robot 40 .
  • the sensors may detect information regarding the actual position or orientation of each component of the robot 40 or the velocity or acceleration of each component of the robot 40 .
  • the sensors may detect forces acting on each component of the robot 40 .
  • the sensors may detect the current flowing through the motors that drive each component of the robot 40 or the torque of the motors.
  • the sensors can detect information resulting from the actual movement of robot 40 .
  • the robot control device 10 can grasp the actual operation result of the robot 40 by acquiring the detection result of the sensor. That is, the robot control device 10 can acquire the state of the robot 40 based on the detection result of the sensor.
  • the robot control device 10 recognizes the position of the mark 46 or the position of the end effector 44 on which the mark 46 is installed based on the image of the mark 46 captured by the spatial information acquisition unit 20 . Further, the robot control device 10 recognizes the state of the robot 40 based on the image of the mark 46 captured by the space information acquisition section 20 . The robot control device 10 performs calibration of the robot 40 by comparing the state of the robot 40 obtained based on the detection result of the sensor and the state of the robot 40 obtained based on the image of the mark 46 . can.
  • the spatial information acquisition unit 20 acquires spatial information regarding the motion space of the robot 40 .
  • the spatial information acquisition unit 20 may photograph the motion space and acquire an image of the motion space as the spatial information.
  • the spatial information acquisition unit 20 may photograph an object 50 existing in the motion space, as illustrated in FIG. 2 .
  • the spatial information acquisition section 20 may be configured as a camera.
  • the 3D stereo camera photographs an object 50 existing in the motion space, calculates the distance to a measurement point located on the surface of the object 50 existing in the motion space as depth, and generates depth information.
  • the spatial information acquisition section 20 may be configured as a 3D stereo camera.
  • the spatial information acquisition unit 20 may be configured as a LiDAR (light detection and ranging).
  • the spatial information acquisition unit 20 may acquire depth information of the motion space as the spatial information.
  • the spatial information acquisition unit 20 is not limited to these devices and may be configured as various devices.
  • the spatial information acquisition unit 20 may acquire various types of information as the spatial information, without being limited to the image or depth information of the motion space.
  • the spatial information acquisition section 20 may include an imaging device.
  • the spatial information acquisition section 20 may further include an optical system.
  • the space information acquisition unit 20 may output the captured image of the motion space to the robot control device 10 .
  • the space information acquisition unit 20 may generate depth information in the motion space of the robot 40 and output it to the robot control device 10 .
  • the space information acquisition unit 20 may generate point group information in the motion space of the robot 40 and output it to the robot control device 10 . That is, the spatial information acquisition unit 20 may output the spatial information in the form of point cloud data.
  • the point cloud information may have spatial information.
  • the point group information is information on a set of measurement points located on the surface of the object 50 existing in the motion space, and is information including coordinate information or color information on each measurement point.
  • the point group information can also be said to be data representing the object 50 in the measurement space with a plurality of points. Since the spatial information is in the form of point cloud data, the data density can be made smaller than the spatial information based on the initial data acquired by the spatial information acquiring section 20 .
  • the spatial information acquisition unit 20 has an FOV 70 (Field Of View) exemplified as the range of the two-dot chain line in FIG.
  • the FOV 70 corresponds to the imaging range (angle of view) of the spatial information acquisition section 20 .
  • the FOV 70 is determined based on the central axis 70A of the spatial information acquisition section 20, the viewing angle 71 in the depth direction, and the viewing angle 72 in the width direction.
  • the center axis 70A can also be said to be a set of points positioned at the center of the FOV 70 (angle of view).
  • the shape of the FOV 70 in FIG. 3 is a square pyramid.
  • the shape of the FOV 70 is not limited to a quadrangular pyramid, and may be other various shapes.
  • FOV 70 may include center location 70C.
  • the central position 70C is located on the central axis 70A.
  • the center position 70C may be located in the center of the working range of the robot 40 .
  • the spatial information acquisition unit 20 can photograph the range included in the FOV70.
  • the actual field of view size of the spatial information acquisition unit 20 is determined based on the FOV 70 of the spatial information acquisition unit 20 and depth information.
  • the robot control device 10 determines the position of the mark 46 of the robot 40 based on the actual field of view size of the spatial information acquisition unit 20 and the image including the mark 46 of the robot 40 captured by the spatial information acquisition unit 20. and attitude can be obtained.
  • the robot control device 10 can calculate the position and orientation of the mark 46 based on the image by analyzing the image of the mark 46 using a predetermined algorithm.
  • a predetermined algorithm may include, for example, a mathematical formula or a table, or may include a program specifying arithmetic processing.
  • the predetermined algorithm may include parameters for correcting the image-based calculation results.
  • the robot control device 10 operates the robot 40 to act on a work target such as an object 50 existing in the action space, or operates the robot 40 to avoid the object 50 .
  • the robot control device 10 operates the robot 40 so as to act on the object 50 or avoid the object 50 based on the photographed image of the object 50 captured by the spatial information acquisition unit 20 .
  • the control unit 11 of the robot control device 10 can acquire the state of the robot 40 based on the position and orientation of the mark 46 captured in the image captured by the space information acquisition unit 20, and can acquire the positional relationship between the robot 40 and the object 50. .
  • the control unit 11 acquires the state of the robot 40 based on a sensor of the robot 40 such as an encoder installed on the arm 42 or the like.
  • the state based on the sensor of the robot 40 expresses the position and orientation of the robot 40 with higher accuracy than the state based on the captured image of the spatial information acquisition unit 20 .
  • the control unit 11 can control the robot 40 in the motion space with high accuracy by matching the state of the robot 40 based on the captured image of the space information acquisition unit 20 with the state of the robot 40 based on the sensor of the robot 40.
  • the work of matching the state of the robot 40 based on the captured image of the spatial information acquisition unit 20 with the state of the robot 40 based on the sensor of the robot 40 is also called calibration.
  • the control unit 11 performs calibration so that the (X, Y, Z) coordinate system of the spatial information acquisition unit 20 matches the (X_RB, Y_RB, Z_RB) coordinate system of the robot 40 .
  • the control unit 11 estimates the relative positional relationship between the coordinate system of the spatial information acquiring unit 20 and the coordinate system of the robot 40, and converts the coordinate system of the spatial information acquiring unit 20 to the coordinate system of the robot 40 based on the estimated relative positional relationship. Good to match.
  • the control unit 11 may perform calibration using at least part of the FOV 70 illustrated in FIG. 3 as the calibration range. In this embodiment, the control unit 11 performs calibration within the calibration range 60 shown in FIG.
  • the calibration range 60 is also shown in FIG. 2 as a three-dimensional area of two-dot chain lines.
  • a calibration range 60 corresponds to a range in which the robot 40 is calibrated.
  • Calibration range 60 may include the work area of robot 40 .
  • the calibration range 60 may be the range where the work area of the robot 40 and the FOV 70 overlap.
  • control unit 11 sets a point for performing calibration by moving the mark 46 of the robot 40 within the calibration range 60 .
  • the points for performing calibration are also referred to as calibration positions.
  • the control unit 11 moves the mark 46 of the robot 40 to the calibration position and causes the spatial information acquisition unit 20 to photograph the mark 46 .
  • the control unit 11 calculates the position and orientation of the mark 46 based on the image of the mark 46 .
  • the control unit 11 adjusts the position and orientation of the mark 46 based on the image so that the position and orientation of the mark 46 calculated based on the image match the position and orientation of the mark 46 determined based on the detection result of the sensor of the robot 40 .
  • Correct position and posture. Correction of the position and orientation of the mark 46 based on the image corresponds to calibration.
  • the position and orientation of mark 46 is also referred to as the tip position and orientation.
  • Calibration corresponds to correction of tip position and orientation.
  • a calibration position corresponds to a position for correcting the tip position and orientation.
  • control unit 11 may perform calibration as described below.
  • the control unit 11 generates control information for the robot 40 for moving the mark 46 of the robot 40 to the calibration position.
  • the control unit 11 operates the robot 40 based on the control information to move the mark 46 of the robot 40 to the calibration position.
  • the control unit 11 acquires an image of the mark 46 from the spatial information acquisition unit 20 .
  • the control unit 11 calculates the position and orientation of the mark 46 based on the image.
  • the position and orientation of the mark 46 calculated based on the image are also referred to as the tip position and orientation based on the image.
  • the control unit 11 calculates the position and orientation of the mark 46 determined based on the detection result of the sensor of the robot 40 .
  • the position and orientation of the mark 46 calculated based on the sensor detection results are also referred to as the tip position and orientation based on the sensor.
  • the control unit 11 compares the tip position/orientation based on the image and the tip position/orientation based on the sensor.
  • the control unit 11 corrects the tip position/orientation based on the image so that the tip position/orientation based on the image matches the tip position/orientation based on the sensor.
  • the control unit 11 may correct the algorithm for calculating the tip position/orientation based on the image.
  • the control unit 11 may correct the parameters included in the algorithm, or may correct the formula, table, or program. When a plurality of calibration positions are set, the control unit 11 moves the robot 40 to each calibration position, acquires an image of the mark 46 at each calibration position, and determines the tip position/orientation based on the image. to correct.
  • the location to be calibrated is not limited to the position and orientation of the mark 46 . That is, the control unit 11 stores in advance the position of the mark 46 and the positional relationship between the calibration target portion, which is a part of the robot 40 to be calibrated, and performs calibration based on the position and orientation of the mark 46 based on the image. Alternatively, the position and orientation of the motion target portion may be calculated. Then, calibration can be performed by comparing the position and orientation of the part to be calibrated based on the detection result of the sensor of the robot 40 . Therefore, it is possible to calibrate other than the position and orientation of the mark 46 . In the above example, the position and orientation of the tip of the robot 40 is the target of calibration. .
  • the control unit 11 sets the calibration range 60 in advance before performing calibration. Further, the control unit 11 sets calibration positions included in the calibration range 60 . The controller 11 sets the calibration position within the calibration range 60 .
  • the control unit 11 generates control information for the robot 40 so as to move the robot 40 to the tip position/orientation specified by the calibration position.
  • the control unit 11 generates, as a calibration item, information specifying the tip position/orientation when the robot 40 is moved to the calibration position and the recognition result of the mark 46 of the robot 40 .
  • the calibration item is, for example, information about coordinates.
  • the calibration item is, for example, coordinate information indicating the tip position and orientation based on the detection result of the sensor of the robot 40 when the robot 40 is moved to the calibration position, or is recognized by the spatial information acquisition unit 20. coordinate information indicating the position and orientation of the tip based on the recognition result of the mark 46.
  • the control unit 11 performs calibration so that the tip position/orientation calibration item regarding the recognition result of the mark 46 matches the tip position/orientation calibration item regarding the sensor detection result of the robot 40 . Specifically, the controller 11 moves the robot 40 to the calibration position. The control unit 11 acquires the recognition result of the mark 46 of the robot 40 when the robot 40 moves to the calibration position by the space information acquisition unit 20 . The control unit 11 calculates the relative positional relationship of the tip position/orientation calibration item acquired as the recognition result of the mark 46 with respect to the tip position/orientation calibration item based on the sensor of the robot 40 . The relative positional relationship corresponds to the coordinate difference and angle difference between both calibration items.
  • the control unit 11 controls the spatial information acquisition unit so that the coordinate error and angle error corresponding to the relative positional relationship between the two calibration items are zero or close to zero (that is, the error is less than a predetermined value).
  • the coordinate system of 20 is corrected to match the coordinate system of robot 40 .
  • the control unit 11 matches the recognition result of the mark 46 when the robot 40 moves to the calibration position with the tip position/orientation specified by the sensor of the robot 40, thereby adjusting the relative positional relationship. can be calculated.
  • the control unit 11 may match the tip position/orientation specified by the sensor of the robot 40 with the tip position/orientation recognized by the recognition result of the mark 46 .
  • the control unit 11 can set the calibration position by generating a calibration item. Conversely, the calibration position corresponds to the position to move the robot 40 to generate the calibration item. By applying the calibration item to the control of the robot 40, the controller 11 can move the robot 40 to the calibration position and perform calibration.
  • the control unit 11 may generate calibration positions as described below.
  • the control unit 11 acquires information on the real field size of the spatial information acquiring unit 20 or information on the FOV 70 from the spatial information acquiring unit 20 .
  • the control unit 11 sets the calibration range 60 based on the actual field of view size or the FOV 70 of the spatial information acquisition unit 20 and the work area of the robot 40 .
  • the controller 11 may set the calibration range 60 based on the position of the object 50 in the motion space of the robot 40 .
  • the control unit 11 may set the calibration range 60 based on the depth information or point group information of the object 50 detected by the spatial information acquisition unit 20 .
  • the shape of the calibration range 60 is set to a truncated quadrangular pyramid shape.
  • the shape of the calibration range 60 is not limited to the truncated quadrangular pyramid shape, and may be set to various other shapes.
  • the calibration range 60 has a height (H) corresponding to the length in the direction along the central axis 70A of the spatial information acquisition unit 20 and a depth (D) corresponding to the length in the depth direction of the bottom surface of the truncated square pyramid. and a width (W) corresponding to the length in the width direction.
  • H can be appropriately determined based on the motion space of the robot 40 .
  • H can be determined based on the height of the object 50, for example.
  • the control unit 11 moves the robot 40 to the first position.
  • the first position is set on the central axis 70A.
  • the first position may be preset, for example. In this embodiment, it is assumed that the first position is set to the center position 70C, for example.
  • the control unit 11 generates control information for operating the robot 40 so that the position and orientation of the mark 46 based on the image of the mark 46 of the robot 40 are at the predetermined tip position and orientation at the first position.
  • the control unit 11 moves the robot 40 to the first position by controlling the robot 40 based on the control information.
  • the first position may be the center position 70C of the FOV 70 illustrated in FIG.
  • the control unit 11 acquires an image of the mark 46 when the robot 40 moves to the first position, and calculates the position and orientation of the mark 46 as the tip position and orientation based on the image. Also, the control unit 11 calculates the tip position and orientation based on the sensor. The control unit 11 generates candidates for the calibration position within the calibration range 60 based on the tip position/orientation based on the image of the first position and the tip position/orientation based on the sensor.
  • the control unit 11 generates positions that are candidates for calibration positions within the calibration range 60 .
  • the control unit 11 generates the first candidate position (P1) to the ninth candidate position (P9) within the calibration range 60, as shown in FIG. 4, for example.
  • the number of candidate positions is not limited to nine, and may be eight or less or ten or more.
  • a first candidate position (P1) is set to match the first position.
  • Candidate positions such as P1-P9 are also collectively referred to as second positions.
  • the number of second positions (candidate positions) may be determined based on the number of grid intervals in each of the W, D, and H directions of the calibration range 60 .
  • the number of grid intervals represents how many divisions the calibration range 60 is divided along the direction. In the example of FIG.
  • the number of grid intervals (GW) in the W direction is set to two.
  • the number of grid intervals (GD) in the D direction is set to two.
  • the grid spacing number (GH) in the H direction is set to one.
  • P1 to P9 on the bottom surface of the truncated quadrangular pyramid representing the calibration range 60, there are nine points (P1 to P9) including a point dividing the side in the W direction and the D direction (midpoint of the side) and the corner. It is set as the second position (candidate position).
  • P1 is set at the same point as the center position 70C.
  • the coordinates of P2 to P9 are determined based on the coordinates of P1.
  • the coordinates of P1 are represented by (P1X, P1Y, P1Z)
  • the coordinates of P2 are represented by (P1X-W/GW, P1Y-D/GD, P1Z).
  • the coordinates of P3 are represented by (P1X, P1Y-D/GD, P1Z).
  • the coordinates of P4 are represented by (P1X+W/GW, P1Y-D/GD, P1Z).
  • the coordinates of P5 are represented by (P1X-W/GW, P1Y, P1Z).
  • the coordinates of P6 are represented by (P1X+W/GW, P1Y, P1Z).
  • the coordinates of P7 are represented by (P1X-W/GW, P1Y+D/GD, P1Z).
  • the coordinates of P8 are represented by (P1X, P1Y+D/GD, P1Z).
  • the coordinates of P9 are represented by (P1X+W/GW, P1Y+D/GD, P1Z).
  • nine points including the point dividing the side in the W direction and the D direction (midpoint of the side) and the corner are set as second positions (candidate positions). be done.
  • the control unit 11 estimates the state of the robot 40 when the robot 40 moves to the second position (candidate position). That is, the control unit 11 calculates the state of the robot 40 assuming that the robot 40 moves to each second position (each candidate position). Then, the control unit 11 determines whether or not the robot 40 can be calibrated at each second position.
  • the control unit 11 assumes that the state of the robot 40 when it is assumed to move to the second position (candidate position) is a state in which the robot 40 is not in contact with the object 50, is in a joint movable range, and is not in a singular point state.
  • the robot 40 can be calibrated, and the second position (candidate position) is registered as the calibration position.
  • the control unit 11 stores the tip position and orientation when the robot 40 is moved to the second position (candidate position) and the recognition result of the mark 46 of the robot 40 . is generated as a calibration item.
  • the control unit 11 may determine whether or not to collectively register all of the second positions (candidate positions) as calibration positions.
  • the control unit 11 may determine whether to register each second position (each candidate position) as a calibration position. The control unit 11 may determine that the state of the robot 40 is not joint-restricted when the numerical value representing the angle of the joint of the robot 40 is within the range of motion. The control unit 11 may determine that the state of the robot 40 is the joint-restricted state when the numerical value representing the angle of the joint of the robot 40 is outside the range of motion.
  • a singular point corresponds to a posture of the robot 40 where the robot 40 is structurally uncontrollable. If the trajectory for operating the robot 40 includes a singular point, the robot 40 moves (runs away) at high speed near the singular point and stops at the singular point.
  • the singular points of the robot 40 are the following three types (1) to (3). (1) Points outside the work area when controlling the robot 40 to near the outer limits of the work area. (The work area is the area corresponding to the motion space of the robot 40.) (2) Points when controlling the robot 40 directly above and below the robot base even within the work area. (3) A point where the joint angle one before the tip joint of the arm 42 of the robot 40 is zero or 180 degrees (wrist alignment singular point).
  • the control unit 11 may determine that the state of the robot 40 is the state of singularity when the numerical value representing the state of the robot 40 matches the numerical value representing the state of singularity.
  • the control unit 11 may determine that the state of the robot 40 is the state of singularity when the difference between the numerical value representing the state of the robot 40 and the numerical value representing the state of singularity is less than a predetermined value.
  • the numerical value representing the state of the robot 40 may include, for example, the angle of the joint of the arm 42 or the torque of the motor that drives the robot 40 .
  • control unit 11 sets the calibration range 60 and sets the calibration position within the calibration range 60 . Further, the control unit 11 can generate a calibration item as information specifying the tip position and orientation of the robot 40 and the recognition result of the mark 46 of the robot 40 when the robot 40 is moved to the calibration position.
  • the control unit 11 of the robot control device 10 may execute a robot control method including the procedures of the flowchart illustrated in FIG. 5 .
  • the robot control method may be implemented as a robot control program that is executed by a processor that configures the control unit 11 .
  • the robot control program may be stored on a non-transitory computer-readable medium.
  • the control unit 11 acquires information about the real field size of the spatial information acquisition unit 20 or the FOV 70 (step S1).
  • the control unit 11 acquires the spatial information of the photographed image in which the mark 46 of the robot 40 is shown (step S2).
  • the controller 11 moves the robot 40 to the first position (step S3).
  • the control unit 11 calculates all candidate positions (step S4).
  • the control unit 11 determines whether the robot 40 contacts the object 50 in the motion space in the state of the robot 40 assuming that the robot 40 is moved to each position calculated in the procedure of step S4 (step S5). . If the robot 40 touches the object 50 assuming that the robot 40 is moved to each position calculated in the procedure of step S4 (step S5: YES), the controller 11 proceeds to the procedure of step S9. If the robot 40 does not come into contact with the object 50 when it is assumed that the robot 40 is moved to each position calculated in the procedure of step S4 (step S5: NO), the controller 11 moves each position calculated in the procedure of step S4. It is determined whether the robot 40 is out of the range of joint motion (step S6).
  • step S6 If the robot 40 is out of the range of joint motion when it is assumed that the robot 40 is moved to each position calculated in the procedure of step S4 (step S6: YES), the controller 11 performs the procedure of step S9. proceed to If the robot 40 is not out of the joint range of motion when it is assumed that the robot 40 is moved to each position calculated in the procedure of step S4 (step S6: NO), the control unit 11 performs In the state of the robot 40 when it is assumed that the robot 40 is moved to each calculated position, it is determined whether the robot 40 is in a state of singularity (step S7).
  • step S7: YES If the robot 40 is in a state of singularity when it is assumed that the robot 40 is moved to each position calculated in the procedure of step S4 (step S7: YES), the controller 11 proceeds to the procedure of step S9. . If the robot 40 is not in a state of singularity when it is assumed that the robot 40 is moved to each position calculated in the procedure of step S5 (step S7: NO), the control unit 11 moves the robot 40 to the position of step S5. It can be determined that even if it moves to each position calculated in the procedure, it does not come into contact with the object 50, is not out of the range of motion of the joint, and is not in a singular point state.
  • the control unit 11 generates, as a calibration position, information specifying the tip position/orientation and the recognition result of the mark 46 of the robot 40 when the robot 40 is moved to each position calculated in the procedure of step S4 (step S8). ). After completing the procedure of step S8, the control unit 11 ends the execution of the procedure of the flowchart of FIG. If the robot 40 contacts the object 50 assuming that the robot 40 is moved to each position calculated in the procedure of step S5 (step S5: YES), the control unit 11 moves the robot 40 out of the range of motion of the joint.
  • step S6 YES
  • step S7 YES
  • step S9 each position calculated in the procedure of step S4 is used as the calibration position is not registered as (step S9).
  • the control unit 11 may decide whether or not to collectively register all positions calculated in the procedure of step S4 as calibration positions.
  • the control unit 11 may determine whether to register each position calculated in the procedure of step S5 as a calibration position.
  • the calibration position is generated based on the spatial information such as the captured image of the spatial information acquisition section 20 .
  • the calibration positions can be generated without the operator's visual work. That is, calibration positions can be generated automatically.
  • a calibration range 60 is a range that includes the calibration positions. As a result, the calibration range 60 can be easily set.
  • a simulation based on the actual field-of-view size or the FOV 70 of the spatial information acquisition unit 20 is executed.
  • a calibration position can then be generated to avoid collisions with obstacles such as the object 50 in the motion space of the robot 40 based on the simulation.
  • a calibration position can be generated so that the robot 40 does not fall outside the range of motion of the joint.
  • a calibration position can be generated so that the robot 40 is not in a state of singularity. In this way, calibration positions can be generated without actually moving the robot 40 . As a result, calibration positions can be efficiently generated.
  • Embodiments according to the present disclosure are not limited to any specific configuration of the embodiments described above. Embodiments of the present disclosure extend to any novel feature or combination thereof described in the present disclosure or any novel method or process step or combination thereof described. be able to.
  • robot control system 10 robot control device (11: control unit, 12: storage unit) 20 spatial information acquisition unit 40 robot (42: arm, 44: end effector, 46: mark) 50 object 60 calibration range 70 FOV (70A: center axis, 70C: center position, 71: viewing angle in depth direction, 72: viewing angle in width direction)

Abstract

ロボット制御装置は、制御部を備える。制御部は、ロボットの動作空間を撮影する空間情報取得部の実視野サイズと、空間情報取得部の空間情報とを取得し、実視野サイズと空間情報とに基づいて、所定の第1位置を設定し、第1位置と実視野サイズとに基づいて、ロボットのキャリブレーション位置を生成する。

Description

ロボット制御装置、ロボット制御システム、及びロボット制御方法 関連出願へのクロスリファレンス
 本出願は、日本国特許出願2021-128475号(2021年8月4日出願)の優先権を主張するものであり、当該出願の開示全体を、ここに参照のために取り込む。
 本開示は、ロボット制御装置、ロボット制御システム、及びロボット制御方法に関する。
 従来、予め画像座標系でキャリブレーション範囲を設定する装置が知られている(例えば特許文献1参照)。
特開2018-111166号公報
 本開示の一実施形態に係るロボット制御装置は、ロボットを制御する制御部を備える。前記制御部は、前記ロボットの動作空間を撮影する空間情報取得部の実視野サイズと、前記空間情報取得部の空間情報とを取得する。前記制御部は、前記実視野サイズと前記空間情報とに基づいて、所定の第1位置を設定する。前記制御部は、前記第1位置と前記実視野サイズとに基づいて、前記ロボットのキャリブレーション位置を生成する。
 本開示の一実施形態に係るロボット制御システムは、前記ロボット制御装置と、前記ロボットと、前記空間情報取得部とを備える。
 本開示の一実施形態に係るロボット制御方法は、ロボットを制御する制御部が、前記ロボットの動作空間を撮影する空間情報取得部の実視野サイズと、前記空間情報取得部の撮影画像とを取得することを含む。前記ロボット制御方法は、前記制御部が、前記空間情報取得部の実視野サイズと撮影画像とに基づいて、所定の第1位置を設定することを含む。前記ロボット制御方法は、前記制御部が、前記第1位置と前記空間情報取得部の実視野サイズとに基づいて、前記ロボットのキャリブレーション位置を生成することを含む。
一実施形態に係るロボット制御システムの構成例を示すブロック図である。 一実施形態に係るロボット制御システムの構成例を示す模式図である。 空間情報取得部のFOV(Field Of View)の一例を示す模式図である。 候補位置の例を示す模式図である。 一実施形態に係るロボット制御方法の手順例を示すフローチャートである。
 ロボットの動作範囲内においてロボットが動作できない範囲を避けてキャリブレーション範囲を設定するために、目視確認等の煩雑な作業が必要となる。キャリブレーション範囲の簡便な設定が求められる。本開示の一実施形態に係るロボット制御装置、ロボット制御システム、及びロボット制御方法によれば、キャリブレーション範囲が簡便に設定され得る。
(ロボット制御システム1の概要)
 図1及び図2に例示されるように、一実施形態に係るロボット制御システム1は、ロボット40と、ロボット制御装置10と、空間情報取得部20とを備える。ロボット40は、所定の動作空間において動作する。空間情報取得部20は、ロボット40が動作する動作空間のデプス情報を生成する。空間情報取得部20は、後述するように、動作空間に存在する物体50の表面に位置する測定点までの距離を算出する。空間情報取得部20から測定点までの距離は、デプスとも称される。デプス情報は、各測定点について測定したデプスに関する情報である。言い換えれば、デプス情報は、動作空間に存在する物体50の表面に位置する測定点までの距離に関する情報である。デプス情報は、空間情報取得部20から見た方向とその方向のデプスとを関連づけたデプスマップとして表されてもよい。空間情報取得部20は、(X,Y,Z)座標系に基づいて動作空間のデプス情報を生成する。ロボット制御装置10は、空間情報取得部20で生成されたデプス情報に基づいてロボット40を動作させる。ロボット制御装置10は、(X_RB,Y_RB,Z_RB)座標系に基づいてロボット40を動作させる。
 (X_RB,Y_RB,Z_RB)座標系は、(X,Y,Z)座標系と同じ座標系として設定されてもよいし、異なる座標系として設定されてもよい。(X_RB,Y_RB,Z_RB)座標系が(X,Y,Z)座標系と異なる座標系として設定される場合、ロボット制御装置10は、空間情報取得部20で(X,Y,Z)座標系で生成されたデプス情報を(X_RB,Y_RB,Z_RB)座標系に変換して用いる。
 ロボット40及びロボット制御装置10の数は、例示されるように1台に限られず2台以上であってもよい。空間情報取得部20の数は、例示されるように、1つの動作空間に対して1台であってもよいし、2台以上であってもよい。以下、各構成部が具体的に説明される。
<ロボット制御装置10>
 ロボット制御装置10は、制御部11と、記憶部12とを備える。
 制御部11は、ロボット制御装置10の種々の機能を実現するために、少なくとも1つのプロセッサを含んで構成されてよい。プロセッサは、ロボット制御装置10の種々の機能を実現するプログラムを実行しうる。プロセッサは、単一の集積回路として実現されてよい。集積回路は、IC(Integrated Circuit)とも称される。プロセッサは、複数の通信可能に接続された集積回路及びディスクリート回路として実現されてよい。プロセッサは、CPU(Central Processing Unit)を含んで構成されてよい。プロセッサは、DSP(Digital Signal Processor)又はGPU(Graphics Processing Unit)を含んで構成されてもよい。プロセッサは、他の種々の既知の技術に基づいて実現されてよい。
 記憶部12は、磁気ディスク等の電磁記憶媒体を含んで構成されてよいし、半導体メモリ又は磁気メモリ等のメモリを含んで構成されてもよい。記憶部12は、HDD(Hard Disk Drive)として構成されてもよいしSSD(Solid State Drive)として構成されてもよい。記憶部12は、各種情報及び制御部11で実行されるプログラム等を格納する。記憶部12は、制御部11のワークメモリとして機能してよい。制御部11が記憶部12の少なくとも一部を含んで構成されてもよい。
 ロボット制御装置10は、空間情報取得部20及びロボット40と有線又は無線で通信可能に構成される通信デバイスを更に備えてもよい。通信デバイスは、種々の通信規格に基づく通信方式で通信可能に構成されてよい。通信デバイスは、既知の通信技術により構成することができる。通信デバイスのハードウェア等の詳細な説明は省略される。通信デバイスの機能は、1つのインタフェースによって実現されてもよいし、接続先別にそれぞれ別体のインタフェースによって実現されてもよい。制御部11が空間情報取得部20及びロボット40と通信可能に構成されてもよい。制御部11が通信デバイスを含んで構成されてもよい。
<ロボット40>
 ロボット40は、図2に例示されるように、アーム42と、アーム42に取り付けられるエンドエフェクタ44と、エンドエフェクタ44に設置されているマーク46とを備える。なお、マーク46は、エンドエフェクタ44ではなく、アーム42に設置されていてもよい。
 アーム42は、例えば、6軸又は7軸の垂直多関節ロボットとして構成されてよい。アーム42は、3軸又は4軸の水平多関節ロボット又はスカラロボットとして構成されてもよい。アーム42は、2軸又は3軸の直交ロボットとして構成されてもよい。アーム42は、パラレルリンクロボット等として構成されてもよい。アーム42を構成する軸の数は、例示したものに限られない。
 エンドエフェクタ44は、例えば、作業対象物を把持できるように構成される把持ハンドを含んでよい。把持ハンドは、複数の指を有してよい。把持ハンドの指の数は、2つ以上であってよい。把持ハンドの指は、1つ以上の関節を有してよい。エンドエフェクタ44は、作業対象物を吸着できるように構成される吸着ハンドを含んでもよい。エンドエフェクタ44は、作業対象物を掬うことができるように構成される掬いハンドを含んでもよい。エンドエフェクタ44は、ドリル等の工具を含み、作業対象物に穴を開ける作業等の種々の加工を実施できるように構成されてもよい。エンドエフェクタ44は、これらの例に限られず、他の種々の動作ができるように構成されてよい。
 ロボット40は、アーム42を動作させることによって、エンドエフェクタ44の位置を制御できる。エンドエフェクタ44は、作業対象物に対して作用する方向の基準となる軸を有してもよい。エンドエフェクタ44が軸を有する場合、ロボット40は、アーム42を動作させることによって、エンドエフェクタ44の軸の方向を制御できる。ロボット40は、エンドエフェクタ44が作業対象物に作用する動作の開始及び終了を制御する。ロボット40は、エンドエフェクタ44の位置、又は、エンドエフェクタ44の軸の方向を制御しつつ、エンドエフェクタ44の動作を制御することによって、作業対象物を動かしたり加工したりすることができる。
 ロボット40は、ロボット40の各構成部の状態を検出するセンサを更に備えてよい。センサは、ロボット40の各構成部の現実の位置若しくは姿勢、又は、ロボット40の各構成部の速度若しくは加速度に関する情報を検出してよい。センサは、ロボット40の各構成部に作用する力を検出してもよい。センサは、ロボット40の各構成部を駆動するモータに流れる電流又はモータのトルクを検出してもよい。センサは、ロボット40の実際の動作の結果として得られる情報を検出できる。ロボット制御装置10は、センサの検出結果を取得することによって、ロボット40の実際の動作の結果を把握することができる。つまり、ロボット制御装置10は、センサの検出結果に基づいてロボット40の状態を取得できる。
 ロボット制御装置10は、空間情報取得部20でマーク46を撮影した画像に基づいてマーク46の位置、又は、マーク46が設置されているエンドエフェクタ44の位置を認識する。また、ロボット制御装置10は、空間情報取得部20でマーク46を撮影した画像に基づいてロボット40の状態を認識する。ロボット制御装置10は、センサの検出結果に基づいて取得したロボット40の状態と、マーク46を写した画像に基づいて取得したロボット40の状態とを比較することによって、ロボット40のキャリブレーションを実行できる。
<空間情報取得部20>
 空間情報取得部20は、ロボット40の動作空間に関する空間情報を取得する。空間情報取得部20は、動作空間を撮影し、空間情報として動作空間の画像を取得してよい。空間情報取得部20は、図2に例示されるように、動作空間に存在する物体50を撮影してよい。空間情報取得部20は、カメラとして構成されてよい。3Dステレオカメラは、動作空間に存在する物体50を撮影し、動作空間に存在する物体50の表面に位置する測定点までの距離をデプスとして算出し、デプス情報を生成する。空間情報取得部20は、3Dステレオカメラとして構成されてもよい。空間情報取得部20は、LiDAR(light detection and ranging)として構成されてもよい。LiDARは、動作空間に存在する物体50の表面に位置する測定点までの距離を測定し、デプス情報を生成する。つまり、空間情報取得部20は、空間情報として動作空間のデプス情報を取得してよい。空間情報取得部20は、これらに限られず種々のデバイスとして構成されてもよい。空間情報取得部20は、空間情報として、動作空間の画像又はデプス情報に限られず他の種々の情報を取得してよい。空間情報取得部20は、撮像素子を備えてよい。空間情報取得部20は、光学系を更に備えてよい。空間情報取得部20は、動作空間を撮影した画像をロボット制御装置10に出力してよい。空間情報取得部20は、ロボット40の動作空間におけるデプス情報を生成してロボット制御装置10に出力してもよい。空間情報取得部20は、ロボット40の動作空間における点群情報を生成してロボット制御装置10に出力してもよい。すなわち、空間情報取得部20は、空間情報を、点群データの形式で出力してもよい。言い換えれば、点群情報は、空間情報を有していてもよい。点群情報は、動作空間に存在する物体50の表面に位置する各測定点の集合の情報であり、各測定点の座標情報又は色情報を含む情報である。点群情報は、測定空間内の物体50を複数の点で表すデータであるともいえる。空間情報が点群データの形式であることによって、空間情報取得部20で取得された初期データに基づく空間情報よりも、データ密度を小さくすることができる。
 空間情報取得部20は、図3に二点鎖線の範囲として例示されるFOV70(Field Of View)を有する。FOV70は、空間情報取得部20の撮影範囲(画角)に対応する。FOV70は、空間情報取得部20の中心軸70Aと、奥行方向の視野角71と、幅方向の視野角72とに基づいて定まる。中心軸70Aは、FOV70(画角)の中心に位置する点の集合ともいえる。図3においてFOV70の形状は、四角錐である。FOV70の形状は、四角錐に限られず他の種々の形状であり得る。FOV70は、中心位置70Cを含んでよい。中心位置70Cは、中心軸70Aの上に位置する。中心位置70Cは、ロボット40の作業範囲の中央に位置してもよい。
 空間情報取得部20は、FOV70に含まれる範囲を撮影できる。空間情報取得部20の実視野サイズは、空間情報取得部20のFOV70と、デプス情報とに基づいて定まる。後述するように、ロボット制御装置10は、空間情報取得部20の実視野サイズと、空間情報取得部20が撮影したロボット40のマーク46を含む画像とに基づいて、ロボット40のマーク46の位置及び姿勢を取得できる。具体的に、ロボット制御装置10は、マーク46を写した画像を所定のアルゴリズムで解析することによって、画像に基づいてマーク46の位置及び姿勢を算出できる。所定のアルゴリズムは、例えば、数式又はテーブル等を含んでよいし、演算処理を特定するプログラムを含んでもよい。所定のアルゴリズムは、画像に基づく算出結果を補正するためのパラメータを含んでもよい。
(ロボット制御装置10の動作例)
 ロボット制御装置10は、動作空間に存在する物体50等の作業対象に作用するようにロボット40を動作させたり、物体50を避けるようにロボット40を動作させたりする。ロボット制御装置10は、物体50を空間情報取得部20で写した撮影画像に基づいて、物体50に作用したり物体50を避けたりするようにロボット40を動作させる。
<キャリブレーション>
 ロボット制御装置10の制御部11は、空間情報取得部20の撮影画像に写ったマーク46の位置及び姿勢に基づいてロボット40の状態を取得し、ロボット40と物体50との位置関係を取得できる。一方で、制御部11は、例えばアーム42などに設置されたエンコーダなどのロボット40のセンサに基づいてロボット40の状態を取得する。ロボット40のセンサに基づく状態は、空間情報取得部20の撮影画像に基づく状態よりもロボット40の位置及び姿勢を高精度に表す。したがって、制御部11は、空間情報取得部20の撮影画像に基づくロボット40の状態を、ロボット40のセンサに基づくロボット40の状態に一致させることによって、ロボット40を動作空間において高精度で制御できる。空間情報取得部20の撮影画像に基づくロボット40の状態を、ロボット40のセンサに基づくロボット40の状態に一致させる作業は、キャリブレーションとも称される。具体的に、制御部11は、空間情報取得部20の(X,Y,Z)座標系をロボット40の(X_RB,Y_RB,Z_RB)座標系に一致させるようにキャリブレーションを実行する。制御部11は、空間情報取得部20の座標系とロボット40の座標系との相対位置関係を推定し、推定した相対位置関係に基づいて空間情報取得部20の座標系をロボット40の座標系に合わせてよい。
 制御部11は、図3に例示されるFOV70の少なくとも一部をキャリブレーション範囲としてキャリブレーションを実行してよい。本実施形態において、制御部11は、図3に示されるキャリブレーション範囲60においてキャリブレーションを実行する。キャリブレーション範囲60は、図2において二点鎖線の立体領域としても示されている。キャリブレーション範囲60は、ロボット40のキャリブレーションを実行する範囲に対応する。キャリブレーション範囲60は、ロボット40の作業領域を含んでよい。キャリブレーション範囲60は、ロボット40の作業領域とFOV70とが重なる範囲であってよい。
 また、制御部11は、キャリブレーション範囲60の中に、ロボット40のマーク46を移動させることによってキャリブレーションを実行するための点を設定する。キャリブレーションを実行するための点は、キャリブレーション位置とも称される。制御部11は、ロボット40のマーク46をキャリブレーション位置に移動させて空間情報取得部20によってマーク46を撮影させる。制御部11は、マーク46を写した画像に基づいてマーク46の位置及び姿勢を算出する。制御部11は、ロボット40のセンサの検出結果に基づいて定まるマーク46の位置及び姿勢に対して、画像に基づいて算出したマーク46の位置及び姿勢を一致させるように、画像に基づくマーク46の位置及び姿勢を補正する。画像に基づくマーク46の位置及び姿勢の補正がキャリブレーションに対応する。マーク46の位置及び姿勢は、先端位置姿勢とも称される。キャリブレーションは、先端位置姿勢の補正に対応する。キャリブレーション位置は、先端位置姿勢を補正する位置に対応する。
 具体的に、制御部11は、以下説明するようにキャリブレーションを実行してよい。制御部11は、ロボット40のマーク46をキャリブレーション位置に移動させるためのロボット40の制御情報を生成する。制御部11は、制御情報に基づいてロボット40を動作させ、ロボット40のマーク46をキャリブレーション位置に移動させる。制御部11は、マーク46を写した画像を空間情報取得部20から取得する。制御部11は、画像に基づいてマーク46の位置及び姿勢を算出する。画像に基づいて算出したマーク46の位置及び姿勢は、画像に基づく先端位置姿勢とも称される。制御部11は、ロボット40のセンサの検出結果に基づいて定まるマーク46の位置及び姿勢を算出する。センサの検出結果に基づいて算出したマーク46の位置及び姿勢は、センサに基づく先端位置姿勢とも称される。制御部11は、画像に基づく先端位置姿勢と、センサに基づく先端位置姿勢とを比較する。制御部11は、画像に基づく先端位置姿勢がセンサに基づく先端位置姿勢に一致するように、画像に基づく先端位置姿勢を補正する。制御部11は、画像に基づく先端位置姿勢を算出するアルゴリズムを補正してよい。制御部11は、アルゴリズムに含まれるパラメータを補正してよいし、数式、テーブル又はプログラムを補正してもよい。複数のキャリブレーション位置が設定されている場合、制御部11は、各キャリブレーション位置にロボット40を移動させ、各キャリブレーション位置においてマーク46を写した画像を取得し、画像に基づく先端位置姿勢を補正する。
 なお、上記の例では、マーク46の位置及び姿勢に対して、キャリブレーションを行なっているが、キャリブレーションを行なう箇所は、マーク46の位置及び姿勢に限られない。すなわち、制御部11は、予めマーク46の位置と、キャリブレーションを行なうロボット40の一部であるキャリブレーション対象部との位置関係を記憶しておき、画像に基づくマーク46の位置及び姿勢からキャリブレーション対象部の位置及び姿勢を算出してもよい。そして、ロボット40のセンサの検出結果に基づくキャリブレーション対象部の位置及び姿勢と比較することによってキャリブレーションを行なうことができる。したがって、マーク46の位置及び姿勢以外でもキャリブレーションを行なうことが可能になる。また、上記の例では、キャリブレーション対象部はロボット40の先端位置姿勢であったが、位置及び姿勢が算出可能な個所であれば、キャリブレーション対象物はロボット40の先端位置姿勢に限られない。
<キャリブレーションアイテムの生成>
 制御部11は、キャリブレーションを実行する前に、あらかじめキャリブレーション範囲60を設定する。また、制御部11は、キャリブレーション範囲60に含まれるキャリブレーション位置を設定する。制御部11は、キャリブレーション範囲60の中にキャリブレーション位置を設定する。
 制御部11は、キャリブレーション位置で特定される先端位置姿勢にロボット40を移動させるようにロボット40の制御情報を生成する。制御部11は、ロボット40をキャリブレーション位置に移動させたときの先端位置姿勢とロボット40のマーク46の認識結果とを特定する情報をキャリブレーションアイテムとして生成する。なお、キャリブレーションアイテムは、例えば、座標に関する情報である。具体的には、キャリブレーションアイテムは、例えば、ロボット40をキャリブレーション位置に移動させたときのロボット40のセンサの検出結果に基づく先端位置姿勢を示す座標情報、又は空間情報取得部20によって認識されたマーク46の認識結果に基づく先端位置姿勢を示す座標情報などである。
 制御部11は、マーク46の認識結果に関する先端位置姿勢のキャリブレーションアイテムが、ロボット40のセンサの検出結果に関する先端位置姿勢のキャリブレーションアイテムに一致するようにキャリブレーションを実行する。具体的に、制御部11は、キャリブレーション位置にロボット40を移動させる。制御部11は、空間情報取得部20によって、ロボット40がキャリブレーション位置に移動したときのロボット40のマーク46の認識結果を取得する。制御部11は、ロボット40のセンサに基づく先端位置姿勢のキャリブレーションアイテムに対する、マーク46の認識結果として取得された先端位置姿勢のキャリブレーションアイテムの相対位置関係を算出する。相対位置関係は、両者のキャリブレーションアイテムの間の座標の差及び角度の差に対応する。制御部11は、両者のキャリブレーションアイテムに対する相対位置関係に対応する座標の誤差及び角度の誤差がゼロ又はゼロに近くなるように(つまり、誤差が所定値未満になるように)空間情報取得部20の座標系を補正してロボット40の座標系に合わせる。このようにすることで、制御部11は、ロボット40がキャリブレーション位置に移動したときのマーク46の認識結果をロボット40のセンサで特定される先端位置姿勢に一致させることによって、相対位置関係を算出できる。なお、制御部11は、ロボット40のセンサで特定される先端位置姿勢を、マーク46の認識結果で認識される先端位置姿勢に一致させるようにしてもよい。
 制御部11は、キャリブレーションアイテムを生成することによって、キャリブレーション位置を設定できる。逆に言えば、キャリブレーション位置は、キャリブレーションアイテムを生成するためにロボット40を移動させる位置に対応する。制御部11は、キャリブレーションアイテムをロボット40の制御に適用することによってロボット40をキャリブレーション位置に移動させてキャリブレーションを実行できる。
 制御部11は、以下に説明するようにキャリブレーション位置を生成してよい。
 制御部11は、空間情報取得部20から、空間情報取得部20の実視野サイズに関する情報、又は、FOV70に関する情報を取得する。制御部11は、空間情報取得部20の実視野サイズ又はFOV70とロボット40の作業領域とに基づいて、キャリブレーション範囲60を設定する。制御部11は、ロボット40の動作空間における物体50の位置に基づいてキャリブレーション範囲60を設定してよい。制御部11は、空間情報取得部20で検出した物体50のデプス情報又は点群情報に基づいて、キャリブレーション範囲60を設定してよい。図3において、キャリブレーション範囲60の形状は、四角錐台形状に設定されている。キャリブレーション範囲60の形状は、四角錐台形状に限られず他の種々の形状に設定されてよい。キャリブレーション範囲60は、空間情報取得部20の中心軸70Aに沿う方向の長さに対応する高さ(H)と、四角錐台の底面の奥行方向の長さに対応する深さ(D)及び幅方向の長さに対応する幅(W)とによって特定されてよい。
 ここで、奥行方向の視野角71は、u[rad]で表されるとする。幅方向の視野角72は、v[rad]で表されるとする。また、空間情報取得部20から中心位置70Cまでの距離がhで表されるとする。この場合、W及びDは以下の式で算出され得る。
W=2×h×tan(u/2)
D=2×h×tan(v/2)
 Hは、ロボット40の動作空間に基づいて適宜定められ得る。Hは、例えば物体50の高さに基づいて定められ得る。
 制御部11は、ロボット40を第1位置に移動させる。第1位置は、中心軸70A上に設定される。第1位置は、例えば、事前に設定されていてもよい。本実施形態において、第1位置は、例えば、中心位置70Cに設定されるとする。制御部11は、第1位置において、ロボット40のマーク46の画像に基づくマーク46の位置及び姿勢が所定の先端位置姿勢になるようにロボット40を動作させる制御情報を生成する。制御部11は、制御情報に基づいてロボット40を制御することによってロボット40を第1位置に移動させる。第1位置は、図3に例示されるFOV70の中心位置70Cであってよい。制御部11は、ロボット40が第1位置に移動したときのマーク46の画像を取得し、マーク46の位置及び姿勢を画像に基づく先端位置姿勢として算出する。また、制御部11は、センサに基づく先端位置姿勢を算出する。制御部11は、第1位置の画像に基づく先端位置姿勢と、センサに基づく先端位置姿勢とを基準として、キャリブレーション範囲60の中でキャリブレーション位置の候補となる位置を生成する。
 制御部11は、キャリブレーション範囲60の中でキャリブレーション位置の候補となる位置を生成する。制御部11は、例えば図4に示されるように、キャリブレーション範囲60の中で、第1候補位置(P1)~第9候補位置(P9)を生成する。候補位置の数は、9個に限られず、8個以下であってもよいし10個以上であってもよい。第1候補位置(P1)は、第1位置に一致するように設定される。P1~P9等の候補位置は、まとめて第2位置とも称される。第2位置(候補位置)の数は、キャリブレーション範囲60のW方向、D方向及びH方向それぞれのグリッド間隔数に基づいて定められてよい。グリッド間隔数は、キャリブレーション範囲60をその方向に沿って何個に分割するかを表す。図4の例において、W方向のグリッド間隔数(GW)は2に設定される。D方向のグリッド間隔数(GD)は2に設定される。H方向のグリッド間隔数(GH)は1に設定される。図4の例において、キャリブレーション範囲60を表す四角錐台の底面において、W方向及びD方向の辺を2分割する点(辺の中点)と角とを含む9点(P1~P9)が第2位置(候補位置)として設定される。P1は、中心位置70Cと同一の点に設定される。P2~P9の座標は、P1の座標を基準として定まる。P1の座標が(P1X,P1Y,P1Z)で表される場合、P2の座標は、(P1X-W/GW,P1Y-D/GD,P1Z)で表される。P3の座標は、(P1X,P1Y-D/GD,P1Z)で表される。P4の座標は、(P1X+W/GW,P1Y-D/GD,P1Z)で表される。P5の座標は、(P1X-W/GW,P1Y,P1Z)で表される。P6の座標は、(P1X+W/GW,P1Y,P1Z)で表される。P7の座標は、(P1X-W/GW,P1Y+D/GD,P1Z)で表される。P8の座標は、(P1X,P1Y+D/GD,P1Z)で表される。P9の座標は、(P1X+W/GW,P1Y+D/GD,P1Z)で表される。また、キャリブレーション範囲60を表す四角錐台の上面において、W方向及びD方向の辺を2分割する点(辺の中点)と角とを含む9点が第2位置(候補位置)として設定される。
 制御部11は、ロボット40の動作をシミュレーションすることによって、ロボット40が第2位置(候補位置)に移動した場合のロボット40の状態を推定する。つまり、制御部11は、ロボット40が各第2位置(各候補位置)に移動すると仮定した場合のロボット40の状態を算出する。そして、制御部11は、各第2位置において、ロボット40のキャリブレーションの可否を判定する。
 制御部11は、第2位置(候補位置)に移動すると仮定した場合のロボット40の状態が物体50に接触しない状態であり、関節可動域内である状態であり、かつ、特異点でない状態である場合、ロボット40のキャリブレーションは可能であるとして、第2位置(候補位置)をキャリブレーション位置として登録する。制御部11は、第2位置(候補位置)をキャリブレーション位置として登録する場合、ロボット40を第2位置(候補位置)に移動させたときの先端位置姿勢とロボット40のマーク46の認識結果とを特定する情報をキャリブレーションアイテムとして生成する。制御部11は、第2位置(候補位置)の全てについて一括でキャリブレーション位置として登録するかしないかを判定してよい。制御部11は、各第2位置(各候補位置)についてキャリブレーション位置として登録するかしないかを判定してもよい。制御部11は、ロボット40の関節の角度を表す数値が可動域内である場合、ロボット40の状態が関節制限でない状態であると判定してもよい。制御部11は、ロボット40の関節の角度を表す数値が可動域外である場合、ロボット40の状態が関節制限状態であると判定してもよい。
 特異点は、ロボット40の構造的にロボット40を制御できなくなる姿勢に対応する。ロボット40を動作させる軌道に特異点が含まれている場合、ロボット40は特異点付近において高速に移動(暴走)し、特異点で停止してしまう。ロボット40の特異点は、以下の(1)~(3)の3種類である。
(1)作業領域の外側限界の近くまでにロボット40を制御するときの作業領域外の点。(作業領域は、ロボット40の動作空間に対応する領域である。)
(2)作業領域内であっても、ロボットベースの真上と真下にロボット40を制御するときの点。
(3)ロボット40のアーム42の先端の関節より1つ前の関節角度がゼロ又は180度になる点(手首整列特異点)。
 制御部11は、ロボット40の状態を表す数値が特異点となる状態を表す数値に一致した場合に、ロボット40の状態が特異点の状態であると判定してもよい。制御部11は、ロボット40の状態を表す数値と特異点となる状態を表す数値との差が所定値未満である場合に、ロボット40の状態が特異点の状態であると判定してもよい。ロボット40の状態を表す数値は、例えばアーム42の関節の角度を含んでもよいし、ロボット40を駆動するモータのトルクを含んでもよい。
 以上述べてきたように、制御部11は、キャリブレーション範囲60を設定し、キャリブレーション範囲60の中でキャリブレーション位置を設定する。また、制御部11は、ロボット40をキャリブレーション位置に移動させたときのロボット40の先端位置姿勢とロボット40のマーク46の認識結果とを特定する情報としてキャリブレーションアイテムを生成できる。
(ロボット制御方法の手順例)
 ロボット制御装置10の制御部11は、図5に例示されるフローチャートの手順を含むロボット制御方法を実行してもよい。ロボット制御方法は、制御部11を構成するプロセッサに実行させるロボット制御プログラムとして実現されてもよい。ロボット制御プログラムは、非一時的なコンピュータ読み取り可能な媒体に格納されてよい。
 制御部11は、空間情報取得部20の実視野サイズ、又は、FOV70に関する情報を取得する(ステップS1)。制御部11は、ロボット40のマーク46が写った撮影画像の空間情報を取得する(ステップS2)。制御部11は、ロボット40を第1位置に移動させる(ステップS3)。
 制御部11は、全ての候補位置を算出する(ステップS4)。制御部11は、ステップS4の手順で算出した各位置にロボット40を移動させたと仮定した場合のロボット40の状態において、ロボット40が動作空間内の物体50に接触するか判定する(ステップS5)。制御部11は、ステップS4の手順で算出した各位置にロボット40を移動させたと仮定したときにロボット40が物体50に接触する場合(ステップS5:YES)、ステップS9の手順に進む。制御部11は、ステップS4の手順で算出した各位置にロボット40を移動させたと仮定したときにロボット40が物体50に接触しない場合(ステップS5:NO)、ステップS4の手順で算出した各位置にロボット40を移動させたと仮定した場合のロボット40の状態において、ロボット40が関節可動域外の状態になっているか判定する(ステップS6)。制御部11は、ステップS4の手順で算出した各位置にロボット40を移動させたと仮定したときにロボット40が関節可動範囲域外の状態になっている場合(ステップS6:YES)、ステップS9の手順に進む。制御部11は、ステップS4の手順で算出した各位置にロボット40を移動させたと仮定したときにロボット40が関節可動域外の状態になっていない場合(ステップS6:NO)、ステップS4の手順で算出した各位置にロボット40を移動させたと仮定した場合のロボット40の状態において、ロボット40が特異点の状態になっているか判定する(ステップS7)。制御部11は、ステップS4の手順で算出した各位置にロボット40を移動させたと仮定したときにロボット40が特異点の状態になっている場合(ステップS7:YES)、ステップS9の手順に進む。制御部11は、ステップS5の手順で算出した各位置にロボット40を移動させたと仮定したときにロボット40が特異点の状態になっていない場合(ステップS7:NO)、ロボット40がステップS5の手順で算出した各位置に移動しても物体50に接触せず関節可動域外でもなく特異点の状態にもならないと判定できる。制御部11は、ロボット40をステップS4の手順で算出した各位置に移動させたときの先端位置姿勢とロボット40のマーク46の認識結果とを特定する情報をキャリブレーション位置として生成する(ステップS8)。制御部11は、ステップS8の手順の終了後、図5のフローチャートの手順の実行を終了する。制御部11は、ステップS5の手順で算出した各位置にロボット40を移動させたと仮定したときにロボット40が物体50に接触する場合(ステップS5:YES)、ロボット40が関節可動域外の状態になっている場合(ステップS6:YES)、又はロボット40が特異点の状態になっている場合(ステップS7:YES)の少なくとも1つの場合において、ステップS4の手順で算出した各位置をキャリブレーション位置として登録しない(ステップS9)。制御部11は、ステップS9の手順の終了後、図5のフローチャートの手順の実行を終了する。
 制御部11は、ステップS4の手順で算出した全ての位置について一括でキャリブレーション位置として登録するかしないかを決定してよい。制御部11は、ステップS5の手順で算出した各位置についてキャリブレーション位置として登録するかしないかを決定してもよい。
(小括)
 以上述べてきたように、本実施形態に係るロボット制御装置10及びロボット制御方法によれば、空間情報取得部20の撮影画像などの空間情報に基づいてキャリブレーション位置が生成される。このようにすることで、作業者の目視作業無しで、キャリブレーション位置が生成され得る。つまり、自動でキャリブレーション位置が生成され得る。キャリブレーション範囲60は、キャリブレーション位置を含む範囲である。その結果、キャリブレーション範囲60が簡便に設定され得る。
 また、本実施形態に係るロボット制御装置10及びロボット制御方法によれば、空間情報取得部20の実視野サイズ又はFOV70に基づくシミュレーションが実行される。そして、シミュレーションに基づいてロボット40の動作空間における物体50等の障害物との衝突を避けるようにキャリブレーション位置が生成され得る。また、シミュレーションに基づいてロボット40が関節可動域外の状態にならないようにキャリブレーション位置が生成され得る。また、シミュレーションに基づいてロボット40が特異点の状態にならないようにキャリブレーション位置が生成され得る。このようにすることで、実際にロボット40を動かさずにキャリブレーション位置が生成され得る。その結果、キャリブレーション位置が効率的に生成され得る。
 本開示に係る実施形態について、諸図面及び実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形又は改変を行うことが可能であることに注意されたい。従って、これらの変形又は改変は本開示の範囲に含まれることに留意されたい。例えば、各構成部等に含まれる機能等は論理的に矛盾しないように再配置可能であり、複数の構成部等を1つに組み合わせたり、或いは分割したりすることが可能である。
 本開示に記載された構成要件の全て、及び/又は、開示された全ての方法、又は、処理の全てのステップについては、これらの特徴が相互に排他的である組合せを除き、任意の組合せで組み合わせることができる。また、本開示に記載された特徴の各々は、明示的に否定されない限り、同一の目的、同等の目的、または類似する目的のために働く代替の特徴に置換することができる。したがって、明示的に否定されない限り、開示された特徴の各々は、包括的な一連の同一、又は、均等となる特徴の一例にすぎない。
 さらに、本開示に係る実施形態は、上述した実施形態のいずれの具体的構成にも制限されるものではない。本開示に係る実施形態は、本開示に記載された全ての新規な特徴、又は、それらの組合せ、あるいは記載された全ての新規な方法、又は、処理のステップ、又は、それらの組合せに拡張することができる。
 1 ロボット制御システム
 10 ロボット制御装置(11:制御部、12:記憶部)
 20 空間情報取得部
 40 ロボット(42:アーム、44:エンドエフェクタ、46:マーク)
 50 物体
 60 キャリブレーション範囲
 70 FOV(70A:中心軸、70C:中心位置、71:奥行方向の視野角、72:幅方向の視野角)

Claims (5)

  1.  ロボットを制御する制御部を備え、
     前記制御部は、
     前記ロボットの動作空間を撮影する空間情報取得部の実視野サイズと、前記空間情報取得部の空間情報とを取得し、
     前記実視野サイズと前記空間情報とに基づいて、所定の第1位置を設定し、
     前記第1位置と前記実視野サイズとに基づいて、前記ロボットのキャリブレーション位置を生成する、
    ロボット制御装置。
  2.  前記制御部は、
     前記ロボットが前記キャリブレーション位置に移動すると仮定した場合の前記ロボットの状態を算出し、
     前記ロボットのキャリブレーションの可否を判定する、
    請求項1に記載のロボット制御装置。
  3.  前記制御部は、
     前記空間情報取得部の実視野サイズと空間情報とに基づいて前記動作空間に存在する物体の位置を更に算出し、
     前記ロボットの状態が、前記動作空間に存在する物体に接触しない状態であり、関節可動域該でない状態であり、かつ、前記ロボットの状態が特異点でない状態である場合、前記ロボットを前記キャリブレーション位置に移動させる、
    請求項1又は2に記載のロボット制御装置。
  4.  請求項1から3までのいずれか一項に記載のロボット制御装置と、前記ロボットと、前記空間情報取得部とを備える、ロボット制御システム。
  5.  ロボットを制御する制御部が、前記ロボットの動作空間を撮影する空間情報取得部の実視野サイズと、前記空間情報取得部の撮影画像とを取得することと、
     前記制御部が、前記空間情報取得部の実視野サイズと撮影画像とに基づいて、所定の第1位置を設定することと、
     前記制御部が、前記第1位置と前記空間情報取得部の実視野サイズとに基づいて、前記ロボットのキャリブレーション位置を生成することと
    を含む、ロボット制御方法。
PCT/JP2022/030011 2021-08-04 2022-08-04 ロボット制御装置、ロボット制御システム、及びロボット制御方法 WO2023013740A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202280053850.0A CN117794704A (zh) 2021-08-04 2022-08-04 机器人控制设备、机器人控制系统以及机器人控制方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021128475 2021-08-04
JP2021-128475 2021-08-04

Publications (1)

Publication Number Publication Date
WO2023013740A1 true WO2023013740A1 (ja) 2023-02-09

Family

ID=85155783

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/030011 WO2023013740A1 (ja) 2021-08-04 2022-08-04 ロボット制御装置、ロボット制御システム、及びロボット制御方法

Country Status (2)

Country Link
CN (1) CN117794704A (ja)
WO (1) WO2023013740A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7423851B1 (ja) 2023-10-31 2024-01-29 株式会社ダイヘン 端末装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015129473A1 (ja) * 2014-02-28 2015-09-03 ソニー株式会社 ロボットアーム装置、キャリブレーション方法及びプログラム
JP2018111166A (ja) 2017-01-12 2018-07-19 ファナック株式会社 視覚センサのキャリブレーション装置、方法及びプログラム
JP2018114578A (ja) * 2017-01-17 2018-07-26 ファナック株式会社 ロボット制御装置
CN111195915A (zh) * 2020-01-20 2020-05-26 深圳龙岗智能视听研究院 一种基于遗传算法的机械臂绝对定位精度标定方法及系统
US20200298403A1 (en) * 2016-03-29 2020-09-24 Cognibotics Ab Method, constraining device and system for determining geometric properties of a manipulator

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015129473A1 (ja) * 2014-02-28 2015-09-03 ソニー株式会社 ロボットアーム装置、キャリブレーション方法及びプログラム
US20200298403A1 (en) * 2016-03-29 2020-09-24 Cognibotics Ab Method, constraining device and system for determining geometric properties of a manipulator
JP2018111166A (ja) 2017-01-12 2018-07-19 ファナック株式会社 視覚センサのキャリブレーション装置、方法及びプログラム
JP2018114578A (ja) * 2017-01-17 2018-07-26 ファナック株式会社 ロボット制御装置
CN111195915A (zh) * 2020-01-20 2020-05-26 深圳龙岗智能视听研究院 一种基于遗传算法的机械臂绝对定位精度标定方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7423851B1 (ja) 2023-10-31 2024-01-29 株式会社ダイヘン 端末装置

Also Published As

Publication number Publication date
CN117794704A (zh) 2024-03-29

Similar Documents

Publication Publication Date Title
JP6966582B2 (ja) ロボットモーション用のビジョンシステムの自動ハンドアイ校正のためのシステム及び方法
CN112672860B (zh) 用于ar和数字孪生的机器人校准
JP6180087B2 (ja) 情報処理装置及び情報処理方法
JP5778311B1 (ja) ピッキング装置およびピッキング方法
US9519736B2 (en) Data generation device for vision sensor and detection simulation system
EP2636493B1 (en) Information processing apparatus and information processing method
JP3946711B2 (ja) ロボットシステム
US8306661B2 (en) Method and system for establishing no-entry zone for robot
WO2018043525A1 (ja) ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法
JP2016099257A (ja) 情報処理装置及び情報処理方法
JP6317618B2 (ja) 情報処理装置およびその方法、計測装置、並びに、作業装置
WO2018043524A1 (ja) ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法
JP6885856B2 (ja) ロボットシステムおよびキャリブレーション方法
EP3411194A1 (en) Robot system calibration
WO2023013740A1 (ja) ロボット制御装置、ロボット制御システム、及びロボット制御方法
JP7180783B2 (ja) コンピュータビジョンシステムのキャリブレーション方法及びこれに用いる基準立体物
JP7366264B2 (ja) ロボット教示方法及びロボット作業方法
JP7112528B2 (ja) 作業座標作成装置
WO2023013739A1 (ja) ロボット制御装置、ロボット制御システム、及びロボット制御方法
JP2616225B2 (ja) 相対位置決め方式
CN116390834A (zh) 机器人系统
JP2005186193A (ja) ロボットのキャリブレーション方法および三次元位置計測方法
WO2023013698A1 (ja) ロボット制御装置、ロボット制御システム、及びロボット制御方法
JP2022017738A (ja) 画像処理装置
WO2023013699A1 (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: 22853158

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023540415

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2022853158

Country of ref document: EP

Effective date: 20240304