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

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

Info

Publication number
WO2020188630A1
WO2020188630A1 PCT/JP2019/010832 JP2019010832W WO2020188630A1 WO 2020188630 A1 WO2020188630 A1 WO 2020188630A1 JP 2019010832 W JP2019010832 W JP 2019010832W WO 2020188630 A1 WO2020188630 A1 WO 2020188630A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
information
failure
posture
generation unit
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/JP2019/010832
Other languages
English (en)
French (fr)
Inventor
岳史 小島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to PCT/JP2019/010832 priority Critical patent/WO2020188630A1/ja
Priority to JP2021506798A priority patent/JP7078174B2/ja
Priority to US17/275,307 priority patent/US11981032B2/en
Priority to EP19919923.3A priority patent/EP3939752A4/en
Priority to CN201980059818.1A priority patent/CN112714683B/zh
Publication of WO2020188630A1 publication Critical patent/WO2020188630A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1656Program controls characterised by programming, planning systems for manipulators
    • B25J9/1664Program controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1656Program controls characterised by programming, planning systems for manipulators
    • B25J9/1664Program controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1628Program controls characterised by the control loop
    • B25J9/163Program controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1674Program controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40476Collision, planning for collision free path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40497Collision monitor controls planner in real time to replan if collision
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40543Identification and location, position of components, objects
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50112Retract tool to a point

Definitions

  • the present invention relates to a robot control device, a robot control method, and a robot control program.
  • the robot When the robot falls into a stopped state due to a collision with an obstacle or self-interference, the robot is returned to a safe posture such as the origin posture of the robot.
  • This return operation is realized by executing the taught path in reverse order or by the user operating the teaching pendant (TP).
  • Patent Document 2 a robot control method capable of returning to the origin even when stopped at any timing.
  • the operation path from the origin to the stop position where the abnormal stop is abnormally calculated using the execution program and the teaching data is performed. Return to the origin using a retrograde path that reverses the path.
  • interference with the interfering object is detected from the load information acting on the robot, the separation position from the interference object is calculated based on each load information, and the return path from the separation position to the origin is a retrograde route. To calculate.
  • the present invention has been made in view of the above points, and an object of the present invention is to provide a robot control device, a method, and a program capable of returning from an obstacle state to a safe posture in a short time.
  • the robot control device detects that a failure has occurred during the operation of the robot, the environment information around the robot after the failure occurs, the specification information of the robot, and the like.
  • a generation unit that acquires information on the posture in which the robot should return, and based on the acquired information, generates a path of the robot from the posture after the failure occurs to the posture in which the robot should return, and the generation unit. It can be configured to include a control unit that controls the operation of the robot so that the robot is in the posture to be returned based on the path.
  • the generation unit when the generation unit detects that a failure has occurred during the operation of the robot, the environment information around the robot after the failure occurs, the robot specification information, and the robot returns. Information on the posture to be taken is acquired, and based on the acquired information, the path of the robot from the posture after the failure occurs to the posture to be restored is generated. Then, the control unit controls the operation of the robot so that the robot is in the posture to be returned based on the path generated by the generation unit. As a result, it is possible to return from the faulty state to a safe posture in a short time.
  • the generation unit acquires three-dimensional measurement data indicating the three-dimensional positions of each point around the robot as the environmental information after the failure occurs, and based on the three-dimensional measurement data, after the failure occurs.
  • the shape and position of an object existing around the robot can be specified. As a result, it is possible to specify the shape and position of an object to which the shape and position information is given in advance by CAD data or the like, even if the object is deformed due to the occurrence of a failure.
  • the generation unit uses the three-dimensional information indicating the shape and position of an object existing around the robot before the occurrence of the failure and the environmental information acquired after the occurrence of the failure to perform the above-mentioned after the occurrence of the failure.
  • the shape and position of objects existing around the robot can be specified.
  • the shape and position of the object after the failure can be accurately specified.
  • the generation unit acquires three-dimensional measurement data indicating the three-dimensional positions of each point around the robot as the environment information after the failure occurs, and the portion of the three-dimensional measurement data in which the three-dimensional information matches.
  • the shape and position of an object existing around the robot are specified based on the three-dimensional information, and the portion of the three-dimensional measurement data in which the matching three-dimensional information does not exist is referred to in the three-dimensional measurement data. Based on this, the shape and position of an object existing around the robot can be specified. As a result, the shape and position of the object can be accurately specified for the part where the 3D information can be used, and the processing load can be reduced as compared with the case where the entire range is specified only by the 3D measurement data. Can be done.
  • the generation unit can specify an area where the environmental information cannot be measured after an obstacle occurs as an obstacle candidate area. As a result, a safer route for recovering from the failure state can be generated.
  • the generation unit sets a cost according to the possibility that an obstacle exists for each area around the robot, and sets the cost in the obstacle candidate area according to the cost of the obstacle candidate area. It is possible to identify whether or not there is an obstacle. As a result, it is possible to flexibly determine whether or not an obstacle exists in an area where environmental information cannot be measured and generate a route.
  • the generation unit can display on the display device the shape and position of the object existing around the robot after the failure occurs and the information indicating the generated route. As a result, the user can confirm information on the path and objects around the robot before operating the robot.
  • the generation unit can accept corrections for at least one of the shape and position of the object existing around the robot after the failure and the path displayed on the display device. As a result, if correction is required, it is possible to instruct the regeneration of the route after making the correction.
  • the generation unit can display information on the cause of the failure to generate the route on the display device. This can prompt the user to eliminate the cause of the inability to generate a route.
  • the generation unit detects that a failure has occurred during the operation of the robot, the environment information around the robot after the failure occurs, the specification information of the robot, and the above.
  • Information on the posture in which the robot should return is acquired, and based on the acquired information, the path of the robot from the posture after the failure occurs to the posture in which the robot should return is generated, and the control unit is generated by the generation unit. This is a method of controlling the operation of the robot so that the robot is in the posture to be returned based on the route.
  • the robot control program includes environmental information around the robot after the failure, specification information of the robot, and the robot. Acquires information on the posture to be restored, and based on the acquired information, a generator that generates a path of the robot from the posture after the failure occurs to the posture to be restored, and a path generated by the generator. Based on the above, it is a program for functioning as a control unit for controlling the operation of the robot so that the robot is in the posture to be returned.
  • the failure state is obtained by acquiring the environmental information after the failure and generating the path of the robot from the posture after the failure to the posture to be restored. It is possible to return to a safe posture in a short time.
  • the part related to the present invention that is, the part related to the return operation when a robot failure occurs is mainly described, and the normal operation such as pick and place of the work is related to the present invention. Only the part will be described.
  • the robot control system 100 includes a robot control device 10, an operation terminal 20, a robot 30, and a 3D sensor 35.
  • the robot 30 is, for example, a vertical articulated robot having a configuration of 6 degrees of freedom required for operation in a three-dimensional space.
  • the degree of freedom of the robot 30 may be 7 degrees of freedom, which is 6 degrees of freedom plus redundant degrees of freedom.
  • the robot 30 is controlled and operates according to the path generated by the robot control device 10.
  • the robot 30 is provided with a sensor (not shown) for detecting the occurrence of an obstacle such as a collision with an obstacle.
  • a sensor not shown
  • the robot 30 stops its operation and owns itself.
  • the robot control device 10 is notified that a failure has occurred together with the current posture information indicating the current posture.
  • the posture of the robot 30 is when the reference position (x, y, z) and the posture (roll, pitch, yaw) of the hand of the robot 30 (the side to which the tool such as the robot hand is attached) are located. It is represented by a series (J1, J2, ..., JN) of the values (rotation angles) of each joint from the first joint to the Nth joint of the robot 30 (N is the number of joints of the robot).
  • the operation terminal 20 is an information processing device for inputting information, and can be realized by, for example, a personal computer or a teaching pendant (TP).
  • the operation terminal 20 receives input of information necessary for route generation and robot control, and inputs the received information to the robot control device 10.
  • the information required for route generation and robot control includes environmental information, robot specification information, and safe posture information. Each information will be described later.
  • the 3D sensor 35 measures the robot 30 and the surrounding environment including the operating area of the robot 30, and outputs the measurement result.
  • the 3D sensor 35 can be realized by, for example, a three-dimensional camera or a laser radar.
  • the 3D sensor 35 measures point cloud data indicating the three-dimensional position of each point in the surrounding environment.
  • the 3D sensor 35 inputs the point cloud data, which is the measurement result, to the operation terminal 20.
  • the point cloud data is an example of the three-dimensional measurement data of the present invention, but the three-dimensional measurement data may be DeptMap, line scan data, or the like, and is not limited to the point cloud data.
  • the robot control device 10 When the robot 30 notifies the robot 30 of the occurrence of a failure, the robot control device 10 generates a route for returning the robot 30 to the designated safe posture, and controls the return operation of the robot 30 based on the generated route. To do.
  • the path in the present embodiment is a time-series arrangement of the postures of the robot 30 when the reference position of the hand of the robot 30 is operated from an arbitrary start point to the end point.
  • the robot control device 10 can be realized by a personal computer or an industrial computer.
  • FIG. 2 is a block diagram showing a hardware configuration of the robot control device 10 according to the present embodiment.
  • the robot control device 10 includes a CPU (Central Processing Unit) 42, a memory 44, a storage device 46, an input device 48, an output device 50, an optical disk drive device 52, and a communication interface (I / F) 54.
  • CPU Central Processing Unit
  • the storage device 46 stores a robot control program for executing the robot control process.
  • the CPU 42 is a central arithmetic processing unit, which executes various programs and controls each configuration. That is, the CPU 42 reads the program from the storage device 46 and executes the program using the memory 44 as a work area. The CPU 42 controls each of the above configurations and performs various arithmetic processes according to the program stored in the storage device 46.
  • the memory 44 is composed of a RAM (Random Access Memory), and temporarily stores programs and data as a work area.
  • the storage device 46 is composed of a ROM (Read Only Memory) and an HDD (Hard Disk Drive) or SSD (Solid State Drive), and stores various programs including an operating system and various data.
  • the input device 48 is a device for performing various inputs such as a keyboard and a mouse.
  • the output device 50 is a device for outputting various information such as a display and a printer. By adopting a touch panel display as the output device 50, it may function as an input device 48.
  • the optical disc drive device 52 reads data stored in various recording media (CD-ROM, Blu-ray disc, etc.), writes data to the recording medium, and the like.
  • the communication interface 54 is an interface for communicating with other devices, and for example, standards such as Ethernet (registered trademark), FDDI, and Wi-Fi (registered trademark) are used.
  • FIG. 3 is a block diagram showing an example of the functional configuration of the robot control system 100.
  • the operation terminal 20 includes an environment information input unit 22, a robot specification input unit 24, and a safety posture input unit 26 as functional configurations.
  • the environment information input unit 22 receives the input of the robot 30 and the environment information indicating the surrounding environment including the operation area of the robot 30, and inputs the input to the robot control device 10.
  • the environmental information input unit 22 receives the measurement result output from the 3D sensor 35 as the environmental information.
  • the environmental information input unit 22 accepts input of CAD data as environmental information, which is three-dimensional information indicating the shape and position of obstacles such as peripheral devices, shelves, and containers.
  • the obstacle is an example of the object of the present invention.
  • the robot specification input unit 24 receives input of robot specification information indicating the specifications of the robot 30 and inputs it to the robot control device 10.
  • the robot specification information includes, for example, robot shape information, kinematics information such as a reference position of a hand and joint arrangement, and joint information such as a limit angle of each joint and a rotation speed.
  • the safety posture input unit 26 receives input of safety posture information indicating the safety posture that the robot 30 should return to when a failure occurs, and inputs it to the robot control device 10.
  • the safety posture can be the posture of the origin of the robot 30 (for example, the angle of each joint is 0 degrees) or the posture when the robot is completely returned to a position where there are no obstacles according to the surrounding environment. ..
  • the robot control device 10 includes a route generation unit 12 and a control unit 14 as a functional configuration.
  • Each functional configuration is realized by the CPU 42 reading the robot control program stored in the storage device 46, expanding it in the memory 44, and executing it.
  • the route generation unit 12 is an example of the generation unit of the present invention
  • the control unit 14 is an example of the control unit of the present invention.
  • the reverse order execution may cause the obstacle to collide again with the changed position. In some cases, it may not be possible to safely perform the return operation.
  • the route generation unit 12 receives the notification that a failure has occurred from the robot 30 together with the current posture information of the robot 30, the failure occurrence input from the environment information input unit 22
  • the later environmental information, the robot specification information input from the robot specification input unit 24, and the safety attitude information input from the safety attitude input unit 26 are acquired.
  • the route generation unit 12 identifies the position and shape of the obstacle (hereinafter referred to as "obstacle information") after the failure occurs, based on the acquired environmental information. Specifically, the route generation unit 12 identifies obstacle information existing around the robot 30 after the failure occurs, based on the point cloud data which is the measurement result of the 3D sensor 35 acquired as the environmental information after the failure occurs. To do. For example, point cloud data cut out for each predetermined range can be input to a pre-learned classifier, and obstacle information can be obtained as a recognition result.
  • the route generation unit 12 acquires three-dimensional information indicating the shape and position of obstacles existing around the robot 30 before the occurrence of an obstacle, for example, CAD data used for route generation for normal operation. .. Then, the route generation unit 12 matches the point cloud data with the shape of each obstacle included in the CAD data while rotating and moving, so that the obstacle information existing around the robot 30 after the failure occurs. May be specified. In this case, since known shape data can be used, the obstacle information can be specified more accurately than when the obstacle information is specified only by the point cloud data.
  • the route generation unit 12 identifies and matches the obstacle information after the occurrence of the obstacle based on the matching result of the CAD data for the portion of each obstacle indicated by the CAD data that matches the point cloud data.
  • the obstacle information after the occurrence of the failure may be specified based on the point cloud data. In this case, the obstacle information can be accurately specified for the part where the CAD data can be used, and the processing load can be reduced as compared with the case where the obstacle information is specified only by the point cloud data for the entire range. Can be done.
  • the route generation unit 12 generates a route of the robot 30 from the current posture to the safe posture based on the identified obstacle information, the acquired robot specification information and the safe posture information, and the notified current posture information.
  • a path planning method such as RRT (Rapidly-exploring Random Tree) or PRM (Probabilistic RoadMap) can be used.
  • the route generation unit 12 passes the generated route information to the control unit 14.
  • the control unit 14 When the robot 30 notifies the robot 30 that a failure has occurred together with the current posture information, the control unit 14 notifies the route generation unit 12 of the current posture information and the failure. Further, the control unit 14 controls the return operation so that the robot 30 is in the safe posture based on the route generated by the route generation unit 12.
  • the robot control process shown in FIG. 7 is executed when a normal operation such as pick and place of a work is performed.
  • FIG. 7 is a flowchart showing the flow of robot control processing executed by the CPU 42 of the robot control device 10.
  • the CPU 42 reads the robot control program from the storage device 46, expands it into the memory 44, and executes it, the CPU 42 functions as each functional configuration of the robot control device 10, and the robot control process shown in FIG. 7 is executed.
  • the robot control process is an example of the robot control method of the present invention.
  • step S12 the control unit 14 determines whether or not a failure has occurred by determining whether or not a failure has occurred, together with the current posture information, from the robot 30. If no failure has occurred, the determination in this step is repeated, and if a failure occurs, the control unit 14 notifies the current attitude information and the route generation unit 12 that the failure has occurred, and step S14. Move to.
  • step S14 the route generation unit 12 acquires the environment information after the failure occurred, which is input from the environment information input unit 22.
  • step S16 the route generation unit 12 specifies obstacle information (shape and position) after the occurrence of a failure based on the acquired environmental information.
  • step S18 the route generation unit 12 acquires the robot specification information input from the robot specification input unit 24. Since the robot specification information does not change before and after the occurrence of a failure, if the robot specification information acquired at the time of normal route generation is stored in a predetermined area of the robot control device 10, the robot specification information is read out. You may.
  • step S20 the route generation unit 12 acquires the safety attitude information input from the safety attitude input unit 26.
  • the safety posture information may be stored in advance in a predetermined area of the robot control device 10 and the safety posture information may be read out.
  • steps S14 and S16, step S18, and step S20 is not limited to the example shown in FIG. 7, and any of them may be executed first or may be executed in parallel.
  • step S22 the route generation unit 12 is notified of the obstacle information specified in step S16, the robot specification information acquired in step S18, the safety posture information acquired in step S20, and the safety posture information acquired in step S12. Based on the current posture information, the path of the robot 30 from the current posture to the safe posture is generated by using, for example, a path planning method.
  • step S24 the control unit 14 controls the return operation so that the robot 30 is in the safe posture based on the route generated by the route generation unit 12 in step S22, and the robot control process ends. ..
  • the normal operation may be restarted or the normal operation may be temporarily stopped, and other processes according to the application may be executed.
  • the robot control device 10 reacquires the environmental information after the failure occurs and specifies the shape and position of the obstacle after the failure occurs. After that, a route for returning to the safe posture is generated. As a result, it is possible to return from the faulty state to a safe posture in a short time without causing another collision or limit over, and without requiring a skilled and careful operation by the user.
  • the robot control system 200 includes a robot control device 210, an operation terminal 20, a robot 30, and a 3D sensor 35.
  • the environmental information after the failure occurs is acquired again, but after the failure occurs, there may be an occlusion area in which the point cloud data cannot be measured by the 3D sensor 35.
  • the entire work space was obtained as a measurement result before the failure occurred, but the box rolled over due to the failure occurrence, and as shown in the right figure of FIG. Due to the shaded portion in FIG. 8), the measurement result inside the box may not be obtained.
  • the obstacle information after the occurrence of the obstacle is specified, and then the route for returning to the safe posture is generated.
  • the functional configuration of the robot control device 210 according to the second embodiment will be described. Since the hardware configuration of the robot control device 210 according to the second embodiment is the same as the hardware configuration of the robot control device 10 according to the first embodiment shown in FIG. 2, the description thereof will be omitted.
  • FIG. 9 is a block diagram showing an example of the functional configuration of the robot control system 200.
  • the robot control device 210 includes a route generation unit 212, a control unit 14, and a cost evaluation unit 16 as functional configurations.
  • the route generation unit 212 and the cost evaluation unit 16 are examples of the generation unit of the present invention.
  • the cost evaluation unit 16 acquires environmental information from the environmental information input unit 22, and identifies obstacle information around the robot 30 based on the acquired environmental information.
  • the method of specifying the obstacle information is the same as the method of specifying in the route generation unit 12 of the first embodiment.
  • the cost evaluation unit 16 identifies the occlusion area based on the identified obstacle information.
  • the occlusion area is an example of an obstacle candidate area of the present invention.
  • the obstacle information is specified by matching the CAD data with the point cloud data
  • the movement and rotation of the obstacle can be grasped, so that the occlusion area can also be specified.
  • FIG. 8 it is found that the box is in an overturned state by matching the CAD data of the box with the point cloud data, and the inside of the box becomes an occlusion area from the shape of the box based on the CAD data. It is possible to identify that it is.
  • the cost evaluation unit 16 calculates the cost for evaluating whether or not there is an obstacle in the specified occlusion area. Specifically, the cost evaluation unit 16 sets the cost according to the possibility that an obstacle exists for each area around the robot 30.
  • the area closer to the floor surface is closer to the floor, assuming that obstacles are more likely to be present, while obstacles are less likely to be present in the air. It can be set so that the cost is high. Further, for example, on the premise that an obstacle is unlikely to exist at a position closer to the center of the robot 30, the cost can be set so as to be closer to the robot 30 as shown in FIG. .. In this embodiment, it is assumed that the higher the cost, the higher the possibility that an obstacle exists. Only one pattern may be set for the cost of each area, or a plurality of patterns may be set. In the present embodiment, it is assumed that the cost is set by the pattern shown in FIG. 10 and the pattern shown in FIG.
  • the cost evaluation unit 16 adds up the costs of each set area and calculates the cost of the occlusion area. Further, the cost evaluation unit 16 evaluates that there are no obstacles in the occlusion area where the cost is equal to or less than the predetermined threshold value. On the other hand, the cost evaluation unit 16 evaluates that an obstacle exists in the occlusion area where the cost exceeds the threshold value, and as shown in FIG. 13, for example, a virtual obstacle having a shape corresponding to the area (for example, a rectangular parallelepiped shape). Set things.
  • the cost evaluation unit 16 adds the obstacle information about the set virtual obstacle to the obstacle information about the actual obstacle, and receives the obstacle information around the robot 30 after the obstacle occurs to the route generation unit 212. hand over.
  • the route generation unit 212 notifies the obstacle information specified by the cost evaluation unit 16, the robot specification information input from the robot specification input unit 24, the safety attitude information input from the safety attitude input unit 26, and the control unit 14.
  • the current posture information of the robot 30 is acquired, and a route for returning from the current posture to the safe posture is generated based on the acquired information.
  • the obstacle information including the above-mentioned virtual obstacle is specified, for example, as shown in FIG. 14, not only the actual obstacle but also the obstacle exists in the occlusion area. A route for the return operation is generated, avoiding the region with high possibility.
  • the robot control device 210 executes the robot control process shown in FIG.
  • the same step number as the robot control process (FIG. 7) according to the first embodiment is assigned the same step number, and detailed description thereof will be omitted.
  • the cost evaluation unit 16 identifies the occlusion area based on the obstacle information about the actual obstacle identified in step S14, and the identified occlusion area is impaired. Calculate the cost of assessing the existence of an object. Then, the cost evaluation unit 16 evaluates that there is no obstacle in the occlusion area where the cost is equal to or less than the predetermined threshold value, and evaluates that there is an obstacle in the occlusion area where the cost exceeds the threshold value.
  • step S214 the cost evaluation unit 16 sets a virtual obstacle having a shape (for example, a rectangular parallelepiped shape) corresponding to the area of the occlusion area evaluated as having an obstacle, and the set virtual obstacle.
  • the obstacle information about the above is added to the obstacle information about the actual obstacle identified in step S16, and is passed to the route generation unit 212 as the obstacle information around the robot 30 after the failure occurs.
  • steps S18 to S24 are executed in the same manner as in the first embodiment, and the robot control process ends.
  • the robot control device 210 acquires the environmental information after the failure occurs again in consideration of the occurrence of the occlusion area, and after the failure occurs. After identifying the shape and position of the obstacle, a route for returning to the safe posture is generated. As a result, there are clearly obstacles that cannot be measured by 3D sensors such as areas where obstacles are likely to collapse and new obstacles are likely to occur during robot operation (areas where the cost exceeds the threshold) and under desks. It is possible to efficiently generate a safe route that flexibly corresponds to an area that does not (the area where the cost is below the threshold value).
  • the robot control system 300 includes a robot control device 310, an operation terminal 20 including a display unit 28, a robot 30, and a 3D sensor 35. ..
  • the functional configuration of the robot control device 310 according to the third embodiment will be described. Since the hardware configuration of the robot control device 310 according to the third embodiment is the same as the hardware configuration of the robot control device 10 according to the first embodiment shown in FIG. 2, the description thereof will be omitted.
  • FIG. 16 is a block diagram showing an example of the functional configuration of the robot control system 300.
  • the robot control device 310 includes a route generation unit 312 and a control unit 14 as a functional configuration.
  • the route generation unit 312 is an example of the generation unit of the present invention.
  • the route generation unit 312 generates a route for returning from the current posture to the safe posture, similarly to the route generation unit 12 in the first embodiment.
  • the route generation unit 312 When the route cannot be generated due to reasons such as no route that can avoid the obstacle or the robot 30 being locked when the obstacle occurs, the route generation unit 312 generates a message regarding the cause that the route cannot be generated. .. For example, if a route cannot be generated because there is no route that can avoid obstacles, a message such as "The route that can avoid obstacles could not be generated. Please remove the obstacle.” To generate.
  • the route generation unit 312 displays the generated route or message and obstacle information about obstacles existing around the robot 30 after the occurrence of the obstacle specified when the route is generated on the display unit 28.
  • FIG. 17 shows an example of the display screen 60 displayed on the display unit 28.
  • the display screen 60 includes a display area 62 for displaying obstacle information and a result of simulating the operation of the robot 30 based on the generated path in a three-dimensional animation. Further, the display screen 60 includes an input area 64 for various parameters for accepting corrections for at least one of the route and obstacle information displayed in the display area 62.
  • a user-corrected value or the like is input to the input area 64 via the environment information input unit 22, the robot specification input unit 24, and the safety posture input unit 26.
  • the information for correcting the route is input.
  • the display area 62 may be able to accept modifications by dragging or the like.
  • the display screen 60 includes a message area 66 in which the message generated by the route generation unit 312 is displayed, and an execution button 68 selected when permitting the operation of the robot 30 on the generated route. Is done.
  • Modifications to at least one of the route and obstacle information input via the input area 64 are input to the route generation unit 312 via the environment information input unit 22, the robot specification input unit 24, and the safety posture input unit 26. .. Therefore, the route generation unit 312 regenerates the route based on the corrected information.
  • the 3D sensor 35 detects it.
  • the environmental information after the completion of the countermeasure is measured again and input to the route generation unit 312 via the environmental information input unit 22. Therefore, the route generation unit 312 regenerates the route based on the environmental information after the countermeasure is completed.
  • the display unit 28 notifies the control unit 14 of permission to operate the robot 30 along the generated route, and the control unit 14 controls the operation of the robot 30.
  • the robot control device 310 executes the robot control process shown in FIG.
  • the same step number as the robot control process (FIG. 7) in the first embodiment is assigned the same step number, and detailed description thereof will be omitted.
  • the route generation unit 312 executes route generation, and in the next step S312, it is determined whether or not the route can be generated. If the route can be generated, the process proceeds to step S314, and if the route cannot be generated, the process proceeds to step S318.
  • step S314 the route generation unit 312 displays on the display unit 28 a display screen 60 including the route generated in the step S22 and the content related to the obstacle information specified in the step S16.
  • step S316 it is determined whether or not the operation terminal 20 has accepted the correction for the content displayed on the display screen 60.
  • the process returns to step S22, and the route generation unit 312 regenerates the route based on the corrected information.
  • the user selects the execution button 68 included in the display screen 60.
  • step S24 the display unit 28 notifies the control unit 14 of permission to operate the robot 30 along the generated route, and the control unit 14 controls the operation of the robot 30.
  • step S318, the route generation unit 312 generates a message regarding the cause of the inability to generate the route, and displays the display screen 60 including the generated message in the message area 66 on the display unit 28.
  • step S320 when a command indicating that the countermeasures such as removal of the cause according to the message displayed in the message area 66 have been completed is input from the operation terminal 20, the process returns to step S14.
  • the robot control device 310 displays the route and obstacle information generated based on the environmental information after the failure occurs, and the user can display the information. Accept corrections. If the route cannot be generated, the cause is presented to the user to prompt the user to take measures such as removing the cause. As a result, before the robot's return operation is executed, the user confirms the robot's operation, corrects it if necessary, and then instructs to regenerate the route or eliminates the cause. Can be done.
  • the third embodiment has been described as a configuration in which various displays on the display unit and acceptance of corrections are added to the first embodiment, it may be applied to the second embodiment.
  • the display unit 28 may be configured as a display device independent of the operation terminal 20.
  • the route is generated by path planning
  • the present invention is not limited to this, and the route may be generated based on the result learned in advance.
  • the control of the vertical articulated robot has been described, but the present invention is not limited to the vertical articulated robot, and can be applied to any open-loop robot. It can also be applied to closed-loop robots such as delta robots. Furthermore, it can be applied to a wide range of robots such as mobile robots and mobile manipulators, which are floating link systems in which the pedestal is not fixed.
  • the robot control device and the operation terminal are separate devices
  • the robot control device and the operation terminal may be configured by one information processing device.
  • each functional configuration of the robot control device may be realized by different devices, and the above robot control process may be realized by distributed processing.
  • various processors other than the CPU may execute the robot control process executed by the CPU reading the software (program) in each of the above embodiments.
  • PLD Programmable Logic Device
  • FPGA Field-Programmable Gate Array
  • ASIC Application Specific Integrated Circuit
  • An example is a dedicated electric circuit or the like, which is a processor having a circuit configuration designed exclusively for it.
  • the robot control process may be executed by one of these various processors, or a combination of two or more processors of the same type or different types (for example, a plurality of FPGAs and a combination of a CPU and an FPGA). Etc.).
  • the hardware structure of these various processors is, more specifically, an electric circuit in which circuit elements such as semiconductor elements are combined.
  • the mode in which the robot control program is stored (installed) in the storage device in advance has been described, but the present invention is not limited to this.
  • the program is provided in a form recorded on a recording medium such as a CD-ROM (Compact Disc Read Only Memory), a DVD-ROM (Digital Versail Disc Read Only Memory), or a USB (Universal Serial Bus) memory. Further, the program may be downloaded from an external device via a network.

Landscapes

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

Abstract

障害状態から安全な姿勢へ短時間で復帰することができるロボット制御装置、方法、及びプログラムを提供する。 経路生成部(12)が、ロボット(30)の動作時に障害が発生したことが検知されると、障害発生後のロボット(30)の周辺の環境情報、ロボット仕様情報、及びロボットが復帰すべき姿勢を示す安全姿勢情報を取得し、取得した情報に基づいて、障害発生後の姿勢から安全姿勢までのロボット(30)の経路を生成し、制御部(14)が、経路生成部(12)により生成された経路に基づいて、ロボット(30)が安全姿勢となるように、ロボット(30)の動作を制御する。

Description

ロボット制御装置、方法、及びプログラム
 本発明は、ロボット制御装置、ロボット制御方法、及びロボット制御プログラムに関する。
 ロボットが障害物との衝突や自己干渉の発生により停止状態に陥った場合に、例えばロボットの原点姿勢などの安全な姿勢にロボットを復帰させることが行われる。この復帰動作は、ティーチングされた経路を逆順実行したり、ユーザがティーチングペンダント(TP)を操作したりすることにより実現されている。
 例えば、異なる複数種類の移動コマンドを有し作業時に異なる経路を採り得るロボットを原点まで復帰させる制御方法が提案されている(特許文献1参照)。この方法では、既に実行された制御プログラムを順次逆実行するに際し、ある移動コマンドに対し、通常動作時にその移動コマンドで出発した位置を戻し動作時の到達位置に置き換え、各移動コマンドをその一つ前の移動コマンドの位置引数を用いて実行することにより通常動作時の経路を遡行して作業原点まで復帰する。
 また、いかなるタイミングで停止した場合でも、原点へ復帰できるロボット制御方法が提案されている(特許文献2参照)。この方法では、教示データに基づく実行プログラムにより原点から移動しながら動作を行うロボットが異常停止した時に、実行プログラム及び教示データを用いて原点から異常停止した停止位置への動作経路を算出し、動作経路を逆行する逆行経路を用いて原点へ復帰させる。この際、ロボットに作用する負荷情報から、干渉物への干渉を検知し、各負荷情報に基づいて干渉物から離脱する離脱位置を算出し、離脱位置から原点への復帰経路を逆行経路を用いて算出する。
特開平7-28520号公報 特開2018-144171号公報
 しかしながら、障害物との衝突などの障害発生状態では、ロボットは衝突した障害物と複雑に絡み合ったり、ロボット自身が複雑な姿勢になっていたりするため、経路の逆順実行では復帰できない場合も多い。経路の逆順実行により自動で復帰できない場合には、再度の衝突やリミットオーバーを起こさず安全な姿勢に復帰させるために、ユーザによる熟練した慎重な操作が必要であり、障害からの復帰に要する時間が長くなるという問題があった。復帰に時間を要すると、ロボットの通常動作により行われている作業の生産性の低下を招いてしまう。
 本発明は、上記の点に鑑みてなされたものであり、障害状態から安全な姿勢へ短時間で復帰することができるロボット制御装置、方法、及びプログラムを提供することを目的とする。
 上記目的を達成するために、本発明に係るロボット制御装置は、ロボットの動作時に障害が発生したことが検知されると、障害発生後の前記ロボットの周辺の環境情報、前記ロボットの仕様情報、及び前記ロボットが復帰すべき姿勢の情報を取得し、取得した情報に基づいて、障害発生後の姿勢から前記復帰すべき姿勢までのロボットの経路を生成する生成部と、前記生成部により生成された経路に基づいて、前記ロボットが前記復帰すべき姿勢となるように、前記ロボットの動作を制御する制御部と、を含んで構成することができる。
 本発明に係るロボット制御装置によれば、生成部が、ロボットの動作時に障害が発生したことが検知されると、障害発生後のロボットの周辺の環境情報、ロボットの仕様情報、及びロボットが復帰すべき姿勢の情報を取得し、取得した情報に基づいて、障害発生後の姿勢から復帰すべき姿勢までのロボットの経路を生成する。そして、制御部が、生成部により生成された経路に基づいて、ロボットが復帰すべき姿勢となるように、ロボットの動作を制御する。これにより、障害状態から安全な姿勢へ短時間で復帰することができる。
 また、前記生成部は、前記ロボットの周辺の各点の3次元位置を示す3次元計測データを、障害発生後の前記環境情報として取得し、前記3次元計測データに基づいて、障害発生後における前記ロボットの周辺に存在する物体の形状及び位置を特定することができる。これにより、CADデータなどで事前に形状及び位置の情報が与えられている物体について、障害の発生により変形等が生じた場合でも、障害発生後の物体の形状及び位置を特定することができる。
 また、前記生成部は、障害発生前における、前記ロボットの周辺に存在する物体の形状及び位置を示す3次元情報と、障害発生後に取得された前記環境情報とを用いて、障害発生後における前記ロボットの周辺に存在する物体の形状及び位置を特定することができる。CADデータなどで事前に与えられている物体の3次元情報を用いることにより、障害発生後の物体の形状及び位置を精度良く特定することができる。
 また、前記生成部は、前記ロボットの周辺の各点の3次元位置を示す3次元計測データを、障害発生後の前記環境情報として取得し、前記3次元情報がマッチングする3次元計測データの部分については、前記3次元情報に基づいて前記ロボットの周辺に存在する物体の形状及び位置を特定し、マッチングする前記3次元情報が存在しない3次元計測データの部分については、前記3次元計測データに基づいて前記ロボットの周辺に存在する物体の形状及び位置を特定することができる。これにより、3次元情報を利用できる部分については精度良く物体の形状及び位置を特定することができ、また、全範囲について3次元計測データのみで特定する場合に比べて、処理負荷を軽減することができる。
 また、前記生成部は、障害発生後に前記環境情報を計測できない領域を、障害物候補領域として特定することができる。これにより、障害状態から復帰するための、より安全な経路を生成することができる。
 また、前記生成部は、前記ロボットの周辺の領域毎に、障害物が存在する可能性に応じたコストを設定しておき、前記障害物候補領域のコストに応じて、前記障害物候補領域に障害物が存在するか否かを特定することができる。これにより、環境情報を計測できない領域について、障害物が存在するか否かを柔軟に判断して、経路を生成することができる。
 また、前記生成部は、障害発生後における前記ロボットの周辺に存在する物体の形状及び位置と、生成した経路を示す情報とを表示装置に表示することができる。これにより、ユーザは、ロボットを動作させる前に、経路やロボット周辺の物体の情報を確認することができる。
 また、前記生成部は、前記表示装置に表示した、障害発生後における前記ロボットの周辺に存在する物体の形状及び位置と、前記経路との少なくとも一方に対する修正を受け付けることができる。これにより、修正が必要な場合には修正を行った上で、経路の再生成を指示することができる。
 また、前記生成部は、前記経路を生成できない場合に、前記経路を生成できない原因に関する情報を表示装置に表示することができる。これにより、ユーザに対して、経路を生成できない原因を除去するように促すことができる。
 また、本発明に係るロボット制御方法は、生成部が、ロボットの動作時に障害が発生したことが検知されると、障害発生後の前記ロボットの周辺の環境情報、前記ロボットの仕様情報、及び前記ロボットが復帰すべき姿勢の情報を取得し、取得した情報に基づいて、障害発生後の姿勢から前記復帰すべき姿勢までのロボットの経路を生成し、制御部が、前記生成部により生成された経路に基づいて、前記ロボットが前記復帰すべき姿勢となるように、前記ロボットの動作を制御する方法である。
 また、本発明に係るロボット制御プログラムは、コンピュータを、ロボットの動作時に障害が発生したことが検知されると、障害発生後の前記ロボットの周辺の環境情報、前記ロボットの仕様情報、及び前記ロボットが復帰すべき姿勢の情報を取得し、取得した情報に基づいて、障害発生後の姿勢から前記復帰すべき姿勢までのロボットの経路を生成する生成部、及び、前記生成部により生成された経路に基づいて、前記ロボットが前記復帰すべき姿勢となるように、前記ロボットの動作を制御する制御部として機能させるためのプログラムである。
 本発明に係るロボット制御装置、方法、及びプログラムによれば、障害発生後の環境情報を取得して、障害発生後の姿勢から復帰すべき姿勢までのロボットの経路を生成することにより、障害状態から安全な姿勢へ短時間で復帰することができる。
第1~第3実施形態に係るロボット制御システムの概略構成を示す図である。 第1~第3実施形態に係るロボット制御装置のハードウェア構成を示すブロック図である。 第1実施形態に係るロボット制御システムの機能ブロック図である。 経路の逆順実行で復帰動作を行う場合を説明するための図である。 経路の逆順実行での復帰動作の問題点を説明するための図である。 本実施形態の復帰動作を説明するための図である。 第1実施形態におけるロボット制御処理の一例を示すフローチャートである。 オクルージョンの発生を説明するための図である。 第2実施形態に係るロボット制御システムの機能ブロック図である。 コストの設定の一例を示す図である。 コストの設定の他の例を示す図である。 オクルージョンエリアのコストの計算を説明するための図である。 仮想の障害物の設定を説明するための図である。 第2実施形態における復帰動作のための経路の生成を説明するための図である。 第2実施形態におけるロボット制御処理の一例を示すフローチャートである。 第3実施形態に係るロボット制御システムの機能ブロック図である。 表示画面の一例を示す図である。 第3実施形態におけるロボット制御処理の一例を示すフローチャートである。
 以下、本発明の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与している。また、図面の寸法及び比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
 また、以下の各実施形態では、本発明に関する部分、すなわち、ロボットの障害発生時の復帰動作に関する部分ついて主に説明し、ワークのピックアンドプレース等の通常の動作に関しては、本発明に関連する部分についてのみ説明する。
<第1実施形態>
 図1に示すように、第1実施形態に係るロボット制御システム100は、ロボット制御装置10と、操作端末20と、ロボット30と、3Dセンサ35とを含んで構成される。
 ロボット30は、例えば、3次元空間における動作に必要な6自由度の構成を備えた垂直多関節型のロボットである。なお、ロボット30の自由度は、6自由度に冗長自由度を加えた7自由度としてもよい。ロボット30は、ロボット制御装置10により生成された経路に従って制御されて動作する。
 また、ロボット30には、障害物との衝突等の障害の発生を検知するセンサ(図示省略)が設けられており、障害の発生が検知されると、ロボット30は動作を停止し、自身の現在の姿勢を示す現在姿勢情報と共に、障害が発生したことをロボット制御装置10へ通知する。
 なお、ロボット30の姿勢は、ロボット30の手先(ロボットハンドなどのツールが取り付けられる側)の基準位置がある位置(x,y,z)及び姿勢(roll,pitch,yaw)にある場合の、ロボット30の第一関節から第N関節までの各関節の値(回転角度)の系列(J1,J2,・・・,JN)で表される(Nはロボットの関節数)。
 操作端末20は、情報を入力するための情報処理装置で、例えば、パーソナルコンピュータやティーチングペンダント(TP)で実現することができる。操作端末20は、経路の生成及びロボットの制御に必要な情報の入力を受け付け、受け付けた情報を、ロボット制御装置10へ入力する。経路の生成及びロボットの制御に必要な情報には、環境情報、ロボット仕様情報、及び安全姿勢情報が含まれる。各情報については後述する。
 3Dセンサ35は、ロボット30及びロボット30の動作領域を含む周辺の環境を計測し、計測結果を出力する。3Dセンサ35は、例えば、3次元カメラやレーザレーダなどにより実現することができる。本実施形態では、3Dセンサ35は、周辺環境の各点の3次元位置を示す点群データを計測するものとする。3Dセンサ35は、計測結果である点群データを操作端末20へ入力する。なお、点群データは、本発明の3次元計測データの一例であるが、3次元計測データは、DepthMapやラインスキャンデータなどでもよく、点群データに限定されない。
 ロボット制御装置10は、ロボット30から障害の発生が通知されると、ロボット30を指定された安全姿勢に復帰させるための経路を生成し、生成した経路に基づいて、ロボット30の復帰動作を制御する。なお、本実施形態における経路とは、ロボット30の手先の基準位置を、任意の始点から終点まで動作させるときのロボット30の姿勢を時系列に並べたものである。
 ロボット制御装置10は、パーソナルコンピュータや産業用コンピュータで実現することができる。図2は、本実施形態に係るロボット制御装置10のハードウェア構成を示すブロック図である。図2に示すように、ロボット制御装置10は、CPU(Central Processing Unit)42、メモリ44、記憶装置46、入力装置48、出力装置50、光ディスク駆動装置52、及び通信インタフェース(I/F)54を有する。各構成は、バスを介して相互に通信可能に接続されている。
 記憶装置46には、ロボット制御処理を実行するためのロボット制御プログラムが格納されている。CPU42は、中央演算処理ユニットであり、各種プログラムを実行したり、各構成を制御したりする。すなわち、CPU42は、記憶装置46からプログラムを読み出し、メモリ44を作業領域としてプログラムを実行する。CPU42は、記憶装置46に記憶されているプログラムに従って、上記各構成の制御及び各種の演算処理を行う。
 メモリ44は、RAM(Random Access Memory)により構成され、作業領域として一時的にプログラム及びデータを記憶する。記憶装置46は、ROM(Read Only Memory)、及びHDD(Hard Disk Drive)又はSSD(Solid State Drive)により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
 入力装置48は、例えば、キーボードやマウス等の、各種の入力を行うための装置である。出力装置50は、例えば、ディスプレイやプリンタ等の、各種の情報を出力するための装置である。出力装置50として、タッチパネルディスプレイを採用することにより、入力装置48として機能させてもよい。光ディスク駆動装置52は、各種の記録媒体(CD-ROM又はブルーレイディスクなど)に記憶されたデータの読み込みや、記録媒体に対するデータの書き込み等を行う。
 通信インタフェース54は、他の機器と通信するためのインタフェースであり、例えば、イーサネット(登録商標)、FDDI又はWi-Fi(登録商標)等の規格が用いられる。
 なお、操作端末20のハードウェア構成も、図2に示す構成と概ね同様であるため、説明を省略する。
 次に、第1実施形態に係るロボット制御装置10及び操作端末20の機能構成について説明する。
 図3は、ロボット制御システム100の機能構成の例を示すブロック図である。図3に示すように、操作端末20は、機能構成として、環境情報入力部22と、ロボット仕様入力部24と、安全姿勢入力部26とを含む。
 環境情報入力部22は、ロボット30及びロボット30の動作領域を含む周辺の環境を示す環境情報の入力を受け付け、ロボット制御装置10へ入力する。環境情報入力部22は、環境情報として、3Dセンサ35から出力される計測結果を受け付ける。また、環境情報入力部22は、環境情報として、周辺機器、棚、コンテナなどの障害物の形状及び位置を示す3次元情報であるCADデータの入力を受け付ける。なお、障害物は、本発明の物体の一例である。
 ロボット仕様入力部24は、ロボット30の仕様を示すロボット仕様情報の入力を受け付け、ロボット制御装置10へ入力する。ロボット仕様情報には、例えば、ロボットの形状情報や、手先の基準位置、関節配置等のキネマティクス情報、各関節の限界角度、回転速度等のジョイント情報が含まれる。
 安全姿勢入力部26は、障害発生時にロボット30が復帰すべき安全姿勢を示す安全姿勢情報の入力を受け付け、ロボット制御装置10へ入力する。安全姿勢としては、ロボット30原点(例えば、各関節の角度が0度)の姿勢や、周辺環境に応じて、完全に障害物の存在しない位置へ復帰させた場合の姿勢などとすることができる。
 また、図3に示すように、ロボット制御装置10は、機能構成として、経路生成部12と、制御部14とを含む。各機能構成は、CPU42が記憶装置46に記憶されたロボット制御プログラムを読み出し、メモリ44に展開して実行することにより実現される。なお、経路生成部12は、本発明の生成部の一例であり、制御部14は、本発明の制御部の一例である。
 ここで、図4の左図に示すように、破線矢印で示す経路に従って、(1)→(2)の順にロボット30が動作する場合において、(2)の動作中に障害が発生したとする。この場合において、従来技術のように、経路の逆順実行により復帰動作を行う場合は、図4の右図に示すように、(1)→(2)の逆順で(2’)→(1’)の経路で復帰動作が行われる。
 しかし、図5に示すように、障害発生後に障害物の位置や形状が変わるなど、周辺の環境が変化した場合、逆順実行では、位置が変わってしまった障害物に再度衝突してしまう可能性があるなど、安全に復帰動作を行うことができない場合がある。
 そこで、本実施形態では、例えば、図6中の(3)→(4)に示すように、障害発生後の周辺環境に応じて、新たに復帰のための経路を生成して、復帰動作を行う。
 具体的には、経路生成部12は、ロボット30の現在姿勢情報と共に、障害が発生したことの通知を制御部14を介してロボット30から受け取ると、環境情報入力部22から入力された障害発生後の環境情報、ロボット仕様入力部24から入力されたロボット仕様情報、及び安全姿勢入力部26から入力された安全姿勢情報を取得する。
 経路生成部12は、取得した環境情報に基づいて、障害発生後の障害物の位置及び形状(以下、「障害物情報」という)を特定する。具体的には、経路生成部12は、障害発生後に環境情報として取得した3Dセンサ35の計測結果である点群データに基づいて、障害発生後におけるロボット30の周辺に存在する障害物情報を特定する。例えば、所定範囲毎に切出した点群データを、予め学習された識別器に入力し、その認識結果として、障害物情報を得ることができる。
 また、経路生成部12は、障害発生前における、ロボット30の周辺に存在する障害物の形状及び位置を示す3次元情報、例えば、通常動作のための経路生成に使用されたCADデータを取得する。そして、経路生成部12は、点群データに対して、CADデータに含まれる各障害物の形状を回転及び移動させながらマッチングすることにより、障害発生後におけるロボット30の周辺に存在する障害物情報を特定してもよい。この場合、既知の形状データを用いることができるため、点群データのみで障害物情報を特定する場合に比べ、精度良く障害物情報を特定することができる。
 また、経路生成部12は、CADデータで示される各障害物のうち、点群データとマッチングする部分については、CADデータのマッチング結果に基づいて、障害発生後の障害物情報を特定し、マッチングするCADデータが存在しない点群データの部分については、点群データに基づいて、障害発生後の障害物情報を特定してもよい。この場合、CADデータを利用できる部分については精度良く障害物情報を特定することができ、また、全範囲について点群データのみで障害物情報を特定する場合に比べて、処理負荷を軽減することができる。
 なお、障害発生前のCADデータで示される障害物のうち、障害発生後の点群データにマッチングする部分がない障害物は、障害の発生により、形状が変化したことが想定される。
 経路生成部12は、特定した障害物情報、取得したロボット仕様情報と安全姿勢情報、通知された現在姿勢情報に基づいて、現在姿勢から安全姿勢までのロボット30の経路を生成する。経路の生成には、例えば、RRT(Rapidly- exploring Random Tree)、PRM(Probabilistic RoadMap)などのパスプランニングの手法を用いることができる。経路生成部12は、生成した経路の情報を制御部14へ受け渡す。
 このように、障害発生後の環境情報を改めて取得して、障害発生後の障害物情報を特定した上で、安全姿勢に復帰させるための経路を生成することで、安全に復帰動作を行うことができる。
 制御部14は、ロボット30から、現在姿勢情報と共に、障害が発生したことが通知されると、現在姿勢情報及び障害が発生したことを経路生成部12へ通知する。また、制御部14は、経路生成部12により生成された経路に基づいて、ロボット30が安全姿勢となるように復帰動作を制御する。
 次に、第1実施形態に係るロボット制御システム100の作用について説明する。
 ロボット30において、ワークのピックアンドプレース等の通常の動作が行われている際に、図7に示すロボット制御処理が実行される。
 図7は、ロボット制御装置10のCPU42により実行されるロボット制御処理の流れを示すフローチャートである。CPU42が記憶装置46からロボット制御プログラムを読み出して、メモリ44に展開して実行することにより、CPU42がロボット制御装置10の各機能構成として機能し、図7に示すロボット制御処理が実行される。なお、ロボット制御処理は、本発明のロボット制御方法の一例である。
 まず、ステップS12で、制御部14が、ロボット30から、現在姿勢情報と共に、障害が発生したことが通知されたか否かを判定することにより、障害が発生したか否かを判定する。障害が発生していない場合には、本ステップの判定を繰り返し、障害が発生した場合には、制御部14が、現在姿勢情報及び障害が発生したことを経路生成部12へ通知し、ステップS14へ移行する。
 ステップS14では、経路生成部12が、環境情報入力部22から入力された障害発生後の環境情報を取得する。
 次に、ステップS16で、経路生成部12が、取得した環境情報に基づいて、障害発生後の障害物情報(形状及び位置)を特定する。
 次に、ステップS18で、経路生成部12が、ロボット仕様入力部24から入力されたロボット仕様情報を取得する。なお、ロボット仕様情報は、障害の発生前後で変化しないため、通常の経路生成時に取得済みのロボット仕様情報がロボット制御装置10の所定領域に記憶されている場合には、そのロボット仕様情報を読み出してもよい。
 次に、ステップS20で、経路生成部12が、安全姿勢入力部26から入力された安全姿勢情報を取得する。なお、障害の状況によらず、予め定めた安全姿勢に復帰させる場合には、安全姿勢情報をロボット制御装置10の所定領域に予め記憶しておいて、その安全姿勢情報を読み出してもよい。
 なお、ステップS14及びS16と、ステップS18と、ステップS20との処理順は、図7に示す例に限定されず、いずれを先に実行してもよいし、並行して実行してもよい。
 次に、ステップS22で、経路生成部12が、上記ステップS16で特定した障害物情報、上記ステップS18で取得したロボット仕様情報、上記ステップS20で取得した安全姿勢情報、及び上記ステップS12で通知された現在姿勢情報に基づいて、現在姿勢から安全姿勢までのロボット30の経路を、例えばパスプランニングの手法を用いて生成する。
 次に、ステップS24で、制御部14が、上記ステップS22で経路生成部12により生成された経路に基づいて、ロボット30が安全姿勢となるように復帰動作を制御し、ロボット制御処理は終了する。
 復帰動作の完了後は、通常動作を再開させたり、通常動作を一旦停止したりするなど、アプリケーションに応じた処理を実行すればよい。
 以上説明したように、第1実施形態に係るロボット制御システム100によれば、ロボット制御装置10が、障害発生後の環境情報を改めて取得して、障害発生後の障害物の形状及び位置を特定した上で、安全姿勢に復帰させるための経路を生成する。これにより、再度の衝突やリミットオーバーを起こすことなく、また、ユーザによる熟練した慎重な操作を必要とすることなく、障害状態から安全な姿勢へ短時間で復帰することができる。
<第2実施形態>
 次に、第2実施形態について説明する。なお、第2実施形態に係るロボット制御システムにおいて、第1実施形態に係るロボット制御システム100と同一又は等価な構成要素及び部分には同一の参照符号を付与し、詳細な説明を省略する。
 図1に示すように、第2実施形態に係るロボット制御システム200は、ロボット制御装置210と、操作端末20と、ロボット30と、3Dセンサ35とを含んで構成される。
 第1実施形態において、障害発生後の環境情報を改めて取得することについて説明したが、障害発生後において、3Dセンサ35において点群データを計測できないオクルージョンエリアが生じる場合がある。例えば、図8の左図に示すように、障害発生前には作業空間全体が計測結果として得られていたが、障害発生により箱が横転し、図8の右図に示すように、オクルージョン(図8中の網掛け部分)により、箱の内側の計測結果が得られない状態となる場合がある。
 第2実施形態では、このようなオクルージョンエリアの発生も考慮して、障害発生後の障害物情報を特定した上で、安全姿勢へ復帰させるための経路を生成する。
 第2実施形態に係るロボット制御装置210の機能構成について説明する。なお、第2実施形態に係るロボット制御装置210のハードウェア構成は、図2に示す第1実施形態に係るロボット制御装置10のハードウェア構成と同様であるため、説明を省略する。
 図9は、ロボット制御システム200の機能構成の例を示すブロック図である。図9に示すように、ロボット制御装置210は、機能構成として、経路生成部212と、制御部14と、コスト評価部16とを含む。なお、経路生成部212及びコスト評価部16は、本発明の生成部の一例である。
 コスト評価部16は、環境情報入力部22から環境情報を取得し、取得した環境情報に基づいて、ロボット30周辺の障害物情報を特定する。障害物情報の特定方法は、第1実施形態の経路生成部12における特定方法と同様である。
 また、コスト評価部16は、特定した障害物情報に基づいて、オクルージョンエリアを特定する。なお、オクルージョンエリアは、本発明の障害物候補領域の一例である。例えば、点群データにCADデータをマッチングさせて障害物情報を特定した場合、障害物の移動や回転等が把握できるため、オクルージョンエリアも特定することができる。例えば、図8の場合、箱のCADデータと点群データとのマッチングにより、箱が横転した状態になっていることが把握され、CADデータに基づく箱の形状から、箱の内部がオクルージョンエリアになっていることを特定することができる。
 コスト評価部16は、特定したオクルージョンエリアに障害物が存在するか否かを評価するためのコストを計算する。具体的には、コスト評価部16は、ロボット30の周辺の領域毎に、障害物が存在する可能性に応じたコストを設定しておく。
 例えば、床に近い方が、障害物が存在する可能性が高く、一方で、空中に障害物が存在する可能性は低いという前提の下、図10に示すように、床面に近い領域ほどコストが高くなるように設定することができる。また、例えば、ロボット30の中心に近い位置は障害物が存在する可能性が低いという前提の下、図11に示すように、ロボット30に近い領域ほどコストが低くなるように設定することができる。なお、本実施形態では、コストが高いほど、障害物が存在する可能性が高いことを表すものとする。各領域のコストは1パターンのみ設定してもよいし、複数設定してもよい。本実施形態では、図10に示すパターンと図11に示すパターンでコストが設定されているものとする。
 コスト評価部16は、例えば、図12に示すように、設定されている各領域のコストを足し合わせ、オクルージョンエリアのコストを計算する。また、コスト評価部16は、コストが予め定めた閾値以下のオクルージョンエリアには障害物は存在しないと評価する。一方、コスト評価部16は、コストが閾値を超えるオクルージョンエリアには障害物が存在すると評価し、例えば図13に示すように、その領域に相当する形状(例えば直方体などの形状)の仮想の障害物を設定する。
 コスト評価部16は、設定した仮想の障害物についての障害物情報を、実際の障害物についての障害物情報に追加し、障害発生後のロボット30周辺の障害物情報を経路生成部212へ受け渡す。
 経路生成部212は、コスト評価部16で特定された障害物情報、ロボット仕様入力部24から入力されたロボット仕様情報、安全姿勢入力部26から入力された安全姿勢情報、及び制御部14から通知されたロボット30の現在姿勢情報を取得し、取得した情報に基づいて、現在姿勢から安全姿勢に復帰するための経路を生成する。
 第2実施形態では、上記の仮想の障害物も含む障害物情報が特定されているため、例えば図14に示すように、実際の障害物だけでなく、オクルージョンエリアのうち、障害物が存在する可能性の高い領域も回避して、復帰動作のための経路が生成される。
 次に、第2実施形態に係るロボット制御システム200の作用について説明する。第2実施形態では、ロボット制御装置210において、図15に示すロボット制御処理が実行される。なお、第2実施形態におけるロボット制御処理において、第1実施形態におけるロボット制御処理(図7)と同様の処理については、同一のステップ番号を付して詳細な説明を省略する。
 ステップS12~S16を経て、ステップS212へ移行すると、コスト評価部16が、上記ステップS14で特定した実際の障害物についての障害物情報に基づいて、オクルージョンエリアを特定し、特定したオクルージョンエリアに障害物が存在するか否かを評価するためのコストを計算する。そして、コスト評価部16は、コストが予め定めた閾値以下のオクルージョンエリアには障害物は存在しないと評価し、コストが閾値を超えるオクルージョンエリアには障害物が存在すると評価する。
 次に、ステップS214で、コスト評価部16が、障害物が存在すると評価したオクルージョンエリアの領域に相当する形状(例えば直方体などの形状)の仮想の障害物を設定し、設定した仮想の障害物についての障害物情報を、上記ステップS16で特定した実際の障害物についての障害物情報に追加し、障害発生後のロボット30周辺の障害物情報として経路生成部212へ受け渡す。
 以下、第1実施形態と同様にステップS18~S24が実行されて、ロボット制御処理は終了する。
 以上説明したように、第2実施形態に係るロボット制御システム200によれば、ロボット制御装置210が、オクルージョンエリアの発生も考慮して、障害発生後の環境情報を改めて取得して、障害発生後の障害物の形状及び位置を特定した上で、安全姿勢に復帰させるための経路を生成する。これにより、障害物が崩れてきてロボットの動作中に新たに障害物が発生しそうなエリア(コストが閾値を超える領域)や、机の下などの3Dセンサで計測不可だが明らかに障害物が存在しないエリア(コストが閾値以下の領域)などに柔軟に対応した安全な経路を効率よく生成することができる。
<第3実施形態>
 次に、第3実施形態について説明する。なお、第3実施形態に係るロボット制御システムにおいて、第1実施形態に係るロボット制御システム100と同一又は等価な構成要素及び部分には同一の参照符号を付与し、詳細な説明を省略する。
 図1に示すように、第3実施形態に係るロボット制御システム300は、ロボット制御装置310と、表示部28を備えた操作端末20と、ロボット30と、3Dセンサ35とを含んで構成される。
 第3実施形態に係るロボット制御装置310の機能構成について説明する。なお、第3実施形態に係るロボット制御装置310のハードウェア構成は、図2に示す第1実施形態に係るロボット制御装置10のハードウェア構成と同様であるため、説明を省略する。
 図16は、ロボット制御システム300の機能構成の例を示すブロック図である。図16に示すように、ロボット制御装置310は、機能構成として、経路生成部312と、制御部14とを含む。なお、経路生成部312は、本発明の生成部の一例である。
 経路生成部312は、第1実施形態における経路生成部12と同様に、現在姿勢から安全姿勢に復帰するための経路を生成する。障害物を回避可能な経路が存在しない、障害発生時にロボット30がロックされた等の原因により、経路を生成することができない場合、経路生成部312は、経路を生成できない原因に関するメッセージを生成する。例えば、障害物を回避可能な経路が存在しないことにより経路を生成できなかった場合には、「障害物を回避可能な経路を生成できませんでした。障害物を除去してください。」等のメッセージを生成する。
 経路生成部312は、生成した経路又はメッセージと、経路を生成する際に特定した、障害発生後におけるロボット30の周辺に存在する障害物についての障害物情報とを、表示部28に表示する。
 図17に、表示部28に表示する表示画面60の一例を示す。表示画面60には、障害物情報と、生成した経路に基づいてロボット30の動作をシミュレーションした結果とを3次元のアニメーションで表示するための表示領域62が含まれる。また、表示画面60には、表示領域62に表示された経路及び障害物情報の少なくとも一方に対する修正を受け付けるための、各種パラメータの入力領域64が含まれる。
 入力領域64へは、環境情報入力部22、ロボット仕様入力部24、及び安全姿勢入力部26を介してユーザにより修正された値等が入力される。例えば、障害物が存在する領域を生成された経路が通過するような場合には、経路を修正する情報が入力される。また、例えば、3Dセンサ35の計測エラーや、点群データから障害物を特定する際の認識エラー等により、特定された障害物情報に誤りがある場合には、正しい障害物情報が入力される。なお、表示領域62に対するドラッグ操作等による修正を受け付け可能にしてもよい。
 さらに、表示画面60には、経路生成部312で生成されたメッセージが表示されるメッセージ領域66と、生成された経路でのロボット30の動作を許可する場合に選択される実行ボタン68とが含まれる。
 入力領域64を介して入力された経路及び障害物情報の少なくとも一方に対する修正は、環境情報入力部22、ロボット仕様入力部24、及び安全姿勢入力部26を介して経路生成部312へ入力される。したがって、経路生成部312は、修正された情報に基づいて、経路を再生成する。
 また、メッセージ領域66に表示されたメッセージにしたがって、ユーザが障害物の除去やロボット30のロック解除等の対処を行い、対処完了を示すコマンドが操作端末20から入力されると、3Dセンサ35により、対処完了後の環境情報が改めて計測され、環境情報入力部22を介して経路生成部312へ入力される。したがって、経路生成部312は、対処完了後の環境情報に基づいて、経路を再生成する。
 また、実行ボタン68が選択されると、表示部28から制御部14へ、生成された経路でロボット30を動作させる許可が通知され、制御部14により、ロボット30の動作が制御される。
 次に、第3実施形態に係るロボット制御システム300の作用について説明する。第3実施形態では、ロボット制御装置310において、図18に示すロボット制御処理が実行される。なお、第3実施形態におけるロボット制御処理において、第1実施形態におけるロボット制御処理(図7)と同様の処理については、同一のステップ番号を付して詳細な説明を省略する。
 ステップS12~S22を経て、経路生成部312が経路の生成を実行し、次のステップS312で、経路が生成できたか否かを判定する。経路が生成できた場合には、ステップS314へ移行し、経路が生成できなかった場合には、ステップS318へ移行する。
 ステップS314では、経路生成部312が、上記ステップS22で生成した経路、及び上記ステップS16で特定した障害物情報に関する内容を含む表示画面60を表示部28に表示する。
 次に、ステップS316で、操作端末20が、表示画面60に表示された内容に対して修正を受け付けたか否かを判定する。修正を受け付けた場合には、ステップS22に戻り、経路生成部312が、修正された情報に基づいて、経路を再生成する。一方、修正がない場合、又は修正が終了した場合には、表示画面60に含まれる実行ボタン68をユーザが選択する。
 これにより、ステップS24へ移行し、表示部28から制御部14へ、生成された経路でロボット30を動作させる許可が通知され、制御部14により、ロボット30の動作が制御される。
 また、ステップS318では、経路生成部312が、経路を生成できない原因に関するメッセージを生成し、メッセージ領域66に生成したメッセージを含む表示画面60を表示部28に表示する。
 次に、ステップS320で、メッセージ領域66に表示されたメッセージにしたがった原因の除去などの対処が完了したことを示すコマンドが操作端末20から入力されると、ステップS14に戻る。
 以上説明したように、第3実施形態に係るロボット制御システム200によれば、ロボット制御装置310が、障害発生後の環境情報に基づいて生成した経路及び障害物情報を表示して、ユーザからの修正を受け付ける。また、経路が生成できない場合には、その原因をユーザに提示して、原因の除去などの対処を促す。これにより、ロボットの復帰動作が実行される前に、ユーザがロボットの動作を確認して、修正が必要な場合には修正を行った上で、経路の再生成を指示したり、原因を除去したりすることができる。
 なお、第3実施形態では、表示部への各種表示や修正の受け付け等を第1実施形態に加えた構成として説明したが、第2実施形態に適用してもよい。
 また、第3実施形態では、操作端末20が備える表示部28に経路等を表示する場合について説明したが、表示部28は操作端末20とは独立した表示装置として構成してもよい。
 また、上記各実施形態では、パスプランニングにより経路を生成する場合について説明したが、これに限定されず、事前に学習した結果に基づいて経路を生成するなどしてもよい。
 また、上記各実施形態では、垂直多関節型のロボットの制御について説明したが、本発明は、垂直多関節型のロボットに限定されず、任意の開ループ型のロボットに適用できる。また、デルタロボットなどの閉ループ型のロボットに対しても適用できる。さらに、台座が固定されていない浮遊リンク系であるモバイルロボットやモバイルマニピュレータ等、広範なロボットに対しても適用することができる。
 また、上記各実施形態では、ロボット制御装置と操作端末とを別々の装置とする場合について説明したが、ロボット制御装置と操作端末とを1つの情報処理装置で構成するようにしてもよい。また、ロボット制御装置の各機能構成を、それぞれ異なる装置で実現し、上記のロボット制御処理を分散処理により実現してもよい。
 また、上記各実施形態でCPUがソフトウェア(プログラム)を読み込んで実行したロボット制御処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、ロボット制御処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
 また、上記各実施形態では、ロボット制御プログラムが記憶装置に予め記憶(インストール)されている態様を説明したが、これに限定されない。プログラムは、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の記録媒体に記録された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
10、210、310 ロボット制御装置
12、212、312 経路生成部
14   制御部
16   コスト評価部
20   操作端末
22   環境情報入力部
24   ロボット仕様入力部
26   安全姿勢入力部
28   表示部
30   ロボット
35   3Dセンサ
42   CPU
44   メモリ
46   記憶装置
48   入力装置
50   出力装置
52   光ディスク駆動装置
54   通信インタフェース
60   表示画面
62   表示領域
64   入力領域
66   メッセージ領域
68   実行ボタン
100、200、300      ロボット制御システム

Claims (11)

  1.  ロボットの動作時に障害が発生したことが検知されると、障害発生後の前記ロボットの周辺の環境情報、前記ロボットの仕様情報、及び前記ロボットが復帰すべき姿勢の情報を取得し、取得した情報に基づいて、障害発生後の姿勢から前記復帰すべき姿勢までのロボットの経路を生成する生成部と、
     前記生成部により生成された経路に基づいて、前記ロボットが前記復帰すべき姿勢となるように、前記ロボットの動作を制御する制御部と、
     を含むロボット制御装置。
  2.  前記生成部は、前記ロボットの周辺の各点の3次元位置を示す3次元計測データを、障害発生後の前記環境情報として取得し、前記3次元計測データに基づいて、障害発生後における前記ロボットの周辺に存在する物体の形状及び位置を特定する請求項1に記載のロボット制御装置。
  3.  前記生成部は、障害発生前における、前記ロボットの周辺に存在する物体の形状及び位置を示す3次元情報と、障害発生後に取得された前記環境情報とを用いて、障害発生後における前記ロボットの周辺に存在する物体の形状及び位置を特定する請求項1に記載のロボット制御装置。
  4.  前記生成部は、前記ロボットの周辺の各点の3次元位置を示す3次元計測データを、障害発生後の前記環境情報として取得し、前記3次元情報がマッチングする3次元計測データの部分については、前記3次元情報に基づいて前記ロボットの周辺に存在する物体の形状及び位置を特定し、マッチングする前記3次元情報が存在しない3次元計測データの部分については、前記3次元計測データに基づいて前記ロボットの周辺に存在する物体の形状及び位置を特定する請求項3に記載のロボット制御装置。
  5.  前記生成部は、障害発生後に前記環境情報を計測できない領域を、障害物候補領域として特定する請求項1~請求項4のいずれか1項に記載のロボット制御装置。
  6.  前記生成部は、前記ロボットの周辺の領域毎に、障害物が存在する可能性に応じたコストを設定しておき、前記障害物候補領域のコストに応じて、前記障害物候補領域に障害物が存在するか否かを特定する請求項5に記載のロボット制御装置。
  7.  前記生成部は、障害発生後における前記ロボットの周辺に存在する物体の形状及び位置と、生成した経路を示す情報とを表示装置に表示する請求項1~請求項5のいずれか1項に記載のロボット制御装置。
  8.  前記生成部は、前記表示装置に表示した、障害発生後における前記ロボットの周辺に存在する物体の形状及び位置と、前記経路との少なくとも一方に対する修正を受け付ける請求項7に記載のロボット制御装置。
  9.  前記生成部は、前記経路を生成できない場合に、前記経路を生成できない原因に関する情報を表示装置に表示する請求項1~請求項8のいずれか1項に記載のロボット制御装置。
  10.  生成部が、ロボットの動作時に障害が発生したことが検知されると、障害発生後の前記ロボットの周辺の環境情報、前記ロボットの仕様情報、及び前記ロボットが復帰すべき姿勢の情報を取得し、取得した情報に基づいて、障害発生後の姿勢から前記復帰すべき姿勢までのロボットの経路を生成し、
     制御部が、前記生成部により生成された経路に基づいて、前記ロボットが前記復帰すべき姿勢となるように、前記ロボットの動作を制御する
     ロボット制御方法。
  11.  コンピュータを、
     ロボットの動作時に障害が発生したことが検知されると、障害発生後の前記ロボットの周辺の環境情報、前記ロボットの仕様情報、及び前記ロボットが復帰すべき姿勢の情報を取得し、取得した情報に基づいて、障害発生後の姿勢から前記復帰すべき姿勢までのロボットの経路を生成する生成部、及び、
     前記生成部により生成された経路に基づいて、前記ロボットが前記復帰すべき姿勢となるように、前記ロボットの動作を制御する制御部
     として機能させるためのロボット制御プログラム。
PCT/JP2019/010832 2019-03-15 2019-03-15 ロボット制御装置、方法、及びプログラム Ceased WO2020188630A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
PCT/JP2019/010832 WO2020188630A1 (ja) 2019-03-15 2019-03-15 ロボット制御装置、方法、及びプログラム
JP2021506798A JP7078174B2 (ja) 2019-03-15 2019-03-15 ロボット制御装置、方法、及びプログラム
US17/275,307 US11981032B2 (en) 2019-03-15 2019-03-15 Robot control device, method and program for a recovery after an obstruction
EP19919923.3A EP3939752A4 (en) 2019-03-15 2019-03-15 ROBOT CONTROL DEVICE, METHOD AND PROGRAM
CN201980059818.1A CN112714683B (zh) 2019-03-15 2019-03-15 机器人控制装置、方法以及程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/010832 WO2020188630A1 (ja) 2019-03-15 2019-03-15 ロボット制御装置、方法、及びプログラム

Publications (1)

Publication Number Publication Date
WO2020188630A1 true WO2020188630A1 (ja) 2020-09-24

Family

ID=72519693

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/010832 Ceased WO2020188630A1 (ja) 2019-03-15 2019-03-15 ロボット制御装置、方法、及びプログラム

Country Status (5)

Country Link
US (1) US11981032B2 (ja)
EP (1) EP3939752A4 (ja)
JP (1) JP7078174B2 (ja)
CN (1) CN112714683B (ja)
WO (1) WO2020188630A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025047558A1 (ja) * 2023-09-01 2025-03-06 川崎重工業株式会社 動作軌跡生成方法および動作軌跡生成装置

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3725472A1 (de) * 2019-04-16 2020-10-21 Siemens Aktiengesellschaft Verfahren zum ermitteln einer trajektorie eines roboters
US12275134B2 (en) * 2020-02-12 2025-04-15 Fanuc Corporation Robot system
EP4313503A1 (en) * 2021-03-30 2024-02-07 ABB Schweiz AG A method for controlling displacement of a robot
US12157230B2 (en) * 2021-10-04 2024-12-03 Fanuc America Corporation Intelligent clear path
CN120886270B (zh) * 2025-09-29 2025-12-23 西安冠威信息技术有限公司 一种基于数据处理的智能机械臂路径规划方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06102917A (ja) * 1992-09-17 1994-04-15 Fanuc Ltd 安全経路による基準点復帰機能を持つロボットコントローラ
JPH0728520A (ja) 1993-07-14 1995-01-31 Toyota Motor Corp ロボットの原点復帰制御方法
JPH08294886A (ja) * 1995-04-26 1996-11-12 Ishikawajima Shibaura Mach Co Ltd ロボットの制御装置
JPH09212225A (ja) * 1996-01-30 1997-08-15 Komatsu Ltd ロボットの教示装置
JPH1097305A (ja) * 1996-09-24 1998-04-14 Mazda Motor Corp ロボットの制御方法
JP2006012074A (ja) * 2004-06-29 2006-01-12 Fanuc Ltd ロボットの待機位置復帰プログラム作成装置
US20110213497A1 (en) * 2010-02-26 2011-09-01 Agilent Technolgies, Inc. Robot arm and method of controlling robot arm to avoid collisions
JP2012166290A (ja) * 2011-02-14 2012-09-06 Jtekt Corp ロボット搬送装置
JP2013121644A (ja) * 2011-12-12 2013-06-20 Canon Inc ロボット制御システム、制御装置、制御方法、及びプログラム
JP2018144171A (ja) 2017-03-06 2018-09-20 三菱電機株式会社 ロボット制御方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3011026B2 (ja) * 1993-08-03 2000-02-21 株式会社デンソー ロボットの制御装置
EP2041516A2 (en) * 2006-06-22 2009-04-01 Roy Sandberg Method and apparatus for robotic path planning, selection, and visualization
DE112010000775B4 (de) * 2009-02-12 2016-03-17 Kyoto University Industrierobotersystem
KR20110015765A (ko) * 2009-08-10 2011-02-17 삼성전자주식회사 로봇의 경로계획장치 및 그 방법
WO2014056533A1 (en) * 2012-10-11 2014-04-17 Abb Technology Ltd A method and an apparatus for automatically generating a collision free return program for returning a robot from a stop position to a predefined restart position
CN105415376B (zh) * 2016-01-10 2017-03-29 宁波市智能制造产业研究院 一种离线编程装置
US20190070728A1 (en) * 2017-09-05 2019-03-07 Abb Schwelz Ag Robotic systems and methods for operating a robot
US10788585B2 (en) * 2017-09-15 2020-09-29 Toyota Research Institute, Inc. System and method for object detection using a probabilistic observation model
CN108012326B (zh) * 2017-12-07 2019-06-11 珠海市一微半导体有限公司 基于栅格地图的机器人监视宠物的方法及芯片
US20200184196A1 (en) * 2018-12-11 2020-06-11 X Development Llc Volumetric substitution of real world objects
US11016492B2 (en) * 2019-02-28 2021-05-25 Zoox, Inc. Determining occupancy of occluded regions

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06102917A (ja) * 1992-09-17 1994-04-15 Fanuc Ltd 安全経路による基準点復帰機能を持つロボットコントローラ
JPH0728520A (ja) 1993-07-14 1995-01-31 Toyota Motor Corp ロボットの原点復帰制御方法
JPH08294886A (ja) * 1995-04-26 1996-11-12 Ishikawajima Shibaura Mach Co Ltd ロボットの制御装置
JPH09212225A (ja) * 1996-01-30 1997-08-15 Komatsu Ltd ロボットの教示装置
JPH1097305A (ja) * 1996-09-24 1998-04-14 Mazda Motor Corp ロボットの制御方法
JP2006012074A (ja) * 2004-06-29 2006-01-12 Fanuc Ltd ロボットの待機位置復帰プログラム作成装置
US20110213497A1 (en) * 2010-02-26 2011-09-01 Agilent Technolgies, Inc. Robot arm and method of controlling robot arm to avoid collisions
JP2012166290A (ja) * 2011-02-14 2012-09-06 Jtekt Corp ロボット搬送装置
JP2013121644A (ja) * 2011-12-12 2013-06-20 Canon Inc ロボット制御システム、制御装置、制御方法、及びプログラム
JP2018144171A (ja) 2017-03-06 2018-09-20 三菱電機株式会社 ロボット制御方法

Non-Patent Citations (1)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025047558A1 (ja) * 2023-09-01 2025-03-06 川崎重工業株式会社 動作軌跡生成方法および動作軌跡生成装置

Also Published As

Publication number Publication date
CN112714683B (zh) 2024-06-25
EP3939752A4 (en) 2022-10-26
JPWO2020188630A1 (ja) 2021-10-14
CN112714683A (zh) 2021-04-27
JP7078174B2 (ja) 2022-05-31
EP3939752A1 (en) 2022-01-19
US20220032459A1 (en) 2022-02-03
US11981032B2 (en) 2024-05-14

Similar Documents

Publication Publication Date Title
JP7078174B2 (ja) ロボット制御装置、方法、及びプログラム
JP5025598B2 (ja) 干渉チェック制御装置および干渉チェック制御方法
US9727053B2 (en) Information processing apparatus, control method for information processing apparatus, and recording medium
US20070213874A1 (en) Device, program, recording medium and method for robot simulation
US12090666B2 (en) Path generation device, path generation method, and recording medium storing path generation program
US10940585B2 (en) Vibration suppression device
US20240351205A1 (en) Command value generating device, method, and program
US20190099902A1 (en) Robot system
US20180099410A1 (en) Robot control device having function for limiting speed and/or acceleration of robot
US11919171B2 (en) Robot controller
US10406688B2 (en) Offline programming apparatus and method having workpiece position detection program generation function using contact sensor
US10853539B2 (en) Robotic assembly of a mesh surface
JP7660586B2 (ja) 産業システム、異常検知システム及び異常検知方法
JP7500947B2 (ja) 干渉評価装置、方法、及びプログラム
JP7331616B2 (ja) 回避軌道生成装置、方法、及びプログラム
JP2020082285A (ja) 複数のロボットの干渉確認方法、ロボットシステム
JP7484254B2 (ja) 干渉判定装置、方法、及びプログラム
JP2019084648A (ja) ロボット教示方法、ロボット教示装置、ロボットシステム、プログラム及び記録媒体
JP2022077229A (ja) 動作制御プログラム、動作制御方法、および動作制御装置
EP4419294A1 (en) Methods of handling safety of industrial robot, control systems, and robot system
CN116261505B (zh) 自干扰判定装置
JP2000015595A (ja) 物体衝突検出方法およびその装置
US20250303569A1 (en) System, unit, and manufacturing method
US12337482B2 (en) Path generation device and method
CN120659695A (zh) 确定机器人可用的或机器人禁入的空间

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021506798

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2019919923

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 2019919923

Country of ref document: EP