WO2022259600A1 - 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム - Google Patents
情報処理装置、情報処理システム、および情報処理方法、並びにプログラム Download PDFInfo
- Publication number
- WO2022259600A1 WO2022259600A1 PCT/JP2022/003020 JP2022003020W WO2022259600A1 WO 2022259600 A1 WO2022259600 A1 WO 2022259600A1 JP 2022003020 W JP2022003020 W JP 2022003020W WO 2022259600 A1 WO2022259600 A1 WO 2022259600A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- robot
- work
- approach area
- obstacle
- information
- Prior art date
Links
- 230000010365 information processing Effects 0.000 title claims description 175
- 238000003672 processing method Methods 0.000 title claims description 17
- 238000005070 sampling Methods 0.000 claims abstract description 221
- 238000000034 method Methods 0.000 claims abstract description 95
- 238000001514 detection method Methods 0.000 claims abstract description 53
- 238000012986 modification Methods 0.000 claims abstract description 9
- 230000004048 modification Effects 0.000 claims abstract description 9
- 238000013459 approach Methods 0.000 claims description 537
- 238000012545 processing Methods 0.000 claims description 191
- 238000012937 correction Methods 0.000 claims description 168
- 230000033001 locomotion Effects 0.000 claims description 87
- 230000008569 process Effects 0.000 claims description 84
- 238000013523 data management Methods 0.000 claims description 50
- 230000010354 integration Effects 0.000 claims description 36
- 238000013439 planning Methods 0.000 claims description 32
- 230000007613 environmental effect Effects 0.000 claims description 14
- 238000010586 diagram Methods 0.000 description 30
- 238000004891 communication Methods 0.000 description 20
- 238000007726 management method Methods 0.000 description 17
- 230000002452 interceptive effect Effects 0.000 description 16
- 238000013500 data storage Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 7
- 230000036544 posture Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000002730 additional effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/24—Arrangements for determining position or orientation
- G05D1/246—Arrangements for determining position or orientation using environment maps, e.g. simultaneous localisation and mapping [SLAM]
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J5/00—Manipulators mounted on wheels or on carriages
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/60—Intended control result
- G05D1/617—Safety or protection, e.g. defining protection zones around obstacles or avoiding hazards
- G05D1/622—Obstacle avoidance
Definitions
- the present disclosure relates to an information processing device, an information processing system, an information processing method, and a program. Specifically, the present invention relates to an information processing device, an information processing system, an information processing method, and a program for controlling a robot to perform a predetermined action.
- processing performed by the robot there are various types of processing performed by the robot, but one example is the movement and work of performing work a at a certain work position A, then moving to the next work position B, and performing work b at work position B.
- a mobile manipulator as a robot equipped with a manipulator consisting of a working hand portion and an arm portion on a moving body.
- the mobile manipulator can work in various work areas by moving the mobile body.
- the robot When the robot performs work at each work position while moving between a plurality of work positions, the robot positions where the planned work can be performed at each of work positions A and B are confirmed in advance, and furthermore, these work positions are separated from each other. It is necessary to define routes for safe movement. For example, the moving part of the mobile manipulator cannot move forward due to obstacles, and the hand part cannot reach the work target to perform the intended work.
- Patent Document 1 Japanese Patent No. 66418064 discloses a technique for solving such problems.
- This Patent Document 1 discloses a configuration in which a workable area for an object to be worked is calculated for each work position where the robot works before starting work by the robot, and the robot is moved to each workable area to perform the work. disclosed.
- the present disclosure has been made in view of the above problems, for example, and even if a new obstacle is placed in a previously calculated workable area, the new workable area can be efficiently created in consideration of the obstacle. It is an object of the present invention to provide an information processing device, an information processing system, an information processing method, and a program that enable a robot to perform a predetermined work by creating a program.
- a first aspect of the present disclosure includes: a difference obstacle detection unit that detects a difference obstacle corresponding to a difference from obstacles recorded on the predefined map based on information from a sensor that acquires information about the running environment of the robot; modifying the preset approach area, which is the area recorded on the predefined map and which is determined to be executable by the robot without contacting the obstacle, in consideration of the difference obstacle; having an approach region correction unit that generates a corrected approach region;
- the approach area correction unit an information processing device that determines whether or not the robot can work without contacting the difference obstacle with respect to sampling points set inside the preset approach area, and generates the modified approach area; be.
- a second aspect of the present disclosure is An information processing system having a user terminal and an information processing device attached to a robot,
- the user terminal is A predefined map is generated and attached to the robot, which includes locations of obstacles in the robot's running environment and preset approach areas determined to allow the robot to perform work without contacting the obstacles.
- the information processing device attached to the robot, Based on the information of the sensor that acquires the running environment information of the robot, a difference obstacle detection unit that detects a difference obstacle corresponding to a difference from obstacles recorded on the predefined map input from the user terminal; modifying the preset approach area, which is the area recorded on the predefined map and which is determined to be executable by the robot without contacting the obstacle, in consideration of the difference obstacle; having an approach region correction unit that generates a corrected approach region; The approach area correction unit An information processing system that determines whether or not the robot can work without contacting the difference obstacle with respect to sampling points set inside the preset approach area, and generates the corrected approach area. be.
- a third aspect of the present disclosure is An information processing method executed in an information processing device, a difference obstacle detection step in which the difference obstacle detection unit detects a difference obstacle corresponding to a difference from the obstacle recorded in the predefined map based on the information of the sensor that acquires the traveling environment information of the robot;
- the approach area correction unit is an area recorded on the predefined map, and determines a preset approach area that is determined to be capable of being performed by the robot without contacting an obstacle, by using the difference obstacle.
- the approach region correction step includes: Information representing a step of determining whether or not the robot can work without contacting the difference obstacle with respect to the sampling points set inside the preset approach area, and generating the modified approach area. in the processing method.
- a fourth aspect of the present disclosure is An information processing method executed in an information processing system having a user terminal and an information processing device attached to a robot,
- the user terminal A predefined map is generated and attached to the robot, which includes locations of obstacles in the robot's running environment and preset approach areas determined to allow the robot to perform work without contacting the obstacles.
- the information processing device attached to the robot, Based on the information of the sensor that acquires the running environment information of the robot, difference obstacle detection processing for detecting a difference obstacle corresponding to a difference from obstacles recorded on the predefined map input from the user terminal; modifying the preset approach area, which is the area recorded on the predefined map and which is determined to be executable by the robot without contacting the obstacle, in consideration of the difference obstacle; Execute approach area correction processing for generating a correction approach area, In the approach area correction process, An information processing method for generating the corrected approach area by determining whether the robot can work without contacting the difference obstacle with respect to the sampling points set inside the preset approach area. be.
- a fifth aspect of the present disclosure is A program for executing information processing in an information processing device, a differential obstacle detection step of causing the differential obstacle detection unit to detect a differential obstacle corresponding to a difference from the obstacle recorded on the predefined map, based on the information of the sensor that acquires the traveling environment information of the robot;
- the approach area correcting unit changes the preset approach area, which is the area recorded on the predefined map and which is determined to be able to perform the work by the robot without contacting the obstacle, to the difference obstacle.
- the program determines whether or not the robot can work without contacting the difference obstacle with respect to the sampling points set inside the preset approach area, and generates the corrected approach area.
- the program of the present disclosure is, for example, a program that can be provided in a computer-readable format to an information processing device or computer system capable of executing various program codes via a storage medium or communication medium.
- processing according to the program is realized on the information processing device or computer system.
- a system is a logical collective configuration of a plurality of devices, and the devices of each configuration are not limited to being in the same housing.
- the approach area defined as the work area of the robot is changed.
- a device and method that can be corrected quickly are realized.
- a difference obstacle detection unit that detects a difference obstacle corresponding to a difference from obstacles recorded on the predefined map, based on information from a sensor that acquires the robot's running environment information;
- a modified approach area is obtained by modifying a preset approach area, which is an area recorded on a predefined map and determined to be able to perform work by a robot without contacting an obstacle, in consideration of a differential obstacle. It has a generating approach region corrector.
- the approach area correction unit generates a corrected approach area by determining whether or not the robot can work without contacting the difference obstacle with respect to the sampling points set inside the preset approach area.
- FIG. 2 is a diagram illustrating an example of a predefined map and a movement and work sequence of a robot using the predefined map
- FIG. 5 is a diagram illustrating an example of an "obstacle map" generated by an obstacle map creation unit and an "integrated environment map” generated by an environment map integration unit
- FIG. 2 is a diagram illustrating a configuration example of a user terminal
- FIG. 4 is a diagram illustrating an example of information for generating work definition data that a user inputs to a user terminal;
- FIG. 4 is a diagram illustrating a specific example of a “predefined map” generated by a work definition data management unit together with an approach area generation unit and a predefined map generation unit;
- FIG. 5 is a diagram illustrating a specific example of "work sequence information" generated by a work definition data management unit;
- FIG. 4 is a diagram for explaining a specific example of a motion image of a robot according to a work sequence;
- FIG. 5 is a diagram illustrating a specific example of "work movement information" generated by a work definition data management unit;
- FIG. 7 is a diagram illustrating a specific example of approach area generation processing executed by an approach area generation unit;
- FIG. 4 is a diagram illustrating a specific example of a “predefined map” generated by a work definition data management unit together with an approach area generation unit and a predefined map generation unit;
- FIG. 5 is
- FIG. 9 is a diagram illustrating a specific example of an approach area determined by determination processing of each sampling point;
- FIG. 9 is a diagram showing a flowchart describing an example of a processing sequence of approach area generation processing executed by an approach area generation unit of a user terminal;
- FIG. 11 is a diagram illustrating a specific example of processing executed by an approach area generation unit of a user terminal;
- FIG. 11 is a diagram illustrating a specific example of processing executed by an approach area generation unit of a user terminal;
- FIG. 11 is a diagram illustrating a specific example of processing executed by an approach area generation unit of a user terminal;
- FIG. 11 is a diagram illustrating a specific example of processing executed by an approach area generation unit of a user terminal;
- FIG. 11 is a diagram illustrating a specific example of processing executed by an approach area generation unit of a user terminal;
- FIG. 9 is a diagram showing a specific example of an approach area determined by determination processing of each sampling point;
- FIG. 9 is a diagram
- FIG. 11 is a diagram illustrating a specific example of processing executed by an approach area generation unit of a user terminal;
- FIG. 11 is a diagram illustrating a specific example of processing executed by an approach area generation unit of a user terminal;
- FIG. 4 is a diagram for explaining a specific example of a motion image of a robot according to a work sequence;
- FIG. 11 is a diagram illustrating a specific example in which a preset approach area on a "predefined map" becomes an area where work cannot be performed when a "difference obstacle (new obstacle)" is detected;
- FIG. 10 is a diagram illustrating a specific example of correction of an approach area executed by an approach area correction unit;
- FIG. 10 is a diagram illustrating a specific example of correction of an approach area executed by an approach area correction unit;
- FIG. 10 is a diagram illustrating a specific example of correction of an approach area executed by an approach area correction unit;
- FIG. 10 is a diagram showing a flowchart describing a sequence of approach area correction processing executed by an approach area correction unit;
- FIG. 10 is a diagram illustrating a specific example of correction of an approach area executed by an approach area correction unit;
- FIG. 10 is a diagram illustrating a specific example of correction of an approach area executed by an approach area correction unit;
- FIG. 5 is a diagram illustrating a specific example of an operation example of a robot when executing work according to a work sequence; It is a figure explaining the hardware structural example of the information processing apparatus of this indication.
- An information processing system that executes the processing of the present disclosure is a system having a robot 10 and a user terminal 30 operated by a user 20, as shown in FIG.
- the robot 10 has, for example, wheels and the like, and has a moving part 11 that runs and moves on the floor, an arm part 12 and a hand part 13 that operate an object to be worked on. That is, it is a mobile manipulator type robot in which a manipulator consisting of an arm portion 12 and a hand portion 13 for working is mounted on a moving portion 11 .
- the user terminal 30 is used by the user of the robot 10 to input information about the work to be performed by the robot 10 and the environment (such as the structure of the room) in which the robot 10 is used.
- the user terminal 10 can be used to instruct the robot to start and stop work, and to display the state of the robot.
- the user terminal 30 can be configured by various information processing devices such as a tablet terminal, a smartphone, and a PC.
- the robot 10 and the user terminal 30 are configured to be communicable.
- the robot 10 incorporates an information processing device for controlling the robot 10 and communicating with the outside.
- an information processing device 100 is incorporated inside the robot 10 .
- the information processing device 100 is incorporated inside the robot 10 .
- a configuration example of the information processing apparatus 100 will be described with reference to FIG.
- the information processing apparatus 100 includes a sensor 101, a self-position estimation unit 102, an obstacle map creation unit 103, a work definition data management unit 104, a predefined map management unit 105, a difference obstacle detection unit 106, Approach area correction unit 107, environment map integration unit 108, communication IIF 111, robot operation UI 112, robot control unit 113, sequence control unit 114, moving unit path planning unit 121, moving unit control unit 122, robot arm path planning unit 123, robot It has an arm controller 124 .
- the sensor 101 is a sensor for detecting the surrounding environment such as obstacles around the robot, and is configured by, for example, a camera or LiDAR (Light Detection and Ranging). Note that the sensor 101 is not limited to a camera and LiDAR, and may be configured to include these other sensors. For example, a configuration including a ToF sensor, ultrasonic sensor, radar, sonar, or the like may be used.
- the self-position estimation unit 102 estimates the current position of the robot 10 using information obtained from the sensor 101 and the like. Note that the self-position estimation processing by the self-position estimation unit 102 may be executed as processing using information obtained from the sensor 101, information such as the IMU and wheel rotation angles, information from an external camera, and the like.
- the self-position calculation unit 102 performs self-position estimation using, for example, SLAM (simultaneous localization and mapping) processing.
- SLAM processing captures images (moving images) with a camera and analyzes the trajectories of feature points included in a plurality of captured images, thereby estimating the three-dimensional positions of feature points and determining the position and orientation of the camera (self). It is a process of estimating (localizing) the , and it is possible to create (mapping) a map of the surroundings (environmental map) using the three-dimensional position information of the feature points.
- the obstacle map creation unit 103 uses the surrounding information obtained by the sensor 101 and the current position information of the robot 10 calculated by the self-position estimation unit 102 to determine the layout position of obstacles existing around the robot 10 .
- the obstacle map creation unit 103 creates an "obstacle map” such as an occupancy grid map.
- the occupancy grid map is a map in which probability values of obstacles existing in each section (grid) defined by the grid are set.
- the robot 10 can safely run without colliding with obstacles by selecting a section (grid) with a low probability that an obstacle exists among the sections of the occupancy grid map (grid map) as a running route. can be done.
- the predefined map management unit 105 acquires the "predefined map” from the work definition data management unit 104, and applies the acquired "predefined map” to the difference obstacle detection unit 106, the approach area correction unit 107, and the environment map integration unit 108. provide to
- the work definition data managed by the work definition data management unit 104 includes the following data. (1) predefined map (2) work sequence information (3) work movement information Details of these data will be described later.
- the "predefined map” refers to the positions of obstacles in the environment in which the robot 10 travels, and the robot 10 that can drive the arm unit 12 and the hand unit 13 in the work area to safely execute the work. It is a map that defines an "approach area” that is a workable area.
- the "predefined map” is a map that is created before the robot 10 starts running, that is, in advance.
- the “predefined map” is created, for example, by the user 20 using the user terminal 30 and transmitted from the user terminal 30 to the information processing device 100 of the robot 10 .
- Transmission data from the user terminal 30 is input to the work definition data management unit 104 via the communication IF 111 and the robot control unit 113, and can be accessed by the storage unit in the work definition data management unit 104 or by the work definition data management unit 104. stored in a storage unit.
- the “predefined map” may be input by the user 20 directly via the robot operation UI 112 .
- FIG. 4(1a) An example of the "predefined map” is shown in FIG. 4(1a).
- two obstacles and a “preset approach area” set near each obstacle are recorded in the "predefined map”.
- the "approach area” recorded in the "predefined map” is called the "preset approach area”.
- FIG. 4(1b) is a diagram showing an example of the movement and work sequence of the robot 10 using the "predefined map" shown in FIG. 4(1a).
- the robot 10 starts moving from the start point (S), and when it reaches the "preset approach area AX", it performs work on the work target X within the "preset approach area AX". For example, work such as gripping processing and moving processing of the work target X is executed.
- the robot 10 moves to the next work area. That is, it moves to the "preset approach area AY" recorded in the "predefined map”.
- the "preset approach area AY” work is performed on the work target Y within the "preset approach area AY". For example, work such as gripping processing and moving processing of the work target Y is executed. After that, it moves to the goal point (G) and ends the processing.
- the "approach area” is an area in which the robot 10 drives the arm unit 12 and the hand unit 13 to perform work
- the "approach area” recorded in the "predefined map” is the "preset area”. called the “approach area”.
- the robot 10 moves to the "preset approach area AX” by movement processing using the moving unit 11, and the arm unit 12 and the hand unit move in the "preset approach area AX”. 13 is driven to perform work such as gripping one work target X, for example. After that, it moves to the "preset approach area AY", and another work such as gripping the work object Y is performed in this "preset approach area AY".
- the "approach area” is an area defined as an area in which the robot 10 can perform a predetermined work without colliding with or contacting an obstacle.
- a “preset approach area” which is an area in which the robot 10 can perform a scheduled work without colliding or contacting an obstacle, is recorded.
- the predefined map management unit 105 acquires the "predefined map” from the work definition data management unit 104, and uses the acquired “predefined map” as the difference obstacle detection unit 106, the approach area correction unit 107, and the difference obstacle detection unit 106.
- the environmental map integration unit 108 Provided to the environmental map integration unit 108 .
- the "predefined map” it is determined that the positions of obstacles in the environment in which the robot 10 travels, and that the robot 10 can drive the arm section 12 and the hand section 13 in the work area to safely execute the work.
- a "preset approach area" which is a workable area, is recorded.
- the "predefined map” is a map created before the robot 10 travels, and if a new obstacle is placed after the "predefined map” is created, even within the "preset approach area", A case may occur in which the robot 10 cannot perform the work.
- the "obstacle map" created by the obstacle map creation unit 103 described above includes the surrounding information obtained by the sensor 101 of the robot 10 and the current position information of the robot 10 calculated by the self-position estimation unit 102. , and includes the latest obstacle information around the robot 10 .
- the difference obstacle detection unit 106 compares the "predefined map” created in advance with the "obstacle map” containing the latest obstacle information around the robot 10, and detects new obstacles that do not exist in the "predefined map". Obstacles are detected as “differential obstacles”.
- the approach area correction unit 107 inputs the following information. (a) "predefined map” from the predefined map management unit 105; (b) “difference obstacle” information, which is a new obstacle that does not exist in the "predefined map” detected by the difference obstacle detection unit 106; The approach area correction unit 107 uses these pieces of input information to perform correction processing of the "preset approach area” defined on the "predefined map”. Specifically, a "correction approach area” is generated in consideration of a "difference obstacle” that is a new obstacle that does not exist in the "predefined map” detected by the difference obstacle detection unit 106.
- the environment map integration unit 108 inputs the following information. (a) "predefined map” from the predefined map management unit 105; (b) “Obstacle map” from the obstacle map creation unit 103; (c) "Corrected approach area information” and “difference obstacle information” from the approach area correction unit 107
- the environment map integration unit 108 creates an "integrated environment map” using these pieces of input information. In other words, the "integrated environment map” that records the latest obstacle positions and the "corrected approach area” that is the "preset approach area” recorded on the "predefined map” based on the latest obstacle positions is recorded. create.
- FIG. 5(2a) is a diagram showing an example of the "obstacle map” generated by the obstacle map creation unit 103.
- the "obstacle map” shown in FIG. 5(2a) is a map of the same location as the "predefined map” described above with reference to FIG. 4(1a).
- the "predefined map” described with reference to FIG. 4(1a) is a map created before the robot 10 runs, while the "obstacle map” shown in FIG. It is a map that reflects the latest obstacle positions created based on information acquired by sensors.
- the "obstacle map” shown in FIG. 5(2a) includes new “difference obstacles” that are not included in the "predefined map” previously described with reference to FIG. 4(1a). This "difference obstacle” is an obstacle that did not exist when the "predefined map” was created, and is an obstacle that was newly detected when the "obstacle map” was created.
- the "preset approach area” which is the area in which the robot 10 can work, is recorded.
- the 'preset approach region' where we are, is the region that does not take into account the existence of new 'differential obstacles'.
- the environment map integration unit 108 corrects the "preset approach area” recorded in the “predefined map” in consideration of the "difference obstacle (new obstacle)", and the "corrected approach area” recorded in the " create an integrated environmental map. That is, an "integrated environment map” as shown in FIG. 5(2b) is created.
- the environment map integration unit 108 (a) "predefined map” from the predefined map management unit 105; (b) “Obstacle map” from the obstacle map creation unit 103; (c) "Corrected approach area information” and “difference obstacle information” from the approach area correction unit 107 "Integrated environment map” that records “corrected approach area” which is the “preset approach area” recorded on the “predefined map” and corrected based on the latest obstacle positions using these input information, That is, an "integrated environment map” as shown in FIG. 5(2b) is created.
- the sequence control unit 114 moves the moving unit 11, the arm unit 12, and the hand unit 13 of the robot 10 based on the work sequence defined in the work definition data, manages their progress, and performs sequence control.
- the moving part path planning part 121 moves the moving part 11 of the robot 10 to the indicated position according to the instruction from the sequence control part 114 .
- the movement unit route planning unit 121 determines the movement route of the robot 10 instructed by the sequence control unit 114.
- Route information (travel route information) that enables travel while avoiding obstacles is generated for the waypoints above and the approach area, which is the workable area at each work position. output to
- the environment map integration unit 108 successively updates the "integrated environment map” when the sensor 101 detects a new obstacle while the robot 10 is running. That is, the "integrated environment map” recording the new obstacle and the “corrected approach area” corrected according to the position of the new obstacle is updated.
- the mobile unit route planning unit 121 updates the route information (driving route information) using the latest updated "integrated environment map”. and outputs the updated route information to the moving body control unit 122 .
- the mobile object control unit 122 generates route information (travel route information) based on the route information (travel route information) generated by the mobile object route planning unit 121 and the self-position of the robot 10 estimated by the self-position estimation unit 102.
- the moving part 11 of the robot is controlled so as to move the robot 10 according to. For example, it controls a motor driver that drives the wheels of the moving unit 11 .
- the robot arm path planning unit 123 plans the path (trajectory) of the arm unit 12 and the hand unit 13 of the robot 10 for performing the instructed work according to the instruction from the sequence control unit 114, and generates the generated path (trajectory). is output to the robot arm control unit 124 .
- the robot arm control unit 124 controls the robot so that the arm unit 12 and the hand unit 13 of the robot 10 move using the paths (trajectories) of the arm unit 12 and the hand unit 13 of the robot 10 generated by the robot arm path planning unit 123 . 10 and the joints of the hand portion 13, etc., are driven. For example, it controls a motor driver for the arm part of the robot 10 and the joints of the hand part 13 .
- the communication IF 111 communicates with an external device, for example, the user terminal 30 , and receives work definition data created by the user 20 on the user terminal 30 and robot operation information input from the user terminal 30 .
- the state of the robot 10, the progress of work of the robot 10, and the like may be transmitted to the user terminal 30.
- the robot operation UI 112 is a user interface configured by a touch panel or the like mounted on the main body of the robot 10 .
- the status of the robot 10, a list of work definition data received by the robot 10 from the outside, etc. are displayed, and instructions such as selection of work and start/stop of work are input. Also, the progress of the work of the robot 10 may be displayed.
- the robot control unit 113 inputs instruction data input from an external device such as the user terminal 30 via the robot operation UI 112 or the communication I/F 111, and sends necessary information to the work definition data management unit 104 and the sequence control unit 114. Transfer processing and control processing of the entire robot 10 are executed.
- the difference obstacle detection unit 106 detects new obstacles that are not on the "predefined map", and the environment map integration unit 108 considers the new obstacles to create the "corrected approach area”. was described as generating an "integrated environment map" that records
- the difference obstacle detection unit 106 may detect not only new obstacles that are not on the "predefined map”, but also movement of existing obstacles that are recorded on the "predefined map", for example.
- the approach area correction unit 107 determines the "corrected approach area” by considering not only the new obstacles but also the movement positions of the existing obstacles.
- the environment map integration unit 108 generates an "integrated environment map” recording a "corrected approach area” corrected in consideration of not only the new obstacles but also the movement positions of the existing obstacles.
- the differential obstacle detection unit 106 may be configured to detect changes in the position of the work target.
- the approach area correction unit 107 determines the "correction approach area” in consideration of the positional change of the work object.
- the environment map integration unit 108 generates an "integrated environment map” recording the "corrected approach area” corrected in consideration of the position change of the work object.
- the difference obstacle detection unit 106 detects not only obstacles but also various environmental changes different from the “predefined map”, and the approach area correction unit 107 detects various environmental changes detected by the difference obstacle detection unit. It is possible to determine a "correction approach area” by considering environmental changes.
- the environment map integration unit 108 generates an "integrated environment map” that records "corrected approach areas” that have been corrected in consideration of various environmental changes.
- the user terminal 30 is composed of various information processing devices such as a tablet terminal, a smartphone, and a PC.
- the user terminal 30 has a function as a UI for operating the robot 10 and a function as a UI for creating work definition data that defines the work to be performed by the robot 10 .
- the user terminal 30 includes a user interface (UI) 201, a user interface (UI) control unit 202, a robot operation information management unit 203, a work definition data management unit 204, an approach area generation unit 205, a predefined It has a map generation unit 206 , a work definition data storage unit 207 and a communication IF 208 .
- a user interface (UI) 201 is configured by, for example, a touch panel type display unit capable of performing input processing of user operation information to the user terminal 30 and data display processing. Various data are displayed under the control of the user interface (UI) control unit 202 .
- the user 20 can also input various information that can be used to control the robot 10, such as work sequence information and travel route information.
- Information input by the user to the user interface (UI) 201 is output to the user interface (UI) control unit 202 via the user interface (UI) 201 .
- a user interface (UI) control unit 202 switches contents to be displayed on the user interface (UI) 201 according to information input by the user 20 .
- the user interface (UI) control unit 202 also outputs information input by the user 20 to the user interface (UI) 201 to the robot operation information management unit 203 and the work definition data management unit 204 .
- the robot operation information management unit 203 stores, for example, the status of the robot 10 input from the information processing device 100 of the robot 10 via the communication IF 208, a list of work definition data received by the robot 10, progress of the work in progress, and so on. It acquires the situation and the like, generates display content for the user interface (UI) 201 , and outputs it to the user interface (UI) control unit 202 .
- UI user interface
- the robot operation information management unit 203 transmits the user input information to the robot 10 via the communication IF 208 .
- the user input information is, for example, selection information of work to be executed by the robot 10 and instruction data such as start/stop of work.
- the work definition data management unit 204 generates a work definition data creation UI and outputs it to the user interface (UI) 201 via the user interface (UI) control unit 202, and the user 20 creates the work definition data creation UI.
- UI user interface
- UI control unit 202 user interface
- the user 20 creates the work definition data creation UI.
- the work definition data generation information input by the user 20 via the user interface (UI) 201 is, for example, information as shown in FIG. That is, the following information.
- Obstacle information Setting information for obstacles that exist in the space where the robot works
- Waypoint information Setting information for waypoints that the robot passes through when moving
- Work target information Robot works
- Work movement information Setting information of the movement of the arm and hand necessary for the work performed by the robot on the work target object
- Work sequence information Robot Setting information about a series of flows such as movement of
- the work definition data management unit 204 provides a user interface (UI) through the user interface (UI) control unit 202, which can be used for inputting the work definition data generation information (1) to (5) above, for example. ) 201.
- UI user interface
- UI control unit 202 which can be used for inputting the work definition data generation information (1) to (5) above, for example.
- the work definition data management unit 204 generates work definition data together with the approach area generation unit 205 and the predefined map generation unit 206 in accordance with the information input by the user via the user interface (UI) 201, and the generated work definition The data is stored in the work definition data storage unit and transmitted to the information processing device 100 of the robot 10 via the communication IF 208 .
- the work definition data generated by the work definition data management unit 204 together with the approach area generation unit 205 and the predefined map generation unit 206 include the following data.
- predefined map (2) work sequence information (3) work movement information Details of these data will be described later.
- the approach area generation unit 205 inputs user input information necessary for generating approach areas via the work definition data management unit 204, and determines a "preset approach area" corresponding to each work area.
- the predefined map generation unit 206 generates a "predefined map”.
- the predefined map generation unit 206 inputs information necessary for generating the "predefined map” via the work definition data management unit 204 to generate the "predefined map”. For example, by inputting obstacle position information and waypoint information included in user setting information input via the user interface (UI) 201, and "preset approach area” information generated by the approach area generation unit 205, Generate a "predefined map".
- the work definition data management unit 204 stores the user setting information input via the user interface (UI) 201, that is, the user setting information described with reference to FIG. is stored in the work definition data storage unit 207 and transmitted to the information processing device 100 of the robot 10 via the communication IF 208 .
- UI user interface
- generation of the approach area and generation of the "predefined map" are executed within the user terminal 30, but these processes can also be performed by requesting an external server via the communication IF 208. good.
- the work definition data storage unit 207 stores work definition data generated by the work definition data management unit 204 according to instructions from the work definition data management unit 204 .
- the work definition data includes the user setting information described with reference to FIG. 7 and the “predefined map” generated by the predefined map generation unit 206 .
- the work definition data storage unit 207 is configured by, for example, a non-volatile storage unit such as flash memory.
- the communication IF 208 communicates with the information processing device 100 of the robot 10, and transmits work definition data created by the user 20 on the user terminal 30, input information and operation information performed using the UI 201 on the user terminal 30. . It also receives robot status information, work progress information, and other information from the information processing device 100 of the robot 10 . The received information is output and displayed on the user interface (UI) 201 via the robot operation information management unit 203 .
- UI user interface
- the configuration shown in FIG. 6 is configured within the information processing device 100 of the robot 10 .
- the process of the present disclosure is executed by the robot 10 alone without using the user terminal 30 .
- the work definition data generated by the work definition data management unit 204 together with the approach area generation unit 205 and the predefined map generation unit 206 include the following data.
- predefined map (2) work sequence information (3) work movement information Details of these data will be described below.
- FIG. 8 is a two-dimensional (2D) map, it may be a three-dimensional (3D) map.
- a lattice map such as a grid map or a voxel map may also be used.
- a vector map having only vertex information of a shape surrounding each area may be used.
- the "predefined map” includes information on obstacles in the work space of the robot 10 and the "preset approach area", which is a work area in which the work instructed by the user can be executed without contacting any obstacles. is a map on which is recorded. In addition, information on waypoints of the robot designated by the user, work target information, and the like are also recorded.
- waypoints A to G are recorded in the "predefined map". These waypoints A to G are information input by the user, and are information specifying that the robot 10 should move in the order of A to G.
- FIG. The waypoint A is the start position, and the waypoint G is the goal position. Waypoints are set to specify the route that the robot should take when moving in space. It is set in a movable area (not an obstacle area) on the map.
- work target information is recorded in the "predefined map".
- a work target X, a work target Y, and these two work targets are recorded.
- the map shown in FIG. 8 shows cylindrical figures as the work objects X and Y, but the attribute data attached to the map includes position information, area information, three-dimensional shape information, etc. of each work object. Recorded.
- the work target position information and area information are information indicating the position and area of an object on which the robot 10 works using the arm unit 12 and the hand unit 13 .
- the range in which the work objects are placed is recorded as area information.
- An obstacle is an obstacle that the robot 10 may come into contact with or collide with.
- the map shown in FIG. 8 shows planar figures as obstacles, the attribute data attached to the map records the position, area information, three-dimensional shape information, etc. of each obstacle.
- the obstacle area is an area that only the moving part 11 of the robot 10 cannot enter, and an area that the arm part 12 of the robot 10 can enter. However, if necessary, the arm 12 of the robot 10 can be set as an obstacle area even if it is an area that can be entered.
- the "approach area” is defined as a work area in which the work instructed by the user can be performed without contacting an obstacle, and is set individually for each work target X, Y.
- the "approach area” defined in the "predefined map” is the "preset approach area”. As described above with reference to FIG. 5 and the like, the “preset approach area” may be corrected using the “obstacle map” generated using sensor detection information of the robot 10 .
- the approach area shown in FIG. 8 has an elliptical shape, it may have a more complicated shape that reflects the kinematics of the robot arm. Also, if sampling points are generated when generating the approach area, information about the sampling points may be held together. A method of generating an approach area using sampling points will be described later.
- the work definition data management unit 204 stores "work sequence information" as work definition data in accordance with user input information, that is, "(5) work sequence information" in the user input information described with reference to FIG. to generate
- the "work sequence information" generated by the work definition data management unit 204 is information in which movement processing and work to be executed by the robot 10 are arranged in chronological order. Sequence No. in chronological order. , movement processing and work information to be executed by the robot 10 are recorded.
- FIG. 10 A motion image of the robot following this work sequence is shown in FIG.
- the robot 10 moves from the waypoint A to the waypoint B and enters the approach area AX corresponding to the work target X.
- the robot 10 performs the scheduled work (P) on the work target X within the approach area AX.
- the scheduled work (P) passes through the waypoints C and D and enters the approach area AY corresponding to the work target Y.
- the robot 10 performs the scheduled work (Q) on the work target Y within the approach area AY.
- the route points E, F, and G are sequentially moved, and the sequence ends.
- the operation sequence of the robot 10 according to the work sequence shown in FIG. 9 is as follows.
- the work definition data management unit 204 stores "work movement information" as work definition data in accordance with the user's input information, that is, "(4) work movement information" in the user's input information described above with reference to FIG. to generate
- the "work motion information” is setting information of the motion of the arm section and the hand section necessary for the work performed by the robot on the work target object.
- FIG. 11 shows a specific example of "work movement information" generated by the work definition data management unit 204. As shown in FIG.
- the “work motion information” generated by the work definition data management unit 204 indicates that when the robot 10 reaches the approach area and performs the work on the work target object, the robot 10 performs the scheduled work.
- This data describes the trajectory of the arm portion 12 and the direction and state (open/close) of the hand portion 13 .
- the trajectory of the arm section 12 of the robot 10 and the orientation and state (Open/Close) of the hand section 13 for performing the work P for the work target X and the work Q for the work target Y described above with reference to FIG. describe.
- the information processing device 100 of the robot 10 causes the robot 10 to perform a predetermined operation, that is, movement processing and work processing, according to the "work definition data" including the data (1) to (3) received from the user terminal 30. .
- work definition data i.e. (1) Predefined map (2) Work sequence information (3) Work movement information A process of generating "work definition data” including these data is executed in the user terminal 30 using user input information.
- the user terminal 30 performs the following information generation processing when generating the “work definition data”.
- Obstacle information generation processing (2) Work target information generation processing (3) Waypoint information generation processing (4) Work movement information generation processing (5) Approach area information generation fixed processing (6) Work Sequence Information Generation Processing Specific examples of the generation processing of each of these pieces of information will be described below in order.
- the user 20 sets the screen of the user terminal 30 to the obstacle setting mode, designates the coordinates indicating the position of the obstacle on the screen, and draws a shape such as a rectangle, cuboid, or circle corresponding to the shape of the obstacle.
- the robot 10 is moved in advance in the work space, and the "obstacle map" generated by the obstacle map creation unit 103 of the robot 10 at that time is transferred to the user terminal 30. Obstacles recorded in the "map” may be extracted and used as obstacle information.
- the user 20 sets the screen of the user terminal 30 to the work object setting mode, and designates the coordinates indicating the position of the work object on the screen.
- the coordinates indicating the position of the work target designate the position of the work target that is gripped by the hand unit 13 of the robot 10 .
- a shape such as a rectangle, cuboid, or circle corresponding to the shape of the work object may be drawn.
- the work motion information is the data previously described with reference to FIG. That is, when the robot 10 reaches the approach area and performs the work on the work target object, the trajectory of the arm unit 12 of the robot 10 and the orientation and state (open/close) of the hand unit 13 when performing the scheduled work are described. This is the data obtained.
- the user 20 When generating work motion information on the user terminal 30, the user 20 first sets the screen of the user terminal 30 to a work motion information input mode, and displays the work motions of the arm section 12 and the hand section 13 of the robot 10 on the screen as time-series data. Enter as
- a work to be performed on a work target is input as time-series data of the position (TCP: Tool Center Point) of the hand unit 13 of the robot 10 .
- the position of the hand (TCP) is the center position between the fingers in the case of a two-finger gripper.
- TCP Tool Center Point
- for which work object the work is to be performed is also set.
- the work motion can be set by designating via points indicating the time-series trajectories of the hand unit 13 and the arm unit 12 in the 3D space.
- the arm section 12 and the hand section 13 of the robot 10 may be moved on CG to take arbitrary postures, and the postures may be registered in the order of movement.
- direct teaching is performed using the actual machine of the robot 10, the posture information of the robot 10 (the actual machine) is transferred to the user terminal 30, and the time-series trajectories of the hand unit 13 and the arm unit 12 obtained from this transferred data are indicated via Work motion information may be generated from the points.
- the approach area is an area in which the robot 10 can perform the scheduled work on the work target without interfering (contacting) with the obstacle.
- the user terminal 30 uses the position/region of the work target, work motion, and obstacle information input by the user 20 to perform the scheduled work on the work target without the robot 10 interfering (contacting) with the obstacle. Determine the area that can be done as the "approach area”.
- the approach area generation process is executed in the approach area generation unit 205 of the user terminal 30 .
- the user 20 inputs obstacle information, work target information, and work movement information via a user interface (UI) 201. After completing the input of each of these pieces of information, an approach area displayed on the user interface (UI) 201 is generated.
- UI user interface
- approach area generation processing is started in the approach area generation unit 205 .
- the execution timing of the approach area generation process in the approach area generation unit 205 may be configured to be performed immediately before the work definition data generated by the user terminal 30 is stored in the work definition data storage unit 207 or immediately before it is transferred to the robot 10 .
- FIG. 12 shows that when the robot 10 performs the work action (P) set by the user 20 on the work target X placed on an obstacle such as a desk, the robot 10 does not come into contact with the obstacle.
- FIG. 10 is a diagram showing an example of processing when generating an “approach area AX” that is an area in which work (P) can be safely performed;
- PosX (XposX, YposX, ZposX)
- Position (TCP) of the hand part 13 of the robot 10 when the arm part 12 of the robot 10 is fully extended from the reference point of the moving part 11 of the robot 10 for example, the center of the axle of the rear wheels in the case of a four-wheeled vehicle
- the approach area generation unit 205 causes the robot 10 to interfere with (contact) an obstacle while the robot 10 is positioned at each sampling point for all of the sampling points ( ⁇ ) in the approach area generation process. It is determined whether or not the scheduled work for the work target X can be executed without The approach area generation unit 205 selects only the sampling points determined to be workable by this determination processing, and determines an area defined only by the selected sampling points as the approach area.
- sampling points are set at regular intervals in a lattice pattern, but the sampling points may be set at random.
- the following judgment processing is performed for each.
- (Determination process 1) Whether or not the position (TCP) of the hand unit 13 of the robot 10 can reach the position required when performing the scheduled work (P) on the work target X.
- (Determination process 2) Whether or not the entire robot 10 (moving unit 11, arm unit 12, hand unit 13) interferes (contacts) with obstacles.
- Determination process 1 is to arrange the robot 10 at the position of the sampling point, and then change the posture of the robot 10 and the arm part 12 so that the position (TCP) of the hand part 13 of the robot 10 reaches the position of the work target. It is calculated using science, and if it can be calculated, it is considered to have arrived.
- (judgment process 2) the robot 10 is placed at the position of the sampling point, and when the postures of the robot 10 and the arm unit 12 calculated in (judgment process 1) are set, all surrounding obstacles interfere with each other. (contact) If there is interference (contact), the position (TCP) of the hand section 13 of the robot 10 reaches the position of the work target without interference (contact). Calculate using
- FIG. 13 shows the approach area determined by the determination processing of each sampling point.
- Sampling points indicated by white circles ( ⁇ ) are sampling points within the approach area. That is, among the sampling points, it is a workable sampling point where it is confirmed that a planned work operation can be performed on the work target without interfering (contacting) with an obstacle.
- sampling points indicated by black circles ( ⁇ ) are unworkable sampling points, and are sampling points outside the approach area. That is, among the sampling points, it is an unworkable sampling point where it has been confirmed that it is impossible to execute a scheduled work operation on the work target without interfering (contacting) with an obstacle.
- the approach area generation unit 205 determines the approach area by performing workability determination processing for each of such sampling points. A detailed example of the processing sequence of the approach region generation processing executed by the approach region generation unit 205 will be described later with reference to the flowchart shown in FIG.
- the work sequence information is the information described above with reference to FIG. 9, and as shown in FIG. 9, is information in which movement processing and work to be executed by the robot 10 are arranged in chronological order. Sequence No. in chronological order. This is information in which movement processing and work information to be executed by the robot 10 are recorded in correspondence with the .
- the user 20 sequentially inputs work sequences to be performed by the robot 10 to the user terminal 30 .
- An example of setting the sequence shown in FIG. 10 described above will be described.
- the user 20 sequentially inputs, for example, the following actions (movement, work) of the robot 10 .
- the work definition data that is, (1) predefined map (2) work sequence information (3) work movement information Generation of "work definition data" including these data is completed.
- the work definition data generated in the user terminal 30 is stored in the work definition data storage unit 207 of the user terminal by the user's operation or the like. 100.
- the work definition data management unit 104 receives the work definition data via the communication IF 111 and the robot control unit 113, and stores the work definition data in the storage unit. As a result, the robot 10 is ready to start work according to the work definition data.
- FIG. 14 is a diagram showing a flowchart explaining an example of a processing sequence of approach area generation processing executed by the approach area generation unit 205 of the user terminal 30.
- FIG. 14 is a diagram showing a flowchart explaining an example of a processing sequence of approach area generation processing executed by the approach area generation unit 205 of the user terminal 30.
- the process according to this flow can be executed by the approach area generation unit 205, which is the data processing unit of the user terminal 30, according to a program stored in the storage unit of the user terminal 30.
- it can be performed as program execution processing by a processor such as a CPU having a program execution function.
- the approach area generation unit 205 of the user terminal 30 executes processing according to the flow shown in FIG. 14 .
- the flowchart shown in FIG. 14 shows the processing sequence of the determination processing of each sampling point and the approach area determination processing after the sampling point setting processing described above with reference to FIG. 12 is completed. That is, the process of determining whether each sampling point is a workable sampling point ( ⁇ ) within the approach area or an unworkable sampling point ( ⁇ ) outside the approach area, and the process of determining the approach area based on the judgment results.
- 4 is a flow chart showing a sequence
- the approach region generation unit 205 of the user terminal 30 has performed sampling point setting processing according to the processing described above with reference to FIG. 12 as preprocessing for the flow shown in FIG.
- the radius R is the hand portion of the robot 10 when the arm portion 12 of the robot 10 is fully extended from the reference point of the moving portion 11 of the robot 10 (for example, the center of the axle of the rear wheels in a four-wheeled vehicle). It is the length corresponding to the distance R to the position of 13 (TCP).
- Step S101 First, in step S101, the approach region generation unit 205 of the user terminal 30 selects one determination target sampling point from all sampling points within a circle X (CircleX) with a radius R.
- circle X Circle X
- R radius
- step S101 shows the robot 10 and the work target X placed on an obstacle such as a desk. It is assumed that the work content specified by the user is processing for moving the work target X to the upper right as shown in the figure.
- a reference point for example, in the case of a four-wheeled vehicle, the center of the rear wheel axle
- ⁇ is indicated by ⁇ .
- step S101 one determination target sampling point is selected.
- a plurality of sampling points are shown in FIG. 15, and one sampling point among them is selected as a determination target sampling point.
- step S102 the approach region generation unit 205 rotates the robot with the robot reference point aligned with the selected determination target sampling point, and determines whether or not there is a rotation position where the robot does not come into contact with an obstacle.
- step S102 shows a process of rotating the robot 10 with the reference point of the robot 10 aligned with the determination target sampling point selected in step S101, and determining whether or not there is a rotational position that does not come into contact with an obstacle. showing.
- Step S103 is a branching step based on the result of determination processing in step S102.
- step S102 determines whether or not there is a rotational position where the robot does not come into contact with an obstacle while the robot reference point is aligned with the selected sampling point to be determined. If it is determined that there is a rotational position where the robot does not come into contact with the obstacle, the determination result in step S103 becomes Yes, and the process proceeds to step S105.
- step S103 determines that there is no rotation position where the robot does not come into contact with the obstacle. If it is determined that there is no rotation position where the robot does not come into contact with the obstacle, the determination result in step S103 is No, and the process proceeds to step S104.
- step S103 Yes
- the robot reference point is aligned with the judgment target sampling point, and the rotational position where the robot does not contact the obstacle is detected.
- the determination result of step S103 becomes Yes, and it progresses to step S105.
- step S103 no non-contact rotation position; This example is a case where the robot cannot detect the rotational position where the robot does not come into contact with the obstacle while the robot reference point is aligned with the determination target sampling point. In such a case, the determination result of step S103 becomes No, and it progresses to step S104.
- Step S104 The process of step S104 is executed when the determination of step S103 is No, that is, when the robot reference point is aligned with the determination target sampling point and a rotational position where the robot does not contact an obstacle is not detected. .
- step S104 the approach area generation unit 205 sets the determination target sampling points to work impossible sampling points, that is, sampling points outside the approach area.
- Step S105 The processing in step S105 is executed when the determination in step S103 is Yes, that is, when a rotational position where the robot does not come into contact with an obstacle is detected with the robot reference point aligned with the determination target sampling point.
- step S105 the approach area generation unit 205 determines whether or not the scheduled work can be executed at a robot rotation position that does not come into contact with the obstacle. Note that the scheduled work is acquired from the work movement information input by the user 20 .
- step S105 A specific example of this process (step S105) will be described with reference to FIG.
- the work instruction input by the user is to move the work target X to the upper right as shown in FIG.
- the approach area generation unit 205 determines whether or not this work can be performed at a robot rotation position that does not come into contact with the obstacle.
- Step S106 is a branching step based on the result of determination processing in step S105.
- step S105 determines that the scheduled work can be executed in the determination processing in step S105, that is, in the determination processing of whether or not the scheduled work can be performed at the robot rotation position that does not come into contact with the obstacle.
- the determination result of step S106 becomes Yes, and it progresses to step S107.
- step S106 determines whether the scheduled work cannot be executed. If it is determined that the scheduled work cannot be executed, the determination result in step S106 is No, and the process proceeds to step S104.
- Scheduled work can be executed at a robot rotational position that does not come in contact with obstacles.
- the scheduled work can be executed at a robot reference point that coincides with the judgment target sampling point and at a rotational position of the robot that does not come into contact with an obstacle.
- the determination result of step S106 becomes Yes, and it progresses to step S107.
- This example is an example in which it is confirmed that the scheduled work cannot be executed at a robot reference point that coincides with the determination target sampling point and at a robot rotational position that does not come into contact with an obstacle. In such a case, the determination result of step S106 becomes No, and it progresses to step S104.
- Step S104 step S104 will be described again.
- the process of step S104 is performed even when the determination of step S103 is Yes and when the determination of step S106 is No.
- step S103 a rotational position where the robot does not come into contact with an obstacle is detected with the robot reference point aligned with the determination target sampling point. It is also executed when it is determined in step S106 that the scheduled work cannot be executed at the robot rotation position that does not come into contact with the obstacle.
- step S104 the approach area generation unit 205 sets the determination target sampling points to work impossible sampling points, that is, sampling points outside the approach area.
- Step S107 On the other hand, the process of step S107 is executed when the determination of step S106 is Yes, that is, when it is determined that the scheduled work can be performed at the robot rotation position that does not come into contact with the obstacle.
- step S107 the approach area generation unit 205 sets the determination target sampling points to workable sampling points, that is, sampling points within the approach area.
- Step S108 The process of step S104, that is, the process of setting the determination target sampling point to the unworkable sampling point, that is, the sampling point outside the approach area, or
- step S107 the processing of setting the determination target sampling point to the workable sampling point, that is, the sampling point in the approach area, or the processing of any of these processing is completed
- step S108 is executed.
- the approach region generation unit 205 determines in step S108 whether there are any unprocessed sampling points, that is, sampling points for which determination processing has not been completed. If there are unprocessed sampling points, the process returns to step S101 to process the unprocessed sampling points. On the other hand, if there is no unprocessed sampling point, the process proceeds to step S109.
- Step S109 When the determination processing for all sampling points is completed, the approach area generation unit 205 sets an area consisting only of workable sampling points as an approach area in step S109.
- FIG. 19 shows the approach area determined by the determination processing of each sampling point within the circular circle X (CircleX) of radius R. As shown in FIG.
- sampling points indicated by white circles ( ⁇ ) are the sampling points within the approach area. That is, among the sampling points, it is a workable sampling point where it is confirmed that a planned work operation can be performed on the work target without interfering (contacting) with an obstacle.
- sampling points indicated by black circles ( ⁇ ) are unworkable sampling points, and are sampling points outside the approach area. That is, among the sampling points, it is an unworkable sampling point where it has been confirmed that it is impossible to execute a scheduled work operation on the work target without interfering (contacting) with an obstacle.
- the approach area generation unit 205 determines the approach area through work possibility determination processing for each of such sampling points.
- the robot 10 can perform the scheduled work on the work target X, that is, according to the work motion information input by the user, without contacting or interfering (contacting) with the obstacle. Processing can be executed.
- the approach area generation unit 205 executes processing according to the flow described with reference to FIG. 14 for each work object. That is, approach area generation processing is executed by work possibility determination processing for each sampling point.
- FIG. 20 shows a setting example of the approach area corresponding to the work target Y shown in FIG.
- the approach area determined by processing is shown.
- sampling points indicated by white circles ( ⁇ ) are the sampling points within the approach area.
- the work-ready operation that has been confirmed to be capable of performing the scheduled work operation on the work target without interfering (contacting) with the obstacle by executing the processing according to the flow described with reference to FIG. sampling points.
- sampling points indicated by black circles ( ⁇ ) are unworkable sampling points, and are sampling points outside the approach area.
- the approach area generation unit 205 determines the approach area through work possibility determination processing for each of such sampling points.
- the robot 10 can perform the scheduled work on the work target Y, that is, according to the work motion information input by the user, without contacting or interfering (contacting) with the obstacle. Processing can be executed.
- the work definition data generated in the user terminal 30 is stored in the work definition data storage unit 207 of the user terminal by the user's operation or the like. 100.
- the work definition data management unit 104 receives the work definition data via the communication IF 111 and the robot control unit 113, and stores the work definition data in the storage unit. As a result, the robot 10 is ready to start work according to the work definition data.
- the user 20 first inputs “work definition data” applied to the work to be executed by the robot 10 into the information processing device 100 of the robot 10 .
- Input processing of the "work definition data" to the information processing device 100 of the robot 10 is performed via the robot operation UI 112 of the information processing device 100 having the configuration shown in FIG. Alternatively, by operating the user terminal 30 having the configuration shown in FIG.
- the "work definition data" input to the information processing device 100 of the robot 10 includes the "work sequence information" described with reference to FIG. A processing example in the case of operating according to the work sequence information will be described.
- an image of the motion of the robot according to the work sequence is as shown in FIG.
- the robot 10 moves from the waypoint A to the waypoint B and enters the approach area AX corresponding to the work target X.
- the robot 10 performs the scheduled work (P) on the work target X within the approach area AX.
- the scheduled work (P) passes through the waypoints C and D and enters the approach area AY corresponding to the work target Y.
- the robot 10 performs the scheduled work (Q) on the work target Y within the approach area AY.
- the route points E, F, and G are sequentially moved, and the sequence ends.
- the robot 10 is initially at point A in FIG.
- the work start instruction is input to the robot control unit 113 of the information processing device 100 of the robot 10 .
- the work start instruction input to the robot control unit 113 may be provided with information indicating the work definition data used for the work (work definition data name, ID, etc.). Information designating the work definition data to be used may be transmitted from the robot operation UI 112 or the user terminal 30 to the robot control unit 113 in advance, separately from the work start instruction.
- the robot control unit 113 After inputting the work start instruction, the robot control unit 113 requests the work definition data management unit 104 to read out the “work definition data” specified by the user 20 .
- the work definition data management unit 104 reads the “work definition data” specified by the user 20 from the storage unit within the information processing apparatus 100 .
- the "work definition data” includes the following data. (1) predefined map (2) work sequence information (3) work movement information
- the work definition data management unit 104 outputs the predefined map (map data) in the read “work definition data” to the predefined map management unit 105 . Furthermore, it outputs work sequence information and work movement information to the sequence control unit 114 . After these processes, the robot 10 can start moving according to the "work definition data".
- the robot 10 uses the sensor 101 to continuously execute obstacle detection processing in the robot running environment.
- the sensor 101 is a sensor for detecting the surrounding environment such as obstacles around the robot, and is configured by, for example, a camera or LiDAR (Light Detection and Ranging).
- the obstacle map creation unit 103 Based on the information detected by the sensor 101, the obstacle map creation unit 103 analyzes the distance from the robot 10 to each obstacle, the relative positional relationship, and the shape of the obstacle. An "obstacle map" is generated using self-location information.
- the "obstacle map” is a map showing the arrangement positions of obstacles existing around the robot 10, as described above with reference to FIG. 5(2a). is a map containing
- the obstacle map creation unit 103 creates an "obstacle map" such as an occupancy grid map.
- the occupancy grid map (grid map) is a map in which the probability values of obstacles existing in each section (grid) defined by the grid are set. There are also maps that classify each section (grid) as "occupied”, “empty”, “unknown”, etc.
- the robot 10 can safely run without colliding with obstacles by selecting a section (grid) with a low probability that an obstacle exists among the sections of the occupancy grid map (grid map) as a running route. can be done.
- the “obstacle map” generated by the obstacle map creation unit 103 is input to the differential obstacle detection unit 106 .
- Difference obstacle detection unit 106 compares the “obstacle map” generated by obstacle map generation unit 103 with the “predefined map” included in the “work definition data” designated by user 20, and determines two maps. detect the difference between Specifically, for example, a difference obstacle (new obstacle) that exists in the "obstacle map” generated by the obstacle map creation unit 103 but is not in the "predefined map” is detected.
- the "predefined map” shown in FIG. 4(1a) is a map created before the robot 10 travels, while is a map that reflects the latest obstacle positions created based on the information acquired by the sensor of the robot 10 .
- the "obstacle map” shown in FIG. 5(2a) includes a "difference obstacle” which is a new obstacle not included in the "predefined map” described above with reference to FIG. 4(1a). There is a possibility that This "difference obstacle” is an obstacle that did not exist when the "predefined map” was created, and is an obstacle that was newly detected when the "obstacle map” was created.
- the difference obstacle detection unit 106 first places, for example, an AR marker or the like at a key point (for example, the waypoint A), and the self-position estimation unit 102 detects it, so that " Align the "predefined map” and the "obstacle map”.
- the obstacle difference detection unit 106 outputs the detected obstacle difference information to the approach area correction unit 107 .
- the approach area correction unit 107 inputs the following information. (a) "predefined map” from the predefined map management unit 105; (b) “difference obstacle” information, which is a new obstacle that does not exist in the "predefined map” detected by the difference obstacle detection unit 106; The approach area correction unit 107 uses these pieces of input information to perform correction processing of the "preset approach area” defined on the "predefined map”. Specifically, a "correction approach area” is generated in consideration of a "difference obstacle” that is a new obstacle that does not exist in the "predefined map” detected by the difference obstacle detection unit 106.
- the "approach area AX”, which is a preset approach area already set on the "predefined map”, is an approach area set without considering the "difference obstacle (new obstacle)".
- the approach area correction unit 107 corrects the preset approach area already set on such a "predefined map” and generates a "corrected approach area” in consideration of the "difference obstacle”.
- sampling points are set in the "preset approach area" already set on the "predefined map". For example, sampling points are set at equal intervals within the "preset approach area”. Note that the sampling points (workable sampling points) used to generate the "preset approach area" described above with reference to the flows of FIGS. 12, 13, and 14 may be used as they are. New sampling points may be set.
- the approach area correction unit 107 corrects the difference obstacle (new obstacle) and interference (contact) with respect to each of the sampling points set in the "preset approach area" when the robot 10 performs the scheduled work on the work target. Check whether it occurs or not.
- Determination process 1 Whether or not the position (TCP) of the hand unit 13 of the robot 10 can reach the position required when performing the scheduled work (P) on the work target X.
- Determination process 2 Whether or not the entire robot 10 (moving unit 11, arm unit 12, hand unit 13) interferes (contacts) with a differential obstacle (new obstacle).
- Determination process 1 is to arrange the robot 10 at the position of the sampling point, and then change the posture of the robot 10 and the arm part 12 so that the position (TCP) of the hand part 13 of the robot 10 reaches the position of the work target. It is calculated using science, and if it can be calculated, it is considered to have arrived.
- (judgment processing 2) the robot 10 is placed at the position of the sampling point, and when the postures of the robot 10 and the arm unit 12 calculated in (judgment processing 1) are set, difference obstacles (new obstacles Make sure that there is no interference (contact) with objects). If there is interference (contact), the position (TCP) of the hand section 13 of the robot 10 reaches the position of the work target without interference (contact). Calculate using
- FIG. 24 shows the modified approach area determined by the determination processing of each sampling point set in the "preset approach area”.
- Sampling points indicated by white circles ( ⁇ ) are sampling points within the correction approach area.
- ⁇ are workable sampling points.
- sampling points indicated by black circles ( ⁇ ) are unworkable sampling points. These were originally workable sampling points within the preset approach area, but were found to interfere (contact) with differential obstacles (new obstacles) and were changed to unworkable sampling points. be. These will be the sampling points outside the corrective approach area.
- the approach area correction unit 107 determines a corrected approach area through work possibility determination processing for each of such sampling points. A detailed example of the processing sequence of the approach region correction processing executed by the approach region correction unit 107 will be described later with reference to the flowchart shown in FIG.
- the approach region correction unit 107 corrects the approach region not only for the preset approach region of the predefined map, but also for the approach region correction unit 107 itself of the information processing device 100 of the robot 10 generated during the previous run. It may also be performed on the modified approach area. In this case, with respect to the new differential obstacle input from the differential obstacle detection unit 106, sampling points are placed in the corrected approach region generated last time to confirm interference (contact) with the new differential obstacle. Then, the modification approach region generated last time is further modified.
- the approach area correction unit 107 regenerates a re-correction approach area that has been corrected in consideration of the newly generated difference obstacle for the generated correction approach area generated in the approach area correction processing executed in the past. Execute the processing to be performed. In this case, the approach area correction unit 107 determines whether or not the robot 10 can work without contacting the newly generated difference obstacle with respect to the sampling points set inside the generated corrected approach area. , to generate the re-correction approach regions.
- the approach area correction unit 107 thus sets sampling points only within the preset approach area already set on the predefined map or the like, and determines interference (contact) with the differential obstacle for the limited sampling points. to generate a new modified approach area within the preset approach area.
- the approach area correction unit 107 sets sampling points only within a preset approach area already set on a predefined map or the like, and Interference (contact) with a differential obstacle is determined for the obtained sampling points to generate a new corrected approach area within the preset approach area, so processing can be performed efficiently in a short period of time.
- the environment map integration unit 108 inputs the following information. (a) "predefined map” from the predefined map management unit 105; (b) “Obstacle map” from the obstacle map creation unit 103; (c) "Corrected approach area information” and “difference obstacle information” from the approach area correction unit 107
- the environment map integration unit 108 creates an "integrated environment map” using these pieces of input information. In other words, the "integrated environment map” that records the latest obstacle positions and the "corrected approach area” that is the "preset approach area” recorded on the "predefined map” based on the latest obstacle positions is recorded. create.
- the "integrated environmental map” generated by the environmental map integration unit 108 is a map having the following information.
- Obstacle information It has obstacle information of both "predefined map” and "obstacle map”.
- Approach area information For modified preset approach area The preset approach area remains for the modified approach area and for the unmodified preset approach area.
- the information of the predefined map is inherited as it is for each information such as the position/area of the work target and waypoints.
- FIG. 25 is a diagram showing a flowchart explaining an example of a processing sequence of approach area correction processing executed by the approach area correction unit 107 of the information processing device 100 of the robot 10.
- FIG. 25 is a diagram showing a flowchart explaining an example of a processing sequence of approach area correction processing executed by the approach area correction unit 107 of the information processing device 100 of the robot 10.
- the process according to this flow can be executed by the approach area correction unit 107 of the information processing device 100 of the robot 10 according to a program stored in the storage unit of the information processing device 100.
- it can be performed as program execution processing by a processor such as a CPU having a program execution function.
- the flowchart shown in FIG. 25 shows the processing sequence of the determination processing of each sampling point and the approach region determination processing after the sampling point setting processing for the preset approach region described above with reference to FIG. 23 is completed. ing.
- the approach area correction unit 107 of the information processing device 100 of the robot 10 first corrects the "preset approach area" set on the "predefined map” generated in advance.
- Set the sampling points within For example, sampling points are set at even intervals within the "preset approach area”.
- the sampling points (workable sampling points within the preset approach area shown in FIG. 13) set when generating the "preset approach area" may be used as they are.
- the sampling points within the preset approach area interfere with (contact with) the difference obstacle (new obstacle). It shows the processing sequence of judgment processing whether it is a workable sampling point ( ⁇ ) where scheduled work can be done without any work, or a workable sampling point ( ⁇ ) where work is not possible, and correction approach region determination processing based on the judgment result. It is a flow chart.
- Step S201 First, in step S201, the approach area correction unit 107 of the information processing device 100 of the robot 10 selects one determination from the sampling points within the "preset approach area” set on the "predefined map” generated in advance. Select the sampling points of interest.
- step S201 shows a work target X placed on an obstacle such as a desk, a "preset approach area” set in front of it, and a differential obstacle (new obstacle).
- a "preset approach area” is a “preset approach area” that has been set on a previously generated “predefined map", and a plurality of sampling points have been set therein.
- step S201 one determination target sampling point is selected from the sampling points within the "preset approach area".
- FIG. 26 shows a plurality of sampling points within the "preset approach area", and one sampling point among them is selected as the determination target sampling point.
- step S202 the approach area correction unit 107 rotates the robot with the robot reference point aligned with the selected determination target sampling point, and determines whether or not there is a rotational position that does not contact an obstacle.
- differential obstacles new obstacles
- contact possibility determination since it has already been confirmed that the scheduled work can be performed without touching the existing obstacles when generating the "preset approach area”.
- Step S203 is a branching step based on the result of determination processing in step S202.
- step S202 the approach area correction unit 107 performs If it is determined that there is a rotational position where the robot does not come into contact with the obstacle, the determination result in step S203 becomes Yes, and the process proceeds to step S205.
- step S203 determines that there is no rotation position where the robot does not come into contact with the obstacle. If it is determined that there is no rotation position where the robot does not come into contact with the obstacle, the determination result in step S203 is No, and the process proceeds to step S204.
- Step S204 The process of step S204 is executed when the determination of step S203 is No, that is, when the robot reference point is aligned with the determination target sampling point and a rotational position where the robot does not contact an obstacle is not detected. .
- step S204 the approach area correction unit 107 sets the determination target sampling points to work impossible sampling points, that is, sampling points outside the correction approach area.
- Step S205 The process of step S205 is executed when the determination of step S203 is Yes, that is, when a rotational position where the robot does not come into contact with an obstacle is detected with the robot reference point aligned with the determination target sampling point.
- step S205 the approach area correction unit 107 determines whether or not the scheduled work can be executed at a robot rotation position that does not contact the obstacle. Note that the scheduled work is acquired from the work movement information input by the user 20 .
- Step S206 is a branching step based on the result of determination processing in step S205.
- step S205 determines that the scheduled work can be executed in the determination processing in step S205, that is, in the determination processing of whether or not the scheduled work can be performed at the robot rotation position that does not contact the obstacle.
- the determination result of step S206 becomes Yes, and it progresses to step S207.
- step S206 determines whether the scheduled work cannot be executed. If it is determined that the scheduled work cannot be executed, the determination result in step S206 is No, and the process proceeds to step S204.
- Step S204 step S204 will be described again.
- the process of step S204 is performed even when the determination of step S203 is Yes and when the determination of step S206 is No.
- step S203 a rotational position where the robot does not come into contact with an obstacle is detected with the robot reference point aligned with the judgment target sampling point. It is also executed when it is determined in step S206 that the scheduled work cannot be executed at the robot rotation position that does not come into contact with the obstacle.
- step S204 the approach area correction unit 107 sets the determination target sampling points to work impossible sampling points, that is, sampling points outside the correction approach area.
- Step S207 On the other hand, the process of step S207 is executed when the determination of step S206 is Yes, that is, when it is determined that the scheduled work can be performed at the robot rotation position that does not come into contact with the obstacle.
- step S207 the approach area correction unit 107 sets the determination target sampling points to workable sampling points, that is, sampling points within the correction approach area.
- Step S208 The process of step S204, that is, the process of setting the determination target sampling point to an unworkable sampling point, that is, a sampling point outside the correction approach area, or
- step S207 the processing of setting the determination target sampling point to the workable sampling point, that is, the sampling point within the correction approach area, or the processing of any of these processing is completed
- step S208 is executed. do.
- the approach region correction unit 107 determines in step S208 whether there are any unprocessed sampling points, that is, sampling points for which determination processing has not been completed. If there are unprocessed sampling points, the process returns to step S201 to process the unprocessed sampling points. On the other hand, if there is no unprocessed sampling point, the process proceeds to step S209.
- Step S209 When the determination processing for all sampling points is completed, the approach area correction unit 107 sets an area consisting only of workable sampling points as a correction approach area in step S209.
- step S209 A specific example of this process (step S209) will be described with reference to FIG.
- FIG. 27 shows a work target X placed on an obstacle such as a desk, a "preset approach area” set in front of it, a difference obstacle (new obstacle), and a difference obstacle (new obstacle) determined according to the flow shown in FIG. 4 shows the modified “correction approach area AX”.
- the "preset approach area” shown in FIG. 27 is a “preset approach area” that has been set on a previously generated “predefined map”. Judgment processing according to the flow shown in FIG. 25 is performed for a plurality of sampling points among them, and the "correction approach area AX" is determined.
- sampling points indicated by white circles ( ⁇ ) are the sampling points within the correction approach area. That is, during the sampling point, workable sampling is performed to confirm that the planned work movement can be performed on the work target without interfering (contacting) with all obstacles including differential obstacles (new obstacles). It is a point.
- sampling points indicated by black circles ( ⁇ ) are unworkable sampling points, and are sampling points outside the correction approach area. These sampling points are the sampling points within the "preset approach area" already set on the "predefined map”. It is confirmed that it is possible to execute the work movement, but it is impossible to execute the planned work movement on the work target without interfering (contacting) with the differential obstacle (new obstacle). sampling points.
- the approach area correction unit 107 thus determines a correction approach area through work possibility determination processing for each sampling point in the preset approach area.
- the robot 10 can perform the scheduled work for the work target X, that is, according to the work motion information input by the user, without contacting or interfering (contacting) with the obstacle. It becomes possible to execute the processing
- the approach area correction unit 107 corrects each of the "preset approach areas” according to the flow described with reference to FIG. process.
- the approach area correction unit 107 performs correction processing of the "preset approach area” defined on the “predefined map” and A “correction approach area” is generated in consideration of a “difference obstacle (new obstacle)" which is a new obstacle.
- the “corrected approach region” generated by approach region correction section 107 is output to environment map integration section 108 .
- the environment map integration unit 108 creates an "integrated environment map” using the following input information. (a) "predefined map” from the predefined map management unit 105; (b) “Obstacle map” from the obstacle map creation unit 103; (c) "Corrected approach area information” and “difference obstacle information” from the approach area correction unit 107 The environment map integration unit 108 creates an "integrated environment map” using these pieces of input information.
- the environment map integration unit 108 records the latest obstacle positions and a "corrected approach area” obtained by correcting the "preset approach areas” recorded in the "predefined map” based on the latest obstacle positions. create an integrated environmental map.
- the "integrated environment map” records the "correction approach area” as previously described with reference to FIG.
- the "correction approach area” is defined as a work area in which the robot 10 can perform the scheduled work without coming into contact with existing obstacles or differential obstacles (new obstacles).
- the sequence control unit 114 of the information processing device 100 attached to the robot 10 controls the robot 10 based on the work sequence in the work definition data generated in the user terminal 30.
- the moving unit 11, the arm unit 12, and the hand unit 13 are moved, their progress is managed, and sequence control is performed.
- the sequence control unit 114 follows the work start instruction from the robot control unit 113, and based on the work sequence received from the work definition data management unit 104, the moving object path planning unit 121 and the robot arm path planning unit 123 control the moving body and the robot. Gives instructions for arm movement.
- the moving part path planning part 121 moves the moving part 11 of the robot 10 to the indicated position according to the instruction from the sequence control part 114 .
- the following instructions are mainly input from the sequence control unit 114 to the moving object route planning unit 121 .
- Instruction to move to waypoint * Instruction to move to work target approach area
- the moving body route planning unit 121 uses the "integrated environmental map" generated by the environmental map integration unit 108 to generate a route for realizing the instructed action.
- the movement unit route planning unit 121 determines the movement route of the robot 10 instructed by the sequence control unit 114.
- Route information (travel route information) that enables travel while avoiding obstacles is generated for the waypoints above and the approach area, which is the workable area at each work position. output to
- a specific example of the movement route generation processing to the approach area executed by the movement unit route planning unit 121 will be described. Note that, if there is a corrected approach area obtained by correcting the preset approach area, the moving section route planning unit 121 performs movement route generation processing to the corrected approach area. If there is no corrected approach area obtained by correcting the preset approach area, a moving route generation process to the preset approach area is performed.
- the moving unit route planning unit 121 first selects approach position candidates from within the approach area (corrected approach area or preset approach area). It has been confirmed that it is possible to work on the work target anywhere within the approach area without interfering (contacting) with obstacles, so there is no problem in choosing any location within the approach area.
- the approach area may be divided into a combination of convex polygons such as triangles, and the point furthest from the outer periphery may be adopted among the centers (centers of gravity) of each of the divided convex polygons. .
- an approach position that provides the shortest route may be selected in consideration of the next work/target position in the work sequence.
- an operation example of the robot 10 when executing the work according to the work sequence shown in FIG. 9 described above will be described with reference to FIG.
- the moving portion route planning unit 121 determines the approach position AX that minimizes the moving distance from the waypoint B to the waypoint C.
- FIG. i.e. Moving distance from waypoint B to waypoint C distance (B-AX) + distance (AX-C)
- An approach position AX within the approach area with the shortest distance is calculated.
- a route passing through the point AX that is, Via point B ⁇ Approach position AX ⁇ Via point C Generate a path connecting these points.
- a route generation method it is possible to use, for example, A star (A*) or RRT, similarly to movement to a waypoint.
- approach position candidate position selection methods include, for example, changing the approach position candidate to the second candidate (for example, the point with the second shortest moving distance from the previous and subsequent waypoints), Algorithms can be applied, such as randomly selecting points from within the region, or using points a certain distance away from the current approach position candidates.
- timing at which the moving object route planning unit 121 generates a route may be generated in advance for the movement instruction described in the work sequence, not only at the timing at which the operation instruction is received from the sequence control unit 114 .
- the environment map integration unit 108 updates the integrated environment map
- the difference obstacle detection unit 106 detects a new difference obstacle
- the environment map integration unit 108 detects an integrated environment map reflecting the difference obstacle.
- the route may be generated at the timing when the is generated. After the route is generated by the mobile object route planning unit 121 , the route is transferred to the mobile object control unit 122 .
- the mobile object control unit 122 generates route information (travel route information) based on the route information (travel route information) generated by the mobile object route planning unit 121 and the self-position of the robot 10 estimated by the self-position estimation unit 102.
- the moving part 11 of the robot is controlled so as to move the robot 10 according to. That is, the robot is caused to travel so as to follow the route of the route information (travel route information) generated by the mobile object route planning unit 121 .
- the route tracking control algorithm for example, Pure Pursuit can be used.
- the robot arm path planning unit 123 follows an instruction from the sequence control unit 114 to create a path (trajectory) of the arm unit 12 and the hand unit 13 of the robot 10 for performing the instructed work, that is, the work set by the work definition data. is planned, and the generated path (trajectory) is output to the robot arm control unit 124 .
- the robot arm path planning unit 123 measures the position of the work target more precisely using the photographed information of the camera constituting the sensor 101 mounted on the robot 10, corrects the target position based on the measurement result, The trajectory may be corrected accordingly.
- the trajectory of the robot arm generated by the robot arm path planning unit 123 is passed to the robot arm control unit 124, and the robot arm control unit 124 controls the robot arm to follow the generated trajectory.
- the robot arm control unit 124 moves the arm unit 12 and the hand unit 13 of the robot 10 using the paths (trajectories) of the arm unit 12 and the hand unit 13 of the robot 10 generated by the robot arm path planning unit 123. , drives the arm of the robot 10 and the joints of the hand 13 and the like. For example, it controls a motor driver for the arm part of the robot 10 and the joints of the hand part 13 .
- difference obstacles that are not on the "predefined map” are detected.
- a correction process of the "preset approach area” interference (contact) with the difference obstacle is confirmed, and a "correction approach area” is generated by deleting the area where the interference (contact) occurs.
- the sampling points are set only within the "preset approach area” and the determination process is performed.
- the robot 10 of the present disclosure is not limited to one that runs on the ground with a moving mechanism such as wheels as described in the embodiment. For example, it may move on water or in the air.
- the approach area can also be set as an area having a three-dimensional spread, and in this case, the approach area space is expressed using a three-dimensional expression (for example, a voxel map, etc.).
- FIG. 29 An example of the hardware configuration of the information processing apparatus of the present disclosure will be described with reference to FIG. 29 .
- the hardware configuration of the information processing apparatus shown in FIG. 29 is one configuration example of the hardware configuration of the information processing apparatus 100 attached to the robot 10 . It is also a configuration example of the hardware configuration of the user terminal 30 .
- a CPU (Central Processing Unit) 301 functions as a data processing section that executes various processes according to programs stored in a ROM (Read Only Memory) 302 or a storage section 308 . For example, the process according to the sequence described in the above embodiment is executed.
- a RAM (Random Access Memory) 303 stores programs and data executed by the CPU 301 . These CPU 301 , ROM 302 and RAM 303 are interconnected by a bus 304 .
- the CPU 301 is connected to an input/output interface 305 via a bus 304.
- the input/output interface 305 includes an input unit 306 including various switches, a keyboard, a touch panel, a mouse, a microphone, a user input unit, and the like, a display, a speaker, and the like.
- An output unit 307 is connected.
- the input unit 306 also receives sensor detection information from various sensors 321 such as a camera and LiDAR.
- the output unit 307 also outputs driving information to the driving unit 322 that drives the robot or the like.
- the CPU 301 receives commands, situation data, and the like input from the input unit 306 , executes various processes, and outputs processing results to the output unit 307 , for example.
- a storage unit 308 connected to the input/output interface 305 is composed of, for example, a flash memory, a hard disk, or the like, and stores programs executed by the CPU 301 and various data.
- a communication unit 309 functions as a transmission/reception unit for data communication via a network such as the Internet or a local area network, and communicates with an external device.
- a GPU Graphics Processing Unit
- a drive 310 connected to the input/output interface 305 drives a removable medium 311 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory such as a memory card to record or read data.
- a removable medium 311 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory such as a memory card to record or read data.
- the technique disclosed in this specification can take the following configurations.
- a difference obstacle detection unit that detects a difference obstacle corresponding to a difference from obstacles recorded on the predefined map based on information from a sensor that acquires information about the running environment of the robot; modifying the preset approach area, which is the area recorded on the predefined map and which is determined to be executable by the robot without contacting the obstacle, in consideration of the difference obstacle; having an approach region correction unit that generates a corrected approach region;
- the approach area correction unit An information processing device that determines whether or not the robot can work without contacting the differential obstacle with respect to sampling points set inside the preset approach area, and generates the corrected approach area.
- the approach area correction unit No sampling points are set outside the preset approach area,
- the modified approach area is generated by determining whether or not the robot can work at the sampling points set inside the preset approach area without contacting the difference obstacle ( 1) The information processing device described in 1).
- the approach area correction unit determining whether or not the robot can work without contacting the difference obstacle only for sampling points set inside the preset approach area;
- the predefined map includes: The information processing apparatus according to any one of (1) to (4), wherein the map is created before the robot starts running.
- the predefined map is The information processing device according to any one of (1) to (5), which is a map input to the information processing device from an external device.
- the information processing device a work definition data management unit that manages work definition data including the predefined map;
- the approach area correction unit inputting the predefined map from the work definition data management unit; inputting differential obstacle information, which is information about a new obstacle that does not exist in the predefined map, from the differential obstacle detection unit;
- the information processing apparatus according to any one of (1) to (6), which generates the correction approach area.
- the information processing device a work definition data management unit that manages work definition data including the predefined map;
- the work definition data management unit (a) Predefined map (b) Work sequence information (c) Work movement information Information processing according to any one of (1) to (7) for managing work definition data having each of the above (a) to (c) data Device.
- the information processing device Having a sequence control unit that controls an operation sequence of the robot,
- the sequence control unit The information processing apparatus according to (8), which controls the work sequence of the robot according to work sequence information input from the work definition data management unit.
- the information processing device The information processing apparatus according to any one of (1) to (9), further comprising an environment map integration unit that generates an integrated environment map that records the corrected approach area generated by the approach area correction unit.
- the information processing device an environment map integration unit that generates an integrated environment map that records the corrected approach area generated by the approach area correction unit;
- the information processing apparatus according to any one of (1) to (11), further comprising a route planning unit that plans a movement route of the robot using the integrated environment map generated by the environment map integration unit.
- the approach region correction unit A configuration for executing a process of generating a corrected re-correction approach area again in consideration of a newly occurring difference obstacle for a generated correction approach area generated in the approach area correction process executed in the past,
- the approach area correction unit Determining whether or not the robot can work without contacting the newly generated difference obstacle with respect to the sampling points set inside the generated correction approach area, and generating the re-correction approach area.
- the information processing apparatus according to any one of (1) to (12).
- An information processing system having a user terminal and an information processing device attached to a robot,
- the user terminal is
- a predefined map is generated and attached to the robot, which includes locations of obstacles in the robot's running environment and preset approach areas determined to allow the robot to perform work without contacting the obstacles.
- the information processing device attached to the robot, Based on the information of the sensor that acquires the running environment information of the robot, a difference obstacle detection unit that detects a difference obstacle corresponding to a difference from obstacles recorded on the predefined map input from the user terminal; modifying the preset approach area, which is the area recorded on the predefined map and which is determined to be executable by the robot without contacting the obstacle, in consideration of the difference obstacle; having an approach region correction unit that generates a corrected approach region; The approach area correction unit An information processing system for generating the corrected approach area by determining whether the robot can work without contacting the difference obstacle with respect to the sampling points set inside the preset approach area.
- the user terminal (a) predefined map (b) work sequence information (c) work movement information inputting work definition data having each of the data (a) to (c) into the information processing device of the robot;
- the information processing device of the robot A process of generating the correction approach area using the work definition data having each of the above (a) to (c) data; a process of generating an integrated environment map reflecting the modified approach area;
- the information processing system according to (14) which executes control processing of the robot with reference to the integrated environment map.
- the information processing device of the robot In the process of generating the correction approach area, No sampling points are set outside the preset approach area, The modified approach area is generated by determining whether or not the robot can work at the sampling points set inside the preset approach area without contacting the difference obstacle ( 14) or the information processing system according to (15).
- An information processing method executed in an information processing device a difference obstacle detection step in which the difference obstacle detection unit detects a difference obstacle corresponding to a difference from the obstacle recorded in the predefined map based on the information of the sensor that acquires the traveling environment information of the robot;
- the approach area correction unit is an area recorded on the predefined map, and determines a preset approach area that is determined to be capable of being performed by the robot without contacting an obstacle, by using the difference obstacle. perform an approach region modification step that considers and modifies to generate a modified approach region,
- the approach region correction step includes: Information representing a step of determining whether or not the robot can work without contacting the difference obstacle with respect to the sampling points set inside the preset approach area, and generating the modified approach area. Processing method.
- the user terminal A predefined map is generated and attached to the robot, which includes locations of obstacles in the robot's running environment and preset approach areas determined to allow the robot to perform work without contacting the obstacles.
- the information processing device attached to the robot, Based on the information of the sensor that acquires the running environment information of the robot, difference obstacle detection processing for detecting a difference obstacle corresponding to a difference from obstacles recorded on the predefined map input from the user terminal; modifying the preset approach area, which is the area recorded on the predefined map and which is determined to be executable by the robot without contacting the obstacle, in consideration of the difference obstacle; Execute approach area correction processing for generating a correction approach area, In the approach area correction process, An information processing method for generating the corrected approach area by determining whether or not the robot can work without contacting the difference obstacle with respect to sampling points set inside the preset approach area.
- a program for executing information processing in an information processing device a differential obstacle detection step of causing the differential obstacle detection unit to detect a differential obstacle corresponding to a difference from the obstacle recorded on the predefined map, based on the information of the sensor that acquires the traveling environment information of the robot;
- the approach area correcting unit changes the preset approach area, which is the area recorded on the predefined map and which is determined to be able to perform the work by the robot without contacting the obstacle, to the difference obstacle. perform an approach area modification step of considering and modifying to generate a modified approach area;
- a program recording the processing sequence is installed in the memory of a computer built into dedicated hardware and executed, or the program is loaded into a general-purpose computer capable of executing various processing. It can be installed and run.
- the program can be pre-recorded on a recording medium.
- the program can be received via a network such as a LAN (Local Area Network) or the Internet and installed in a recording medium such as an internal hard disk.
- a system is a logical collective configuration of a plurality of devices, and the devices of each configuration are not limited to being in the same housing.
- the approach area defined as the work area of the robot can be quickly corrected.
- a device and method are realized. Specifically, for example, a difference obstacle detection unit that detects a difference obstacle corresponding to a difference from obstacles recorded on the predefined map, based on information from a sensor that acquires the robot's running environment information;
- a modified approach area is obtained by modifying a preset approach area, which is an area recorded on a predefined map and determined to be able to perform work by a robot without contacting an obstacle, in consideration of a differential obstacle. It has a generating approach region corrector.
- the approach area correction unit generates a corrected approach area by determining whether or not the robot can work without contacting the difference obstacle with respect to the sampling points set inside the preset approach area.
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
Description
例えば、工場では、従来、人が行っていた作業の多くをロボットが行うようになっている。
例えば作業位置Aで荷物をピックアップし、作業位置Bに移動して荷物を下ろすといった作業である。
モバイルマニピュレータは、移動体が移動することで、様々な作業領域で作業を行うことが可能となる。
例えばモバイルマニピュレータの移動部が障害物で前方に進めず、ハンド部が作業対象物に届かなければ予定の作業を行うことができない。
ロボットの走行環境情報を取得するセンサの情報に基づいて、事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出部と、
前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正部を有し、
前記アプローチ領域修正部は、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成する情報処理装置にある。
ユーザ端末と、ロボットに装着された情報処理装置を有する情報処理システムであり、
前記ユーザ端末は、
前記ロボットの走行環境の障害物の位置と、前記ロボットによる作業を前記障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を含む事前定義地図を生成して前記ロボットに装着された前記情報処理装置に入力し、
前記ロボットに装着された前記情報処理装置は、
前記ロボットの走行環境情報を取得するセンサの情報に基づいて、
前記ユーザ端末から入力した前記事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出部と、
前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正部を有し、
前記アプローチ領域修正部は、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成する情報処理システムにある。
情報処理装置において実行する情報処理方法であり、
差分障害物検出部が、ロボットの走行環境情報を取得するセンサの情報に基づいて、事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出ステップと、
アプローチ領域修正部が、前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正ステップを実行し、
前記アプローチ領域修正ステップは、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成するステップである情報処理方法にある。
ユーザ端末と、ロボットに装着された情報処理装置を有する情報処理システムにおいて実行する情報処理方法であり、
前記ユーザ端末が、
前記ロボットの走行環境の障害物の位置と、前記ロボットによる作業を前記障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を含む事前定義地図を生成して前記ロボットに装着された前記情報処理装置に入力し、
前記ロボットに装着された前記情報処理装置が、
前記ロボットの走行環境情報を取得するセンサの情報に基づいて、
前記ユーザ端末から入力した前記事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出処理と、
前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正処理を実行し、
前記アプローチ領域修正処理において、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成する情報処理方法にある。
情報処理装置において情報処理を実行させるプログラムであり、
差分障害物検出部に、ロボットの走行環境情報を取得するセンサの情報に基づいて、事前定義地図に記録された障害物との差分に相当する差分障害物を検出させる差分障害物検出ステップと、
アプローチ領域修正部に、前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成させるアプローチ領域修正ステップを実行させ、
前記アプローチ領域修正ステップにおいては、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成させるプログラムにある。
具体的には、例えば、ロボットの走行環境情報を取得するセンサの情報に基づいて、事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出部と、事前定義地図に記録された領域であり、ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正部を有する。アプローチ領域修正部は、事前設定アプローチ領域の内部に設定したサンプリング点について差分障害物にロボットが接触することなく作業可能であるか否かを判定して修正アプローチ領域を生成する。
本構成により、事前定義地図にない新たな障害物が発生した際に、ロボットの作業領域として規定されるアプローチ領域を迅速に修正可能とした装置、方法が実現される。
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
1.本開示の処理を実行する情報処理システムの全体構成例について
2.情報処理装置およびユーザ端末の構成について
3.ユーザ端末における作業定義データ生成処理の詳細について
4.アプローチ領域生成処理の処理シーケンスについて
5.作業定義データに基づくロボットの動作の詳細について
6.ロボットの情報処理装置のアプローチ領域修正部が実行するアプローチ領域修正処理の処理シーケンスについて
7.ロボットの情報処理装置が生成した修正アプローチ領域を反映した環境地図を用いたロボットによる作業シーケンスについて
8.本開示の情報処理装置のハードウェア構成例について
9.本開示の構成のまとめ
まず、図1を参照して本開示の処理を実行する情報処理システムの全体構成例について説明する。
本開示の処理を実行する情報処理システムは、図1に示すように、ロボット10と、ユーザ20が操作するユーザ端末30を有するシステムである。
なお、ロボット10内部には、ロボット10の制御や、外部との通信等を行うための情報処理装置が組み込まれている。
この情報処理装置の詳細構成については後述する。
また、ロボットに対する作業の開始や停止などの指示操作や、ロボットの状態表示も、ユーザ端末10を介して行うことができる。
ロボット10とユーザ端末30は通信可能な構成である。
例えば図2に示すように、情報処理装置100がロボット10内部に組み込まれている。
次にロボット10内部の情報処理装置とユーザ端末の構成について説明する。
図3を参照してこの情報処理装置100の構成例について説明する。
なお、センサ101は、カメラ、LiDARに限らず、これらの他のセンサを備えた構成としてもよい。例えば、ToFセンサ、超音波センサ、レーダ、ソナー等を備えた構成でもよい。
なお、自己位置推定部102による自己位置推定処理は、センサ101からの取得情報の他、IMU、車輪の回転角度などの情報、外部カメラの情報などを利用した処理として実行してもよい。
SLAM処理は、カメラで画像(動画像)を撮影し、複数の撮影画像に含まれる特徴点の軌跡を解析することで、特徴点の3次元位置を推定するとともに、カメラ(自己)の位置姿勢を推定(ローカリゼーション)する処理であり、特徴点の3次元位置情報を用いて周囲の地図(環境地図)を作成(mapping)することができる。
障害物地図作成部103は、例えば占有格子地図(Occupancy Grid Map)のような「障害物地図」を作成する。
ロボット10は、占有格子地図(グリッドマップ)の区画中、障害物の存在する確率の低い区画(グリッド)を走行ルートとして選択して走行することで障害物に衝突することなく安全に走行することができる。
(1)事前定義地図
(2)作業シーケンス情報
(3)作業動作情報
これらのデータの詳細については後段で説明する。
なお、「事前定義地図」とは、ロボット10の走行開始前、すなわち事前に作成される地図である。
なお、「事前定義地図」は、ユーザ20が、直接ロボット操作UI112を介して入力してもよい。
図4(1a)に「事前定義地図」には2つの障害物と、障害物各々の近傍に設定された「事前設定アプローチ領域」が記録されている。なお、「事前定義地図」に記録された「アプローチ領域」を「事前設定アプローチ領域」と呼ぶ。
ロボット10はスタート地点(S)から移動を開始して、「事前設定アプローチ領域AX」に到達すると、「事前設定アプローチ領域AX」内で作業対象Xに対する作業を行う。例えば作業対象Xの把持処理や移動処理などの作業を実行する。
その後、「事前設定アプローチ領域AY」に移動し、この「事前設定アプローチ領域AY」で、別の作業、例えば作業対象Yの把持などの作業を行う。
「事前定義地図」には、ロボット10が走行する走行環境内の障害物位置や、ロボット10が作業領域においてアーム部12やハンド部13を駆動して作業を安全に実行可能であると判定された作業可能領域である「事前設定アプローチ領域」が記録されている。
(a)事前定義地図管理部105から「事前定義地図」、
(b)差分障害物検出部106が検出した「事前定義地図」に存在しない新たな障害物である「差分障害物」情報、
アプローチ領域修正部107は、これらの入力情報を利用して、「事前定義地図」上に定義された「事前設定アプローチ領域」の修正処理を行う。
具体的には、差分障害物検出部106が検出した「事前定義地図」に存在しない新たな障害物である「差分障害物」を考慮した「修正アプローチ領域」を生成する。
(a)事前定義地図管理部105から「事前定義地図」、
(b)障害物地図作成部103から「障害物地図」、
(c)アプローチ領域修正部107から、「修正アプローチ領域情報」と「差分障害物情報」
環境地図統合部108は、これらの入力情報を利用して「統合環境地図」を作成する。
すなわち最新の障害物の位置と、「事前定義地図」に記録された「事前設定アプローチ領域」を最新の障害物の位置に基づいて修正した「修正アプローチ領域」を記録した「統合環境地図」を作成する。
図5(2a)は、障害物地図作成部103が生成する「障害物地図」の一例を示す図である。
図5(2a)に示す「障害物地図」は、先に図4(1a)を参照して説明した「事前定義地図」と同じ場所の地図である。
図5(2a)に示す「障害物地図」には、先に図4(1a)を参照して説明した「事前定義地図」に含まれていない新規な「差分障害物」が含まれる。
この「差分障害物」は、「事前定義地図」の作成時には存在しなかった障害物であり、「障害物地図」作成時に新たに検出された障害物である。
すなわち、図5(2b)に示すような「統合環境地図」を作成する。
(a)事前定義地図管理部105から「事前定義地図」、
(b)障害物地図作成部103から「障害物地図」、
(c)アプローチ領域修正部107から、「修正アプローチ領域情報」と「差分障害物情報」
これらの入力情報を利用して、「事前定義地図」に記録された「事前設定アプローチ領域」を最新の障害物の位置に基づいて修正した「修正アプローチ領域」を記録した「統合環境地図」、すなわち、図5(2b)に示すような「統合環境地図」を作成する。
なお、具体的なアプローチ領域の生成処理、修正処理については、後段で説明する。
シーケンス制御部114は、作業定義データに定義された作業シーケンスに基づいて、ロボット10の移動部11と、アーム部12、ハンド部13を動かし、その進捗を管理し、シーケンス制御を行う。
移動部経路計画部121は、環境地図統合部108が生成した「統合環境地図」と、自己位置推定部102で推定された自己位置を基に、シーケンス制御部114が指示するロボット10の移動経路上の経由点や、各作業位置での作業可能領域であるアプローチ領域を、障害物を回避しながら走行可能な経路情報(走行ルート情報)を生成し、生成した経路情報を移動体制御部122に出力する。
アプローチ領域修正部107は、新たな障害物のみならず既存障害物の移動位置も考慮して「修正アプローチ領域」を決定する。この場合、環境地図統合部108は、新たな障害物のみならず既存障害物の移動位置も考慮して修正された「修正アプローチ領域」を記録した「統合環境地図」を生成する。
アプローチ領域修正部107は、作業対象物の位置変化を考慮して「修正アプローチ領域」を決定する。この場合、環境地図統合部108は、作業対象物の位置変化を考慮して修正された「修正アプローチ領域」を記録した「統合環境地図」を生成する。
この場合、環境地図統合部108は、様々な環境変化を考慮して修正された「修正アプローチ領域」を記録した「統合環境地図」を生成する。
前述したように、ユーザ端末30は、例えばタブレット端末、スマホ、PC等の様々な情報処理装置によって構成される。
ユーザ端末30は、ロボット10を操作するUIとしての機能と、ロボット10に行わせる作業を定義する作業定義データの作成UIとしての機能を有する。
ユーザインタフェース(UI)制御部202の制御によって様々なデータが表示される。
またユーザ20は、ロボット10の制御に利用可能な様々な情報、例えば作業シーケンス情報や、走行経路情報などを入力することができる。
また、ユーザインタフェース(UI)制御部202は、ユーザ20によるユーザインタフェース(UI)201に対する入力情報をロボット操作情報管理部203や、作業定義データ管理部204に出力する。
(1)障害物情報=ロボットが作業する空間に存在する障害物の設定情報
(2)経由点情報=ロボットが移動する際に通過する経由点の設定情報
(3)作業対象情報=ロボットが作業を行う対象の位置、もしくは領域の設定情報
(4)作業動作情報=作業対象物体に対してロボットが行う作業に必要となるアーム部やハンド部の動作の設定情報
(5)作業シーケンス情報=ロボットの移動や作業動作などの一連の流れについての設定情報
(1)事前定義地図
(2)作業シーケンス情報
(3)作業動作情報
これらのデータの詳細については後段で説明する。
事前定義地図生成部206は、「事前定義地図」の生成に必要となる情報を、作業定義データ管理部204を介して入力して「事前定義地図」を生成する。例えばユーザインタフェース(UI)201を介して入力したユーザ設定情報に含まれる障害物位置情報や経由点情報、さらに、アプローチ領域生成部205が生成した「事前設定アプローチ領域」情報などを入力して、「事前定義地図」を生成する。
作業定義データ記憶部207は、具体的には、例えば、フラッシュメモリなどの不揮発性記憶部によって構成される。
このような構成とした場合、ユーザ端末30を用いずにロボット10単独で本開示の処理が実行される。
(1)事前定義地図
(2)作業シーケンス情報
(3)作業動作情報
以下、これらのデータの詳細について説明する。
なお、図8に示す例は、2次元(2D)地図であるが、3次元(3D)地図としてもよい。また、グリッドマップやボクセルマップのような格子状のマップを用いてもよい。また、各領域を囲む形状の頂点情報のみ持つようなベクター形式のマップでもよい。
さらに、ユーザにより指定されたロボットの経由点情報や、作業対象情報等も記録されることになる。
経由点は、ロボットが空間を移動するにあたり、通るべきルートを指定するために設定する。地図の移動可能な領域(障害物領域ではないところ)に設定される。
また、作業対象物体が複数、置かれている場合や、作業物体が位置決めされていない場合は、作業対象物体の置かれる範囲を領域情報として記録する。
なお、障害物領域は、ロボット10の移動部11のみが進入できない領域であり、ロボット10のアーム部12は進入可能な領域である。ただし、必要に応じて、ロボット10のアーム部12は進入可能な領域であっても障害物領域として設定することは可能である。
先に図5等を参照して説明したように、「事前設定アプローチ領域」は、ロボット10のセンサ検出情報を用いて生成される「障害物地図」を用いて修正される場合がある。
また、アプローチ領域を生成する際にサンプリング点を生成している場合、そのサンプリング点に関する情報を合わせて保持してもよい。
なお、サンプリング点を利用したアプローチ領域の生成手法については後段で説明する。
作業定義データ管理部204は、ユーザの入力情報、すなわち先に図7を参照して説明したユーザの入力情報中の「(5)作業シーケンス情報」に従って、作業定義データとしての「作業シーケンス情報」を生成する。
時系列順のシーケンスNo.に対応させてロボット10に実行させる移動処理や作業情報を記録している。
図10に示すように、ロボット10は、経由点Aから経由点Bに移動し、作業対象X対応のアプローチ領域AXに侵入する。その後、ロボット10は、アプローチ領域AX内で作業対象Xに対する予定の作業(P)を実行する。予定作業(P)の完了後、経由点C,Dを通過して、作業対象Y対応のアプローチ領域AYに侵入する。その後、ロボット10は、アプローチ領域AY内で作業対象Yに対する予定の作業(Q)を実行する。予定作業(Q)の完了後、経由点E,F,Gを順次移動してシーケンスを終了する。
図9に示す作業シーケンスに従ったロボット10の動作シーケンスはこのようなものとなる。
作業定義データ管理部204が生成する「作業動作情報」の具体例を図11に示す。
(1)事前定義地図
(2)作業シーケンス情報
(3)作業動作情報
これらのデータを含む「作業定義データ」を生成し、作業定義データ記憶部207に格納するとともに、ロボット10の情報処理装置100に送信する。
次に、ユーザ端末30における作業定義データ生成理の詳細について
(1)事前定義地図
(2)作業シーケンス情報
(3)作業動作情報
これらのデータを含む「作業定義データ」の生成処理は、ユーザ端末30において、ユーザ入力情報を用いて実行される。
ユーザ端末30では、「作業定義データ」の生成処理に際して以下の各情報の生成処理を行う。
(1)障害物情報の生成処理
(2)作業対象情報の生成処理
(3)経由点情報の生成処理
(4)作業動作情報の生成処理
(5)アプローチ領域情報の生成定処理
(6)作業シーケンス情報の生成処理
以下、これら各情報の生成処理の具体例について、順次、説明する。
まず、ユーザ端末30における障害物情報の生成処理の具体例について説明する。
ユーザ20は、ユーザ端末30の画面を障害物設定モードにし、画面上で、障害物の位置を示す座標を指定し、障害物の形状に相当する長方形や直方体、円などの形状を描画する。
次にユーザ端末30における作業対象情報の生成処理の具体例について説明する。
ユーザ20は、ユーザ端末30の画面を作業対象物設定モードにし、画面上で作業対象物の位置を示す座標を指定する。
次にユーザ端末30における経由点情報の生成処理の具体例について説明する。
ユーザ20は、ユーザ端末30の画面を経由点入力モードにし、画面上で経由点の位置を示す座標を指定する。
また、経由点に名前を付けてもよい。
次にユーザ端末30における作業動作情報の生成処理の具体例について説明する。
作業動作情報は、先に図11を参照して説明したデータである。すなわち、ロボット10がアプローチ領域に到達し、作業対象物体に対する作業を行う際、予定の作業を行う場合のロボット10のアーム部12の軌道やハンド部13の向きや状態(Open/Close)を記述したデータである。
また、どの作業対象に対する作業なのかも合わせて設定する。
または、ロボット10のアーム部12やハンド部13をCG上で動かして任意の姿勢を取らせ、その姿勢を移動する順に登録していくような方法で設定してもよい。
あるいは、ロボット10の実機を用いたダイレクトティーチングを行い、ロボット10(実機)の姿勢情報をユーザ端末30に転送し、この転送データから得られるハンド部13やアーム部12の時系列軌跡を示す経由点から作業動作情報を生成してもよい。
次にユーザ端末30におけるアプローチ領域情報の生成処理の具体例について説明する。
ユーザ端末30は、ユーザ20が入力した作業対象の位置・領域や、作業動作と、障害物情報を用いて、障害物にロボット10が干渉(接触)せずに作業対象物に対する予定の作業を行うことが可能な領域を「アプローチ領域」として決定する。
ユーザ20は、ユーザインタフェース(UI)201を介して障害物情報、作業対象情報、作業動作情報を入力し、これらの各情報の入力完了後、ユーザインタフェース(UI)201に表示されたアプローチ領域生成指示アイコンを操作すると、アプローチ領域生成部205においてアプローチ領域生成処理が開始される。
ロボット10の移動部11が走行する平面をz=0平面とし、
作業対象物Xの位置PosXを、ロボット10の移動部11の走行平面(z=0)に投影した位置を、PosX2d(XposX,YposX,0)
とする。
作業対象物Xの位置PosXのロボット走行平面(z=0)への投影位置PosX2dを中心とした半径Rの円、サークルX(CircleX)を設定して、この円内に複数のサンプリング点を設定する。
これらのサンプリング点(●)は、作業対象の配置位置(PosX)をロボット走行平面(z=0)へ投影した投影点(PosX2d)を中心とする規定半径(上記R)内に規定密度で設定した点をサンプリング点として示している。
アプローチ領域生成部205は、この判定処理によって、作業が実行可能と判定したサンプリング点のみを選択し、選択したサンプリング点のみによって規定される領域をアプローチ領域として決定する。
アプローチ領域生成部205は、作業対象物Xの位置PosXのロボット走行平面(z=0)への投影位置PosX2dを中心とした半径Rの円、サークルX(CircleX)内に設定した複数のサンプリング点各々について、以下の判定処理を行う。
(判定処理1)ロボット10のハンド部13の位置(TCP)が、作業対象Xに対する予定作業(P)を行う際に必要となる位置に到達可能か否か。
(判定処理2)ロボット10全体(移動部11、アーム部12、ハンド部13)が障害物と干渉(接触)しないか否か。
このようにして各サンプリング点を判定した上で、ロボット10のハンド部13の位置(TCP)が作業対象に届き、かつ障害物と干渉(接触)しないサンプリング点のうち、外周にある点を結ぶことで、アプローチ領域を生成する。
白丸(〇)で示すサンプリング点がアプローチ領域内のサンプリング点である。すなわち、サンプリング点中、障害物と干渉(接触)せずに作業対象に対して予定の作業動作を実行可能であることが確認された作業可能サンプリング点である。
なお、アプローチ領域生成部205が実行するアプローチ領域生成処理の処理シーケンスの詳細例については、後段において図14に示すフローチャートを参照して説明する。
次にユーザ端末30における作業シーケンス情報の生成処理の具体例について説明する。
時系列順のシーケンスNo.に対応させてロボット10に実行させる移動処理や作業情報を記録した情報である。
先に説明した図10に示すシーケンスを設定する場合の例について説明する。
ユーザ20は、例えば以下のようなロボット10の動作(移動、作業)を順次、入力する。
・経由点Aから経由点Bへの移動、
・作業対象X対応のアプローチ領域AXに侵入してアプローチ領域AX内で作業対象Xに対する予定の作業(P)を実行、
・予定作業(P)の完了後、経由点C,Dを通過して、作業対象Y対応のアプローチ領域AYに侵入、
・アプローチ領域AY内で作業対象Yに対する予定の作業(Q)を実行、
・予定作業(Q)の完了後、経由点E,F,Gを順次移動して終了する。
(1)事前定義地図
(2)作業シーケンス情報
(3)作業動作情報
これらのデータを含む「作業定義データ」の生成が完了する。
ロボット10の情報処理装置100は通信IF111、ロボット制御部113を経由して作業定義データ管理部104が作業定義データを受け取り、記憶部に記憶する。これにより、ロボット10は、作業定義データに従った作業を開始できる状態になる。
次に、アプローチ領域生成処理の処理シーケンスについて説明する。
なお、図14に示すフローチャートは、先に図12を参照して説明したサンプリング点の設定処理が完了した後の各サンプリング点の判定処理とアプローチ領域決定処理の処理シーケンスを示している。
すなわち、各サンプリング点がアプローチ領域内の作業可能サンプリング点(〇)であるか、アプローチ領域外の作業不可能サンプリング点(●)であるかの判定処理と判定結果に基づくアプローチ領域決定処理の処理シーケンスを示すフローチャートである。
なお、半径Rは、ロボット10の移動部11の基準点(例えば4輪車両であれば、後輪の車軸中心)からロボット10のアーム部12を最大限に伸ばした際のロボット10のハンド部13の位置(TCP)までの距離Rに相当する長さである。
(ステップS101)
まず、ユーザ端末30のアプローチ領域生成部205は、ステップS101において、半径Rの円サークルX(CircleX)内の全サンプリング点から、1つの判定対象サンプリング点を選択する。
図15(S101)には、ロボット10と、机等の障害物に置かれた作業対象Xを示している。
なお、ユーザによって指定された作業内容は、図に示すように作業対象Xを右上に移動させる処理であるとする。
ロボット10には、基準点(例えば4輪車両であれば、後輪の車軸中心)を●で示している。
次に、アプローチ領域生成部205は、ステップS102において、選択した判定対象サンプリング点にロボット基準点を一致させた状態で、ロボットを回転させ、障害物に接触しない回転位置の有無を判定する。
図15(S102)には、ステップS101で選択した判定対象サンプリング点にロボット10の基準点を一致させた状態で、ロボット10を回転させ、障害物に接触しない回転位置の有無を判定する処理を示している。
ステップS103は、ステップS102における判定処理の結果に基づく分岐ステップである。
図16には、
(ステップS103の判定=Yes)非接触回転位置あり、
(ステップS103の判定=No)非接触回転位置なし、
これら2つの具体例を示している。
この例は、判定対象サンプリング点にロボット基準点を一致させた状態で、ロボットが障害物に接触しない回転位置が検出された例である。
このような場合には、ステップS103の判定結果がYesとなり、ステップS105に進む。
この例は、判定対象サンプリング点にロボット基準点を一致させた状態で、ロボットが障害物に接触しない回転位置を検出できなかった場合の例である。
このような場合には、ステップS103の判定結果がNoとなり、ステップS104に進む。
ステップS104の処理は、ステップS103の判定がNoの場合、すなわち、判定対象サンプリング点にロボット基準点を一致させた状態で、ロボットが障害物に接触しない回転位置が検出されなかった場合に実行する。
ステップS105の処理は、ステップS103の判定がYesの場合、すなわち、判定対象サンプリング点にロボット基準点を一致させた状態で、ロボットが障害物に接触しない回転位置が検出された場合に実行する。
なお、予定作業はユーザ20が入力した作業動作情報から取得する。
本処理例では、ユーザが入力した作業指示は図17に示すように作業対象Xを右上に移動させる処理であるとする。
この場合、アプローチ領域生成部205は、ステップS105において、障害物に接触しないロボットの回転位置で、この作業が実行可能か否かを判定する。
ステップS106は、ステップS105における判定処理の結果に基づく分岐ステップである。
図18には、
(ステップS106の判定=Yes)障害物に接触しないロボットの回転位置で予定作業が実行可能、
(ステップS106の判定=No)障害物に接触しないロボットの回転位置で予定作業が実行不可能、
これら2つの具体例を示している。
この例は、判定対象サンプリング点にロボット基準点を一致させ、かつ障害物に接触しないロボットの回転位置で予定作業が実行可能であることが確認された例である。
このような場合には、ステップS106の判定結果がYesとなり、ステップS107に進む。
この例は、判定対象サンプリング点にロボット基準点を一致させ、かつ障害物に接触しないロボットの回転位置で予定作業が実行不可能であることが確認された例である。
このような場合には、ステップS106の判定結果がNoとなり、ステップS104に進む。
ここで、再度、ステップS104について説明する。
ステップS104の処理は、ステップS103の判定がYesの場合でも、ステップS106の判定がNoの場合にも実行される。
ステップS106で障害物に接触しないロボットの回転位置で予定作業が実行不可能と判定された場合にも実行する。
一方、ステップS107の処理は、ステップS106の判定がYesの場合、すなわち、障害物に接触しないロボットの回転位置で予定作業が実行可能、と判定した場合に実行する。
ステップS104の処理、すなわち、判定対象サンプリング点を作業不可能サンプリング点、すなわち、アプローチ領域外のサンプリング点に設定する処理、または、
ステップS107の処理、すなわち、判定対象サンプリング点を作業可能サンプリング点、すなわち、アプローチ領域内のサンプリング点に設定する処理、これらの処理のいずれかの処理が完了した場合、ステップS108の処理を実行する。
未処理サンプリング点がある場合は、ステップS101に戻り、未処理サンプリング点の処理を実行する。
一方、未処理サンプリング点がない場合は、ステップS109に進む。
全てのサンプリング点の判定処理が完了すると、アプローチ領域生成部205は、ステップS109において、作業可能サンプリング点のみからなる領域をアプローチ領域に設定する。
図19には、半径Rの円サークルX(CircleX)内の各サンプリング点の判定処理によって決定されたアプローチ領域を示している。
図10に示す動作シーケンスでは、2つの作業対象X,Yがあり、これら2つの作業対象X,Y各々に対して、図14を参照して説明したフローに従った処理を実行してアプローチ領域を生成する。
図20は、作業対象Yの配置位置(PosY)をロボット走行平面(z=0)へ投影した投影点(PosY2d)を中心とする半径Rの円サークルY(CircleY)内の各サンプリング点の判定処理によって決定されたアプローチ領域を示している。
次に、作業定義データに基づくロボットの動作の詳細について説明する。
(1)事前定義地図
(2)作業シーケンス情報
(3)作業動作情報
これらのデータを含む「作業定義データ」を生成する。
ロボット10の情報処理装置100は通信IF111、ロボット制御部113を経由して作業定義データ管理部104が作業定義データを受け取り、記憶部に記憶する。これにより、ロボット10は、作業定義データに従った作業を開始できる状態になる。
まず、ユーザ20が操作を行い、ロボット10が作業を開始するまでの流れについて説明する。
ロボット10の情報処理装置100に対する「作業定義データ」の入力処理は、ロボット10に装着された図3に示す構成を有する情報処理装置100のロボット操作UI112を介して入力する。
または、図6に示す構成を有するユーザ端末30を操作して、ユーザ端末30の通信IF208からロボット10の情報処理装置100の通信IF111を経由して入力する。
図21に示すように、ロボット10は、経由点Aから経由点Bに移動し、作業対象X対応のアプローチ領域AXに侵入する。その後、ロボット10は、アプローチ領域AX内で作業対象Xに対する予定の作業(P)を実行する。予定作業(P)の完了後、経由点C,Dを通過して、作業対象Y対応のアプローチ領域AYに侵入する。その後、ロボット10は、アプローチ領域AY内で作業対象Yに対する予定の作業(Q)を実行する。予定作業(Q)の完了後、経由点E,F,Gを順次移動してシーケンスを終了する。
ロボット10本体のロボット操作UI112、またはユーザ端末30を介してユーザ20が作業開始の指示操作を行うと、作業開始指示が、ロボット10の情報処理装置100のロボット制御部113に入力される。
また、事前に作業開始指示とは別に、使用する作業定義データを指定する情報がロボット操作UI112、もしくはユーザ端末30からロボット制御部113に送信されていてもよい。
作業定義データ管理部104は、ユーザ20から指定された「作業定義データ」を情報処理装置100内の記憶部から読み出す。
(1)事前定義地図
(2)作業シーケンス情報
(3)作業動作情報
さらに、作業シーケンス情報と、作業動作情報をシーケンス制御部114に出力する。
これらの処理の後、ロボット10は「作業定義データ」に従って動き始めることができるようになる。
先に図3を参照して説明したようにセンサ101はロボット周囲の障害物などの周囲環境を検知するためのセンサであり、例えば、カメラやLiDAR(Light Detection and Ranging)等によって構成される。
前述したように、占有格子地図(グリッドマップ)は、格子によって規定される各区画(グリッド)内に障害物が存在する確率値を設定した地図である。る各区画(グリッド)の各々を「占有」「空き」「未知」等に分類した地図もある。
ロボット10は、占有格子地図(グリッドマップ)の区画中、障害物の存在する確率の低い区画(グリッド)を走行ルートとして選択して走行することで障害物に衝突することなく安全に走行することができる。
差分障害物検出部106は、障害物地図作成部103が生成した「障害物地図」と、ユーザ20が指定した「作業定義データ」に含まれる「事前定義地図」を比較して、2つの地図の差分を検出する。
具体的には、例えば障害物地図作成部103が生成した「障害物地図」には存在するが、「事前定義地図」にない差分障害物(新規障害物)を検出する。
図5(2a)に示す「障害物地図」には、先に図4(1a)を参照して説明した「事前定義地図」に含まれていない新規障害物である「差分障害物」が含まれる可能性がある。
この「差分障害物」は、「事前定義地図」の作成時には存在しなかった障害物であり、「障害物地図」作成時に新たに検出された障害物である。
(a)事前定義地図管理部105から「事前定義地図」、
(b)差分障害物検出部106が検出した「事前定義地図」に存在しない新たな障害物である「差分障害物」情報、
アプローチ領域修正部107は、これらの入力情報を利用して、「事前定義地図」上に定義された「事前設定アプローチ領域」の修正処理を行う。
具体的には、差分障害物検出部106が検出した「事前定義地図」に存在しない新たな障害物である「差分障害物」を考慮した「修正アプローチ領域」を生成する。
アプローチ領域修正部107は、このような「事前定義地図」上に設定済の事前設定アプローチ領域を修正し、「差分障害物」を考慮した「修正アプローチ領域」を生成する。
なお、先に図12、図13、および図14のフローを参照して説明した「事前設定アプローチ領域」を生成する際に利用したサンプリング点(作業可能サンプリング点)をそのまま利用してもよい。
新たなサンプリング点を設定してもよい。
例えば、以下の判定処理を行う。
(判定処理1)ロボット10のハンド部13の位置(TCP)が、作業対象Xに対する予定作業(P)を行う際に必要となる位置に到達可能か否か。
(判定処理2)ロボット10全体(移動部11、アーム部12、ハンド部13)が差分障害物(新規障害物)と干渉(接触)しないか否か。
このようにして各サンプリング点を判定した上で、ロボット10のハンド部13の位置(TCP)が作業対象に届き、かつ差分障害物(新規障害物)と干渉(接触)しないサンプリング点のうち、外周にある点を結ぶことで、修正アプローチ領域を生成する。
白丸(〇)で示すサンプリング点が修正アプローチ領域内のサンプリング点である。すなわち、「事前設定アプローチ領域」内に設定したサンプリング点中、差分障害物(新規障害物)と干渉(接触)せずに作業対象に対して予定の作業動作を実行可能であることが確認された作業可能サンプリング点である。
なお、アプローチ領域修正部107が実行するアプローチ領域修正処理の処理シーケンスの詳細例については、後段において図25に示すフローチャートを参照して説明する。
この場合は、差分障害物検出部106から入力した新たな差分障害物に対して、前回生成した修正アプローチ領域内にサンプリング点を打って、新たな差分障害物との干渉(接触)を確認して、前回生成した修正アプローチ領域に対して、さらに修正を行う。
この場合、アプローチ領域修正部107は、生成済み修正アプローチ領域の内部に設定したサンプリング点について、新たに発生した差分障害物にロボット10が接触することなく作業可能であるか否かを判定して、再修正アプローチ領域を生成する。
(a)事前定義地図管理部105から「事前定義地図」、
(b)障害物地図作成部103から「障害物地図」、
(c)アプローチ領域修正部107から、「修正アプローチ領域情報」と「差分障害物情報」
環境地図統合部108は、これらの入力情報を利用して「統合環境地図」を作成する。
すなわち最新の障害物の位置と、「事前定義地図」に記録された「事前設定アプローチ領域」を最新の障害物の位置に基づいて修正した「修正アプローチ領域」を記録した「統合環境地図」を作成する。
障害物情報=「事前定義地図」と「障害物地図」の双方の障害物情報を持つ。
アプローチ領域情報=修正された事前設定アプローチ領域について修正アプローチ領域、修正されていない事前設定アプローチ領域は、事前設定アプローチ領域が残存する。
その他、作業対象の位置・領域、経由点の各情報は、事前定義地図の情報がそのまま継承される。
次に、ロボット10の情報処理装置100のアプローチ領域修正部107が実行するアプローチ領域修正処理の処理シーケンスについて
なお、前述したように、「事前設定アプローチ領域」生成時に設定したサンプリング点(図13に示す事前設定アプローチ領域内の作業可能サンプリング点)をそのまま利用してもよい。
(ステップS201)
まず、ロボット10の情報処理装置100のアプローチ領域修正部107は、ステップS201において、予め生成された「事前定義地図」上に設定済の「事前設定アプローチ領域」内のサンプリング点から、1つの判定対象サンプリング点を選択する。
図26(S201)には、机等の障害物に置かれた作業対象Xと、その前に設定された「事前設定アプローチ領域」と、差分障害物(新規障害物)を示している。
「事前設定アプローチ領域」は、予め生成された「事前定義地図」上に設定済の「事前設定アプローチ領域」であり、その中には複数のサンプリング点が設定済である。
次に、アプローチ領域修正部107は、ステップS202において、選択した判定対象サンプリング点にロボット基準点を一致させた状態で、ロボットを回転させ、障害物に接触しない回転位置の有無を判定する。
ステップS203は、ステップS202における判定処理の結果に基づく分岐ステップである。
ステップS204の処理は、ステップS203の判定がNoの場合、すなわち、判定対象サンプリング点にロボット基準点を一致させた状態で、ロボットが障害物に接触しない回転位置が検出されなかった場合に実行する。
ステップS205の処理は、ステップS203の判定がYesの場合、すなわち、判定対象サンプリング点にロボット基準点を一致させた状態で、ロボットが障害物に接触しない回転位置が検出された場合に実行する。
なお、予定作業はユーザ20が入力した作業動作情報から取得する。
ステップS206は、ステップS205における判定処理の結果に基づく分岐ステップである。
ここで、再度、ステップS204について説明する。
ステップS204の処理は、ステップS203の判定がYesの場合でも、ステップS206の判定がNoの場合にも実行される。
ステップS206で障害物に接触しないロボットの回転位置で予定作業が実行不可能と判定された場合にも実行する。
一方、ステップS207の処理は、ステップS206の判定がYesの場合、すなわち、障害物に接触しないロボットの回転位置で予定作業が実行可能、と判定した場合に実行する。
ステップS204の処理、すなわち、判定対象サンプリング点を作業不可能サンプリング点、すなわち、修正アプローチ領域外のサンプリング点に設定する処理、または、
ステップS207の処理、すなわち、判定対象サンプリング点を作業可能サンプリング点、すなわち、修正アプローチ領域内のサンプリング点に設定する処理、これらの処理のいずれかの処理が完了した場合、ステップS208の処理を実行する。
未処理サンプリング点がある場合は、ステップS201に戻り、未処理サンプリング点の処理を実行する。
一方、未処理サンプリング点がない場合は、ステップS209に進む。
全てのサンプリング点の判定処理が完了すると、アプローチ領域修正部107は、ステップS209において、作業可能サンプリング点のみからなる領域を修正アプローチ領域に設定する。
図27には、机等の障害物に置かれた作業対象Xと、その前に設定された「事前設定アプローチ領域」と、差分障害物(新規障害物)と、図25に示すフローに従って決定された「修正アプローチ領域AX」を示している。
次に、ロボットの情報処理装置が生成した修正アプローチ領域を反映した「統合環境地図」を用いたロボットによる作業シーケンスについて説明する。
アプローチ領域修正部107が生成した「修正アプローチ領域」は環境地図統合部108へ出力される。
(a)事前定義地図管理部105から「事前定義地図」、
(b)障害物地図作成部103から「障害物地図」、
(c)アプローチ領域修正部107から、「修正アプローチ領域情報」と「差分障害物情報」
環境地図統合部108は、これらの入力情報を利用して「統合環境地図」を作成する。
*経由点への移動指示
*作業対象のアプローチ領域への移動指示
なお、移動部経路計画部121は、事前設定アプローチ領域を修正した修正アプローチ領域がある場合は、修正アプローチ領域への移動経路生成処理を行う。事前設定アプローチ領域を修正した修正アプローチ領域がない場合は、事前設定アプローチ領域への移動経路生成処理を行う。
アプローチ領域内はどこでも障害物と干渉(接触)せずに作業対象に作業することが可能であることが確認されているので、アプローチ領域内であれば、どこを選んでも問題ない。
例えば、先に説明した図9に示す作業シーケンスに従った作業を実行する場合のロボット10の動作例について図28を参照して説明する。
経由点B→作業対象Xに対して作業→経由点C
この順に移動を行う。
作業対象Xに対して作業するためのアプローチ位置をAXとする。
経由点Bから経由点Cまでの移動距離=距離(B-AX)+距離(AX-C)
上記距離が最短となるアプローチ領域内のアプローチ位置AXを算出する。
経由点B→アプローチ位置AX→経由点C
これらの点を結ぶ経路生成を行う。
経路生成の方法としては、経由点への移動と同様に、例えばAスター(A*)やRRTを用いることが可能である。
移動体経路計画部121で経路が生成されたら、その経路は移動体制御部122に渡される。
経路追従制御アルゴリズムとしては、例えば、Pure Pursuitなどの利用が可能である。
次に、ロボット10の走行中のセンシング結果に基づいて、「事前定義地図」にない差分障害物を検出する。
さらに、「事前設定アプローチ領域」の修正処理として、差分障害物との干渉(接触)を確認し、干渉(接触)が発生する領域を削除した「修正アプローチ領域」を生成する。
次に、本開示の情報処理装置のハードウェア構成の一例について説明する。
なお、図29に示す情報処理装置のハードウェア構成は、ロボット10に装着された情報処理装置100のハードウェア構成の一構成例である。また、ユーザ端末30のハードウェア構成の一構成例でもある。
また、ロボット10に装着された情報処理装置100の場合、出力部307は、ロボット等の駆動を行う駆動部322に対する駆動情報も出力する。
入出力インタフェース305に接続されている記憶部308は、例えばフラッシュメモリ、ハードディスク等からなり、CPU301が実行するプログラムや各種のデータを記憶する。通信部309は、インターネットやローカルエリアネットワークなどのネットワークを介したデータ通信の送受信部として機能し、外部の装置と通信する。
また、CPUの他、カメラから入力される画像情報などの専用処理部としてGPU(Graphics Processing Unit)を備えてもよい。
以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
(1) ロボットの走行環境情報を取得するセンサの情報に基づいて、事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出部と、
前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正部を有し、
前記アプローチ領域修正部は、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成する情報処理装置。
前記事前設定アプローチ領域の外部にはサンプリング点を設定せず、
前記事前設定アプローチ領域の内部に設定したサンプリング点が、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定する処理を実行して前記修正アプローチ領域を生成する(1)に記載の情報処理装置。
前記事前設定アプローチ領域の内部に設定したサンプリング点のみに対して、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定し、
前記差分障害物に前記ロボットが接触することなく作業可能であると判定されたサンプリング点のみによって構成される領域を前記修正アプローチ領域として設定する(1)または(2)に記載の情報処理装置。
前記事前設定アプローチ領域の内部に設定したサンプリング点の各々について、
前記差分障害物に前記ロボットが接触することなく、予め設定された作業対象物に対して予め設定された作業動作が可能であるか否かを判定する(3)に記載の情報処理装置。
前記ロボットの走行開始前に作成された地図である(1)~(4)いずれかに記載の情報処理装置。
外部装置から前記情報処理装置に入力された地図である(1)~(5)いずれかに記載の情報処理装置。
前記事前定義地図を含む作業定義データを管理する作業定義データ管理部を有し、
前記アプローチ領域修正部は、
前記作業定義データ管理部から前記事前定義地図を入力し、
前記差分障害物検出部から、前記事前定義地図に存在しない新たな障害物に関する情報である差分障害物情報を入力して、
前記修正アプローチ領域を生成する(1)~(6)いずれかに記載の情報処理装置。
前記事前定義地図を含む作業定義データを管理する作業定義データ管理部を有し、
前記作業定義データ管理部は、
(a)事前定義地図
(b)作業シーケンス情報
(c)作業動作情報
上記(a)~(c)各データを有する作業定義データを管理する(1)~(7)いずれかに記載の情報処理装置。
前記ロボットの動作シーケンスを制御するシーケンス制御部を有し、
前記シーケンス制御部は、
前記作業定義データ管理部から入力する作業シーケンス情報に従って、前記ロボットの作業シーケンスを制御する(8)に記載の情報処理装置。
前記アプローチ領域修正部が生成した修正アプローチ領域を記録した統合環境地図を生成する環境地図統合部を有する(1)~(9)いずれかに記載の情報処理装置。
前記事前定義地図と、
前記アプローチ領域修正部が生成した修正アプローチ領域を入力して、
修正アプローチ領域を記録した統合環境地図を生成する(10)に記載の情報処理装置。
前記アプローチ領域修正部が生成した修正アプローチ領域を記録した統合環境地図を生成する環境地図統合部と、
前記環境地図統合部が生成した統合環境地図を用いて前記ロボットの移動経路を計画する経路計画部を有する(1)~(11)いずれかに記載の情報処理装置。
過去に実行したアプローチ領域修正処理において生成した生成済み修正アプローチ領域に対して、新たに発生した差分障害物を考慮して再度、修正した再修正アプローチ領域を生成する処理を実行する構成であり、
前記アプローチ領域修正部は、
前記生成済み修正アプローチ領域の内部に設定したサンプリング点について、前記新たに発生した差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記再修正アプローチ領域を生成する(1)~(12)いずれかに記載の情報処理装置。
前記ユーザ端末は、
前記ロボットの走行環境の障害物の位置と、前記ロボットによる作業を前記障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を含む事前定義地図を生成して前記ロボットに装着された前記情報処理装置に入力し、
前記ロボットに装着された前記情報処理装置は、
前記ロボットの走行環境情報を取得するセンサの情報に基づいて、
前記ユーザ端末から入力した前記事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出部と、
前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正部を有し、
前記アプローチ領域修正部は、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成する情報処理システム。
(a)事前定義地図
(b)作業シーケンス情報
(c)作業動作情報
上記(a)~(c)各データを有する作業定義データを前記ロボットの前記情報処理装置に入力し、
前記ロボットの前記情報処理装置は、
上記(a)~(c)各データを有する作業定義データを利用して、前記修正アプローチ領域の生成処理と、
前記修正アプローチ領域を反映した統合環境地図の生成処理と、
前記統合環境地図を参照した前記ロボットの制御処理を実行する(14)に記載の情報処理システム。
前記修正アプローチ領域の生成処理において、
前記事前設定アプローチ領域の外部にはサンプリング点を設定せず、
前記事前設定アプローチ領域の内部に設定したサンプリング点が、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定する処理を実行して前記修正アプローチ領域を生成する(14)または(15)に記載の情報処理システム。
差分障害物検出部が、ロボットの走行環境情報を取得するセンサの情報に基づいて、事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出ステップと、
アプローチ領域修正部が、前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正ステップを実行し、
前記アプローチ領域修正ステップは、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成するステップである情報処理方法。
前記ユーザ端末が、
前記ロボットの走行環境の障害物の位置と、前記ロボットによる作業を前記障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を含む事前定義地図を生成して前記ロボットに装着された前記情報処理装置に入力し、
前記ロボットに装着された前記情報処理装置が、
前記ロボットの走行環境情報を取得するセンサの情報に基づいて、
前記ユーザ端末から入力した前記事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出処理と、
前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正処理を実行し、
前記アプローチ領域修正処理において、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成する情報処理方法。
差分障害物検出部に、ロボットの走行環境情報を取得するセンサの情報に基づいて、事前定義地図に記録された障害物との差分に相当する差分障害物を検出させる差分障害物検出ステップと、
アプローチ領域修正部に、前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成させるアプローチ領域修正ステップを実行させ、
前記アプローチ領域修正ステップにおいては、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成させるプログラム。
具体的には、例えば、ロボットの走行環境情報を取得するセンサの情報に基づいて、事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出部と、事前定義地図に記録された領域であり、ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正部を有する。アプローチ領域修正部は、事前設定アプローチ領域の内部に設定したサンプリング点について差分障害物にロボットが接触することなく作業可能であるか否かを判定して修正アプローチ領域を生成する。
本構成により、事前定義地図にない新たな障害物が発生した際に、ロボットの作業領域として規定されるアプローチ領域を迅速に修正可能とした装置、方法が実現される。
11 移動部
12 アーム部
13 ハンド部
20 ユーザ
30 ユーザ端末
100 情報処理装置
101 センサ
102 自己位置推定部
103 障害物地図作成部
104 作業定義データ管理部
105 事前定義地図管理部
106 差分障害物検出部
107 アプローチ領域修正部
108 環境地図統合部
111 通信IIF
112 ロボット操作UI
113 ロボット制御部
114 シーケンス制御部
121 移動部経路計画部
122 移動部制御部
123 ロボットアーム経路計画部
124 ロボットアーム制御部
200 ユーザ端末
201 ユーザインタフェース(UI)
202 ユーザインタフェース(UI)制御部
203 ロボット操作情報管理部
204 作業定義データ管理部
205 アプローチ領域生成部
206 事前定義地図生成部
207 作業定義データ記憶部
208 通信IF
301 CPU
302 ROM
303 RAM
304 バス
305 入出力インタフェース
306 入力部
307 出力部
308 記憶部
309 通信部
310 ドライブ
311 リムーバブルメディア
321 センサ
322 駆動部
Claims (19)
- ロボットの走行環境情報を取得するセンサの情報に基づいて、事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出部と、
前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正部を有し、
前記アプローチ領域修正部は、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成する情報処理装置。 - 前記アプローチ領域修正部は、
前記事前設定アプローチ領域の外部にはサンプリング点を設定せず、
前記事前設定アプローチ領域の内部に設定したサンプリング点が、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定する処理を実行して前記修正アプローチ領域を生成する請求項1に記載の情報処理装置。 - 前記アプローチ領域修正部は、
前記事前設定アプローチ領域の内部に設定したサンプリング点のみに対して、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定し、
前記差分障害物に前記ロボットが接触することなく作業可能であると判定されたサンプリング点のみによって構成される領域を前記修正アプローチ領域として設定する請求項1に記載の情報処理装置。 - 前記アプローチ領域修正部は、
前記事前設定アプローチ領域の内部に設定したサンプリング点の各々について、
前記差分障害物に前記ロボットが接触することなく、予め設定された作業対象物に対して予め設定された作業動作が可能であるか否かを判定する請求項3に記載の情報処理装置。 - 前記事前定義地図は、
前記ロボットの走行開始前に作成された地図である請求項1に記載の情報処理装置。 - 前記事前定義地図は、
外部装置から前記情報処理装置に入力された地図である請求項1に記載の情報処理装置。 - 前記情報処理装置は、
前記事前定義地図を含む作業定義データを管理する作業定義データ管理部を有し、
前記アプローチ領域修正部は、
前記作業定義データ管理部から前記事前定義地図を入力し、
前記差分障害物検出部から、前記事前定義地図に存在しない新たな障害物に関する情報である差分障害物情報を入力して、
前記修正アプローチ領域を生成する請求項1に記載の情報処理装置。 - 前記情報処理装置は、
前記事前定義地図を含む作業定義データを管理する作業定義データ管理部を有し、
前記作業定義データ管理部は、
(a)事前定義地図
(b)作業シーケンス情報
(c)作業動作情報
上記(a)~(c)各データを有する作業定義データを管理する請求項1に記載の情報処理装置。 - 前記情報処理装置は、
前記ロボットの動作シーケンスを制御するシーケンス制御部を有し、
前記シーケンス制御部は、
前記作業定義データ管理部から入力する作業シーケンス情報に従って、前記ロボットの作業シーケンスを制御する請求項8に記載の情報処理装置。 - 前記情報処理装置は、
前記アプローチ領域修正部が生成した修正アプローチ領域を記録した統合環境地図を生成する環境地図統合部を有する請求項1に記載の情報処理装置。 - 前記環境地図統合部は、
前記事前定義地図と、
前記アプローチ領域修正部が生成した修正アプローチ領域を入力して、
修正アプローチ領域を記録した統合環境地図を生成する請求項10に記載の情報処理装置。 - 前記情報処理装置は、
前記アプローチ領域修正部が生成した修正アプローチ領域を記録した統合環境地図を生成する環境地図統合部と、
前記環境地図統合部が生成した統合環境地図を用いて前記ロボットの移動経路を計画する経路計画部を有する請求項1に記載の情報処理装置。 - 前記アプローチ領域修正部は、
過去に実行したアプローチ領域修正処理において生成した生成済み修正アプローチ領域に対して、新たに発生した差分障害物を考慮して再度、修正した再修正アプローチ領域を生成する処理を実行する構成であり、
前記アプローチ領域修正部は、
前記生成済み修正アプローチ領域の内部に設定したサンプリング点について、前記新たに発生した差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記再修正アプローチ領域を生成する請求項1に記載の情報処理装置。 - ユーザ端末と、ロボットに装着された情報処理装置を有する情報処理システムであり、
前記ユーザ端末は、
前記ロボットの走行環境の障害物の位置と、前記ロボットによる作業を前記障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を含む事前定義地図を生成して前記ロボットに装着された前記情報処理装置に入力し、
前記ロボットに装着された前記情報処理装置は、
前記ロボットの走行環境情報を取得するセンサの情報に基づいて、
前記ユーザ端末から入力した前記事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出部と、
前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正部を有し、
前記アプローチ領域修正部は、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成する情報処理システム。 - 前記ユーザ端末は、
(a)事前定義地図
(b)作業シーケンス情報
(c)作業動作情報
上記(a)~(c)各データを有する作業定義データを前記ロボットの前記情報処理装置に入力し、
前記ロボットの前記情報処理装置は、
上記(a)~(c)各データを有する作業定義データを利用して、前記修正アプローチ領域の生成処理と、
前記修正アプローチ領域を反映した統合環境地図の生成処理と、
前記統合環境地図を参照した前記ロボットの制御処理を実行する請求項14に記載の情報処理システム。 - 前記ロボットの前記情報処理装置は、
前記修正アプローチ領域の生成処理において、
前記事前設定アプローチ領域の外部にはサンプリング点を設定せず、
前記事前設定アプローチ領域の内部に設定したサンプリング点が、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定する処理を実行して前記修正アプローチ領域を生成する請求項14に記載の情報処理システム。 - 情報処理装置において実行する情報処理方法であり、
差分障害物検出部が、ロボットの走行環境情報を取得するセンサの情報に基づいて、事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出ステップと、
アプローチ領域修正部が、前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正ステップを実行し、
前記アプローチ領域修正ステップは、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成するステップである情報処理方法。 - ユーザ端末と、ロボットに装着された情報処理装置を有する情報処理システムにおいて実行する情報処理方法であり、
前記ユーザ端末が、
前記ロボットの走行環境の障害物の位置と、前記ロボットによる作業を前記障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を含む事前定義地図を生成して前記ロボットに装着された前記情報処理装置に入力し、
前記ロボットに装着された前記情報処理装置が、
前記ロボットの走行環境情報を取得するセンサの情報に基づいて、
前記ユーザ端末から入力した前記事前定義地図に記録された障害物との差分に相当する差分障害物を検出する差分障害物検出処理と、
前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成するアプローチ領域修正処理を実行し、
前記アプローチ領域修正処理において、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成する情報処理方法。 - 情報処理装置において情報処理を実行させるプログラムであり、
差分障害物検出部に、ロボットの走行環境情報を取得するセンサの情報に基づいて、事前定義地図に記録された障害物との差分に相当する差分障害物を検出させる差分障害物検出ステップと、
アプローチ領域修正部に、前記事前定義地図に記録された領域であり、前記ロボットによる作業を障害物に接触することなく実行可能であると判定された事前設定アプローチ領域を、前記差分障害物を考慮して修正して修正アプローチ領域を生成させるアプローチ領域修正ステップを実行させ、
前記アプローチ領域修正ステップにおいては、
前記事前設定アプローチ領域の内部に設定したサンプリング点について、前記差分障害物に前記ロボットが接触することなく作業可能であるか否かを判定して、前記修正アプローチ領域を生成させるプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202280039698.0A CN117412838A (zh) | 2021-06-08 | 2022-01-27 | 信息处理装置、信息处理系统、信息处理方法和程序 |
US18/562,352 US20240255956A1 (en) | 2021-06-08 | 2022-01-27 | Information processing device, information processing system, information processing method, and program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021-095647 | 2021-06-08 | ||
JP2021095647A JP2022187584A (ja) | 2021-06-08 | 2021-06-08 | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022259600A1 true WO2022259600A1 (ja) | 2022-12-15 |
Family
ID=84425619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2022/003020 WO2022259600A1 (ja) | 2021-06-08 | 2022-01-27 | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240255956A1 (ja) |
JP (1) | JP2022187584A (ja) |
CN (1) | CN117412838A (ja) |
WO (1) | WO2022259600A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7545540B1 (ja) | 2023-08-11 | 2024-09-04 | 株式会社シンテックホズミ | 搬送ロボット |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017047518A (ja) * | 2015-09-04 | 2017-03-09 | トヨタ自動車株式会社 | 搬送車の移動経路設定方法 |
JP2020093364A (ja) * | 2018-12-14 | 2020-06-18 | トヨタ自動車株式会社 | 軌道生成装置 |
-
2021
- 2021-06-08 JP JP2021095647A patent/JP2022187584A/ja active Pending
-
2022
- 2022-01-27 US US18/562,352 patent/US20240255956A1/en active Pending
- 2022-01-27 WO PCT/JP2022/003020 patent/WO2022259600A1/ja active Application Filing
- 2022-01-27 CN CN202280039698.0A patent/CN117412838A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017047518A (ja) * | 2015-09-04 | 2017-03-09 | トヨタ自動車株式会社 | 搬送車の移動経路設定方法 |
JP2020093364A (ja) * | 2018-12-14 | 2020-06-18 | トヨタ自動車株式会社 | 軌道生成装置 |
Non-Patent Citations (3)
Title |
---|
ITO, KEISUKE ET AL.: "ROMBUNNO.3N2-2 Grasping position determination for mobile manipulation considering the movable area of the arm and the movement of the robot", PROCEEDINGS OF THE 29TH ANNUAL CONFERENCE OF THE ROBOTICS SOCIETY OF JAPAN; SEPTEMBER 7 TO 9, 2011, ROBOTICS SOCIETY OF JAPAN, JP, vol. 29, 7 September 2011 (2011-09-07) - 9 September 2011 (2011-09-09), JP, pages 1 - 4, XP009541831 * |
JUNYA FUJIMOTO; KEI OKADA; MASAYUKI INABA: "Spatially Expanded IK to Search Reaching Method and Location of Humanoids", THE 24TH ANNUAL CONFERENCE OF THE ROBOTICS SOCIETY OF JAPAN PROCEEDINGS CD-ROM; SEPTEMBER 14 - 16, 2006, ROBOTICS SOCIETY OF JAPAN, JP, vol. 24, 14 September 2006 (2006-09-14) - 16 September 2006 (2006-09-16), JP, pages 1H12 - 1H12-4, XP009541835 * |
KIMITOSHI YAMAZAKI, MASAHIRO TOMONO, TAKASHI TSUBOUCHI, SHIN’ICHI YUTA: "3E17 Motion Planning for a Mobile Manipulator with Several Grasping Postures", PREPRINTS OF THE 24TH ANNUAL CONFERENCE OF THE ROBOTICS SOCIETY OF JAPAN; OKAYAMA, JAPAN; SEPTEMBER 14-16, 2006, ROBOTICS SOCIETY OF JAPAN, JP, vol. 24, 14 September 2006 (2006-09-14) - 16 September 2006 (2006-09-16), JP, pages 1 - 4, XP009541556 * |
Also Published As
Publication number | Publication date |
---|---|
CN117412838A (zh) | 2024-01-16 |
US20240255956A1 (en) | 2024-08-01 |
JP2022187584A (ja) | 2022-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3410246B1 (en) | Robot obstacle avoidance control system and method, robot, and storage medium | |
CN109154827B (zh) | 机器人车辆的定位 | |
Flacco et al. | A depth space approach for evaluating distance to objects: with application to human-robot collision avoidance | |
US10948907B2 (en) | Self-driving mobile robots using human-robot interactions | |
JP2020532018A (ja) | 自律移動ロボットの移動計画 | |
CN108177162B (zh) | 移动机器人的干扰区域设定装置 | |
EP3650181A1 (en) | Route output method, route output system and route output program | |
US9880553B1 (en) | System and method for robot supervisory control with an augmented reality user interface | |
JP2022511359A (ja) | ウェイポイントマッチングを用いた自律マップトラバーサル | |
US20220390950A1 (en) | Directed exploration for navigation in dynamic environments | |
US12059814B2 (en) | Object-based robot control | |
US20230418302A1 (en) | Online authoring of robot autonomy applications | |
CN116830061A (zh) | 动态站点上的机器人自主的语义模型 | |
CN112230649A (zh) | 机器学习方法及移动机器人 | |
JP5212939B2 (ja) | 自律移動装置 | |
CN114800535B (zh) | 机器人的控制方法、机械臂控制方法、机器人及控制终端 | |
WO2022259600A1 (ja) | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム | |
Chikhalikar et al. | An object-oriented navigation strategy for service robots leveraging semantic information | |
US11407117B1 (en) | Robot centered augmented reality system | |
Udugama | Mini bot 3D: A ROS based Gazebo Simulation | |
Baslan et al. | Navigation and vision system of a mobile robot | |
Deguchi et al. | Enhanced Robot Navigation with Human Geometric Instruction | |
Miller et al. | Self-driving mobile robots using human-robot interactions | |
Vatcha et al. | Practical motion planning in unknown and unpredictable environments | |
WO2023127337A1 (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: 22819791 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 18562352 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 202280039698.0 Country of ref document: CN |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 22819791 Country of ref document: EP Kind code of ref document: A1 |