KR20220134928A - 로봇 주행 제어 방법 및 시스템 - Google Patents

로봇 주행 제어 방법 및 시스템 Download PDF

Info

Publication number
KR20220134928A
KR20220134928A KR1020210040209A KR20210040209A KR20220134928A KR 20220134928 A KR20220134928 A KR 20220134928A KR 1020210040209 A KR1020210040209 A KR 1020210040209A KR 20210040209 A KR20210040209 A KR 20210040209A KR 20220134928 A KR20220134928 A KR 20220134928A
Authority
KR
South Korea
Prior art keywords
robot
congestion
area
expected
specific
Prior art date
Application number
KR1020210040209A
Other languages
English (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 KR1020210040209A priority Critical patent/KR20220134928A/ko
Priority to KR1020210081917A priority patent/KR20220135139A/ko
Priority to PCT/KR2022/000065 priority patent/WO2022211225A1/ko
Publication of KR20220134928A publication Critical patent/KR20220134928A/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • B25J5/007Manipulators mounted on wheels or on carriages mounted on wheels
    • 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
    • B25J9/1666Avoiding collision or forbidden zones
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

본 발명은 로봇 주행 제어에 관한 것으로서, 공간 내 혼잡도를 고려하여 로봇의 이동 경로를 설정할 수 있는 로봇 주행 제어 방법 및 시스템이다. 본 발명에 따른 공간을 주행하는 로봇의 주행을 제어하는 방법은, 제어의 대상이 되는 특정 로봇의 목적지를 특정하는 단계, 적어도 하나의 다른 로봇의 이동 경로를 이용하여, 상기 공간에서 혼잡이 예상되는 혼잡 예상 영역을 특정하는 단계, 상기 혼잡 예상 영역을 고려하여, 상기 목적지에 대한 상기 특정 로봇의 이동 경로를 생성하는 단계 및 상기 특정 로봇이, 상기 특정 로봇의 이동 경로를 따라 상기 공간을 주행하도록, 상기 특정 로봇의 이동 경로에 따른 주행 정보를 전송하는 단계를 포함할 수 있다.

Description

로봇 주행 제어 방법 및 시스템{METHOD AND SYSTEM FOR CONTROLING DRIVING OF ROBOT}
본 발명은 로봇 주행 제어에 관한 것으로서, 공간 내 혼잡도를 고려하여 로봇의 이동 경로를 설정할 수 있는 로봇 주행 제어 방법 및 시스템이다.
기술이 발전함에 따라, 다양한 서비스 디바이스들이 나타나고 있으며, 특히 최근에는 다양한 작업 또는 서비스를 수행하는 로봇에 대한 기술 개발이 활발하게 이루어지고 있다.
나아가 최근에는, 인공 지능 기술, 클라우드 기술 등이 발전함에 따라, 로봇의 활용도가 점차적으로 높아지고 있으며, 건물을 자유롭게 이동하는 로봇 서비스들이 출현하고 있다.
이때, 공간의 혼잡 여부는, 로봇의 이동 성능에 큰 영향을 미치므로, 사람에 의한 혼잡도에 따라 로봇의 회피 경로를 생성하는 기술에 대한 개발이 활발하게 이루어지고 있다.
이에, 대한민국 공개특허 제10-2019-0096857호(로봇의 경로를 결정하는 인공 지능 서버 및 그 방법)에서는, 인공 지능 서버가 관제 공간에 대한 밀집도를 예상하여 로봇의 경로를 결정하는 방법이 개시되어 있다. 다만, 종래 기술은 현 시점에서의 혼잡 여부를 위주로 로봇의 이동 경로를 고려하고 있으므로, 미래의 혼잡을 고려한 로봇의 이동 경로 설정 방법에 대한 니즈가 여전히 존재한다.
본 발명은 로봇에 대한 주행 제어 방법 및 시스템을 제공하는 것이다. 보다 구체적으로 본 발명은, 공간 내 미래 혼잡도를 고려하여 로봇의 이동 경로를 설정할 수 있는 로봇 주행 제어 방법 및 시스템을 제공하는 것이다.
나아가, 본 발명은, 다른 로봇의 이동 경로를 고려하여 공간 내 미래 혼잡도를 예측하고, 예측된 혼잡도를 제어 대상의 특정 로봇에 대한 이동 경로에 반영할 수 있는 로봇 주행 제어 방법 및 시스템을 제공하는 것이다.
또한, 본 발명은, 시간 흐름에 따라 변화하는 공간 내 혼잡도를 반영하여, 로봇에게 최적의 이동 경로를 제공할 수 있도록 하는 로봇 주행 제어 방법 및 시스템을 제공하는 것이다.
본 발명에 따른 공간을 주행하는 로봇의 주행을 제어하는 방법은, 제어의 대상이 되는 특정 로봇의 목적지를 특정하는 단계, 적어도 하나의 다른 로봇의 이동 경로를 이용하여, 상기 공간에서 혼잡이 예상되는 혼잡 예상 영역을 특정하는 단계, 상기 혼잡 예상 영역을 고려하여, 상기 목적지에 대한 상기 특정 로봇의 이동 경로를 생성하는 단계 및 상기 특정 로봇이, 상기 특정 로봇의 이동 경로를 따라 상기 공간을 주행하도록, 상기 특정 로봇의 이동 경로에 따른 주행 정보를 전송하는 단계를 포함할 수 있다.
나아가, 로봇 주행 제어 시스템은 공간을 주행하는 로봇들과 통신하는 통신부 및 제어의 대상이 되는 특정 로봇의 목적지를 특정하고, 적어도 하나의 다른 로봇의 이동 경로를 이용하여, 상기 공간에서 혼잡이 예상되는 혼잡 예상 영역을 특정하는 제어부를 포함하고, 상기 제어부는 상기 혼잡 예상 영역을 고려하여, 상기 목적지에 대한 상기 특정 로봇의 이동 경로를 생성하고, 상기 특정 로봇이, 상기 특정 로봇의 이동 경로를 따라 상기 공간을 주행하도록, 상기 통신부를 통해, 상기 특정 로봇의 이동 경로에 따른 주행 정보를 전송하는 것을 특징으로 할 수 있다.
나아가, 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램은, 제어의 대상이 되는 특정 로봇의 목적지를 특정하는 단계, 적어도 하나의 다른 로봇의 이동 경로를 이용하여, 공간에서 혼잡이 예상되는 혼잡 예상 영역을 특정하는 단계, 상기 혼잡 예상 영역을 고려하여, 상기 목적지에 대한 상기 특정 로봇의 이동 경로를 생성하는 단계 및 상기 특정 로봇이, 상기 특정 로봇의 이동 경로를 따라 상기 공간을 주행하도록, 상기 특정 로봇의 이동 경로에 따른 주행 정보를 전송하는 단계를 수행하도록 하는 명령어들을 포함할 수 있다.
위에서 살펴본 것과 같이, 본 발명에 따른 로봇 주행 제어 방법 및 시스템은, 다른 로봇의 이동 경로를 이용하여 공간 내 미래 혼잡 예상 영역을 예측하고, 예측된 혼잡 예상 영역을 고려하여 로봇의 이동 경로를 설정할 수 있다.
이를 통해, 본 발명에 따른 로봇 주행 제어 방법 및 시스템에 의하면, 공간 내 혼잡이 예상되는 영역을 특정할 수 있을 뿐 아니라 해당 혼잡 예상 영역이 어느 시점에 생성되는지 예측할 수 있기 때문에, 시간의 흐름에 따라 가변되는 공간 내 혼잡도에 대응하여 로봇에 최적의 이동 경로를 제공할 수 있다.
나아가, 본 발명에 따른 로봇 주행 제어 방법 및 시스템은 혼잡 예상 영역이 도래하는 시점을 기준으로 혼잡 예상 영역을 회피할지 여부를 결정하기 때문에, 미래에 대한 불확실성에 의해 발생되는 로봇 이동 경로의 비효율성을 최소화할 수 있게 된다.
한편, 본 발명에 따른 로봇 주행 제어 방법 및 시스템은 예측된 혼잡 예상 영역을 주기적으로 업데이트하고, 업데이트 결과를 로봇의 이동 경로에 반영함으로써, 공간 내 상황 변화에 따른 최적의 이동 경로를 제공할 수 있도록 한다.
도 1 및 도 2는 본 발명에 따른 로봇 주행 제어 방법 및 시스템을 설명하기 위한 개념도들이다.
도 3은 로봇의 이동 경로 설정에 활용되는 노드맵을 설명하기 위한 개념도이다.
도 4는 본 발명에 따른 로봇 주행 제어 방법을 설명하기 위한 흐름도이다.
도 5a 및 도 5b는 본 발명에 따른 로봇 주행 제어 방법을 나타내는 개념도들이다.
도 6a 및 도 6b는 다른 로봇을 활용하여 혼잡 예상 영역을 특정하는 방법을 설명하기 위한 개념도이다.
도 7a 및 도 7b는 공간 내 환경을 이용하여 혼잡 예상 영역을 특정하는 방법을 설명하기 위한 개념도이다.
도 8a 및 도 8b는 복수의 혼잡 예상 영역에 대한 회피 경로를 생성하는 일 실시 예를 나타내는 개념도이다.
도 9a 및 도 9b는 혼잡 예상 영역을 업데이트하여 로봇의 이동 경로에 반영하는 일 실시 예를 나타내는 개념도들이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소에는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명은 로봇에 대한 주행 제어 방법 및 시스템을 제공하는 것으로서, 보다 구체적으로, 공간 내 미래 혼잡도를 고려하여 로봇의 이동 경로를 설정할 수 있는 로봇 주행 제어 방법 및 시스템을 제공하는 것이다. 이하에서는, 첨부된 도면과 함께, 로봇(robot) 주행 제어 시스템에 대하여 살펴보도록 한다. 도 1 및 도 2는 본 발명에 따른 로봇 주행 제어 방법 및 시스템을 설명하기 위한 개념도들이다.
예를 들어, 도 1에 도시된 것과 같이, 기술이 발전함에 따라 로봇의 활용도는 점차적으로 높아지고 있다. 종래 로봇은 특수한 산업분야(예를 들어, 산업 자동화 관련 분야)에서 활용되었으나, 점차적으로 인간이나 설비를 위해 유용한 작업을 수행할 수 있는 서비스 로봇으로 변모하고 있다.
이와 같이 다양한 서비스를 제공할 수 있는 로봇은, 부여된 임무를 수행하기 위하여 도 1에 도시된 것과 같은 공간(10)을 주행하도록 이루어질 수 있다. 로봇이 주행하는 공간의 종류에는 제한이 없으며, 필요에 따라 실내 공간 및 실외 공간 중 적어도 하나를 주행하도록 이루어 질 수 있다. 예를 들어, 실내 공간은 백화점, 공항, 호텔, 학교, 빌딩, 지하철역, 기차역, 서점 등과 같이 다양한 공간일 수 있다. 로봇은, 이와 같이, 다양한 공간에 배치되어 인간에게 유용한 서비스를 제공하도록 이루어질 수 있다.
한편, 로봇을 이용하여 다양한 서비스를 제공하기 위해서는, 로봇을 정확하게 제어하는 것이 매우 중요한 요소이다. 이에, 본 발명은 공간에 배치된 카메라를 함께 이용하여 로봇을 원격으로 보다 정확하게 제어할 수 있는 방법에 대하여 제안한다.
도 1에 도시된 것과 같이, 로봇이 위치한 공간(10)에는 카메라(20)가 배치될 수 있다. 도시와 같이, 공간(10)에 배치된 카메라(20)의 수는 그 제한이 없다. 도시와 같이, 공간(10)에는 복수개의 카메라들(20a, 20b, 20c)이 배치될 수 있다. 공간(10)에 배치된 카메라(20)의 종류는 다양할 수 있으며, 본 발명에서는 특히 공간에 배치된 CCTV(closed circuit television)를 활용할 수 있다.
도 2에 도시된 것과 같이, 본 발명에 의하면 로봇 주행 제어 시스템(300)에서, 로봇(100)을 원격으로 관리하고, 제어할 수 있다.
본 발명에 따른 로봇 주행 제어 시스템(300)은 공간(10)에 배치된 카메라(20, 예를 들어, CCTV)에서 수신되는 영상, 로봇으로부터 수신되는 영상, 로봇에 구비된 센서로부터 수신되는 정보 및 공간에 구비된 다양한 센서로부터 수신되는 정보 중 적어도 하나를 활용하여, 로봇의 주행을 제어하거나, 로봇에 대한 적절한 제어를 수행할 수 있다.
도 2에 도시된 것과 같이, 본 발명에 따른 로봇 주행 제어 시스템(300)은, 통신부(310), 저장부(320), 디스플레이부(330), 입력부(340) 및 제어부(350) 중 적어도 하나를 포함할 수 있다.
통신부(310)는, 공간(10)에 배치된 다양한 디바이스와 유선 또는 무선으로 통신하도록 이루어질 수 있다. 통신부(310)는 도시와 같이 로봇(100)과 통신할 수 있다. 통신부(310)는 로봇(100)과의 통신을 통해, 로봇(100)에 구비된 카메라로부터 촬영되는 영상을 수신하도록 이루어질 수 있다.
나아가, 통신부(310)는 적어도 하나의 외부 서버(또는 외부 저장소, 200)와 통신하도록 이루어질 수 있다. 여기에서, 외부 서버(200)는, 도시된 것과 같이, 클라우드 서버(210) 또는 데이터베이스(220) 중 적어도 하나를 포함하도록 구성될 수 있다. 한편, 외부 서버(200)에서는, 제어부(350)의 적어도 일부의 역할을 수행하도록 구성될 수 있다. 즉, 데이터 처리 또는 데이터 연산 등의 수행은 외부 서버(200)에서 이루어지는 것이 가능하며, 본 발명에서는 이러한 방식에 대한 특별한 제한을 두지 않는다.
한편, 통신부(310)는 통신하는 디바이스의 통신 규격에 따라 다양한 통신 방식을 지원할 수 있다.
예를 들어, 통신부(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) 내외에 위치한 디바이스(클라우드 서버 포함)와 통신하도록 이루어질 수 있다.
다음으로 저장부(320)는, 본 발명과 관련된 다양한 정보를 저장하도록 이루어질 수 있다. 본 발명에서 저장부(320)는 로봇 주행 제어 시스템(300) 자체에 구비될 수 있다. 이와 다르게, 저장부(320)의 적어도 일부는, 클라우드 서버(210) 및 데이터베이스(220) 중 적어도 하나를 의미할 수 있다. 즉, 저장부(320)는 본 발명에 따른 로봇 관제를 위하여 필요한 정보가 저장되는 공간이면 충분하며, 물리적인 공간에 대한 제약은 없는 것으로 이해될 수 있다. 이에, 이하에서는, 저장부(320), 클라우드 서버(210) 및 데이터베이스(220)를 별도로 구분하지 않고, 모두 저장부(320)라고 표현하도록 한다. 이때, 클라우드 서버(210)는 “클라우드 저장소”를 의미할 수 있다.
먼저, 저장부(320)에는, 로봇(100)에 대한 정보가 저장될 수 있다.
로봇(100)에 대한 정보는 매우 다양할 수 있으며, 로봇(100)에 대한 정보는 일 예로서, i)공간(10)에 배치된 로봇(100)을 식별하기 위한 식별 정보(예를 들어, 일련번호, TAG 정보, QR코드 정보 등), ii)로봇(100)에 부여된 임무 정보, iii)로봇(100)에 설정된 이동 경로(또는 주행 경로) 정보, iv)로봇(100)의 위치 정보, v)로봇(100)의 상태 정보(예를 들어, 전원 상태, 고장 유무, 배터리 상태 등), vi)로봇(100)에 구비된 카메라로부터 수신된 영상 정보 등이 존재할 수 있다.
다음으로 저장부(320)에는, 공간(10)에 대한 지도(map, 또는 지도 정보)가 저장될 수 있다. 여기에서, 지도는, 2차원 또는 3차원 지도 중 적어도 하나로 이루어 질 수 있다. 공간(10)에 대한 지도는 로봇(100)의 현재 위치를 파악하거나, 로봇의 이동 경로를 설정하는데 활용될 수 있는 지도를 의미할 수 있다.
특히, 본 발명에 따른 로봇 주행 제어 시스템(300)에서는, 로봇(100)에서 수신되는 영상 또는 로봇(100)으로부터 수신되는 정보를 기반으로 로봇(100)의 위치를 파악할 수 있다. 이를 위하여, 저장부(320)에 저장된 공간(10)에 대한 지도는 영상 또는 센싱 정보에 기반하여 위치를 추정할 수 있도록 하는 데이터로 구성될 수 있다.
이때, 공간(10)에 대한 지도는 사전에 공간(10)을 이동하는 적어도 하나의 로봇에 의해, SLAM(Simultaneous Localization and Mapping)에 기반하여 작성된 지도일 수 있다.
다음으로, 저장부(320)에는, 카메라(20)에 대한 정보가 저장될 수 있다.
카메라(20)에 대한 정보를 매우 다양할 수 있으며, 카메라(20)에 대한 정보는, i) 각각의 카메라(20a, 20b, 20c, 20d…)의 식별 정보(예를 들어, 일련번호, TAG 정보, QR코드 정보 등), ii) 각각의 카메라(20a, 20b, 20c, 20d…)의 배치 위치 정보(예를 들어, 공간 내에서 각각의 카메라(20a, 20b, 20c, 20d…)가 어느 위치에 배치되었는지에 대한 정보), iii) 각각의 카메라(20a, 20b, 20c, 20d…)의 화각 정보(angle of view, 예를 들어, 각각의 카메라(20a, 20b, 20c, 20d…)가 공간의 어느 뷰를 촬영하고 있는지에 대한 정보), iv) 각각의 카메라(20a, 20b, 20c, 20d…)의 상태 정보(예를 들어, 전원 상태, 고장 유무, 배터리 상태 등), vi) 각각의 카메라(20a, 20b, 20c, 20d…)로부터 수신된 영상 정보 등이 존재할 수 있다.
한편, 위에서 열거된 카메라(20)에 대한 정보는 각각의 카메라(20a, 20b, 20c, 20d…)를 기준으로 서로 매칭되어 존재할 수 있다.
예를 들어, 저장부(320)에는, 특정 카메라(20a)의 식별정보, 위치 정보, 화각 정보, 상태 정보, 및 영상 정보 중 적어도 하나가 매칭되어 매칭 정보로서 존재할 수 있다. 이러한 매칭 정보는, 추후 영상을 보고자 하는 위치가 특정되는 경우, 해당 위치의 카메라를 특정하는데 유용하게 활용될 수 있다.
한편, 위에서 열거한 정보의 종류 외에도 저장부(320)에는 다양한 정보가 저장될 수 있다.
다음으로 디스플레이부(330)는 로봇(100)에 구비된 카메라 및 공간(10)에 배치된 카메라(20) 중 적어도 하나로부터 수신되는 영상을 출력하도록 이루어질 수 있다. 디스플레이부(330)는 로봇(100)을 원격으로 관리하는 관리자의 디바이스에 구비된 것으로서, 도 2에 도시된 것과 같이, 원격 관제실(300a)에 구비될 수 있다. 나아가, 이와 다르게, 디스플레이부(330)는 모바일 디바이스에 구비된 디스플레이일 수 있다. 이와 같이, 본 발명에서는 디스플레이부의 종류에 대해서는 제한을 두지 않는다.
다음으로, 입력부(340)는 사용자(또는 관리자)로부터 입력되는 정보의 입력을 위한 것으로서, 입력부(340)는 사용자(또는 관리자)와 로봇 주행 제어 시스템(300) 사이의 매개체가 될 수 있다. 보다 구체적으로, 입력부(340)는 사용자로부터 로봇(100)을 제어하기 위한 제어 명령을 수신하는 입력 수단을 의미할 수 있다.
이때, 입력부(340)의 종류에는 특별한 제한이 없으며, 입력부(340)는 기계식 (mechanical) 입력수단(또는, 메커니컬 키, 예를 들어, 마우스(mouse), 조이스틱(joy stick), 물리적인 버튼, 돔 스위치 (dome switch), 조그 휠, 조그 스위치 등) 및 터치식 입력수단 중 적어도 하나를 포함할 수 있다. 일 예로서, 터치식 입력수단은, 소프트웨어적인 처리를 통해 터치스크린에 표시되는 가상 키(virtual key), 소프트 키(soft key) 또는 비주얼 키(visual key)로 이루어지거나, 상기 터치스크린 이외의 부분에 배치되는 터치 키(touch key)로 이루어질 수 있다. 한편, 상기 가상키 또는 비주얼 키는, 다양한 형태를 가지면서 터치스크린 상에 표시되는 것이 가능하며, 예를 들어, 그래픽(graphic), 텍스트(text), 아이콘(icon), 비디오(video) 또는 이들의 조합으로 이루어질 수 있다. 이때, 입력부(340)가 터치 스크린을 포함하는 경우, 디스플레이부(330)는 터치 스크린으로 이루어 질 수 있다. 이 경우, 디스플레이부(330)는 정보를 출력하는 역할과, 정보를 입력받는 역할을 모두 수행할 수 있다.
다음으로 제어부(350)는 본 발명과 관련된 로봇 주행 제어 시스템(300)의 전반적인 동작을 제어하도록 이루어질 수 있다. 제어부(350)는 위에서 살펴본 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 사용자에게 적절한 정보 또는 기능을 제공 또는 처리할 수 있다.
특히, 제어부(350)는 기 저장된 지도 정보를 이용하여 로봇의 이동 경로를 설정하는데 필요한 제어를 수행할 수 있다.
한편, 위에서 살펴본 것과 같이, 본 발명은 저장부(320)에 기 저장된 지도 정보를 이용하여, 공간 내에서 로봇의 이동 경로를 설정할 수 있다.
도 3은 로봇의 이동 경로 설정에 활용되는 노드맵을 설명하기 위한 개념도이다.
제어부(350)는 로봇(100)이 현재 위치로부터, 특정 목적지까지 이동하도록 제어할 수 있다. 구체적으로, 본 발명은 로봇의 현재 위치 정보와 목적지 위치 정보를 특정하고, 목적지에 도달하는 경로를 설정하여, 로봇이 설정된 경로에 따라 이동하여 목적지에 도달할 수 있도록 제어한다.
이에, 본 발명은 로봇의 이동 경로를 효율적으로 설정하기 위한 지도 정보에 대하여 제안한다. 다만, 후술하는 지도 정보는 로봇의 이동 경로를 설정하기 위해 활용되는 지도 정보의 일 예를 설명하는 것일 뿐, 본 발명에 따른 로봇 주행 제어 방법이 후술하는 지도 정보에 의해서만 수행되는 것은 아니다.
앞서 설명한 바와 같이, 저장부(320)에는, 공간(10)에 대한 지도(map, 또는 지도 정보)가 저장될 수 있다. 도 3을 참조하면, 저장부(320)에 저장되는 공간(10)에 대한 지도는 2차원 평면도 형태로 이루어질 수 있으나, 이에 한정되는 것은 아니다.
한편, 도 3과 같이, 지도 정보는 복수의 노드(node)를 포함할 수 있다. 본 명세서에서 ‘노드’란 로봇의 이동에 단위 목표가 되는 지점 또는 영역을 의미한다. 노드는 두 가지 정보를 포함할 수 있다.
첫 번째로, 노드는 좌표 정보를 포함한다. 단일 노드는 지도 상의 특정 좌표 또는 좌표 범위를 지정한다. 예를 들어, 노드는 지도 상에서 소정 면적을 가지는 원형의 영역을 지정하도록 이루어질 수 있다. 이를 위해, 노드에 포함된 좌표 정보는 특정 좌표 또는 좌표 범위로 이루어질 수 있다.
두 번째로, 노드는 연결 정보를 포함한다. 단일 노드는 해당 노드로부터 로봇이 이동 가능한 다른 노드를 정의하는 정보를 포함한다. 연결 정보는 로봇이 해당 노드로부터 이동 가능한 다른 노드의 고유 번호 또는 상기 다른 노드가 지정하는 좌표 정보를 포함할 수 있다.
제어부(350)는 로봇이 어느 하나의 노드에서 다른 하나의 노드로 이동하도록 제어하고, 이러한 과정을 반복하여 로봇이 목표 지점에 도달할 수 있도록 제어한다. 본 명세서에서 로봇이 특정 노드로 이동한다 함은 특정 노드가 지정하는 좌표 정보 또는 좌표 범위 내로 로봇이 이동함을 의미한다.
본 발명은 상술한 위치 정보 추정 방법, 지도 정보를 이용하여 로봇을 현재 위치(S)로부터 목적지(A)까지 이동시키기 위한 이동 경로를 설정한 후, 로봇으로 전송한다. 다만, 노드맵을 활용한 방법은 로봇의 주행을 제어하는 일 실시 예에 해당하며, 본 발명은 상술한 노드맵 이외의 다른 방법을 이용하여 로봇의 이동 경로를 설정할 수 있다. 즉, 로봇의 이동 경로를 설정하기 위한 맵(지도)의 구현 방식은 매우 다양할 수 있다.
본 발명은 공간 내 혼잡도를 고려하여 로봇의 이동 경로를 설정할 수 있는 로봇 주행 제어 방법 및 시스템을 제안한다.
본 발명에서는 목적지까지 이동하기 위한 경로 계획을 수립 시 공간에 대한 미래의 혼잡도를 예측하고, 미래의 혼잡도가 반영된 이동 경로를 생성하여 로봇의 주행을 제어하는 방법 및 시스템을 제공할 수 있다. 이하에서는, 이에 대하여 첨부된 도면과 함께 보다 구체적으로 살펴본다. 도 4는 본 발명에 따른 로봇 주행 제어 방법을 설명하기 위한 흐름도이고, 도 5a 및 도 5b는 본 발명에 따른 로봇 주행 제어 방법을 나타내는 개념도들이다.
먼저, 본 발명에 따른 로봇 주행 제어 방법에서는, 제어의 대상이 되는 특정 로봇에 대한 목적지를 특정하는 단계가 진행된다(S110).
로봇 주행 제어 시스템(300, 이하 서버라 함)은 로봇(100)에 임무를 할당하고, 상기 할당된 임무에 따른 로봇의 목적지를 특정할 수 있다. 다만, 이에 한정되지 않고, 상기 목적지는 로봇(100)에 의해 특정 될 수 있다. 로봇(100)은 사용자로부터 직접 임무를 받고, 상기 임무에 따른 목적지를 특정할 수 있다. 본 명세서에서 로봇(100)의 목적지를 특정하는 방식에 대하여는 별도로 한정하지 않는다.
다음으로, 적어도 하나의 다른 로봇의 이동 경로를 이용하여, 상기 공간(10)에서 혼잡이 예상되는 혼잡 예상 영역을 특정하는 단계가 진행된다(S120).
서버는 상기 공간에 대한 상기 다른 로봇의 주행 계획에 근거하여, 상기 다른 로봇이 상기 혼잡 예상 영역을 주행하는 것이 예상되는 주행 예상 시간을 추출하고, 상기 주행 예상 시간에 근거하여, 상기 혼잡 예상 영역에 대한 혼잡 예상 시간을 산출한다.
로봇의 주행 계획은 로봇에 설정된 이동 경로에 대한 정보, 주행 속도에 대한 정보, 목적지까지 도달 예상 시간에 대한 정보, 주행 출발 시간에 대한 정보, 상기 이동 경로에 포함된 복수의 경유 지점에 대한 정보 및 상기 경유 지점별 예상 도착 시간에 대한 정보 중 적어도 하나를 포함할 수 있다. 다만, 이에 한정되지 않고, 로봇의 주행 계획은 로봇이 목적지까지 주행하는 것과 관련된 모든 정보를 포함할 수 있다.
서버는 상기 다른 로봇의 이동 경로를 이용하여, 이동 경로가 중첩되는 중첩 영역을 특정한다. 이후, 서버는 상기 중첩 영역에 상기 다른 로봇 각각이 도달하는 주행 예상 시간을 산출한다.
이때, 다른 로봇의 주행 계획이 활용될 수 있다. 구체적으로, 서버는 다른 로봇의 위치 정보, 이동 경로 및 주행 속도를 이용하여 다른 로봇이 중첩 지점에 도달하는 예상 시간을 산출할 수 있다. 다만, 이에 한정되지 않고, 서버는 상기 다른 로봇의 주행 계획에서 상기 중첩 영역에 대한 주행 예상 시간을 추출할 수 있다.
상기 다른 로봇 각각에 대한 주행 예상 시간이 서로 상이한 경우, 상기 중첩 지점은 혼잡 예상 영역으로 특정되지 않는다. 상기 다른 로봇 각각에 대한 주행 예상 시간이 기 설정된 시간 범위 내인 경우, 서버는 상기 중첩 지점에 대응되는 영역을 혼잡 예상 영역으로 특정한다.
일 실시 예에 있어서, 상기 혼잡 예상 영역은 도 3에서 설명된 노드 단위로 설정될 수 있다. 서버는 다른 로봇의 이동 경로를 이용하여 노드 별로 혼잡도에 따른 가중치를 부여할 수 있다. 상기 노드 각각에 부여된 가중치가 기준 값을 초과하는 경우, 서버는 해당 노드를 혼잡 예상 영역으로 특정할 수 있다. 특정 노드가 혼잡 예상 영역으로 특정되는 경우, 혼잡 예상 영역으로 특정된 노드와 인접한 노드에 대한 가중치를 증가시킬 수 있다. 이를 통해, 로봇이 혼잡 노드 및 혼잡 노드 주변으로 접근하는 것을 최소화할 수 있다. 다만, 노드를 활용한 이동 경로 설정은 일 실시 예이며, 본 발명은 다양한 방식으로 로봇의 이동 경로를 설정할 수 있다.
한편, 서버는 다른 로봇 각각의 주행 예상 시간에 근거하여 상기 혼잡 예상 영역에 대한 혼잡 예상 시간을 산출한다. 혼잡 예상 시간은 특정 시점으로 설정되거나, 시간 범위로 설정될 수 있다.
일 실시 예에 있어서, 서버는 상기 혼잡 예상 영역을 경유하는 상기 다른 로봇의 주행 예상 시간의 최소값 및 최대값을 시간 범위로 하여 혼잡 예상 영역에 대한 혼잡 예상 시간으로 설정할 수 있다.
다른 일 실시 예에 있어서, 서버는 상기 혼잡 예상 영역을 경유하는 상기 다른 로봇의 주행 예상 시간의 평균 값을 혼잡 예상 시간으로 설정할 수 있다.
다음으로, 상기 혼잡 예상 영역을 고려하여, 상기 목적지에 대한 상기 특정 로봇의 이동 경로를 생성하는 단계가 수행된다(S130)
상기 서버는 상기 특정 로봇에 대한 상기 특정 로봇의 이동 경로를 포함하는 주행 계획을 생성할 수 있다.
상기 특정 로봇의 주행 계획은 로봇에 설정된 이동 경로에 대한 정보, 주행 속도에 대한 정보, 목적지까지 도달 예상 시간에 대한 정보, 주행 출발 시간에 대한 정보, 상기 이동 경로에 포함된 복수의 경유 지점에 대한 정보 및 상기 경유 지점별 예상 도착 시간에 대한 정보 중 적어도 하나를 포함할 수 있다.
구체적으로, 서버는 상기 특정 로봇이 상기 목적지까지 최단 시간으로 도달할 수 있는 이동 경로, 최단 거리로 도달할 수 있는 이동 경로, 상기 특정 로봇에 할당된 임무가 고려된 이동 경로 중 적어도 하나를 생성하고, 상기 이동 경로에 대한 주행 속도 및 주행 출발 시작 시점 중 적어도 하나를 설정하고, 상기 이동 경로에 대응되는 상기 목적지까지 도달 예상 시간을 산출할 수 있다.
이때, 상기 특정 로봇에 대한 이동 경로는 상기 혼잡 예상 영역을 포함할 수 있다. 상기 특정 로봇의 이동 경로 중 상기 혼잡 예상 영역이 포함되는 경우, 서버는 상기 특정 로봇에 대한 주행 계획을 이용하여 상기 특정 로봇이 상기 혼잡 예상 영역을 통과하는 예상 시간을 산출한다.
상기 특정 로봇이 상기 혼잡 예상 시간에 상기 혼잡 예상 영역을 통과하는 것이 예상되는 경우, 서버는 상기 회피 경로를 생성할 수 있다. 이 경우, 상기 서버는 상기 혼잡 예상 영역을 회피하는 회피 경로를 생성하고, 상기 회피 경로를 기준으로 상기 특정 로봇의 주행 계획을 변경할 수 있다.
한편, 상기 특정 로봇이 상기 혼잡 예상 시간에 상기 혼잡 예상 영역을 통과하지 않을 것으로 예상되는 경우, 상기 서버는 상기 이동 경로를 유지한다.
상기 서버는 상기 특정 로봇이, 상기 특정 로봇의 이동 경로를 따라 상기 공간을 주행하도록, 상기 특정 로봇의 이동 경로에 따른 주행 정보를 전송할 수 있다. 이때, 상기 이동 경로는 상술한 회피 경로를 포함하는 이동 경로일 수 있다.
일 실시 예에 있어서, 도 5a를 참조하면, 제1로봇(R1)의 목적지가 N12로 특정되면, 서버는 제2 및 제3로봇(R2 및 R3)에 기 설정된 이동 경로(512 및 513)를 이용하여 중첩 영역(520)을 특정한다.
서버는 제2 및 제3로봇(R2 및 R3) 각각에 대한 주행 계획을 이용하여, 상기 중첩 영역(520)에 대한 제2 및 제3로봇(R2 및 R3) 각각의 주행 예상 시간을 산출한다. 상기 제2 및 제3로봇(R2 및 R3) 각각에 대한 주행 예상 시간이 기 설정된 시간 범위 이내인 경우, 상기 중첩 영역을 혼잡 예상 영역으로 설정한다.
한편, 서버는 제1로봇(R1)을 N12까지 이동시키기 위한 주행 계획을 생성한다. 이때, 상기 주행 계획은 상기 N12까지의 이동 경로(511)를 포함할 수 있다.
다음으로, 도 5b를 참조하면, 서버는 상기 제1로봇(R1)의 주행 계획을 이용하여, 상기 제1로봇(R1)이 상기 혼잡 예상 영역을 통과하는 예상 시간을 산출한다. 상기 서버는 상기 혼잡 예상 영역(520)에 대한 혼잡 예상 시간에 상기 제1로봇(R1)이 상기 혼잡 예상 영역(520)을 통과할 것으로 예상되는 경우, 상기 혼잡 예상 영역(520)에 대한 회피 경로(511’)를 생성한 후, 생성된 회피 경로를 제1로봇(R1)으로 전송한다.
한편, 서버는 상기 특정 로봇의 임무, 상기 특정 로봇의 현재 위치 및 상기 특정 로봇에 대한 목적지 중 적어도 하나를 고려하여, 상기 혼잡 예상 영역을 통과하는 경로가 필수 경로인지 여부를 판단할 수 있다.
예를 들어, 상기 서버는 상기 혼잡 예상 영역을 통과하지 않고 목적지에 도달할 수 없는 경우, 상기 혼잡 예상 영역을 필수 경로로 판단할 수 있다.
다른 예를 들어, 상기 서버는 상기 로봇에 할당된 임무가 상기 혼잡 예상 영역을 통과해야 하는 임무인 경우, 상기 혼잡 예상 영역을 필수 경로로 판단할 수 있다.
판단 결과, 상기 혼잡 예상 영역을 통과하는 경로가 필수 경로가 아닌 경우, 상기 서버는 상기 혼잡 예상 영역에 대한 회피 경로를 생성할 수 있다.
이와 달리, 상기 혼잡 예상 영역을 통과하는 경로가 필수 경로인 경우, 상기 서버는 상기 특정 로봇이 상기 혼잡 예상 시간에 상기 혼잡 예상 영역을 통과하지 않도록, 상기 특정 로봇의 주행과 관련된 제어 명령을 포함하여 상기 주행 정보를 전송할 수 있다.
여기서, 상기 특정 로봇의 주행과 관련된 제어 명령은 상기 특정 로봇의 주행 출발 시점 및 주행 속도 중 적어도 하나와 관련된 것일 수 있다.
일 실시 예에 있어서, 서버는 상기 특정 로봇에 대한 주행 계획에서 상기 특정 로봇의 주행 출발 시점을 기 설정된 시점보다 이후 시점으로 변경하여, 상기 특정 로봇이 상기 혼잡 예상 시간보다 늦은 시점에 상기 혼잡 예상 영역을 통과하도록 할 수 있다.
다른 일 실시 예에 있어서, 서버는 상기 특정 로봇에 대한 주행 계획에서 상기 특정 로봇의 주행 속도를 변경하여, 상기 특정 로봇이 상기 혼잡 예상 영역을 상기 혼잡 예상 시간보다 빠르게 통과하거나, 느리게 통과하도록 할 수 있다.
상술한 바와 같이, 발명에 따른 로봇 주행 제어 방법 및 시스템은, 다른 로봇의 이동 경로를 이용하여 공간 내 미래 혼잡 예상 영역을 예측하고, 예측된 혼잡 예상 영역을 고려하여 로봇의 이동 경로를 설정한다.
한편, 서버는 다른 로봇의 이동 경로를 이용하여 혼잡 예상 영역을 특정할 뿐 아니라, 공간 내 사람 및 환경을 고려하여 혼잡 예상 영역을 특정할 수 있다. 이하에서는, 서버가 혼잡 예상 영역을 특정하는 방법에 대하여 보다 구체적으로 설명한다.
도 6a 및 도 6b는 다른 로봇을 활용하여 혼잡 예상 영역을 특정하는 방법을 설명하기 위한 개념도이고, 도 7a 및 도 7b는 공간 내 환경을 이용하여 혼잡 예상 영역을 특정하는 방법을 설명하기 위한 개념도이다.
서버는 공간 내 인접한 위치에 복수의 영역이 위치한 경우, 로봇의 현재 위치 정보에 기반하여 공간 내 특정 영역에 대한 혼잡도를 산정할 수 있다.
일 실시 예에 있어서, 서버는 로봇의 현재 위치 정보를 기준으로 로봇의 영향 영역을 설정할 수 있다. 상기 영향 영역은 로봇 별로 설정될 수 있는데, 상기 영향 영역의 크기 및 형태는 로봇의 이동 속도 및 이동 방향에 따라 달라질 수 있다.
일 실시 예에 있어서, 서버는 특정 영역에 상기 영향 영역이 기 설정된 비율을 초과하여 형성되는 경우, 상기 특정 영역을 혼잡 예상 영역으로 설정할 수 있다.
예를 들어, 도 6a를 참조하면, 서버는 제1로봇(R1) 이동 방향(611)을 고려하여 제1로봇(R1)에 대한 영향 영역을 설정한다. 이때, 서버는 제1로봇(R1)의 이동 속도에 따라 제1크기의 영향 영역(621a)을 설정하거나, 제2크기 영향 영역(621b)을 설정할 수 있다. 서버는 제2로봇(R2)의 이동 방향(612)을 고려하여 제2로봇(R2)에 대한 영향 영역을 설정한다. 이때, 서버는 제2로봇(R2)의 이동 속도에 따라 제1크기의 영향 영역(622a)을 설정하거나, 제2크기의 영향 영역(622b)을 설정한다. 제1 및 제2로봇(R1 및 R2) 각각에 대한 영향 영역이 모두 제2크기로 설정되는 경우, 다른 로봇은 일정 시간 동안 상기 제1 및 제2로봇이 위치하는 영역을 통과할 수 없게 된다. 이 경우, 서버는 상기 제1 및 제2로봇이 위치하는 영역을 혼잡 예상 영역으로 설정한다.
이 경우, 서버는 상기 혼잡 예상 영역에 대한 혼잡 예상 시간을 현재 시점 또는 현재 시점으로부터 소정 시간 이내로 설정할 수 있다.
한편, 서버는 다른 로봇의 이동 경로를 활용한 혼잡 예상 영역 설정 시 로봇의 현재 위치를 기준으로 하는 확률 분포를 적용할 수 있다.
구체적으로, 서버는 다른 로봇의 이동 경로를 이용하여 중첩 영역을 특정한다. 이때, 서버는 중첩 영역과 다른 로봇 간의 거리에 따라 가중치를 다르게 부여하여 특정 중첩 영역에 대한 가중치의 총합이 기 설정된 값을 초과하는 경우에만 상기 중첩 영역을 혼잡 예상 영역으로 설정할 수 있다.
예를 들어, 도 6b를 참조하면, 서버는 로봇의 현재 위치와 로봇의 이동 경로 상의 경유 지점 간의 거리에 따라 가중치를 다르게 부여할 수 있다. 그래프 (a)를 참조하면, t0일 때, 로봇의 위치와 경유 지점이 멀어질수록 가중치(congestion weight)가 작아질 수 있다(630a). 로봇이 주행함에 따라 경유 지점에 대한 가중치가 업데이트 된다(630a).
한편, 서버는 제1로봇과 제2로봇의 이동 경로가 중첩되는 영역의 가중치의 총합을 산출한다. 구체적으로, 그래프 (b)를 참조하면, 서버는 제1로봇과 제2로봇의 이동 경로가 중첩되지 않는 영역(640a)을 제외하고, 제1로봇과 제2로봇의 이동 경로가 중첩되는 영역(640b)에 대한 지점별 가중치 총합을 산출한다. 서버는 가중치 총합이 기 설정된 값을 초과하는 지점의 집합을 혼잡 예상 영역으로 설정한다.
한편, 서버는 다른 로봇의 현재 위치를 기반으로 상기 가중치를 주기적으로 업데이트하고, 업데이트된 가중치를 이용하여 새로운 영역을 혼잡 예상 영역으로 설정하거나, 기 설정된 혼잡 예상 영역을 해제할 수 있다.
한편, 본 발명은 공간 내 환경을 고려하여 혼잡 예상 영역을 설정할 수 있다.
서버는 공간 내 주행 중인 로봇으로부터 수신된 정보, 공간 내 배치된 카메라로부터 수신된 정보, 공간 내 위치하는 단말기의 무선 통신 연결 상태 중 적어도 하나를 이용하여, 공간의 특정 영역에 대한 혼잡도를 산출할 수 있다. 예를 들어 서버는 공간의 특정 영역에서 기 설정된 수 이상의 사람이 감지되는 경우, 상기 특정 영역을 혼잡 예상 영역으로 설정할 수 있다.
이 경우, 서버는 상기 특정 영역을 주기적으로 모니터링하여, 혼잡도를 업데이트할 수 있다. 서버는 상기 특정 영역에 대한 혼잡도가 기 설정된 값보다 작아질 때까지 상기 특정 영역을 혼잡 예상 영역으로 설정할 수 있다.
예를 들어, 도 7a를 참조하면, 서버는 공간 내 특정 영역(720)에서 기 설정된 수 이상의 사람(711)이 감지되는 경우, 상기 특정 영역(720)을 혼잡 예상 영역으로 설정할 수 있다. 이 경우, 서버는 상기 특정 영역(720)을 고려하여, 공간을 주행하는 로봇의 이동 경로를 설정할 수 있다.
한편, 서버는 기 설정된 시간 대에 공간 내 특정 영역을 혼잡 예상 영역으로 설정할 수 있다. 구체적으로, 서버는 공간 내 사람의 분포를 주기적으로 모니터링하여, 시간대별 사람의 이동 패턴을 생성할 수 있다. 서버는 상기 이동 패턴에 근거하여 특정 시간 대에 특정 영역을 혼잡 예상 영역으로 설정할 수 있다.
예를 들어, 도 7b를 참조하면, 서버는 특정 시간 대에 공간 내 특정 영역(730)에서 기 설정된 수 이상의 사람이 감지되고, 상기 기 설정된 수 이상의 사람이 감지된 횟수가 기준 값을 초과하는 경우, 상기 특정 영역(730)을 혼잡 예상 영역으로 설정할 수 있다. 이 경우, 상기 특정 영역(730)에 대한 혼잡 예상 시간은 상기 특정 시간 대로 설정될 수 있다.
상술한 바와 같이, 본 발명은 다양한 방식으로 혼잡 예상 영역을 특정할 수 있다. 서버는 상술한 방법으로 특정된 혼잡 예상 영역을 고려하여 로봇의 이동 경로를 설정한다.
한편, 본 발명은 로봇의 이동 경로 상에 존재하는 복수의 혼잡 예상 영역에 대한 회피 경로를 생성하는 방법 및 시스템을 제공한다.
도 8a 및 도 8b는 복수의 혼잡 예상 영역에 대한 회피 경로를 생성하는 일 실시 예를 나타내는 개념도이다.
서버는 다른 로봇의 이동 경로가 중첩되는 영역이 복수 개인 경우, 복수의 중첩 영역 각각에 대한 주행 예상 시간을 산출하고, 상기 주행 예상 시간에 기반하여 복수의 중첩 영역 각각에 대한 혼잡 예상 영역 설정 여부를 결정할 수 있다. 이에 따라, 복수의 혼잡 예상 영역이 설정될 수 있다.
복수의 혼잡 예상 영역이 설정되는 경우, 상기 특정 로봇의 이동 경로는 복수의 혼잡 예상 영역을 통과하도록 생성될 수 있다. 이 경우, 서버는 복수의 혼잡 예상 영역 중 일부에 대하여만 선택적으로 회피 경로를 생성할 수 있다.
구체적으로, 상기 특정 로봇의 이동 경로에 복수의 혼잡 예상 영역이 포함되는 경우, 기 설정된 우선 순위 기준에 근거하여, 상기 복수의 혼잡 예상 영역들 중 우선 순위가 가장 높은 혼잡 예상 영역을 우선하여 회피하도록 하는 회피 경로를 생성할 수 있다.
여기서, 상기 기 설정된 우선순위 기준은 기 설정된 기준 시점을 기준으로, 상기 복수의 혼잡 예상 영역 각각에 대한 혼잡 예상 시간이 도래하는 순서와 관련된 것일 수 있다.
일 실시 예에 있어서, 상기 서버는 혼잡 예상 영역 각각에 대한 혼잡 예상 시간이 도래하는 시점이 현재 시점으로부터 멀수록 상대적으로 우선순위를 낮게 설정할 수 있으며, 혼잡 예상 시간이 도래하는 시점이 현재 시점으로부터 가까울수록 상대적으로 우선순위를 높게 설정할 수 있다.
일 실시 예에 있어서, 상기 서버는 상기 복수의 혼잡 예상 영역 중 혼잡 예상 시간이 가장 빠르게 도래하는 제1혼잡 예상 영역에 대한 회피 경로만 우선하여 생성하고, 혼잡 예상 시간이 두 번째로 도래하는 제2혼잡 예상 영역에 대한 회피 경로는 생성하지 않을 수 있다. 이후, 서버는 상기 특정 로봇이 상기 제2혼잡 예상 영역에 도달하는 예상 시간이 기 설정된 시간 이내인 경우, 상기 제2혼잡 예상 영역에 대한 회피 경로 생성 여부를 판단할 수 있다.
일 실시 예에 있어서, 도 8a를 참조하면, 제1로봇(R1)의 목적지가 N12으로 특정되면, 서버는 제1로봇(R1)을 N12로 이동시키기 위한 이동 경로(811)를 설정한다. 한편, 서버는 제2 내지 제4로봇(R2 내지 R4)의 이동 경로(812, 813, 814)를 이용하여 복수의 혼잡 예상 영역(820a 및 820b)를 특정한다.
도 8b를 참조하면, 서버는 복수의 혼잡 예상 영역(820a 및 820b) 각각에 대한 혼잡 예상 시간이 도래하는 시간을 기준으로 각각의 혼잡 예상 영역(820a 및 820b)에 대한 회피 경로 생성 여부를 판단한다. 서버는 혼잡 예상 시간이 가장 빠르게 도래하는 제1혼잡 예상 영역(820a)에 대한 회피 경로(811’)를 생성한다. 이와 달리, 서버는 혼잡 예상 시간이 상대적으로 느리게 도래하는 제2혼잡 예상 영역(820b)에 대한 회피 경로를 생성하지 않고, 제2혼잡 예상 영역(820b)에 대한 기존의 이동 경로를 유지한다.
한편, 서버는 혼잡 예상 영역을 주기적으로 업데이트한다.
도 9a 및 도 9b는 혼잡 예상 영역을 업데이트하여 로봇의 이동 경로에 반영하는 일 실시 예를 나타내는 개념도들이다.
서버는 상기 특정 로봇이 상기 특정 로봇의 이동 경로를 따라 상기 공간을 주행하고 있는 상태에서, 상기 공간에서 혼잡이 예상되는 혼잡 예상 영역을 업데이트할 수 있다.
상기 업데이트는 기 설정된 시간 간격, 로봇으로부터 수신된 정보, 공간 내 배치된 카메라로부터 수신된 정보 및 다른 로봇의 주행 계획 변화 중 적어도 하나에 근거하여 이루어질 수 있다.
일 실시 예에 있어서, 서버는 기 설정된 시간마다 혼잡 예상 영역을 업데이트할 수 있다.
다른 일 실시 예에 있어서, 서버는 제어 대상 로봇 중 적어도 하나의 주행 계획이 변경되는 경우, 혼잡 예상 영역을 업데이트할 수 있다.
혼잡 예상 영역에 대한 업데이트 결과, 두 가지 다른 상황이 발생될 수 있다. 첫 번째로 기 특정된 혼잡 예상 영역이 업데이트를 통해 제외될 수 있다. 두 번째로 혼잡 예상 영역으로 특정되지 않았던 영역이 혼잡 예상 영역으로 특정될 수 있다. 상술한 두 가지 경우 각각에서 로봇의 이동 경로 수정이 이루어질 수 있다. 상기 두 가지 상황 중 적어도 하나가 발생되는 경우, 서버는 특정 로봇의 이동 경로에 대한 변경이 필요한지 여부를 판단한다.
판단 결과, 상기 특정 로봇의 이동 경로에 대한 변경이 필요한 경우, 서버는 상기 업데이트에 따른 혼잡 예상 영역에 근거하여, 상기 특정 로봇의 이동 경로를 수정할 수 있다.
일 실시 예에 있어서, 상기 업데이트 결과, 상기 업데이트에 따른 혼잡 예상 영역에서 상기 기 특정된 혼잡 예상 영역이 제외된 경우, 상기 특정 로봇의 이동 경로를 수정할 수 있다.
다른 일 실시 예에 있어서, 상기 특정 로봇의 이동 경로에 대한 변경이 필요한지 여부를 판단 시, 서버는 상기 특정 로봇의 위치 정보에 근거하여, 상기 특정 로봇이 상기 업데이트에 따른 혼잡 예상 영역을 통과했는지를 판단할 수 있다. 판단 결과, 상기 특정 로봇이 상기 업데이트에 따른 혼잡 예상 영역을 통과하지 않은 경우, 서버는 상기 특정 로봇의 이동 경로를 수정할 수 있다.
다른 일 실시 예에 있어서, 도 9a를 참조하면, 서버는 기 특정된 혼잡 예상 영역(920)을 회피하여 목적지(N12)에 도달하는 제1로봇(R1)의 이동 경로를 설정한다.
서버는 상기 공간 내 특정 영역(920) 내에서 감지되는 사람(921)의 수 및 제2로봇(R2)의 이동 경로(912)에 기반하여, 상기 특정 영역(920)을 혼잡 예상 영역으로 설정한다.
도 9b를 참조하면, 서버는 시간이 지남에 따라 혼잡 예상 영역을 업데이트한다. 업데이트 결과, 기 특정된 혼잡 예상 영역(920)이 혼잡 예상 영역에서 제외된다. 이때, 서버는 특정 로봇의 이동 경로에 대한 변경이 필요한지 판단한다. 구체적으로, 서버는 상기 특정 로봇이 상기 기 특정된 혼잡 예상 영역(920)을 통과하지 않은 것을 고려하여, 기 설정된 이동 경로(911)를 수정한다. 서버는 기 특정된 혼잡 예상 영역(920)을 통과하는 수정된 이동 경로(911’)를 로봇으로 전송한다.
상술한 바와 같이, 한편, 본 발명에 따른 로봇 주행 제어 방법 및 시스템은 예측된 혼잡 예상 영역을 주기적으로 업데이트하고, 업데이트 결과를 로봇의 이동 경로에 반영함으로써, 공간 내 상황 변화에 따른 최적의 이동 경로를 제공할 수 있도록 한다.
한편, 위에서 살펴본 본 발명은, 컴퓨터에서 하나 이상의 프로세스에 의하여 실행되며, 이러한 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램으로서 구현될 수 있다.
나아가, 위에서 살펴본 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드 또는 명령어로서 구현하는 것이 가능하다. 즉, 본 발명은 프로그램의 형태로 제공될 수 있다.
한편, 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다.
나아가, 컴퓨터가 읽을 수 있는 매체는, 저장소를 포함하며 전자기기가 통신을 통하여 접근할 수 있는 서버 또는 클라우드 저장소일 수 있다. 이 경우, 컴퓨터는 유선 또는 무선 통신을 통하여, 서버 또는 클라우드 저장소로부터 본 발명에 따른 프로그램을 다운로드 받을 수 있다.
나아가, 본 발명에서는 위에서 설명한 컴퓨터는 프로세서, 즉 CPU(Central Processing Unit, 중앙처리장치)가 탑재된 전자기기로서, 그 종류에 대하여 특별한 한정을 두지 않는다.
한편, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.

Claims (15)

  1. 공간을 주행하는 로봇의 주행을 제어하는 방법에 있어서,
    제어의 대상이 되는 특정 로봇의 목적지를 특정하는 단계;
    적어도 하나의 다른 로봇의 이동 경로를 이용하여, 상기 공간에서 혼잡이 예상되는 혼잡 예상 영역을 특정하는 단계;
    상기 혼잡 예상 영역을 고려하여, 상기 목적지에 대한 상기 특정 로봇의 이동 경로를 생성하는 단계; 및
    상기 특정 로봇이, 상기 특정 로봇의 이동 경로를 따라 상기 공간을 주행하도록, 상기 특정 로봇의 이동 경로에 따른 주행 정보를 전송하는 단계를 포함하는 것을 특징으로 하는 로봇 주행 제어 방법.
  2. 제1항에 있어서,
    상기 특정 로봇의 이동 경로를 생성하는 단계에서는,
    상기 혼잡 예상 영역이 상기 특정 로봇의 이동 경로 상에 포함되지 않도록 상기 혼잡 예상 영역에 대한 회피 경로를 생성하는 것을 특징으로 하는 로봇 주행 제어 방법.
  3. 제2항에 있어서,
    상기 혼잡 예상 영역을 특정하는 단계에서는,
    상기 공간에 대한 상기 다른 로봇의 주행 계획에 근거하여, 상기 다른 로봇이 상기 혼잡 예상 영역을 주행하는 것이 예상되는 주행 예상 시간을 추출하고,
    상기 주행 예상 시간에 근거하여, 상기 혼잡 예상 영역에 대한 혼잡 예상 시간을 산출하는 것을 특징으로 하는 로봇 주행 제어 방법.
  4. 제3항에 있어서,
    상기 특정 로봇의 이동 경로를 생성하는 단계에서는,
    상기 특정 로봇의 주행 계획에 근거하여, 상기 특정 로봇이 상기 혼잡 예상 시간에 상기 혼잡 예상 영역을 통과하는 것이 예상되는 경우, 상기 회피 경로를 생성하는 것을 특징으로 하는 로봇 주행 제어 방법.
  5. 제1항에 있어서,
    상기 특정 로봇의 이동 경로를 생성하는 단계에서는,
    상기 혼잡 예상 영역이 복수인 경우, 기 설정된 우선 순위 기준에 근거하여, 상기 복수의 혼잡 예상 영역들 중 우선 순위가 가장 높은 혼잡 예상 영역을 우선하여 회피하도록 하는 상기 회피 경로를 생성하는 것을 특징으로 하는 로봇 주행 제어 방법.
  6. 제5항에 있어서,
    상기 기 설정된 우선순위 기준은,
    기 설정된 기준 시점을 기준으로, 상기 복수의 혼잡 예상 영역 각각에 대한 혼잡 예상 시간이 도래하는 순서와 관련된 것을 특징으로 하는 로봇 주행 제어 방법.
  7. 제4항에 있어서,
    상기 특정 로봇의 이동 경로를 생성하는 단계에서는,
    상기 특정 로봇이 상기 목적지까지 도달하기 위하여, 상기 혼잡 예상 영역을 통과하는 경로가 필수 경로인지 여부를 판단하는 단계를 더 포함하고,
    판단 결과, 상기 혼잡 예상 영역을 통과하는 경로가 필수 경로가 아닌 경우, 상기 혼잡 예상 영역에 대한 회피 경로가 생성되는 것을 특징으로 하는 로봇 주행 제어 방법.
  8. 제7항에 있어서,
    상기 주행 정보를 전송하는 단계에서는,
    상기 판단 결과, 상기 혼잡 예상 영역을 통과하는 경로가 필수 경로인 경우, 상기 특정 로봇이 상기 혼잡 예상 시간에 상기 혼잡 예상 영역을 통과하지 않도록, 상기 특정 로봇의 주행과 관련된 제어 명령을 포함하여 상기 주행 정보를 전송하는 것을 특징으로 하는 로봇 주행 제어 방법.
  9. 제8항에 있어서,
    상기 특정 로봇의 주행과 관련된 제어 명령은,
    상기 특정 로봇의 주행 출발 시점 및 주행 속도 중 적어도 하나와 관련된 것을 특징으로 하는 로봇 주행 제어 방법.
  10. 제3항에 있어서,
    상기 특정 로봇이 상기 특정 로봇의 이동 경로를 따라 상기 공간을 주행하고 있는 상태에서, 상기 공간에서 혼잡이 예상되는 혼잡 예상 영역을 업데이트하는 단계를 더 포함하고,
    상기 업데이트는, 상기 다른 로봇의 주행 계획의 변경에 근거하여 이루어지는 것을 특징으로 하는 로봇 주행 제어 방법.
  11. 제10항에 있어서,
    상기 업데이트 결과, 기 특정된 혼잡 예상 영역에 대한 변경이 발생된 경우, 상기 특정 로봇의 이동 경로에 대한 변경이 필요한지 여부를 판단하는 단계를 더 포함하고,
    판단 결과, 상기 특정 로봇의 이동 경로에 대한 변경이 필요한 경우, 상기 업데이트에 따른 혼잡 예상 영역에 근거하여, 상기 특정 로봇의 이동 경로를 수정하는 단계를 더 포함하는 것을 특징으로 하는 로봇 주행 제어 방법.
  12. 제11항에 있어서,
    상기 특정 로봇의 이동 경로에 대한 변경이 필요한지 여부를 판단하는 단계에서는,
    상기 특정 로봇의 위치 정보에 근거하여, 상기 특정 로봇이 상기 업데이트에 따른 혼잡 예상 영역을 통과했는지를 판단하고,
    판단 결과, 상기 특정 로봇이 상기 업데이트에 따른 혼잡 예상 영역을 통과하지 않은 경우, 상기 특정 로봇의 이동 경로를 수정하는 것을 특징으로 하는 로봇 주행 제어 방법.
  13. 제11항에 있어서,
    상기 특정 로봇의 이동 경로를 수정하는 단계에서는,
    상기 업데이트 결과, 상기 업데이트에 따른 혼잡 예상 영역에서 상기 기 특정된 혼잡 예상 영역이 제외된 경우, 상기 특정 로봇의 이동 경로를 수정하는 것을 특징으로 하는 로봇 주행 제어 방법.
  14. 공간을 주행하는 로봇들과 통신하는 통신부; 및
    제어의 대상이 되는 특정 로봇의 목적지를 특정하고, 적어도 하나의 다른 로봇의 이동 경로를 이용하여, 상기 공간에서 혼잡이 예상되는 혼잡 예상 영역을 특정하는 제어부를 포함하고,
    상기 제어부는,
    상기 혼잡 예상 영역을 고려하여, 상기 목적지에 대한 상기 특정 로봇의 이동 경로를 생성하고,
    상기 특정 로봇이, 상기 특정 로봇의 이동 경로를 따라 상기 공간을 주행하도록, 상기 통신부를 통해, 상기 특정 로봇의 이동 경로에 따른 주행 정보를 전송하는 것을 특징으로 하는 로봇 주행 제어 시스템.
  15. 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램으로서,
    상기 프로그램은,
    제어의 대상이 되는 특정 로봇의 목적지를 특정하는 단계;
    적어도 하나의 다른 로봇의 이동 경로를 이용하여, 공간에서 혼잡이 예상되는 혼잡 예상 영역을 특정하는 단계;
    상기 혼잡 예상 영역을 고려하여, 상기 목적지에 대한 상기 특정 로봇의 이동 경로를 생성하는 단계; 및
    상기 특정 로봇이, 상기 특정 로봇의 이동 경로를 따라 상기 공간을 주행하도록, 상기 특정 로봇의 이동 경로에 따른 주행 정보를 전송하는 단계를 수행하도록 하는 명령어들을 포함하는 것을 특징으로 하는 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램.
KR1020210040209A 2021-03-29 2021-03-29 로봇 주행 제어 방법 및 시스템 KR20220134928A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210040209A KR20220134928A (ko) 2021-03-29 2021-03-29 로봇 주행 제어 방법 및 시스템
KR1020210081917A KR20220135139A (ko) 2021-03-29 2021-06-23 공간의 혼잡도에 기반하여 이동 경로가 제어되는 로봇이 주행하는 건물
PCT/KR2022/000065 WO2022211225A1 (ko) 2021-03-29 2022-01-04 로봇 주행 제어 방법 및 시스템, 그리고 공간의 혼잡도에 기반하여 이동 경로가 제어되는 로봇이 주행하는 건물

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210040209A KR20220134928A (ko) 2021-03-29 2021-03-29 로봇 주행 제어 방법 및 시스템

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210081917A Division KR20220135139A (ko) 2021-03-29 2021-06-23 공간의 혼잡도에 기반하여 이동 경로가 제어되는 로봇이 주행하는 건물

Publications (1)

Publication Number Publication Date
KR20220134928A true KR20220134928A (ko) 2022-10-06

Family

ID=83597107

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210040209A KR20220134928A (ko) 2021-03-29 2021-03-29 로봇 주행 제어 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR20220134928A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102529332B1 (ko) * 2022-10-21 2023-05-08 한국전자기술연구원 컨텍스트 맵을 활용한 로봇 기반 최적 실내 배송경로 탐색 방법
KR102568652B1 (ko) * 2022-11-18 2023-08-22 주식회사 클로봇 서버 및 서버가 공간내 로봇들의 트래픽을 제어하는 방법
DE102023120861A1 (de) 2022-10-19 2024-04-25 Hyundai Mobis Co.,Ltd Leuchte für fahrzeug

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102023120861A1 (de) 2022-10-19 2024-04-25 Hyundai Mobis Co.,Ltd Leuchte für fahrzeug
KR102529332B1 (ko) * 2022-10-21 2023-05-08 한국전자기술연구원 컨텍스트 맵을 활용한 로봇 기반 최적 실내 배송경로 탐색 방법
WO2024085285A1 (ko) * 2022-10-21 2024-04-25 한국전자기술연구원 컨텍스트 맵을 활용한 로봇 기반 최적 실내 배송경로 탐색 방법
KR102568652B1 (ko) * 2022-11-18 2023-08-22 주식회사 클로봇 서버 및 서버가 공간내 로봇들의 트래픽을 제어하는 방법

Similar Documents

Publication Publication Date Title
KR20220134928A (ko) 로봇 주행 제어 방법 및 시스템
EP2593751B1 (en) Indoor likelihood heatmap
EP3797342B1 (en) Precision mapping using autonomous devices
Wichmann et al. The integration of mobile (tele) robotics and wireless sensor networks: A survey
Chen et al. H-DrunkWalk: Collaborative and adaptive navigation for heterogeneous MAV swarm
US10410416B2 (en) Collective navigation for virtual reality devices
KR102462636B1 (ko) 클라우드 서버 및 로봇 원격 제어 시스템에 의해 원격 제어되는 로봇이 주행하는 건물
KR102339001B1 (ko) 클라우드 서버를 이용하여 실내 공간을 주행하는 로봇을 모니터링하는 건물
KR102671223B1 (ko) 맵 생성 방법, 이를 이용한 로봇 원격 제어 방법 및 시스템
KR102484770B1 (ko) 로봇의 통신 장애 복구 방법 및 시스템
KR102513728B1 (ko) 로봇 원격 제어 방법 및 시스템
KR20220135139A (ko) 공간의 혼잡도에 기반하여 이동 경로가 제어되는 로봇이 주행하는 건물
KR102484773B1 (ko) 로봇 원격 제어 방법 및 시스템
KR102489722B1 (ko) 엘리베이터의 최적 대기 위치에 탑승하는 로봇이 주행하는 건물
KR102489723B1 (ko) 로봇 원격 제어 방법 및 시스템
KR102486153B1 (ko) 장애물에 유연하게 대처하는 로봇이 주행하는 건물
KR102675760B1 (ko) 실내 공간에 배치된 설비를 이용하는 복수의 로봇이 주행하는 건물
KR102494840B1 (ko) 네트워크 장애 상황에 강인한 로봇이 주행하는 건물
JP7097769B2 (ja) 無線通信システム
KR102485644B1 (ko) 통신 지연에 강인한 로봇이 주행하는 건물
KR20240093425A (ko) 맵 생성 방법, 이를 이용한 로봇 원격 제어 방법 및 시스템
WO2020188818A1 (ja) 無人機制御システム、方法、無人機、指示端末、及びコンピュータ可読媒体
KR102347560B1 (ko) 무선 신호 송출 장치 및 제어 방법
US20230259134A1 (en) Information processing device, information processing method, and program
JP2021196488A (ja) 地図更新システム、及び地図更新プログラム

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right