KR102490755B1 - Moving robot system - Google Patents

Moving robot system Download PDF

Info

Publication number
KR102490755B1
KR102490755B1 KR1020200130387A KR20200130387A KR102490755B1 KR 102490755 B1 KR102490755 B1 KR 102490755B1 KR 1020200130387 A KR1020200130387 A KR 1020200130387A KR 20200130387 A KR20200130387 A KR 20200130387A KR 102490755 B1 KR102490755 B1 KR 102490755B1
Authority
KR
South Korea
Prior art keywords
robot
driving
mobile
collaborative
charging
Prior art date
Application number
KR1020200130387A
Other languages
Korean (ko)
Other versions
KR20220047454A (en
Inventor
곽동훈
조성범
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020200130387A priority Critical patent/KR102490755B1/en
Priority to TW110133094A priority patent/TWI789896B/en
Priority to PCT/KR2021/012379 priority patent/WO2022075616A1/en
Publication of KR20220047454A publication Critical patent/KR20220047454A/en
Application granted granted Critical
Publication of KR102490755B1 publication Critical patent/KR102490755B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4011Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2805Parameters or conditions being sensed
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2836Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means characterised by the parts which are controlled
    • A47L9/2852Elements for displacement of the vacuum cleaner or the accessories therefor, e.g. wheels, casters or nozzles
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2894Details related to signal transmission in suction cleaners
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • B25J11/0085Cleaning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/005Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators using batteries, e.g. as a back-up power source
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1669Programme controls characterised by programming, planning systems for manipulators characterised by special application, e.g. multi-arm co-operation, assembly, grasping
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2401/00Automatic detection in controlling methods of washing or rinsing machines for crockery or tableware, e.g. information provided by sensors entered into controlling devices
    • A47L2401/04Crockery or tableware details, e.g. material, quantity, condition
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2401/00Automatic detection in controlling methods of washing or rinsing machines for crockery or tableware, e.g. information provided by sensors entered into controlling devices
    • A47L2401/06Water supply, circulation or discharge information

Abstract

청소 대상 영역을 주행하며 청소를 수행하는 복수의 이동 로봇; 및 상기 복수의 이동 로봇과 통신하며, 상기 복수의 이동 로봇에 원격 제어에 대한 제어 명령을 송신하는 제어기;를 포함하고, 상기 복수의 이동 로봇은, 상기 제어기로부터 상기 청소 대상 영역을 협업하여 청소하는 협업 주행 모드에 대한 제어 명령을 입력받은 경우, 상기 복수의 이동 로봇의 구동 상태가 기설정된 기준 조건에 해당하는지 여부를 판단하고, 판단 결과에 따라 상기 협업 주행 모드를 위한 모션을 수행하는 이동 로봇 시스템의 실시예에 관한 것이다.a plurality of mobile robots that drive and clean an area to be cleaned; and a controller that communicates with the plurality of mobile robots and transmits a control command for remote control to the plurality of mobile robots, wherein the plurality of mobile robots cooperate to clean the cleaning target area from the controller. When a control command for the collaborative driving mode is received, the mobile robot system determines whether the driving states of the plurality of mobile robots correspond to a preset reference condition, and performs motion for the collaborative driving mode according to the determination result. It relates to the embodiment of.

Figure R1020200130387
Figure R1020200130387

Description

이동 로봇 시스템{MOVING ROBOT SYSTEM}Mobile robot system {MOVING ROBOT SYSTEM}

이동 로봇 시스템에 관한 것으로, 구체적으로는 복수의 이동 로봇이 협업 주행을 수행하는 이동 로봇 시스템 및 이의 협업 주행 수행 방법에 관한 것이다.It relates to a mobile robot system, and more specifically, to a mobile robot system in which a plurality of mobile robots perform cooperative driving and a method for performing cooperative driving thereof.

청소기는 먼지와 이물질을 흡입하거나 걸레질을 통하여 청소 기능을 수행하는 장치이다. 일반적으로 청소기는 바닥에 대한 청소 기능을 수행하게 되며, 청소기는 이동을 위한 휠을 포함한다. 일반적으로 휠은 청소기 본체에 가해지는 외력에 의해 굴림되어 청소기 본체를 바닥에 대하여 이동시키도록 이루어진다.A vacuum cleaner is a device that performs a cleaning function by sucking dust and foreign substances or by wiping. In general, a vacuum cleaner performs a floor cleaning function, and the cleaner includes wheels for movement. In general, the wheel is rolled by an external force applied to the cleaner body to move the cleaner body relative to the floor.

그러나, 사용자의 조작 없이 스스로 주행하면서 청소를 수행하는 로봇 청소기가 개발됨에 따라, 복수의 로봇 청소기를 사용자의 조작 없이 상호 협업하면서 청소시키기 위한 개발의 필요성이 대두되고 있다.However, as robot cleaners that perform cleaning while traveling on their own without user manipulation have been developed, a need for development to clean a plurality of robot cleaners while cooperating with each other without user manipulation has emerged.

선행문헌 WO2017-036532는 마스터(master) 로봇 청소 장치(이하, 마스터 로봇)가 적어도 하나의 슬레이브(slave) 로봇 청소 장치(이하, 슬레이브 로봇)를 제어하는 방법에 대하여 개시한다. 상기 선행문헌은, 마스터 로봇이 장애물 검출 장치를 이용하여 주위의 장애물을 검출하고, 장애물 검출 장치로부터 파생된 위치 데이터를 이용하여 슬레이브 로봇과 관련된 마스터 로봇의 위치를 결정하는 구성에 대하여 개시한다. 또한, KR20170174493에서는 두 개의 로봇 청소기가 서로 통신하면서청소를 수행하는 일반적인 과정에 대해서 개시한다.Prior document WO2017-036532 discloses a method in which a master robot cleaning device (hereinafter, a master robot) controls at least one slave robot cleaning device (hereinafter, a slave robot). The prior art document discloses a configuration in which the master robot detects surrounding obstacles using an obstacle detection device and determines the position of the master robot in relation to the slave robot using position data derived from the obstacle detection device. In addition, KR20170174493 discloses a general process in which two robot cleaners perform cleaning while communicating with each other.

그러나 상기 두 개의 선행문헌에서는 협업 주행 중 발생하는 다양한 이벤트에 대한 대응 모션이 개시되어 있지 못하다. 두 대의 로봇 청소기가 협업하여 주행할 시에는 한 대의 주행 시보다 다양한 이벤트에 대응한 제어가 요구되는데, 이를테면, 한 대에서만 에러가 발생하는 경우와 두 대 모두에서 에러가 발생하는 경우 각각에 대응한 모션 제어가 필요하고, 이 외에도 트랩이나 키드냅 발생 시 선행/후행 관계에서 두 대의 로봇 청소기 각각의 적절한 대응 모션이 요구되어 진다.However, in the above two prior art documents, motions corresponding to various events occurring during collaborative driving are not disclosed. When two robot cleaners drive in collaboration, control in response to various events is required rather than when one robot vacuum cleaner is driven. Motion control is required, and in addition to this, proper corresponding motions of each of the two robot cleaners are required in the preceding/later relationship when a trap or kid-nap occurs.

또한, 두 대의 청소기가 협업 주행하는 모드에서는, 두 대의 청소기의 사양 및 상태가 상이함에 따라 적절한 협업 주행이 이루어지기 어려운 한계도 있다. 예컨대, 두 대의 청소기가 원활하게 협업 주행을 완료하기 위해서는 두 대의 청소기 모두의 배터리 충전 상태가 일정 기준 이상 요구되는데, 만약 한 대의 청소기의 충전 상태가 일정 기준 미만인 경우에는 협업 주행이 완료되기 어려워지게 된다.In addition, in a mode in which two vacuum cleaners are cooperatively driving, there is a limit in that appropriate collaborative driving is difficult to achieve due to different specifications and conditions of the two vacuum cleaners. For example, in order for two vacuum cleaners to smoothly complete cooperative driving, the battery state of charge of both vacuum cleaners is required to exceed a certain standard. If the state of charge of one vacuum cleaner is less than a certain standard, it becomes difficult to complete cooperative driving. .

이처럼 복수의 로봇 청소기가 협업 주행하는 시스템에서는 다양한 구동 상태, 주행 조건 및 이벤트 대응의 경우가 고려되어지는데, 종래에는 적절한 방안이 제안되지 못하여 복수의 로봇 청소기를 이용한 협업 주행의 정확성/안정성/신뢰성이 제한될 수 밖에 없었다.As such, in a system in which a plurality of robot cleaners are cooperatively driven, various driving conditions, driving conditions, and event response cases are considered. However, conventionally, an appropriate method has not been proposed, so that the accuracy/stability/reliability of collaborative driving using a plurality of robot cleaners is difficult. had to be limited.

상술한 바와 같은 종래기술의 한계를 개선하는 것을 과제로 하여, 본 명세서는 상술한 바와 같은 과제를 해결할 수 있는 이동 로봇 시스템의 실시예를 제공하고자 한다.With the goal of improving the limitations of the prior art as described above, the present specification intends to provide an embodiment of a mobile robot system capable of solving the above problems.

즉, 협업 주행의 다양한 조건을 만족시키며 협업 주행이 수행될 수 있는 이동 로봇 시스템 및 이의 협업 주행 수행 방법의 실시예를 제공하고자 한다.That is, it is intended to provide an embodiment of a mobile robot system capable of performing cooperative driving while satisfying various conditions of cooperative driving and a method of performing cooperative driving thereof.

또한, 협업 주행 시 발생되는 다양한 이벤트에 적절한 대응이 이루어질 수 있는 협업 주행이 수행될 수 있는 이동 로봇 시스템 및 이의 협업 주행 수행 방법의 실시예를 제공하고자 한다.In addition, it is intended to provide an embodiment of a mobile robot system capable of performing cooperative driving that can appropriately respond to various events occurring during cooperative driving and a method of performing cooperative driving thereof.

구체적으로는, 협업 주행 시 발생하는 트랩 상황에 대한 적절한 대응이 이루어질 수 있는 이동 로봇 시스템 및 이의 협업 주행 수행 방법의 실시예를 제공하고자 한다.Specifically, it is intended to provide an embodiment of a mobile robot system capable of appropriately responding to a trap situation occurring during cooperative driving and a method for performing cooperative driving thereof.

또한, 협업 주행 시 발생하는 다양한 오류 상황에 대한 적절한 대응이 이루어질 수 있는 이동 로봇 시스템 및 이의 협업 주행 수행 방법의 실시예를 제공하고자 한다.In addition, it is intended to provide an embodiment of a mobile robot system capable of appropriately responding to various error situations occurring during cooperative driving and a method for performing cooperative driving thereof.

또한, 헙업 주행 중 감지되는 장애물에 대한 적절한 대응이 이루어질 수 있는 이동 로봇 시스템 및 이의 협업 주행 수행 방법의 실시예를 제공하고자 한다.In addition, it is intended to provide an embodiment of a mobile robot system capable of appropriately responding to obstacles detected during cooperative driving and a method for performing cooperative driving thereof.

또한, 협업 주행의 수행 중 복수의 이동 로봇의 배터리 충전 레벨의 변화 및 배터리 충전 레벨의 다양한 상태에 따른 적절한 대응이 이루어질 수 있는 이동 로봇 시스템 및 이의 협업 주행 수행 방법의 실시예를 제공하고자 한다.In addition, an embodiment of a mobile robot system capable of appropriately responding to changes in battery charge levels of a plurality of mobile robots and various states of battery charge levels during collaborative driving and a method for performing collaborative driving thereof is provided.

상술한 바와 같은 과제를 해결하기 위한 이동 로봇 시스템 및 이의 협업 주행 수행 방법은, 복수의 이동 로봇의 구동 상태가 기설정된 기준 조건에 해당하는지 여부를 판단하고, 판단 결과에 따라 협업 주행을 위한 모션을 수행하는 것을 해결 수단으로 한다.A mobile robot system and a method for performing collaborative driving thereof to solve the above-described problems are to determine whether driving states of a plurality of mobile robots correspond to preset reference conditions, and to perform motions for collaborative driving according to the determination result. Do what you do as a solution.

구체적으로는, 협업 주행에 대한 제어 명령이 입력되면, 상기 협업 주행의 수행 조건에 해당하는 복수의 이동 로봇의 구동 상태를 기설정된 기준 조건과 비교하여, 상기 구동 상태가 상기 기준 조건에 해당할 시에 상기 협업 주행을 위한 모션을 수행함으로써, 상기 협업 주행이 정확하고 안정적으로 수행될 수 있게 된다.Specifically, when a control command for collaborative driving is input, driving states of a plurality of mobile robots corresponding to the performance conditions of the collaborative driving are compared with a preset reference condition, and when the driving state corresponds to the reference condition By performing the motion for the collaborative driving on , the collaborative driving can be performed accurately and stably.

즉, 이동 로봇 시스템 및 이의 협업 주행 수행 방법의 실시예는, 복수의 이동 로봇의 구동 상태가 기설정된 기준 조건에 해당하는지 여부를 판단하고, 판단 결과에 따라 협업 주행을 위한 모션을 수행하는 것을 특징으로 하여, 상술한 바와 같은 과제를 해결하게 된다.That is, an embodiment of a mobile robot system and a method for performing collaborative driving thereof determines whether driving states of a plurality of mobile robots correspond to a predetermined reference condition, and performs a motion for cooperative driving according to the determination result. As a result, the above problems are solved.

상기와 같은 기술적 특징을 과제 해결 수단으로 하는 이동 로봇 시스템의 실시예는, 청소 대상 영역을 주행하며 청소를 수행하는 복수의 이동 로봇 및 상기 복수의 이동 로봇과 통신하며, 상기 복수의 이동 로봇에 원격 제어에 대한 제어 명령을 송신하는 제어기를 포함하고, 상기 복수의 이동 로봇은, 상기 제어기로부터 상기 청소 대상 영역을 협업하여 청소하는 협업 주행 모드에 대한 제어 명령을 입력받은 경우, 상기 복수의 이동 로봇의 구동 상태가 기설정된 기준 조건에 해당하는지 여부를 판단하고, 판단 결과에 따라 상기 협업 주행 모드를 위한 모션을 수행한다.An embodiment of a mobile robot system using the above technical features as a means for solving problems includes a plurality of mobile robots that travel and perform cleaning in an area to be cleaned, communicate with the plurality of mobile robots, and remotely communicate with the plurality of mobile robots. and a controller that transmits a control command for control, wherein the plurality of mobile robots, when receiving a control command for a collaborative driving mode for collaboratively cleaning the cleaning target area from the controller, control of the plurality of mobile robots It is determined whether the driving state corresponds to a preset reference condition, and motion for the cooperative driving mode is performed according to the determination result.

또한, 상기와 같은 기술적 특징을 과제 해결 수단으로 하는 이동 로봇 시스템의 협업 주행 수행 방법의 실시예는, 제1 로봇 및 제2 로봇의 협업 주행 수행 방법으로, 상기 제1 로봇 및 상기 제2 로봇에 협업 주행의 수행에 대한 명령이 입력되는 단계, 상기 제1 로봇이 상기 제1 로봇 및 상기 제2 로봇의 구동 상태를 기설정된 기준 조건과 비교하는 단계 및 비교 결과에 따라 상기 제1 로봇 및 상기 제2 로봇 각각이 협업 주행을 위한 모션을 수행하는 단계를 포함한다.In addition, an embodiment of a method for performing cooperative driving of a mobile robot system using the above technical features as a means for solving problems is a method for performing cooperative driving of a first robot and a second robot, wherein the first robot and the second robot A step of inputting a command for performing cooperative driving, a step of comparing the driving states of the first robot and the second robot with a preset reference condition by the first robot, and the first robot and the first robot according to the comparison result. Each of the two robots performs a motion for collaborative driving.

한편, 협업 주행 시 발생하는 트랩 상황에 대한 적절한 대응이 이루어질 수 있는 이동 로봇 시스템의 실시예는, 제1 로봇 및 제2 로봇이 협업 주행을 수행하는 중, 상기 제1 로봇 및/또는 상기 제2 로봇에 트랩 상황이 발생한 경우, 상기 제1 로봇 및/또는 상기 제2 로봇은 트랩 탈출 주행을 수행하며, 상기 트랩 상황은, 상기 제1 로봇 또는 상기 제2 로봇이 주행하지 않은 청소 대상 구역으로 진입이 불가능한 상황이며, 상기 트랩 탈출 주행은, 상기 제1 로봇 또는 상기 제2 로봇이 주행한 청소 대상 구역의 경계를 따라 주행하는 주행 방법이다. On the other hand, in an embodiment of a mobile robot system capable of appropriately responding to a trap situation occurring during cooperative driving, while the first robot and the second robot perform cooperative driving, the first robot and/or the second robot When a trap situation occurs in the robot, the first robot and/or the second robot performs trap escape driving, and the trap situation enters the cleaning target area where the first robot or the second robot does not travel. This is an impossible situation, and the trap escape driving is a traveling method in which the first robot or the second robot travels along the boundary of the area to be cleaned.

또한, 협업 주행 시 발생하는 트랩 상황에 대한 적절한 대응이 이루어질 수 있는 이동 로봇 시스템의 협업 주행 수행 방법의 실시예는, 제1로봇 및 제2로봇이, 서로 협업 주행을 수행하는 단계, 상기 제1 로봇 및/또는 상기 제2 로봇에 트랩 상황 발생 여부를 판단하는 단계, 그리고 상기 제1 로봇 및/또는 상기 제2 로봇이 트랩 상황인 경우 트랩 탈출 주행을 수행하는 단계를 포함하며, 상기 트랩 상황은, 상기 제1 로봇 또는 상기 제2 로봇이 주행하지 않은 청소 대상 구역으로 진입이 불가능한 상황이며, 상기 트랩 탈출 주행은, 상기 제1 로봇 또는 상기 제2 로봇이 주행한 청소 대상 구역의 경계를 따라 주행하는 주행 방법이다.In addition, an embodiment of a method for performing cooperative driving of a mobile robot system capable of appropriately responding to a trap situation occurring during cooperative driving includes the steps of performing cooperative driving by a first robot and a second robot with each other, the first determining whether a trap situation has occurred in the robot and/or the second robot, and performing trap escape driving when the first robot and/or the second robot is in a trap situation, wherein the trap situation comprises: , It is impossible to enter the cleaning target area where the first robot or the second robot is not traveling, and the trap escape driving is traveling along the boundary of the cleaning target area where the first robot or the second robot has traveled. way to drive.

한편, 협업 주행 시 발생하는 다양한 오류 상황에 대한 적절한 대응이 이루어질 수 있는 이동 로봇 시스템의 실시예는, 청소 대상 구역의 오염물을 흡입하는 제1로봇, 상기 청소 대상 구역의 바닥을 닦는 제2 로봇, 상기 제1로봇을 충전하는 제1충전대, 상기 제2로봇을 충전하는 제2충전대, 그리고 상기 제1로봇 및 상기 제2로봇을 연결하는 네트워크를 포함하고, 상기 제1로봇 및 상기 제2로봇이, 상기 네트워크를 이용하여 협업 주행 모드에 진입하고, 서로의 위치 정보를 파악하여 협업 주행을 수행하고, 상기 협업 주행 수행 중에, 상기 제1로봇 및 상기 제2로봇 중 적어도 하나에 오류가 발생한 경우, 또는 상기 제1로봇 및 상기 제2로봇 중 적어도 하나에 키드냅이 발생한 경우, 또는 상기 네트워크의 연결이 해제된 경우에, 상기 제1로봇 또는 상기 제2로봇이 상기 협업 주행 모드를 해제할지 결정한다.On the other hand, an embodiment of a mobile robot system capable of appropriately responding to various error situations occurring during collaborative driving includes a first robot that sucks contaminants from an area to be cleaned, a second robot that wipes the floor of the area to be cleaned, A first charging stand for charging the first robot, a second charging stand for charging the second robot, and a network connecting the first robot and the second robot, wherein the first robot and the second robot , When entering a collaborative driving mode using the network, performing cooperative driving by recognizing each other's location information, and performing the cooperative driving, an error occurs in at least one of the first robot and the second robot, Alternatively, when a keynap occurs in at least one of the first robot and the second robot, or when the network connection is released, the first robot or the second robot determines whether to release the collaborative driving mode. .

또한, 협업 주행 시 발생하는 다양한 오류 상황에 대한 적절한 대응이 이루어질 수 있는 이동 로봇 시스템의 협업 주행 수행 방법의 실시예는, 청소 대상 구역을 주행하는 이동 로봇 시스템의 협업 주행 수행 방법으로서, 상기 이동 로봇 시스템은, 상기 청소 대상 구역의 오염물을 흡입하는 제1로봇, 상기 청소 대상 구역의 바닥을 닦는 제2 로봇, 상기 제1로봇을 충전하는 제1충전대, 상기 제2로봇을 충전하는 제2충전대, 그리고 상기 제1로봇 및 상기 제2로봇을 연결하는 네트워크를 포함하고, 상기 협업 주행 수행 방법은, 상기 제1로봇 및 상기 제2로봇이, 상기 네트워크를 이용하여 협업 주행 모드에 진입하는 단계, 상기 제1로봇 및 상기 제2로봇이, 서로의 위치 정보를 파악하여 협업 주행을 수행하는 단계, 그리고 상기 협업 주행 수행 중에, 상기 제1로봇 및 상기 제2로봇 중 적어도 하나에 오류가 발생한 경우, 또는 상기 제1로봇 및 상기 제2로봇 중 적어도 하나에 키드냅이 발생한 경우, 또는 상기 네트워크의 연결이 해제된 경우에, 상기 제1로봇또는 상기 제2로봇이 상기 협업 주행 모드를 해제할지 결정하는 단계를 포함한다. In addition, an embodiment of a method for performing cooperative driving of a mobile robot system capable of appropriately responding to various error situations occurring during cooperative driving is a method of performing cooperative driving of a mobile robot system traveling in a cleaning target area, wherein the mobile robot The system includes a first robot that sucks contaminants from the area to be cleaned, a second robot that wipes the floor of the area to be cleaned, a first charging station that charges the first robot, a second charging station that charges the second robot, and a network connecting the first robot and the second robot, wherein the method of performing the cooperative driving includes: entering a cooperative driving mode by the first robot and the second robot using the network; The first robot and the second robot performing cooperative driving by recognizing each other's location information, and when an error occurs in at least one of the first robot and the second robot during the cooperative driving, or Determining whether to release the collaborative driving mode by the first robot or the second robot when a key nap occurs in at least one of the first robot and the second robot or when the network connection is released. includes

한편, 헙업 주행 중 감지되는 장애물에 대한 적절한 대응이 이루어질 수 있는 이동 로봇 시스템의 실시예는, 청소 대상 구역의 오염물을 흡입하는 제1로봇, 상기 청소 대상 구역의 바닥을 닦는 제2 로봇, 상기 제1로봇을 충전하는 제1충전대, 상기 제2로봇을 충전하는 제2충전대, 그리고 상기 제1로봇 및 상기 제2로봇을 연결하는 네트워크를 포함하고, 상기 제1로봇 및 상기 제2로봇이, 상기 네트워크를 이용하여 협업 주행 모드에 진입하고, 상기 청소 대상 구역을 복수의 단위 구역으로 분할하여 각 단위 구역마다 협업 주행하고, 상기 제1로봇 및/또는 상기 제2로봇이, 상기 복수의 단위 구역 중 어느 하나의 단위 구역에서 상기 협업 주행 중에, 미리 설정된 범위의, 높이 또는 깊이로 형성된 장애물을 감지한 경우, 상기 장애물을 회피하거나,상기 장애물을 등반하여, 상기 협업 주행을 계속 수행한다.On the other hand, an embodiment of a mobile robot system capable of appropriately responding to an obstacle detected during a trip-up is a first robot that sucks contaminants from an area to be cleaned, a second robot that wipes the floor of the area to be cleaned, and the first robot that sweeps the floor of the area to be cleaned. A first charging stand for charging the first robot, a second charging stand for charging the second robot, and a network connecting the first robot and the second robot, wherein the first robot and the second robot A cooperative driving mode is entered using a network, the cleaning target area is divided into a plurality of unit zones, and cooperative driving is performed for each unit zone, and the first robot and/or the second robot are among the plurality of unit zones. When an obstacle formed in a preset range, height or depth is detected during the cooperative driving in any one unit area, the cooperative driving is continued by avoiding the obstacle or climbing the obstacle.

또한, 헙업 주행 중 감지되는 장애물에 대한 적절한 대응이 이루어질 수 있는 이동 로봇 시스템의 협업 주행 수행 방법의 실시예는, 청소 대상 구역을 주행하는 이동 로봇 시스템의 협업 주행 수행 방법으로서, 상기 이동 로봇 시스템은, 상기 청소 대상 구역의 오염물을 흡입하는 제1로봇,상기 청소 대상 구역의 바닥을 닦는 제2 로봇,상기 제1로봇을 충전하는 제1충전대,상기 제2로봇을 충전하는 제2충전대,그리고상기 제1로봇 및 상기 제2로봇을 연결하는 네트워크를 포함하고, 상기 협업 주행 수행 방법은, 상기 제1로봇 및 상기 제2로봇이, 상기 네트워크를 이용하여 협업 주행 모드에 진입하는 단계, 상기 제1로봇 및 상기 제2로봇이, 상기 청소 대상 구역을 복수의 단위 구역으로 분할하여 각 단위 구역마다 협업 주행하는 단계, 그리고 상기 제1로봇 및/또는 상기 제2로봇이, 상기 복수의 단위 구역 중 어느 하나의 단위 구역에서 상기 협업 주행 중에, 미리 설정된 범위의, 높이 또는 깊이로 형성된 장애물을 감지한 경우,상기 장애물을 회피하거나, 상기 장애물을 등반하여, 상기 협업 주행을 계속 수행하는 단계를 포함한다.In addition, an embodiment of a method for performing cooperative driving of a mobile robot system capable of appropriately responding to an obstacle detected during cooperative driving is a method of performing cooperative driving of a mobile robot system traveling in a cleaning target area, wherein the mobile robot system comprises: , a first robot that sucks contaminants from the area to be cleaned, a second robot that wipes the floor of the area to be cleaned, a first charging station that charges the first robot, a second charging station that charges the second robot, and the A network connecting the first robot and the second robot, wherein the method of performing cooperative driving includes: entering a cooperative driving mode by using the network by the first robot and the second robot; dividing the cleaning target area into a plurality of unit areas by the robot and the second robot and cooperatively traveling in each unit area; When an obstacle formed in a preset range, height or depth is detected during the cooperative driving in one unit area, continuing the cooperative driving by avoiding the obstacle or climbing the obstacle.

한편, 협업 주행의 수행 중 복수의 이동 로봇의 배터리 충전 레벨의 변화 및 배터리 충전 레벨의 다양한 상태에 따른 적절한 대응이 이루어질 수 있는 이동 로봇 시스템의 실시예는, 복수의 이동 로봇이 협업하여 주행하는 이동 로봇 시스템으로, 제1 충전대에서 충전한 전력을 근거로 구동하여, 청소 대상 구역을 주행하는 제1 로봇 및 제2 충전대에서 충전한 전력을 근거로 구동하여, 상기 제1 로봇이 주행한 경로에 따라 주행하는 제2 로봇을 포함하고, 상기 제1 로봇 및 상기 제2 로봇은, 협업 주행 모드를 수행하는 중 각각이 배터리에 충전된 용량을 감지하여, 상기 배터리의 충전 용량값에 따라 상기 협업 주행 모드를 해제하고, 상기 충전 용량값에 대응하여 각각 단독 주행 모드 및 상기 배터리의 충전 모드 중 하나 이상을 수행한다.On the other hand, an embodiment of a mobile robot system capable of appropriately responding to changes in battery charge levels of a plurality of mobile robots and various states of battery charge levels during collaborative driving is a movement in which a plurality of mobile robots travel in collaboration. As a robot system, the first robot drives based on the power charged at the first charging stand and travels in the area to be cleaned, and the first robot drives based on the power charged at the second charging stand and follows the path traveled by the first robot. and a second robot that travels, wherein the first robot and the second robot each sense the charged capacity of the battery while performing the cooperative driving mode, and the cooperative driving mode according to the charged capacity value of the battery. is released, and at least one of a single driving mode and a charging mode of the battery is performed in response to the charge capacity value.

또한, 협업 주행의 수행 중 복수의 이동 로봇의 배터리 충전 레벨의 변화 및 배터리 충전 레벨의 다양한 상태에 따른 적절한 대응이 이루어질 수 있는 이동 로봇 시스템의 다른 실시예는, 복수의 이동 로봇이 협업하여 주행하는 이동 로봇 시스템으로, 제1 충전대에서 충전한 전력을 근거로 구동하여, 청소 대상 구역을 주행하는 제1 로봇 및 제2 충전대에서 충전한 전력을 근거로 구동하여, 상기 제1 로봇이 주행한 경로에 따라 주행하는 제2 로봇을 포함하고, 상기 제1 로봇 및 상기 제2 로봇 각각은, 협업 주행 모드를 수행하는 중 배터리에 충전된 용량을 감지하여, 상기 배터리의 충전 용량값이 기설정된 기준 용량값 이하가 되면 각각의 충전대로 이동하여 상기 배터리를 충전한다.In addition, another embodiment of a mobile robot system capable of appropriately responding to changes in battery charge levels of a plurality of mobile robots and various states of battery charge levels during cooperative driving is a plurality of mobile robots traveling in collaboration. As a mobile robot system, the first robot drives the area to be cleaned by being driven based on the power charged at the first charging stand, and the first robot drives based on the power charged at the second charging stand, and follows the path along which the first robot traveled. and a second robot that travels along the way, wherein each of the first robot and the second robot detects the capacity charged in the battery while performing the collaborative driving mode, so that the charging capacity value of the battery is a preset reference capacity value. When it is below, it moves to each charging station and charges the battery.

또한, 협업 주행의 수행 중 복수의 이동 로봇의 배터리 충전 레벨의 변화 및 배터리 충전 레벨의 다양한 상태에 따른 적절한 대응이 이루어질 수 있는 이동 로봇 시스템의 협업 주행 수행 방법의 실시예는, 제1 충전대에서 충전한 전력을 근거로 구동하여, 청소 대상 구역을 주행하는 제1 로봇 및 제2 충전대에서 충전한 전력을 근거로 구동하여, 상기 제1 로봇이 주행한 경로에 따라 주행하는 제2 로봇을 포함하는 이동 로봇 시스템의 협업 주행 수행 방법으로, 상기 제1 로봇 및 상기 제2 로봇 각각이 협업 주행 모드의 수행을 시작하는 단계, 상기 제1 로봇 및 상기 제2 로봇 각각이 배터리에 충전된 용량을 감지하는 단계, 상기 제1 로봇 및 상기 제2 로봇 각각이 충전 용량값을 기설정된 기준 용량값과 비교하는 단계 및 비교 결과에 따라 상기 제1 로봇 및 상기 제2 로봇 중 하나 이상이 단독 주행 모드를 수행하거나, 충전대로 이동하여 상기 배터리를 충전하는 단계를 포함한다.In addition, an embodiment of a method for performing cooperative driving of a mobile robot system in which appropriate responses can be made according to changes in battery charge levels of a plurality of mobile robots and various states of battery charge levels during collaborative driving is charging at a first charging station. Movement including a first robot driven based on the same electric power and traveling in the cleaning target area and a second robot driven based on the electric power charged at the second charging base and traveling along the path traveled by the first robot A method for performing cooperative driving of a robot system, wherein each of the first robot and the second robot starts performing a cooperative driving mode, and each of the first robot and the second robot detects the capacity charged in a battery. , The first robot and the second robot, respectively, comparing the charging capacity value with a preset reference capacity value, and according to the comparison result, at least one of the first robot and the second robot performs a solo driving mode, and moving to a charging stand to charge the battery.

또한, 협업 주행의 수행 중 복수의 이동 로봇의 배터리 충전 레벨의 변화 및 배터리 충전 레벨의 다양한 상태에 따른 적절한 대응이 이루어질 수 있는 이동 로봇 시스템의 협업 주행 수행 방법의 다른 실시예는, 제1 충전대에서 충전한 전력을 근거로 구동하여, 청소 대상 구역을 주행하는 제1 로봇 및 제2 충전대에서 충전한 전력을 근거로 구동하여, 상기 제1 로봇이 주행한 경로에 따라 주행하는 제2 로봇을 포함하는 이동 로봇 시스템의 협업 주행 수행 방법으로, 상기 제1 로봇 및 상기 제2 로봇 각각이 협업 주행 모드의 수행을 시작하는 단계, 상기 제1 로봇 및 상기 제2 로봇 각각이 배터리에 충전된 용량을 감지하는 단계, 상기 제1 로봇 및 상기 제2 로봇 각각이 충전 용량값을 기설정된 기준 용량값과 비교하는 단계 및 비교 결과에 따라 상기 제1 로봇 및 상기 제2 로봇 중 하나 이상이 충전대로 이동하여 상기 배터리를 충전하는 단계를 포함한다.In addition, another embodiment of a method for performing collaborative driving of a mobile robot system in which appropriate responses can be made according to changes in battery charge levels of a plurality of mobile robots and various states of battery charge levels during collaborative driving is performed at a first charging stand. A first robot driven based on the charged power and traveling in the area to be cleaned and a second robot driven based on the power charged at the second charging base and traveling along the path traveled by the first robot. A method for performing cooperative driving of a mobile robot system, wherein each of the first robot and the second robot starts performing a cooperative driving mode, each of the first robot and the second robot detects the capacity charged in a battery Step, the first robot and the second robot, respectively, comparing the charge capacity value with a preset reference capacity value, and according to the comparison result, at least one of the first robot and the second robot moves to a charging station to the battery It includes the step of charging.

상술한 바와 같은 이동 로봇 시스템 및 이의 협업 주행 수행 방법의 실시예는, 로봇 청소기, 로봇 청소기를 제어하는 제어 시스템, 로봇 청소 시스템, 로봇 청소기를 제어하기 위한 제어 방법 등에도 적용되어 실시될 수 있고, 특히 복수의 이동 로봇, 복수의 이동 로봇을 포함하는 이동 로봇 시스템, 복수의 이동 로봇의 제어 방법 등에 유용하게 적용되어 실시될 수 있으며, 또한 상기 기술의 기술적 사상이 적용될 수 있는 모든 로봇 청소기, 로봇 청소기의 시스템, 로봇 청소기의 제어 방법에도 적용되어 실시될 수 있다.As described above, the embodiment of the mobile robot system and the method for performing cooperative driving thereof may be applied and implemented to a robot cleaner, a control system for controlling the robot cleaner, a robot cleaning system, and a control method for controlling the robot cleaner. In particular, all robot cleaners and robot cleaners that can be usefully applied to a plurality of mobile robots, a mobile robot system including a plurality of mobile robots, a control method of a plurality of mobile robots, etc., and also to which the technical idea of the above technology can be applied. It can also be applied to the system and the control method of the robot cleaner.

본 명세서에서 제공하는 이동 로봇 시스템 및 이의 협업 주행 수행 방법의 실시예는, 복수의 이동 로봇의 구동 상태가 기설정된 기준 조건에 해당하는지 여부를 판단하고, 판단 결과에 따라 협업 주행을 위한 모션을 수행함으로써, 협업 주행의 다양한 조건을 만족시키며 협업 주행이 수행될 수 있게 되는 효과가 있다.An embodiment of a mobile robot system and a method for performing cooperative driving thereof provided in the present specification determines whether driving states of a plurality of mobile robots correspond to a preset reference condition, and performs a motion for cooperative driving according to the determination result. By doing so, there is an effect of satisfying various conditions of cooperative driving and enabling cooperative driving to be performed.

이에 따라, 복수의 이동 로봇의 부정확하고 안정적이지 못한 협업 주행을 방지할 수 있게 되며, 안전하고 정확한 환경/상태에서 협업 주행이 수행될 수 있게 되는 효과가 있다.Accordingly, it is possible to prevent inaccurate and unstable cooperative driving of a plurality of mobile robots, and cooperative driving can be performed in a safe and accurate environment/state.

또한, 헙업 주행의 조건이 만족된 상태에서 협업 주행이 수행됨으로써, 협업 주행 시 발생되는 다양한 이벤트에 대하여 적절한 대응이 이루어질 수 있게 되는 효과도 있다.In addition, since cooperative driving is performed in a state in which conditions for cooperative driving are satisfied, appropriate responses can be made to various events occurring during cooperative driving.

이를테면, 협업 주행 시 발생하는 트랩 상황, 다양한 오류 상황 및 장애물 감지 상황 각각에 대한 적절한 대응이 이루어져, 협업 주행의 수행이 안전하고 신뢰성있게 이루어질 수 있게 되는 효과가 있다.For example, appropriate responses are made to trap situations, various error situations, and obstacle detection situations that occur during collaborative driving, so that collaborative driving can be performed safely and reliably.

또한, 복수의 이동 로봇 각각이 협업 주행 모드를 수행하는 중 배터리에 충전된 용량을 감지하여, 감지 결과에 따라서 복수의 이동 로봇 각각이 대응 동작을 수행함으로써, 배터리의 충전 레벨의 변화에 따른 적절한 대응이 이루어질 수 있게 되는 효과가 있다.In addition, each of the plurality of mobile robots detects the capacity charged in the battery while performing the cooperative driving mode, and each of the plurality of mobile robots performs a corresponding operation according to the detection result, thereby appropriately responding to the change in the charge level of the battery. There is an effect that can make this happen.

이에 따라, 협업 주행의 수행 중 배터리 충전 레벨의 다양한 상태에 따른 효과적인 청소가 수행될 수 있게 됨은 물론, 협업 주행의 수행 중 배터리 충전 레벨의 변화에 따른 협업 주행의 중단 시 복수의 이동 로봇의 방치를 방지할 수 있게 되어, 협업 주행의 중단 이후의 후속 동작이 적절하고 용이하게 이루어질 수 있게 되는 효과가 있다.Accordingly, effective cleaning can be performed according to various states of battery charge level during collaborative driving, and neglect of a plurality of mobile robots can be prevented when collaborative driving is stopped due to a change in battery charge level during collaborative driving. Therefore, there is an effect that a follow-up operation after stopping the cooperative driving can be properly and easily performed.

도 1a 및 1b는 이동 로봇의 구성도 a 및 b.
도 2는 이동 로봇의 구체적인 구성도.
도 3은 이동 로봇 시스템의 예시도.
도 4는 이동 로봇 시스템의 복수의 이동 로봇 간의 네트워크 통신을 도시한 개념도.
도 5는 이동 로봇 시스템의 복수의 이동 로봇의 주행 개념도.
도 6은 도 5에 도시된 개념도에 따른 복수의 이동 로봇의 구체적인 주행 예시도.
도 7은 복수의 이동 로봇이 협업 주행을 수행하는 순서를 나타낸 순서도.
도 8은 복수의 이동 로봇 간 영상 비교를 통해 위치를 인식하는 개념을 설명하기 위한 예시도.
도 9는 복수의 이동 로봇 간 위치 인식의 개념을 설명하기 위한 예시도.
도 10은 복수의 이동 로봇이 협업 주행을 수행하는 예시도.
도 11은 실시예에 따른 이동 로봇 시스템의 구성도.
도 12는 실시예에 따른 이동 로봇 시스템에서 협업 주행 모드가 수행되는 과정을 나타낸 순서도.
도 13은 실시예에 따른 이동 로봇 시스템에서 협업 주행 모드가 수행되는 예시를 나타낸 도표.
도 14는 실시예에 따른 이동 로봇 시스템의 협업 주행 수행 방법의 순서도.
도 15는 도 14에 도시된 협업 주행 수행 방법의 구체적인 실시예에 따른 순서도.
도 16은 <실시예 1>에 따른 이동 로봇 시스템의 협업 주행을 도시한 도면.
도 17은 <실시예 1>에 따른 제1 로봇이 트랩(trap) 상황인 경우, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면.
도 18은 <실시예 1>에 따른 제1 로봇이 트랩(trap) 상황인 경우, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면.
도 19는 <실시예 1>에 따른 제2 로봇이 트랩(trap) 상황인 경우, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면.
도 20은 <실시예 1>에 따른 제2 로봇이 트랩(trap) 상황인 경우, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면.
도 21은 <실시예 1>에 따른 제1 로봇과 제2 로봇이 트랩(trap) 상황인 경우, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면.
도 22는 <실시예 1>에 따른 트랩 상황이 발생한 경우 이동 로봇 시스템의 협업 주행 수행 방법 순서도.
도 23은 <실시예 2>에 따른 이동 로봇 시스템의 협업 주행을 도시한 도면.
도 24a는 <실시예 2>에 따른 제1 로봇에 발생한 오류에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면 a.
도 24b는 <실시예 2>에 따른 제1 로봇에 발생한 오류에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면 b.
도 24c는 <실시예 2>에 따른 제1 로봇에 발생한 오류에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면 c.
도 25는 <실시예 2>에 따른 제1 로봇 및 제2 로봇에 발생한 오류에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면.
도 26a는 <실시예 2>에 따른 제2 로봇에 발생한 오류에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면 a.
도 26b는 <실시예 2>에 따른 제2 로봇에 발생한 오류에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면 b.
도 26c는 <실시예 2>에 따른 제2 로봇에 발생한 오류에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면 c.
도 27a는 <실시예 2>에 따른 제1 로봇에 발생한 키드냅에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면 a.
도 27b는 <실시예 2>에 따른 제1 로봇에 발생한 키드냅에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면 b.
도 27c는 <실시예 2>에 따른 제1 로봇에 발생한 키드냅에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면 c.
도 28a는 <실시예 2>에 따른 제2 로봇에 발생한 키드냅에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면 a.
도 28b는 <실시예 2>에 따른 제2 로봇에 발생한 키드냅에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면 b.
도 28c는 <실시예 2>에 따른 제2 로봇에 발생한 키드냅에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템을 도시한 도면 c.
도 29는 <실시예 2>에 따른 이동 로봇 시스템이, 협업 주행 수행 중에 발생한 오류, 키드냅 또는 통신 장애에 대응하여, 미리 설정된 시나리오를 수행하는 방법을 도시한 순서도.
도 30은 <실시예 3>에 따른 이동 로봇 시스템이, 청소 대상 구역을 복수의 단위 구역으로 분할하여, 각 단위 구역마다 협업 주행하는 것을 도시한 도면.
도 31은 <실시예 3>에 따른, 제1 로봇 및 제2 로봇이, 제1 장애물을 감지한 경우에 수행하는, 미리 설정된 시나리오를 도시한 도면.
도 32는 <실시예 3>에 따른, 제1 로봇이 제1 장애물을 감지하지 못하고, 제2 로봇이 제1 장애물을 감지한 경우에 수행하는, 미리 설정된 시나리오를 도시한 도면.
도 33은 <실시예 3>에 따른, 제1 로봇 및 제2 로봇이, 제1 장애물을 감지하지 못한 경우에 수행하는, 미리 설정된 시나리오를 도시한 도면.
도 34는 <실시예 3>에 따른, 제1 로봇이 제2 장애물을 감지하고, 제2 로봇이 제2 장애물을 감지하지 못한 경우에 수행하는, 미리 설정된 시나리오를 도시한 도면.
도 35는 <실시예 3>에 따른 이동 로봇 시스템이, 협업 주행 중에 감지한 장애물에 대응하여, 미리 설정된 시나리오를 수행하는 방법을 도시한 순서도.
도 36a는 <실시예 4>에 따른 이동 로봇 시스템에서 협업 주행 모드가 수행되는 중 배터리의 충전 용량 상태에 따른 대응의 예시를 나타낸 도표 a.
도 36b는 <실시예 4>에 따른 이동 로봇 시스템에서 협업 주행 모드가 수행되는 중 배터리의 충전 용량 상태에 따른 대응의 예시를 나타낸 도표 b.
도 37은 <실시예 4>에 따른 이동 로봇 시스템에서 복수의 이동 로봇의 대응을 도시화한 예시도 1.
도 38은 <실시예 4>에 따른 이동 로봇 시스템에서 복수의 이동 로봇의 대응을 도시화한 예시도 2.
도 39는 <실시예 4>에 따른 이동 로봇 시스템에서 복수의 이동 로봇의 대응을 도시화한 예시도 3.
도 40은 <실시예 4>에 따른 이동 로봇 시스템의 협업 주행 수행 방법의 순서도.
1a and 1b are configuration diagrams a and b of a mobile robot.
2 is a detailed configuration diagram of a mobile robot;
3 is an exemplary view of a mobile robot system;
4 is a conceptual diagram illustrating network communication between a plurality of mobile robots in a mobile robot system;
5 is a conceptual diagram illustrating the driving of a plurality of mobile robots in a mobile robot system;
6 is a detailed driving example of a plurality of mobile robots according to the conceptual diagram shown in FIG. 5;
7 is a flowchart illustrating a sequence in which a plurality of mobile robots perform cooperative driving.
8 is an exemplary diagram for explaining the concept of recognizing a location through image comparison between a plurality of mobile robots;
9 is an exemplary diagram for explaining the concept of location recognition between a plurality of mobile robots;
10 is an exemplary diagram in which a plurality of mobile robots perform cooperative driving.
11 is a configuration diagram of a mobile robot system according to an embodiment.
12 is a flowchart illustrating a process of performing a cooperative driving mode in the mobile robot system according to the embodiment;
13 is a diagram showing an example in which a collaborative driving mode is performed in a mobile robot system according to an embodiment.
14 is a flowchart of a method for performing cooperative driving of a mobile robot system according to an embodiment.
15 is a flowchart according to a specific embodiment of the method for performing cooperative driving shown in FIG. 14;
16 is a diagram illustrating cooperative driving of the mobile robot system according to <Embodiment 1>.
17 is a diagram illustrating a mobile robot system that performs a preset scenario when a first robot is in a trap situation according to <Example 1>;
18 is a diagram illustrating a mobile robot system that performs a preset scenario when a first robot is in a trap situation according to <Embodiment 1>;
19 is a diagram illustrating a mobile robot system that performs a preset scenario when a second robot according to <Example 1> is in a trap situation;
20 is a diagram illustrating a mobile robot system that performs a preset scenario when a second robot according to <Example 1> is in a trap situation;
21 is a diagram illustrating a mobile robot system that performs a preset scenario when a first robot and a second robot are in a trap situation according to <Example 1>;
22 is a flow chart of a method for performing collaborative driving of a mobile robot system when a trap situation occurs according to <Example 1>;
23 is a diagram illustrating cooperative driving of the mobile robot system according to <Example 2>;
24a is a diagram illustrating a mobile robot system that performs a preset scenario in response to an error occurring in the first robot according to <Example 2> a.
24b is a diagram illustrating a mobile robot system that performs a preset scenario in response to an error occurring in the first robot according to <Example 2> b.
24C is a diagram illustrating a mobile robot system that performs a preset scenario in response to an error occurring in the first robot according to <Example 2> c.
25 is a diagram illustrating a mobile robot system that performs a preset scenario in response to an error occurring in the first robot and the second robot according to <Example 2>;
26A is a diagram illustrating a mobile robot system that performs a preset scenario in response to an error occurring in the second robot according to <Example 2> a.
26B is a diagram illustrating a mobile robot system that performs a preset scenario in response to an error occurring in the second robot according to <Example 2> b.
26C is a diagram illustrating a mobile robot system that performs a preset scenario in response to an error occurring in the second robot according to <Example 2> c.
FIG. 27a is a diagram illustrating a mobile robot system that performs a preset scenario in response to a kidnap generated in a first robot according to <Example 2> a.
FIG. 27b is a diagram illustrating a mobile robot system that performs a preset scenario in response to a kidnap generated in the first robot according to <Example 2> b.
FIG. 27c is a diagram illustrating a mobile robot system that performs a preset scenario in response to a kidnap generated in the first robot according to <Example 2> c.
28a is a diagram illustrating a mobile robot system that performs a preset scenario in response to a kidnap generated in a second robot according to <Example 2> a.
FIG. 28B is a diagram showing a mobile robot system that performs a preset scenario in response to a kidnap generated in a second robot according to <Example 2> b.
FIG. 28c is a diagram illustrating a mobile robot system that performs a preset scenario in response to a kidnap generated in a second robot according to <Example 2> c.
FIG. 29 is a flowchart illustrating a method for the mobile robot system according to <Example 2> to perform a preset scenario in response to an error, a kid-nap, or a communication failure occurring during collaborative driving.
30 is a diagram showing that the mobile robot system according to <Example 3> divides a cleaning target area into a plurality of unit areas and travels cooperatively in each unit area.
31 is a diagram showing a preset scenario performed when a first robot and a second robot detect a first obstacle according to <Example 3>;
32 is a diagram illustrating a preset scenario performed when a first robot does not detect a first obstacle and a second robot detects a first obstacle according to <Example 3>;
FIG. 33 is a diagram showing a preset scenario performed when a first robot and a second robot do not detect a first obstacle according to <Example 3>;
34 is a diagram illustrating a preset scenario performed when a first robot detects a second obstacle and the second robot does not detect the second obstacle, according to <Example 3>;
35 is a flowchart illustrating a method for the mobile robot system according to <Example 3> to perform a preset scenario in response to an obstacle detected during collaborative driving;
FIG. 36A is a graph showing an example of response according to the charging capacity state of a battery while a cooperative driving mode is performed in the mobile robot system according to <Example 4> a.
FIG. 36B is a table showing an example of response according to the charging capacity state of a battery while a cooperative driving mode is performed in the mobile robot system according to <Example 4> b.
37 is an example diagram illustrating correspondence of a plurality of mobile robots in the mobile robot system according to <Example 4>;
38 is an example diagram illustrating correspondence of a plurality of mobile robots in the mobile robot system according to <Embodiment 4>;
39 is an example diagram illustrating correspondence of a plurality of mobile robots in the mobile robot system according to <Example 4>;
40 is a flowchart of a method for performing cooperative driving of a mobile robot system according to <Example 4>;

이하, 이동 로봇 시스템의 실시예에 대하여 도면을 참조하여 보다 상세하게 설명하되, 이하에서 사용되는 기술적 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 명세서에 개시된 기술의 사상을 한정하려는 의도가 아님을 유의해야 한다.Hereinafter, an embodiment of the mobile robot system will be described in more detail with reference to the drawings, but the technical terms used below are only used to describe specific embodiments, and are intended to limit the spirit of the technology disclosed herein. It should be noted that is not

먼저, 이동 로봇 시스템의 실시예에서 이동 로봇(이하, 로봇이라 칭한다)의 구성을 설명한다. First, the configuration of a mobile robot (hereinafter, referred to as a robot) in an embodiment of a mobile robot system will be described.

상기 로봇은, 주행과 동시에 청소를 수행하는 청소 로봇일 수 있다.The robot may be a cleaning robot that cleans while driving.

상기 로봇은, 자동으로, 또는 사용자의 조작에 의해 주행 및 청소를 수행하는 청소 로봇일 수 있다.The robot may be a cleaning robot that travels and cleans automatically or by a user's manipulation.

이를테면, 상기 로봇은, 자율 주행 청소기 및 자율 주행을 수행하는 청소기일 수 있다.For example, the robot may be a self-driving cleaner and a self-driving vacuum cleaner.

상기 로봇은, 일정 영역을 주행하며 위치를 인식하는 청소 로봇일 수 있다.The robot may be a cleaning robot that travels in a certain area and recognizes a location.

상기 로봇은, 주행 중 위치를 인식함과 동시에, 일정 영역의 지도를 작성하는 청소 로봇일 수 있다.The robot may be a cleaning robot that recognizes a location while driving and simultaneously creates a map of a certain area.

상기 로봇은, 일정 영역을 스스로 주행하면서 바닥을 청소하는 기능을 수행할 수 있는데, 여기서 말하는 바닥의 청소에는, 바닥의 먼지(이물질을 포함한다)를 흡입하거나 바닥을 걸레질하는 것이 포함된다.The robot may perform a function of cleaning the floor while traveling on its own in a certain area. The cleaning of the floor here includes suctioning dust (including foreign substances) from the floor or mopping the floor.

상기 로봇은, 주행 및 청소를 위한 복수의 구성을 구비할 수 있다.The robot may have a plurality of configurations for traveling and cleaning.

상기 로봇(100)의 예를 들면, 도 1a 또는 도 1b에 도시된 바와 같은 형태일 수 있다.For example, the robot 100 may have a form as shown in FIG. 1A or FIG. 1B.

상기 로봇(100)은, 도 1a에 도시된 바와 같은 형태일 수 있고, 또는 도 1b에 도시된 바와 같은 형태일 수도 있으며, 또한 도 1a 및 도 1b에 도시된 형태에서 변형된 형태이거나, 도 1a 및 도 1b에 도시된 형태와 다른 형태일 수도 있다.The robot 100 may be of the form shown in FIG. 1A, or may be of the form shown in FIG. 1B, or may be a form modified from the form shown in FIGS. 1A and 1B, or a form shown in FIG. 1A. And it may have a shape different from that shown in FIG. 1B.

상기 로봇(100)은, 도 1a 및 도 1b에 도시된 바와 같이, 본체(110), 청소부(120) 및 센싱부(130)를 포함할 수 있다.As shown in FIGS. 1A and 1B , the robot 100 may include a main body 110 , a cleaning unit 120 and a sensing unit 130 .

상기 본체(10)는, 상기 로봇(100)의 외관을 형성하여, 주행 및 청소를 수행할 수 있다.The main body 10 forms the exterior of the robot 100, and can perform driving and cleaning.

즉, 상기 본체(10)는, 상기 로봇(100)의 전반적인 동작을 수행하게 될 수 있다.That is, the main body 10 may perform overall operations of the robot 100 .

상기 본체(10)는, 주행 및 청소가 용이한 형태로 이루어져 상기 로봇(100)의 외관을 형성할 수 있다.The main body 10 can form the exterior of the robot 100 by being made in a form that is easy to drive and clean.

예를 들면, 원형으로 이루어질 수 있으며, 또한 모서리가 라운딩 처리된 사각형으로 이루어질 수도 있다.For example, it may be formed in a circular shape, or it may be formed in a quadrangular shape with rounded corners.

상기 본체(110)는, 상기 로봇(100)의 주행 및 청소를 위한 구성을 구비할 수 있다.The main body 110 may have a configuration for driving and cleaning of the robot 100 .

상기 본체(10)는, 상기 로봇(100)의 주행 및 청소를 위한 구성을 내부 및 외부에 구비할 수 있다.The main body 10 may have internal and external components for driving and cleaning of the robot 100 .

예를 들면, 주행 동작, 청소 동작 또는 센싱이 이루어지는 구성은 외부에, 상기 로봇(100)의 제어가 이루어지는 구성은 내부에 구비하게 될 수 있다.For example, a component for performing a driving operation, cleaning operation, or sensing may be provided on the outside, and a component for controlling the robot 100 may be provided on the inside.

또한, 상기 본체(110)는, 상기 로봇(100)의 주행을 위한 휠 유닛(111)이 구비될 수 있다. In addition, the main body 110 may be provided with a wheel unit 111 for driving the robot 100.

이에 따라, 상기 로봇(100)이 상기 휠 유닛(111)에 의해 전후좌우로 이동되거나 회전될 수 있다. Accordingly, the robot 100 can be moved back and forth and left and right or rotated by the wheel unit 111 .

또한, 상기 본체(110)는, 상기 로봇(100)의 전원을 공급하는 배터리(미도시)가 장착될 수 있다. In addition, the main body 110 may be equipped with a battery (not shown) that supplies power to the robot 100 .

상기 배터리는 충전 가능하게 구성되며, 상기 본체(110)의 저면부에 착탈 가능하게 구성될 수 있다.The battery is configured to be rechargeable, and may be configured to be detachable from the lower surface of the main body 110 .

상기 청소부(120)는, 상기 본체(110)의 일측으로부터 돌출된 형태로 배치되어, 먼지가 포함된 공기를 흡입하거나 또는 걸레질을 할 수 있다. The cleaning unit 120 is disposed in a form protruding from one side of the main body 110, and can suck air containing dust or wipe the dust.

여기서, 상기 일측은 상기 청소기 본체(110)가 정방향(F)으로 주행하는 측, 즉 청소기 본체(110)의 앞쪽이 될 수 있다.Here, the one side may be the side on which the cleaner body 110 travels in the forward direction (F), that is, the front side of the cleaner body 110.

상기 청소부(120)는, 상기 본체(110)에 착탈 가능하게 결합될 수 있다.The cleaning unit 120 may be detachably coupled to the main body 110 .

상기 청소부(120)가 상기 본체(110)로부터 분리되면, 분리된 상기 청소부(120)를 대체하여 걸레부(미도시)가 상기 본체(110)에 착탈 가능하게 결합될 수 있다. When the cleaning unit 120 is separated from the main body 110, a mop unit (not shown) may be detachably coupled to the main body 110 to replace the separated cleaning unit 120.

따라서, 사용자는 바닥의 먼지를 제거하고자 하는 경우에는 상기 본체(110)에 청소부(120)를 장착하고, 바닥을 닦고자 하는 경우에는 상기 본체(110)에 걸레부를 장착할 수 있다.Therefore, the user can mount the cleaning unit 120 on the main body 110 when removing dust from the floor, and mount the mop unit on the main body 110 when wiping the floor.

상기 센싱부(130)는, 상기 청소부(120)가 위치하는 상기 본체(110)의 일측, 즉 상기 본체(110)의 앞쪽에 배치될 수 있다.The sensing unit 130 may be disposed on one side of the main body 110 where the cleaning unit 120 is located, that is, in front of the main body 110 .

상기 센싱부(130)는, 상기 본체(110)의 상하 방향으로 상기 청소부(120)와 오버랩되도록 배치될 수 있다.The sensing unit 130 may be disposed to overlap the cleaning unit 120 in the vertical direction of the main body 110 .

상기 센싱부(130)는, 상기 본체(110)의 상부에 배치되어, 상기 로봇(100)이 장애물과 부딪히지 않도록 전방의 장애물이나 지형지물 등을 감지하도록 이루어진다. The sensing unit 130 is disposed above the main body 110 to detect obstacles or landmarks in front so that the robot 100 does not collide with the obstacle.

상기 센싱부(130)는, 이러한 감지 기능 외의 다른 센싱 기능을 추가로 수행하도록 구성될 수 있다.The sensing unit 130 may be configured to additionally perform other sensing functions in addition to these sensing functions.

예로써, 상기 센싱부(130)는, 주변의 영상을 획득하기 위한 카메라(131)를 포함할 수 있다. For example, the sensing unit 130 may include a camera 131 for obtaining a surrounding image.

상기 카메라(131)는, 렌즈와 영상 센서(image sensor)를 포함할 수 있다.The camera 131 may include a lens and an image sensor.

또한, 상기 카메라(131)는 상기 본체(110) 주변의 영상을 제어부가 처리할 수 있는 전기적 신호로 변환하여, 예를 들어 상방 영상에 대응되는 전기적 신호를 상기 제어부에 전달할 수 있다. In addition, the camera 131 may convert an image around the main body 110 into an electrical signal that the control unit can process, and transmit an electrical signal corresponding to an upward image to the control unit, for example.

여기서, 상방 영상에 대응되는 전기적 신호는 상기 제어부가 상기 본체(110)의 위치를 검출하는데 사용될 수 있다.Here, the electrical signal corresponding to the upward image may be used by the control unit to detect the position of the main body 110 .

또한, 상기 센싱부(130)는 상기 로봇(100)의 주행 면상 또는 주행 경로 상의 벽체, 가구, 및 낭떠러지 등의 장애물을 감지할 수 있다.In addition, the sensing unit 130 may detect obstacles such as walls, furniture, and cliffs on a driving surface or a driving path of the robot 100 .

또한, 상기 센싱부(130)는, 배터리 충전을 수행하는 도킹 기기의 존재를 감지할 수 있다. In addition, the sensing unit 130 may detect the existence of a docking device that performs battery charging.

또한, 상기 센싱부(130)는, 천장 정보를 감지하여서, 상기 로봇(100)의 주행 구역 또는 청소 구역을 맵핑(Mapping)할 수 있다.Also, the sensing unit 130 may detect ceiling information and map a driving area or cleaning area of the robot 100 .

이하의 도 2에서는 상기 로봇(100)의 구체적인 구성요소와 관련된 일 실시예가 설명된다.In FIG. 2 below, an embodiment related to specific components of the robot 100 is described.

상기 로봇(100)은, 도 2에 도시된 바와 같이, 통신부(1100), 입력부(1200), 주행부(1300), 센싱부(1400), 출력부(1500), 전원부(1600), 메모리(1700), 제어부(1800), 청소부(1900) 중 적어도 하나 또는 이들의 조합을 포함할 수 있다.As shown in FIG. 2, the robot 100 includes a communication unit 1100, an input unit 1200, a driving unit 1300, a sensing unit 1400, an output unit 1500, a power unit 1600, a memory ( 1700), the control unit 1800, and the cleaning unit 1900, or a combination thereof.

이때, 도 2에 도시한 구성요소들이 필수적인 것은 아니어서, 그보다 많은 구성요소들을 갖거나 그보다 적은 구성요소들을 갖는 자율주행 청소기가 구현될 수 있음은 물론이다. 또한, 전술한 바와 같이, 본 명세서에서 설명되는 복수의 이동 로봇은 이하에서 설명된 구성요소들 중 일부만 동일한 구성요소를 포함할 수 있다. 즉, 복수의 이동 로봇이 각각 서로 다른 구성요소로 이루어질 수 있다. At this time, the components shown in FIG. 2 are not essential, so it is a matter of course that an autonomous cleaner having more or fewer components can be implemented. Also, as described above, the plurality of mobile robots described herein may include the same components as some of the components described below. That is, a plurality of mobile robots may be composed of different components.

이하, 각 구성요소들에 대해 살펴보기로 한다.Hereinafter, each component will be reviewed.

우선, 상기 전원부(1600)는 외부 상용 전원에 의해 충전 가능한 상기 배터리를 구비하여 상기 로봇(100) 내로 전원을 공급한다. First, the power supply unit 1600 supplies power to the robot 100 by including the battery that can be charged by an external commercial power source.

상기 전원부(1600)는, 상기 로봇(100)에 포함된 각 구성들에 구동 전원을 공급하여, 상기 로봇(100)이 주행하거나 특정 기능을 수행하는데 요구되는 동작 전원을 공급할 수 있다.The power supply unit 1600 may supply operating power required for the robot 100 to drive or perform a specific function by supplying driving power to each component included in the robot 100 .

이때, 상기 제어부(1800)는 상기 배터리의 전원 잔량을 감지하고, 전원 잔량이 부족하면 외부 상용 전원과 연결된 충전대로 이동하도록 제어하여, 상기 충전대로부터 충전 전류를 공급받아 상기 배터리를 충전할 수 있다. At this time, the control unit 1800 detects the remaining power of the battery, and if the remaining power is insufficient, controls the battery to move to a charging station connected to an external commercial power source, and receives charging current from the charging station to charge the battery.

상기 배터리는 배터리 감지부와 연결되어 배터리 잔량 및 충전 상태가 상기 제어부(1800)에 전달될 수 있다. 이 때, 상기 출력부(1500)는 상기 제어부((1800)에 의해 상기 배터리 잔량을 표시할 수 있다.The battery may be connected to the battery detection unit, and the battery remaining amount and charging state may be transmitted to the control unit 1800 . At this time, the output unit 1500 may display the battery remaining amount by the control unit 1800 .

상기 제어부(1800)는, 인공 지능 기술에 기반하여 정보들을 처리하는 역할을 수행하는 것으로, 정보의 학습, 정보의 추론, 정보의 지각, 자연 언어의 처리 중 적어도 하나를 수행하는 하나 이상의 회로 모듈을 포함할 수 있다.The controller 1800 serves to process information based on artificial intelligence technology, and includes one or more circuit modules that perform at least one of information learning, information reasoning, information perception, and natural language processing. can include

상기 제어부(1800)는, 머신 러닝(machine running) 기술을 이용하여, 상기 로봇(100) 내에 저장된 정보, 이동 단말기 주변의 환경 정보, 통신 가능한 외부 저장소에 저장된 정보 등 방대한 양의 정보(빅데이터, big data)를 학습, 추론, 처리 중 적어도 하나를 수행할 수 있다. 그리고, 상기 제어부(1800)는 상기 머신 러닝 기술을 이용하여 학습된 정보들을 이용하여, 실행 가능한 적어도 하나의 상기 로봇(100)의 동작을 예측(또는 추론)하고, 상기 적어도 하나의 예측된 동작들 중 실현성이 가장 높은 동작이 실행되도록 상기 로봇(100)을 제어할 수 있다. The control unit 1800 uses machine running technology to store a vast amount of information (big data, big data) may perform at least one of learning, reasoning, and processing. In addition, the control unit 1800 predicts (or infers) at least one actionable action of the robot 100 using information learned using the machine learning technology, and the at least one predicted action The robot 100 may be controlled so that the most feasible operation is executed.

머신 러닝 기술은 적어도 하나의 알고리즘에 근거하여, 대규모의 정보들을 수집 및 학습하고, 학습된 정보를 바탕으로 정보를 판단 및 예측하는 기술이다. 정보의 학습이란 정보들의 특징, 규칙, 판단 기준 등을 파악하여, 정보와 정보 사이의 관계를 정량화하고, 정량화된 패턴을 이용하여 새로운 데이터들을 예측하는 동작이다. Machine learning technology is a technology that collects and learns large-scale information based on at least one algorithm, and determines and predicts information based on the learned information. Learning of information is an operation of identifying characteristics, rules, criteria, etc. of information, quantifying the relationship between information and predicting new data using quantified patterns.

머신 러닝 기술이 사용하는 알고리즘은 통계학에 기반한 알고리즘이 될 수 있으며, 예를 들어, 트리 구조 형태를 예측 모델로 사용하는 의사 결정 나무(decision tree), 생물의 신경 네트워크 구조와 기능을 모방하는 인공 신경망(neural network), 생물의 진화 알고리즘에 기반한 유전자 프로그래밍(genetic programming), 관측된 예를 군집이라는 부분집합으로 분배하는 군집화(Clustering), 무작위로 추출된 난수를 통해 함수값을 확률로 계산하는 몬테카를로 방법(Monter carlo method) 등이 될 수 있다. The algorithm used by machine learning technology can be an algorithm based on statistics, for example, a decision tree using a tree structure as a predictive model, and an artificial neural network that mimics the structure and function of a neural network in a living organism. (neural network), genetic programming based on the evolutionary algorithm of organisms, clustering that distributes observed examples into subsets called clusters, and Monte Carlo method that calculates function values as probabilities through randomly extracted random numbers (Monter Carlo method) and the like.

머신 러닝 기술의 한 분야로써, 딥러닝 기술은 인공 신경망(Deap Neuron Network, DNN) 알고리즘을 이용하여, 정보들을 학습, 판단, 처리 중 적어도 하나를 수행하는 기술이다. 인공 신경망(DNN)은 레이어와 레이어 사이를 연결하고, 레이어와 레이어 사이의 데이터를 전달하는 구조를 가질 수 있다. 이러한 딥러닝 기술은 병렬 연산에 최적화된 GPU(graphic processing unit)를 이용하여 인공 신경망(DNN)을 통하여 방대한 양의 정보를 학습할 수 있다.As a field of machine learning technology, deep learning technology is a technology that performs at least one of learning, judgment, and processing of information using a Deep Neuron Network (DNN) algorithm. An artificial neural network (DNN) may have a structure that connects layers and transfers data between layers. Such deep learning technology can learn a vast amount of information through an artificial neural network (DNN) using a graphic processing unit (GPU) optimized for parallel computation.

상기 제어부(1800)는, 외부의 서버 또는 상기 메모리(1700)에 저장된 트레이닝 데이터를 이용하며, 소정의 물체를 인식하기 위한 특징을 검출하는 학습 엔진을 탑재할 수 있다. 이때, 물체를 인식하기 위한 특징에는 물체의 크기, 형태 및 음영 등을 포함할 수 있다.The control unit 1800 may use an external server or training data stored in the memory 1700 and may be equipped with a learning engine that detects a feature for recognizing a predetermined object. In this case, the characteristics for recognizing the object may include the size, shape, and shade of the object.

구체적으로, 상기 제어부(1800)는 상기 카메라(131)를 통해 획득된 영상 중 일부를 학습 엔진에 입력하면, 상기 학습 엔진은 입력된 영상에 포함된 적어도 하나의 사물 또는 생명체를 인식할 수 있다.Specifically, when the controller 1800 inputs a part of the image acquired through the camera 131 to the learning engine, the learning engine can recognize at least one object or living creature included in the input image.

이와 같이, 학습 엔진을 청소기의 주행에 적용하는 경우, 상기 제어부(1800)는, 상기 로봇(100)의 주행에 방해되는 의자 다리, 선풍기, 특정 형태의 발코니 틈과 같은 장애물이 주변에 존재하는지 여부를 인식할 수 있으므로, 상기 로봇(100)의 주행의 효율 및 신뢰도를 높일 수 있다.In this way, when the learning engine is applied to the driving of the vacuum cleaner, the control unit 1800 determines whether or not there are obstacles such as chair legs, electric fans, and certain types of balcony gaps that interfere with the driving of the robot 100. Since it can recognize, the driving efficiency and reliability of the robot 100 can be increased.

한편, 위와 같은 학습 엔진은 상기 제어부(1800)에 탑재될 수도 있고, 외부 서버에 탑재될 수도 있다. 학습 엔진이 외부 서버에 탑재된 경우, 상기 제어부(1800)는 분석의 대상인 적어도 하나의 영상을 상기 외부 서버로 전송하도록 상기 통신부(1100)를 제어할 수 있다.Meanwhile, the above learning engine may be installed in the control unit 1800 or may be installed in an external server. When the learning engine is installed in an external server, the controller 1800 may control the communication unit 1100 to transmit at least one image to be analyzed to the external server.

외부 서버는 청소기로부터 전송받은 영상을 학습 엔진에 입력함으로서, 해당 영상에 포함된 적어도 하나의 사물 또는 생명체를 인식할 수 있다. 아울러, 외부 서버는 인식결과와 관련된 정보를 다시 청소기로 전송할 수 있다. 이때, 인식결과와 관련된 정보는 분석의 대상인 영상에 포함된 객체의 개수, 각 개체의 이름과 관련된 정보를 포함할 수 있다.The external server may recognize at least one object or living creature included in the image by inputting the image transmitted from the cleaner to the learning engine. In addition, the external server may transmit information related to the recognition result to the cleaner again. In this case, the information related to the recognition result may include information related to the number of objects included in the image to be analyzed and the name of each object.

상기 주행부(1300)는 모터를 구비하여, 상기 모터를 구동함으로써, 좌, 우측 주바퀴를 양 방향으로 회전시켜 본체를 회전 또는 이동시킬 수 있다. 이때, 상기 좌, 우측 주바퀴는 독립적으로 움직일 수 있다. 상기 주행부(1300)는, 상기 본체(110)를 전후좌우로 진행시키거나, 곡선주행시키거나, 제자리 회전시킬 수 있다.The driving unit 1300 may include a motor, and by driving the motor, the left and right main wheels may be rotated in both directions to rotate or move the main body. At this time, the left and right main wheels can move independently. The driving unit 1300 may move the body 110 forward and backward, left and right, drive in a curve, or rotate in place.

상기 입력부(1200)는, 사용자로부터 상기 로봇(100)에 대한 각종 제어 명령을 입력 받을 수 있다. The input unit 1200 may receive various control commands for the robot 100 from a user.

상기 입력부(1200)는, 하나 이상의 버튼을 포함할 수 있다.The input unit 1200 may include one or more buttons.

예를 들어, 상기 입력부(1200)는 확인버튼, 설정버튼 등을 포함할 수 있다. 확인버튼은 감지 정보, 장애물 정보, 위치 정보, 맵 정보를 확인하는 명령을 사용자로부터 입력받기 위한 버튼이고, 설정버튼은 상기 정보들을 설정하는 명령을 사용자로부터 입력받기 위한 버튼이다. For example, the input unit 1200 may include a confirmation button, a setting button, and the like. The confirmation button is a button for receiving a command for confirming detection information, obstacle information, location information, and map information from the user, and the setting button is a button for receiving a command for setting the information from the user.

또한, 상기 입력부(1200)는 이전 사용자 입력을 취소하고 다시 사용자 입력을 받기 위한 입력재설정버튼, 기 설정된 사용자 입력을 삭제하기 위한 삭제버튼, 작동 모드를 설정하거나 변경하는 버튼, 충전대로 복귀하도록 하는 명령을 입력받는 버튼 등을 포함할 수 있다.In addition, the input unit 1200 includes an input reset button for canceling a previous user input and receiving a user input again, a delete button for deleting a preset user input, a button for setting or changing an operating mode, and a command for returning to the charging station. It may include a button for receiving an input.

또한, 상기 입력부(1200)는 하드 키나 소프트 키, 터치패드 등으로 이동 로봇의 상부에 설치될 수 있다. 또, 상기 입력부(1200)는 상기 출력부(1500)와 함께 터치 스크린의 형태를 가질 수 있다. In addition, the input unit 1200 may be installed on top of the mobile robot as a hard key, a soft key, or a touch pad. In addition, the input unit 1200 may have the form of a touch screen together with the output unit 1500 .

상기 출력부(1500)는, 상기 로봇(100)의 상부에 설치될 수 있다. 물론 설치 위치나 설치 형태는 달라질 수 있다. 예를 들어, 상기 출력부(1500)는 배터리 상태 또는 주행 방식 등을 화면에 표시할 수 있다.The output unit 1500 may be installed above the robot 100 . Of course, the installation location or installation form may vary. For example, the output unit 1500 may display a battery state or a driving method on a screen.

또한, 상기 출력부(1500)는, 상기 센싱부(1400)가 검출한 이동 로봇 내부의 상태 정보, 예를 들어 이동 로봇에 포함된 각 구성들의 현재 상태를 출력할 수 있다. 또, 출력부(1500)는 센싱부(1400)가 검출한 외부의 상태 정보, 장애물 정보, 위치 정보, 지도 정보 등을 화면에 디스플레이할 수 있다. 출력부(1500)는 발광 다이오드(Light Emitting Diode; LED), 액정 표시 장치(Liquid Crystal Display; LCD), 플라즈마 표시 패널(Plasma Display Panel), 유기 발광 다이오드(Organic Light Emitting Diode; OLED) 중 어느 하나의 소자로 형성될 수 있다.In addition, the output unit 1500 may output state information within the mobile robot detected by the sensing unit 1400, for example, the current state of each component included in the mobile robot. In addition, the output unit 1500 may display external state information, obstacle information, location information, map information, and the like detected by the sensing unit 1400 on a screen. The output unit 1500 may be any one of a light emitting diode (LED), a liquid crystal display (LCD), a plasma display panel, and an organic light emitting diode (OLED). It can be formed as an element of.

상기 출력부(1500)는, 상기 제어부(1800)에 의해 수행되는 상기 로봇(100)의 동작 과정 또는 동작 결과를 청각적으로 출력하는 음향 출력 수단을 더 포함할 수 있다. 예를 들어, 상기 출력부(1500)는 상기 제어부(1800)에 의해 생성된 경고 신호에 따라 외부에 경고음을 출력할 수 있다.The output unit 1500 may further include a sound output means for audibly outputting the operation process or operation result of the robot 100 performed by the control unit 1800. For example, the output unit 1500 may output a warning sound to the outside according to the warning signal generated by the controller 1800 .

이때, 음향 출력 수단(미도시)은 비퍼(beeper), 스피커 등의 음향을 출력하는 수단일 수 있고, 상기 출력부(1500)는 상기 메모리(1700)에 저장된 소정의 패턴을 가진 오디오 데이터 또는 메시지 데이터 등을 이용하여 음향 출력 수단을 통해 외부로 출력할 수 있다.In this case, the sound output unit (not shown) may be a unit for outputting sound such as a beeper or a speaker, and the output unit 1500 may include audio data or messages having a predetermined pattern stored in the memory 1700. Data and the like may be used to externally output through an audio output unit.

따라서, 본 발명의 일 실시예에 따른 상기 로봇(100)은, 상기 출력부(1500)를 통해 주행 영역에 대한 환경 정보를 화면에 출력하거나 음향으로 출력할 수 있다. 또 다른 실시예에 따라, 상기 로봇은 상기 출력부(1500)를 통해 출력할 화면이나 음향을 단말 장치가 출력하도록, 지도 정보 또는 환경 정보를 상기 통신부(1100)릍 통해 단말 장치에 전송할 수 있다.Accordingly, the robot 100 according to an embodiment of the present invention may output environment information about the driving area on a screen or output sound through the output unit 1500 . According to another embodiment, the robot may transmit map information or environment information to the terminal device through the communication unit 1100 so that the terminal device outputs a screen or sound to be output through the output unit 1500 .

상기 메모리(1700)는 상기 로봇(100)을 제어 또는 구동하는 제어 프로그램 및 그에 따른 데이터를 저장한다. 상기 메모리(1700)는 오디오 정보, 영상 정보, 장애물 정보, 위치 정보, 지도 정보 등을 저장할 수 있다. 또, 상기 메모리(1700)는 주행 패턴과 관련된 정보를 저장할 수 있다.The memory 1700 stores a control program for controlling or driving the robot 100 and corresponding data. The memory 1700 may store audio information, image information, obstacle information, location information, map information, and the like. Also, the memory 1700 may store information related to driving patterns.

상기 메모리(1700)는 비휘발성 메모리를 주로 사용한다. 여기서, 상기 비휘발성 메모리(Non-Volatile Memory, NVM, NVRAM)는 전원이 공급되지 않아도 저장된 정보를 계속 유지할 수 있는 저장 장치로서, 일 예로, 롬(ROM), 플래시 메모리(Flash Memory), 마그네틱 컴퓨터 기억 장치(예를 들어, 하드 디스크, 디스켓 드라이브, 마그네틱 테이프), 광디스크 드라이브, 마그네틱 RAM, PRAM 등일 수 있다.The memory 1700 mainly uses a non-volatile memory. Here, the non-volatile memory (NVM, NVRAM) is a storage device capable of continuously maintaining stored information even when power is not supplied, for example, a ROM, a flash memory, a magnetic computer It may be a storage device (eg, hard disk, diskette drive, magnetic tape), optical disk drive, magnetic RAM, PRAM, and the like.

또한, 상기 메모리(1700)에는 주행 구역에 대한 맵(Map)이 저장될 수 있다. 맵은 상기 로봇(100)과 유선 또는 무선 통신을 통해 정보를 교환할 수 있는 외부 단말기, 서버 등에 의해 입력된 것일 수도 있고, 상기 로봇(100)이 주행을 하면서 스스로 생성한 것일 수도 있다.Also, a map for a driving area may be stored in the memory 1700 . The map may be input by an external terminal or server capable of exchanging information with the robot 100 through wired or wireless communication, or may be generated by the robot 100 while driving.

맵에는 주행 구역 내의 방들의 위치가 표시될 수 있다. 또한, 상기 로봇(100)의 현재 위치가 맵 상에 표시될 수 있으며, 맵 상에서의 상기 로봇(100)의 현재의 위치는 주행 과정에서 갱신될 수 있다. The location of rooms within the driving area may be indicated on the map. In addition, the current location of the robot 100 may be displayed on a map, and the current location of the robot 100 on the map may be updated during driving.

상기 메모리(1700)는 청소 이력 정보를 저장할 수 있다. 이러한 청소 이력 정보는 청소를 수행할 때마다 생성될 수 있다.The memory 1700 may store cleaning history information. Such cleaning history information may be generated whenever cleaning is performed.

상기 메모리(1700)에 저장되는 주행 구역에 대한 맵(Map)은, 주행 구역의 소정 정보 들을 소정 형식으로 저장한 데이터로서, 청소 중 주행에 사용되는 내비게이션 맵(Navigation map), 위치 인식에 사용되는 SLAM(Simultaneous localization and mapping) 맵, 장애물 등에 부딪히면 해당 정보를 저장하여 학습 청소시 사용하는 학습 맵, 전역 위치 인식에 사용되는 전역 위치 맵, 인식된 장애물에 관한 정보가 기록되는 장애물 인식 맵 등일 수 있다.The map for the driving area stored in the memory 1700 is data in which predetermined information of the driving area is stored in a predetermined format, and includes a navigation map used for driving during cleaning and location recognition. Simultaneous localization and mapping (SLAM) map, a learning map used for learning and cleaning by storing the corresponding information when an obstacle is encountered, a global location map used for global location recognition, an obstacle recognition map in which information about recognized obstacles is recorded, etc. .

상기 맵(Map)은 복수의 노드를 포함하는 노드맵을 의미할 수 있다. 여기서, 노드(Node)란, 주행 구역 내의 어느한 위치인 지점(Point)에 대응하는 맵 상의 어느 한 위치를 나타내는 데이터를 의미한다.The map may mean a node map including a plurality of nodes. Here, a node refers to data indicating a location on a map corresponding to a point, which is a location within a driving area.

한편, 상기 센싱부(1400)는, 외부 신호 감지 센서, 전방 감지 센서, 낭떠러지 감지 센서, 2차원 카메라 센서 및 3차원 카메라 센서 중 적어도 하나를 포함할 수 있다.Meanwhile, the sensing unit 1400 may include at least one of an external signal detection sensor, a front detection sensor, a cliff detection sensor, a 2D camera sensor, and a 3D camera sensor.

외부 신호 감지 센서는 상기 로봇(100)의 외부 신호를 감지할 수 있다. 외부 신호 감지 센서는, 일 예로, 적외선 센서(Infrared Ray Sensor), 초음파 센서(Ultra Sonic Sensor), RF 센서(Radio Frequency Sensor) 등일 수 있다.An external signal detection sensor may detect an external signal of the robot 100 . The external signal detection sensor may be, for example, an infrared ray sensor, an ultra sonic sensor, or a radio frequency sensor (RF sensor).

상기 로봇(100)은 외부 신호 감지 센서를 이용하여 충전대가 발생하는 안내 신호를 수신하여 충전대의 위치 및 방향을 확인할 수 있다. 이때, 충전대는 이동 로봇이 복귀 가능하도록 방향 및 거리를 지시하는 안내 신호를 발신할 수 있다. 즉, 상기 로봇(100)은 충전대로부터 발신되는 신호를 수신하여 현재의 위치를 판단하고 이동 방향을 설정하여 충전대로 복귀할 수 있다.The robot 100 may receive a guide signal generated by the charging station using an external signal detection sensor to check the location and direction of the charging station. At this time, the charging station may transmit a guide signal indicating a direction and distance so that the mobile robot can return. That is, the robot 100 may receive a signal transmitted from the charging station, determine the current position, set a moving direction, and return to the charging station.

한편, 전방 감지 센서는, 상기 로봇(100)의 전방, 구체적으로 상기 로봇(100)의 측면 외주면을 따라 일정 간격으로 설치될 수 있다. 전방 감지 센서는 상기 로봇(100)의 적어도 일 측면에 위치하여, 전방의 장애물을 감지하기 위한 것으로서, 전방 감지 센서는 상기 로봇(100)의 이동 방향에 존재하는 물체, 특히 장애물을 감지하여 검출 정보를 상기 제어부(1800)에 전달할 수 있다. 즉, 전방 감지 센서는, 상기 로봇(100)의 이동 경로 상에 존재하는 돌출물, 집안의 집기, 가구, 벽면, 벽 모서리 등을 감지하여 그 정보를 상기 제어부(1800)에 전달할 수 있다.Meanwhile, the front detection sensors may be installed at regular intervals along the front side of the robot 100, specifically along the outer circumferential surface of the side of the robot 100. The front detection sensor is located on at least one side of the robot 100 to detect an obstacle in front. may be transmitted to the control unit 1800. That is, the front detection sensor may detect protruding objects, furnishings, furniture, wall surfaces, and wall corners existing on the moving path of the robot 100 and transmit the information to the control unit 1800 .

전방 감지 센서는, 일 예로, 적외선 센서, 초음파 센서, RF 센서, 지자기 센서 등일 수 있고, 상기 로봇(100)은 전방 감지 센서로 한 가지 종류의 센서를 사용하거나 필요에 따라 두 가지 종류 이상의 센서를 함께 사용할 수 있다.The front detection sensor may be, for example, an infrared sensor, an ultrasonic sensor, an RF sensor, a geomagnetic sensor, and the like, and the robot 100 uses one type of sensor as the front detection sensor or, if necessary, two or more types of sensors. can be used together.

일 예로, 초음파 센서는 일반적으로 원거리의 장애물을 감지하는 데에 주로 사용될 수 있다. 초음파 센서는 발신부와 수신부를 구비하여, 상기 제어부(1800)는 발신부를 통해 방사된 초음파가 장애물 등에 의해 반사되어 수신부에 수신되는 지의 여부로 장애물의 존부를 판단하고, 초음파 방사 시간과 초음파 수신 시간을 이용하여 장애물과의 거리를 산출할 수 있다.For example, an ultrasonic sensor may be generally used to detect a long-distance obstacle. The ultrasonic sensor includes a transmitting unit and a receiving unit, and the control unit 1800 determines whether or not there is an obstacle based on whether or not the ultrasonic waves emitted through the transmitting unit are reflected by an obstacle and received by the receiving unit, and the ultrasonic radiation time and the ultrasonic reception time are determined. The distance to the obstacle can be calculated using .

또한, 상기 제어부(1800)는 발신부에서 방사된 초음파와, 수신부에 수신되는 초음파를 비교하여, 장애물의 크기와 관련된 정보를 검출할 수 있다. 예를 들어, 상기 제어부(1800)는 수신부에 더 많은 초음파가 수신될수록, 장애물의 크기가 큰 것으로 판단할 수 있다.In addition, the control unit 1800 may detect information related to the size of the obstacle by comparing the ultrasound emitted by the transmitter and the ultrasound received by the receiver. For example, the controller 1800 may determine that the size of the obstacle increases as more ultrasound waves are received by the receiver.

일 실시예에서, 복수(일 예로, 5개)의 초음파 센서가 상기 로봇(100)의 전방 측면에 외주면을 따라 설치될 수 있다. 이때, 바람직하게 초음파 센서는 발신부와 수신부가 교대로 상기 로봇(100)의 전면에 설치될 수 있다.In one embodiment, a plurality (eg, five) of ultrasonic sensors may be installed along the outer circumferential surface of the front side of the robot 100 . In this case, the ultrasonic sensor may be installed in front of the robot 100 alternately with a transmitting unit and a receiving unit.

즉, 발신부는 본체의 전면 중앙으로부터 좌, 우측에 이격되도록 배치될 수 있고, 수신부의 사이에 하나 또는 둘 이상의 발신부가 배치되어 장애물 등으로부터 반사된 초음파 신호의 수신 영역을 형성할 수 있다. 이와 같은 배치로 센서의 수를 줄이면서 수신 영역을 확장할 수 있다. 초음파의 발신 각도는 크로스토크(crosstalk) 현상을 방지하도록 서로 다른 신호에 영향을 미치지 아니하는 범위의 각을 유지할 수 있다. 또한, 수신부들의 수신 감도는 서로 다르게 설정될 수 있다.That is, the transmitting unit may be disposed to be spaced apart from the front center of the main body on the left and right sides, and one or more transmitting units may be disposed between the receiving units to form a reception area of an ultrasonic signal reflected from an obstacle or the like. With this arrangement, the reception area can be expanded while reducing the number of sensors. The transmission angle of the ultrasonic waves may be maintained within a range that does not affect different signals in order to prevent crosstalk. Also, reception sensitivities of the receivers may be set differently.

또한, 초음파 센서에서 발신되는 초음파가 상향으로 출력되도록 초음파 센서는 일정 각도만큼 상향으로 설치될 수 있고, 이때, 초음파가 하향으로 방사되는 것을 방지하기 위해 소정의 차단 부재를 더 포함할 수 있다.In addition, the ultrasonic sensor may be installed upward by a predetermined angle so that ultrasonic waves emitted from the ultrasonic sensor are output upward, and at this time, a predetermined blocking member may be further included to prevent ultrasonic waves from being emitted downward.

한편, 전방 감지 센서는, 전술한 바와 같이, 두 가지 종류 이상의 센서를 함께 사용할 수 있고, 이에 따라, 전방 감지 센서는 적외선 센서, 초음파 센서, RF 센서 등 중 어느 한 가지 종류의 센서를 사용할 수 있다.Meanwhile, as described above, the front detection sensor may use two or more types of sensors together, and thus, the front detection sensor may use any one type of sensor such as an infrared sensor, an ultrasonic sensor, or an RF sensor. .

일 예로, 전방 감지 센서는 초음파 센서 이외에 다른 종류의 센서로 적외선 센서를 포함할 수 있다.For example, the front detection sensor may include an infrared sensor as another type of sensor in addition to the ultrasonic sensor.

적외선 센서는 초음파 센서와 함께 상기 로봇(100)의 외주면에 설치될 수 있다. 적외선 센서 역시, 전방이나 측면에 존재하는 장애물을 감지하여 장애물 정보를 상기 제어부(1800)에 전달할 수 있다. 즉, 적외선 센서는, 상기 로봇(100)의 이동 경로 상에 존재하는 돌출물, 집안의 집기, 가구, 벽면, 벽 모서리 등을 감지하여 그 정보를 상기 제어부(1800)에 전달한다. 따라서, 상기 본체(110)가 장애물과의 충돌없이 특정 영역 내에서 이동할 수 있다.An infrared sensor may be installed on an outer circumferential surface of the robot 100 together with an ultrasonic sensor. The infrared sensor may also detect an obstacle in front or on the side and transmit obstacle information to the controller 1800 . That is, the infrared sensor detects protrusions, fixtures, furniture, wall surfaces, wall corners, etc. existing on the moving path of the robot 100 and transmits the information to the control unit 1800. Therefore, the main body 110 can move within a specific area without colliding with an obstacle.

한편, 낭떠러지 감지 센서(또는 클리프 센서(Cliff Sensor))는, 다양한 형태의 광 센서를 주로 이용하여, 상기 본체(110)를 지지하는 바닥의 장애물을 감지할 수 있다.Meanwhile, the cliff detection sensor (or cliff sensor) may detect an obstacle on the floor supporting the main body 110 by mainly using various types of optical sensors.

즉, 낭떠러지 감지 센서는, 상기 로봇(100)의 배면에 설치되되, 상기 로봇(100)의 종류에 따라 다른 위치에 설치될 수 있음은 물론이다. 낭떠러지 감지 센서는 상기 로봇(100)의 배면에 위치하여, 바닥의 장애물을 감지하기 위한 것으로서, 낭떠러지 감지 센서는 상기 장애물 감지 센서와 같이 발광부와 수광부를 구비한 적외선 센서, 초음파 센서, RF 센서, PSD(Position Sensitive Detector) 센서 등일 수 있다.That is, the cliff detection sensor is installed on the rear surface of the robot 100, and may be installed in different positions according to the type of the robot 100, of course. The cliff detection sensor is located on the back of the robot 100 to detect obstacles on the floor, and the cliff detection sensor includes an infrared sensor, an ultrasonic sensor, an RF sensor, It may be a PSD (Position Sensitive Detector) sensor or the like.

일 예로, 낭떠러지 감지 센서 중 어느 하나는 상기 로봇(100)의 전방에 설치되고, 다른 두 개의 낭떠러지 감지 센서는 상대적으로 뒤쪽에 설치될 수 있다.For example, one of the cliff detection sensors may be installed in front of the robot 100, and the other two cliff detection sensors may be relatively installed in the rear.

예를 들어, 낭떠러지 감지 센서는 PSD 센서일 수 있으나, 복수의 서로 다른 종류의 센서로 구성될 수도 있다.For example, the cliff detection sensor may be a PSD sensor, but may also be composed of a plurality of different types of sensors.

PSD 센서는 반도체 표면저항을 이용해서 1개의 p-n접합으로 입사광의 단장거리 위치를 검출한다. PSD 센서에는 일축 방향만의 광을 검출하는 1차원 PSD 센서와, 평면상의 광위치를 검출할 수 있는 2차원 PSD 센서가 있으며, 모두 pin 포토 다이오드 구조를 가질 수 있다. PSD 센서는 적외선 센서의 일종으로서, 적외선을 이용하여, 적외선을 송신한 후 장애물에서 반사되어 돌아오는 적외선의 각도를 측정하여 거리를 측정한다. 즉, PSD 센서는 삼각측량방식을 이용하여, 장애물과의 거리를 산출한다. The PSD sensor uses semiconductor surface resistance to detect the short-range position of incident light with one p-n junction. PSD sensors include a one-dimensional PSD sensor that detects light only in one axis direction and a two-dimensional PSD sensor that can detect a light position on a plane, both of which may have a pin photodiode structure. The PSD sensor is a type of infrared sensor, and measures distance by using infrared rays to transmit infrared rays and then measuring an angle of the infrared rays reflected from an obstacle and returned. That is, the PSD sensor calculates the distance to the obstacle using a triangulation method.

PSD 센서는 장애물에 적외선을 발광하는 발광부와, 장애물로부터 반사되어 돌아오는 적외선을 수광하는 수광부를 구비하되, 일반적으로 모듈 형태로 구성된다. PSD 센서를 이용하여, 장애물을 감지하는 경우, 장애물의 반사율, 색의 차이에 상관없이 안정적인 측정값을 얻을 수 있다.The PSD sensor includes a light emitting unit that emits infrared rays from an obstacle and a light receiving unit that receives infrared rays reflected from the obstacle and returned, but is generally configured in a module form. When an obstacle is detected using the PSD sensor, a stable measurement value can be obtained regardless of the difference in reflectance and color of the obstacle.

상기 제어부(1800)는 낭떠러지 감지 센서가 지면을 향해 발광한 적외선의 발광신호와 장애물에 의해 반사되어 수신되는 반사신호 간의 적외선 각도를 측정하여, 낭떠러지를 감지하고 그 깊이를 분석할 수 있다.The control unit 1800 may detect the cliff and analyze its depth by measuring an infrared angle between an infrared emission signal emitted by the cliff detection sensor toward the ground and a reflection signal reflected by an obstacle and received.

한편, 상기 제어부(1800)는 낭떠러지 감지 센서를 이용하여 감지한 낭떠러지의 지면 상태에 따라 통과 여부를 판단할 수 있고, 판단 결과에 따라 낭떠러지의 통과 여부를 결정할 수 있다. 예를 들어, 상기 제어부(1800)은 낭떠러지 감지 센서를 통해 낭떠러지의 존재 여부 및 낭떠러지 깊이를 판단한 다음, 낭떠러지 감지 센서를 통해 반사 신호를 감지한 경우에만 낭떠러지를 통과하도록 한다.Meanwhile, the controller 1800 may determine whether or not to pass the cliff according to the state of the ground of the cliff detected using the cliff detection sensor, and determine whether or not the cliff passes according to the determination result. For example, the control unit 1800 determines whether a cliff exists and the depth of the cliff through a cliff detection sensor, and then passes through the cliff only when a reflection signal is detected through the cliff detection sensor.

다른 예로, 상기 제어부(1800)는 낭떠러지 감지 센서를 이용하여 상기 로봇(100)의 들림 현상을 판단할 수도 있다.As another example, the control unit 1800 may determine whether the robot 100 is lifted by using a cliff detection sensor.

한편, 2차원 카메라 센서는, 상기 로봇(100)의 일면에 구비되어, 이동 중 본체 주변과 관련된 이미지 정보를 획득한다.On the other hand, a 2D camera sensor is provided on one side of the robot 100 to obtain image information related to the surroundings of the main body during movement.

옵티컬 플로우 센서(Optical Flow Sensor)는, 센서 내에 구비된 이미지 센서로부터 입력되는 하방 영상을 변환하여 소정 형식의 영상 데이터를 생성한다. 생성된 영상 데이터는 상기 메모리(1700)에 저장될 수 있다.An optical flow sensor converts a downward image input from an image sensor included in the sensor to generate image data in a predetermined format. The generated image data may be stored in the memory 1700 .

또한, 하나 이상의 광원이 옵티컬 플로우 센서에 인접하여 설치될 수 있다. 하나 이상의 광원은, 이미지 센서에 의해 촬영되는 바닥면의 소정 영역에 빛을 조사한다. 즉, 상기 로봇(100)이 바닥면을 따라 특정 영역을 이동하는 경우에, 바닥면이 평탄하면 이미지 센서와 바닥면 사이에는 일정한 거리가 유지된다. 반면, 상기 로봇(100)이 불균일한 표면의 바닥면을 이동하는 경우에는 바닥면의 요철 및 장애물에 의해 일정 거리 이상 멀어지게 된다. 이때 하나 이상의 광원은 조사되는 빛의 양을 조절하도록 상기 제어부(1800)에 의해 제어될 수 있다. 상기 광원은 광량 조절이 가능한 발광 소자, 예를 들어 LED(Light Emitting Diode) 등일 수 있다.Also, one or more light sources may be installed adjacent to the optical flow sensor. One or more light sources radiate light to a predetermined area of the floor captured by the image sensor. That is, when the robot 100 moves in a specific area along the floor, a constant distance is maintained between the image sensor and the floor if the floor is flat. On the other hand, when the robot 100 moves on the bottom surface of an uneven surface, it moves farther than a certain distance due to irregularities and obstacles on the bottom surface. At this time, one or more light sources may be controlled by the controller 1800 to adjust the amount of light emitted. The light source may be a light emitting device capable of adjusting the amount of light, for example, a light emitting diode (LED) or the like.

옵티컬 플로우 센서를 이용하여, 상기 제어부(1800)는 상기 로봇(100)의 미끄러짐과 무관하게 상기 로봇(100)의 위치를 검출할 수 있다. 상기 제어부(1800)은 옵티컬 플로우 센서에 의해 촬영된 영상 데이터를 시간에 따라 비교 분석하여 이동 거리 및 이동 방향을 산출하고, 이를 근거로 상기 로봇(100)의 위치를 산출할 수 있다. 옵티컬 플로우 센서를 이용하여 상기 로봇(100)의 하방에 대한 이미지 정보를 이용함으로써, 상기 제어부(1800)는 다른 수단에 의해 산출한 상기 로봇(100)의 위치에 대하여 미끄러짐에 강인한 보정을 할 수 있다.Using the optical flow sensor, the controller 1800 can detect the position of the robot 100 regardless of the slip of the robot 100 . The controller 1800 compares and analyzes image data captured by the optical flow sensor over time to calculate a moving distance and a moving direction, and based on this, the position of the robot 100 can be calculated. By using the image information on the lower side of the robot 100 using the optical flow sensor, the control unit 1800 can make corrections that are robust against slipping with respect to the position of the robot 100 calculated by other means. .

3차원 카메라 센서는 상기 본체(110)의 일면 또는 일부분에 부착되어, 상기 본체(110)의 주위와 관련된 3차원 좌표 정보를 생성할 수 있다.The 3D camera sensor may be attached to one surface or part of the main body 110 to generate 3D coordinate information related to the periphery of the main body 110 .

즉, 3차원 카메라 센서는 상기 로봇(100)과 피촬영 대상체의 원근거리를 산출하는 3차원 뎁스 카메라(3D Depth Camera)일 수 있다.That is, the 3D camera sensor may be a 3D depth camera that calculates a near and far distance between the robot 100 and an object to be photographed.

구체적으로, 3차원 카메라 센서는 상기 본체(110)의 주위와 관련된 2차원 영상을 촬영할 수 있으며, 촬영된 2차원 영상에 대응되는 복수의 3차원 좌표 정보를 생성할 수 있다.Specifically, the 3D camera sensor may capture a 2D image related to the surroundings of the main body 110 and generate a plurality of 3D coordinate information corresponding to the captured 2D image.

일 실시예에서 3차원 카메라 센서는 기존의 2차원 영상을 획득하는 카메라를 2개 이상 구비하여, 상기 2개 이상의 카메라에서 획득되는 2개 이상의 영상을 조합하여, 3차원 좌표 정보를 생성하는 스테레오 비전 방식으로 형성될 수 있다.In one embodiment, the 3D camera sensor includes two or more cameras that acquire conventional 2D images, and combines two or more images obtained from the two or more cameras to generate stereo vision to generate 3D coordinate information. can be formed in this way.

구체적으로, 상기 실시예에 따른 3차원 카메라 센서는 상기 본체(110)의 전방을 향해 하측으로 제1 패턴의 광을 조사하는 제1 패턴 조사부와, 상기 본체의 전방을 향해 상측으로 제2 패턴의 광을 조사하는 제2 패턴 조사부 및 본체의 전방의 영상을 획득하는 영상 획득부를 포함할 수 있다. 이로써, 상기 영상 획득부는 상기 제1 패턴의 광과 상기 제2 패턴의 광이 입사된 영역의 영상을 획득할 수 있다.Specifically, the 3D camera sensor according to the embodiment includes a first pattern irradiation unit for irradiating light of a first pattern downward toward the front of the body 110, and a second pattern irradiation upward toward the front of the body. It may include a second pattern irradiation unit for irradiating light and an image acquisition unit for obtaining an image of the front of the main body. Accordingly, the image acquiring unit may obtain an image of an area where the light of the first pattern and the light of the second pattern are incident.

또 다른 실시예에서 3차원 카메라 센서는 단일 카메라와 함께 적외선 패턴을 조사하는 적외선 패턴 방출부를 구비하고, 적외선 패턴 방출부에서 조사된 적외선 패턴이 피촬영 대상체에 투영된 모양을 캡쳐함으로써, 3차원 카메라 센서와 피촬영 대상체 사이의 거리를 측정할 수 있다. 이러한 3차원 카메라 센서는 IR(Infra Red) 방식의 3차원 카메라 센서일 수 있다.In another embodiment, the 3D camera sensor includes an infrared pattern emitter that emits an infrared pattern together with a single camera, and captures a shape of an infrared pattern emitted from the infrared pattern emitter projected onto an object to be photographed, thereby capturing the 3D camera. A distance between a sensor and an object to be photographed may be measured. The 3D camera sensor may be an Infra Red (IR) 3D camera sensor.

또 다른 실시예에서 3차원 카메라 센서는 단일 카메라와 함께 빛을 방출하는 발광부를 구비하고, 발광부에서 방출되는 레이저 중 피촬영 대상체로부터 반사되는 일부를 수신하며, 수신된 레이저를 분석함으로써, 3차원 카메라 센서와 피촬영 대상체 사이의 거리를 측정할 수 있다. 이러한 3차원 카메라 센서는 TOF(Time of Flight) 방식의 3차원 카메라 센서일 수 있다.In another embodiment, the 3D camera sensor includes a single camera and a light emitting unit that emits light, receives a portion of the laser emitted from the light emitting unit and is reflected from an object to be photographed, and analyzes the received laser beam to obtain a 3D image. A distance between a camera sensor and an object to be photographed may be measured. The 3D camera sensor may be a time of flight (TOF) type 3D camera sensor.

구체적으로, 위와 같은 3차원 카메라 센서의 레이저는 적어도 일방향으로 연장된 형태의 레이저를 조사하도록 구성된다. 일 예에서, 상기 3차원 카메라 센서는 제1 및 제2 레이저를 구비할 수 있으며, 상기 제1 레이저는 서로 교차하는 직선 형태의 레이저를 조사하고, 제2 레이저는 단일의 직선 형태의 레이저를 조사할 수 있다. 이에 따르면, 최하단 레이저는 바닥 부분의 장애물을 감지하는 데에 이용되고, 최상단 레이저는 상부의 장애물을 감지하는 데에 이용되며, 최하단 레이저와 최상단 레이저 사이의 중간 레이저는 중간 부분의 장애물을 감지하는 데에 이용된다.Specifically, the laser of the 3D camera sensor as described above is configured to irradiate a laser in a form extending in at least one direction. In one example, the 3D camera sensor may include first and second lasers, the first laser irradiates a laser in the form of a straight line that crosses each other, and the second laser irradiates a laser in the form of a single straight line. can do. According to this, the lowest laser is used to detect obstacles in the bottom part, the top laser is used to detect obstacles in the upper part, and the middle laser between the lowest laser and the uppermost laser is used to detect obstacles in the middle part. is used for

상기 로봇(100)이 주행하는 중에, 상기 센싱부(1400)는 상기 로봇(100) 주변의 영상들을 획득한다. 이하, 상기 센싱부(1400)에 의해 획득된 영상을 '획득영상'이라고 정의한다.While the robot 100 is running, the sensing unit 1400 acquires images around the robot 100 . Hereinafter, an image acquired by the sensing unit 1400 is defined as an 'obtained image'.

획득영상에는 천장에 위치하는 조명들, 경계(edge), 코너(corner), 얼룩(blob), 굴곡(ridge) 등의 여러가지 특징(feature)들이 포함된다.The obtained image includes various features such as lights located on the ceiling, edges, corners, blobs, and ridges.

상기 제어부(1800)는 획득영상들 각각으로부터 특징을 검출하고, 각 특징점을 근거로 디스크립터(descriptor)를 산출한다. 디스크립터(descriptor)는, 특징점을 나타내기 위한 소정 형식의 데이터를 의미하며 디스크립터들 간의 거리 또는 유사도가 산출 가능한 형식의 수학적 데이터를 의미한다. 예를 들어, 디스크립터는 n차원 벡터(n은 자연수) 또는 행렬 형식의 데이터일 수 있다.The controller 1800 detects a feature from each of the acquired images and calculates a descriptor based on each feature point. A descriptor means data in a predetermined format for representing a feature point and mathematical data in a format capable of calculating a distance or similarity between descriptors. For example, the descriptor may be n-dimensional vector (n is a natural number) or matrix type data.

상기 제어부(1800)은 각 위치의 획득영상을 통해 얻은 디스크립터 정보를 바탕으로, 획득영상마다 적어도 하나의 디스크립터를 소정 하위 분류규칙에 따라 복수의 군으로 분류하고, 소정 하위 대표규칙에 따라 같은 군에 포함된 디스크립터들을 각각 하위 대표 디스크립터로 변환할 수 있다.The control unit 1800 classifies at least one descriptor for each acquired image into a plurality of groups according to a predetermined sub-classification rule based on the descriptor information obtained through the acquired image of each location, and classifies the same group according to a predetermined sub-representative rule. Each included descriptor can be converted into a sub-representative descriptor.

다른 예로, 실(room)과 같이 소정 구역내의 획득영상들로부터 모인 모든 디스크립터를 소정 하위 분류규칙에 따라 복수의 군으로 분류하여 상기 소정 하위 대표규칙에 따라 같은 군에 포함된 디스크립터들을 각각 하위 대표 디스크립터로 변환할 수도 있다.As another example, all descriptors gathered from acquired images in a predetermined area, such as a room, are classified into a plurality of groups according to a predetermined sub-classification rule, and the descriptors included in the same group according to the predetermined sub-representation rule are classified as sub-representative descriptors. can also be converted to

상기 제어부(1800)는 이 같은 과정을 거쳐, 각 위치의 특징분포를 구할 수 있다. 각 위치 특징분포는 히스토그램 또는 n차원 벡터로 표현될 수 있다. 또 다른 예로, 상기 제어부(1800)는 소정 하위 분류규칙 및 소정 하위 대표규칙을 거치지 않고, 각 특징점으로부터 산출된 디스크립터를 바탕으로 미지의 현재위치를 추정할 수 있다.The control unit 1800 can obtain the feature distribution of each position through the above process. Each location feature distribution can be expressed as a histogram or an n-dimensional vector. As another example, the control unit 1800 may estimate an unknown current location based on a descriptor calculated from each feature point without passing through a predetermined subclassification rule and a predetermined subrepresentation rule.

또한, 위치 도약 등의 이유로 상기 로봇(100)의 현재 위치가 미지의 상태가 된 경우에, 기저장된 디스크립터 또는 하위 대표 디스크립터 등의 데이터를 근거로 현재 위치를 추정할 수 있다.In addition, when the current position of the robot 100 becomes unknown due to position jump or the like, the current position can be estimated based on data such as a pre-stored descriptor or a sub-representative descriptor.

상기 로봇(100)은, 미지의 현재 위치에서 상기 센싱부(1400)를 통해 획득영상을 획득한다. 영상을 통해 천장에 위치하는 조명들, 경계(edge), 코너(corner), 얼룩(blob), 굴곡(ridge) 등의 여러가지 특징(feature)들이 확인된다.The robot 100 acquires an acquired image through the sensing unit 1400 at an unknown current location. Through the video, various features such as lights located on the ceiling, edges, corners, blobs, and ridges are confirmed.

상기 제어부(1800)는 획득영상으로부터 특징들을 검출하고, 디스크립터를 산출한다.The controller 1800 detects features from an acquired image and calculates a descriptor.

상기 제어부(1800)는 미지의 현재 위치의 획득영상을 통해 얻은 적어도 하나의 디스크립터 정보를 근거로, 소정 하위 변환규칙에 따라 비교대상이 되는 위치 정보(예를 들면, 각 위치의 특징분포)와 비교 가능한 정보(하위 인식 특징분포)로 변환한다.The control unit 1800 compares at least one descriptor information obtained through an acquired image of an unknown current location with location information (eg, feature distribution of each location) to be compared according to a predetermined sub-conversion rule. Convert to available information (lower recognition feature distribution).

소정 하위 비교규칙에 따라, 각각의 위치 특징분포를 각각의 인식 특징분포와 비교하여 각각의 유사도를 산출할 수 있다. 각각의 위치에 해당하는 상기 위치 별로 유사도(확률)를 산출하고, 그 중 가장 큰 확률이 산출되는 위치를 현재위치로 결정할 수 있다.According to a predetermined subcomparison rule, each location feature distribution may be compared with each recognition feature distribution to calculate each degree of similarity. A similarity (probability) is calculated for each location corresponding to each location, and a location where the highest probability is calculated among them can be determined as the current location.

이와 같이, 상기 제어부(1800)는 주행 구역을 구분하고 복수의 영역으로 구성된 맵을 생성하거나, 기저장된 맵을 바탕으로 상기 로봇(100)의 현재 위치를 인식할 수 있다.In this way, the controller 1800 can divide driving areas and create a map consisting of a plurality of areas, or recognize the current location of the robot 100 based on a previously stored map.

한편, 상기 통신부(1100)는 단말 장치 및/또는 특정 영역 내 위치한 타 기기(본 명세서에서는 "가전 기기"라는 용어와 혼용하기로 한다)와 유선, 무선, 위성 통신 방식들 중 하나의 통신 방식으로 연결되어 신호와 데이터를 송수신한다.Meanwhile, the communication unit 1100 uses one of wired, wireless, and satellite communication methods with a terminal device and/or other devices located within a specific area (in this specification, the term "home appliance" will be used interchangeably). It is connected to send and receive signals and data.

상기 통신부(1100)는 특정 영역 내에 위치한 타 기기와 데이터를 송수신할 수 있다. 이때, 타 기기는 네트워크에 연결하여 데이터를 송수신할 수 있는 장치이면 어느 것이어도 무방하며, 일 예로, 공기 조화 장치, 난방 장치, 공기 정화 장치, 전등, TV, 자동차 등과 같은 장치일 수 있다. 또한, 상기 타 기기는, 문, 창문, 수도 밸브, 가스 밸브 등을 제어하는 장치 등일 수 있다. 또한, 상기 타 기기는, 온도, 습도, 기압, 가스 등을 감지하는 센서 등일 수 있다.The communication unit 1100 can transmit/receive data with other devices located within a specific area. In this case, the other device may be any device that can transmit and receive data by connecting to the network, and may be, for example, an air conditioning device, a heating device, an air purifying device, a lamp, a TV, a vehicle, and the like. Also, the other device may be a device that controls a door, a window, a water valve, a gas valve, and the like. In addition, the other device may be a sensor that detects temperature, humidity, air pressure, gas, and the like.

또한, 상기 통신부(1100)는 특정 영역 또는 일정 범위 내에 위치한 다른 청소기와 통신할 수 있다. Also, the communication unit 1100 can communicate with other cleaners located in a specific area or within a predetermined range.

상기 제어부(1800)는 맵이 생성되면, 생성된 맵을 상기 통신부(1100)를 통해 외부 단말기, 서버 등으로 전송할 수 있고, 자체 메모리(1100)에 저장할 수 있다. 또한, 상기 제어부(1800)는 앞서 설명한 바와 같이, 외부 단말기, 서버 등으로부터 맵이 수신되면, 상기 메모리(1100)에 저장할 수 있다.When a map is generated, the control unit 1800 can transmit the generated map to an external terminal or server through the communication unit 1100 and store it in its own memory 1100 . Also, as described above, when a map is received from an external terminal or server, the control unit 1800 may store it in the memory 1100 .

이하, 상기 로봇(100)이 복수로 이루어져 협업이 실시되는 이동 로봇 시스템(이하, 시스템이라 칭한다)을 설명한다.Hereinafter, a mobile robot system (hereinafter, referred to as a system) in which a plurality of the robots 100 are made to collaborate will be described.

상기 시스템(1)은, 도 3 및 도 4에 도시된 바와 같이, 제1 로봇(100a)과 제2 로봇(100b)이 네트워크(50)를 통해 서로 데이터를 주고 받을 수 있다. 또한, 상기 제1 로봇(100a) 및/또는 상기 제2 로봇(100b)은 상기 네트워크(50) 또는 다른 통신을 통해 단말기(300)로부터 수신되는 제어 명령에 의해 청소 관련 동작을 수행하거나 또는 대응되는 동작을 수행할 수 있다. In the system 1, as shown in FIGS. 3 and 4, the first robot 100a and the second robot 100b may exchange data with each other through the network 50. In addition, the first robot 100a and/or the second robot 100b perform or correspond to a cleaning-related operation according to a control command received from the terminal 300 through the network 50 or other communication. action can be performed.

즉, 비록 도시되지는 않았지만, 복수의 로봇(100a, 100b)이 제1 네트워크 통신을 통해서는 단말기(300)와 통신을 수행하고, 제2 네트워크 통신을 통해서는 상호간에 통신을 수행하게 될 수 있다.That is, although not shown, the plurality of robots 100a and 100b may communicate with the terminal 300 through the first network communication and communicate with each other through the second network communication. .

여기에서, 상기 네트워크(50)는 네트워크 통신을 의미할 수 있으며, WLAN(Wireless LAN), WPAN(Wireless Personal Area Network), Wi-Fi(Wireless-Fidelity), Wi-Fi(Wireless Fidelity) Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMAX(World Interoperability for Microwave Access), Zigbee, Z-wave, Blue-Tooth, RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultrawide-Band), Wireless USB(Wireless Universal Serial Bus) 등과 같은 무선 통신 기술 중 적어도 하나를 이용한 근거리 통신을 의미할 수 있다. Here, the network 50 may mean network communication, WLAN (Wireless LAN), WPAN (Wireless Personal Area Network), Wi-Fi (Wireless-Fidelity), Wi-Fi (Wireless Fidelity) Direct, DLNA (Digital Living Network Alliance), WiBro (Wireless Broadband), WiMAX (World Interoperability for Microwave Access), Zigbee, Z-wave, Blue-Tooth, RFID (Radio Frequency Identification), Infrared Data Association (IrDA), UWB This may mean short-distance communication using at least one of wireless communication technologies such as (Ultrawide-Band) and wireless USB (Wireless Universal Serial Bus).

도시된 네트워크(50)는 서로 통신하고자 하는 로봇들의 통신방식이 무엇인지에 따라 달라질 수 있다.The illustrated network 50 may vary depending on the communication method of robots that want to communicate with each other.

도 3에서, 상기 제1 로봇(100a) 및/또는 제2 로봇(100b)은 각각의 센싱부(130)를 통해 센싱된 정보를 상기 네트워크(50)를 통해 상기 단말기(300)에 제공할 수 있다. 또한, 상기 단말기(300)는 수신된 정보를 기초로 생성된 제어명령을 상기 네트워크(50)를 통해 상기 제1 로봇(100a) 및/또는 상기 제2 로봇(100b)에 전달할 수 있다.In FIG. 3 , the first robot 100a and/or the second robot 100b may provide information sensed through each sensing unit 130 to the terminal 300 through the network 50. there is. In addition, the terminal 300 may transmit a control command generated based on the received information to the first robot 100a and/or the second robot 100b through the network 50 .

또한, 도 3에서, 상기 제1 로봇(100a)의 통신부(1100)와 상기 제2 로봇(100b)의 통신부(1100)가 직접 무선 통신하거나 다른 공유기(미도시) 등을 매개로 간접 무선 통신하여, 주행 상태에 관한 정보 및 서로의 위치 정보 등을 파악할 수 있다. In addition, in FIG. 3, the communication unit 1100 of the first robot 100a and the communication unit 1100 of the second robot 100b perform direct wireless communication or indirect wireless communication through another router (not shown), etc. , driving state information and each other's location information can be grasped.

일 예에서, 상기 제2 로봇(100b)은 상기 제1 로봇(100a)로부터 수신되는 제어명령에 따라 주행 동작 및 청소 동작을 수행할 수 있다. 이러한 경우, 상기 제1 로봇(100a)은 마스터 청소기로, 상기 제2 로봇(100b)은 슬레이브 청소기로 동작한다고 말할 수 있다. 또는, 상기 제2 로봇(100b)은 상기 제1 로봇(100a)을 추종한다고 말할 수 있다. 또는, 경우에 따라서는 상기 제1 로봇(100a)과 상기 제2 로봇(100b)이 서로 협업한다고 말할 수도 있다.In one example, the second robot 100b may perform a driving operation and a cleaning operation according to a control command received from the first robot 100a. In this case, it can be said that the first robot 100a operates as a master cleaner and the second robot 100b operates as a slave cleaner. Alternatively, it may be said that the second robot 100b follows the first robot 100a. Alternatively, in some cases, it may be said that the first robot 100a and the second robot 100b cooperate with each other.

상기 제1 로봇(100a) 및 상기 제2 로봇(100b)의 협업의 예를 들면, 상기 제1 로봇(100a)에는 상기 청소부(120)가 장착되고, 상기 제2 로봇(100b)에는 상기 걸레부가 장착되어, 상기 제1 로봇(100a)이 상기 제2 로봇(100b)에 선행하며 바닥의 먼지를 흡입하고, 상기 제2 로봇(100b)이 상기 제1 로봇(100a)에 후행하며 바닥을 닦게 될 수 있다.For an example of collaboration between the first robot 100a and the second robot 100b, the cleaning unit 120 is mounted on the first robot 100a, and the mop unit is mounted on the second robot 100b. mounted, the first robot 100a precedes the second robot 100b and sucks in dust from the floor, and the second robot 100b follows the first robot 100a and wipes the floor. can

도 4에는 복수의 로봇(100a, 100b) 및 복수의 단말기(300a, 300b)를 포함하여 협업이 이루어지는 시스템(1)의 일 예가 도시되어 있다.4 shows an example of a system 1 in which collaboration is achieved, including a plurality of robots 100a and 100b and a plurality of terminals 300a and 300b.

도 4를 참조하면, 상기 시스템(1)은, 상기 복수의 로봇(100a, 100b), 네트워크(50), 서버(500), 및 상기 복수의 단말기(300a, 300b)을 포함할 수 있다. Referring to FIG. 4 , the system 1 may include the plurality of robots 100a and 100b, a network 50, a server 500, and the plurality of terminals 300a and 300b.

이 중 상기 복수의 로봇(100a, 100b)과, 상기 네트워크(50), 그리고 적어도 하나의 단말기(300a)는 건물(10) 내에 배치되고, 다른 단말기(300b)와 상기 서버(500)는 상기 건물(10)의 외부에 위치할 수 있다. Among them, the plurality of robots 100a and 100b, the network 50, and at least one terminal 300a are disposed in the building 10, and the other terminal 300b and the server 500 are disposed in the building 10. It can be located outside of (10).

상기 복수의 로봇(100a, 100b) 각각은, 자율 주행 및 자율 청소를 수행할 수 있다. 상기 복수의 로봇(100a, 100b)은, 주행 기능 및 청소 기능 외에, 내부에 각각 통신부(1100)를 구비할 수 있다. Each of the plurality of robots 100a and 100b may perform autonomous driving and autonomous cleaning. Each of the plurality of robots 100a and 100b may include a communication unit 1100 therein, in addition to a driving function and a cleaning function.

또한, 상기 복수의 로봇(100a, 100b), 상기 서버(500), 및 상기 복수의 단말기(300a, 300b)는 상기 네트워크(50)를 통해 서로 연결되어 서로 데이터를 교환할 수 있다. 이를 위해, 비록 도시되지는 않았지만, AP(access point; AP) 장치 등의 무선 공유기를 더 포함할 수 있다. 이러한 경우, 상기 건물(10) 내부에 위치한 단말기(300a)는, 상기 AP 장치를 통해 상기 복수의 로봇(100a, 100b) 중 적어도 하나와 접속함으로써, 상기 복수의 로봇(100a, 100b)에 대한 모니터링, 원격제어 등을 수행할 수 있다. 또한, 상기 건물(10) 외부에 위치한 단말기(300b)도, 상기 AP 장치를 통해 상기 복수의 로봇(100a, 100b) 중 적어도 하나와 접속함으로써, 상기 복수의 로봇(100a, 100b)에 대한 모니터링, 원격제어 등을 수행할 수 있게 된다.In addition, the plurality of robots 100a and 100b, the server 500, and the plurality of terminals 300a and 300b are connected to each other through the network 50 to exchange data with each other. To this end, although not shown, a wireless sharer such as an access point (AP) device may be further included. In this case, the terminal 300a located inside the building 10 monitors the plurality of robots 100a and 100b by connecting to at least one of the plurality of robots 100a and 100b through the AP device. , remote control, etc. In addition, the terminal 300b located outside the building 10 also monitors the plurality of robots 100a and 100b by connecting to at least one of the plurality of robots 100a and 100b through the AP device, remote control, etc.

상기 서버(500)는, 이동 단말기(300b)를 통해서 직접 무선 연결될 수 있다. 또는, 상기 서버(500)는 상기 이동 단말기(300b)를 통하지 않고 상기 복수의 로봇(100a, 100b) 중 적어도 하나와 연결될 수도 있다.The server 500 may be directly wirelessly connected through the mobile terminal 300b. Alternatively, the server 500 may be connected to at least one of the plurality of robots 100a and 100b without going through the mobile terminal 300b.

상기 서버(500)는 프로그램 처리가능한 프로세서를 포함할 수 있으며, 각종 알고리즘을 구비할 수 있다. 예로서, 상기 서버(500)는 머신 러닝(machine learning) 및/또는 데이터 마이닝(data mining)의 수행과 관련된 알고리즘을 구비할 수 있다. 또 예로써, 상기 서버(500)는, 음성 인식 알고리즘을 구비할 수 있다. 이러한 경우, 음성 데이터 수신시, 수신되는 음성 데이터를, 텍스트 형식의 데이터로 변환하여, 출력할 수 있다. The server 500 may include a programmable processor and may include various algorithms. As an example, the server 500 may have algorithms related to performing machine learning and/or data mining. As another example, the server 500 may include a voice recognition algorithm. In this case, when receiving voice data, the received voice data may be converted into text format data and then output.

상기 서버(500)는, 상기 복수의 로봇(100a, 100b)에 대한 펌웨어 정보, 운전 정보(코스 정보 등)를 저장하고, 상기 복수의 로봇(100a, 100b)에 대한 제품 정보를 등록할 수 있다. 예를 들어, 상기 서버(500)는, 로봇 제조자가 운영하는 서버이거나 또는 공개된 애플리케이션 스토어 운영자가 운영하는 서버일 수 있다.The server 500 may store firmware information and driving information (course information, etc.) for the plurality of robots 100a and 100b, and register product information for the plurality of robots 100a and 100b. . For example, the server 500 may be a server operated by a robot manufacturer or a server operated by a public application store operator.

다른 예에서, 상기 서버(500)는 상기 건물(10)의 내부 네트워크 내에 구비되어, 홈 기기들에 대한 상태 정보를 저장하거나, 홈 기기에서 공유되는 컨텐츠를 저장하는 홈 서버일 수도 있다. 상기 서버(500)가 홈 서버인 경우, 이물질과 관련된 정보, 예를 들어, 이물질 이미지 등을 저장할 수 있다.In another example, the server 500 may be a home server provided in the internal network of the building 10 to store state information about home devices or content shared by the home devices. When the server 500 is a home server, it may store foreign material related information, for example, a foreign material image.

한편, 상기 복수의 로봇(100a, 100b)은, 지그비(Zigbee), 지-웨이브(Z-wave), 블루투스(Blue-Tooth), 초광대역 무선기술(Ultra-wide Band) 등을 통해 직접 무선 연결될 수 있다. 이러한 경우, 상기 복수의 로봇(100a, 100b)은 서로의 위치 정보 및 주행 정보를 교환할 수 있다.Meanwhile, the plurality of robots 100a and 100b may be directly wirelessly connected through Zigbee, Z-wave, Bluetooth, Ultra-wide Band, and the like. can In this case, the plurality of robots 100a and 100b may exchange location information and driving information with each other.

이때, 상기 복수의 로봇(100a, 100b) 중 어느 하나는 마스터 로봇(100a)이 되고, 다른 하나는 슬레이브 로봇(100b)이 될 수 있다. At this time, one of the plurality of robots 100a and 100b may be a master robot 100a and the other may be a slave robot 100b.

이러한 경우, 상기 제1 로봇(100a)이 상기 제2 로봇(100b)의 주행 및 청소를 제어할 수 있다. 또, 상기 제2 로봇(100b)은 상기 제1 로봇(100a)을 추종하며 주행 및 청소를 수행할 수 있다. 여기에서, 상기 제2 로봇(100b)이 상기 제1 로봇(100a)을 추종한다는 것은, 도 5에 도시된 바와 같이, 상기 제2 로봇(100b)이 상기 제1 로봇(100a)과 적절한 거리를 유지하면서 상기 제1 로봇(100a)을 좇아서 주행 및 청소를 수행하는 것을 의미한다.In this case, the first robot 100a may control driving and cleaning of the second robot 100b. In addition, the second robot 100b may perform driving and cleaning while following the first robot 100a. Here, the fact that the second robot 100b follows the first robot 100a means that, as shown in FIG. 5, the second robot 100b has an appropriate distance from the first robot 100a. This means that driving and cleaning are carried out by following the first robot 100a while maintaining the robot.

도 5를 참조하면, 상기 제1 로봇(100a)은 상기 제2 로봇(100b)이 상기 제1 로봇(100a)을 추종하도록 상기 제2 로봇(100b)을 제어한다. Referring to FIG. 5 , the first robot 100a controls the second robot 100b so that the second robot 100b follows the first robot 100a.

이를 위해, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)은 상호 통신이 가능한 특정 영역 내에 존재하며, 상기 제2 로봇(100b)은 적어도 상기 제1 로봇(100a)의 상대 위치를 파악하고 있어야 한다. To this end, the first robot 100a and the second robot 100b exist in a specific area where mutual communication is possible, and the second robot 100b at least grasps the relative position of the first robot 100a. should be doing

예로써, 상기 제1 로봇(100a)의 통신부(1100)와 상기 제2 로봇(100b)의 통신부(1100)가 상호 IR 신호, 초음파 신호, 반송파 주파수, 임펄스 신호 등을 교환하고, 삼각측량 등을 통해 이를 분석하여 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 이동변위를 산출함으로써 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 상대 위치를 파악할 수 있다. 다만, 이러한 방식에 한정되지 않고, 전술한 다양한 무선 통신 기술 중 하나를 사용하여 삼각측량 등 통해 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 상대 위치를 파악할 수 있을 것이다. For example, the communication unit 1100 of the first robot 100a and the communication unit 1100 of the second robot 100b exchange IR signals, ultrasonic signals, carrier frequencies, impulse signals, etc., and perform triangulation. By analyzing this through and calculating the movement displacement of the first robot 100a and the second robot 100b, the relative positions of the first robot 100a and the second robot 100b can be grasped. However, it is not limited to this method, and the relative positions of the first robot 100a and the second robot 100b may be grasped through triangulation or the like using one of the various wireless communication technologies described above.

상기 제1 로봇(100a)과 상기 제2 로봇(100b) 간의 상대 위치가 인식되면, 상기 제2 로봇(100b)은 상기 제1 로봇(100a)에 저장된 맵 정보 또는 상기 서버(500)나 상기 단말기(300) 등에 저장된 맵 정보를 기준으로 제어될 수 있다. 또한, 상기 제2 로봇(100b)은 상기 제1 로봇(100a)에서 센싱된 장애물 정보를 공유할 수 있다. 또한, 상기 제2 로봇(100b)은 상기 제1 로봇(100a)에서 수신되는 제어명령(예, 주행방향, 주행속도, 정지 등의 주행과 관련된 제어명령)에 의해 동작을 수행할 수 있다.When the relative position between the first robot 100a and the second robot 100b is recognized, the second robot 100b uses map information stored in the first robot 100a or the server 500 or the terminal. It can be controlled based on map information stored in 300 or the like. Also, the second robot 100b may share obstacle information sensed by the first robot 100a. In addition, the second robot 100b may perform an operation according to a control command received from the first robot 100a (eg, a control command related to driving such as a driving direction, a driving speed, and a stop).

구체적으로, 상기 제2 로봇(100b)은 상기 제1 로봇(100a)의 주행 경로를 따라 주행하면서 청소를 수행한다. 다만, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 진행방향이 항상 일치하지는 않는다. 예를 들어, 상기 제1 로봇(100a)이 상/하/좌/우로 이동하거나 회전하는 경우, 상기 제2 로봇(100b)은 소정 시간 후에 상/하/좌/우로 이동하거나 회전하므로, 현재 진행방향이 서로 달라질 수 있다.Specifically, the second robot 100b performs cleaning while traveling along the travel path of the first robot 100a. However, the moving directions of the first robot 100a and the second robot 100b do not always coincide. For example, when the first robot 100a moves or rotates up/down/left/right, the second robot 100b moves or rotates up/down/left/right after a predetermined time, so the current progress is made. directions can be different.

또한, 상기 제1 로봇(100a)의 주행 속도(Va)와 상기 제2 로봇(100b)의 주행 속도(Vb)는 서로 다를 수 있다. Also, the traveling speed Va of the first robot 100a and the traveling speed Vb of the second robot 100b may be different from each other.

상기 제1 로봇(100a)은, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 통신가능한 거리를 고려하여, 상기 제2 로봇(100b)의 주행 속도(Vb)를 가변하도록 제어할 수 있다. 예로써, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)이 일정 거리 이상으로 멀어지면, 상기 제1 로봇(100a)은 상기 제2 로봇(100b)의 주행 속도(Vb)가 이전보다 빨라지도록 제어할 수 있다. 또, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)이 일정 거리 이상으로 가까워지면 상기 제2 로봇(100b)의 주행 속도(Vb)가 이전보다 느리도록 제어하거나 또는 소정 시간 정지하도록 제어할 수 있다. 이를 통해, 상기 제2 로봇(100b)이 상기 제1 로봇(100a)를 계속 추종하며 청소를 수행할 수 있다. The first robot 100a controls the traveling speed Vb of the second robot 100b to be varied in consideration of the communicable distance between the first robot 100a and the second robot 100b. can For example, when the first robot 100a and the second robot 100b are separated by a predetermined distance or more, the first robot 100a increases the running speed Vb of the second robot 100b than before. You can control how fast it is. In addition, when the first robot 100a and the second robot 100b are closer than a certain distance, the traveling speed Vb of the second robot 100b is controlled to be slower than before or controlled to stop for a predetermined time. can do. Through this, the second robot 100b can perform cleaning while continuously following the first robot 100a.

이러한 상기 시스템(1)에서 상기 제1 로봇(100a)과 상기 제2 로봇(100b)은, 사용자의 개입 없이 상호 추종하거나 상호 협업하면서 주행 및 청소를 수행할 수 있다.In the system 1, the first robot 100a and the second robot 100b may perform driving and cleaning while following each other or collaborating with each other without user intervention.

이를 위해서는, 상기 제1 로봇(100a)이 상기 제2 로봇(100b)의 위치를 파악하거나, 상기 제2 로봇(100b)이 상기 제1 로봇(100a)의 위치를 파악하는 것이 필요하다. 이는, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 상대위치를 파악하는 것을 의미할 수 있다.To this end, it is necessary for the first robot 100a to determine the position of the second robot 100b or for the second robot 100b to determine the position of the first robot 100a. This may mean grasping the relative positions of the first robot 100a and the second robot 100b.

이를테면, 전술한 다양한 무선 통신 기술 중 하나(예를 들어, 지그비(Zigbee), 지-웨이브(Z-wave), 블루투스(Blue-Tooth) 및 초광대역 무선기술(Ultra-wide Band) 중 하나)를 사용하여 삼각측량 등 통해 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 상대 위치를 파악할 수 있다.For example, one of the various wireless communication technologies described above (for example, one of Zigbee, Z-wave, Bluetooth, and Ultra-wide Band) Relative positions of the first robot 100a and the second robot 100b may be determined through triangulation or the like.

두 장치의 상대위치를 구하는 삼각측량 방식은 일반적인 기술이므로, 본 명세서에서 구체적인 설명은 생략하고, 상기 시스템(1)에서 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 상대 위치를 파악하는 일 예로, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)이 UWB 모듈을 이용하여 상대 위치를 결정(파악)하게 되는 예시를 설명한다.Since the triangulation method for obtaining the relative positions of two devices is a general technique, a detailed description thereof is omitted in this specification, and the relative positions of the first robot 100a and the second robot 100b are identified in the system 1. As an example, an example in which the first robot 100a and the second robot 100b determine (grasp) relative positions using a UWB module will be described.

앞서 설명한 것과 같이, UWB 모듈(또는 UWB 센서)은, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각의 통신부(1100)에 포함될 수 있다. 또한, UWB모듈이 제1 로봇(100a)와 제2 로봇(100b)의 상대 위치를 센싱하는데 이용된다는 측면에서 보면, 상기 UWB 모듈은, 제1 로봇(100a) 및 제2 로봇(100b) 각각의 센싱부(1400)에 포함될 수도 있다.As described above, the UWB module (or UWB sensor) may be included in the communication unit 1100 of each of the first robot 100a and the second robot 100b. In addition, in view of the fact that the UWB module is used to sense the relative positions of the first robot 100a and the second robot 100b, the UWB module is used for sensing the relative positions of the first robot 100a and the second robot 100b. It may also be included in the sensing unit 1400 .

상기 제1 로봇(100a) 및 상기 제2 로봇(100b)은, 각각에 포함된 UWB 모듈 간에 송수신되는 신호의 시간을 측정하여, 상기 제1 로봇(100a)과 상기 제2 로봇(100b) 사이의 거리(이격거리)를 파악할 수 있다.The first robot 100a and the second robot 100b measure the time of the signal transmitted and received between the UWB modules included in each, and measure the time between the first robot 100a and the second robot 100b. The distance (separation distance) can be determined.

이하, 도 6 내지 도 8을 참조하여 상기 제1 로봇(100a)과 상기 제2 로봇(100b)이 맵 정보의 공유를 통해 위치를 인식하며 협업 주행을 수행하는 원리를 설명한다.Hereinafter, with reference to FIGS. 6 to 8 , a principle in which the first robot 100a and the second robot 100b recognize locations through sharing of map information and perform cooperative driving will be described.

도 6에 도시된 바와 같이, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)은 하나의 청소 공간에 배치될 수 있다. 통상적으로 청소가 수행되는 전체 공간인 집 등은 거실, 방, 부엌 등 여러 개의 공간으로 구분될 수 있다.As shown in FIG. 6 , the first robot 100a and the second robot 100b may be disposed in one cleaning space. A house, which is the entire space where cleaning is normally performed, may be divided into several spaces such as a living room, a room, and a kitchen.

상기 제1 로봇(100a)은 해당 공간을 청소를 적어도 한 번 수행한 상태로 전체 공간에 대한 맵 정보를 가지고 있다. 이때 상기 맵 정보는 사용자에 의해서 입력된 것이거나, 상기 제1 로봇(100a)이 청소를 수행하면서 획득한 기록에 근거한 것이 가능하다. 도 6에서 상기 제1 로봇(100a)은 거실 또는 부엌에 위치한 상태이지만, 집 전체 공간에 대한 맵 정보를 가지고 있는 것이 가능하다.The first robot 100a has map information on the entire space in a state in which the corresponding space has been cleaned at least once. In this case, the map information may be input by a user or may be based on a record obtained while the first robot 100a performs cleaning. In FIG. 6 , the first robot 100a is located in the living room or kitchen, but it is possible to have map information for the entire space of the house.

여기서, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은 충전대가 할당될 수 있다. 즉, 두 로봇(100a, 100b)은 충전대를 공유하지 않고, 각각에 대응하는 충전대에서 배터리를 충전하게 될 수 있다. 이를테면, 상기 제1 로봇(100a)은 제1 충전대에 도킹하여 배터리를 충전하고, 상기 제2 로봇(100b)은 제2 충전대에 도킹하여 배터리를 충전하게 될 수 있다. 또한, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 상호 간의 충전대의 위치 정보가 저장될 수 있다. 예컨대, 상기 제1 로봇(100a)에는 상기 제2 충전대의 위치 정보가 저장되어, 상기 제2 로봇(100b)의 도킹 시 위치를 인식하게 될 수 있으며, 상기 제2 로봇(100b)은 상기 제1 충전대의 위치 정보가 저장되어, 상기 제1 로봇(100a)의 도킹 시 위치를 인식하게 될 수 있게 된다.Here, each of the first robot 100a and the second robot 100b may be assigned a charging station. That is, the two robots 100a and 100b do not share a charging stand, and may charge the battery on a charging stand corresponding to each. For example, the first robot 100a may be docked to a first charging stand to charge the battery, and the second robot 100b may be docked to a second charging base to charge the battery. Also, each of the first robot 100a and the second robot 100b may store positional information of the charging stand between them. For example, the first robot 100a stores the location information of the second charging station, and the location of the second robot 100b can be recognized when docked. The location information of the charging stand is stored so that the location can be recognized when the first robot 100a is docked.

이와 같은 공간에서 상기 제1 로봇(100a)과 상기 제2 로봇(100b)이 협업을 수행하는 과정은, 도 7에 도시된 바와 같을 수 있다.A process in which the first robot 100a and the second robot 100b perform collaboration in such a space may be as shown in FIG. 7 .

상기 제1 로봇(100a)의 맵 정보는 상기 제2 로봇(100b)에 전달될 수 있다(S1). 이때, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 통신부(1100)가 직접 통신을 하면서 맵 정보가 전달될 수 있다. 또한 상기 제1 로봇(100a)과 상기 제2 로봇(100b)이 와이파이 등과 같이 다른 네트워크를 통하거나, 서버를 매개체로 해서 정보가 전달되는 것이 가능하다. 이때 공유되는 맵 정보는 상기 제1 로봇(100a)이 배치된 위치를 포함하는 맵 정보인 것이 가능하다. 또한 상기 제2 로봇(100b)이 배치된 위치를 포함하는 맵 정보가 공유되는 것이 가능하다. 실질적으로 상기 제1 로봇(100a)과 상기 제2 로봇(100b)은 집이라는 전체 공간 내에 함께 존재할 수 있고, 나아가 거실 등과 같이 좀 더 특정된 공간에 함께 존재할 수 있기 때문에, 두 로봇(100a, 100b)이 위치한 공간에 대한 맵 정보가 공유되는 것이 바람직하다.Map information of the first robot 100a may be transmitted to the second robot 100b (S1). At this time, map information may be transmitted while the communication units 1100 of the first robot 100a and the second robot 100b communicate directly. In addition, it is possible that the information is transmitted between the first robot 100a and the second robot 100b through another network such as Wi-Fi or through a server. At this time, the shared map information may be map information including a location where the first robot 100a is disposed. In addition, it is possible to share map information including the location where the second robot 100b is disposed. Substantially, since the first robot 100a and the second robot 100b can exist together in the entire space of a house, and can exist together in a more specific space such as a living room, the two robots 100a and 100b ) is preferably shared.

상기 제1 로봇(100a)과 상기 제2 로봇(100b)은 각각의 충전대에서 청소를 시작하기 위해서 이동하는 것이 가능하지만, 사용자에 의해서 각각의 로봇이 청소를 필요로 하는 공간이 이동되는 것도 가능하다.The first robot 100a and the second robot 100b can move to start cleaning at each charging station, but it is also possible for each robot to move a space that needs cleaning by a user. .

상기 제1 로봇(100a)과 상기 제2 로봇(100b)이 각각 전원이 켜지고 구동되면(S2), 상기 제1 로봇(100a)과 상기 제2 로봇(100b)이 이동을 하는 것이 가능하다. 특히 상기 제2 로봇(100b)은 상기 제1 로봇(100a)과의 거리가 줄어드는 방향으로 이동되는 것이 가능하다. When the first robot 100a and the second robot 100b are powered on and driven (S2), it is possible for the first robot 100a and the second robot 100b to move. In particular, it is possible for the second robot 100b to move in a direction in which the distance to the first robot 100a decreases.

이때, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 거리가 특정 거리 이내 인지를 판단한다(S3). 이때, 특정 거리는 50cm 이하인 것이 가능하다. 상기 특정 거리는 상기 제1 로봇(100a)과 상기 제2 로봇(100b)이 함께 주행을 하면서 청소를 하기 위해서 설정된 초기 배열을 위한 거리를 의미할 수 있다. 즉 특정 거리로 두 로봇(100a, 100b)이 배치되면, 이후에는 정해진 알고리즘에 따라서 두 대의 로봇이 함께 청소를 수행할 수 있다.At this time, it is determined whether the distance between the first robot 100a and the second robot 100b is within a specific distance (S3). At this time, it is possible that the specific distance is 50 cm or less. The specific distance may mean a distance for an initial arrangement set for cleaning while the first robot 100a and the second robot 100b travel together. That is, when the two robots 100a and 100b are arranged at a specific distance, the two robots can then perform cleaning together according to a predetermined algorithm.

상기 제1 로봇(100a)과 상기 제2 로봇(100b)은 직접 통신이 가능하기 때문에, 상기 제2 로봇(100b)은 이동을 하면서 상기 제1 로봇(100a)과의 거리가 줄어드는 것을 확인할 수 있다. 참고로, 상기 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 사이에 이루어지는 통신으로는 상기 제2 로봇(100b)에서 상기 제1 로봇(100a)의 위치 및 향하는 방향에 대한 정확도가 높지 않아서, 추후에 정확도를 높이기 위한 기술이 추가될 수 있다.Since the first robot 100a and the second robot 100b can communicate directly, it can be confirmed that the distance between the second robot 100b and the first robot 100a decreases while moving. . For reference, in the communication between the first robot 100a and the second robot 100b, the accuracy of the location and direction of the first robot 100a in the second robot 100b is Since it is not high, a technique for increasing accuracy may be added later.

상기 제2 로봇(100b)이 상기 제1 로봇(100a)으로부터 거리를 줄이기 위해서, 원형 또는 스파이럴 궤적을 그리며 이동하는 것이 가능하다. 즉 상기 제2 로봇(100b)이 상기 제1 로봇(100a)의 위치를 정확히 측정해서, 해당 위치로 이동하는 것이 쉽지 않기 때문에 원형 또는 스파이럴 궤적과 같이 다양한 방향으로 이동하면서 거리가 줄어드는 위치를 찾는 것이 가능하다.In order to reduce the distance of the second robot 100b from the first robot 100a, it is possible to move while drawing a circular or spiral trajectory. That is, since it is not easy for the second robot 100b to accurately measure the position of the first robot 100a and move to that position, it is necessary to find a position where the distance decreases while moving in various directions such as a circular or spiral trajectory It is possible.

만약 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 거리가 특정 거리 이내로 줄지 않는다면, 상기 제2 로봇(100b)은 지속적으로 이동을 하면서 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 간격이 특정 거리 이내로 이동되도록 한다. 이를테면, 상기 제2 로봇(100b)이 원형 궤적을 그리면서 이동을 하다가, 특정 방향으로 이동시에 거리가 줄면 지속적으로 해당 방향으로 이동을 하면서, 거리가 줄어드는지 여부를 확인할 수 있다.If the distance between the first robot 100a and the second robot 100b does not decrease within a specific distance, the second robot 100b continuously moves and maintains the distance between the first robot 100a and the second robot. The interval of (100b) is moved within a specific distance. For example, if the second robot 100b moves while drawing a circular trajectory and the distance decreases when moving in a specific direction, it can be checked whether the distance decreases while continuously moving in the corresponding direction.

상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 간격이 특정 거리 이내로 줄어들면, 상기 제1 로봇(100a)에서 촬영된 영상이 상기 제2 로봇(100b)에 전송된다(S4). 이 경우, 맵 정보와 같이, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)이 직접 통신을 하는 것도 가능하고, 다른 네트워크나 서버를 통해서 통신하는 것도 가능하다.When the distance between the first robot 100a and the second robot 100b is reduced to within a specific distance, the image captured by the first robot 100a is transmitted to the second robot 100b (S4). In this case, as with map information, it is possible for the first robot 100a and the second robot 100b to communicate directly, or to communicate through another network or server.

상기 제1 로봇(100a)과 상기 제2 로봇(100b)은 특정 거리 이내에 위치하기 때문에, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)에서 촬영된 영상은 유사할 수 있다. 특히, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)에 마련된 카메라가 각각 전방 상측을 향해서 배치된다면, 두 로봇(100a, 100b)에서 촬영한 영상은 위치 및 방향이 동일하다면 동일한 영상이 될 수 있다. 따라서, 두 로봇(100a, 100b)에서 촬영된 영상을 비교해서, 두 로봇(100a, 100b)의 위치 및 방향을 조정해서, 두 로봇(100a, 100b)이 청소를 시작하기 위한 초기 위치 및 방향을 정렬하게 될 수 있다.Since the first robot 100a and the second robot 100b are located within a specific distance, images taken from the first robot 100a and the second robot 100b may be similar. In particular, if the cameras provided in the first robot 100a and the second robot 100b are disposed facing upwards in front, respectively, the images captured by the two robots 100a and 100b have the same image if the position and direction are the same. It can be. Therefore, by comparing images captured by the two robots 100a and 100b and adjusting the positions and directions of the two robots 100a and 100b, the initial positions and directions for the two robots 100a and 100b to start cleaning are determined. can be sorted

이후, 상기 제1 로봇(100a)에서 전송된 영상과 상기 제2 로봇(100b)에서 촬영된 영상을 서로 비교한다(S5). 도 8을 참조해서, 비교하는 과정을 설명한다.Thereafter, the image transmitted from the first robot 100a and the image taken from the second robot 100b are compared (S5). Referring to FIG. 8, a comparison process will be described.

도 8(a)는 상기 제1 로봇(100a)에서 영상을 촬영하는 모습을 설명한 도면이도, 도 8(b)는 상기 제2 로봇(100b)에서 영상을 촬영하는 모습을 설명한 도면이다.FIG. 8(a) is a diagram explaining how the first robot 100a takes an image, and FIG. 8(b) is a diagram explaining how the second robot 100b takes an image.

상기 제1 로봇(100a)과 상기 제2 로봇(100b)에는 전방의 상측을 촬영하도록 카메라가 설치되는데, 각각의 도면에서 화살표가 표시된 방향을 향해서 촬영이 이루어진다.Cameras are installed in the first robot 100a and the second robot 100b to take pictures of the upper side of the front.

도 8(a)에서와 같이, 상기 제1 로봇(100a)에서 촬영된 영상에서는 화살표 방향을 중심으로 좌측에 a2 특징점과 우측에 a1 특징점이 배치된다. 즉 상기 제1 로봇(100a)에서 촬영된 영상에서 특징점을 선택하되, 카메라가 촬영하는 전방을 중심으로 좌측과 우측에 다른 특징점을 선정하는 것이 가능하다. 따라서, 카메라에서 촬영된 영상의 좌우를 구분할 수 있다.As shown in FIG. 8(a), in the image captured by the first robot 100a, a feature point a2 is arranged on the left side and feature point a1 is arranged on the right side in the direction of the arrow. That is, it is possible to select a feature point from the image captured by the first robot 100a, but to select different feature points on the left and right sides centered on the front imaged by the camera. Accordingly, it is possible to distinguish left and right images captured by the camera.

도 8(b)에서와 같이, 상기 제2 로봇(100b)에서는 초기에 점선 화살표를 기준으로 촬영이 이루어진다. 즉, 상기 제2 로봇(100b)에 마련된 카메라에서는 전방 상측을 향하도록 배치되어 있어서, 해당 부분을 촬영하는데 점선 화살표를 기준으로 좌측에 a1 특징점과 a4 특징점이 배치되고, 우측에 a3 특징점이 배치된다. 따라서 상기 제2 로봇(100b)에 마련된 제어부에서 특징점을 비교할 때에 두 로봇(100a, 100b)에서 촬영된 영상의 특징점에 차이가 있는 것을 확인할 수 있다.As shown in FIG. 8(b), in the second robot 100b, shooting is initially performed based on a dotted line arrow. That is, the camera provided in the second robot 100b is arranged to face forward and upward, so that a1 feature point and a4 feature point are arranged on the left side based on the dotted line arrow, and a3 feature point is arranged on the right side. . Therefore, when the feature points are compared in the controller provided in the second robot 100b, it can be confirmed that there is a difference in the feature points of the images captured by the two robots 100a and 100b.

이 경우, 도 8(b)에서와 같이 상기 제2 로봇(100b)이 반 시계 방향으로 회전을 하면 두 로봇(100a, 100b)이 바라보는 영상이 유사하게 구현될 수 있다. 즉 상기 제2 로봇(100b)이 반 시계 방향으로 회전되어서, 상기 제2 로봇(100b)의 카메라가 바라보는 방향이 실선 화살표와 같이 변경될 수 있다. 이때 상기 제2 로봇(100b)의 카메라에서 촬영된 영상을 보면 좌측에는 a2 특징점이 배치되고, 우측에는 a1 특징점이 배치된다. 따라서, 도 8(a)에서 상기 제1 로봇(100a)이 제공하는 영상과 도 8(b)에서 상기 제2 로봇(100b)에서 촬영한 영상의 특징점이 유사하게 배치할 수 있다. 이러한 과정을 통해서 두 로봇(100a, 100b)의 헤딩각이 유사하게 정렬될 수 있다. 나아가, 두 로봇(100a, 100b)이 제공하는 영상에 특징점이 유사하게 배치되면, 두 로봇(100a, 100b)이 현재 상태에서 특징점을 바라보는 위치가 특정 거리 이내에서 인접하게 배치된 것을 확인할 수 있어서, 서로 간의 위치를 정확하게 특정할 수 있다.In this case, as shown in FIG. 8(b), when the second robot 100b rotates counterclockwise, images viewed by the two robots 100a and 100b can be similarly implemented. That is, since the second robot 100b is rotated in a counterclockwise direction, the direction in which the camera of the second robot 100b is viewed may be changed as indicated by a solid arrow. At this time, looking at the image captured by the camera of the second robot 100b, the feature point a2 is arranged on the left side and the feature point a1 is arranged on the right side. Accordingly, feature points of the image provided by the first robot 100a in FIG. 8 (a) and the image captured by the second robot 100b in FIG. 8 (b) may be similarly arranged. Through this process, the heading angles of the two robots 100a and 100b may be similarly aligned. Furthermore, if the feature points are similarly arranged in the images provided by the two robots 100a and 100b, it can be confirmed that the positions of the two robots 100a and 100b looking at the feature points in the current state are arranged adjacently within a specific distance, , the position between each other can be accurately specified.

상술한 바와 같이 상기 제2 로봇(100b)에서 촬영된 영상과 상기 제1 로봇(100a)에서 촬영되어 전송된 영상, 즉 두 개의 영상에서 동일한 특징점을 선정하고, 선정된 특징점에 따라 판단하는 것이 가능하다. 이때 특징점은 특징으로 구분하기 쉬운 큰 물체이거나 특징으로 구분하기 쉬운 큰 물체의 일부분인 것이 가능하다. 예를 들어, 특징점은 공기 청정기, 문, 텔레비젼 등과 같은 물체이거나 옷장, 침대 등의 모서리와 같이 물체의 일부분일 수 있다.As described above, it is possible to select the same feature point in the image taken by the second robot 100b and the image taken and transmitted by the first robot 100a, that is, the two images, and judge according to the selected feature point. Do. In this case, the feature point may be a large object that is easy to distinguish as a feature or a part of a large object that is easy to distinguish as a feature. For example, the feature point may be an object such as an air purifier, a door, or a television, or a part of an object such as a corner of a wardrobe or a bed.

상기 제2 로봇(100b)의 제어부(1800)에서는 두 개의 영상에서 특징점이 유사한 위치에 배치되면, 상기 제2 로봇(100b)은 상기 제1 로봇(100a)과 주행 시작 전의 초기 위치에 배열된 것으로 판단할 수 있다. 상기 제1 로봇(100a)에서 제공된 영상과 상기 제2 로봇(100b) 에서 현재 촬영된 영상에 차이가 있으면, 상기 제2 로봇(100b)을 이동시키거나 회전시켜서, 상기 제2 로봇(100b)의 카메라에서 촬영된 영상을 변화시키는 것이 가능하다. 상기 제1 로봇(100a)의 카메라에서 촬영된 영상과 상기 제1 로봇(100a)에서 제공된 영상을 서로 비교할 때에, 두 개의 영상에서 특징점의 위치 변화가 유사한 방향으로 이루어지면, 상기 제2 로봇(100b)은 상기 제1 로봇(100a)과 주행 시작 전의 초기 위치에 배열된 것으로 판단하는 것도 가능하다.In the control unit 1800 of the second robot 100b, if the feature points are arranged at similar positions in the two images, it is assumed that the second robot 100b is arranged at the initial position before driving with the first robot 100a. can judge If there is a difference between the image provided by the first robot 100a and the image currently captured by the second robot 100b, by moving or rotating the second robot 100b, It is possible to change the image captured by the camera. When comparing the image captured by the camera of the first robot 100a and the image provided by the first robot 100a, if the location changes of feature points in the two images are made in a similar direction, the second robot 100b ) It is also possible to determine that the first robot (100a) is arranged in the initial position before the start of driving.

한편 두 개의 영상을 비교하기 쉽도록 하기 위해서, 상기 특징점은 복수 개가 선정되고, 각각의 특징점은 상기 제1 로봇(100a) 또는 상기 제2 로봇(100b)의 전방 중앙의 좌우측에 나뉘어서 배치되는 것이 바람직하다. 상기 제2 로봇(100b)과 상기 제1 로봇(100a)의 카메라는 각각 전방을 향하도록 배치되는데, 카메라를 기준으로 좌측과 우측에 서로 다른 특징점이 배치되면, 상기 제2 로봇(100b)의 제어부(1800)에서 타 청소기의 위치 및 방향을 감지하기 용이하기 때문이다. 상기 제2 로봇(100b)은 상기 특징점의 좌우 배치가 상기 제1 로봇(100a)에서 전송된 좌우 배치와 동일하도록 상기 제2 로봇(100b)을 이동 또는 회전시켜서, 상기 제2 로봇(100b)이 상기 제1 로봇(100a)의 후방에 일렬로 배치되도록 할 수 있다. 특히 상기 제2 로봇(100b)과 상기 제1 로봇(100a)의 전방이 서로 일치하도록 배치해서, 이후에 함께 청소를 할 때에 초기 이동 방향 선정이 용이해질 수 있다.On the other hand, in order to make it easy to compare the two images, a plurality of feature points are selected, and each feature point is divided into left and right sides of the front center of the first robot 100a or the second robot 100b. Do. The cameras of the second robot 100b and the first robot 100a are arranged to face forward, respectively. When different feature points are arranged on the left and right sides of the camera, the controller of the second robot 100b This is because it is easy to detect the location and direction of other cleaners in 1800 . The second robot 100b moves or rotates the second robot 100b so that the left and right arrangement of the feature points is the same as the left and right arrangement transmitted from the first robot 100a, so that the second robot 100b It may be arranged in a line behind the first robot (100a). In particular, by arranging the fronts of the second robot 100b and the first robot 100a to coincide with each other, selection of the initial movement direction can be facilitated when cleaning together later.

상술한 과정을 통해서, 상기 제2 로봇(100b)이 공유한 맵 정보에서 상기 제1 로봇(100a)의 위치를 파악할 수 있다(S6).Through the above process, the location of the first robot 100a can be determined from the map information shared by the second robot 100b (S6).

또한 상기 제1 로봇(100a)과 상기 제2 로봇(100b)은 서로 공유된 내비게이션(navigation) 맵(map) 및/또는 슬램(SLAM) 맵에 기반하여 이동하면서, 서로 간의 위치 정보를 교환할 수 있다.In addition, the first robot 100a and the second robot 100b can exchange location information with each other while moving based on a navigation map and/or a SLAM map shared with each other there is.

상기 제2 로봇(100b)은, 이동 중 또는 소정 거리 이동 후에 센싱부(1400)를 통하여 영상을 획득하고, 획득된 영상에서 영역 특징 정보를 추출할 수 있다.The second robot 100b may acquire an image through the sensing unit 1400 while moving or after moving a predetermined distance, and may extract region feature information from the obtained image.

상기 제어부(1800)는, 상기 획득된 영상에 기초하여 영역 특징 정보를 추출할 수 있다. 여기서, 추출된 영역 특징 정보는 상기 획득된 영상에 기초하여 인식된 영역과 사물에 대한 확률값의 집합을 포함할 수 있다.The controller 1800 may extract region feature information based on the obtained image. Here, the extracted region feature information may include a set of probability values for regions and objects recognized based on the obtained image.

한편, 상기 제어부(1800)는, 슬램(SLAM) 기반의 현재 위치 노드 정보, 및, 상기 추출된 영역 특징 정보에 기초하여, 현재 위치를 판별할 수 있다.Meanwhile, the control unit 1800 may determine a current location based on SLAM-based current location node information and the extracted region feature information.

여기서 상기 슬램(SLAM) 기반의 현재 위치 노드 정보는, 기저장된 노드 특징 정보 중 상기 획득된 영상에서 추출된 특징 정보와 가장 유사한 노드에 대응할 수 있다. 즉, 상기 제어부(1800)는 각 노드에서 추출된 특징(feature) 정보를 활용하여 위치 인식을 수행하여 현재 위치 노드 정보를 선정할 수 있다.Here, the SLAM-based current location node information may correspond to a node most similar to feature information extracted from the obtained image among pre-stored node feature information. That is, the control unit 1800 may select current location node information by performing location recognition using feature information extracted from each node.

또한 위치 추정의 정확도를 더욱 향상하기 위하여 상기 제어부(1800)는 특징(feature) 정보 및 영역 특징 정보를 모두 이용하여 위치 인식을 수행하여 위치 인식의 정확도를 높일 수 있다. 예를 들어, 상기 제어부(1800)는, 상기 추출된 영역 특징 정보를 기저장된 영역 특징 정보와 비교하여 복수의 후보 슬램 노드들을 선정하고, 상기 선정된 복수의 후보 슬램 노드들 중 슬램(SLAM) 기반의 현재 위치 노드 정보에 가장 유사한 후보 슬램 노드 정보에 기초하여 현재 위치를 판별할 수 있다.In addition, in order to further improve the accuracy of location estimation, the controller 1800 may perform location recognition using both feature information and area feature information to increase the accuracy of location recognition. For example, the control unit 1800 compares the extracted region feature information with pre-stored region feature information to select a plurality of candidate SLAM nodes, and selects a plurality of candidate SLAM nodes among the selected plurality of candidate SLAM nodes based on a SLAM. The current location may be determined based on candidate slam node information most similar to the current location node information of .

또는, 상기 제어부(1800)는, 슬램(SLAM) 기반의 현재 위치 노드 정보를 판별하고, 상기 추출된 영역 특징 정보에 따라 상기 판별된 현재 위치 노드 정보를 보정하여 최종 현재 위치를 판별할 수 있다.Alternatively, the controller 1800 may determine SLAM-based current location node information, correct the determined current location node information according to the extracted region feature information, and determine the final current location.

이 경우에, 상기 제어부(1800)는, 상기 슬램(SLAM) 기반의 현재 위치 노드 정보를 기준으로 소정 범위 내에 존재하는 노드들의 기저장된 영역 특징 정보 중 상기 추출된 영역 특징 정보와 가장 유사한 노드를 상기 최종 현재 위치로 판별할 수 있다.In this case, the control unit 1800 selects a node most similar to the extracted region feature information among pre-stored region feature information of nodes existing within a predetermined range based on the SLAM-based current position node information. It can be determined by the final current position.

이미지를 이용한 위치 추정 방법으로써 코너 등 로컬 특징점(local feature point)을 위치 추정 방법은 물론, 위치 추정을 위해 로컬 특징(local feature)이 아닌 오브젝트(object)의 전체적인 모양을 기술(description)하는 글로벌 특징(global feature)을 사용함으로써 조명/조도와 같은 환경 변화에 강인한 특징 추출이 가능하다, 예를 들어, 상기 제어부(1800)는 맵 생성시 영역 특징 정보(ex. 거실: 소파, 탁자, TV / 부엌: 식탁, 싱크대 / 방: 침대, 책상)를 추출하여 저장하고, 이후 실내 환경 내의 다양한 영역 특징 정보를 이용하여 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 위치를 추정할 수 있다.As a location estimation method using images, it is a method for estimating the location of local feature points such as corners, as well as global features that describe the overall shape of an object rather than local features for location estimation. By using (global feature), feature extraction that is robust to environmental changes such as lighting/illumination is possible. For example, the control unit 1800 may use area feature information (ex. living room: sofa, table, TV/kitchen) when creating a map. : dining table, sink / room: bed, desk) are extracted and stored, and then the positions of the first robot 100a and the second robot 100b can be estimated using information on characteristics of various regions in the indoor environment. .

즉, 본 발명에 따르면, 환경 저장 시에 영상 내 특정 지점(point)만을 이용하는 것이 아닌, 사물이나 물체, 영역 단위의 특징을 저장함으로써 조명/조도 변화에 강인한 위치 추정이 가능하다.That is, according to the present invention, location estimation that is robust to changes in lighting/illumination is possible by storing features of objects, objects, or regions instead of using only a specific point in an image when saving an environment.

또한, 침대, 소파 등 사물 밑으로 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 적어도 일부가 들어간 경우에, 상기 센싱부(1400)는 사물에 의해 시야가 가려져 코너 등 특징점을 충분히 포함하는 영상이 획득하지 못할 수 있다. 또는 천장이 높은 환경에서 특정 위치에서는 천장 이미지를 이용한 특징점 추출 정확도가 낮아질 수 있다.In addition, when at least a part of the first robot 100a and the second robot 100b is put under an object such as a bed or sofa, the sensing unit 1400 sufficiently detects a feature point such as a corner because the field of view is obstructed by the object. The image containing it may not be acquired. Alternatively, accuracy of feature point extraction using a ceiling image may be lowered at a specific location in an environment with a high ceiling.

하지만, 본 발명에 따르면, 침대 소파 등 물체가 상기 센싱부(1400)를 가리는 경우, 천장이 높아 특징점 식별이 약한 경우 등에도, 상기 제어부(1800)는 코너 등 특징점 이외에도 소파, 거실과 같은 영역 특징 정보로 현재 위치는 판별할 수 있다.However, according to the present invention, even when an object such as a bed or sofa covers the sensing unit 1400 or when the identification of a feature point is weak due to a high ceiling, the control unit 1800 controls the feature of the area such as a sofa or a living room in addition to a feature point such as a corner. With this information, the current location can be determined.

이후에는 상기 제1 로봇(100a)과 상기 제2 로봇(100b)이 함께 주행을 하면서 청소를 수행하는 것이 가능하다. 즉, 상기 제2 로봇(100b)이 상기 제1 로봇(100a)을 따라 주행하면서 청소를 수행하게 될 수 있다. After that, it is possible to perform cleaning while the first robot 100a and the second robot 100b travel together. That is, the second robot 100b may perform cleaning while traveling along the first robot 100a.

한편, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)이 협업 주행 중 맵 정보의 공유가 실패되는 경우에는, 상호 간의 통신을 통해 위치를 파악하게 될 수 있다. 이를테면, 앞서 설명한 바와 같이 상기 제1 로봇(100a)과 상기 제2 로봇(100b) 각각에 포함된 UWB 모듈 간에 송수신되는 신호의 시간을 측정하여, 두 로봇(100a, 100b) 사이의 거리(이격거리)를 파악하게 될 수 있다. 이 경우, UWB 모듈 간에 신호가 송수신되는 위치의 좌표를 이용한 변환식을 통해 두 로봇(100a, 100b) 사이의 거리(이격거리)를 파악될 수 있다.On the other hand, if sharing of map information fails during collaborative driving between the first robot 100a and the second robot 100b, their location may be determined through mutual communication. For example, as described above, by measuring the time of signals transmitted and received between the UWB modules included in each of the first robot 100a and the second robot 100b, the distance between the two robots 100a and 100b (separation distance) ) can be identified. In this case, the distance (separation distance) between the two robots 100a and 100b may be determined through a conversion equation using the coordinates of the location where signals are transmitted and received between the UWB modules.

이하 도 9를 참조하여, 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 위치를 변환식을 통해 산출하는 과정에 대해서 구체적으로 설명한다. 여기서, 상기 변환식은, 상기 제1 로봇(100a)의 이전 위치를 기준으로 상기 제1 로봇(100a)의 현재 위치를 표현하는 제1 좌표를, 상기 제2 로봇(100b)의 본체의 위치를 기준으로 상기 제1 로봇(100a)의 현재 위치를 표현하는 제2 좌표로 변환하는 식을 의미할 수 있다.Referring to FIG. 9, a process of calculating the positions of the first robot 100a and the second robot 100b through a conversion equation will be described in detail. Here, the conversion formula is based on the first coordinate representing the current position of the first robot 100a based on the previous position of the first robot 100a, based on the position of the main body of the second robot 100b. This may mean an expression for converting the current position of the first robot 100a into second coordinates.

도 9에서, 상기 제1 로봇(100a)의 이전 위치는 점선으로 표현되고, 현재 위치는 실선으로 표현된다. 또한 상기 제2 로봇(100b)의 위치는 실선으로 표현된다.In FIG. 9 , the previous position of the first robot 100a is represented by a dotted line, and the current position is represented by a solid line. Also, the position of the second robot 100b is represented by a solid line.

변환식은 하기와 같이 설명되고, 하기 <수식 1>에서 3X3 행렬로 표현된다.The conversion equation is described as follows, and is represented by a 3X3 matrix in Equation 1 below.

<변환식><conversion formula>

M(제2 로봇을 기준으로 표현된 제1 로봇의 현재 위치[제2좌표])= H(변환식) × R(제1 로봇의 이전 위치를 기준으로 표현한 제1 로봇의 현재 위치[제1좌표])M (current position of the first robot expressed based on the second robot [second coordinate]) = H (conversion formula) × R (current position of the first robot expressed based on the previous position of the first robot [first coordinate] ])

보다 상세한 수식으로는 하기 <수식 1>과 같이 표현될 수 있다.As a more detailed formula, it can be expressed as in <Equation 1> below.

<수식 1><Equation 1>

Figure 112020106726446-pat00001
Figure 112020106726446-pat00001

여기서, Xr, Yr은 제1좌표이고, Xm, Ym은 제2좌표이다.Here, Xr and Yr are the first coordinates, and Xm and Ym are the second coordinates.

제1좌표는 상기 제1 로봇(100a)을 이동시키는 주행부(1300)에서 제공된 정보를 바탕으로 산출되는 것이 가능하다. 상기 제1 로봇(100a)의 상기 주행부(1300)에서 제공된 정보는, 휠을 회전시키는 모터의 회전 정보를 측정하는 엔코더에서 도출된 정보에서, 상기 제1 로봇(100a)의 회전을 감지하는 자이로 센서에 의해서 보정된 것이 가능하다.The first coordinates can be calculated based on information provided from the traveling unit 1300 that moves the first robot 100a. The information provided from the driving unit 1300 of the first robot 100a is information derived from an encoder measuring rotational information of a motor that rotates a wheel, and a gyro that detects rotation of the first robot 100a. It is possible to calibrate by the sensor.

상기 주행부(1300)는 상기 제1 로봇(100a)을 이동시키거나 회전시키는 구동력을 제공하는 것으로, 상기 제1 로봇(100a)에서 제공하는 신호를 상기 제2 로봇(100b)이 수신하지 못하는 상황에도 산출될 수 있다. 따라서 두 로봇(100a, 100b) 간에 신호를 송수신해서 산출되는 위치 정보에 비해서 상대적으로 정확한 위치를 판단할 수 있다. 또한, 상기 주행부(1300)는 실제 상기 제1 로봇(100a)의 이동에 관한 정보를 포함하기 때문에, 상기 제1 로봇(100a)의 위치 변화를 정확하게 설명할 수 있다.The driving unit 1300 provides a driving force for moving or rotating the first robot 100a, and a situation in which the second robot 100b does not receive a signal provided by the first robot 100a. can also be calculated. Therefore, it is possible to determine a relatively accurate position compared to position information calculated by transmitting and receiving signals between the two robots 100a and 100b. In addition, since the driving part 1300 includes information about the actual movement of the first robot 100a, a positional change of the first robot 100a can be accurately described.

예를 들어, 상기 제1 로봇(100a)에는 엔코더에서 모터가 회전된 것으로 감지했더라도, 자이로 센서를 이용해서, 상기 제1 로봇(100a)의 위치가 이동된 것이 아니라 회전된 것을 판별해서, 상기 제1 로봇(100a)의 위치 변화를 정확히 산출할 수 있다. 휠을 회전시키는 모터가 회전되는 경우라도, 상기 제1 로봇(100a)이 이동 없이 회전만 하는 것도 가능하기 때문에, 모터가 회전된다고 무조건 타 청소기의 위치가 이동되는 것은 아니다. 따라서, 자이로 센서를 이용하는 경우에 상기 제1 로봇(100a)의 위치 변화없이 회전만 이루어진 경우나, 위치에 변화와 회전이 함께 이루어진 경우나, 회전없이 위치 변화만 이루어진 경우 등을 구분할 수 있다. 따라서, 엔코더와 자이로 센서를 이용해서 상기 제1 로봇(100a)은 이전 위치에서 현재 위치로 변환된 제1좌표를 정확하게 산출할 수 있다. 또한 이런 정보는 상기 제1 로봇(100a)의 통신부(1100)를 통해서 네트워크로 전송되고, 네트워크를 통해서 상기 제2 로봇(100b)으로 전달될 수 있다.For example, even if the encoder detects that the motor of the first robot 100a is rotated, the gyro sensor is used to determine that the position of the first robot 100a is not moved but rotated, The change in position of the first robot 100a can be accurately calculated. Even when the motor for rotating the wheel is rotated, since the first robot 100a can only rotate without moving, rotation of the motor does not unconditionally move the position of another vacuum cleaner. Therefore, in the case of using the gyro sensor, it is possible to distinguish between a case in which only rotation is performed without a change in the position of the first robot 100a, a case in which a change in position and rotation are performed together, and a case in which only a change in position is performed without rotation. Therefore, the first robot 100a can accurately calculate the first coordinate converted from the previous position to the current position by using the encoder and the gyro sensor. In addition, this information may be transmitted to the network through the communication unit 1100 of the first robot 100a and transmitted to the second robot 100b through the network.

제2좌표는 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 사이에 송수신된 신호(예를 들어, UWB 모듈을 이용해서 신호가 송수신될 수 있음)에 의해서 측정된다. 제2좌표는 상기 제2 로봇(100b)의 감지영역에 상기 제1 로봇(100a)이 존재해서 신호가 전달이 되는 경우에 산출될 수 있다.The second coordinate is measured by a signal transmitted and received between the first robot 100a and the second robot 100b (eg, a signal may be transmitted and received using a UWB module). The second coordinate may be calculated when the first robot 100a exists in the sensing area of the second robot 100b and the signal is transmitted.

도 9를 보면, H에 의해서 두 개의 좌표값이 등호에 의해서 표현될 수 있음을 알 수 있다.Referring to FIG. 9, it can be seen that two coordinate values can be expressed by an equal sign by H.

한편 H를 구하기 위해서, 상기 제2 로봇(100b)의 감지영역 내에 상기 제1 로봇(100a)이 배치될 때의 data를 지속적으로 축적할 수 있다. 이러한 data는 하기 <수식 2>와 같이 표현된다. 상기 제1 로봇(100a)이 감지영역 내에 위치할 때에 많은 data를 축적한다. 이때 data는 복수 개의 제1좌표와 각각에 대응되는 복수 개의 제2좌표이다.Meanwhile, in order to obtain H, data when the first robot 100a is placed in the sensing area of the second robot 100b may be continuously accumulated. Such data is expressed as in Equation 2 below. When the first robot 100a is positioned within the sensing area, a lot of data is accumulated. At this time, data is a plurality of first coordinates and a plurality of second coordinates respectively corresponding to each other.

<수식 2><Equation 2>

Figure 112020106726446-pat00002
Figure 112020106726446-pat00002

여기서, H를 구하기 위해서 하기 <수식 3>과 같이 최소 자승법을 이용하게 될 수 있다.Here, in order to obtain H, the least squares method may be used as shown in Equation 3 below.

<수식 3><Equation 3>

Figure 112020106726446-pat00003
Figure 112020106726446-pat00003

한편, H를 산출한 이후에, 계속해서 제1좌표와 제2좌표가 획득되면 H를 새롭게 산출해서, H를 갱신하는 것이 가능하다. H를 산출하는 data의 양이 많아지면, H는 더욱 신뢰성이 높은 값을 가지게 된다.Meanwhile, after calculating H, if the first coordinate and the second coordinate are continuously obtained, it is possible to newly calculate H and update H. As the amount of data for calculating H increases, H has a more reliable value.

이렇게 산출된 변환식(H)를 이용해서, 상기 제2 로봇(100b)과 상기 제1 로봇(100a)이 직접 신호를 송수신하기 어려울 때에도 상기 제2 로봇(100b)이 상기 제1 로봇(100a)을 추종하게 될 수 있다. 상기 제1 로봇(100a)이 일시적으로 상기 제2 로봇(100b)의 감지영역을 벗어나서, 상기 제2 로봇(100b)이 상기 제1 로봇(100a)의 위치에 관한 신호를 센싱부를 통해서 직접 받을 수 없는 경우, 상기 제2 로봇(100b)은 네트워크를 통해서 전달된 상기 제1 로봇(100a)의 주행 정보를 이용해서, 상기 제2 로봇(100b)의 위치 대비 상기 제1 로봇(100a)의 위치를 변환식에 의해서 계산할 수 있다.Using the conversion equation (H) thus calculated, even when it is difficult for the second robot 100b and the first robot 100a to transmit and receive signals directly, the second robot 100b transmits the first robot 100a. can be followed When the first robot 100a temporarily leaves the sensing area of the second robot 100b, the second robot 100b may directly receive a signal about the position of the first robot 100a through the sensing unit. If not, the second robot 100b determines the position of the first robot 100a relative to the position of the second robot 100b by using driving information of the first robot 100a transmitted through the network. It can be calculated by the conversion formula.

상기 변환식에 의해서 상기 제2 로봇(100b)이 상기 제1 로봇(100a)의 위치를 판단할 때에는 상기 제2 로봇(100b)의 통신부(1100)을 통해서, R에 해당하는 제1좌표는 전달받아야 한다. 즉 R과 H를 알기 때문에, M이 산출될 있다. M은 상기 제2 로봇(100b)에 대한 상기 제1 로봇(100a)의 위치이다. 따라서 상기 제2 로봇(100b)은 상기 제1 로봇(100a)에 대한 상대 위치를 알 수 있고, 상기 제2 로봇(100b)은 상기 제1 로봇(100a)을 따라서 이동할 수 있다.When the second robot 100b determines the position of the first robot 100a by the conversion formula, the first coordinate corresponding to R must be received through the communication unit 1100 of the second robot 100b. do. That is, since R and H are known, M can be calculated. M is the position of the first robot 100a relative to the second robot 100b. Therefore, the second robot 100b can know the relative position with respect to the first robot 100a, and the second robot 100b can move along the first robot 100a.

한편, 상술한 기술을 기반으로, 상기 제2 로봇(100b) 또는 상기 제1 로봇(100a) 중에 어느 하나가 먼저 충전대에 접촉 후 충전에 들어가면, 다른 하나가 어느 하나의 충전대 위치(충전에 들어간 로봇에 대해 제2좌표 또는 제1좌표)를 기억 후 자신의 충전대로 이동한다. 위치를 기억했으므로 다음 번 청소부터는 감지영역의 밖에 있더라도, 추종 청소를 위해 모일 수 있다.On the other hand, based on the above-described technology, when one of the second robot 100b or the first robot 100a first contacts the charging station and then enters charging, the other robot moves to the position of the charging station (robot entered charging). After memorizing the second coordinate or the first coordinate for , it moves to its own charging station. Since the position has been memorized, from the next cleaning, even if it is outside the detection area, it can gather for follow-up cleaning.

이와 같이 맵 정보를 이용하지 않고 상호 간의 통신 결과를 이용하여 상대 로봇의 위치를 파악하게 됨으로써, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)이 주행 중에도 맵 리스(Map-less) 위치 인식 방식으로 상호 간에 위치를 파악하게 될 수 있다.In this way, the position of the other robot is grasped using the result of mutual communication without using map information, so that the first robot 100a and the second robot 100b can obtain a map-less location even while driving. Recognition may allow them to locate each other in a way.

이와 같이 상호 간에 위치를 파악하여 주행하는 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)은, 도 10에 도시된 바와 같이 협업 주행을 수행하게 될 수 있다. 이때, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)이 주행하는 청소 대상 영역은, 도 10에 도시된 바와 같이, 하나 이상의 구역으로 구분(Z1 내지 Z3)되어, 구분된 구역 단위로 청소가 이루어지게 될 수 있다. In this way, the first robot 100a and the second robot 100b, which travel by recognizing the location of each other, may perform cooperative travel as shown in FIG. 10 . At this time, the area to be cleaned in which the first robot 100a and the second robot 100b travel is divided into one or more zones (Z1 to Z3), as shown in FIG. 10, in units of divided zones. cleaning may take place.

협업 주행의 수행이 시작되면, 상기 제1 로봇(100a)이 제1 구역(Z1)에 대한 청소를 시작하고, 상기 제2 로봇(100b)은 상기 제1 로봇(100a)의 시작 위치 근처에서 대기할 수 있다. 상기 제1 로봇(100a)이 상기 제1 구역(Z1)을 일정 기준 이상으로 청소를 완료하게 되면, 상기 제1 로봇(100a)이 상기 제2 로봇(100b)에게 청소 가능한 구역에 대한 정보를 전달할 수 있다. 이를테면, 상기 제1 로봇(100a)이 상기 제1 구역(Z1)에 관한 정보, 또는 상기 제1 로봇(100a)이 상기 제1 구역(Z1)에서 주행한 경로에 대한 정보를 상기 제2 로봇(100b)에 전달하여, 상기 제2 로봇(100b)이 상기 제1 로봇(100a)의 주행 경로에 따라 주행하도록 하게 될 수 있다. When the collaborative driving starts, the first robot 100a starts cleaning the first zone Z1, and the second robot 100b stands by near the starting position of the first robot 100a. can do. When the first robot 100a finishes cleaning the first zone Z1 by a certain standard or higher, the first robot 100a transmits information on the area that can be cleaned to the second robot 100b. can For example, the second robot ( 100b), the second robot 100b may travel according to the travel path of the first robot 100a.

상기 제1 로봇(100a)은 상기 제2 로봇(100b)에 청소 가능한 구역에 대한 정보를 전달한 후, 상기 제1 구역(Z1)의 잔여 부분을 청소하거나, 제2 구역(Z2)으로 넘어가 상기 제2 구역(Z2)을 청소하고, 상기 제2 로봇(100b)은 상기 제1 로봇(100a)으로부터 전달받은 정보를 근거로 상기 제1 구역(Z1)을 청소할 수 있다. 이 경우, 상기 제2 로봇(100a)은, 상기 제1 로봇(100a)으로부터 전달받은 정보를 근거로 상기 제1 로봇(100a)이 주행한 경로를 따라 주행하며 청소를 수행하게 될 수 있다.After the first robot 100a transfers information on the area that can be cleaned to the second robot 100b, it cleans the remaining part of the first area Z1 or goes to the second area Z2 to perform the cleaning process. The second area Z2 is cleaned, and the second robot 100b may clean the first area Z1 based on the information received from the first robot 100a. In this case, the second robot 100a may perform cleaning while traveling along the path traveled by the first robot 100a based on information received from the first robot 100a.

상기 제1 로봇(100a)은, 상기 제2 로봇(100b)이 상기 제1 구역(Z1)을 청소하는 동안, 상기 제2 구역(Z2)을 청소하여, 상기 제2 구역(Z2)에 대한 청소를 완료하면 다음 미청소 구역인 제3 구역(Z3)으로 이동할 수 있다. 이때, 상기 제1 로봇(100a)은, 상기 제1 구역(Z1)에서 청소 가능한 구역에 대한 정보를 상기 제2 로봇(100b)에 전달한 바와 같이, 상기 제2 구역(Z2)에서 청소 가능한 구역에 대한 정보를 상기 제2 로봇(100b)에 전달할 수 있다. 이에 따라, 상기 제2 로봇(100a)이 상기 제1 구역(Z1)에 대한 청소를 완료한 후, 상기 제2 구역(Z2)으로 이동하여 상기 제2 구역(Z2)에 대한 청소를 수행하게 될 수 있다.The first robot 100a cleans the second area Z2 while the second robot 100b cleans the first area Z1, thereby cleaning the second area Z2. After completing, you can move to the next uncleaned area, the third area (Z3). At this time, as the first robot 100a transfers the information on the area available for cleaning in the first area Z1 to the second robot 100b, the area available for cleaning in the second area Z2 It is possible to transmit information about the second robot (100b). Accordingly, after the second robot 100a finishes cleaning the first zone Z1, it moves to the second zone Z2 and cleans the second zone Z2. can

이후, 상기 제1 로봇(100a)은 상기 제3 구역(Z3)을 청소하게 되고, 상기 제1 로봇(100a)이 상기 제3 구역(Z3)을 청소하는 동안 상기 제2 로봇(100b)은 상기 제22 구역(Z2)을 청소하게 될 수 있다. 상기 제1 로봇(100a)이 상기 제3 구역(Z3)에 대한 청소를 완료하면, 마찬가지로 상기 제2 로봇(100b)이 상기 제3 구역(Z3)으로 이동하여, 상기 제1 로봇(100a)이 주행한 경로를 따라 주행하며 상기 제3 구역(Z3)을 청소하게 될 수 있다.Then, the first robot 100a cleans the third zone Z3, and while the first robot 100a cleans the third zone Z3, the second robot 100b cleans the third zone Z3. The twenty-second zone (Z2) may be cleaned. When the first robot 100a finishes cleaning the third zone Z3, the second robot 100b similarly moves to the third zone Z3, and the first robot 100a The third area Z3 may be cleaned while driving along the traveled path.

이와 같이 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)의 협업이 이루어지는 상기 시스템(1)은, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)의 구동 상태에 따라 협업 주행이 이루어지게 될 수 있다.In this way, the system 1 in which the first robot 100a and the second robot 100b cooperate is cooperative driving according to the driving conditions of the first robot 100a and the second robot 100b. this can be done

이를테면, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 하나 이상이 상기 협업 주행이 불가한 구동 상태인 경우, 또는 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 하나 이상이 상기 협업 주행 중 에러가 발생될 우려가 있는 경우에는 상기 협업 주행이 미수행될 수 있다.For example, when at least one of the first robot 100a and the second robot 100b is in a driving state in which the cooperative driving is impossible, or one of the first robot 100a and the second robot 100b If there is a concern that an error may occur during the cooperative driving, the cooperative driving may not be performed.

구체적인 예를 들면, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 하나 이상의 배터리 충전 용량이 일정 기준에 미달하여 상기 협업 주행을 완주할 수 없는 상태이거나, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 하나 이상이 상호 간의 위치 인식이 불가한 구역에 위치하여 상대 로봇의 위치 인식이 이루어지지 않아 상기 협업 주행의 시작이 어려운 상태인 경우에는 상기 협업 주행이 수행되지 않게 될 수 있다.For example, the battery charge capacity of one or more of the first robot 100a and the second robot 100b does not meet a predetermined standard, so that the cooperative driving cannot be completed, or the first robot 100a and when at least one of the second robots 100b is located in an area where mutual position recognition is not possible, and thus the start of the cooperative driving is difficult because the position of the other robot is not recognized, the cooperative driving is not performed. It can be.

즉, 상기 시스템(1)에서 상기 협업 주행은, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)의 구동 상태가 일정 기준에 만족할 시에 수행될 수 있다.That is, in the system 1, the collaborative driving may be performed when the driving states of the first robot 100a and the second robot 100b satisfy a predetermined criterion.

이하, 초기 구동 상태에 따라 협업 주행을 실시하게 되는 상기 시스템(1)의 실시예를 설명한다.Hereinafter, an embodiment of the system 1 that performs cooperative driving according to an initial driving state will be described.

상기 시스템(1)의 실시예는, 도 11에 도시된 바와 같이, 청소 대상 영역을 주행하며 청소를 수행하는 복수의 이동 로봇(100a, 100b) 및 상기 복수의 이동 로봇(100a, 100b)과 통신하며, 상기 복수의 이동 로봇(100a, 100b)에 원격 제어에 대한 제어 명령을 송신하는 제어기(600)를 포함한다.As shown in FIG. 11 , the embodiment of the system 1 includes a plurality of mobile robots 100a and 100b that perform cleaning while traveling in an area to be cleaned and communicates with the plurality of mobile robots 100a and 100b. and a controller 600 for transmitting a control command for remote control to the plurality of mobile robots 100a and 100b.

상기 복수의 이동 로봇(100a, 100b)은, 바람직하게는 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 두 로봇을 포함할 수 있다.The plurality of mobile robots 100a and 100b may preferably include two robots, the first robot 100a and the second robot 100b.

여기서, 상기 제1 로봇(100a)은, 상기 협업 주행의 대상 구역을 선 주행하며 먼지를 흡입하는 로봇일 수 있고, 상기 제2 로봇(100b)은, 상기 제1 로봇(100a)이 주행한 구역을 후 주행하며 먼지를 닦는 로봇일 수 있다.Here, the first robot 100a may be a robot that pre-travels in the target area of the collaborative driving and sucks in dust, and the second robot 100b is the area traveled by the first robot 100a. It may be a robot that drives and wipes away dust.

즉, 상기 협업 주행은, 상기 제1 로봇(100a)이 선 주행하며 먼지를 흡입하고, 상기 제2 로봇(100b)이 후 주행하며 상기 제1 로봇(100a)이 선 주행하며 먼지를 흡입한 경로의 먼지를 닦으며 청소하게 될 수 있다.That is, the collaborative driving is a path in which the first robot 100a travels in advance and inhales dust, and the second robot 100b travels later and the first robot 100a travels in advance and inhales dust. can be cleaned by wiping off the dust of the

이하에서는, 상기 복수의 이동 로봇(100a, 100b)이 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)을 모두 포함하는 의미로 사용한다.Hereinafter, the plurality of mobile robots 100a and 100b are used to mean including both the first robot 100a and the second robot 100b.

상기 제어기(600)는, 상기 단말기(300), 상기 서버(500)의 제어기기 및 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 리모트 컨트롤러 중 하나 이상일 수 있다.The controller 600 may be one or more of the terminal 300, the control device of the server 500, and the remote controllers of the first robot 100a and the second robot 100b.

이에 따라, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)은, 상기 단말기(300), 상기 서버(500)의 제어기기 및 상기 제1 로봇(100a)과 상기 제2 로봇(100b)의 리모트 컨트롤러 중 하나 이상으로부터 상기 제어 명령을 수신하여 구동하게 될 수 있다.Accordingly, the first robot (100a) and the second robot (100b), the control device of the terminal 300, the server 500 and the first robot (100a) and the second robot (100b) It may be driven by receiving the control command from one or more of the remote controllers.

상기 제어기(600)는, 바람직하게는 이동 단말기일 수 있다.The controller 600 may be preferably a mobile terminal.

이에 따라, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)은, 상기 단말기(300)에 의해 상기 협업 주행 모드를 수행하게 될 수 있다. Accordingly, the first robot 100a and the second robot 100b may perform the cooperative driving mode by the terminal 300 .

상기 시스템(1)에서 상기 협업 주행은, 상기 제어기(600)에서 상기 협업 주행에 대한 제어 명령이 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)에 전달됨으로써 수행될 수 있다.In the system 1, the cooperative driving may be performed by transmitting a control command for the cooperative driving from the controller 600 to the first robot 100a and the second robot 100b.

상기 복수의 이동 로봇(100a, 100b)은, 상기 제어기(600)로부터 상기 청소 대상 영역을 협업하여 청소하는 협업 주행 모드에 대한 제어 명령을 입력받은 경우, 상기 복수의 이동 로봇(100a, 100b)의 구동 상태가 기설정된 기준 조건에 해당하는지 여부를 판단하고, 판단 결과에 따라 상기 협업 주행 모드를 위한 모션을 수행한다.When the plurality of mobile robots 100a and 100b receive a control command from the controller 600 for a collaborative driving mode in which the area to be cleaned is collaboratively cleaned, the plurality of mobile robots 100a and 100b It is determined whether the driving state corresponds to a preset reference condition, and motion for the cooperative driving mode is performed according to the determination result.

즉, 상기 복수의 이동 로봇(100a, 100b)은, 상기 제어 명령이 입력되면 각각의 구동 상태를 상기 기준 조건과 비교하여, 비교 결과에 따라 상기 협업 주행 모드를 위한 모션을 수행하게 될 수 있다.That is, when the control command is input, the plurality of mobile robots 100a and 100b may compare their driving state with the reference condition and perform the motion for the collaborative driving mode according to the comparison result.

상기 협업 주행 모드는, 상기 복수의 이동 로봇(100a, 100b)이 상기 협업 주행을 수행하는 동작 모드를 의미할 수 있다.The cooperative driving mode may refer to an operation mode in which the plurality of mobile robots 100a and 100b perform the cooperative driving.

상기 협업 주행 모드는, 상기 복수의 이동 로봇(100a, 100b)이 순서대로 주행하며 청소하는 모드일 수 있다. The collaborative driving mode may be a mode in which the plurality of mobile robots 100a and 100b sequentially drive and clean.

이를테면, 일정 구역에서 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)이 순서대로 주행하며 청소하는 모드일 수 있다.For example, it may be a mode in which the first robot 100a and the second robot 100b sequentially drive and clean in a certain area.

상기 협업 주행 모드는, 상기 복수의 이동 로봇(100a, 100b) 중 어느 한 로봇이 선 주행하며 청소한 구역을 나머지 로봇이 후 주행하며 청소하는 모드일 수 있다.The collaborative driving mode may be a mode in which one of the plurality of mobile robots 100a and 100b drives and cleans an area in which the remaining robots drive and clean afterward.

이를테면, 상기 제1 로봇(100a)이 선 주행하고, 상기 제2 로봇(100b)이 후 주행하며 청소하게 될 수 있다.For example, the first robot 100a may run first, and the second robot 100b may clean while running later.

상기 시스템(1)에서 상기 협업 주행 모드가 수행되는 과정은, 도 12에 도시된 바와 같을 수 있다. 또한, 도 12에 도시된 과정에 따라 상기 시스템(1)에서 상기 협업 주행 모드가 수행되는 조건은, 도 13에 도시된 바와 같을 수 있다.A process of performing the collaborative driving mode in the system 1 may be as shown in FIG. 12 . In addition, the conditions for performing the collaborative driving mode in the system 1 according to the process shown in FIG. 12 may be as shown in FIG. 13 .

먼저, 상기 협업 주행 모드의 수행에 대한 제어 명령이 상기 복수의 이동 로봇(100a, 100b)에 입력(S10)되면, 상기 복수의 이동 로봇(100a, 100b)이 현재 위치에서 수행 중인 동작을 중지하여, 상기 구동 상태를 판단(S20)할 수 있다. 여기서, 상기 제어 명령이 입력될 때 상기 복수의 이동 로봇(100a, 100b)은, 다른 동작 모드를 기수행 중일 수 있으며, 또는 상기 충전대(400a, 400b) 각각에 도킹된 상태일 수도 있다. 상기 복수의 이동 로봇(100a, 100b)은, 다른 동작 모드의 기수행 중 여부나 상기 충전대(400a, 400b)의 도킹 여부에 관계없이 상기 제어 명령을 입력받아, 현재 위치에서 상기 구동 상태를 판단(S20)하게 될 수 있다.First, when a control command for performing the cooperative driving mode is input (S10) to the plurality of mobile robots 100a and 100b, the plurality of mobile robots 100a and 100b stop the operation being performed at the current location, , it is possible to determine the driving state (S20). Here, when the control command is input, the plurality of mobile robots 100a and 100b may be already performing different operation modes, or may be in a docked state on the charging bases 400a and 400b, respectively. The plurality of mobile robots 100a and 100b receive the control command regardless of whether other operation modes are in progress or whether the charging stations 400a and 400b are docked, and determine the driving state at the current location ( S20) can be done.

상기 구동 상태는, 상기 복수의 이동 로봇(100a, 100b) 각각의 협업 주행의 수행을 위한 상태를 의미할 수 있다. 또한, 상기 구동 상태는, 상기 기준 조건과 비교되는 상기 복수의 이동 로봇(100a, 100b)의 하나 이상의 상태 정보를 포함하는 의미일 수 있다.The driving state may mean a state for performing cooperative driving of each of the plurality of mobile robots 100a and 100b. Also, the driving state may include one or more state information of the plurality of mobile robots 100a and 100b compared with the reference condition.

상기 구동 상태는, 도 13에 도시된 바와 같이, 상기 복수의 이동 로봇(100a, 100b) 각각의 맵 공유 상태(구동 상태 1), 배터리 충전 상태(구동 상태 2) 및 상대 로봇의 충전대 위치 정보 상태(구동 상태 3) 중 하나 이상을 포함할 수 있다. 즉, 상기 구동 상태를 판단(S20)할 시, 상기 복수의 이동 로봇(100a, 100b) 각각의 맵 공유 상태(구동 상태 1), 배터리 충전 상태(구동 상태 2) 및 상대 로봇의 충전대 위치 정보 상태(구동 상태 3) 중 하나 이상을 판단하게 될 수 있다. As shown in FIG. 13, the driving state is a map sharing state (driving state 1) of each of the plurality of mobile robots 100a and 100b, a battery charge state (driving state 2), and a charging base position information state of the other robot. (driving state 3) may include one or more. That is, when the driving state is determined (S20), the map sharing state of each of the plurality of mobile robots 100a and 100b (driving state 1), the battery charge state (driving state 2), and the state of charging base location information of the other robot One or more of (driving state 3) may be determined.

상기 맵 공유 상태는, 상기 복수의 이동 로봇(100a, 100b) 각각의 맵 정보가 상호 간에 공유되고 있는지 여부에 대한 상태를 의미할 수 있다. 즉, 상기 제1 로봇(100a)에 상기 제2 로봇(100b)의 맵 정보가 공유되고, 상기 제2 로봇(100b)에 상기 제1 로봇(100a)의 맵 정보가 공유되고 있는지 여부에 대한 상태일 수 있다. The map sharing state may refer to a state of whether map information of each of the plurality of mobile robots 100a and 100b is being shared with each other. That is, a state of whether the map information of the second robot 100b is shared with the first robot 100a and the map information of the first robot 100a is shared with the second robot 100b. can be

상기 배터리 충전 상태는, 상기 복수의 이동 로봇(100a, 100b) 각각의 배터리 충전 용량 상태를 의미할 수 있다. 즉, 상기 제1 로봇(100a)의 배터리 충전 용량 및 상기 제2 로봇(100b)의 배터리 충전 용량 각각의 충전 용량에 대한 상태일 수 있다.The battery charging state may mean a battery charging capacity state of each of the plurality of mobile robots 100a and 100b. That is, the battery charging capacity of the first robot 100a and the battery charging capacity of the second robot 100b may be states of respective charging capacities.

상기 상대 로봇의 충전대 위치 정보 상태는, 상기 복수의 이동 로봇(100a, 100b) 각각에 상대 로봇의 충전대 위치 정보가 저장되었는지 여부에 대한 상태를 의미할 수 있다. 즉, 상기 제1 로봇(100a)에 상대 로봇인 상기 제2 로봇(100b)의 충전대(400b) 위치 정보가 저장되고, 상기 제2 로봇(100b)에 상대 로봇인 상기 제1 로봇(100a)의 충전대(400a) 위치 정보가 저장되었는지 여부에 대한 상태일 수 있다. The status of the position information of the charging stand of the opponent robot may refer to a state of whether or not position information of the charging stand of the opponent robot is stored in each of the plurality of mobile robots 100a and 100b. That is, the location information of the charging table 400b of the second robot 100b, which is the counterpart robot, is stored in the first robot 100a, and the position information of the first robot 100a, which is the counterpart robot, is stored in the second robot 100b. It may be a state of whether the location information of the charging station 400a is stored.

상기 구동 상태는, 바람직하게는, 상기 복수의 이동 로봇(100a, 100b) 각각의 맵 공유 상태, 배터리 충전 상태 및 상대 로봇의 충전대 위치 정보 상태 모두를 포함할 수 있다.Preferably, the driving state may include all of a map sharing state of each of the plurality of mobile robots 100a and 100b, a battery charge state, and a charging station position information state of a partner robot.

상기 복수의 이동 로봇(100a, 100b) 각각이 상기 구동 상태를 판단(S20)한 후, 상기 복수의 이동 로봇(100a, 100b)이 서로 통신하여 판단 결과를 공유할 수 있다. 이에 따라, 상기 복수의 이동 로봇(100a, 100b) 각각이 상기 복수의 이동 로봇(100a, 100b) 모두의 구동 상태를 파악하게 될 수 있다. 이후, 상기 복수의 이동 로봇(100a, 100b) 중 하나 이상이 상기 구동 상태를 상기 기준 조건과 비교하여, 상기 구동 상태가 상기 기준 조건에 해당하는지 여부를 판단(S30 내지 S50)할 수 있다.After each of the plurality of mobile robots 100a and 100b determines the driving state (S20), the plurality of mobile robots 100a and 100b may communicate with each other to share the determination result. Accordingly, each of the plurality of mobile robots 100a and 100b may grasp the driving state of all of the plurality of mobile robots 100a and 100b. Thereafter, at least one of the plurality of mobile robots 100a and 100b may compare the driving state with the reference condition to determine whether the driving state corresponds to the reference condition (S30 to S50).

상기 기준 조건은, 상기 협업 주행 모드가 수행될 수 있는 상기 구동 상태의 조건일 수 있다. 즉, 상기 기준 조건은, 상기 협업 주행 모드가 수행될 수 있는 초기 상태 조건을 의미할 수 있다. 이에 따라, 상기 기준 조건은, 상기 구동 상태에 대응하는 조건들이 기설정될 수 있다.The reference condition may be a condition of the driving state in which the cooperative driving mode can be performed. That is, the reference condition may mean an initial state condition in which the cooperative driving mode may be performed. Accordingly, as the reference condition, conditions corresponding to the driving state may be preset.

상기 기준 조건은, 상기 복수의 이동 로봇(100a, 100b) 각각이 맵을 공유하는 제1 조건, 상기 복수의 이동 로봇(100a, 100b) 각각의 배터리 충전 용량이 기설정된 기준 용량 이상인 제2 조건 및 상기 복수의 이동 로봇(100a, 100b) 각각에 상대 로봇의 충전대 위치 정보가 저장된 제3 조건 중 하나 이상을 포함할 수 있다.The reference conditions include a first condition in which each of the plurality of mobile robots 100a and 100b share a map, a second condition in which the battery charging capacity of each of the plurality of mobile robots 100a and 100b is greater than or equal to a predetermined reference capacity, and One or more of the third conditions may be included in which the position information of the charging table of the other robot is stored in each of the plurality of mobile robots 100a and 100b.

상기 기준 조건은, 바람직하게는, 상기 제1 조건 내지 제3 조건 모두를 포함할 수 있다. 이에 따라, 상기 복수의 이동 로봇(100a, 100b)은, 상기 구동 상태와 상기 기준 조건을 비교(S30 내지 S50)하여, 상기 복수의 이동 로봇(100a, 100b) 각각의 맵 공유 상태가 상기 제1 조건에 해당하는지 여부를 판단(S30)하고, 상기 복수의 이동 로봇(100a, 100b) 각각의 배터리 충전 상태가 상기 제2 조건에 해당하는지 여부를 판단(S40)하고, 상기 복수의 이동 로봇(100a, 100b) 각각의 상대 로봇의 충전대 위치 정보 상태가 상기 제3 조건에 해당하는지 여부를 판단(S50)하게 될 수 있다. Preferably, the reference condition may include all of the first to third conditions. Accordingly, the plurality of mobile robots 100a and 100b compare the driving state and the reference condition (S30 to S50), and the map sharing state of each of the plurality of mobile robots 100a and 100b is the first It is determined whether the condition is met (S30), and it is determined whether the battery state of charge of each of the plurality of mobile robots 100a and 100b corresponds to the second condition (S40), and the plurality of mobile robots 100a , 100b) It may be determined (S50) whether the state of the position information of the charging station of each partner robot corresponds to the third condition.

상기 복수의 이동 로봇(100a, 100b)은, 상기 구동 상태가 상기 기준 조건에 해당하는지 여부를 판단(S30 내지 S50)한 결과, 상기 복수의 이동 로봇(100a, 100b) 각각이 맵을 공유하고, 상기 복수의 이동 로봇(100a, 100b) 각각의 배터리 충전 용량이 기설정된 기준 용량 이상인 경우, 상기 복수의 이동 로봇(100a, 100b) 각각에 상대 로봇의 충전대 위치 정보가 저장되었는지 여부를 판단(S50)한 결과에 따라 상기 협업 주행 모드를 위한 모션을 수행할 수 있다.The plurality of mobile robots 100a and 100b determine whether the driving state corresponds to the reference condition (S30 to S50), and each of the plurality of mobile robots 100a and 100b shares a map, When the battery charge capacity of each of the plurality of mobile robots 100a and 100b is greater than or equal to a predetermined reference capacity, it is determined whether information on the position of the charging stand of the other robot is stored in each of the plurality of mobile robots 100a and 100b (S50). According to one result, motion for the cooperative driving mode may be performed.

상기 복수의 이동 로봇(100a, 100b)은, 상기 복수의 이동 로봇(100a, 100b) 각각의 맵 공유 상태가 상기 제1 조건에 해당하는지 여부를 판단(S30)한 결과, 상기 복수의 이동 로봇(100a, 100b) 각각의 맵 공유 상태가 상기 제1 조건에 해당하는 경우, 상기 복수의 이동 로봇(100a, 100b) 각각의 배터리 충전 용량 상태가 상기 제2 조건에 해당하는지 여부를 판단(S40)할 수 있다. 그리고, 상기 복수의 이동 로봇(100a, 100b) 각각의 맵 공유 상태가 상기 제1 조건에 해당하는지 여부를 판단(S30)한 결과, 상기 복수의 이동 로봇(100a, 100b) 각각의 맵 공유 상태가 상기 제1 조건에 미해당하는 경우에는, 상기 복수의 이동 로봇(100a, 100b)이 상기 협업 주행 모드를 미수행(R2)할 수 있다. 즉, 상기 복수의 이동 로봇(100a, 100b) 각각이 맵을 공유한 경우, 공유된 맵을 통해 상기 복수의 이동 로봇(100a, 100b)이 상기 협업 주행 모드를 수행 가능한 것으로 판단하고, 상기 복수의 이동 로봇(100a, 100b) 각각이 맵을 미공유한 경우에는, 맵 정보의 미공유에 따른 동일 구역의 협업 청소 제한으로 인해 상기 복수의 이동 로봇(100a, 100b)이 상기 협업 주행 모드를 수행 불가능한 것으로 판단하여, 상기 협업 주행 모드를 미수행(R2)하게 될 수 있다.The plurality of mobile robots 100a and 100b determine whether the map sharing state of each of the plurality of mobile robots 100a and 100b corresponds to the first condition (S30), and as a result, the plurality of mobile robots ( 100a, 100b) When each map sharing state corresponds to the first condition, it is determined (S40) whether the battery charge capacity state of each of the plurality of mobile robots 100a, 100b corresponds to the second condition can And, as a result of determining whether the map sharing state of each of the plurality of mobile robots 100a and 100b corresponds to the first condition (S30), the map sharing state of each of the plurality of mobile robots 100a and 100b When the first condition is not satisfied, the plurality of mobile robots 100a and 100b may not perform the collaborative driving mode (R2). That is, when each of the plurality of mobile robots 100a and 100b shares a map, it is determined that the plurality of mobile robots 100a and 100b can perform the collaborative driving mode through the shared map, and When each of the mobile robots 100a and 100b does not share a map, the plurality of mobile robots 100a and 100b cannot perform the cooperative driving mode due to restrictions on cooperative cleaning of the same area according to non-sharing of map information. When it is determined that this is the case, the collaborative driving mode may not be performed (R2).

상기 복수의 이동 로봇(100a, 100b)은, 상기 복수의 이동 로봇(100a, 100b) 각각의 배터리 충전 용량 상태가 상기 제2 조건에 해당하는지 여부를 판단(S40)한 결과, 상기 복수의 이동 로봇(100a, 100b) 각각의 배터리 충전 용량이 상기 제2 조건에 해당하는 경우, 상기 복수의 이동 로봇(100a, 100b) 각각의 상대 로봇의 충전대 위치 정보 상태가 상기 제3 조건에 해당하는지 여부를 판단(S50)할 수 있다. 그리고, 상기 복수의 이동 로봇(100a, 100b) 각각의 배터리 충전 용량 상태가 상기 제2 조건에 해당하는지 여부를 판단(S40)한 결과, 상기 복수의 이동 로봇(100a, 100b) 각각의 배터리 충전 용량이 상기 제2 조건에 미해당하는 경우에는, 상기 복수의 이동 로봇(100a, 100b)이 상기 협업 주행 모드를 미수행(R2)할 수 있다. 즉, 상기 복수의 이동 로봇(100a, 100b) 각각의 배터리 충전 용량 상태가 상기 기준 용량 이상인 경우, 충전된 용량으로 상기 복수의 이동 로봇(100a, 100b)이 상기 협업 주행 모드를 수행 가능한 것으로 판단하고, 상기 복수의 이동 로봇(100a, 100b) 각각의 배터리 충전 용량 상태가 상기 기준 용량 미만인 경우에는, 충전 용량의 부족으로 인해 상기 복수의 이동 로봇(100a, 100b)이 상기 협업 주행 모드를 수행 불가능한 것으로 판단하여, 상기 협업 주행 모드를 미수행(R2)하게 될 수 있다. 이 경우, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 하나 이상에서, 배터리의 충전 용량의 부족에 대한 알림이 출력될 수 있다. 이를테면, 충전 용량이 상기 기준 용량에 미달인 로봇에서 충전 필요에 대한 알림이 출력될 수 있다.The plurality of mobile robots 100a and 100b determine whether the battery charge capacity state of each of the plurality of mobile robots 100a and 100b corresponds to the second condition (S40), and as a result, the plurality of mobile robots 100a and 100b (100a, 100b) When the charge capacity of each battery corresponds to the second condition, it is determined whether the positional information state of the charging table of each of the plurality of mobile robots 100a, 100b corresponds to the third condition. (S50) You can. And, as a result of determining whether the battery charge capacity state of each of the plurality of mobile robots 100a and 100b corresponds to the second condition (S40), the battery charge capacity of each of the plurality of mobile robots 100a and 100b When the second condition is not satisfied, the plurality of mobile robots 100a and 100b may not perform the collaborative driving mode (R2). That is, when the battery charging capacity state of each of the plurality of mobile robots 100a and 100b is greater than or equal to the reference capacity, it is determined that the plurality of mobile robots 100a and 100b can perform the cooperative driving mode with the charged capacity, , When the battery charge capacity state of each of the plurality of mobile robots 100a and 100b is less than the reference capacity, the plurality of mobile robots 100a and 100b cannot perform the cooperative driving mode due to the lack of charging capacity By determining, the collaborative driving mode may not be performed (R2). In this case, at least one of the first robot 100a and the second robot 100b may output a notification about insufficient charging capacity of the battery. For example, a notification regarding the need for charging may be output from a robot whose charging capacity is less than the reference capacity.

상기 복수의 이동 로봇(100a, 100b)은, 상기 복수의 이동 로봇(100a, 100b) 각각에 상대 로봇의 충전대(400a, 400b) 위치 정보가 저장되었는지 여부를 판단(S50)한 결과, 상기 복수의 이동 로봇(100a, 100b) 각각에 상대 로봇의 충전대(400a, 400b) 위치 정보가 저장된 경우, 선 주행 대상 로봇이 상대 로봇과 일정 거리 이내의 위치로 이동하여 상기 협업 주행 모드를 수행(R1)할 수 있다. 상기 복수의 이동 로봇(100a, 100b)은, 상기 복수의 이동 로봇(100a, 100b) 각각에 상대 로봇의 충전대(400a, 400b) 위치 정보가 저장되었는지 여부를 판단(S50)한 결과, 상기 복수의 이동 로봇(100a, 100b) 각각에 상대 로봇의 충전대 위치 정보가 미저장된 경우, 상호 간의 위치를 인식(S60)하여, 인식 결과에 따라 상기 협업 주행 모드를 위한 모션을 수행할 수 있다.The plurality of mobile robots 100a and 100b determine (S50) whether or not the location information of the charging stations 400a and 400b of the other robot is stored in each of the plurality of mobile robots 100a and 100b. If the location information of the mobile robots 100a and 100b stores the position information of the charging stations 400a and 400b of the other robots, the target robot moves to a position within a certain distance from the other robot and performs the cooperative driving mode (R1). can The plurality of mobile robots 100a and 100b determine (S50) whether or not the location information of the charging stations 400a and 400b of the other robot is stored in each of the plurality of mobile robots 100a and 100b. If the mobile robots 100a and 100b do not store information on the position of the charging station of the other robot, the position of the mobile robot 100a or 100b may be recognized (S60), and the motion for the collaborative driving mode may be performed according to the recognition result.

상기 복수의 이동 로봇(100a, 100b)은, 상기 복수의 이동 로봇(100a, 100b) 각각의 상대 로봇의 충전대(400a, 400b) 위치 정보 상태가 상기 제3 조건에 해당하는지 여부를 판단(S50)한 결과, 상기 복수의 이동 로봇(100a, 100b) 각각의 상대 로봇의 충전대(400a, 400b) 위치 정보 상태가 상기 제3 조건에 해당하는 경우, 상기 제1 로봇(100a)이 상기 제2 로봇(100b)의 전방에서 일정 거리 이내의 위치로 이동하여 상기 협업 주행 모드를 수행(R1)할 수 있다. 이를테면, 상기 제2 로봇(100b)의 전방 1[m] 지점으로 이동하여, 상기 제2 로봇(100b)에 선행하여 상기 협업 주행 모드를 수행(R1)하게 될 수 있다. 그리고, 상기 복수의 이동 로봇(100a, 100b) 각각의 상대 로봇의 충전대(400a, 400b) 위치 정보 상태가 상기 제3 조건에 해당하는지 여부를 판단(S50)한 결과, 상기 복수의 이동 로봇(100a, 100b) 각각의 상대 로봇의 충전대(400a, 400b) 위치 정보 상태가 상기 제3 조건에 미해당하는 경우, 상기 복수의 이동 로봇(100a, 100b) 각각이 상호 간에 위치를 인식(S60)하는 동작을 수행할 수 있다. 즉, 상기 복수의 이동 로봇(100a, 100b) 각각에 상대 로봇의 충전대의(400a, 400b) 위치 정보가 저장된 경우, 저장된 위치 정보로 상기 복수의 이동 로봇(100a, 100b)이 상기 협업 주행 모드를 수행 가능한 것으로 판단하여, 상기 제1 로봇(100a)이 상기 제2 로봇(100b)의 전방에서 일정 거리 이내의 위치로 이동하여 상기 협업 주행 모드를 수행(R1)하고, 상기 복수의 이동 로봇(100a, 100b) 각각에 상대 로봇의 충전대의(400a, 400b) 위치 정보가 미저장된 경우에는, 상대 로봇의 충전대(400a, 400b)의 위치 파악 불가로 인해 상대 로봇의 초기 위치 및 종료 위치 파악이 불가능한 것으로 판단하여, 상호 간에 위치 인식(S60)을 위한 동작을 수행하게 될 수 있다.The plurality of mobile robots 100a and 100b determine whether the positional information state of the charging bases 400a and 400b of each of the plurality of mobile robots 100a and 100b corresponds to the third condition (S50) As a result, when the location information state of the charging bases 400a and 400b of each of the plurality of mobile robots 100a and 100b corresponds to the third condition, the first robot 100a is the second robot ( The collaborative driving mode may be performed (R1) by moving to a position within a predetermined distance from the front of 100b). For example, by moving to a point 1 [m] ahead of the second robot 100b, the collaborative driving mode may be performed (R1) prior to the second robot 100b. In addition, as a result of determining whether the location information state of the charging bases 400a and 400b of each of the plurality of mobile robots 100a and 100b corresponds to the third condition (S50), the plurality of mobile robots 100a , 100b) When the location information state of the charging bases 400a and 400b of each partner robot does not correspond to the third condition, each of the plurality of mobile robots 100a and 100b performs an operation of recognizing the location of each other (S60). can be done That is, when the location information of the charging stations 400a and 400b of the other robot is stored in each of the plurality of mobile robots 100a and 100b, the plurality of mobile robots 100a and 100b use the stored location information to perform the collaborative driving mode. When it is determined that it can be performed, the first robot 100a moves to a position within a certain distance from the front of the second robot 100b, performs the collaborative driving mode (R1), and the plurality of mobile robots 100a , 100b), if the location information of the charging stands 400a and 400b of the opponent robot is not stored, it is impossible to grasp the initial and end positions of the opponent robot due to the inability to determine the position of the charging stands 400a and 400b of the opponent robot. After determining, an operation for location recognition (S60) may be performed mutually.

상기 복수의 이동 로봇(100a, 100b)은, 상호 간의 위치를 인식(S60)한 결과, 상호 간의 위치를 인식(S70)한 경우, 선 주행 대상 로봇이 상대 로봇과 일정 거리 이내의 위치로 이동하여 상기 협업 주행 모드를 수행(R1)할 수 있다. 상기 복수의 이동 로봇(100a, 100b)은, 상호 간의 위치를 인식(S60)한 결과, 어느 한 로봇이 상대 로봇의 위치를 미인식(S80)한 경우, 상기 복수의 이동 로봇(100a, 100b) 중 하나 이상에서 미인식 로봇을 상기 상대 로봇의 근방으로 이동시키도록 알리는 알림을 출력한 후, 이동 결과에 따라 상기 협업 주행 모드를 위한 모션을 수행할 수 있다. 상기 미인식 로봇이 상기 상대 로봇의 근방으로 이동된 경우, 상기 미인식 로봇이 상기 상대 로봇과의 통신 결과를 이용하여 상기 상대 로봇의 위치를 인식하는 위치 인식 동작을 수행한 후, 기설정된 주행 기준에 따라 상기 협업 주행 모드를 수행(R3)할 수 있다. 상기 복수의 이동 로봇(100a, 100b)은, 상호 간의 위치를 인식(S60)한 결과, 상기 복수의 이동 로봇(100a, 100b) 모두 위치를 미인식(S80)한 경우에는, 상기 제1 로봇(100a)이 상기 제2 로봇(100b)의 근방에서 일정 거리 이내의 위치로 이동하여 상기 협업 주행 모드의 수행을 위한 모션을 수행(R4)할 수 있다.As a result of the plurality of mobile robots 100a and 100b recognizing each other's location (S60), when the mutual location is recognized (S70), the first traveling target robot moves to a position within a certain distance from the other robot, The collaborative driving mode may be performed (R1). As a result of the plurality of mobile robots 100a and 100b recognizing each other's positions (S60), when one robot does not recognize the position of the other robot (S80), the plurality of mobile robots 100a and 100b After outputting a notification informing that the unrecognized robot should be moved to the vicinity of the counterpart robot, at least one of the robots may perform a motion for the collaborative driving mode according to the result of the movement. When the unrecognized robot moves near the counterpart robot, the unrecognized robot performs a position recognition operation for recognizing the location of the counterpart robot using a result of communication with the counterpart robot, and then sets a predetermined driving criterion. Accordingly, the cooperative driving mode may be performed (R3). As a result of the plurality of mobile robots 100a and 100b recognizing each other's positions (S60), when all of the plurality of mobile robots 100a and 100b do not recognize their positions (S80), the first robot ( 100a) may move to a position within a certain distance from the vicinity of the second robot 100b and perform a motion for performing the collaborative driving mode (R4).

상기 복수의 이동 로봇(100a, 100b)은, 상호 간의 위치를 인식(S60)한 결과, 상호 간의 위치를 인식(S70)한 경우, 상기 제1 로봇(100a)이 상기 제2 로봇(100b)의 전방 일정 거리 이내의 위치로 이동하여 상기 협업 주행 모드를 수행(R1)할 수 있다. 이를테면, 상기 제2 로봇(100b)의 전방 1[m] 지점으로 이동하여, 상기 제2 로봇(100b)에 선행하여 상기 협업 주행 모드를 수행하게 될 수 있다. 그리고, 상기 복수의 이동 로봇(100a, 100b) 중 어느 하나가 상대 로봇의 위치를 미인식(S80)한 경우에는, 상기 복수의 이동 로봇(100a, 100b) 중 하나 이상에서 상기 미인식 로봇을 상기 상대 로봇의 근방으로 이동시키도록 알리는 알림을 출력한 후, 사용자에 의해 상기 미인식 로봇이 상기 상대 로봇의 근방으로 이동되면, 상기 미인식 로봇이 도 9에 도시된 바와 같은 맵 리스 위치 인식 방법에 따른 상기 상대 로봇과의 통신 결과를 이용하여 상기 상대 로봇의 위치를 인식하는 위치 인식 동작을 수행한 후, 상기 주행 기준에 따라 상기 협업 주행 모드를 수행(R3)할 수 있다. 이를테면, 상기 제1 로봇(100a)이 상기 제2 로봇(100b)의 위치를 미인식한 경우, 상기 제1 로봇(100a)이 상기 제2 로봇(100b)의 반경 50[cm] 이내의 위치로 이동된 후, 도 9에 도시된 맵 리스 위치 인식 방법에 따라 상기 제2 로봇(100b)의 위치를 인식하게 될 수 있다. 반대로, 상기 제2 로봇(100b)이 상기 제1 로봇(100b)의 위치를 미인식한 경우에는, 상기 제2 로봇(100b)이 상기 제1 로봇(100a)의 반경 50[cm] 이내의 위치로 이동된 후, 도 9에 도시된 맵 리스 위치 인식 방법에 따라 상기 제1 로봇(100a)의 위치를 인식하게 될 수 있다. 여기서, 상기 상대 로봇의 근방은, 상기 상대 로봇의 카메라(131)와의 화각이 겹치는 정도의 거리를 의미할 수 있으며, 상기 상대 로봇의 반경 50[cm], 또는 50[cm] 내외일 수 있다. 이후, 상기 복수의 이동 로봇(100a, 100b)은, 상기 주행 기준에 따라 상기 협업 주행 모드를 수행(R3)하게 될 수 있다. 여기서, 상기 주행 기준은, 상기 협업 주행 모드의 설정을 변경 또는 제한하는 기준일 수 있다. 이를테면, 상기 협업 주행 모드에서 설정된 구역을 둘 이상의 소 영역으로 구분하여 주행하도록 설정된 기준일 수 있다. 이에 따라, 상기 복수의 이동 로봇(100a, 100b)이 상기 협업 주행 모드의 수행 중에도 상호 간에 위치 인식을 시도하게 되고, 시도 결과에 따라 위치 인식의 결과를 보정하게 될 수 있다. 만약, 상기 복수의 이동 로봇(100a, 100b) 모두 위치를 미인식(S80)한 경우에는, 상기 제1 로봇(100a)이 상기 제2 로봇(100b)의 근방에서 일정 거리 이내의 위치로 이동한 후, 도 9에 도시된 맵 리스 위치 인식 방법에 따라 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상대 로봇의 위치를 인식한 후, 상기 협업 주행 모드의 수행을 위한 모션을 수행(R4)할 수 있다.When the plurality of mobile robots 100a and 100b recognize each other's position (S60) and recognize each other's position (S70), the first robot 100a is the second robot 100b. The collaborative driving mode may be performed (R1) by moving to a location within a predetermined distance forward. For example, by moving to a point 1 [m] ahead of the second robot 100b, the collaborative driving mode may be performed prior to the second robot 100b. In addition, when one of the plurality of mobile robots 100a and 100b does not recognize the position of the other robot (S80), one or more of the plurality of mobile robots 100a and 100b detects the unrecognized robot as above. If the unrecognized robot is moved to the vicinity of the opponent robot by the user after outputting a notification to inform the opponent robot to move, the unrecognized robot is mapless in the mapless location recognition method as shown in FIG. 9 After performing a location recognition operation for recognizing the location of the counterpart robot using a result of communication with the counterpart robot according to the above, the collaborative driving mode may be performed (R3) according to the driving criterion. For example, when the first robot 100a does not recognize the position of the second robot 100b, the first robot 100a moves to a position within a radius of 50 [cm] of the second robot 100b. After being moved, the location of the second robot 100b may be recognized according to the mapless location recognition method shown in FIG. 9 . Conversely, when the second robot 100b does not recognize the position of the first robot 100b, the second robot 100b is positioned within a radius of 50 [cm] of the first robot 100a. After moving to , the location of the first robot 100a may be recognized according to the mapless location recognition method shown in FIG. 9 . Here, the vicinity of the opponent robot may mean a distance at which the angle of view of the opponent robot overlaps with the camera 131, and may be within a radius of 50 [cm] or 50 [cm] of the opponent robot. Thereafter, the plurality of mobile robots 100a and 100b may perform the collaborative driving mode (R3) according to the driving criterion. Here, the driving criterion may be a criterion for changing or limiting the setting of the collaborative driving mode. For example, it may be a criterion set to drive by dividing the area set in the collaborative driving mode into two or more small areas. Accordingly, the plurality of mobile robots 100a and 100b may attempt location recognition with each other even while performing the cooperative driving mode, and the location recognition result may be corrected according to the attempt result. If both of the plurality of mobile robots 100a and 100b do not recognize their positions (S80), the first robot 100a moves to a position within a certain distance from the vicinity of the second robot 100b. Then, after each of the first robot 100a and the second robot 100b recognizes the location of the other robot according to the mapless location recognition method shown in FIG. 9, the motion for performing the collaborative driving mode is performed. It can be performed (R4).

이와 같이 상기 구동 상태가 상기 기준 조건에 해당하는지 여부에 따라 상기 협업 주행 모드가 수행되는 상기 시스템(1)은, 도 14에 도시된 바와 같은 협업 주행 수행 방법으로 상기 협업 주행이 수행될 수 있다.As such, in the system 1 in which the cooperative driving mode is performed depending on whether the driving state corresponds to the reference condition, the cooperative driving can be performed by the cooperative driving method as shown in FIG. 14 .

상기 협업 주행 수행 방법(이하, 수행 방법이라 칭한다)은, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)이 협업 주행을 수행하는 방법으로, 도 14에 도시된 바와 같이, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)에 협업 주행의 수행에 대한 명령이 입력되는 단계(S100), 상기 제1 로봇(100a)이 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)의 구동 상태를 기설정된 기준 조건과 비교하는 단계(S200) 및 비교 결과에 따라 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 협업 주행을 위한 모션을 수행하는 단계(S300)를 포함한다.The method for performing cooperative driving (hereinafter, referred to as the performing method) is a method in which the first robot 100a and the second robot 100b perform cooperative driving, and as shown in FIG. 14, the first A step of inputting a command to perform cooperative driving to the robot 100a and the second robot 100b (S100), wherein the first robot 100a controls the first robot 100a and the second robot 100b Comparing the driving state of ) with a preset reference condition (S200) and performing motion for collaborative driving by each of the first robot 100a and the second robot 100b according to the comparison result (S300) includes

여기서, 상기 제1 로봇(100a)은, 상기 협업 주행의 대상 구역을 선 주행하며 먼지를 흡입하고, 상기 제2 로봇(100b)은, 상기 제1 로봇(100a)이 주행한 구역을 후 주행하며 먼지를 닦을 수 있다. 즉, 상기 수행 방법에 따라 상기 협업 주행을 수행하는 경우, 상기 제1 로봇(100a)은, 상기 제2 로봇(100b)에 선 주행하며 먼지를 흡입하고, 상기 제2 로봇(100b)은, 상기 제1 로봇(100a)에 후 주행하며 먼지를 닦게 될 수 있다.Here, the first robot 100a pre-travels in the target area of the collaborative driving and inhales dust, and the second robot 100b travels after the area traveled by the first robot 100a. The dust can be wiped off. That is, in the case of performing the collaborative driving according to the performing method, the first robot 100a drives in front of the second robot 100b and sucks in dust, and the second robot 100b, After traveling to the first robot 100a, dust may be wiped.

상기 협업 주행의 수행에 대한 명령이 입력되는 단계(S100)는, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각에서 상기 협업 주행의 수행에 대한 명령이 입력될 수 있다.In the step of inputting a command for performing the collaborative driving (S100), a command for performing the collaborative driving may be input to each of the first robot 100a and the second robot 100b.

상기 협업 주행의 수행에 대한 명령이 입력되는 단계(S100)에서는, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)이 현재 위치에서 수행 중인 동작을 중지할 수 있다.In the step of inputting a command for performing the collaborative driving (S100), the operation being performed by the first robot 100a and the second robot 100b at the current location may be stopped.

상기 구동 상태를 기설정된 기준 조건과 비교하는 단계(S200)는, 상기 제1 로봇(100a)에서 상기 구동 상태를 기설정된 기준 조건과 비교하게 될 수 있다.In the step of comparing the driving state with a preset reference condition (S200), the driving state may be compared with a preset reference condition in the first robot 100a.

상기 구동 상태를 기설정된 기준 조건과 비교하는 단계(S200)는, 도 15에 도시된 바와 같이, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각의 맵 공유 상태 및 배터리 충전 용량 상태 각각을 상기 기준 조건 중 제1 조건 및 제2 조건과 비교하는 단계(S210) 및 상기 제1 조건 및 제2 조건과 비교한 결과에 따라, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각의 상대 로봇의 충전대 위치 정보의 저장 상태를 상기 기준 조건 중 제3 조건과 비교하는 단계(S220)를 포함할 수 있다.In the step of comparing the driving state with a preset reference condition (S200), as shown in FIG. 15, the map sharing state and the battery charge capacity state of each of the first robot 100a and the second robot 100b According to the step of comparing each of the reference conditions with the first condition and the second condition (S210) and the result of the comparison with the first condition and the second condition, the first robot 100a and the second robot 100b ) comparing the storage state of the position information of the charging station of each partner robot with a third condition among the reference conditions (S220).

상기 협업 주행을 위한 모션을 수행하는 단계(S300)는, 상기 구동 상태를 기설정된 기준 조건과 비교하는 단계(S200)의 비교 결과에 따라 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 하나 이상에서 상기 협업 주행을 위한 모션을 수행하게 될 수 있다.In the step of performing the motion for the collaborative driving (S300), the first robot 100a and the second robot 100b according to the comparison result of the step of comparing the driving state with a preset reference condition (S200). At least one of the motions for the collaborative driving may be performed.

상기 협업 주행을 위한 모션을 수행하는 단계(S300)는, 상기 구동 상태가 상기 제1 조건 내지 상기 제3 조건 모두에 해당하는 경우, 상기 제1 로봇(100a)이 상기 제2 로봇(100b)의 일정 거리 이내의 위치로 이동할 수 있다.In the step of performing the motion for the collaborative driving (S300), when the driving state corresponds to all of the first to third conditions, the first robot 100a moves the second robot 100b You can move to a location within a certain distance.

이 경우, 상기 제1 로봇(100a)은, 상기 제2 로봇(100b)의 전방 x[m] 이내의 위치로 이동하여, 상기 협업 주행을 시작하게 될 수 있다.In this case, the first robot 100a may move to a position within x [m] in front of the second robot 100b and start the cooperative driving.

상기 협업 주행을 위한 모션을 수행하는 단계(S300)는, 상기 구동 상태가 상기 제1 조건 및 상기 제2 조건에 해당하고, 상기 제3 조건에 미해당하는 경우, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상호 간의 위치를 인식하여, 인식 결과에 따라 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 하나 이상이 상기 협업 주행을 위한 모션을 수행할 수 있다.In the step of performing the motion for the collaborative driving (S300), when the driving state corresponds to the first condition and the second condition and does not correspond to the third condition, the first robot 100a and the Each of the second robots 100b may recognize each other's position, and according to the recognition result, at least one of the first robot 100a and the second robot 100b may perform a motion for the collaborative driving.

상기 협업 주행을 위한 모션을 수행하는 단계(S300)는, 상기 상호 간의 위치를 인식한 결과, 어느 한 로봇이 상대 로봇의 위치를 미인식한 경우, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 하나 이상에서 미인식 로봇을 상기 상대 로봇의 근방으로 이동시키도록 알리는 알림을 출력한 후, 이동 결과에 따라 상기 협업 주행을 위한 모션을 수행할 수 있다.In the step of performing the motion for the collaborative driving (S300), when one robot does not recognize the position of the other robot as a result of recognizing the mutual position, the first robot 100a and the second robot In at least one of (100b), after outputting a notification informing the robot to move the unrecognized robot to the vicinity of the counterpart robot, the motion for the collaborative driving may be performed according to the result of the movement.

이 경우, 상기 미인식 로봇이 상기 상대 로봇의 반경 y[cm] 이내의 근방으로 이동되어, 상기 협업 주행을 위한 모션을 수행하게 될 수 있다.In this case, the unrecognized robot may be moved to a vicinity within a radius y [cm] of the opponent robot and perform the motion for the cooperative driving.

상기 협업 주행을 위한 모션을 수행하는 단계(S300)는, 상기 미인식 로봇이 상기 상대 로봇의 근방으로 이동된 경우, 상기 미인식 로봇이 상기 상대 로봇과의 통신 결과를 이용하여 상기 상대 로봇의 위치를 인식하는 위치 인식 동작을 수행한 후, 기설정된 주행 기준에 따라 상기 협업 주행을 수행할 수 있다.In the step of performing the motion for the collaborative driving (S300), when the unrecognized robot moves to the vicinity of the counterpart robot, the unrecognized robot uses a communication result with the counterpart robot to locate the counterpart robot. After performing a location recognition operation for recognizing , the collaborative driving may be performed according to a predetermined driving criterion.

상기 협업 주행의 수행에 대한 명령이 입력되는 단계(S100), 상기 구동 상태를 기설정된 기준 조건과 비교하는 단계(S200) 및 상기 협업 주행을 위한 모션을 수행하는 단계(S300)를 포함하는 상기 수행 방법은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 상기 컴퓨터는 상기 제어부(1800)를 포함할 수도 있다.The execution including the step of inputting a command for performing the collaborative driving (S100), the step of comparing the driving state with a preset reference condition (S200), and the step of performing motion for the collaborative driving (S300). The method can be implemented as computer readable code on a medium on which a program is recorded. The computer-readable medium includes all types of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable media include Hard Disk Drive (HDD), Solid State Disk (SSD), Silicon Disk Drive (SDD), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. , and also includes those implemented in the form of a carrier wave (eg, transmission over the Internet). Also, the computer may include the controller 1800.

이하, 도 16 내지 21을 참조하여, 협업 주행 수행 중에 발생한 트랩(trap) 상황에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템(1)의 <실시예 1>을 설명한다. Hereinafter, with reference to FIGS. 16 to 21 , <Embodiment 1> of a mobile robot system 1 that performs a preset scenario in response to a trap situation occurring during collaborative driving will be described.

도 16을 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)이 협업 주행 모드에 진입하고, 서로의 위치 정보를 파악한 경우, 제1 로봇(100a)은 제2 로봇(100b)에 앞서 청소 대상구역의 오염물을 흡입할 수 있다. 또한, 도시된 바와 같이 청소 대상 구역을 하나 이상의 구역으로 구분(Z4 내지 Z6)하여, 구분된 구역 단위로 청소가 이루어질 수 있다. Referring to FIG. 16, when the first robot 100a and the second robot 100b enter the cooperative driving mode and grasp each other's location information, the first robot 100a precedes the second robot 100b. Contaminants from the area to be cleaned can be inhaled. Also, as illustrated, the cleaning target area may be divided into one or more areas (Z4 to Z6), and cleaning may be performed in divided area units.

제4 구역(Z4)은 제1 로봇(100a)이 주행을 완료한 후, 제2 로봇(100b)이 주행 예정인 청소 구역을 의미한다. 제5 구역(Z5)은 제1 로봇(100a)이 주행 예정인 청소 구역을 의미한다. 제6 구역(Z6)은 제1 로봇(100a)이 제5 구역(Z5)의 청소 완료 후 주행 예정인 청소 구역을 의미한다. The fourth zone Z4 means a cleaning zone in which the second robot 100b is scheduled to travel after the first robot 100a completes travel. The fifth zone Z5 means a cleaning zone in which the first robot 100a is scheduled to run. The sixth zone Z6 means a cleaning zone in which the first robot 100a is scheduled to travel after the fifth zone Z5 is cleaned.

이 때, 도면 상에는 제4 구역(Z4) 내지 제6 구역(Z6)을 외벽과 입구(D1, D2)를 경계로 구분하였다. 하지만, 실시예가 이에 한정되는 것은 아니며, 제4 구역(Z4) 내지 제6 구역(Z6)은 일정한 크기를 기준으로 구분되거나, 외벽, 코너, 가구 등을 기준으로 구분되는 등 상술한 바와 같이 이동 로봇 시스템(1)의 협업 주행이 효율적으로 수행될 수 있는 방법으로 구분될 수 있다. At this time, on the drawing, the fourth zone (Z4) to the sixth zone (Z6) are divided by the outer wall and the entrances (D1, D2). However, the embodiment is not limited thereto, and the fourth zone (Z4) to the sixth zone (Z6) are divided based on a certain size or divided based on outer walls, corners, furniture, etc., as described above. The cooperative driving of the system 1 can be distinguished in a way that can be performed efficiently.

이동 로봇 시스템(1)의 협업 주행시, 제1 로봇(100a)은 제1 주행 경로(L1)에 따라 주행하며, 제2 로봇(100b)은 제2 주행 경로(L2)에 따라 주행할 수 있다. 이 때, 제1 경로(L1)는 제1 로봇(100a)이 장애물을 우회하는 등 청소 대상 구역을 청소하기 위한 모든 경로를 의미한다. 또한, 제2 주행 경로(L2)는, 제2 로봇(100b)이 청소 대상 구역을 청소하기 위한 모든 경로를 의미하며, 제1 로봇(100a)이 이미 주행한 주행 경로와 동일하게 설정할 수 있다. 하지만, 제2 로봇(100b)의 주행시 제1 로봇(100a)의 주행시에는 존재하지 않았던 장애물이 발생하는 경우, 우회하는 등의 변형된 경로로 주행할 수도 있다. When the mobile robot system 1 travels collaboratively, the first robot 100a may travel along the first travel path L1, and the second robot 100b may travel along the second travel path L2. At this time, the first path L1 means all paths for cleaning the area to be cleaned, such as the first robot 100a bypassing obstacles. In addition, the second travel path L2 means all paths for the second robot 100b to clean the area to be cleaned, and may be set to be the same as the travel path the first robot 100a has already traveled. However, when an obstacle that did not exist during the driving of the first robot 100a occurs while the second robot 100b is driving, it may travel in a modified path such as a detour.

이하, 도 17 및 도 18을 참조하여 트랩(trap) 상황 및 제1 로봇(100a)이 트랩 상황인 경우에 따른 시나리오를 설명한다. Hereinafter, a trap situation and a scenario according to a case where the first robot 100a is in a trap situation will be described with reference to FIGS. 17 and 18 .

도 17을 참조하면, 제1 로봇(100a)은 제5 구역(Z5)의 청소를 완료하고, 제2 로봇(100b)은 제4 구역(Z4)의 청소를 완료한 상태이다. 또한, 제5 구역(Z5)에서 제6 구역(Z6)으로 이동 가능한 입구(D1)가 닫힌 상태이다. 따라서 제1 로봇(100a)이 트랩(trap) 상황인 경우를 나타낸다.Referring to FIG. 17 , the first robot 100a has finished cleaning the fifth area Z5 and the second robot 100b has completed cleaning the fourth area Z4. In addition, the inlet D1 movable from the fifth zone Z5 to the sixth zone Z6 is in a closed state. Therefore, it shows a case where the first robot 100a is in a trap situation.

트랩 상황은 제1 로봇(100a) 또는 제2 로봇(100b)이 주행하지 않은 청소 대상 구역으로 진입이 불가능한 상황을 의미한다. 즉, 제1 로봇(100a) 및/또는 제2 로봇(100b)이 미청소 영역으로 진입이 불가능한 상황을 의미한다. 따라서, 도 15에서 제1 로봇(100a)의 트랩 상황은 제1 로봇(100a)이 제5 구역(Z5)의 청소를 완료하였으나, 청소 예정 구역인 제6 구역으로(Z6) 진입이 불가능한 상태를 의미한다. The trap situation refers to a situation in which the first robot 100a or the second robot 100b cannot enter the area to be cleaned where it is not traveling. That is, it means a situation in which the first robot 100a and/or the second robot 100b cannot enter the uncleaned area. Therefore, the trap situation of the first robot 100a in FIG. 15 indicates that the first robot 100a has finished cleaning the fifth zone Z5, but cannot enter the sixth zone Z6, which is the scheduled cleaning zone. it means.

또한, 청소 구역의 구분과 청소 구역으로 이동 가능 여부를 나타내기 위하여, 제1 입구(D1)와 제2 입구(D2)의 열림, 닫힘으로 청소 구역간의 이동 가능 여부를 표시하였으나, 실시예가 이에 한정되는 것은 아니며, 트랩 상황은 문 이외에도 의자, 책상, 가구, 등 다양한 장애물에 의해 주행하지 않은 청소 대상 구역으로 제1 로봇(100a) 및 제2 로봇(100b)의 진입이 불가능한 상황을 포함한다. In addition, in order to indicate the classification of the cleaning area and whether or not it is possible to move to the cleaning area, whether or not it is possible to move between the cleaning areas by opening and closing the first entrance D1 and the second entrance D2 is displayed, but the embodiment is limited to this. The trap situation includes a situation in which the first robot 100a and the second robot 100b cannot enter the area to be cleaned due to various obstacles such as chairs, desks, furniture, etc. in addition to doors.

이동 로봇 시스템(1)의 협업 주행모드 수행 중, 제1 로봇(100a)에 트랩 상황이 발생한 경우, 제1 로봇(100a)은 트랩 탈출 주행을 수행한다. 트랩 탈출 주행은 제1 로봇(100a)이 주행한 청소 구역의 외각 또는 경계를 따라 주행하는 주행 방법을 의미한다. 즉, 트랩 탈출 주행이란 제1 로봇(100a) 또는 제2 로봇(100b)가 이미 주행한 청소 구영의 외곽 또는 경계를 밀어내면서 주행하는 주행 방식을 의미한다. 제3 경로(L3)는 제1 로봇(100a) 또는 제2 로봇(100b)이 트랩 탈출 주행을 수행함에 따라 청소 구역의 외곽 또는 경계를 밀어내면서 주행하는 모든 경로를 의미한다. When a trap situation occurs in the first robot 100a while the mobile robot system 1 is performing the cooperative driving mode, the first robot 100a performs trap escape driving. Trap escape driving refers to a driving method in which the first robot 100a travels along the outside or boundary of the cleaning area. That is, trap escape driving refers to a driving method in which the first robot 100a or the second robot 100b travels while pushing the outside or boundary of the cleaning zone that has already traveled. The third path L3 refers to all paths along which the first robot 100a or the second robot 100b travels while pushing the outside or boundary of the cleaning area as the trap escape driving is performed.

트랩 상황을 탈출한 경우란, 제1 로봇(100a) 및/또는 제2 로봇(100b)이 진입이 불가능하던 미청소 구역으로 진입하는 것을 의미한다. 따라서, 제1 로봇(100a)이 트랩 상황이고, 제2 로봇(100b)은 트랩 상황이 아닌 경우에서, 제1 로봇(100a)이 트랩 탈출 주행을 수행하여 트랩 상황을 탈출한 경우, 즉 제1 로봇(100a)와 제2 로봇(100b)이 모두 트랩 상황이 아닌 경우, 제1 로봇(100a)과 제2 로봇(100b)은 다시 협업 주행을 수행한다. The case of escaping the trap situation means that the first robot 100a and/or the second robot 100b enter an uncleaned area where entry was impossible. Therefore, when the first robot 100a is in a trap situation and the second robot 100b is not in a trap situation, when the first robot 100a escapes the trap situation by performing trap escape driving, that is, the first robot 100a escapes from the trap situation. When neither the robot 100a nor the second robot 100b is in a trap situation, the first robot 100a and the second robot 100b perform cooperative driving again.

또한, 제1 로봇(100a)이 트랩 상황이고, 제2 로봇(100b)은 트랩 상황이 아닌 경우, 제2 로봇(100b)은 미리 설정된 제1 시간 동안 제자리에서 대기할 수 있다. 또한, 제2 로봇(100b)은 청소 중인 제4 구역(Z4)의 주행을 종료한 후, 종료된 지점에서 미리 설정된 제1 시간 동안 대기할 수 있다. 제2 로봇(100b)이 대기하는 중, 제1 로봇(100b)이 트랩 상황을 탈출하면, 제2 로봇(100b)은 대기 상태를 해제하고 제1 로봇(100a)과 협업 주행을 수행한다. In addition, when the first robot 100a is in a trap situation and the second robot 100b is not in a trap situation, the second robot 100b may wait in place for a first preset time. In addition, after the second robot 100b finishes driving in the fourth area Z4 being cleaned, it may wait for a first preset time at the point where it ends. If the first robot 100b escapes the trap situation while the second robot 100b is waiting, the second robot 100b cancels the standby state and performs cooperative driving with the first robot 100a.

또한, 제1 로봇(100a)이 트랩 상황이고 제2 로봇(100b)은 트랩 상황이 아닌 경우, 제2 로봇(100b)은 미리 설정된 제1 시간 동안 대기 후 이미 청소한 제4 구역(Z4)를 제4 경로(L4)를 따라 다시 재청소 할 수 있다. 이 때, 재청소 시간을 미리 설정한 제2 시간으로 설정할 수 있다. 제4 경로(L4)는 이미 주행한 제2 경로(L2)를 되돌아가거나, 재청소를 수행하기 위해 장애물을 회피하여 주행하는 등 청소 대상 구역의 재청소를 수행하기 위한 모든 경로를 의미한다. 제2 로봇(100b)이 이미 청소한 제4 구역(Z4)를 재청소 하는 중 제1 로봇(100a)이 트랩 상황을 탈출하면, 제2 로봇(100b)과 제1 로봇(100a)는 다시 협업 주행을 수행한다. In addition, when the first robot 100a is in a trap situation and the second robot 100b is not in a trap situation, the second robot 100b waits for a preset first time and then cleans the previously cleaned fourth zone Z4. Re-cleaning may be performed again along the fourth path L4. At this time, the re-cleaning time may be set to a preset second time. The fourth path L4 refers to all paths for performing re-cleaning of the area to be cleaned, such as retracing the already traveled second path L2 or driving while avoiding obstacles to perform re-cleaning. If the first robot 100a escapes the trap situation while re-cleaning the fourth zone Z4 already cleaned by the second robot 100b, the second robot 100b and the first robot 100a cooperate again. do the driving

제1 시간은 1분으로 설정할 수 있으며, 제2 시간은 9분으로 설정할 수 있으나, 실시예가 이에 한정되는 것은 아니다. 제2 로봇(100b)의 대기 시간이 길어지면 바닥에 물이 고일 수 있으므로 제1 시간은 이를 방지하기 위한 적절한 시간으로 설정이 가능하다. 또한, 제2 시간은 제2 로봇(100b)이 재청소를 수행하며, 제1 로봇(100a)이 트랩 상황을 탈출하도록 대기하는 적절한 시간으로 설정할 수 있다. The first time may be set to 1 minute, and the second time may be set to 9 minutes, but the embodiment is not limited thereto. If the waiting time of the second robot 100b becomes longer, water may accumulate on the floor, so the first time can be set as an appropriate time to prevent this. Also, the second time may be set to an appropriate time for the second robot 100b to perform re-cleaning and to wait for the first robot 100a to escape the trap situation.

제2 로봇(100b)이 제2 시간 동안 재청소를 수행하는 중, 제1 로봇(100a)이 트랩 상황을 탈출하면, 제2 로봇(100b)은 재청소를 중단하고 제1 로봇(100a)과 다시 협업 주행을 수행한다. While the second robot 100b is performing re-cleaning for the second time, if the first robot 100a escapes the trap situation, the second robot 100b stops re-cleaning and re-cleans the first robot 100a. Collaborative driving again.

도 18은 제1 로봇(100a)이 트랩 상황이고 제2 로봇(100b)은 트랩 상황이 아닌 경우에서, 제2 로봇(100b)이 대기하는 제1 시간과, 재청소를 수행하는 제2 시간이 경과한 경우이다. 18 shows a first time for the second robot 100b to wait and a second time for re-cleaning when the first robot 100a is in a trap situation and the second robot 100b is not in a trap situation. if it has passed

제1 시간과 제2 시간 동안 제1 로봇(100a)이 트랩 상황을 탈출하지 못한 경우, 제2 로봇(100b)은 협업 주행모드를 해제하고 제2 충전대(400b)로 복귀한다. 이 때, 제2 로봇(100b)이 제2 충전대(400b)로 복귀하는 제5 경로(L5)는 제2 로봇(100b)이 대기하는 제1 시간과, 재청소를 수행하는 제2 시간이 경과한 후 제2 충전대(400b)로 복귀하는 모든 경로를 의미한다. If the first robot 100a does not escape the trap situation during the first and second times, the second robot 100b cancels the cooperative driving mode and returns to the second charging station 400b. At this time, the fifth path L5 on which the second robot 100b returns to the second charging station 400b is the elapse of the first time for the second robot 100b to wait and the second time for re-cleaning. and then all paths returning to the second charging station 400b.

또한, 제1 로봇(100a)이 트랩 상황이고 제2 로봇(100b)은 트랩 상황이 아닌 경우, 제2 로봇(100b)은 제1 시간 동안 대기 하거나 제2 시간 동안 재청소를 수행하지 않고, 제1 로봇(100a)이 트랩 상황인 경우 즉시 협업 주행모드를 해제하고 제2 충전대(400b)로 복귀할 수 있다. In addition, when the first robot 100a is in a trap situation and the second robot 100b is not in a trap situation, the second robot 100b does not wait for the first time or perform re-cleaning for the second time, and 1 When the robot 100a is in a trap situation, the cooperative driving mode may be immediately released and returned to the second charging stand 400b.

또한, 제1 로봇(100a)만 트랩 상황인 경우, 제2 로봇(100b)은 협업 주행모드를 해제하지 않고 제2 충전대(400b)로 복귀한 후, 제1 로봇(100a)이 트랩 상황을 탈출하면, 협업 주행모드에 따라 청소를 수행할 수 있다. 제2 로봇(100b)이 제2 충전대(400b)로 복귀 후, 미리 설정된 시간 동안 제1 로봇(100a)이 트랩 상황을 탈출하지 못한 경우, 제2 로봇(100b)은 협업 주행모드를 해제하고 청소를 종료할 수 있다. In addition, when only the first robot 100a is in a trap situation, the second robot 100b returns to the second charging base 400b without canceling the collaborative driving mode, and then the first robot 100a escapes the trap situation. Then, cleaning may be performed according to the cooperative driving mode. After the second robot 100b returns to the second charging stand 400b, if the first robot 100a does not escape the trap situation for a preset time, the second robot 100b releases the collaborative driving mode and cleans can be terminated.

또한, 제1 로봇(100a)이 트랩 상황이고 제2 로봇(100b)은 트랩 상황이 아닌 경우, 제1 로봇(100a)이 트랩 탈출 주행을 수행하는 동안 제2 로봇(100b)은 제1 로봇(100a)의 청소가 완료되었으나 주행하지 않은 제5 구역(Z5)의 청소를 수행할 수 있다. In addition, when the first robot 100a is in a trap situation and the second robot 100b is not in a trap situation, while the first robot 100a performs a trap escape driving, the second robot 100b is the first robot ( Although the cleaning of 100a) has been completed, cleaning of the fifth zone Z5, which has not been driven, may be performed.

이하, 도 19를 참조하여 제2 로봇(100b)이 트랩 상황인 경우에 따른 시나리오를 설명한다. Hereinafter, a scenario according to the case where the second robot 100b is in a trap situation will be described with reference to FIG. 19 .

도 19를 참조하면, 제1 로봇(100a)은 제5 구역(Z5)의 청소를 완료한 상태이고, 제2 로봇(100b)은 제4 구역(Z4)의 청소를 완료한 상태이다. 또한, 제4 구역(Z4)에서 제5 구역(Z5)으로 이동 가능한 입구(D2)가 닫힌 상태이다. 따라서 제2 로봇(100a)이 트랩(trap) 상황인 경우를 나타낸다.Referring to FIG. 19 , the first robot 100a has finished cleaning the fifth area Z5, and the second robot 100b has finished cleaning the fourth area Z4. Also, the inlet D2 movable from the fourth zone Z4 to the fifth zone Z5 is in a closed state. Therefore, it shows a case where the second robot 100a is in a trap situation.

제1 로봇(100a)은 트랩 상황이 아니며, 제2 로봇(100b)이 트랩 상황인 경우, 제2 로봇(100b)은 제3 경로(L3)를 따라 트랩 탈출 주행을 수행한다. 제3 경로(L3)에 따른 트랩 탈출 주행은 상술한 바와 마찬가지로, 제2 로봇(100b)이 주행한 청소 구역의 외곽 또는 경계를 밀어내면서 주행하는 주행 방식을 의미한다. When the first robot 100a is not in a trap situation and the second robot 100b is in a trap situation, the second robot 100b performs trap escape driving along the third path L3. As described above, the trap escape driving along the third path L3 refers to a traveling method in which the second robot 100b travels while pushing the outside or boundary of the cleaning area traveled.

제2 로봇(100a)이 트랩 탈출 주행을 수행하는 동안, 제1 로봇(100a)은 제1 시간 동안 제자리에서 대기할 수 있다. 또한, 제1 로봇(100a)은 청소 중인 제5 구역(Z5)의 주행을 종료한 후, 종료된 지점에서 제1 시간 동안 대기할 수 있다. 제1 로봇(100a)이 대기하는 중, 제2 로봇(100b)이 트랩 상황을 탈출하면, 제1 로봇(100a)은 대기 상태를 해제하고 제2 로봇(100b)과 협업 주행을 수행한다. While the second robot 100a performs trap escape driving, the first robot 100a may stand by in place for the first time. In addition, the first robot 100a may wait for the first time at the point where the driving of the fifth zone Z5 being cleaned ends, and then ends. If the second robot 100b escapes the trap situation while the first robot 100a is on standby, the first robot 100a cancels the standby state and performs cooperative driving with the second robot 100b.

또한, 제1 로봇(100a)은 트랩 상황이 아니며, 제2 로봇(100b)이 트랩 상황인 경우, 제1 로봇(100a)은 미리 설정된 제1 시간 동안 대기후 이미 청소한 제5 구역(Z5)을 제4 경로(L4)를 따라 다시 재청소 할 수 있다. 이 때, 재청소 시간을 미리 설정한 제2 시간으로 설정할 수 있으며, 제4 경로(L4)는 이미 주행한 제1 경로(L1)를 되돌아가거나, 재청소를 수행하기 위해 장애물을 회피하여 주행하는 등 청소 구역의 재청소를 수행하기 위한 모든 경로를 의미한다. 제1 로봇(100a)이 이미 청소한 제5 구역(Z5)를 재청소 하는 중 제2 로봇(100b)이 트랩 상황을 탈출하면, 제1 로봇(100a)과 제2 로봇(100b)은 다시 협업 주행을 수행한다. In addition, when the first robot 100a is not in a trap situation and the second robot 100b is in a trap situation, the first robot 100a waits for a preset first time and then cleans the fifth zone Z5. can be re-cleaned again along the fourth path (L4). At this time, the re-cleaning time may be set to a preset second time, and the fourth path L4 returns to the first path L1 that has already traveled or runs while avoiding obstacles to perform re-cleaning. All routes to perform re-cleaning of the back cleaning area. If the second robot 100b escapes the trap situation while re-cleaning the fifth zone Z5 that the first robot 100a has already cleaned, the first robot 100a and the second robot 100b cooperate again. do the driving

이하 도 20을 참조하여, 제2 로봇(100b)이 트랩 상황인 경우에 따른 시나리오를 설명한다. Referring to FIG. 20, a scenario according to the case where the second robot 100b is in a trap situation will be described.

도 20은 제2 로봇(100b)이 트랩 상황이고 제1 로봇(100a)은 트랩 상황이 아닌 경우에서, 제1 로봇(100a)이 대기하는 제1 시간과, 재청소를 수행하는 제2 시간이 경과한 경우이다.20 shows a first time for the first robot 100a to wait and a second time for re-cleaning when the second robot 100b is in a trap situation and the first robot 100a is not in a trap situation. if it has passed

상술한 제1 로봇(100a)이 트랩 상황인 경우에서, 제2 로봇(100b)이 대기하는 제1 시간과, 재청소를 수행하는 제2 시간 동안 제1 로봇(100a)이 트랩 상황을 탈출하지 못한 경우, 제2 로봇(100b)이 협업 주행모드를 해제하고 제2 충전대(400b)로 복귀하는 것과는 달리, 제2 로봇(100b)이 트랩 상황인 경우에서 제1 시간과 제2 시간이 경과하면, 제1 로봇(100a)은 협업 주행 모드를 해제하고, 단독 주행을 실시한다. In the case where the above-described first robot 100a is in a trap situation, the first robot 100a does not escape the trap situation during the first time while the second robot 100b is waiting and the second time when re-cleaning is performed. Otherwise, unlike the case where the second robot 100b releases the collaborative driving mode and returns to the second charging station 400b, when the first time and the second time elapse in the case where the second robot 100b is in a trap situation, , the first robot 100a cancels the collaborative driving mode and performs independent driving.

즉, 제1 로봇(100a)은 트랩 상황이 아니고, 제2 로봇(100b)은 트랩 상황이면서, 제1 로봇(100a)이 대기 하는 제1 시간과, 재청소를 수행하는 제2 시간이 경과한 경우, 제1 로봇(100a)은 협업 주행모드를 해제하고 단독 주행 모드에 진입하여 단독 주행을 주행한다. 따라서, 제1 로봇(100a)은 청소 예정 구역인 제6 구역(Z6)을 주행한다. 이때 제1 로봇(100a)이 제6 구역(Z6)를 주행하는 제1 경로(L1)은 청소 구역을 청소하기 위한 모든 경로를 의미한다. That is, while the first robot 100a is not in a trap situation and the second robot 100b is in a trap situation, the first time for the first robot 100a to wait and the second time for re-cleaning have elapsed. In this case, the first robot 100a cancels the collaborative driving mode and enters the solo driving mode to drive alone. Accordingly, the first robot 100a travels in the sixth zone Z6, which is a scheduled cleaning zone. At this time, the first path L1 on which the first robot 100a travels in the sixth area Z6 means all paths for cleaning the cleaning area.

또한, 제1 로봇(100a)은 트랩 상황이 아니고, 제2 로봇(100b)은 트랩 상황인 경우, 제2 로봇(100b)에 트랩 상황이 발생한 즉시 제1 로봇(100a)은 협업 주행모드를 해제하고 단독주행모드로 진입하여 청소 예정 구역인 제6 구역(Z6)을 주행할 수 있다. In addition, when the first robot 100a is not in a trap situation and the second robot 100b is in a trap situation, the first robot 100a releases the cooperative driving mode as soon as the trap situation occurs in the second robot 100b. Then, it enters the solo driving mode, and can drive in the sixth zone Z6, which is a scheduled cleaning zone.

또한, 제1 로봇(100a)은 트랩 상황이 아니고, 제2 로봇(100b)은 트랩 상황인 경우, 제1 로봇(100a)은 제1 시간 동안 대기하거나, 제2 시간 동안 재청소를 수행하지 않고, 즉시 협업 주행모드를 해제하고 제1 충전대(400a)로 복귀할 수 있다. 즉, 제1 로봇(100a)은 트랩 상황이 아닌 경우, 제1 로봇(100a)은 제2 로봇(100b)이 트랩 상황이 되는 즉시 협업 주행모드를 해제하고 제1 충전대(400a)로 복귀할 수 있다. In addition, when the first robot 100a is not in a trap situation and the second robot 100b is in a trap situation, the first robot 100a does not wait for a first time or perform re-cleaning for a second time. , it is possible to release the cooperative driving mode immediately and return to the first charging stand 400a. That is, when the first robot 100a is not in a trap situation, the first robot 100a may release the cooperative driving mode and return to the first charging base 400a as soon as the second robot 100b becomes in a trap situation. there is.

또한, 제2 로봇(100b)만 트랩 상황인 경우, 제1 로봇(100a)은 협업 주행모드를 해제하지 않고 제1 충전대(400a)로 복귀한 후, 제2 로봇(100b)이 트랩 상황을 탈출하면, 다시 협업 주행모드를 수행하여 협업 주행을 수행할 수 있다. 제1 로봇(100a)이 제1 충전대(400a)로 복귀 후 미리 설정된 시간 동안 제2 로봇(100b)이 트랩 상황을 탈출하지 못한 경우, 제1 로봇(100a)은 협업 주행모드를 해제하고 청소를 종료할 수 있다. In addition, when only the second robot 100b is in a trap situation, the first robot 100a returns to the first charging station 400a without canceling the cooperative driving mode, and then the second robot 100b escapes the trap situation. Then, the cooperative driving mode may be performed again to perform cooperative driving. If the second robot 100b does not escape the trap situation for a preset time after the first robot 100a returns to the first charging stand 400a, the first robot 100a releases the collaborative driving mode and cleans. can be terminated

이하 도 21을 참조하여, 제1 로봇(100a)과 제2 로봇(100b)이 트랩 상황인 경우에 따른 시나리오를 설명한다. Referring to FIG. 21, a scenario according to the case where the first robot 100a and the second robot 100b are in a trap situation will be described.

도 21을 참조하면, 제 1 입구(D1)와 제2 입구(D2)가 모두 닫힌 상태로써 제1 로봇(100a)과 제2 로봇(100b)이 모두 트랩 상황이다. 다만, 이는 설명의 편의를 위해 구분한 것으로 실시예가 이에 한정되는 것은 아니며, 제1 로봇(100a)과 제2 로봇(100b)이 같은 청소 구역을 주행하는 중 트랩 상황이 발생한 경우 등 제1 로봇(100a)와 제2 로봇(100b)이 트랩 상황인 모든 경우를 의미한다. Referring to FIG. 21 , both the first entrance D1 and the second entrance D2 are closed, and both the first robot 100a and the second robot 100b are in a trap situation. However, this is classified for convenience of description, and the embodiment is not limited thereto, and when a trap situation occurs while the first robot 100a and the second robot 100b are traveling in the same cleaning area, the first robot ( This means all cases in which 100a) and the second robot 100b are in a trap situation.

제1 로봇(100a)과 제2 로봇(100b)이 모두 트랩 상황인 경우, 제1 로봇(100a)과 제2 로봇(100b)은 각각 트랩 탈출 주행을 수행한다. 그리고, 트랩 탈출 주행에 따라 제1 로봇(100a)만 트랩 상황을 탈출한 경우에는, 상술한 제1 로봇(100a)은 트랩 상황이 아니고, 제2 로봇(100b)은 트랩 상황인 시나리오에 따라 동작한다. 또한, 트랩 탈출 주행에 따라 제2 로봇(100b)만 트랩 상황을 탈출한 경우에는, 상술한 제1 로봇(100a)은 트랩 상황이고, 제2 로봇(100b)은 트랩 상황이 아닌 시나리오에 따라 동작한다. When both the first robot 100a and the second robot 100b are in a trap situation, the first robot 100a and the second robot 100b respectively perform trap escape driving. In addition, when only the first robot 100a escapes the trap situation according to trap escape driving, the above-described first robot 100a is not in the trap situation and the second robot 100b operates according to a scenario in which the trap situation exists. do. In addition, when only the second robot 100b escapes the trap situation according to trap escape driving, the above-described first robot 100a is in the trap situation, and the second robot 100b operates according to a scenario other than the trap situation. do.

이하 도 22를 참조하여, 트랩 상황이 발생한 경우 이동 로봇 시스템(1)의 협업 주행 수행 방법을 설명한다. Referring to FIG. 22 , a method of performing cooperative driving of the mobile robot system 1 when a trap situation occurs will be described.

도 22는 트랩 상황이 발생한 경우 이동 로봇 시스템(1)의 협업 주행 수행 방법 순서도이다. 22 is a flowchart of a method of performing cooperative driving of the mobile robot system 1 when a trap situation occurs.

도 22를 참조하면, 단계(S100)에서는 제1 로봇(100a)과 제2 로봇(100b)이 협업 주행 모드에 진입하고, 서로의 위치 정보를 파악하여 협업 주행을 수행하는 단계이다. 이 때, 청소 대상 구역을 하나 이상의 구역으로 구분(Z4 내지 Z6)하여, 구분된 구역 단위로 청소를 수행할 수 있다. Referring to FIG. 22 , in step S100 , the first robot 100a and the second robot 100b enter a cooperative driving mode, recognize each other's location information, and perform cooperative driving. At this time, the area to be cleaned may be divided into one or more areas (Z4 to Z6), and cleaning may be performed in units of the divided areas.

단계(S200)에서는, 제1 로봇(100a)과 제2 로봇(100b)이 트랩 상황인지를 판단한다. 이 때, 3가지 경우로 구분되어 트랩 상황에 따른 시나리오를 수행한다. 먼저, A case는 제1 로봇(100a)은 트랩 상황이고, 제2 로봇(100b)은 트랩 상황이 아닌 경우를 나타낸다. B case는 제1 로봇(100a)는 트랩 상황이 아니면서, 제2 로봇(100b)는 트랩 상황인 경우를 나타낸다. C case 는 제1 로봇(100a)과 제2 로봇(100b)가 모두 트랩 상황인 경우를 나타낸다. In step S200, it is determined whether the first robot 100a and the second robot 100b are in a trap situation. At this time, it is divided into three cases, and scenarios according to the trap situation are performed. First, case A represents a case where the first robot 100a is in a trap situation and the second robot 100b is not in a trap situation. Case B represents a case where the first robot 100a is not in a trap situation and the second robot 100b is in a trap situation. Case C represents a case where both the first robot 100a and the second robot 100b are in a trap situation.

단계(S300)에서는, A case에 따른 트랩 시나리오를 수행한다. A case에 따른 트랩 시나리오는 상술한 도 15 및 도 16의 설명에 기재한 바와 같이, 제1 로봇(100a)은 트랩 상황이고, 제2 로봇(100b)는 트랩 상황이 아닌 경우에 따른 제1 로봇(100a)과 제2 로봇(100b)의 주행을 의미한다. In step S300, a trap scenario according to case A is performed. As for the trap scenario according to case A, as described in the description of FIGS. 15 and 16 above, the first robot 100a is in a trap situation and the second robot 100b is not in a trap situation. (100a) and the running of the second robot (100b).

그러므로, A case 트랩 시나리오에 따르면, 제1 로봇(100a)만 트랩 상황인 경우, 제1 로봇(100a)은 트랩 탈출 주행을 수행한다. 제1 로봇(100a)이 트랩 탈출 주행을 수행하는 동안, 제2 로봇(100b)은 미리 설정된 제1 시간 동안 제자리에서 대기할 수 있다. 또한, 제2 로봇(100b)은 청소 중인 청소 구역의 주행을 종료한 후, 청소가 종료된 지점에서 제1 시간 동안 대기할 수 있다. 제2 로봇(100b)이 대기하는 동안, 제1 로봇(100a)이 트랩 상황을 탈출하는 경우, 제2 로봇(100b)은 대기 상태를 해제하고 제1 로봇(100a)과 다시 협업 주행을 수행한다. Therefore, according to the A case trap scenario, when only the first robot 100a is in a trap situation, the first robot 100a performs trap escape driving. While the first robot 100a performs trap escape driving, the second robot 100b may wait in place for a preset first time. In addition, the second robot 100b may wait for a first time at the point where the cleaning is finished after completing the driving of the cleaning area being cleaned. If the first robot 100a escapes the trap situation while the second robot 100b is on standby, the second robot 100b cancels the standby state and performs cooperative driving again with the first robot 100a. .

또한, 제1 로봇(100a)이 트랩 탈출 주행을 수행하는 동안, 제2 로봇(100b)은 제1 시간 동안 대기 후 이미 청소한 청소 구역을 다시 재청소 할 수 있다. 이 때, 재청소 시간을 미리 설정한 제2 시간으로 설정할 수 있다. 제2 로봇(100b)이 제2 시간 동안 재청소를 수행하는 중, 제1 로봇(100a)이 트랩 상황을 탈출하면, 제2 로봇(100b)은 재청소를 중단하고 제1 로봇(100a)과 다시 협업 주행을 수행한다. Also, while the first robot 100a performs trap escape driving, the second robot 100b may re-clean the already cleaned cleaning area after waiting for the first time. At this time, the re-cleaning time may be set to a preset second time. While the second robot 100b is performing re-cleaning for the second time, if the first robot 100a escapes the trap situation, the second robot 100b stops re-cleaning and re-cleans the first robot 100a. Collaborative driving again.

또한, 제2 로봇(100b)이 대기하는 제1 시간과, 재청소를 수행하는 제2 시간 동안, 제1 로봇(100a)이 트랩 상황을 탈출하지 못한 경우, 제2 로봇(100b)은 협업 주행모드를 해제하고 제2 충전대(100b)로 복귀한다. In addition, when the first robot 100a does not escape the trap situation during the first time the second robot 100b waits and the second time when the second robot 100b performs re-cleaning, the second robot 100b performs cooperative driving. The mode is canceled and the second charging station 100b is returned.

또한, 제1 로봇(100a)만 트랩 상황인 경우, 제2 로봇(100b)은 제1 시간 동안 대기하거나, 제2 시간 동안 재청소를 수행하지 않고, 제1 로봇(100a)이 트랩 상황인 경우 즉시 협업 주행모드를 해제하고 제2 충전대(400b)로 복귀할 수 있다. In addition, when only the first robot 100a is in a trap situation, the second robot 100b waits for a first time or does not perform re-cleaning for a second time, and the first robot 100a is in a trap situation The cooperative driving mode may be immediately released and returned to the second charging stand 400b.

또한, 도 20에는 대표적인 시나리오만 순서도로 표시하였으나, 이외에도 제1 로봇(100a)만 트랩 상황인 경우, 제2 로봇(100b)은 협업 주행모드를 해제하지 않고 제2 충전대(400b)로 복귀한 후, 제1 로봇(100a)이 트랩 상황을 탈출하면, 다시 협업 주행모드를 수행하여 청소를 진행할 수 있다. 제2 로봇(100b)이 제2 충전대(400b)로 복귀한 후, 미리 설정된 일정 시간 동안 제1 로봇(100a)이 트랩 상황을 탈출하지 못한 경우, 제2 로봇(100b)은 협업 주행모드를 해제하고 청소를 종료할 수 있다. In addition, although only representative scenarios are shown as a flow chart in FIG. 20, in addition, when only the first robot 100a is in a trap situation, the second robot 100b returns to the second charging station 400b without canceling the cooperative driving mode. , When the first robot 100a escapes the trap situation, it may perform the cooperative driving mode again to perform cleaning. After the second robot 100b returns to the second charging station 400b, if the first robot 100a does not escape the trap situation for a predetermined period of time, the second robot 100b releases the cooperative driving mode. and finish cleaning.

또한, 제1 로봇(100a)만 트랩 상황인 경우, 제2 로봇(100b)은 제1 로봇(100a)의 청소가 완료되었으나 제2 로봇(100b)이 주행하지 않은 청소구역의 청소를 수행할 수 있다.In addition, when only the first robot 100a is in a trap situation, the second robot 100b may clean a cleaning area where the first robot 100a has finished cleaning but the second robot 100b has not traveled. there is.

단계(S310)에서는, 제1 로봇(100a)이 트랩 탈출 주행을 수행한 결과로써, 제1 로봇(100a)이 트랩 상황을 탈출하였는지 여부를 판단한다. 제1 로봇(100a)이 트랩 상황을 탈출한 경우, 제1 로봇(100a)과 제2 로봇(100b)이 모두 트랩 상황이 아니다. 따라서, 협업 주행을 수행(S100)한다. 하지만, 제1 로봇(100a)이 트랩 상황을 탈출 하지 못한 경우, 제2 로봇(100b)은 제2 충전대(400b)로 복귀(S600)한다. In step S310, it is determined whether or not the first robot 100a has escaped from the trap situation as a result of the first robot 100a performing trap escape driving. When the first robot 100a escapes the trap situation, neither the first robot 100a nor the second robot 100b is in the trap situation. Therefore, cooperative driving is performed (S100). However, when the first robot 100a fails to escape from the trap situation, the second robot 100b returns to the second charging stand 400b (S600).

단계(S400)에서는, B case에 따른 트랩 시나리오를 수행한다. B case에 따른 트랩 시나리오는 상술한 도 17 및 도 18의 설명에 기재한 바와 같이, 제2 로봇(100b)는 트랩 상황이고, 제1 로봇(100a)는 트랩 상황이 아닌 경우에 따른 제1 로봇(100a)과 제2 로봇(100b)의 주행을 의미한다. In step S400, a trap scenario according to case B is performed. The trap scenario according to case B is the first robot according to the case where the second robot 100b is in a trap situation and the first robot 100a is not in a trap situation, as described in the description of FIGS. 17 and 18 above. (100a) and the running of the second robot (100b).

그러므로, B case 트랩 시나리오에 따르면, 제2 로봇(100b)만 트랩 상황인 경우, 제2 로봇(100b)는 트랩 탈출 주행을 수행한다. 제2 로봇(100b)이 트랩 탈출 주행을 수행하는 동안, 제1 로봇(100a)은 미리 설정된 제1 시간 동안 제자리에서 대기할 수 있다. 또한, 제1 로봇(100a)은 청소 중인 청소 구역의 주행을 종료한 후, 청소가 종료된 지점에서 제1 시간 동안 대기할 수 있다. 제1 로봇(100a)이 대기하는 동안, 제2 로봇(100b)이 트랩 상황을 탈출하는 경우, 제1 로봇(100a)은 대기 상태를 해제하고 제2 로봇(100b)과 다시 협업 주행을 수행한다. Therefore, according to the B case trap scenario, when only the second robot 100b is in a trap situation, the second robot 100b performs trap escape driving. While the second robot 100b performs trap escape driving, the first robot 100a may wait in place for a first preset time. In addition, the first robot 100a may wait for a first time at the point where the cleaning is finished after completing the driving of the cleaning area being cleaned. If the second robot 100b escapes the trap situation while the first robot 100a is on standby, the first robot 100a cancels the standby state and performs cooperative driving again with the second robot 100b. .

또한, 제2 로봇(100b)이 트랩 탈출 주행을 수행하는 동안, 제1 로봇(100a)은 제1 시간 동안 대기 후 이미 청소한 청소 구역을 다시 재청소 할 수 있다. 이 때, 재청소 시간을 미리 설정한 제2 시간으로 설정할 수 있다. 제1 로봇(100a)이 제2 시간 동안 재청소를 수행하는 중, 제2 로봇(100b)이 트랩 상황을 탈출하면, 제1 로봇(100a)은 재청소를 중단하고 제2 로봇(100b)과 다시 협업 주행을 수행한다. In addition, while the second robot 100b performs trap escape driving, the first robot 100a may re-clean the previously cleaned cleaning area after waiting for the first time. At this time, the re-cleaning time may be set to a preset second time. While the first robot 100a is performing re-cleaning for the second time, if the second robot 100b escapes the trap situation, the first robot 100a stops re-cleaning and re-cleans the second robot 100b. Collaborative driving again.

또한, 제1 로봇(100a)이 대기하는 제1 시간과, 재청소를 수행하는 제2 시간 동안, 제2 로봇(100b)이 트랩 상황을 탈출하지 못한 경우, 제1 로봇(100a)은 협업 주행모드를 해제하고 단독 주행모드에 진입하여 단독 주행을 수행할 수 있다. 즉, 제2 로봇(100b)이 트랩 탈출 주행을 수행하는 동안, 제1 로봇(100a)은 제1 시간 동안 대기, 제2 시간 동안 재청소를 수행한 후, 단독 주행모드에 따라 단독 주행을 수행할 수 있다. In addition, when the second robot 100b does not escape the trap situation during the first time the first robot 100a waits and the second time when re-cleaning is performed, the first robot 100a performs cooperative driving. After releasing the mode, it is possible to perform independent driving by entering the independent driving mode. That is, while the second robot 100b performs trap escape driving, the first robot 100a performs stand-by for a first time, re-cleaning for a second time, and then performs independent driving according to the independent driving mode. can do.

또한, 도 22에는 대표적인 시나리오만 순서도로 표시하였으나, 이외에도 제2 로봇(100b)만 트랩 상황인 경우, 제1 로봇(100a)는 제1 시간 동안 대기하거나, 제2 시간 동안 재청소를 수행하지 않고, 제2 로봇(100b)이 트랩 상황인 경우 즉시 협업 주행모드를 해제하고 제1 충전대(400a)로 복귀할 수 있다. In addition, although only representative scenarios are shown as a flow chart in FIG. 22, in addition, when only the second robot 100b is in a trap situation, the first robot 100a does not wait for the first time or perform re-cleaning for the second time. , When the second robot 100b is in a trap situation, the cooperative driving mode may be immediately released and returned to the first charging base 400a.

또한, 제2 로봇(100b)만 트랩 상황인 경우, 제1 로봇(100a)은 협업 주행모드를 해제하지 않고 제1 충전대(400a)로 복귀한 후, 제2 로봇(100b)이 트랩 상황을 탈출하면, 다시 협업 주행을 수행할 수 있다. 제1 로봇(100a)이 제1 충전대(400a)로 복귀한 후, 제2 로봇(100b)이 미리 설정된 일정 시간 동안 트랩 상황을 탈출하지 못한 경우, 제1 로봇(100a)은 협업 주행모드를 해제하고 청소를 종료할 수 있다. In addition, when only the second robot 100b is in a trap situation, the first robot 100a returns to the first charging station 400a without canceling the cooperative driving mode, and then the second robot 100b escapes the trap situation. Then, cooperative driving can be performed again. After the first robot 100a returns to the first charging station 400a, if the second robot 100b does not escape the trap situation for a predetermined period of time, the first robot 100a releases the cooperative driving mode. and finish cleaning.

단계(S410)에서는, 제2 로봇(100b)이 트랩 탈출 주행을 수행한 결과로써, 제2 로봇(100b)이 트랩 상황을 탈출하였는지 여부를 판단한다. 제2 로봇(100b)이 트랩 상황을 탈출한 경우, 제1 로봇(100a)과 제2 로봇(100b)이 모두 트랩 상황이 아니다. 따라서, 협업 주행을 수행(S100)한다. 하지만, 제2 로봇(100b)이 트랩 상황을 탈출 하지 못한 경우, 제1 로봇(100a)은 단독 주행모드에 따라 단독 주행을 수행(S700)한다. In step S410, it is determined whether or not the second robot 100b has escaped from the trap situation as a result of the second robot 100b performing trap escape driving. When the second robot 100b escapes the trap situation, neither the first robot 100a nor the second robot 100b is in the trap situation. Therefore, cooperative driving is performed (S100). However, when the second robot 100b fails to escape from the trap situation, the first robot 100a performs solo driving according to the solo driving mode (S700).

단계(S500)에서는, 제1 로봇(100a)과 제2 로봇(100b)이 모두 트랩 상황인 C case에 대응하여, 제1 로봇(100a)과 제2 로봇(100b)이 각각 트랩 탈출 주행을 수행한다. 그 후, 단계(S510)에서, 제1 로봇(100a)과 제2 로봇(100b)의 트랩 상황 탈출 여부를 각각 판단한다. 제2 로봇(100b)만 트랩 상황을 탈출한 경우, A case에 해당하므로 A case 트랩 시나리오를 수행(S300)한다. 제1 로봇(100a)만 트랩 상황을 탈출한 경우, B case에 해당하므로 B case 트랩 시나리오(S400)을 수행한다. 또한, 제1 로봇(100a)과 제2 로봇(100b)가 모두 탈출한 경우에는 협업 주행을 수행(S100)할 수 있다. In step S500, the first robot 100a and the second robot 100b each perform trap escape driving in response to case C, in which both the first robot 100a and the second robot 100b are trapped. do. Then, in step S510, it is determined whether the first robot 100a and the second robot 100b escape from the trap situation. When only the second robot 100b escapes the trap situation, it corresponds to case A, so an A case trap scenario is performed (S300). When only the first robot 100a escapes from the trap situation, it corresponds to case B, and thus a case B trap scenario (S400) is performed. In addition, when both the first robot 100a and the second robot 100b escape, cooperative driving may be performed (S100).

이하, 도 23 내지 도 29를 참조하여, 협업 주행 수행 중에 발생한 오류(error)에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템(1)의 <실시예 2>를 설명한다. Hereinafter, referring to FIGS. 23 to 29 , <Example 2> of a mobile robot system 1 that performs a preset scenario in response to an error occurring during collaborative driving will be described.

제1 로봇(100a) 및 제2 로봇(100b)은 네트워크(50)를 이용하여 협업 주행 모드에 진입할 수 있다. 도 23을 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)이 협업 주행 모드에 진입하고, 서로의 위치 정보를 파악한 경우, 제1 로봇(100a)은, 제2 로봇(100b)의 주행 이전에 주행하여 청소 대상 구역(Z4)의 오염물을 흡입할 수 있다. 여기서, 오염물은 청소 대상 구역(Z4)에 존재하는 먼지, 이물질, 쓰레기 등 흡입이 가능한 모든 물질을 포함하는 개념일 수 있다. 또한, 제2 로봇(100b)은, 제1 로봇(100a)이 주행한 경로(L1)를 따라 주행하여 청소 대상 구역(Z4)의 바닥을 닦을 수 있다. 여기서, 제2 로봇(100b)이 바닥을 닦는다는 것은, 제1 로봇(100a)이 흡입할 수 없는 액체 등의 물질을, 제2 로봇(100b)이 물 걸레질하여 닦는 것을 의미할 수 있다. 다만, 협업 주행 수행 중에, 제1 로봇(100a) 및 제2 로봇(100b) 중 적어도 하나에 오류가 발생하여 협업 주행이 중단되는 경우가 발생할 수 있다. 이 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 협업 주행 수행 중에 발생한 오류에 대응하여, 미리 설정된 시나리오를 수행할 수 있다. The first robot 100a and the second robot 100b may enter a cooperative driving mode using the network 50 . Referring to FIG. 23 , when the first robot 100a and the second robot 100b enter the cooperative driving mode and grasp each other's location information, the first robot 100a determines the location of the second robot 100b. Contaminants in the area to be cleaned (Z4) may be sucked in by driving before driving. Here, the contaminants may be a concept including all substances that can be inhaled, such as dust, foreign substances, and trash existing in the area to be cleaned (Z4). In addition, the second robot 100b may wipe the floor of the area to be cleaned Z4 by traveling along the path L1 along which the first robot 100a traveled. Here, that the second robot 100b wipes the floor may mean that the second robot 100b wipes a substance such as a liquid that cannot be sucked by the first robot 100a by wiping with a damp cloth. However, there may be a case where an error occurs in at least one of the first robot 100a and the second robot 100b during the collaborative driving, and thus the cooperative driving is stopped. In this case, the first robot 100a and the second robot 100b may perform a preset scenario in response to an error occurring during collaborative driving.

표 1은, 제1 로봇(100a) 및 제2 로봇(100b)이, 협업 주행 수행 중에 발생한 오류에 대응하여 수행하는, 미리 설정된 시나리오에 관한 제1 실시예 내지 제7 실시예를 나타낸 표이다. 표 1에서, '오류'는, 제1 로봇(100a) 또는 제2 로봇(100b)이, 장애물에 걸렸거나, 또는 바퀴가 빠지거나, 또는 휠을 회전시키는 모터가 고장나는 등, 협업 주행을 계속 수행할 수 없는 상태를 의미한다. 또한, '정상'은, 제1 로봇(100a) 또는 제2 로봇(100b)이, 오류가 발생하지 않고, 협업 주행을 계속 수행할 수 있는 상태를 의미한다. Table 1 is a table showing first to seventh embodiments of preset scenarios performed by the first robot 100a and the second robot 100b in response to an error occurring during collaborative driving. In Table 1, 'error' means that the first robot (100a) or the second robot (100b) is stuck on an obstacle, a wheel is missing, or a motor that rotates a wheel is broken, and the cooperative driving continues. This means that it cannot be performed. Also, 'normal' means a state in which the first robot 100a or the second robot 100b can continue to perform cooperative driving without an error occurring.

표 1에서, 제1 실시예 내지 제7 실시예의 각 오류에 대하여 상이한 부호를 붙였으며, 이는 설명의 편의를 위한 것이다. 또한, 이하 설명할 각 실시예는 독립적인 것으로 이해되어야 할 것이다. 한편, 제1 로봇(100a) 및 제2 로봇(100b)은, 사용자로부터 재 주행(resume) 명령을 입력 받을 수 있는 버튼을 구비할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)은, 오류가 해결된 다음, 재 주행 명령을 입력 받고, 서로의 위치 정보를 파악한 경우, 협업 주행을 다시 수행할 수 있다. 재 주행 명령은, 후술할, 제2 실시예, 제3 실시예, 제6 실시예, 및 제7 실시예와 관련된다. 이하, 표 1을 참조하여, 제1 실시예 내지 제7 실시예를 구체적으로 설명한다.In Table 1, different codes are attached to each error in the first to seventh embodiments, and this is for convenience of description. In addition, each embodiment to be described below should be understood as independent. Meanwhile, the first robot 100a and the second robot 100b may have a button capable of receiving a resume command from the user. After the error is resolved, the first robot 100a and the second robot 100b may perform cooperative driving again when receiving a re-traveling command and recognizing each other's location information. The re-travel command is related to the second embodiment, the third embodiment, the sixth embodiment, and the seventh embodiment, which will be described later. Hereinafter, with reference to Table 1, the first to seventh embodiments will be described in detail.

실시예Example 제1 로봇(100a)의 상태State of the first robot 100a 제2 로봇(100b)의 상태State of the second robot 100b 1One 오류(a)Error (a) 정상normal 22 오류(b)Error (b) 정상normal 33 오류(c)Error (c) 정상normal 44 오류(d)Error (d) 오류(e)Error (e) 55 정상normal 오류(f)Error (f) 66 정상normal 오류(g)error (g) 77 정상normal 오류(h)error (h)

제1 실시예는, 협업 주행 수행 중에, 제1 로봇(100a)에 오류(a)가 발생하고, 미리 설정된 대기 시간이 경과한 경우의 시나리오이다. 이 경우, 제1 로봇(100a)은, 미리 설정된 대기 시간 이후, 전원을 종료할 수 있다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다. 한편, 도 24a를 참조하면, 제1 실시예에서, 제2 로봇(100b)은, 협업 주행 모드를 해제하고 제1 로봇(100a)이 주행한 지점(P1)까지 주행(L2)한 다음, 제2 충전대(400b)에 복귀(L3)할 수 있다. 여기서, 제1 로봇(100a)이 주행한 지점(P1)은, 오류(a)가 발생한 시점의 제1 로봇(100a)의 위치이다. 즉, 제2 로봇(100b)은, 제1 로봇(100a)이 오염물을 흡입한 지점(P1)까지 주행(L2)하여 바닥을 닦은 다음, 제2 충전대(400b)에 복귀(L3)할 수 있다. 한편, 제1 실시예의 다른 실시예로서, 제2 로봇이(100b), 협업 주행 모드를 해제한 다음, 제2 충전대(400b)에 복귀하지 않고, 단독 주행을 수행하는 것이 고려될 수 있다.제2 실시예는, 협업 주행 수행 중에, 제1 로봇(100a)에 오류(b)가 발생하였으나, 미리 설정된 대기 시간에, 오류(b)의 해결 및 제1 로봇(100a)에 재 주행 명령이 입력되고, 제1 로봇(100a)과 제2 로봇(100b)이 서로의 위치 정보를 파악한 경우의 시나리오이다. 이 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 협업 주행을 다시 수행할 수 있다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다. 한편, 도 24b를 참조하면, 제2 실시예에서, 제2 로봇(100b)은, 오류(b)의 발생 시점부터 협업 주행을 다시 수행하는 시점 이전까지, 제2 로봇(100b) 자신이 주행했던 청소 대상 구역을 다시 주행(L4)할 수 있다. 즉, 제2 로봇(100b)이 대기 시간에 제자리에 가만히 있는 경우, 대기하고 있는 지점에 물이 흥건해질 수 있으므로, 제2 로봇(100b)은 이미 바닥을 닦았던 청소 대상 구역의 바닥을 다시 닦을 수 있다. 한편, 제2 실시예의 다른 실시예로서, 제1 로봇(100a) 및 제2 로봇이(100b), 협업 주행을 수행하지 않고, 협업 주행 모드를 해제한 다음, 각각 단독 주행을 수행하는 것이 고려될 수 있다.제 3 실시예는, 협업 주행 수행 중에, 제1 로봇(100a)에 오류(c)가 발생하고, 미리 설정된 대기 시간에, 오류(c)의 해결 및 제1 로봇(100a)에 재 주행 명령이 입력되었으나, 제1 로봇(100a)과 제2 로봇(100b)이 서로의 위치 정보를 파악하지 못한 경우의 시나리오이다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다. 도 24c를 참조하면, 제1 로봇(100a)은, 협업 주행 모드를 해제한 다음, 단독 주행을 수행(L5)할 수 있다. 또한, 제2 로봇(100b)은, 협업 주행 모드를 해제하고 제1 로봇(100a)이 주행한 지점(P2)까지 주행(L6)한 다음, 제2 충전대(400b)에 복귀(L7)할 수 있다. 여기서, 제1 로봇(100a)이 주행한 지점(P2)은, 오류(c)가 발생한 시점의 제1 로봇(100a)의 위치이다. 즉, 제2 로봇(100b)은, 제1 로봇(100a)이 오염물을 흡입한 지점(P2)까지 주행(L6)하여 바닥을 닦은 다음, 제2 충전대(400b)에 복귀(L7)할 수 있다. 한편, 제3 실시예의 다른 실시예로서, 제2 로봇이(100b), 협업 주행 모드를 해제한 다음, 제2 충전대(400b)에 복귀하지 않고, 단독 주행을 수행하는 것이 고려될 수 있다. 또한, 제3 실시예의 다른 실시예로서, 제1 로봇(100a) 및 제2 로봇(100b)이, 협업 주행 모드를 해제한 다음, 각각 충전대(400a, 400b)로 복귀하는 것이 고려될 수 있다. 또한, 제3 실시예의 다른 실시예로서, 제1 로봇(100a) 및 제2 로봇(100b)이 협업 주행 모드를 해제한 다음, 제1 로봇(100a)은 제1 충전대(400a)에 복귀하고, 제2 로봇(100b)은 단독 주행을 수행하는 것이 고려될 수 있다.The first embodiment is a scenario in which an error (a) occurs in the first robot 100a while performing collaborative driving and a preset waiting time elapses. In this case, the first robot 100a may power off after a preset waiting time. Here, the preset waiting time may be 10 minutes. Meanwhile, referring to FIG. 24A , in the first embodiment, the second robot 100b cancels the collaborative driving mode, travels (L2) to the point P1 where the first robot 100a travels, and then 2 It is possible to return to the charging station 400b (L3). Here, the point P1 at which the first robot 100a travels is the position of the first robot 100a at the time when the error a occurs. That is, the second robot 100b may travel (L2) to the point P1 where the first robot 100a sucks in contaminants, wipe the floor, and then return to the second charging stand 400b (L3). . Meanwhile, as another example of the first embodiment, it may be considered that the second robot 100b cancels the collaborative driving mode and then performs independent driving without returning to the second charging station 400b. In the second embodiment, an error (b) occurs in the first robot 100a while performing cooperative driving, but in a preset waiting time, the error (b) is resolved and a re-run command is input to the first robot 100a. This is a scenario in which the first robot 100a and the second robot 100b grasp each other's location information. In this case, the first robot 100a and the second robot 100b may perform cooperative driving again. Here, the preset waiting time may be 10 minutes. On the other hand, referring to FIG. 24B, in the second embodiment, the second robot 100b, from the time of error b to the time of performing cooperative driving again, the second robot 100b itself traveled The area to be cleaned may be driven (L4) again. That is, if the second robot 100b is still in place during the waiting time, water may be flooded at the waiting point, so the second robot 100b may wipe the floor of the area to be cleaned again. can On the other hand, as another embodiment of the second embodiment, it will be considered that the first robot 100a and the second robot 100b do not perform cooperative driving, release the cooperative driving mode, and then perform independent driving, respectively. In the third embodiment, an error (c) occurs in the first robot 100a while performing cooperative driving, and in a preset waiting time, the error (c) is resolved and the first robot 100a is restarted. This is a scenario in which a driving command is input, but the first robot 100a and the second robot 100b do not grasp each other's location information. Here, the preset waiting time may be 10 minutes. Referring to FIG. 24C , the first robot 100a may cancel the cooperative driving mode and then perform independent driving (L5). In addition, the second robot 100b may release the cooperative driving mode, travel (L6) to the point P2 where the first robot 100a traveled, and then return (L7) to the second charging stand 400b. there is. Here, the point P2 where the first robot 100a travels is the position of the first robot 100a at the time when the error c occurs. That is, the second robot 100b may travel (L6) to the point P2 where the first robot 100a sucks in contaminants, wipe the floor, and then return to the second charging stand 400b (L7). . Meanwhile, as another example of the third embodiment, it may be considered that the second robot 100b cancels the cooperative driving mode and then performs independent driving without returning to the second charging stand 400b. Also, as another example of the third embodiment, it may be considered that the first robot 100a and the second robot 100b release the collaborative driving mode and then return to the charging stations 400a and 400b, respectively. In addition, as another embodiment of the third embodiment, after the first robot 100a and the second robot 100b release the cooperative driving mode, the first robot 100a returns to the first charging station 400a, It may be considered that the second robot 100b performs independent driving.

제4 실시예는, 협업 주행 수행 중에, 제1 로봇(100a) 및 제2 로봇(100b)에 모두 오류가 발생하고, 미리 설정된 대기 시간이 경과한 경우의 시나리오이다. 즉, 제 4 실시예는, 제1 로봇(100a)에 오류(d)가 발생하고, 제2 로봇에 오류(e)가 발생한 경우이다. 도 25를 참조하면, 제1 로봇(100a)과 제2 로봇(100b)은, 미리 설정된 대기 시간 이후에, 각각 자신의 전원을 종료할 수 있다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다.The fourth embodiment is a scenario in which an error occurs in both the first robot 100a and the second robot 100b while performing cooperative driving and a preset waiting time elapses. That is, in the fourth embodiment, an error (d) occurs in the first robot (100a) and an error (e) occurs in the second robot. Referring to FIG. 25 , the first robot 100a and the second robot 100b may each terminate their own power after a preset waiting time. Here, the preset waiting time may be 10 minutes.

제5 실시예는, 협업 주행 수행 중에, 제2 로봇(100b)에 오류(f)가 발생하고, 미리 설정된 대기 시간이 경과한 경우의 시나리오이다. 이 경우, 제2 로봇(100b)은, 미리 설정된 대기 시간 이후, 전원을 종료할 수 있다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다. 한편, 도 26a를 참조하면, 제 5실시예에서, 제1 로봇(100a)은, 협업 주행 모드를 해제한 다음, 단독 주행을 수행(L8)할 수 있다. 한편, 제5 실시예의 다른 실시예로서, 제1 로봇이(100a), 협업 주행 모드를 해제한 다음, 단독 주행을 수행하지 않고, 충전대(400a)에 복귀하는 것이 고려될 수 있다.The fifth embodiment is a scenario in which an error f occurs in the second robot 100b while performing cooperative driving and a preset waiting time elapses. In this case, the second robot 100b may power off after a preset waiting time. Here, the preset waiting time may be 10 minutes. Meanwhile, referring to FIG. 26A , in the fifth embodiment, the first robot 100a may release the cooperative driving mode and then perform independent driving (L8). Meanwhile, as another example of the fifth embodiment, it may be considered that the first robot 100a cancels the collaborative driving mode and then returns to the charging base 400a without performing independent driving.

제6 실시예는, 협업 주행 수행 중에, 제2 로봇(100b)에 오류(g)가 발생하였으나, 미리 설정된 대기 시간에, 오류(g)의 해결 및 제2 로봇(100b)에 재 주행 명령이 입력되고, 제1 로봇(100a)과 제2 로봇(100b)이 서로의 위치 정보를 파악한 경우의 시나리오이다. 이 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 협업 주행을 다시 수행할 수 있다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다. 한편, 도 26b를 참조하면, 제6 실시예에서, 제1 로봇(100a)은, 오류(g)의 발생 시점부터 협업 주행을 다시 수행하는 시점 이전까지, 제1 로봇(100a) 자신이 주행했던 청소 대상 구역을 다시 주행(L9)할 수 있다. 한편, 제6 실시예의 다른 실시예로서, 제1 로봇(100a) 및 제2 로봇이(100b), 협업 주행을 수행하지 않고, 협업 주행 모드를 해제한 다음, 각각 단독 주행을 수행하는 것이 고려될 수 있다.In the sixth embodiment, although an error g occurs in the second robot 100b while performing cooperative driving, the error g is resolved and a re-run command is issued to the second robot 100b in a preset waiting time. This is a scenario in which the first robot 100a and the second robot 100b grasp each other's location information. In this case, the first robot 100a and the second robot 100b may perform cooperative driving again. Here, the preset waiting time may be 10 minutes. On the other hand, referring to FIG. 26B , in the sixth embodiment, the first robot 100a, from the point of occurrence of the error g to the point of performing the collaborative driving again, the first robot 100a itself traveled The area to be cleaned may be driven (L9) again. On the other hand, as another embodiment of the sixth embodiment, it will be considered that the first robot 100a and the second robot 100b do not perform cooperative driving, release the cooperative driving mode, and then perform independent driving, respectively. can

제7 실시예는, 협업 주행 수행 중에, 제2 로봇에 오류(h)가 발생하고, 미리 설정된 대기 시간에, 오류(h)의 해결 및 제2 로봇(100b)에 재 주행 명령이 입력되었으나, 제1 로봇(100a)과 제2 로봇(100b)이 서로의 위치 정보를 파악하지 못한 경우의 시나리오이다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다. 도 26c를 참조하면, 제1 로봇(100a)은, 협업 주행 모드를 해제한 다음, 단독 주행(L10)을 수행할 수 있다. 또한, 제2 로봇(100b)은, 협업 주행 모드를 해제하고 제1 로봇(100a)이 주행한 지점(P3)까지 주행한 다음, 제2 충전대(400b)에 복귀할 수 있다. 여기서, 제1 로봇(100a)이 주행한 지점(P3)은, 오류(h)가 발생한 시점의 제1 로봇(100a)의 위치이다. 즉, 제2 로봇(100b)은, 제1 로봇(100a)이 오염물을 흡입한 지점(P3)까지 주행(L11)하여 바닥을 닦은 다음, 제2 충전대(400b)에 복귀(L12)할 수 있다. 한편, 제7 실시예의 다른 실시예로서, 제1 로봇이(100a), 협업 주행 모드를 해제한 다음, 단독 주행을 수행하지 않고, 제1 충전대(400a)에 복귀하는 것이 고려될 수 있다. 또한, 제7 실시예의 다른 실시예로서, 제2 로봇이(100b), 협업 주행 모드를 해제한 다음, 제2 충전대(400b)에 복귀하지 않고, 단독 주행을 수행하고, 제1 로봇(100a)이, 협업 주행 모드를 해제한 다음, 단독 주행을 수행하거나, 충전대(400a)에 복귀하는 것이 고려될 수 있다.In the seventh embodiment, an error (h) occurs in the second robot while performing cooperative driving, and the error (h) is resolved and a re-run command is input to the second robot (100b) at a preset waiting time. This is a scenario in which the first robot 100a and the second robot 100b do not know each other's location information. Here, the preset waiting time may be 10 minutes. Referring to FIG. 26C , the first robot 100a may release the collaborative driving mode and then perform independent driving (L10). In addition, the second robot 100b may release the collaborative driving mode, travel to the point P3 where the first robot 100a traveled, and then return to the second charging station 400b. Here, the point P3 where the first robot 100a travels is the position of the first robot 100a at the time when the error h occurs. That is, the second robot 100b may travel (L11) to the point P3 where the first robot 100a sucks in contaminants, wipe the floor, and then return to the second charging stand 400b (L12). . Meanwhile, as another example of the seventh embodiment, it may be considered that the first robot 100a cancels the collaborative driving mode and then returns to the first charging base 400a without performing independent driving. In addition, as another embodiment of the seventh embodiment, the second robot 100b cancels the collaborative driving mode and then performs independent driving without returning to the second charging station 400b, and the first robot 100a After canceling the cooperative driving mode, solo driving or returning to the charging stand 400a may be considered.

이하, 도 27 및 도 28을 참조하여, 협업 주행 수행 중에 발생한 키드냅(kidnap)에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템(1)을 설명한다. Hereinafter, referring to FIGS. 27 and 28 , the mobile robot system 1 that performs a preset scenario in response to a kidnap occurring during collaborative driving will be described.

제1 로봇(100a) 및 제2 로봇(100b)은 네트워크(50)를 이용하여 협업 주행 모드에 진입할 수 있다. 다시 도 23을 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)이 협업 주행 모드에 진입하고, 서로의 위치 정보를 파악한 경우, 제1 로봇(100a)은, 제2 로봇(100b)의 주행 이전에 주행하여 청소 대상 구역(Z4)의 오염물을 흡입할 수 있다. 여기서, 오염물은 청소 대상 구역(Z4)에 존재하는 먼지, 이물질, 쓰레기 등 흡입이 가능한 모든 물질을 포함하는 개념일 수 있다. 또한, 제2 로봇(100b)은, 제1 로봇(100a)이 주행한 경로(L1)를 따라 주행하여 청소 대상 구역(Z4)의 바닥을 닦을 수 있다. 여기서, 제2 로봇(100b)이 바닥을 닦는다는 것은, 제1 로봇(100a)이 흡입할 수 없는 액체 등의 물질을, 제2 로봇(100b)이 물 걸레질하여 닦는 것을 의미할 수 있다. 다만, 협업 주행 수행 중에, 제1 로봇(100a) 및 제2 로봇(100b) 중 적어도 하나에 키드냅이 발생하여 협업 주행이 중단되는 경우가 발생할 수 있다. 이 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 협업 주행 수행 중에 발생한 키드냅에 대응하여, 미리 설정된 시나리오를 수행할 수 있다. The first robot 100a and the second robot 100b may enter a cooperative driving mode using the network 50 . Referring back to FIG. 23 , when the first robot 100a and the second robot 100b enter the cooperative driving mode and grasp each other's positional information, the first robot 100a, the second robot 100b It is possible to suck pollutants from the area to be cleaned (Z4) by traveling before the travel of the vehicle. Here, the contaminants may be a concept including all substances that can be inhaled, such as dust, foreign substances, and trash existing in the area to be cleaned (Z4). In addition, the second robot 100b may wipe the floor of the area to be cleaned Z4 by traveling along the path L1 along which the first robot 100a traveled. Here, that the second robot 100b wipes the floor may mean that the second robot 100b wipes a substance such as a liquid that cannot be sucked by the first robot 100a by wiping with a damp cloth. However, there may occur a case in which a kid-nap occurs in at least one of the first robot 100a and the second robot 100b during collaborative driving, thus stopping the collaborative driving. In this case, the first robot 100a and the second robot 100b may perform a preset scenario in response to a kidnap occurring during collaborative driving.

표 2는, 제1 로봇(100a) 및 제2 로봇(100b)이, 협업 주행 수행 중에 발생한 키드냅에 대응하여 수행하는, 미리 설정된 시나리오에 관한 제1 실시예 내지 제7 실시예를 나타낸 표이다. 표 2에서, '키드냅'은, 사용자가, 주행 중이던 제1 로봇(100a) 또는 제2 로봇(100b)을 들어서 다른 위치에 놓는 것을 의미한다. 또한, '정상'은, 제1 로봇(100a) 또는 제2 로봇(100b)이, 키드냅이 발생하지 않고, 협업 주행을 계속 수행할 수 있는 상태를 의미한다. Table 2 is a table showing the first to seventh embodiments of preset scenarios performed by the first robot 100a and the second robot 100b in response to a kidnap occurring during collaborative driving. . In Table 2, 'kidnap' means that the user picks up the first robot 100a or the second robot 100b that was running and puts them in a different location. Also, 'normal' means a state in which the first robot 100a or the second robot 100b can continue to perform cooperative driving without a kid-nap occurring.

표 2에서, 제1 실시예 내지 제7 실시예의 각 키드냅에 대하여 상이한 부호를 붙였으며, 이는 설명의 편의를 위한 것이다. 또한, 이하 설명할 각 실시예는 독립적인 것으로 이해되어야 할 것이다. 한편, 제1 로봇(100a) 및 제2 로봇(100b)은, 사용자로부터 재 주행(resume) 명령을 입력 받을 수 있는 버튼을 구비할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)은, 재 주행 명령을 입력 받고, 서로의 위치 정보를 파악한 경우, 협업 주행을 다시 수행할 수 있다. 재 주행 명령은, 후술할, 제2 실시예, 제3 실시예, 제4 실시예, 제6 실시예, 및 제 7 실시예와 관련된다. 이하, 표 2를 참조하여, 제1 실시예 내지 제7 실시예를 구체적으로 설명한다.In Table 2, different reference numerals are attached to each keynap of the first to seventh embodiments, and this is for convenience of explanation. In addition, each embodiment to be described below should be understood as independent. Meanwhile, the first robot 100a and the second robot 100b may have a button capable of receiving a resume command from the user. When the first robot 100a and the second robot 100b receive a re-travel command and recognize each other's location information, they may perform cooperative travel again. The restart command is related to the second embodiment, the third embodiment, the fourth embodiment, the sixth embodiment, and the seventh embodiment, which will be described later. Hereinafter, referring to Table 2, the first to seventh embodiments will be described in detail.

실시예Example 제1 로봇(100a)의 상태State of the first robot 100a 제2 로봇(100b)의 상태State of the second robot 100b 1One 키드냅(i)Kidnap (i) 정상normal 22 키드냅(j)Kidnap (j) 정상normal 33 키드냅(k)Kidnap (k) 정상normal 44 키드냅(l)Kidnap (l) 키드냅(m)Kidnap (m) 55 정상normal 키드냅(n)Kidnap (n) 66 정상normal 키드냅(o)Kidnap (o) 77 정상normal 키드냅(p)Kidnap (p)

제1 실시예는, 협업 주행 수행 중에, 제1 로봇(100a)에 키드냅(i)이 발생하고, 미리 설정된 대기 시간이 경과한 경우의 시나리오이다. 이 경우, 제1 로봇(100a)은, 미리 설정된 대기 시간 이후, 전원을 종료할 수 있다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다. 한편, 도 27a를 참조하면, 제1 실시예에서, 제2 로봇(100b)은, 협업 주행 모드를 해제하고 제1 로봇(100a)이 주행한 지점(Q1)까지 주행(L13)한 다음, 제2 충전대(400b)에 복귀(L14)할 수 있다. 여기서, 제1 로봇(100a)이 주행한 지점(Q1)은, 키드냅(i)이 발생한 시점의 제1 로봇(100a)의 위치이다. 즉, 제2 로봇(100b)은, 제1 로봇(100a)이 오염물을 흡입한 지점(Q1)까지 주행(L13)하여 바닥을 닦은 다음, 제2 충전대(400b)에 복귀(L14)할 수 있다. 한편, 제1 실시예의 다른 실시예로서, 제2 로봇이(100b), 협업 주행 모드를 해제한 다음, 제2 충전대(400b)에 복귀하지 않고, 단독 주행을 수행하는 것이 고려될 수도 있다.제2 실시예는, 협업 주행 수행 중에, 제1 로봇(100a)에 키드냅(j)이 발생하고, 미리 설정된 대기 시간에 제1 로봇(100a)에 재 주행 명령이 입력되고, 제1 로봇(100a)과 제2 로봇(100b)이 서로의 위치 정보를 파악한 경우의 시나리오이다. 이 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 협업 주행을 다시 수행할 수 있다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다. 한편, 도 27b를 참조하면, 제2 실시예에서, 제2 로봇(100b)은, 키드냅(j)의 발생 시점부터 협업 주행을 다시 수행하는 시점 이전까지, 제2 로봇(100b) 자신이 주행했던 청소 대상 구역을 다시 주행(L15)할 수 있다. 즉, 제2 로봇(100b)이 대기 시간에 제자리에 가만히 있는 경우, 대기하고 있는 지점에 물이 흥건해질 수 있으므로, 제2 로봇(100b)은 이미 바닥을 닦았던 청소 대상 구역의 바닥을 다시 닦을 수 있다. 한편, 제2 실시예의 다른 실시예로서, 제1 로봇(100a) 및 제2 로봇이(100b), 협업 주행을 수행하지 않고, 협업 주행 모드를 해제한 다음, 각각 단독 주행을 수행하는 것이 고려될 수 있다.제 3 실시예는, 협업 주행 수행 중에, 제1 로봇(100a)에 키드냅(k)이 발생하고, 미리 설정된 대기 시간에 제1 로봇(100a)에 재 주행 명령이 입력되었으나, 제1 로봇(100a)과 제2 로봇(100b)이 서로의 위치 정보를 파악하지 못한 경우의 시나리오이다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다. 도 27c를 참조하면, 제1 로봇(100a)은, 협업 주행 모드를 해제한 다음, 단독 주행을 수행(L16)할 수 있다. 또한, 제2 로봇(100b)은, 협업 주행 모드를 해제하고 제1 로봇(100a)이 주행한 지점(Q2)까지 주행(L17)한 다음, 제2 충전대(400b)에 복귀(L18)할 수 있다. 여기서, 제1 로봇(100a)이 주행한 지점(Q2)은, 키드냅(k)이 발생한 시점의 제1 로봇(100a)의 위치이다. 즉, 제2 로봇(100b)은, 제1 로봇(100a)이 오염물을 흡입한 지점(Q2)까지 주행(L17)하여 바닥을 닦은 다음, 제2 충전대(400b)에 복귀(L18)할 수 있다. 한편, 제3 실시예의 다른 실시예로서, 제2 로봇이(100b), 협업 주행 모드를 해제한 다음, 제2 충전대(400b)에 복귀하지 않고, 단독 주행을 수행하는 것이 고려될 수 있다. 또한, 제3 실시예의 다른 실시예로서, 제1 로봇(100a) 및 제2 로봇(100b)이, 협업 주행 모드를 해제한 다음, 각각 충전대(400a, 400b)로 복귀하는 것이 고려될 수 있다. 또한, 제3 실시예의 다른 실시예로서, 제1 로봇(100a) 및 제2 로봇(100b)이 협업 주행 모드를 해제한 다음, 제1 로봇(100a)은 제1 충전대(400a)에 복귀하고, 제2 로봇(100b)은 단독 주행을 수행하는 것이 고려될 수 있다.The first embodiment is a scenario in which a kidnap (i) occurs in the first robot 100a while performing cooperative driving and a preset waiting time elapses. In this case, the first robot 100a may power off after a preset waiting time. Here, the preset waiting time may be 10 minutes. Meanwhile, referring to FIG. 27A , in the first embodiment, the second robot 100b cancels the cooperative driving mode, travels (L13) to the point Q1 where the first robot 100a travels, and then 2 It is possible to return to the charging station 400b (L14). Here, the point Q1 where the first robot 100a travels is the position of the first robot 100a at the time when the kidnap i occurs. That is, the second robot 100b may travel (L13) to the point Q1 where the first robot 100a sucks in contaminants, wipe the floor, and then return to the second charging stand 400b (L14). . Meanwhile, as another example of the first embodiment, it may be considered that the second robot 100b cancels the collaborative driving mode and then performs independent driving without returning to the second charging station 400b. In the second embodiment, while performing cooperative driving, a kidnap (j) occurs in the first robot 100a, a re-traveling command is input to the first robot 100a at a preset waiting time, and the first robot 100a ) and the second robot 100b grasp each other's location information. In this case, the first robot 100a and the second robot 100b may perform cooperative driving again. Here, the preset waiting time may be 10 minutes. On the other hand, referring to FIG. 27B , in the second embodiment, the second robot 100b itself travels from the time when Kidnap j occurs until before the time when collaborative driving is performed again. It is possible to drive (L15) again to the area to be cleaned. That is, if the second robot 100b is still in place during the waiting time, water may be flooded at the waiting point, so the second robot 100b may wipe the floor of the area to be cleaned again. can On the other hand, as another embodiment of the second embodiment, it will be considered that the first robot 100a and the second robot 100b do not perform cooperative driving, release the cooperative driving mode, and then perform independent driving, respectively. In the third embodiment, while performing collaborative driving, the first robot 100a has a kidnap (k) and a re-traveling command is input to the first robot 100a at a preset waiting time. This is a scenario in which the first robot 100a and the second robot 100b do not know each other's location information. Here, the preset waiting time may be 10 minutes. Referring to FIG. 27C , the first robot 100a may cancel the collaborative driving mode and then perform independent driving (L16). In addition, the second robot 100b may release the collaborative driving mode, drive (L17) to the point Q2 where the first robot 100a traveled, and then return to the second charging station 400b (L18). there is. Here, the point Q2 where the first robot 100a travels is the position of the first robot 100a at the time when the kidnap k occurs. That is, the second robot 100b may travel (L17) to the point Q2 where the first robot 100a sucks in contaminants, wipe the floor, and then return to the second charging stand 400b (L18). . Meanwhile, as another example of the third embodiment, it may be considered that the second robot 100b cancels the cooperative driving mode and then performs independent driving without returning to the second charging stand 400b. Also, as another example of the third embodiment, it may be considered that the first robot 100a and the second robot 100b release the collaborative driving mode and then return to the charging stations 400a and 400b, respectively. In addition, as another embodiment of the third embodiment, after the first robot 100a and the second robot 100b release the cooperative driving mode, the first robot 100a returns to the first charging station 400a, It may be considered that the second robot 100b performs independent driving.

제4 실시예는, 협업 주행 수행 중에, 제1 로봇(100a) 및 제2 로봇(100b)에 모두 키드냅이 발생하고, 미리 설정된 대기 시간이 경과한 경우의 시나리오이다. 즉, 제 4 실시예는, 제1 로봇(100a)에 키드냅(l)이 발생하고, 제2 로봇(100b)에 키드냅(m)이 발생한 경우이다. 이 경우, 미리 설정된 대기 시간에 제1 로봇(100a) 및 제2 로봇(100b)에 재 주행 명령이 입력되고, 제1 로봇(100a)과 제2 로봇(100b)이 서로의 위치를 파악한 경우, 제1 로봇(100a) 및 제2 로봇(100b)은 협업 주행을 다시 수행할 수 있다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다. 한편, 제4 실시예의 다른 실시예로서, 제1 로봇(100a) 및 제2 로봇(100b) 중 하나에만 재 주행 명령이 입력된 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 상황에 따라, 전술한, 제1 실시예 내지 제3 실시예, 및 후술할, 제5 실시예 내지 제7 실시예 중 어느 하나의 시나리오를 따를 수 있다.The fourth embodiment is a scenario in which a kid-nap occurs in both the first robot 100a and the second robot 100b during collaborative driving and a preset waiting time elapses. In other words, the fourth embodiment is a case in which a Kidnap (l) occurs in the first robot 100a and a Kidnap (m) occurs in the second robot 100b. In this case, when a re-travel command is input to the first robot 100a and the second robot 100b at a preset waiting time, and the first robot 100a and the second robot 100b grasp each other's position, The first robot 100a and the second robot 100b may perform cooperative driving again. Here, the preset waiting time may be 10 minutes. Meanwhile, as another embodiment of the fourth embodiment, when a re-travel command is input to only one of the first robot 100a and the second robot 100b, the first robot 100a and the second robot 100b, Depending on circumstances, any one of the above-described first to third embodiments and the fifth to seventh embodiments to be described later may be followed.

제5 실시예는, 협업 주행 수행 중에, 제2 로봇(100b)에 키드냅(n)이 발생하고, 미리 설정된 대기 시간이 경과한 경우의 시나리오이다. 이 경우, 제2 로봇(100b)은, 미리 설정된 대기 시간 이후, 전원을 종료할 수 있다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다. 한편, 도 28a를 참조하면, 제 5실시예에서, 제1 로봇(100a)은, 협업 주행 모드를 해제한 다음, 단독 주행을 수행(L19)할 수 있다. 한편, 제5 실시예의 다른 실시예로서, 제1 로봇이(100a), 협업 주행 모드를 해제한 다음, 단독 주행을 수행하지 않고, 충전대(400a)에 복귀하는 것이 고려될 수 있다.The fifth embodiment is a scenario in which a kidnap (n) occurs in the second robot 100b while performing cooperative driving and a preset waiting time elapses. In this case, the second robot 100b may power off after a preset waiting time. Here, the preset waiting time may be 10 minutes. Meanwhile, referring to FIG. 28A , in the fifth embodiment, the first robot 100a may release the collaborative driving mode and then perform independent driving (L19). Meanwhile, as another example of the fifth embodiment, it may be considered that the first robot 100a cancels the collaborative driving mode and then returns to the charging base 400a without performing independent driving.

제6 실시예는, 협업 주행 수행 중에, 제2 로봇(100b)에 키드냅(o)이 발생하였으나, 미리 설정된 대기 시간에 제2 로봇(100b)에 재 주행 명령이 입력되고, 제1 로봇(100a)과 제2 로봇(100b)이 서로의 위치 정보를 파악한 경우의 시나리오이다. 이 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 협업 주행을 다시 수행할 수 있다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다. 한편, 도 28b를 참조하면, 제6 실시예에서, 제1 로봇(100a)은, 키드냅(o)의 발생 시점부터 협업 주행을 다시 수행하는 시점 이전까지, 제1 로봇(100a) 자신이 주행했던 청소 대상 구역을 다시 주행(L20)할 수 있다. 한편, 제6 실시예의 다른 실시예로서, 제1 로봇(100a) 및 제2 로봇이(100b), 협업 주행을 수행하지 않고, 협업 주행 모드를 해제한 다음, 각각 단독 주행을 수행하는 것이 고려될 수 있다.In the sixth embodiment, although a key nap (o) occurred in the second robot 100b while performing cooperative driving, a re-traveling command was input to the second robot 100b at a preset waiting time, and the first robot (100b) This is a scenario in which 100a) and the second robot 100b grasp each other's location information. In this case, the first robot 100a and the second robot 100b may perform cooperative driving again. Here, the preset waiting time may be 10 minutes. Meanwhile, referring to FIG. 28B , in the sixth embodiment, the first robot 100a itself travels from the time when the kidnap (o) occurs until the time when collaborative driving is performed again. The area to be cleaned may be driven again (L20). On the other hand, as another embodiment of the sixth embodiment, it will be considered that the first robot 100a and the second robot 100b do not perform cooperative driving, release the cooperative driving mode, and then perform independent driving, respectively. can

제7 실시예는, 협업 주행 수행 중에, 제2 로봇에 키드냅(p)이 발생하고, 미리 설정된 대기 시간에 제2 로봇(100b)에 재 주행 명령이 입력되었으나, 제1 로봇(100a)과 제2 로봇(100b)이 서로의 위치 정보를 파악하지 못한 경우의 시나리오이다. 여기서, 미리 설정된 대기 시간은 10분일 수 있다. 도 28c를 참조하면, 제1 로봇(100a)은, 협업 주행 모드를 해제한 다음, 단독 주행(L21)을 수행할 수 있다. 또한, 제2 로봇(100b)은, 협업 주행 모드를 해제하고 제1 로봇(100a)이 주행한 지점(Q3)까지 주행한 다음, 제2 충전대(400b)에 복귀할 수 있다. 여기서, 제1 로봇(100a)이 주행한 지점(Q3)은, 키드냅(p)이 발생한 시점의 제1 로봇(100a)의 위치이다. 즉, 제2 로봇(100b)은, 제1 로봇(100a)이 오염물을 흡입한 지점(Q3)까지 주행(L22)하여 바닥을 닦은 다음, 제2 충전대(400b)에 복귀(L23)할 수 있다. 한편, 제7 실시예의 다른 실시예로서, 제1 로봇이(100a), 협업 주행 모드를 해제한 다음, 단독 주행을 수행하지 않고, 제1 충전대(400a)에 복귀하는 것이 고려될 수 있다. 또한, 제7 실시예의 다른 실시예로서, 제2 로봇이(100b), 협업 주행 모드를 해제한 다음, 제2 충전대(400b)에 복귀하지 않고, 단독 주행을 수행하고, 제1 로봇(100a)이, 협업 주행 모드를 해제한 다음, 단독 주행을 수행하거나, 충전대(400a)에 복귀하는 것이 고려될 수 있다.In the seventh embodiment, while performing collaborative driving, a keynap (p) occurs in the second robot and a re-traveling command is input to the second robot 100b at a preset waiting time, but the first robot 100a and This is a scenario in which the second robot 100b fails to grasp each other's location information. Here, the preset waiting time may be 10 minutes. Referring to FIG. 28C , the first robot 100a may release the collaborative driving mode and then perform independent driving (L21). In addition, the second robot 100b may release the collaborative driving mode, travel to the point Q3 where the first robot 100a traveled, and then return to the second charging stand 400b. Here, the point Q3 where the first robot 100a travels is the position of the first robot 100a at the time when the kidnap p occurs. That is, the second robot 100b may travel (L22) to the point Q3 where the first robot 100a sucks in contaminants, wipe the floor, and then return to the second charging stand 400b (L23). . Meanwhile, as another example of the seventh embodiment, it may be considered that the first robot 100a cancels the collaborative driving mode and then returns to the first charging base 400a without performing independent driving. In addition, as another embodiment of the seventh embodiment, the second robot 100b cancels the collaborative driving mode and then performs independent driving without returning to the second charging station 400b, and the first robot 100a After canceling the cooperative driving mode, solo driving or returning to the charging stand 400a may be considered.

이하, 협업 주행 수행 중에 발생한 통신 장애에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템(1)을 설명한다. Hereinafter, the mobile robot system 1 that performs a preset scenario in response to a communication failure occurring during collaborative driving will be described.

제1 로봇(100a) 및 제2 로봇(100b)은 네트워크(50)를 이용하여 협업 주행 모드에 진입할 수 있다. 다시 도 23을 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)이 협업 주행 모드에 진입하고, 서로의 위치 정보를 파악한 경우, 제1 로봇(100a)은, 제2 로봇(100b)의 주행 이전에 주행하여 청소 대상 구역(Z4)의 오염물을 흡입할 수 있다. 여기서, 오염물은 청소 대상 구역(Z4)에 존재하는 먼지, 이물질, 쓰레기 등 흡입이 가능한 모든 물질을 포함하는 개념일 수 있다. 또한, 제2 로봇(100b)은, 제1 로봇(100a)이 주행한 경로(L1)를 따라 주행하여 청소 대상 구역(Z4)의 바닥을 닦을 수 있다. 여기서, 제2 로봇(100b)이 바닥을 닦는다는 것은, 제1 로봇(100a)이 흡입할 수 없는 액체 등의 물질을, 제2 로봇(100b)이 물 걸레질하여 닦는 것을 의미할 수 있다. 다만, 협업 주행 수행 중에, 제1 로봇(100a) 및 제2 로봇(100b) 중 적어도 하나에 통신 장애가 발생할 수 있다. 여기서, 통신 장애는, 제1 로봇(100a) 또는 제2 로봇(100b)이, 네트워크를 이용하여 다른 이동 로봇과 데이터를 송신 또는 수신할 수 없는 모든 종류의 장애를 의미한다. 이 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 협업 주행 수행 중에 발생한 통신 장애에 대응하여, 미리 설정된 시나리오를 수행할 수 있다. The first robot 100a and the second robot 100b may enter a cooperative driving mode using the network 50 . Referring back to FIG. 23 , when the first robot 100a and the second robot 100b enter the cooperative driving mode and grasp each other's positional information, the first robot 100a, the second robot 100b It is possible to suck pollutants from the area to be cleaned (Z4) by traveling before the travel of the vehicle. Here, the contaminants may be a concept including all substances that can be inhaled, such as dust, foreign substances, and trash existing in the area to be cleaned (Z4). In addition, the second robot 100b may wipe the floor of the area to be cleaned Z4 by traveling along the path L1 along which the first robot 100a traveled. Here, that the second robot 100b wipes the floor may mean that the second robot 100b wipes a substance such as a liquid that cannot be sucked by the first robot 100a by wiping with a damp cloth. However, communication failure may occur in at least one of the first robot 100a and the second robot 100b while performing cooperative driving. Here, the communication failure refers to all kinds of failures in which the first robot 100a or the second robot 100b cannot transmit or receive data with other mobile robots using a network. In this case, the first robot 100a and the second robot 100b may perform a preset scenario in response to a communication failure occurring during collaborative driving.

제1 로봇(100a) 및 제2 로봇(100b)을 연결하는 네트워크(50)는, 제1 네트워크, 그리고 제2 네트워크를 포함할 수 있다. 제1 네트워크는, 제1 로봇(100a)과 제2 로봇(100b)이, 청소 대상 구역(Z4)의 맵 정보를 공유하기 위한 네트워크일 수 있다. 여기서, 제1 네트워크는 와이파이일 수 있다. 또한, 제2 네트워크는, 제1 로봇(100a)과 제2 로봇(100b)이, 제1 로봇(100a) 및 제2 로봇(100b) 사이의 이격 거리를 파악하기 위한 네트워크일 수 있다. 여기서, 제2 네트워크는 UWB일 수 있다. 제1 로봇(100a)과 제2 로봇(100b)의, 와이파이를 이용한 맵 정보의 공유 방법, 그리고 UWB를 이용한 제1 로봇(100a) 및 제2 로봇(100b) 사이의 이격 거리의 파악 방법은 전술하였으므로 생략한다. 이하, 제1 로봇(100a) 및 제2 로봇(100b)이, 협업 주행 수행 중에 발생한 통신 장애에 대응하여 수행하는, 미리 설정된 시나리오에 관한 제1 실시예 및 제2 실시예를 구체적으로 설명한다.The network 50 connecting the first robot 100a and the second robot 100b may include a first network and a second network. The first network may be a network for the first robot 100a and the second robot 100b to share map information of the area to be cleaned Z4. Here, the first network may be Wi-Fi. In addition, the second network may be a network for determining the distance between the first robot 100a and the second robot 100b and the first robot 100a and the second robot 100b. Here, the second network may be UWB. The method for sharing map information between the first robot 100a and the second robot 100b using Wi-Fi and the method for determining the separation distance between the first robot 100a and the second robot 100b using UWB are as described above. omitted, so Hereinafter, the first and second embodiments of a preset scenario performed by the first robot 100a and the second robot 100b in response to a communication failure occurring during collaborative driving will be described in detail.

제 1 실시예는, 협업 주행 수행 중에, 제1 로봇(100a) 및 제2 로봇(100b) 사이에, 제1 네트워크 또는 제2 네트워크의 연결이 해제된 경우의 시나리오이다. 이 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 협업 주행을 계속 수행할 수 있다. 즉, 제1 로봇(100a) 및 제2 로봇(100b) 사이에 제1 네트워크 또는 제2 네트워크의 연결이 해제되었다는 것은, 제1 로봇(100a) 및 제2 로봇(100b) 사이에 제1 네트워크 및 제2 네트워크 중 하나는 연결되어 있다는 것을 의미한다. The first embodiment is a scenario in which the first network or the second network is disconnected between the first robot 100a and the second robot 100b during collaborative driving. In this case, the first robot 100a and the second robot 100b may continue to perform cooperative driving. That is, the disconnection of the first network or the second network between the first robot 100a and the second robot 100b means that the first network and the second network between the first robot 100a and the second robot 100b This means that one of the second networks is connected.

제2 실시예는, 협업 주행 수행 중에, 제1 로봇(100a) 및 제2 로봇(100b) 사이에, 제1 네트워크 및 제2 네트워크의 연결이 모두 해제된 경우의 시나리오이다. 이 경우, 제1 로봇(100a)은, 협업 주행 모드를 해제한 다음, 단독 주행을 수행할 수 있다. 또한, 제2 로봇(100b)은, 협업 주행 모드를 해제한 다음, 제2 충전대(100b)에 복귀할 수 있다.The second embodiment is a scenario in which all connections between the first network and the second network are released between the first robot 100a and the second robot 100b during collaborative driving. In this case, the first robot 100a may release the collaborative driving mode and then perform independent driving. In addition, the second robot 100b may release the cooperative driving mode and then return to the second charging base 100b.

이하, 도 29를 참조하여, 이동 로봇 시스템(1)이, 협업 주행 수행 중에 발생한 오류, 키드냅 또는 통신 장애에 대응하여, 미리 설정된 시나리오를 수행하는 방법을 설명한다.Hereinafter, with reference to FIG. 29 , a method for the mobile robot system 1 to perform a preset scenario in response to an error, kid-nap, or communication failure occurring during collaborative driving will be described.

도 29를 참조하면, 단계(S100)에서, 제1 로봇(100a) 및 제2 로봇(100b)은 네트워크(50)를 이용하여 협업 주행 모드에 진입할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)이 협업 주행 모드에 진입하는 과정은 전술하였으므로, 구체적인 내용은 생략한다.Referring to FIG. 29 , in step S100 , the first robot 100a and the second robot 100b may enter a cooperative driving mode using the network 50 . Since the process of entering the cooperative driving mode by the first robot 100a and the second robot 100b has been described above, a detailed description thereof will be omitted.

단계(S200)에서, 제1 로봇(100a) 및 제2 로봇(100b)은, 서로의 위치를 파악하여 협업 주행을 수행할 수 있다. 다시 도 14를 참조하면, 제1 로봇(100a)은, 제2 로봇(100b)의 주행 이전에 주행하여 청소 대상 구역(Z4)의 오염물을 흡입할 수 있다. 여기서, 오염물은 청소 대상 구역(Z4)에 존재하는 먼지, 이물질, 쓰레기 등 흡입이 가능한 모든 물질을 포함하는 개념일 수 있다. 또한, 제2 로봇(100b)은, 제1 로봇(100a)이 주행한 경로(L1)를 따라 주행하여 청소 대상 구역(Z4)의 바닥을 닦을 수 있다. 여기서, 제2 로봇(100b)이 바닥을 닦는다는 것은, 제1 로봇(100a)이 흡입할 수 없는 액체 등의 물질을, 제2 로봇(100b)이 물 걸레질하여 닦는 것을 의미할 수 있다.In step S200, the first robot 100a and the second robot 100b may perform cooperative driving by recognizing each other's location. Referring back to FIG. 14 , the first robot 100a may travel prior to the travel of the second robot 100b and suck contaminants from the area to be cleaned Z4 . Here, the contaminants may be a concept including all substances that can be inhaled, such as dust, foreign substances, and trash existing in the area to be cleaned (Z4). In addition, the second robot 100b may wipe the floor of the area to be cleaned Z4 by traveling along the path L1 along which the first robot 100a traveled. Here, that the second robot 100b wipes the floor may mean that the second robot 100b wipes a substance such as a liquid that cannot be sucked by the first robot 100a by wiping with a damp cloth.

단계(S300)에서, 제1 로봇(100a) 및 제2 로봇(100b)은, 협업 주행 수행 중에 발생한 오류, 키드냅 또는 통신 장애에 대응하여, 협업 주행 모드를 해제할지 결정할 수 있다. 즉, 협업 주행 수행 중에, 제1 로봇(100a) 및 제2 로봇(100b) 중 적어도 하나에 오류, 키드냅 또는 통신 장애가 발생할 수 있다. 이 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 협업 주행 수행 중에 발생한 오류, 키드냅 또는 통신 장애에 대응하여, 미리 설정된 시나리오를 수행할 수 있다. 협업 주행 수행 중에 발생한 오류, 키드냅 또는 통신 장애에 대응한, 미리 설정된 시나리오에 관하여는, 전술하였으므로, 구체적인 설명은 생략한다.In step S300, the first robot 100a and the second robot 100b may determine whether to release the collaborative driving mode in response to an error, a kid-nap, or a communication failure occurring during cooperative driving. That is, while performing cooperative driving, an error, kidnapping, or communication failure may occur in at least one of the first robot 100a and the second robot 100b. In this case, the first robot 100a and the second robot 100b may perform preset scenarios in response to errors, kidnaps, or communication failures that occur during collaborative driving. Since the preset scenarios corresponding to errors, kidnaps, or communication failures occurring during collaborative driving have been described above, detailed descriptions thereof will be omitted.

한편, 이동 로봇 시스템(1)은, 제1 로봇(100a) 및 제2 로봇(100b)을 포함할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)은, 각각, 외관을 형성하는 본체(110), 그리고 본체(110)의 내부에 구비되고, 네트워크(50)를 이용하여 다른 이동 로봇과 데이터를 주고받는 통신부(1100)를 포함할 수 있다. 또한, 제1 로봇(100a)은 본체(110)의 일측에 장착되어, 청소 대상 구역의 오염물을 흡입하는 청소부(120)를 포함할 수 있다. 또한, 제2 로봇(100b)은 본체(110)의 일측에 장착되어, 청소 대상 구역의 바닥을 닦는 걸레부(미도시)를 포함할 수 있다. 한편, 제1 로봇(100a) 및 제2 로봇(100b)을 연결하는 네트워크(50)는, 제1 네트워크, 그리고 제2 네트워크를 포함할 수 있다. 제1 네트워크는, 제1 로봇(100a)과 제2 로봇(100b)이, 청소 대상 구역의 맵 정보를 공유하기 위한 네트워크일 수 있다. 여기서, 제1 네트워크는 와이파이일 수 있다. 또한, 제2 네트워크는, 제1 로봇(100a)과 제2 로봇(100b)이, 제1 로봇(100a) 및 제2 로봇(100b) 사이의 이격 거리를 파악하기 위한 네트워크일 수 있다. 여기서, 제2 네트워크는 UWB일 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)은, 이러한 구성으로부터, 단독 주행, 또는 협업 주행을 수행할 수 있다. 또한, 제1 로봇(100a) 및 제2 로봇(100b)은, 이러한 구성으로부터, 협업 주행 수행 중에 발생한 오류, 키드냅 또는 통신 장애에 대응하여, 미리 설정된 시나리오를 수행할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)이 수행하는, 협업 주행 수행 중에 발생한 오류, 키드냅 또는 통신 장애에 대응한, 미리 설정된 시나리오에 관하여는, 전술하였으므로, 구체적인 설명은 생략한다.Meanwhile, the mobile robot system 1 may include a first robot 100a and a second robot 100b. The first robot 100a and the second robot 100b are provided inside the main body 110 forming the exterior and the main body 110, respectively, and communicate data with other mobile robots using the network 50. It may include a communication unit 1100 for sending and receiving. In addition, the first robot 100a may include a cleaning unit 120 mounted on one side of the main body 110 and sucking contaminants from an area to be cleaned. In addition, the second robot 100b may include a mop unit (not shown) mounted on one side of the main body 110 to wipe the floor of the area to be cleaned. Meanwhile, the network 50 connecting the first robot 100a and the second robot 100b may include a first network and a second network. The first network may be a network in which the first robot 100a and the second robot 100b share map information of an area to be cleaned. Here, the first network may be Wi-Fi. In addition, the second network may be a network for determining the distance between the first robot 100a and the second robot 100b and the first robot 100a and the second robot 100b. Here, the second network may be UWB. From this configuration, the first robot 100a and the second robot 100b can perform independent travel or cooperative travel. In addition, from this configuration, the first robot 100a and the second robot 100b may perform preset scenarios in response to errors, kidnaps, or communication failures occurring during collaborative driving. Since the preset scenarios performed by the first robot 100a and the second robot 100b corresponding to errors, kidnaps, or communication failures occurring during collaborative driving have been described above, detailed descriptions thereof will be omitted.

이하, 도 30 내지 도 34를 참조하여, 협업 주행 중에 감지한 장애물에 대응하여, 미리 설정된 시나리오를 수행하는 이동 로봇 시스템(1)의 <실시예 3>을 설명한다. Hereinafter, referring to FIGS. 30 to 34 , <Example 3> of the mobile robot system 1 that performs a preset scenario in response to an obstacle detected during collaborative driving will be described.

제1 로봇(100a) 및 제2 로봇(100b)은 네트워크(50)를 이용하여 협업 주행 모드에 진입할 수 있다. 도 30을 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)이 협업 주행 모드에 진입한 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 청소 대상 구역(X1)을 복수의 단위 구역으로 분할(예를 들어, 청소 대상 구역(X1)을 제1 단위 구역(A1), 및 제2 단위 구역(A2)으로 분할)하여, 각 단위 구역마다 협업 주행할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)이 협업 주행을 하는 경우, 제1 로봇(100a)은, 제2 로봇(100b)의 주행 이전에 주행하여 복수의 단위 구역 중 어느 하나의 단위 구역(예를 들어, 제1 단위 구역(A1))의 오염물을 흡입할 수 있다. 여기서, 오염물은, 각 단위 구역에 존재하는, 먼지, 이물질, 쓰레기 등 흡입이 가능한 모든 물질을 포함하는 개념일 수 있다. 또한, 제2 로봇(100b)은, 제1 로봇(100a)이 주행한 경로(L1)를 따라 주행하여 복수의 단위 구역 중 어느 하나의 단위 구역(제1 로봇(100a)이 오염물을 흡입한 단위 구역인, 제1 단위 구역(A1))의 바닥을 닦을 수 있다. 여기서, 제2 로봇(100b)이 바닥을 닦는다는 것은, 제1 로봇(100a)이 흡입할 수 없는 액체 등의 물질을, 제2 로봇(100b)이 물 걸레질하여 닦는 것을 의미할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)이, 분할된 단위 구역마다 협업 주행하는 구체적인 방법은, 전술하였으므로 생략한다. The first robot 100a and the second robot 100b may enter a cooperative driving mode using the network 50 . Referring to FIG. 30 , when the first robot 100a and the second robot 100b enter the cooperative driving mode, the first robot 100a and the second robot 100b clean the area X1 to be cleaned. Divided into a plurality of unit areas (for example, the cleaning target area X1 is divided into a first unit area A1 and a second unit area A2), and cooperative driving can be performed for each unit area. When the first robot 100a and the second robot 100b perform cooperative travel, the first robot 100a travels before the travel of the second robot 100b and travels in any one unit area among a plurality of unit areas. (For example, pollutants in the first unit area A1) may be inhaled. Here, contaminants may be a concept including all substances that can be inhaled, such as dust, foreign matter, and garbage, existing in each unit area. In addition, the second robot 100b travels along the path L1 on which the first robot 100a travels, and in one unit area among a plurality of unit areas (a unit in which the first robot 100a sucks pollutants) The floor of the zone, the first unit zone A1) may be wiped. Here, that the second robot 100b wipes the floor may mean that the second robot 100b wipes a substance such as a liquid that cannot be sucked by the first robot 100a by wiping with a damp cloth. The specific method for the first robot 100a and the second robot 100b to travel cooperatively for each divided unit area is omitted because it has been described above.

제1 로봇(100a) 및 제2 로봇(100b) 중 적어도 하나는, 복수의 단위 구역 중 어느 하나의 단위 구역에서 협업 주행 중에, 장애물을 감지할 수 있다. 구체적으로, 제1 로봇(100a) 및 제2 로봇(100b) 중 적어도 하나는, 분할된 구역의 사이(예를 들어, 제1 단위 구역(A1)과 제2 단위 구역(A2)의 사이), 또는 분할된 구역의 내부(예를 들어, 제1 단위 구역(A1)의 내부)에 존재하는 장애물을 감지할 수 있다. 여기서, 분할된 구역의 사이에 존재하는 장애물을 제1 장애물(OB1), 그리고 분할된 구역의 내부에 존재하는 장애물을 제2 장애물(OB2)로 정의한다. 제1 장애물(OB1) 또는 제2 장애물(OB2)은, 문턱, 카펫, 또는 낭떠러지일 수 있다. 구체적으로, 제1 장애물(OB1) 또는 제2 장애물(OB2)은, 제1 로봇(100a) 및 제2 로봇(100b)이 등반할 수 있는 장애물로서, 미리 설정된 범위의, 높이 또는 깊이로 형성된 장애물일 수 있다. 예를 들어, 제1 로봇(100a)은, 5[mm] 이상의 높이로 형성된 장애물을, 등반할 수 있는 장애물로서 인식할 수 있다. 또한, 제2 로봇(100b)은, 4[mm] 이상의 높이로 형성된 장애물을, 등반할 수 있는 장애물로서 인식할 수 있다. 또한, 제1 로봇(100a)은, 단독 주행의 경우, 30[mm] 이상의 깊이로 형성된 장애물을, 등반할 수 있는 장애물로서 인식할 수 있다. 또한, 제1 로봇(100a)은, 협업 주행의 경우, 10[mm] 이상의 깊이로 형성된 장애물을, 등반할 수 있는 장애물로서 인식할 수 있다. 또한, 제2 로봇(100b)은, 10[mm] 이상의 깊이로 형성된 장애물을, 등반할 수 있는 장애물로서 인식할 수 있다. 여기서, 제1 로봇(100a) 및 제2 로봇(100b)이 장애물을 등반한다는 것은, 문턱을 넘거나, 카펫을 넘거나, 낭떠러지의 틈을 지나가거나, 또는 낭떠러지의 경사면을 내려갔다가 올라가는 것을 의미할 수 있다.At least one of the first robot 100a and the second robot 100b may detect an obstacle while cooperatively traveling in any one unit area among a plurality of unit areas. Specifically, at least one of the first robot 100a and the second robot 100b is between the divided areas (for example, between the first unit area A1 and the second unit area A2), Alternatively, an obstacle existing inside the divided area (eg, inside the first unit area A1) may be detected. Here, an obstacle existing between the divided areas is defined as a first obstacle OB1, and an obstacle existing inside the divided area is defined as a second obstacle OB2. The first obstacle OB1 or the second obstacle OB2 may be a threshold, a carpet, or a cliff. Specifically, the first obstacle OB1 or the second obstacle OB2 is an obstacle that the first robot 100a and the second robot 100b can climb, and is formed in a preset range, height or depth. can be For example, the first robot 100a may recognize an obstacle formed at a height of 5 [mm] or more as an obstacle that can be climbed. In addition, the second robot 100b may recognize an obstacle formed at a height of 4 [mm] or more as an obstacle that can be climbed. In addition, the first robot 100a can recognize an obstacle formed at a depth of 30 [mm] or more as an obstacle that can be climbed in the case of traveling alone. Also, in the case of collaborative driving, the first robot 100a may recognize an obstacle formed at a depth of 10 [mm] or more as an obstacle that can be climbed. In addition, the second robot 100b can recognize an obstacle formed at a depth of 10 [mm] or more as an obstacle that can be climbed. Here, climbing an obstacle by the first robot 100a and the second robot 100b means crossing over a threshold, crossing a carpet, passing through a gap in a cliff, or going down and up the slope of a cliff. can

이하, 제1 로봇(100a) 및 제2 로봇(100b) 중 적어도 하나가, 제1 장애물(OB1) 또는 제2 장애물(OB2)을 감지한 경우 수행하는, 미리 설정된 시나리오에 관한, 제1 실시예 내지 제4 실시예를 구체적으로 설명한다. 도 31 내지 도 34에서, 도면 부호 M1 내지 M17은 제1 로봇(100a)의 주행 경로이며, 도면 부호 N1 내지 N13은 제2 로봇(100b)의 주행 경로이다. Hereinafter, a first embodiment of a preset scenario performed when at least one of the first robot 100a and the second robot 100b detects the first obstacle OB1 or the second obstacle OB2. to fourth embodiments will be described in detail. 31 to 34, reference numerals M1 to M17 denote travel paths of the first robot 100a, and reference numerals N1 to N13 denote travel paths of the second robot 100b.

제1 실시예는, 도 31을 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)이, 제1 단위 구역(A1)에서 협업 주행(M1, N1) 중에, 제1 장애물(OB1)을 감지한 경우의 시나리오이다. 이 경우, 제1 로봇(100a)은, 제1 장애물(OB1)을 회피(M2)하여 제1 단위 구역(A1)에서의 협업 주행을 완료(M3)한 다음, 제2 단위 구역(A2)에 진입(M4)하여 단독 주행(M5)을 할 수 있다. 제1 실시예에서, 제2 로봇(100b)은, 제1 장애물(OB1)을 회피(M2)하여 제1 단위 구역(A1)에서의 협업 주행을 완료(M3)한 다음, 제2 충전대(100b)로 복귀(N4)할 수 있다. 한편, 제1 실시예의 다른 실시예로서, 제1 로봇(100a)이, 제1 장애물(OB1)을 회피하지 않고 제2 단위 구역(A2)에 진입하고, 제2 로봇(100b)은, 제1 단위 구역(A1)에서의 바닥 닦기를 완료 한 다음, 제1 로봇(100a)이 제2 단위 구역(A2)의 오염물 흡입을 완료할 때까지 대기하는 것이 고려될 수 있다.In the first embodiment, referring to FIG. 31 , the first robot 100a and the second robot 100b, during cooperative driving M1 and N1 in the first unit area A1, encounter a first obstacle OB1. This is a scenario in which it is detected. In this case, the first robot 100a avoids the first obstacle OB1 (M2), completes the cooperative driving in the first unit area A1 (M3), and then returns to the second unit area A2. You can drive alone (M5) by entering (M4) . In the first embodiment, the second robot 100b completes cooperative driving in the first unit area A1 by avoiding the first obstacle OB1 (M2) (M3), and then the second charging stand 100b ) to return (N4). Meanwhile, as another embodiment of the first embodiment, the first robot 100a enters the second unit area A2 without avoiding the first obstacle OB1, and the second robot 100b After completing floor wiping in unit area A1, waiting until the first robot 100a completes suctioning of contaminants in second unit area A2 may be considered.

제2 실시예는, 도 32를 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)이, 제1 단위 구역(A1)에서 협업 주행(M6, N5) 중에, 제1 로봇(100a)이, 제1 장애물(OB1)을 감지하지 못하여 제2 단위 구역(A2)에 진입(M7)하고, 제2 로봇(100b)이, 제1 장애물(OB1)을 감지하여 제1 장애물(OB1)을 회피(N6)한 경우의 시나리오이다. 이 경우, 제2 로봇(100b)은, 제1 단위 구역(A1)의 바닥 닦기를 완료(N7)한 다음, 제1 로봇(100a)에, 제2 단위 구역(A2)에 진입하지 못한다는 알림을 송신할 수 있다. 또한, 제1 로봇(100a)은, 제2 단위 구역(A2)의 오염물 흡입을 완료(M8)한 다음, 제2 로봇(100b)이 알림을 송신한 위치(P1)로 이동(M9)할 수 있다. 제 2실시예에서, 제1 로봇(100a)이 제1 단위 구역(A1)의 오염물 흡입을 완료하지 못하고, 제2 단위 구역(A2)에 진입한 경우에도, 제2 로봇(100b)은, 제1 단위 구역(A1)의 바닥 닦기를 완료할 수 있다. 또한, 제2 실시예에서, 제2 로봇(100b)은, 제1 로봇(100a)이 오염물 흡입을 완료한 제2 단위 구역(A2)의 바닥을 닦지 않을 수 있다. 상술한 제2 실시예에서의 제1 로봇(100a) 및 제2 로봇(100b)의 주행은, 단독 주행이 아닌, 협업 주행 모드 내에서의 주행으로 이해되어야 할 것이다. 한편, 제2 실시예에서, 제2 로봇(100b)은, 제1 장애물(OB1)을 감지하고, 제1 로봇(100a)에 제1 장애물(OB1)에 관한 정보를 송신할 수 있다. 그리고, 제1 로봇(100a)은, 제2 로봇(100b)으로부터 제1 장애물(OB1)에 관한 정보를 수신하여, 메모리(1700)에 저장된 맵에, 제1 장애물(OB1)을 병합할 수 있다. 즉, 제2 로봇(100b)은, 제1 장애물(OB1)에 관한 정보를, 제1 로봇(100a)과 공유할 수 있다.In the second embodiment, referring to FIG. 32, the first robot 100a and the second robot 100b, during cooperative driving (M6, N5) in the first unit area (A1), the first robot (100a) does not detect the first obstacle OB1 and enters the second unit area A2 (M7), and the second robot 100b detects the first obstacle OB1 and moves the first obstacle OB1 This is a scenario in case of avoiding (N6). In this case, the second robot 100b finishes wiping the floor of the first unit area A1 (N7), and then informs the first robot 100a that it cannot enter the second unit area A2. can send In addition, the first robot 100a may complete (M8) inhaling contaminants in the second unit area (A2) and then move (M9) to the position (P1) where the second robot (100b) sent a notification. there is. In the second embodiment, even when the first robot 100a enters the second unit area A2 without completing suction of pollutants in the first unit area A1, the second robot 100b Can complete floor cleaning in 1 unit area (A1). Also, in the second embodiment, the second robot 100b may not wipe the floor of the second unit area A2 where the first robot 100a has finished sucking contaminants. The driving of the first robot 100a and the second robot 100b in the above-described second embodiment should be understood as driving within a cooperative driving mode, not independent driving. Meanwhile, in the second embodiment, the second robot 100b may detect the first obstacle OB1 and transmit information about the first obstacle OB1 to the first robot 100a. Then, the first robot 100a receives information about the first obstacle OB1 from the second robot 100b, and stores the first obstacle OB1 in a map stored in the memory 1700. can be merged That is, the second robot 100b can share information about the first obstacle OB1 with the first robot 100a.

제3 실시예는, 도 33을 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)이, 제1 단위 구역(A1)에서 협업 주행(M10, N8) 중에, 제1 장애물(OB1)을 감지하지 못하여 제2 단위 구역(A2)에 진입(M11, N9)한 경우의 시나리오이다. 이 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 제2 단위 구역(A2)에서 협업 주행(M12, N10)을 할 수 있다. In the third embodiment, referring to FIG. 33 , the first robot 100a and the second robot 100b, during cooperative driving M10 and N8 in the first unit area A1, encounter a first obstacle OB1. This is a scenario in which the second unit area A2 is entered (M11, N9) without detecting . In this case, the first robot 100a and the second robot 100b may perform cooperative driving (M12, N10) in the second unit area A2.

제4 실시예는, 도 34를 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)이, 제1 단위 구역(A1)에서 협업 주행(M13, N11) 중에, 제1 로봇(100a)이, 제2 장애물(OB2)을 감지하여 제2 장애물을 회피(M14)한 다음, 제2 단위 구역(A2)으로 이동(M15)하고, 제2 로봇(100b)은, 제2 장애물(OB2)을 감지하지 못하여 제2 장애물(OB2)을 회피하지 못한(N12) 경우의 시나리오이다. 이 경우, 제2 로봇(100b)은, 제1 단위 구역(A1)의 바닥 닦기를 완료(N13)한 다음, 제1 로봇(100a)에, 제2 단위 구역(A2)에 진입하지 못한다는 알림을 송신할 수 있다. 또한, 제1 로봇(100a)은, 제2 단위 구역(A2)의 오염물 흡입을 완료(M16)한 다음, 제2 로봇(100b)이 알림을 송신한 위치로 이동(M17)할 수 있다. 제 4실시예에서, 제1 로봇(100a)이 제1 단위 구역(A1)의 오염물을 흡입을 완료하지 못하고, 제2 단위 구역(A2)으로 이동한 경우임에도, 제2 로봇(100b)은, 제1 단위 구역(A1)의 바닥 닦기를 완료할 수 있다. 또한, 제2 로봇(100b)은, 제1 로봇(100a)이 오염물 흡입을 완료한 제2 단위 구역(A2)의 바닥을 닦지 않을 수 있다. 상술한 제4 실시예에서의 제1 로봇(100a) 및 제2 로봇(100b)의 주행은, 단독 주행이 아닌, 협업 주행 모드 내에서의 주행으로 이해되어야 할 것이다. 한편, 제4 실시예에서, 제1 로봇(100a)은, 제2 장애물(OB2)을 감지하고, 제2 로봇(100b)에 제2 장애물(OB2)에 관한 정보를 송신할 수 있다. 그리고, 제2 로봇(100b)은, 제1 로봇(100a)으로부터 제2 장애물(OB2)에 관한 정보를 수신하여, 메모리(1700)에 저장된 맵에, 제2 장애물(OB2)을 병합할 수 있다. 즉, 제1 로봇(100a)은, 제2 장애물(OB2)에 관한 정보를, 제2 로봇(100b)과 공유할 수 있다.Referring to FIG. 34, in the fourth embodiment, the first robot 100a and the second robot 100b, during cooperative travel (M13, N11) in the first unit area A1, the first robot 100a Detects the second obstacle OB2, avoids the second obstacle (M14), moves to the second unit area A2 (M15), and the second robot 100b moves to the second obstacle OB2 This is a scenario in which the second obstacle OB2 is not avoided (N12) by not detecting . In this case, the second robot 100b finishes wiping the floor of the first unit area A1 (N13), and then informs the first robot 100a that it cannot enter the second unit area A2. can send In addition, the first robot 100a may complete suctioning of pollutants in the second unit area A2 (M16) and then move to the location where the second robot 100b sent the notification (M17). In the fourth embodiment, even when the first robot 100a moves to the second unit area A2 without completing suction of the pollutants in the first unit area A1, the second robot 100b, The floor wiping of the first unit area A1 may be completed. Also, the second robot 100b may not wipe the floor of the second unit area A2 where the first robot 100a has finished sucking contaminants. The driving of the first robot 100a and the second robot 100b in the above-described fourth embodiment should be understood as driving in a cooperative driving mode, not solo driving. Meanwhile, in the fourth embodiment, the first robot 100a may detect the second obstacle OB2 and transmit information about the second obstacle OB2 to the second robot 100b. Then, the second robot 100b receives information about the second obstacle OB2 from the first robot 100a, and stores the second obstacle OB2 in the map stored in the memory 1700. can be merged That is, the first robot 100a can share information about the second obstacle OB2 with the second robot 100b.

이하, 도 35를 참조하여, 이동 로봇 시스템(1)이, 협업 주행 중에 감지한 장애물에 대응하여, 미리 설정된 시나리오를 수행하는 방법을 설명한다.Hereinafter, referring to FIG. 35 , a method for the mobile robot system 1 to perform a preset scenario in response to an obstacle detected during collaborative driving will be described.

도 35를 참조하면, 단계(S100)에서, 제1 로봇(100a) 및 제2 로봇(100b)은 네트워크(50)를 이용하여 협업 주행 모드에 진입할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)이 협업 주행 모드에 진입하는 과정은 전술하였으므로, 구체적인 내용은 생략한다.Referring to FIG. 35 , in step S100 , the first robot 100a and the second robot 100b may enter a cooperative driving mode using the network 50 . Since the process of entering the cooperative driving mode by the first robot 100a and the second robot 100b has been described above, a detailed description thereof will be omitted.

단계(S200)에서, 다시 도 30을 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)은, 청소 대상 구역(X1)을 복수의 단위 구역으로 분할(예를 들어, 청소 대상 구역(X1)을 제1 단위 구역(A1), 및 제2 단위 구역(A2)으로 분할)하여, 각 단위 구역마다 협업 주행할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)이 협업 주행을 하는 경우, 제1 로봇(100a)은, 제2 로봇(100b)의 주행 이전에 주행하여 복수의 단위 구역 중 어느 하나의 단위 구역(예를 들어, 제1 단위 구역(A1))의 오염물을 흡입할 수 있다. 여기서, 오염물은, 각 단위 구역에 존재하는, 먼지, 이물질, 쓰레기 등 흡입이 가능한 모든 물질을 포함하는 개념일 수 있다. 또한, 제2 로봇(100b)은, 제1 로봇(100a)이 주행한 경로(L1)를 따라 주행하여 복수의 단위 구역 중 어느 하나의 단위 구역(제1 로봇(100a)이 오염물을 흡입한 단위 구역인, 제1 단위 구역(A1))의 바닥을 닦을 수 있다. 여기서, 제2 로봇(100b)이 바닥을 닦는다는 것은, 제1 로봇(100a)이 흡입할 수 없는 액체 등의 물질을, 제2 로봇(100b)이 물 걸레질하여 닦는 것을 의미할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)이, 분할된 단위 구역마다 협업 주행하는 구체적인 방법은, 전술하였으므로 생략한다. In step S200, again referring to FIG. 30 , the first robot 100a and the second robot 100b divide the cleaning target area X1 into a plurality of unit areas (for example, the cleaning target area ( X1) is divided into a first unit area (A1) and a second unit area (A2)), and cooperative driving can be performed in each unit area. When the first robot 100a and the second robot 100b perform cooperative travel, the first robot 100a travels before the travel of the second robot 100b and travels in any one unit area among a plurality of unit areas. (For example, pollutants in the first unit area A1) may be inhaled. Here, contaminants may be a concept including all substances that can be inhaled, such as dust, foreign matter, and garbage, existing in each unit area. In addition, the second robot 100b travels along the path L1 on which the first robot 100a travels, and in one unit area among a plurality of unit areas (a unit in which the first robot 100a sucks pollutants) The floor of the zone, the first unit zone A1) may be wiped. Here, that the second robot 100b wipes the floor may mean that the second robot 100b wipes a substance such as a liquid that cannot be sucked by the first robot 100a by wiping with a damp cloth. The specific method for the first robot 100a and the second robot 100b to travel cooperatively for each divided unit area is omitted because it has been described above.

단계(S300)에서, 제1 로봇(100a) 및 제2 로봇(100b) 중 적어도 하나는, 복수의 단위 구역 중 어느 하나의 단위 구역에서 협업 주행 중에, 장애물을 감지할 수 있다. 구체적으로, 제1 로봇(100a) 및 제2 로봇(100b) 중 적어도 하나는, 분할된 구역의 사이(예를 들어, 제1 단위 구역(A1)과 제2 단위 구역(A2)의 사이), 또는 분할된 구역의 내부(예를 들어, 제1 단위 구역(A1)의 내부)에 존재하는 장애물을 감지할 수 있다. 여기서, 분할된 구역의 사이에 존재하는 장애물을 제1 장애물(OB1), 그리고 분할된 구역의 내부에 존재하는 장애물을 제2 장애물(OB2)로 정의한다. 제1 장애물(OB1) 또는 제2 장애물(OB2)은, 문턱, 카펫, 또는 낭떠러지일 수 있다. 구체적으로, 제1 장애물(OB1) 또는 제2 장애물(OB2)은, 제1 로봇(100a) 및 제2 로봇(100b)이 등반할 수 있는 장애물로서, 미리 설정된 범위의, 높이 또는 깊이로 형성된 장애물일 수 있다. 예를 들어, 제1 로봇(100a)은, 5[mm] 이상의 높이로 형성된 장애물을, 등반할 수 있는 장애물로서 인식할 수 있다. 또한, 제2 로봇(100b)은, 4[mm] 이상의 높이로 형성된 장애물을, 등반할 수 있는 장애물로서 인식할 수 있다. 또한, 제1 로봇(100a)은, 단독 주행의 경우, 30[mm] 이상의 깊이로 형성된 장애물을, 등반할 수 있는 장애물로서 인식할 수 있다. 또한, 제1 로봇(100a)은, 협업 주행의 경우, 10[mm] 이상의 깊이로 형성된 장애물을, 등반할 수 있는 장애물로서 인식할 수 있다. 또한, 제2 로봇(100b)은, 10[mm] 이상의 깊이로 형성된 장애물을, 등반할 수 있는 장애물로서 인식할 수 있다. 여기서, 제1 로봇(100a) 및 제2 로봇(100b)이 장애물을 등반한다는 것은, 문턱을 넘거나, 카펫을 넘거나, 낭떠러지의 틈을 지나가거나, 또는 낭떠러지의 경사면을 내려갔다가 올라가는 것을 의미할 수 있다. 이하, 제1 로봇(100a) 및 제2 로봇(100b)이, 단계(S300)에서, 제1 로봇(100a) 및 제2 로봇(100b) 중 적어도 하나가, 제1 장애물(OB1) 또는 제2 장애물(OB2)을 감지한 경우 수행하는, 미리 설정된 시나리오에 관한, 제1 실시예 내지 제4 실시예를 구체적으로 설명한다.In step S300, at least one of the first robot 100a and the second robot 100b may detect an obstacle while cooperatively traveling in any one unit area among a plurality of unit areas. Specifically, at least one of the first robot 100a and the second robot 100b is between the divided areas (for example, between the first unit area A1 and the second unit area A2), Alternatively, an obstacle existing inside the divided area (eg, inside the first unit area A1) may be detected. Here, an obstacle existing between the divided areas is defined as a first obstacle OB1, and an obstacle existing inside the divided area is defined as a second obstacle OB2. The first obstacle OB1 or the second obstacle OB2 may be a threshold, a carpet, or a cliff. Specifically, the first obstacle OB1 or the second obstacle OB2 is an obstacle that the first robot 100a and the second robot 100b can climb, and is formed in a preset range, height or depth. can be For example, the first robot 100a may recognize an obstacle formed at a height of 5 [mm] or more as an obstacle that can be climbed. In addition, the second robot 100b may recognize an obstacle formed at a height of 4 [mm] or more as an obstacle that can be climbed. In addition, the first robot 100a can recognize an obstacle formed at a depth of 30 [mm] or more as an obstacle that can be climbed in the case of traveling alone. Also, in the case of collaborative driving, the first robot 100a may recognize an obstacle formed at a depth of 10 [mm] or more as an obstacle that can be climbed. In addition, the second robot 100b can recognize an obstacle formed at a depth of 10 [mm] or more as an obstacle that can be climbed. Here, climbing an obstacle by the first robot 100a and the second robot 100b means crossing over a threshold, crossing a carpet, passing through a gap in a cliff, or going down and up the slope of a cliff. can Hereinafter, the first robot 100a and the second robot 100b, in step S300, at least one of the first robot 100a and the second robot 100b, the first obstacle OB1 or the second robot 100b. The first to fourth embodiments of a preset scenario performed when an obstacle OB2 is detected will be described in detail.

제1 실시예는, 도 31을 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)이, 제1 단위 구역(A1)에서 협업 주행(M1, N1) 중에, 제1 장애물(OB1)을 감지한 경우의 시나리오이다. 이 경우, 제1 로봇(100a)은, 제1 장애물(OB1)을 회피(M2)하여 제1 단위 구역(A1)에서의 협업 주행을 완료(M3)한 다음, 제2 단위 구역(A2)에 진입(M4)하여 단독 주행(M5)을 할 수 있다. 제1 실시예에서, 제2 로봇(100b)은, 제1 장애물(OB1)을 회피(M2)하여 제1 단위 구역(A1)에서의 협업 주행을 완료(M3)한 다음, 제2 충전대(100b)로 복귀(N4)할 수 있다. 한편, 제1 실시예의 다른 실시예로서, 제1 로봇(100a)이, 제1 장애물(OB1)을 회피하지 않고 제2 단위 구역(A2)에 진입하고, 제2 로봇(100b)은, 제1 단위 구역(A1)에서의 바닥 닦기를 완료 한 다음, 제1 로봇(100a)이 제2 단위 구역(A2)의 오염물 흡입을 완료할 때까지 대기하는 것이 고려될 수 있다.In the first embodiment, referring to FIG. 31 , the first robot 100a and the second robot 100b, during cooperative driving M1 and N1 in the first unit area A1, encounter a first obstacle OB1. This is a scenario in which it is detected. In this case, the first robot 100a avoids the first obstacle OB1 (M2), completes the cooperative driving in the first unit area A1 (M3), and then returns to the second unit area A2. You can drive alone (M5) by entering (M4) . In the first embodiment, the second robot 100b completes cooperative driving in the first unit area A1 by avoiding the first obstacle OB1 (M2) (M3), and then the second charging stand 100b ) to return (N4). Meanwhile, as another embodiment of the first embodiment, the first robot 100a enters the second unit area A2 without avoiding the first obstacle OB1, and the second robot 100b After completing floor wiping in unit area A1, waiting until the first robot 100a completes suctioning of contaminants in second unit area A2 may be considered.

제2 실시예는, 도 32를 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)이, 제1 단위 구역(A1)에서 협업 주행(M6, N5) 중에, 제1 로봇(100a)이, 제1 장애물(OB1)을 감지하지 못하여 제2 단위 구역(A2)에 진입(M7)하고, 제2 로봇(100b)이, 제1 장애물(OB1)을 감지하여 제1 장애물(OB1)을 회피(N6)한 경우의 시나리오이다. 이 경우, 제2 로봇(100b)은, 제1 단위 구역(A1)의 바닥 닦기를 완료(N7)한 다음, 제1 로봇(100a)에, 제2 단위 구역(A2)에 진입하지 못한다는 알림을 송신할 수 있다. 또한, 제1 로봇(100a)은, 제2 단위 구역(A2)의 오염물 흡입을 완료(M8)한 다음, 제2 로봇(100b)이 알림을 송신한 위치(P1)로 이동(M9)할 수 있다. 제 2실시예에서, 제1 로봇(100a)이 제1 단위 구역(A1)의 오염물 흡입을 완료하지 못하고, 제2 단위 구역(A2)에 진입한 경우에도, 제2 로봇(100b)은, 제1 단위 구역(A1)의 바닥 닦기를 완료할 수 있다. 또한, 제2 실시예에서, 제2 로봇(100b)은, 제1 로봇(100a)이 오염물 흡입을 완료한 제2 단위 구역(A2)의 바닥을 닦지 않을 수 있다. 상술한 제2 실시예에서의 제1 로봇(100a) 및 제2 로봇(100b)의 주행은, 단독 주행이 아닌, 협업 주행 모드 내에서의 주행으로 이해되어야 할 것이다. 한편, 제2 실시예에서, 제2 로봇(100b)은, 제1 장애물(OB1)을 감지하고, 제1 로봇(100a)에 제1 장애물(OB1)에 관한 정보를 송신할 수 있다. 그리고, 제1 로봇(100a)은, 제2 로봇(100b)으로부터 제1 장애물(OB1)에 관한 정보를 수신하여, 메모리(1700)에 저장된 맵에, 제1 장애물(OB1)을 병합할 수 있다. 즉, 제2 로봇(100b)은, 제1 장애물(OB1)에 관한 정보를, 제1 로봇(100a)과 공유할 수 있다.In the second embodiment, referring to FIG. 32, the first robot 100a and the second robot 100b, during cooperative driving (M6, N5) in the first unit area (A1), the first robot (100a) does not detect the first obstacle OB1 and enters the second unit area A2 (M7), and the second robot 100b detects the first obstacle OB1 and moves the first obstacle OB1 This is a scenario in case of avoiding (N6). In this case, the second robot 100b finishes wiping the floor of the first unit area A1 (N7), and then informs the first robot 100a that it cannot enter the second unit area A2. can send In addition, the first robot 100a may complete (M8) inhaling contaminants in the second unit area (A2) and then move (M9) to the position (P1) where the second robot (100b) sent a notification. there is. In the second embodiment, even when the first robot 100a enters the second unit area A2 without completing suction of pollutants in the first unit area A1, the second robot 100b Can complete floor cleaning in 1 unit area (A1). Also, in the second embodiment, the second robot 100b may not wipe the floor of the second unit area A2 where the first robot 100a has finished sucking contaminants. The driving of the first robot 100a and the second robot 100b in the above-described second embodiment should be understood as driving within a cooperative driving mode, not independent driving. Meanwhile, in the second embodiment, the second robot 100b may detect the first obstacle OB1 and transmit information about the first obstacle OB1 to the first robot 100a. Then, the first robot 100a receives information about the first obstacle OB1 from the second robot 100b, and stores the first obstacle OB1 in a map stored in the memory 1700. can be merged That is, the second robot 100b can share information about the first obstacle OB1 with the first robot 100a.

제3 실시예는, 도 33을 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)이, 제1 단위 구역(A1)에서 협업 주행(M10, N8) 중에, 제1 장애물(OB1)을 감지하지 못하여 제2 단위 구역(A2)에 진입(M11, N9)한 경우의 시나리오이다. 이 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 제2 단위 구역(A2)에서 협업 주행(M12, N10)을 할 수 있다. In the third embodiment, referring to FIG. 33 , the first robot 100a and the second robot 100b, during cooperative driving M10 and N8 in the first unit area A1, encounter a first obstacle OB1. This is a scenario in which the second unit area A2 is entered (M11, N9) without detecting . In this case, the first robot 100a and the second robot 100b may perform cooperative driving (M12, N10) in the second unit area A2.

제4 실시예는, 도 34를 참조하면, 제1 로봇(100a) 및 제2 로봇(100b)이, 제1 단위 구역(A1)에서 협업 주행(M13, N11) 중에, 제1 로봇(100a)이, 제2 장애물(OB2)을 감지하여 제2 장애물을 회피(M14)한 다음, 제2 단위 구역(A2)으로 이동(M15)하고, 제2 로봇(100b)은, 제2 장애물(OB2)을 감지하지 못하여 제2 장애물(OB2)을 회피하지 못한(N12) 경우의 시나리오이다. 이 경우, 제2 로봇(100b)은, 제1 단위 구역(A1)의 바닥 닦기를 완료(N13)한 다음, 제1 로봇(100a)에, 제2 단위 구역(A2)에 진입하지 못한다는 알림을 송신할 수 있다. 또한, 제1 로봇(100a)은, 제2 단위 구역(A2)의 오염물 흡입을 완료(M16)한 다음, 제2 로봇(100b)이 알림을 송신한 위치로 이동(M17)할 수 있다. 제 4실시예에서, 제1 로봇(100a)이 제1 단위 구역(A1)의 오염물을 흡입을 완료하지 못하고, 제2 단위 구역(A2)으로 이동한 경우임에도, 제2 로봇(100b)은, 제1 단위 구역(A1)의 바닥 닦기를 완료할 수 있다. 또한, 제2 로봇(100b)은, 제1 로봇(100a)이 오염물 흡입을 완료한 제2 단위 구역(A2)의 바닥을 닦지 않을 수 있다. 상술한 제4 실시예에서의 제1 로봇(100a) 및 제2 로봇(100b)의 주행은, 단독 주행이 아닌, 협업 주행 모드 내에서의 주행으로 이해되어야 할 것이다. 한편, 제4 실시예에서, 제1 로봇(100a)은, 제2 장애물(OB2)을 감지하고, 제2 로봇(100b)에 제2 장애물(OB2)에 관한 정보를 송신할 수 있다. 그리고, 제2 로봇(100b)은, 제1 로봇(100a)으로부터 제2 장애물(OB2)에 관한 정보를 수신하여, 메모리(1700)에 저장된 맵에, 제2 장애물(OB2)을 병합할 수 있다. 즉, 제1 로봇(100a)은, 제2 장애물(OB2)에 관한 정보를, 제2 로봇(100b)과 공유할 수 있다.Referring to FIG. 34, in the fourth embodiment, the first robot 100a and the second robot 100b, during cooperative travel (M13, N11) in the first unit area A1, the first robot 100a Detects the second obstacle OB2, avoids the second obstacle (M14), moves to the second unit area A2 (M15), and the second robot 100b moves to the second obstacle OB2 This is a scenario in which the second obstacle OB2 is not avoided (N12) by not detecting . In this case, the second robot 100b finishes wiping the floor of the first unit area A1 (N13), and then informs the first robot 100a that it cannot enter the second unit area A2. can send In addition, the first robot 100a may complete suctioning of pollutants in the second unit area A2 (M16) and then move to the location where the second robot 100b sent the notification (M17). In the fourth embodiment, even when the first robot 100a moves to the second unit area A2 without completing suction of the pollutants in the first unit area A1, the second robot 100b, The floor wiping of the first unit area A1 may be completed. Also, the second robot 100b may not wipe the floor of the second unit area A2 where the first robot 100a has finished sucking contaminants. The driving of the first robot 100a and the second robot 100b in the above-described fourth embodiment should be understood as driving in a cooperative driving mode, not solo driving. Meanwhile, in the fourth embodiment, the first robot 100a may detect the second obstacle OB2 and transmit information about the second obstacle OB2 to the second robot 100b. Then, the second robot 100b receives information about the second obstacle OB2 from the first robot 100a, and stores the second obstacle OB2 in the map stored in the memory 1700. can be merged That is, the first robot 100a can share information about the second obstacle OB2 with the second robot 100b.

한편, 이동 로봇 시스템(1)은, 제1 로봇(100a) 및 제2 로봇(100b)을 포함할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)은, 각각, 외관을 형성하는 본체(110), 그리고 본체(110)의 내부에 구비되고, 네트워크(50)를 이용하여 다른 이동 로봇과 데이터를 주고받는 통신부(1100)를 포함할 수 있다. 또한, 제1 로봇(100a)은 본체(110)의 일측에 장착되어, 청소 대상 구역의 오염물을 흡입하는 청소부(120)를 포함할 수 있다. 또한, 제2 로봇(100b)은 본체(110)의 일측에 장착되어, 청소 대상 구역의 바닥을 닦는 걸레부(미도시)를 포함할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)은, 단독 주행 모드에서 단독 주행하거나, 또는 네트워크(50)를 이용하여 협업 주행 모드에 진입하여 협업 주행을 수행할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)이 협업 주행 모드에 진입한 경우, 제1 로봇(100a) 및 제2 로봇(100b)은, 청소 대상 구역을 복수의 단위 구역으로 분할하여, 각 단위 구역마다 협업 주행할 수 있다. 한편, 제1 로봇(100a) 및 제2 로봇(100b) 중 적어도 하나는, 복수의 단위 구역 중 어느 하나의 단위 구역에서 협업 주행 중에, 장애물을 감지할 수 있다. 구체적으로, 제1 로봇(100a) 및 제2 로봇(100b) 중 적어도 하나는, 분할된 구역의 사이(예를 들어, 제1 단위 구역(A1)과 제2 단위 구역(A2)의 사이), 또는 분할된 구역의 내부(예를 들어, 제1 단위 구역(A1)의 내부)에 존재하는 장애물을 감지할 수 있다. 여기서, 분할된 구역의 사이에 존재하는 장애물을 제1 장애물(OB1), 그리고 분할된 구역의 내부에 존재하는 장애물을 제2 장애물(OB2)로 정의한다. 제1 장애물(OB1) 또는 제2 장애물(OB2)은, 문턱, 카펫, 또는 낭떠러지일 수 있다. 구체적으로, 제1 장애물(OB1) 또는 제2 장애물(OB2)은, 제1 로봇(100a) 및 제2 로봇(100b)이 등반할 수 있는 장애물로서, 미리 설정된 범위의, 높이 또는 깊이로 형성된 장애물일 수 있다. 여기서, 제1 로봇(100a) 및 제2 로봇(100b)이 장애물을 등반한다는 것은, 문턱을 넘거나, 카펫을 넘거나, 낭떠러지의 틈을 지나가거나, 또는 낭떠러지의 경사면을 내려갔다가 올라가는 것을 의미할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)은, 협업 주행 중에 감지한, 제1 장애물(OB1) 또는 제2 장애물(OB2)에 대응하여, 미리 설정된 시나리오를 수행할 수 있다. 제1 로봇(100a) 및 제2 로봇(100b)이 수행하는, 협업 주행 중에 감지한, 제1 장애물(OB1) 또는 제2 장애물(OB2)에 대응한, 미리 설정된 시나리오에 관하여는, 전술하였으므로, 구체적인 설명은 생략한다.Meanwhile, the mobile robot system 1 may include a first robot 100a and a second robot 100b. The first robot 100a and the second robot 100b are provided inside the main body 110 forming the exterior and the main body 110, respectively, and communicate data with other mobile robots using the network 50. It may include a communication unit 1100 for sending and receiving. In addition, the first robot 100a may include a cleaning unit 120 mounted on one side of the main body 110 and sucking contaminants from an area to be cleaned. In addition, the second robot 100b may include a mop unit (not shown) mounted on one side of the main body 110 to wipe the floor of the area to be cleaned. The first robot 100a and the second robot 100b may travel alone in the solo driving mode or enter the cooperative driving mode using the network 50 to perform cooperative driving. When the first robot 100a and the second robot 100b enter the cooperative driving mode, the first robot 100a and the second robot 100b divide the cleaning target area into a plurality of unit areas, Collaborative driving is possible for each unit area. Meanwhile, at least one of the first robot 100a and the second robot 100b may detect an obstacle while cooperatively traveling in any one unit area among a plurality of unit areas. Specifically, at least one of the first robot 100a and the second robot 100b is between the divided areas (for example, between the first unit area A1 and the second unit area A2), Alternatively, an obstacle existing inside the divided area (eg, inside the first unit area A1) may be detected. Here, an obstacle existing between the divided areas is defined as a first obstacle OB1, and an obstacle existing inside the divided area is defined as a second obstacle OB2. The first obstacle OB1 or the second obstacle OB2 may be a threshold, a carpet, or a cliff. Specifically, the first obstacle OB1 or the second obstacle OB2 is an obstacle that the first robot 100a and the second robot 100b can climb, and is formed in a preset range, height or depth. can be Here, climbing an obstacle by the first robot 100a and the second robot 100b means crossing over a threshold, crossing a carpet, passing through a gap in a cliff, or going down and up the slope of a cliff. can The first robot 100a and the second robot 100b may perform preset scenarios in response to the first obstacle OB1 or the second obstacle OB2 detected during cooperative driving. Regarding the preset scenarios performed by the first robot 100a and the second robot 100b, corresponding to the first obstacle OB1 or the second obstacle OB2 detected during cooperative driving, as described above, A detailed description is omitted.

한편, 이와 같이 상기 시스템(1)에서 상기 협업 주행이 수행되는 중 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)의 배터리에 충전된 용량이 일정 값 이하가 된 경우, 충전 용량의 부족으로 인해 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)이 상기 협업 주행을 수행할 수 없게 될 수 있다. 이를테면, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 어느 하나만이라도 충전 용량이 부족하게 되면 선 주행 또는 후 주행이 어려워지게 되므로, 상기 협업 주행의 수행을 중단하게 될 필요가 있다. 만약, 상기 협업 주행의 중단이 특정 모션 없이 중단될 경우에는, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)의 사후 주행에 문제가 생기거나, 사용자의 불편함을 초래할 우려가 있다.Meanwhile, when the capacities charged in the batteries of the first robot 100a and the second robot 100b fall below a certain value while the collaborative driving is being performed in the system 1, the charging capacities are insufficient. Due to this, the first robot 100a and the second robot 100b may not be able to perform the cooperative driving. For example, if the charging capacity of any one of the first robot 100a and the second robot 100b becomes insufficient, it becomes difficult to perform pre-travel or post-travel, so it is necessary to stop performing the collaborative driving. If the collaborative driving is stopped without a specific motion, there is a concern that a problem may occur in the post-traveling of the first robot 100a and the second robot 100b or cause inconvenience to the user.

따라서, 본 명세서에서는 이러한 협업 주행의 수행 중 배터리의 충전 용량의 변화에 따른 적절한 대응이 이루어질 수 있는 이동 로봇 시스템(1)의 <실시예 4>를 제공하고자 한다.Therefore, the present specification intends to provide <Embodiment 4> of a mobile robot system 1 capable of appropriately responding to a change in the charging capacity of a battery during such collaborative driving.

상기 시스템(1)의 실시예는, 도 11에 도시된 바와 같이, 제1 충전대(400a)에서 충전한 전력을 근거로 구동하여, 청소 대상 구역을 주행하는 상기 제1 로봇(100a) 및 제2 충전대(400b)에서 충전한 전력을 근거로 구동하여, 상기 제1 로봇(100a)이 주행한 경로에 따라 주행하는 상기 제2 로봇(100b)을 포함하여, 복수의 이동 로봇(100a, 100b)이 협업하여 주행한다.As shown in FIG. 11, the embodiment of the system 1 drives the first robot 100a and the second robot 100a that travels in the area to be cleaned by driving based on the power charged in the first charging station 400a. A plurality of mobile robots 100a and 100b, including the second robot 100b that drives based on the power charged in the charging stand 400b and travels along the path traveled by the first robot 100a, drive in collaboration

즉, 상기 시스템(1)에서 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 상기 제1 충전대(400a) 및 상기 제2 충전대(400b) 각각에서 상기 배터리의 전력을 충전하게 된다.That is, in the system 1, each of the first robot 100a and the second robot 100b charges the power of the battery at the first charging station 400a and the second charging station 400b, respectively. do.

상기 제1 로봇(100a)은, 상기 협업 주행의 대상 구역을 선 주행하며 먼지를 흡입하는 로봇일 수 있고, 상기 제2 로봇(100b)은, 상기 제1 로봇(100a)이 주행한 구역을 후 주행하며 먼지를 닦는 로봇일 수 있다.The first robot 100a may be a robot that pre-travels in the target area for the collaborative driving and sucks in dust, and the second robot 100b may travel in the area where the first robot 100a traveled and then It may be a robot that drives and wipes dust.

즉, 상기 협업 주행은, 상기 제1 로봇(100a)이 선 주행하며 먼지를 흡입하고, 상기 제2 로봇(100b)이 후 주행하며 상기 제1 로봇(100a)이 선 주행하며 먼지를 흡입한 경로의 먼지를 닦으며 청소하게 될 수 있다.That is, the collaborative driving is a path in which the first robot 100a travels in advance and inhales dust, and the second robot 100b travels later and the first robot 100a travels in advance and inhales dust. can be cleaned by wiping off the dust of the

이러한 상기 시스템(1)에서 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)은, 협업 주행 모드를 수행하는 중 각각이 배터리에 충전된 용량을 감지하여, 상기 배터리의 충전 용량값에 따라 상기 협업 주행 모드를 해제하고, 상기 충전 용량값에 대응하여 각각 단독 주행 모드 및 상기 배터리의 충전 모드 중 하나 이상을 수행한다.In the system 1, the first robot 100a and the second robot 100b each detect the charged capacity of the battery while performing the cooperative driving mode, and according to the charged capacity value of the battery. The collaborative driving mode is released, and at least one of a solo driving mode and a charging mode of the battery is performed in response to the charging capacity value.

구체적으로는, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 상기 배터리의 충전 용량값이 상기 기준 용량값 이하가 되면 상기 협업 주행 모드를 해제하고, 각각의 충전대(400a, 400b)로 이동하여 상기 배터리를 충전하거나, 상기 단독 주행 모드를 수행한다.Specifically, each of the first robot 100a and the second robot 100b releases the cooperative driving mode when the charge capacity value of the battery is equal to or less than the reference capacity value, and each of the charging bases 400a, In step 400b), the battery is charged or the single driving mode is performed.

즉, 상기 제1 로봇(100a)의 충전 용량값이 상기 기준 용량값 이하가 된 경우, 상기 제1 로봇(100a)이 상기 제1 충전대(400a)로 이동하여 상기 배터리를 충전하게 되고, 상기 제2 로봇(100b)의 충전 용량값이 상기 기준 용량값 이하가 된 경우에는, 상기 제2 로봇(100b)이 상기 제2 충전대(400b)로 이동하여 상기 배터리를 충전하게 되거나, 상기 단독 주행 모드를 수행하게 될 수 있다.That is, when the charging capacity value of the first robot 100a is equal to or less than the reference capacity value, the first robot 100a moves to the first charging base 400a to charge the battery, and the first robot 100a charges the battery. 2 When the charging capacity value of the robot 100b is equal to or less than the reference capacity value, the second robot 100b moves to the second charging station 400b to charge the battery, or the independent driving mode is changed. can be performed

이를테면, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)이 수행 중인 상기 협업 주행 모드를 해제하고, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 하나 이상이 해당 충전대(400a 및/또는 400b)로 이동하여 상기 배터리를 충전하거나, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 하나 이상이 상기 단독 주행 모드를 수행하게 될 수 있다.For example, the collaborative driving mode being performed by the first robot 100a and the second robot 100b is released, and at least one of the first robot 100a and the second robot 100b corresponds to a charging station ( 400a and/or 400b) to charge the battery, or at least one of the first robot 100a and the second robot 100b may perform the solo driving mode.

여기서, 상기 단독 주행 모드는, 상기 협업 주행 모드의 해제 직후 바로 수행될 수 있고, 또는 해당 충전대(400a 및/또는 400b)로 이동하여 상기 배터리를 충전한 후, 수행될 수도 있다.Here, the solo driving mode may be performed immediately after the cooperative driving mode is released, or may be performed after moving to the charging station 400a and/or 400b to charge the battery.

상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 주행 중 상기 배터리에 충전된 용량을 감지할 수 있다.Each of the first robot 100a and the second robot 100b may sense the capacity charged in the battery while driving.

이를테면, 상기 협업 주행 모드의 수행 중 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 배터리에 충전된 용량을 감지하게 될 수 있다.For example, while performing the cooperative driving mode, each of the first robot 100a and the second robot 100b may sense the capacity charged in the battery.

또한, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 상기 협업 주행 모드 외에 다른 모드를 수행 중에도 상기 배터리에 충전된 용량을 감지하게 될 수 있다.In addition, each of the first robot 100a and the second robot 100b may sense the capacity charged in the battery while performing a mode other than the cooperative driving mode.

상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 상기 배터리에 충전된 용량을 실시간으로 감지할 수 있다.Each of the first robot 100a and the second robot 100b may sense the capacity charged in the battery in real time.

즉, 상기 제1 로봇(100a)은, 주행 중 상기 제1 로봇(100a)에 내장된 배터리의 충전 용량을 실시간으로 감지하고, 상기 제2 로봇(100b)은, 주행 중 상기 제2 로봇(100b)에 내장된 배터리의 충전 용량을 실시간으로 감지하게 될 수 있다.That is, the first robot 100a senses the charging capacity of the battery built in the first robot 100a in real time while driving, and the second robot 100b detects the second robot 100b while driving. ), the charging capacity of the built-in battery can be sensed in real time.

상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 주행 중 상기 배터리에 충전된 용량을 감지하여, 감지 결과를 상기 충전 용량값으로 수치화할 수 있다. 이에 따라, 상기 배터리에 충전된 용량의 감지 결과를 상기 기준 용량값과 비교하게 될 수 있다.Each of the first robot 100a and the second robot 100b may sense the capacity charged in the battery while driving, and quantify the detection result as the charge capacity value. Accordingly, a detection result of the capacity charged in the battery may be compared with the reference capacity value.

상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 각각의 충전 용량값이 상기 기준 용량값 이하가 된 경우, 상기 협업 주행 모드를 해제한 후, 상기 충전대(100a, 100b)로 이동하여 상기 배터리를 충전할 수 있다.Each of the first robot 100a and the second robot 100b releases the collaborative driving mode when the respective charging capacity value is equal to or less than the reference capacity value, and then returns to the charging bases 100a and 100b. The battery can be charged by moving.

여기서, 상기 협업 주행 모드의 해제는, 수행 중인 상기 협업 주행 모드를 중단하는 것을 의미할 수 있다.Here, release of the cooperative driving mode may mean stopping the cooperative driving mode being performed.

즉, 상기 제1 로봇(100a)이 상기 협업 주행 모드의 수행 중 상기 배터리의 충전 용량을 감지한 결과, 상기 제1 로봇(100a)의 충전 용량값이 상기 기준 용량값 이하가 되면, 상기 제1 로봇(100a)이 상기 협업 주행 모드의 수행을 중단한 후, 상기 제1 충전대(400a)로 이동하여 상기 배터리를 충전하게 되고, 상기 제2 로봇(100b)이 상기 협업 주행 모드의 수행 중 상기 배터리의 충전 용량을 감지한 결과, 상기 제2 로봇(100b)의 충전 용량값이 상기 기준 용량값 이하가 되면, 상기 제2 로봇(100b)이 상기 협업 주행 모드의 수행을 중단한 후, 상기 제2 충전대(400b)로 이동하여 상기 배터리를 충전하게 될 수 있다.That is, as a result of the first robot 100a detecting the charging capacity of the battery while performing the cooperative driving mode, when the charging capacity value of the first robot 100a is equal to or less than the reference capacity value, the first robot 100a detects the charging capacity of the first robot 100a. After the robot 100a stops performing the collaborative driving mode, it moves to the first charging station 400a to charge the battery, and the second robot 100b is performing the cooperative driving mode while the battery is charged. As a result of detecting the charging capacity of the second robot 100b, when the charging capacity value of the second robot 100b is equal to or less than the reference capacity value, the second robot 100b stops performing the cooperative driving mode, and then the second robot 100b stops performing the collaborative driving mode. The battery may be charged by moving to a charging stand 400b.

이 경우, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 상기 협업 주행 모드의 해제에 대한 정보를 상대 로봇과 공유할 수 있다.In this case, each of the first robot 100a and the second robot 100b may share information about canceling the cooperative driving mode with the other robot.

즉, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 상기 협업 주행 모드를 해제하는 경우, 상기 협업 주행 모드의 해제에 대한 정보를 상대 로봇에 전달하여, 상기 상대 로봇에게 상기 협업 주행 모드의 해제를 알리게 될 수 있다.That is, when the cooperative driving mode is released, each of the first robot 100a and the second robot 100b transfers information about the cancellation of the cooperative driving mode to the other robot, Release of the cooperative driving mode may be informed.

이를테면, 상기 제1 로봇(100a)이 상기 충전 용량값이 상기 기준 용량값 이하가 되어 상기 협업 주행 모드를 해제하는 경우, 상기 제1 로봇(100a)이 상기 제2 로봇(100b)에 상기 협업 주행 모드의 해제에 대한 정보를 전달하여, 상기 제2 로봇(100b)이 상기 협업 주행 모드의 해제를 인식하게 되고, 상기 제2 로봇(100b)이 상기 충전 용량값이 상기 기준 용량값 이하가 되어 상기 협업 주행 모드를 해제하는 경우, 상기 제2 로봇(100b)이 상기 제1 로봇(100a)에 상기 협업 주행 모드의 해제에 대한 정보를 전달하여, 상기 제1 로봇(100a)이 상기 협업 주행 모드의 해제를 인식하게 될 수 있다.For example, when the first robot 100a releases the collaborative driving mode because the charging capacity value becomes less than or equal to the reference capacity value, the first robot 100a sends the second robot 100b the cooperative driving mode. By transmitting information on the release of the mode, the second robot 100b recognizes the release of the collaborative driving mode, and the second robot 100b determines that the charging capacity value is less than or equal to the reference capacity value, When the cooperative driving mode is released, the second robot 100b transmits information on the cooperative driving mode release to the first robot 100a, so that the first robot 100a is in the cooperative driving mode. release can be recognized.

이에 따라, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 어느 하나 이상에서 상기 충전 용량값이 상기 기준 용량값 이하가 되면, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 모두가 상기 협업 주행 모드의 수행을 중단하게 될 수 있다.Accordingly, when the charging capacity value in at least one of the first robot 100a and the second robot 100b becomes equal to or less than the reference capacity value, the first robot 100a and the second robot 100b ) may stop performing the cooperative driving mode.

상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 상기 충전대(400a, 400b)로 이동한 후, 상기 배터리의 충전 용량이 일정 기준 이상으로 충전될 때까지 상기 배터리를 충전할 수 있다.After moving to the charging bases 400a and 400b, each of the first robot 100a and the second robot 100b may charge the battery until the charging capacity of the battery is charged to a predetermined standard or higher. there is.

즉, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 상기 충전 용량값이 상기 기준 용량값 이하가 되어 상기 충전대(400a, 400b)로 이동하면, 상기 배터리의 충전 용량이 상기 일정 기준 이상으로 충전될 때까지 상기 배터리를 충전하게 될 수 있다.That is, when each of the first robot 100a and the second robot 100b moves to the charging bases 400a and 400b when the charging capacity value becomes equal to or less than the reference capacity value, the charging capacity of the battery is The battery may be charged until it is charged to a predetermined standard or higher.

여기서, 상기 일정 기준은, 상기 배터리의 충전 용량의 레벨을 의미할 수 있다. 상기 일정 기준은, 상기 배터리의 전체 용량 대비 비율[%]로 설정될 수 있고, 또는 상기 배터리의 용량 단위[Ah]로 설정될 수 있다.Here, the predetermined criterion may mean a level of charging capacity of the battery. The predetermined criterion may be set as a percentage of the total capacity of the battery [%], or may be set as a capacity unit [Ah] of the battery.

상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 바람직하게는 상기 충전대(400a, 400b)로 이동한 후, 상기 배터리의 충전이 완료될 때까지 상기 배터리를 충전할 수 있다.Each of the first robot 100a and the second robot 100b may preferably move to the charging stations 400a and 400b and then charge the battery until the battery is completely charged.

상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 각각의 충전 용량값이 상기 기준 용량값 이하가 되어 상기 충전대(400a, 400b)로 이동하기 전, 현재 위치를 인식하여 위치 정보값을 저장하고, 상기 충전대(400a, 400b)에서 상기 배터리의 충전 용량이 일정 기준 이상으로 충전된 후, 상기 위치 정보값을 이용하여 주행을 시작할 수 있다.Each of the first robot 100a and the second robot 100b recognizes the current location and obtains location information before moving to the charging bases 400a and 400b when each charging capacity value becomes less than or equal to the reference capacity value. After the value is stored and the charging capacity of the battery is charged to a predetermined standard or higher in the charging bases 400a and 400b, driving can be started using the location information value.

즉, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 상기 충전대(400a, 400b)로 이동하기 전의 위치에 해당하는 상기 위치 정보값을 저장하여, 상기 충전대(400a, 400b)에서 상기 배터리를 충전한 후 주행을 재개할 시, 상기 위치 정보값을 이용하여 주행을 시작하게 될 수 있다.That is, each of the first robot 100a and the second robot 100b stores the location information value corresponding to the position before moving to the charging stations 400a and 400b, When driving is resumed after charging the battery, driving may be started using the location information value.

이를테면, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 충전대(400a, 400b)에서 상기 배터리의 충전을 완료한 후, 상기 위치 정보값에 따른 위치로 이동하여 주행을 시작하거나, 또는 주행 시작 시 상기 위치 정보값에 따른 위치로의 이동에 대한 알림을 출력하게 될 수 있다.For example, after each of the first robot 100a and the second robot 100b completes the charging of the battery on the charging bases 400a and 400b, they move to a location according to the location information value and start driving, or , or when driving starts, a notification about movement to a location according to the location information value may be output.

이러한 상기 시스템(1)에서 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각의 충전 용량에 대응한 주행은, 도 36a에 도시된 도표와 같이 이루어지게 될 수 있다.In the system 1, the first robot 100a and the second robot 100b travel corresponding to their respective charging capacities as shown in the chart shown in FIG. 36A.

{대응 1(ⓐ)}{Response 1(ⓐ)}

상기 제1 로봇(100a)의 충전 용량값이 상기 기준 용량값 이하이고, 상기 제2 로봇(100b)의 충전 용량값이 상기 기준 용량값 초과인 경우, 상기 제1 로봇(100a)은, 상기 협업 주행 모드를 해제한 후, 상기 제1 충전대(400a)로 이동하여 상기 배터리를 충전하고, 상기 배터리의 충전 용량이 일정 (용량) 기준 이상으로 충전되면 상기 제1 충전대(400a)로 이동하기 전 위치로 이동하여 단독 주행 모드를 수행할 수 있다. 이 경우, 상기 제2 로봇(100b)은, 상기 협업 주행 모드를 해제한 후, 잔여 청소 구역의 여부에 따라 상기 제2 충전대(400b)로 이동하여 상기 배터리를 충전할 수 있다. 만약, 상기 잔여 청소 구역의 면적이 일정 (면적) 기준에 해당하는 경우, 상기 제2 로봇(100b)은, 상기 잔여 청소 구역의 주행을 완료한 후, 상기 제2 충전대(400b)로 이동할 수 있다. 또한 만약, 상기 잔여 청소 구역의 면적이 일정 기준에 미해당하는 경우에는, 상기 제2 로봇(100b)은, 상기 제2 충전대(400b)로 이동할 수 있다.When the charging capacity value of the first robot 100a is less than or equal to the reference capacity value and the charging capacity value of the second robot 100b exceeds the reference capacity value, the first robot 100a performs the collaboration After the driving mode is released, the battery is charged by moving to the first charging station 400a, and when the charging capacity of the battery is charged to a certain level or higher, the position before moving to the first charging station 400a. You can perform the solo driving mode by moving to . In this case, after canceling the collaborative driving mode, the second robot 100b may move to the second charging stand 400b to charge the battery depending on whether or not there is a remaining cleaning area. If the area of the remaining cleaning area corresponds to a certain (area) criterion, the second robot 100b may move to the second charging base 400b after completing driving in the remaining cleaning area. . Also, if the area of the remaining cleaning area does not meet the predetermined standard, the second robot 100b may move to the second charging stand 400b.

즉, 상기 제1 로봇(100a)의 충전 용량값만 상기 기준 용량값 이하인 경우, 도 37에 도시된 바와 같이, 상기 협업 주행 모드의 수행(P10) 중 상기 제1 로봇(100a)은 상기 협업 수행 모드를 해제한 후, 상기 제1 충전대(400a)로 이동(P11 또는 P12)하되, 상기 제2 로봇(100b)은 상기 잔여 청소 구역의 면적이 상기 일정 기준에 해당하면 상기 잔여 청소 구역의 주행을 완료(P11)한 후 상기 제2 충전대(400b)로 이동(P12)하고, 만약 상기 잔여 청소 구역의 면적이 상기 일정 기준에 미해당하면 바로 상기 제2 충전대(400b)로 이동(P12)하고, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제1 충전대(400a)로 이동하기 전 위치(x1)로 이동하여 상기 제1 로봇(100a)의 단독 주행 모드를 수행(P13)하게 될 수 있다.That is, when only the charging capacity value of the first robot 100a is equal to or less than the reference capacity value, as shown in FIG. 37, the first robot 100a performs the collaboration during the execution of the cooperative driving mode (P10). After the mode is released, it moves to the first charging station 400a (P11 or P12), but the second robot 100b stops traveling in the remaining cleaning area when the area of the remaining cleaning area corresponds to the predetermined standard. After completion (P11), it moves to the second charging station (400b) (P12), and if the area of the remaining cleaning area does not meet the predetermined standard, it immediately moves to the second charging station (400b) (P12), After the first robot 100a charges the charge capacity of the battery to a predetermined standard or higher on the first charging stand 400a, it moves to a position (x1) before moving to the first charging stand 400a, and then moves to the first robot 100a. The single driving mode of the robot 100a may be performed (P13).

{대응 2(ⓑ)}{Response 2 (ⓑ)}

또한, 상기 제1 로봇(100a)의 충전 용량값이 상기 기준 용량값 이하이고, 상기 제2 로봇(100b)의 충전 용량값이 상기 기준 용량값 초과인 경우, 상기 제1 로봇 (100a)및 상기 제2 로봇(100b) 각각은, 상기 협업 주행 모드를 해제한 후, 각각의 충전대(400a, 400b)로 이동하여 상기 배터리를 충전하고, 상기 배터리의 충전 용량이 일정 기준 이상으로 충전되면 각각의 충전대(400a, 400b)로 이동하기 전 위치로 이동하여 각각 단독 주행 모드를 수행할 수도 있다.In addition, when the charging capacity value of the first robot 100a is less than or equal to the reference capacity value and the charging capacity value of the second robot 100b exceeds the reference capacity value, the first robot 100a and the After releasing the cooperative driving mode, each of the second robots 100b moves to each of the charging stations 400a and 400b to charge the battery, and when the charging capacity of the battery is charged to a predetermined standard or higher, each of the charging stations It is also possible to move to a position before moving to (400a, 400b) and perform a solo driving mode, respectively.

즉, 상기 제1 로봇(100a)의 충전 용량값만 상기 기준 용량값 이하인 경우, 도 38에 도시된 바와 같이, 상기 협업 주행 모드의 수행(P20) 중 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 수행 모드를 해제한 후, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)로 이동하고 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동(P21)한 후, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 제1 충전대(400a) 및 상기 제2 충전대(400b) 각각에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)로 이동하기 전 위치(x1)로 이동하여 상기 제1 로봇(100a)의 단독 주행 모드를 수행하고, 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동하기 전 위치(x2)로 이동하여 상기 제2 로봇(100b)의 단독 주행 모드를 수행(P22)하게 될 수도 있다.That is, when only the charging capacity value of the first robot 100a is equal to or less than the reference capacity value, as shown in FIG. 38, the first robot 100a and the second robot 100a and the second After each of the robots 100b releases the collaboration mode, the first robot 100a moves to the first charging station 400a and the second robot 100b moves to the second charging station 400b. After (P21), each of the first robot 100a and the second robot 100b determines the charging capacity of the battery in each of the first charging station 400a and the second charging station 400b by a predetermined standard or more. After charging, the first robot 100a moves to the position (x1) before moving to the first charging base 400a to perform the solo driving mode of the first robot 100a, and the second robot ( 100b) may be moved to the position (x2) before moving to the second charging stand 400b to perform the independent driving mode of the second robot 100b (P22).

{대응 3(ⓒ)}{Response 3(ⓒ)}

상기 제1 로봇(100a)의 충전 용량값이 상기 기준 용량값 초과이고, 상기 제2 로봇(100b)의 충전 용량값이 상기 기준 용량값 이하인 경우, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 상기 협업 주행 모드를 해제한 후, 각각의 충전대(400a, 400b)로 이동하여 상기 배터리를 충전하되, 상기 제1 로봇(100a)은, 상기 배터리의 충전 용량이 일정 기준 이상으로 충전되면 상기 제1 충전대(400a)로 이동하기 전 위치로 이동하여 단독 주행 모드를 수행할 수 있다.When the charging capacity value of the first robot 100a is greater than the reference capacity value and the charging capacity value of the second robot 100b is less than or equal to the reference capacity value, the first robot 100a and the second robot (100b) Each of them, after canceling the cooperative driving mode, moves to each charging station (400a, 400b) to charge the battery, but the first robot (100a), the charging capacity of the battery is more than a certain standard When charged to , it can move to a position before moving to the first charging stand 400a and perform a solo driving mode.

즉, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 모두의 충전 용량값이 상기 기준 용량값 이하인 경우, 도 37에 도시된 바와 같이, 상기 협업 주행 모드의 수행(P10) 중 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 수행 모드를 해제한 후, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)로 이동하고 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동(P12)하되, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제1 충전대(400a)로 이동하기 전 위치(x1)로 이동하여 상기 제1 로봇(100a)의 단독 주행 모드를 수행(P13)하게 될 수 있다.That is, when the charging capacity values of both the first robot 100a and the second robot 100b are equal to or less than the reference capacity value, as shown in FIG. After each of the first robot 100a and the second robot 100b releases the collaboration performance mode, the first robot 100a moves to the first charging base 400a and the second robot 100b It moves to the second charging station 400b (P12), but after the first robot 100a charges the charging capacity of the battery to a predetermined standard or higher in the first charging station 400a, the first charging station 400a ) to the position (x1) before moving to the first robot (100a) may perform the solo driving mode (P13).

{대응 4(ⓓ)}{Response 4 (ⓓ)}

또한, 상기 제1 로봇(100a)의 충전 용량값이 상기 기준 용량값 초과이고, 상기 제2 로봇(100b)의 충전 용량값이 상기 기준 용량값 이하인 경우, 상기 제1 로봇 (100a) 및 상기 제2 로봇(100b) 각각은, 상기 협업 주행 모드를 해제한 후, 각각의 충전대(400a, 400b)로 이동하여 상기 배터리를 충전하고, 상기 배터리의 충전 용량이 일정 기준 이상으로 충전되면 각각의 충전대(400a, 400b)로 이동하기 전 위치로 이동하여 각각 단독 주행 모드를 수행할 수도 있다.In addition, when the charging capacity value of the first robot 100a is greater than the reference capacity value and the charging capacity value of the second robot 100b is less than or equal to the reference capacity value, the first robot 100a and the first robot 100a After releasing the cooperative driving mode, each of the two robots 100b moves to each of the charging stations 400a and 400b to charge the battery, and when the charging capacity of the battery is charged to a predetermined standard or higher, each charging station ( 400a, 400b) may be moved to a position before moving to a single driving mode.

즉, 상기 제1 로봇(100a)의 충전 용량값만 상기 기준 용량값 이하인 경우, 도 38에 도시된 바와 같이, 상기 협업 주행 모드의 수행(P20) 중 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 수행 모드를 해제한 후, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)로 이동하고 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동(P21)한 후, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 제1 충전대(400a) 및 상기 제2 충전대(400b) 각각에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)로 이동하기 전 위치(x1)로 이동하여 상기 제1 로봇(100a)의 단독 주행 모드를 수행하고, 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동하기 전 위치(x2)로 이동하여 상기 제2 로봇(100b)의 단독 주행 모드를 수행(P22)하게 될 수도 있다.That is, when only the charging capacity value of the first robot 100a is equal to or less than the reference capacity value, as shown in FIG. 38, the first robot 100a and the second robot 100a and the second After each of the robots 100b releases the collaboration mode, the first robot 100a moves to the first charging station 400a and the second robot 100b moves to the second charging station 400b. After (P21), each of the first robot 100a and the second robot 100b determines the charging capacity of the battery in each of the first charging station 400a and the second charging station 400b by a predetermined standard or more. After charging, the first robot 100a moves to the position (x1) before moving to the first charging base 400a to perform the solo driving mode of the first robot 100a, and the second robot ( 100b) may be moved to the position (x2) before moving to the second charging stand 400b to perform the independent driving mode of the second robot 100b (P22).

{대응 5(ⓔ)}{Response 5(ⓔ)}

상기 제1 로봇(100a)의 충전 용량값 및 상기 제2 로봇(100b)의 충전 용량값 모두가 상기 기준 용량값 이하인 경우, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각은, 상기 협업 주행 모드를 해제한 후, 각각의 충전대(400a, 400b)로 이동하여 상기 배터리를 충전하되, 상기 제1 로봇(100a)은, 상기 배터리의 충전 용량이 일정 기준 이상으로 충전되면 상기 제1 충전대(400a)로 이동하기 전 위치로 이동하여 단독 주행 모드를 수행할 수 있다.When both the charging capacity value of the first robot 100a and the charging capacity value of the second robot 100b are equal to or less than the reference capacity value, each of the first robot 100a and the second robot 100b, After canceling the collaborative driving mode, the first robot 100a moves to each of the charging bases 400a and 400b to charge the battery. By moving to a position before moving to the charging station 400a, a single driving mode may be performed.

즉, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 모두의 충전 용량값이 상기 기준 용량값 이하인 경우, 도 37에 도시된 바와 같이, 상기 협업 주행 모드의 수행(P10) 중 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 수행 모드를 해제한 후, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)로 이동하고 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동(P12)하되, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제1 충전대(400a)로 이동하기 전 위치(x1)로 이동하여 상기 제1 로봇(100a)의 단독 주행 모드를 수행(P13)하게 될 수 있다.That is, when the charging capacity values of both the first robot 100a and the second robot 100b are equal to or less than the reference capacity value, as shown in FIG. After each of the first robot 100a and the second robot 100b releases the collaboration performance mode, the first robot 100a moves to the first charging base 400a and the second robot 100b It moves to the second charging station 400b (P12), but after the first robot 100a charges the charging capacity of the battery to a predetermined standard or higher in the first charging station 400a, the first charging station 400a ) to the position (x1) before moving to the first robot (100a) may perform the solo driving mode (P13).

{대응 6(ⓕ)}{Response 6(ⓕ)}

또한, 상기 제1 로봇(100a)의 충전 용량값 및 상기 제2 로봇(100b)의 충전 용량값 모두가 상기 기준 용량값 이하인 경우, 상기 제1 로봇 (100a)및 상기 제2 로봇(100b) 각각은, 상기 협업 주행 모드를 해제한 후, 각각의 충전대(400a, 400b)로 이동하여 상기 배터리를 충전하고, 상기 배터리의 충전 용량이 일정 기준 이상으로 충전되면 각각의 충전대(400a, 400b)로 이동하기 전 위치로 이동하여 각각 단독 주행 모드를 수행할 수도 있다.In addition, when both the charging capacity value of the first robot 100a and the charging capacity value of the second robot 100b are equal to or less than the reference capacity value, the first robot 100a and the second robot 100b respectively After canceling the cooperative driving mode, the battery is charged by moving to each of the charging bases 400a and 400b, and when the charging capacity of the battery is charged to a predetermined standard or higher, moving to the respective charging bases 400a and 400b It is also possible to move to a position before driving and perform a single driving mode.

즉, 상기 제1 로봇(100a)의 충전 용량값만 상기 기준 용량값 이하인 경우, 도 38에 도시된 바와 같이, 상기 협업 주행 모드의 수행(P20) 중 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 수행 모드를 해제한 후, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)로 이동하고 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동(P21)한 후, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 제1 충전대(400a) 및 상기 제2 충전대(400b) 각각에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)로 이동하기 전 위치(x1)로 이동하여 상기 제1 로봇(100a)의 단독 주행 모드를 수행하고, 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동하기 전 위치(x2)로 이동하여 상기 제2 로봇(100b)의 단독 주행 모드를 수행(P22)하게 될 수도 있다.That is, when only the charging capacity value of the first robot 100a is equal to or less than the reference capacity value, as shown in FIG. 38, the first robot 100a and the second robot 100a and the second After each of the robots 100b releases the collaboration mode, the first robot 100a moves to the first charging station 400a and the second robot 100b moves to the second charging station 400b. After (P21), each of the first robot 100a and the second robot 100b determines the charging capacity of the battery in each of the first charging station 400a and the second charging station 400b by a predetermined standard or more. After charging, the first robot 100a moves to the position (x1) before moving to the first charging base 400a to perform the solo driving mode of the first robot 100a, and the second robot ( 100b) may be moved to the position (x2) before moving to the second charging stand 400b to perform the independent driving mode of the second robot 100b (P22).

또한, 상기 시스템(1)에서 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각의 충전 용량에 대응한 주행은, 도 36b에 도시된 도표와 같이 이루어지게 될 수도 있다.In addition, in the system 1, the first robot 100a and the second robot 100b may travel corresponding to their respective charging capacities as shown in the chart shown in FIG. 36B.

{대응 7(ⓖ)}{Response 7(ⓖ)}

상기 제1 로봇(100a)의 충전 용량값이 상기 기준 용량값 이하이고, 상기 제2 로봇(100b)의 충전 용량값이 상기 기준 용량값 초과인 경우, 상기 제1 로봇(100a)은, 상기 협업 주행 모드를 해제하고 단독 주행 모드로 전환한 후, 상기 단독 주행 모드를 수행하며 주행하고, 상기 제2 로봇(100b)은, 상기 협업 주행 모드를 해제한 후, 잔여 청소 구역의 여부에 따라 상기 제2 충전대(400b)로 이동하여 상기 배터리를 충전할 수 있다. 만약, 상기 잔여 청소 구역의 면적이 일정 (면적) 기준에 해당하는 경우, 상기 제2 로봇(100b)은, 상기 잔여 청소 구역의 주행을 완료한 후, 상기 제2 충전대(400b)로 이동할 수 있다. 또한 만약, 상기 잔여 청소 구역의 면적이 일정 기준에 미해당하는 경우에는, 상기 제2 로봇(100b)은, 상기 제2 충전대(400b)로 이동할 수 있다.When the charging capacity value of the first robot 100a is less than or equal to the reference capacity value and the charging capacity value of the second robot 100b exceeds the reference capacity value, the first robot 100a performs the collaboration After releasing the driving mode and switching to the independent driving mode, the second robot 100b travels while performing the independent driving mode, and after canceling the collaborative driving mode, the second robot 100b performs the autonomous driving mode according to whether or not there is a remaining cleaning area. 2 The battery may be charged by moving to the charging stand 400b. If the area of the remaining cleaning area corresponds to a certain (area) criterion, the second robot 100b may move to the second charging base 400b after completing driving in the remaining cleaning area. . Also, if the area of the remaining cleaning area does not meet the predetermined standard, the second robot 100b may move to the second charging stand 400b.

즉, 상기 제1 로봇(100a)의 충전 용량값만 상기 기준 용량값 이하인 경우, 상기 협업 주행 모드의 수행 중 상기 제1 로봇(100a)은 상기 협업 주행 모드를 해제한 후 단독 주행 모드로 전환하여 단독 주행 모드를 수행하되, 상기 제2 로봇(100b)은 상기 잔여 청소 구역의 면적이 상기 일정 기준에 해당하면 상기 잔여 청소 구역의 주행을 완료한 후 상기 제2 충전대(400b)로 이동하고, 만약 상기 잔여 청소 구역의 면적이 상기 일정 기준에 미해당하면 바로 상기 제2 충전대(400b)로 이동하고, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제1 충전대(400a)로 이동하기 전 위치(x1)로 이동하여 상기 제1 로봇(100a)의 단독 주행 모드를 수행하게 될 수 있다.That is, when only the charging capacity value of the first robot 100a is less than or equal to the reference capacity value, the first robot 100a releases the cooperative driving mode and then switches to the independent driving mode while the cooperative driving mode is performed. Performs a single traveling mode, but the second robot 100b moves to the second charging stand 400b after completing the driving of the remaining cleaning area when the area of the remaining cleaning area corresponds to the predetermined standard, and if If the area of the remaining cleaning area does not meet the predetermined standard, it immediately moves to the second charging station 400b, and the first robot 100a sets the charging capacity of the battery in the first charging station 400a to a predetermined standard or more. After being charged with , it may be moved to the position (x1) before moving to the first charging stand 400a to perform the solo driving mode of the first robot 100a.

{대응 8(ⓗ)}{Response 8(ⓗ)}

또한, 상기 제1 로봇(100a)의 충전 용량값이 상기 기준 용량값 이하이고, 상기 제2 로봇(100b)의 충전 용량값이 상기 기준 용량값 초과인 경우, 상기 제1 로봇(100a)은, 상기 협업 주행 모드를 해제하고 단독 주행 모드로 전환한 후, 상기 단독 주행 모드를 수행하며 주행하고, 상기 제2 로봇(100b)은, 상기 협업 주행 모드를 해제한 후, 상기 제2 충전대(400b)로 이동하여 상기 배터리를 충전하고, 상기 배터리의 충전 용량이 일정 (용량) 기준 이상으로 충전되면 상기 제2 충전대(400b)로 이동하기 전 위치로 이동하여 단독 주행 모드를 수행할 수 있다.In addition, when the charging capacity value of the first robot 100a is less than or equal to the reference capacity value and the charging capacity value of the second robot 100b is greater than the reference capacity value, the first robot 100a, After canceling the collaborative driving mode and switching to the independent driving mode, the second robot 100b travels while performing the independent driving mode, and after canceling the collaborative driving mode, the second robot 100b moves to the second charging stand 400b. to charge the battery, and when the charging capacity of the battery is charged to a certain (capacity) standard or higher, it moves to the position before moving to the second charging station 400b and performs the independent driving mode.

즉, 상기 제1 로봇(100a)의 충전 용량값만 상기 기준 용량값 이하인 경우, 상기 협업 주행 모드의 수행 중 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 수행 모드를 해제한 후, 상기 제1 로봇(100a)은 상기 단독 주행 모드로 전환하여 단독 주행 모드를 수행하되, 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동하여, 상기 제2 충전대(400b)에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제2 충전대(400b)로 이동하기 전 위치(x2)로 이동하여 상기 제2 로봇(100b)의 단독 주행 모드를 수행하게 될 수 있다.That is, when only the charging capacity value of the first robot 100a is equal to or less than the reference capacity value, each of the first robot 100a and the second robot 100b performs the cooperative driving mode while performing the cooperative driving mode. After release, the first robot 100a converts to the single driving mode and performs the single driving mode, but the second robot 100b moves to the second charging station 400b, and the second charging station ( In 400b), after the charging capacity of the battery is charged to a certain standard or higher, the second robot 100b moves to the position (x2) before moving to the second charging station 400b to perform the independent driving mode of the second robot 100b. can

{대응 9(ⓘ)}{Correspondence 9(ⓘ)}

상기 제1 로봇(100a)의 충전 용량값이 상기 기준 용량값 초과이고, 상기 제2 로봇(100b)의 충전 용량값이 상기 기준 용량값 이하인 경우, 상기 제1 로봇(100a)은, 상기 협업 주행 모드를 해제하고 단독 주행 모드로 전환한 후, 상기 단독 주행 모드를 수행하며 주행하고, 상기 제2 로봇(100b)은, 상기 협업 주행 모드를 해제한 후, 상기 제2 충전대(400b)로 이동하여 상기 배터리를 충전할 수 있다.When the charging capacity value of the first robot 100a is greater than the reference capacity value and the charging capacity value of the second robot 100b is less than or equal to the reference capacity value, the first robot 100a performs the collaborative driving. After canceling the mode and switching to the independent driving mode, it travels while performing the independent driving mode, and the second robot 100b, after canceling the cooperative driving mode, moves to the second charging station 400b The battery can be charged.

즉, 상기 제2 로봇(100b)의 충전 용량값만 상기 기준 용량값 이하인 경우, 도 39에 도시된 바와 같이, 상기 협업 주행 모드의 수행(P30) 중 상기 제2 로봇(100b)은 상기 협업 주행 모드를 해제한 후, 상기 제2 충전대(400b)로 이동(P31)하되, 상기 제1 로봇(100a)은 상기 협업 주행 모드를 해제한 후 단독 주행 모드로 전환하여 단독 주행 모드(P32)를 수행하게 될 수 있다.That is, when only the charging capacity value of the second robot 100b is equal to or less than the reference capacity value, as shown in FIG. 39 , the second robot 100b performs the cooperative driving mode (P30) during the cooperative driving mode. After releasing the mode, move to the second charging base 400b (P31), but the first robot 100a cancels the collaborative driving mode and then switches to the independent driving mode to perform the independent driving mode (P32). can be done

{대응 10(ⓙ)}{Response 10(ⓙ)}

또한, 상기 제1 로봇(100a)의 충전 용량값이 상기 기준 용량값 초과이고, 상기 제2 로봇(100b)의 충전 용량값이 상기 기준 용량값 이하인 경우, 상기 제1 로봇(100a)은, 상기 협업 주행 모드를 해제하고 단독 주행 모드로 전환한 후, 상기 단독 주행 모드를 수행하며 주행하고, 상기 제2 로봇(100b)은, 상기 협업 주행 모드를 해제한 후, 상기 제2 충전대(400b)로 이동하여 상기 배터리를 충전하고, 상기 배터리의 충전 용량이 일정 (용량) 기준 이상으로 충전되면 상기 제2 충전대(400b)로 이동하기 전 위치로 이동하여 단독 주행 모드를 수행할 수 있다.In addition, when the charging capacity value of the first robot 100a is greater than the reference capacity value and the charging capacity value of the second robot 100b is less than or equal to the reference capacity value, the first robot 100a, After releasing the cooperative driving mode and switching to the independent driving mode, the second robot 100b travels while performing the independent driving mode, and after canceling the cooperative driving mode, the second robot 100b returns to the second charging base 400b. The battery is charged by moving, and when the charging capacity of the battery is charged to a predetermined (capacity) standard or higher, it can move to a position before moving to the second charging base 400b and perform an independent driving mode.

즉, 상기 제2 로봇(100b)의 충전 용량값만 상기 기준 용량값 이하인 경우, 상기 협업 주행 모드의 수행 중 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 수행 모드를 해제한 후, 상기 제1 로봇(100a)은 상기 단독 주행 모드로 전환하여 단독 주행 모드를 수행하되, 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동하여, 상기 제2 충전대(400b)에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제2 충전대(400b)로 이동하기 전 위치(x2)로 이동하여 상기 제2 로봇(100b)의 단독 주행 모드를 수행하게 될 수 있다.That is, when only the charging capacity value of the second robot 100b is equal to or less than the reference capacity value, each of the first robot 100a and the second robot 100b performs the cooperative driving mode while the cooperative driving mode is performed. After release, the first robot 100a converts to the single driving mode and performs the single driving mode, but the second robot 100b moves to the second charging station 400b, and the second charging station ( In 400b), after the charging capacity of the battery is charged to a certain standard or higher, the second robot 100b moves to the position (x2) before moving to the second charging station 400b to perform the independent driving mode of the second robot 100b. can

{대응 11(ⓚ)}{Response 11(ⓚ)}

상기 제1 로봇(100a)의 충전 용량값 및 상기 제2 로봇(100b)의 충전 용량값 모두가 상기 기준 용량값 이하인 경우, 상기 제1 로봇(100a)은, 상기 협업 주행 모드를 해제하고 단독 주행 모드로 전환한 후, 상기 단독 주행 모드를 수행하며 주행하고, 상기 제2 로봇(100b)은, 상기 협업 주행 모드를 해제한 후, 상기 제2 충전대(400b)로 이동하여 상기 배터리를 충전할 수 있다.When both the charging capacity value of the first robot 100a and the charging capacity value of the second robot 100b are equal to or less than the reference capacity value, the first robot 100a releases the collaborative driving mode and drives alone. mode, it travels while performing the solo driving mode, and the second robot 100b releases the collaborative driving mode and then moves to the second charging base 400b to charge the battery. there is.

즉, 상기 제2 로봇(100b)의 충전 용량값만 상기 기준 용량값 이하인 경우, 도 39에 도시된 바와 같이, 상기 협업 주행 모드의 수행(P30) 중 상기 제2 로봇(100b)은 상기 협업 주행 모드를 해제한 후, 상기 제2 충전대(400b)로 이동(P31)하되, 상기 제1 로봇(100a)은 상기 협업 주행 모드를 해제한 후 단독 주행 모드로 전환하여 단독 주행 모드(P32)를 수행하게 될 수 있다.That is, when only the charging capacity value of the second robot 100b is equal to or less than the reference capacity value, as shown in FIG. 39 , the second robot 100b performs the cooperative driving mode (P30) during the cooperative driving mode. After releasing the mode, move to the second charging base 400b (P31), but the first robot 100a cancels the collaborative driving mode and then switches to the independent driving mode to perform the independent driving mode (P32). can be done

{대응 12(ⓛ)}{Response 12(ⓛ)}

또한, 상기 제1 로봇(100a)의 충전 용량값 및 상기 제2 로봇(100b)의 충전 용량값 모두가 상기 기준 용량값 이하인 경우, 상기 제1 로봇(100a)은, 상기 협업 주행 모드를 해제하고 단독 주행 모드로 전환한 후, 상기 단독 주행 모드를 수행하며 주행하고, 상기 제2 로봇(100b)은, 상기 협업 주행 모드를 해제한 후, 상기 제2 충전대(400b)로 이동하여 상기 배터리를 충전하고, 상기 배터리의 충전 용량이 일정 (용량) 기준 이상으로 충전되면 상기 제2 충전대(400b)로 이동하기 전 위치로 이동하여 단독 주행 모드를 수행할 수 있다.In addition, when both the charging capacity value of the first robot 100a and the charging capacity value of the second robot 100b are equal to or less than the reference capacity value, the first robot 100a releases the cooperative driving mode, After switching to the independent driving mode, the second robot 100b travels while performing the independent driving mode, and after canceling the collaborative driving mode, moves to the second charging base 400b to charge the battery. And, when the charging capacity of the battery is charged to a certain (capacity) standard or higher, it can move to the position before moving to the second charging station 400b and perform the solo driving mode.

즉, 상기 제2 로봇(100b)의 충전 용량값만 상기 기준 용량값 이하인 경우, 상기 협업 주행 모드의 수행 중 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 수행 모드를 해제한 후, 상기 제1 로봇(100a)은 상기 단독 주행 모드로 전환하여 단독 주행 모드를 수행하되, 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동하여, 상기 제2 충전대(400b)에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제2 충전대(400b)로 이동하기 전 위치(x2)로 이동하여 상기 제2 로봇(100b)의 단독 주행 모드를 수행하게 될 수 있다.That is, when only the charging capacity value of the second robot 100b is equal to or less than the reference capacity value, each of the first robot 100a and the second robot 100b performs the cooperative driving mode while the cooperative driving mode is performed. After release, the first robot 100a converts to the single driving mode and performs the single driving mode, but the second robot 100b moves to the second charging station 400b, and the second charging station ( In 400b), after the charging capacity of the battery is charged to a certain standard or higher, the second robot 100b moves to the position (x2) before moving to the second charging station 400b to perform the independent driving mode of the second robot 100b. can

한편, 이와 같이 상기 배터리의 충전 용량의 상태에 따른 대응이 이루어지는 상기 시스템(1)은, 도 40에 도시된 바와 같은 협업 주행 수행 방법으로 상기 협업 주행이 수행될 수 있다.Meanwhile, in the system 1 in which response is made according to the state of the charging capacity of the battery, the cooperative driving may be performed by the cooperative driving method as shown in FIG. 40 .

상기 협업 주행 수행 방법(이하, 수행 방법이라 칭한다)은, 상기 제1 충전대(400a)에서 충전한 전력을 근거로 구동하여, 청소 대상 구역을 주행하는 상기 제1 로봇(100a) 및 상기 제2 충전대(400b)에서 충전한 전력을 근거로 구동하여, 상기 제1 로봇(100a)이 주행한 경로에 따라 주행하는 상기 제2 로봇(100b)을 포함하는 상기 시스템(1)에서 협업 주행이 수행되는 방법으로, 도 18에 도시된 바와 같이, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 협업 주행 모드의 수행을 시작하는 단계(S100), 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 배터리에 충전된 용량을 감지하는 단계(S200), 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 충전 용량값을 기설정된 기준 용량값과 비교하는 단계(S300) 및 비교 결과에 따라 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 하나 이상이 단독 주행 모드를 수행하거나, 충전대(400a, 400b)로 이동하여 상기 배터리를 충전하는 단계(S400)를 포함한다.The method for performing collaborative driving (hereinafter, referred to as the performing method) is driven based on the power charged in the first charging stand 400a, and the first robot 100a traveling in the area to be cleaned and the second charging stand A method for performing cooperative driving in the system 1 including the second robot 100b driven based on the electric power charged in step 400b and traveling according to the path traveled by the first robot 100a. 18, each of the first robot 100a and the second robot 100b starts performing a cooperative driving mode (S100), the first robot 100a and the first robot 100a. 2 Each robot (100b) detecting the capacity charged in the battery (S200), the first robot (100a) and the second robot (100b) each comparing the charging capacity value with a preset reference capacity value (S300) and according to the comparison result, at least one of the first robot 100a and the second robot 100b performs a solo driving mode or moves to a charging stand 400a, 400b to charge the battery ( S400).

여기서, 상기 제1 로봇(100a)은, 상기 협업 주행의 대상 구역을 선 주행하며 먼지를 흡입하고, 상기 제2 로봇(100b)은, 상기 제1 로봇(100a)이 주행한 구역을 후 주행하며 먼지를 닦을 수 있다.Here, the first robot 100a pre-travels in the target area of the collaborative driving and inhales dust, and the second robot 100b travels after the area traveled by the first robot 100a. The dust can be wiped off.

상기 시작하는 단계(S100)는, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b)이 상기 협업 주행 모드에 따른 주행을 시작하는 단계일 수 있다.The starting step (S100) may be a step in which the first robot 100a and the second robot 100b start driving according to the cooperative driving mode.

상기 감지하는 단계(S200)는, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 주행 모드에 따른 주행 중 상기 배터리에 충전된 용량을 실시간으로 감지하는 단계일 수 있다.The sensing step (S200) may be a step in which each of the first robot 100a and the second robot 100b detects, in real time, the capacity charged in the battery while driving according to the cooperative driving mode.

상기 감지하는 단계(S200)는, 상기 제1 로봇(100a)이 상기 제1 로봇(100a)에 내장된 배터리의 충전 용량을 감지하여, 감지 결과를 상기 충전 용량값으로 수치화하고, 상기 제2 로봇(100b)이 상기 제2 로봇(100b)에 내장된 배터리의 충전 용량을 감지하여, 감지 결과를 상기 충전 용량값으로 수치화할 수 있다.In the detecting step (S200), the first robot 100a detects the charge capacity of the battery built in the first robot 100a, digitizes the detection result as the charge capacity value, and the second robot (100b) may detect the charge capacity of the battery built in the second robot (100b), and digitize the detection result as the charge capacity value.

상기 비교하는 단계(S300)는, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 감지하는 단계(S200)에서 충전 용량을 감지한 결과를 수치화한 충전 용량값을 상기 기준 용량값과 비교하는 단계일 수 있다.In the step of comparing (S300), each of the first robot (100a) and the second robot (100b) converts the charge capacity value obtained by digitizing the result of detecting the charging capacity in the sensing step (S200) to the reference capacity. It may be a step of comparing with a value.

상기 비교하는 단계(S300)는, 상기 제1 로봇(100a)이 상기 제1 로봇(100a)의 충전 용량값을 상기 기준 용량값과 비교하고, 상기 제2 로봇(100b)이 상기 제2 로봇(100b)의 충전 용량값을 상기 기준 용량값과 비교할 수 있다.In the comparing step (S300), the first robot 100a compares the charging capacity value of the first robot 100a with the reference capacity value, and the second robot 100b compares the charging capacity value of the first robot 100a with the second robot ( The charging capacity value of 100b) may be compared with the reference capacity value.

상기 비교하는 단계(S300)는, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 충전 용량값을 상기 기준 용량값과 비교한 결과를 상호 간에 전달하여 공유할 수 있다.In the comparing step (S300), each of the first robot 100a and the second robot 100b may transmit and share a result of comparing the charging capacity value with the reference capacity value.

상기 충전하는 단계(S400)는, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 중 상기 충전 용량값이 상기 기준 용량값 이하인 로봇이 충전대(400a, 400b)로 이동하여 상기 배터리를 충전하는 단계일 수 있다.In the charging step (S400), the first robot 100a and the second robot 100b whose charging capacity value is equal to or less than the reference capacity value move to the charging bases 400a and 400b to charge the battery. It may be a step to

상기 충전하는 단계(S400)는, 상기 제1 로봇(100a)의 충전 용량값이 상기 기준 용량값 이하이고, 상기 제2 로봇(100b)의 충전 용량값이 상기 기준 용량값 초과인 경우, 도 36a의 ⓐ의 경우와 같이, 상기 제1 로봇(100a)이 상기 협업 주행 모드를 해제한 후, 상기 제1 충전대(400a)로 이동하여 상기 배터리를 충전하고, 상기 배터리의 충전 용량이 일정 기준 이상으로 충전되면 상기 제1 충전대(400a)로 이동하기 전 위치로 이동하여 단독 주행 모드를 수행하고, 상기 제2 로봇(100b)이 상기 협업 주행 모드를 해제한 후, 잔여 청소 구역의 여부에 따라 상기 제2 충전대(400b)로 이동하여 상기 배터리를 충전할 수 있다.In the charging step (S400), when the charging capacity value of the first robot 100a is less than or equal to the reference capacity value and the charging capacity value of the second robot 100b exceeds the reference capacity value, FIG. 36A As in the case of ⓐ in , after the first robot 100a releases the collaborative driving mode, it moves to the first charging station 400a to charge the battery, and the battery charge capacity exceeds a predetermined standard. When it is charged, it moves to the position before moving to the first charging station 400a to perform the solo driving mode, and after the second robot 100b cancels the collaborative driving mode, the second robot 100b releases the second robot 100b depending on whether or not there is a remaining cleaning area. 2 The battery may be charged by moving to the charging stand 400b.

이에 따라, 상기 제1 로봇(100a)의 충전 용량값만 상기 기준 용량값 이하인 경우 상기 충전하는 단계(S400)에서는, 도 37에 도시된 바와 같이, 상기 협업 주행 모드의 수행(P10) 중 상기 제1 로봇(100a)은 상기 협업 수행 모드를 해제한 후, 상기 제1 충전대(400a)로 이동(P11 또는 P12)하되, 상기 제2 로봇(100b)은 상기 잔여 청소 구역의 면적이 상기 일정 기준에 해당하면 상기 잔여 청소 구역의 주행을 완료(P11)한 후 상기 제2 충전대(400b)로 이동(P12)하고, 만약 상기 잔여 청소 구역의 면적이 상기 일정 기준에 미해당하면 바로 상기 제2 충전대(400b)로 이동(P12)하고, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제1 충전대(400a)로 이동하기 전 위치(x1)로 이동하여 상기 제1 로봇(100a)의 단독 주행 모드를 수행(P13)하게 될 수 있다.Accordingly, in the charging step (S400) when only the charging capacity value of the first robot 100a is equal to or less than the reference capacity value, as shown in FIG. 1 The robot 100a releases the collaboration mode and then moves to the first charging station 400a (P11 or P12), but the second robot 100b determines that the area of the remaining cleaning area meets the predetermined standard. If so, after completing the driving of the remaining cleaning area (P11), it moves to the second charging station 400b (P12), and if the area of the remaining cleaning area does not meet the predetermined standard, the second charging station 400b ) to (P12), and the first robot 100a is positioned before moving to the first charging stand 400a after charging the charging capacity of the battery to a certain standard or higher. It may move to (x1) and perform the solo driving mode of the first robot 100a (P13).

상기 충전하는 단계(S400)는, 상기 제1 로봇(100a)의 충전 용량값이 상기 기준 용량값 이하이고, 상기 제2 로봇(100b)의 충전 용량값이 상기 기준 용량값 초과인 경우, 도 36a의 ⓑ의 경우와 같이, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 주행 모드를 해제한 후, 각각의 충전대(400a, 400b)로 이동하여 상기 배터리를 충전하고, 상기 배터리의 충전 용량이 일정 기준 이상으로 충전되면 각각의 충전대(400a, 400b)로 이동하기 전 위치로 이동하여 각각 단독 주행 모드를 수행할 수 있다.In the charging step (S400), when the charging capacity value of the first robot 100a is less than or equal to the reference capacity value and the charging capacity value of the second robot 100b exceeds the reference capacity value, FIG. 36A As in the case of ⓑ of, after each of the first robot 100a and the second robot 100b cancels the collaborative driving mode, they move to each charging station 400a, 400b to charge the battery, When the charging capacity of the battery is charged to a predetermined standard or higher, it moves to a position before moving to each charging station 400a or 400b, and each can perform a single driving mode.

이에 따라, 상기 제1 로봇(100a)의 충전 용량값만 상기 기준 용량값 이하인 경우 상기 충전하는 단계(S400)는, 도 38에 도시된 바와 같이, 상기 협업 주행 모드의 수행(P20) 중 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 수행 모드를 해제한 후, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)로 이동하고 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동(P21)한 후, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 제1 충전대(400a) 및 상기 제2 충전대(400b) 각각에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)로 이동하기 전 위치(x1)로 이동하여 상기 제1 로봇(100a)의 단독 주행 모드를 수행하고, 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동하기 전 위치(x2)로 이동하여 상기 제2 로봇(100b)의 단독 주행 모드를 수행(P22)하게 될 수도 있다.Accordingly, when only the charging capacity value of the first robot 100a is equal to or less than the reference capacity value, the charging step (S400), as shown in FIG. After each of the first robot 100a and the second robot 100b releases the collaboration performance mode, the first robot 100a moves to the first charging base 400a and the second robot 100b After moving to the second charging station 400b (P21), the first robot 100a and the second robot 100b respectively perform the above operation on the first charging station 400a and the second charging station 400b, respectively. After charging the charging capacity of the battery to a certain standard or higher, the first robot 100a moves to the position (x1) before moving to the first charging stand 400a, and moves to the independent driving mode of the first robot 100a. , and the second robot 100b may move to a position (x2) before moving to the second charging station 400b and perform the solo driving mode of the second robot 100b (P22). .

상기 충전하는 단계(S400)는, 상기 제1 로봇(100a)의 충전 용량값이 상기 기준 용량값 초과이고, 상기 제2 로봇(100b)의 충전 용량값이 상기 기준 용량값 이하인 경우, 도 36a의 ⓒ의 경우와 같이, 상기 제1 로봇(100a)이 상기 협업 주행 모드를 해제하고 단독 주행 모드로 전환한 후, 상기 단독 주행 모드를 수행하며 주행하고, 상기 제2 로봇(100b)이 상기 협업 주행 모드를 해제한 후, 상기 제2 충전대(400b)로 이동하여 상기 배터리를 충전할 수 있다.In the charging step (S400), when the charging capacity value of the first robot 100a is greater than the reference capacity value and the charging capacity value of the second robot 100b is less than or equal to the reference capacity value, FIG. 36A As in the case of ⓒ, after the first robot 100a cancels the cooperative driving mode and switches to the independent driving mode, it travels while performing the independent driving mode, and the second robot 100b performs the cooperative driving After the mode is released, the battery may be charged by moving to the second charging stand 400b.

이에 따라, 상기 제2 로봇(100b)의 충전 용량값만 상기 기준 용량값 이하인 경우 상기 충전하는 단계(S400)는, 도 39에 도시된 바와 같이, 상기 협업 주행 모드의 수행(P30) 중 상기 제2 로봇(100b)은 상기 협업 주행 모드를 해제한 후, 상기 제2 충전대(400b)로 이동(P31)하되, 상기 제1 로봇(100a)은 상기 협업 주행 모드를 해제한 후 단독 주행 모드로 전환하여 단독 주행 모드(P32)를 수행하게 될 수 있다.Accordingly, when only the charging capacity value of the second robot 100b is equal to or less than the reference capacity value, the charging step (S400), as shown in FIG. After releasing the cooperative driving mode, the second robot 100b moves to the second charging base 400b (P31), but the first robot 100a switches to the independent driving mode after canceling the cooperative driving mode. Thus, the single driving mode (P32) may be performed.

상기 충전하는 단계(S400)는, 상기 제1 로봇(100a)의 충전 용량값 및 상기 제2 로봇(100b)의 충전 용량값 모두가 상기 기준 용량값 이하인 경우, 도 36a의 ⓔ의 경우와 같이, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 주행 모드를 해제한 후, 각각의 충전대(400a, 400b)로 이동하여 상기 배터리를 충전하되, 상기 제1 로봇(100a)이 상기 배터리의 충전 용량이 일정 기준 이상으로 충전되면 상기 제1 충전대(400a)로 이동하기 전 위치로 이동하여 단독 주행 모드를 수행할 수 있다.In the charging step (S400), when both the charging capacity value of the first robot 100a and the charging capacity value of the second robot 100b are equal to or less than the reference capacity value, as in the case of ⓔ in FIG. 36A, After each of the first robot 100a and the second robot 100b cancels the cooperative driving mode, they move to the respective charging stations 400a and 400b to charge the battery, and the first robot 100a When the charge capacity of the battery is charged to a predetermined standard or higher, it may move to a position before moving to the first charging station 400a and perform the independent driving mode.

이에 따라, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 모두의 충전 용량값이 상기 기준 용량값 이하인 경우 상기 충전하는 단계(S300)는, 도 37에 도시된 바와 같이, 상기 협업 주행 모드의 수행(P10) 중 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 수행 모드를 해제한 후, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)로 이동하고 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동(P12)하되, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제1 충전대(400a)로 이동하기 전 위치(x1)로 이동하여 상기 제1 로봇(100a)의 단독 주행 모드를 수행(P13)하게 될 수 있다.Accordingly, when the charging capacity values of both the first robot 100a and the second robot 100b are equal to or less than the reference capacity value, the charging step (S300), as shown in FIG. 37, the cooperative driving After each of the first robot 100a and the second robot 100b cancels the collaborative performance mode during the execution of the mode (P10), the first robot 100a moves to the first charging stand 400a. And the second robot 100b moves to the second charging stand 400b (P12), but the first robot 100a charges the charge capacity of the battery at the first charging stand 400a to a certain standard or higher. After that, it may be moved to the position (x1) before moving to the first charging stand 400a to perform the solo driving mode of the first robot 100a (P13).

상기 충전하는 단계(S400)는, 상기 제1 로봇(100a)의 충전 용량값 및 상기 제2 로봇(100b)의 충전 용량값 모두가 상기 기준 용량값 이하인 경우, 도 36a의 ⓕ의 경우와 같이, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 주행 모드를 해제한 후, 각각의 충전대(400a, 400b)로 이동하여 상기 배터리를 충전하고, 상기 배터리의 충전 용량이 일정 기준 이상으로 충전되면 각각의 충전대(400a, 400b)로 이동하기 전 위치로 이동하여 각각 단독 주행 모드를 수행할 수 있다.In the charging step (S400), when both the charging capacity value of the first robot 100a and the charging capacity value of the second robot 100b are equal to or less than the reference capacity value, as in the case of ⓕ in FIG. 36A, After each of the first robot 100a and the second robot 100b cancels the collaborative driving mode, they move to each of the charging stations 400a and 400b to charge the battery, and the battery has a constant charge capacity. When the battery is charged beyond the reference level, it moves to a position prior to moving to each of the charging bases 400a and 400b, and each individual driving mode can be performed.

이에 따라, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 모두의 충전 용량값이 상기 기준 용량값 이하인 경우 상기 충전하는 단계(S300)는, 도 38에 도시된 바와 같이, 상기 협업 주행 모드의 수행(P20) 중 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 협업 수행 모드를 해제한 후, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)로 이동하고 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동(P21)한 후, 상기 제1 로봇(100a) 및 상기 제2 로봇(100b) 각각이 상기 제1 충전대(400a) 및 상기 제2 충전대(400b) 각각에서 상기 배터리의 충전 용량을 일정 기준 이상으로 충전한 후, 상기 제1 로봇(100a)은 상기 제1 충전대(400a)로 이동하기 전 위치(x1)로 이동하여 상기 제1 로봇(100a)의 단독 주행 모드를 수행하고, 상기 제2 로봇(100b)은 상기 제2 충전대(400b)로 이동하기 전 위치(x2)로 이동하여 상기 제2 로봇(100b)의 단독 주행 모드를 수행(P22)하게 될 수도 있다.Accordingly, when the charging capacity values of both the first robot 100a and the second robot 100b are equal to or less than the reference capacity value, the charging step (S300), as shown in FIG. 38, the cooperative driving After each of the first robot 100a and the second robot 100b cancels the collaborative performance mode during the execution of the mode (P20), the first robot 100a moves to the first charging base 400a. and the second robot 100b moves to the second charging stand 400b (P21), and then the first robot 100a and the second robot 100b respectively move to the first charging stand 400a and the second robot 100b. After the charging capacity of the battery is charged to a predetermined standard or higher in each of the second charging stations 400b, the first robot 100a moves to the position (x1) before moving to the first charging station 400a, 1 Performs the solo driving mode of the robot 100a, and the second robot 100b moves to the position (x2) before moving to the second charging stand 400b to perform the solo driving mode of the second robot 100b may be performed (P22).

상기 시작하는 단계(S100), 상기 감지하는 단계(S200), 상기 비교하는 단계(S300) 및 상기 충전하는 단계(S400)를 포함하는 상기 수행 방법은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 상기 컴퓨터는 상기 제어부(1800)를 포함할 수도 있다.The performing method including the starting step (S100), the detecting step (S200), the comparing step (S300), and the charging step (S400) is a computer-readable medium on which a program is recorded. It can be implemented as code. The computer-readable medium includes all types of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable media include Hard Disk Drive (HDD), Solid State Disk (SSD), Silicon Disk Drive (SDD), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. , and also includes those implemented in the form of a carrier wave (eg, transmission over the Internet). Also, the computer may include the controller 1800.

지금까지 본 발명에 따른 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서는 여러 가지 변형이 가능함은 물론이다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 청구범위뿐 아니라 이 청구범위와 균등한 것들에 의해 정해져야 한다.Although specific embodiments according to the present invention have been described so far, various modifications are possible without departing from the scope of the present invention. Therefore, the scope of the present invention should not be limited to the described embodiments and should not be defined, but should be defined by not only the following claims but also those equivalent to these claims.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 청구범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.As described above, the present invention has been described by the limited embodiments and drawings, but the present invention is not limited to the above embodiments, and those skilled in the art in the field to which the present invention belongs can make various modifications and transformation is possible Therefore, the spirit of the present invention should be grasped only by the claims described below, and all equivalent or equivalent modifications thereof will be said to belong to the scope of the spirit of the present invention.

1: 이동 로봇 시스템 10: 건물
50: 네트워크 100: 이동 로봇
100a: 제1 로봇 100b: 제2 로봇
110: 본체 111: 휠 유닛
120: 청소부 130: 센싱부
131: 카메라 300, 300a, 300b: 단말기
400: 충전대 400a: 제1 충전대
400b: 제2 충전대 500: 서버
600: 제어기 1100: 통신부
1200: 입력부 1300: 구동부
1400: 센서 1500: 출력부
1600: 전원부 1700: 메모리
1800: 제어부 1900: 청소부
1: mobile robot system 10: building
50: network 100: mobile robot
100a: first robot 100b: second robot
110: body 111: wheel unit
120: cleaner 130: sensing unit
131: camera 300, 300a, 300b: terminal
400: charging stand 400a: first charging stand
400b: second charging station 500: server
600: controller 1100: communication unit
1200: input unit 1300: driving unit
1400: sensor 1500: output unit
1600: power unit 1700: memory
1800: control unit 1900: cleaner

Claims (22)

청소 대상 영역을 주행하며 청소를 수행하는 복수의 이동 로봇; 및
상기 복수의 이동 로봇과 통신하며, 상기 복수의 이동 로봇에 원격 제어에 대한 제어 명령을 송신하는 제어기;를 포함하고,
상기 복수의 이동 로봇은,
상기 제어기로부터 상기 청소 대상 영역을 협업하여 청소하는 협업 주행 모드에 대한 제어 명령을 입력받은 경우,
상기 복수의 이동 로봇의 구동 상태가 상기 협업 주행 모드가 수행될 수 있는 상기 구동 상태의 조건인 기설정된 기준 조건에 해당하는지 여부를 판단하여, 상기 구동 상태가 상기 기준 조건에 해당하면 상기 구동 상태에 따라 상기 협업 주행 모드를 시작하기 위한 모션을 수행하고, 상기 구동 상태가 상기 기준 조건에 미해당하면 상기 협업 주행 모드를 시작하기 위한 모션을 미수행하되,
상기 구동 상태는,
상기 복수의 이동 로봇 각각의 맵 공유 상태, 배터리 충전 상태 및 상대 로봇의 충전대 위치 정보 상태 중 하나 이상을 포함하고,
상기 기준 조건은,
상기 복수의 이동 로봇 각각이 맵을 공유하는 제1 조건;
상기 복수의 이동 로봇 각각의 배터리 충전 용량이 기설정된 기준 용량 이상인 제2 조건; 및
상기 복수의 이동 로봇 각각에 상대 로봇의 충전대 위치 정보가 저장된 제3 조건; 중 하나 이상을 포함하는 것을 특징으로 하는 이동 로봇 시스템.
a plurality of mobile robots that drive and clean an area to be cleaned; and
A controller communicating with the plurality of mobile robots and transmitting a control command for remote control to the plurality of mobile robots;
The plurality of mobile robots,
When a control command for a collaborative driving mode for collaboratively cleaning the cleaning target area is received from the controller,
It is determined whether the driving state of the plurality of mobile robots corresponds to a predetermined reference condition, which is the condition of the driving state in which the collaborative driving mode can be performed, and if the driving state corresponds to the reference condition, the driving state A motion for starting the collaborative driving mode is performed according to, and if the driving state does not correspond to the reference condition, the motion for starting the collaborative driving mode is not performed,
The driving state is
including at least one of a map sharing state, a battery charge state, and a charging station position information state of a counterpart robot of each of the plurality of mobile robots;
The reference condition is,
a first condition that each of the plurality of mobile robots share a map;
a second condition in which the battery charge capacity of each of the plurality of mobile robots is greater than or equal to a predetermined reference capacity; and
a third condition in which information on the position of a charging table of an opponent robot is stored in each of the plurality of mobile robots; Mobile robot system, characterized in that it comprises one or more of.
제1 항에 있어서,
상기 제어기는,
이동 단말기인 것을 특징으로 하는 이동 로봇 시스템.
According to claim 1,
The controller,
A mobile robot system, characterized in that it is a mobile terminal.
제1 항에 있어서,
상기 협업 주행 모드는,
상기 복수의 이동 로봇이 순서대로 주행하며 청소하는 모드인 것을 특징으로 하는 이동 로봇 시스템.
According to claim 1,
The cooperative driving mode,
The mobile robot system, characterized in that the plurality of mobile robots are in a mode of driving and cleaning in order.
제1 항에 있어서,
상기 협업 주행 모드는,
상기 복수의 이동 로봇 중 어느 한 로봇이 주행하며 청소한 구역을 나머지 로봇이 주행하며 청소하는 모드인 것을 특징으로 하는 이동 로봇 시스템.
According to claim 1,
The cooperative driving mode,
The mobile robot system, characterized in that in a mode in which one of the plurality of mobile robots travels and cleans the area where the other robot travels and cleans.
제1 항에 있어서,
상기 복수의 이동 로봇은,
상기 협업 주행 모드에 대한 제어 명령을 입력받은 경우,
현재 위치에서 수행 중인 동작을 중지하여, 상기 구동 상태를 판단하는 것을 특징으로 하는 이동 로봇 시스템.
According to claim 1,
The plurality of mobile robots,
When a control command for the cooperative driving mode is input,
A mobile robot system, characterized in that for determining the driving state by stopping the operation being performed at the current location.
삭제delete 삭제delete 삭제delete 제1 항에 있어서,
상기 복수의 이동 로봇은,
상기 판단 결과, 상기 복수의 이동 로봇 각각이 맵을 공유하고, 상기 복수의 이동 로봇 각각의 배터리 충전 용량이 기설정된 기준 용량 이상인 경우,
상기 복수의 이동 로봇 각각에 상대 로봇의 충전대 위치 정보가 저장되었는지 여부에 따라 상기 협업 주행 모드를 위한 모션을 수행하는 것을 특징으로 하는 이동 로봇 시스템.
According to claim 1,
The plurality of mobile robots,
As a result of the determination, when each of the plurality of mobile robots shares a map and the battery charge capacity of each of the plurality of mobile robots is greater than or equal to a predetermined reference capacity,
The mobile robot system, characterized in that performing the motion for the collaborative driving mode according to whether the position information of the charging table of the other robot is stored in each of the plurality of mobile robots.
제9 항에 있어서,
상기 복수의 이동 로봇은,
상기 판단 결과, 상기 복수의 이동 로봇 각각에 상대 로봇의 충전대 위치 정보가 저장된 경우,
선 주행 대상 로봇이 상대 로봇과 일정 거리 이내의 위치로 이동하여 상기 협업 주행 모드를 수행하는 것을 특징으로 하는 이동 로봇 시스템.
According to claim 9,
The plurality of mobile robots,
As a result of the determination, when the position information of the charging table of the other robot is stored in each of the plurality of mobile robots,
The mobile robot system, characterized in that the first driving target robot moves to a position within a certain distance from the other robot and performs the cooperative driving mode.
제10 항에 있어서,
상기 복수의 이동 로봇은,
상기 판단 결과, 상기 복수의 이동 로봇 각각에 상대 로봇의 충전대 위치 정보가 미저장된 경우,
상호 간의 위치를 인식하여, 인식 결과에 따라 상기 협업 주행 모드를 위한 모션을 수행하는 것을 특징으로 하는 이동 로봇 시스템.
According to claim 10,
The plurality of mobile robots,
As a result of the determination, when the charging station position information of the other robot is not stored in each of the plurality of mobile robots,
A mobile robot system characterized by recognizing mutual positions and performing motion for the collaborative driving mode according to the recognition result.
제11 항에 있어서,
상기 복수의 이동 로봇은,
상기 인식 결과, 상호 간의 위치를 인식한 경우,
선 주행 대상 로봇이 상대 로봇과 일정 거리 이내의 위치로 이동하여 상기 협업 주행 모드를 수행하는 것을 특징으로 하는 이동 로봇 시스템.
According to claim 11,
The plurality of mobile robots,
As a result of the above recognition, when the location of each other is recognized,
The mobile robot system, characterized in that the first driving target robot moves to a position within a certain distance from the other robot and performs the cooperative driving mode.
제11 항에 있어서,
상기 복수의 이동 로봇은,
상기 인식 결과, 어느 한 로봇이 상대 로봇의 위치를 미인식한 경우,
상기 복수의 이동 로봇 중 하나 이상에서 미인식 로봇을 상기 상대 로봇의 근방으로 이동시키도록 알리는 알림을 출력한 후, 이동 결과에 따라 상기 협업 주행 모드를 위한 모션을 수행하는 것을 특징으로 하는 이동 로봇 시스템.
According to claim 11,
The plurality of mobile robots,
As a result of the above recognition, if one robot does not recognize the position of the other robot,
The mobile robot system characterized in that at least one of the plurality of mobile robots outputs a notification informing to move the unrecognized robot to the vicinity of the opponent robot, and then performs a motion for the collaborative driving mode according to a result of the movement. .
제13 항에 있어서,
상기 복수의 이동 로봇은,
상기 미인식 로봇이 상기 상대 로봇의 근방으로 이동된 경우,
상기 미인식 로봇이 상기 상대 로봇과의 통신 결과를 이용하여 상기 상대 로봇의 위치를 인식하는 위치 인식 동작을 수행한 후, 기설정된 주행 기준에 따라 상기 협업 주행 모드를 수행하는 것을 특징으로 하는 이동 로봇 시스템.
According to claim 13,
The plurality of mobile robots,
When the unrecognized robot moves to the vicinity of the opponent robot,
The mobile robot characterized in that the unrecognized robot performs a location recognition operation for recognizing the location of the counterpart robot using a communication result with the counterpart robot, and then performs the collaborative driving mode according to a preset driving criterion. system.
제1 로봇 및 제2 로봇의 협업 주행 수행 방법에 있어서,
상기 제1 로봇 및 상기 제2 로봇에 협업 주행의 수행에 대한 명령이 입력되는 단계;
상기 제1 로봇이 상기 제1 로봇 및 상기 제2 로봇의 구동 상태를 기설정된 기준 조건과 비교하는 단계; 및
비교 결과에 따라 상기 제1 로봇 및 상기 제2 로봇 각각이 협업 주행을 위한 모션을 수행하는 단계;를 포함하되,
상기 구동 상태를 기설정된 기준 조건과 비교하는 단계는,
상기 제1 로봇 및 상기 제2 로봇 각각의 맵 공유 상태 및 배터리 충전 용량 상태 각각을 상기 기준 조건 중 제1 조건 및 제2 조건과 비교하는 단계; 및
상기 제1 조건 및 제2 조건과 비교한 결과에 따라, 상기 제1 로봇 및 상기 제2 로봇 각각의 상대 로봇의 충전대 위치 정보의 저장 상태를 상기 기준 조건 중 제3 조건과 비교하는 단계;를 포함하고,
상기 협업 주행을 위한 모션을 수행하는 단계는,
상기 구동 상태가 상기 기준 조건에 해당하는 경우, 상기 구동 상태에 대응하여 상기 협업 주행을 시작하기 위한 모션을 수행하는 것을 특징으로 하는 협업 주행 수행 방법.
A method for performing cooperative driving of a first robot and a second robot,
inputting a command for performing cooperative driving to the first robot and the second robot;
Comparing, by the first robot, driving states of the first robot and the second robot with a preset reference condition; and
Performing a motion for cooperative driving by each of the first robot and the second robot according to the comparison result; Including,
Comparing the driving state with a preset reference condition,
comparing a map sharing state and a battery charge capacity state of each of the first robot and the second robot with a first condition and a second condition among the reference conditions; and
Comparing the stored state of the charging station position information of the opponent robot of each of the first robot and the second robot with a third condition among the reference conditions according to a result of the comparison with the first condition and the second condition; do,
The step of performing the motion for the collaborative driving,
When the driving state corresponds to the reference condition, a motion for starting the collaborative driving is performed in response to the driving state.
제15 항에 있어서,
상기 제1 로봇은,
상기 협업 주행의 대상 구역을 선 주행하며 먼지를 흡입하고,
상기 제2 로봇은,
상기 제1 로봇이 주행한 구역을 후 주행하며 먼지를 닦는 것을 특징으로 하는 협업 주행 수행 방법.
According to claim 15,
The first robot,
Pre-driving in the target area of the collaborative driving and inhaling dust,
The second robot,
A method for performing collaborative driving, characterized in that the first robot travels after driving in the area and wipes dust.
제15 항에 있어서,
상기 협업 주행의 수행에 대한 명령이 입력되는 단계에서는,
상기 제1 로봇 및 상기 제2 로봇이 현재 위치에서 수행 중인 동작을 중지하는 것을 특징으로 하는 협업 주행 수행 방법.
According to claim 15,
In the step of inputting a command for performing the cooperative driving,
The method of performing cooperative driving, characterized in that for stopping the operation being performed by the first robot and the second robot at the current location.
삭제delete 제15 항에 있어서,
상기 협업 주행을 위한 모션을 수행하는 단계는,
상기 구동 상태가 상기 제1 조건 내지 상기 제3 조건 모두에 해당하는 경우,
상기 제1 로봇이 상기 제2 로봇의 일정 거리 이내의 위치로 이동하는 것을 특징으로 하는 협업 주행 수행 방법.
According to claim 15,
The step of performing the motion for the collaborative driving,
When the driving state corresponds to all of the first condition to the third condition,
The method of performing cooperative driving, characterized in that the first robot moves to a position within a predetermined distance from the second robot.
제15 항에 있어서,
상기 협업 주행을 위한 모션을 수행하는 단계는,
상기 구동 상태가 상기 제1 조건 및 상기 제2 조건에 해당하고, 상기 제3 조건에 미해당하는 경우,
상기 제1 로봇 및 상기 제2 로봇 각각이 상호 간의 위치를 인식하여, 인식 결과에 따라 상기 제1 로봇 및 상기 제2 로봇 중 하나 이상이 상기 협업 주행을 위한 모션을 수행하는 것을 특징으로 하는 협업 주행 수행 방법.
According to claim 15,
The step of performing the motion for the collaborative driving,
When the driving state corresponds to the first condition and the second condition and does not correspond to the third condition,
Wherein each of the first robot and the second robot recognizes a position of each other, and according to a recognition result, at least one of the first robot and the second robot performs a motion for the collaborative driving. How to do it.
제20 항에 있어서,
상기 협업 주행을 위한 모션을 수행하는 단계는,
상기 상호 간의 위치를 인식한 결과, 어느 한 로봇이 상대 로봇의 위치를 미인식한 경우,
상기 제1 로봇 및 상기 제2 로봇 중 하나 이상에서 미인식 로봇을 상기 상대 로봇의 근방으로 이동시키도록 알리는 알림을 출력한 후, 이동 결과에 따라 상기 협업 주행을 위한 모션을 수행하는 것을 특징으로 하는 협업 주행 수행 방법.
According to claim 20,
The step of performing the motion for the collaborative driving,
As a result of recognizing the position of each other, if one robot does not recognize the position of the other robot,
Characterized in that at least one of the first robot and the second robot outputs a notification informing to move the unrecognized robot to the vicinity of the opponent robot, and then performs the motion for the collaborative driving according to the result of the movement. How to do cooperative driving.
제21 항에 있어서,
상기 협업 주행을 위한 모션을 수행하는 단계는,
상기 미인식 로봇이 상기 상대 로봇의 근방으로 이동된 경우,
상기 미인식 로봇이 상기 상대 로봇과의 통신 결과를 이용하여 상기 상대 로봇의 위치를 인식하는 위치 인식 동작을 수행한 후, 기설정된 주행 기준에 따라 상기 협업 주행을 수행하는 것을 특징으로 하는 협업 주행 수행 방법.
According to claim 21,
The step of performing the motion for the collaborative driving,
When the unrecognized robot moves to the vicinity of the opponent robot,
Wherein the unrecognized robot performs a location recognition operation for recognizing the location of the partner robot using a communication result with the partner robot, and then performs the collaborative driving according to a predetermined driving criterion. Way.
KR1020200130387A 2020-10-08 2020-10-08 Moving robot system KR102490755B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020200130387A KR102490755B1 (en) 2020-10-08 2020-10-08 Moving robot system
TW110133094A TWI789896B (en) 2020-10-08 2021-09-06 Moving robot system and method of performing collaborative driving of moving robots
PCT/KR2021/012379 WO2022075616A1 (en) 2020-10-08 2021-09-10 Mobile robot system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200130387A KR102490755B1 (en) 2020-10-08 2020-10-08 Moving robot system

Publications (2)

Publication Number Publication Date
KR20220047454A KR20220047454A (en) 2022-04-18
KR102490755B1 true KR102490755B1 (en) 2023-01-25

Family

ID=81126589

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200130387A KR102490755B1 (en) 2020-10-08 2020-10-08 Moving robot system

Country Status (3)

Country Link
KR (1) KR102490755B1 (en)
TW (1) TWI789896B (en)
WO (1) WO2022075616A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115629600B (en) * 2022-08-01 2023-12-12 北方工业大学 Multi-machine collaborative trapping method based on buffer Wino diagram in complex dynamic security environment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102100476B1 (en) * 2018-05-04 2020-05-26 엘지전자 주식회사 A plurality of robot cleaner and a controlling method for the same

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102117984B1 (en) * 2013-11-27 2020-06-02 한국전자통신연구원 Method and control apparatus for cooperative cleaning with multi-robot
JP6931994B2 (en) * 2016-12-22 2021-09-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America Autonomous mobile body, mobile control method and mobile control program
KR102489806B1 (en) * 2018-01-03 2023-01-19 삼성전자주식회사 Moving apparatus for cleaning, and system and method for cooperative cleaning thereof
KR20190090757A (en) * 2019-07-26 2019-08-02 엘지전자 주식회사 A plurality of robot cleaner and A controlling method for the same

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102100476B1 (en) * 2018-05-04 2020-05-26 엘지전자 주식회사 A plurality of robot cleaner and a controlling method for the same

Also Published As

Publication number Publication date
KR20220047454A (en) 2022-04-18
TWI789896B (en) 2023-01-11
WO2022075616A1 (en) 2022-04-14
TW202214401A (en) 2022-04-16

Similar Documents

Publication Publication Date Title
KR102470532B1 (en) A plurality of autonomous mobile robots and a controlling method for the same
TWI733105B (en) A plurality of mobile robots and a controlling method for the same
JP2019121365A (en) Cooperative and persistent mapping of mobile cleaning robot
US11700989B2 (en) Mobile robot using artificial intelligence and controlling method thereof
EP3432107A1 (en) Cleaning robot and controlling method thereof
TWI731555B (en) Mobile robot and method of controlling plurality of mobile robots
KR20220056166A (en) Moving robot system
KR102198187B1 (en) Moving robot
CN113966187B (en) Mobile robot and control method for mobile robot
KR102309303B1 (en) Robot Cleaner and Controlling Method for the same
KR102490755B1 (en) Moving robot system
KR102490754B1 (en) Moving robot system
KR102179057B1 (en) A plurality of autonomous cleaner and a controlling method for the same
US20220125255A1 (en) Mobile robot and method of controlling mobile robot
TWI760881B (en) Robot cleaner and method for controlling the same
KR102410529B1 (en) Moving robot system
KR102410530B1 (en) Moving robot system
TWI837507B (en) Moving robot system

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant