KR20240073246A - 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템 - Google Patents

로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템 Download PDF

Info

Publication number
KR20240073246A
KR20240073246A KR1020220154183A KR20220154183A KR20240073246A KR 20240073246 A KR20240073246 A KR 20240073246A KR 1020220154183 A KR1020220154183 A KR 1020220154183A KR 20220154183 A KR20220154183 A KR 20220154183A KR 20240073246 A KR20240073246 A KR 20240073246A
Authority
KR
South Korea
Prior art keywords
robot
remote
function
building
adapter
Prior art date
Application number
KR1020220154183A
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 KR1020220154183A priority Critical patent/KR20240073246A/ko
Priority to PCT/KR2023/014136 priority patent/WO2024106728A1/ko
Publication of KR20240073246A publication Critical patent/KR20240073246A/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1689Teleoperation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/006Controls for manipulators by means of a wireless system for controlling one or several manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators
    • 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/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0291Fleet control
    • G05D1/0297Fleet control by controlling means in a control room
    • 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/20Control system inputs

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Abstract

본 발명은 로봇 친화형 건물, 건물을 주행하는 로봇의 제어 방법 및 시스템에 관한 것으로, 로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 원격 어댑터(remote adapter); 및 상기 원격 어댑터와 연결되며, 상기 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 기능 관리부를 포함하고, 상기 원격 어댑터는, 상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하고, 상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달할 수 있다.

Description

로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템{ROBOT-FRIENDLY BUILDING, METHOD AND SYSTEM FOR CONTROLING ROBOT DIVINGING IN THE BUILDING}
본 발명은 로봇 친화형 건물에 적용될 수 있는 원격 로봇 제어 시스템에 관한 것이다. 보다 구체적으로, 본 발명은 로봇 친화형 건물에 위치하는 복수의 로봇을 제어함에 있어서, 필요 시 자원을 로봇에게 동적으로 할당할 수 있는 로봇 제어 방법 및 시스템에 관한 것이다.
나아가, 본 발명은 로봇 친화형 건물, 건물을 주행하는 로봇의 제어 방법 및 시스템에 관한 것이다. 보다 구체적으로 본 발명은 같은 공간 속에서 로봇과 사람이 함께 공존하며 사람에게 유용한 서비스를 제공할 수 있도록 하는 로봇 제어 방법 및 시스템에 관한 것이다.
기술이 발전함에 따라, 다양한 서비스 디바이스들이 나타나고 있으며, 특히 최근에는 다양한 작업 또는 서비스를 수행하는 로봇에 대한 기술 개발이 활발하게 이루어지고 있다.
나아가 최근에는, 인공 지능 기술, 클라우드 기술 등이 발전함에 따라, 로봇을 보다 정밀하고, 안전하게 제어하는 것이 가능해지고 있으며, 이에 따라 로봇의 활용도가 점차적으로 높아지고 있다. 특히, 기술의 발전으로 인하여, 로봇은 실내 공간에서 인간과 안전하게 공존할 수 있을 정도의 수준에 이르렀다.
이에, 최근에는 로봇이 인간의 업무 또는 작업을 대체하고 있으며, 특히 실내 공간에서 사람을 대상으로 로봇이 직접 서비스를 제공하는 다양한 방법들이 활발하게 연구되고 있다.
예를 들어, 공항, 역사, 백화점 등 공공 장소에서는 로봇들이 길안내 서비스를 제공하고 있으며, 음식점에서는 로봇들이 서빙 서비스를 제공하고 있다. 나아가, 오피스 공간, 공동 주거 공간 등에서는 로봇들이 우편물, 택배 등을 배송하는 배송 서비스를 제공하고 있다. 이 밖에도 로봇들은 청소 서비스, 방범 서비스, 물류 처리 서비스 등 다양한 서비스들을 제공하고 있으며, 로봇이 제공하는 서비스의 종류 및 범위는 앞으로도 기하급수적으로 늘어날 것이며, 서비스 제공 수준 또한 계속적으로 발전할 것으로 기대된다.
이러한, 로봇들은 실외 공간 뿐만 아니라, 사무실, 아파트, 백화점, 학교, 병원, 놀이시설 등과 같은 건물(또는 빌딩(building))의 실내 공간 내에서 다양한 서비스를 제공하고 있으며, 이 경우, 로봇들은 건물의 실내 공간을 이동하며 다양한 서비스들을 제공하도록 제어되고 있다.
한편, 서비스 로봇의 발달에 따라, 로봇이 제공 가능한 서비스의 범위가 점차적으로 증가하고 있다. 이에, 최근에는 로봇을 다양한 용도로 사용하기 위한 연구가 활발하게 진행되고 있다.
대한민국 공개특허 제10-2019-0098734호는, 로봇 내부에 용도에 적합한 로봇의 기능을 임베디드(imbedded)하는 기술이 존재하나, 이는 로봇 자체에서 많은 연산을 수행해야 하고, 임베딩된 기능에 로봇의 용도가 한정된다
이에, 로봇을 경량화 하고, 로봇의 기능을 확장할 수 있으며, 복수의 로봇을 유연하고 효율적으로 제어할 수 있는 기술에 대한 니즈가 존재한다.
본 발명은, 경량화 된 로봇을 원격으로 제어할 수 있는 로봇에 대한 제어 방법 및 시스템을 제공하는 것이다.
특히, 본 발명은, 로봇에 대한 제어를 위해, 로봇의 기능과 관련된 데이터 처리를 수행할 수 있는 로봇 제어 방법 및 시스템을 제공하기 위한 것이다.
보다 구체적으로, 본 발명은, 상황에 맞추어 로봇에 필요한 기능을 결정하고, 결정된 기능에 대한 데이터 처리를 위하여, 자원을 동적으로 할당할 수 있는 로봇 제어 방법 및 시스템을 제공하기 위한 것이다.
나아가, 본 발명은 로봇과 사람이 함께 공존하며, 사람에게 유용한 서비스를 제공하는 로봇 친화형 건물을 제공하기 위한 것이다.
나아가, 본 발명에 따른 로봇 친화형 건물은, 로봇이 이용 가능한 로봇 친화형의 다양한 설비 인프라를 제공함으로써, 로봇이 제공할 수 있는 서비스의 종류 및 범위를 확장할 수 있다.
나아가, 본 발명에 따른 로봇 친화형 건물은 다수의 로봇과 연동하는 클라우드 시스템을 이용하여, 다수의 로봇 및 설비 인프라를 유기적으로 제어함으로써, 보다 체계적으로 서비스를 제공하는 로봇의 주행을 관리할 수 있다. 이를 통해, 본 발명에 따른 로봇 친화형 건물은, 보다 안전하고, 신속하게, 그리고 정확하게 사람들에게 다양한 서비스를 제공할 수 있다.
나아가, 본 발명에 따른 건물에 적용된 로봇은 클라우드 서버에 의해 제어되는 브레인리스(brainless) 형식으로 구현될 수 있으며, 이에 의하면, 건물에 배치되는 다수의 로봇을 값비싼 센서 없이 저렴하게 제조할 수 있을 뿐만 아니라, 고성능/고정밀로 제어할 수 있다.
상술한 목적을 달성하기 위하여, 본 발명에 따른 로봇 제어 시스템은, 로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 원격 어댑터(remote adapter) 및 상기 원격 어댑터와 연결되며, 상기 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 기능 관리부를 포함하고, 상기 원격 어댑터는, 상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하고, 상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달할 수 있다.
나아가, 본 발명에 따른 로봇 제어 시스템의 제어 방법은, 로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 단계, 상기 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 단계, 상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하는 단계, 상기 원격 기능에서 상기 로봇 데이터를 이용하여 로봇 제어 정보를 생성하는 단계 및 상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 단계를 포함할 수 있다.
나아가 본 발명에 따른 프로그램은, 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 기록매체에 저장된 프로그램으로서, 로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 단계, 상기 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 단계, 상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하는 단계, 상기 원격 기능에서 상기 로봇 데이터를 이용하여 로봇 제어 정보를 생성하는 단계 및 상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 단계를 수행하도록 하는 명령어들을 포함할 수 있다.
본 발명에 따른 건물, 건물을 주행하는 로봇 제어 방법 및 시스템은, 로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 원격 어댑터(remote adapter) 및 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 기능 관리부를 포함함으로써, 건물을 주행하는 복수의 로봇 중 어느 하나에 종속되지 않고, 복수의 로봇을 제어할 수 있는 동적 제어 구조를 제시하고 있다.
나아가, 본 발명에 따른 건물, 건물을 주행하는 로봇 제어 방법 및 시스템은, 로봇 데이터에 기반하여 로봇에서 요구되는 원격 기능에서 처리된 로봇 제어 정보를, 로컬 어댑터로 전달하여, 로봇에 기능을 위한 자원이 임베디드(imbedded) 되지 않은 기능까지 확장하여, 로봇에 대한 원격 제어를 수행할 있다.
나아가, 본 발명에 따른 건물, 건물을 주행하는 로봇 제어 방법 및 시스템은, 건물을 주행하는 복수의 로봇에 대한 동적 제어 구조를 통해, 새로운 로봇의 편입 및 기존 로봇의 해제에 대해 유연하고, 복수의 로봇을 유동적이고 체계적이며 효율적으로 제어할 수 있다.
나아가, 본 발명에 따른 로봇 친화형 건물은 로봇, 자율주행, AI, 클라우드 기술이 융합되고, 연결되는 테크 컨버전스(Technological Convergence)를 이용하며, 이러한 기술과, 로봇 그리고 건물내 구비되는 설비 인프라가 유기적으로 결합되는 새로운 공간을 제공할 수 있다.
나아가, 본 발명에 따른 로봇 친화형 건물은 다수의 로봇과 연동하는 클라우드 서버를 이용하여, 다수의 로봇 및 설비 인프라를 유기적으로 제어함으로써, 보다 체계적으로 서비스를 제공하는 로봇의 주행을 체계적으로 관리할 수 있다. 이를 통해, 본 발명에 따른 로봇 친화형 건물은, 보다 안전하고, 신속하게, 그리고 정확하게 사람들에게 다양한 서비스를 제공할 수 있다.
나아가, 본 발명에 따른 건물에 적용된 로봇은 클라우드 서버에 의해 제어되는 브레인리스(brainless) 형식으로 구현될 수 있으며, 이에 의하면, 건물에 배치되는 다수의 로봇을 값비싼 센서 없이 저렴하게 제조할 수 있을 뿐만 아니라, 고성능/고정밀로 제어할 수 있다.
나아가, 본 발명에 따른 건물에서는 건물에 배치된 다수의 로봇에 할당된 임무와 이동 상황을 고려함은 물론, 사람을 배려하도록 주행이 제어됨으로써, 같은 공간 속에서 자연스럽게 로봇과 사람이 공존 할 수 있다.
나아가, 본 발명에 따른 건물에서는 로봇에 의한 사고 방지 및 예기치 못한 상황에 대응할 수 있도록 다양한 제어를 수행함으로써, 사람들에게 로봇이 위험한 것이 아닌, 친근하고 안전하다는 인식을 심어줄 수 있다.
도 1, 도 2 및 도 3은 본 발명에 따른 로봇 친화형 건물을 설명하기 위한 개념도들이다.
도 4, 도 5 및 도 6은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇 및 로봇 친화형 건물에 구비된 다양한 설비를 제어하는 시스템을 설명하기 위한 개념도들이다.
도 7 및 도 8은 본 발명에 따른 로봇 친화형 건물에 구비된 설비 인프라를 설명하기 위한 개념도들이다.
도 9 내지 도 11은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇의 위치를 추정하는 방법을 설명하기 위한 개념도들이다.
도 12는 건물에서 주행하는 로봇을 제어하는 로봇 제어 시스템 및 방법을 설명하기 위한 개념도이다.
도 13은 본 발명에 따른 로봇 제어 시스템을 설명하기 위한 개념도이다.
도 14는 본 발명에 따른 로봇 제어 시스템의 확장을 설명하기 위한 개념도이다.
도 15는 본 발명에 따른 로봇 제어 방법을 설명하기 위한 흐름도이다.
도 16a, 도 16b, 도 16c, 도 16d 및 도 16e는 로봇 제어를 위한 원격 기능 관리를 설명하기 위한 개념도들이다.
도 17a 및 도 17b는 로봇의 주행 제어를 위한 원격 기능 관리를 설명하기 위한 개념도들이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소에는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명은 로봇 친화형 건물에 관한 것으로서, 사람과 로봇이 안전하게 공존하고, 나아가 건물 내에서 로봇이 유익한 서비스를 제공할 수 있는 로봇 친화형 건물을 제안한다.
보다 구체적으로, 본 발명은 로봇, 로봇 친화 인프라 및 이를 제어하는 다양한 시스템을 이용하여, 사람에게 유용한 서비스를 제공하는 방법을 제공한다. 본 발명에 따른 건물에서는 사람과 다수의 로봇이 공존할 수 있으며, 다수의 로봇이 건물 내에서 자유롭게 이동할 수 있는 다양한 인프라(또는 설비 인프라)가 제공될 수 있다.
본 발명에서, 건물은 지속적인 거주, 생활, 업무 등을 위하여 만들어진 구조물로서, 상업용 건물, 산업용 건물, 기관용 건물, 거주용 건물 등과 같이 다양한 형태를 가질 수 있다. 또한, 상기 건물은 복수의 층을 가진 다층 건물과 이에 반대되는 단층 건물이 될 수 있다. 다만, 본 발명에서는 설명의 편의상 다층 건물에 적용되는 인프라 또는 설비 인프라를 예시로서 설명한다.
본 발명에서, 인프라 또는 설비 인프라는, 서비스 제공, 로봇의 이동, 기능 유지, 청결 유지 등을 위하여 건물에 구비되는 시설로서, 그 종류 및 형태는 매우 다양할 수 있다. 예를 들어, 건물에 구비되는 인프라는 이동 설비(예를 들어, 로봇 이동 통로, 엘리베이터, 에스컬레이터 등), 충전 설비, 통신 설비, 세척 설비, 구조물(예를 들어, 계단 등) 등과 같이 다양할 수 있다. 본 명세서에서는 이러한 설비들은 시설, 인프라, 시설 인프라 또는 설비 인프라로 명명하도록 하며, 경우에 따라 용어를 혼용하여 사용하도록 한다.
나아가, 본 발명에 따른 건물에서는 건물, 건물에 구비된 다양한 설비 인프라 및 로봇 중 적어도 하나가 서로 연동하여 제어됨으로써, 로봇이 안전하고, 정확하게 건물 내에서 다양한 서비스를 제공하도록 이루어질 수 있다.
본 발명은 다수의 로봇이 건물 내에서 주행하고, 임무(또는 업무)에 따른 서비스를 제공하며, 필요에 따라 대기 또는 충전 기능, 나아가 로봇에 대한 수리 및 세척 기능을 지원할 수 있는 다양한 설비 인프라가 구비된 건물을 제안한다. 이러한 건물은 로봇에 대한 통합 솔루션(또는 시스템)을 제공하며, 본 발명에 따른 건물은 다양한 수식어로서 명명될 수 있다. 예를 들어, 본 발명에 따른 건물은, i)로봇이 이용하는 인프라를 구비하는 건물, ii)로봇 친화 인프라를 구비하는 건물, iii)로봇 친화형 건물, iv) 로봇과 사람이 함께 생활하는 건물, v)로봇을 이용한 다양한 서비스를 제공하는 건물과 등과 같이, 다양하게 표현될 수 있다.
한편, 본 발명에서 “로봇 친화”의 의미는, 로봇이 공존하는 건물에 대한 것으로서, 보다 구체적으로, 로봇의 주행을 허용하거나, 로봇이 서비스를 제공하거나, 로봇이 이용 가능한 설비 인프라가 구축되어 있거나, 로봇에게 필요한 기능(ex: 충전, 수리, 세척 등)을 제공하는 설비 인프라가 구축되어 있음을 의미할 수 있다. 이 경우에, 본 발명에서 “로봇 친화”는 로봇과 사람의 공존을 위한 통합 솔루션을 가지고 있다는 의미로 사용될 수 있다.
이하에서는 첨부된 도면과 함께, 본 발명에 대해 보다 구체적으로 살펴본다.
도 1, 도 2 및 도 3은 본 발명에 따른 로봇 친화형 건물을 설명하기 위한 개념도들이고, 도 4, 도 5 및 도 6은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇 및 로봇 친화형 건물에 구비된 다양한 설비를 제어하는 시스템을 설명하기 위한 개념도들이다. 나아가, 도 7 및 도 8은 본 발명에 따른 로봇 친화형 건물에 구비된 설비 인프라를 설명하기 위한 개념도들이다.
먼저, 설명의 편의를 위하여, 대표적인 도면 부호를 정의하기로 한다.
본 발명에서, 건물은 도면 부호 “1000” 부여하며, 건물(1000)의 공간(실내 공간 또는 실내 영역)은 도면 부호 “10”을 부여한다(도 8참조). 나아가, 건물(1000)의 실내 공간을 구성하는 복수의 층들(floors)에 각각 해당하는 실내 공간은 도면 부호 10a, 10b, 10c등을 부여한다(도 8 참조). 본 발명에서 실내 공간 또는 실내 영역은 건물의 외부와 반대되는 개념으로 외벽에 의하여 보호되는 건물의 내부를 의미하는 것으로서, 공간을 의미하는 것으로 한정되지 않는다.
나아가, 본 발명에서 로봇은 도면 부호 “R”을 부여하며, 도면 또는 명세서에서는 로봇에 대하여 도면 부호를 기입하지 않더라도, 모두 로봇(R)으로 이해되어질 수 있다.
나아가, 본 발명에서 사람 또는 인간은 도면 부호 “U”를 부여하며, 사람 또는 인간은 동적인 객체로서 명명이 가능하다. 이때 동적인 객체는 반드시 사람만을 의미하는 것이 아니라, 강아지, 고양이와 같은 동물 또는 다른 적어도 하나의 로봇(예를 들어, 사용자의 개인 로봇, 다른 서비스를 제공하는 로봇 등), 드론, 청소기(예를 들어, 로봇 청소기)와 같이 움직임이 가능한 사물을 포함하는 의미로 받아들여질 수 있다.
한편, 본 발명에서 설명되는 건물(建物, building, structure, edifice, 1000)은 특별한 종류에 제한을 두지 않으며, 사람이 들어 살거나, 일을 하거나, 동물을 사육하거나, 또는 물건을 넣어 두기 위하여 지은 구조물을 의미할 수 있다.
예를 들어, 건물(1000)은 사무실, 오피스, 오피스텔, 아파트, 주상복합 아파트, 주택, 학교, 병원, 음식점, 관공서 등이 될 수 있으며, 본 발명은 이러한 다양한 종류의 건물들에 적용될 수 있다.
도 1에 도시된 것과 같이, 본 발명에 따른 건물(1000)에서는 로봇이 주행하며 다양한 서비스를 제공할 수 있다.
건물(1000)내에는 하나 또는 그 이상의 서로 다른 종류의 복수의 로봇들이 위치할 수 있으며, 이러한 로봇들은 서버(20)의 제어 하에, 건물(1000) 내를 주행하고, 서비스를 제공하며, 건물(1000)에 구비된 다양한 설비 인프라를 이용할 수 있다.
본 발명에서 서버(20)의 위치는 다양하게 존재할 수 있다. 예를 들어, 서버(20)는 건물(1000)의 내부 및 건물(1000)의 외부 중 적어도 하나에 위치할 수 있다. 즉, 서버(20)의 적어도 일부는 건물(1000)의 내부에 위치하고, 나머지 일부는 건물(1000)의 외부에 위치할 수 있다. 또는, 서버(20)는 건물(1000) 내부에 모두 위치하거나, 건물(1000) 외부에만 위치할 수 있다. 이에, 본 발명에서는, 서버(20)의 구체적인 위치에 대해서는 특별한 한정을 두지 않기로 한다.
나아가, 본 발명에서 서버(20)는 클라우드 컴퓨팅(Cloud Computing) 방식의 서버(클라우드 서버, 21) 및 엣지 컴퓨팅(Edge computing) 방식의 서버(엣지 서버, 22) 중 적어도 하나의 방식을 이용하도록 이루어질 수 있다. 나아가, 서버(20)는 클라우드 컴퓨팅 또는 엣지 컴퓨팅 방식 외에도, 로봇을 제어 가능한 방식이기만 하면 본 발명에 적용될 수 있다.
한편, 본 발명에 따른 서버(20)는 경우에 따라, 클라우드 컴퓨팅(Cloud Computing) 방식의 서버(21) 및 엣지 컴퓨팅(Edge computing) 방식을 혼합하여 로봇 및 건물(1000)내 구비된 설비 인프라 중 적어도 하나에 대한 제어를 수행할 수 있다.
한편, 클라우드 서버(21)와 엣지 서버(22)에 대해서 보다 구체적으로 살펴보면, 엣지 서버(22)는 전자 장치로서, 로봇(R)의 브레인(brain)으로 동작할 수 있다. 즉 각각의 엣지 서버(22)는 적어도 하나의 로봇(R)을 무선으로 제어할 수 있다. 이 때 엣지 서버(22)는 정해지는 제어 주기에 기반하여, 로봇(R)을 제어할 수 있다. 제어 주기는 로봇(R)과 관련된 데이터를 처리(processing)하도록 주어지는 시간과 로봇(R)에 제어 명령을 제공하도록 주어지는 시간의 합으로 결정될 수 있다. 클라우드 서버(21)는 로봇(R) 또는 엣지 서버(22) 중 적어도 어느 하나를 관리할 수 있다. 이 때 엣지 서버(22)는 로봇(R)에 대응하여 서버로서 동작하고, 클라우드 서버(21)에 대응하여 클라이언트로 동작할 수 있다.
로봇(R)과 엣지 서버(22)는 무선으로 통신할 수 있으며, 엣지 서버(22)와 클라우드 서버(21)는 유선 또는 무선으로 통신할 수 있다. 이 때 로봇(R)과 엣지 서버(22)는, 초고신뢰 저지연 통신(ultra-reliable and low latency communications; URLLC)이 가능한 무선 네트워크를 통하여, 통신할 수 있다. 예를 들면, 무선 네트워크는 5G 네트워크 또는 WiFi-6(WiFi ad/ay) 중 적어도 어느 하나를 포함할 수 있다. 여기서, 5G 네트워크는, 초고신뢰 저지연 통신이 가능할 뿐 아니라, 초광대역 이동 통신(enhanced mobile broadband; eMBB) 및 대규모 사물 통신(massive machine type communications; mMTC)이 가능한 특징들을 가질 수 있다. 일 예로, 엣지 서버(22)는 MEC(mobile edge computing, multi-access edge computing) 서버를 포함하며, 기지국에 배치될 수 있다. 이를 통해, 로봇(R)과 엣지 서버(22) 간 통신에 따른 지연(latency) 시간이 단축될 수 있다. 이 때 엣지 서버(22)의 제어 주기에서, 로봇(R)으로 제어 명령을 제공하도록 주어지는 시간이 단축됨에 따라, 데이터를 처리하도록 주어지는 시간이 확대될 수 있다. 한편, 엣지 서버(22)와 클라우드 서버(21)는, 예컨대 인터넷(internet)과 같은 무선 네트워크를 통하여, 통신할 수 있다.
한편, 경우에 따라, 복수 개의 엣지 서버들은 무선 메시 네트워크(mesh network)를 통하여 연결될 수 있으며, 클라우드 서버(21)의 기능은 복수 개의 엣지 서버들에 분산될 수 있다. 이러한 경우, 어떤 로봇(R)에 대하여, 엣지 서버들 중 어느 하나가 로봇(R)을 위한 엣지 서버(22)로서 동작하고, 엣지 서버들 중 적어도 다른 하나가 엣지 서버들 중 어느 하나와 협력 하에, 로봇(R)을 위한 클라우드 서버(21)로서 동작할 수 있다.
본 발명에 따른 건물(1000)에 형성되는 네트워크 또는 통신망은 데이터를 수집하도록 구성되는 적어도 하나의 로봇(R), 로봇(R)을 무선으로 제어하도록 구성되는 적어도 하나의 엣지 서버(22), 및 엣지 서버(22)와 연결되고, 로봇(R)과 엣지 서버(22)를 관리하도록 구성되는 클라우드 서버(21) 간의 통신을 포함할 수 있다.
엣지 서버(22)는, 로봇(R)으로부터 상기 데이터를 무선으로 수신하고, 상기 데이터를 기반으로 제어 명령을 결정하고, 로봇(R)에 상기 제어 명령을 무선으로 전송하도록 구성될 수 있다.
다양한 실시예들에 따르면, 엣지 서버(22)는, 상기 데이터에 기반하여, 클라우드 서버(21)와 협력할 지의 여부를 판단하고, 클라우드 서버(21)와 협력하지 않아도 되는 것으로 판단되면, 정해진 제어 주기 내에서, 상기 제어 명령을 결정하고 상기 제어 명령을 전송하도록 구성될 수 있다.
다양한 실시예들에 따르면, 엣지 서버(22)는, 클라우드 서버(21)와 협력해야 하는 것으로 판단되면, 상기 데이터를 기반으로 클라우드 서버(21)와 통신하여, 상기 제어 명령을 결정하도록 구성될 수 있다.
한편, 로봇(R)은 제어 명령에 따라 구동될 수 있다. 예를 들면, 로봇(R)은 움직임을 변경함으로써 위치를 이동하거나 자세를 변경할 수 있으며, 소프트웨어 업데이트를 수행할 수 있다.
본 발명에서는, 설명의 편의를 위하여, 서버(20)를 “클라우드 서버”로 통일하여 명명하도록 하며, 도면 부호 “20”을 부여하도록 한다. 한편, 이러한 클라우드 서버(20)는 엣지 컴퓨팅의 엣지 서버(22)의 용어로도 대체될 수 있음은 물론이다.
나아가, “클라우드 서버”의 용어는 클라우드 로봇 시스템, 클라우드 시스템, 클라우드 로봇 제어 시스템, 클라우드 제어 시스템 등의 용어로 다양하게 변경될 수 있다.
한편, 본 발명에 따른 클라우드 서버(20)는 건물(1000)을 주행하는 복수의 로봇에 대한 통합 제어를 수행하는 것이 가능하다. 즉, 클라우드 서버(20)는 건물(1000)내 위치한 i)복수의 로봇 로봇(R)에 대한 모니터링을 수행하고, ii)복수의 로봇에 대해 임무(또는 업무)를 할당하며, iii)복수의 로봇 로봇(R)이 임무를 성공적으로 수행하도록 건물(1000)내 구비된 설비 인프라를 직접적으로 제어하거나, iv)설비 인프라를 제어하는 제어 시스템과 통신을 통하여 설비 인프라가 제어되도록 할 수 있다.
나아가, 클라우드 서버(20)는 건물에 위치한 로봇들의 상태 정보를 확인하고, 로봇들에 필요한 다양한 기능을 제공(또는 지원)할 수 있다. 여기에서, 다양한 기능은, 로봇들에 대한 충전 기능, 오염된 로봇에 대한 세척 기능, 임무가 완료된 로봇들에 대한 대기 기능 등이 존재할 수 있다.
클라우드 서버(20)는 로봇들에 대해 다양한 기능을 제공하기 위하여, 로봇들이 건물(1000)에 구비된 다양한 설비 인프라를 이용하도록, 로봇들을 제어할 수 있다. 나아가, 클라우드 서버는, 로봇들에 대해 다양한 기능을 제공하기 위하여, 건물(1000)내 구비된 설비 인프라를 직접적으로 제어하거나, 설비 인프라를 제어하는 제어 시스템과 통신을 통하여 설비 인프라가 제어되도록 할 수 있다.
이와 같이, 클라우드 서버(20)에 의해 제어되는 로봇들은 건물(1000)을 주행하며, 다양한 서비스를 제공할 수 있다.
한편, 클라우드 서버(20)는 데이터베이스에 저장된 정보를 근거로, 다양한 제어를 수행할 수 있으며, 본 발명에서 데이터베이스의 종류 및 위치에는 특별한 한정을 두지 않는다. 이러한 데이터베이스의 용어는 메모리, 저장부, 저장소, 클라우드 저장소, 외부 저장소, 외부 서버 등, 정보가 저장되는 수단을 의미하는 용어이면 자유롭게 변형되어 사용되어질 수 있다. 이하에서는 “데이터베이스”의 용어로 통일하여 설명하도록 한다.
한편, 본 발명에 따른 클라우드 서버(20)는 로봇들이 제공하는 서비스의 종류, 로봇에 대한 제어의 종류 등 다양한 기준에 근거하여 로봇에 대한 분산 제어를 수행할 수 있으며, 이 경우, 클라우드 서버(20)에는 하위 개념의 종속적인 서브 서버들이 존재할 수 있다.
나아가, 본 발명에 따른 클라우드 서버(20)는 다양한 인공지능 알고리즘에 근거하여, 건물(1000)을 주행하는 로봇을 제어할 수 있다.
나아가, 클라우드 서버(20)는 로봇을 제어하는 과정에서 수집되는 데이터들을 학습 데이터로서 활용하는 인공지능 기반의 학습을 수행하고, 이를 로봇의 제어에 활용함으로써, 로봇에 대한 제어가 이루어질수록 로봇을 보다 정확하고, 효율적으로 운용할 수 있다. 즉, 클라우드 서버(20)는 딥러닝 또는 머신 러닝을 수행하도록 이루어질 수 있다. 또한, 클라우드 서버(20)는 시뮬레이션 등을 통하여 딥러닝 또는 머신 러닝을 수행하고, 그 결과로서 구축된 인공지능 모델을 이용하여 로봇에 대한 제어를 수행할 수 있다.
한편, 건물(1000)에는 로봇의 주행, 로봇의 기능 제공, 로봇의 기능 유지, 로봇의 임무 수행 또는 로봇과 사람의 공존을 위하여 다양한 설비 인프라가 구비될 수 있다.
예를 들어, 도 1의 (a)에 도시된 것과 같이, 건물(1000) 내에는 로봇(R)의 주행(또는 이동)을 지원할 수 있는 다양한 설비 인프라(1, 2)가 구비될 수 있다. 이러한 설비 인프라(1, 2)는 건물(1000)의 층 내에서 로봇(R)의 수평 방향으로의 이동을 지원하거나, 건물(1000)의 서로 다른 층 사이를 로봇(R)이 이동하도록 수직 방향으로의 이동을 지원할 수 있다. 이와 같이, 상기 설비 인프라(1, 2)는 로봇의 이동을 지원하는 운송체계를 구비할 수 있다. 클라우드 서버(20)는 이러한 다양한 설비 인프라(1, 2)를 이용하도록 로봇(R)을 제어하여, 도 1의 (b)에 도시된 것과 같이, 로봇(R)이 서비스를 제공하기 위하여 건물(1000) 내를 이동하도록 할 수 있다.
한편, 본 발명에 따른 로봇들은 클라우드 서버(20) 및 로봇 자체에 구비된 제어부 중 적어도 하나에 근거하여 제어되어, 건물(1000) 내를 주행하거나, 부여된 임무에 해당하는 서비스를 제공하도록 이루어질 수 있다.
나아가, 도 1의 (c)에 도시된 것과 같이, 본 발명에 따른 건물은 로봇과 사람들이 공존하는 건물로서, 로봇들은 사람(U), 사람이 사용하는 물건(예를 들어 유모차, 카트 등), 동물과 같은 장애물을 피하여 주행하도록 이루어지며, 경우에 따라 로봇의 주행과 관련된 알림 정보(3)를 출력하도록 이루어질 수 있다. 이러한 로봇의 주행은 클라우드 서버(20) 및 로봇에 구비된 제어부 중 적어도 하나의 근거 하에 장애물을 피하도록 이루어질 수 있다. 클라우드 서버(20)는 로봇에 구비된 다양한 센서(예를 들어, 카메라(이미지 센서), 근접 센서, 적외선 센서 등)를 통해 수신되는 정보에 근거하여, 로봇이 장애물을 피하여 건물(1000) 내를 이동하도록 로봇에 대한 제어를 수행할 수 있다.
또한, 도 1의 (a) 내지 (c)의 과정을 거쳐 건물 내를 주행하는 로봇은, 도 1의 (d)에 도시된 것과 같이, 건물 내에 존재하는 사람 또는 타겟 객체에게 서비스를 제공하도록 이루어질 수 있다.
로봇이 제공하는 서비스의 종류는, 로봇 마다 상이할 수 있다. 즉, 로봇은 용도에 따라 다양한 종류가 존재할 수 있으며, 로봇은 용도 마다 상이한 구조를 가지고, 로봇에는 용도에 적합한 프로그램이 탑재될 수 있다.
예를 들어, 건물(1000)에는 배송, 물류 작업, 안내, 통역, 주차지원, 보안, 방범, 경비, 치안, 청소, 방역, 소독, 세탁, 음료 제조, 음식 제조, 서빙, 화재 진압, 의료 지원 및 엔터테인먼트 서비스 중 적어도 하나의 서비스를 제공하는 로봇들이 배치될 수 있다. 로봇들이 제공하는 서비스는 위에서 열거된 예들 외에도 다양할 수 있다.
한편, 클라우드 서버(20)는 로봇들 각각의 용도를 고려하여, 로봇들에게 적절한 임무를 할당하고, 할당된 임무가 수행되도록 로봇들에 대한 제어를 수행할 수 있다.
본 발명에서 설명되는 로봇들 중 적어도 일부는 클라우드 서버(20)의 제어 하에 주행하거나, 임무를 수행할 수 있으며, 이 경우, 로봇 자체에서 주행 또는 임무를 수행하기 위하여 처리되는 데이터의 양은 최소화될 수 있다. 본 발명에서는 이러한 로봇을 브레인리스(brainless) 로봇이라고 명명할 수 있다. 이러한 브레인리스 로봇은, 건물(1000) 내에서 주행, 임무 수행, 충전 수행, 대기, 세척 등의 행위를 하는데 있어서, 적어도 일부의 제어를 클라우드 서버(20)의 제어에 의존할 수 있다.
다만, 본 명세서에서는 브레인 리스 로봇을 구분하여 명명하지 않고, 모두 “로봇”으로 통일하여 명명하도록 한다.
앞서 설명한 것과 같이, 본 발명에 따른 건물(1000)은 로봇이 이용 가능한 다양한 설비 인프라가 구비될 수 있으며, 도 2, 도 3 및 도 4에 도시된 것과 같이, 설비 인프라는 건물(1000)내에 배치되어, 건물(1000) 및 클라우드 서버(20)와의 연동을 통해, 로봇의 이동(또는 주행)을 지원하거나, 로봇에게 다양한 기능을 제공할 수 있다.
보다 구체적으로, 설비 인프라는 건물 내에서 로봇의 이동을 지원하기 위한 설비들을 포함할 수 있다.
로봇의 이동을 지원하는 설비들은, 로봇이 전용으로 사용하는 로봇 전용 설비 및 사람과 공동으로 사용하는 공용 설비 중 어느 하나의 타입을 가질 수 있다.
나아가, 로봇의 이동을 지원하는 설비들은 로봇의 수평 방향으로의 이동을 지원하거나, 로봇의 수직 방향으로의 이동을 지원할 수 있다. 로봇들은 건물(1000)내에서 설비들을 이용하여, 수평 또는 수직 방향으로 이동할 수 있다. 수평 방향으로의 이동은, 동일 층 내에서의 이동을 의미하며, 수직 방향으로의 이동은 서로 다른 층간 사이를 이동하는 것을 의미할 수 있다. 따라서 본 발명에서는 동일 층 내에서 상하로 이동하는 것은 수평 방향의 이동으로 지칭할 수 있다.
로봇의 이동을 지원하는 설비들은 다양할 수 있으며, 예를 들어, 도 2 및 도 3에 도시된 것과 같이, 건물(1000)에는 로봇의 수평 방향으로의 이동을 지원하는 로봇 통로(로봇 도로, 201, 202, 203)가 구비될 수 있다. 이러한 로봇 통로는, 로봇이 전용으로 이용하는 로봇 전용 통로를 포함할 수 있다. 한편, 로봇 전용 통로는 사람의 접근이 원천적으로 차단되도록 이루어지는 것이 가능하나, 반드시 이에 한정되지 않을 수 있다. 즉, 로봇 전용 통로는 사람이 통행하거나, 접근할 수 있는 구조로 이루어질 수 있다.
한편, 도 3에 도시된 것과 같이, 로봇 전용 통로는 제1 전용 통로(또는 제1 타입 통로, 201) 및 제2 전용 통로(또는 제2 타입 통로, 202) 중 적어도 하나로 이루어질 수 있다. 제1 전용 통로 및 제2 전용 통로(201, 202)는 동일 층에 함께 구비되거나, 서로 다른 층에 구비될 수 있다.
또 다른 예로서, 도 2 및 도 3에 도시된 것과 같이, 건물(1000)에는 로봇의 수직 방향으로의 이동을 지원하는 이동 수단(204, 205)이 구비될 수 있다. 이러한 이동 수단(204, 205)은 엘리베이터(elevator) 또는 에스컬레이터(escalator) 중 적어도 하나를 포함할 수 있다. 로봇은 건물(1000)에 구비된 엘리베이터(204) 또는 에스컬레이터(205)를 이용하여, 서로 다른 층 사이를 이동할 수 있다.
한편, 이러한 엘리베이터(204) 또는 에스컬레이터(205)는 로봇 전용으로 이루어지거나, 사람과 함께 이용하는 공용으로 이루어질 수 있다.
예를 들어, 건물(1000)에는 로봇 전용 엘리베이터 또는 공용 엘리베이터 중 적어도 하나가 포함될 수 있다. 마찬가지로, 나아가, 건물(1000)에는 로봇 전용 에스컬레이터 또는 공용 에스컬레이터 중 적어도 하나가 포함될 수 있다.
한편, 건물(1000)은 수직 방향 이동과 수평 방향 이동에 모두 활용될 수 있는 형태의 이동 수단이 구비될 수 있다. 예를 들어, 무빙워크(moving walkway) 형태의 이동 수단이 로봇에게 층 내에서 수평 방향 이동을 지원하거나, 층 간에서 수직 방향 이동을 지원할 수 있다.
로봇은 자체적인 제어 또는 클라우드 서버(20)에 의한 제어 하에, 수평 방향 또는 수직 방향으로 건물(1000) 내를 이동할 수 있으며, 이때, 로봇의 이동을 지원하는 다양한 설비를 이용하여, 건물(1000) 내를 이동할 수 있다.
나아가, 건물(1000)에는 건물(1000) 또는 건물(1000)내 특정 영역으로의 출입을 제어하는 출입문(206, 또는 자동문) 및 출입 통제 게이트(gate, 207) 중 적어도 하나를 포함할 수 있다. 출입문(206) 및 출입 통제 게이트(207) 중 적어도 하나는 로봇이 이용 가능하도록 이루어질 수 있다. 로봇은 클라우드 서버(20)의 제어 하에 출입문(또는 자동문, 206) 또는 출입 통제 게이트(207)를 통과하도록 이루어질 수 있다.
한편, 출입 통제 게이트(207)는 다양하게 명명될 수 있으며, 스피드 게이트(speed gate)등으로 명명될 수 있다.
나아가, 건물(1000)에는, 로봇이 대기하는 대기 공간에 해당하는 대기 공간 설비(208), 로봇의 충전을 위한 충전 설비(209), 로봇의 세척을 위한 세척 설비(210)가 더 포함될 수 있다.
나아가, 건물(1000)에는 로봇이 제공하는 특정 서비스에 특화된 설비(211)가 포함될 수 있으며, 예를 들어 배송 서비스를 위한 설비가 포함될 수 있다.
또한, 건물(1000)에는 로봇을 모니터링하기 위한 설비가 포함될 수 있으며(도면부호 212 참조), 이러한 설비의 예로는 다양한 센서들(예를 들어, 카메라(또는 이미지 센서, 121)가 존재할 수 있다.
도 2 및 도 3과 함께 살펴본 것과 같이, 본 발명에 따른 건물(1000)에는 서비스 제공, 로봇의 이동, 주행, 기능 유지, 청결 유지 등을 위한 다양한 설비들이 구비될 수 있다.
한편, 도 4에 도시된 것과 같이, 본 발명에 따른 건물(1000)은 클라우드 서버(20), 로봇(R), 설비 인프라(200)와 상호 연결되어, 건물(1000) 내에서 로봇들이 다양한 서비스를 제공함은 물론, 이를 위하여 설비들을 적절하게 이용하도록 할 수 있다.
여기에서, “상호 연결”된다고 함은, 건물 내에서 제공되는 서비스, 로봇의 이동, 주행, 기능 유지, 청결 유지 등과 관련된 다양한 데이터, 제어명령이 네트워크(또는 통신망)을 통하여 적어도 하나의 주체에서 다른 적어도 하나의 주체로 단방향 또는 쌍방향으로 송수신되는 것을 의미할 수 있다.
여기에서, 주체는, 건물(1000), 클라우드 서버(20), 로봇(R), 설비 인프라(200) 등이 될 수 있다.
나아가, 설비 인프라(200)는 도 2 및 도 3과 함께 살펴본 다양한 설비들(도면부호 201 내지 213 참조) 각각 및 이들을 제어하는 제어 시스템(201a, 202a, 203a, 204a, …) 중 적어도 하나를 포함할 수 있다.
건물(1000)을 주행하는 로봇(R)은 네트워크(40)를 통하여, 클라우드 서버(20)와 통신하도록 이루어지며, 클라우드 서버(20)와의 제어 하에 건물(1000) 내에서 서비스를 제공할 수 있다.
보다 구체적으로, 건물(1000)은 건물(1000)에 구비된 다양한 설비들과 통신하거나, 설비들을 직접적으로 제어하기 위한 건물 시스템(1000a)을 포함할 수 있다. 도 4에 도시된 것과 같이, 건물 시스템(1000a)은 통신부(110), 센싱부(120), 출력부(130), 저장부(140) 및 제어부(150)를 포함할 수 있다.
통신부(110)는 건물(1000) 내에서 유선 통신망 및 무선 통신망 중 적어도 하나를 형성함으로써, i)클라우드 서버(20)와 로봇(R) 사이, ii)클라우드 서버(20)와 건물(1000) 사이, iii)클라우드 서버(20)와 설비 인프라(200) 사이, iv)설비 인프라(200)와 로봇(R) 사이, v)설비 인프라(200)와 건물(1000) 사이를 연결할 수 있다. 즉, 통신부(110)는 서로 다른 주체 간에 통신의 매개체 역할을 수행할 수 있다. 이러한 통신부(110)는 기지국, 공유기 등으로도 명명될 수 있으며, 통신부(110)는 건물(1000) 내에서, 로봇(R), 클라우드 서버(20), 설비 인프라(200)가 상호 통신할 수 있도록 통신망 또는 네트워크를 형성할 수 있다.
한편, 본 명세서에서, 건물(1000)과 통신망을 통해 연결된다고 함은, 건물 시스템(1000a)에 포함된 구성요소 중 적어도 하나와 연결됨을 의미할 수 있다.
도 5에 도시된 것과 같이, 건물(1000)에 배치되는 복수의 로봇들(R)은 통신부(110)를 통해 형성되는 유선 통신망 및 무선 통신망 중 적어도 하나를 통하여, 클라우드 서버(20)와 통신을 수행함으로써, 클라우드 서버(20)에 의해 원격 제어되도록 이루어질 수 있다. 이러한 유선 통신망 또는 무선 통신망과 같은 통신망은 네트워크(40)라고 이해되어질 수 있다.
이와 같이, 건물(1000), 클라우드 서버(20), 로봇(R) 및 설비 인프라(200)는 건물(1000)내에 형성되는 통신망에 근거하여 네트워크(40)를 형성할 수 있다. 로봇(R)은 이러한 네트워크에 기반하여, 클라우드 서버(20)의 제어 하에 건물(1000)내에 구비된 다양한 설비를 이용하여, 할당된 임무에 해당하는 서비스를 제공할 수 있다.
한편, 설비 인프라(200)는 도 2 및 도 3과 함께 살펴본 다양한 설비들(도면부호 201 내지 213 참조) 각각 및 이들을 제어하는 제어 시스템(201a, 202a, 203a, 204a, …) 중 적어도 하나를 포함할 수 있다(이러한 제어 시스템은 “제어 서버”로도 명명될 수 있다).
도 4에 도시된 것과 같이, 서로 다른 종류의 설비들은 고유의 제어 시스템을 구비할 수 있다. 예를 들어, 로봇 통로(또는 로봇 전용 통로, 로봇 도로, 로봇 전용 도로, 201, 202, 203)의 경우, 로봇 통로(201, 202, 203)를 각각 독립적으로 제어하기 위한 제어 시스템(201a, 202a, 203a)이 존재하고, 엘리베이터(또는 로봇 전용 엘리베이터, 204)의 경우, 엘리베이터(204)를 제어하기 위한 제어 시스템(204)이 존재할 수 있다.
이러한, 설비들을 제어하기 위한 고유의 제어 시스템들은 클라우드 서버(20), 로봇(R), 건물(1000) 중 적어도 하나와 통신하여, 로봇(R)이 설비를 이용하도록 각각의 설비에 대한 적절한 제어를 수행할 수 있다.
한편, 각각의 설비 제어 시스템(201a, 202a, 203a, 204a, …)에 포함된 센싱부(201b, 202b, 203b, 204b, …)는, 설비 자체에 구비되어, 설비와 관련된 다양한 정보를 센싱하도록 이루어질 수 있다.
나아가, 각각의 설비 제어 시스템(201a, 202a, 203a, 204a, …)에 포함된 제어부(201c, 202c, 203c, 204c, …)는 각각의 설비의 구동을 위한 제어를 수행하며, 클라우드 서버(20)와의 통신을 통하여, 로봇(R)이 설비를 이용하도록 적절한 제어를 수행할 수 있다. 예를 들어, 엘리베이터(204)의 제어 시스템(204b)은, 클라우드 서버(20)와의 통신을 통해, 로봇(R)이 엘리베이터(204)에 탑승하도록 로봇(R)이 위치한 층에, 엘리베이터(204)가 정차하도록 엘리베이터(204)를 제어할 수 있다.
각각의 설비 제어 시스템(201a, 202a, 203a, 204a, …)에 포함된 제어부(201c, 202c, 203c, 204c, …) 중 적어도 일부는 각각의 설비(201, 202, 203, 204, …)와 함께 건물(1000)내에 위치하거나, 건물(1000)의 외부에 위치할 수 있다.
나아가, 본 발명에 따른 건물(1000)에 포함된 설비들 중 적어도 일부는, 클라우드 서버(20)에 의해 제어되거나, 건물(1000)의 제어부(150)에 의하여 제어되는 것 또한 가능하다. 이 경우, 설비는 별도의 설비 제어 시스템을 구비하지 않을 수 있다.
이하의 설명에서는 각각의 설비가 고유의 제어 시스템을 구비하는 것을 예를 들어 설명하도록 하나, 위에서 언급한 것과 같이, 설비를 제어하기 위한 제어 시스템의 역할은 클라우드 서버(20) 또는 건물(1000)의 제어부(150)에 의해 대체될 수 있음은 물론이다. 이 경우, 본 명세서에서 설명되는 설비 제어 시스템의 제어부(201c, 202c, 203c, 204c, …)의 용어는, 클라우드 서버(20) 또는 제어부(150, 또는 건물의 제어부(150))의 용어로 대체되어 표현될 수 있음은 물론이다.
한편, 도 4에서 각각의 설비 제어 시스템(201a, 202a, 203a, 204a, …)의 구성요소들은 일 예에 대한 것으로서, 각각의 설비 특성에 따라 다양한 구성요소들이 추가되거나, 제외될 수 있다.
이와 같이, 본 발명에서는 로봇(R), 클라우드 서버(20) 및 설비 제어 시스템(201a, 202a, 203a, 204a, …)이 설비 인프라를 이용하여 건물(1000) 내에서 다양한 서비스를 제공한다.
이 경우에, 로봇(R)은 주로 건물 내를 주행하여 다양한 서비스를 제공하게 된다. 이를 위하여, 로봇(R)은 바디부, 구동부, 센싱부, 통신부, 인터페이스부 및 전원공급부 중 적어도 하나를 구비할 수 있다.
바디부는 외관을 이루는 케이스(케이싱, 하우징, 커버 등)를 포함한다. 본 실시예에서, 케이스는 복수의 파트로 구분될 수 있으며, 케이스에 의하여 형성된 공간에는 각종 전자부품들이 내장된다. 이 경우에, 바디부는 본 발명에서 예시하는 다양한 서비스에 따라 서로 다른 형태로 이루어질 수 있다. 예를 들어, 배송 서비스를 제공하는 로봇의 경우에, 바디부의 상부에 물건을 보관하는 수용함이 구비될 수 있다. 다른 예로서, 청소 서비스를 제공하는 로봇의 경우에 바디부의 하부에 진공을 이용하여 먼지를 흡입하는 흡입구가 구비될 수 있다.
구동부는 클라우드 서버(20)에서 전송하는 제어 명령에 따른 특정 동작을 수행하도록 이루어진다.
구동부는 주행과 관련하여 로봇의 바디부가 특정 공간 내를 이동할 수 있는 수단을 제공한다. 보다 구체적으로, 구동부는 모터 및 복수의 바퀴를 포함하며, 이들이 조합되어, 로봇(R)을 주행, 방향 전환, 회전시키는 기능을 수행한다. 다른 예로서, 구동부는 주행 외의 다른 동작, 예를 들어 픽업 등의 수행을 위하여 엔드 이펙터, 매니퓰레이터, 액추에이터 중 적어도 하나를 구비할 수 있다.
센싱부는 로봇 내 정보(특히, 로봇의 구동상태), 로봇을 둘러싼 주변 환경 정보, 로봇의 위치 정보 및 사용자 정보 중 적어도 하나를 센싱하기 위한 하나 이상의 센서를 포함할 수 있다.
예를 들어, 센싱부는 카메라(이미지 센서), 근접 센서, 적외선 센서, 레이저 스캐너(라이다 센서), RGBD 센서, 지자기 센서, 초음파 센서, 관성 센서, UWB 센서 등을 구비할 수 있다.
로봇의 통신부는 로봇(R)과 건물의 통신부 사이, 로봇(R)과 다른 로봇의 사이, 또는 로봇(R)과 설비의 제어 시스템의 사이에서 무선 통신을 수행하기 위하여, 로봇에서 무선 신호를 송수신하도록 이루어진다. 이러한 예로서, 통신부는 무선 인터넷 모듈, 근거리 통신 모듈, 위치정보 모듈 등을 구비할 수 있다.
인터페이스부는 로봇(R)을 외부기기와 연결시킬 수 있는 통로로서 구비될 수 있다. 예를 들어, 상기 인터페이스부는 단자(충전단자, 접속단자, 전원단자), 포트 또는 커넥터 등이 될 수 있다. 전원공급부는 외부의 전원, 내부의 전원을 인가받아 로봇(R)에 포함된 각 구성요소들에 전원을 공급하는 장치가 될 수 있다. 다른 예로서, 전원공급부는 로봇(R)의 내부에서 전기에너지를 생성하여 각 구성요소에 공급하는 장치가 될 수 있다.
이상에서, 로봇(R)은 주로 건물 내를 주행하는 것을 기준으로 설명하였으나, 본 발명은 반드시 이에 한정되는 것은 아니다. 예를 들어, 본 발명의 로봇은 드론 등과 같이 건물 내를 비행하는 로봇의 형태도 가능하다. 보다 구체적으로, 안내 서비스를 제공하는 로봇이 건물 내에서 사람의 주변을 비행하면서 사람에게 건물에 대한 안내를 제공할 수 있다.
한편, 본 발명의 로봇의 전반적인 동작은 클라우드 서버(20)에 의하여 제어된다. 이에 더하여, 로봇은 클라우드 서버(20)의 하위 제어기로서, 제어부를 별도로 구비할 수 있다. 예를 들어, 로봇의 제어부는 클라우드 서버(20)로부터 주행에 대한 제어 명령을 수신하여 로봇의 구동부를 제어한다. 이 경우에, 제어부는 로봇의 센싱부에서 센싱한 데이터를 이용하여, 모터에 인가할 토크 또는 전류를 계산할 수 있다. 계산된 결과를 이용하여 위치 제어기, 속도 제어기, 전류 제어기 등에 의하여 모터 등을 구동하게 되며, 이를 통하여 클라우드 서버(20)의 제어명령을 로봇이 수행하게 된다.
한편, 본 발명에서 건물(1000)은 건물(1000)에 구비된 다양한 설비들과 통신하거나, 설비들을 직접적으로 제어하기 위한 건물 시스템(1000a)을 포함할 수 있다. 도 4 및 도 5에 도시된 것과 같이, 건물 시스템(1000a)은 통신부(110), 센싱부(120), 출력부(130), 저장부(140) 및 제어부(150) 중 적어도 하나를 포함할 수 있다.
통신부(110)는 건물(1000) 내에서 유선 통신망 및 무선 통신망 중 적어도 하나를 형성함으로써, i)클라우드 서버(20)와 로봇(R) 사이, ii)클라우드 서버(20)와 건물(1000) 사이, iii)클라우드 서버(20)와 설비 인프라(200) 사이, iv)설비 인프라(200)와 로봇(R) 사이, v)설비 인프라(200)와 건물(1000) 사이를 연결할 수 있다. 즉, 통신부(110)는 서로 다른 주체 간에 통신의 매개체 역할을 수행할 수 있다.
도 5 및 도 6에 도시된 것과 같이, 통신부(110)는 이동통신 모듈(111), 유선 인터넷 모듈(112), 무선 인터넷 모듈(113) 및 근거리 통신 모듈(114) 중 적어도 하나를 포함하도록 이루어질 수 있다.
통신부(110)는 위에서 열거된 통신 모듈들에 근거하여, 다양한 통신 방식을 지원할 수 있다.
예를 들어, 이동 통신 모듈(111)은, 이동 통신(Mobile Communications)을 위한 기술표준들 또는 통신방식(예를 들어, 5G, 4G, GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), CDMA2000(Code Division Multi Access 2000), EV-DO(Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등)에 따라 구축된 이동 통신망 상에서 건물 시스템(1000a), 클라우드 서버(20), 로봇(R) 및 설비 인프라(200) 중 적어도 하나와 무선 신호를 송수신하도록 이루어질 수 있다. 이 때에, 보다 구체적인 예로서, 로봇(R)은 전술한 로봇(R)의 통신부를 이용하여 이동 통신 모듈(111)과 무선 신호를 송수신할 수 있다.
다음으로, 유선 인터넷 모듈(112)은 유선 방식으로 통신을 제공하는 방식으로서, 물리적인 통신선을 매개체로 클라우드 서버(20), 로봇(R) 및 설비 인프라(200) 중 적어도 하나와 신호를 송수신 하도록 이루어질 수 있다.
나아가, 무선 인터넷 모듈(113)은 이동 통신 모듈(111)을 포함하는 개념으로서, 무선 인터넷 접속이 가능한 모듈을 의미할 수 있다. 무선 인터넷 모듈(113)은 건물(1000) 내에 배치되어, 무선 인터넷 기술들에 따른 통신망에서 건물 시스템(1000a), 클라우드 서버(20), 로봇(R) 및 설비 인프라(200) 중 적어도 하나와 무선 신호를 송수신하도록 이루어진다.
무선 인터넷 기술은 매우 다양할 수 있으며, 앞서 살펴본 이동 통신 모듈(111)의 통신 기술을 뿐만 아니라, 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) 등이 있다. 나아가, 본 발명에서는, 상기 무선 인터넷 모듈(113)은 상기에서 나열되지 않은 인터넷 기술까지 포함한 범위에서 적어도 하나의 무선 인터넷 기술에 따라 데이터를 송수신하게 된다.
다음으로 근거리 통신 모듈(114)은 근거리 통신(Short range communication)을 위한 것으로서, 블루투스(Bluetooth™), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra Wideband), ZigBee, NFC(Near Field Communication), Wi-Fi(Wireless-Fidelity), Wi-Fi Direct, Wireless USB(Wireless Universal Serial Bus) 기술 중 적어도 하나를 이용하여, 건물 시스템(1000a), 클라우드 서버(20), 로봇(R) 및 설비 인프라(200) 중 적어도 하나와 근거리 통신을 수행할 수 있다.
통신부(110)는 위에서 살펴본 통신 모듈들 중 적어도 하나를 포함할 수 있으며, 이러한 통신 모듈들은 건물(1000) 내부의 다양한 공간에 배치되어, 통신망을 형성할 수 있다. 이러한 통신망을 통해, i)클라우드 서버(20)와 로봇(R), ii)클라우드 서버(20)와 건물(1000), iii)클라우드 서버(20)와 설비 인프라(200, iv)설비 인프라(200)와 로봇(R), v)설비 인프라(200)와 건물(1000)은 상호 통신하도록 이루어질 수 있다.
다음으로, 건물(1000)은 센싱부(120)를 포함할 수 있으며, 이러한 센싱부(120)는 다양한 센서들을 포함하도록 이루어질 수 있다. 건물(1000)의 센싱부(120)를 통해 센싱된 정보 중 적어도 일부는, 통신부(110)를 통해 형성되는 통신망을 통해, 클라우드 서버(20), 로봇(R) 및 설비 인프라(200) 중 적어도 하나로 전송될 수 있다. 클라우드 서버(20), 로봇(R) 및 설비 인프라(200) 중 적어도 하나는, 센싱부(120)를 통해 센싱된 정보를 이용하여, 로봇(R)을 제어하거나 설비 인프라(200)를 제어할 수 있다.
센싱부(120)에 포함된 센서들의 종류는 매우 다양할 수 있다. 센싱부(120)는 건물(1000)에 구비되어, 건물(1000)에 대한 다양한 정보들을 센싱하도록 이루어질 수 있다. 센싱부(120)에 의해 센싱되는 정보는, 건물(1000)을 주행하는 로봇(R), 건물(1000)에 위치한 사람, 장애물, 등에 대한 정보일 수 있으며, 건물과 관련된 다양한 환경 정보(예를 들어, 온도, 습도 등)를 포함할 수 있다.
도 5에 도시된 것과 같이, 센싱부(120)는 이미지 센서(121), 마이크(122), 바이오 센서(123), 근접센서(124), 조도센서(125), 적외선 센서(126), 온도 센서(127) 및 습도 센서(128) 중 적어도 하나를 포함할 수 있다.
여기에서, 이미지 센서(121)는 카메라에 해당할 수 있다. 도 3에서 살펴본 것과 같이, 건물(1000)에는 이미지 센서(121)에 해당하는 카메라가 배치될 수 있다. 본 명세서에서는 카메라에 대하여 이미지 센서(121)와 동일한 도면 부호 “121”를 부여하기로 한다.
한편, 건물(1000)에 배치되는 카메라(121)의 수는 그 제한이 없다. 건물(1000)에 배치된 카메라(121)의 종류는 다양할 수 있으며, 일 예로서, 건물(1000)에 배치된 카메라(121)는 CCTV(closed circuit television)일 수 있다. 한편, 카메라(121)가 건물(1000)에 배치되었다 함은, 건물(1000)의 실내 공간(10)에 카메라(121)가 배치됨을 의미할 수 있다.
다음으로, 마이크(122)는 건물(1000)에서 발생하는 다양한 소리 정보를 센싱하도록 이루어질 수 있다.
바이오 센서(123)는 생체 정보를 센싱하기 위한 것으로서, 건물(1000)에 위치한 사람 또는 동물에 대한 생체 정보(예를 들어, 지문 정보, 얼굴 정보, 홍채 정보 등)를 센싱할 수 있다.
근접 센서(124)는 근접 센서(124)에 대해 접근하거나 근접 센서(124) 주변에 위치한 대상(로봇 또는 사람 등)을 센싱하도록 이루어질 수 있다.
나아가, 조도 센서(125)는 조도 센서(125) 센서 주변의 조도를 센싱하도록 이루어지며, 적외선 센서(126)는 적외선 센서(LED)가 내장되어 이를 이용해 어두운 실내나 야간에 건물(1000)에 대한 촬영을 수행할 수 있다.
나아가, 온도 센서(127)는 온도 센서(127) 주변의 온도를 센싱하며, 습도 센서(128)는 습도 센서(128) 주변의 온도를 센싱할 수 있다.
한편, 본 발명에서 센싱부(120)를 구성하는 센서의 종류에는 특별한 제한이 없으며, 각각의 센서에 의해 정의되는 기능이 구현되기만 하면 족하다.
다음으로, 출력부(130)는 건물(1000)에서 사람 또는 로봇(R)에게, 시각적, 청각적 및 촉각적 정보 중 적어도 하나를 출력하기 위한 수단으로서, 디스플레이부(131), 음향 출력부(132) 및 조명부(133) 중 적어도 하나를 포함할 수 있다. 이러한 출력부(130)는 필요 또는 상황에 따라 건물(1000)의 실내 공간 상에 적절한 위치에 배치될 수 있다.
다음으로, 저장부(140)는 건물(1000), 로봇 및 설비 인프라 중 적어도 하나와 관련된 다양한 정보를 저장하도록 이루어질 수 있다. 본 발명에서 저장부(140)는 건물(1000) 자체에 구비될 수 있다. 이와 다르게, 이와 다르게, 저장부(140)의 적어도 일부는, 클라우드 서버(20) 또는 외부 데이터베이스 중 적어도 하나를 의미할 수 있다. 즉, 저장부(140)는 본 발명에 따른 다양한 정보가 저장되는 공간이면 충분하며, 물리적인 공간에 대한 제약은 없는 것으로 이해될 수 있다.
다음으로 제어부(150)는 건물(1000)에 대한 전반적인 제어를 수행하는 수단으로서, 통신부(110), 센싱부(120), 출력부(130) 및 저장부(140) 중 적어도 하나를 제어할 수 있다. 제어부(150)는 클라우드 서버(20)와 연동하여, 로봇에 대한 제어를 수행할 수 있다. 나아가, 제어부(150)는 클라우드 서버(20)의 형태로 존재할 수 있다. 이 경우, 건물(1000)은 로봇(R)의 제어 수단인 클라우드 서버(20)에 의해 함께 제어될 수 있다, 이와 다르게, 건물(1000)을 제어하는 클라우드 서버는 로봇(R)을 제어하는 클라우드 서버(20)와 별개로 존재할 수 있다. 이 경우, 건물(1000)을 제어하는 클라우드 서버와 로봇(R)을 제어하는 클라우드 서버(20)는 상호 통신을 통하여, 로봇(R)에 의해 서비스 제공되도록 서로 연동하거나, 로봇의 이동, 기능 유지, 청결 유지 등을 위하여 서로 연동될 수 있다. 한편, 건물(1000)의 제어부는 “프로세서(processor)”로도 명명될 수 있으며, 프로세서는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 다양한 명령을 처리하도록 구성될 수 있다
이상에서 살펴본 것과 같이, 건물(1000), 로봇(R), 클라우드 서버(20) 및 설비 인프라(200)는 중 적어도 하나는 통신망을 기반으로 네트워크(40)를 형성하여, 건물(1000)내에서 로봇을 이용한 다양한 서비스가 제공되도록 이루어질 수 있다.
이상에서 살펴본 것과 같이, 본 발명에 따른 건물(1000)에서는, 로봇에 의해 다양한 서비스가 제공되도록, 로봇(R), 건물 내 구비되는 설비 인프라(200) 및 클라우드 서버(20)가 유기적으로 연결될 수 있다. 이러한 로봇(R), 설비 인프라(200) 및 클라우드 서버(20) 중 적어도 일부는 로봇 친화형 건물을 구축하기 위한 플랫폼 형태로 존재할 수 있다.
이하에서는, 위에서 살펴본 건물(1000), 건물 시스템(1000a), 설비 인프라(200), 클라우드 서버(20)의 내용을 참고하여, 로봇(R)이 설비 인프라(200)를 이용하는 과정에 대하여 보다 구체적으로 살펴본다. 이때, 로봇(R)은, 임무 수행(또는 서비스 제공), 주행, 충전, 청결 유지, 대기 등의 목적으로, 건물(1000)의 실내 공간(10)을 주행거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용할 수 있다.
이와 같이, 로봇(R)은 어떠한 “목적”에 근거하여, “목적”을 달성하기 위하여, 건물(1000)의 실내 공간을 주행하거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용할 수 있다.
이때, 로봇이 달성해야할 목적은 다양한 원인에 근거하여 특정될 수 있다. 로봇이 달성해야 할 목적은, 제1 타입의 목적과 제2 타입의 목적이 존재할 수 있다.
여기에서, 제1 타입의 목적은 로봇이 로봇 본연의 임무를 수행하기 위한 것이고, 제2 타입의 목적은 로봇이 로봇 본연의 임무 외의 임무 또는 기능을 수행하기 위한 것일 수 있다.
즉, 제1 타입에 따른 로봇이 달성해야하는 목적은, 로봇 본연의 임무를 수행하기 위한 목적일 수 있다. 이러한 목적은, 로봇의 “임무(task)”라고도 이해되어질 수 있다.
예를 들어, 로봇이 서빙 서비스를 제공하는 로봇인 경우, 로봇은 서빙 서비스를 제공하기 위한 목적 또는 임무을 달성하기 위하여, 건물(1000)의 실내 공간을 주행하거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용할 수 있다. 또한, 로봇이 길 안내 서비스를 제공하는 로봇인 경우, 로봇은 길 안내 서비스를 제공하기 위한 목적 또는 임무을 달성하기 위하여, 건물(1000)의 실내 공간을 주행하거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용할 수 있다.
한편, 본 발명에 따른 건물에는 서로 다른 목적에 따른 운용되는 복수의 로봇이 위치할 수 있다. 즉, 건물에는 서로 다른 임무를 수행가능한 서로 다른 로봇들이 배치될 수 있으며, 이는 건물의 관리자, 건물에 입주한 다양한 주체들의 필요에 의하여, 건물에는 서로 다른 종류의 로봇들이 배치될 수 있다.
예를 들어, 건물에는 배송, 물류 작업, 안내, 통역, 주차지원, 보안, 방범, 경비, 치안, 청소, 방역, 소독, 세탁, 음료 제조, 음식 제조, 서빙, 화재 진압, 의료 지원 및 엔터테인먼트 서비스 중 적어도 하나의 서비스를 제공하는 로봇들이 배치될 수 있다. 로봇들이 제공하는 서비스는 위에서 열거된 예들 외에도 다양할 수 있다.
한편, 제2 타입의 목적은 로봇이 로봇 본연의 임무 외의 임무 또는 기능을 수행하기 위한 것으로서, 이는, 로봇 본연의 임무와 관련 없는 목적일 수 있다. 이러한 제2 타입의 목적은, 로봇이 로봇 본연의 임무를 수행하는 것과 직접적으로 연관되지는 않으나, 간접적으로 필요한 임무 또는 기능일 수 있다.
예를 들어, 로봇이 본연의 임무 수행을 위해서는, 동작에 필요한 충분한 전원이 필요하고, 로봇이 사람들에게 쾌적한 서비스를 제공하기 위해서는 청결을 유지해야 한다. 나아가, 복수의 로봇이 건물 내에서 효율적으로 운용되기 위해서는, 때로는 일정한 공간에서 대기하는 상황이 존재할 수 있다.
이와 같이, 본 발명에서 로봇은 제2 타입의 목적을 달성하기 위하여, 건물(1000)의 실내 공간을 주행하거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용할 수 있다.
예를 들어, 로봇은 충전 기능에 따른 목적을 달성하기 위하여, 충전 설비 인프라를 이용할 수 있고, 세척 기능에 따른 목적을 달성하기 위하여 세척 설비 인프라를 이용할 수 있다.
이와 같이, 본 발명에서 로봇은 어떠한 목적을 달성하기 위하여, 건물(1000)의 실내 공간을 주행하거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용할 수 있다.
한편, 클라우드 서버(20)는 데이터베이스(database) 상에 저장된 건물에 위치한 복수의 로봇들 각각에 대응되는 정보에 근거하여, 건물 내 위치한 로봇들 각각에 대한 적절한 제어를 수행할 수 있다.
한편, 데이터베이스 상에는 건물 내 위치한 복수의 로봇 각각에 대한 다양한 정보가 저장될 수 있으며, 로봇(R)에 대한 정보는 매우 다양할 수 있다. 일 예로서, i)공간(10)에 배치된 로봇(R)을 식별하기 위한 식별 정보(예를 들어, 일련번호, TAG 정보, QR코드 정보 등), ii)로봇(R)에 부여된 임무 정보(예를 들어, 임무의 종류, 임무에 따른 동작, 임무의 대상이 되는 타겟 유저 정보, 임무 수행 장소, 임무 수행 예정 시간 등), iii)로봇(R)에 설정된 주행 경로 정보, iv)로봇(R)의 위치 정보, v)로봇(R)의 상태 정보(예를 들어, 전원 상태, 고장 유무, 세척 상태, 배터리 상태 등), vi)로봇(R)에 구비된 카메라로부터 수신된 영상 정보, vii) 로봇(R)의 동작과 관련된 동작 정보 등이 존재할 수 있다.
한편, 로봇들에 대한 적절한 제어는, 앞서 살펴본 제1 타입의 목적 또는 제2 타입의 목적에 따라 로봇을 운용하는 제어와 관련된 것일 수 있다.
여기에서, 로봇의 운용은 로봇이 건물(1000)의 실내 공간을 주행하거나, 설비 인프라(200)를 이용하여 이동하고, 나아가, 설비 인프라(200)를 이용하도록 하는 제어를 의미할 수 있다.
로봇의 이동은 로봇의 주행으로 지칭될 수 있으며, 따라서 본 발명에서 이동 경로와 주행 경로는 혼용되어 사용될 수 있다.
클라우드 서버(20)는 데이터베이스에 저장된 로봇 각각에 대한 정보에 근거하여, 로봇들 각각의 용도(또는 본연의 임무)에 따라 로봇들에게 적절한 임무를 할당하고, 할당된 임무가 수행되도록 로봇들에 대한 제어를 수행할 수 있다. 이때 할당되는 임무는 앞서 살펴본 제1 타입의 목적을 달성하기 위한 임무일 수 있다.
나아가, 클라우드 서버(20)는 데이터베이스에 저장된 로봇 각각에 대한 정보에 근거하여, 로봇들 각각에 제2 타입의 목적을 달성하기 위한 제어를 수행할 수 있다.
이때, 클라우드 서버(20)로부터 제2 타입의 목적을 달성하기 위한 제어명령을 수신한 로봇은, 제어 명령에 근거하여, 충전 설비 인프라로 이동하거나, 세척 설비 인프라 등으로 이동하여, 제2 타입의 목적을 달성할 수 있다.
한편, 이하에서는, 제1 타입 또는 제2 타입의 목적을 구분하지 않고, “목적” 또는 “임무”의 용어를 사용하도록 한다. 이하에서 설명되는 목적은, 제1 타입의 목적 또는 제2 타입의 목적 중 어느 하나일 수 있다.
마찬가지로, 이하에서 설명되는 임무 역시, 제1 타입의 목적을 달성하기 위한 임무 또는 제2 타입의 목적을 달성하기 위한 임무일 수 있다.
예를 들어, 서빙 서비스 제공이 가능한 로봇이 존재하고, 서빙할 대상(타겟 유저(target user))이 존재하는 경우, 클라우드 서버(20)는 로봇이 타겟 유저에게 서빙에 대항하는 임무를 수행하도록, 로봇에 대한 제어를 수행할 수 있다.
또 다른 예를 들어, 충전이 필요한 로봇이 존재하는 경우, 클라우드 서버(20)는 로봇이 충전에 해당하는 임무를 수행하도록, 충전 설비 인프라로 로봇이 이동하도록 하는 제어를 수행할 수 있다.
이에, 이하에서는, 제1 타입의 목적 또는 제2 타입의 목적에 대한 구분 없이, 클라우드 서버(20)의 제어 하에, 로봇이 설비 인프라(200)를 이용하여 목적 또는 임무을 수행하는 방법에 대하여 보다 구체적으로 살펴본다. 한편, 본 명세서에서 클라우드 서버(20)는 임무를 수행하기 위하여 클라우드 서버(20)에 의해 제어 되는 로봇은 “타겟 로봇”으로 명명되는 것 또한 가능하다.
클라우드서 서버(20)는 요청 또는 자체적인 판단하에, 임무를 수행할 적어도 하나의 로봇을 특정할 수 있다.
여기에서, 요청은 다양한 주체로부터 수신되는 것이 가능하다. 예를 들어, 클라우드 서버는 건물에 위치한 방문객, 관리자, 입주민, 근로자 등과 같은 다양한 주체로부터 다양한 방식(예를 들어, 전자기기를 통한 사용자 입력, 제스처 방식의 사용자 입력)으로 요청을 수신할 수 있다. 여기에서, 요청은 로봇에 의해 특정 서비스(또는 특정 임무)가 제공되도록 하는 서비스 요청일 수 있다.
클라우드 서버(20)는 이러한 요청에 기반하여, 건물(1000)내 위치한 복수의 로봇 중 해당 서비스를 수행 가능한 로봇을 특정할 수 있다. 클라우드 서버(20)는 i)로봇이 수행 가능한 서비스 종류, ii)로봇이 기 할당받은 임무, iii)로봇의 현재 위치, iv)로봇의 상태(ex: 전원 상태, 청결 상태, 배터리 상태 등)에 근거하여, 상기 요청에 대응 가능한 로봇을 특정할 수 있다. 앞서 살펴본 것과 같이, 데이터베이스 상에는 로봇 각각에 대한 다양한 정보 존재하며, 클라우드 서버(20)는 이러한 데이터베이스에 근거하여, 상기 요청에 기반하여 임무를 수행할 로봇을 특정할 수 있다.
나아가, 클라우드 서버(20)는 자체적인 판단에 근거하여, 임무를 수행할 적어도 하나의 로봇을 특정할 수 있다.
여기에서, 클라우드 서버(20)는 다양한 원인에 근거하여 자체적인 판단을 수행할 수 있다.
일 예로서, 클라우드 서버(20)는, 건물(1000)내에 존재하는 특정 사용자 또는 특정 공간에 서비스의 제공이 필요한지를 판단할 수 있다. 클라우드 서버(20)는 건물(1000)에 존재하는 센싱부(120, 도 4 내지 도 6 참조), 설비 인프라(200)에 포함된 센싱부 및 로봇에 구비된 센싱부 중 적어도 하나로부터 센싱 및 수신된 정보에 기반하여, 서비스의 제공이 필요한 특정 대상을 추출할 수 있다.
여기에서, 특정 대상은, 사람, 공간 또는 객체 중 적어도 하나를 포함할 수 있다. 객체는, 건물(1000)내 위치하는 시설물, 물체 등을 의미할 수 있다. 그리고, 클라우드 서버(20)는 추출된 특정 대상에게 필요한 서비스의 종류를 특정하고, 특정 대상에게 특정 서비스가 제공되도록 로봇을 제어할 수 있다.
이를 위하여, 클라우드 서버(20)는 특정 대상에게 특정 서비스를 제공할 적어도 하나의 로봇을 특정할 수 있다.
클라우드 서버(20)는 다양한 판단 알고리즘에 근거하여, 서비스의 제공이 필요한 대상을 판단할 수 있다. 예를 들어, 클라우드 서버(20)는 건물(1000)에 존재하는 센싱부(120, 도 4 내지 도 6 참조), 설비 인프라(200)에 포함된 센싱부 및 로봇에 구비된 센싱부 중 적어도 하나로부터 센싱 및 수신된 정보에 근거하여, 길 안내, 서빙, 계단 이동 등과 같이 서비스의 종류를 특정할 수 있다. 그리고, 클라우드 서버(20)는 해당 서비스가 필요한 대상을 특정할 수 있다. 나아가, 클라우드 서버(20)는 로봇에 의한 서비스가 제공이 제공되도록, 특정된 서비스의 제공이 가능한 로봇을 특정할 수 있다.
나아가, 클라우드 서버(20)는 다양한 판단 알고리즘에 근거하여, 서비스의 제공이 필요한 특정 공간을 판단할 수 있다. 예를 들어, 클라우드 서버(20)는 건물(1000)에 존재하는 센싱부(120, 도 4 내지 도 6 참조), 설비 인프라(200)에 포함된 센싱부 및 로봇에 구비된 센싱부 중 적어도 하나로부터 센싱 및 수신된 정보에 근거하여, 배송의 타겟 유저, 안내가 필요한 게스트, 오염된 공간, 오염된 시설물, 화재 구역 등과 같이 서비스의 제공이 필요한 특정 공간 또는 객체를 추출하고, 해당 특정 공간 또는 객체에 로봇에 의한 서비스가 제공되도록, 해당 서비스 제공이 가능한 로봇을 특정할 수 있다.
이와 같이, 특정 임무(또는 서비스)를 수행할 로봇이 특정되면, 클라우드 서버(20)는 로봇에 임무를 할당하고, 로봇이 임무를 수행하기 위하여 필요한 일련의 제어를 수행할 수 있다.
이때, 일련의 제어는 i)로봇의 이동 경로 설정, ii)임무가 수행될 목적지까지 이동하는데 이용되어야 할 설비 인프라 특정, iii)특정된 설비 인프라와의 통신, iv)특정된 설비 인프라에 대한 제어, v)임무를 수행하는 로봇 모니터링, vi)로봇의 주행에 대한 평가, vii)로봇의 임무 수행 완료여부 모니터링 중 적어도 하나를 포함할 수 있다.
클라우드 서버(20)는 로봇의 임무가 수행될 목적지를 특정하고, 로봇이 해당 목적지에 도달하기 위한 이동 경로를 설정할 수 있다. 로봇(R)은 클라우드 서버(20)에 의해 이동 경로가 설정되면, 임무의 수행을 위하여, 해당 목적지까지 이동하도록 제어될 수 있다.
한편, 클라우드 서버(20)는 로봇이 임무 수행을 시작(개시)하는 위치(이하, “임무 수행 시작 위치”로 명명함)부터 목적지까지 도달하기 위한 이동 경로를 설정할 수 있다. 여기에서, 로봇이 임무 수행을 시작하는 위치는 로봇의 현재 위치이거나, 로봇이 임무 수행을 시작하는 시점에서의 로봇의 위치일 수 있다.
클라우드 서버(20)는, 건물(1000)의 실내 공간(10)에 대응되는 지도(map, 또는 지도 정보))에 근거하여, 임무를 수행할 로봇의 이동 경로를 생성할 수 있다.
여기에서, 지도는, 건물의 실내 공간을 구성하는 복수의 층(10a, 10b, 10c, …) 각각의 공간에 대한 지도 정보를 포함할 수 있다.
나아가, 이동 경로는, 임무 수행 시작 위치로부터, 임무가 수행되는 목적지까지의 이동 경로 일 수 있다.
본 발명에서는 이러한 지도 정보와 이동 경로에 대하여, 실내 공간에 대한 것으로 설명하나, 본 발명은 반드시 이에 한정되는 것은 아니다. 예를 들어, 지도 정보는 실외 공간의 정보를 포함할 수 있으며, 이동 경로는 실내 공간에서 실외 공간까지 이어지는 경로가 될 수 있다.
도 8에 도시된 것과 같이, 건물(1000)의 실내 공간(10)은 서로 다른 복수의 층들(10a, 10b, 10c, 10d, …)로 구성될 수 있으며, 임무 수행 시작 위치와 목적지는 서로 동일한 층에 위치하거나, 서로 다른 층에 위치할 수 있다.
클라우드 서버(20)는 복수의 층들(10a, 10b, 10c, 10d, …)에 대한 지도 정보를 이용하여, 건물(1000) 내에서 서비스를 수행할 로봇의 이동 경로를 생성할 수 있다.
클라우드 서버(20)는 건물(1000)에 배치된 설비 인프라(복수의 설비) 중 로봇이 목적지까지 이동하기 위하여 이용 또는 통과해야 하는 적어도 하나의 설비를 특정할 수 있다.
예를 들어, 클라우드 서버(20)는 로봇이 1층(10a)에서 2층(10b)으로 이동해야 하는 경우, 로봇의 층간 이동을 보조할 적어도 하나의 설비(204, 205)를 특정하고, 특정된 설비가 위치한 지점을 포함하여 이동 경로를 생성할 수 있다. 여기에서, 로봇의 층간 이동을 보조하는 설비는 로봇 전용 엘리베이터(204), 공용 엘리베이터(213), 에스컬레이터(205) 중 적어도 하나일 수 있다. 이 밖에도, 로봇의 층간 이동을 보조하는 설비는 다양한 종류가 존재할 수 있다.
일 예로서, 클라우드 서버(20)는 실내 공간(10)의 복수의 층들(10a, 10b, 10c, …) 중 목적지에 해당하는 특정 층을 확인하고, 로봇의 임무 수행 시작 위치(ex: 서비스에 대응되는 임무를 개시하는 시점에서의 로봇의 위치)를 기준으로, 로봇이 서비스를 수행하기 위하여 층간 이동이 필요한지 판단할 수 있다.
그리고, 클라우드 서버(20)는 판단 결과에 근거하여, 상기 이동 경로 상에 로봇의 층간 이동을 보조하는 설비(수단)를 포함할 수 있다. 이때, 로봇의 층간 이동을 보조하는 설비는 로봇 전용 엘리베이터(204), 공용 엘리베이터(213), 에스컬레이터(205) 중 적어도 하나일 수 있다. 예를 들어, 클라우드 서버(20)는 로봇의 층간 이동이 필요한 경우, 로봇의 층간 이동을 보조하는 설비가 로봇의 이동 경로 상에 포함되도록, 이동 경로를 생성할 수 있다.
또 다른 예를 들어, 클라우드 서버(20)는 로봇의 이동 경로 상에 로봇 전용 통로(201, 202)가 위치하는 경우, 로봇 전용 통로(201, 202)를 이용하여 로봇이 이동하도록, 로봇 전용 통로(201, 202)가 위치한 지점을 포함하여 이동 경로를 생성할 수 있다. 앞서 도 3과 함께 살펴본 것과 같이, 로봇 전용 통로는 제1 전용 통로(또는 제1 타입 통로, 201) 및 제2 전용 통로(또는 제2 타입 통로, 202) 중 적어도 하나로 이루어질 수 있다. 제1 전용 통로 및 제2 전용 통로(201, 202)는 동일 층에 함께 구비되거나, 서로 다른 층에 구비될 수 있다. 제1 전용 통로(201) 및 상기 제2 전용 통로(202)는 건물의 바닥면을 기준으로 서로 다른 높이를 가질 수 있다.
한편, 클라우드 서버(20)는 로봇이 이용하는 로봇 전용 통로의 타입 및 로봇 전용 통로 주변의 혼잡도에 근거하여, 로봇 전용 통로 상에서의 로봇의 주행 특성이 달라지도록 제어할 수 있다. 클라우드 서버(20)는 도 3 및 도 8에 도시된 것과 같이, 제2 전용 통로를 로봇이 주행하는 경우, 로봇 전용 통로 주변의 혼잡도에 근거하여, 로봇의 주행 특성이 달라지도록 할 수 있다. 제2 전용 통로는, 사람 또는 동물이 접근 가능한 통로이기 때문에, 안전성 및 이동 효율성을 함께 고려하기 위함이다.
여기에서, 로봇의 주행 특성은, 로봇의 주행 속도와 관련될 수 있다. 나아가, 혼잡도는, 건물(1000)에 배치된 카메라(또는 이미지 센서, 121) 및 로봇에 배치된 카메라 중 적어도 하나로부터 수신되는 영상에 근거하여 산출될 수 있다. 클라우드 서버(20)는 이러한 영상에 근거하여, 로봇이 위치하는 지점 및 진행방향 측의 로봇 전용 통로가 혼잡한 경우, 로봇의 주행 속도를 기 설정된 속도 이하(또는 미만)으로 제어할 수 있다.
이와 같이, 클라우드 서버(20)는 복수의 층들(10a, 10b, 10c, 10d, …)에 대한 지도 정보를 이용하여, 건물(1000) 내에서 서비스를 수행할 로봇의 이동 경로를 생성하며, 이때, 건물(1000)에 배치된 설비 인프라(복수의 설비) 중 로봇이 목적지까지 이동하기 위하여 이용 또는 통과해야 하는 적어도 하나의 설비를 특정할 수 있다. 그리고, 특정된 적어도 하나의 설비가 이동 경로 상에 포함되도록 하는 이동 경로를 생성할 수 있다.
한편, 서비스를 수행하기 위하여 실내 공간(10)을 주행하는 로봇은 클라우드 서버(20)로부터 수신되는 이동 경로를 따라 상기 적어도 하나의 설비를 순차적으로 이용 또는 통과하며 목적지까지 주행을 수행할 수 있다.
한편, 로봇이 이용해야 하는 설비의 순서는, 클라우드 서버(20)의 제어 하에 결정될 수 있다. 나아가, 로봇이 이용해야 하는 설비의 순서는, 클라우드 서버(20)로부터 수신되는 이동 경로에 대한 정보에 포함될 수 있다.
한편, 도 7에 도시된 것과 같이, 건물(1000)에는 로봇이 전용하여 사용하는 로봇 전용 설비(201, 202, 204, 208, 209, 211)와 사람과 공동으로 사용하는 공용 설비(205, 206, 207, 213) 중 적어도 하나가 포함될 수 있다.
로봇이 전용하여 사용하는 로봇 전용 설비는, 로봇에 필요한 기능(ex: 충전 기능, 세척 기능, 대기 기능)을 제공하는 설비(208. 209)와 로봇의 이동에 이용되는 설비(201, 202, 204, 211)를 포함할 수 있다.
클라우드 서버(20)는, 로봇이 이동 경로를 생성함에 있어, 임무 수행 시작 위치로부터 목적지까지의 경로 상에, 로봇 전용 설비가 존재하는 경우, 로봇이 로봇 전용 설비를 이용하여 이동(또는 통과)하도록 하는 이동 경로를 생성할 수 있따. 즉, 클라우드 서버(20)는 로봇 전용 설비를 우선하여 이동 경로를 생성할 수 있다. 이는 로봇의 이동의 효율성을 높이기 위함이다. 예를 들어, 클라우드 서버(20)는 목적지까지의 이동 경로 상에 로봇 전용 엘리베이터(204)와 공용 엘리베이터(213)가 모두 존재하는 경우, 로봇 전용 엘리베이터(204)가 포함된 이동 경로를 생성할 수 있다.
위에서 살펴본 것과 같이, 본 발명에 따른 건물(1000)을 주행하는 로봇은, 건물(1000)에 구비된 다양한 설비를 이용하여, 임무 수행을 위하여 건물(1000)이 실내 공간을 주행할 수 있다.
클라우드 서버(20)는 로봇의 원활할 이동을 위하여, 로봇이 이용하는 또는 이용이 예정된 적어도 하나의 설비의 제어 시스템(또는 제어 서버)와 통신하도록 이루어질 수 있다. 앞서, 도 4와 함께 살펴본 것과 같이, 설비들을 제어하기 위한 고유의 제어 시스템들은 클라우드 서버(20), 로봇(R), 건물(1000) 중 적어도 하나와 통신하여, 로봇(R)이 설비를 이용하도록 각각의 설비에 대한 적절한 제어를 수행할 수 있다.
한편, 클라우드 서버(20)는 건물(1000) 내에서 로봇의 위치 정보를 확보해야 하는 니즈가 존재한다. 즉, 클라우드 서버(200은 실시간 또는 기 설정된 시간 간격으로 건물(1000)을 주행하는 로봇의 위치를 모니터링할 수 있다. 클라우드 서버(1000은 건물(1000)을 주행하는 복수의 로봇 모두에 대한 위치 정보를 모니터링하거나, 필요에 따라 선택적으로 특정 로봇에 대해서만 위치 정보를 모니터링할 수 있다. 모니터링 되는 로봇의 위치 정보는 로봇의 정보가 저장된 데이터베이스 상에 저장될 수 있으며, 로봇의 위치 정보는 시간의 흐름에 따라 연속적으로 업데이트될 수 있다.
건물(1000)에 위치한 로봇의 위치 정보를 추정하는 방법은 매우 다양할 수 있으며, 이하에서는 로봇의 위치 정보를 추정하는 실시 예에 대하여 살펴보도록 한다.
도 9 내지 도 11은 본 발명에 따른 로봇 친화형 건물을 주행하는 로봇의 위치를 추정하는 방법을 설명하기 위한 개념도들이다.
일 예로서, 도 9에 도시된 것과 같이, 본 발명에 따른 클라우드 서버(20)는 로봇(R)에 구비된 카메라(미도시됨)를 이용하여 공간(10)에 대한 영상을 수신하고, 수신된 영상으로부터 로봇의 위치를 추정하는 Visual Localization수행하도록 이루어진다. 이때, 카메라는 공간(10)에 대한 영상, 즉, 로봇(R) 주변에 대한 영상을 촬영(또는 센싱)하도록 이루어진다. 이하에서는, 설명의 편의를 위하여, 로봇(R)에 구비된 카메라를 이용하여 획득된 영상을 “로봇 영상”이라고 명명하기로 한다. 그리고, 공간(10)에 배치된 카메라를 통하여 획득된 영상을 “공간 영상”이라고 명명하기로 한다.
클라우드 서버(20)는 도 9의 (a)에 도시된 것과 같이, 로봇(R)에 구비된 카메라(미도시)를 통하여 로봇 영상(910)을 획득하도록 이루어진다. 그리고, 클라우드 서버(20)는 획득된 로봇 영상(910)을 이용하여, 로봇(R)의 현재 위치를 추정할 수 있다.
클라우드 서버(20)는 로봇 영상(910)과 데이터베이스에 저장된 지도 정보를 비교하여, 도 9의 (b)에 도시된 것과 같이, 로봇(R)의 현재 위치에 대응하는 위치 정보(예를 들어, “3층 A구역 (3, 1, 1)”)를 추출할 수 있다.
앞서 살펴본 것과 같이, 본 발명에서 공간(10)에 대한 지도는 사전에 공간(10)을 이동하는 적어도 하나의 로봇에 의해, SLAM(Simultaneous Localization and Mapping)에 기반하여 작성된 지도일 수 있다. 특히, 공간(10)에 대한 지도는, 영상 정보를 기반으로 생성된 지도일 수 있다.
즉, 공간(10)에 대한 지도는 vision(또는 visual)기반의 SLAM기술에 의하여 생성된 지도일 수 있다.
따라서, 클라우드 서버(20)는 로봇(R)에서 획득된 로봇 영상(910)에 대해 도 9의 (b)에 도시된 것과 같이 좌표 정보(예를 들어, (3층, A구역(3, 1,1,))를 특정할 수 있다. 이와 같이, 특정된 좌표 정보는 곧, 로봇(R)의 현재 위치 정보가 될 수 있다.
이때, 클라우드 서버(20)는, 로봇(R)에서 획득된 로봇 영상(910)과 vision(또는 visual)기반의 SLAM 기술에 의하여 생성된 지도를 비교함으로써, 로봇(R)의 현재 위치를 추정할 수 있다. 이 경우, 클라우드 서버(20)는 i)로봇 영상(910)과 기 생성된 지도를 구성하는 이미지들 간의 이미지 비교를 이용하여, 로봇 영상(910)과 가장 비슷한 이미지를 특정하고, ii)특정된 이미지에 통신적으로 연결된 위치 정보를 획득하는 방식으로 로봇(R)의 위치 정보를 특정할 수 있다.
이와 같이, 클라우드 서버(20)는 도 9의 (a)에 도시된 것과 같이, 로봇(R)에서 로봇 영상(910)이 획득되면, 획득된 로봇 영상(910)을 이용하여, 로봇의 현재 위치를 특정할 수 있다. 앞서 살펴본 것과 같이, 클라우드 서버(20)는 데이터베이스에 기 저장된 지도 정보(예를 들어, “참조 맵”으로도 명명 가능)로부터, 상기 로봇 영상(910)에 대응되는 위치 정보(예를 들어, 좌표 정보)를 추출할 수 있다.
한편, 위의 설명에서는, 클라우드 서버(20)에서 로봇(R)의 위치를 추정하는 예에 대하여 설명하였으나, 앞서 살펴본 것과 같이, 로봇(R)의 위치 추정은 로봇(R) 자체에서 이루어질 수 있다. 즉, 로봇(R)은 로봇(R) 자체에서 수신되는 영상에 근거하여, 앞서 살펴본 방식으로 현재 위치를 추정할 수 있다. 그리고, 로봇(R)은, 추정된 위치 정보를 클라우드 서버(20)에 전송할 수 있다. 이 경우, 클라우드 서버(20)는 로봇으로부터 수신되는 위치 정보에 기반하여, 일련의 제어를 수행할 수 있다.
이와 같이, 로봇 영상(910)으로부터 로봇(R)의 위치 정보가 추출되면, 클라우드 서버(20)는 상기 위치 정보와 대응되는 실내 공간(10)에 배치된 적어도 하나의 카메라(121)를 특정할 수 있다. 클라우드 서버(20)는 데이터베이스에 저장된 카메라(121)와 관련된 매칭 정보로부터, 상기 위치 정보에 대응되는 실내 공간(10)에 배치된 카메라(121)를 특정할 수 있다.
이러한 영상들은, 로봇의 위치 추정 뿐만 아니라, 로봇에 대한 관제에도 활용될 수 있다. 예를 들어, 클라우드 서버(20)는, 로봇(R)의 관제를 위하여, 로봇(R) 자체에서 획득되는 로봇 영상(910) 및 로봇(R)이 위치한 공간에 배치된 카메라(121)로부터 획득된 영상을 관제 시스템의 디스플레이부에 함께 출력시킬 수 있다. 따라서, 건물(1000) 내에서 또는 외부에서 로봇(R)을 원격으로 관리 및 제어하는 관리자가, 로봇(R)에서 획득되는 로봇 영상(910) 뿐만 아니라, 로봇(R)이 위치한 공간에 대한 영상을 고려하여 로봇(R)에 대한 원격 제어를 수행하도록 할 수 있다.
다른 예로서, 실내 공간(10)을 주행하는 로봇의 위치 추정은, 도 10의 (a)에 도시된 것과 같이, 실내 공간(10)에 구비된 태그(1010)에 기반하여 이루어질 수 있다.
도 10을 참조하면, 태그(1010)에는 도 10의 (b)에 도시된 것과 같이, 태그(1010)가 부착된 지점에 대응되는 위치 정보가 매칭되어 존재할 수 있다. 즉, 건물(1000)의 실내 공간(10)의 서로 다른 복수의 지점에는 서로 다른 식별 정보를 갖는 태그(1010)들이 각각 구비될 수 있다. 태그 각각의 식별 정보 및 태그가 부착된 지점의 위치 정보는 서로 매칭되어, 데이터베이스 상에 존재할 수 있다.
나아가, 태그(1010)에는, 각각의 태그(1010)에 통신적으로 연결된 위치 정보를 포함하도록 이루어질 수 있다.
로봇(R)은 로봇(R)에 구비된 센서를 이용하여, 공간(10)에 구비된 태그(1010)를 인식할 수 있다. 이러한 인식을 통해, 로봇(R)은 태그(1010)에 포함된 위치 정보를 추출함으로써, 로봇(R)의 현재 위치를 파악할 수 있다. 이러한 추출된 위치 정보는 통신부(110)를 통해, 로봇(R)에서 클라우드 서버(20)로 전송될 수 있다. 따라서, 클라우드 서버(20)는 태그를 센싱한 로봇(R)으로부터 수신된 위치 정보에 근거하여, 건물(20)을 주행하는 로봇들의 위치를 모니터링할 수 있다.
나아가, 로봇(R)은 인식된 태그(1010)의 식별 정보를, 클라우드 서버(20)로 전송할 수 있다. 클라우드 서버(20)는 데이터베이스로부터, 태그(1010)의 식별 정보에 통신적으로 연결된 위치 정보를 추출하여, 건물(1000) 내에서 로봇의 위치를 모니터링할 수 있다.
한편, 위에서 설명한 태그(1010)의 용어는 다양하게 명명될 수 있다. 예를 들어, 이러한 태그(1010)는 QR코드, 바코드, 식별 표지 등으로 다양하게 명명되는 것이 가능하다. 한편, 위에서 살펴본 태그의 용어는 “마커(marker)”로 대체되어 사용되어질 수 있다.
이하에서는, 건물(1000)의 실내 공간(10)에 위치한 로봇(R)의 위치를 모니터링 하는 방법 중 로봇(R)에 구비된 식별 표지를 이용하여, 로봇(R)을 모니터링 하는 방법에 대하여 살펴본다.
앞서, 데이터베이스에는, 로봇(R)에 대한 다양한 정보가 저장될 수 있음을 살펴보았다. 로봇(R)에 대한 다양한 정보는 실내 공간(10)에 위치한 로봇(R)을 식별하기 위한 식별 정보(예를 들어, 일련번호, TAG 정보, QR코드 정보 등),를 포함할 수 있다.
한편, 로봇(R)의 식별 정보는 도 11에 도시된 것과 같이, 로봇(R)에 구비된 식별 표지(또는 식별 마크)에 포함될 수 있다. 이러한 식별 표지는 건물 제어 시스템(1000a), 설비 인프라(200)에 의하여 센싱되거나, 스캔되는 것이 가능하다. 도 11의 (a), (b) 및 (c)에 도시된 것과 같이, 로봇(R)의 식별 표지(1101. 1102. 1103)는 로봇의 식별 정보를 포함할 수 있다. 도시와 같이, 식별 표지(1101. 1102. 1103)는 바코드 (barcode, 1101), 일련 정보(또는 시리얼 정보, 1102), QR코드(1103), RFID태그(미도시됨) 또는 NFC 태그(미도시됨) 등으로 나타내어 질 수 있다. 바코드 (barcode, 1101), 일련 정보(또는 시리얼 정보, 1102), QR코드(1103), RFID태그(미도시됨) 또는 NFC 태그(미도시됨) 등은 식별 표지가 구비된(또는 부착된) 로봇의 식별 정보를 포함하도록 이루어질 수 있다.
로봇의 식별 정보는, 로봇 각각을 구분하기 위한 정보로서, 동일한 종류의 로봇이더라도, 서로 다른 식별 정보를 가질 수 있다. 한편, 식별 표지를 구성하는 정보는, 위에서 살펴본 바코드, 일련 정보, QR코드, RFID태그(미도시됨) 또는 NFC 태그(미도시됨) 외에도 다양하게 구성될 수 있다.
클라우드 서버(20)는 실내 공간(10)에 배치된 카메라, 다른 로봇에 구비된 카메라, 또는 설비 인프라에 구비된 카메라로부터 수신되는 영상으로부터 로봇(R)의 식별 정보를 추출하여, 실내 공간(10)에서 로봇의 위치를 파악하고, 모니터링할 수 있다. 한편, 식별 표지를 센싱하는 수단은 반드시 카메라에 한정될 필요 없으며, 식별 표지의 형태에 따라 센싱부(예를 들어, 스캔부)가 이용될 수 있다. 이러한 센싱부는, 실내 공간(10), 로봇들 및 설비 인프라(200) 중 적어도 하나에 구비될 수 있다.
일 예로서, 카메라에서 촬영된 영상으로부터 식별 표지가 센싱된 경우, 클라우드 서버(20)는 카메라로부터 수신되는 영상으로부터 로봇(R)위 위치를 파악할 수 있다. 이때, 클라우드 서버(20)는 카메라가 배치된 위치 정보 및 영상에서의 로봇의 위치 정보(정확하게는, 로봇를 피사체하여 촬영된 영상에서, 로봇에 대응되는 그래픽 객체의 위치 정보) 중 적어도 하나에 근거하여, 로봇(R)이 위치를 파악할 수 있다.
데이터베이스 상에는, 실내 공간(10)에 배치된 카메라에 대한 식별 정보와 함께, 카메라가 배치된 장소에 대한 위치 정보가 매칭되어 존재할 수 있다. 따라서, 클라우드 서버(20)는 영상을 촬영한 카메라의 식별정보와 통신적으로 연결된 위치 정보를 데이터베이스로부터 추출하여, 로봇(R)이 위치정보를 추출할 수 있다.
다른 예로서, 스캔부에 의해 식별 표지가 센싱된 경우, 클라우드 서버(20)는 스캔부로터 센싱된 스캔 정보로부터 로봇(R)위 위치를 파악할 수 있다. 데이터베이스 상에는, 실내 공간(10)에 배치된 스캔부에 대한 식별 정보와 함께, 스캔부가 배치된 장소에 대한 위치 정보가 매칭되어 존재할 수 있다. 따라서, 클라우드 서버(20)는 로봇에 구비된 식별 표지를 스캔한 스캔부에 통신적으로 연결된 위치 정보를 데이터베이스로부터 추출하여, 로봇(R)이 위치정보를 추출할 수 있다.
위에서 살펴본 것과 같이, 본 발명에 따른 건물에서는, 건물에 구비된 다양한 인프라를 이용하여, 로봇의 위치를 추출하고, 모니터링하는 것이 가능하다. 나아가, 클라우드 서버(20)는 이러한 로봇의 위치를 모니터링 함으로써, 건물 내에서 로봇을 효율적이고, 정확하게 제어하는 것이 가능하다.
한편, 도 12는 경량화된 로봇을 제어하는 로봇 제어 시스템 및 방법을 설명하기 위한 개념도이다. 본 발명에서 로봇 제어 시스템은, “서버”, “로봇 제어 서버” “클라우드 서버” 또는 “브레인리스 서버”로도 명명 가능하다. 이러한 서버들은, 로봇 제어 시스템의 기능을 모두 수행할 수 있다.
도 12의 (b)에 도시된 것과 같이, 본 발명은 로봇(R)에서 임무를 수행하기 위한 다양한 기능(“Function 1 내지 3”)의 처리를 로봇 제어 시스템에서 수행하여, 복수의 로봇(R1, R2, R3)에 대한 원격 제어를 수행하는 제어 시스템(1300) 및 방법에 관한 것이다.
여기에서 “기능”은, 로봇의 작업, 동작, 조작 또는 이들의 일부를 의미하는 것으로, 로봇(R)에 할당된 임무 또는 로봇(R)의 상황에 따라 다양할 수 있다.
예를 들어, 로봇(R)에 할당된 임무가 “배송”인 경우, 로봇(R)의 기능은 “주행”, “오브젝트 전달 모션(motion)”이 로봇(R)의 기능에 해당할 수 있다.
그리고, “주행”기능에 필요한 “측위”, “이동 계획”, “경로 설정”, “주행 모드 설정”, “장애물 회피”, “로봇(R)의 주행부 조작”등은, “주행” 기능에 대한 “로봇의 서브 기능”에 해당할 수 있다.
이와 같이, 본 발명에서 설명되는 로봇의 기능은 종류 및 범위가 매우 다양할 수 있다. 이에, 이하에서는 로봇(R)의 작업, 동작, 조작 또는 이들의 일부에 대한 종류 및 범위를 구분하지 않고, 이들을 모두 “기능”, “로봇 기능” 또는 “단위 기능”으로 명명하여 설명하도록 한다.
도 12의 (b)에 도시된 것과 같이, 본 발명에 따른 제어 시스템(1300)은, 다양한 기능(ex: “Function 1 내지 3”)에 대한 데이터 처리를 직접 수행하여, 복수의 로봇(R1, R2, R3)을 원격으로 제어함으로써, 로봇(R)에 다양한 기능을 수행하기 위한 처리부(또는 연산부)가 없더라도, 로봇(R)에서 다양한 임무를 수행하도록 제어할 수 있다.
본 발명에서 설명되는 “로봇(R)”은, 로봇(R) 내부 자체에 특정 기능을 위한 자원이 임베디드(embedded)되어 있지 않은 로봇(R)일 수 있으며, 이러한 특정 기능은 제어 시스템(1300)에서 수행되어, 수행된 결과 또는 수행된 결과에 따른 제어명령이 로봇(R)으로 전달될 수 있다.
즉, 본 발명에 따른 제어 시스템(1300) 에서는, 도 12의 (a)에 도시된 것과 같이, 로봇(R1, R2, R3) 각각의 내부에, 기능(ex: “Function 1 내지 3”) 실행을 위한 자원(1210 내지, 1230)이 임베디드(embedded)되어 존재하지 않더라도, 로봇(R)에서 상기 자원이 임베디드 된 로봇(R)과 동일한 기능이 구현되도록 제어할 수 있다.
따라서, 본 발명에서는 로봇(R)이, 로봇(R) 내부에 자원이 임베디드 된 특정 단위 기능에 한정되지 않고, 다양한 기능을 수행하도록 제어함으로써, 로봇(R)의 역할을 확장할 수 있다.
나아가, 본 발명에 따른 제어 시스템(1300)은, 복수의 로봇(R1, R2, R3)을 제어함에 있어서, 복수의 로봇(R1, R2, R3)에 대한 기능 수행이, 동시적 및 한시적으로 이루어지도록 자원을 할당함으로써, 특정 로봇(R)에 종속되지 않고 유연한 데이터 처리가 이루어질 수 있다.
즉, 본 발명에 따른 제어 시스템(1300)은, 특정 자원에 종속적으로 자원을 할당하는 것이 아닌, 복수의 로봇(R1, R2, R3) 상황에 따라 기능을 동적으로 생성하고, 생성된 기능을 수행하기 위한 자원(ex: 리소스, 메모리 등)을 할당할 수 있다.
본 발명에서 설명하는 “자원”은, 소프트웨어의 실행 및 작업을 위해 이용되는 컴퓨터 시스템, 운영 체제의 기구나 기능의 총칭으로 이해될 수 있다. 이러한 자원에는, 메모리 자원, 연산 자원, 타이머 자원, 제어 프로그램 자원 등을 포함할 수 있다.
본 발명에서는, “자원”을, “컴퓨팅(computing) 자원”과 혼용하여 사용할 수 있다. 그리고, 본 발명에서는 설명의 편의를 위하여, “메모리 자원”을 예로 설명할 수 있으나, 이는 메모리 자원에 한정되지 않고 컴퓨팅 자원을 의미하는 것으로 이해됨은 당연하다.
이하에서는 첨부된 도면과 함께, 동적 구조를 가지는 제어 시스템(1300)에 대해 보다 구체적으로 설명하도록 한다. 도 13은 본 발명에 따른 로봇 제어 시스템을 설명하기 위한 개념도이다. 도 14는 본 발명에 따른 로봇 제어 시스템의 확장을 설명하기 위한 개념도이고, 도 15는 본 발명에 따른 로봇 제어 방법을 설명하기 위한 흐름도이고, 도 16a, 도 16b, 도 16c, 도 16d및 도 16e는 로봇 제어를 위한 기능 관리를 설명하기 위한 개념도들이며, 도 17a 및 도 17b는 로봇의 주행 제어를 위한 기능 관리를 설명하기 위한 개념도들이다.
도 13에 도시된 것과 같이, 본 발명에 따른 제어 시스템(1300)은, 원격 어댑터부(1310), 기능 관리부(1320), 메시징부(또는 메시지부, 1330), 지도 정보 저장부(1340), 측위부(1350) 및 모션 플랜부(1360) 중 적어도 하나를 포함할 수 있다.
한편, 도 14에 도시된 것과 같이, 본 발명에 따른 제어 시스템(1300’)은, 실시간으로 로봇에 대한 제어를 수행하는 실시간 로봇 제어 시스템(1300a, ex: 엣지 서버) 및 데이터 기반으로 로봇에 대한 제어를 수행하는 데이터 기반 로봇 제어 시스템(1300b) 중 적어도 하나를 포함할 수 있다.
예를 들어, 실시간 로봇 제어 시스템(1300a)은, 엣지 서버(Edge Sever)이며, 데이터 기반 로봇 제어 시스템(1300b)은, 클라우드 서버(Cloud Sever)일 수 있다.
실시간 로봇 제어 시스템(1300a) 및 데이터 기반 로봇 제어 시스템(1300b) 각각에서는, 이하에서 설명하는 구성들에 의해 로봇에 대한 제어를 수행할 수 있다. 이하에서는 설명의 편의를 위하여, 실시간 로봇 제어 시스템(1300a) 및 데이터 기반 로봇 제어 시스템(1300b)를 구분하지 않고, 도 13과 함께 본 발명에 따른 제어 시스템(1300)에 대해 설명하도록 한다.
원격 어댑터부(1310)는, 복수의 로봇(R1, R2, R3) 중 적어도 하나와 통신을 수행하는 것으로서, 복수의 원격 어댑터(remote adapter, 1311, 1312, 1313)를 포함할 수 있다.
복수의 원격 어댑터(1311, 1312, 1313)는 복수의 로봇(R1, R2, R3)과 일대일 매칭되도록 구성되거나, 상황에 따라, 랜덤하게 복수의 로봇(R1, R2, R3) 중 적어도 하나와 통신적으로 연결될 수 있다.
복수의 원격 어댑터(1311, 1312, 1313) 각각은, 통신 연결된 로봇(R)에 할당된 임무를 수행하기 위하여, 상기 로봇(R)에서 요구되는 기능에 따라 상기 로봇(R)을 제어하기 위한 일련의 절차를 수행할 수 있다.
본 발명에서, 복수의 원격 어댑터(1311, 1312, 1313) 각각은, 통신적으로 연결된 로봇(R)이, 로봇(R)에 할당된 임무를 수행하도록 제어하는 조율자 역할을 수행할 수 있다.
이하에서는, 설명의 편의를 위하여, 제1 원격 어댑터(1311)가, 통신적으로 연결된 제1 로봇(R1)이, 제1 로봇(R)에 할당된 임무를 수행하도록, 제1 로봇(R)을 제어하기 위하여 수행하는 일련의 절차를 예로 들어 설명하도록 한다.
본 발명에서, 제1 원격 어댑터(1311) 및 제1 로봇(R1)을 예로 들어 설명하는 내용들은, 복수의 다른 원격 어댑터 및 상기 복수의 다른 원격 어댑터와 통신적으로 연결되는 로봇에 적용 가능할 수 있다. 그리고, 제1 원격 어댑터(1311) 용어는, “원격 어댑터”로 혼용하여 사용 가능하며, “제1 로봇”의 용어는, 로봇으로 혼용하여 사용 가능함은 물론이다.
본 발명에서는, 로봇에 구비된 로컬 어댑터(local adapter)와 원격 어댑터(remote adapter)가 통신적으로 연결되는 과정이 진행될 수 있다(S1510, 도 15 참조). 제1 원격 어댑터(1311)는, 통신적으로 연결된 제1 로봇(R1)으로부터 제1 로봇(R1)의 로봇 데이터를 수신할 수 있다.
여기에서, “로봇 데이터”는, 로봇(R)과 관련된 다양한 정보로 이해될 수 있다. 예를 들어, 로봇 데이터는, i) 로봇의 식별 정보(로봇의 ID, 시리얼 넘버, 로봇에 할당된 임무 정보 등), ii) 로봇의 상태 정보(ex: 배터리 상태 정보, 구동 상태 정보 등) 및 iii) 로봇에 구비된 센싱 모듈(ex: 카메라)에서 센싱(또는 수집)된 센싱 정보(ex: 영상 정보) 중 적어도 하나를 포함할 수 있다.
제1 원격 어댑터(1311)는, 제1 로봇(R1)에 구비된 로컬 어댑터(local adapter , A1)로부터 로봇 데이터를 수신하거나, 링크부(도 13에서 도면부호 1370 참조)를 통해 로봇 데이터를 수신할 수 있다.
여기에서, 링크부(1370)는, 제1 원격 어댑터(1311)와, 제1 로봇(R1)을 통신적으로 연결하여 정보(데이터)를 전달하는 통로 역할을 수행하는 것으로 이해될 수 있다.
링크부(1370)는, 제1 원격 어댑터(1311)와 통신적으로 연결된 제1 로봇(R1)의 로컬 어댑터(A1)로부터 제1 로봇(R1)의 로봇 데이터를 수신하면, 제1 로봇(R1)의 로봇 데이터에 포함된 정보(ex: 식별 정보)에 근거하여, 복수의 원격 어댑터(1311, 1312, 1313) 중 제1 원격 어댑터(1311)로 제1 로봇(R1)의 로봇 데이터를 전송(전달)할 수 있다.
나아가, 링크부(1370)는, 제1 원격 어댑터(1311)로부터 로봇을 제어하기 위한 로봇 제어 정보를 수신하면, 수신된 로봇 제어 정보에 근거하여, 복수의 로봇(R1, R2, R3) 중 어느 하나의 로컬 어댑터로 상기 로봇 제어 정보를 전송(전달)할 수 있다.
이러한 링크부(1370)에는, 복수의 원격 어댑터(1311, 1312, 1313) 중 어느 하나와, 복수의 로봇(R1, R2, R3) 중 어느 하나를 통신적으로 연결하기 위한 참조 정보(또는 규칙)에 근거하여, 정보(데이터)를 전송(전달)할 수 있다.
구체적으로, 링크부(1370)는, 복수의 로봇들(R1, R2, R3) 각각에 구비된 로컬 어댑터들(A1, A2, A3)과 통신적으로 연결될 수 있다,
링크부(1370)는, 복수의 로봇들(R1, R2, R3) 각각에 구비된 로컬 어댑터들(A1, A2, A3)로부터 수신되는 로봇 데이터 중, 특정 로봇 데이터를, 특정 로봇의 로컬 어댑터와 연결된 특정 원격 어댑터로 전달할 수 있다.
이하에서는, 설명의 편의를 위하여, 제1 원격 어댑터(1311)와 제1 로봇(R1) 사이에서 정보 전송이 이루어지는 것으로 설명하겠으나, 이는 링크부(1370)를 통해 이루어질 수 있다.
한편, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터에 근거하여, 제1 로봇(R1)에 할당된 임무를 수행하기 위하여, 제1 로봇(R1)에서 요구되는 원격 기능을 특정할 수 있다.
제1 원격 어댑터(1311)는, 제1 로봇(R1)에 할당된 임무가 서로 다른 경우, 제1 로봇(R1)에서 요구되는 원격 기능을 서로 다르게 특정할 수 있다.
구체적으로, 제1 원격 어댑터(1311)는, 제1 로봇(R1)에 할당된 임무가 “오브젝트 배송”인 경우, 오브젝트 배송을 위해 요구되는 기능을 원격 기능으로 특정할 수 있다.
반면에, 제1 원격 어댑터(1311)는, 제1 로봇(R1)에 할당된 임무가, “음식 서빙”인 경우, 음식 서빙을 위해 요구되는 기능을 원격 기능으로 특정할 수 있다.
나아가, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터가 서로 다른 경우, 제1 로봇(R1)에서 요구되는 원격 기능을 서로 다르게 특정할 수 있다.
구체적으로, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터에 “좁은 복도가 촬영된 영상 정보”가 포함된 경우, “좁은 복도”에서의 주행에 필요한 기능을 원격 기능으로 특정할 수 있다.
이와 달리, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터, “넓은 공간(로비, Lobby)이 촬영된 영상 정보”가 포함된 경우, “넓은 공간”에서의 주행에 필요한 기능을 원격 기능으로 특정할 수 있다.
즉, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터에 근거하여, 서로 다른 주행 모드에 각각 대응되는 복수의 원격 기능 중 적어도 하나를, 제1 로봇(R1)에 할당된 임무를 수행하기 위해 요구되는 원격 기능으로 특정할 수 있다. 예를 들어, 도 16a에 도시된 것과 같이, 제1 원격 어댑터(1311)는, 제1 원격 기능(F1) 및 제2 원격 기능(F2)을, 제1 로봇(R1)에 할당된 임무를 수행하기 위하 요구되는 원격 기능으로 특정할 수 있다.
한편, 제1 원격 어댑터(1311)는, 데이터베이스에 미리 정의되어 존재하는 매칭 정보(또는 참조 정보)를 참조하여, 복수의 원격 기능 중 제1 로봇(R1)의 로봇 데이터에 대응되는 적어도 하나의 원격 기능을 특정할 수 있다.
데이터베이스에 존재하는 매칭 정보에는, 제1 로봇(R1)에 할당된 임무 및 로봇 데이터 별로, 서로 다른 원격 기능이 매칭되어 존재할 수 있다.
예를 들어, 매칭 정보에는, 제1 로봇(R1)에 할당된 임무가 “오브젝트 배송”인 경우, 복수의 로봇 데이터 별로, “오브젝트 배송”을 수행하기 위하여 요구되는 원격 기능이 매칭되어존재할 수 있다.
다른 예를 들어, 매칭 정보에는, 제1 로봇(R1)에 할당된 임무가 “음식 서빙”인 경우, 복수의 로봇 데이터 별로, “음식 서빙”을 수행하기 위하여 요구되는 원격 기능이 매칭되어 존재할 수 있다.
한편, 원격 어댑터에서, 로봇에 필요한 기능을 특정하는 역할은 원격 어댑터 자체가 아닌, 본 발명에 따른 제어 시스템(1300)에 의해서 이루어지거나, 제어 시스템(1300)에 포함된 제어부(미도시됨)에 의해서 이루어질 수 있음은 물론이다.
제1 원격 어댑터(1311)는, 특정된 원격 기능이 제1 로봇(R1)에 할당되도록, 기능 관리부(도 13에서 도면부호 1320 참조)에 특정된 원격 기능을 로봇에 할당하도록 하는 원격 기능 할당 요청을 전송할 수 있다.
이 경우, 제1 원격 어댑터(1311)에서 특정된 원격 기능이 복수인 경우, 제1 원격 어댑터(1311)는, 기능 관리부(1320)에 복수의 원격 기능(도 16a에서 도면부호 F1 및 F2 참조) 각각을, 제1 로봇(R1)에 할당하도록 하는 원격 기능 할당 요청을 전송할 수 있다.
나아가, 제1 원격 어댑터(1311)는 원격 기능이 요구되는 시점에 대응하여, 원격 기능의 할당을 기능 관리부(1320)에 요청할 수 있다.
제1 원격 기능(F1) 및 제2 원격 기능(F2) 각각은, 서로 다른 제1 시점 및 제2 시점에 요구될 수 있다.
제1 원격 어댑터(1311)는, 제1 시점에 대응하여, 제1 원격 기능의 할당을 상기 기능 관리부(1320)에 요청할 수 있다. 그리고, 제1 원격 어댑터(1311)는 제2 시점에 대응하여, 제2 원격 기능의 할당을 기능 관리부(1320)에 요청할 수 있다.
이 경우, 제2 시점은, 제1 원격 기능에 대응되는 기능(ex: 주행)이 종료되는 시점에 해당할 수 있다.
제1 원격 어댑터(1311)는, 제2 시점에 대응하여, 로봇에서 제1 원격 기능에 대응되는 기능(ex: 주행)이 종료되는 경우, 기능 관리부(1320)에, 제2 원격 기능의 할당과 함께, 제1 원격 기능의 할당에 대한 해제를 요청할 수 있다.
이와 같이, 제1 원격 어댑터(1311)는 제1 로봇(R1)에서 원격 기능이 필요한 적절한 시점에 대응되도록 기능 관리부(1320)에 원격 기능 할당을 요청함으로써, 제1 로봇(R1)에 대해 자원이 효율적으로 분배되도록 함은 물론, 제1 로봇(R1)에 필요한 기능이 유기적으로 할당되도록 할 수 있다.
한편, 본 발명에서는, 상기 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 과정이 진행될 수 있다(S1520, 도 15 참조).
기능 관리부(1320)는, 제1 원격 어댑터(1311)와 연결되고, 제1 원격 어댑터(1311)의 요청에 근거하여, 제1 로봇에서 요구되는 원격 기능을 제1 로봇(R1)에 할당하는 역할을 수행할 수 있다.
구체적으로, 기능 관리부(1320)는, 제1 원격 어댑터(1311)로부터 수신된 원격 기능 할당 요청에 근거하여, 특정된 원격 기능이 제1 로봇(R1)에 할당되도록, 원격 기능을 제어할 수 있다.
본 발명에서, “원격 기능을 제1 로봇에 할당한다”는 것은, 원격 기능에서, 제1 로봇과 관련된 데이터 처리를 수행할 수 있도록, 자원(메모리 또는 리소스)을, 할당하는 것으로 이해할 수 있다.
그리고, “원격 기능”은, 해당 원격 기능을 위한 데이터 처리를 수행하는 애플리케이션(application)으로 이해되어질 수 있으며, 이는 프로세서(processor) 또는 CPU(central processing unit)에 의해 처리될 수 있다. 본 발명에서는 “원격 기능”을 “원격 기능부”와 혼용되어 명명할 수 있다.
한편, 기능 관리부(1320)는, 제1 원격 어댑터(1311)로부터 복수의 원격 기능 할당 요청을 수신한 경우, 복수의 원격 기능 각각에서 제1 로봇(R1)과 관련된 데이터 처리를 수행할 수 있도록, 자원을 할당할 수 있다.
예를 들어, 도 16a에 도시된 것과 같이, 기능 관리부(1320)는, 제1 원격 어댑터(1311)의 원격 기능 할당 요청에 근거하여, 제1 로봇(R1)에 제1 원격 기능(F1)과 관련된 자원(1321) 및 제2 원격 기능(F2)과 관련된 자원(1322)를 각각 할당할 수 있다.
한편, 본 발명에서는, 상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하는 과정이 진행될 수 있다(S1530, 도 15 참조).
제1 원격 어댑터(1311)는, 기능 관리부(1320)에 의해, 제1 로봇(R1)에 원격 기능이 할당되는 것에 근거하여, 상기 원격 기능에 제1 로봇(R1)의 로봇 데이터를 전달할 수 있다.
이 경우, 제1 원격 어댑터(1311)는, 메시징부(1330)를 통해 원격 기능에 제1 로봇(R1)의 로봇 데이터를 전달할 수 있다.
메시징부(1330)는, 제1 원격 어댑터(1311) 및 원격 기능과 연결되는 것으로, 제1 원격 어댑터(1311)와 원격 기능을 연결하는 통로 역할을 수행할 수 있다.
메시징부(1330)는 제1 원격 어댑터(1311)로부터 제1 로봇(R1)의 로봇 데이터를 수신하면, 제1 로봇(R1)에 할당된 원격 기능으로, 제1 로봇(R1)의 로봇 데이터를 전송(전달)할 수 있다.
메시징부(1330)는, 제1 로봇(R1)에 복수의 원격 기능(F1, F2)이 할당된 경우, 제1 로봇(R1)의 로봇 데이터를 복수의 원격 기능(F1, F2) 각각에 전송(전달)할 수 있다(도 16a 참조).
한편, 본 발명에서는, 상기 원격 기능에서 상기 로봇 데이터를 이용하여 로봇 제어 정보를 생성하는 과정이 진행될 수 있다(S1540, 도 15 참조).
원격 기능에서는, 제1 로봇(R1)의 로봇 데이터를 이용하여, 원격 기능에 따른 데이터 처리를 수행하여, 데이터 처리에 따른 로봇 제어 정보를 생성(산출)할 수 있다.
이 때, 원격 기능에서 생성되는 로봇 제어 정보는, 제1 로봇(R1)이 원격 기능에 대응하는 기능을 수행하도록 하는 로봇 제어 정보(제어 명령)으로 이해할 수 있다.
그리고, 제1 로봇(R1)에 복수의 원격 기능이 할당된 경우, 복수의 원격 기능 각각에서는, 각각의 원격 기능에 따른 데이터 처리를 수행하여, 로봇 제어 정보를 생성(산출)할 수 있다.
예를 들어, 도 16a에 도시된 것과 같이, 제1 로봇(R1)에 제1 원격 기능(F1) 및 제2 원격 기능(F2)이 각각 할당된 경우, 제1 원격 기능(F1)에서는 제1 원격 기능에 따른 데이터 처리를 수행하여 제1 로봇 제어 정보를 생성하고, 제2 원격 기능(F2)에서는 제2 원격 기능(F2)에 따른 데이터 처리를 수행하여 제2 로봇 제어 정보를 생성할 수 있다.
한편, 본 발명에서는, 상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 과정이 진행될 수 있다(S1550, 도 15 참조).
제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터에 기반하여, 원격 기능에서 처리된 로봇 제어 정보를, 제1 로봇(R1)에 구비된 로컬 어댑터(A1)로 전달(전송)할 수 있다.
원격 기능에서는, 처리된 로봇 제어 정보를 메시징부(1330)로 전달할 수 있다. 메시징부(1330)는, 원격 기능으로부터 전달된 로봇 제어 정보를, 원격 기능이 할당된 제1 로봇(R1)과 통신적으로 연결된 제1 원격 어댑터(1311)로 전달할 수 있다.
제1 원격 어댑터(1311)는, 상기 메시징부(1330)를 통해, 원격 기능에서 처리된 로봇 제어 정보가 전달되면, 상기 로봇 제어 정보를 제1 로봇(R1)에 구비된 로컬 어댑터(A1)로 전달할 수 있다.
이 경우, 제1 원격 어댑터(1311)는, 앞서 설명한 링크부(도 13에서 도면부호 1370 참조)를 통해, 로봇 제어 정보를 제1 로봇(R1)에 구비된 로컬 어댑터(A1)로 전달할 수 있다.
링크부(1370)는, 제1 원격 어댑터(1311)로부터 로봇 제어 정보를 전달받는 것에 근거하여, 제1 원격 어댑터(1311)와 통신적으로 연결된 제1 로봇(R1)의 로컬 어댑터(A1)로 로봇 제어 정보를 전송할 수 있다.
이하에서는, 설명의 편의를 위하여, 제1 원격 어댑터(1311)에서 제1 로봇(R1)에 구비된 로컬 어댑터(A1)로, 로봇 제어 정보를 전달하는 것으로 설명하겠으나, 이는 링크부(1370)를 통해 이루어질 수 있음은 당연하다.
한편, 제1 로봇(R1)은, 제1 원격 어댑터(1311)로부터 로봇 제어 정보를 수신하면, 로봇 제어 정보에 따라 원격 기능을 수행할 수 있다.
이와 같이, 제1 로봇(R1)은, 제1 로봇(R1) 내부에 자원이 임베디드 되지 않은 특정 기능까지 확장하여 수행할 수 있다.
한편, 본 발명에 따른 제어 시스템(1300)은, 건물을 주행하는 복수의 로봇(R1, R2, R3) 중 특정 로봇에 특정 원격 기능이 종속되지 않는 동적 구조로 이루어질 수 있다.
이를 위해, 본 발명에서의 원격 기능은, 건물에서 주행하는 로봇들의 주행을 제어하기 위한 기능에 대응될 수 있다. 그리고, 상기 원격 기능에서는, 상기 건물에서 주행하는 로봇들 중 어느 로봇이 원격 기능을 할당 받았는지에 따라, 서로 다른 로봇의 주행을 위한 로봇 제어 정보를 생성할 수 있다.
구체적으로, 제1 로봇(R1) 및 상기 제1 로봇(R1)과 다른 제2 로봇(R2) 각각은, 건물에서 주행(또는 할당된 임무 수행)하기 위해 원격 기능이 요구될 수 있다.
제1 원격 어댑터(1311) 및 제2 원격 어댑터(1312) 각각은, 제1 로봇(R1) 및 제2 로봇(R2)에서 요구되는 원격 기능을 특정할 수 있다. 그리고, 제1 원격 어댑터(1311) 및 제2 원격 어댑터(1312) 각각은, 기능 관리부(1320)에 특정된 원격 기능의 할당을 요청할 수 있다.
기능 관리부(1320)는, 제1 원격 어댑터(1311) 및 제2 원격 어댑터(1312) 각각에서의 원격 기능 할당 요청에 근거하여, 제1 로봇(R1) 및 제2 로봇(R2) 각각에, 원격 기능을 할당할 수 있다.
도 16a에 도시된 것과 같이, 기능 관리부(1320)는, 제1 원격 어댑터(1311)의 요청에 근거하여, 원격 기능(F2)에서 제1 로봇(R1)을 위한 데이터 처리가 수행되도록, 제1 로봇(R1)에 원격 기능(F2)의 일부에 해당하는 제1 자원(1322)를 할당할 수 있다.
그리고, 도 16b에 도시된 것과 같이, 기능 관리부(1320)는, 제2 원격 어댑터(1312)의 요청에 근거하여, 원격 기능(F2)에서 제2 로봇(R2)을 위한 데이터 처리가 수행되도록, 제2 로봇(R2)에, 상기 제1 자원(1322)과는 다른, 원격 기능(F2)의 제2 자원(1323)을 할당할 수 있다.
원격 기능(F2)에서는, 제1 자원(1311)에 기반하여 원격 기능에 따른 데이터 처리를 수행하여, 제1 로봇(R1)이 원격 기능에 대응하는 기능을 수행하도록 하는 제1 로봇 제어 정보를 생성할 수 있다.
그리고, 원격 기능(F2)에서는, 제2 자원(1312)에 기반하여 원격 기능에 따른 데이터 처리를 수행하여, 제2 로봇(R2)이 원격 기능에 대응하는 기능을 수행하도록 하는 제2 로봇 제어 정보를 생성할 수 있다.
이 경우, 제1 로봇 제어 정보 및 제2 로봇 제어 정보는 서로 다른 정보를 포함할 수 있다.
한편, 기능 관리부(1320)는, 제1 로봇(R1) 및 제2 로봇(R2) 중 적어도 하나에서 원격 기능(F2)에 따른 동작이 종료된 경우, 제1 자원(1322) 및 제2 자원(1323) 중 상기 적어도 하나의 로봇에 할당된 자원이 다른 로봇에서 이용 가능하도록, 상기 적어도 하나의 로봇에 할당된 자원의 할당을 해제할 수 있다.
도 16c에 도시된 것과 같이, 기능 관리부(1320)는, 제2 로봇(R2)에서 원격 기능(F2)에 따른 동작이 종료된 경우, 제2 로봇(R2)에 할당된 제2 자원(1323)의 할당을 해제할 수 있다.
여기에서, “자원의 할당을 해제한다”는 것은, 특정 로봇에 할당된 자원의 상태가, 더 이상 특정 로봇에 할당되지 않은 상태로 변경되는 것으로 이해할 수 있다.
그리고 도 16d에 도시된 것과 같이, 기능 관리부(1320)는 할당이 해제된 제2 자원을, 제2 로봇(R2)과는 다른 제3 로봇(R3)에 다시 할당할 수 있다.
즉, 본 발명에 따른 제어 시스템(1300)은, 특정 로봇에 원격 기능의 자원을 한시적으로 할당함으로써, 특정 로봇에 원격 기능이 종속되지 않고, 복수의 로봇(R1, R2, R3)에서 동적으로 활용할 수 있도록 하는 방법을 제안하고 있다.
나아가, 본 발명에 따른 제어 시스템(1300)은, 원격 기능이 실행되지 않는 경우, 원격 기능에 할당된 자원을 삭제하고, 해당 자원이 다른 원격 기능의 실행에 이용되도록, 자원을 동적으로 관리할 수 있다.
앞서 설명한 것과 같이, 본 발명에서 설명하는 “자원”은, 소프트웨어의 실행 및 작업을 위해 이용되는 컴퓨터 시스템, 운영 체제의 기구나 기능의 총칭으로 이해될 수 있다. 이러한 자원에는, 메모리 자원, 연산 자원, 타이머 자원, 제어 프로그램 자원 등을 포함할 수 있다.
본 발명에서는, “자원”을, “컴퓨팅(computing) 자원”과 혼용하여 사용할 수 있다. 그리고, 본 발명에서는 설명의 편의를 위하여, “메모리 자원”을 예로 설명할 수 있으나, 이는 메모리 자원에 한정되지 않고 컴퓨팅 자원을 의미하는 것으로 이해됨은 당연하다.
도 16e에 도시된 것과 같이, 원격 기능(F2)에 대하여, 제1 자원(1322) 및 제2 자원(1323) 모두에 대한 할당 해제 요청이 수신되고, 상기 원격 기능에 다른 로봇에 대해 할당된 자원이 존재하지 않는 경우, 상기 원격 기능(F2)에 대한 자원(1600)을 삭제할 수 있다.
여기에서, “자원 삭제”는, 원격 기능에 따른 데이터 처리를 위해 할당된 자원을 반납하는 것으로, 예를 들어, 원격 기능에 기 할당된 메모리 공간 또는 연산 공간을 반납하는 것으로 이해할 수 있다.
제1 원격 어댑터(1311)는, 통신적으로 연결된 제1 로봇(R)의 로컬 어댑터(A1)로부터, 제1 로봇(R1)의 로봇 데이터를 수신할 수 있다.
여기에서, “로봇 데이터”는, 로봇(R)과 관련된 다양한 정보로 이해될 수 있다. 예를 들어, 로봇 데이터는, i) 로봇의 식별 정보(로봇의 ID, 시리얼 넘버, 로봇에 할당된 임무 정보 등), ii) 로봇의 상태 정보(ex: 배터리 상태 정보, 구동 상태 정보 등) 및 iii) 로봇에 구비된 센싱 모듈(ex: 카메라)에서 센싱(또는 수집)된 센싱 정보(ex: 영상 정보) 중 적어도 하나를 포함할 수 있다.
제1 원격 어댑터(1311)는, 수신된 제1 로봇(R)의 로봇 데이터에 근거하여, 제1 로봇(R1)에 할당된 임무를 수행하기 위하여 제1 로봇(R1)에서 요구되는 적어도 하나의 기능을 특정할 수 있다.
예를 들어, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 데이터에 근거하여, “배송” 임무를 위한 “측위” 기능, “이동 경로 설정”기능, “주행 모드 설정 기능”을, 제1 로봇(R1)에 대한 제어를 위해 필요한 원격 기능으로 특정할 수 있다.
원격 기능은, 제1 로봇(R1)에 할당된 임무 및 제1 로봇(R1)의 로봇 데이터에 근거하여, 다양하게 특정될 수 있다.
예를 들어, 제1 원격 어댑터(1311)에는, “배송”임무가 할당된 제1 로봇(R1)의 로봇 데이터에 근거하여, 제1 로봇(R1)이 주행(또는 위치)하는 공간 유형별로 서로 다른 주행 동작 기능을, 원격 기능으로 특정할 수 있다.
구체적으로, 제1 원격 어댑터(1311)는, 제1 로봇(R1)이 주행하는 공간이 “제1 공간(넓은 공간, 예를 들어, 로비(lobby))”이면, 제1 주행 모드에 대응하는 기능(ex: 장애물 회피 기능)을, 원격 기능으로 특정할 수 있다.
나아가, 제1 원격 어댑터(1311)는, 제1 로봇(R1)이 주행하는 공간이 “제2 공간(좁은 복도 공간)”이면, 제2 주행 모드에 대응하는 기능(ex: 회피 가동을 최소화 하고, 벽과 근접한 위치에서 벽을 따라 이동하는 주행 모드)을, 원격 기능으로 특정할 수 있다.
나아가, 제1 원격 어댑터(1311)는, 제1 로봇(R1)이 주행하는 공간이 “제3 공간(건물 시설 공간(엘리베이터, 문(도어, door), 게이트(gate))”이면, 제3 주행 모드 기능(ex: 건물 시설 이용을 위해 정해진 동작에 따라 이동하는 주행 모드)를 원격 기능으로 특정할 수 있다.
제1 원격 어댑터(1311)는, 데이터베이스에 미리 정의되어 존재하는 매칭 정보를 참조하여, 제1 로봇(R1)의 로봇 데이터에 대응되는 기능을, 원격 기능으로 특정할 수 있다.
데이터베이스에는, 복수의 로봇(R1, R2, R3) 각각에 대한 매칭 정보가 존재할 수 있다. 제1 원격 어댑터(1311)는, 데이터베이스로부터 제1 로봇(R1)의 매칭 정보를 참조하여, 제1 로봇의 특정 로봇 데이터에 대응되는 특정 기능을, 원격 기능으로 특정할 수 있다.
나아가, 제1 원격 어댑터(1311)는, 특정된 기능에 해당하는 원격 기능이 제1 로봇(R)에 할당되도록, 기능 관리부(1320)에 원격 기능을 제1 로봇에 할당하도록 하는 요청을 전송할 수 있다.
기능 관리부(1320)는, 제1 원격 어댑터(1311)로부터 수신된 원격 기능 할당 요청에 근거하여, 특정된 원격 기능을, 제1 로봇(R1)에 할당되도록 제어할 수 있다.
구체적으로, 기능 관리부(1320)는, 특정된 원격 기능과 관련된 자원(리소스 또는 메모리)를, 제1 로봇(R1)에 할당할 수 있다.
제1 원격 어댑터(1311)는, 특정된 원격 기능이 제1 로봇(R1)에 할당되는 것에 근거하여, 특정된 원격 기능과 연결(또는 연계)될 수 있다.
나아가, 제1 원격 어댑터(1311)는, 제1 로봇(R)의 로봇 데이터에 기반하여 특정된 원격 기능과 관련된 로봇 제어 정보를 산출하도록, 제1 로봇(R1)의 로봇 데이터를 연결된 원격 기능으로 전달할 수 있다.
원격 기능에서는, 제1 원격 어댑터(1311)로부터 전달된 제1 로봇(R1)의 로봇 데이터에 기반하여, 원격 기능에 따른 데이터 처리를 수행할 수 있다.
그리고, 원격 기능에서는, 데이터 처리 수행을 통해, 제1 로봇(R1)에서 원격 기능에 해당하는 기능이 수행되도록 하는 로봇(R) 제어 명령을 산출할 수 있다.
제1 원격 어댑터(1311)는, 원격 기능에서 제1 로봇(R1)의 로봇 데이터에 기반하여 산출된 로봇 제어 명령을, 제1 로봇(R)으로 제어 명령을 전송함으로써, 제1 로봇(R1)을 원격으로 제어할 수 있다.
이 경우, 제1 원격 어댑터(1311)는, 로봇 제어 명령을 제1 로봇(R1)의 제1 로컬 어댑터(A1)로 전송할 수 있다.
한편, 제1 원격 어댑터(1311)는 원격 기능과의 연결이 더 이상 요구되지 않는 경우, 기능 관리부(1320)에 대해 원격 기능과의 연결 해제를 요청할 수 있다.
기능 관리부(1320)는, 제1 원격 어댑터(1311)의 요청에 근거하여, 제1 로봇(R)에 할당된 원격 기능의 할당을 종료(또는 해제)할 수 있다.
제1 원격 어댑터(1311)는, 제1 로봇(R)에 기 할당된 원격 기능의 할당이 해제(또는 종료)되는 것에 근거하여, 기 연결된 원격 기능과의 연결이 해제(또는 종료)될 수 있다.
본 발명에서는, 제1 로봇(R)에 기 할당된 원격 기능의 할당이 종료되는 것에 근거하여, 제1 원격 어댑터(1311)와 원격 기능의 연결이 해제되었다고 설명할 수 있다.
한편, 복수의 원격 어댑터(1311, 1312, 1313) 각각은, 연결된 원격 기능에 대한 데이터 처리 결과기능 관리부(1320)에서 수행한 데이터 처리 결과에 근거하여, 매칭된 로봇(R1, R2, R3)을 제어하기 위한 제어 명령을 생성할 수 있다.
그리고, 복수의 원격 어댑터(1311, 1312, 1313) 각각은, 생성된 제어 명령을, 매칭된 로봇(R1, R2, R3)의 로컬 어댑터(A1, A2, A3)로 전송할 수 있다.
제1 원격 어댑터(1311)는, 제1 로봇(R1)의 로봇 정보에 근거하여 특정된 적어도 하나의 단위 기능에 대한 데이터 처리 수행 결과에 근거하여, 제1 로봇(R1)에 대한 제어 명령을 생성하여 제1 로봇(R1)의 제1 로컬 어댑터(A1)로 전송함으로써, 제1 로봇(R1)을 원격으로 제어할 수 있다.
또한, 제2 원격 어댑터(2322)는, 제2 로봇(R2)의 로봇 정보에 근거하여 특정된 적어도 하나의 단위 기능에 대한 데이터 처리 수행 결과에 근거하여, 제2 로봇(R2)에 대한 제어 명령을 생성하여 제2 로봇(R2)의 제2 로컬 어댑터(A2)로 전송함으로써, 제2 로봇(R2)을 원격으로 제어할 수 있다.
예를 들어, 제1 원격 어댑터(1311)가, 제1 원격 기능(F1) 및 제2 원격 기능과 동적으로 연결되었다고 가정하자. 제1 원격 어댑터(1311)는, 제1 원격 기능(F1) 및 제2 원격 기능(F2)과 관련된 데이터 처리에 대응하는 제어 명령을, 통신적으로 연결된 제1 로봇(R1)으로 전송하여, 제1 로봇(R1)을 제어할 수 있다. 이 경우, 제1 원격 어댑터(1311)는, 제1 로봇(R1)의 제1 로컬 어댑터(A1)로 제어 명령을 전송할 수 있다.
다른 예를 들어, 제2 원격 어댑터(1312)가, 제2 원격 기능(F2) 및 제3 원격 기능(F3)과 동적으로 연결되었다고 가정하자. 제2 원격 어댑터(1312)는, 제2 원격 기능(F2) 및 제3 원격 기능(F3)과 관련된 데이터 처리에 대응하는 제어 명령을, 통신적으로 연결된 제2 로봇(R2)으로 전송할 수 있다. 이 경우, 제2 원격 어댑터(1312)는 제2 로봇(R2)의 제2 로컬 어댑터(A2)로 제어 명령을 전송할 수 있다.
즉, 복수의 원격 어댑터(1311, 1312, 1313) 각각은, 복수의 원격 어댑터(1311, 1312, 1313) 각각에 통시적으로 연결된 로봇(R1, R2, R3)을 제어하기 위한 기능의 조율(원격 기능 특정, 원격 기능 할당, 제어 명령 전송, 로봇과의 연동 및 해제)를 수행할 수 있다.
이하에서는 기능 관리부(1320)에서 자원을 동적으로 할당하는 방법에 대해 보다 구체적으로 설명하도록 한다.
기능 관리부(1320)는 복수의 원격 어댑터(1311, 1312, 1313) 중 특정 어댑터에서 통신적으로 연결된 로봇(R)에 대한 제어를 위해 적어도 하나의 원격 기능이 특정된 것에 근거하여, 특정 어댑터에 통신적으로 연결된 특정 로봇(R)에 대해 특정된 원격 기능과 관련된 자원을 할당할 수 있다.
그리고, 기능 관리부(1320)는, 특정 로봇(R)에 대해 할당된 자원을 이용하여, 특정 로봇(R)에 대한 특정된 원격 기능과 관련된 데이터 처리를 수행할 수 있다.
예를 들어, 제1 원격 어댑터(1311)에서, 제1 로봇(R1)에 대한 제어를 위하여, 제1 원격 기능(F1) 및 제2 원격 기능(F2)이 특정되었다고 가정하자.
도 16a에 도시된 것과 같이, 기능 관리부(1320)는, 제1 원격 어댑터(1311)에서, 제1 로봇(R1)에 대한 제어를 위해, 제1 원격 기능(F1) 및 제2 원격 기능(F2)를 특정한 것에 근거하여, 제1 원격 기능과 관련된 자원(1321) 및 제2 원격 기능과 관련된 자원(1322)을 제1 로봇(R1)에 할당할 수 있다.
기능 관리부(1320)는, 제1 로봇(R1)에 대해 할당된 제1 원격 기능과 관련된 자원(1321)을 이용하여, 제1 로봇(R1)에 대한 제1 원격 기능(F1)과 관련된 데이터 처리를 수행할 수 있다. 그리고, 기능 관리부(1320)는 제1 로봇(R1)에 대해 할당된 제2 원격 기능과 관련된 자원(1322)을 이용하여, 제1 로봇(R1)에 대한 제2 원격 기능(F2)과 관련된 데이터 처리를 수행할 수 있다.
한편, 기능 관리부(1320)는, 복수의 로봇(R1, R2, R3) 각각에 대해 자원을 동시에 할당하고, 복수의 로봇(R1, R2, R3) 각각을 위한 데이터 처리를 동시에 수행할 수 있다.
예를 들어, 제1 원격 어댑터(1311)와는 다른 제2 원격 어댑터(1312)에서, 제2로봇(R)에 대한 제어를 위하여, 제2 원격 기능(F2) 및 제3 원격 기능(F3)이 특정되었다고 가정하자.
도 16b에 도시된 것과 같이, 기능 관리부(1320)는, 제2 원격 어댑터(1312)에서, 제2 로봇(R2)에 대한 제어를 위해, 제2 원격 기능(F2) 및 제3 원격 기능(F3)을 특정한 것에 근거하여, 제2 원격 기능과 관련된 자원(1323) 및 제2 원격 기능과 관련된 자원(1324)을 제2 로봇(R2)에 할당할 수 있다.
그리고, 기능 관리부(1320)는, 제2 로봇(R2)에 대해 할당된 제2 원격 기능과 관련된 자원(1323)을 이용하여, 제2 로봇(R2)에 대한 제2 원격 기능(F2)과 관련된 데이터 처리를 수행할 수 있다. 그리고, 기능 관리부(1320)는 제2 로봇(R2)에 대해 할당된 제3 원격 기능과 관련된 자원(1323)을 이용하여, 제2 로봇(R2)에 대한 제3원격 기능(F3)과 관련된 데이터 처리를 수행할 수 있다.
즉, 본 발명에서는, 제1 로봇(R1) 및 제2 로봇(R2) 각각에 대해 자원을 할당하고, 할당된 자원을 이용하여 제1 로봇(R1) 및 제2 로봇(R2) 각각에 대한 데이터 처리를 동시에 수행할 수 있다.
한편, 기능 관리부(1320)는 복수의 로봇(R1, R2, R3) 중 특정 로봇(R)에 대한 특정된 원격 기능과 관련된 데이터 처리가 종료되는 것에 근거하여, 특정 로봇(R)에 기 할당된 자원의 할당을 종료(또는 해제) 할 수 있다.
여기에서, “특정 로봇(R)에 기 할당된 자원의 할당을 종료(또는 해제)한다”는 것은, 특정 로봇(R)에 할당되었던 자원의 상태를, 더 이상 특정 로봇(R)에 할당되지 않은 상태로 변경하는 것으로 이해할 수 있다.
본 발명에서는, 특정 로봇(R)에 기 할당된 특정 자원의 할당을 종료(또는 해제)하는 것을, 특정 로봇(R)과 기 할당된 자원의 연계를 종료(또는 해제)하는 것으로 이해할 수 있다.
이 경우, 할당이 종료되는 자원은, 데이터 처리가 종료된 특정 원격 기능과 관련된 자원일 수 있다.
즉, 특정 로봇(R)에 대해 복수의 원격 기능 각각과 관련된 자원이 할당되었고, 복수의 원격 기능 중 특정 원격 기능과 관련된 데이터 처리가 종료되는 경우, 기능 관리부(1320)는 종료된 특정 원격 기능과 관련된 자원의 할당을 종료할 수 있다.
예를 들어, 제2 로봇(R2)에 대해 제2 원격 기능과 관련된 자원(1323) 및 제3 원격 기능과 관련된 자원(1324)이 할당되었고, 제2 로봇(R2)에 대한 제2 원격 기능(F2)과 관련된 데이터 처리 및 제3 원격 기능(F3)과 관련된 데이터 처리 중, 제2 원격 기능(F2)과 관련된 데이터 처리가 종료되었다고 가정하자.
도 16b에 도시된 것과 같이, 기능 관리부(1320)는, 제2 로봇(R2)에 대한 제2 원격 기능(F2)과 관련된 데이터 처리가 종료되는 것에 근거하여, 제2 로봇(R2)에 기 할당된 제2 원격 기능과 관련된 자원(1323)의 할당을 종료할 수 있다. 그리고, 기능 관리부(1320)는 데이터 처리가 종료되지 않은 제3 원격 기능과 관련된 자원(1324)의 할당은 유지할 수 있다.
나아가, 기능 관리부(1320)는, 특정 로봇(R)에 대해 특정된 원격 기능과 관련된 데이터 처리가 종료되는 것에 근거하여, 특정 로봇(R)에 할당되었던 자원을 다른 로봇(R)에 재할당할 수 있다.
다른 로봇(R)에 재할당되는 자원은, 특정 로봇(R)에 대해 할당되었던 자원 중 데이터 처리가 종료된 자원일 수 있다.
구체적으로, 기능 관리부(1320)는, 특정 원격 기능과 관련된 자원이 모두 할당된 경우, 특정 원격 기능에 대한 데이터 처리를 필요로 하는 로봇(R)을, 대기 로봇(R)으로 지정할 수 있다.
그리고, 기능 관리부(1320)는, 자원을 기 할당 받은 로봇(R)에 대한 특정 원격 기능과 관련된 데이터 처리가 종료되는 것에 근거하여, 특정 원격 기능과 관련된 자원 할당을 대기하고 있는 대기 로봇(R)에, 상기 자원을 재할당할 수 있다.
예를 들어, 제2 원격 기능과 관련된 자원이 제1 로봇(R1) 및 제2 로봇(R2) 각각에 모두 할당된 상태에서, 제3 로봇(R3)이 제2 원격 기능과 관련된 할당을 대기하고 있다고 가정하자.
도 16d에 도시된 것과 같이, 기능 관리부(1320)는, 제2 로봇(R2)에 대한 제2 원격 기능과 관련된 데이터 처리가 종료되는 것에 근거하여, 제2 로봇(R2)에 할당되었던 제2 원격 기능과 관련된 자원(1323)을, 대기 로봇(R)에 해당하는 제3 로봇(R3)에 재할당할 수 있다.
한편, 본 발명에서는 복수의 로봇(R1, R2, R3) 각각의 로봇 데이터에 근거하여, 복수의 로봇(R1, R2, R3) 각각이 주행(또는 위치)하는 공간 유형별로 서로 다른 주행 모드로 동작하도록, 서로 다른 주행 모드에 대응하는 기능과 관련된 데이터 처리를 수행할 수 있다.
데이터베이스에는, 로봇(R)이 주행(또는 위치)하는 공간 유형별로 서로 다른 주행 모드에 대응하는 원격 기능이 매칭되어 매칭 정보로서 존재할 수 있다.
구체적으로, 제1 공간(넓은 공간, 예를 들어, 로비(lobby)에는, “이동 경로 설정 기능” 및 제1 주행 모드에 대응하는 원격 기능(ex: 주행 시 장애물 회피를 위한 기능)이 매칭되어 존재할 수 있다.
또한, 제2 공간(ex: 좁은 복도 공간)에는, “이동 경로 설정 기능” 및 제2 주행 모드에 대응하는 원격 기능(ex: 회피 가동을 최소화하고, 벽과 근접한 위치에서 일렬로 이동하며 주행하도록 하는 기능)이 매칭되어 존재할 수 있다.
또한, 제3 공간(ex: 건물 시설 (엘리베이터, 문(도어, door), 게이트(gate) 이용을 위한 공간)에는, 제3 주행 모드에 대응하는 원격 기능(ex: 건물 시설 이용을 위해 정해진 동작에 따라 이동하기 위한 기능)이 매칭되어 존재할 수 있다.
복수의 원격 어댑터(1311, 1312, 1313) 각각은, 통신적으로 연결된 로봇(R1, R2, R3)의 로봇 데이터에 근거하여, 통신적으로 연결된 로봇(R1, R2, R3)이 주행하는 공간 유형에 대응하는 원격 기능을 특정할 수 있다.
기능 관리부(1320)는 복수의 원격 어댑터(1311, 1312, 1313) 각각에서 특정된 원격 기능에 근거하여, 통신적으로 연결된 로봇(R1, R2, R3) 각각에 대해 특정된 원격 기능과 관련된 자원을 할당할 수 있다.
그리고, 기능 관리부(1320)는 통신적으로 연결된 로봇(R1, R2, R3) 각각에 할당된 자원을 이용하여, 통신적으로 연결된 로봇(R1, R2, R3) 각각에 대해 특정된 원격 기능이 관련된 데이터 처리를 수행할 수 있다.
예를 들어, 도 17a에 도시된 것과 같이, 제1 로봇(R1)은 “복도”에서 주행하고 있고, 제2 로봇(R2)은 “엘리베이터이용을 위한 공간”에서 주행하고 있다고 가정하자.
제1 원격 어댑터(1311)는 제1 로봇(R1)의 제1 로컬 어댑터(A1)로부터 수신된 로봇 데이터에 근거하여, 제1 로봇(R1)이 주행 중인 “복도”에 통신적으로 연결된 “이동 경로 설정 기능” 및 “복도 주행 기능”을 특정할 수 있다.
반면에, 제2 원격 어댑터(1312)는 제2 로봇(R2)의 제2 로컬 어댑터(A2)로부터 수신된 로봇 데이터에 근거하여, 제2 로봇(R2)이 주행 중인 “엘리베이터 이용 공간”에 통신적으로 연결된 “이동 경로 설정 기능” 및 “엘리베이터 탑승 기능”을 특정할 수 있다.
도 17b에 도시된 것과 같이, 기능 관리부(1320)는 제1 원격 어댑터(1311)에서 특정된 단위 결과에 근거하여, “이동 경로 설정 기능”과 관련된 자원(1710) 및 “복도 주행 기능”과 관련된 자원(1730)을 제1 로봇(R1)에 할당하고, 데이터 처리를 수행할 수 있다. 그리고, 기능 관리부(1320)는 제2 원격 어댑터(1312)에서 특정된 단위 결과에 근거하여, “이동 경로 설정 기능”과 관련된 자원(1720) 및 “엘리베이터 탑승”과 관련된 자원(1740)을 제2 로봇(R2)에 할당하고, 데이터 처리를 수행할 수 있다.
제1 원격 어댑터(1311)는, 제1 로봇(R1)에 대한 “이동 경로 설정 기능”의 데이터 처리 수행 결과 및 “복도 주행 기능”의 데이터 처리 수행 결과에 근거하여, 제1 로봇(R1)에 대한 제어 명령을 생성할 수 있다. 예를 들어, 제1 원격 어댑터(1311)는 제1 로봇(R1)이 복도의 벽을 따라 일렬로 이동한 후, 복도의 끝에서 우회전 하도록 하는 제어 명령을 생성할 수 있다.
그리고, 제1 원격 어댑터(1311)는 생성된 제어 명령을 제1 로봇(R1)의 제1 로컬 어댑터(A1)로 전송하여, 생성된 제어 명령에 따라 제1 로봇(R1)의 주행을 제어할 수 있다.
반면에, 제2 원격 어댑터(1312)는, 제2 로봇(R2)에 대한 “이동 경로 설정 기능”의 데이터 처리 수행 결과 및 “엘리베이터 탑승 기능”의 데이터 처리 수행 결과에 근거하여, 제2 로봇(R2)에 대한 제어 명령을 생성할 수 있다. 예를 들어, 제2 원격 어댑터(1312)는 제2 로봇(R2)이 엘리베이터 앞으로 이동한 후, 엘리베이터를 탑승하도록 하는 제어 명령을 생성할 수 있다.
그리고, 제2 원격 어댑터(1312)는 생성된 제어 명령을 제2 로봇(R2)의 제2 로컬 어댑터(A2)로 전송하여, 생성된 제어 명령에 따라 제2 로봇(R2)의 주행을 제어할 수 있다.
예를 들어, 복수의 원격 어댑터(1311, 1312, 1313) 각각에서는, 통신적으로 연결된 로봇(R1, R2, R3)의 센싱 정보에 근거하여, 통신적으로 연결된 로봇(R1, R2, R3)이 주행하는 공간이 “제1 공간(넓은 공간, 예를 들어, 로비(lobby))”이면, 제1 주행 모드 기능(ex: 장애물 회피 주행 모드)를 통신적으로 연결된 로봇(R1, R2, R3)에 대한 제어를 위해 필요한 원격 기능으로 특정할 수 있다.
다른 예를 들어, 복수의 원격 어댑터(1311, 1312, 1313) 각각에서는, 통신적으로 연결된 로봇(R1, R2, R3)의 센싱 정보에 근거하여, 통신적으로 연결된 로봇(R1, R2, R3)이 주행하는 공간이 “제2 공간(좁은 복도 공간)”이면, 제2 주행 모드 기능(ex: 회피 가동을 최소화하고, 벽과 근접한 위치에서 일렬로 이동하는 주행 모드) 를 통신적으로 연결된 로봇(R1, R2, R3)에 대한 제어를 위해 필요한 원격 기능으로 특정할 수 있다.
또 다른 예를 들어, 복수의 원격 어댑터(1311, 1312, 1313) 각각에서는, 통신적으로 연결된 로봇(R1, R2, R3)의 센싱 정보에 근거하여, 통신적으로 연결된 로봇(R1, R2, R3)이 주행하는 공간이 “제3 공간(건물 시설 공간(엘리베이터, 문(도어, door), 게이트(gate))”이면, 제3 주행 모드 기능(ex: 건물 시설 이용을 위해 정해진 동작에 따라 이동하는 주행 모드)를 통신적으로 연결된 로봇(R1, R2, R3)에 대한 제어를 위해 필요한 원격 기능으로 특정할 수 있다.
본 발명에 따른 건물, 건물을 주행하는 로봇 제어 방법 및 시스템은, 로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 원격 어댑터(remote adapter) 및 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 기능 관리부를 포함함으로써, 건물을 주행하는 복수의 로봇 중 어느 하나에 종속되지 않고, 복수의 로봇을 제어할 수 있는 동적 제어 구조를 제시하고 있다.
나아가, 본 발명에 따른 건물, 건물을 주행하는 로봇 제어 방법 및 시스템은, 로봇 데이터에 기반하여 로봇에서 요구되는 원격 기능에서 처리된 로봇 제어 정보를, 로컬 어댑터로 전달하여, 로봇에 기능을 위한 자원이 임베디드(imbedded) 되지 않은 기능까지 확장하여, 로봇에 대한 원격 제어를 수행할 있다.
나아가, 본 발명에 따른 건물, 건물을 주행하는 로봇 제어 방법 및 시스템은, 건물을 주행하는 복수의 로봇에 대한 동적 제어 구조를 통해, 새로운 로봇의 편입 및 기존 로봇의 해제에 대해 유연하고, 복수의 로봇을 유동적이고 체계적이며 효율적으로 제어할 수 있다.
한편, 위에서 살펴본 본 발명은, 컴퓨터에서 하나 이상의 프로세스에 의하여 실행되며, 이러한 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램으로서 구현될 수 있다.
나아가, 위에서 살펴본 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드 또는 명령어로서 구현하는 것이 가능하다. 즉, 본 발명에 따른 다양한 제어방법은 통합하여 또는 개별적으로 프로그램의 형태로 제공될 수 있다.
한편, 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다.
나아가, 컴퓨터가 읽을 수 있는 매체는, 저장소를 포함하며 전자기기가 통신을 통하여 접근할 수 있는 서버 또는 클라우드 저장소일 수 있다. 이 경우, 컴퓨터는 유선 또는 무선 통신을 통하여, 서버 또는 클라우드 저장소로부터 본 발명에 따른 프로그램을 다운로드 받을 수 있다.
나아가, 본 발명에서는 위에서 설명한 컴퓨터는 프로세서, 즉 CPU(Central Processing Unit, 중앙처리장치)가 탑재된 전자기기로서, 그 종류에 대하여 특별한 한정을 두지 않는다.
한편, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.

Claims (15)

  1. 로봇 제어 시스템에 있어서,
    로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 원격 어댑터(remote adapter); 및
    상기 원격 어댑터와 연결되며, 상기 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 기능 관리부를 포함하고,
    상기 원격 어댑터는,
    상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하고,
    상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 것을 특징으로 하는 로봇 제어 시스템.
  2. 제1항에 있어서,
    상기 원격 어댑터는,
    상기 로봇에 할당된 임무를 수행하기 위하여 상기 로봇에서 요구되는 기능을 특정하고,
    특정된 기능에 해당하는 상기 원격 기능이 상기 로봇에 할당되도록, 상기 기능 관리부에 상기 원격 기능을 상기 로봇에 할당하도록 하는 요청을 전송하고,
    상기 기능 관리부는,
    상기 원격 어댑터로부터 수신된 상기 요청에 근거하여, 상기 원격 기능이 상기 로봇에 할당되도록 상기 원격 기능을 제어하는 것을 특징으로 하는 로봇 제어 시스템.
  3. 제2항에 있어서,
    상기 원격 기능에서는,
    상기 로봇에 상기 원격 기능이 할당되는 것에 근거하여,
    상기 로봇으로부터 수신되는 로봇 데이터를 이용하여, 상기 원격 기능에 따른 데이터 처리를 수행하고,
    상기 데이터 처리 결과에 따른 상기 로봇 제어 정보는, 상기 원격 기능이 할당된 상기 로봇으로 전달되며,
    상기 로봇에서는, 상기 로봇 제어 정보에 따라 상기 원격 기능이 수행되도록 하는 것을 특징으로 하는 로봇 제어 시스템.
  4. 제3항에 있어서,
    상기 원격 기능은, 건물에서 주행하는 로봇들의 주행을 제어하기 위한 기능에 대응되고,
    상기 원격 기능에서는,
    상기 건물에서 주행하는 로봇들 중 어느 로봇이 상기 원격 기능을 할당 받았는지에 따라, 서로 다른 로봇의 주행을 위한 로봇 제어 정보를 생성하는 것을 특징으로 하는 로봇 제어 시스템.
  5. 제4항에 있어서,
    상기 건물에서 주행하는 로봇들 중 제1 로봇 및 상기 제1 로봇과 다른 제2 로봇에서 상기 원격 기능이 각각 요구되는 경우,
    상기 제1 로봇의 로컬 어댑터에 통신적으로 연결된 제1 원격 어댑터 및 상기 제2 로봇의 로컬 어댑터에 통신적으로 연결된 제2 원격 어댑터는, 상기 기능 관리부에 상기 원격 기능의 할당을 각각 요청하고,
    상기 기능 관리부는, 상기 원격 기능에서 상기 제1 로봇 및 상기 제2 로봇을 위한 데이터 처리가 수행되도록, 상기 제1 로봇에 상기 원격 기능의 제1 자원을 할당하고, 상기 제2 로봇에 상기 원격 기능의 제2 자원을 각각 할당하는 것을 특징으로 하는 로봇 제어 시스템.
  6. 제5항에 있어서,
    상기 기능 관리부는, 상기 제1 로봇 및 상기 제2 로봇 중 적어도 하나에서 상기 원격 기능에 따른 동작이 종료된 경우,
    상기 제1 자원 및 상기 제2 자원 중 상기 적어도 하나의 로봇에 할당된 자원이 다른 로봇에서 이용 가능하도록, 상기 적어도 하나의 로봇에 할당된 자원의 할당을 해제하는 것을 특징으로 하는 로봇 제어 시스템.
  7. 제6항에 있어서,
    상기 기능 관리부는,
    상기 원격 기능에 대하여, 상기 제1 자원 및 상기 제2 자원 모두에 대한 할당 해제 요청이 수신되고, 원격 기능에 다른 로봇에 대해 할당된 자원이 존재하지 않는 경우,
    상기 원격 기능에 대한 자원을 삭제하는 것을 특징으로 하는 로봇 제어 시스템.
  8. 제1항에 있어서,
    건물에서 주행하는 복수의 로봇들 각각에 구비된 로컬 어댑터들과 통신적으로 연결되어 상기 로봇들로부터 로봇 데이터를 수신하는 링크부를 더 포함하고,
    상기 링크부는,
    상기 로봇들로부터 수신되는 로봇 데이터 중 특정 로봇의 로봇 데이터를, 특정 로봇의 로컬 어댑터와 통신적으로 연결된 특정 원격 어댑터에 전달하는 것을 특징으로 하는 로봇 제어 시스템.
  9. 제8항에 있어서,
    상기 원격 기능은, 서로 다른 주행 모드에 각각 대응되는 복수의 원격 기능을 포함하고,
    상기 원격 어댑터는,
    상기 복수의 원격 기능 중 상기 로봇의 주행에 요구되는 적어도 하나의 원격 기능을 상기 기능 관리부로 할당 요청하며,
    상기 기능 관리부에 의해 상기 적어도 하나의 원격 기능이 상기 로봇에 할당되는 것에 근거하여,
    상기 링크부를 통해 수신된 상기 로봇의 로봇 데이터는, 상기 적어도 하나의 원격 기능 각각에 전달되는 것을 특징으로 하는 로봇 제어 시스템.
  10. 제9항에 있어서,
    상기 로봇의 주행을 제어하기 위하여, 상기 복수의 원격 기능 중, 서로 다른 제1 시점 및 제2 시점에 제1 원격 기능 및 제2 원격 기능이 각각 요구되는 경우,
    상기 원격 어댑터는,
    상기 제1 시점에 대응하여, 상기 제1 원격 기능의 할당을 상기 기능 관리부에 요청하고,
    상기 제2 시점에 대응하여, 상기 제2 원격 기능의 할당을 상기 기능 관리부에 요청하며,
    상기 제2 시점에 대응하여, 상기 로봇에서 상기 제1 원격 기능에 대응되는 주행이 종료되는 경우, 상기 제1 원격 기능의 할당에 대한 해제를 요청하는 것을 특징으로 하는 로봇 제어 시스템.
  11. 제10항에 있어서,
    상기 원격 어댑터로부터 상기 로봇 데이터를 수신하는 메시징부를 더 포함하고,
    상기 메시징부는,
    상기 복수의 원격 기능 중, 상기 원격 어댑터와 연결된 상기 로봇에 할당 상기 제1 원격 기능 또는 상기 제2 원격 기능에 상기 로봇 데이터를 전달하는 것을 특징으로 하는 로봇 제어 시스템.
  12. 제11항에 있어서,
    상기 메시징부는,
    상기 복수의 로봇들과 통신적으로 각각 연결된 복수의 원격 어댑터와 연결되며,
    상기 복수의 원격 어댑터로부터 할당 요청되는 원격 기능에 근거하여, 상기 복수의 로봇들에서 수신되는 로봇 데이터를 상기 복수의 원격 기능 중 적어도 하나에 전달하는 것을 특징으로 하는 로봇 제어 시스템.
  13. 로봇 제어 시스템의 제어 방법에 있어서,
    로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 단계;
    원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 단계;
    상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하는 단계;
    상기 원격 기능에서 상기 로봇 데이터를 이용하여 로봇 제어 정보를 생성하는 단계; 및
    상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 단계를 포함하는 로봇 제어 시스템의 제어 방법.
  14. 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 기록매체에 저장된 프로그램으로서,
    상기 프로그램은,
    로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 단계;
    원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 단계;
    상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하는 단계;
    상기 원격 기능에서 상기 로봇 데이터를 이용하여 로봇 제어 정보를 생성하는 단계; 및
    상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 단계를 수행하도록 하는 명령어들을 포함하는 것을 특징으로 하는 컴퓨터로 판독될 수 있는 기록매체에 저장된 프로그램.
  15. 복수의 로봇들이 서비스를 제공하는 건물에 있어서,
    상기 건물은,
    상기 로봇들과 제어 서버 사이에서 통신을 수행하는 통신부를 포함하고,
    상기 제어 서버는,
    로봇에 구비된 로컬 어댑터(local adapter)와 통신적으로 연결되는 원격 어댑터(remote adapter); 및
    상기 원격 어댑터와 연결되며, 상기 원격 어댑터의 요청에 근거하여, 상기 로봇에서 요구되는 원격 기능을 상기 로봇에 할당하는 기능 관리부를 포함하고,
    상기 원격 어댑터는,
    상기 로봇으로부터 수신되는 로봇 데이터를 상기 원격 기능으로 전달하고,
    상기 로봇 데이터에 기반하여 상기 원격 기능에서 처리된 로봇 제어 정보를, 상기 로컬 어댑터로 전달하는 것을 특징으로 하는 건물.
KR1020220154183A 2022-11-17 2022-11-17 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템 KR20240073246A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220154183A KR20240073246A (ko) 2022-11-17 2022-11-17 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템
PCT/KR2023/014136 WO2024106728A1 (ko) 2022-11-17 2023-09-19 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220154183A KR20240073246A (ko) 2022-11-17 2022-11-17 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR20240073246A true KR20240073246A (ko) 2024-05-27

Family

ID=91084962

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220154183A KR20240073246A (ko) 2022-11-17 2022-11-17 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템

Country Status (2)

Country Link
KR (1) KR20240073246A (ko)
WO (1) WO2024106728A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101973031B (zh) * 2010-08-24 2013-07-24 中国科学院深圳先进技术研究院 云机器人***及实现方法
WO2020081650A1 (en) * 2018-10-16 2020-04-23 Brain Corporation Systems and methods for cloud edge task performance and computing using robots
KR102484686B1 (ko) * 2021-05-03 2023-01-04 네이버랩스 주식회사 다수의 모듈형 로봇들로 구성된 로봇을 제어하는 방법 및 시스템
KR102578127B1 (ko) * 2021-05-06 2023-09-13 네이버랩스 주식회사 통신 기반 로봇 제어 방법 및 시스템
KR102432361B1 (ko) * 2022-03-21 2022-08-17 주식회사 서큘러스 인터랙션 로봇, 로봇 운영 시스템, 및 그 제어 방법

Also Published As

Publication number Publication date
WO2024106728A1 (ko) 2024-05-23

Similar Documents

Publication Publication Date Title
US10845821B2 (en) Route planning for a mobile robot using configuration-based preferences
JP2019508665A (ja) 半自律的モバイルロボットのナビゲーティング
KR20240042369A (ko) 로봇 친화형 건물, 로봇 및 건물을 주행하는 멀티-로봇 제어 시스템
KR102675760B1 (ko) 실내 공간에 배치된 설비를 이용하는 복수의 로봇이 주행하는 건물
KR20240025571A (ko) 로봇 친화형 건물, 복수의 로봇들을 이용한 협업 방법 및 시스템
JP7277523B2 (ja) ロボットを用いた配送方法及びシステム
KR20230002119A (ko) 로봇 친화형 건물
KR20240073246A (ko) 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템
JP2005148960A (ja) 自律移動体の周辺機器連携システム
KR102620941B1 (ko) 건물을 주행하는 로봇 제어 방법 및 시스템
KR102657615B1 (ko) 로봇 친화형 건물, 로봇의 충전 제어 방법 및 시스템
KR102489723B1 (ko) 로봇 원격 제어 방법 및 시스템
JP7370362B2 (ja) ロボット管制方法及びシステム
KR20230041353A (ko) 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템
KR102667685B1 (ko) 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템
KR20230056272A (ko) 로봇 친화형 건물, 건물을 주행하는 로봇 제어 방법 및 시스템
JP2024514132A (ja) ロボット遠隔制御方法及びシステム、並びにエレベータの最適待機位置に搭乗するロボットが走行する建物
KR20230171826A (ko) 로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템
KR20230144380A (ko) 로봇 친화형 건물, 로봇 운영 모니터링 방법 및 시스템
KR20230056270A (ko) 건물을 주행하는 로봇 제어 방법 및 시스템
KR20220131060A (ko) 로봇 원격 제어 방법 및 시스템
KR20230094043A (ko) 로봇 친화형 건물, 로봇의 작업 제어 방법 및 시스템
KR20230173939A (ko) 로봇 친화형 건물, 로봇 운용을 위한 맵 생성 방법 및 시스템
KR20230091639A (ko) 로봇 친화형 건물, 로봇을 활용한 배송 방법 및 시스템
KR102355263B1 (ko) 로봇 제어 방법 및 시스템