EP4061584A1 - Deterministisches roboterpfadplanungsverfahren zur hindernisvermeidung - Google Patents
Deterministisches roboterpfadplanungsverfahren zur hindernisvermeidungInfo
- Publication number
- EP4061584A1 EP4061584A1 EP19953077.5A EP19953077A EP4061584A1 EP 4061584 A1 EP4061584 A1 EP 4061584A1 EP 19953077 A EP19953077 A EP 19953077A EP 4061584 A1 EP4061584 A1 EP 4061584A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- effector
- weighting factor
- obstacle
- pose
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Program-controlled manipulators
- B25J9/16—Program controls
- B25J9/1656—Program controls characterised by programming, planning systems for manipulators
- B25J9/1664—Program controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
- B25J9/1666—Avoiding collision or forbidden zones
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39091—Avoid collision with moving obstacles
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40476—Collision, planning for collision free path
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40519—Motion, trajectory planning
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40546—Motion of object
Definitions
- the present disclosure relates to a system and method of robot path planning for obstacle avoidance.
- the present disclosure is related to planning robotic arm movement to avoid obstacles by a deterministic method.
- Non-deterministic methods such as the Rapidly Exploring Random Tree (RRT) algorithm, explore the next movement of a robot randomly, with a bias toward large unsearched areas. The resulting movements maybe different if re-planned for a second time due to the random nature of the search.
- the deterministic methods such as the A* algorithm, minimize a cost function to produce a fixed path.
- the present teaching belongs to the deterministic category.
- a safety distance is a minimum distance that the robot may need to maintain from the obstacle.
- the obstacle may be first modelled. Then the model shape may be expanded by the specified distance. The region occupied by the grown or expanded obstacle may be marked as a region where the robot should not move to. Since it is required that the expanded region be convex, the actual growing distance may be much larger than the minimum safety distance, resulting in oversized obstacles with uneven safety margins from the obstacle surface. This may limit the path planned by any algorithms to be sub-optimal.
- FIG. 1 shows an exemplary system diagram for robot path planning
- FIG. 2 illustrates an exemplary flow diagram for path planning
- FIG. 3 illustrates an exemplary flow diagram for weight learning for path planning
- FIG. 4 depicts an architecture of a computer which can be used to implement a specialized system incorporating the present teaching.
- the present disclosure is directed to a method and system for robot path planning while avoiding obstacles. Specifically, it is directed to robot arm movement with multiple joints.
- Fig. 1 shows an exemplary system diagram 100 facilitating robot path planning, according to an embodiment of the present teaching.
- the system 100 comprises a target tracking unit 104, an inverse kinematics computation unit 108, a robot position tracking unit 110, an obstacle detector 109, an obstacle distance computation unit 112, a weight learning unit 114, and a path optimization unit 116.
- the target object 102 may be a patient, an assembly part or any other subject upon which the robot may need to reach to perform certain operations, such as placing a needle with respect to a patient, grasping an industrial part in an assembly line, etc.
- the robot may include an arm comprising of multiple joints.
- typical robots may have arms with 6 or 7 joints, meaning that the robot may have 6 or 7 degrees of freedom (DOF) in movement.
- DOF degrees of freedom
- the desired relative position and orientation of the robot’s end-effector i.e., a device or tool connected at an end of the robot’s arm
- goal position to represent the desired absolute robot’s end-effector’s position and orientation.
- the target tracking unit 104 may sense the motion of the target object and provide an update for the goal position.
- the sensing method may be performed by a plurality of sensors and may include, but is not limited to, methods such as camera-based vision tracking, optical sensor-based tracking, magnetic sensor-based tracking.
- the output 106 of the tracking unit 104 is the goal position in a first coordinate system, e.g., the cartesian coordinate system. Since the robot is commanded to move in a joint-angle space i.e., a second coordinate system, the cartesian goal position may be converted to the joint-angle goal position by the inverse kinematics computation unit 108.
- the robot position tracking unit 110 may provide the robot’s joint angles at the starting position of the end-effector. We use the term initial position to represent the starting configuration of the robot. It must be appreciated that the body of the robot (i.e., the arm) and the end-effector may be modeled as a single entity or alternatively modeled as separate entities. During robot movement, the robot position tracking unit 110 may constantly provide the robot’s current joint angles e.g., current configuration of the end effector. This may be useful for path re planning in circumstances where the obstacle is in motion or the target is in motion.
- the obstacle distance computation unit 112 may compute a minimum distance between the robot’s arm (including the end-effector) and one or more obstacles that are each identified by an obstacle detector 109.
- the obstacle may be a surgeon, a patient’s body part, or another medical device in the operating room.
- the weight learning unit 114 may learn a weighting parameter (also referred to herein as a weighting factor) to be used for path planning.
- the path optimization unit 116 may find the best path between the robot initial position and the goal position.
- the output of the path optimization unit is a motion trajectory 118, which specifies the sequences of robot motion to reach the goal position.
- Fig. 2 illustrates an exemplary flow diagram for robot path planning, according to one embodiment of the present teaching.
- the target object may be tracked.
- An updated goal position for the end-effector in a first coordinate system e.g., cartesian coordinate system may be obtained at step 203 based on the tracking.
- the cartesian goal position may be converted to a goal position in a second coordinate system e.g., the joint-angle coordinate system, based on the robot inverse kinematics.
- the robot initial pose at the starting position (i.e., an orientation and location of the end effector) may be obtained.
- at least one obstacle may be identified.
- a minimum distance permitted with respect to the at least one identified obstacle may be determined based on the nature of the obstacle and the application. The minimum distance permitted may be used to learn a weighting parameter at step 210.
- a cost function may be generated based on joint angles and a weighted obstacle distance along the trajectory.
- the trajectory that minimizes the cost function may be found at step 214.
- a trajectory includes N steps, 1,2, ...., N.
- the cost from the starting position to the n- th position may be denoted by g(n).
- the cost g(n) may be defined as the Euclidian distance between the joint angles (i.e., configuration of the end-effector) at the initial position and those at the n- th step.
- Another cost that provides an estimate of the cost from the n- th step to the ending step (N) may be denoted by h(n).
- the cost h(n) may be defined as the Euclidian distance between the joint angles at the n- th step and those at step N (the goal position).
- the weight w balances between the joint angle cost and the obstacle-distance cost.
- the weighting factor may be learned through the procedure described for step 210 below.
- the minimization of the cost function f(n) may be performed using an existing method, such as the A* algorithm. In the A* algorithm, the robot joint angle space may be discretized to certain resolution. The search for the optimal path may be performed in the discretized joint angle space.
- the output of the minimization is a sequence of steps of robot motion from the initial position to the goal position.
- Fig. 3 illustrates an exemplary flowchart of weight learning for step 210 of
- the number of learning steps M also called the number of iterations , may be specified. This number may be chosen empirically. In other words, in step 302 a stopping condition for the weight learning process i.e., number of iterations is determined.
- the allowed minimum distance d Umit to the one or more obstacles may be obtained. This number may be dependent on the nature of the obstacle(s). For example, for a critical obstacle, such as human, this distance may be chosen larger than for a non-critical obstacle.
- a random goal position i.e., desired or final position
- the generated random goal position may need to cover the typical end-effector’s position and orientation in the robot’s working space.
- an initial guess i.e., an initial seed
- a similar cost function as Equation (1) above may be formed.
- An optimal path may be found at step 310, based on the cost minimization using the A* algorithm.
- the actual minimum distance d of the robot arm (including the end-effector) with respect to the obstacles along the trajectory may be computed at step 312.
- it may be decided whether the minimum distance d is less than the specified permitted minimum distance d Umit.
- step 316 may be invoked to compute an error e. Otherwise it may further check whether the current weight is already close to or equal to zero at step 320. If the current weight is not close or equal to zero, the workflow goes to step 316 to compute an error.
- the error may be used to update the weight.
- the weighting factor may be updates as follows:
- step 320 if it is determined that the weight satisfies a criterion, i.e., the weighting factor is already close to (i.e., substantially close to zero within a predetermined amount) or equal to zero, no further update of the weight may be made, since the weight must be greater than zero.
- the resulting weight may be recorded at step 322.
- step 324 it may be checked if the specified maximum number of iterations M has been reached. If not, a new iteration may follow. Steps starting from step 306 may be repeated. Otherwise, a weighted sum of all the weights recorded at step 322 may be computed at step 326 to serve as the final weight learned by the learning process.
- the weighted sum of the weights at step 326 may be computed as a simple arithmetic average. It may also be computed according to the probability of occurrence for the randomly generated target position. Such probabilities may be used to weigh the weighting factor recorded at step 322 by the form where qi is the probability of the z-th goal position is the learned weight for the z-th goal position.
- FIG. 4 is an illustrative diagram of an exemplary computer system architecture, in accordance with various embodiments of the present teaching.
- a specialized system incorporating the present teaching has a functional block diagram illustration of a hardware platform which includes user interface elements.
- Computer 400 may be a general- purpose computer or a special purpose computer. Both can be used to implement a specialized system for the present teaching.
- Computer 400 may be used to implement any component(s) described herein.
- the present teaching may be implemented on a computer such as computer 400 via its hardware, software program, firmware, or a combination thereof. Although only one such computer is shown, for convenience, the computer functions relating to the present teaching as described herein may be implemented in a distributed fashion on a number of similar platforms, to distribute the processing load.
- Computer 400 may include communication ports 450 connected to and from a network connected thereto to facilitate data communications.
- Computer 400 also includes a central processing unit (CPU) 420, in the form of one or more processors, for executing program instructions.
- the exemplary computer platform may also include an internal communication bus 410, program storage and data storage of different forms (e.g., disk 470, read only memory (ROM) 430, or random access memory (RAM) 440), for various data files to be processed and/or communicated by computer 400, as well as possibly program instructions to be executed by CPU 420.
- Computer 400 may also include an I/O component 460 supporting input/output flows between the computer and other components therein such as user interface elements 1480. Computer 400 may also receive programming and data via network communications.
- aspects of the present teaching(s) as outlined above may be embodied in programming.
- Program aspects of the technology may be thought of as “products” or “articles of manufacture” typically in the form of executable code and/or associated data that is carried on or embodied in a type of machine readable medium.
- Tangible non-transitory “storage” type media include any or all of the memory or other storage for the computers, processors or the like, or associated modules thereof, such as various semiconductor memories, tape drives, disk drives and the like, which may provide storage at any time for the software programming.
- All or portions of the software may at times be communicated through a network such as the Internet or various other telecommunication networks.
- Such communications may enable loading of the software from one computer or processor into another, for example, from a server or host computer of the robot’s motion planning system into the hardware platform(s) of a computing environment or other system implementing a computing environment or similar functionalities in connection with path planning.
- another type of media that may bear the software elements includes optical, electrical and electromagnetic waves, such as used across physical interfaces between local devices, through wired and optical landline networks and over various air-links.
- the physical elements that carry such waves, such as wired or wireless links, optical links or the like, also may be considered as media bearing the software.
- terms such as computer or machine “readable medium” refer to any medium that participates in providing instructions to a processor for execution.
- a machine-readable medium may take many forms, including but not limited to, a tangible storage medium, a carrier wave medium or physical transmission medium.
- Non-volatile storage media include, for example, optical or magnetic disks, such as any of the storage devices in any computer(s) or the like, which may be used to implement the system or any of its components as shown in the drawings.
- Volatile storage media include dynamic memory, such as a main memory of such a computer platform.
- Tangible transmission media include coaxial cables; copper wire and fiber optics, including the wires that form a bus within a computer system.
- Carrier-wave transmission media may take the form of electric or electromagnetic signals, or acoustic or light waves such as those generated during radio frequency (RF) and infrared (IR) data communications.
- RF radio frequency
- IR infrared
- Common forms of computer-readable media therefore include for example: a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD or DVD-ROM, any other optical medium, punch cards paper tape, any other physical storage medium with patterns of holes, a RAM, a PROM and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave transporting data or instructions, cables or links transporting such a carrier wave, or any other medium from which a computer may read programming code and/or data.
- Many of these forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to a physical processor for execution.
- the robot’s motion planning system may be implemented as a firmware, firmware/software combination, firmware/hardware combination, or a hardware /firmware /software combination.
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/US2019/062766 WO2021101564A1 (en) | 2019-11-22 | 2019-11-22 | A deterministic robot path planning method for obstacle avoidance |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| EP4061584A1 true EP4061584A1 (de) | 2022-09-28 |
| EP4061584A4 EP4061584A4 (de) | 2023-08-16 |
Family
ID=75981698
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP19953077.5A Pending EP4061584A4 (de) | 2019-11-22 | 2019-11-22 | Deterministisches roboterpfadplanungsverfahren zur hindernisvermeidung |
Country Status (2)
| Country | Link |
|---|---|
| EP (1) | EP4061584A4 (de) |
| WO (1) | WO2021101564A1 (de) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117182904A (zh) * | 2023-09-18 | 2023-12-08 | 山东大学 | 组合型八足机器人多约束运动规划方法及系统 |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN118502403B (zh) * | 2023-12-20 | 2025-10-24 | 深圳市人工智能与机器人研究院 | 一种微型螺旋机器人三维空间动态避障的雷达控制方法 |
| CN118830918B (zh) * | 2024-06-25 | 2025-04-22 | 北京纳通医用机器人科技有限公司 | 路径规划方法、装置、设备和存储介质 |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7974737B2 (en) * | 2006-10-31 | 2011-07-05 | GM Global Technology Operations LLC | Apparatus and method of automated manufacturing |
| US9119655B2 (en) * | 2012-08-03 | 2015-09-01 | Stryker Corporation | Surgical manipulator capable of controlling a surgical instrument in multiple modes |
| CN107595392B (zh) * | 2012-06-01 | 2020-11-27 | 直观外科手术操作公司 | 使用零空间回避操纵器臂与患者碰撞 |
| US9393686B1 (en) * | 2013-03-15 | 2016-07-19 | Industrial Perception, Inc. | Moveable apparatuses having robotic manipulators and conveyors to facilitate object movement |
| CN106527151B (zh) * | 2017-01-09 | 2019-07-19 | 北京邮电大学 | 一种带负载六自由度空间机械臂的路径搜索方法 |
| CN107953334A (zh) | 2017-12-25 | 2018-04-24 | 深圳禾思众成科技有限公司 | 一种基于a星算法的工业机械臂无碰撞路径规划方法 |
| CN108705532B (zh) | 2018-04-25 | 2020-10-30 | 中国地质大学(武汉) | 一种机械臂避障路径规划方法、设备及存储设备 |
| CN110465928B (zh) * | 2019-08-23 | 2021-03-23 | 河北工业大学 | 一种仓储商品取放移动平台及该移动平台的路径规划方法 |
-
2019
- 2019-11-22 WO PCT/US2019/062766 patent/WO2021101564A1/en not_active Ceased
- 2019-11-22 EP EP19953077.5A patent/EP4061584A4/de active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117182904A (zh) * | 2023-09-18 | 2023-12-08 | 山东大学 | 组合型八足机器人多约束运动规划方法及系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2021101564A1 (en) | 2021-05-27 |
| EP4061584A4 (de) | 2023-08-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12325136B2 (en) | Deterministic robot path planning method for obstacle avoidance | |
| US11919170B2 (en) | Fast method for robot path planning with obstacle avoidance | |
| US11292132B2 (en) | Robot path planning method with static and dynamic collision avoidance in an uncertain environment | |
| WO2021101564A1 (en) | A deterministic robot path planning method for obstacle avoidance | |
| KR20210096842A (ko) | 주어진 엔드-이펙터 경로를 정확하게 따라가기 위한 리던던트 매니퓰레이터의 충돌 없는 궤적 최적화 방법 및 장치 | |
| US20220305646A1 (en) | Simulation-in-the-loop Tuning of Robot Parameters for System Modeling and Control | |
| WO2019114631A1 (zh) | 一种获取机器人tcp坐标的方法和装置 | |
| Merrad et al. | A reliable algorithm for obtaining all-inclusive inverse kinematics’ solutions and redundancy resolution of continuum robots | |
| Murai et al. | Optimal Trajectory Generation of Various English Alphabets Using Deep Learning Model for 3‐R Manipulator | |
| CN110114195B (zh) | 动作转移装置、动作转移方法和存储动作转移程序的非暂时性计算机可读介质 | |
| Abut et al. | Optimal adaptive computed torque control for haptic-teleoperation system with uncertain dynamics | |
| HK40054090A (en) | A deterministic robot path planning method for obstacle avoidance | |
| Wang et al. | Jacobian estimation with adaptive Kalman filter for uncalibrated visual servoing | |
| HK40054090B (zh) | 用於障碍物规避的确定性机器人路径规划 | |
| Reuter et al. | Genetic programming-based inverse kinematics for robotic manipulators | |
| Singh et al. | Service arms with unconventional robotic parameters for intricate workstations: optimal number and dimensional synthesis | |
| Wang et al. | An inverse kinematics solution method based on improved flow direction algorithm | |
| Gupta et al. | Comparative Study of Different Approaches to Inverse Kinematics | |
| Wang et al. | Kinematics Parameters Identification for IRB 1400 Using Improved Quantum Behaved Particle Swarm Optimization | |
| HK40055405A (en) | A fast method for robot path planning with obstacle avoidance | |
| HK40055405B (zh) | 用於具有障碍物规避的机器人路径规划的快速方法 | |
| EP4713173A2 (de) | Systeme und verfahren zur bewegungsplanung eines körperlich integrierten autonomen roboters | |
| Petrič et al. | Effect of sequence order on autonomous robotic database expansion | |
| Wu et al. | Positioning Error Modelling and Compensation Method for Robot Machining Based on RVM | |
| HK40006378A (en) | Action transfer device, action transfer method, and non-temporary computer readable medium having action transfer program stored thereon |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
| 17P | Request for examination filed |
Effective date: 20220621 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| DAV | Request for validation of the european patent (deleted) | ||
| DAX | Request for extension of the european patent (deleted) | ||
| REG | Reference to a national code |
Ref country code: DE Ref legal event code: R079 Free format text: PREVIOUS MAIN CLASS: B25J0009000000 Ipc: B25J0009160000 |
|
| A4 | Supplementary search report drawn up and despatched |
Effective date: 20230713 |
|
| RIC1 | Information provided on ipc code assigned before grant |
Ipc: B25J 9/16 20060101AFI20230707BHEP |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
| 17Q | First examination report despatched |
Effective date: 20250602 |