KR102658913B1 - Method for controlling robot cooperation and system thereof - Google Patents
Method for controlling robot cooperation and system thereof Download PDFInfo
- Publication number
- KR102658913B1 KR102658913B1 KR1020180133333A KR20180133333A KR102658913B1 KR 102658913 B1 KR102658913 B1 KR 102658913B1 KR 1020180133333 A KR1020180133333 A KR 1020180133333A KR 20180133333 A KR20180133333 A KR 20180133333A KR 102658913 B1 KR102658913 B1 KR 102658913B1
- Authority
- KR
- South Korea
- Prior art keywords
- robot
- work
- unit area
- history information
- performance history
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000004140 cleaning Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
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/1679—Programme controls characterised by the tasks executed
- B25J9/1682—Dual arm manipulator; Coordination of several manipulators
-
- 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/1602—Programme controls characterised by the control system, structure, architecture
-
- 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
Abstract
본 발명은 로봇 협업 제어 방법 및 시스템에 관한 것으로서, 보다 구체적으로는 복수의 로봇이 복수의 단위 영역을 포함하는 작업 영역에서 작업을 수행함에 있어, 상기 복수의 로봇이 상호간에 작업을 완료한 단위 영역의 목록을 포함하는 작업 수행 내역 정보를 교환하면서 작업을 수행하도록 함으로써, 복수의 로봇이 협업을 통하여 작업을 보다 효율적으로 수행하도록 제어하는 로봇 협업 제어 방법 및 시스템에 관한 것이다.
본 발명에서는, 복수의 단위 영역을 포함하는 작업 영역에서 이동하면서 작업을 수행하는 복수의 로봇에 대한 제어 방법에 있어서, 상기 복수의 로봇 중 제1 로봇이, 상기 복수의 로봇 중 하나 이상의 제2 로봇이 작업을 완료한 단위 영역의 목록을 포함하는 제2 작업 수행 내역 정보를 수집하는 작업 수행 내역 정보 수집 단계; 상기 제1 로봇이 자신이 작업을 완료한 단위 영역의 목록을 포함하는 제1 작업 수행 내역 정보를 전송하여 상기 하나 이상의 제2 로봇이 상기 제1 작업 수행 내역 정보를 수집할 수 있도록 하는 작업 수행 내역 정보 전송 단계; 및 상기 제1 로봇이 상기 제1 작업 수행 내역 정보 및 제2 작업 수행 내역 정보를 고려하여 상기 복수의 단위 영역 중 다음으로 이동하여 작업을 수행할 단위 영역을 선정하는 이동 단위 영역 선정 단계;를 포함하는 로봇 제어 방법을 개시한다.The present invention relates to a robot collaboration control method and system, and more specifically, when a plurality of robots perform work in a work area including a plurality of unit areas, the unit area in which the plurality of robots complete the work with each other It relates to a robot collaboration control method and system that controls a plurality of robots to perform tasks more efficiently through collaboration by performing tasks while exchanging task performance history information including a list of.
In the present invention, in a control method for a plurality of robots that perform work while moving in a work area including a plurality of unit areas, a first robot among the plurality of robots is one or more second robots among the plurality of robots. A task performance history information collection step of collecting second task performance history information including a list of unit areas in which this task has been completed; Work performance history in which the first robot transmits first work performance history information including a list of unit areas in which the first robot has completed the work so that the one or more second robots can collect the first work performance history information. information transfer step; And a movement unit area selection step in which the first robot moves to the next unit area among the plurality of unit areas and selects a unit area to perform work in consideration of the first task performance history information and the second task performance history information. A robot control method is disclosed.
Description
본 발명은 로봇 협업 제어 방법 및 시스템에 관한 것으로서, 보다 구체적으로는 복수의 로봇이 복수의 단위 영역을 포함하는 작업 영역에서 작업을 수행함에 있어, 상기 복수의 로봇이 상호간에 작업을 완료한 단위 영역의 목록을 포함하는 작업 수행 내역 정보를 교환하면서 작업을 수행하도록 함으로써, 복수의 로봇이 협업을 통하여 작업을 보다 효율적으로 수행하도록 제어하는 로봇 협업 제어 방법 및 시스템에 관한 것이다.The present invention relates to a robot collaboration control method and system, and more specifically, when a plurality of robots perform work in a work area including a plurality of unit areas, the unit area in which the plurality of robots complete the work with each other It relates to a robot collaboration control method and system that controls a plurality of robots to perform tasks more efficiently through collaboration by performing tasks while exchanging task performance history information including a list of.
로봇의 대중화에 따라 여러 분야에서 로봇을 활용하여 다양한 서비스를 제공하는 시도가 이루어지고 있다. 보다 구체적인 예를 들어, 이미 폭넓게 사용되고 있는 로봇 청소기를 비롯하여, 공항이나 대형 쇼핑몰 등에서 고객을 응대하는 고객 응대 로봇, 건물 등을 돌아다니면서 위험 인자를 발견하거나 처리하는 보안 경비 로봇 등 로봇을 활용한 다양한 서비스가 이미 활용되고 있거나 시도되고 있는 상황이다.As robots become more popular, attempts are being made to provide various services using robots in various fields. More specific examples include robot vacuum cleaners that are already widely used, customer service robots that serve customers at airports and large shopping malls, and security guard robots that detect or deal with risk factors while moving around buildings, among other services utilizing robots. is already being used or is being attempted.
나아가, 최근에는 개별 로봇 단위의 작업 수행에서 더 나아가 복수의 로봇 간의 협업을 통해 작업 효율을 높이거나 작업 영역을 확장하는 등, 복수의 로봇이 서로 협력하여 작업하도록 제어하는 시도도 이루어지고 있다.Furthermore, in recent years, attempts have been made to control multiple robots to work in cooperation with each other, such as increasing work efficiency or expanding work areas through collaboration between multiple robots, going beyond task performance by individual robots.
이때, 복수의 로봇이 공동의 작업 공간에서 협력하면서 작업을 수행하는 경우, 상기 복수의 로봇은 다른 로봇의 이동 경로 및 이에 따른 작업 완료 영역에 대한 정보를 고려하여 작업을 수행하여야 동일 영역에 대한 중복 작업을 방지하고 로봇의 이동 경로를 최적화하는 등 작업 효율을 높일 수 있어 상호간에 이동 경로 등을 포함하는 작업 수행 내역에 관한 정보 교환이 필요하게 된다.At this time, when multiple robots perform work while cooperating in a common workspace, the multiple robots must perform work by considering information about the movement path of other robots and the resulting work completion area to avoid duplication of the same area. Work efficiency can be increased by preventing work and optimizing the robot's movement path, so it becomes necessary to exchange information on work performance history, including movement paths.
이에 따라, 공동의 작업 공간에서 복수의 로봇이 상호간에 이동 경로를 포함하는 작업 수행 내역 정보를 교환하면서 서로 협력하여 작업을 수행하도록 제어하기 위한 방안이 요구되고 있으나, 아직 이에 대한 적절한 해법이 제시되지 못하고 있다. Accordingly, there is a need for a method to control multiple robots in a common workspace to cooperate and perform tasks while exchanging task performance history information, including movement paths, with each other. However, an appropriate solution has not yet been proposed. I'm not able to do it.
본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위해 창안된 것으로, 공동의 작업 공간에서 복수의 로봇이 협력하면서 작업을 수행하는 경우, 상기 복수의 로봇이 다른 로봇의 이동 경로 및 이에 따른 작업 완료 영역에 대한 정보를 고려하면서 작업을 수행하여 동일 영역에 대한 중복 작업을 방지하고 로봇의 이동 경로를 최적화하는 등 작업 효율을 높일 수 있는 로봇 협업 제어 방법 및 시스템을 제공하는 것을 목적으로 한다.The present invention was created to solve the problems of the prior art as described above. When a plurality of robots cooperate and perform work in a common work space, the plurality of robots determines the movement path of other robots and completes the work accordingly. The purpose is to provide a robot collaboration control method and system that can increase work efficiency by performing work while considering information about the area, preventing duplicate work in the same area and optimizing the robot's movement path.
그 외 본 발명의 세부적인 목적은 아래에 기재되는 구체적인 내용을 통하여 이 기술 분야의 전문가나 연구자에게 자명하게 파악되고 이해될 수 있을 것이다.In addition, the detailed purpose of the present invention can be clearly understood and understood by experts or researchers in this technical field through the specific contents described below.
상기 과제를 해결하기 위한 본 발명의 한 측면에 따른 로봇 제어 방법은, 복수의 단위 영역을 포함하는 작업 영역에서 이동하면서 작업을 수행하는 복수의 로봇에 대한 제어 방법에 있어서, 상기 복수의 로봇 중 제1 로봇이, 상기 복수의 로봇 중 하나 이상의 제2 로봇이 작업을 완료한 단위 영역의 목록을 포함하는 제2 작업 수행 내역 정보를 수집하는 작업 수행 내역 정보 수집 단계; 상기 제1 로봇이 자신이 작업을 완료한 단위 영역의 목록을 포함하는 제1 작업 수행 내역 정보를 전송하여 상기 하나 이상의 제2 로봇이 상기 제1 작업 수행 내역 정보를 수집할 수 있도록 하는 작업 수행 내역 정보 전송 단계; 및 상기 제1 로봇이 상기 제1 작업 수행 내역 정보 및 제2 작업 수행 내역 정보를 고려하여 상기 복수의 단위 영역 중 다음으로 이동하여 작업을 수행할 단위 영역을 선정하는 이동 단위 영역 선정 단계;를 포함하는 것을 특징으로 한다.A robot control method according to one aspect of the present invention for solving the above problem is a control method for a plurality of robots that perform work while moving in a work area including a plurality of unit areas, wherein the first of the plurality of robots A task performance history information collection step in which a first robot collects second task performance history information including a list of unit areas in which one or more second robots among the plurality of robots have completed tasks; Work performance history in which the first robot transmits first work performance history information including a list of unit areas in which the first robot has completed the work so that the one or more second robots can collect the first work performance history information. information transfer step; And a movement unit area selection step in which the first robot moves to the next unit area among the plurality of unit areas and selects a unit area to perform work in consideration of the first task performance history information and the second task performance history information. It is characterized by:
이때, 상기 작업 수행 내역 정보 수집 단계에서, 상기 제1 로봇은 중계 서버로부터 상기 제2 작업 수행 내역 정보를 수신하고, 상기 작업 수행 내역 정보 전송 단계에서, 상기 제1 로봇은 상기 중계 서버로 상기 제1 작업 수행 내역 정보를 전송하여 상기 하나 이상의 제2 로봇으로 전달하도록 할 수 있다.At this time, in the task performance history information collection step, the first robot receives the second task performance history information from the relay server, and in the task performance history information transmission step, the first robot receives the second task performance history information from the relay server. 1 Work performance history information can be transmitted to the one or more second robots.
여기서, 상기 중계 서버는, 상기 제1 작업 수행 내역 정보 및 상기 제2 작업 수행 내역 정보를 병합한 전체 작업 수행 내역 정보를 생성하여 상기 제1 로봇 및 상기 제2 로봇으로 전송할 수 있다.Here, the relay server may generate overall task performance details information that merges the first task performance details information and the second task performance details information and transmit it to the first robot and the second robot.
또한, 상기 제1 로봇은, 하나의 단위 영역에 대한 작업을 완료한 시점 마다 상기 제1 작업 수행 내역 정보를 전송할 수 있다.Additionally, the first robot may transmit the first task performance history information whenever the task for one unit area is completed.
또한, 상기 제1 작업 수행 내역 정보와 상기 제2 작업 수행 내역 정보는, 작업을 완료한 단위 영역에 대한 정보와 함께 작업을 완료할 수 없었던 단위 영역에 대한 정보도 포함할 수 있다.In addition, the first task performance history information and the second task performance history information may include information about the unit area in which the task could not be completed along with information about the unit area in which the task was not completed.
이때, 상기 제1 로봇은, 자신에게 할당된 모든 단위 영역에 대한 작업을 완료한 후, 상기 작업을 완료할 수 없었던 단위 영역으로 이동하여 다시 작업을 수행할 수 있다.At this time, after completing the work for all unit areas assigned to the first robot, the first robot may move to the unit area in which it was unable to complete the work and perform the work again.
또한, 상기 이동 단위 영역 선정 단계에서, 상기 제1 로봇과 상기 제2 로봇은 미리 정해진 이동 규칙에 따라 다음으로 이동하여 작업을 수행할 단위 영역을 선정하며, 이때 상기 제1 로봇은 상기 이동 규칙에 따라 상기 제1 로봇과 상기 제2 로봇이 이동할 것으로 예측되는 단위 영역을 고려하여 상기 제1 로봇이 이동할 단위 영역을 결정할 수 있다.Additionally, in the movement unit area selection step, the first robot and the second robot select a unit area to next move and perform work according to a predetermined movement rule, and at this time, the first robot follows the movement rule. Accordingly, the unit area in which the first robot will move can be determined by considering the unit area in which the first robot and the second robot are expected to move.
나아가, 상기 제1 로봇이 이동할 것으로 예측되는 단위 영역으로 인해 의해 상기 제2 로봇이 기작업된 단위 영역을 거쳐 작업을 수행할 단위 영역으로 이동하여야 하는 경우, 상기 제1 로봇은 자신이 이동할 단위 영역을 변경하여 상기 제2 로봇이 기작업된 단위 영역을 거치지 않고 다음 단위 영역으로 이동할 수 있도록 할 수 있다.Furthermore, if the second robot must move to the unit area where work will be performed via the already worked unit area due to the unit area where the first robot is expected to move, the first robot must move to the unit area where it will move. can be changed to allow the second robot to move to the next unit area without passing through the previously worked unit area.
또한, 상기 이동 단위 영역 선정 단계에서, 상기 제1 로봇은 자신에게 할당된 모든 단위 영역에 대한 작업을 완료한 후, 상기 제2 로봇의 잔여 단위 영역까지의 이동 시간과 상기 제2 로봇의 잔여 단위 영역에 대한 작업 수행 시간을 비교하여, 상기 잔여 단위 영역까지의 이동 시간이 짧은 경우에 한하여 상기 잔여 단위 영역으로 이동하여 작업을 수행할 수 있다.In addition, in the movement unit area selection step, after the first robot completes work on all unit areas assigned to it, the movement time to the remaining unit area of the second robot and the remaining unit area of the second robot are calculated. By comparing the work execution time for each area, the work can be performed by moving to the remaining unit area only if the travel time to the remaining unit area is short.
또한, 본 발명의 다른 측면에 따른 로봇 제어 시스템은, 복수의 단위 영역을 포함하는 작업 영역에서 이동하면서 작업을 수행하는 복수의 로봇에 대한 제어 시스템에 있어서, 자신이 작업을 완료한 단위 영역의 목록을 포함하는 제2 작업 수행 내역 정보를 전송하는 하나 이상의 제2 로봇; 및 상기 제2 작업 수행 내역 정보를 수신하고, 자신이 작업을 완료한 단위 영역의 목록을 포함하는 제1 작업 수행 내역 정보를 함께 고려하여 상기 복수의 단위 영역 중 다음으로 이동하여 작업을 수행할 단위 영역을 선정하는 제1 로봇;을 포함하며, 상기 제1 로봇은 상기 제1 작업 수행 내역 정보를 전송하여 상기 하나 이상의 제2 로봇이 상기 제1 작업 수행 내역 정보를 수집할 수 있도록 하는 것을 특징으로 한다.In addition, the robot control system according to another aspect of the present invention is a control system for a plurality of robots that perform work while moving in a work area including a plurality of unit areas, and includes a list of unit areas in which the robot has completed work. One or more second robots transmitting second task performance history information including; and a unit that receives the second task performance history information and moves to the next of the plurality of unit areas to perform the task by considering the first task performance history information including a list of unit areas in which the task has been completed. It includes a first robot that selects an area, wherein the first robot transmits the first task performance history information so that the one or more second robots can collect the first task performance history information. do.
이때, 상기 제1 로봇으로부터 상기 제1 작업 수행 내역 정보를 수신하여 상기 제2 로봇으로 전달하며, 상기 제2 로봇으로부터 상기 제2 작업 수행 내역 정보를 수신하여 상기 제1 로봇으로 전달하는 중계 서버를 더 포함할 수 있다.At this time, a relay server that receives the first task performance history information from the first robot and transmits it to the second robot, and receives the second task performance history information from the second robot and transmits it to the first robot. More may be included.
나아가, 상기 중계 서버는, 상기 제1 작업 수행 내역 정보 및 상기 제2 작업 수행 내역 정보를 병합한 전체 작업 수행 내역 정보를 생성하여 상기 제1 로봇 및 상기 제2 로봇으로 전송할 수 있다.Furthermore, the relay server may generate overall task performance details information that merges the first task performance details information and the second task performance details information and transmit it to the first robot and the second robot.
이에 따라, 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템에서는, 복수의 단위 영역을 포함하는 작업 공간에서 복수의 로봇이 협력하면서 작업을 수행하는 경우, 상기 복수의 로봇이 상호간에 작업을 완료한 단위 영역의 목록을 포함하는 작업 수행 내역 정보를 교환하면서 작업을 수행하도록 함으로써, 상기 복수의 로봇이 다른 로봇의 이동 경로 및 이에 따른 작업 완료 영역에 대한 정보를 고려해 이동하면서 작업을 수행하여 동일 영역에 대한 중복 작업을 방지하고 로봇의 이동 경로를 최적화하는 등 작업 효율을 높일 수 있게 된다.Accordingly, in the robot control method and system according to an embodiment of the present invention, when a plurality of robots cooperate and perform work in a work space including a plurality of unit areas, the plurality of robots complete the work with each other. By performing work while exchanging work performance history information including a list of one unit area, the plurality of robots perform work while moving in consideration of information about the movement path of other robots and the corresponding work completion area, thereby performing work in the same area. Work efficiency can be increased by preventing duplicate work and optimizing the robot's movement path.
본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부도면은 본 발명에 대한 실시예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 사상을 설명한다.
도 1은 본 발명의 일 실시예에 따른 로봇 제어 방법의 순서도이다.
도 2는 본 발명의 일 실시예에 따른 로봇 제어 시스템의 구성도이다.
도 3과 도 4는 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템의 동작을 설명하기 위한 도면이다.
도 5 내지 도 7은 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템에서 단위 영역의 작업을 설명하는 도면이다.
도 8은 본 발명의 일 실시예에 따른 로봇 제어 방법의 구체적인 순서도를 예시하는 도면이다.
도 9 내지 도 10은 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템에서 다른 로봇의 경로를 고려하여 이동 경로를 선정하는 알고리즘을 설명하는 도면이다.The accompanying drawings, which are included as part of the detailed description to aid understanding of the present invention, provide embodiments of the present invention and explain the technical idea of the present invention together with the detailed description.
1 is a flowchart of a robot control method according to an embodiment of the present invention.
Figure 2 is a configuration diagram of a robot control system according to an embodiment of the present invention.
Figures 3 and 4 are diagrams for explaining the operation of a robot control method and system according to an embodiment of the present invention.
5 to 7 are diagrams illustrating operations of a unit area in a robot control method and system according to an embodiment of the present invention.
Figure 8 is a diagram illustrating a specific flow chart of a robot control method according to an embodiment of the present invention.
Figures 9 and 10 are diagrams illustrating an algorithm for selecting a movement path by considering the paths of other robots in a robot control method and system according to an embodiment of the present invention.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 이하에서는 특정 실시예들을 첨부된 도면을 기초로 상세히 설명하고자 한다.The present invention can be modified in various ways and can have various embodiments. Hereinafter, specific embodiments will be described in detail based on the accompanying drawings.
이하의 실시예는 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.The following examples are provided to provide a comprehensive understanding of the methods, devices and/or systems described herein. However, this is only an example and the present invention is not limited thereto.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시 예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다. In describing the embodiments of the present invention, if it is determined that a detailed description of the known technology related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description will be omitted. In addition, the terms described below are terms defined in consideration of functions in the present invention, and may vary depending on the intention or custom of the user or operator. Therefore, the definition should be made based on the contents throughout this specification. The terminology used in the detailed description is only for describing embodiments of the present invention and should in no way be limiting. Unless explicitly stated otherwise, singular forms include plural meanings. In this description, expressions such as “comprising” or “comprising” are intended to indicate certain features, numbers, steps, operations, elements, parts or combinations thereof, and one or more than those described. It should not be construed to exclude the existence or possibility of any other characteristic, number, step, operation, element, or part or combination thereof.
또한, 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되는 것은 아니며, 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.In addition, terms such as first, second, etc. may be used to describe various components, but the components are not limited by the terms, and the terms are used for the purpose of distinguishing one component from another component. It is used only as
아래에서는, 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템에 대한 예시적인 실시 형태들을 첨부된 도면을 참조하여 차례로 설명한다.Below, exemplary embodiments of a robot control method and system according to an embodiment of the present invention will be sequentially described with reference to the attached drawings.
먼저, 도 1에서는 본 발명의 일 실시예에 따른 로봇 제어 방법의 순서도가 도시되어 있다. 도 1에서 볼 수 있는 바와 같이, 본 발명의 일 실시예에 따른 로봇 제어 방법은, 복수의 단위 영역을 포함하는 작업 영역에서 이동하면서 작업을 수행하는 복수의 로봇에 대한 제어 방법으로서, 상기 복수의 로봇 중 제1 로봇(100)이, 상기 복수의 로봇 중 하나 이상의 제2 로봇(200)이 작업을 완료한 단위 영역의 목록을 포함하는 제2 작업 수행 내역 정보를 수집하는 작업 수행 내역 정보 수집 단계(S110), 상기 제1 로봇(100)이 자신이 작업을 완료한 단위 영역의 목록을 포함하는 제1 작업 수행 내역 정보를 전송하여 상기 하나 이상의 제2 로봇(200)이 상기 제1 작업 수행 내역 정보를 수집할 수 있도록 하는 작업 수행 내역 정보 전송 단계(S120) 및 상기 제1 로봇(100)이 상기 제1 작업 수행 내역 정보 및 제2 작업 수행 내역 정보를 고려하여 상기 복수의 단위 영역 중 다음으로 이동하여 작업을 수행할 단위 영역을 선정하는 이동 단위 영역 선정 단계(S300)를 포함하게 된다.First, Figure 1 shows a flowchart of a robot control method according to an embodiment of the present invention. As can be seen in FIG. 1, the robot control method according to an embodiment of the present invention is a control method for a plurality of robots that perform work while moving in a work area including a plurality of unit areas, wherein the plurality of robots A task performance history information collection step in which a
이때, 상기 제1 로봇(100)과 제2 로봇(200)을 포함하는 상기 복수의 로봇은 상호간에 작업을 완료한 단위 영역의 목록을 포함하는 작업 수행 내역 정보를 교환하면서 작업을 수행하도록 함으로써, 상기 복수의 로봇이 다른 로봇의 이동 경로 및 이에 따른 작업이 완료된 단위 영역에 대한 정보를 고려해 이동하면서 작업을 수행하여 동일 영역에 대한 중복 작업을 방지하고 로봇의 이동 경로를 최적화하는 등 작업 효율을 높일 수 있게 된다.At this time, the plurality of robots, including the
또한, 도 2에서는 본 발명의 일 실시예에 따른 로봇 제어 시스템(10)의 구성도가 도시되어 있다. 도 2에서 볼 수 있는 바와 같이, 본 발명의 일 실시예에 따른 로봇 제어 시스템(10)은, 복수의 단위 영역을 포함하는 작업 영역에서 이동하면서 작업을 수행하는 복수의 로봇에 대한 제어 시스템으로서, 자신이 작업을 완료한 단위 영역의 목록을 포함하는 제2 작업 수행 내역 정보를 전송하는 하나 이상의 제2 로봇(200) 및 상기 제2 작업 수행 내역 정보를 수신하고, 자신이 작업을 완료한 단위 영역의 목록을 포함하는 제1 작업 수행 내역 정보를 함께 고려하여 상기 복수의 단위 영역 중 다음으로 이동하여 작업을 수행할 단위 영역을 선정하는 제1 로봇(100)을 포함하며 구성될 수 있다.In addition, Figure 2 shows a configuration diagram of the
이때, 상기 제1 로봇(100)은 상기 제1 작업 수행 내역 정보를 전송하여 상기 하나 이상의 제2 로봇(200)이 상기 제1 작업 수행 내역 정보를 수집할 수 있도록 하게 된다.At this time, the
나아가, 본 발명의 일 실시예에 따른 로봇 제어 시스템(10)에는, 상기 제1 로봇(100)으로부터 상기 제1 작업 수행 내역 정보를 수신하여 상기 제2 로봇(200)으로 전달하며, 또한 상기 제2 로봇(200)으로부터 상기 제2 작업 수행 내역 정보를 수신하여 상기 제1 로봇(100)으로 전달하는 중계 서버(500)를 더 포함할 수 있다. 이때, 상기 중계 서버(500)는, 상기 제1 작업 수행 내역 정보 및 상기 제2 작업 수행 내역 정보를 병합한 전체 작업 수행 내역 정보를 생성하여 상기 제1 로봇(100) 및 상기 제2 로봇(200)으로 전송할 수 있다.Furthermore, the
이하, 도 1 및 도 2를 참조하여 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템(10)을 각 구성별로 나누어 보다 자세하게 살핀다.Hereinafter, with reference to FIGS. 1 and 2, the robot control method and
먼저, 상기 작업 수행 내역 정보 수집 단계(S110)에서는, 상기 복수의 로봇 중 제1 로봇(100)이, 상기 복수의 로봇 중 하나 이상의 제2 로봇(200)이 작업을 완료한 단위 영역의 목록을 포함하는 제2 작업 수행 내역 정보를 수집하게 된다.First, in the work performance history information collection step (S110), the
여기서, 상기 제1 로봇(100)과 제2 로봇(200)은 모터 등을 구비하여 상기 작업 영역 내에서 이동하면서 주어진 작업을 수행하는 로봇 청소기, 고객 응대 로봇, 보안 경비 로봇 등 다양한 종류의 로봇일 수 있다.Here, the
또한, 상기 작업 영역은 복수의 단위 영역을 포함하여 구성될 수 있으며, 상기 제1 로봇(100)과 제2 로봇(200)은 이동하면서 상기 단위 영역 별로 작업을 수행하게 된다. Additionally, the work area may include a plurality of unit areas, and the
이를 위하여, 상기 제1 로봇(100)은 상기 작업 영역에 대한 지도 정보를 구비하여 상기 작업 영역에서 이동하면서 작업을 수행할 수 있다. 이때, 상기 작업 영역에 대한 지도 정보는 상기 제1 로봇(100)이 상기 작업 영역을 주행하면서 스스로 생성한 지도 정보일 수 있고, 또는 복수의 로봇 중 다른 로봇이 생성한 지도 정보를 전달받을 수도 있으며, 상기 중계 서버(500)로부터 상기 작업 영역에 대한 지도 정보를 전송 받아 사용하는 것도 가능하다.To this end, the
이에 따라, 상기 복수의 로봇 중 제1 로봇(100)과 제2 로봇(200)은 상기 작업 영역에 대한 지도 정보를 공유하고, 상기 작업 영역에 대하여 동일한 작업을 협력하여 수행하게 된다. 나아가, 상기 제1 로봇(100)과 제2 로봇(200)은 상기 지도 정보의 특이점을 이용하여 상기 작업 영역 상에서의 자신의 위치를 인식하고 상기 단위 영역 간을 이동하면서 주어진 작업을 수행할 수 있게 된다.Accordingly, the
보다 구체적인 예로서, 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템(10)에서는, 도 3에서 볼 수 있는 바와 같이, 중계 서버(500)는 사용자의 지시에 따라 복수의 로봇에게 상기 작업 영역에 대한 작업을 수행할 것을 명령할 수 있다. 이때, 상기 중계 서버(500)는 보다 효율적인 작업 수행을 위해 상기 복수의 로봇 중 일부 또는 전부의 로봇에게 작업 영역을 분할하여 할당할 수도 있다.As a more specific example, in the robot control method and
또한, 상기 중계 서버(500)는 상기 작업 영역에 대한 지도 정보를 상기 복수의 로봇에게 전송해 줄 수도 있다. 이때, 상기 작업 영역에 대한 지도 정보는 자율 주행이 가능한 관리 로봇(300)이 상기 작업 영역을 자율 주행하면서 생성한 지도 정보일 수도 있다. 나아가, 상기 작업 영역에 대한 지도 정보는 상기 제1 로봇(100)이 생성할 수도 있다. 이때, 상기 지도 정보는 상기 중계 서버(500)를 통해 상기 복수의 로봇에게 전송될 수 있으며, 나아가 상기 로봇 간에 직접 무선 통신 등을 통하여 상기 지도 정보를 공유할 수도 있다.Additionally, the
이때, 상기 제1 로봇(100)과 상기 제2 로봇(200)은 하나의 단위 영역에 대한 작업을 완료한 시점 마다 상기 제1 작업 수행 내역 정보를 전송할 수 있으며, 이에 따라 다른 로봇이 실시간으로 상기 제1 로봇(100)과 제2 로봇(200)의 작업 수행 내역을 갱신하여 보다 효율적으로 작업을 수행할 수 있게 된다. 그러나, 본 발명이 반드시 이에 한정되는 것은 아니며, 이외에 상기 제1 로봇(100)과 상기 제2 로봇(200)은 미리 정해진 주기에 따라 작업을 완료한 단위 영역에 대한 정보를 포함하는 작업 수행 내역 정보를 전송하여 다른 로봇에게 공유하거나, 상기 중계 서버(500)가 요청하는 시점에 상기 작업 수행 내역 정보를 전송할 수도 있다.At this time, the
나아가, 상기 제1 작업 수행 내역 정보와 상기 제2 작업 수행 내역 정보에는 작업을 완료한 단위 영역에 대한 정보와 함께 작업을 완료할 수 없었던 단위 영역에 대한 정보도 포함될 수 있다. Furthermore, the first task performance history information and the second task performance history information may include information on the unit area in which the task was not completed as well as information on the unit area in which the task could not be completed.
보다 구체적인 예를 들어, 상기 제1 로봇(100)이 상기 작업 영역에서 작업을 수행하는 중 특정한 단위 영역에 장애물이 위치하여 작업을 수행하지 못한 경우, 상기 특정한 단위 구역에서는 작업을 완료하지 못하였다는 정보도 함께 포함하여 제1 작업 수행 내역 정보를 생성할 수 있다.For a more specific example, if the
이에 따라, 상기 제1 로봇(100)은 자신에게 할당된 모든 단위 영역에 대한 작업을 완료한 후, 상기 작업을 완료할 수 없었던 단위 영역으로 이동하여 다시 작업을 수행할 수도 있게 된다.Accordingly, after completing the work for all unit areas assigned to the
다음으로, 상기 작업 수행 내역 정보 전송 단계(S120)에서는, 상기 제1 로봇(100)이 자신이 작업을 완료한 단위 영역의 목록을 포함하는 제1 작업 수행 내역 정보를 전송하여 상기 하나 이상의 제2 로봇(200)이 상기 제1 작업 수행 내역 정보를 수집할 수 있도록 하게 된다.Next, in the work performance history information transmission step (S120), the
이에 따라, 상기 제1 로봇(100)뿐만 아니라 상기 제2 로봇(200)도 제1 로봇(100) 등 다른 로봇이 작업을 완료한 단위 영역을 고려하여 작업을 수행할 단위 영역을 선정하도록 함으로써, 상기 제1 로봇(100)과 상기 제2 로봇(200)이 서로간의 작업 수행 내역을 고려하면서 협력하여 작업을 수행하도록 함으로써, 상기 작업 영역에 대한 작업을 보다 효율적으로 수행할 수 있게 된다.Accordingly, not only the
이때, 상기 제1 로봇(100)은 상기 제1 작업 수행 내역 정보를 무선 통신 등을 통하여 직접 상기 제2 로봇(200)으로 전송할 수도 있으며, 상기 중계 서버(500)를 경유하여 상기 제1 작업 수행 내역 정보를 상기 제2 로봇(200)으로 전달할 수도 있다.At this time, the
마지막으로, 상기 이동 단위 영역 선정 단계(S130)에서는, 상기 제1 로봇(100)이 상기 제1 작업 수행 내역 정보 및 제2 작업 수행 내역 정보를 고려하여 상기 복수의 단위 영역 중 다음으로 이동하여 작업을 수행할 단위 영역을 선정하게 된다.Finally, in the movement unit area selection step (S130), the
나아가, 상기 제1 로봇(100) 뿐만 아니라 상기 제2 로봇(200)을 포함하는 복수의 로봇이 다른 로봇의 작업 수행 내역 정보를 고려하여 상기 복수의 단위 영역 중 다음으로 이동하여 작업을 수행할 단위 영역을 선정하게 된다.Furthermore, a plurality of robots, including the
이에 따라, 도 4에서 볼 수 있는 바와 같이, 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템(10)에서는, 상기 제1 로봇(100) 및 제2 로봇(200)을 포함하는 복수의 로봇이 중계 서버(500) 등으로부터 전송된 지도 정보를 이용하여 작업 영역을 주행하면서 각 단위 영역에서 작업을 수행하게 되며, 이때 상기 제1 로봇(100) 및 제2 로봇(200)을 포함하는 복수의 로봇이 상호간에 작업을 완료한 단위 영역의 목록을 포함하는 작업 수행 내역 정보를 교환하면서 작업을 수행하도록 함으로써, 상기 복수의 로봇이 다른 로봇의 이동 경로 및 이에 따른 작업 완료 영역에 대한 정보를 고려하면서 작업을 수행하여 동일 영역에 대한 중복 작업을 방지하고 로봇의 이동 경로를 최적화하는 등 작업 효율을 높일 수 있게 된다.Accordingly, as can be seen in FIG. 4, in the robot control method and
또한, 도 5 내지 도 7에서는 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템(10)의 단위 영역에서의 작업을 보다 자세하게 설명하는 도면이 예시되어 있다. In addition, FIGS. 5 to 7 illustrate diagrams illustrating in more detail operations in a unit area of the robot control method and
아래에서는, 상기 로봇으로서 로봇 청소기의 경우를 들어 설명하고 있으나, 본 발명이 이에 한정되는 것은 아니다.Below, the description is given by taking the case of a robot vacuum cleaner as the robot, but the present invention is not limited thereto.
먼저, 도 5(a)에서는 상기 제1 로봇(100)의 최초 주행에 의하여 생성된 작업 영역에 대한 지도 정보를 예시하고 있다. 상기 생성된 지도 정보는 상기 중계 서버(500) 등을 통해 상기 제2 로봇(200)에게 공유되어 사용될 수 있다.First, Figure 5(a) illustrates map information about the work area created by the initial run of the
이때, 상기 지도 정보에서 사용되는 각 항목들의 일람표를 예시하면 다음 표 1과 같다.At this time, an example list of each item used in the map information is shown in Table 1 below.
이에 따라, 상기 제1 로봇(100)에 의해 생성된 지도 정보에는, 도 5(a)에서 볼 수 있는 바와 같이, 상기 제1 로봇(100)의 주행을 통해 탐색된(Explored) 벽 등의 구조물이 "1"로 표시되었고, 작업이 가능한 복수의 단위 영역은 "0"으로 표시되었다.Accordingly, the map information generated by the
또한, 상기 제1 로봇(100)과 상기 제2 로봇(200)은 각 단위 영역을 이동하여 작업을 수행하면서 청소한(Cleaned) 단위 영역은 "*2"로 표시하고, 장애물(Obstacle) 등이 위치하여 청소를 수행하지 못한 단위 영역은 "*4"로 표시하게 된다. 이때, 상기 제1 로봇(100)과 상기 제2 로봇(200)에 의해 상기 작업 영역에서 작업이 수행되었음을 식별하기 위하여 상기 "*2", "*4"에 상기 제1 로봇(100)과 상기 제2 로봇(200)을 나타내는 인덱스(예를 들어, 각각 1,2)를 추가할 수 있다.In addition, while the
또한, 도 5(b)에서는 상기 작업 영역에서 청소를 개시하는 상기 제1 로봇(100)의 시작 위치(1020)와 상기 제2 로봇(200)의 시작 위치(1010)을 표시하고 있다.In addition, FIG. 5(b) shows the
이어서, 상기 제1 로봇(100)과 상기 제2 로봇(200)이 작업을 진행하면, 상기 제1 로봇(100)과 상기 제2 로봇(200)은 각 단위 영역에 대한 청소를 수행한 후 미리 정해진 이동 규칙에 따라 다음 단위 영역으로 이동할 수 있다. 예를 들어, 상기 이동 규칙으로서, 좌측 벽면을 따라 이동하도록 규칙이 사용될 수 있다.Subsequently, when the
이에 따라, 도 6(a)에서 볼 수 있는 바와 같이, 상기 제1 로봇(100)과 상기 제2 로봇(200)이 3개의 단위 영역에 대한 작업을 완료하면, 상기 이동 규칙에 따라 상기 제1 로봇(100)은 좌측 벽면을 따라 계속 직진하면서 각 단위 영역에 대한 작업 수행 내역(도 6(a)의 "12")을 기록하게 되며(1040) 상기 제2 로봇(200)은 벽면을 만나면서 우회전하여 좌측 벽면을 따라 이동하면서 각 단위 영역에 대한 작업 수행 내역(도 6(a)의 "22")을 기록하는 것을 알 수 있다(1030).Accordingly, as can be seen in FIG. 6(a), when the
또한, 도 6(b)에서는 상기 제1 로봇(100)이 장애물(1050)을 만나는 경우를 예시하고 있는데, 이때에도 상기 제1 로봇(100)은 상기 장애물(1050)을 좌측 벽면으로 인식하여 이동하면서 상기 장애물(1050)이 위치하는 단위 영역에 대한 작업 수행 내역(도 6(a)의 "14")을 기록하게 된다.In addition, Figure 6(b) illustrates a case where the
이어서, 도 7(c)에서 볼 수 있는 바와 같이, 상기 제1 로봇(100)과 상기 제2 로봇(200)이 11개의 단위 영역에 대한 작업을 완료하면, 상기 제2 로봇(200)은 자신이 수행하고 있는 단위 영역의 전부에 대한 청소 작업을 완료하게 되는 반면, 상기 제1 로봇(100)은 여전히 청소 작업을 수행하여야 하는 7개의 잔여 단위 영역이 남을 수 있게 된다.Subsequently, as can be seen in FIG. 7(c), when the
이러한 경우, 상기 제2 작업 로봇(200)이 상기 잔여 단위 영역까지의 이동하는데 소요되는 시간과 상기 제1 로봇(100)이 상기 잔여 단위 영역에서 작업을 수행하는데 소요되는 시간을 비교하여, 상기 잔여 단위 영역까지의 이동 시간이 짧은 경우에 한하여 상기 잔여 단위 영역으로 이동하여 작업을 수행하도록 할 수 있다.In this case, the time it takes for the
이에 따라, 도 7(c)의 경우를 살펴보면, 상기 제2 로봇(200)이 자신에게 할당된 모든 단위 영역(1060)에 대한 작업을 완료한 후, 상기 잔여 단위 영역(1080)으로 이동하기 위해서는 8개의 단위 영역을 이동하여야 하는 반면(1070), 상기 제1 로봇(100)은 7개의 단위 영역을 이동하면 작업을 완료할 수 있는 바(1090), 결국 상기 제2 로봇(200)은, 도 7(d)에서 볼 수 있는 바와 같이, 상기 잔여 단위 영역(1080)으로 이동하지 않고 초기 위치로 복귀하여 작업을 종료하고, 상기 제1 로봇(100)이 상기 잔여 단위 영역에 대한 청소를 수행하도록 할 수 있다.Accordingly, looking at the case of FIG. 7(c), after the
또한, 도 8에서는 본 발명의 일 실시예에 따른 로봇 제어 방법의 보다 구체적인 순서도를 예시하고 있다.Additionally, Figure 8 illustrates a more detailed flowchart of the robot control method according to an embodiment of the present invention.
먼저, 도 8에서 볼 수 있는 바와 같이, 제1 로봇(100)과 제2 로봇(200)은 중계 서버(500)에 저장된 지도 정보를 다운로드하게 된다(S211, S221). 이어서, 상기 제1 로봇(100)과 제2 로봇(200)은 상기 지도 정보를 이용하여 작업을 수행할 단위 영역(Not Explored 영역)으로 이동하게 된다(S212, S222). 또한, 상기 제1 로봇(100)과 제2 로봇(200)은 작업 수행 후 네비게이션 정보(이동하면서 작업을 수행한 단위 영역의 목록)를 작성하게 된다(S213, S223). 이어서, 상기 제1 로봇(100)과 제2 로봇(200)은 각각 네비게이션 정보를 중계 서버(500)로 전송하게 된다(S214, S224).First, as can be seen in FIG. 8, the
이어서, 상기 중계 서버(500)는 상기 제1 로봇(100)과 제2 로봇(200)으로부터 각각 수신한 네비게이션 정보로부터 병합된 네비게이션 정보(X)를 산출하고(S230), 산출된 상기 네비게이션 정보(X)를 상기 제1 로봇(100)과 제2 로봇(200)으로 전송하게 된다(S241, S242).Subsequently, the
이에 따라, 상기 제1 로봇(100)과 제2 로봇(200)은 상기 작업 영역에 아직 작업을 수행할 단위 영역(Not Explored 영역)이 남아있는지 판단한 후(S251, S252), 남아 있는 경우 이에 대한 작업을 계속 수행하게 된다.Accordingly, the
그런데, 이때 상기 제1 로봇(100)이 상기 작업을 수행할 단위 영역(Not Explored 영역)으로의 이동 거리가 상기 제2 로봇(200)의 이동 거리보다 짧은 경우에는 상기 제1 로봇(100)이 이동하여 작업을 수행하게 되나, 그렇지 않은 경우에는 작업을 종결하여 상기 제2 로봇(200)이 작업을 수행하도록 할 수 있다(S261).However, at this time, if the moving distance of the
마찬가지로, 상기 제2 로봇(200)이 상기 작업을 수행할 단위 영역(Not Explored 영역)으로의 이동 거리가 상기 제1 로봇(100)의 이동 거리보다 짧은 경우에는 상기 제2 로봇(200)이 이동하여 작업을 수행하게 되나, 그렇지 않은 경우에는 작업을 종결하여 상기 제1 로봇(100)이 작업을 수행하도록 할 수도 있다(S262).Likewise, if the movement distance to the unit area (Not Explored area) where the
또한, 상기 작업 영역에 아직 작업을 수행할 단위 영역(Not Explored 영역)이 남아있지 않은 경우에도, 상기 작업 영역에 장애물 등으로 인하여 작업을 수행하지 못한 영역이 있는지 판단하여(S271, S272), 상기 제1 로봇(100)과 제2 로봇(200)이 각각 자신이 마킹한 단위 영역에 대하여 작업을 수행하도록 할 수 있다(S281, S282).In addition, even when there is no unit area (Not Explored area) remaining in the work area to perform work, it is determined whether there is an area in the work area where work cannot be performed due to obstacles, etc. (S271, S272), and the The
마지막으로, 상기 작업 영역에 대한 청소가 완료되면 상기 제1 로봇(100)과 제2 로봇(200)의 네비게이션 정보 등을 초기화하여 작업을 마무리할 수 있다(S291, S292).Finally, when cleaning of the work area is completed, the work can be completed by initializing the navigation information of the
또한, 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템(10)에서, 상기 제1 로봇(100)과 상기 제2 로봇(200)은 미리 정해진 이동 규칙에 따라 다음으로 이동하여 작업을 수행할 단위 영역을 선정할 수 있으며, 이때 상기 제1 로봇(100)은 상기 이동 규칙에 따라 상기 제1 로봇(100)과 상기 제2 로봇(200)이 이동할 것으로 예측되는 단위 영역을 고려하여 상기 제1 로봇(100)이 이동할 단위 영역을 결정할 수 있다.In addition, in the robot control method and
이때, 보다 구체적으로, 상기 제1 로봇(100)이 이동할 것으로 예측되는 단위 영역으로 인해 의해 상기 제2 로봇(200)이 기작업된 단위 영역을 거쳐 작업을 수행할 단위 영역으로 이동하여야 하는 경우, 상기 제1 로봇(100)은 자신이 이동할 단위 영역을 변경하여 상기 제2 로봇(200)이 기작업된 단위 영역을 거치지 않고 다음 단위 영역으로 이동할 수 있도록 할 수 있다.At this time, more specifically, when the
이와 관련하여, 도 9 내지 도 10에서는 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템(10)에서 다른 로봇의 경로를 고려하여 이동 경로를 선정하는 알고리즘을 예시하고 있다.In this regard, Figures 9 and 10 illustrate an algorithm for selecting a movement path by considering the paths of other robots in the robot control method and
예를 들어, 도 9(a)에 도시된 작업 영역에서 제1 로봇(100)과 제2 로봇(200)이 이웃하는 단위 영역에서 청소 작업을 개시하는 경우(1110, 1120), 상기 제1 로봇(100)과 제2 로봇(200)은 미리 정해진 이동 규칙에 따라 이동하면서 작업을 수행할 수 있다. 예를 들어, 상기 이동 규칙으로서, 좌측 벽면을 따라 이동하도록 규칙이 사용될 수 있다.For example, when the
이에 따라, 상기 제1 로봇(100)과 제2 로봇(200)은 도 9(b)에서 볼 수 있는 바와 같이, 계속 직진하면서 청소 작업을 수행하게 된다. 그런데, 상기 제1 로봇(100)과 제2 로봇(200)이 계속 직진하며 벽면에 인접하는 단위 영역에서 작업을 수행하게 되는 경우, 상기 제1 로봇(100)은 상기 제2 로봇(200)이 이미 청소 작업을 수행한 단위 영역(1150)을 거쳐야만 다른 단위 영역으로 이동할 수 있게 되는 문제가 생길 수 있다.Accordingly, the
이에 따라, 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템(10)에서는, 도 10(c)에서 볼 수 있는 바와 같이, 상기 제1 로봇(100)과 제2 로봇(200)이 이동할 것으로 예측되는 단위 영역을 고려하여 상기 제1 로봇(100) 또는 상기 제2 로봇(200)의 이동 경로를 결정할 수 있으며, 이에 따라 상기 제2 로봇(200)의 이동 경로를 수정하여(1160), 상기 제1 로봇(100)이 기작업된 단위 영역을 거치지 않고 이동하면서 작업을 수행하도록 할 수 있게 된다.Accordingly, in the robot control method and
또한, 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템(10)에서는, 상기 이동 경로에 대하여 여러 스텝을 미리 예측하여 이동 경로를 결정하는 것도 가능하다. 즉, 도 10(d)에서 볼 수 있는 바와 같이, 상기 제2 로봇(200)은 상기 제1 로봇(100)의 위치(1180)를 기준으로 5 스텝 이후에 상기 제1 로봇(100)이 기작업된 단위 영역을 거쳐 이동하여야 함을 미리 예측하여, 상기 제1 로봇(100)이 이동할 수 있는 단위 영역을 확보할 수 있도록(1170), 이동 경로를 수정할 수도 있다. Additionally, in the robot control method and
이에 따라, 본 발명의 일 실시예에 따른 로봇 제어 방법 및 시스템(10)에서는, 복수의 단위 영역을 포함하는 작업 공간에서 복수의 로봇이 협력하면서 작업을 수행하는 경우, 상기 복수의 로봇이 상호간에 작업을 완료한 단위 영역의 목록을 포함하는 작업 수행 내역 정보를 교환하면서 작업을 수행하도록 함으로써, 상기 복수의 로봇이 다른 로봇의 이동 경로 및 이에 따른 작업 완료 영역에 대한 정보를 고려해 이동하면서 작업을 수행하여 동일 영역에 대한 중복 작업을 방지하고 로봇의 이동 경로를 최적화하는 등 작업 효율을 높일 수 있게 된다.Accordingly, in the robot control method and
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서 본 발명에 기재된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의해서 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely an illustrative explanation of the technical idea of the present invention, and various modifications and variations will be possible to those skilled in the art without departing from the essential characteristics of the present invention. Accordingly, the embodiments described in the present invention are for illustrative purposes rather than limiting the technical idea of the present invention, and are not limited to these embodiments. The scope of protection of the present invention should be interpreted in accordance with the claims below, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of rights of the present invention.
10 : 로봇 제어 시스템
100 : 제1 로봇
200 : 제2 로봇
300 : 관리 로봇
500 : 중계 서버10: Robot control system
100: first robot
200: 2nd robot
300: Management robot
500: relay server
Claims (12)
상기 복수의 로봇 중 제1 로봇이, 상기 복수의 로봇 중 하나 이상의 제2 로봇이 작업을 완료한 단위 영역의 목록을 포함하는 제2 작업 수행 내역 정보를 수집하는 작업 수행 내역 정보 수집 단계;
상기 제1 로봇이 자신이 작업을 완료한 단위 영역의 목록을 포함하는 제1 작업 수행 내역 정보를 전송하여 상기 하나 이상의 제2 로봇이 상기 제1 작업 수행 내역 정보를 수집할 수 있도록 하는 작업 수행 내역 정보 전송 단계; 및
상기 제1 로봇이 상기 제1 작업 수행 내역 정보 중 상기 제1 로봇에 의해 작업이 완료된 단위 영역 및 제2 작업 수행 내역 정보 중 상기 제2 로봇에 의해 작업이 완료된 단위 영역을 고려하여 상기 복수의 단위 영역 중 기작업된 단위 영역이 아닌 다음으로 이동하여 작업을 수행할 단위 영역을 선정하는 이동 단위 영역 선정 단계를 포함하는 것을 특징으로 하는 로봇 제어 방법.In a control method for a plurality of robots that perform work while moving in a work area including a plurality of unit areas,
A task performance history information collection step in which a first robot among the plurality of robots collects second task performance history information including a list of unit areas in which one or more second robots among the plurality of robots have completed tasks;
Work performance history in which the first robot transmits first work performance history information including a list of unit areas in which the first robot has completed the work so that the one or more second robots can collect the first work performance history information. information transfer step; and
The first robot determines the plurality of units by considering the unit area in which the work was completed by the first robot among the first work performance history information and the unit area in which the work was completed by the second robot among the second work performance history information. A robot control method comprising a moving unit area selection step of selecting a unit area to perform work by moving to the next area, rather than a previously worked unit area.
상기 작업 수행 내역 정보 수집 단계에서,
상기 제1 로봇은 중계 서버로부터 상기 제2 작업 수행 내역 정보를 수신하고,
상기 작업 수행 내역 정보 전송 단계에서,
상기 제1 로봇은 상기 중계 서버로 상기 제1 작업 수행 내역 정보를 전송하여 상기 하나 이상의 제2 로봇으로 전달하도록 하는 것을 특징으로 하는 로봇 제어 방법.According to paragraph 1,
In the task performance history information collection step,
The first robot receives the second task performance history information from the relay server,
In the task performance history information transmission step,
A robot control method characterized in that the first robot transmits the first task performance history information to the relay server to be transmitted to the one or more second robots.
상기 중계 서버는,
상기 제1 작업 수행 내역 정보 및 상기 제2 작업 수행 내역 정보를 병합한 전체 작업 수행 내역 정보를 생성하여 상기 제1 로봇 및 상기 제2 로봇으로 전송하는 것을 특징으로 하는 로봇 제어 방법.According to paragraph 2,
The relay server is,
A robot control method characterized by generating total task performance history information that merges the first task performance history information and the second task performance history information and transmitting it to the first robot and the second robot.
상기 제1 로봇은,
하나의 단위 영역에 대한 작업을 완료한 시점 마다 상기 제1 작업 수행 내역 정보를 전송하는 것을 특징으로 하는 로봇 제어 방법.According to paragraph 1,
The first robot is,
A robot control method characterized by transmitting the first task performance history information whenever a task for one unit area is completed.
상기 제1 작업 수행 내역 정보와 상기 제2 작업 수행 내역 정보는,
작업을 완료한 단위 영역에 대한 정보와 함께 작업을 완료할 수 없었던 단위 영역에 대한 정보도 포함하는 것을 특징으로 하는 로봇 제어 방법.According to paragraph 1,
The first task performance history information and the second task performance history information are,
A robot control method characterized in that it includes information on the unit area in which the task could not be completed along with information on the unit area in which the task was completed.
상기 제1 로봇은,
자신에게 할당된 모든 단위 영역에 대한 작업을 완료한 후,
상기 작업을 완료할 수 없었던 단위 영역으로 이동하여 다시 작업을 수행하는 것을 특징으로 하는 로봇 제어 방법.According to clause 5,
The first robot is,
After completing work on all unit areas assigned to you,
A robot control method characterized by moving to a unit area where the task could not be completed and performing the task again.
상기 이동 단위 영역 선정 단계에서,
상기 제1 로봇과 상기 제2 로봇은 미리 정해진 이동 규칙에 따라 다음으로 이동하여 작업을 수행할 단위 영역을 선정하며,
이때 상기 제1 로봇은 상기 이동 규칙에 따라 상기 제1 로봇과 상기 제2 로봇이 이동할 것으로 예측되는 단위 영역을 고려하여 상기 제1 로봇이 이동할 단위 영역을 결정하는 것을 특징으로 하는 로봇 제어 방법.According to paragraph 1,
In the mobile unit area selection step,
The first robot and the second robot move next according to predetermined movement rules and select a unit area to perform work,
At this time, the first robot determines the unit area in which the first robot will move by considering the unit area in which the first robot and the second robot are predicted to move according to the movement rule.
상기 제1 로봇이 이동할 것으로 예측되는 단위 영역으로 인해 의해 상기 제2 로봇이 기작업된 단위 영역을 거쳐 작업을 수행할 단위 영역으로 이동하여야 하는 경우,
상기 제1 로봇은 자신이 이동할 단위 영역을 변경하여 상기 제2 로봇이 기작업된 단위 영역을 거치지 않고 다음 단위 영역으로 이동할 수 있도록 하는 것을 특징으로 하는 로봇 제어 방법.In clause 7,
When the second robot must move to the unit area where work will be performed through the previously worked unit area due to the unit area where the first robot is predicted to move,
A robot control method characterized in that the first robot changes the unit area to which it will move so that the second robot can move to the next unit area without passing through the previously worked unit area.
상기 이동 단위 영역 선정 단계에서,
상기 제1 로봇은 자신에게 할당된 모든 단위 영역에 대한 작업을 완료한 후,
상기 제2 로봇의 잔여 단위 영역까지의 이동 시간과 상기 제2 로봇의 잔여 단위 영역에 대한 작업 수행 시간을 비교하여,
상기 잔여 단위 영역까지의 이동 시간이 짧은 경우에 한하여 상기 잔여 단위 영역으로 이동하여 작업을 수행하는 것을 특징으로 하는 로봇 제어 방법.According to paragraph 1,
In the mobile unit area selection step,
After the first robot completes work on all unit areas assigned to it,
By comparing the movement time to the remaining unit area of the second robot and the work execution time for the remaining unit area of the second robot,
A robot control method characterized in that it moves to the remaining unit area and performs work only when the movement time to the remaining unit area is short.
자신이 작업을 완료한 단위 영역의 목록을 포함하는 제2 작업 수행 내역 정보를 전송하는 하나 이상의 제2 로봇; 및
상기 제2 작업 수행 내역 정보를 수신하고, 상기 제2 작업 수행 내역 정보 중 상기 제2 로봇에 의해 작업이 완료된 단위 영역과 제1 작업 수행 내역 정보 중 자신에 의해 작업이 완료된 단위 영역을 함께 고려하여 상기 복수의 단위 영역 중 기작업된 단위 영역이 아닌 다음으로 이동하여 작업을 수행할 단위 영역을 선정하는 제1 로봇을 포함하며,
상기 제1 로봇은 상기 제1 작업 수행 내역 정보를 전송하여 상기 하나 이상의 제2 로봇이 상기 제1 작업 수행 내역 정보를 수집할 수 있도록 하는 것을 특징으로 하는 로봇 제어 시스템.In a control system for a plurality of robots that perform work while moving in a work area including a plurality of unit areas,
one or more second robots transmitting second task performance history information including a list of unit areas in which the task has been completed; and
Receiving the second task performance history information, considering the unit area in which the task was completed by the second robot among the second task performance history information and the unit area in which the task was completed by the robot among the first task performance history information, It includes a first robot that selects a unit area to perform work by moving to a next unit area, rather than a previously worked unit area, among the plurality of unit areas,
A robot control system, characterized in that the first robot transmits the first task performance details information so that the one or more second robots can collect the first task performance details information.
상기 제1 로봇으로부터 상기 제1 작업 수행 내역 정보를 수신하여 상기 제2 로봇으로 전달하며,
상기 제2 로봇으로부터 상기 제2 작업 수행 내역 정보를 수신하여 상기 제1 로봇으로 전달하는 중계 서버를 더 포함하는 것을 특징으로 하는 로봇 제어 시스템.According to clause 10,
Receives the first task performance history information from the first robot and transmits it to the second robot,
A robot control system further comprising a relay server that receives the second task performance history information from the second robot and transmits it to the first robot.
상기 중계 서버는,
상기 제1 작업 수행 내역 정보 및 상기 제2 작업 수행 내역 정보를 병합한 전체 작업 수행 내역 정보를 생성하여 상기 제1 로봇 및 상기 제2 로봇으로 전송하는 것을 특징으로 하는 로봇 제어 시스템.
According to clause 11,
The relay server is,
A robot control system, characterized in that it generates total task performance history information that merges the first task performance history information and the second task performance history information and transmits it to the first robot and the second robot.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180133333A KR102658913B1 (en) | 2018-11-02 | 2018-11-02 | Method for controlling robot cooperation and system thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180133333A KR102658913B1 (en) | 2018-11-02 | 2018-11-02 | Method for controlling robot cooperation and system thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200054351A KR20200054351A (en) | 2020-05-20 |
KR102658913B1 true KR102658913B1 (en) | 2024-04-18 |
Family
ID=70919518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180133333A KR102658913B1 (en) | 2018-11-02 | 2018-11-02 | Method for controlling robot cooperation and system thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102658913B1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112168074B (en) * | 2020-09-14 | 2022-06-24 | 上海思寒环保科技有限公司 | Cleaning method and system of intelligent cleaning robot |
CN112060097B (en) * | 2020-11-10 | 2021-02-05 | 纳博特南京科技有限公司 | Multitask cooperative control method of multi-robot system |
KR20230031085A (en) * | 2021-08-26 | 2023-03-07 | 삼성전자주식회사 | Robot and controlling method thereof |
CN114536339A (en) * | 2022-03-03 | 2022-05-27 | 深圳市大族机器人有限公司 | Method and device for controlling cooperative robot, cooperative robot and storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009199359A (en) * | 2008-02-21 | 2009-09-03 | Yanmar Co Ltd | Autonomous robot and cooperative working system using a plurality of autonomous robots |
JP2016212462A (en) * | 2015-04-28 | 2016-12-15 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | Movement control method and movement control device |
JP2017174379A (en) * | 2016-03-18 | 2017-09-28 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | Autonomous mobile device, autonomous mobile method, and autonomous mobile system |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101015313B1 (en) * | 2008-09-03 | 2011-02-15 | 재단법인대구경북과학기술원 | Method and system for cooperating muti robot |
KR101871430B1 (en) * | 2011-11-14 | 2018-06-26 | 한국전자통신연구원 | Method and system for multi-small robots control |
KR101976462B1 (en) | 2012-02-13 | 2019-08-28 | 엘지전자 주식회사 | A robot cleaner a control method thereof |
-
2018
- 2018-11-02 KR KR1020180133333A patent/KR102658913B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009199359A (en) * | 2008-02-21 | 2009-09-03 | Yanmar Co Ltd | Autonomous robot and cooperative working system using a plurality of autonomous robots |
JP2016212462A (en) * | 2015-04-28 | 2016-12-15 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | Movement control method and movement control device |
JP2017174379A (en) * | 2016-03-18 | 2017-09-28 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | Autonomous mobile device, autonomous mobile method, and autonomous mobile system |
Also Published As
Publication number | Publication date |
---|---|
KR20200054351A (en) | 2020-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102658913B1 (en) | Method for controlling robot cooperation and system thereof | |
US11119496B1 (en) | Methods and systems for robotic surface coverage | |
CN107272678B (en) | Method and apparatus for efficiently scheduling multiple automated non-complete vehicles using a coordinated path planner | |
US10913148B2 (en) | Operational service plan disruption and return optimization for a service robot | |
Alonso-Mora et al. | Distributed multi-robot formation control among obstacles: A geometric and optimization approach with consensus | |
Rekleitis et al. | Efficient boustrophedon multi-robot coverage: an algorithmic approach | |
Viet et al. | BA*: an online complete coverage algorithm for cleaning robots | |
Newman et al. | Autonomous feature-based exploration | |
KR100962593B1 (en) | Method and apparatus for area based control of vacuum cleaner, and recording medium thereof | |
CN113854906B (en) | Control method, device and equipment for cooperative operation of multiple cleaning robots | |
CN113189988B (en) | Autonomous path planning method based on Harris algorithm and RRT algorithm composition | |
Sung et al. | Improving the performance of multi-robot systems by task switching | |
JP7272547B2 (en) | Multi-robot path planning | |
Muthugala et al. | Design by robot: A human-robot collaborative framework for improving productivity of a floor cleaning robot | |
CN114003039A (en) | Cleaning robot path planning method and device, computer equipment and storage medium | |
JP4443222B2 (en) | Method for assigning work target partial planes to mobile units and apparatus for assigning work target partial planes to mobile units | |
Yoneda et al. | Learning and relearning of target decision strategies in continuous coordinated cleaning tasks with shallow coordination1 | |
Focke Martinez et al. | Overview of a route-planning tool for capacitated field processes in arable farming | |
Palacios-Gasós et al. | Multi-robot persistent coverage with optimal times | |
Mei et al. | Cooperative co-evolution based distributed path planning of multiple mobile robots | |
CN117891260B (en) | Self-moving robot, obstacle surmounting method, obstacle surmounting system and computer readable storage medium | |
Wu et al. | Energy-efficient strategies for multi-agent continuous cooperative patrolling problems | |
CN117666384A (en) | Behavior rule elastic construction method based on action perception | |
CN112902979A (en) | Robot set control system and method | |
CN112578776A (en) | Sweeping robot sweeping path planning method and system, storage medium and processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |