KR20220137506A - A building where robots that are robust to communication delay move - Google Patents

A building where robots that are robust to communication delay move Download PDF

Info

Publication number
KR20220137506A
KR20220137506A KR1020210081914A KR20210081914A KR20220137506A KR 20220137506 A KR20220137506 A KR 20220137506A KR 1020210081914 A KR1020210081914 A KR 1020210081914A KR 20210081914 A KR20210081914 A KR 20210081914A KR 20220137506 A KR20220137506 A KR 20220137506A
Authority
KR
South Korea
Prior art keywords
robot
obstacle
control command
time
communication delay
Prior art date
Application number
KR1020210081914A
Other languages
Korean (ko)
Other versions
KR102485644B1 (en
KR102485644B9 (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
Priority claimed from KR1020210043612A external-priority patent/KR102484773B1/en
Application filed by 네이버랩스 주식회사 filed Critical 네이버랩스 주식회사
Priority to KR1020210081914A priority Critical patent/KR102485644B1/en
Priority to PCT/KR2022/000045 priority patent/WO2022211224A1/en
Publication of KR20220137506A publication Critical patent/KR20220137506A/en
Application granted granted Critical
Publication of KR102485644B1 publication Critical patent/KR102485644B1/en
Publication of KR102485644B9 publication Critical patent/KR102485644B9/en

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/0011Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process

Abstract

The present invention relates to remote control of a robot, and more specifically, to a method and a system for remotely controlling a robot considering communication delay. The method for remotely controlling a robot through communication between the robot and a server comprises the steps of: calculating communication delay time between a robot and a server based on time information transmitted and received between the robot and the server; generating a control command related to driving of the robot based on the calculated communication delay time; and transmitting the control command to the robot to enable the robot to drive according to the control command. The control command is generated based on an anticipated position of the robot at the point when the robot receives the control command.

Description

통신 지연에 강인한 로봇이 주행하는 건물{A BUILDING WHERE ROBOTS THAT ARE ROBUST TO COMMUNICATION DELAY MOVE}A building in which a robot resistant to communication delay runs {A BUILDING WHERE ROBOTS THAT ARE ROBUST TO COMMUNICATION DELAY MOVE}

본 발명은 로봇 원격 제어에 관한 것으로서, 통신 지연을 고려하여 로봇을 제어할 수 있는 로봇 원격 제어 방법 및 시스템이다.The present invention relates to a robot remote control, and a robot remote control method and system capable of controlling a robot in consideration of communication delay.

기술이 발전함에 따라, 다양한 서비스 디바이스들이 나타나고 있으며, 특히 최근에는 다양한 작업 또는 서비스를 수행하는 로봇에 대한 기술 개발이 활발하게 이루어지고 있다.As technology develops, various service devices have appeared, and in particular, technology development for robots that perform various tasks or services has been actively developed in recent years.

나아가 최근에는, 인공 지능 기술, 클라우드 기술 등이 발전함에 따라, 복수의 로봇을 효율적으로 제어하기 위한 브레인리스 로봇 시스템에 대한 개발이 이루어지고 있다. Furthermore, in recent years, as artificial intelligence technology, cloud technology, and the like develop, a brainless robot system for efficiently controlling a plurality of robots is being developed.

브레인리스 로봇 시스템은 복수의 브레인리스 로봇 및 브레인 서버를 포함하고, 브레인리스 로봇 시스템에서 각 브레인리스 로봇은 원격 또는 엣지(edge)에 위치한 브레인 서버에 센서 정보 및 각종 로봇의 상태를 리포트하고 이동 등의 제어 명령을 수신하여 처리하게 된다.The brainless robot system includes a plurality of brainless robots and brain servers, and in the brainless robot system, each brainless robot reports sensor information and status of various robots to a remote or edge-located brain server and moves, etc. Receive and process control commands from

이 때, 로봇과 서버 사이에 통신으로 인한 지연이 발생될 수 있다. 통신 지연은 브레인리스 로봇 시스템에서 불가피하게 발생되는 것으로, 로봇의 제어에 큰 영향을 줄 수 있다.At this time, a delay may occur due to communication between the robot and the server. Communication delay is an unavoidable occurrence in a brainless robot system, and can have a great effect on the control of the robot.

이에, 대한민국 공개특허 제10-2011-0079872호(통신 네트워크에서 시간 및 주파수 전송을 위한 방법 및 장치)에서는, 클라이언트 장치와 서버 간에 메시지를 주기적으로 교환하여 통신지연을 산출하는 방법이 개시되어 있으나, 통신 지연을 지속적으로 계측하여 제어에 반영하는 방법에 대하여 알려진 연구 결과가 없다.Accordingly, in Korean Patent Laid-Open No. 10-2011-0079872 (Method and Apparatus for Time and Frequency Transmission in a Communication Network), a method for calculating communication delay by periodically exchanging messages between a client device and a server is disclosed. There is no known research result on how to continuously measure the communication delay and reflect it to the control.

따라서, 로봇으로 보내는 명령 정보가 시간 차이를 두고 적용된다는 점, 로봇에서 보내는 정보가 지연되어 브레인 서버로 도착한다는 점을 제어 명령에 선제적으로 반영하는 방법에 대한 니즈가 여전히 필요하다.Therefore, there is still a need for a method to preemptively reflect the fact that the command information sent to the robot is applied with a time difference and that the information sent from the robot arrives at the brain server with a delay.

본 발명은 로봇에 대한 원격 제어 방법 및 시스템을 제공하는 것이다. 보다 구체적으로 본 발명은, 로봇과 서버 간의 통신 지연을 고려하여 로봇을 제어할 수 있는 로봇 원격 제어 방법 및 시스템을 제공하는 것이다.The present invention is to provide a remote control method and system for a robot. More specifically, the present invention is to provide a robot remote control method and system capable of controlling the robot in consideration of the communication delay between the robot and the server.

나아가, 본 발명은 통신 지연을 고려하여 로봇의 이동 경로 상에 포함된 장애물을 안전하게 회피할 수 있도록 하는 로봇 원격 제어 방법 및 시스템을 제공하는 것이다. Furthermore, the present invention is to provide a robot remote control method and system for safely avoiding obstacles included in the movement path of the robot in consideration of communication delay.

위에서 살펴본 과제를 해결하기 위하여 로봇과 서버 간의 통신을 통해 로봇을 원격으로 제어하는 방법은 상기 로봇과 서버 간에 송수신되는 시간 정보에 근거하여 상기 로봇과 상기 서버 간의 통신 지연 시간을 산출하는 단계, 상기 통신 지연 시간에 기반하여 상기 로봇의 주행과 관련된 제어명령을 생성하는 단계 및 상기 제어 명령에 따라 상기 로봇이 주행하도록 상기 로봇으로 상기 제어 명령을 전송하는 단계를 포함하고, 상기 제어명령은 상기 로봇이 상기 제어명령을 수신하는 시점에서의 상기 로봇의 예상 위치에 기반하여 생성되는 것을 특징으로 하는 로봇 원격 제어 방법을 제공한다. In order to solve the above problems, a method for remotely controlling a robot through communication between a robot and a server includes calculating a communication delay time between the robot and the server based on time information transmitted and received between the robot and the server, the communication Generating a control command related to driving of the robot based on a delay time and transmitting the control command to the robot so that the robot runs according to the control command, wherein the control command causes the robot to run It provides a robot remote control method, characterized in that generated based on the expected position of the robot at the time of receiving the control command.

또한, 본 발명에 따른 로봇과 서버 간의 통신을 통해 로봇을 원격으로 제어하는 시스템은, 로봇과 데이터를 송수신하도록 이루어지는 통신부 및 로봇과 서버 간에 송수신되는 시간 정보에 근거하여 상기 로봇과 상기 서버 간의 통신 지연 시간을 산출하고, 상기 통신 지연 시간에 기반하여 상기 로봇의 주행과 관련된 제어명령을 생성하고, 상기 제어 명령에 따라 상기 로봇이 주행하도록 상기 로봇으로 상기 제어 명령을 전송하는 제어부를 포함하고, 상기 제어명령은 상기 로봇이 상기 제어명령을 수신하는 시점에서의 상기 로봇의 예상 위치에 기반하여 생성되는 것을 특징으로 한다.In addition, the system for remotely controlling a robot through communication between the robot and the server according to the present invention is a communication unit configured to transmit and receive data to and from the robot, and communication delay between the robot and the server based on time information transmitted and received between the robot and the server a control unit that calculates a time, generates a control command related to the driving of the robot based on the communication delay time, and transmits the control command to the robot so that the robot runs according to the control command, the control unit comprising: The command is characterized in that the robot is generated based on the expected position of the robot when the control command is received.

나아가, 본 발명에 따른 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 기록매체에 저장 가능한 프로그램은, 로봇과 서버 간에 송수신되는 시간 정보에 근거하여 상기 로봇과 상기 서버 간의 통신 지연 시간을 산출하는 단계, 상기 통신 지연 시간에 기반하여 상기 로봇의 주행과 관련된 제어명령을 생성하는 단계 및 상기 제어 명령에 따라 상기 로봇이 주행하도록 상기 로봇으로 상기 제어 명령을 전송하는 단계를 수행하도록 하는 명령어들을 포함하고, 상기 제어명령은 상기 로봇이 상기 제어명령을 수신하는 시점에서의 상기 로봇의 예상 위치에 기반하여 생성될 수 있다.Furthermore, the program that is executed by one or more processes in the electronic device according to the present invention and can be stored in a computer-readable recording medium delays communication between the robot and the server based on time information transmitted/received between the robot and the server. Calculating a time, generating a control command related to the driving of the robot based on the communication delay time, and transmitting the control command to the robot so that the robot runs according to the control command Including commands, the control command may be generated based on the expected position of the robot at the time the robot receives the control command.

위에서 살펴본 것과 같이, 본 발명에 따른 로봇 원격 제어 방법 및 시스템은, 로봇과 서버 간의 통신 지연 시간에 기반하여 로봇이 제어명령을 수신하는 시점에서의 로봇의 예상 위치를 산출하고, 산출된 예상 위치에 기반하여 로봇에 대한 주행 제어를 수행할 수 있게 된다. 이를 통해, 본 발명은 통신 지연을 고려한 선제적인 예측 제어를 수행할 수 있게 된다.As described above, the robot remote control method and system according to the present invention calculates the expected position of the robot at the time when the robot receives the control command based on the communication delay time between the robot and the server, and returns to the calculated expected position. Based on this, it is possible to perform driving control for the robot. Through this, according to the present invention, it is possible to perform preemptive predictive control in consideration of communication delay.

나아가, 본 발명은 통신 지연 시간에 기반하여 장애물에 대한 안전 영역을 설정함으로써, 로봇과 서버 간의 통신 지연에 따른 불확실성을 해소할 수 있게 된다. Furthermore, according to the present invention, by setting a safe area for obstacles based on the communication delay time, it is possible to solve the uncertainty due to the communication delay between the robot and the server.

또한, 본 발명은 장애물의 특징을 고려한 안전 영역을 설정함으로써, 통신 지연으로 인하여 로봇이 장애물의 상태 변화에 곧바로 대처할 수 없는 상황에서도, 로봇이 장애물과 충돌하지 않고 안전하게 주행하도록 할 수 있다. In addition, by setting a safety area in consideration of the characteristics of the obstacle, the present invention enables the robot to safely travel without colliding with the obstacle even in a situation in which the robot cannot immediately respond to a change in the state of the obstacle due to communication delay.

도 1 및 도 2는 본 발명에 따른 로봇 주행 제어 방법 및 시스템을 설명하기 위한 개념도들이다.
도 3은 본 발명에 따른 로봇 주행 제어 방법을 설명하기 위한 흐름도이다.
도 4a, 4b는 본 발명의 일 실시 예에 따른 통신 지연 시간 산출방법을 나타내는 개념도이다.
도 5는 본 발명에 따른 로봇 원격 제어 방법을 설명하기 위한 개념도이다.
도 6은 본 발명의 일 실시 예에 따라 로봇이 장애물을 회피하는 모습을 나타내는 개념도이다.
도 7은 로봇이 안전 영역 내로 진입하였을 때, 로봇의 주행을 나타내는 개념도이다.
도 8a, 8b 및 9는 장애물의 종류 및 이동 상태에 따라 안전 영역의 크기 및 형태를 다르게 설정하는 일 실시 예를 나타내는 개념도이다.
1 and 2 are conceptual views for explaining a robot driving control method and system according to the present invention.
3 is a flowchart for explaining a robot traveling control method according to the present invention.
4A and 4B are conceptual diagrams illustrating a communication delay time calculation method according to an embodiment of the present invention.
5 is a conceptual diagram for explaining a robot remote control method according to the present invention.
6 is a conceptual diagram illustrating a state in which a robot avoids an obstacle according to an embodiment of the present invention.
7 is a conceptual diagram illustrating the running of the robot when the robot enters the safe area.
8A, 8B, and 9 are conceptual views illustrating an embodiment in which the size and shape of a safety area are set differently according to the type of obstacle and the moving state.

이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소에는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. Hereinafter, the embodiments disclosed in the present specification will be described in detail with reference to the accompanying drawings, but the same or similar components will be given the same reference numerals regardless of reference numerals, and redundant descriptions thereof will be omitted. The suffixes "module" and "part" for components used in the following description are given or mixed in consideration of only the ease of writing the specification, and do not have distinct meanings or roles by themselves. In addition, in describing the embodiments disclosed in the present specification, if it is determined that detailed descriptions of related known technologies may obscure the gist of the embodiments disclosed in this specification, the detailed description thereof will be omitted. In addition, the accompanying drawings are only for easy understanding of the embodiments disclosed in this specification, and the technical idea disclosed herein is not limited by the accompanying drawings, and all changes included in the spirit and scope of the present invention , should be understood to include equivalents or substitutes.

제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms including ordinal numbers such as first, second, etc. may be used to describe various elements, but the elements are not limited by the terms. The above terms are used only for the purpose of distinguishing one component from another.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is referred to as being “connected” or “connected” to another component, it may be directly connected or connected to the other component, but it is understood that other components may exist in between. it should be On the other hand, when it is said that a certain element is "directly connected" or "directly connected" to another element, it should be understood that the other element does not exist in the middle.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. The singular expression includes the plural expression unless the context clearly dictates otherwise.

본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In the present application, terms such as “comprises” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It is to be understood that this does not preclude the possibility of the presence or addition of numbers, steps, operations, components, parts, or combinations thereof.

본 발명은 로봇에 대한 주행 제어 방법 및 시스템을 제공하는 것으로서, 보다 구체적으로, 통신 지연을 고려하여 로봇의 주행을 제어할 수 있는 방법 및 시스템을 제공하는 것이다. 이하에서는, 첨부된 도면과 함께, 로봇(robot) 주행 제어 시스템에 대하여 살펴보도록 한다. 도 1 및 도 2는 본 발명에 따른 로봇 주행 제어 방법 및 시스템을 설명하기 위한 개념도들이다.The present invention provides a method and system for controlling the travel of a robot, and more specifically, to provide a method and system for controlling the travel of the robot in consideration of communication delay. Hereinafter, together with the accompanying drawings, a robot driving control system will be described. 1 and 2 are conceptual views for explaining a robot driving control method and system according to the present invention.

예를 들어, 도 1에 도시된 것과 같이, 기술이 발전함에 따라 로봇의 활용도는 점차적으로 높아지고 있다. 종래 로봇은 특수한 산업분야(예를 들어, 산업 자동화 관련 분야)에서 활용되었으나, 점차적으로 인간이나 설비를 위해 유용한 작업을 수행할 수 있는 서비스 로봇으로 변모하고 있다.For example, as shown in FIG. 1 , as technology develops, the utilization of robots is gradually increasing. Conventional robots have been utilized in special industrial fields (eg, industrial automation-related fields), but are gradually being transformed into service robots capable of performing useful tasks for humans or facilities.

이와 같이 다양한 서비스를 제공할 수 있는 로봇은, 부여된 임무를 수행하기 위하여 도 1에 도시된 것과 같은 공간(10)을 주행하도록 이루어질 수 있다. 로봇이 주행하는 공간의 종류에는 제한이 없으며, 필요에 따라 실내 공간 및 실외 공간 중 적어도 하나를 주행하도록 이루어 질 수 있다. 예를 들어, 실내 공간은 백화점, 공항, 호텔, 학교, 빌딩, 지하철역, 기차역, 서점 등과 같이 다양한 공간일 수 있다. 로봇은, 이와 같이, 다양한 공간에 배치되어 인간에게 유용한 서비스를 제공하도록 이루어질 수 있다.The robot capable of providing various services as described above may be configured to travel in a space 10 as shown in FIG. 1 in order to perform an assigned task. There is no limitation on the type of space in which the robot travels, and it may be configured to travel in at least one of an indoor space and an outdoor space as necessary. For example, the indoor space may be various spaces such as a department store, an airport, a hotel, a school, a building, a subway station, a train station, a bookstore, and the like. The robot, as described above, may be arranged in various spaces to provide useful services to humans.

한편, 로봇을 이용하여 다양한 서비스를 제공하기 위해서는, 로봇을 정확하게 제어하는 것이 매우 중요한 요소이다. 이에, 본 발명은 공간에 배치된 카메라를 함께 이용하여 로봇을 원격으로 보다 정확하게 제어할 수 있는 방법에 대하여 제안한다.Meanwhile, in order to provide various services using a robot, it is a very important factor to accurately control the robot. Accordingly, the present invention proposes a method for more accurately controlling a robot remotely using a camera disposed in space.

도 1에 도시된 것과 같이, 로봇이 위치한 공간(10)에는 카메라(20)가 배치될 수 있다. 도시와 같이, 공간(10)에 배치된 카메라(20)의 수는 그 제한이 없다. 도시와 같이, 공간(10)에는 복수개의 카메라들(20a, 20b)이 배치될 수 있다. 공간(10)에 배치된 카메라(20)의 종류는 다양할 수 있으며, 본 발명에서는 특히 공간에 배치된 CCTV(closed circuit television)를 활용할 수 있다.As shown in FIG. 1 , a camera 20 may be disposed in a space 10 in which the robot is located. As shown, the number of cameras 20 disposed in the space 10 is not limited thereto. As shown, a plurality of cameras 20a and 20b may be disposed in the space 10 . The types of cameras 20 disposed in the space 10 may be varied, and in particular, a closed circuit television (CCTV) disposed in the space may be utilized in the present invention.

도 2에 도시된 것과 같이, 본 발명에 의하면 로봇 원격 제어 시스템(300)에서, 로봇(100)을 원격으로 관리하고, 제어할 수 있다. As shown in FIG. 2 , according to the present invention, in the robot remote control system 300 , it is possible to remotely manage and control the robot 100 .

본 발명에 따른 로봇 원격 제어 시스템(300)은 공간(10)에 배치된 카메라(20, 예를 들어, CCTV)에서 수신되는 영상, 로봇으로부터 수신되는 영상, 로봇에 구비된 센서로부터 수신되는 정보 및 공간에 구비된 다양한 센서로부터 수신되는 정보 중 적어도 하나를 활용하여, 로봇의 주행을 제어하거나, 로봇에 대한 적절한 제어를 수행할 수 있다. The robot remote control system 300 according to the present invention includes an image received from a camera 20 (eg, CCTV) disposed in a space 10, an image received from the robot, information received from a sensor provided in the robot, and At least one of information received from various sensors provided in the space may be utilized to control the movement of the robot or to perform appropriate control on the robot.

도 2에 도시된 것과 같이, 본 발명에 따른 로봇 원격 제어 시스템(300)은, 통신부(310), 저장부(320), 디스플레이부(330), 입력부(340) 및 제어부(350) 중 적어도 하나를 포함할 수 있다.As shown in FIG. 2 , the robot remote control system 300 according to the present invention includes at least one of a communication unit 310 , a storage unit 320 , a display unit 330 , an input unit 340 , and a control unit 350 . may include

통신부(310)는, 공간(10)에 배치된 다양한 디바이스와 유선 또는 무선으로 통신하도록 이루어질 수 있다. 통신부(310)는 도시와 같이 로봇(100)과 통신할 수 있다. 통신부(310)는 로봇(100)과의 통신을 통해, 로봇(100)에 구비된 카메라로부터 촬영되는 영상을 수신하도록 이루어질 수 있다.The communication unit 310 may be configured to communicate with various devices disposed in the space 10 by wire or wirelessly. The communication unit 310 may communicate with the robot 100 as shown. The communication unit 310 may be configured to receive an image photographed from a camera provided in the robot 100 through communication with the robot 100 .

나아가, 통신부(310)는 적어도 하나의 외부 서버(또는 외부 저장소, 200)와 통신하도록 이루어질 수 있다. 여기에서, 외부 서버(200)는, 도시된 것과 같이, 클라우드 서버(210) 또는 데이터베이스(220) 중 적어도 하나를 포함하도록 구성될 수 있다. 한편, 외부 서버(200)에서는, 제어부(350)의 적어도 일부의 역할을 수행하도록 구성될 수 있다. 즉, 데이터 처리 또는 데이터 연산 등의 수행은 외부 서버(200)에서 이루어지는 것이 가능하며, 본 발명에서는 이러한 방식에 대한 특별한 제한을 두지 않는다.Furthermore, the communication unit 310 may be configured to communicate with at least one external server (or external storage, 200 ). Here, the external server 200 may be configured to include at least one of the cloud server 210 and the database 220 as shown. Meanwhile, the external server 200 may be configured to perform at least a part of the control unit 350 . That is, it is possible to perform data processing or data operation in the external server 200, and the present invention does not place any particular limitation on this method.

한편, 통신부(310)는 통신하는 디바이스의 통신 규격에 따라 다양한 통신 방식을 지원할 수 있다.Meanwhile, the communication unit 310 may support various communication methods according to a communication standard of a communicating device.

예를 들어, 통신부(310)는, WLAN(Wireless LAN), Wi-Fi(Wireless-Fidelity), Wi-Fi(Wireless Fidelity) Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMAX(World Interoperability for Microwave Access), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced), 5G(5th Generation Mobile Telecommunication ), 블루투스(Bluetooth™RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra-Wideband), ZigBee, NFC(Near Field Communication), Wi-Fi Direct, Wireless USB(Wireless Universal Serial Bus) 기술 중 적어도 하나를 이용하여, 공간(20) 내외에 위치한 디바이스(클라우드 서버 포함)와 통신하도록 이루어질 수 있다.For example, the communication unit 310 may include a Wireless LAN (WLAN), a Wireless-Fidelity (Wi-Fi), a Wireless Fidelity (Wi-Fi) Direct, a Digital Living Network Alliance (DLNA), a Wireless Broadband (WiBro), and a WiMAX (Wireless Broadband). World Interoperability for Microwave Access), High Speed Downlink Packet Access (HSDPA), High Speed Uplink Packet Access (HSUPA), Long Term Evolution (LTE), Long Term Evolution-Advanced (LTE-A), 5G (5th Generation Mobile Telecommunication) , Bluetooth™RFID (Radio Frequency Identification), Infrared Data Association (IrDA), UWB (Ultra-Wideband), ZigBee, NFC (Near Field Communication), Wi-Fi Direct, Wireless USB (Wireless Universal Serial Bus) ) technology, it can be made to communicate with devices (including cloud servers) located inside and outside the space 20 .

다음으로 저장부(320)는, 본 발명과 관련된 다양한 정보를 저장하도록 이루어질 수 있다. 본 발명에서 저장부(320)는 로봇 원격 제어 시스템(300) 자체에 구비될 수 있다. 이와 다르게, 저장부(320)의 적어도 일부는, 클라우드 서버(210) 및 데이터베이스(220) 중 적어도 하나를 의미할 수 있다. 즉, 저장부(320)는 본 발명에 따른 로봇 관제를 위하여 필요한 정보가 저장되는 공간이면 충분하며, 물리적인 공간에 대한 제약은 없는 것으로 이해될 수 있다. 이에, 이하에서는, 저장부(320), 클라우드 서버(210) 및 데이터베이스(220)를 별도로 구분하지 않고, 모두 저장부(320)라고 표현하도록 한다. 이때, 클라우드 서버(210)는 “클라우드 저장소”를 의미할 수 있다. Next, the storage unit 320 may be configured to store various information related to the present invention. In the present invention, the storage unit 320 may be provided in the robot remote control system 300 itself. Alternatively, at least a portion of the storage unit 320 may mean at least one of the cloud server 210 and the database 220 . That is, it can be understood that the storage unit 320 is a space in which information necessary for robot control according to the present invention is stored, and there is no restriction on the physical space. Accordingly, hereinafter, the storage unit 320 , the cloud server 210 , and the database 220 are not separately distinguished, and are all referred to as the storage unit 320 . In this case, the cloud server 210 may mean “cloud storage”.

먼저, 저장부(320)에는, 로봇(100)에 대한 정보가 저장될 수 있다.First, information about the robot 100 may be stored in the storage unit 320 .

로봇(100)에 대한 정보는 매우 다양할 수 있으며, 로봇(100)에 대한 정보는 일 예로서, i)공간(10)에 배치된 로봇(100)을 식별하기 위한 식별 정보(예를 들어, 일련번호, TAG 정보, QR코드 정보 등), ii)로봇(100)에 부여된 임무 정보, iii)로봇(100)에 설정된 주행 경로 정보, iv)로봇(100)의 위치 정보, v)로봇(100)의 상태 정보(예를 들어, 전원 상태, 고장 유무, 배터리 상태 등), vi)로봇(100)에 구비된 카메라로부터 수신된 영상 정보 등이 존재할 수 있다.Information on the robot 100 may be very diverse, and the information on the robot 100 is an example, i) identification information for identifying the robot 100 disposed in the space 10 (eg, serial number, TAG information, QR code information, etc.), ii) task information assigned to the robot 100, iii) driving route information set in the robot 100, iv) location information of the robot 100, v) the robot ( 100) state information (eg, power state, failure or not, battery state, etc.), vi) image information received from a camera provided in the robot 100 , etc. may exist.

다음으로 저장부(320)에는, 공간(10)에 대한 지도(map, 또는 지도 정보)가 저장될 수 있다. 여기에서, 지도는, 2차원 또는 3차원 지도 중 적어도 하나로 이루어 질 수 있다. 공간(10)에 대한 지도는 로봇(100)위 현재 위치를 파악하거나, 로봇의 주행 경로를 설정하는데 활용될 수 있는 지도를 의미할 수 있다. Next, a map (or map information) for the space 10 may be stored in the storage unit 320 . Here, the map may be formed of at least one of a two-dimensional map or a three-dimensional map. The map for the space 10 may refer to a map that can be used to determine a current location on the robot 100 or set a traveling route of the robot.

특히, 본 발명에 따른 로봇 원격 제어 시스템(300)에서는, 로봇(100)에서 수신되는 영상 또는 로봇(100)으로부터 수신되는 정보를 기반으로 로봇(100)의 위치를 파악할 수 있다. 이를 위하여, 저장부(320)에 저장된 공간(10)에 대한 지도는 영상 또는 센싱 정보에 기반하여 위치를 추정할 수 있도록 하는 데이터로 구성될 수 있다.In particular, in the robot remote control system 300 according to the present invention, the position of the robot 100 may be determined based on an image received from the robot 100 or information received from the robot 100 . To this end, the map for the space 10 stored in the storage unit 320 may be composed of data that enables a location to be estimated based on an image or sensing information.

이때, 공간(10)에 대한 지도는 사전에 공간(10)을 이동하는 적어도 하나의 로봇에 의해, SLAM(Simultaneous Localization and Mapping)에 기반하여 작성된 지도일 수 있다. In this case, the map for the space 10 may be a map prepared based on Simultaneous Localization and Mapping (SLAM) by at least one robot that moves the space 10 in advance.

한편, 위에서 열거한 정보의 종류 외에도 저장부(320)에는 다양한 정보가 저장될 수 있다.Meanwhile, in addition to the types of information listed above, various types of information may be stored in the storage unit 320 .

다음으로 디스플레이부(330)는 로봇(100)에 구비된 카메라 및 공간(10)에 배치된 카메라(20) 중 적어도 하나로부터 수신되는 영상을 출력하도록 이루어질 수 있다. 디스플레이부(330)는 로봇(100)을 원격으로 관리하는 관리자의 디바이스에 구비된 것으로서, 도 2에 도시된 것과 같이, 원격 관제실(300a)에 구비될 수 있다. 나아가, 이와 다르게, 디스플레이부(330)는 모바일 디바이스에 구비된 디스플레이일 수 있다. 이와 같이, 본 발명에서는 디스플레이부의 종류에 대해서는 제한을 두지 않는다.Next, the display unit 330 may be configured to output an image received from at least one of a camera provided in the robot 100 and a camera 20 disposed in the space 10 . The display unit 330 is provided in a device of an administrator who remotely manages the robot 100 , and may be provided in the remote control room 300a as shown in FIG. 2 . Furthermore, differently from this, the display unit 330 may be a display provided in a mobile device. As such, the present invention does not limit the type of the display unit.

다음으로, 입력부(340)는 사용자(또는 관리자)로부터 입력되는 정보의 입력을 위한 것으로서, 입력부(340)는 사용자(또는 관리자)와 로봇 원격 제어 시스템(300) 사이의 매개체가 될 수 있다. 보다 구체적으로, 입력부(340)는 사용자로부터 로봇(100)을 제어하기 위한 제어 명령을 수신하는 입력 수단을 의미할 수 있다.Next, the input unit 340 is for inputting information input from the user (or administrator), and the input unit 340 may be a medium between the user (or the administrator) and the robot remote control system 300 . More specifically, the input unit 340 may refer to an input means for receiving a control command for controlling the robot 100 from a user.

이때, 입력부(340)의 종류에는 특별한 제한이 없으며, 입력부(340)는 기계식 (mechanical) 입력수단(또는, 메커니컬 키, 예를 들어, 마우스(mouse), 조이스틱(joy stic), 물리적인 버튼, 돔 스위치 (dome switch), 조그 휠, 조그 스위치 등) 및 터치식 입력수단 중 적어도 하나를 포함할 수 있다. 일 예로서, 터치식 입력수단은, 소프트웨어적인 처리를 통해 터치스크린에 표시되는 가상 키(virtual key), 소프트 키(soft key) 또는 비주얼 키(visual key)로 이루어지거나, 상기 터치스크린 이외의 부분에 배치되는 터치 키(touch key)로 이루어질 수 있다. 한편, 상기 가상키 또는 비주얼 키는, 다양한 형태를 가지면서 터치스크린 상에 표시되는 것이 가능하며, 예를 들어, 그래픽(graphic), 텍스트(text), 아이콘(icon), 비디오(video) 또는 이들의 조합으로 이루어질 수 있다. 이때, 입력부(340)가 터치 스크린을 포함하는 경우, 디스플레이부(330)는 터치 스크린으로 이루어 질 수 있다. 이 경우, 디스플레이부(330)는 정보를 출력하는 역할과, 정보를 입력받는 역할을 모두 수행할 수 있다.At this time, the type of the input unit 340 is not particularly limited, and the input unit 340 is a mechanical input means (or a mechanical key, for example, a mouse, a joy stick, a physical button, It may include at least one of a dome switch, a jog wheel, a jog switch, etc.) and a touch input means. As an example, the touch input means consists of a virtual key, a soft key, or a visual key displayed on the touch screen through software processing, or a part other than the touch screen. It may be made of a touch key (touch key) disposed on the. On the other hand, the virtual key or the visual key, it is possible to be displayed on the touch screen while having various forms, for example, graphic (graphic), text (text), icon (icon), video (video) or these can be made by a combination of In this case, when the input unit 340 includes a touch screen, the display unit 330 may be configured as a touch screen. In this case, the display unit 330 may perform both a role of outputting information and a role of receiving information.

다음으로 제어부(350)는 본 발명과 관련된 로봇 원격 제어 시스템(300)의 전반적인 동작을 제어하도록 이루어질 수 있다. 제어부(350)는 위에서 살펴본 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 사용자에게 적절한 정보 또는 기능을 제공 또는 처리할 수 있다.Next, the control unit 350 may be configured to control the overall operation of the robot remote control system 300 related to the present invention. The controller 350 may process signals, data, information, etc. input or output through the above-described components, or may provide or process information or functions appropriate to the user.

한편, 위의 설명에서는, 제어부(350)에서 로봇(100)의 위치를 추정하는 예에 대하여 설명하였으나, 본 발명은 이에 한정되지 않는다. 즉, 로봇(100)의 위치 추정은 로봇(100) 자체에서 이루어질 수 있다. 즉, 로봇(100)은 로봇(100) 자체에서 수신되는 영상에 근거하여, 앞서 살펴본 방식으로 현재 위치를 추정할 수 있다. 그리고, 로봇(100)은, 추정된 위치 정보를 제어부(350)에 전송할 수 있다. 이 경우, 제어부(350)는 로봇으로부터 수신되는 위치 정보에 기반하여, 일련의 제어를 수행할 수 있다.Meanwhile, in the above description, an example in which the control unit 350 estimates the position of the robot 100 has been described, but the present invention is not limited thereto. That is, the position estimation of the robot 100 may be performed by the robot 100 itself. That is, the robot 100 may estimate the current position in the manner described above based on the image received from the robot 100 itself. Then, the robot 100 may transmit the estimated position information to the controller 350 . In this case, the controller 350 may perform a series of controls based on the position information received from the robot.

한편, 위에서 살펴본 것과 같이, 본 발명은 저장부(320)에 기 저장된 지도 정보를 이용하여, 공간 내에서 로봇의 이동 경로를 설정할 수 있다. 제어부(350)는 로봇(100)이 현재 위치로부터, 특정 목적지까지 이동하도록 제어할 수 있다. 구체적으로, 본 발명은 로봇의 현재 위치 정보와 목적지 위치 정보를 특정하고, 목적지에 도달하는 경로를 설정하여, 로봇이 설정된 경로에 따라 이동하여 목적지에 도달할 수 있도록 제어한다.Meanwhile, as described above, according to the present invention, the movement path of the robot can be set in space by using map information previously stored in the storage unit 320 . The controller 350 may control the robot 100 to move from its current location to a specific destination. Specifically, the present invention specifies the current position information and the destination position information of the robot, sets a path to reach the destination, and controls the robot to move according to the set path to reach the destination.

이때, 로봇이 목적지로 이동하도록 하기 위한 제어는 로봇 원격 제어 시스템(300)(이하, 서버라 함)을 통해 이루어질 수 있다. 구체적으로, 서버는 로봇의 위치를 모니터링하고, 모니터링된 로봇의 위치에 기반하여 로봇의 주행과 관련된 주행 정보를 생성한다. In this case, the control for moving the robot to the destination may be performed through the robot remote control system 300 (hereinafter referred to as a server). Specifically, the server monitors the position of the robot, and generates driving information related to the driving of the robot based on the monitored position of the robot.

서버는 일정 시간 간격으로 주행 정보를 로봇으로 전송하고, 로봇은 주행 정보에 포함된 정보에 기반하여 공간 내에서 주행을 한다. The server transmits driving information to the robot at regular time intervals, and the robot drives in space based on the information included in the driving information.

주행 정보는 로봇이 주행 정보를 수신한 후, 다음 주행 정보를 수신할 때까지 로봇의 주행과 관련된 정보를 포함한다. 구체적으로, 주행 정보는 로봇의 이동 속도, 이동 방향 및 이동 거리 중 적어도 하나와 관련된 정보를 포함한다. 로봇은 주행 정보를 수신하면, 주행 정보에 기반하여 이동 속도, 이동 방향 및 이동 거리 중 적어도 하나를 제어하여 주행한다. The driving information includes information related to driving of the robot after the robot receives the driving information until the next driving information is received. Specifically, the driving information includes information related to at least one of a moving speed, a moving direction, and a moving distance of the robot. Upon receiving the driving information, the robot drives by controlling at least one of a moving speed, a moving direction, and a moving distance based on the driving information.

일 실시 예에 있어서, 주행 정보는 1초마다 로봇으로 전송되며, 로봇으로 전송된 제1주행 정보는 제1방향으로 1m/s로 주행할 것을 정의한다. 로봇으로 전송된 제2주행 정보는 제2방향으로 2m/s로 0.5초간 주행할 것을 정의한다. 로봇이 제1주행 정보를 수신한 시점부터 제2주행 정보를 수신한 시점까지 로봇은 제1방향으로 1m주행한다. 이후, 제2주행 정보를 수신한 시점부터 로봇은 제2방향으로 1m 주행한 후 정지한다. 다만, 상기 주행 정보를 전송하는 주기는 설명의 편의를 위한 것으로, 실제 주행 정보 전송 주기는 0.1초 이하일 수 있다.In an embodiment, the driving information is transmitted to the robot every 1 second, and the first driving information transmitted to the robot defines that the robot travels at 1 m/s in the first direction. The second travel information transmitted to the robot defines that the robot will travel for 0.5 seconds at 2 m/s in the second direction. From the point in time when the robot receives the first travel information to the time when the second travel information is received, the robot travels 1 m in the first direction. Thereafter, from the time when the second driving information is received, the robot travels 1 m in the second direction and then stops. However, the period of transmitting the driving information is for convenience of explanation, and the actual period of transmitting the driving information may be 0.1 seconds or less.

서버는 주기적으로 로봇으로 주행 정보를 전송함으로써, 로봇이 기 설정된 이동 경로를 따라 주행하여 목적지에 도달할 수 있도록 한다. 본 명세서에서 로봇으로 전송되는 제어명령은 상술한 주행 정보를 포함할 수 있다.The server periodically transmits driving information to the robot so that the robot can travel along a preset movement path to reach a destination. In the present specification, the control command transmitted to the robot may include the above-described driving information.

한편, 서버는 로봇에 포함된 적어도 하나의 센서로부터 센싱된 정보 및 로봇에 포함된 카메라로 촬영된 영상 정보 중 적어도 하나를 수신하여, 로봇에 대한 주행 정보를 생성한다.Meanwhile, the server receives at least one of information sensed from at least one sensor included in the robot and image information captured by a camera included in the robot, and generates driving information for the robot.

예를 들어, 서버가 로봇으로부터 로봇의 이동 경로 상에 배치된 장애물에 대한 센싱 정보를 수신하는 경우, 서버는 로봇이 상기 장애물을 회피하도록 하는 주행 정보를 생성한다.For example, when the server receives sensing information about an obstacle disposed on the movement path of the robot from the robot, the server generates driving information for the robot to avoid the obstacle.

상술한 바와 같이, 로봇은 로봇에서 수집된 센싱 정보 또는 영상 정보를 서버로 전송하고, 서버는 로봇으로부터 수신된 정보에 기반하여 주행 정보를 생성한 후 로봇으로 전송한다. As described above, the robot transmits the sensing information or image information collected by the robot to the server, and the server generates driving information based on the information received from the robot and then transmits it to the robot.

여기서, 서버와 로봇 간의 데이터 송수신 시 통신 지연이 발생될 수 있다. 상술한 서버가 로봇의 주행을 직접적으로 제어하는 경우, 서버와 로봇 간의 통신 지연은 로봇의 주행 제어를 어렵게 한다.Here, communication delay may occur during data transmission/reception between the server and the robot. When the above-described server directly controls the running of the robot, the communication delay between the server and the robot makes it difficult to control the robot's running.

예를 들어, 로봇으로부터 수신된 정보에 기반하여 로봇의 현재 위치를 모니터링하는 경우, 통신 지연에 의해 로봇이 서버로 정보를 전송한 시점과 서버가 정보를 수신한 시점이 다르게 된다. 이로 인하여, 로봇으로부터 수신된 정보에 기반하여 로봇의 현재 위치를 산출할 경우, 산출된 위치는 통신 지연만큼 과거의 로봇의 위치에 해당하게 된다.For example, when monitoring the current position of the robot based on information received from the robot, the time when the robot transmits information to the server and the time when the server receives the information are different due to communication delay. For this reason, when calculating the current position of the robot based on the information received from the robot, the calculated position corresponds to the position of the robot in the past by the communication delay.

다른 예를 들어, 서버는 모니터링된 로봇의 위치를 기준으로 주행 정보를 생성하고, 생성된 주행 정보를 로봇으로 전송한다. 통신 지연에 의해 서버가 로봇으로 주행 정보를 전송한 시점과 로봇이 주행 정보를 수신한 시점이 다르게 된다. 이로 인하여, 로봇은 서버가 주행 정보를 전송하는 시점의 위치와 다른 위치에서 주행 정보에 따른 주행을 하게 된다.As another example, the server generates driving information based on the monitored position of the robot, and transmits the generated driving information to the robot. Due to the communication delay, the time when the server transmits the driving information to the robot and the time when the robot receives the driving information are different. For this reason, the robot travels according to the driving information at a location different from the position at which the server transmits the driving information.

본 발명은 서버와 로봇 간의 통신 지연 시간을 고려한 로봇의 주행 제어 방법을 제공한다. 이하, 통신 지연 시간을 고려한 로봇의 원격 제어 방법에 대하여 구체적으로 설명한다.The present invention provides a method for controlling the driving of a robot in consideration of the communication delay time between the server and the robot. Hereinafter, a method for remotely controlling a robot in consideration of a communication delay time will be described in detail.

도 3은 본 발명에 따른 로봇 원격 제어 방법을 설명하기 위한 흐름도이고, 도 4a, 4b는 본 발명의 일 실시 예에 따른 통신 지연 시간 산출방법을 나타내는 개념도이고, 도 5는 본 발명에 따른 로봇 원격 제어 방법을 설명하기 위한 개념도이다.3 is a flowchart for explaining a method for remotely controlling a robot according to the present invention, FIGS. 4A and 4B are conceptual diagrams illustrating a communication delay time calculation method according to an embodiment of the present invention, and FIG. 5 is a robot remote control method according to the present invention. It is a conceptual diagram for explaining a control method.

도 3을 참조하면, 로봇과 서버 간에 송수신되는 시간 정보에 근거하여 로봇과 서버 간의 통신 지연 시간을 산출하는 단계가 수행된다(S110). Referring to FIG. 3 , a step of calculating a communication delay time between the robot and the server is performed based on time information transmitted/received between the robot and the server ( S110 ).

통신 지연 시간은 로봇 및 서버 간의 시간 정보를 포함하는 메시지를 송수신하고, 메시지에 포함된 시간 정보를 이용하여 산출될 수 있다.The communication delay time may be calculated by transmitting and receiving a message including time information between the robot and the server, and using the time information included in the message.

여기서, 시간 정보란 기준 시간체계를 기준으로 특정 시점에 대한 정보를 정의하는 것이다. 예를 들어, 시간 정보는 메시지를 수신하는 시점에 관한 정보이거나, 메시지를 전송하는 시점에 관한 정보를 포함할 수 있다. 다만, 이에 한정되지 않고, 시간 정보는 다양한 시점에 관한 정보를 포함할 수 있다.Here, the time information defines information about a specific time based on a reference time system. For example, the time information may include information regarding a time point at which a message is received or information regarding a time point at which a message is transmitted. However, the present invention is not limited thereto, and the time information may include information regarding various time points.

여기에서, 기준 시간체계는, 다양할 수 있으며 예를 들어, 만국 표준시(UT, Universal Time), 협정세계시(UTC, Coordinated Universal Time), 대한민국 표준시(KST, Korea Standard Time), 그리니치 평균시(GMT, Greenwich Mean Time), 유닉스 시간(Unix time) 및 GPS 시간(GPS Time) 중 적어도 하나일 수 있다. 또한, 기준 시간체계는 위에서 열거한 예들 외에도, 다양한 다른 예들이 존재할 수 있다.Here, the reference time system may vary, for example, Universal Time (UT), Coordinated Universal Time (UTC), Korea Standard Time (KST), Greenwich Mean Time ( It may be at least one of GMT, Greenwich Mean Time), Unix time, and GPS Time. In addition, various other examples may exist for the reference time system in addition to the examples listed above.

한편, 통신 지연 시간은 서버 또는 로봇에서 산출될 수 있다. 본 명세서에서는 통신 지연 시간을 산출하는 주체를 별도로 한정하지 않는다. Meanwhile, the communication delay time may be calculated by the server or the robot. In this specification, the subject for calculating the communication delay time is not specifically limited.

일 실시 예에 있어서, 도 4a를 참조하면, 통신 지연 시간은 로봇에서 산출될 수 있다. 구체적으로, 서버가 로봇으로부터 시간 정보가 포함된 제1메시지를 수신하는 단계, 서버가 로봇으로 상기 제1메시지에 대응되는 제2메시지를 전송하는 단계가 수행될 수 있다.In one embodiment, referring to FIG. 4A , the communication delay time may be calculated by the robot. Specifically, the steps of the server receiving the first message including the time information from the robot, and the server transmitting the second message corresponding to the first message to the robot may be performed.

제1메시지는 로봇이 제1메시지를 전송하는 시점(t1)에 대한 시간 정보를 포함한다. 제2메시지는 제1메시지를 전송하는 시점(t1) 및 서버가 제1메시지를 수신한 시점부터 제2메시지를 생성해서 전송하기까지 걸린 시간(tp)과 관련된 시간 정보를 포함할 수 있다. The first message includes time information about the time t1 at which the robot transmits the first message. The second message may include time information related to a time t1 at which the first message is transmitted and a time tp from when the server receives the first message to generating and transmitting the second message.

*일 실시 예에 있어서, 제2메시지는 서버가 제1메시지를 전송하는 시점(t1)에 관한 정보, 상기 제1메시지를 수신한 시점부터 상기 로봇과 관련된 제어명령을 생성하고, 상기 제어명령을 포함하는 제2메시지를 전송하기까지 소요된 시간 정보(tp)를 포함할 수 있다. 다만, 상기 제2메시지가 반드시 제어명령을 포함할 필요는 없다. 상기 제2메시지가 지연시간을 측정하기 위한 용도로 활용되는 메시지인 경우, 상기 제2메시지는 제어명령과 관련된 정보는 포함하지 않을 수 있다. * In one embodiment, the second message is information about the time t1 when the server transmits the first message, and generates a control command related to the robot from the time when the first message is received, and executes the control command. It may include time information (tp) required to transmit the included second message. However, the second message does not necessarily include a control command. When the second message is a message used for measuring a delay time, the second message may not include information related to a control command.

로봇이 제2메시지를 수신하는 경우, 로봇은 제2메시지를 수신한 시점(t2)에 대한 시간 정보, 제2메시지에 포함된 시간 정보 및 제1메시지에 포함된 시간 정보를 이용하여 통신 지연시간을 산출한다. When the robot receives the second message, the robot uses the time information for the time t2 at which the second message is received, the time information included in the second message, and the time information included in the first message to delay the communication. to calculate

구체적으로, 로봇이 제2메시지를 수신한 시점(t2)과 로봇이 제1메시지를 전송한 시점(t1)간의 시간 간격은 서버에서 로봇과 관련된 제어를 수행하기 위해 소요된 시간(tp) 및 두 번의 데이터 전송에 따른 통신 지연 시간을 포함한다. 통신 지연 시간(tlatency1)은 하기 수학식 1과 같이 산출될 수 있다.Specifically, the time interval between the time when the robot receives the second message (t2) and the time when the robot transmits the first message (t1) is the time taken for the server to perform the robot-related control (tp) and the two Including communication delay time according to data transmission times. The communication delay time t latency1 may be calculated as in Equation 1 below.

[수학식 1][Equation 1]

tlatency1 = (t2 - t1 - tp)/2t latency1 = (t2 - t1 - tp)/2

상기 수학식 1을 참조하면 상기 통신 지연 시간은 상기 제1메시지 송수신 시 발생된 지연 시간 및 상기 제2메시지 송수신 시 발생된 지연 시간의 평균값이다. Referring to Equation 1, the communication delay time is an average value of a delay time generated when the first message is transmitted/received and a delay time generated when the second message is transmitted/received.

로봇에서 통신 지연 시간 산출이 완료되면, 로봇은 서버로 통신 지연 시간을 포함하는 제3 메시지를 전송한다. 이를 통해, 서버는 로봇과 서버 간의 통신 지연 시간을 로봇에 관한 제어명령을 생성하는데 활용할 수 있다.When the calculation of the communication delay time is completed in the robot, the robot transmits a third message including the communication delay time to the server. Through this, the server can utilize the communication delay time between the robot and the server to generate a control command for the robot.

한편, 로봇은 별도의 시간 정보를 포함하는 메시지를 생성하여 서버로 전송하거나, 로봇이 서버로 주기적으로 전송하는 특정 정보에 시간 정보를 포함시켜 전송할 수 있다.Meanwhile, the robot may generate a message including separate time information and transmit it to the server, or may include the time information in specific information that the robot periodically transmits to the server and transmit it.

예를 들어, 로봇은 로봇에 포함된 센서로부터 센싱된 센싱 정보를 주기적으로 서버로 전송한다. 이때, 상기 센싱 정보에 별도의 채널을 형성하여, 시간 정보가 포함되도록 할 수 있다.For example, the robot periodically transmits sensing information sensed by a sensor included in the robot to the server. In this case, a separate channel may be formed in the sensing information to include time information.

다른 일 실시 예에 있어서, 도 4b를 참조하면, 통신 지연 시간은 서버에서 산출될 수 있다. 구체적으로, 서버가 로봇으로 시간 정보가 포함된 제1메시지를 전송하는 단계, 서버가 로봇으로부터 상기 제1메시지에 대응되는 제2메시지를 수신하는 단계가 수행될 수 있다.In another embodiment, referring to FIG. 4B , the communication delay time may be calculated by the server. Specifically, the steps of the server transmitting the first message including the time information to the robot, and the server receiving the second message corresponding to the first message from the robot may be performed.

제1메시지는 서버가 제1메시지를 전송하는 시점(t1)에 대한 시간 정보를 포함한다. 제2메시지는 서버가 제1메시지를 전송한 시점(t1) 및 상기 제1메시지를 수신한 시점을 기준으로 로봇이 제2메시지를 전송하기까지 걸린 시간(tp1)과 관련된 시간 정보를 포함한다. The first message includes time information on the time t1 when the server transmits the first message. The second message includes time information related to the time (t1) at which the server transmits the first message and the time it takes for the robot to transmit the second message (tp1) based on the time at which the first message is received.

서버가 제2메시지를 수신하는 경우, 서버는 제2메시지를 수신한 시점(t2)에 대한 시간 정보, 제2메시지에 포함된 시간 정보 및 제1메시지에 포함된 시간 정보를 이용하여 통신 지연시간을 산출한다. When the server receives the second message, the server uses the time information for the time t2 when the second message is received, the time information included in the second message, and the time information included in the first message to delay the communication. to calculate

구체적으로, 서버가 제2메시지를 수신한 시점(t2)과 서버가 제1메시지를 전송한 시점(t1)간의 시간 간격은 로봇에서 제1메시지에 대응되는 제2메시지를 전송하기 위해 소요된 시간(tp1) 및 두 번의 데이터 전송에 따른 통신 지연 시간을 포함한다. 통신 지연 시간(tlatency1)은 상기 수학식 1과 같이 산출될 수 있다.Specifically, the time interval between the time t2 when the server receives the second message and the time t1 when the server transmits the first message is the time it takes for the robot to transmit the second message corresponding to the first message. (tp1) and communication delay time due to two data transmissions. The communication delay time t latency1 may be calculated as in Equation 1 above.

상기 통신 지연 시간을 활용하면, 로봇으로부터 수신된 정보가 어느 시점에 대한 정보인지, 로봇으로 제어 명령을 전송할 경우 어느 시점에 로봇이 제어명령을 수신하는 지 예상할 수 있게 된다. By utilizing the communication delay time, it is possible to predict at what point in time the information received from the robot is information and when the control command is transmitted to the robot at which time the robot receives the control command.

한편, 통신 지연 시간은 복수의 다른 제어 대상 로봇들에서 산출된 통신 지연 시간을 기반으로 산출될 수 있다.Meanwhile, the communication delay time may be calculated based on the communication delay time calculated by the plurality of other control target robots.

*서버는 특정 로봇의 현재 위치에 대응되는 영역에 위치하는 다른 제어 대상 로봇으로부터 수신된 통신 지연 시간을 특정 로봇의 통신 지연 시간으로 활용하거나, 복수의 다른 제어 대상 로봇으로부터 수신된 통신 지연 시간의 평균 값을 특정 로봇의 통신 지연 시간으로 활용할 수 있다.* The server utilizes the communication delay time received from other controlled robots located in the area corresponding to the current position of the specific robot as the communication delay time of the specific robot, or the average of the communication delay times received from a plurality of other controlled robots. The value can be used as the communication delay time of a specific robot.

일 실시 예에 있어서, 서버는 동일한 구역에 위치한 복수의 로봇에 대한 통신 지연 시간에 기반하여 평균 통신 지연 시간을 산출할 수 있다. 구체적으로, 서버는 기 저장된 지도 정보를 복수의 구역으로 구분하고, 특정 구역에 위치하는 복수의 로봇의 통신 지연 시간의 평균 값을 특정 구역에 대한 대표 통신 지연 시간으로 설정할 수 있다. 상기 대표 통신 지연 시간은 기 설정된 시간마다 업데이트될 수 있다. 서버는 복수의 구역 각각에 대한 대표 통신 지연 시간을 설정하고, 특정 로봇이 특정 구역에 진입하는 경우, 특정 구역에 대응되는 대표 통신 지연 시간에 기반하여 제어명령을 생성할 수 있다.In one embodiment, the server may calculate the average communication delay time based on the communication delay time for a plurality of robots located in the same area. Specifically, the server may divide pre-stored map information into a plurality of zones, and set an average value of communication delay times of a plurality of robots located in a specific zone as a representative communication delay time for a specific zone. The representative communication delay time may be updated every preset time. The server may set a representative communication delay time for each of the plurality of zones, and when a specific robot enters a specific zone, it may generate a control command based on the representative communication delay time corresponding to the specific zone.

이를 통해, 본 발명은 제어 대상의 모든 로봇에 대한 통신 지연 시간을 산출하지 않고도, 통신 지연 시간을 제어 대상의 모든 로봇의 주행 제어에 활용할 수 있게 된다.Through this, the present invention can utilize the communication delay time for driving control of all the robots to be controlled, without calculating the communication delay time for all the robots to be controlled.

다음으로, 통신 지연 시간이 산출되면, 통신 지연 시간에 기반하여 로봇에 대한 제어 명령을 생성하고, 생성된 제어명령을 로봇으로 전송한다(S120 및 S130).Next, when the communication delay time is calculated, a control command for the robot is generated based on the communication delay time, and the generated control command is transmitted to the robot (S120 and S130).

서버는 통신 지연 시간에 기반하여 로봇의 주행과 관련된 제어명령을 생성한다. 상기 제어명령은 로봇이 제어명령을 수신하는 시점에서의 로봇의 예상 위치에 기반하여 생성될 수 있다. The server generates a control command related to the robot's driving based on the communication delay time. The control command may be generated based on an expected position of the robot when the robot receives the control command.

구체적으로, 서버는 로봇으로부터 로봇의 위치 정보를 수신하거나, 로봇으로부터 수신된 정보에 기반하여 로봇의 공간 내 위치를 산출한다. Specifically, the server receives the position information of the robot from the robot, or calculates the position of the robot in space based on the information received from the robot.

서버는 통신 지연 시간에 기반하여 로봇의 위치 정보를 보정할 수 있다. 구체적으로, 서버는 로봇으로부터 수신된 위치 정보 또는 로봇으로부터 수신된 정보에 기반하여 산출된 위치 정보를 기준으로 통신 지연 시간 동안 로봇이 이동한 위치를 산출한다. 이때, 서버는 로봇으로 기 전송된 주행 정보에 기반하여 로봇이 제어명령을 수신하는 시점까지 주행하였을 때, 로봇의 예상 위치를 산출한다.The server may correct the position information of the robot based on the communication delay time. Specifically, the server calculates the position moved by the robot during the communication delay time based on the position information received from the robot or the position information calculated based on the information received from the robot. At this time, the server calculates the expected position of the robot when the robot travels up to the point in time when the control command is received based on the driving information previously transmitted to the robot.

예를 들어, 서버는 로봇에 마지막으로 전송된 주행 정보를 이용하여 로봇의 위치를 보정한다. 구체적으로, 통신 지연시간이 1초이고, 마지막으로 로봇에 전송된 주행 정보는 12시 방향으로 1m/s의 속도로 주행하도록 하는 정보를 포함하는 경우, 서버는 로봇으로부터 수신된 위치 정보에 대응되는 위치에서 12시 방향으로 1m 이동한 위치로 로봇의 현재 위치를 보정한다. 다만, 상기 지연시간은 설명의 편의를 위한 것으로, 실제 지연시간은 100ms 이내일 수 있다.For example, the server uses the driving information last transmitted to the robot to correct the position of the robot. Specifically, when the communication delay time is 1 second and the driving information finally transmitted to the robot includes information for driving at a speed of 1 m/s in the 12 o'clock direction, the server responds to the position information received from the robot. The robot's current position is corrected by moving 1m from the position to the 12 o'clock direction. However, the delay time is for convenience of explanation, and the actual delay time may be within 100 ms.

상기 로봇의 위치를 보정하는 방법과 동일한 방법으로, 서버는 로봇이 제어명령을 수신하는 시점에서의 로봇의 예상 위치를 산출한다. 구체적으로, 서버는 로봇과 관련된 제어명령을 생성하여 로봇으로 전송하는데 소요되는 예상 소요 시간 및 기 산출된 통신 지연 시간을 이용하여, 로봇이 제어명령을 수신하는 예상 시점을 산출한다. In the same way as the method of correcting the position of the robot, the server calculates the expected position of the robot at the point in time when the robot receives the control command. Specifically, the server calculates the expected time at which the robot receives the control command by using the estimated time required to generate and transmit the control command related to the robot and the previously calculated communication delay time.

예를 들어, 로봇이 주행하는 중 주기적으로, 로봇의 위치 정보를 서버로 전송하고, 서버는 이에 응답하여 주기적으로 주행 정보를 로봇으로 전송하는 경우를 예로 든다. 로봇은 서버로 로봇의 위치 정보를 전송하는 시점부터 '통신 지연 시간+서버 처리 시간+통신 지연 시간'만큼 지난 후 서버로부터 주행 정보를 수신하게 된다. For example, a case in which the robot's position information is periodically transmitted to the server while the robot is driving, and the server periodically transmits the driving information to the robot in response thereto. The robot receives the driving information from the server after 'communication delay time + server processing time + communication delay time' from the time the robot's location information is transmitted to the server.

이후, 서버는 로봇으로부터 위치 정보를 수신한 시점과 로봇이 제어명령을 수신하는 예상 시점 간의 시간 간격 동안 로봇이 이동 경로를 산출한다. 구체적으로, 서버는 로봇으로부터 수신된 위치 정보를 기준으로 로봇이 제어명령을 수신하는 예상 시점에서의 로봇의 예상 위치를 산출한다. 이때, 서버는 제어명령을 상기 로봇으로 전송하기 전 상기 로봇으로 기 전송된 제어명령에 따라 상기 예상 시점까지 주행할 경우 예상 위치를 산출한다.Thereafter, the server calculates the movement path of the robot during the time interval between the time when the position information is received from the robot and the expected time when the robot receives the control command. Specifically, the server calculates the expected position of the robot at the expected time when the robot receives the control command based on the position information received from the robot. At this time, the server calculates the expected position when the vehicle travels to the expected time according to the control command previously transmitted to the robot before transmitting the control command to the robot.

예를 들어, 서버는 '통신 지연 시간+서버 처리 시간+통신 지연 시간'만큼 지난 후 로봇의 예상 위치를 산출하고, 예상 위치에 기반하여 로봇의 주행 정보를 생성한다. For example, the server calculates the expected position of the robot after 'communication delay time + server processing time + communication delay time' elapses, and generates driving information of the robot based on the expected position.

일 실시 예에 있어서, 도 5를 참조하면, 로봇(100)은 현재 로봇의 위치 정보를 서버로 전송하고, 로봇에 기 설정된 주행 정보에 따른 경로(530)로 이동한다. In one embodiment, referring to FIG. 5 , the robot 100 transmits the current position information of the robot to the server, and moves to a path 530 according to the driving information preset in the robot.

로봇의 초기 위치에서 목적지(510)에 도달하기 위해서는 제1경로(520a)를 따라 주행해야 한다. 하지만, 제1경로(520a)에 대응되는 주행 정보를 로봇이 수신하는 시점에서 로봇은 다른 위치(100')로 이동한 상태이다. 로봇이 다른 위치(100')에서 제1경로(520a)대로 주행할 경우, 목적지에 도달할 수 없다.In order to reach the destination 510 from the initial position of the robot, it must travel along the first path 520a. However, when the robot receives the driving information corresponding to the first path 520a, the robot moves to another location 100'. When the robot travels along the first path 520a from another location 100 ′, it cannot reach the destination.

서버는 로봇(100)으로 새로운 제어명령을 로봇으로 전송하기 전 상기 로봇으로 기 전송된 주행 정보에 기반하여 상기 로봇의 예상 위치를 산출한다. 예를 들어, 기 전송된 주행 정보는 530에 대응되는 주행 방향 및 1m/s의 주행 속도를 정의한다. 서버는 로봇이 초기 위치에서 위치 정보를 서버로 전송한 시점부터 로봇이 제어명령을 수신하는 시점까지의 예상 시간 간격을 0.5초로 산출한다. 이후, 서버는 로봇의 초기 위치에서 530에 대응되는 주행 방향으로 0.5m 이동한 위치를 로봇의 예상 위치(100')로 산출한다.The server calculates the expected position of the robot based on the traveling information previously transmitted to the robot before transmitting a new control command to the robot 100 to the robot. For example, the previously transmitted driving information defines a driving direction corresponding to 530 and a driving speed of 1 m/s. The server calculates the expected time interval from when the robot transmits the location information to the server from the initial position to the time when the robot receives the control command as 0.5 seconds. Thereafter, the server calculates a position moved by 0.5 m in the traveling direction corresponding to 530 from the initial position of the robot as the expected position 100' of the robot.

이후, 상기 로봇의 예상 위치를 기준으로, 로봇이 주행 정보를 수신하는 시점에서의 로봇의 위치(100')에서 목적지에 도달할 수 있는 제2경로(520b)를 로봇으로 전송한다. Thereafter, based on the expected position of the robot, the second path 520b that can reach the destination from the position 100 ′ of the robot at the point in time when the robot receives the driving information is transmitted to the robot.

상술한 바와 같이, 본 발명에 따르면 로봇과 서버 간의 통신 지연 시간에 기반하여 로봇이 제어명령을 수신하는 시점에서의 로봇의 예상 위치를 산출하고, 산출된 예상 위치에 기반하여 로봇에 대한 주행 제어를 수행할 수 있게 된다. 이를 통해, 본 발명은 통신 지연을 고려한 선제적인 예측 제어를 수행할 수 있게 된다.As described above, according to the present invention, based on the communication delay time between the robot and the server, the expected position of the robot at the time when the robot receives the control command is calculated, and based on the calculated expected position, driving control for the robot is performed. be able to perform Through this, according to the present invention, it is possible to perform preemptive predictive control in consideration of communication delay.

한편, 본 발명은 통신 지연 시간을 고려하여, 로봇이 공간 내에 배치된 장애물을 회피할 수 있는 주행 제어를 수행한다. On the other hand, in the present invention, in consideration of the communication delay time, the robot performs running control to avoid the obstacles disposed in the space.

도 6은 본 발명의 일 실시 예에 따라 로봇이 장애물을 회피하는 모습을 나타내는 개념도이고, 도 7은 로봇이 안전 영역 내로 진입하였을 때, 로봇의 주행을 나타내는 개념도이고, 도 8a, 8b 및 9는 장애물의 종류 및 이동 상태에 따라 안전 영역의 크기 및 형태를 다르게 설정하는 일 실시 예를 나타내는 개념도이다.6 is a conceptual diagram illustrating a state in which a robot avoids an obstacle according to an embodiment of the present invention, FIG. 7 is a conceptual diagram illustrating the driving of the robot when the robot enters a safe area, and FIGS. 8a, 8b and 9 are It is a conceptual diagram illustrating an embodiment in which the size and shape of the safety area are set differently according to the type of obstacle and the moving state.

로봇은 주행하는 공간에 포함된 장애물을 센싱하고, 센싱된 정보를 서버로 전송한다. 서버는 상기 장애물의 센싱에 근거하여, 상기 로봇이 상기 장애물과의 충돌을 회피하도록 하는 상기 장애물에 대한 안전 영역을 설정할 수 있다. The robot senses obstacles included in the driving space and transmits the sensed information to the server. Based on the sensing of the obstacle, the server may set a safe area for the obstacle so that the robot avoids a collision with the obstacle.

여기서, 안전 영역은 장애물이 배치된 위치를 기준으로 장애물 주변으로 형성되는 가상의 영역을 의미하는 것으로, 로봇이 장애물을 회피하는데 필요한 최소한의 안전거리를 설정한 영역이다. Here, the safe area means a virtual area formed around the obstacle based on the position where the obstacle is disposed, and is an area in which the minimum safety distance required for the robot to avoid the obstacle is set.

로봇이 장애물에 대한 센싱 정보를 서버로 전송한 시점부터 로봇이 장애물을 회피하기 위한 제어명령을 수신하는 시점까지 로봇은 기 설정된 주행 정보대로 주행할 수 있다. 안전 영역은 로봇이 장애물에 대한 센싱 정보를 서버로 전송한 시점부터 로봇이 장애물을 회피하기 위한 제어명령을 수신하는 시점까지 로봇에 아무런 제어명령이 입력되지 않더라도 로봇과 장애물이 충돌하지 않을 수 있는 거리에 기반하여 설정될 수 있다.From the time when the robot transmits sensing information about the obstacle to the server to the time when the robot receives a control command for avoiding the obstacle, the robot can drive according to the preset driving information. The safe area is the distance at which the robot and the obstacle can not collide even if no control commands are input to the robot from the point when the robot transmits the sensing information about the obstacle to the server until the time the robot receives the control command to avoid the obstacle. can be set based on

상기 안전 영역 밖에서 로봇이 장애물 향해 이동하는 경우, 로봇은 서버와의 통신을 통해 그 이동 경로를 수정할 수 있지만, 안전 영역 내에서 장애물을 향해 이동하는 경우, 장애물과 충돌할 가능성이 있다. 이에, 로봇에 의해 장애물이 감지되는 경우, 서버는 장애물에 대한 안전 영역을 설정하여, 로봇이 안전 영역 밖에서 주행하도록 한다.When the robot moves toward an obstacle outside the safe area, the robot can modify its movement path through communication with the server, but when moving toward the obstacle within the safe area, there is a possibility of colliding with the obstacle. Accordingly, when an obstacle is detected by the robot, the server sets a safe area for the obstacle so that the robot runs outside the safe area.

상기 안전 영역의 위치, 크기, 형태와 관련된 정보는 지도 정보에 매칭되어 저장되거나, 장애물을 센싱한 로봇으로 전송될 수 있다.Information related to the location, size, and shape of the safe area may be stored by matching map information or transmitted to a robot that senses an obstacle.

서버는 장애물에 대한 안전 영역을 설정하고, 설정된 안전 영역을 피해 주행할 수 있는 이동 경로를 생성한다. The server establishes a safe area for obstacles and creates a movement path that can be driven while avoiding the set safe area.

예를 들어, 도 6을 참조하면, 서버가 로봇(100)으로부터 장애물에 대한 센싱 정보를 수신하는 경우, 서버는 감지된 장애물(610)을 기준으로 안전 영역(620)을 설정한다. 이후, 서버는 상기 안전 영역을 회피하여 이동할 수 있는 이동 경로(630)를 설정한다. 서버는 안전 영역(620)에 관한 정보와 이동 경로(630)에 관한 주행 정보를 로봇으로 전송한다.For example, referring to FIG. 6 , when the server receives sensing information about an obstacle from the robot 100 , the server sets the safety area 620 based on the detected obstacle 610 . Thereafter, the server establishes a movement path 630 that can move while avoiding the safe area. The server transmits information about the safe area 620 and driving information about the movement path 630 to the robot.

한편, 서버는 로봇이 상기 안전 영역 내부로 진입하는 경우, 상기 로봇의 주행을 정지하거나, 상기 로봇이 상기 안전 마진 영역 밖으로 이동하도록 하는 제어명령을 로봇으로 전송한다. On the other hand, when the robot enters the safety area, the server transmits a control command to the robot to stop the movement of the robot or to move the robot out of the safety margin area.

이와 달리, 로봇에는 안전 영역에 대한 정보가 저장될 수 있으며, 로봇은 기 저장된 안전 영역으로 진입하는 경우, 주행을 정지하거나, 상기 안전 영역 밖으로 이동하도록 프로그래밍 되어 있을 수 있다. 이때, 로봇에 저장되는 안전 영역에 관한 정보는 서버에 의해 업데이트 될 수 있다.Alternatively, information on the safe area may be stored in the robot, and when the robot enters the pre-stored safe area, it may be programmed to stop running or to move out of the safe area. In this case, the information about the safe area stored in the robot may be updated by the server.

일 실시 예에 있어서, 도 7을 참조하면, 로봇이 특정 장애물(710)을 기준으로 안전 영역(720)이 설정된다. 로봇이 장애물을 향하는 방향(730a)으로 주행하는 도중 안전 영역(720) 내부로 진입하는 경우, 로봇은 정지한 후 서버로부터 새로운 제어명령을 수신할 때까지 대기하거나, 서버로부터 제어명령을 수신하지 않더라도 안전 영역 밖으로 이동하는 방향(730b)으로 주행할 수 있다.In one embodiment, referring to FIG. 7 , a safety area 720 is set for the robot based on a specific obstacle 710 . When the robot enters the safety area 720 while driving in the direction 730a toward the obstacle, the robot stops and waits until it receives a new control command from the server, or even if it does not receive a control command from the server The vehicle may travel in a direction 730b moving out of the safe area.

서버는 로봇으로부터 장애물에 대한 센싱 정보를 수신하는 경우, 통신 지연 시간에 기반하여 장애물에 대한 안전 영역을 설정한다. 구체적으로, 서버는 로봇이 장애물에 대한 센싱 정보를 서버로 전송한 시점부터 장애물 회피를 위한 제어명령을 수신하는 시점까지의 시간 간격을 고려하여 안전 영역의 크기 및 형태를 다르게 한다. When the server receives sensing information about an obstacle from the robot, it sets a safe area for the obstacle based on the communication delay time. Specifically, the server makes the size and shape of the safety area different in consideration of the time interval from when the robot transmits sensing information about the obstacle to the time when the control command for obstacle avoidance is received.

로봇이 장애물 회피를 위한 제어명령을 수신하는 시점은 기 산출된 통신 지연 시간 및 서버 예상 처리 시간에 기반하여 산출될 수 있다. 서버는 로봇이 장애물에 대한 센싱 정보를 서버로 전송한 시점부터 장애물 회피를 위한 제어명령을 수신하는 시점까지의 시간 간격에 비례하여 안전 영역의 크기를 설정할 수 있다.The time at which the robot receives the control command for obstacle avoidance may be calculated based on the pre-calculated communication delay time and server expected processing time. The server may set the size of the safe area in proportion to the time interval from when the robot transmits sensing information about the obstacle to the server to the time when the control command for obstacle avoidance is received.

일 실시 예에 있어서, 서버는 로봇 간의 통신 지연 시간을 주기적으로 갱신할 수 있다. 특정 장애물에 대한 안전 영역이 설정된 상태에서 통신 지연 시간이 증가하는 경우, 서버는 상기 특정 장애물을 기준으로 상기 안전 영역을 확장시키고, 통신 지연 시간이 감소하는 경우, 서버는 상기 특정 장애물을 기준으로 상기 안전 영역을 축소시킨다.In one embodiment, the server may periodically update the communication delay time between the robots. When the communication delay time increases while the safety area for the specific obstacle is set, the server expands the safety area based on the specific obstacle. When the communication delay time decreases, the server expands the safety area based on the specific obstacle. Reduce the safe area.

한편, 상기 안전 영역의 위치, 크기 및 형태는 장애물의 종류, 장애물의 이동 방향, 장애물의 이동 경로, 장애물의 이동 속도에 따라 달라질 수 있다.Meanwhile, the location, size, and shape of the safety area may vary depending on the type of obstacle, the moving direction of the obstacle, the moving path of the obstacle, and the moving speed of the obstacle.

상술한 바와 같이, 본 발명은 통신 지연 시간에 기반하여 장애물에 대한 안전 영역을 설정함으로써, 로봇과 서버 간의 통신 지연에 따른 불확실성을 해소할 수 있게 된다. As described above, in the present invention, by setting a safe area for obstacles based on the communication delay time, it is possible to solve the uncertainty due to the communication delay between the robot and the server.

한편, 서버는 장애물의 종류에 기반하여, 안전 영역의 크기 및 형상 중 적어도 하나를 결정할 수 있다. 구체적으로, 서버는 로봇으로부터 수신된 장애물과 관련된 정보에 근거하여 장애물의 종류를 판단한다. Meanwhile, the server may determine at least one of the size and shape of the safety area based on the type of obstacle. Specifically, the server determines the type of obstacle based on information related to the obstacle received from the robot.

일 실시 예에 있어서, 서버는 장애물의 종류로서, 고정된 장애물 및 이동하는 장애물 중 어느 하나를 선택하여 장애물의 종류를 선택할 수 있다. 장애물이 이동하는 경우, 서버는 장애물의 종류로서 다른 제어 가능 로봇, 고정된 장애물, 사람, 기타 이동하는 장애물 중 어느 하나를 선택하여 장애물의 종류를 설정할 수 있다.In an embodiment, the server may select the type of obstacle by selecting any one of a fixed obstacle and a moving obstacle as the type of obstacle. When the obstacle moves, the server may set the type of the obstacle by selecting any one of other controllable robots, fixed obstacles, people, and other moving obstacles as the type of obstacle.

장애물의 종류가 지도 상에 존재하는 장애물이거나, 고정된 장애물인 경우, 장애물이 이동하지 않기 때문에, 로봇과 충돌할 가능성이 낮다. 이 경우, 서버는 통신 지연 시간동안 로봇이 이동하는 거리만 고려하여 안전 영역을 설정한다. 이에 따라, 고정된 장애물에 대한 안전 영역의 크기는 이동하는 장애물에 대한 안전 영역의 크기보다 작을 수 있다.When the type of obstacle is an obstacle existing on the map or a fixed obstacle, the possibility of colliding with the robot is low because the obstacle does not move. In this case, the server sets the safe area by considering only the distance the robot moves during the communication delay time. Accordingly, the size of the safe area for the fixed obstacle may be smaller than the size of the safe area for the moving obstacle.

한편, 장애물이 이동하는 경우, 서버는 장애물의 이동 경로 및 이동 속도 중 적어도 하나에 근거하여, 안전 영역의 크기 및 형상 중 적어도 하나를 결정할 수 있다.Meanwhile, when the obstacle moves, the server may determine at least one of the size and shape of the safety area based on at least one of the moving path and the moving speed of the obstacle.

구체적으로, 도 8a를 참조하면, 서버는 로봇(100)으로부터 수신된 장애물과 관련된 정보에 기반하여 장애물의 위치를 파악한다. 상술한 방법으로 파악된 장애물의 위치는 로봇이 장애물과 관련된 정보를 전송하는 시점에서의 장애물의 위치이다. 로봇이 장애물을 회피하기 위한 제어명령을 수신하는 시점에서 장애물은 다른 위치(810')로 이동할 수 있으며, 로봇 또한 다른 위치(100')로 이동할 수 있다. 이에 따라, 장애물과 로봇 간의 거리가 빠르게 가까워질 수 있다.Specifically, referring to FIG. 8A , the server determines the location of the obstacle based on information related to the obstacle received from the robot 100 . The position of the obstacle determined by the above method is the position of the obstacle at the point in time when the robot transmits information related to the obstacle. When the robot receives the control command for avoiding the obstacle, the obstacle may move to another position 810 ′, and the robot may also move to another position 100 ′. Accordingly, the distance between the obstacle and the robot may be rapidly approached.

서버는 장애물의 이동 속도에 비례하여 장애물에 대한 안전 영역의 크기를 결정할 수 있다. 장애물의 이동 속도가 빠를수록 로봇과 가까워지는 속도가 빠르기 때문에, 서버는 빠른 속도로 이동하는 장애물에 대한 안전 영역을 상대적으로 크게 설정할 수 있다.The server may determine the size of the safe area for the obstacle in proportion to the moving speed of the obstacle. Since the faster the moving speed of the obstacle, the faster it approaches the robot, so the server can set a relatively large safe area for the fast moving obstacle.

한편, 서버는 장애물의 이동 방향에 근거하여, 안전 영역의 형태를 결정할 수 있다. 구체적으로, 서버는 장애물이 이동하는 방향으로 안전 영역이 상대적으로 넓게 형성되고, 장애물이 이동하지 않는 방향으로 안전 영역이 상대적으로 좁게 형성되도록 할 수 있다.Meanwhile, the server may determine the shape of the safety area based on the moving direction of the obstacle. Specifically, the server may make the safety area relatively wide in the direction in which the obstacle moves, and the safety area may be formed relatively narrow in the direction in which the obstacle does not move.

한편, 서버는 상기 장애물의 이동 경로 산출이 가능 여부에 근거하여, 안전 영역의 형태를 다르게 설정할 수 있다. 구체적으로, 상기 장애물의 이동 경로 산출이 가능한 경우, 상기 안전 영역은 상기 로봇이 제어명령을 수신하는 시점에서 상기 장애물이 위치하는 영역을 포함하도록 생성된다. 이와 달리, 상기 장애물의 이동 경로 산출이 불가능한 경우, 상기 안전 마진 영역은 상기 이동 속도에 대응되는 형태로 생성된다.On the other hand, the server may set the shape of the safety area differently based on whether it is possible to calculate the movement path of the obstacle. Specifically, when it is possible to calculate the movement path of the obstacle, the safe area is created to include an area in which the obstacle is located when the robot receives a control command. On the contrary, when it is impossible to calculate the movement path of the obstacle, the safety margin area is generated in a form corresponding to the movement speed.

일 실시 예에 있어서, 도 8b를 참조하면, 장애물의 종류가 제어 가능한 다른 로봇(810)인 경우, 서버는 다른 로봇(810)으로 전송된 주행 정보에 기반하여 다른 로봇(810)의 이동 경로를 예측할 수 있다. 다른 로봇으로 전송된 주행 정보에 기반하여 로봇이 제어명령을 수신하는 시점에서 상기 다른 로봇의 예상 위치(810')를 산출한다. 안전 영역은 상기 다른 로봇의 예상 위치(810')를 포함하도록 설정된다. 예를 들어, 다른 로봇에 대응하는 안전 영역(820)은 다른 로봇의 이동 방향으로 길게 연장되는 타원형으로 이루어질 수 있다.In one embodiment, referring to FIG. 8B , when the type of obstacle is another controllable robot 810 , the server determines the movement path of the other robot 810 based on the driving information transmitted to the other robot 810 . predictable. Based on the driving information transmitted to the other robot, the predicted position 810' of the other robot is calculated at the time the robot receives the control command. The safe area is set to include the expected position 810' of the other robot. For example, the safety area 820 corresponding to the other robot may be formed in an oval shape elongated in the moving direction of the other robot.

한편, 서버는 장애물의 이동 방향을 예측할 수 없는 경우, 장애물을 중심으로 하는 원형으로 안전 영역을 설정할 수 있다. 일 실시 예에 있어서, 도 9를 참조하면, 장애물(910)의 종류가 사람인 경우, 장애물의 이동 방향을 예측할 수 없기 때문에, 안전 영역은 장애물을 중심으로 하는 원형으로 설정될 수 있으며, 안전을 위해 다른 종류의 장애물보다 안전 영역의 넓이가 상대적으로 클 수 있다. Meanwhile, when the server cannot predict the movement direction of the obstacle, the server may set the safety area in a circle centered on the obstacle. In one embodiment, referring to FIG. 9 , when the type of the obstacle 910 is a person, since the moving direction of the obstacle cannot be predicted, the safety area may be set in a circular shape centered on the obstacle. The width of the safety area may be relatively larger than that of other types of obstacles.

한편, 서버는 장애물(910)의 이동 속도에 기반하여, 안전 영역의 크기를 제2크기(920b)에서 제1크기(920a)로 축소하거나, 제2크기(920b)에서 제3크기(930c)로 확장할 수 있다. On the other hand, the server reduces the size of the safety area from the second size 920b to the first size 920a, or from the second size 920b to the third size 930c, based on the moving speed of the obstacle 910 . can be expanded to

상술한 바와 같이, 본 발명은 장애물의 특징을 고려한 안전 영역을 설정함으로써, 통신 지연으로 인하여 로봇이 장애물의 상태 변화에 곧바로 대처할 수 없는 상황에서도, 로봇이 장애물과 충돌하지 않고 안전하게 주행하도록 할 수 있다.As described above, in the present invention, by setting a safety area in consideration of the characteristics of obstacles, even in a situation in which the robot cannot immediately respond to a change in the state of the obstacle due to communication delay, the robot can safely travel without colliding with the obstacle. .

한편, 위에서 살펴본 본 발명은, 컴퓨터에서 하나 이상의 프로세스에 의하여 실행되며, 이러한 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램으로서 구현될 수 있다.Meanwhile, the present invention described above may be implemented as a program storable in a computer-readable medium, which is executed by one or more processes in a computer.

나아가, 위에서 살펴본 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드 또는 명령어로서 구현하는 것이 가능하다. 즉, 본 발명은 프로그램의 형태로 제공될 수 있다. Furthermore, the present invention as seen above can be implemented as computer-readable codes or instructions on a medium in which a program is recorded. That is, the present invention may be provided in the form of a program.

한편, 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. Meanwhile, the computer-readable medium includes all types of recording devices in which data readable 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. There is this.

나아가, 컴퓨터가 읽을 수 있는 매체는, 저장소를 포함하며 전자기기가 통신을 통하여 접근할 수 있는 서버 또는 클라우드 저장소일 수 있다. 이 경우, 컴퓨터는 유선 또는 무선 통신을 통하여, 서버 또는 클라우드 저장소로부터 본 발명에 따른 프로그램을 다운로드 받을 수 있다.Furthermore, the computer-readable medium may be a server or cloud storage that includes a storage and that an electronic device can access through communication. In this case, the computer may download the program according to the present invention from a server or cloud storage through wired or wireless communication.

나아가, 본 발명에서는 위에서 설명한 컴퓨터는 프로세서, 즉 CPU(Central Processing Unit, 중앙처리장치)가 탑재된 전자기기로서, 그 종류에 대하여 특별한 한정을 두지 않는다.Furthermore, in the present invention, the computer described above is an electronic device equipped with a processor, that is, a CPU (Central Processing Unit, Central Processing Unit), and there is no particular limitation on the type thereof.

한편, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.On the other hand, the above detailed description should not be construed as limiting in all aspects, but should be considered as exemplary. The scope of the present invention should be determined by a reasonable interpretation of the appended claims, and all modifications within the equivalent scope of the present invention are included in the scope of the present invention.

Claims (10)

클라우드 서버에 의해 제어되는 로봇이 주행하는 건물에 있어서,
상기 건물은,
상기 로봇이 주행하는 실내 영역을 포함하도록 이루어지고,
상기 클라우드 서버는,
상기 로봇과 상기 클라우드 서버 간에 송수신되는 시간 정보에 근거하여 상기 로봇과 상기 클라우드 서버 간의 통신 지연 시간을 산출하고,
상기 통신 지연 시간에 기반하여, 상기 로봇이 상기 실내 영역에 존재하는 장애물을 회피하도록 하는 상기 로봇의 주행과 관련된 제어명령을 생성하며,
상기 제어 명령에 따라 상기 로봇이 주행하도록 상기 로봇으로 상기 제어 명령을 전송하고,
상기 제어명령은 상기 로봇이 상기 제어명령을 수신하는 시점에서의 상기 로봇의 예상 위치에 기반하여 생성되는 것을 특징으로 하는 건물.
In a building in which a robot controlled by a cloud server runs,
The building is
It is made to include an indoor area in which the robot travels,
The cloud server,
Calculating a communication delay time between the robot and the cloud server based on time information transmitted and received between the robot and the cloud server,
Based on the communication delay time, generating a control command related to the driving of the robot that causes the robot to avoid obstacles existing in the indoor area,
Transmitting the control command to the robot so that the robot travels according to the control command,
The control command is a building, characterized in that the robot is generated based on the expected position of the robot when the control command is received.
제1있어서,
상기 로봇의 예상 위치는 상기 통신 지연 시간에 기반하여 산출되는 것을 특징으로 하는 건물.
The method of claim 1,
The expected position of the robot is a building, characterized in that calculated based on the communication delay time.
제2항에 있어서,
상기 로봇이 상기 제어명령을 수신하는 시점은 상기 통신 지연 시간에 기반하여 산출되고,
상기 로봇의 예상 위치는,
상기 제어명령을 상기 로봇으로 전송하기 전 상기 로봇으로 기 전송된 제어명령에 따라 상기 로봇이 상기 제어명령을 수신하는 시점까지 주행하였을 때 로봇의 예상 위치인 것을 특징으로 하는 건물.
3. The method of claim 2,
The time when the robot receives the control command is calculated based on the communication delay time,
The expected position of the robot is,
The building, characterized in that it is the expected position of the robot when the robot travels until the time when the robot receives the control command according to the control command previously transmitted to the robot before transmitting the control command to the robot.
제3항에 있어서,
상기 클라우드 서버는,
상기 로봇으로 시간 정보가 포함된 제1메시지를 전송하고,
상기 로봇으로부터 상기 제1메시지에 대응되는 제2메시지를 수신하며,
상기 제1메시지에 포함된 시간 정보 및 상기 제2메시지를 수신한 시점에 기반하여 상기 통신 지연 시간을 산출하고,
상기 제2메시지는,
상기 제1메시지를 수신한 시점 및 상기 제2메시지를 전송하는 시점과 관련된 시간 정보를 포함하는 것을 특징으로 하는 건물.
4. The method of claim 3,
The cloud server,
Transmitting a first message including time information to the robot,
Receives a second message corresponding to the first message from the robot,
calculating the communication delay time based on the time information included in the first message and the time at which the second message is received,
The second message is
A building, characterized in that it includes time information related to a time point at which the first message is received and a time point at which the second message is transmitted.
제1항에 있어서,
상기 로봇은,
상기 실내 영역에 포함된 장애물을 센싱하고,
상기 장애물의 센싱에 근거하여, 상기 장애물과의 충돌을 회피하도록 하는 상기 장애물에 대한 안전 영역을 설정하며,
상기 제어명령은,
상기 장애물의 안전 영역 내부로 상기 로봇이 진입하는 경우, 상기 로봇의 주행을 정지하거나, 상기 로봇이 상기 안전 영역 밖으로 이동하도록 하는 제어명령을 포함하고,
상기 안전 영역의 크기 및 형태 중 적어도 하나는 상기 통신 지연 시간에 기반하여 설정되는 것을 특징으로 하는 건물.
According to claim 1,
The robot is
Sensing an obstacle included in the indoor area,
Based on the sensing of the obstacle, a safety area for the obstacle is set to avoid a collision with the obstacle,
The control command is
When the robot enters the safe area of the obstacle, including a control command to stop the robot running or to move the robot out of the safe area,
At least one of the size and shape of the safe area is set based on the communication delay time.
제5항에 있어서,
상기 장애물에 대한 안전 영역은,
상기 장애물을 기준으로 설정되고,
상기 통신 지연 시간이 증가하는 경우 상기 장애물을 기준으로 확장되고,
상기 통신 지연 시간이 감소하는 경우 상기 장애물을 기준으로 축소되는 것을 특징으로 하는 건물.
6. The method of claim 5,
The safe area for the obstacle is,
set based on the obstacle,
When the communication delay time increases, it is expanded based on the obstacle,
When the communication delay time is reduced, the building characterized in that it is reduced based on the obstacle.
제6항에 있어서,
상기 안전 영역은 상기 로봇이 상기 클라우드 서버로부터 제어명령을 수신하는 시점에서 상기 장애물이 위치하는 것이 예상되는 영역을 포함하도록 생성되는 것을 특징으로 하는 건물.
7. The method of claim 6,
The safe area is created to include an area where the obstacle is expected to be located when the robot receives a control command from the cloud server.
제7항에 있어서,
상기 장애물이 위치하는 것이 예상되는 영역은, 상기 장애물의 이동 경로 및 이동 속도 중 적어도 하나에 근거하여 결정되는 것을 특징으로 하는 건물.
8. The method of claim 7,
The area in which the obstacle is expected to be located is determined based on at least one of a moving path and a moving speed of the obstacle.
제1항에 있어서,
상기 통신 지연 시간은,
상기 로봇과 다른 복수의 제어 대상 로봇으로부터 수신된 통신 지연 시간을 기반으로 산출되는 것을 특징으로 하는 건물.
According to claim 1,
The communication delay time is
Building, characterized in that calculated based on the communication delay time received from the robot and a plurality of other control target robots.
로봇과 클라우드 서버 간의 통신을 통해 원격으로 제어되는 로봇이 주행하는 건물에 있어서,
상기 로봇과 상기 클라우드 서버 간에 송수신되는 시간 정보에 근거하여 상기 로봇과 상기 서버 간의 통신 지연 시간을 산출하는 단계;
상기 통신 지연 시간에 기반하여, 상기 로봇이 상기 실내 영역에 존재하는 장애물을 회피하도록 상기 로봇의 주행과 관련된 제어명령을 생성하는 단계; 및
상기 제어 명령에 따라 상기 로봇이 주행하도록 상기 로봇으로 상기 제어 명령을 전송하는 단계를 통해 상기 클라우드 서버에 의해 제어되는 상기 로봇이 주행하는 건물.
In a building in which a robot that is remotely controlled through communication between the robot and a cloud server runs,
calculating a communication delay time between the robot and the server based on time information transmitted and received between the robot and the cloud server;
generating, based on the communication delay time, a control command related to driving of the robot so that the robot avoids an obstacle existing in the indoor area; and
A building in which the robot runs, controlled by the cloud server, through the step of transmitting the control command to the robot so that the robot runs according to the control command.
KR1020210081914A 2021-04-02 2021-06-23 A building where robots that are robust to communication delay move KR102485644B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210081914A KR102485644B1 (en) 2021-04-02 2021-06-23 A building where robots that are robust to communication delay move
PCT/KR2022/000045 WO2022211224A1 (en) 2021-04-02 2022-01-04 Robot remote control method and system, and building in which robot robust against communication latency is driven

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210043612A KR102484773B1 (en) 2021-04-02 2021-04-02 Control method and system for robot
KR1020210081914A KR102485644B1 (en) 2021-04-02 2021-06-23 A building where robots that are robust to communication delay move

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020210043612A Division KR102484773B1 (en) 2021-04-02 2021-04-02 Control method and system for robot

Publications (3)

Publication Number Publication Date
KR20220137506A true KR20220137506A (en) 2022-10-12
KR102485644B1 KR102485644B1 (en) 2023-01-05
KR102485644B9 KR102485644B9 (en) 2023-12-07

Family

ID=83456425

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210081914A KR102485644B1 (en) 2021-04-02 2021-06-23 A building where robots that are robust to communication delay move

Country Status (2)

Country Link
KR (1) KR102485644B1 (en)
WO (1) WO2022211224A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140126539A (en) * 2013-04-23 2014-10-31 삼성전자주식회사 Moving robot, user terminal apparatus, and control method thereof
JP2016520944A (en) * 2013-06-03 2016-07-14 コントロールワークス プライベート リミテッド Method and apparatus for off-board navigation of robotic devices
JP2020500763A (en) * 2016-12-01 2020-01-16 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd Flight method of unmanned aerial vehicle for stationary and moving objects
KR20210015211A (en) * 2019-08-01 2021-02-10 엘지전자 주식회사 Method of cloud slam in realtime and robot and cloud server implementing thereof

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101378883B1 (en) * 2011-09-07 2014-03-28 엘지전자 주식회사 Robot cleaner, terminal, and system and method for remotely controlling the robot

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140126539A (en) * 2013-04-23 2014-10-31 삼성전자주식회사 Moving robot, user terminal apparatus, and control method thereof
JP2016520944A (en) * 2013-06-03 2016-07-14 コントロールワークス プライベート リミテッド Method and apparatus for off-board navigation of robotic devices
JP2020500763A (en) * 2016-12-01 2020-01-16 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd Flight method of unmanned aerial vehicle for stationary and moving objects
KR20210015211A (en) * 2019-08-01 2021-02-10 엘지전자 주식회사 Method of cloud slam in realtime and robot and cloud server implementing thereof

Also Published As

Publication number Publication date
KR102485644B1 (en) 2023-01-05
WO2022211224A1 (en) 2022-10-06
KR102485644B9 (en) 2023-12-07

Similar Documents

Publication Publication Date Title
US11161238B2 (en) Multi-agent coordination under sparse networking
US10834766B2 (en) Unmanned vehicle controlling system and method of operating same
de Souza et al. Coordinating movement within swarms of UAVs through mobile networks
KR102635529B1 (en) Robot for airport and method thereof
JP2017188904A (en) Method and device for processing positional information on terminal using beacon
KR102339001B1 (en) A building that monitors mobile robots in an indoor space using a cloud server
KR20220134883A (en) Method for generating map, control method and system for robot using the same
KR102462636B1 (en) A building where robots that are remotely controlled by a cloud server and robot remote control system move
KR20220134928A (en) Method and system for controling driving of robot
KR102484770B1 (en) Method and system for recoverying communications disruption of robot
KR102484773B1 (en) Control method and system for robot
KR102485644B1 (en) A building where robots that are robust to communication delay move
KR102462634B1 (en) Building that monitors robots driving in the building, control method and system for robot
KR102489722B1 (en) A building having elevators used by robots that board on optimal waiting positions of the elevators
KR102315362B1 (en) Evaluation method and system for robot
KR20220135139A (en) A building where a robot whose drive path is controlled based on the congestion level of the space moves
KR102494840B1 (en) A building where robots that are robust to network failures move
US20220171383A1 (en) Unmanned vehicle controlling system and method, and nontransitory computer-readable medium
Hodge et al. Analysing Ultra-Wide Band Positioning for Geofencing in a Safety Assurance Context
KR102486153B1 (en) A building where robots, that respond flexibly to obstacles, move
KR20220131060A (en) Control method and system for robot
JP7370362B2 (en) Robot control method and system
KR102489723B1 (en) Control method and system for robot using the same
KR102585341B1 (en) Multiple unmanned mobile vehicle control system using flexible movement path information, device and method
JP6550579B1 (en) Disaster escape route guidance system

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
J202 Request for trial for correction [limitation]
J301 Trial decision

Free format text: TRIAL NUMBER: 2023105000084; TRIAL DECISION FOR CORRECTION REQUESTED 20230822

Effective date: 20231116