KR20150137166A - Method for planning path for avoiding collision between multi-mobile robot - Google Patents
Method for planning path for avoiding collision between multi-mobile robot Download PDFInfo
- Publication number
- KR20150137166A KR20150137166A KR1020140064280A KR20140064280A KR20150137166A KR 20150137166 A KR20150137166 A KR 20150137166A KR 1020140064280 A KR1020140064280 A KR 1020140064280A KR 20140064280 A KR20140064280 A KR 20140064280A KR 20150137166 A KR20150137166 A KR 20150137166A
- Authority
- KR
- South Korea
- Prior art keywords
- path
- mobile robots
- priority
- mobile
- collision
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1669—Programme controls characterised by programming, planning systems for manipulators characterised by special application, e.g. multi-arm co-operation, assembly, grasping
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1674—Programme controls characterised by safety, monitoring, diagnostic
- B25J9/1676—Avoiding collision or forbidden zones
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1682—Dual arm manipulator; Coordination of several manipulators
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
Description
본 발명은 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법에 관한 것으로서, 보다 상세하게는 동일한 주행 공간을 주행하는 복수의 이동 로봇들의 경로를 생성하는데 있어 이동 로봇들 간의 충돌을 회피하면서 경로 생성이 가능한 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법에 관한 것이다.
The present invention relates to a path generation method for collision avoidance between a plurality of mobile robots, and more particularly, to a path generation method for avoiding collision between mobile robots in generating a path of a plurality of mobile robots traveling in the same traveling space, And more particularly, to a path generation method for collision avoidance between a plurality of possible mobile robots.
건물 내부나 전시회 등과 같은 동일한 주행 공간 내에서 복수의 이동 로봇이 주행할 때, 각각의 이동 로봇들이 다른 이동 로봇의 움직임을 고려하지 않고 각자 최단 거리를 계산하여 주행하게 되면, 이동 로봇 간에 충돌이 발생할 가능성이 있다.When a plurality of mobile robots travel in the same traveling space such as a building or an exhibition, when each mobile robot calculates its shortest distance without considering movement of other mobile robots, There is a possibility.
이와 같은 경우, 이동 로봇이 계산된 경로 경로를 따라 주행하는 도중 다른 이동 로봇과의 충돌을 회피하기 위해 정지하게 되면, 작업 효율이 저하되거나 여러 대의 이동 로봇이 자칫 교착 상황(Dead lock)에 빠져 작업 목적을 달성하지 못할 경우가 발상하게 된다.In such a case, if the mobile robot is stopped to avoid collision with other mobile robots while traveling along the calculated path path, the operation efficiency may be lowered, or a plurality of mobile robots may fall into a deadlock state If you can not achieve the goal, it will come up.
이와 같은 다개체 로봇 시스템에서 충돌이 회피할 수 있는 개별적인 이동 로봇의 경로를 생성하는 방법은 크게 두가지로 분류되고 있다. 첫 번째는 중앙화된 방법(Centralized method)이고, 다른 하나는 분산화된 방법(Decoupled method)이다.In this multi-object robot system, there are two methods for generating paths of individual mobile robots that can avoid collision. The first is the centralized method and the other is the decoupled method.
중앙화된 방법은 한번의 사이클에서 모든 이동 로봇의 경로를 동시에 생성하며, 각각의 이동 로봇의 경로를 생성할 때 다른 모든 이동 로봇의 모든 경우의 수를 고려하여 경로를 생성하게 된다. 그러나, 중앙화된 방법은 최적의 경로를 생성할 수 있는 장점을 제공하고 있으나, 이동 로봇의 숫자가 많아질수록 계산량이 지수적으로 증가하여 많은 수의 이동 로봇이 적용되는 경우 적합하지 않은 단점이 있다.The centralized method simultaneously generates the paths of all the mobile robots in one cycle. When generating the path of each mobile robot, the path is generated considering the number of all the other mobile robots. However, the centralized method provides an advantage of generating an optimum path, but the computational complexity increases exponentially as the number of mobile robots increases, which is disadvantageous when a large number of mobile robots are applied .
또한, 중앙화된 방법은 사전에 모든 이동 로봇의 경로를 고려하여 최적 경로를 생성했다 하더라도, 실제 주행도중 장애물이나 작업의 지연에 의해 이동 로봇의 경로주행시간이 사전 예상과 달라지면 수시로 모든 이동 로봇의 경로를 재생성해야 하며, 이럴 경우 앞서 말한 계산의 복잡성이 주행 중에도 발생하게 되어, 전체 시스템의 성능을 저하시키는 원인으로 작용하게 된다.In addition, the centralized method can be applied to all the mobile robots at any time if the route travel time of the mobile robot is different from the anticipation due to the obstacle or the delay of the operation during the actual travel, In this case, the complexity of the calculation mentioned above also occurs during traveling, which causes the performance of the entire system to deteriorate.
한편, 분산화된 방법은 각각의 이동 로봇의 경로를 개별적으로 생성한 후 이동 로봇 간의 충돌이 일어나는 상황을 감지한 후 충돌이 일어나는 경로를 변형시키거나 속도를 제어하여 충돌을 회피하는 방식이다. 분산화된 방법은 개별 계산량이 낮은 장점이 있으나 경로의 최적성은 보장하기 어려운 문제점이 있다.On the other hand, the decentralized method is a method for avoiding collision by individually generating paths of respective mobile robots, detecting a situation in which collision occurs between the mobile robots, and then modifying the collision path or controlling the speed. The distributed method has the advantage of low individual computation amount, but it is difficult to guarantee the optimum path.
일 예로, 한국등록특허 제10-0670565호에 개시된 기술은 분산화된 방법의 하나로, 충돌이 일어나는 영역을 계산하여 우선 순위에 따라 속도 프로파일을 조절하여 충돌을 회피하는 기법을 제안하고 있다. 그러나, 상기 한국등록특허에 개시된 방법은 고정된 경로에서 이동 로봇의 속도만을 조절하여 충돌을 회피하기 때문에 이동 로봇들이 교착 상태에 빠질 가능성이 있다. 예를 들어, 두 대의 이동 로봇이 서로 마주보고 자리를 바꾸는 경우, 상기 방법으로는 충돌을 회피할 방법을 제시하지 못하게 된다.
For example, the technique disclosed in Korean Patent No. 10-0670565 is a decentralized method, in which a region where a collision occurs is calculated and a speed profile is adjusted according to a priority to avoid a collision. However, the method disclosed in the above-mentioned Korean Patents has a possibility that the mobile robots are put into a deadlock state because they only avoid the collision by adjusting the speed of the mobile robot in a fixed path. For example, when two mobile robots face each other and change their positions, the above method does not provide a method of avoiding collision.
이에, 본 발명은 상기와 같은 문제점을 해소하기 위해 안출된 것으로서, 분산화된 방법을 적용하여 복수의 이동 로봇의 경로를 생성하는데 있어, 서로 충돌이 일어나거나 겹치지 않는 경로를 생성할 수 있는 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법을 제공하는데 그 목적이 있다.SUMMARY OF THE INVENTION Accordingly, the present invention has been made to solve the above-mentioned problems, and it is an object of the present invention to provide a method and apparatus for generating a path of a plurality of mobile robots by applying a decentralized method, And to provide a path generation method for collision avoidance between robots.
또한, 주행 중 이동 로봇이 만나는 동적인 장애물과 작업 시간의 연장 등으로 인해 작업 계획의 변화에 대응하기 위해 충돌 검사 및 경로 재생성을 통해 주행 중 발생하는 주행 환경의 변화에서도 작업 효율을 유지하고 충돌 상태나 교착 상태를 방지할 수 있는 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법을 제공하는데 또 다른 목적이 있다.
In order to cope with the change of the work plan due to the dynamic obstacle encountered by the mobile robot while driving and the extension of the working time, the collision inspection and the path regeneration are performed to maintain the working efficiency even in the change of the traveling environment occurring during traveling, Another object of the present invention is to provide a path generation method for collision avoidance between a plurality of mobile robots capable of preventing a deadlock state.
상기 목적은 본 발명에 따라, 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법에 있어서, (a) 상기 복수의 이동 로봇이 주행하는 주행 지도가 등록되는 단계와; (b) 각각의 상기 이동 로봇에 대해 초기 우선 순위, 출발지 및 목적지가 등록되는 단계와; (c) 각각의 상기 이동 로봇의 출발지로부터 목적지까지의 경로가 상기 주행 지도에 기초하여 생성되되, 상기 초기 우선 순위 순으로 순차적으로 생성되어 상기 이동 로봇의 경로 간의 충돌이 회피되어 생성되는 단계와; (d) 상기 (c) 단계에서 생성된 경로에 따라 각각의 상기 이동 로봇이 주행하는 단계와; (e) 상기 이동 로봇들의 주행 과정에서 상기 이동 로봇 간의 충돌을 예측하는 단계와; (f) 상기 (e) 단계에서 상기 이동 로봇 간의 충돌이 예측되는 경우, 충돌이 예측되는 한 쌍의 이동 로봇 간의 주행 우선 순위에 기초하여 상기 주행 우선 순위가 낮은 이동 로봇의 경로가 재생성되는 단계를 포함하는 것을 특징으로 하는 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법에 의해서 달성된다.According to another aspect of the present invention, there is provided a path generation method for avoiding collision between a plurality of mobile robots, the method comprising: (a) registering a running map on which the plurality of mobile robots travel; (b) registering the initial priority, the origin and the destination for each of the mobile robots; (c) generating a route from the origin to the destination of each of the mobile robots based on the travel map, sequentially generated in the order of the initial priorities, avoiding collision between the routes of the mobile robot; (d) each of the mobile robots travels according to a path generated in the step (c); (e) predicting a collision between the mobile robots in a traveling process of the mobile robots; (f) when a collision between the mobile robots is predicted in the step (e), a path of the mobile robot having the low driving priority is regenerated based on the traveling priority between the pair of mobile robots in which the collision is predicted And a path generation method for avoiding collision between a plurality of mobile robots.
여기서, 상기 (a) 단계에서 상기 주행 지도는 복수의 노드와 상기 노드 간을 연결하는 에지로 구성될 수 있다.In the step (a), the driving map may be composed of a plurality of nodes and edges connecting the nodes.
또한, 상기 (c) 단계에서 생성되는 경로는 다익스트라(Djikstra) 알고리즘, A* 알고리즘, D* 알고리즘 중 어느 하나에 기초하여 생성되고; 상기 (c) 단계에서 생성되는 경로는 경로 상의 노드 및 에지의 점유 시간에 대한 정보를 포함하며; 상기 (c) 단계에서는 상기 초기 우선 순위에 따라 먼저 생성된 경로 상의 노드 및 에지의 상기 점유 시간에 따른 점유 여부가 저장되어, 이후의 경로 생성시 해당 점유 시간에서 점유된 노드 및 에지는 경로 생성에서 배제될 수 있다.Also, the path generated in the step (c) is generated based on any one of a Djikstra algorithm, an A * algorithm, and a D * algorithm; The path generated in the step (c) includes information on the occupancy time of the node and the edge on the path; In the step (c), whether or not occupancy of the nodes and edges on the path generated earlier according to the occupancy time is stored according to the initial priority, and the occupied nodes and edges in the subsequent occupancy time are stored in the path generation Can be excluded.
그리고, 상기 (c) 단계에서 상기 복수의 이동 로봇 중 충돌의 회피가 가능한 경로가 존재하지 않는 이동 로봇이 존재하는 경우, 해당 이동 로봇은 주행 대기 상태로 유지될 수 있다.In the step (c), when there is a mobile robot in which there is no path capable of avoiding a collision among the plurality of mobile robots, the mobile robot may be kept in a waiting state.
그리고, 상기 (e) 단계에서는 상기 복수의 이동 로봇 중 어느 하나의 이동 로봇과 나머지 이동 로봇 간의 충돌이 순차적으로 예측되며; 상기 (f) 단계는 (f1) 상기 (e) 단계의 수행 과정 중 상기 어느 하나의 이동 로봇과 충돌이 예측되는 경우, 해당 두 이동 로봇 간의 상기 주행 우선 순위가 비교되는 단계와, (f2) 상기 (f1) 단계에서 상기 어느 하나의 이동 로봇의 상기 주행 우선 순위가 낮은 경우, 상기 어느 하나의 이동 로봇의 경로가 재생성되는 단계를 포함하며; 모든 이동 로봇에 대해 상기 (e) 단계, (f1) 단계 및 상기 (f2) 단계가 순차적으로 수행될 수 있다.In the step (e), collision between any one of the plurality of mobile robots and the remaining mobile robots is sequentially predicted. Wherein the step (f) comprises the steps of: (f1) comparing the traveling priorities of the two mobile robots when a collision with any one of the mobile robots is predicted during the execution of the step (f) if the traveling priority of one of the mobile robots is low in the step (f1), the path of any one of the mobile robots is regenerated; The steps (e), (f1), and (f2) may be sequentially performed on all mobile robots.
그리고, 상기 (f1) 단계에서 상기 어느 하나의 이동 로봇의 상기 주행 우선 순위가 높은 경우, 다음 순서의 이동 로봇에 대해 상기 (e) 단계, (f1) 단계 및 상기 (f2) 단계가 수행될 수 있다.If the traveling priority of any one of the mobile robots is high in step (f1), the steps (e), (f1) and (f2) have.
또한, 상기 (c) 단계에서 생성되는 경로와 상기 (f) 단계에서 재생성되는 경로는 다익스트라(Djikstra) 알고리즘, A* 알고리즘, D* 알고리즘 중 어느 하나에 기초하여 생성되고; 상기 (c) 단계 및 상기 (f) 단계에서 생성 및 재생성되는 경로는 해당 경로 상의 노드 및 에지의 점유 시간에 대한 정보를 포함하며; 상기 (f) 단계에서는 상기 복수의 이동 로봇에 대해 기 생성된 경로 상의 노드 및 에지의 상기 점유 시간에 따른 점유 여부가 저장되어, 경로 재생성시 해당 점유 시간에서 점유된 노드 및 에지는 경로 생성에서 배제될 수 있다.The path generated in step (c) and the path regenerated in step (f) are generated based on any one of a Djikstra algorithm, an A * algorithm, and a D * algorithm; The paths generated and regenerated in the step (c) and the step (f) include information on occupancy times of nodes and edges on the path; In the step (f), it is stored whether or not occupancy of nodes and edges on the pre-generated path with respect to the plurality of mobile robots according to the occupation time is stored, and nodes and edges occupied in the occupation time at the time of path re- .
그리고, 상기 (f) 단계에서 재생성되는 경로가 기 등록된 대기 조건을 만족하는 경우, 해당 이동 로봇의 주행이 대기 상태로 전환될 수 있다.If the path regenerated in step (f) satisfies the pre-registered waiting condition, the traveling of the mobile robot may be switched to the waiting state.
여기서, 상기 초기 우선 순위는 상기 복수의 이동 로봇 각각에 대해 초기에 등록된 초기 우선 순위를 포함하고; 상기 주행 우선 순위는 상기 초기 우선 순위와, 현재 상기 이동 로봇의 위치로부터 충돌이 예측되는 노드 또는 에지까지의 경로 비용이 반영된 비용 기반 우선 순위와, 상기 이동 로봇의 임무 중요도가 반영되는 임무 기반 우선 순위와, 현재 상기 이동 로봇의 위치로부터 충돌이 예측되는 노드를 제외하고 재생성될 경로의 경로 비용이 반영된 재생성 경로 기반 우선 순위와, 상기 초기 우선 수위, 상기 비용 기반 우선 순위, 임무 기반 우선 순위 및 상기 재생성 경로 기반 우선 순위 중 적어도 둘 이상의 조합에 기반한 조합 우선 순위 중 어느 하나를 포함할 수 있다.
Here, the initial priority includes an initial priority registered initially for each of the plurality of mobile robots; The traveling priority includes a priority based on the initial priority, a cost based on a route cost from a current location of the mobile robot to a node or an edge where a collision is predicted, and a mission based priority Based on the regeneration route based priority reflecting the path cost of the path to be regenerated excluding the node where the collision is predicted from the position of the mobile robot at present and the regeneration route based priority reflecting the initial priority level, the cost based priority, And a combination priority based on a combination of at least two of the path-based priorities.
상기와 같은 구성에 따라, 본 발명에 따르면 분산화된 방법을 적용하여 복수의 이동 로봇의 경로를 생성하는데 있어, 서로 충돌이 일어나거나 겹치지 않는 경로를 생성할 수 있는 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법이 제공된다.According to the present invention, according to the present invention, there is provided a method for generating a path of a plurality of mobile robots by applying a decentralized method, A path generation method is provided.
또한, 주행 중 이동 로봇이 만나는 동적인 장애물과 작업 시간의 연장 등으로 인해 작업 계획의 변화에 대응하기 위해 충돌 검사 및 경로 재생성을 통해 주행 중 발생하는 주행 환경의 변화에서도 작업 효율을 유지하고 충돌 상태나 교착 상태를 방지할 수 있는 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법이 제공된다.
In order to cope with the change of the work plan due to the dynamic obstacle encountered by the mobile robot while driving and the extension of the working time, the collision inspection and the path regeneration are performed to maintain the working efficiency even in the change of the traveling environment occurring during traveling, There is provided a path generation method for collision avoidance between a plurality of mobile robots capable of preventing a deadlock state.
도 1은 본 발명에 따른 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 시스템의 구성을 나타낸 도면이고,
도 2 및 도 3은 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법을 설명하기 위한 도면이고,
도 4는 이동 로봇 간에 충돌이 예측되거나 교착 상태에 빠지는 예를 나타낸 도면이고,
도 5는 다익스트라(Djikstra) 알고리즘을 설명하기 위한 도면이고,
도 6 내지 도 8은 본 발명에 따른 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법에서 우선 순위에 따른 경로 생성 과정을 설명하기 위한 도면이고,
도 9는 본 발명에 따른 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법에서 주행 우선 순위의 예를 설명하기 위한 도면이다.FIG. 1 is a diagram illustrating a configuration of a path generation system for collision avoidance between a plurality of mobile robots according to the present invention,
FIGS. 2 and 3 are diagrams for explaining a path generation method for collision avoidance between a plurality of mobile robots,
4 is a diagram showing an example in which a collision is predicted or deadlocked between mobile robots,
5 is a diagram for explaining the Djikstra algorithm,
6 to 8 are diagrams for explaining a route creation process according to priority in a route creation method for collision avoidance between a plurality of mobile robots according to the present invention,
9 is a view for explaining an example of a driving priority in a path generation method for collision avoidance between a plurality of mobile robots according to the present invention.
이하에서는 첨부된 도면들을 참조하여 본 발명에 따른 실시예들에 대해 상세히 설명한다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명에 따른 복수의 이동 로봇(200) 간의 충돌 회피를 위한 경로 생성 시스템의 구성을 나타낸 도면이다. 도 1에 도시된 바와 같이, 본 발명에 따른 경로 생성 시스템은 복수의 이동 로봇(200)과, 복수의 이동 로봇(200)을 관제하는 관제 센터(100)를 포함한다.1 is a diagram illustrating a configuration of a path generation system for collision avoidance between a plurality of
복수의 이동 로봇(200)은 각각 동일한 주행 공간 내에서 주행한다. 본 발명에서는 이동 로봇(200)이 2륜 이동 로봇(200) 형태로 마련되는 것을 예로 한다. 관제 센터(100)는 이동 로봇(200)과 무선 통신을 통해 상호 데이터를 교환하며, 필요에 따라 이동 로봇(200)에 특정 명령을 전송할 수 있다.The plurality of
여기서, 관제 센터(100)는 이후에서 설명할 본 발명에 따른 경로 생성 방법을 이용하여, 각각의 이동 로봇(200)의 경로를 생성하여 이동 로봇(200)의 이동을 제어함으로써, 이동 로봇(200)들이 주행 공간 내에서 주행하는데 있어 상호 충돌이나 교착상태에 빠지는 것을 방지하게 된다.Here, the
이하에서는, 본 발명에 따른 경로 생성 방법을, 도 2 및 도 3을 참조하여 상세히 설명한다. 여기서, 본 발명에 따른 경로 생성 방법에 적용되는 주행 지도는 도 5 지 도 9에 도시된 바와 같이, 복수의 노드(Node)와, 인접한 노드를 연결하는 에지(Edge)로 구성된 주행 지도를 이용하는 것을 예로 한다.Hereinafter, a path generation method according to the present invention will be described in detail with reference to FIG. 2 and FIG. Here, as shown in FIG. 5 and FIG. 9, the driving map applied to the route generating method according to the present invention may include a navigation map including a plurality of nodes and an edge connecting adjacent nodes For example.
도 4는 이동 로봇(200) 간에 충돌이 예측되거나 교착 상태에 빠지는 예를 나타낸 도면이다. 도 4의 (a)는 이동 로봇(200)의 다음 목적지 노드가 다른 이동 로봇(200)에 의해 점유되는 상태를 나타낸 도면이다. 도 4의 (b)는 두 대 이상의 이동 로봇(200)이 하나의 에지를 공유하면서 서로 마주하게 주행하는 상태를 나타낸 도면이다. 그리고, 도 4의 (c)는 한 대 이상의 이동 로봇(200)이 모서리에 갇힌 상태를 나타낸 도면이다.4 is a diagram showing an example in which a collision is predicted or deadlocked between the
도 4에 도시된 바와 같은 교착 상태에서 둘 이상의 이동 로봇(200)이 원래의 경로를 따라 이동하게 되면, 해당 이동 로봇(200) 간은 충돌이 발생하게 되는 바, 도 4에 도시된 예에서와 같은 상태가 발생하게 되면, 이를 충돌로 예측 가능하게 되어, 후술할 과정을 통해 충돌 회피를 위한 경로 재생성 과정을 거치게 된다.When two or more
다시, 도 2를 참조하여 본 발명에 따른 경로 생성 방법에 대해 상세히 설명한다. 먼저, 본 발명에 따른 경로 생성 시스템에 주행 지도가 등록된다(S20). 여기서, 주행 지도는 상술한 바와 같이, 복수의 노드와 에지로 구성되는데, 주행 지도는 관제 센터(100)와 각각의 이동 로봇(200)에 등록될 수 있다.Referring again to FIG. 2, the path generation method according to the present invention will be described in detail. First, a driving map is registered in the route creation system according to the present invention (S20). Here, the travel map is composed of a plurality of nodes and edges, as described above, and the travel map can be registered in the
그런 다음, 각각의 이동 로봇(200)에 대해 초기 우선 순위가 등록된다(S21). 본 발명에서는 초기 우선 순위는 각각의 이동 로봇(200)에 대해 일률적으로 초기에 우선 순위가 결정되어 등록되는 것을 예로 한다. 여기서, 초기 우선 순위의 등록 외에도 이동 로봇(200)의 경로 생성과 주행을 위한 다른 변수, 각각의 이동 로봇(200)의 출발지와 목적지, 이동 속도, 가감속 속도 등의 변수도 함께 등록될 수 있다.Then, the initial priority is registered for each mobile robot 200 (S21). In the present invention, the initial priority is determined such that priority is determined and registered for each
상기와 같이, 초기 우선 순위, 목적지 및 출발지 등의 값이 등록되면, 각각의 이동 로봇(200)의 출발지로부터 목적지까지의 경로가 주행 지도에 기초하여 생성되는데, 본 발명에서는 이동 로봇(200)의 초기 우선 순위 순으로 순차적으로 각각의 이동 로봇(200)의 경로가 생성되는 것을 예로 한다(S22).As described above, when the values of the initial priority, the destination and the place of departure are registered, a route from the departure point to the destination of each
여기서, 본 발명에 따른 경로 생성 방법에서 이동 로봇(200)의 경로는 다익스트라(Djikstra) 알고리즘, A* 알고리즘, 그리고 D* 알고리즘 중 어느 하나에 기초하여 생성되는 것을 예로 한다.Here, in the path generation method according to the present invention, the path of the
다익스트라(Djikstra) 알고리즘, A* 알고리즘, 그리고 D* 알고리즘은 최단 거리의 경로를 생성하는데 적용되는데, 도 5를 참조하여 간략히 설명하면, 출발지인 a 노드에서 목적지인 b 노드로 가는 최단 거리의 경로를 생성하는데 있어, 노드와 노드를 연결하는 에지를 따라 모든 가능한 경로를 생성하고, 해당 경로의 거리를 누적하여 최단 거리의 경로를 탐색하게 된다.The Djikstra algorithm, the A * algorithm, and the D * algorithm are applied to generate the shortest path. Referring briefly to FIG. 5, the shortest distance path from the source a to the destination b , All possible paths are generated along the edge connecting the node and the node, and the shortest path is searched by accumulating the distance of the corresponding path.
여기서, 본 발명에서는 초기 우선 순위에 따라 경로를 생성하는 과정에서, 먼저 생성된 경로는 경로 상의 노드 및 에지의 점유와, 점유 시간에 대한 정보를 포함하게 된다.Here, in the present invention, in the process of generating a route according to the initial priority, the generated route includes the occupation of the node and the edge on the route, and information on the occupancy time.
그리고, 초기 우선 순위에 따라 먼저 생성된 경로 상의 노드 및 에지의 점유 시간에 따른 점유 여부가 저장된 상태에서, 이후의 초기 우선 순위에 따라 경로를 생성할 때, 해당 점유 시간에서 점유된 노드 및 에지는 현재 이동 로봇(200)의 경로 생성에서 배제된다.In the state where occupancy according to the occupancy time of the node and the edge on the path generated first according to the initial priority is stored and the path is generated according to the subsequent initial priority, the node and the edge occupied in the occupancy time Is excluded from the path generation of the
도 6 내지 도 8을 참조하여 보다 구체적으로 설명하면, 도 6에 도시된 예에서, 이동 로봇(200) R1이 노드 G2 위치에 위치하고, 이동 로봇(200) R2가 노드 G1에 위치한 상태에서, 이동 로봇(200) R1의 목적지를 노드 G1으로, 이동 로봇(200) R2의 목적지를 노드 G2로 하는 경로를 생성한다고 가정하고, 이동 로봇(200) R1의 초기 우선 순위가 이동 로봇(200) R2의 초기 우선 순위보다 높다고 가정하여 경로를 생성하는 것을 예로 한다.6, when the
초기 우선 순위가 높은 이동 로봇(200) R1의 경로가 먼저 생성되는데, 최단 거리의 경로를 찾는 다익스트라(Djikstra) 알고리즘에 따라 도 7의 (a)에 도시된 바와 같이, 이동 로봇(200) R1에 대한 최단 거리 경로 P1이 생성된다. 이 때, 상술한 바와 같이, 이동 로봇(200) R1의 경로가 생성되면 해당 경로 상의 노드 및 에지의 점유 시간에 대한 정보가 함께 저장되는데, 도 7의 (b)는 경로 P1의 경로 상의 노드 및 에지의 점유 시간을 도식화하여 나타낸 것이다.The path of the
그런 다음, 다음 우선 순위인 이동 로봇(200) R2의 경로가 다익스트라(Djikstra) 알고리즘을 통해 생성되는데, 도 7의 (c)에 도시된 바와 같이, 점유 시간 3.5s ~ 4.5s 구간의 에지인 A 영역에서 경로가 중복되어 충돌이 예측되는 바, 해당 점유 시간에서의 에지를 경로 생성에서 배제하게 된다.Then, the path of the
따라서, 이동 로봇(200) R2의 경로 생성에서 A 영역 상의 에지가 배제된 상태에서 다른 최단 거리의 경로를 생성하게 되는 바, 도 8에 도시된 바와 같은 경로 P2가 생성 가능하게 된다.Therefore, in the path generation of the
여기서, 복수의 이동 로봇(200)에 대해 초기 우선 순위 순으로 경로를 생성하는 과정에서 이전 이동 로봇(200)의 경로 생성으로 인해 점유되는 노드와 에지에 의해 후순위의 이동 로봇(200) 중 충돌의 회피가 가능한 경로가 존재하지 않는 이동 로봇(200)이 존재하는 경우, 해당 이동 로봇(200)의 주행은 현재 주기에서 대기 상태로 유지될 수 있으며, 다음 주기에서의 경로 생성 또는 후술할 충돌 검사 및 경로 재생성 과정에서 다시 경로 생성 과정을 수행하게 된다. 여기서, 경로 생성과 관련된 주기에 대한 설명은 후술한다.Herein, in the process of generating paths in the order of the initial priorities for the plurality of
상기 과정을 통해, 각각의 이동 로봇(200)의 경로 생성이 완료되면(대기 상태의 이동 로봇(200)이 존재할 수 있음), 각각의 이동 로봇(200)이 생성된 경로를 따라 주행을 시작하게 된다(S23).Through the above process, when the path creation of each
그리고, 이동 로봇(200)들의 주행 과정에서 이동 로봇(200) 간의 충돌을 예측하고, 충돌이 예측되는 경우 경로를 재생성하는 충돌 검사 및 경로 재생성 과정을 수행하면서(S24), 이동 로봇(200)의 주행이 진행된다.A collision check and a path regeneration process for regenerating a path in the case where a collision is predicted are performed in the traveling process of the
이와 같은 충돌 검사 및 경로 재생성 과정은 상술한 방법을 통해 충돌이 회피된 경로가 각각의 이동 로봇(200)에 대해 생성되더라도, 이동 로봇(200)의 주행 과정에서 발생하는 주행 환경 변화, 예를 들어 주행 중 동적 장애물을 피하기 위해 경로를 변경하거나 속도를 줄이는 등의 동작을 수행하거나, 작업 시간의 연장 등으로 인해 원래의 작업 계획에 변화가 발생하는 경우, 초기의 경로 생성 과정에서 점유하는 노드와 에지의 점유 시간에 변화가 발생하게 되어, 다른 이동 로봇(200)과의 충돌이 발생할 수 있기 때문에 이를 반영하기 위한 것이다.Even if a collision-avoided path is generated for each of the
본 발명에 따른 충돌 검사 및 경로 재생성 방법을 개념적으로 설명하면, 먼저, 복수의 이동 로봇(200) 중 어느 하나의 이동 로봇(200)(이하, '대상 이동 로봇(200)'이라 함)과 나머지 이동 로봇(200)(이하, '비교 이동 로봇(200)'이라 함) 간의 충돌이 순차적으로 예측된다.(Hereinafter, referred to as a 'target mobile robot 200') among a plurality of
그런 다음, 예측 과정에서 대상 이동 로봇(200)과 충돌이 예측되는 비교 이동 로봇(200)이 발생하면, 두 이동 로봇(200) 간의 기 설정된 주행 우선 순위의 기초하여 두 이동 로봇(200) 중 어느 하나의 경로가 재생성된다. 이 때, 대상 이동 로봇(200)의 주행 우선 순위가 낮은 경우 대상 이동 로봇(200)의 경로를 재생성되는 것을 예로 하는데, 이는 현재 대상 이동 로봇(200)과 충돌이 예측되는 비교 이동 로봇(200)의 경로 재생성은 해당 비교 이동 로봇(200)이 대상 이동 로봇(200)의 지위에 있을 때 고려할 수 있기 때문이다.Then, when the comparison
상기와 같은 과정을 모든 이동 로봇(200)에 대해 수행하게 되면, 다시 충돌을 회피할 수 있는 경로가 충돌이 예측되는 이동 로봇(200)에 대해 생성 가능하게 된다.When the above process is performed on all the
도 3은 상술한 바와 같은 충돌 감지 및 경로 재생성 과정을 수행하기 위한 알고리즘을 나타낸 도면이다. 도 3을 참조하여 본 발명에 따른 충돌 검사 및 경로 재생성 과정을 보다 구체적으로 설명한다. 여기서, 충돌 검사 및 경로 재생성 과정의 수행 주기는 어느 하나의 이동 로봇(200)이 다음 노드에 도착했을 때마다 수행되는 것을 예로 하는데, 이에 국한되지 않음은 물론이다. 또한, 상술한 바와 같이, 초기 경로 생성시 경로가 생성되지 않은 이동 로봇(200)의 경우 경로 재생성 과정에서 최단 경로를 생성하는 과정을 거치게 된다.FIG. 3 is a diagram illustrating an algorithm for performing the collision detection and path regeneration process as described above. The collision inspection and path regeneration process according to the present invention will be described in more detail with reference to FIG. Herein, the execution cycle of the collision check and the path regeneration process is performed every time when one of the
S30 단계 및 S31 단계는 변수의 초기화 과정을 나타낸다. n은 대상 이동 로봇(200)의 인덱스를 의미하고, m은 비교 이동 로봇(200)의 인덱스를 의미하고 있다. n과 m이 각각 1로 설정된 상태에서 첫 번째의 대상 이동 로봇(200)과 첫 번째의 비교 이동 로봇(200) 간의 충돌이 예측된다(S32). 여기서, 충돌 예측은, 도 4에 도시된 예와 같은 상황이 대상 이동 로봇(200)과 비교 이동 로봇(200) 간에 발생하는지 여부를 검사하게 되는데, 상술한 바와 같이 두 이동 로봇(200)의 경로 상의 노드 및 에지와, 해당 노드 및 에지의 점유 시간의 비교를 통해 충돌의 예측이 가능하게 된다.Steps S30 and S31 represent the initialization process of the variable. n denotes an index of the target
S32 단계에서 현재의 대상 이동 로봇(200)과 비교 이동 로봇(200) 간의 충돌이 예측되면, 대상 이동 로봇(200)과 비교 이동 로봇(200) 간의 주행 우선 순위가 비교된다(S33). 여기서, 주행 우선 순위는 상술한 초기 우선 순위와 동일하게 설정될 수 있다.If a collision between the current target
또한, 주행 우선 순위는 초기 우선 순위와 다른 형태로 마련될 수 있다. 일 예로, 각각의 이동 로봇(200)에게 주어진 임무의 중요도가 반영되는 임무 기반 우선 순위가 적용 가능하다. 일 예로, 본 발명에 따른 이동 로봇(200)이 물류 창고에서 물류를 운반하는데 적용되는 경우, 물건을 이송 중인 이동 로봇(200)이 물건의 이송이 완료되어 복귀하는, 즉 물건을 나르지 않고 있는 이동 로봇(200)보다 우선 순위가 높게 설정될 수 있다.In addition, the driving priority may be provided in a form different from the initial priority. For example, a task-based priority that reflects the importance of a given task to each
다른 예로, 현재 이동 로봇(200)의 위치로부터 충돌이 예측되는 노드를 제외하고 재생성될 경로의 경로 비용이 반영된 재생성 경로 기반 우선 순위가 적용 가능하다. 도 9를 참조하여 설명하면, 도 9의 (a)에 도시된 바와 같이, 이동 로봇(200) R1의 원래 경로가 P1(실선)이고, 이동 로봇(200) R2의 원래 경로가 P2(점선)라고 가정한 상태에서 두 이동 로봇(200)은 충돌이 예측되는 상황이다. 이 때, 이동 로봇(200) R1의 경로를 재생성하여 P1'(일점 쇄선)가 생성되고, 이동 로봇(200) R2의 경로를 재생성하여 P2'(이점 쇄선)를 생성한 후, 새로이 생성된 경로 P1'와 P2'의 경로 비용을 재생성 경로 기반 우선 순위로 하여 비교한 후, 경로 비용이 적은 경로인 P2'가 재생성 경로 결정되어 이동 로봇(200) R2의 경로가 재생성될 수 있다.As another example, a regeneration path based priority that reflects the path cost of the path to be regenerated is excluded except for the node where the collision is predicted from the position of the
또한, 현재 이동 로봇(200)의 위치로부터 충돌이 예측되는 노드 또는 에지까지의 경로 비용이 반영된 비용 기반 우선 순위가 적용될 수 있다. 일 예로, 충돌이 현 위치에서 인접한 노드나 에지에서 발생하는 경우, 어느 하나를 단순히 우회시키는 경로를 생성하여 쉽게 충돌 회피가 가능한 경우에 해당 노드나 에지까지의 거리가 먼 이동 로봇(200)의 경로를 재생성하도록 마련될 수 있다.In addition, the cost based priority in which the path cost from the position of the current
여기서, 주행 우선 순위는 초기 우선 순위, 비용 기반 우선 순위, 임무 기반 우선 순위 및 경로 기반 우선 순위 중 적어도 둘 이상의 조합을 기반으로 하는 조합 우선 순위 형태로 마련될 수 있다. 예를 들어, 상술한 4개의 우선 순위에 일정 가중치를 부여한 후 수치적으로 합산함으로써, 현재 이동 로봇(200)의 우선 순위를 새로이 반영할 수 있다.Here, the driving priority may be provided in a combination priority form based on at least two combinations of the initial priority, the cost based priority, the mission based priority, and the route based priority. For example, it is possible to newly reflect the priority order of the current
이와 같이, 이동 로봇(200)의 주행 우선 순위를 현재 이동 로봇(200)의 작업 상태나 주행 거리 등을 반영하여 이를 경로 재생성에 반영함으로써, 경로 계획을 보다 효율적으로 생성하는 것이 가능하게 된다.In this way, the traveling priority of the
다시, 도 3을 참조하여 설명하면, S33 단계에서 주행 우선 순위의 비교를 통해 대상 이동 로봇(200)인 n의 주행 우선 순위가 낮은 것으로 판단되면, 대상 이동 로봇(200)의 경로를 재생성한다(S34). 여기서, 경로 재생성 방법은, 도 2에 도시된 초기 경로 생성 방법과 마찬가지로, 다익스트라(Djikstra) 알고리즘, A* 알고리즘, D* 알고리즘 중 어느 하나에 기초하여 생성되며, 이미 생성된 경로 상의 노드 및 에지의 점유 시간에 대한 정보에 기초하여, 경로 재생성 시 해당 점유 시간에서 점유된 노드 및 에지는 경로 생성에서 배제시킴으로써, 재생성된 경로가 기존의 경로와 다시 충돌하는 경우를 사전에 차단할 수 있게 된다.Referring again to FIG. 3, if it is determined that the driving priority of the target
한편, 경로 재생성 후에 대상 이동 로봇(200)이 대기 조건에 해당하는지 여부를 판단하게 된다(S35). 여기서, 대기 조건은 경로 재생성 과정에서 충돌 회피가 가능한 경로가 생성되지 않는 경우를 의미하게 된다.On the other hand, after the path is regenerated, it is determined whether the target
S35 단계에서 대기 조건에 만족하지 않는 경우, 즉 경로가 재생성되는 경우에는 재생성 경로가 대상 이동 로봇(200)의 새로운 경로로 결정되고, 대상 이동 로봇(200)은 재생성 경로로 주행하게 된다(S36). 반면, S35 단계에서 대기 조건을 만족하는 경우 해당 대상 이동 로봇(200)에는 대기 명령이 전송되어 대상 이동 로봇(200)은 현재 주기에서 대기 상태가 된다(S37).If the waiting condition is not satisfied in step S35, that is, when the path is regenerated, the regeneration path is determined as a new path of the target
상기와 같이 현재의 대상 이동 로봇(200)이 비교 이동 로봇(200) 중 어느 하나와 충돌이 예측되고, 해당 비교 대상 로봇보다 대상 이동 로봇(200)의 주행 우선 순위가 낮아 경로 재생성 또는 대기 상태가 된 후, 모든 이동 로봇(200)에 대한 충돌 검사 및 경로 재생성 과정이 완료되었는지 여부를 판단하고(S38), 모든 이동 로봇(200)에 대한 판단이 완료되지 않은 경우, 다음 차순의 이동 로봇(200)을 대상 이동 로봇(200)으로 하여(S39), 상술한 바와 같은 충돌 검사 및 경로 재생성 과정을 진행하게 된다.As described above, when the current target
한편, S32 단계에서 현재의 비교 이동 로봇(200)과 대상 이동 로봇(200)의 충돌이 예측되지 않는 경우에는, 현재 대상 이동 로봇(200) 이외의 이동 로봇(200) 모두에 대해 충돌 예측이 진행되었는지 여부를 판단하고(S40), 모든 이동 로봇(200)과의 비교가 완료되지 않은 경우, 다음 차순의 이동 로봇(200)을 비교 대상 로봇으로 하여(S41) 현재의 대상 이동 로봇(200)과의 충돌을 예측하게 된다(S32). 반면, S40 단계에서 모든 이동 로봇(200)과의 비교가 완료되면, 모든 이동 로봇(200)을 대상 이동 로봇(200)으로 하여 충돌 예측 및 경로 재생성 과정이 완료되었는지 여부를 판단한 후(S42), 남은 이동 로봇(200)이 존재하는 경우 다음 차순의 이동 로봇(200)을 대상 이동 로봇(200)으로 하여(S43) 충돌 검사 및 경로 재생성 과정을 진행하고, 모든 이동 로봇(200)에 대한 충돌 검사 및 경로 재생성 과정의 진행이 완료되면 현재 주기에서의 충돌 검사 및 경로 재생성 과정이 완료된다.On the other hand, if no collision between the current comparison
본 실시예는 본 발명에 포함되는 기술적 사상의 일부를 명확하게 나타낸 것에 불과하며, 본 발명의 명세서에 포함된 기술적 사상의 범위 내에서 당업자가 용이하게 유추할 수 있는 변형 예와 구체적인 실시예는 모두 본 발명의 기술적 사상에 포함되는 것은 자명하다.
It is to be understood that both the foregoing general description and the following detailed description of the present invention are exemplary and explanatory and are intended to be exemplary and explanatory only and are not to be construed as limiting the scope of the inventive concept. And it is obvious that it is included in the technical idea of the present invention.
100 : 관제 센터 200 : 이동 로봇100: Control center 200: Mobile robot
Claims (9)
(a) 상기 복수의 이동 로봇이 주행하는 주행 지도가 등록되는 단계와;
(b) 각각의 상기 이동 로봇에 대해 초기 우선 순위, 출발지 및 목적지가 등록되는 단계와;
(c) 각각의 상기 이동 로봇의 출발지로부터 목적지까지의 경로가 상기 주행 지도에 기초하여 생성되되, 상기 초기 우선 순위 순으로 순차적으로 생성되어 상기 이동 로봇의 경로 간의 충돌이 회피되어 생성되는 단계와;
(d) 상기 (c) 단계에서 생성된 경로에 따라 각각의 상기 이동 로봇이 주행하는 단계와;
(e) 상기 이동 로봇들의 주행 과정에서 상기 이동 로봇 간의 충돌을 예측하는 단계와;
(f) 상기 (e) 단계에서 상기 이동 로봇 간의 충돌이 예측되는 경우, 충돌이 예측되는 한 쌍의 이동 로봇 간의 주행 우선 순위에 기초하여 상기 주행 우선 순위가 낮은 이동 로봇의 경로가 재생성되는 단계를 포함하는 것을 특징으로 하는 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법.A path generation method for collision avoidance between a plurality of mobile robots,
(a) registering a running map on which the plurality of mobile robots travel;
(b) registering the initial priority, the origin and the destination for each of the mobile robots;
(c) generating a route from the departure location to the destination of each of the mobile robots based on the travel map, sequentially generated in the order of the initial priorities, avoiding collision between the routes of the mobile robot;
(d) each of the mobile robots travels according to a path generated in the step (c);
(e) predicting a collision between the mobile robots in a traveling process of the mobile robots;
(f) when a collision between the mobile robots is predicted in the step (e), a path of the mobile robot having the low driving priority is regenerated based on the traveling priority between the pair of mobile robots in which the collision is predicted Wherein the plurality of mobile robots are connected to the plurality of mobile robots.
상기 (a) 단계에서 상기 주행 지도는 복수의 노드와 상기 노드 간을 연결하는 에지로 구성되는 것을 특징으로 하는 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법.The method according to claim 1,
Wherein the traveling map comprises a plurality of nodes and an edge connecting the nodes in the step (a).
상기 (c) 단계에서 생성되는 경로는 다익스트라(Djikstra) 알고리즘, A* 알고리즘, D* 알고리즘 중 어느 하나에 기초하여 생성되고;
상기 (c) 단계에서 생성되는 경로는 경로 상의 노드 및 에지의 점유 시간에 대한 정보를 포함하며;
상기 (c) 단계에서는 상기 초기 우선 순위에 따라 먼저 생성된 경로 상의 노드 및 에지의 상기 점유 시간에 따른 점유 여부가 저장되어, 이후의 경로 생성시 해당 점유 시간에서 점유된 노드 및 에지는 경로 생성에서 배제되는 것을 특징으로 하는 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법.3. The method of claim 2,
Wherein the path generated in step (c) is generated based on any one of a Djikstra algorithm, an A * algorithm, and a D * algorithm;
The path generated in the step (c) includes information on the occupancy time of the node and the edge on the path;
In the step (c), whether or not occupancy of the nodes and edges on the path generated earlier according to the occupancy time is stored according to the initial priority, and the occupied nodes and edges in the subsequent occupancy time are stored in the path generation Wherein the plurality of mobile robots are excluded from the plurality of mobile robots.
상기 (c) 단계에서 상기 복수의 이동 로봇 중 충돌의 회피가 가능한 경로가 존재하지 않는 이동 로봇이 존재하는 경우, 해당 이동 로봇은 주행 대기 상태로 유지되는 것을 특징으로 하는 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법.The method of claim 3,
Wherein, in the step (c), when there is a mobile robot in which there is no path capable of avoiding a collision among the plurality of mobile robots, the mobile robot is maintained in a running waiting state, A method for generating a route for a route.
상기 (e) 단계에서는 상기 복수의 이동 로봇 중 어느 하나의 이동 로봇과 나머지 이동 로봇 간의 충돌이 순차적으로 예측되며;
상기 (f) 단계는
(f1) 상기 (e) 단계의 수행 과정 중 상기 어느 하나의 이동 로봇과 충돌이 예측되는 경우, 해당 두 이동 로봇 간의 상기 주행 우선 순위가 비교되는 단계와,
(f2) 상기 (f1) 단계에서 상기 어느 하나의 이동 로봇의 상기 주행 우선 순위가 낮은 경우, 상기 어느 하나의 이동 로봇의 경로가 재생성되는 단계를 포함하며;
모든 이동 로봇에 대해 상기 (e) 단계, (f1) 단계 및 상기 (f2) 단계가 순차적으로 수행되는 것을 특징으로 하는 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법.3. The method of claim 2,
In the step (e), collision between any one of the plurality of mobile robots and the remaining mobile robots is sequentially predicted;
The step (f)
(f1) comparing the traveling priorities of the two mobile robots when a collision with any one of the mobile robots is predicted during the step (e); and
(f2) when the traveling priority of one of the mobile robots is low in the step (f1), the path of any one of the mobile robots is regenerated;
Wherein the steps (e), (f1), and (f2) are performed sequentially for all mobile robots.
상기 (f1) 단계에서 상기 어느 하나의 이동 로봇의 상기 주행 우선 순위가 높은 경, 다음 순서의 이동 로봇에 대해 상기 (e) 단계, (f1) 단계 및 상기 (f2) 단계가 수행되는 것을 특징으로 하는 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법.6. The method of claim 5,
The steps (e), (f1), and (f2) are performed for the mobile robot having the higher traveling priority of any one of the mobile robots in the next step (f1) Wherein the plurality of mobile robots are connected to the plurality of mobile robots.
상기 (c) 단계에서 생성되는 경로와 상기 (f) 단계에서 재생성되는 경로는 다익스트라(Djikstra) 알고리즘, A* 알고리즘, D* 알고리즘 중 어느 하나에 기초하여 생성되고;
상기 (c) 단계 및 상기 (f) 단계에서 생성 및 재생성되는 경로는 해당 경로 상의 노드 및 에지의 점유 시간에 대한 정보를 포함하며;
상기 (f) 단계에서는
상기 복수의 이동 로봇에 대해 기 생성된 경로 상의 노드 및 에지의 상기 점유 시간에 따른 점유 여부가 저장되어, 경로 재생성시 해당 점유 시간에서 점유된 노드 및 에지는 경로 생성에서 배제되는 것을 특징으로 하는 복수의 이동 로봇 간의 충돌 회피를 위한 경로 생성 방법.6. The method of claim 5,
Wherein the path generated in step (c) and the path regenerated in step (f) are generated based on any one of a Djikstra algorithm, an A * algorithm, and a D * algorithm;
The paths generated and regenerated in the step (c) and the step (f) include information on occupancy times of nodes and edges on the path;
In the step (f)
Wherein the occupancy of nodes and edges on the pre-created path with respect to the plurality of mobile robots is stored according to the occupancy time, and nodes and edges occupied in the occupying time at the time of path reclamation are excluded from the path creation. A path generation method for collision avoidance between mobile robots.
상기 (f) 단계에서 재생성되는 경로가 기 등록된 대기 조건을 만족하는 경우, 해당 이동 로봇의 주행이 대기 상태로 전환되는 것을 특징으로 하는 복수의 이동 로봇의 충돌 회피를 위한 경로 생성 방법.8. The method of claim 7,
Wherein when the path regenerated in the step (f) satisfies the pre-registered waiting condition, the traveling of the mobile robot is switched to the waiting state.
상기 초기 우선 순위는 상기 복수의 이동 로봇 각각에 대해 초기에 등록된 초기 우선 순위를 포함하고;
상기 주행 우선 순위는
상기 초기 우선 순위와,
현재 상기 이동 로봇의 위치로부터 충돌이 예측되는 노드 또는 에지까지의 경로 비용이 반영된 비용 기반 우선 순위와,
상기 이동 로봇의 임무 중요도가 반영되는 임무 기반 우선 순위와,
현재 상기 이동 로봇의 위치로부터 충돌이 예측되는 노드를 제외하고 재생성될 경로의 경로 비용이 반영된 재생성 경로 기반 우선 순위와,
상기 초기 우선 수위, 상기 비용 기반 우선 순위, 임무 기반 우선 순위 및 상기 재생성 경로 기반 우선 순위 중 적어도 둘 이상의 조합에 기반한 조합 우선 순위 중 어느 하나를 포함하는 것을 특징으로 하는 복수의 이동 로봇의 충돌 회피를 위한 경로 생성 방법.8. The method of claim 7,
Wherein the initial priority includes an initial priority initially registered for each of the plurality of mobile robots;
The driving priority is
The initial priority,
A cost based priority in which a path cost from a position of the mobile robot to a node or an edge at which a collision is predicted is reflected,
A task-based priority in which the mission importance of the mobile robot is reflected,
Based on a regeneration route based priority in which a path cost of a path to be regenerated is reflected excluding a node for which a collision is predicted from a current position of the mobile robot,
And a combination priority based on at least two combinations of the initial priority level, the cost-based priority, the mission-based priority, and the regeneration path-based priority. A method for generating a route.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020140064280A KR20150137166A (en) | 2014-05-28 | 2014-05-28 | Method for planning path for avoiding collision between multi-mobile robot |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020140064280A KR20150137166A (en) | 2014-05-28 | 2014-05-28 | Method for planning path for avoiding collision between multi-mobile robot |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020160012337A Division KR101620290B1 (en) | 2016-02-01 | 2016-02-01 | Method for planning path for avoiding collision between multi-mobile robot |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR20150137166A true KR20150137166A (en) | 2015-12-09 |
Family
ID=54873134
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020140064280A Ceased KR20150137166A (en) | 2014-05-28 | 2014-05-28 | Method for planning path for avoiding collision between multi-mobile robot |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR20150137166A (en) |
Cited By (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107728609A (en) * | 2016-08-10 | 2018-02-23 | 鸿富锦精密电子(天津)有限公司 | Intelligent motion control system and intelligent motion control method |
| CN111283667A (en) * | 2020-03-18 | 2020-06-16 | 广东博智林机器人有限公司 | Robot control method and device and electronic equipment |
| CN111857149A (en) * | 2020-07-29 | 2020-10-30 | 合肥工业大学 | An Autonomous Path Planning Method Combining A* Algorithm and D* Algorithm |
| CN112749866A (en) * | 2019-10-31 | 2021-05-04 | 阿里巴巴集团控股有限公司 | Method, device and computer system for scheduling transport vehicle in physical restaurant |
| CN113172627A (en) * | 2021-04-30 | 2021-07-27 | 同济大学 | Kinematics Modeling and Distributed Control Method of Multi-Mobile Manipulator Cooperative Handling System |
| WO2021194194A1 (en) * | 2020-03-25 | 2021-09-30 | 주식회사 우아한형제들 | Multi serving robot operation method and system |
| KR20210119888A (en) * | 2020-03-25 | 2021-10-06 | 주식회사 우아한형제들 | Method and system of operating multi-serving robot |
| JP2022037191A (en) * | 2017-04-12 | 2022-03-08 | ボストン ダイナミクス,インコーポレイテッド | Road map annotation for multi-agent navigation devoid of deadlock |
| CN114179084A (en) * | 2021-12-14 | 2022-03-15 | 孙弋 | Method for rapidly establishing emergency rescue support system by adopting group robots |
| CN114347041A (en) * | 2022-02-21 | 2022-04-15 | 汕头市快畅机器人科技有限公司 | Swarm Robot Control and Pattern Generation Method |
| KR20220135139A (en) * | 2021-03-29 | 2022-10-06 | 네이버랩스 주식회사 | A building where a robot whose drive path is controlled based on the congestion level of the space moves |
| KR20220134928A (en) * | 2021-03-29 | 2022-10-06 | 네이버랩스 주식회사 | Method and system for controling driving of robot |
| WO2022234925A1 (en) * | 2021-05-06 | 2022-11-10 | 네이버랩스 주식회사 | Method and system for controlling plurality of robots traveling through designated region, and building in which robots are disposed |
| CN116225001A (en) * | 2023-01-10 | 2023-06-06 | 科沃斯机器人股份有限公司 | Method and device for avoiding multiple self-moving equipment, self-moving equipment and storage medium |
| KR102618100B1 (en) * | 2022-08-30 | 2023-12-28 | 주식회사 클로봇 | Unmanned moving object control apparatus, method and program for creating collision avoidance path between unmanned moving objects |
| WO2024063259A1 (en) * | 2022-09-20 | 2024-03-28 | 현대자동차 주식회사 | Integrated operation system for heterogeneous logistics robots and method therefor |
| KR20240057809A (en) * | 2022-10-25 | 2024-05-03 | 현대무벡스 주식회사 | Method for Controlling Driving of Moving Robot |
| WO2024117609A1 (en) * | 2022-11-30 | 2024-06-06 | 한양대학교 산학협력단 | Real-time multiple robot driving control method and system |
| WO2024242265A1 (en) * | 2023-05-19 | 2024-11-28 | 현대자동차주식회사 | Apparatus and method for predicting collision of logistics robots |
| CN119556701A (en) * | 2024-11-29 | 2025-03-04 | 华南理工大学 | A multi-robot path planning algorithm based on priority game and A3C |
| WO2025079914A1 (en) * | 2023-10-10 | 2025-04-17 | 주식회사 레인보우로보틱스 | Path finding method for operating multiple robots, and server for performing same |
| KR102853964B1 (en) * | 2025-03-21 | 2025-09-03 | (주)러셀로보틱스 | Method and apparatus for determining navigation path of automated guided vehicle based on path cost calculation |
-
2014
- 2014-05-28 KR KR1020140064280A patent/KR20150137166A/en not_active Ceased
Cited By (33)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107728609A (en) * | 2016-08-10 | 2018-02-23 | 鸿富锦精密电子(天津)有限公司 | Intelligent motion control system and intelligent motion control method |
| US11709502B2 (en) | 2017-04-12 | 2023-07-25 | Boston Dynamics, Inc. | Roadmap annotation for deadlock-free multi-agent navigation |
| JP2022037191A (en) * | 2017-04-12 | 2022-03-08 | ボストン ダイナミクス,インコーポレイテッド | Road map annotation for multi-agent navigation devoid of deadlock |
| CN112749866A (en) * | 2019-10-31 | 2021-05-04 | 阿里巴巴集团控股有限公司 | Method, device and computer system for scheduling transport vehicle in physical restaurant |
| CN111283667B (en) * | 2020-03-18 | 2023-03-28 | 广东博智林机器人有限公司 | Robot control method and device and electronic equipment |
| CN111283667A (en) * | 2020-03-18 | 2020-06-16 | 广东博智林机器人有限公司 | Robot control method and device and electronic equipment |
| US12172294B2 (en) | 2020-03-25 | 2024-12-24 | B-Robotics Co., Ltd. | Multi serving robot operation method and system |
| WO2021194194A1 (en) * | 2020-03-25 | 2021-09-30 | 주식회사 우아한형제들 | Multi serving robot operation method and system |
| KR20210119888A (en) * | 2020-03-25 | 2021-10-06 | 주식회사 우아한형제들 | Method and system of operating multi-serving robot |
| CN111857149B (en) * | 2020-07-29 | 2022-03-15 | 合肥工业大学 | An Autonomous Path Planning Method Combining A* Algorithm and D* Algorithm |
| CN111857149A (en) * | 2020-07-29 | 2020-10-30 | 合肥工业大学 | An Autonomous Path Planning Method Combining A* Algorithm and D* Algorithm |
| KR20220135139A (en) * | 2021-03-29 | 2022-10-06 | 네이버랩스 주식회사 | A building where a robot whose drive path is controlled based on the congestion level of the space moves |
| WO2022211225A1 (en) * | 2021-03-29 | 2022-10-06 | 네이버랩스 주식회사 | Method and system for controlling travelling of robot, and building where robot, having moving path thereof controlled on basis of congestion in space, travels |
| KR20220134928A (en) * | 2021-03-29 | 2022-10-06 | 네이버랩스 주식회사 | Method and system for controling driving of robot |
| CN113172627B (en) * | 2021-04-30 | 2022-07-29 | 同济大学 | Kinematic modeling and distributed control method for multi-mobile manipulator cooperative transportation system |
| CN113172627A (en) * | 2021-04-30 | 2021-07-27 | 同济大学 | Kinematics Modeling and Distributed Control Method of Multi-Mobile Manipulator Cooperative Handling System |
| WO2022234925A1 (en) * | 2021-05-06 | 2022-11-10 | 네이버랩스 주식회사 | Method and system for controlling plurality of robots traveling through designated region, and building in which robots are disposed |
| CN114179084A (en) * | 2021-12-14 | 2022-03-15 | 孙弋 | Method for rapidly establishing emergency rescue support system by adopting group robots |
| CN114179084B (en) * | 2021-12-14 | 2024-04-26 | 孙弋 | A method for quickly establishing an emergency rescue support system using group robots |
| CN114347041B (en) * | 2022-02-21 | 2024-03-08 | 汕头市快畅机器人科技有限公司 | Group robot control and pattern generation method |
| CN114347041A (en) * | 2022-02-21 | 2022-04-15 | 汕头市快畅机器人科技有限公司 | Swarm Robot Control and Pattern Generation Method |
| WO2024049023A1 (en) * | 2022-08-30 | 2024-03-07 | 주식회사 클로봇 | Unmanned moving vehicle control device, and method and program for generating collision avoidance path between unmanned moving vehicles |
| KR20240031208A (en) * | 2022-08-30 | 2024-03-07 | 주식회사 클로봇 | Service robot control device, autonomous driving method and program between service robots using avoidance route information for each destination |
| KR102618100B1 (en) * | 2022-08-30 | 2023-12-28 | 주식회사 클로봇 | Unmanned moving object control apparatus, method and program for creating collision avoidance path between unmanned moving objects |
| WO2024063259A1 (en) * | 2022-09-20 | 2024-03-28 | 현대자동차 주식회사 | Integrated operation system for heterogeneous logistics robots and method therefor |
| KR20240057809A (en) * | 2022-10-25 | 2024-05-03 | 현대무벡스 주식회사 | Method for Controlling Driving of Moving Robot |
| WO2024117609A1 (en) * | 2022-11-30 | 2024-06-06 | 한양대학교 산학협력단 | Real-time multiple robot driving control method and system |
| CN116225001A (en) * | 2023-01-10 | 2023-06-06 | 科沃斯机器人股份有限公司 | Method and device for avoiding multiple self-moving equipment, self-moving equipment and storage medium |
| WO2024242265A1 (en) * | 2023-05-19 | 2024-11-28 | 현대자동차주식회사 | Apparatus and method for predicting collision of logistics robots |
| WO2025079914A1 (en) * | 2023-10-10 | 2025-04-17 | 주식회사 레인보우로보틱스 | Path finding method for operating multiple robots, and server for performing same |
| CN119556701A (en) * | 2024-11-29 | 2025-03-04 | 华南理工大学 | A multi-robot path planning algorithm based on priority game and A3C |
| KR102853964B1 (en) * | 2025-03-21 | 2025-09-03 | (주)러셀로보틱스 | Method and apparatus for determining navigation path of automated guided vehicle based on path cost calculation |
| KR102853961B1 (en) * | 2025-03-21 | 2025-09-03 | (주)러셀로보틱스 | Method and apparatus for determining navigation path of automated guided vehicle based on path cost calculation |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR101620290B1 (en) | Method for planning path for avoiding collision between multi-mobile robot | |
| KR20150137166A (en) | Method for planning path for avoiding collision between multi-mobile robot | |
| JP7669451B2 (en) | Information processing device, information processing method, computer program, and information processing system | |
| CN107816996B (en) | AGV flow spatiotemporal interference detection and avoidance method in time-varying environment | |
| Nishi et al. | Petri net decomposition approach for dispatching and conflict-free routing of bidirectional automated guided vehicle systems | |
| JP7328923B2 (en) | Information processing device, information processing method, and computer program | |
| WO2019141221A1 (en) | Conflict management method and system for multiple mobile robots | |
| Bartlett et al. | Congestion-aware dynamic routing in automated material handling systems | |
| CN113436463B (en) | 5G-based four-way shuttle vehicle multi-vehicle scheduling method | |
| CN109782757A (en) | A kind of path dispatching method of more AGV systems based on subsection scheduling | |
| WO2019141228A1 (en) | Conflict management method and system for multiple mobile robots | |
| WO2019141222A1 (en) | Conflict management method and system for multiple mobile robots | |
| Zeng et al. | Conflict detection of automated guided vehicles: a Petri net approach | |
| CN114815824A (en) | Path planning method, path planning device, and computer-readable storage medium | |
| CN113536454B (en) | TACS system performance simulation method, device, electronic equipment and medium | |
| CN108268039A (en) | The paths planning method and system of mobile robot | |
| JP5418036B2 (en) | Carrier vehicle system and method for managing carrier vehicle system | |
| JP2020190915A (en) | Driving determination method, controller, and driving system including the controller | |
| KR101010718B1 (en) | Dynamic Driving Method of Unmanned Carrier Occupying Multiple Resources | |
| Zhao et al. | Spare zone based hierarchical motion coordination for multi-AGV systems | |
| Lu et al. | Analysis of multi-AGVs management system and key issues: A review | |
| EP3816090A1 (en) | Method for generating a trajectory for a hoisting appliance | |
| KR102397338B1 (en) | Apparatus and method for managing work plan of autonomous parking robot system | |
| CN117492440B (en) | Unmanned vehicle obstacle avoidance path planning method, device, electronic equipment and medium | |
| Nishi et al. | A practical model of routing problems for automated guided vehicles with acceleration and deceleration |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A201 | Request for examination | ||
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| D13-X000 | Search requested |
St.27 status event code: A-1-2-D10-D13-srh-X000 |
|
| D14-X000 | Search report completed |
St.27 status event code: A-1-2-D10-D14-srh-X000 |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
| AMND | Amendment | ||
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
| E601 | Decision to refuse application | ||
| PE0601 | Decision on rejection of patent |
St.27 status event code: N-2-6-B10-B15-exm-PE0601 |
|
| PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
| AMND | Amendment | ||
| E13-X000 | Pre-grant limitation requested |
St.27 status event code: A-2-3-E10-E13-lim-X000 |
|
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| E801 | Decision on dismissal of amendment | ||
| PE0601 | Decision on rejection of patent |
St.27 status event code: N-2-6-B10-B15-exm-PE0601 |
|
| PE0801 | Dismissal of amendment |
St.27 status event code: A-2-2-P10-P12-nap-PE0801 |
|
| A107 | Divisional application of patent | ||
| PA0107 | Divisional application |
St.27 status event code: A-0-1-A10-A18-div-PA0107 St.27 status event code: A-0-1-A10-A16-div-PA0107 |
|
| PC1202 | Submission of document of withdrawal before decision of registration |
St.27 status event code: N-1-6-B10-B11-nap-PC1202 |
|
| WITB | Written withdrawal of application | ||
| P22-X000 | Classification modified |
St.27 status event code: A-2-2-P10-P22-nap-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-3-3-R10-R18-oth-X000 |