KR20230033980A - 배송 로봇 및 그 배송 로봇의 제어 방법 - Google Patents

배송 로봇 및 그 배송 로봇의 제어 방법 Download PDF

Info

Publication number
KR20230033980A
KR20230033980A KR1020210117024A KR20210117024A KR20230033980A KR 20230033980 A KR20230033980 A KR 20230033980A KR 1020210117024 A KR1020210117024 A KR 1020210117024A KR 20210117024 A KR20210117024 A KR 20210117024A KR 20230033980 A KR20230033980 A KR 20230033980A
Authority
KR
South Korea
Prior art keywords
door
delivery robot
revolving door
distance
revolving
Prior art date
Application number
KR1020210117024A
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 KR1020210117024A priority Critical patent/KR20230033980A/ko
Priority to PCT/KR2021/013938 priority patent/WO2023033232A1/en
Priority to US17/545,753 priority patent/US11966226B2/en
Publication of KR20230033980A publication Critical patent/KR20230033980A/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/1684Tracking a line or surface by means of sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • 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
    • EFIXED CONSTRUCTIONS
    • E06DOORS, WINDOWS, SHUTTERS, OR ROLLER BLINDS IN GENERAL; LADDERS
    • E06BFIXED OR MOVABLE CLOSURES FOR OPENINGS IN BUILDINGS, VEHICLES, FENCES OR LIKE ENCLOSURES IN GENERAL, e.g. DOORS, WINDOWS, BLINDS, GATES
    • E06B3/00Window sashes, door leaves, or like elements for closing wall or like openings; Layout of fixed or moving closures, e.g. windows in wall or like openings; Features of rigidly-mounted outer frames relating to the mounting of wing frames
    • E06B3/90Revolving doors; Cages or housings therefor
    • 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/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • 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/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0248Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means in combination with a laser
    • EFIXED CONSTRUCTIONS
    • E05LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
    • E05FDEVICES FOR MOVING WINGS INTO OPEN OR CLOSED POSITION; CHECKS FOR WINGS; WING FITTINGS NOT OTHERWISE PROVIDED FOR, CONCERNED WITH THE FUNCTIONING OF THE WING
    • E05F15/00Power-operated mechanisms for wings
    • E05F15/60Power-operated mechanisms for wings using electrical actuators
    • E05F15/603Power-operated mechanisms for wings using electrical actuators using rotary electromotors
    • E05F15/608Power-operated mechanisms for wings using electrical actuators using rotary electromotors for revolving wings

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Automation & Control Theory (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Tourism & Hospitality (AREA)
  • Strategic Management (AREA)
  • Civil Engineering (AREA)
  • Structural Engineering (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Optics & Photonics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Electromagnetism (AREA)
  • Development Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Manipulator (AREA)
  • Human Computer Interaction (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

본 발명은 배송 로봇에 대한 것으로, 적어도 하나의 이미지 센서를 포함하는 센싱부와, 상기 배송 로봇의 본체를 이동시키는 구동부 및, 상기 적어도 하나의 센서에서 획득되는 상기 배송 로봇 전방의 이미지로부터 회전문을 검출 및, 검출된 회전문의 이미지로부터 회전축을 중심으로 회전하는 적어도 하나의 문 날개의 특징을 검출하며, 검출된 적어도 하나의 문 날개의 특징으로부터 상기 회전문의 회전 속도와 회전문 내부의 영역 크기, 그리고 상기 문 날개들의 개수를 포함하는 회전문 특징을 검출 및, 검출된 회전문 특징에 근거하여 상기 배송 로봇의 초기 위치와 상기 회전문 내부로의 진입 시점을 포함하는 진입 경로, 상기 회전문으로부터의 이탈 시점과 이탈점을 포함하는 이탈 경로를 생성하고, 상기 진입 경로와 이탈 경로에 따라 주행하여 상기 배송 로봇이 상기 회전문을 통과하도록 상기 구동부를 제어하는 제어부를 포함하는 것을 특징으로 한다.

Description

배송 로봇 및 그 배송 로봇의 제어 방법{DELIVERY ROBOT AND CONTROL METHOD OF THE DELIVERY ROBOT}
본 발명은 자율 주행을 통해 고객에게 물품을 배송하는 배송 로봇에 대한 것이다.
로봇은 스스로 보유한 능력에 의해 주어진 일을 자동으로 처리하거나 작동하는 기계일 수 있다. 특히, 환경을 인식하고 스스로 판단하여 동작을 수행하는 기능을 갖는 로봇을 지능형 로봇이라 칭할 수 있으며, 지능형 로봇을 이용하여 다양한 서비스를 제공할 수 있다.
이러한 지능형 로봇은 인식된 환경과 스스로의 판단에 따라 동작함으로써, 로봇을 이용하는 사용자의 편의성이 크게 증대될 수 있다. 그리고 이러한 지능형 로봇을 통해 제공하는 서비스의 일환으로, 고객이 온라인 등으로 구매한 물품을 라스트 마일(last mile) 구간에서 배송하는 배송 서비스가 고려되고 있다.
라스트 마일 구간은, 상품이 고객에게 직접 전달되는 물류 배송 구간의 마지막 구간을 의미하는 것으로, 물류 배송의 각 구간 중 노동 집약도가 가장 높은 구간이다. 따라서 상기 라스트 마일 구간의 배송을 인력이 아닌 로봇을 이용하는 경우 효율성을 크게 증가시킬 수 있다는 장점이 있다. 이에 로봇을 이용한 상기 라스트 마일 구간에서의 배송 서비스를 위해 로봇이 주변 환경을 인식하고 인식된 주변 환경에 따라 자율적으로 주행할 수 있도록 하는 자율 주행 기능의 필요성이 대두되고 있다.
한편 통상적으로 고객은 건물 내부에 위치한다. 이에 따라 상기 라스트 마일 구간에서의 배송은 건물 내부로의 진입 및 건물 외부로의 진출 과정을 포함한다. 따라서 로봇(이하 배송 로봇)을 이용하여 상기 라스트 마일 구간에서의 배송 서비스를 제공하기 위해서는, 상기 자율 주행 기능은 배송 로봇이 건물 내부로의 진입 및 건물 외부로의 진출할 수 있도록 하여야 한다.
한편 건물 등의 경우 냉방 또는 난방 온도의 유지나, 이물질등의 건물 내 유입을 방지하기 위해 자동으로 오픈 및 클로즈되는 자동문이 설치된다. 이러한 자동문 중 평면 형태의 자동문(평면 자동문)의 경우, 기 설정된 감지 위치에 사람 등이 위치하는지를 감지하고, 감지 결과에 따라 동작하여 자동으로 오픈될 수 있도록 한다. 따라서 이러한 평면 자동문의 경우 배송 로봇이 상기 감지 위치로 이동함으로써 상기 자동문이 오픈되도록 할 수 있다.
그런데 상기 자동문은 2개 내지 4개의 문이 중앙의 회전축을 중심으로 등속도로 회전하는 형태의 회전문일 수 있다. 이러한 회전문의 경우 기 설정된 감지 위치가 존재하지 않으므로, 상기 감지 위치를 이용하여 자동문이 구동되도록 하는 방법으로는 상기 회전문의 통과가 불가능하다는 문제가 있다.
더욱이 회전문의 특성상, 상기 회전문의 회전 속도를 모르는 상태에서 배송 로봇이 진입시, 회전문의 문들 중 적어도 하나와 충돌하거나 회전문의 문과 외벽 사이에 끼이는 사고가 발생할 수 있다. 이에 따라 회전문의 회전 속도를 미리 알지 못하거나, 회전문과의 통신을 통해 회전 속도 등의 정보를 미리 확보하지 않는 경우, 상기 회전문을 배송 로봇이 통과하기 어렵다는 문제가 있다.
이러한 문제의 해결을 위한 방안으로, 자동문(회전문)에 설치된 통신 장치와 배송 로봇의 통신 장치 사이의 통신 연결을 통해 상기 회전문의 정보를 배송 로봇이 수신할 수 있도록 하는 방안이 대두되었다. 그러나 이러한 방안은 회전문이, 배송 로봇과의 통신을 위한 통신 장치를 포함하여야 한다는 문제가 있다.
또한 회전문이 통신 장치를 구비한다 하더라도, 회전문과 배송 로봇과의 통신에 필요한 통신 프로토콜이 회전문의 제조사에 따라 서로 다를 수 있다. 따라서 배송 로봇이 다양한 회전문을 통과할 수 있도록 하기 위해서는 각 제조사별로 서로 다른 통신 프로토콜들에 따른 통신이 가능하도록 상기 배송 로봇의 통신 장치가 개발되어야 하는 바, 상기 배송 로봇의 통신 장치 개발 및 구현이 매우 어렵다는 문제가 있다.
따라서 배송 로봇과 자동문 사이의 통신 연결이 없이도, 상기 배송 로봇이 회전문을 자유롭게 통과할 수 있도록 하는 상기 배송 로봇의 자율 주행 기능의 필요성이 대두되고 있는 실정이다.
본 발명은 전술한 문제 및 다른 문제를 해결하는 것을 목적으로 하는 것으로, 배송 로봇과 자동문의 통신 연결 없이, 배송 로봇의 센서만으로 회전문의 특징을 감지하고 감지된 회전문의 특징에 따라 배송 로봇이 주행하여 상기 회전문을 배송 로봇이 통과할 수 있도록 하는 것을 그 목적으로 한다.
또한 본 발명은 자동으로 회전하는 회전문에 의한 끼임 없이 상기 배송 로봇이 안전하게 회전문을 통과할 수 있도록 하는 것을 그 목적으로 한다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따르면, 본 발명의 실시 예에 따른 배송 로봇은, 적어도 하나의 이미지 센서를 포함하는 센싱부와, 상기 배송 로봇의 본체를 이동시키는 구동부 및, 상기 적어도 하나의 센서에서 획득되는 상기 배송 로봇 전방의 이미지로부터 회전문을 검출 및, 검출된 회전문의 이미지로부터 회전축을 중심으로 회전하는 적어도 하나의 문 날개의 특징을 검출하며, 검출된 적어도 하나의 문 날개의 특징으로부터 상기 회전문의 회전 속도와 회전문 내부의 영역 크기, 그리고 상기 문 날개들의 개수를 포함하는 회전문 특징을 검출 및, 검출된 회전문 특징에 근거하여 상기 배송 로봇의 초기 위치와 상기 회전문 내부로의 진입 시점을 포함하는 진입 경로, 상기 회전문으로부터의 이탈 시점과 이탈점을 포함하는 이탈 경로를 생성하고, 상기 진입 경로와 이탈 경로에 따라 주행하여 상기 배송 로봇이 상기 회전문을 통과하도록 상기 구동부를 제어하는 제어부를 포함하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 상기 회전문의 문 날개들 중 다른 문 날개들과 구분 가능한 어느 하나의 문 날개를 식별하고, 상기 식별된 어느 하나의 문 날개의 가장자리로부터 상기 회전축 사이의 이미지상 거리가 변화하는 패턴에 근거하여 상기 회전문의 회전 속도 및 상기 회전문에 구비된 문 날개들의 개수를 검출하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 각 문 날개의 가장자리에서 상기 회전축 사이의 이미지상 거리가 각각 최대값을 가질 때 상기 최대값을 가지는 이미지상 거리에 따라 산출되는 각 문 날개의 넓이와, 상기 각 문 날개들의 형상에 근거하여 각 문 날개의 정적 특징들을 검출하고, 검출된 정적 특징들에 근거하여 상기 어느 하나의 문 날개를 식별하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 상기 식별 가능한 어느 하나의 문 날개의 특징에 대응하는 제1 시점과, 상기 제1 시점 이후에 상기 식별 가능한 어느 하나의 문 날개의 특징이 다시 검출되는 제2 시점 사이의 시간 차에 근거하여 상기 회전문이 1회 회전하는 시간을 산출하고, 상기 회전문이 1회 회전하는 시간과, 상기 식별 가능한 어느 하나의 문 날개의 가장자리에서 상기 회전축 사이의 이미지상 거리에 근거하여, 상기 회전문의 회전 속도 및 상기 회전문의 문 날개 개수를 산출하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 상기 식별 가능한 어느 하나의 문 날개의 가장자리에서 상기 회전축 사이의 이미지상 거리에 근거하여 상기 회전문 내부 영역의 크기를 산출하고, 산출된 회전문 내부 영역의 크기와 상기 회전문의 문 날개 개수에 근거하여 상기 배송 로봇이 상기 회전문 영역으로 진입 가능한 진입 공간의 크기를 산출하는 것을 특징으로 한다.
일 실시 예에 있어서, 회전문의 분당 회전수 별 각속도에 근거하여, 기 설정된 각도만큼 회전문이 회전할 때의 소요 시간에 대한 정보를 포함하는 저장부를 더 구비하고, 상기 제어부는, 상기 회전축의 좌측 또는 우측 중 일측의 문 날개 가장자리에서 상기 회전축 사이의 이미지상 거리가 최대값인 시점과 최소값인 시점 사이의 시간차를 산출 및, 산출된 시간차와 상기 소요 시간에 대한 정보에 근거하여 상기 회전문의 분당 회전수를 산출하고, 상기 회전축의 좌측 또는 우측 중 일측에서, 문 날개의 가장자리로부터 회전축 사이의 이미지상 거리의 변화 패턴이 반복되는 회수에 따라, 서로 다른 문 날개를 가지는 회전문들이 각각 1 회전 시에 소요될 수 있는 예상 소요 시간들을 산출하며, 상기 예상 소요 시간들 중, 상기 분당 회전수에 근거하여 산출되는 상기 회전문의 1 회전 시 소요 시간에 대응하는 어느 하나에 근거하여, 상기 회전문의 문 날개 개수를 추정하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 상기 회전문의 회전축을 중심으로, 회전축 좌측의 문 날개 가장 자리로부터 상기 회전축 사이의 제1 거리 및, 회전축 우측의 문 날개 가장 자리로부터 상기 회전축 사이의 제2 거리를 검출하며, 검출된 제1 거리와 제2 거리가 같아지는 시점에서 상기 제1 거리와 제2 거리가 최대값을 가지는지 여부에 따라 상기 회전문이 3개의 문 날개를 가지는지 여부를 판단하며, 상기 회전문이 3개의 문 날개를 가지지 않는 것으로 판단되는 경우, 상기 제1 거리와 제2 거리의 변화 패턴에 근거하여 상기 회전문의 문 날개 개수를 2개 또는 4개로 판단하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 검출된 제1 거리와 제2 거리가 같아지는 시점에서, 상기 제1 거리와 제2 거리가, 상기 제1 거리와 제2 거리 각각의 최대값을 기준으로 기 설정된 비율 이상의 값을 가지는지 여부에 근거하여 상기 제1 거리와 제2 거리가 최대값을 가지는지 여부를 판단하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 상기 회전문이 3개의 문 날개를 가지지 않는 것으로 판단되는 경우, 기 설정된 시간 내에 상기 제1 거리와 제2 거리가 모두 0에 근접한 값을 가지거나, 또는 상기 제1 거리와 제2 거리가 모두 검출되지 않은 경우가 발생하는지 여부에 근거하여 상기 회전문의 문 날개 개수를 2개 또는 4개로 판단하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 상기 적어도 하나의 이미지 센서로부터 획득되는 이미지 정보로부터, 이미지 센서가 지향하는 각도 및 상기 이미지 정보에 포함된 거리 정보에 근거하여, 일부 영역을 관심 영역(Region Of Interest)으로 추출하고, 상기 추출된 관심 영역으로부터 상기 회전문이 있는지 여부를 검출하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 상기 회전문의 각 문 날개에 의해 구분되는 어느 하나의 공간을 상기 배송 로봇이 진입할 진입 공간으로 결정하고, 상기 회전문의 회전 속도에 따라 상기 진입 공간의 위치를 검출 및, 검출된 진입 공간의 위치에 따라 상기 배송 로봇이 상기 진입 공간으로 진입할 상기 진입 경로를 생성하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 상기 배송 로봇이, 상기 진입 공간으로 진입하는 경우, 상기 회전문의 회전 속도에 따라 상기 진입 공간의 위치가 기 설정된 각도 이상 변경되는 시간을 산출하고, 산출된 시간에 근거하여 상기 이탈 경로를 생성하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 상기 진입 공간이, 상기 회전문의 회전 속도에 따라 기 설정된 진입 위치로 이동할 때까지의 시간과 상기 회전문과 상기 배송 로봇 사이의 거리에 따라 진입 속도를 결정하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 기 설정된 진입 위치는, 상기 진입 공간의 중앙 지점이 상기 회전문의 입구 중앙 지점에 대응하는 위치임을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 상기 배송 로봇이 상기 회전문 내부의 영역을 주행하는 경우, 상기 배송 로봇 주변의 문 날개들 및 상기 회전문을 둘러싼 외벽과 상기 배송 로봇 사이의 이격 거리들을 검출하고, 검출된 이격 거리들과 상기 회전문의 회전 속도에 근거하여 상기 배송 로봇이 주행하도록 상기 구동부를 제어하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 상기 회전축을 중심으로 상기 배송 로봇이 상기 회전문으로의 진입을 시작하는 상기 배송 로봇의 초기 위치에 대칭되는 지점에 상기 이탈점을 형성하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 상기 회전문의 내부 영역에서 주행하는 경우, 상기 배송 로봇의 위치를 지속적으로 갱신하며, 갱신된 배송 로봇의 위치와 상기 이탈점이 기 설정된 범위 이내로 근접하면, 상기 이탈점과 상기 갱신된 배송 로봇의 위치를 잇는 상기 이탈 경로를 생성하며, 상기 이탈 경로가 회전하는 문 날개에 충돌하는지 여부에 근거하여 상기 이탈 경로에 따라 주행하도록 상기 구동부를 제어하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는, 상기 배송 로봇 전방의 문 날개 가장 자리와 상기 회전문을 둘러싼 외벽 사이의 거리를 검출하고, 검출된 거리가 기 설정된 거리 이상인지 여부에 따라 상기 이탈 경로에 따라 주행 시 문 날개에 충돌할 지 여부를 판단하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 기 설정된 거리는, 상기 배송 로봇의 크기에 따라 결정되는 것을 특징으로 한다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따르면, 본 발명의 실시 예에 따른 배송 로봇의 제어 방법은, 적어도 하나의 이미지 센서를 통해 획득되는 적어도 하나의 이미지에 근거하여 상기 배송 로봇의 전방에 위치한 회전문을 검출하는 단계와, 검출된 회전문의 이미지로부터, 회전축을 중심으로 회전하는 적어도 하나의 문 날개의 특징을 검출하는 단계와, 검출된 문 날개의 특징에 근거하여, 상기 회전문의 회전 속도와 회전문 내부의 영역 크기, 그리고 상기 문 날개들의 개수를 포함하는 회전문 특징을 검출하는 단계와, 검출된 회전문의 특징으로부터 상기 배송 로봇의 초기 위치와 상기 회전문 내부로의 진입 시점을 포함하는 진입 경로를 생성하고, 생성된 진입 경로에 따라 주행하도록 상기 배송 로봇의 구동부를 제어하는 단계와, 상기 회전문 내부의 영역으로 진입하는 경우, 상기 회전문의 회전 속도 및 회전하는 문 날개들의 이동에 따라 상기 회전문 내부 영역을 주행하도록 상기 구동부를 제어하는 단계와, 상기 배송 로봇의 초기 위치에 근거하여 상기 회전문의 출구에 위치한 이탈점을 결정 및, 상기 이탈점과 상기 배송 로봇의 위치에 근거하여 이탈 경로를 생성하는 단계 및, 상기 이탈 경로와 상기 배송 로봇 주변의 문 날개에 근거하여 상기 이탈 경로에 따라 주행하도록 상기 구동부를 제어하는 단계를 포함하는 것을 특징으로 한다.
본 발명에 따른 배송 로봇 및 그 배송 로봇의 제어 방법의 효과에 대해 설명하면 다음과 같다.
본 발명의 실시 예들 중 적어도 하나에 의하면, 본 발명은 회전문의 회전 상태에 따른 상기 회전문의 특징을 검출하고, 검출된 회전문의 특징에 따라 진입 공간의 크기와 상기 회전문의 회전 속도를 산출할 수 있도록 한다. 그리고 상기 배송 로봇이, 산출된 진입 공간의 크기 및 회전 속도에 따라 상기 회전문이 회전하는 영역에 진입하고 또 이탈할 수 있도록 함으로써, 상기 배송 로봇이, 회전문과의 통신 연결 없이, 주변 환경을 감지한 결과만으로 회전문을 통과할 수 있도록 한다는 효과가 있다.
또한 본 발명은, 상기 진입 공간으로 진입한 로봇이, 상기 회전문의 회전 속도에 따라 주행하도록 함으로써, 상기 회전문에 의한 끼임 사고 또는 충돌 사고 없이 상기 배송 로봇이 상기 회전문을 통과할 수 있도록 한다는 효과가 있다.
도 1은 배송 시스템의 구성도이다.
도 2a는 주행 영역의 일 예를 나타낸 예시도 1-a이다.
도 2b는 주행 영역의 일 예를 나타낸 예시도 1-b이다.
도 3a는 주행 영역의 일 예를 나타낸 예시도 2-a이다.
도 3b는 주행 영역의 일 예를 나타낸 예시도 2-b이다.
도 4는 주행 영역의 일 예를 나타낸 예시도 3이다.
도 5는 배송 로봇의 외부 구성을 나타낸 예시도이다.
도 6은 배송 로봇의 내부 구성을 나타낸 예시도이다.
도 7a는 배송 로봇의 이동 경로 설정의 일 예를 나타낸 예시도 a이다.
도 7b는 배송 로봇의 이동 경로 설정의 일 예를 나타낸 예시도 b이다.
도 8은 본 발명의 실시 예에 따른 배송 로봇이 회전문을 검출하고 검출된 회전문을 통과하는 동작 과정을 도시한 흐름도이다.
도 9는, 상기 도 8의 동작 과정 중 주변 환경을 감지한 결과로부터 회전문을 식별하는 동작 과정을 보다 자세히 도시한 흐름도이다.
도 10은, 상기 도 8의 동작 과정 중, 회전문의 특징을 검출하는 동작 과정을 보다 자세히 도시한 흐름도이다.
도 11은, 회전문의 입구 부분에서 획득되는 회전문의 이미지로부터, 회전하는 적어도 하나의 문에 대한 특징을 검출하는 예를 도시한 예시도이다.
도 12는 회전문의 회전축 좌우 양측 문 날개들의 특징에 근거하여 문 날개들의 개수를 검출하는 동작 과정을 도시한 흐름도이다.
도 13 내지 도 15는, 회전문의 문 날개 개수에 따라 서로 달라지는 문 날개들의 특징들을 설명하기 위한 예시도들이다.
도 16은, 배송 로봇이, 산출된 진입 공간 및 회전문의 회전 속도에 근거하여 회전문 영역으로 진입 및 회전문 영역에서 이탈하는 예를 도시한 예시도이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 동일하거나 유사한 구성요소에는 동일 유사한 도면 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
상기 배송 시스템(10000)은, 도 1에 도시된 바와 같이, 주행 영역을 자율 주행하는 배송 로봇(100) 및 상기 배송 로봇(100)과 통신 네트워크(400)를 통해 통신 연결되어, 상기 배송 로봇(100)의 동작을 관제하는 관제 서버(200)를 포함한다. 또한, 상기 배송 시스템(10000)은, 상기 배송 로봇(100) 및 상기 관제 서버(200) 중 하나 이상과 통신 연결되어, 상기 배송 로봇(100) 및 상기 관제 서버(200) 중 하나 이상과 정보를 송수신하는 하나 이상의 통신 장치(300)를 더 포함할 수 있다.
상기 배송 로봇(100)은 스스로 보유한 능력에 의해 주어진 일을 자동으로 처리하거나 작동하는 지능형 로봇일 수 있다. 상기 지능형 로봇의 예를 들면, 바닥면의 센서, 자기장, 비전기기 등에 의해 움직이는 운송 장치인 AGV(Automated Guided Vehicle), 또는 공항, 쇼핑몰, 또는 호텔 등에서 이용객에게 안내 정보를 제공하는 안내 로봇일 수 있다.
상기 배송 로봇(100)은, 액츄에이터 또는 모터를 포함하는 구동부를 구비하여 로봇 관절을 움직이는 등의 다양한 물리적 동작을 수행할 수 있다. 예컨대, 상기 배송 로봇(100)이 상기 주행 영역을 자율 주행하게 될 수 있다. 상기 자율 주행은 스스로 주행하는 기술을 의미하며, 상기 배송 로봇(100)은 사용자의 조작 없이 또는 사용자의 최소한의 조작으로 주행하는 자율 주행 차량(Vehicle)(로봇)일 수 있다. 상기 자율 주행에는 주행중인 차선을 유지하는 기술, 어댑티브 크루즈 컨트롤과 같이 속도를 자동으로 조절하는 기술, 정해진 경로를 따라 자동으로 주행하는 기술, 목적지가 설정되면 자동으로 경로를 설정하여 주행하는 기술 등이 모두 포함될 수 있다.
이러한 자율 주행을 수행하기 위해 상기 배송 로봇(100)은, 인공 지능(AI: Artificial Intelligence) 및/또는 머신 러닝이 적용된 로봇일 수 있다. 상기 배송 로봇(100)은, 상기 인공 지능 및/또는 머신 러닝을 통해 상기 주행 영역을 자율 주행하며 다양한 동작을 수행할 수 있다. 이를테면, 상기 관제 서버(200)로부터 지정된 명령에 따른 동작을 수행하거나, 자체적인 탐색/감시 동작을 수행하게 될 수 있다.
상기 배송 로봇(100)에 적용되는 인공 지능 및/또는 머신 러닝 기술에 대한 구체적인 설명은 다음과 같다.
인공 지능(AI: Artificial Intelligence)은 인공적인 지능 또는 이를 만들 수 있는 방법론을 연구하는 분야를 의미하며, 머신 러닝(기계 학습, Machine Learning)은 인공 지능 분야에서 다루는 다양한 문제를 정의하고 그것을 해결하는 방법론을 연구하는 분야를 의미한다. 머신 러닝 기술은 적어도 하나의 알고리즘에 근거하여, 대규모의 정보들을 수집 및 학습하고, 학습된 정보를 바탕으로 정보를 판단 및 예측하는 기술이다. 정보의 학습이란 정보들의 특징, 규칙, 판단 기준 등을 파악하여, 정보와 정보 사이의 관계를 정량화하고, 정량화된 패턴을 이용하여 새로운 데이터들을 예측하는 동작을 의미한다. 머신 러닝은 어떠한 작업에 대하여 꾸준한 경험을 통해 그 작업에 대한 성능을 높이는 알고리즘으로 정의하기도 한다.
머신 러닝 기술이 사용하는 알고리즘은 통계학에 기반한 알고리즘이 될 수 있으며, 예를 들어, 트리 구조 형태를 예측 모델로 사용하는 의사 결정 나무(decision tree), 생물의 신경 네트워크 구조와 기능을 모방하는 인공 신경망(neural network), 생물의 진화 알고리즘에 기반한 유전자 프로그래밍(genetic programming), 관측된 예를 군집이라는 부분집합으로 분배하는 군집화(Clustering), 무작위로 추출된 난수를 통해 함수값을 확률로 계산하는 몬테카를로 방법(Monter carlo method) 등이 될 수 있다. 머신 러닝 기술의 한 분야로써, 인공 신경망 알고리즘을 이용하여, 정보들을 학습, 판단, 처리 중 적어도 하나를 수행하는 딥러닝 기술이 있다.
인공 신경망(ANN: Artificial Neural Network)은 머신 러닝에서 사용되는 모델로서, 시냅스의 결합으로 네트워크를 형성한 인공 뉴런(노드)들로 구성되는, 문제 해결 능력을 가지는 모델 전반을 의미할 수 있다. 인공 신경망은 레이어와 레이어 사이를 연결하고, 레이어와 레이어 사이의 데이터를 전달하는 구조를 가질 수 있다. 이러한 딥러닝 기술은 병렬 연산에 최적화된 GPU(graphic processing unit)를 이용하여 인공 신경망을 통하여 방대한 양의 정보를 학습할 수 있다.
인공 신경망은 다른 레이어의 뉴런들 사이의 연결 패턴, 모델 파라미터를 갱신하는 학습 과정, 출력값을 생성하는 활성화 함수(Activation Function)에 의해 정의될 수 있다. 인공 신경망은 입력층(Input Layer), 출력층(Output Layer), 그리고 선택적으로 하나 이상의 은닉층(Hidden Layer)을 포함할 수 있다. 각 층은 하나 이상의 뉴런을 포함하고, 인공 신경망은 뉴런과 뉴런을 연결하는 시냅스를 포함할 수 있다. 인공 신경망에서 각 뉴런은 시냅스를 통해 입력되는 입력 신호들, 가중치, 편향 등에 대한 활성 함수의 함숫값을 출력할 수 있다. 모델 파라미터는 학습을 통해 결정되는 파라미터를 의미하며, 시냅스 연결의 가중치와 뉴런의 편향(Bias) 등이 포함된다. 그리고, 하이퍼 파라미터는 머신 러닝 알고리즘에서 학습 전에 설정되어야 하는 파라미터를 의미하며, 학습률(Learning Rate), 반복 횟수, 미니 배치 크기, 초기화 함수 등이 포함된다.
인공 신경망에서 학습의 목적은 손실 함수를 최소화하는 모델 파라미터를 결정하는 것으로 볼 수 있다. 손실 함수는 인공 신경망의 학습 과정에서 최적의 모델 파라미터를 결정하기 위한 지표로 이용될 수 있다.
머신 러닝은 학습 방식에 따라 지도 학습(Supervised Learning), 비지도 학습(Unsupervised Learning), 강화 학습(Reinforcement Learning)으로 분류할 수 있다.
지도 학습은 학습 데이터에 대한 레이블(Label)이 주어진 상태에서 인공 신경망을 학습시키는 방법을 의미하며, 레이블이란 학습 데이터가 인공 신경망에 입력되는 경우 인공 신경망이 추론해 내야 하는 정답(또는 결과 값)을 의미할 수 있다. 비지도 학습은 학습 데이터에 대한 레이블이 주어지지 않는 상태에서 인공 신경망을 학습시키는 방법을 의미할 수 있다. 강화 학습은 어떤 환경 안에서 정의된 에이전트가 각 상태에서 누적 보상을 최대화하는 행동 혹은 행동 순서를 선택하도록 학습시키는 학습 방법을 의미할 수 있다.
인공 신경망 중에서 복수의 은닉층을 포함하는 심층 신경망(DNN: Deep Neural Network)으로 구현되는 머신 러닝을 딥러닝(심층 학습, Deep Learning)이라 부르기도 하며, 딥러닝은 머신 러닝의 일부이다. 이하에서, 머신 러닝은 딥러닝을 포함하는 의미로 사용된다.
상기 배송 로봇(100)은, 이와 같은 인공 지능 및/또는 머신 러닝 기술이 미적용된 형태로도 구현될 수 있으나, 이하에서는 상기 배송 로봇에 상기 인공 지능 및/또는 머신 러닝 기술이 적용된 형태를 중점으로 설명한다.
상기 배송 로봇(100)이 동작하는 상기 주행 영역은 실내 또는 실외일 수 있다. 상기 배송 로봇(100)은 벽이나 기둥 등에 의해 구획된 구역에서 동작할 수 있다. 이 경우, 상기 배송 로봇(100)의 동작 구역은 설계 목적, 로봇의 작업 속성, 로봇의 이동성 및 기타 다양한 요인에 따라 다양하게 설정될 수 있다. 또한, 상기 배송 로봇(100)은 미리 정의되지 않은 개방된 구역에서 동작할 수도 있다. 또한, 상기 배송 로봇(100)은 주변 환경을 센싱하여 스스로 동작 구역을 결정할 수도 있다. 이러한 동작은, 상기 배송 로봇(100)에 적용된 인공 지능 및/또는 머신 러닝 기술을 통해 이루어지게 될 수 있다.
상기 배송 로봇(100)과 상기 관제 서버(200)는, 상기 통신 네트워크(400)를 통해 통신 연결되어 상호간에 데이터를 송수신할 수 있다. 또한, 상기 배송 로봇(100)과 상기 관제 서버(200) 각각은, 상기 통신 네트워크(400)를 통해 상기 통신 장치(300)와 데이터를 송수신할 수도 있다. 여기서, 상기 통신 네트워크(400)는, 유무선으로 통신 기기들의 통신 환경을 제공하는 통신망을 의미할 수 있다. 이를테면, LTE/5G 네트워크일 수 있다. 즉, 상기 배송 로봇(100)은, LTE/5G 네트워크(500)를 통해 상기 관제 서버(200) 및/또는 상기 통신 장치(300)와 데이터를 송신하고 수신할 수 있다. 이 경우, 상기 배송 로봇(100) 및 상기 관제 서버(200)는, 상기 통신 네트워크(400)와 연결된 기지국을 통해 통신할 수도 있지만, 상기 기지국을 통하지 않고 직접 통신할 수도 있다. 또한, 상기 통신 네트워크(400)는, LTE/5G 네트워크 외에도 다른 이동 통신 기술표준 또는 통신 방식이 적용될 수 있다. 이를테면, 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) 등) 중 하나 이상일 수도 있다.
상기 통신 네트워크(400)는, 허브, 브리지, 라우터, 스위치 및 게이트웨이와 같은 네트워크 요소들의 연결을 포함할 수 있다. 상기 통신 네트워크(400)는 인터넷과 같은 공용 네트워크 및 안전한 기업 사설 네트워크와 같은 사설 네트워크를 비롯한 하나 이상의 연결된 네트워크들, 예컨대 다중 네트워크 환경을 포함할 수 있다. 상기 통신 네트워크(400)로의 액세스는 하나 이상의 유선 또는 무선 액세스 네트워크들을 통해 제공될 수 있다. 더 나아가 상기 통신 네트워크(400)는 사물 등 분산된 구성요소들 간에 정보를 주고 받아 처리하는 각종 사물 지능 통신(IoT(internet of things), IoE(internet of everything) 및 IoST(internet of small things) 등) 등을 지원할 수 있다.
상기 배송 로봇(100)은 상기 주행 영역에서 동작을 수행하고, 상기 통신 네트워크(400)를 통해 해당 동작과 연관된 정보 또는 데이터를 상기 관제 서버(200)에 제공할 수 있다. 이를테면, 상기 배송 로봇(100)이 상기 배송 로봇(100)의 위치, 수행 중인 동작에 관한 정보를 상기 관제 서버(200)에 제공할 수 있다. 또한, 상기 배송 로봇(100)은 상기 통신 네트워크(400)를 통해 해당 동작과 연관된 정보 또는 데이터를 상기 관제 서버(200)로부터 제공받을 수도 있다. 이를테면, 상기 관제 서버(200)가 상기 배송 로봇(100)의 주행 동작 제어에 관한 정보를 상기 배송 로봇(100)에 제공할 수 있다.
상기 배송 로봇(100)은 상기 통신 네트워크(400)를 통해 자신의 상태 정보 또는 데이터를 상기 관제 서버(200)에 제공할 수도 있다. 여기서, 상기 상태 정보는 상기 배송 로봇(100)의 위치, 배터리 레벨, 부품의 내구도, 소모품의 교체 주기 등에 관한 정보를 포함할 수 있다. 이에 따라, 상기 관제 서버(200)가 상기 배송 로봇(100)으로부터 제공받은 정보를 근거로 상기 배송 로봇(100)을 관제하게 될 수 있다.
한편, 상기 배송 로봇(100)은, 상기 통신 네트워크(400)를 통해 하나 이상의 통신 서비스가 제공될 수 있으며, 또한 상기 통신 서비스를 통한 하나 이상의 통신 플랫폼이 제공될 수 있다. 이를테면, 상기 배송 로봇(100)이 모바일 브로드밴드(Enhanced Mobile Broadband, eMBB), URLLC(Ultra-reliable and low latency communications) 및 mMTC(Massive Machine-type communications) 중에서 적어도 하나의 서비스를 이용하여 상기 통신 대상과 통신할 수 있다.
상기 eMBB(Enhanced Mobile Broadband)는 모바일 브로드밴드 서비스로, 이를 통해 멀티미디어 콘텐츠, 무선데이터 액세스 등이 제공될 수 있다. 또한, 폭발적으로 증가하고 있는 모바일 트래픽을 수용하기 위한 핫스팟(hot spot)과 광대역 커버리지 등 보다 향상된 모바일 서비스가 eMBB를 통해 제공될 수 있다. 핫스팟을 통해 사용자 이동성이 작고 밀도가 높은 지역으로 대용량 트래픽이 수용될 수 있다. 광대역 커버리지를 통해 넓고 안정적인 무선 환경과 사용자 이동성이 보장될 수 있다.
상기 URLLC(Ultra-reliable and low latency communications) 서비스는 데이터 송수신의 신뢰성과 전송 지연 측면에서 기존 LTE 보다 훨씬 엄격한 요구사항을 정의하고 있으며, 산업 현장의 생산 프로세스 자동화, 원격 진료, 원격 수술, 운송, 안전 등을 위한 5G 서비스가 여기에 해당한다.
상기 mMTC(Massive Machine-type communications)는 비교적 작은 양의 데이터 전송이 요구되는 전송지연에 민감하지 않은 서비스이다. 센서 등과 같이 일반 휴대폰 보다 훨씬 더 많은 수의 단말들이 동시에 무선 액세스 네트워크에 mMTC에 의해 접속할 수 있다. 이 경우, 단말의 통신모듈 가격은 저렴해야 하고, 배터리 교체나 재충전 없이 수 년 동안 동작할 수 있도록 향상된 전력 효율 및 전력 절감 기술이 요구된다.
상기 통신 서비스는, 위에서 설명한 상기 eMBB, 상기 URLLC 및 상기 mMTC 외에도 상기 통신 네트워크(400)에 제공 가능한 모든 서비스를 더 포함할 수 있다.
상기 관제 서버(200)는, 상기 배송 시스템(10000)을 중앙 제어하는 서버 장치일 수 있다. 상기 관제 서버(200)는, 상기 배송 시스템(10000)에서 상기 배송 로봇(100)의 주행 및 동작을 관제할 수 있다. 상기 관제 서버(200)는, 상기 주행 영역에 설치되어, 상기 통신 네트워크(400)를 통해 상기 배송 로봇(100)과 통신할 수 있다. 이를테면, 상기 주행 영역에 해당하는 빌딩 중 어느 한 곳에 설치될 수 있다. 상기 관제 서버(200)는 또한, 상기 주행 영역과 다른 곳에 설치되어 상기 배송 시스템(10000)의 운영을 관제할 수도 있다. 상기 관제 서버(200)는, 단일 서버로 구현될 수 있지만, 복수의 서버 세트, 클라우드 서버 또는 이들의 조합 등으로 구현될 수도 있다.
상기 관제 서버(200)는, 상기 배송 로봇(100)으로부터 제공되는 정보 또는 데이터에 기초하여 다양한 분석을 수행할 수 있고, 분석 결과에 기초하여 상기 배송 로봇(100) 전반의 동작을 제어할 수 있다. 상기 관제 서버(200)는, 분석 결과에 기초하여 상기 배송 로봇(100)의 구동을 직접 제어할 수 있다. 또한, 상기 관제 서버(200)는, 분석 결과로부터 유용한 정보 또는 데이터를 도출하여 출력할 수 있다. 또한, 상기 관제 서버(200)는 도출된 정보 또는 데이터를 이용하여 상기 배송 시스템(10000)의 운영에 관련된 파라미터들을 조정할 수 있다.
상기 통신 네트워크(400)를 통해 통신 연결된 상기 배송 로봇(100) 및 상기 관제 서버(200) 중 하나 이상은, 상기 통신 네트워크(400)를 통해 상기 통신 장치(300)와 통신이 연결될 수도 있다. 즉, 상기 배송 로봇(100) 및 상기 관제 서버(200)는, 상기 통신 장치(300) 중 상기 통신 네트워크(400)에 통신 연결이 가능한 장치와 상기 통신 네트워크(400)를 통해 통신이 연결될 수 있다. 상기 배송 로봇(100) 및 상기 관제 서버(200) 중 하나 이상은 또한, 상기 통신 네트워크(400) 외에 다른 통신 방식으로도 상기 통신 장치(300)와 통신이 연결될 수도 있다. 즉, 상기 배송 로봇(100) 및 상기 관제 서버(200) 중 하나 이상은, 상기 통신 장치(300) 중 상기 통신 네트워크(400)와 다른 방식으로 통신 연결이 가능한 장치와 통신이 연결될 수도 있다.
예를 들면, WLAN(Wireless LAN), WPAN(Wireless Personal Area Network), Wi-Fi(Wireless-Fidelity), Wi-Fi(Wireless Fidelity) Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMAX(World Interoperability for Microwave Access), Zigbee, Z-wave, Blue-Tooth, RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultrawide-Band), Wireless USB(Wireless Universal Serial Bus), NFC(Near Field Communication), 가시광 통신(Visible Light Communication), Li-Fi(Light Fidelity) 및 위성 통신 중 하나 이상의 방식으로 상기 통신 장치(300)와 통신이 연결될 수 있다. 또한, 위와 같은 통신 방식 외의 다른 통신 방식으로도 통신이 연결될 수 있다.
상기 통신 장치(300)는, 상기 통신 네트워크(400)를 비롯한 다양한 통신 방식으로 상기 배송 로봇(100) 및 상기 관제 서버(200) 중 하나 이상과 통신 가능한 모든 장치 및/또는 서버를 의미할 수 있다. 이를테면, 이동 단말(310), 정보 제공 시스템(320) 및 전자 장치(330) 중 하나 이상을 포함할 수 있다.
상기 이동 단말(310)은, 상기 통신 네트워크(400)를 통해 상기 배송 로봇(100) 및 상기 관제 서버(200)와 통신 가능한 통신 단말일 수 있다. 상기 이동 단말(310)은, 휴대폰, 스마트 폰(smart phone), 웨어러블 디바이스(wearable device, 예를 들어, 워치형 단말기(smartwatch), 글래스형 단말기 (smart glass), HMD(head mounted display)), 노트북 컴퓨터(laptop computer), 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 슬레이트 PC(slate PC), 태블릿 PC(tablet PC), 울트라북(ultrabook) 등의 이동형 기기들을 포함할 수 있다.
상기 정보 제공 시스템(320)은, 상기 주행 영역에 반영되거나, 상기 주행 영역과 관련된 정보 또는 상기 배송 시스템(10000)의 운영과 관련된 정보 중 하나 이상을 저장 및 제공하는 시스템을 의미할 수 있다. 상기 정보 제공 시스템(320)은, 상기 배송 로봇(100) 및 상기 관제 서버(200)와 연동 가능하여, 상기 배송 로봇(100) 및 상기 관제 서버(200)에 데이터 및 서비스를 제공하는 시스템(서버)일 수 있다.
상기 정보 제공 시스템(320)은, 상기 배송 로봇(100) 및 상기 관제 서버(200)와 통신 연결 및 정보 교환이 가능한 모든 시스템(서버) 중 하나 이상을 포함할 수 있다. 이를테면, 데이터베이스 시스템, 서비스 시스템 및 중앙 제어 시스템 중 하나 이상이 상기 정보 제공 시스템(320)에 포함할 수 있다. 상기 정보 제공 시스템(320)의 구체적인 예를 들면, 상기 배송 로봇(100)의 제조사의 서비스 시스템, 상기 관제 서버(200)의 제조사의 서비스 시스템, 상기 주행 영역에 해당하는 빌딩의 중앙(관리) 제어 시스템, 상기 주행 영역에 해당하는 빌딩에 에너지를 공급하는 공급사의 서비스 시스템, 상기 주행 영역에 해당하는 빌딩의 건설사의 정보 시스템, 상기 이동 단말(200)의 제조사의 서비스 시스템, 상기 통신 네트워크(400)를 통한 통신 서비스를 제공하는 통신사의 서비스 시스템 및 상기 배송 시스템(10000)에 적용되는 애플리케이션의 개발사의 서비스 시스템 중 하나 이상을 포함할 수 있다. 또한, 상기 정보 제공 시스템(320)은, 위와 같은 시스템 외에 상기 배송 시스템(10000)에 연동 가능한 모든 시스템을 더 포함할 수 있다.
상기 정보 제공 시스템(320)은, 상기 배송 로봇(100), 상기 관제 서버(200), 상기 이동 단말(310) 및 상기 전자 장치(330) 등을 포함하는 전자 디바이스들에 다양한 서비스/정보를 제공할 수 있다. 상기 정보 제공 시스템(320)은, 클라우드로 구현될 수 있어서, 복수의 서버를 포함할 수 있으며, 상기 배송 로봇(100), 상기 이동 단말(310) 등이 연산하기 어렵거나 장시간이 소요되는 인공 지능에 관련된 연산을 수행하여 인공 지능에 관련된 모델을 생성할 수 있으며, 관련 정보를 상기 배송 로봇(100) 및 상기 이동 단말(310) 등에 제공할 수 있다.
상기 전자 장치(330)는, 상기 주행 영역에서 상기 통신 네트워크(400)를 비롯한 다양한 통신 방식으로 상기 배송 로봇(100) 및 상기 관제 서버(200) 중 하나 이상과 통신 가능한 통신 장치일 수 있다. 이를테면, 상기 전자 장치(330)는, 개인 컴퓨터, 가전 장치, 월 패드(Wall Pad), 공기조화기, 엘리베이터, 에스컬레이터 및 조명 등의 시설/설비 및 이를 제어하는 제어 장치, 전력량계, 에너지 제어 장치, 자율 주행차 및 홈 로봇 중 하나 이상일 수 있다. 상기 전자 장치(330)는, 상기 배송 로봇(100), 상기 관제 서버(200), 상기 이동 단말(310) 및 상기 정보 제공 시스템(320) 중 하나 이상과 유무선으로 연결될 수 있다.
상기 통신 장치(300)는, 상기 관제 서버(200)의 역할을 분담할 수 있다. 이를테면, 상기 통신 장치(300)가 상기 배송 로봇(100)으로부터 정보 또는 데이터를 획득하여 상기 관제 서버(200)에 제공하거나, 상기 관제 서버(200)로부터 정보 또는 데이터를 획득하여 상기 배송 로봇(100)에 제공할 수 있다. 또한, 상기 통신 장치(130)는, 상기 관제 서버(200)에 의해 수행될 분석의 적어도 일부를 담당할 수 있고, 분석 결과를 상기 관제 서버(200)에 제공할 수도 있다. 또한, 상기 통신 장치(300)는, 상기 관제 서버(200)로부터 분석 결과, 정보 또는 데이터를 제공받아 이를 단지 출력할 수도 있다. 또한, 상기 통신 장치(300)는 상기 관제 서버(200)의 역할을 대신할 수도 있다.
이와 같은 상기 배송 시스템(10000)에서 상기 배송 로봇(100)은, 도 2a 내지 도 4에 도시된 바와 같은 상기 주행 영역을 주행할 수 있다.
상기 주행 영역은, 도 2a 및 도 2b에 도시된 바와 같이, 하나 이상의 층으로 이루어진 건물(BD)의 실내 구역(IZ) 중 적어도 일부분을 포함할 수 있다. 즉, 상기 배송 로봇(100)은, 하나 이상의 층으로 이루어진 건물의 실내 구역(IZ) 중 적어도 일부분의 구역을 주행하게 될 수 있다. 이를테면, 지하, 1층 내지 3층으로 이루어진 건물의 1층 및 2층이 상기 주행 영역에 포함되어, 상기 배송 로봇(100)이 상기 건물의 1층 및 2층 각각을 주행하게 될 수 있다.
또한, 상기 주행 영역은, 도 3a 및 도 3b에 도시된 바와 같이, 복수의 건물(BD1 및 BD2) 각각의 실내 구역(IZ) 중 적어도 일부분을 더 포함할 수 있다. 즉, 상기 배송 로봇(100)은, 하나 이상의 층으로 이루어진 복수의 건물(BD1 및 BD2) 각각의 실내 구역(IZ) 중 적어도 일부분의 구역을 주행하게 될 수 있다. 이를테면, 지하, 1층 내지 3층으로 이루어진 제1 건물 및 단층으로 이루어진 제2 건물 각각의 층이 상기 주행 영역에 포함되어, 상기 배송 로봇(100)이 상기 제1 건물의 지하, 1층 내지 3층 및 상기 제2 건물의 1층 각각을 주행하게 될 수 있다.
또한, 상기 주행 영역은, 도 4에 도시된 바와 같이, 하나 이상의 건물(BD1및 BD2)의 실외 구역(OZ)을 더 포함할 수도 있다. 즉, 상기 배송 로봇(100)은, 하나 이상의 건물(BD1 및 BD2)의 실외 구역(OZ)을 주행하게 될 수 있다. 이를테면, 하나 이상의 건물의 주변 및 상기 하나 이상의 건물로의 이동 경로가 상기 주행 영역에 더 포함되어, 상기 배송 로봇(100)이 하나 이상의 건물의 주변 및 상기 하나 이상의 건물로의 이동 경로를 주행하게 될 수 있다.
상기 배송 시스템(10000)은, 이와 같은 상기 주행 영역에서 상기 배송 로봇(100)을 통한 배송 서비스가 이루어지는 시스템일 수 있다. 상기 배송 시스템(10000)에서 상기 배송 로봇(100)은, 실내 구역 및 실외 구역을 포함하는 상기 주행 영역을 자율 주행하며 특정 동작을 수행할 수 있는데, 이를테면 상기 배송 로봇(100)이 상기 주행 영역상의 일 지점에서 특정 지점으로 이동하며 물품을 운반하게 될 수 있다. 즉, 상기 배송 로봇(100)이 상기 물품을 상기 일 지점에서 상기 특정 지점으로 배송하는 배송 동작을 수행하게 될 수 있다. 이에 따라, 상기 주행 영역상에서 상기 배송 로봇(100)을 통한 배송 서비스가 이루어지게 될 수 있다.
이하, 상기 배송 로봇(100)의 구체적인 구성을 설명한다.
상기 배송 로봇(100)은, 도 5에 도시된 바와 같이, 본체에 하나 이상의 적재부 (110)를 포함할 수 있다. 상기 적재부(110)는, 물품이 적재될 수 있는 하나 이상의 구분된 적재 공간으로 형성될 수 있다. 즉, 상기 적재부(110)는, 하나 이상의 물품이 분리되어 적재될 수 있도록 복수의 적재 공간을 포함할 수 있다. 이 경우, 상기 적재 공간은, 크기가 다른 다양한 물품 군을 적재할 수 있도록 다양한 형태로 이루어질 수 있다. 상기 적재 공간은 밀폐 또는 폐쇄된 공간일 수도 있고, 적어도 일부가 개방된 공간일 수도 있다. 즉, 상기 적재 공간은 칸막이 등에 의해서만 구분된 공간을 포함할 수 있다. 상기 적재부(110)에 적재되는 물품은 특정 고객에게 배송되는 하나의 물품 또는 물품들의 세트일 수 있다. 상기 적재부(110)의 형태 및/또는 구조는, 상기 본체에 다양한 형태로 이루어질 수 있다. 이를테면, 상기 본체에 수평 방향으로 이동 가능한 서랍 형태로 구현될 수 있다.
상기 적재부(110)는, 물품이 거치될 수 있는 거치대(미도시)를 포함할 수 있다. 상기 거치대는, 상기 적재부(110)의 바닥면으로서 구현될 수도 있지만, 상기 적재부(110)의 바닥면에 부착되는 별도의 구조로 구현될 수도 있다. 이 경우, 상기 거치대는 틸팅 가능하게 구성될 수 있고, 상기 배송 로봇(100)은 상기 거치대를 틸팅시키기 위한 구성을 더 포함할 수 있다.
도 5에 도시된 바와 같은 상기 배송 로봇(100)의 외관 구성은 상기 배송 로봇(100)의 일 예를 설명하기 위한 예시에 불과한 것으로, 상기 배송 로봇(100)의 외관 구성은 도 5에 도시된 바와 같은 예시 외의 다른 구조/형태로도 이루어질 수 있으며, 앞서 설명한 구성과 다른 구성을 더 포함할 수 있다.
한편, 상기 배송 로봇(100)은, 도 6에 도시된 바와 같이, 통신부(131), 입력부(132), 출력부(133), 센싱부(134), 촬영부(135), 저장부(136), 구동부(137), 전원부(138) 및 제어부(130)를 포함할 수 있다. 이때, 도 6에 도시된 구성 요소들이 필수적인 것은 아니어서, 상기 배송 로봇(100)은 그보다 많은 구성 요소들을 포함하거나 그보다 적은 구성 요소들을 포함하여 구현될 수 있다.
상기 통신부(131)는, 하나 이상의 유무선 통신 모듈을 포함하여, 상기 관제 서버(200) 및 상기 통신 장치(300) 등의 통신 대상 장치들과 정보 또는 데이터를 송수신할 수 있다.
상기 통신부(131)는, 상기 통신 대상 장치들과 센서 정보, 사용자 입력, 학습 모델, 제어 신호 등을 송수신할 수 있다. 상기 통신부(131)는 또한, GPS 위성으로부터 GPS 신호를 수신하는 GPS 모듈을 더 포함할 수 있다. 또한, 상기 통신부(131)는, 상기 주행 영역상에 설치된 신호 송신 모듈에서 송신되는 신호를 수신할 수 있는 신호 수신 모듈, 이를테면 초음파 신호를 수신하는 수신 모듈, UWB(Ultra Wide Band) 신호를 수신하는 수신 모듈 및 적외선 신호를 수신하는 수신 모듈 중 하나 이상을 더 포함할 수 있다.
상기 통신부(131)는, 상기 관제 서버(200) 및 상기 통신 장치(300)로부터 상기 주행 영역의 지도(map) 정보를 수신할 수 있다. 상기 지도 정보는, 상기 주행 영역의 실내 구역 및 실외 구역에 대한 지도 정보일 수 있다. 상기 지도 정보는, 실내 구역의 위치, 구조, 배치, 실외 구역의 위치, 도로, 노면의 상태 및 경사각 중 하나 이상에 대한 정보를 포함할 수 있다. 상기 통신부(131)는, 수신된 지도 정보를 상기 제어부(130)에 제공할 수 있다. 상기 지도 정보는, 배송 경로의 결정 및/또는 상기 배송 로봇(100)의 주행에 사용될 수 있다. 상기 지도 정보는, 상기 저장부(136)에 저장될 수 있다.
한편, 상기 배송 로봇(100)이 물품을 배송할 수 있는 지역의 범위에는 제한이 없을 수 있다. 하지만, 상기 배송 로봇(100)의 배터리(전원부)의 용량, 배송 서비스의 효율성 등에 따라 상기 배송 로봇(100)의 배송 범위는 일정 영역으로 제한될 수도 있다. 이 경우, 상기 지도 정보는, 상기 배송 로봇(100)의 배송 범위를 커버하는 전체 지역들의 지도 정보를 포함할 수 있다. 또한, 상기 지도 정보는, 상기 배송 로봇(100)의 현재 위치를 기준으로 일정 범위 내에 해당하는 근접한 지역의 지도 정보만을 포함할 수도 있다.
상기 통신부(131)는, 미리 결정된 주기마다 상기 지도 정보를 수신할 수 있다. 또한, 상기 통신부(131)는, 상기 제어부(130)로부터의 요청이 있을 때, 상기 지도 정보를 수신할 수도 있다.
상기 통신부(131)는, 상기 관제 서버(200) 또는 상기 통신 장치(300)로부터 물품 정보를 수신할 수 있다. 상기 물품 정보는, 상기 물품의 식별 정보를 포함하여, 상기 물품의 종류, 크기, 무게, 발신지 및 수신지 및 배송 일자 중 하나 이상에 대한 정보를 포함할 수 있다. 상기 통신부(131)는, 수신된 물품 정보를 상기 제어부(130)에 제공할 수 있다. 상기 물품 정보는, 상기 저장부(136)에 저장될 수 있다.
상기 통신부(131)는, 동작 상태에 대한 정보를 상기 제어부(130)에 전달하고, 상기 제어부(130)로부터 동작에 대한 제어 명령을 전달받을 수 있다. 상기 통신부(131)는, 상기 제어부(130)로부터 전달받은 제어 명령에 따라 동작하게 될 수 있다. 즉, 상기 통신부(131)는 상기 제어부(130)에 의해 제어될 수 있다.
상기 입력부(132)는, 적어도 하나의 버튼, 스위치, 터치패드 및 오디오 신호를 획득하기 위한 마이크로폰 등의 입력 수단 중 하나 이상과, 디스플레이부 등의 출력 수단을 포함하여, 사용자 명령을 비롯한 다양한 종류의 데이터를 입력받고, 상기 배송 로봇(100)의 동작 상태를 출력할 수 있다.
예를 들면, 상기 디스플레이부를 통해 배송 서비스 수행에 대한 명령이 입력되고, 상기 배송 서비스의 수행에 대한 상태를 출력할 수 있다. 여기서, 상기 디스플레이부는, 발광 다이오드(Light Emitting Diode; LED), 액정 표시 장치(Liquid Crystal Display; LCD), 플라즈마 표시 패널(Plasma Display Panel), 유기 발광 다이오드(Organic Light Emitting Diode; OLED) 중 어느 하나의 소자로 형성될 수 있다. 상기 입력부(132)의 구성 요소들은 배송자 또는 수령자의 편의성을 고려하여 다양한 위치에 배치될 수 있다. 예를 들어, 도 5에 도시된 바와 같이, 상기 배송 로봇(100)의 헤드부(120)에 배치될 수 있다.
상기 입력부(132)는, 상기 디스플레이부를 통해 상기 배송 로봇(100)의 동작 상태를 표시하고, 상기 배송 로봇(100)의 제어 조작이 이루어지는 제어 화면을 표시할 수 있다. 상기 제어 화면은, 상기 배송 로봇(100)의 구동 상태가 표시 출력되고, 사용자로부터 상기 배송 로봇(100)의 구동 조작에 대한 명령이 입력되는 사용자 인터페이스 화면을 의미할 수 있다. 상기 제어 화면은, 상기 제어부(130)의 제어를 통해 상기 디스플레이부에 표시되고, 상기 제어 화면 상의 표시 및 입력된 명령 등이 상기 제어부(130)에 의해 제어될 수 있다.
상기 입력부(132)는, 배송자로부터 상기 물품 정보가 입력될 수 있다. 여기서, 상기 물품 정보는, 인공 신경망을 학습시키기 위한 학습 데이터로서 사용될 수 있다. 이 경우, 인공 신경망은 물품을 나타내는 이미지, 음성 및 텍스트에 대응하는 물품의 종류를 출력하도록 학습될 수 있다. 상기 입력부(132)는, 입력된 상기 물품 정보를 상기 제어부(130)에 제공할 수 있다.
상기 입력부(132)는 또한, 인공 신경망을 학습시키기 위한 학습 데이터 및 학습 모델을 이용하여 출력을 획득할 때 사용될 입력 데이터 등을 획득할 수 있다. 상기 입력부(132)는, 가공되지 않은 입력 데이터를 획득할 수도 있으며, 이 경우 상기 제어부(130)는 입력 데이터에 대하여 전처리로써 입력 특징점(input feature)을 추출할 수 있다.
상기 입력부(132)는, 동작 상태에 대한 정보를 상기 제어부(130)에 전달하고, 상기 제어부(130)로부터 동작에 대한 제어 명령을 전달받을 수 있다. 상기 입력부(132)는, 상기 제어부(130)로부터 전달받은 제어 명령에 따라 동작하게 될 수 있다. 즉, 상기 입력부(132)는 상기 제어부(130)에 의해 제어될 수 있다.
상기 출력부(133)는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시킬 수 있다. 상기 출력부(133)는, 시각 정보를 출력하는 표시부, 청각 정보를 출력하는 스피커 및 촉각 정보를 출력하는 햅틱 모듈 등을 포함할 수 있다. 상기 출력부(133)의 적어도 일부 구성요소들은 상기 입력부(132)와 함께 상기 배송 로봇(200)의 헤드부(120)에 배치될 수 있다.
상기 출력부(133)는 상기 배송 로봇(100)의 동작 중 이벤트 발생 시, 상기 이벤트에 관한 알람을 출력할 수 있다. 예를 들면, 상기 배송 로봇(100)의 구동 전원이 소진되거나, 상기 배송 로봇(100)에 충격이 가해지거나, 상기 주행 영역 상에서 사고가 발생할 시, 주변에 이에 대한 정보가 전달되도록 알람 음성을 출력하게 될 수 있다.
상기 출력부(133)는, 동작 상태에 대한 정보를 상기 제어부(130)에 전달하고, 상기 제어부(130)로부터 동작에 대한 제어 명령을 전달받을 수 있다. 상기 출력부(133)는, 상기 제어부(130)로부터 전달받은 제어 명령에 따라 동작하게 될 수 있다. 즉, 상기 출력부(133)는 상기 제어부(133)에 의해 제어될 수 있다.
상기 센싱부(134)는, 상기 배송 로봇(100)의 자세 및 동작에 대한 정보를 센싱하는 하나 이상의 센서를 포함할 수 있다. 이를테면, 상기 배송 로봇(100)의 움직임을 감지하는 기울기 센서 및 상기 구동부(11)의 구동 속도를 감지하는 속도 센서 중 하나 이상이 상기 센싱부(134)에 포함될 수 있다. 상기 기울기 센서는, 상기 배송 로봇(100)의 전, 후, 좌, 우 방향으로 기울어지는 경우, 기울어진 방향과 각도를 산출하여 상기 배송 로봇(100)의 자세 정보를 센싱할 수 있다. 상기 기울기 센서는 틸트 센서, 가속도 센서 등이 사용될 수 있고, 가속도 센서의 경우 자이로식, 관성식, 실리콘 반도체식 중 어느 것이나 적용 가능하다. 또한, 그 외에 상기 배송 로봇(100)의 움직임을 감지할 수 있는 다양한 센서 또는 장치가 사용될 수 있다. 상기 속도 센서는, 상기 배송 로봇(100)의 구동 바퀴의 구동 속도를 센싱하는 센서일 수 있다. 상기 속도 센서는, 상기 구동 바퀴가 회전하는 경우, 상기 구동 바퀴의 회전을 감지하여 구동 속도를 센싱할 수 있다.
상기 센싱부(134)는 또한, 상기 배송 로봇(100)의 내부 정보, 주변 환경 정보 및 사용자 정보 등을 센싱하는 다양한 센서들을 더 포함할 수 있다. 이를테면, 상기 배송 로봇(100)이 상기 주행 영역을 주행하는 중 상기 주행 영역상의 장애물을 감지할 수 있는 근접 센서, RGB 센서, IR 센서, 조도 센서, 습도 센서, 지문 인식 센서, 초음파 센서, 광 센서, 3D센서, 마이크로폰, 라이다(LiDAR, Light Detection And Ranging), 레이더(RADAR, Radio Detection And Ranging), 낭떠러지 감지센서 및 이들의 임의의 조합들 등이 상기 센싱부(134)에 더 포함될 수 있다.
여기서, 상기 낭떠러기 감지센서의 경우, 발광부와 수광부를 구비한 적외선 센서, 초음파 센서, RF 센서 및 PSD(Position Sensitive Detector) 센서 중 하나 이상이 조합된 센서일 수 있다. 상기 PSD 센서는 적외선 센서의 일종으로서, 적외선을 이용하여, 적외선을 송신한 후 장애물에서 반사되어 돌아오는 적외선의 각도를 측정하여 거리를 측정한다. 즉, 상기 PSD 센서는 삼각측량방식을 이용하여, 장애물과의 거리를 산출할 수 있다. 상기 센싱부(134)에 의해 획득되는 센서 데이터는 상기 배송 로봇(100)이 자율 주행을 수행하는 근거가 될 수 있다.
상기 센싱부(134)는, 센싱 결과에 대한 정보를 상기 제어부(130)에 전달하고, 상기 제어부(130)로부터 동작에 대한 제어 명령을 전달받을 수 있다. 상기 센싱부(134)는, 상기 제어부(130)로부터 전달받은 제어 명령에 따라 동작하게 될 수 있다. 즉, 상기 센싱부(134)는 상기 제어부(130)에 의해 제어될 수 있다.
상기 촬영부(135)는, 상기 배송 로봇(100)의 주변을 촬영하는 하나 이상의 카메라 (센서)를 포함할 수 있다. 상기 촬영부(135)는, 상기 배송 로봇(100)이 상기 주행 영역을 주행하는 중 주변을 촬영하여 상기 주행 영역에 대한 영상 정보를 생성할 수 있다. 상기 촬영부(135)는, 상기 배송 로봇(100)의 전방을 촬영하여 상기 배송 로봇(100)의 주변, 상기 주행 영역 상에 존재하는 장애물을 감지할 수 있다. 상기 촬영부(135)는 디지털 카메라로, 이미지 센서(미도시)를 포함할 수 있다. 상기 이미지 센서는 광학 영상(image)을 전기적 신호로 변환하는 장치로, 다수개의 광 다이오드(photo diode)가 집적된 칩으로 구성되며, 광 다이오드로는 픽셀(pixel)을 예로 들 수 있다. 렌즈를 통과한 광에 의해 칩에 맺힌 영상에 의해 각각의 픽셀들에 전하가 축적되며, 픽셀에 축적된 전하들은 전기적 신호(예를들어, 전압)로 변환된다. 상기 이미지 센서로는 CCD(Charge Coupled Device), CMOS(Complementary Metal Oxide Semiconductor) 등이 잘 알려져 있다. 또한, 상기 촬영부(135)는 촬영된 결과를 영상 처리하여, 상기 영상 정보를 생성하는 상기 영상처리부(DSP)를 포함할 수 있다.
상기 이미지 센서 및 상기 영상처리부를 포함하는 상기 촬영부(135)는, 2차원 카메라 센서 및 3차원 카메라 센서 중 하나 이상을 포함할 수 있다. 여기서, 상기 3차원 카메라 센서는, 상기 배송 로봇(100)의 일면 또는 일부분에 부착되어, 상기 배송 로봇(100)의 본체의 주위와 관련된 3차원 좌표 정보를 생성할 수 있다. 즉, 상기 3차원 카메라 센서는 상기 배송 로봇(100)과 피촬영 대상체의 원근거리를 산출하는 3차원 뎁스 카메라(3D Depth Camera)일 수 있다. 구체적으로, 상기 3차원 카메라 센서는, 상기 배송 로봇(100)의 주위와 관련된 2차원 영상을 촬영할 수 있으며, 촬영된 2차원 영상에 대응되는 복수의 3차원 좌표 정보를 생성할 수 있다.
상기 3차원 카메라 센서는 기존의 2차원 영상을 획득하는 카메라를 2개 이상 구비하여, 상기 2개 이상의 카메라에서 획득되는 2개 이상의 영상을 조합하여, 3차원 좌표 정보를 생성하는 스테레오 비전 방식으로 형성될 수 있다. 구체적으로, 상기 3차원 카메라 센서는 상기 배송 로봇(100)의 본체의 전방을 향해 하측으로 제1 패턴의 광을 조사하는 제1 패턴 조사부와, 상기 본체의 전방을 향해 상측으로 제2 패턴의 광을 조사하는 제2 패턴 조사부 및 본체의 전방의 영상을 획득하는 영상 획득부를 포함할 수 있다. 이로써, 상기 영상 획득부는 상기 제1 패턴의 광과 상기 제2 패턴의 광이 입사된 영역의 영상을 획득할 수 있다. 또한, 상기 3차원 카메라 센서는 단일 카메라와 함께 적외선 패턴을 조사하는 적외선 패턴 방출부를 구비하고, 적외선 패턴 방출부에서 조사된 적외선 패턴이 피촬영 대상체에 투영된 모양을 캡쳐함으로써, 3차원 카메라 센서와 피촬영 대상체 사이의 거리를 측정할 수 있다. 이러한 3차원 카메라 센서는 IR(Infra Red) 방식의 3차원 카메라 센서일 수 있다. 또한, 상기 3차원 카메라 센서는 단일 카메라와 함께 빛을 방출하는 발광부를 구비하고, 발광부에서 방출되는 레이저 중 피촬영 대상체로부터 반사되는 일부를 수신하며, 수신된 레이저를 분석함으로써, 3차원 카메라 센서와 피촬영 대상체 사이의 거리를 측정할 수 있다. 이러한 3차원 카메라 센서는 TOF(Time of Flight) 방식의 3차원 카메라 센서일 수 있다. 구체적으로, 위와 같은 상기 3차원 카메라 센서의 레이저는 적어도 일방향으로 연장된 형태의 레이저를 조사하도록 구성된다. 일 예에서, 상기 3차원 카메라 센서는 제1 및 제2 레이저를 구비할 수 있으며, 상기 제1 레이저는 서로 교차하는 직선 형태의 레이저를 조사하고, 제2 레이저는 단일의 직선 형태의 레이저를 조사할 수 있다. 이에 따르면, 최하단 레이저는 바닥 부분의 장애물을 감지하는 데에 이용되고, 최상단 레이저는 상부의 장애물을 감지하는 데에 이용되며, 최하단 레이저와 최상단 레이저 사이의 중간 레이저는 중간 부분의 장애물을 감지하는 데에 이용된다.
한편, 상기 촬영부(135)는, 상기 배송 로봇(100)이 상기 주행 영역을 주행하는 중에, 상기 배송 로봇(100) 주변을 촬영하여 영상을 획득하고, 상기 제어부(130)는, 상기 촬영부(135)로 촬영하여 획득한 영상을 근거로 상기 배송 로봇(100)의 현재 위치를 인식하게 될 수 있다. 이하, 상기 촬영부(135)에 의해 획득된 영상을 '획득영상'이라고 정의한다. 상기 획득영상에는 천장에 위치하는 조명들, 경계(edge), 코너(corner), 얼룩(blob), 굴곡(ridge) 등의 여러 가지 특징(feature)들이 포함될 수 있다. 상기 제어부(130)는, 상기 획득영상들 각각으로부터 특징을 검출하고, 각 특징점을 근거로 디스크립터(descriptor)를 산출한다.
여기서, 디스크립터(descriptor)는, 특징점을 나타내기 위한 소정 형식의 데이터를 의미하며, 상기 디스크립터들 간의 거리 또는 유사도가 산출 가능한 형식의 수학적 데이터를 의미한다. 예를 들어, 상기 디스크립터는 n차원 벡터(n은 자연수) 또는 행렬 형식의 데이터일 수 있다. 상기 제어부(130)는, 각 위치의 획득영상을 통해 얻은 디스크립터 정보를 바탕으로, 획득영상마다 적어도 하나의 디스크립터를 소정 하위 분류규칙에 따라 복수의 군으로 분류하고, 소정 하위 대표규칙에 따라 같은 군에 포함된 디스크립터들을 각각 하위 대표 디스크립터로 변환할 수 있다.
다른 예로, 실(room)과 같이 소정 구역내의 획득영상들로부터 모인 모든 디스크립터를 소정 하위 분류규칙에 따라 복수의 군으로 분류하여 상기 소정 하위 대표규칙에 따라 같은 군에 포함된 디스크립터들을 각각 하위 대표 디스크립터로 변환할 수도 있다. 상기 제어부(130)는, 이 같은 과정을 거쳐, 각 위치의 특징분포를 구할 수 있다. 각 위치 특징분포는 히스토그램 또는 n차원 벡터로 표현될 수 있다. 또 다른 예로, 상기 제어부(130)는, 소정 하위 분류규칙 및 소정 하위 대표규칙을 거치지 않고, 각 특징점으로부터 산출된 디스크립터를 바탕으로 미지의 현재위치를 추정할 수 있다. 또한, 위치 도약 등의 이유로 상기 배송 로봇(100)의 현재 위치가 미지의 상태가 된 경우에, 기저장된 디스크립터 또는 하위 대표 디스크립터 등의 데이터를 근거로 현재 위치를 추정할 수 있다.
상기 촬영부(135)는, 미지의 현재 위치에서 영상을 촬영하여 획득영상을 생성할 수 있다. 상기 제어부(130)는, 상기 획득영상을 통해 천장에 위치하는 조명들, 경계(edge), 코너(corner), 얼룩(blob), 굴곡(ridge) 등의 여러가지 특징(feature)들을 검출하고, 디스크립터를 산출할 수 있다. 상기 제어부(130)는, 미지의 현재 위치의 획득영상을 통해 얻은 적어도 하나의 디스크립터 정보를 근거로, 소정 하위 변환규칙에 따라 비교대상이 되는 위치 정보(예를 들면, 각 위치의 특징분포)와 비교 가능한 정보(하위 인식 특징분포)로 변환할 수 있다.
소정 하위 비교규칙에 따라, 각각의 위치 특징분포를 각각의 인식 특징분포와 비교하여 각각의 유사도를 산출할 수 있다. 각각의 위치에 해당하는 상기 위치 별로 유사도(확률)를 산출하고, 그 중 가장 큰 확률이 산출되는 위치를 현재위치로 결정할 수 있다. 이에 따라, 상기 제어부(130)는, 상기 주행 영역의 구역을 구분하고, 복수의 영역으로 구성된 맵을 생성하거나, 기저장된 맵을 바탕으로 상기 배송 로봇(100)의 현재 위치를 인식할 수 있다.
상기 촬영부(135)는, 상기 획득영상을 포함한 촬영 결과를 상기 제어부(130)에 전달하고, 상기 제어부(130)로부터 동작에 대한 제어 명령을 전달받을 수 있다. 상기 촬영부(135)는, 상기 제어부(130)로부터 전달받은 제어 명령에 따라 동작하게 될 수 있다. 즉, 상기 촬영부(135)는 상기 제어부(130)에 의해 제어될 수 있다.
상기 저장부(136)는, 마이크로 프로세서(micro processor)에 의해 읽힐 수 있는 데이터를 저장하는 저장수단일 수 있다. 상기 저장부(136)는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크 및 광 데이터 저장 장치 중 하나 이상을 포함할 수 있다. 상기 저장부(136)는, 상기 배송 로봇(100)의 다양한 기능을 지원하는 데이터를 저장할 수 있다. 상기 저장부(136)는, 상기 제어부(130)에서 연산/처리되는 데이터를 저장할 수 있다. 상기 저장부(136)는 또한, 상기 통신부(131)에 의해 수신된 정보 또는 데이터, 상기 입력부(132)에 의해 획득된 입력 정보, 입력 데이터, 학습 데이터, 학습 모델, 및 학습 히스토리 등을 저장할 수 있다. 이를테면, 상기 통신부(131) 또는 상기 입력부(132)로부터 수신된 상기 물품 정보 및 상기 지도 정보 중 하나 이상이 상기 저장부(136)에 저장될 수 있다. 이 경우, 상기 지도 정보 및 상기 물품 정보는 상기 관제 서버(200)로부터 미리 수집되어 상기 저장부(136)에 저장될 수 있고, 주기적으로 업데이트될 수 있다. 또한, 상기 저장부(136)에는, 상기 배송 로봇(100)의 구동에 관한 데이터, 이를테면 상기 배송 로봇(100)의 운영체제, 펌웨어, 애플리케이션 및 소프트웨어 등과 같은 프로그램 데이터가 저장될 수 있다.
상기 구동부(137)는, 상기 배송 로봇(100)의 물리적 동작을 구동시키는 구동수단일 수 있다. 상기 구동부(137)는, 주행 구동부(137a)를 포함할 수 있다. 상기 주행 구동부(137a)는, 상기 배송 로봇(100)의 본체의 하부에 구비되는 상기 구동 바퀴로, 회전 구동하여 상기 배송 로봇(100)이 상기 주행 영역을 주행하도록 구동할 수 있다. 상기 주행 구동부(137a)는, 상기 제어부(130)의 제어 신호에 따라 동작하는 액츄에이터 또는 모터를 포함하여 상기 배송 로봇(100)을 이동시킬 수 있다. 상기 주행 구동부(137a)는, 상기 본체의 전/후 각각의 좌/우 각각에 구비된 구동바퀴를 양 방향으로 회전시켜 상기 본체를 회전 또는 이동시킬 수 있다. 이때, 상기 좌, 우측 바퀴는 독립적으로 움직일 수 있다. 또한, 상기 주행 구동부(137a)는, 상기 본체를 전/후/좌/우로 진행시키거나, 곡선 주행시키거나, 제자리 회전시킬 수 있다. 상기 주행 구동부(137a)는 또한, 액츄에이터 또는 모터에 의해 동작하는 휠, 브레이크, 프로펠러 등을 더 포함할 수 있다.
상기 구동부(137)는 또한, 틸팅 구동부(137b)를 더 포함할 수 있다. 상기 틸팅 구동부(137b)는, 상기 제어부(130)의 제어 신호에 따라 상기 적재부(110)의 거치대를 틸팅시킬 수 있다. 상기 틸팅 구동부(137b)는, 당업자에게 알려진 다양한 방식들을 사용하여 상기 거치대를 틸팅시킬 수 있다. 상기 틸팅 구동부(137b)는, 상기 거치대를 동작시키기 위한 액츄에이터 또는 모터를 포함할 수 있다.
상기 구동부(137)는, 구동 결과에 대한 정보를 상기 제어부(130)에 전달하고, 상기 제어부(130)로부터 동작에 대한 제어 명령을 전달받을 수 있다. 상기 구동부(137)는, 상기 제어부(130)로부터 전달받은 제어 명령에 따라 동작하게 될 수 있다. 즉, 상기 구동부(137)는 상기 제어부(130)에 의해 제어될 수 있다.
상기 전원부(138)는, 외부 상용 전원에 의해 충전 가능한 상기 배터리를 구비하여, 상기 배터리에 저장된 전원을 상기 배송 로봇(100) 내로 공급할 수 있다. 여기서, 상기 배터리는, 상기 외부 상용 전원 외에도 태양광 또는 하베스팅으로 수집된 전원을 상기 배터리에 저장할 수도 있다. 상기 전원부(138)는, 상기 배송 로봇(100)에 포함된 각 구성들에 구동 전원을 공급하여, 상기 배송 로봇(100)이 주행하거나 특정 기능을 수행하는데 요구되는 동작 전원을 공급할 수 있다. 이때, 상기 제어부(130)는, 상기 배터리의 전원 잔량을 감지하고, 전원 잔량이 부족하면 외부 상용 전원과 연결된 충전부로 이동하도록 제어하여, 상기 충전부로부터 충전 전류를 공급받아 상기 배터리를 충전할 수 있다.
상기 배터리는, 배터리 감지부와 연결되어 배터리 잔량 및 충전 상태가 상기 제어부(130)에 전달될 수 있다. 이 때, 상기 출력부(133)는, 상기 제어부(130)에 의해 상기 배터리 잔량을 표시할 수 있다.
상기 제어부(130)는, 상기 배송 로봇(100)의 전반적인 동작 제어를 수행할 수 있다. 상기 제어부(130)는, 정보들을 처리하는 하나 이상의 프로세서들을 포함하는 모듈 형태로 이루어져, 상기 프로세서에서 상기 배송 로봇(100)의 동작 제어를 위한 정보의 학습, 추론, 지각, 연산, 판단 및 신호 처리를 수행할 수 있다. 상기 프로세서는, 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 모바일 프로세서(Mobile Processor), 애플리케이션 프로세서(Application Processor; AP), 마이크로프로세서, 중앙처리장치(Central Processing Unit; CPU), 그래픽 프로세싱 유닛(Graphic Processing Unit; GPU), 신경 프로세싱 유닛(Neural Processing Unit; NPU), 프로세서 코어, 멀티프로세서, 주문형 집적회로(Application-Specific Integrated Circuit; ASIC), 또는 필드 프로그래머블 게이트 어레이(Field Programmable Gate Array; FPGA) 중 하나일 수 있다.
상기 제어부(130)는, 데이터 분석 알고리즘 또는 머신 러닝 알고리즘을 사용하여 결정되거나 생성된 정보에 기초하여, 상기 배송 로봇(100)의 적어도 하나의 실행 가능한 동작을 결정할 수 있다. 상기 제어부(130)는, 상기 배송 로봇(100) 내에 저장된 정보, 상기 주행 영역 주변의 환경 정보, 통신 가능한 외부 저장소에 저장된 정보 등 방대한 양의 정보(빅데이터, big data)를 학습, 추론, 처리 중 적어도 하나를 수행할 수 있다.
그리고, 상기 제어부(130)는, 학습된 정보들을 이용하여, 실행 가능한 적어도 하나의 상기 배송 로봇(100)의 동작을 예측(또는 추론)하고, 상기 적어도 하나의 예측된 동작들 중 실현성이 가장 높은 동작을 결정하여, 결정된 동작이 수행되도록 상기 배송 로봇(100)을 제어할 수 있다.
이 경우, 상기 제어부(130)는, 상기 배송 로봇(100)의 구성 요소들 중 하나 이상을 제어하여 결정된 동작이 수행되도록 제어할 수 있다. 이를테면, 상기 배송 로봇(100)의 목표 동작에 따라 상기 제어부(130)가 상기 통신부(131), 상기 입력부(132), 상기 출력부(133), 상기 센싱부(134), 상기 촬영부(135), 상기 저장부(136), 상기 구동부(137) 및 상기 전원부(138) 중 하나 이상을 제어하여, 상기 목표 동작이 수행되도록 제어하게 될 수 있다.
또한, 상기 제어부(130)는, 상기 구성 요소들 외에도 상기 배송 로봇(100)에 포함된 다른 구성 요소들을 더 제어할 수 있다.
한편, 상기 제어부(130)는, 인공 지능 및/또는 머신 러닝의 수행을 위한 러닝 프로세서를 더 포함할 수 있다. 이 경우, 상기 러닝 프로세서는, 상기 제어부(130)와 별도의 구성으로 제작되어 상기 제어부(130)에 내장되는 모듈 형태로 이루어질 수 있고, 또는 상기 제어부(130)의 일부로 이루어질 수 있다.
또한, 상기 제어부(130) 자체가 상기 러닝 프로세서를 탑재한 인공 지능 프로세서로 이루어질 수도 있다. 상기 제어부(130)는, 상기 러닝 프로세서 또는 상기 저장부(136)의 정보 또는 데이터를 요청, 검색, 수신 또는 활용할 수 있고, 적어도 하나의 실행 가능한 동작 중 예측되는 동작이나, 바람직한 것으로 판단되는 동작을 실행하도록 상기 배송 로봇(100)의 구성 요소들 중 하나 이상을 제어할 수 있다.
상기 제어부(130)는, 상기 저장부(136)에 저장된 응용 프로그램을 구동하기 위하여, 상기 배송 로봇(100)의 구성 요소들 중 적어도 일부를 제어할 수 있다. 나아가, 상기 제어부(130)는, 상기 응용 프로그램의 구동을 위하여, 상기 배송 로봇(100)에 포함된 구성 요소들 중 둘 이상을 서로 조합하여 동작시킬 수 있다. 또한, 상기 제어부(130)는, 결정된 동작을 수행하기 위해 상기 관제 서버(200) 및 상기 통신 장치(300) 등의 외부 장치와의 연계가 필요한 경우, 해당 외부 장치를 제어하기 위한 제어 신호를 생성하고, 생성한 제어 신호를 해당 외부 장치에 송신할 수 있다.
한편, 상기 제어부(130)는, 상기 관제 서버(200), 상기 통신 장치(300) 및 상기 저장부(136) 중 하나 이상에 저장된 트레이닝 데이터를 이용할 수 있다.
또한, 상기 제어부(130)는, 소정의 물체를 인식하기 위한 특징을 검출하는 학습 엔진을 탑재하여, 상기 학습 엔진을 통해 물체를 인식할 수 있다. 이때, 물체를 인식하기 위한 특징에는 물체의 크기, 형태 및 음영 등을 포함할 수 있다. 구체적으로, 상기 제어부(130)가 상기 촬영부(135)를 통해 획득된 영상 중 일부를 상기 학습 엔진에 입력하면, 상기 학습 엔진은 입력된 영상에 포함된 적어도 하나의 사물 또는 생명체를 인식할 수 있다.
또한, 위와 같은 상기 학습 엔진은 상기 관제 서버(200) 및 상기 통신 장치(300)에 포함된 외부 서버 중 하나 이상에 탑재될 수도 있다. 상기 학습 엔진이 상기 관제 서버(200) 및 상기 외부 서버 중 하나 이상에 탑재된 경우, 상기 제어부(130)는 분석의 대상인 적어도 하나의 영상을 상기 관제 서버(200) 및 상기 외부 서버 중 하나 이상에 전송하도록 상기 통신부(131)를 제어할 수 있다.
이 경우, 상기 관제 서버(200) 및 상기 외부 서버 중 영상 데이터를 전송받은 하나 이상은, 상기 배송 로봇(100)으로부터 전송받은 영상을 학습 엔진에 입력함으로서, 해당 영상에 포함된 적어도 하나의 사물 또는 생명체를 인식할 수 있다. 아울러, 상기 영상 데이터를 전송받은 상기 관제 서버(200) 및 상기 외부 서버 중 하나 이상은, 인식 결과와 관련된 정보를 다시 상기 배송 로봇(100)으로 전송할 수 있다. 이때, 인식 결과와 관련된 정보는 분석의 대상인 영상에 포함된 객체의 개수, 각 개체의 이름과 관련된 정보를 포함할 수 있다.
상기 제어부(130)는, 설정에 따라 상기 배송 로봇(100)이 상기 주행 영역을 주행하도록 상기 주행 구동부(137a)를 제어할 수 있다. 상기 제어부(130)는, 상기 주행 구동부(137a)를 제어하여 상기 배송 로봇(100)이 직진 또는 회전하여 주행하도록 제어할 수 있다. 상기 제어부(130)는, 상기 주행 영역을 자율 주행을 위해, 상기 센싱부(134)로부터 수신되는 센서 데이터에 기초하여 상기 주행 구동부(137a)를 제어할 수 있다. 상기 제어부(130)는, 당업자에게 알려진 다양한 방식들로 상기 주행 구동부(137a)를 제어하여 상기 배송 로봇(100)으로 하여금 배송지까지 자율적으로 주행하게 할 수 있다.
상기 제어부(130)는, 상기 통신부(131)를 통해 수신된 정보, 이를테면 상기 배송 로봇(100)의 위치에 대한 정보에 기초하여, 상기 주행 영역에서 목적지까지 이동 가능한 이동 경로를 설정할 수 있다. 즉, 상기 제어부(130)는, 현재 위치에 기반하여 목적지까지 이동 가능한 이동 경로를 판단 및 설정하고, 이에 따라 상기 배송 로봇(100)이 주행하도록 제어하게 될 수 있다.
이를 위해, 상기 제어부(130)는, 이동하고자 하는 지역의 지도 정보, 도로 정보 및 필요 정보 등을 상기 관제 서버(200) 및 상기 통신 장치(300) 중 하나 이상으로부터 제공받을 수 있고, 제공받은 정보를 상기 저장부(136)에 저장할 수 있다. 예를 들면, 상기 제어부(130)가 상기 저장부(136)에 저장된 내비게이션 어플리케이션을 구동하여, 사용자가 입력한 장소로 이동하도록 상기 배송 로봇(100)의 주행을 제어하게 될 수 있다.
또한, 상기 제어부(130)는, 상기 센싱부(134) 및 상기 촬영부(135) 중 하나 이상에 의해 입력되는 정보에 따라, 상기 주행 영역상의 장애물을 회피하여 주행하도록 주행을 제어할 수 있다. 이 경우 상기 제어부(130)는, 상기 장애물에 대한 정보를 상기 저장부(136)에 기저장된 상기 주행 영역에 대한 정보, 이를테면 상기 지도 정보에 반영하게 될 수 있다.
여기서, 도 7a 및 도 7b를 참조하여 상기 제어부(130)가 물품을 배송하기 위한 이동 경로를 판단 및 설정하는 구체적인 예를 설명한다.
상기 제어부(130)는, 결정된 또는 입력된 물품의 종류에 기초하여 이동 경로를 판단하여 설정할 수 있다. 상기 제어부(130)는, 이동 경로를 설정하기 위해 상기 저장부(136)에 저장된 지도 정보를 참조할 수 있다. 상기 제어부(130)는, 당업자에게 알려진 다양한 방식들을 사용하여 배송지까지의 최단 경로, 대안 경로들, 예상 도착 시간 등을 판단할 수 있다. 상기 제어부(130)는, 물품들의 배송 거리 또는 예상 배송 시간에 기초하여 물품들의 배송 순서를 판단할 수 있다. 여기서, 배송 거리는 배송지까지의 거리를 나타내고, 예상 배송 시간은 배송지까지 소요될 것으로 예상되는 시간을 나타낼 수 있다. 도 7a 및 도 7b를 참조하면, 상기 제어부(130)는, 배송지들(A, B, C)의 위치들을 참조하여 배송 거리 또는 예상 배송 시간을 판단할 수 있는데, 이 경우 상기 배송 로봇(100)의 현재 위치(410)로부터 배송지들(A, B, C) 각각으로의 배송 거리 또는 예상 배송 시간뿐만 아니라, 배송지들(A, B, C) 간의 배송 거리 또는 예상 배송 시간을 판단할 수 있다. 상기 제어부(130)는, 판단한 결과를 근거로 상기 이동 경로를 설정하고, 이에 따라 상기 배송 로봇(100)이 주행하여 배송을 수행하도록 제어할 수 있다.
일 예로, 도 7a에 도시된 바와 같이, 상기 제어부(130)가 최소 시간으로 배송하도록 현재 위치(410)로부터 가장 가까운 배송지(B), 배송지(A) 및 배송지(C) 순으로 배송 순서를 설정(즉, B-A-C)하거나, 도 7b에 도시된 바와 같이, 상기 제어부(130)가 현재 위치(410)로부터 최단 거리로 주행하도록 배송지(A), 배송지(C) 및 배송지(B) 순으로 배송 순서(A-C-B)를 설정하게 될 수 있다.
한편, 상기 제어부(130)는, 상기 주행 영역상의 노면의 상태 또는 노면의 경사각에 기초하여 상기 배송 로봇(100)의 이동 속도 또는 상기 적재부(110)의 거치대들의 틸팅된 각도를 조정할 수 있다. 상기 노면의 상태 또는 경사각에 대한 정보는, 상기 지도 정보에 포함될 수 있다.
상기 제어부(130)는, 상기 지도 정보를 참조함으로써 현재 주행 중인 또는 주행할 상기 주행 영역의 노면의 상태 또는 경사각에 대한 정보를 획득할 수 있다. 또한, 상기 제어부(130)는, 상기 신부(131), 상기 입력부(132), 상기 센싱부(134) 및 상기 촬영부(135) 중 하나 이상으로부터의 데이터를 근거로 상기 주행 영역의 노면의 상태 또는 경사각을 결정할 수도 있다.
이 경우, 노면의 상태가 양호한지 여부는 상기 배송 로봇(100)에 발생하는 진동에 기초하여 결정될 수 있고, 노면의 경사각은 상기 배송 로봇(100)의 포즈(pose) 또는 기울기로부터 결정될 수 있다. 이때, 상기 제어부(130)는, 노면의 상태 또는 경사각 중 적어도 하나에 기초하여 상기 주행 구동부(137a)를 제어하여, 상기 배송 로봇(100)의 이동 속도를 조정할 수 있다.
예를 들면, 상기 제어부(130)가 상기 배송 로봇(100)에 일정 수준 이상의 진동이 발생하거나, 상기 배송 로봇(100)이 내리막 길을 주행하는 경우, 이동 속도를 감소시키게 될 수 있다. 또한, 상기 제어부(130)는, 노면의 경사각에 기초하여 상기 틸팅 구동부(137b)를 제어하여, 상기 거치대의 틸팅된 각도를 조정할 수도 있다. 예를 들어, 상기 배송 로봇(100)이 오르막 길 또는 내리막 길을 주행하는 경우, 오르막 길 또는 내리막 길에 의해 유발되는 쏠림을 상쇄하는 방향으로 각도를 조정시킬 수 있다.
또한, 상기 제어부(130)는, 시간 및 위치 기반의 기 학습된 네트워크 성능 추정 모델에 기초하여, 상기 이동 경로 상에 위치한 네트워크 음영 영역을 결정할 수 있다. 구체적으로, 상기 제어부(130)는, 설정된 상기 이동 경로의 소정 지점마다 시간에 따른 네트워크 성능 수치 등급을 상기 네트워크 성능 추정 모델을 통해 추정하고, 추정된 네트워크 성능 수치 등급에 기초하여, 상기 이동 경로 상에 위치한 네트워크 음영 영역을 결정할 수 있다.
구체적으로, 상기 제어부(130)는, 추정된 네트워크 성능 수치 등급이 소정 등급 이하인 경우, 상기 이동 경로 상에 위치한 네트워크 음영 영역을 결정할 수 있다. 또한, 상기 네트워크 음영 영역의 결정은, 상기 관제 서버(200) 및 상기 통신 장치(300)에 포함된 상기 정보 제공 시스템(320) 중 하나 이상에서 수행되어 상기 배송 로봇(100)에 제공될 수도 있다. 상기 제어부(130)는, 결정된 네트워크 음영 영역을 회피하도록 상기 이동 경로를 갱신하며, 갱신된 상기 이동 경로를 따라 이동하도록 상기 구동부(137)를 제어할 수 있다.
여기서, 상기 네트워크 음영 영역은 현재 사용하고 있는 어플리케이션 프로그램이 정상적인 동작을 하기 어려운 지점을 의미할 수 있다. 이를테면, 상기 네트워크 음영 영역은 네트워크 성능 수치 등급이 소정 이하인 영역으로, 소정의 정보를 수신하거나 송신하기 어렵거나, 기준치보다 낮은 속도로 데이터 송신하는 영역일 수 있다. 예를 들면, 기지국 미설치 지역, 사용자 밀집 지역, 지하도, 터널 등일 수 있으나, 이에 국한되는 것은 아니다.
상기 제어부(130)는, 상기 네트워크 음영 영역을 회피하기 어려운 경우, 상기 네트워크 음영 영역을 통과하기 위해 필요한 정보를 상기 네트워크 음영 영역으로 진입하기 전에 상기 저장부(136)에 저장할 수 있다. 또한, 상기 제어부(130)는, 상기 네트워크 음영 영역을 회피하기 위한 시도를 수행하지 않고, 바로 상기 네트워크 음영 영역을 통과하도록 상기 구동부(137)를 제어할 수 있다.
이때, 상기 제어부(10)는, 상기 네트워크 음영 영역을 통과하기 전에 사용 중이거나 사용 예정인 어플리케이션 프로그램에서 필요한 정보를 미리 상기 저장부(136)에 저장할 수 있으며, 사이즈가 큰 송신할 정보(가령, 촬영 영상)를 미리 상기 관제 서버(200) 및 상기 통신 장치(300) 중 하나 이상에 전송할 수 있다.
상기 제어부(130)는, 상기 촬영부(135)를 통해 획득한 상기 획득영상에 기초하여 영역 특징 정보를 추출할 수 있다. 여기서, 추출된 영역 특징 정보는 상기 획득된 영상에 기초하여 인식된 영역과 사물에 대한 확률값의 집합을 포함할 수 있다. 상기 제어부(130)는, 상기 획득영상을 근거로 슬램(SLAM) 기반의 현재 위치 노드 정보, 및, 상기 추출된 영역 특징 정보에 기초하여, 현재 위치를 판별할 수 있다.
여기서, 상기 슬램(SLAM) 기반의 현재 위치 노드 정보는, 기 저장된 노드 특징 정보 중 상기 획득된 영상에서 추출된 특징 정보와 가장 유사한 노드에 대응할 수 있다. 즉, 상기 제어부(1800)는 각 노드에서 추출된 특징(feature) 정보를 활용하여 위치 인식을 수행하여 현재 위치 노드 정보를 선정할 수 있다.
또한 위치 추정의 정확도를 더욱 향상하기 위하여 상기 제어부(130)는, 특징(feature) 정보 및 영역 특징 정보를 모두 이용하여 위치 인식을 수행하여 위치 인식의 정확도를 높일 수 있다. 예를 들어, 상기 제어부(130)는, 상기 추출된 영역 특징 정보를 기 저장된 영역 특징 정보와 비교하여 복수의 후보 슬램 노드들을 선정하고, 상기 선정된 복수의 후보 슬램 노드들 중 슬램(SLAM) 기반의 현재 위치 노드 정보에 가장 유사한 후보 슬램 노드 정보에 기초하여 현재 위치를 판별할 수 있다.
또는, 상기 제어부(130)는, 슬램(SLAM) 기반의 현재 위치 노드 정보를 판별하고, 상기 추출된 영역 특징 정보에 따라 상기 판별된 현재 위치 노드 정보를 보정하여 최종 현재 위치를 판별할 수 있다. 이 경우, 상기 제어부(130)는, 상기 슬램(SLAM) 기반의 현재 위치 노드 정보를 기준으로 소정 범위 내에 존재하는 노드들의 기저장된 영역 특징 정보 중 상기 추출된 영역 특징 정보와 가장 유사한 노드를 상기 최종 현재 위치로 판별할 수 있다.
이미지를 이용한 위치 추정 방법으로써, 코너 등 로컬 특징점(local feature point)을 위치 추정 방법은 물론, 위치 추정을 위해 로컬 특징(local feature)이 아닌 오브젝트(object)의 전체적인 모양을 기술(description)하는 글로벌 특징(global feature)을 사용함으로써 조명/조도와 같은 환경 변화에 강인한 특징 추출이 가능하다,
예를 들어, 상기 제어부(130)는, 맵 생성시 영역 특징 정보(ex: 건물 외관, 도로, 실외 구조물/시설물, 실내 구조물/시설물, 천장, 계단 등)를 추출하여 저장하고, 이후 실내 환경 내의 다양한 영역 특징 정보를 이용하여 상기 배송 로봇(100)의 위치를 추정할 수 있다. 즉, 환경 저장 시에 영상 내 특정 지점(point)만을 이용하는 것이 아닌, 사물이나 물체, 영역 단위의 특징을 저장함으로써 조명/조도 변화에 강인한 위치 추정이 가능할 수 있다.
한편, 상기 배송 로봇(100)이 사물에 의해 형성된 사각 구역에 진입한 경우에, 상기 촬영부(135)의 시야가 가려져 코너 등 특징점을 충분히 포함하는 영상이 획득하지 못할 수 있다. 또는 천장이 높은 환경에서 특정 위치에서는 천장 이미지를 이용한 특징점 추출 정확도가 낮아질 수 있다. 하지만, 실시예에 따른 상기 제어부(130)는, 천장이 높아 특징점 식별이 약한 경우 등에도, 상기 영역 특징 정보를 이용하여 현재 위치를 인식하게 될 수 있다.
이와 같은 구성으로 이루어진 상기 배송 로봇(100)은, 복수의 동작 모드에 따라 동작을 수행할 수 있다. 여기서, 상기 동작 모드는, 상기 배송 로봇(100)이 일정 기준에 따라 동작을 수행하는 모드를 의미하며, 복수의 동작 모드 중 하나가 상기 배송 로봇(100), 상기 관제 서버(200) 및 상기 통신 장치(300) 중 하나 이상을 통해 설정될 수 있다.
이를테면, 상기 배송 로봇(100), 상기 관제 서버(200) 및 상기 통신 장치(300) 중 하나 이상에 설정된 동작 모드에 따른 제어 화면이 표시되고, 상기 배송 로봇(100)은 상기 제어 화면의 조작에 대응하여 상기 동작 모드에 따라 동작을 수행하게 될 수 있다. 즉, 상기 배송 시스템(10000)은, 상기 복수의 동작 모드 중 설정된 어느 하나 이상의 동작 모드에 따라 상기 배송 로봇(100)의 동작 제어 및 이에 따른 동작 수행이 이루어지게 될 수 있다.
한편 본 발명의 실시 예에 따른 배송 로봇(100)의 센싱부(134)는, 상기 배송 로봇(100) 주변의 환경을 인식하기 위한 적어도 하나 이상의 센서를 구비할 수 있다. 상기 센서들은 상기 배송 로봇(100) 주변의 사물 또는 환경이나 지형 지물을 감지할 수 있으며, 감지 대상으로부터 형태, 거리 등의 물리적 속성을 감지할 수 있다.
이를 위해 센싱부(134)는 사물의 형태 및 종류를 감지하기 위한 적어도 하나의 카메라 센서, 레이저를 이용하여 물체와의 거리를 측정하기 위한 라이다(LiDAR, Light Detection And Ranging) 센서, 물체의 유무 및 물체와 배송 로봇(100) 사이의 거리를 초음파를 이용하여 감지하는 초음파 센서(USS, Ultra Sonic Sensor), 빛을 쏘아서 반사되어 오는 시간을 측정하여 물체와 배송 로봇(100) 사이의 거리를 측정하는 TOF(Time Of Flight) 센서 중 적어도 하나를 구비할 수 있다.
한편 이러한 센서는 배송 로봇(100)의 전면 뿐 아니라 배송 로봇(100)의 후면이나 적어도 하나의 측면을 지향하도록 배치될 수 있다. 이 경우 배송 로봇(100)의 각 면에 배치된 센서는, 지향하는 방향에 위치한 물체를 감지할 수 있으며, 감지된 물체와 배송 로봇(100) 사이의 거리를 검출할 수 있다. 그리고 검출된 물체 및 거리에 대한 정보는 제어부(130)에 입력되어 제어부(130)가 배송 로봇(100)의 구동을 제어하기 위해 이용될 수 있다.
도 8은 본 발명의 실시 예에 따른 배송 로봇(100)이 회전문을 검출하고 검출된 회전문을 통과하는 동작 과정을 도시한 흐름도이다.
도 8을 참조하여 살펴보면, 본 발명의 실시 예에 따른 배송 로봇(100)의 제어부(130)는 먼저 센싱부(134)의 감지 결과에 근거하여 배송 로봇(100) 로봇 주변의 환경, 그리고 인접한 물체들을 감지할 수 있다. 그리고 감지된 정보, 예를 들어 이미지 정보로부터, 인접한 물체 간의 거리 정보를 추정 또는 측정하여 불필요한 정보(지면, 하늘 등)를 제거하여 관심 영역(Region Of Interest)을 추출할 수 있다. 그리고 추출된 관심 영역의 이미지를 분석하여, 배송 로봇(100)의 전방에 회전문이 있는지 여부를 감지할 수 있다(S800).
한편 상기 S800 단계에서 관심 영역에 회전문이 포함되어 있는지 여부는, 회전문에 관련된 다수의 학습 데이터를 통해 사전에 이루어진 기계 학습을 통해 판단될 수 있다. 또는 제어부(130)는 기 저장된 회전문의 형상 특징에 따라 이미지로부터 추출된 형상 특징으로부터 회전문을 인식하는 영상 인식 기술을 통해 상기 회전문을 감지할 수도 있다.
한편 상기 관심 영역은, 배송 로봇(100)으로부터 이격된 거리에 따라 결정될 수 있다. 따라서 획득된 이미지에 회전문의 형상이 포함되어도, 배송 로봇(100)과 회전문 사이의 거리가 기 설정된 거리를 초과하는 경우, 제어부(130)는 상기 이미지로부터 추출된 관심 영역에 회전문이 포함되지 않은 것으로 판단할 수 있다.
반면, 배송 로봇(100)과 회전문 사이의 거리가 기 설정된 거리 이하인 경우, 제어부(130)는 추출된 관심 영역에 포함된 회전문의 이미지로부터, 회전문이 있음을 감지할 수 있다.
한편 이처럼 센싱부(134)로부터 획득되는 이미지 데이터에 근거하여 회전문을 감지하는 상기 S800 단계를, 도 9를 참조하여 보다 자세하게 살펴보기로 한다.
한편 제어부(130)는 회전문이 있는 것으로 판단되는 경우, 상기 회전문의 물리적인 속성을, 상기 회전문의 특징으로서 검출할 수 있다(S810).
여기서 회전문의 물리적 속성이란, 회전문의 정적 또는 동적 상태에 따른 특징일 수 있다. 일 예로 회전문의 정적 상태는 회전문을 구성하는 각 문의 회전 상태에 따라 변경되는 특징, 즉, 회전문의 위치, 회전문을 구성하는 각 문의 개수, 각 문의 높이, 각 문이 회전하는 반경이나 회전 속도, 각 문 사이 공간들의 크기 등을 의미할 수 있다.
또한 회전문의 동적 상태는, 회전문을 구성하는 각 문의 회전 상태에 따라 변경되는 특징, 즉, 회전하는 각 문 사이 공간들의 위치, 이미지 센서를 통해 감지되는 각 문의 넓이 등을 의미할 수 있다.
일 예로 상기 회전하는 각 문 사이 공간들은, 각 문이 회전하는 방향에 따라 그 위치가 시계 방향 또는 시계 반대 방향을 따라 계속 이동될 수 있다. 또한 회전문의 각 문들은 회전축을 중심으로 등속도 회전하므로, 회전문의 입구 또는 출구에서 회전문의 이미지를 센싱하는 경우, 센싱되는 이미지 상에서 각 문의 회전에 따라 회전축 좌측의 문 또는 우측의 문 가장자리와 회전축 사이의 거리는 계속 변경될 수 있다. 따라서 이미지 센서를 통해 감지되는 회전축 좌측 또는 우측의 문 넓이는, 회전문의 회전에 따라 지속적으로 변경될 수 있다.
제어부(130)는 이러한 회전문의 정적 상태에 따른 특징 및 동적 상태에 따른 특징을, 회전문의 특징으로 검출할 수 있다. 그리고 검출된 회전문의 특징에 근거하여 회전문이 회전하는 속도를 검출할 수 있다. 그리고 회전문의 개수를 검출 및 검출된 회전문의 개수에 따라 각 문에 의해 구분되는 회전문의 영역들 중, 배송 로봇(100)이 진입할 공간을 결정할 수 있다. 그리고 상기 회전문의 회전 속도에 근거하여, 상기 진입 공간으로 진입할 진입 시점과 진입 방향을 결정할 수 있다.
또한 제어부(130)는 결정된 진입 공간, 진입 시점, 및 진입 방향에 따라 회전문으로의 진입을 위한 주행 경로를 생성하고, 생성된 주행 경로를 따라 주행하기 위한 선속도 및 각속도를 산출할 수 있다. 그리고 산출된 선속도와 각속도에 따라 배송 로봇(100)이 주행하도록 구동부(137)를 제어하여, 회전문 내의 알 영역, 즉 진입 공간으로 배송 로봇(100)이 진입하도록 제어할 수 있다(S820).
한편 회전문 내의 진입 공간으로 배송 로봇(100)이 진입하는 경우, 제어부(130)는 상기 회전문 내부의 영역을 주행하기 위한 주행 경로를 생성할 수 있다. 그리고 생성된 주행 경로를 따라 상기 회전문 영역 내에서 배송 로봇(100)이 주행하도록 구동부(137)를 제어할 수 있다(S830).
한편 제어부(130)는 S830 단계에서, 회전문의 회전에 의해 그 위치가 변경되는 진입 공간 내에서, 상기 진입 공간의 이동에 따라 배송 로봇(100)이 이동하도록 구동부(137)를 제어할 수 있다. 이 경우 제어부(130)는 상기 진입 공간 내에서, 상기 배송 로봇(100)과 회전문의 각 문 및 회전축, 그리고 회전문을 둘러싼 외벽과 일정한 거리를 유지하면서 배송 로봇(100)이 주행될 수 있도록 구동부(137)를 제어할 수 있다.
이를 위해 제어부(130)는 회전문의 문들 중 배송 로봇(100)에 근접한 각 문들 또는 상기 외벽과 배송 로봇(100) 사이의 거리를 검출할 수 있다. 그리고 검출된 거리와 회전문의 회전 속도에 따라 선속도와 각속도를 계산하고, 계산된 선속도와 각속도에 따라 배송 로봇(100)의 주행 속도가 결정되도록 구동부(137)를 제어할 수 있다. 따라서 회전문의 갑작스러운 회전 속도 변경, 또는 회전문의 멈춤이 발생하는 경우에도, 배송 로봇(100)이 회전문 및 외벽에 충돌하는 것을 방지할 수 있다.
한편, 회전문 내부의 영역에서 주행하는 상태에서, 제어부(130)는 회전문의 출구를 검출하고, 출구를 통해 회전문 영역을 이탈할 이탈 시점을 산출할 수 있다. 이를 위해 제어부(130)는, 회전문에 진입한 시점과 배송 로봇(100)이 이동한 거리 및, 회전문의 물리적인 속성 정보를 이용할 수 있다. 일 예로 제어부(130)는, 산출된 회전문 영역의 크기 및 회전문의 회전 속도 그리고 진입 공간에 배송 로봇(100)이 진입한 시점 이후의 경과된 시간에 따라 회전문 영역 내에서의 배송 로봇(100) 위치 또는 배송 로봇(100)이 주행하고 있는 회전문 내부의 진입 공간 위치를 검출할 수 있다. 그리고 검출된 배송 로봇(100)의 위치 또는 진입 공간의 위치에 근거하여 회전문 영역에서의 이탈 여부를 결정할 수 있다.
한편 제어부(130)는 회전문 내부의 영역에서 배송 로봇(100)이 주행하는 동안에, 영상 인식 또는 딥러닝 이미지 인식 등을 통해 회전문의 출구를 검출할 수 있다. 일 예로 제어부(130)는 배송 로봇(100) 전방의 문과 회전문을 둘러싸고 있는 외벽 사이의 간격을, 상기 영상 인식 또는 딥러닝 이미지 인식을 통해 검출할 수 있다. 그리고 기 설정된 제1 크기 이상의 간격이 검출되는 경우 회전문의 출구가 검출된 것으로 판단할 수 있다. 그리고 상기 간격이 기 설정된 제2 크기 이상인 경우 상기 검출된 출구를 통해 회전문 영역으로부터의 이탈이 가능한 것으로 판단하고, 배송 로봇(100)이 회전문의 영역으로부터 이탈하도록, 구동부(137)를 제어할 수 있다(S840).
한편 도 9는, 상기 도 8의 동작 과정 중 주변 환경을 감지한 결과로부터 회전문을 식별하는 동작 과정을 보다 자세히 도시한 흐름도이다.
도 9를 참조하여 살펴보면, 본 발명의 실시 예에 따른 배송 로봇(100)의 제어부(130)는 센싱부(134)의 센서들로부터 배송 로봇(100) 주변의 환경을 감지한 데이터를 획득할 수 있다(S900). 이 경우 상기 센서들 중 적어도 하나는, 상기 3D 이미지 획득이 가능한 이미지 센서일 수 있다. 또한 상기 센서들 중 적어도 하나는 배송 로봇(100) 전방을 지향하도록 배치된 센서일 수 있다. 따라서 제어부(130)는 상기 S900 단계에서 배송 로봇(100)의 전방의 이미지를 상기 주변 환경을 감지한 데이터로 획득할 수 있다.
한편 상기 획득되는 이미지는 거리 정보를 포함하는 3D 이미지일 수 있다. 따라서 제어부(130)는 획득된 이미지에 포함된 각 물체 및 지형 지물까지의 거리 정보를 획득할 수 있다(S902).
일 예로 제어부(130)는 1개 카메라 센서와 LiDAR, RADAR 등의 거리 측정 센서의 정합을 통해, 상기 카메라 센서로부터 획득된 이미지의 각 픽셀에 대한 거리값을 산출할 수 있다. 또는 스테레오 카메라와 같은 복수의 카메라 센서를 사용하는 경우, 복수의 렌즈 간의 시야각 차이를 이용하여 이미지의 각 픽셀에 대한 거리값을 산출할 수 있다.
그리고 제어부(130)는 산출된 거리값들과 이미지를 획득한 센서 간의 기하학적 위치 관계에 근거하여, 상기 이미지의 일 부분만을 관심 영역(ROI)으로 추출할 수 있다(S904).
예를 들어 제어부(130)는 센서가 지향하는 각도를 중심으로 기 설정된 각도 이상의 촬영각에 해당하는 이미지 영역을 노이즈 성분으로 간주하고 제거할 수 있다. 이에 상기 획득된 이미지로부터 하늘이나 지면이 포함된 영역 등, 센서 지향각 중심 영역을 제외한 이미지의 외곽 영역이 제거될 수 있다.
또한 제어부(130)는 획득된 이미지로부터 일정 거리 이상 또는 이하의 거리가 검출되는 영역을 노이즈 영역으로 간주하여 제거할 수 있다. 이 경우 배송 로봇(100) 바로 아래의 지면 영역이나 또는 거리가 측정되지 않는 하늘 영역 등이 노이즈 영역으로 간주되어 제거될 수 있다. 그리고 노이즈 영역으로 제거되고 남은 영역이 상기 관심 영역(ROI)으로 추출될 수 있다.
그리고 제어부(130)는 상기 S904 단계에서 추출된 관심 영역의 이미지로부터, 회전문이 있는지 여부를 검출할 수 있다(S906).
여기서 상기 S906 단계는 사전에 이루어진 기계 학습을 통해 상기 관심 영역 내에 회전문이 있는지 여부가 판단되는 단계일 수 있다. 또는 상기 S906 단계는 저장부(136)에 기 저장된 회전문의 형상 특징에 관련된 정보들과, 상기 획득된 이미지로부터 추출된 형상 특징을 비교하고, 비교 결과에 따라 회전문이 있는지 여부를 판단하는 단계일 수 있다.
한편 상기 S906 단계의 판단 결과, 관심 영역에 회전문이 있는 것으로 판단되는 경우, 제어부(130)는 상기 도 8의 S810 단계로 진행하여, 검출된 회전문에 대한 정적 및 동적 특징들을 검출할 수 있다. 그러나 상기 S906 단계의 판단 결과, 관심 영역에 회전문이 있는 것으로 판단되지 않는 경우, 제어부(130)는 현재까지 진행되었던 도 9의 과정을 종료할 수 있다. 그러면 상기 도 8의 과정이 다시 시작될 수 있다.
한편 상기 S906 단계에서, 상기 관심 영역에 회전문이 있는지 여부는 이미지에서 검출되는 거리값이 더 고려될 수 있다. 이 경우 제어부(130)는 상기 S902 단계에서 관심 영역이 1차로 추출되는 경우, 상기 1차 추출된 관심 영역 중, 미리 지정된 거리 조건에 부합하는 영역을 관심 영역으로 2차 추출할 수 있다. 그리고 2차로 추출된 관심 영역에 한하여 상기 기계 학습에 따른 판단 또는 영상 인식을 통해 회전문이 있는지 여부를 검출할 수 있다.
따라서 획득된 이미지에 회전문의 형상이 포함되어도, 배송 로봇(100)과 회전문 사이의 거리가 기 설정된 거리를 초과하는 경우, 제어부(130)는 관심 영역에 회전문이 포함되지 않은 것으로 판단할 수 있다. 이와 같이 기 설정된 거리를 초과하는 위치에 있는 회전문의 이미지에 대하여 회전문의 존재 유무를 검출하지 않도록 함으로써, 상기 회전문 검출 과정이 불필요하게 발생하는 것을 방지할 수 있다.
한편 상기 S906 단계에서, 관심 영역으로 추출된 이미지에 회전문이 있는 것으로 판단되는 경우, 제어부(130)는 도 8의 S810 단계로 진행하여 회전문의 이미지로부터 회전문의 특징을 검출할 수 있다.
한편 도 10은, 상기 도 8의 동작 과정 중, 회전문의 특징을 검출하는 S810 단계의 동작 과정을 보다 자세히 도시한 것이다.
먼저 상기 회전문의 특징을 검출하기 위해 제어부(130)는 관심 영역의 회전문 이미지로부터 회전축을 중심으로 회전하는 적어도 하나의 문에 대한 특징을 검출할 수 있다(S1000). 여기서 상기 적어도 하나의 문의 특징은 문의 높이, 문의 넓이, 그리고 회전에 의해 변화되는 패턴일 수 있다. 그리고 상기 문의 특징은, 기 설정된 거리 이내로 근접한 배송 로봇(100)이 획득한, 상기 회전문의 정면, 즉 회전문의 입구 부분의 이미지로부터 검출될 수 있다.
도 11은 이처럼 회전문의 입구 부분에서 획득되는 회전문의 이미지로부터, 회전하는 적어도 하나의 문(이하 문 날개)에 대한 특징을 검출하는 예를 도시한 예시도이다.
설명의 편의상 회전문은 입구와 출구는 각각 하나이고, 상기 회전문의 출구는 상기 회전문의 입구와 대칭되도록 형성되는 것을 가정하기로 한다. 또한 상기 회전문은 회전하는 4개의 문 날개를 가지는 것으로 가정하고, 상기 4개의 문 날개는 회전축을 중심으로 일정한 속도(ω)로 시계 반대 방향으로 등속도 회전하는 것을 가정하기로 한다.
회전문(1110)의 전방에서 획득된 회전문(1110)의 이미지는, 회전축(1111)과 상기 회전축(1111)을 중심으로 회전하는 적어도 하나의 문 날개의 이미지, 그리고 회전문(1110)을 둘러싸고 있는 외벽(1100)의 이미지가 포함될 수 있다. 이 경우 상기 이미지를 통해 획득될 수 있는 문 날개의 특징은 문 날개의 크기일 수 있다.
그런데 일정한 공간 내에서 회전하도록 형성된 문 날개의 특징 상, 각 문 날개의 높이는 일정할 수 있다. 따라서 이미지를 통해 획득되는 문 날개의 크기는 회전축(1111)으로부터 문 날개의 가장자리까지의 이미지 상의 거리(L)에 따라 달라질 수 있다.
이 경우, 상기 회전축(1111)으로부터 문 날개의 가장자리까지의 이미지상 거리(L)는, 도 11의 (a)에서 보이고 있는 바와 같이 배송 로봇(100)의 이미지 센서 광축(1120)과 문 날개가 수직을 이룰 때에 가장 커질 수 있다. 즉, 도 11의 (a)에서 보이고 있는 바와 같이, 문 날개들 중 제1 문 날개(D1)가 이미지 센서의 광축(1120)과 수직하는 위치일 때에, 회전축(1111)으로부터 상기 제1 문 날개(D1)의 가장자리까지의 거리(L)는, 획득되는 이미지 상에서 최대값을 가질 수 있다. 여기서 상기 이미지상 거리는, 배송 로봇(100)의 이미지 센서를 통해 획득되는 이미지, 즉 이미지 센서의 초점면에 대응하는 평면상의 거리를 의미할 수 있다.
한편 문 날개는 회전축(1111)을 중심으로 회전하므로, 제1 문 날개(D1)는 시간의 흐름에 따라 시계 반대 방향으로 회전될 수 있다. 그러면 도 11의 (b) 및 (c)에서 보이고 있는 바와 같이, 제1 문 날개(D1)의 회전에 따라 회전축(1111)으로부터 제1 문 날개(D1) 가장자리까지의 이미지상 거리(L)는 점차 감소될 수 있다.
그리고 제1 문 날개(D1)가 배송 로봇(100)의 이미지 센서 광축에 수직한 위치로 회전되는 경우, 도 11의 (d)에서 보이고 있는 바와 같이 상기 제1 문 날개(D1)의 가장자리까지의 이미지 상 거리(L)는 0이 될 수 있다. 이러한 경우 상기 제1 문 날개(D1)과 다른 문 날개, 즉 제2 문 날개(D2)와 회전축 사이의 이미지상 거리가 검출될 수 있으며, 이 경우 제2 문 날개(D2)와 회전축 사이의 이미지상 거리는 최대값을 가질 수 있다.
한편 제어부(130)는 제1 문 날개(D1)와 제2 문 날개(D2)의 특징으로부터 상기 제1 문 날개(D1) 및 제2 문 날개(D2)를 각각 구분할 수 있다. 일 예로 복수의 문 날개 중 적어도 하나에 서로 다른 게시물 등이 부착된 경우, 부착된 게시물의 위치와 형상에 근거하여 상기 복수의 문 날개 각각을 구분하거나 또는 적어도 하나의 문 날개를 다른 문 날개들과 구분할 수 있다. 이 경우 상기 복수의 문 날개(D1 내지 D4) 각각 또는 구분된 적어도 하나의 문 날개는 다른 문 날개들과 정적 특징이 다르게 식별될 수 있다.
이 경우 제어부(130)는 식별된 어느 하나의 문 날개를 기준으로 문 날개들의 회전을 감지할 수 있다. 그리고 식별된 어느 하나의 문 날개를 기준으로 그 문 날개의 가장자리와 회전축(1111)까지의 이미지상 거리(L)가 최대가 되는 제1 시점(t1)을 저장할 수 있다. 그리고 상기 제1 시점(t1)에 해당하는 정적 특징과 가장 유사한 정적 특징이 다시 검출되는 제2 시점(t2)까지의 시간을 상기 문 날개들이 한 바퀴 회전된 시간, 즉 회전문(1110)이 1회전된 시간으로 산출할 수 있다.
일 예로, 상기 식별된 어느 하나의 문 날개가, 제1 문 날개(D1)인 경우 제어부(130)는 도 11의 (a)에서 보이고 있는 바와 같이, 제1 문 날개(D1)의 가장자리와 회전축(1111) 사이의 이미지상 거리(L)가 최대가 되는 시점을 제1 시점(t1)으로 저장할 수 있다. 그리고 상기 제1 시점(t1)에서의 제1 문 날개(D1)의 정적 특징, 즉 상기 제1 문 날개(D1)의 가장자리와 회전축(1111) 사이의 이미지상 거리(L)와, 상기 제1 문 날개(D1)가 다른 문 날개들과 구분되는 특징(예 : 제1 문 날개(D1)에 부착된 게시물의 위치 또는 크기 등)을 상기 제11 시점(t1)의 정적 특징으로 저장할 수 있다.
그리고 제어부(130)는 획득되는 이미지를 통해 문 날개의 정적 특징을 계속 검출 및, 검출된 정적 특징이 상기 저장된 제1 시점(t1)의 정적 특징과 기 설정된 수준 이상 유사한지 여부를 판단할 수 있다. 그리고 상기 제1 시점(t1)의 정적 특징과 기 설정된 수준 이상 유사한 정적 특징이 검출되는 경우, 그 정적 특징이 검출된 시점을 제2 시점(t2)으로 저장할 수 있다.
따라서 상기 제1 시점(t1)이 저장된 이후, 제1 문 날개(D1)가 회전하여 다시 도 11의 (a)에서 보이고 있는 바와 같이 이미지 센서의 광축에 수직한 위치로 이동되는 경우에 상기 제2 시점(t2)이 저장될 수 있다. 그러면 제어부(130)는 상기 제1 시점(t1)과 제2 시점(t2), 그리고 상기 제1 문 날개(D1)의 가장자리와 회전축(1111) 사이의 이미지상 거리(L)의 최대값에 근거하여, 상기 회전문(1110)의 회전 속도(ω)를 검출할 수 있다(S1002).
상기 S1002 단계에서 회전문(1110)의 회전 속도(ω)를 검출하기 위해 제어부(130)는, 상기 제1 문 날개(D1)의 가장자리와 회전축(1111) 사이의 이미지상 거리(L)의 최대값(Lmax)을 상기 회전문 내부 영역의 반지름으로 추정할 수 있다. 즉, 제어부(130)는 하기 수학식 1에 따라 상기 회전문(1110)의 회전 속도(ω)를 검출할 수 있다.
Figure pat00001
여기서, ω는 회전문의 회전 속도, Lmax는 식별된 제1 문 날개의 가장자리와 상기 회전문의 회전축 사이의 이미지상 거리(L)의 최대값, t1은 상기 Lmax가 검출된 제1 시점, 상기 t2는 상기 제1 시점 이후에 상기 Lmax가 다시 검출된 제2 시점을 의미한다.
한편 상기 S1002 단계에서, 회전문(1110)의 회전 속도가 산출되면, 제어부(130)는 배송 로봇(100)이 진입하기 위한 회전문(1110)의 각 문 날개와 문 날개 사이의 공간을 산출하기 위해, 먼저 회전문(1110) 내부 영역의 전체 넓이를 산출할 수 있다(S1004). 이 경우 상기 회전문(1110) 내부 영역의 전체 넓이는 상기 추정된 회전문(1110) 내부 영역의 반지름, 즉 제1 문 날개(D1)의 가장자리와 회전축(1111) 사이의 이미지상 거리(L)의 최대값(Lmax)을 이용하여 하기 수학식 2와 같이 산출할 수 있다.
Figure pat00002
여기서, A는 회전문 내부 영역의 넓이, Lmax는 식별된 제1 문 날개의 가장자리와 상기 회전문의 회전축 사이의 이미지상 거리(L)의 최대값을 의미한다.
한편 상기 S1004 단계에서, 회전문(1110) 내부 영역의 전체 넓이가 산출되면, 제어부(130)는 회전문(1110)의 문 날개들의 개수에 근거하여 각 문 날개와 문 날개 사이의 공간 크기를 산출할 수 있다(S1006). 이를 위해 제어부(130)는 먼저 이미지로부터 획득되는 문 날개의 정적 특징의 변화 패턴에 근거하여 회전문(1110)의 문 날개들의 개수를 산출할 수 있다.
일 예로 제어부(130)는 문 날개의 가장자리와 회전축(1111)까지의 이미지상 거리(L)의 변화 패턴에 근거하여 문 날개들의 개수를 산출할 수 있다. 즉, 도 11의 (a)에서 보이고 있는 바와 같이, 배송 로봇(100)의 이미지 센서 광축과 수직한 위치에 있을 때에 제1 문 날개(D1)의 가장자리와 회전축(1111)까지의 이미지상 거리(L)가 최대값을 가질 수 있으며, 회전문(1110)의 회전에 따라 도 11의 (b) 및 (c)에서 보이고 있는 바와 같이 점차 감소할 수 있다. 그리고 도 11의 (d)에서 보이고 있는 바와 같이, 제1 문 날개(D1)가 배송 로봇(100)의 이미지 센서 광축 방향과 수평한 위치로 이동하는 경우, 제1 문 날개(D1)의 가장자리와 회전축(1111)까지의 이미지상 거리(L)가 0이 됨과 동시에, 다른 문 날개, 즉 제2 문 날개(D2)의 가장자리와 회전축(1111)까지의 이미지상 거리가 다시 최대값을 가질 수 있다. 따라서 회전축(1111)에 가장 인접한 일측의 문 날개로부터 검출되는 문 날개 가장자리와 회전축 사이의 거리(L)는, 도 11의 (a)에서 최대값을 가지다가 회전문(1110)의 회전에 따라 점차로 감소하며, 최소값을 가지는 시점에서 다시 최대값이 검출되는 패턴을 가질 수 있다.
한편, 상기 거리(L)의 변화 패턴은, 회전문(1110)이 1회전하는 동안에 문 날개의 개수에 따라 반복될 수 있다. 즉, 도 11에서 예로 든 바와 같이 4개의 문 날개를 가지는 회전문(1110)의 경우, 회전문(1110)이 1회전하는 동안에 상기 거리(L)는 최대값이 검출된 시점에서 점차로 감소하고, 최소값이 검출된 시점에서 다시 최대값이 검출되는 패턴을 4번 반복하게 된다. 즉 패턴이 반복된 회수와 상기 회전문(1110)이 1회전하는 시간(제2 시점(t2)와 제1 시점(t1) 사이의 시간차)에 근거하여 제어부(130)는 회전문(1110)의 문 날개 개수를 검출할 수 있다.
한편 상술한 바와 같이 회전문의 개수가 검출되면, 제어부(130)는 검출된 회전문의 개수와 상기 S1004 단계에서 산출된 회전문(1110) 내부 영역의 전체 넓이에 근거하여, 문 날개와 문 날개 사이의 공간 크기를 산출할 수 있다. 일 예로, 제어부(130)는 하기 수학식 3에서 보이고 있는 바와 같이 회전문(1110) 내부 영역의 전체 넓이를 검출된 문 날개 개수로 나누어 상기 문 날개와 문 날개 사이의 공간 크기, 즉 배송 로봇(100)이 진입 가능한 진입 공간의 크기를 산출할 수 있다.
Figure pat00003
여기서, S는 진입 공간의 크기, A는 회전문 내부 영역의 넓이, 그리고 N은 문 날개의 개수를 의미한다.
한편 상술한 설명에서는, 회전축(1111)을 중심으로 좌측 또는 우측 중 어느 하나를 기준으로 회전축과 문 날개의 가장자리까지의 이미지상 거리에 근거하여 문 날개 크기의 변화 패턴을 검출하고 그에 따라 회전문의 특징을 검출하는 예를 설명하였다. 따라서 배송 로봇(100)이, 이미지 센서가 회전축(1111)을 중심으로 좌측 또는 우측 중 어느 한쪽을 지향하도록 회전문의 전방 좌측 또는 우측에 위치한 상태에서, 상기 회전축(1111) 좌측 또는 우측 중 일측에서 검출되는 문 날개의 정적 특징에 근거하여 회전문의 회전 속도, 내부 영역의 크기, 문 날개의 개수 및 진입 공간의 크기 등을 회전문의 특징으로서 검출하는 예를 설명하였다.
한편 이와는 다른 방법으로 상기 회전문의 회전 속도, 내부 영역의 크기, 문 날개의 개수 및 진입 공간의 크기 등을 포함하는 회전문의 특징을 검출할 수도 있음은 물론이다.
일 예로, 제어부(130)는 상술한 바와 같이 문 날개의 가장자리와 회전축 사이의 거리(L)의 변화에 따라 최대값의 거리(L)이 검출된 시점에서 최소값의 거리(L)가 검출되는 시점 사이의 시간을 검출할 수 있다. 이 경우 도 11을 가정하여 살펴보면, 도 11의 (a)와 같이 문 날개가 회전된 시점(상기 거리(L)가 최대인 시점)에서 도 11의 (d)와 같이 문 날개가 회전된 시점(상기 거리(L)가 최소인 시점) 사이의 시간을 검출할 수 있다.
이 경우 상기 거리(L)가 최대값을 가지는 시점은, 문 날개의 개수와 상관없이, 문 날개가 도 11의 (a)에서 보이고 있는 바와 같이 배송 로봇(100)의 이미지 센서 광축(1120)에 수직하는 위치에 있을 때이고, 상기 거리(L)가 최소값을 가지는 시점은, 문 날개의 개수와 상관없이, 문 날개가 도 11의 (d)에서 보이고 있는 바와 같이 배송 로봇(100)의 이미지 센서 광축(1120)과 평행하는 방향에 위치할 때이다.
즉, 도 11의 (a) 및 도 11의 (d)에서 보이고 있는 바와 같이, 문 날개의 가장자리와 회전축 사이의 거리(L)가 최대값인 시점과 최소값인 시점 사이의 시간은, 어느 하나의 문 날개가 90도 만큼 회전하는데 소요된 시간일 수 있다. 따라서 거리(L)가 최대값인 시점과 최소값인 시점 사이의 시간은 회전문(1110)의 회전 속도, 즉 분당 회전수에 따라 서로 달라질 수 있다.
한편 상기 저장부(136)는 회전문의 분당 회전수 별로, 문 날개가 90도 회전하는데 소요되는 시간의 정보, 즉 회전문의 분당 회전수 별 각속도에 따라 문 날개가 90도 회전될 때의 소요 시간에 대한 정보를 저장할 수 있다. 이러한 정보는 본 발명과 관련하여 이루어진 복수의 실험에 의하여 미리 실측되거나 또는 산출된 정보로서, 배송 로봇(100)이 출시될 때에 제조사로부터 미리 저장된 정보일 수 있다.
따라서 제어부(130)는, 문 날개의 가장자리에서 회전축 사이의 거리(L)가 최대값인 시점과 최소값인 시점 사이의 시간 차이를 산출하고, 산출된 시간 차와 상기 저장부(136)에 저장된 정보에 근거하여, 회전문의 분당 회전수를 추정할 수 있다. 그리고 추정된 분당 회전수에 근거하여 회전문이 1회전하는데 소요되는 시간, 즉 1 회전 시간을 추정할 수 있다.
한편 상술한 바와 같이, 회전문(1110)이 1 회전하는 동안에 문 날개의 가장자리에서 회전축 사이의 거리(L)는, 최대값이 검출된 시점에서 점차로 감소하고, 최소값이 검출되었다가 최대값이 검출되는 패턴을 반복할 수 있다. 그리고 문 날개의 개수가 많을수록, 회전문(1110)이 1 회전하는 동안에 상기 거리(L)가 증감하는 패턴이 반복되는 횟수가 많아질 수 있다.
예를 들어 도 11에서 보이고 있는 바와 같이 문 날개가 4개인 회전문(1110)의 경우 회전문(1110)이 1회전 하는 동안에 문 날개의 가장자리에서 회전축 사이의 거리(L)의 증감 패턴은 4번 반복될 수 있다. 그리고 문 날개가 3개인 회전문의 경우 회전문이 1회전 하는 동안에 문 날개의 가장자리에서 회전축 사이의 거리(L)의 증감 패턴은 3번 반복될 수 있다. 또는 문 날개가 2개인 회전문의 경우 회전문이 1회전 하는 동안에 문 날개의 가장자리에서 회전축 사이의 거리(L)의 증감 패턴은 2번 반복될 수 있다. 즉, 상기 거리(L)의 증감 패턴이 1회 이루어지는 시간이 4번 반복되거나(문 날개 4개), 3번 반복되는 경우(문 날개 3개), 2번 반복되는 경우(문 날개 2개), 회전문이 1회 회전하는 시간이 산출될 수 있다.
따라서 제어부(130)는, 문 날개의 가장자리에서 회전축 사이의 거리(L)의 증감 패턴이 1회 이루어지는 시간을 4회 곱한 값, 3회 곱한 값, 그리고 2회 곱한 값에 따라, 각각 문 날개가 4개인 경우와 3개인 경우, 그리고 2개인 경우에 대응하는 회전문의 1회전 시간들을 산출할 수 있다. 그리고 산출된 회전 시간들 중, 상기 분당 회전수에 근거하여 산출된 회전문의 1회전 시간과 기 설정된 수준 이상 유사한 어느 하나에 근거하여, 회전문의 문 날개 개수를 추정할 수 있다. 그리고 추정된 회전문의 문 날개 개수에 따라 회전문이 1 회전하는 시간을 결정할 수 있다.
이 경우 상기 결정된 회전문의 1 회전 시간은, 상기 수학식 1에서 제2 시점(t2)과 제1 시점(t1)의 시간차에 대응하는 값일 수 있다. 따라서 상기 수학식 1에서 상기 회전문의 회전 속도를 산출하기 위해 상기 제2 시점(t2)과 제1 시점(t1)의 시간차 대신 사용될 수 있다. 그리고 상기 산출된 문 날개의 개수는 상기 수학식 3에서 진입 공간의 크기를 산출하기 위해 이용될 수 있다.
한편 상술한 설명에서는, 회전문의 회전축을 중심으로, 좌측 또는 우측의 일측의 문 날개로부터 검출되는 특징에 근거하여 문 날개의 개수, 회전문의 회전 속도, 회전문 내부 영역의 크기 및 진입 공간의 크기 등을 산출하는 예를 설명하였으나, 이와는 달리 상기 회전문의 회전축 좌측 및 우측에서 검출되는 문 날개의 특징들의 상관관계를 이용하여 상기 회전문의 특징을 검출할 수도 있음은 물론이다.
일 예로, 배송 로봇(100)은 하나 또는 그 이상의 이미지 센서를 이용하여 회전축 좌측 및 우측의 문 날개의 이미지 변화를 모두 검출할 수 있다. 그리고 검출된 결과에 따라 상술한 회전문의 특징을 검출할 수도 있다. 도 12 내지 도 15는 이처럼 회전축 좌측 및 우측의 문 날개의 이미지로부터 검출되는 특징들의 상관관계에 근거하여 회전문의 문 날개의 개수를 검출하는 예를 설명한 것이다.
한편 회전축(1111) 좌측 및 우측의 문 날개의 이미지 변화를 모두 검출하기 위해, 배송 로봇(100)은 회전문의 입구 중앙에서 회전문의 회전축을 지향하는 위치에 위치할 수 있다. 그리고 적어도 하나의 이미지 센서를 이용하여, 상기 회전축 좌측 및 우측의 문 날개의 이미지들을 획득할 수 있다. 이에 이하의 설명에서는 배송 로봇(100)이 회전문의 입구 중앙에서 회전축을 지향하는 방향에 위치하는 것을 가정하여 설명하기로 한다.
한편 센싱부(134)는 상기 회전축을 중심으로 촬상된 하나의 이미지에서, 상기 회전축을 중심으로 좌우 양측의 문 날개의 특징을 검출할 수 있다. 또는 상기 회전축 좌측의 이미지를 센싱하는 제1 센서와, 상기 회전축 우측의 이미지를 센싱하는 제2 센서에서 각각 획득되는 이미지들에 근거하여, 상기 회전축 좌우 양측의 문 날개의 특징을 검출할 수 있다.
먼저 도 12는, 상기 회전축의 좌우 양측 문 날개들 특징들 간의 상관 관계에 근거하여 문 날개의 개수를 검출하는 동작 과정을 도시한 흐름도이다.
도 12를 참조하여 살펴보면, 본 발명의 실시 예에 따른 배송 로봇(100)의 제어부(130)는 회전문의 회전축을 중심으로, 좌측 문 날개의 크기, 즉 좌측 문 날개의 가장자리에서 회전축까지의 이미지상 제1 거리(L1)와, 우측 문 날개의 크기, 즉 우측 문 날개의 가장자리에서 회전축까지의 이미지상 제2 거리(L2)를 검출할 수 있다(S1200). 그리고 검출된 제1 거리(L1)와 제2 거리(L2)가 동일한지 여부를 판단할 수 있다(S1202). 그리고 검출된 제1 거리(L1)와 제2 거리(L2)가 동일한 경우, 상기 제1 거리(L1)와 제2 거리(L2)가 각각 최대값을 가진 상태인지 여부를 검출할 수 있다(S1204).
그리고 상기 제1 거리(L1)와 제2 거리(L2)가 동일할 때에, 상기 제1 거리(L1)와 제2 거리(L2)가 각각 최대값을 가지지 않는 경우라면, 상기 회전문을 3개의 문 날개를 가진 것으로 판별할 수 있다(S1206).
한편 상기 S1204 단계의 판단 결과, 제1 거리(L1)와 제2 거리(L2)가 동일한 시점에, 상기 제1 거리(L1)와 제2 거리(L2)가 최대값을 가지는 경우라면, 제어부(130)는 상기 제1 거리(L1)와 제2 거리(L2)의 크기 변화 패턴이 동일한지 여부를 검출할 수 있다(S1208). 그리고 상기 S1208 단계의 크기 변화 패턴 검출 결과에 근거하여 문 날개의 개수를 2개로 추정하거나(S1212) 또는 4개로 추정할 수 있다(S1210).
일 예로 상술한 바에 따르면, 배송 로봇(100)의 이미지 센서 광축에 수직한 방향에 문 날개가 위치하는 경우, 해당 문 날개의 가장자리에서 회전축까지의 거리(L)는 최대값을 가지며, 배송 로봇(100)의 이미지 센서 광축에 평행한 방향을 따라 문 날개가 위치하는 경우, 해당 문 날개의 가장자리에서 회전축까지의 거리(L)은 최소값 0을 가질 수 있다.
따라서 문 날개가 3개인 회전문(1300)을 설명하고 있는 도 13을 참조하여 살펴보면, 도 13의 (a)에서 보이고 있는 바와 같이, 회전축(1111) 좌측의 문 날개(제1 문 날개(D1))가 회전하여 배송 로봇(100)의 이미지 센서의 광축(1320)과 수직한 위치로 이동하는 때에, 회전축(1111)으로부터 좌측 문 날개의 가장자리까지의 거리(제1 거리(L1))는 최대값을 가질 수 있다.
그런데 회전축(1111)으로부터 좌측 문 날개 가장자리까지의 제1 거리(L1)가 최대값을 가질 때에, 상기 회전축(1111)으로부터 우측 문 날개 가장자리까지의 제2 거리(L2)는 도 13의 (a)에서 보이고 있는 바와 같이 최대값보다 작은 값을 가질 수 있다. 따라서 상기 제1 거리(L1)과 제2 거리(L2)는 서로 다른 값을 가질 수 있으며, 이에 따라 제어부(130)는 상기 도 12의 S1202 단계의 판단 결과, 다시 S1200 단계로 진행하여 상기 제1 거리(L1)와 제2 거리(L2)를 다시 검출할 수 있다.
한편, 문 날개가 3개인 회전문(1300)의 경우, 문 날개와 문 날개 사이의 사이각은 120도를 이루도록 형성된다. 따라서 회전문(1300)이 회전함에 따라, 도 13의 (b)에서 보이고 있는 바와 같이, 회전축(1111) 좌측의 문 날개(제1 문 날개(D1))와 우측의 문 날개(제3 문 날개(D3))가, 각각 회전축(1111)과의 사이각 60도를 이루는 위치로 이동하는 경우, 회전축(1111)으로부터 제1 문 날개(D1) 가장자리까지의 거리(제1 거리(L1))와 회전축(1111)으로부터 제3 문 날개(D3) 가장자리까지의 거리(제2 거리(L2))는 서로 같은 값을 가질 수 있다. 따라서 제어부(130)는 상기 도 12의 S1202 단계의 판단 결과, 상기 제1 거리(L1)와 제2 거리(L2)가 동일해지는 시점에, S1204 단계로 진행하여 상기 제1 거리(L1)와 제2 거리(L2)가 각각 최대값인지를 판단할 수 있다.
그런데 도 13의 (b)에서 보이고 있는 바와 같이, 제1 문 날개(D1)와 제3 문 날개(D3)가 각각 회전축(1111)과의 사이각 60도를 이루는 위치인 경우, 상기 제1 문 날개(D1) 및 제3 문 날개(D3)와 이미지 센서의 광축(1320)이 이루는 내각은 90도 보다 작거나 클 수 있다. 따라서 도 13의 (b)에서 보이고 있는 바와 같이 회전축(1111) 좌측의 문 날개(D1) 가장자리와 회전축(1111) 사이의 거리(제1 거리(L1))와, 회전축(1111) 우측의 문 날개(D3) 가장자리와 회전축(1111) 사이의 거리(제2 거리(L2))는, 각각 최대값보다 작은 값들을 가질 수 있다.
여기서 상기 회전축(1111) 좌측의 문 날개는 회전축(1111) 좌측에 있는 문 날개 중 배송 로봇(100)에 가장 인접한 문 날개일 수 있으며, 상기 회전축(1111) 우측의 문 날개는 회전축(1111) 우측에 있는 문 날개 중 배송 로봇(100)에 가장 인접한 문 날개일 수 있다.
따라서 도 13의 (b)에서 보이고 있는 바와 같이, 3개의 문 날개를 가지는 회전문(1300)에서, 제1 거리(L1)와 제2 거리(L2)가 서로 같은 값을 가지는 경우, 제1 거리(L1)와 제2 거리(L2)의 값은 최대값보다 기 설정된 수준 이상 작은 값을 가질 수 있다. 예를 들어 상기 제1 거리(L1)의 값은, 도 13의 (a)에서 검출되는 제1 거리(L1)의 값보다 작을 수 있다.
따라서 제어부(130)는 도 12의 S1204 단계의 판단 결과, 제1 거리(L1)와 제2 거리(L2)가 각각 최대값이 아니라고 판단할 수 있으며, 이에 따라 S1206 단계로 진행하여 회전문(1300)의 문 날개 개수가 3개라고 판단할 수 있다.
한편 문 날개가 회전하는 경우, 제1 거리(L1)는 계속 감소하는 패턴을 가질 수 있으며, 제2 거리(L2)는 계속 증가하는 패턴을 가질 수 있다. 그리고 상기 제3 문 날개(D3)가 이미지 센서의 광축(1320)과 수직한 위치를 지날 때에, 회전축(1111) 우측의 문 날개 가장자리로부터 회전축(1111) 사이의 거리, 즉 제2 거리(L2)는 최대값을 가질 수 있다. 그리고 점차 감소될 수 있다. 그리고 제1 문 날개(D1)가 이미지 센서의 광축(1320)과 평행을 이루는 위치를 지날 때, 회전축(1111) 좌측의 문 날개 가장자리로부터 회전축(1111) 사이의 거리, 즉 제1 거리(L1)는 0이 될 수 있다.
한편 상기 제1 거리(L1)가 0이 되는 시점 이후, 회전축(1111) 좌측 및 우측의 문 날개가 변경될 수 있다. 이 경우 배송 로봇(100)에 가장 인접한 회전축(1111) 좌측의 문 날개는 제2 문 날개(D2)가 될 수 있으며, 배송 로봇(100)에 가장 인접한 회전축(1111) 우측의 문 날개는 제1 문 날개(D1)가 될 수 있다. 그리고 상기 제2 문 날개(D2)의 가장자리와 회전축(1111) 사이의 이미지상 거리 및, 제1 문 날개(D1)의 가장자리와 회전축(1111) 사이의 이미지상 거리에 따라 제1 거리(L1) 및 제2 거리(L2)가 다시 검출될 수 있다.
한편 도 14는 문 날개의 개수가 4개인 경우를 가정하여 설명한 것이다.
먼저 도 14의 (a)를 참조하여 살펴보면, 도 14의 (a)는 회전문(1400)의 회전에 따라 제1 문 날개(D1)와 제3 문 날개(D3)가 각각 배송 로봇(100)의 이미지 센서 광축(1320)에 수직한 위치로 이동한 경우를 가정한 것이다. 이 경우 제4 문 날개(D4)는 이미지 센서 광축(1320)에 평행한 위치로서 문 날개 가장자리와 회전축(1111) 사이의 거리가 0인 상태일 수 있다.
따라서 제어부(130)는 회전축(1111) 좌측의 문 날개 가장자리로부터 회전축 사이의 거리(제1 거리(L1))로서 제1 문 날개(D1)의 가장자리에서 회전축(1111) 사이의 이미지상 거리를 검출할 수 있으며, 회전축(1111) 우측의 문 날개 가장자리로부터 회전축 사이의 거리(제2 거리(L2))로서 제3 문 날개(D3)의 가장자리에서 회전축(1111) 사이의 이미지상 거리를 검출할 수 있다.
한편 도 14에서 보이고 있는 바와 같이 4개의 문 날개를 가지는 회전문(1400)의 경우, 각 문 날개 사이의 사이각은 90도를 형성할 수 있다. 따라서 도 14의 (a)에서 보이고 있는 바와 같이, 어느 하나의 문 날개(D4)가 이미지 센서의 광축(1320)과 평행을 이루는 경우, 다른 두 개의 문 날개(D1, D3)는 상기 이미지 센서의 광축(1320)과 수직을 이루는 위치에 있을 수 있다. 따라서 상기 이미지 센서의 광축(1320)과 수직을 이루는 제1 문 날개(D1) 가장자리와 회전축(1111) 사이의 거리(제1 거리(L1))와 제3 문 날개(D3) 가장자리와 회전축(1111) 사이의 거리(제2 거리(L2))는 동일할 수 있으며 또한 최대값을 가질 수 있다.
따라서 상기 도 12의 S1200 단계에서 검출된 제1 거리(L1)와 제2 거리(L2)가 동일한 시점(도 12의 S1202 단계)에서, 상기 제1 거리(L1)와 제2 거리(L2)는 최대값을 가질 수 있다. 따라서 제어부(130)는 도 12의 S1204 단계에서 S1208 단계로 진행하여, 제1 거리(L1)와 제2 거리(L2)의 변화 패턴을 비교할 수 있다.
한편 도 14를 참조하여 살펴보면, 회전문(1400)이 회전하는 경우, 제4 문 날개(D4)가 회전될 수 있다. 따라서 상기 제4 문 날개(D4)가 이미지 센서 광축(1320)에 평행하지 않은 위치로 이동하면서, 이미지를 통해 검출되는 회전축(1111) 우측의 문 날개가 변경될 수 있다. 즉, 도 14의 (b)에서 보이고 있는 바와 같이, 배송 로봇(100)에 가장 인접한 회전축(1111) 좌측의 문 날개는 여전히 제1 문 날개(D1)일 수 있으나, 배송 로봇(100)에 가장 인접한 회전축(1111) 우측의 문 날개는 제3 문 날개(D3)에서 제4 문 날개(D4)로 변경될 수 있다. 따라서 제어부(130)는 회전축(1111) 우측의 문 날개 가장자리로부터 회전축 사이의 거리(제2 거리(L2))로서 제4 문 날개(D4)의 가장자리에서 회전축(1111) 사이의 이미지상 거리를 검출할 수 있다.
따라서 회전문(1400)의 회전에 따라 도 14의 (b) 및 도 14의 (c)에서 보이고 있는 바와 같이, 제1 거리(L1)는 최대값(도 14의 (a))에서 점차적으로 감소할 수 있다. 이에 반해 제2 거리(L2)는 도 14의 (a)에서 최대값이 검출된 이후 회전축(1111) 우측 문 날개의 변경(D3에서 D4로 변경)에 따라 최소값 0에 근접한 값으로 감소한 이후에 점차적으로 증가할 수 있다.
한편 이와 같이 제1 거리(L1)는 감소하고, 제2 거리(L2)는 증가하므로, 제1 거리(L1)와 제2 거리(L2)의 변화 패턴은 서로 상반될 수 있다. 이에 따라 제어부(130)는 도 12의 S1208 단계에서 상기 제1 거리(L1)와 제2 거리(L2)의 크기 변화가 서로 다른 것으로 판단할 수 있다. 따라서 제어부(130)는 S1212 단계로 진행하여, 회전문(1400)의 문 날개의 개수를 4개로 추정할 수 있다.
한편 상술한 바와 같이 제1 거리(L1)와 제2 거리(L2)의 변화 패턴이 상반되므로, 제1 거리(L1)와 제2 거리(L2)가 변화하는 도중에 상기 제1 거리(L1)와 제2 거리(L2)의 값이 같아지는 지점이 발생할 수 있다. 그리고 이러한 시점에서 상기 S1200 단계의 검출이 시작되는 경우라면, 제어부(130)는 S1202 단계에서 제1 거리(L1)와 제2 거리(L2)가 동일하다고 판단할 수 있다.
이러한 경우, 도 12의 S1206 단계로 진행하여 문 날개의 개수가 3개인 회전문으로 오판되는 것을 방지하기 위하여, 상기 S1202 단계는, 상기 제1 거리(L1)와 제2 거리(L2)의 값이 일정 수준 이상 큰 값을 가지는지 여부를 판별하는 단계를 더 포함할 수도 있다. 즉, 상기 도 12의 S1202 단계는, 상기 제1 거리(L1)와 제2 거리(L2)의 값이 각각 최대값을 기준으로 기 설정된 크기(예 : 최대값의 70% 이상) 이상의 값인 경우에 한하여 상기 제1 거리(L1)와 제2 거리(L2)의 값이 같은지 여부를 판단하는 단계일 수 있다. 이 경우 상기 제1 거리(L1)와 제2 거리(L2)의 값이 동일하더라도 그 크기가 최대값의 70% 미만인 경우, 제어부(130)는 다시 S1200 단계로 진행하여 상기 제1 거리(L1)와 제2 거리(L2)의 값을 다시 검출할 수 있다.
한편, 도 15는 문 날개의 개수가 2개인 경우의 예를 가정한 것이다. 도 15를 참조하여 살펴보면, 문 날개의 개수가 2개인 경우 제1 문 날개(D1)과 제2 문 날개(D2)는 도 15의 (a)에서 보이고 있는 바와 같이 180도의 내각을 가지도록 형성될 수 있다. 따라서 도 15의 (a)에서 보이고 있는 바와 같이 제1 문 날개(D1)와 제2 문 날개(D2)가 각각 이미지 센서의 광축(1320)에 수직한 방향에 위치하는 경우 회전축(1111) 좌측의 문 날개(D1) 가장자리에서 회전축(1111) 사이의 이미지상 거리(제1 거리(L1))와, 회전축(1111) 우측의 문 날개(D2) 가장자리에서 회전축(1111) 사이의 이미지상 거리(제2 거리(L2))는 각각 동일할 수 있으며, 또한 각각 최대값을 가질 수 있다.
따라서 제어부(130)는 도 12의 S1202 단계 및 S1204 단계의 판단 결과에 따라, 상기 제1 거리(L1)와 제2 거리(L2)의 변화 패턴이 동일한지 여부를 판별하는 S1208 단계로 진행할 수 있다.
한편 도 15에서 보이고 있는 바와 같이, 문 날개가 2개인 회전문(1500)의 경우 제1 문 날개(D1)와 제2 문 날개(D2)는 서로 180도의 사이각을 형성하므로, 도 15의 (b)에서 보이고 있는 바와 같이 회전문(1500)의 회전 시, 제1 거리(L1)가 감소하는 경우 제2 거리(L2)가 함께 감소할 수 있으며, 제1 거리(L1)가 증가하는 경우 제2 거리(L2)가 함께 증가할 수 있다. 따라서 제어부(130)는 상기 도 12의 S1208 단계에서, 제1 거리(L1)와 제2 거리(L2)의 변화 패턴이 동일하다고 판별할 수 있으며, 상기 S1208 단계의 판단 결과에 따라 S1210 단계로 진행하여, 회전문(1500)의 문 날개의 개수를 2개로 추정할 수 있다.
한편 문 날개의 개수가 2개인 회전문(1500)의 경우 도 15의 (c)에서 보이고 있는 바와 같이, 제1 및 제2 문 날개(D1, D2)가 회전하여 이미지 센서의 광축(1320) 방향과 평행한 위치로 이동될 수 있다. 이러한 경우 제어부(130)는 상기 제1 거리(L1)와 제2 거리(L2)는 모두 0의 값을 가지는 것으로 판단할 수 있다. 한편 이처럼 회전문의 회전 중에 제1 거리(L1)와 제2 거리(L2)가 모두 0의 값을 가지는 경우는 문 날개가 2개인 경우만 가능하므로, 상기 제1 거리(L1)와 제2 거리(L2)의 값이 모두 0을 가지는 경우, 즉 오차 또는 노이즈를 고려하여, 0에 근접한 값을 가지거나 또는 상기 제1 거리(L1)와 제2 거리(L2)가 모두 검출되지 않는 경우가 있는지 여부에 따라 회전문의 문 날개 개수를 4개 또는 2개로 판단할 수도 있음은 물론이다.
즉, 상기 도 12의 S1208 단계는, 기 설정된 시간 내에 상기 제1 거리(L1)와 제2 거리(L2)가 모두 0이 되거나 또는 모두 검출되지 않는 시점이 있는지 여부를 검출하는 단계로 대체될 수 있다. 이 경우 제어부(130)는 상기 기 설정된 시간 내에 제1 거리(L1)와 제2 거리(L2)가 모두 0이 되는 경우(또는 모두 검출되지 않은 경우)가 검출되면 S1210 단계로 진행하여 문 날개의 개수를 2개로 추정하고, 그렇지 않은 경우 S1212 단계로 진행하여 문 날개의 개수를 4개로 추정할 수 있다.
한편 도 12 내지 도 15에서 설명한 바와 같이 회전문의 문 날개 개수가 추정되면, 제어부(130)는 제1 거리(L1) 또는 제2 거리(L2)가 반복되는 패턴을 검출할 수 있다. 그리고 반복된 패턴들 중 하나의 패턴에 소요되는 시간을 검출하고, 검출된 1개 패턴의 소요 시간에 상기 추정된 문 날개의 개수를 곱하여, 회전문이 1 회전 하는 시간을 검출할 수 있다.
이 경우 검출된 회전문의 1 회전 시간은, 상기 수학식 1에서 제2 시점(t2)과 제1 시점(t1)의 시간차에 대응하는 값일 수 있다. 따라서 상기 수학식 1에서 상기 회전문의 회전 속도를 산출하기 위해 상기 제2 시점(t2)과 제1 시점(t1)의 시간차 대신 사용될 수 있다. 그리고 상기 추정된 문 날개의 개수는 상기 수학식 3에서 진입 공간의 크기를 산출하기 위해 이용될 수 있다.
한편 상기 도 10에서 설명한 과정을 통해 진입 공간의 크기가 산출되면, 제어부(130)는 도 8의 S820 단계에서, 현재 배송 로봇(100)의 위치를 초기 위치로 설정하고, 산출된 회전문의 회전 속도(ω), 진입 공간의 크기(S), 회전문의 위치 및 상기 회전문 입구까지의 거리, 회전문 내부 영역의 크기(A), 그리고 배송 로봇(100)의 크기 및 최대 주행 속도(V)에 근거하여 진입할 공간을 결정할 수 있다. 여기서 상기 진입 공간은 회전문의 문 날개에 의해 구분되는 회전문의 내부 영역들 중 어느 하나의 공간이 될 수 있다.
그리고 진입 공간이 결정되면, 제어부(130)는 결정된 진입 공간 내로 로봇이 진입할 진입 위치를 결정하고, 회전문의 회전 속도에 근거하여 진입 경로를 생성할 수 있다. 그리고 진입 경로를 따라 상기 진입 공간으로 배송 로봇(100)이 진입하는 진입 시점에, 상기 배송 로봇(100)이 회전문 내부로 진입할 수 있도록, 회전문까지의 거리를 반영하여 배송 로봇(100)의 진입 속도를 결정할 수 있다. 그리고 진입 경로를 통해 배송 로봇(100)이 주행되도록 구동부(137)를 제어하여 회전문 내부 영역으로의 진입을 수행할 수 있다.
한편 상기 진입 위치는, 회전하는 문 날개에 배송 로봇(100)이 충돌하지 않는 위치일 수 있다. 즉, 진입 위치는, 배송 로봇(100)으로부터 주변의 문 날개가 가장 멀리 이격된 위치로서, 문 날개와 다른 문 날개 사이의 영역의 중앙 위치일 수 있다. 그리고 상기 진입 공간 및 진입 위치가 결정되면, 제어부(130)는 상기 진입 위치로 진입할 진입 시점을 결정할 수 있다.
이 경우 제어부(130)는 도 13의 (b)에서 보이고 있는 바와 같이, 문 날개와 다른 문 날개 사이의 영역의 중심이 회전문(1300)의 입구 중앙에 위치하는 시점을 진입 시점으로 결정할 수 있다. 따라서 제어부(130)는 회전문의 회전 속도에 근거하여, 현재 결정된 진입 공간이, 회전문(1400)의 입구 중앙에 위치하는 시점을 진입 시점으로 추정할 수 있으며, 회전문(1400)과 배송 로봇(100) 사이의 거리와 상기 결정된 진입 속도에 근거하여 배송 로봇(100)이 상기 진입 위치까지 주행하는 주행 시간을 산출할 수 있다.
또는 한편 회전문은 계속 회전하므로, 진입 공간(1600)의 중앙 지점이 회전문(1400)의 입구 중앙에 위치하는 시점에 배송 로봇(100)이 진입하는 경우, 실제로 배송 로봇(100)이 진입 공간(1600) 내부로 진입하는 시점은, 진입 공간(1600)의 중앙이 회전문(1400)의 입구 중앙을 경과한 시점일 수 있다. 이에 제어부(130)는 진입 공간(1600)의 중앙이 회전문(1400)의 입구 중앙에 도달하는 시점 보다 앞서서 상기 진입 시점을 결정할 수도 있음은 물론이다.
그리고 회전문의 문 날개 개수와 적어도 하나의 문 날개 크기의 변화 패턴에 근거하여, 회전문의 현재 회전 상태를 검출하고, 현재 회전 상태에 근거하여, 상기 결정된 진입 공간이 진입 위치에 도달할 때까지의 대기 시간을 산출할 수 있다. 그리고 산출된 대기 시간이 주행 시간 보다 큰 경우라면, 산출된 대기 시간과 주행 시간의 차이에 해당하는 시간이 경과한 이후에 상기 진입 경로를 따라 배송 로봇(100)이 진입 속도에 근거하여 진입을 시작하도록 구동부(137)를 제어할 수 있다.
한편 상기 산출된 대기 시간이 상기 산출된 주행 시간 보다 작은 경우, 제어부(130)는 회전문이 한 바퀴 더 회전하도록 대기할 수 있다. 이 경우 상기 진입 공간이 상기 진입 위치를 지나간 이후에 제어부(130)는 상기 대기 시간과 주행 시간을 다시 산출할 수 있다. 이 경우 대기 시간은 최대값을 가지므로, 상기 주행 시간보다 큰 값을 가질 수 있다.
한편 상기 산출된 대기 시간이 상기 산출된 주행 시간 보다 작은 경우, 제어부(130)는 진입 속도를 보다 증가시킬 수 있다. 그리고 주행 시간을 다시 산출할 수 있다. 이 경우 재산출된 주행 시간은 보다 짧아질 수 있으며, 이에 따라 산출된 대기 시간보다 작은 값을 가질 수 있다. 그러면 제어부(130)는 산출된 대기 시간과 주행 시간의 차이에 해당하는 시간이 경과한 이후에 생성된 진입 경로를 따라 배송 로봇(100)이 진입 속도에 근거하여 진입을 시작하도록 구동부(137)를 제어할 수 있다.
한편 도 16은, 배송 로봇(100)이, 산출된 진입 공간 및 회전문(1400)의 회전 속도에 근거하여 회전문 영역으로 진입하고, 상기 회전문 영역에서 이탈하는 예를 도시한 예시도이다. 설명의 편의상 회전문(1400)의 입구와 출구는 각각 하나이며, 회전문(1400)의 출구는 회전문(1400)의 입구와 대칭되는 방향에 위치하는 것을 가정하여 설명하기로 한다.
상술한 바와 같이 제어부(130)는, 문 날개와 문 날개에 의해 구분되는 회전문 내부의 영역들 중 일 영역을 배송 로봇(100)이 진입할 진입 공간(1600)으로 결정할 수 있다. 그리고 결정된 진입 공간(1600)에 따라 진입 위치 및 진입 시점을 결정하고, 결정된 진입 시점에 따라 진입 경로를 생성할 수 있다. 도 16의 (a)는 진입 경로가 생성된 예를 보이고 있는 것이다.
한편 제어부(130)는 상술한 바와 같이, 상기 진입 공간(1600)이 최적의 위치, 즉 진입 공간(1600)이 위치하는 때(진입 시점)에 배송 로봇(100)이 진입할 수 있도록, 회전문(1400)까지의 거리와 회전문(1400)의 회전 속도에 근거하여 배송 로봇(100)의 진입 시작 시점을 결정할 수 있다. 그리고 결정된 진입 시작 시점에 상기 진입 경로에 따른 주행을 시작할 수 있다. 이에 따라 도 16의 (b)에서 보이고 있는 바와 같이, 상기 진입 시점(진입 공간이 최적의 진입 위치에 위치하는 시점)에 상기 진입 공간(1600)으로의 진입이 이루어질 수 있다.
한편 회전문 내부 영역, 즉 진입 공간(1600)으로의 진입이 성공적으로 이루어지면, 제어부(130)는 도 16의 (c)에서 보이고 있는 바와 같이 진입 공간(1600)에서 다른 문 날개 및 회전문(1400)의 외벽(1100)과 충돌하지 않도록, 주변의 문 날개(D1, D4), 그리고 외벽(100)과 배송 로봇(100) 사이의 이격 거리를 검출할 수 있으며, 검출된 이격 거리들과 회전문(1400)의 회전 속도에 근거하여 배송 로봇(100)이 주행하도록 구동부(137)를 제어할 수 있다. 이 경우 제어부(130)는 상기 각 문 날개와 외벽(100)과 배송 로봇(100) 사이의 이격 거리가, 기 설정된 최소 이격 거리 이상을 유지하도록 주행 제어를 수행할 수 있다.
한편 도 16의 (c)와 같이 회전문 내의 영역을 주행하면서, 제어부(130)는 회전문의 중심, 즉 회전축을 중심으로 배송 로봇(100)이 진입을 시작한 위치, 즉 출발점에 대칭되는 이탈점을 결정할 수 있다. 그리고 회전문의 회전 속도를 반영하여, 상기 이탈점까지의 이탈 경로를 생성할 수 있다. 도 16의 (d)는 이러한 이탈 경로가 형성된 예를 도시한 것이다.
이 경우 제어부(130)는 회전문 내부를 주행하면서 지속적으로 추측 항법(Dead Reckoning) 등의 방법으로 배송 로봇(100)의 위치를 갱신할 수 있다. 그리고 상기 이탈점과 현재 배송 로봇(100)의 위치를 연결하는 이탈 경로를 생성할 수 있다. 그리고 상기 이탈점과 현재 배송 로봇(100)의 위치가 기 설정된 범위 이내로 근접하면, 회전문 영역에서의 이탈을 위한 상기 이탈 경로를 생성할 수 있다.
이 경우, 상기 이탈 경로가 회전하는 문 날개와의 충돌하는 경우, 제어부(130)는 도 16의 (c)와 같이 회전문 내 영역의 주행 제어를 지속할 수 있다. 반면 도 16의 (d)에서 보이고 있는 바와 같이, 생성된 이탈 경로가 회전하는 문 날개와의 충돌하지 않는 경우 상기 이탈 경로를 따라 배송 로봇(100)이 주행하도록 구동부(137)를 제어할 수 있다. 이에 따라 배송 로봇(100)은 회전문 내부의 영역으로부터 이탈 할 수 있다.
한편 제어부(130)는, 진입 공간(1600)으로 진입한 경우, 회전문의 회전 속도에 근거하여 상기 진입 공간(1600)의 위치가 기 설정된 각도 이상 변경되는 시간을 산출할 수 있다. 예를 들어 제어부(130)는 산출된 회전문의 회전 속도에 근거하여, 진입 공간의 위치가 100도(기 설정된 각도가 100도 인 경우를 가정함) 만큼 변경되는 시간(t)을 산출할 수 있다. 그리고 진입 시점 및 상기 산출된 시간(t)에 근거하여 회전문의 이탈 시점 및 상기 이탈 경로를 결정할 수 있다. 여기서, 상기 회전문의 이탈 시점 및 상기 이탈 경로는 배송 로봇이 건물 내부로의 진입 및 건물 외부로의 진출 과정을 위한 상기 회전문의 진출 시점 및 상기 회전문의 진출에 따른 이동 경로를 의미한다. 따라서, 진입 시점 및 상기 산출된 시간(t)에 근거하여 회전문의 이탈 시점 및 이탈 경로를 결정하는 것은 진입 시점 및 상기 산출된 시간(t)에 근거하여 회전문의 진출 시점 및 진출에 따른 이동 경로를 결정하는 것을 의미할 수 있다.
또는 제어부(130)는 영상 인식 또는 딥러닝 이미지 인식을 통해 회전문의 출구를 검출할 수 있다. 일 예로 제어부(130)는 전방의 문 날개(D4) 가장자리와 회전문을 둘러싸고 있는 외벽 사이의 거리(D)를 영상 인식 또는 상기 딥러닝 이미지 인식을 통해 검출할 수 있다. 그리고 검출된 거리(D)가 기 설정된 거리 이상인지 여부에 근거하여 상기 이탈 경로에 따른 주행 시에, 회전하는 문 날개와 배송 로봇(100)의 충돌 여부를 판별할 수 있다. 즉, 상기 검출된 거리(D)가, 기 설정된 거리 이하인 경우, 제어부(130)는 상기 이탈 경로를 따라 주행 시 회전하는 문 날개에 충돌할 수 있다고 판단할 수 있다. 반면 상기 검출된 거리(D)가, 기 설정된 거리를 초과하는 경우, 제어부(130)는 상기 이탈 경로를 따라 주행 시 회전하는 문 날개에 충돌하지 않을 수 있다고 판단할 수 있다.
여기서 상기 기 설정된 거리는 배송 로봇(100)의 크기에 따라 결정되는 거리일 수 있다. 예를 들어 상기 기 설정된 거리는 상기 배송 로봇(100)의 크기, 예를 들어 배송 로봇(100)의 너비 등에 대응하는 거리일 수 있다. 또는 상기 기 설정된 거리는 배송 로봇(100)의 너비 등에 대응하는 거리보다 일정 수준 짧은 길이를 가질 수 있다. 일 예로 상기 기 설정된 거리는 배송 로봇(100)의 너비에 대응하는 거리의 80%에 대응하는 길이를 가질 수 있다. 이는 자동으로 회전하는 회전문의 특성 상, 배송 로봇(100)이 이탈 경로를 따라 주행하는 동안에 전방의 문 날개(D4)와 회전문을 둘러싸고 있는 외벽 사이의 거리(D)가 증가할 수 있기 때문이다. 이 경우, 회전문의 회전 속도에 따라 상기 기 설정된 거리는 보다 가변적으로 결정될 수도 있음은 물론이다.
전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 따라서 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
100 : 배송 로봇 130 : 제어부
131 : 통신부 132 : 입력부
133 : 출력부 134 : 센싱부
135 : 촬영부 136 : 저장부
137 : 구동부 137a : 주행 구동부
137b : 틸팅 구동부 138 : 전원부

Claims (20)

  1. 배송 로봇에 있어서,
    적어도 하나의 이미지 센서를 포함하는 센싱부;
    상기 배송 로봇의 본체를 이동시키는 구동부; 및,
    상기 적어도 하나의 센서에서 획득되는 상기 배송 로봇 전방의 이미지로부터 회전문을 검출 및, 검출된 회전문의 이미지로부터 회전축을 중심으로 회전하는 적어도 하나의 문 날개의 특징을 검출하며,
    검출된 적어도 하나의 문 날개의 특징으로부터 상기 회전문의 회전 속도와 회전문 내부의 영역 크기, 그리고 상기 문 날개들의 개수를 포함하는 회전문 특징을 검출 및, 검출된 회전문 특징에 근거하여 상기 배송 로봇의 초기 위치와 상기 회전문 내부로의 진입 시점을 포함하는 진입 경로, 상기 회전문으로부터의 이탈 시점과 이탈점을 포함하는 이탈 경로를 생성하고, 상기 진입 경로와 이탈 경로에 따라 주행하여 상기 배송 로봇이 상기 회전문을 통과하도록 상기 구동부를 제어하는 제어부를 포함하는 것을 특징으로 하는 배송 로봇..
  2. 제1항에 있어서, 상기 제어부는,
    상기 회전문의 문 날개들 중 다른 문 날개들과 구분 가능한 어느 하나의 문 날개를 식별하고,
    상기 식별된 어느 하나의 문 날개의 가장자리로부터 상기 회전축 사이의 이미지상 거리가 변화하는 패턴에 근거하여 상기 회전문의 회전 속도 및 상기 회전문에 구비된 문 날개들의 개수를 검출하는 것을 특징으로 하는 배송 로봇.
  3. 제2항에 있어서, 상기 제어부는,
    각 문 날개의 가장자리에서 상기 회전축 사이의 이미지상 거리가 각각 최대값을 가질 때 상기 최대값을 가지는 이미지상 거리에 따라 산출되는 각 문 날개의 넓이와, 상기 각 문 날개들의 형상에 근거하여 각 문 날개의 정적 특징들을 검출하고, 검출된 정적 특징들에 근거하여 상기 어느 하나의 문 날개를 식별하는 것을 특징으로 하는 배송 로봇.
  4. 제2항에 있어서, 상기 제어부는,
    상기 식별 가능한 어느 하나의 문 날개의 특징에 대응하는 제1 시점과, 상기 제1 시점 이후에 상기 식별 가능한 어느 하나의 문 날개의 특징이 다시 검출되는 제2 시점 사이의 시간 차에 근거하여 상기 회전문이 1회 회전하는 시간을 산출하고,
    상기 회전문이 1회 회전하는 시간과, 상기 식별 가능한 어느 하나의 문 날개의 가장자리에서 상기 회전축 사이의 이미지상 거리에 근거하여, 상기 회전문의 회전 속도 및 상기 회전문의 문 날개 개수를 산출하는 것을 특징으로 하는 배송 로봇.
  5. 제4항에 있어서, 상기 제어부는,
    상기 식별 가능한 어느 하나의 문 날개의 가장자리에서 상기 회전축 사이의 이미지상 거리에 근거하여 상기 회전문 내부 영역의 크기를 산출하고, 산출된 회전문 내부 영역의 크기와 상기 회전문의 문 날개 개수에 근거하여 상기 배송 로봇이 상기 회전문 영역으로 진입 가능한 진입 공간의 크기를 산출하는 것을 특징으로 하는 배송 로봇.
  6. 제1항에 있어서,
    회전문의 분당 회전수 별 각속도에 근거하여, 기 설정된 각도만큼 회전문이 회전할 때의 소요 시간에 대한 정보를 포함하는 저장부를 더 구비하고,
    상기 제어부는,
    상기 회전축의 좌측 또는 우측 중 일측의 문 날개 가장자리에서 상기 회전축 사이의 이미지상 거리가 최대값인 시점과 최소값인 시점 사이의 시간차를 산출 및, 산출된 시간차와 상기 소요 시간에 대한 정보에 근거하여 상기 회전문의 분당 회전수를 산출하고,
    상기 회전축의 좌측 또는 우측 중 일측에서, 문 날개의 가장자리로부터 회전축 사이의 이미지상 거리의 변화 패턴이 반복되는 회수에 따라, 서로 다른 문 날개를 가지는 회전문들이 각각 1 회전 시에 소요될 수 있는 예상 소요 시간들을 산출하며,
    상기 예상 소요 시간들 중, 상기 분당 회전수에 근거하여 산출되는 상기 회전문의 1 회전 시 소요 시간에 대응하는 어느 하나에 근거하여, 상기 회전문의 문 날개 개수를 추정하는 것을 특징으로 하는 배송 로봇.
  7. 제1항에 있어서, 상기 제어부는,
    상기 회전문의 회전축을 중심으로, 회전축 좌측의 문 날개 가장 자리로부터 상기 회전축 사이의 제1 거리 및, 회전축 우측의 문 날개 가장 자리로부터 상기 회전축 사이의 제2 거리를 검출하며, 검출된 제1 거리와 제2 거리가 같아지는 시점에서 상기 제1 거리와 제2 거리가 최대값을 가지는지 여부에 따라 상기 회전문이 3개의 문 날개를 가지는지 여부를 판단하며,
    상기 회전문이 3개의 문 날개를 가지지 않는 것으로 판단되는 경우, 상기 제1 거리와 제2 거리의 변화 패턴에 근거하여 상기 회전문의 문 날개 개수를 2개 또는 4개로 판단하는 것을 특징으로 하는 배송 로봇.
  8. 제7항에 있어서, 상기 제어부는,
    검출된 제1 거리와 제2 거리가 같아지는 시점에서, 상기 제1 거리와 제2 거리가, 상기 제1 거리와 제2 거리 각각의 최대값을 기준으로 기 설정된 비율 이상의 값을 가지는지 여부에 근거하여 상기 제1 거리와 제2 거리가 최대값을 가지는지 여부를 판단하는 것을 특징으로 하는 배송 로봇.
  9. 제7항에 있어서, 상기 제어부는,
    상기 회전문이 3개의 문 날개를 가지지 않는 것으로 판단되는 경우, 기 설정된 시간 내에 상기 제1 거리와 제2 거리가 모두 0에 근접한 값을 가지거나, 또는 상기 제1 거리와 제2 거리가 모두 검출되지 않은 경우가 발생하는지 여부에 근거하여 상기 회전문의 문 날개 개수를 2개 또는 4개로 판단하는 것을 특징으로 하는 배송 로봇.
  10. 제1항에 있어서, 상기 제어부는,
    상기 적어도 하나의 이미지 센서로부터 획득되는 이미지 정보로부터, 이미지 센서가 지향하는 각도 및 상기 이미지 정보에 포함된 거리 정보에 근거하여, 일부 영역을 관심 영역(Region Of Interest)으로 추출하고,
    상기 추출된 관심 영역으로부터 상기 회전문이 있는지 여부를 검출하는 것을 특징으로 하는 배송 로봇.
  11. 제1항에 있어서, 상기 제어부는,
    상기 회전문의 각 문 날개에 의해 구분되는 어느 하나의 공간을 상기 배송 로봇이 진입할 진입 공간으로 결정하고,
    상기 회전문의 회전 속도에 따라 상기 진입 공간의 위치를 검출 및, 검출된 진입 공간의 위치에 따라 상기 배송 로봇이 상기 진입 공간으로 진입할 상기 진입 경로를 생성하는 것을 특징으로 하는 배송 로봇.
  12. 제11항에 있어서, 상기 제어부는,
    상기 배송 로봇이, 상기 진입 공간으로 진입하는 경우, 상기 회전문의 회전 속도에 따라 상기 진입 공간의 위치가 기 설정된 각도 이상 변경되는 시간을 산출하고, 산출된 시간에 근거하여 상기 이탈 경로를 생성하는 것을 특징으로 하는 배송 로봇.
  13. 제11항에 있어서, 상기 제어부는,
    상기 진입 공간이, 상기 회전문의 회전 속도에 따라 기 설정된 진입 위치로 이동할 때까지의 시간과 상기 회전문과 상기 배송 로봇 사이의 거리에 따라 진입 속도를 결정하는 것을 특징으로 하는 배송 로봇.
  14. 제13항에 있어서, 상기 기 설정된 진입 위치는,
    상기 진입 공간의 중앙 지점이 상기 회전문의 입구 중앙 지점에 대응하는 위치임을 특징으로 하는 배송 로봇.
  15. 제1항에 있어서, 상기 제어부는,
    상기 배송 로봇이 상기 회전문 내부의 영역을 주행하는 경우, 상기 배송 로봇 주변의 문 날개들 및 상기 회전문을 둘러싼 외벽과 상기 배송 로봇 사이의 이격 거리들을 검출하고, 검출된 이격 거리들과 상기 회전문의 회전 속도에 근거하여 상기 배송 로봇이 주행하도록 상기 구동부를 제어하는 것을 특징으로 하는 배송 로봇.
  16. 제1항에 있어서, 상기 제어부는,
    상기 회전축을 중심으로 상기 배송 로봇이 상기 회전문으로의 진입을 시작하는 상기 배송 로봇의 초기 위치에 대칭되는 지점에 상기 이탈점을 형성하는 것을 특징으로 하는 배송 로봇.
  17. 제1항에 있어서, 상기 제어부는,
    상기 회전문의 내부 영역에서 주행하는 경우, 상기 배송 로봇의 위치를 지속적으로 갱신하며, 갱신된 배송 로봇의 위치와 상기 이탈점이 기 설정된 범위 이내로 근접하면, 상기 이탈점과 상기 갱신된 배송 로봇의 위치를 잇는 상기 이탈 경로를 생성하며,
    상기 이탈 경로가 회전하는 문 날개에 충돌하는지 여부에 근거하여 상기 이탈 경로에 따라 주행하도록 상기 구동부를 제어하는 것을 특징으로 하는 배송 로봇.
  18. 제17항에 있어서, 상기 제어부는,
    상기 배송 로봇 전방의 문 날개 가장 자리와 상기 회전문을 둘러싼 외벽 사이의 거리를 검출하고, 검출된 거리가 기 설정된 거리 이상인지 여부에 따라 상기 이탈 경로에 따라 주행 시 문 날개에 충돌할 지 여부를 판단하는 것을 특징으로 하는 배송 로봇.
  19. 제18항에 있어서, 상기 기 설정된 거리는,
    상기 배송 로봇의 크기에 따라 결정되는 것을 특징으로 하는 배송 로봇.
  20. 배송 로봇의 제어 방법에 있어서,
    적어도 하나의 이미지 센서를 통해 획득되는 적어도 하나의 이미지에 근거하여 상기 배송 로봇의 전방에 위치한 회전문을 검출하는 단계;
    검출된 회전문의 이미지로부터, 회전축을 중심으로 회전하는 적어도 하나의 문 날개의 특징을 검출하는 단계;
    검출된 문 날개의 특징에 근거하여, 상기 회전문의 회전 속도와 회전문 내부의 영역 크기, 그리고 상기 문 날개들의 개수를 포함하는 회전문 특징을 검출하는 단계;
    검출된 회전문의 특징으로부터 상기 배송 로봇의 초기 위치와 상기 회전문 내부로의 진입 시점을 포함하는 진입 경로를 생성하고, 생성된 진입 경로에 따라 주행하도록 상기 배송 로봇의 구동부를 제어하는 단계;
    상기 회전문 내부의 영역으로 진입하는 경우, 상기 회전문의 회전 속도 및 회전하는 문 날개들의 이동에 따라 상기 회전문 내부 영역을 주행하도록 상기 구동부를 제어하는 단계;
    상기 배송 로봇의 초기 위치에 근거하여 상기 회전문의 출구에 위치한 이탈점을 결정 및, 상기 이탈점과 상기 배송 로봇의 위치에 근거하여 이탈 경로를 생성하는 단계; 및,
    상기 이탈 경로와 상기 배송 로봇 주변의 문 날개에 근거하여 상기 이탈 경로에 따라 주행하도록 상기 구동부를 제어하는 단계를 포함하는 것을 특징으로 하는 배송 로봇의 제어 방법.
KR1020210117024A 2021-09-02 2021-09-02 배송 로봇 및 그 배송 로봇의 제어 방법 KR20230033980A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210117024A KR20230033980A (ko) 2021-09-02 2021-09-02 배송 로봇 및 그 배송 로봇의 제어 방법
PCT/KR2021/013938 WO2023033232A1 (en) 2021-09-02 2021-10-08 Delivery robot and control method of the delivery robot
US17/545,753 US11966226B2 (en) 2021-09-02 2021-12-08 Delivery robot and control method of the delivery robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210117024A KR20230033980A (ko) 2021-09-02 2021-09-02 배송 로봇 및 그 배송 로봇의 제어 방법

Publications (1)

Publication Number Publication Date
KR20230033980A true KR20230033980A (ko) 2023-03-09

Family

ID=85412573

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210117024A KR20230033980A (ko) 2021-09-02 2021-09-02 배송 로봇 및 그 배송 로봇의 제어 방법

Country Status (2)

Country Link
KR (1) KR20230033980A (ko)
WO (1) WO2023033232A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116135492B (zh) * 2023-04-20 2023-09-05 成都盛锴科技有限公司 一种轨道车辆车门自动拆装装置及方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10913160B2 (en) * 2017-02-06 2021-02-09 Cobalt Robotics Inc. Mobile robot with arm for door interactions
KR102386687B1 (ko) * 2017-05-08 2022-04-14 십일번가 주식회사 배송로봇장치 및 그 동작 방법, 그리고 서비스서버
KR20210013898A (ko) * 2019-07-29 2021-02-08 (주) 퓨처로봇 시간 기반의 제어가 가능한 멀티기능로봇 및 이를 제어하는 방법
KR20210055342A (ko) * 2019-11-07 2021-05-17 엘지전자 주식회사 로봇 및 그의 제어 방법
CN110861095B (zh) * 2019-12-09 2021-03-19 上海高仙自动化科技发展有限公司 机器人控制方法、机器人和可读存储介质

Also Published As

Publication number Publication date
WO2023033232A1 (en) 2023-03-09

Similar Documents

Publication Publication Date Title
US11693427B2 (en) Plurality of autonomous mobile robots and controlling method for the same
KR102275300B1 (ko) 이동 로봇 및 그 제어방법
US20210146540A1 (en) Method of identifying dynamic obstacle and robot implementing same
JP5629390B2 (ja) 可動式ロボットシステム
US11397871B2 (en) Artificial intelligence moving agent
CA2928262C (en) Mobile robot system
US11422566B2 (en) Artificial intelligence robot cleaner
US11169539B2 (en) Plurality of autonomous mobile robots and controlling method for the same
US12001223B2 (en) Plurality of autonomous mobile robots and controlling method for the same
US11554495B2 (en) Method of localization using multi sensor and robot implementing same
US20200012287A1 (en) Cart robot and system for controlling robot
US11435759B2 (en) Plurality of autonomous mobile robots and controlling method for the same
KR102306394B1 (ko) 인공지능 로봇 청소기
US20190339690A1 (en) Plurality of autonomous mobile robots and controlling method for the same
KR20190109324A (ko) 로봇 충전대의 위치를 추천하기 위한 방법, 장치 및 시스템
KR20210029586A (ko) 이미지 내의 특징적 객체에 기반하여 슬램을 수행하는 방법 및 이를 구현하는 로봇과 클라우드 서버
US11385643B2 (en) Artificial intelligence moving agent
JP2020079997A (ja) 情報処理装置、情報処理方法、及びプログラム
US20200012293A1 (en) Robot and method of providing guidance service by the robot
KR20210096523A (ko) 로봇의 위치 인식
US11966226B2 (en) Delivery robot and control method of the delivery robot
KR20230033980A (ko) 배송 로봇 및 그 배송 로봇의 제어 방법
AU2015218522A1 (en) Mobile robot system
US20230161356A1 (en) Method of updating map in fusion slam and robot implementing same
KR20210042537A (ko) 대면적의 공간에서 로컬 영역별로 위치를 추정하는 방법 및 이를 구현하는 로봇과 클라우드 서버