KR102012550B1 - 돌발 장애물을 식별하는 방법 및 이를 구현하는 로봇 - Google Patents

돌발 장애물을 식별하는 방법 및 이를 구현하는 로봇 Download PDF

Info

Publication number
KR102012550B1
KR102012550B1 KR1020170022238A KR20170022238A KR102012550B1 KR 102012550 B1 KR102012550 B1 KR 102012550B1 KR 1020170022238 A KR1020170022238 A KR 1020170022238A KR 20170022238 A KR20170022238 A KR 20170022238A KR 102012550 B1 KR102012550 B1 KR 102012550B1
Authority
KR
South Korea
Prior art keywords
robot
sensing
unit
blind spot
moving object
Prior art date
Application number
KR1020170022238A
Other languages
English (en)
Other versions
KR20180096058A (ko
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 KR1020170022238A priority Critical patent/KR102012550B1/ko
Priority to US15/892,589 priority patent/US10948913B2/en
Publication of KR20180096058A publication Critical patent/KR20180096058A/ko
Application granted granted Critical
Publication of KR102012550B1 publication Critical patent/KR102012550B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • 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
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/005Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 with correlation of navigation data from several sources, e.g. map or contour matching
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C3/00Measuring distances in line of sight; Optical rangefinders
    • G01C3/02Details
    • G01C3/06Use of electric means to obtain final indication
    • G01C3/08Use of electric radiation detectors
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • 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
    • 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
    • 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/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/103Static body considered as a whole, e.g. static pedestrian or occupant recognition
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/161Decentralised systems, e.g. inter-vehicle communication
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/166Anti-collision systems for active traffic, e.g. moving vehicles, pedestrians, bikes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Electromagnetism (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Medical Informatics (AREA)
  • Game Theory and Decision Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Abstract

본 발명은 돌발 장애물을 식별하는 방법 및 이를 구현하는 로봇에 관한 것으로, 본 발명의 일 실시예에 의한 돌발 장애물을 식별하는 방법은 로봇의 센싱 모듈이 로봇의 주행 경로에 배치된 사각 지대를 센싱하는 단계, 로봇의 제어부가 센싱된 사각 지대에서 이동 객체가 등장하는 확률을 산출하는 단계, 및 산출된 확률에 따라 제어부는 로봇의 이동부의 속도 또는 방향을 제어하는 단계를 포함한다.

Description

돌발 장애물을 식별하는 방법 및 이를 구현하는 로봇{METHOD OF IDENTIFYING UNEXPECTED OBSTACLE AND ROBOT IMPLEMENTING THEREOF}
본 발명은 돌발 장애물을 식별하는 방법 및 이를 구현하는 로봇에 관한 기술이다.
공항, 학교, 관공서, 호텔, 사무실, 공장 등 인적, 물적 교류가 활발하게 발생하는 공간에서 로봇이 동작하기 위해서는 전체 공간에 대한 맵을 가져야 한다. 또한, 로봇은 맵에 기반하여 주행을 수행하는 과정에서 맵에 기재되지 않은 장애물, 즉 사람이나 물체의 이동을 예측하여 주행하는 것이 필요하다. 이들 장애물들은 로봇의 주행 경로에 불특정하게 진입할 수 있으므로 이들과의 충돌을 회피하도록 로봇을 주행시키는 것이 필요하다.
특히, 벽이나 기둥과 같이 맵 상에서 공간이 일부 차단되어 있으나 다른 우회 경로를 통해 사람이나 물체가 돌발적으로 등장하는 경우, 예를 들어 로봇의 센서가 감지할 수 없는 사각 지대에서 사람이나 물체가 등장할 경우, 로봇이 이를 감지하지 못하고 충돌하거나 갑작스러운 외부 변수로 인한 급격한 방향 선회를 하여 로봇이 중심을 잡지 못하는 등의 문제가 발생할 수 있다. 로봇은 전체 공간 내에서 기능을 수행하되 외부의 장애물이 이동하여도 이를 발견할 수 있으나, 사각 지대에서 갑자기 등장하는 돌발 장애물에 대해서는 감지 속도가 늦어질 수 있다.
따라서, 본 명세서에서는 로봇이 공간에 대한 맵에 기반하여 주행하는 과정에서 돌발 장애물과 같이 센서에 감지하지 못한 상태에서 갑자기 감지되는 장애물들에 대응하여 주행할 수 있도록 하는 방안을 제시하고자 한다.
본 명세서에서는 전술한 문제점을 해결하기 위한 것으로, 벽이 끝나는 지점 또는 기둥이 배치된 지점 등의 사각 지대에서 로봇이 충돌 없이 주행할 수 있도록 하는 방안을 제시하고자 한다.
또한, 본 명세서에서는 로봇이 사각 지대를 식별하고 돌발 장애물에 대응하여 로봇의 주행 경로 또는 주행 방향과 주행 속도를 조절하는 방안을 제시하고자 한다.
또한, 본 명세서에서는 로봇이 센싱한 다양한 센싱 데이터에 기반하여 돌발 장애물과의 충돌을 회피하는 방안을 제시하고자 한다.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
본 발명의 일 실시예에 의한 돌발 장애물을 식별하는 방법은 로봇의 센싱 모듈이 로봇의 주행 경로에 배치된 사각 지대를 센싱하는 단계, 로봇의 제어부가 센싱된 사각 지대에서 이동 객체가 등장하는 확률을 산출하는 단계, 및 산출된 확률에 따라 제어부는 로봇의 이동부의 속도 또는 방향을 제어하는 단계를 포함한다.
본 발명의 다른 실시예에 의한 돌발 장애물을 식별하는 방법은 로봇의 제어부가 맵 저장부에 저장된 맵에서 주행 경로에 배치되는 사각 지대를 식별하는 단계, 로봇이 식별된 사각 지대에 근접하는 경우 로봇의 센싱 모듈이 사각 지대의 객체를 센싱하는 단계, 및 제어부는 센싱한 객체가 고정 객체인지 이동 객체인지를 판단하여 이동 객체인 경우 제어부는 로봇의 이동부의 속도 또는 방향을 제어하는 단계를 포함한다.
본 발명의 또다른 실시예에 의한 돌발 장애물을 식별하는 로봇은 로봇의 주변에 배치된 고정 객체와 이동 객체를 센싱하는 센싱 모듈, 로봇이 주행하는 공간의 고정 객체의 위치 및 고정 객체의 고정성을 저장하는 맵 저장부, 센싱 모듈이 센싱한 데이터와 맵 저장부에 저장된 데이터에 기반하여 로봇의 주행 경로를 생성하는 제어부, 및 제어부의 제어에 따라 로봇을 이동시키는 이동부를 포함하며, 제어부는 로봇의 주행 경로에 배치되는 사각 지대에서 이동 객체를 식별하여 이동부의 속도 또는 방향을 제어한다.
본 발명의 실시예들을 적용할 경우, 로봇은 사각 지대에서 돌발하여 이동하는 장애물들과 충돌을 회피하며 주행할 수 있다.
또한 본 발명의 실시예들을 적용할 경우, 로봇은 사각 지대를 기준으로 로봇의 현재 위치를 수정하여 정확한 포지셔닝을 가능하게 한다.
또한, 본 발명의 실시예들을 적용할 경우, 센싱된 객체가 사람인 경우 로봇이 대인 동작을 수행할 수 있도록 한다.
본 발명의 효과는 전술한 효과에 한정되지 않으며, 본 발명의 당업자들은 본 발명의 구성에서 본 발명의 다양한 효과를 쉽게 도출할 수 있다.
도 1은 본 발명의 일 실시예에 의한 2차원에 기반한 맵의 구조를 보여주는 도면이다.
도 2는 본 발명의 일 실시예에 의한 h1, h2, h3 이라는 높이에서 센싱된 고정 객체들의 위치를 보여주는 도면이다.
도 3은 본 발명의 일 실시예에 의한 로봇의 구성을 보여주는 도면이다.
도 4는 본 발명의 일 실시예에 의한 로봇이 벽에서 이동 객체가 돌발할 수 있는 공간을 확인하는 과정을 보여주는 도면이다.
도 5는 본 발명의 일 실시예에 의한 뎁스 카메라부가 사물의 뎁스를 산출한 데이터가 반영된 이미지이다.
도 6은 본 발명의 일 실시예에 의한 로봇이 이동하는 과정에서 사각 지대를 식별하거나 센싱하여 이에 대응하는 동작을 수행하는 과정을 보여주는 도면이다.
도 7은 본 발명의 일 실시예에 의한 로봇이 주행 경로에 배치되는 사각 지대를 판별하는 과정을 보여주는 도면이다.
도 8은 본 발명의 일 실시예에 의한 센싱 모듈이 사각 지대를 센싱하는 도면이다.
도 9는 본 발명의 일 실시예에 의한 사각 지대를 맵을 기준으로 식별하는 도면이다.
도 10은 본 발명의 일 실시예에 의한 로봇이 사각 지대에 근접하여 이동 객체를 센싱하는 과정을 보여주는 도면이다.
도 11은 본 발명의 다른 실시예에 의한 로봇이 사각 지대를 식별하는 과정을 보여주는 도면이다.
도 12는 본 발명의 일 실시예에 의한 사각 지대 주행 모드로 로봇이 주행 경로를 구성하는 도면이다.
도 13은 본 발명의 일 실시예에 의한 다수의 로봇이 돌발 장애물에 대한 정보를 교환하는 과정을 보여주는 도면이다.
도 14는 본 발명의 일 실시예에 의한 다수의 로봇들 간에 사각 지대의 이동 객체를 센싱하는 과정을 보여주는 도면이다.
도 15는 본 발명의 일 실시예에 의한 로봇이 사각 지대에 근접하여 자신의 위치 정보를 수정하는 과정을 보여주는 도면이다.
도 16은 본 발명의 일 실시예에 의한 뎁스 카메라부를 이용하여 로봇이 주행하는 과정을 보여주는 도면이다.
이하, 도면을 참조하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조 부호를 붙이도록 한다. 또한, 본 발명의 일부 실시예들을 예시적인 도면을 참조하여 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가질 수 있다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략할 수 있다.
본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질, 차례, 순서 또는 개수 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 다른 구성 요소가 "개재"되거나, 각 구성 요소가 다른 구성 요소를 통해 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
또한, 본 발명을 구현함에 있어서 설명의 편의를 위하여 구성요소를 세분화하여 설명할 수 있으나, 이들 구성요소가 하나의 장치 또는 모듈 내에 구현될 수도 있고, 혹은 하나의 구성요소가 다수의 장치 또는 모듈들에 나뉘어져서 구현될 수도 있다.
이하, 본 명세서에서 로봇은 특정한 목적(청소, 보안, 모니터링, 안내 등)을 가지거나 혹은 로봇이 이동하는 공간의 특성에 따른 기능을 제공하며 이동하는 장치를 포함한다. 따라서, 본 명세서에서의 로봇은 소정의 정보와 센서를 이용하여 이동할 수 있는 이동수단을 보유하며 소정의 기능을 제공하는 장치를 통칭한다.
본 명세서에서 로봇은 맵을 보유하면서 이동할 수 있다. 맵은 공간에서 이동하지 않는 것으로 확인된 고정된 벽, 계단, 기둥 등에 대한 정보를 의미한다. 또한, 로봇은 맵 위에 별도의 객체들에 대한 정보를 저장할 수 있다. 예를 들어, 고정된 벽에 부착된 안내 플랫폼, 새로이 설치된 자판기 등은 고정된 물체는 아니지만 일정 시간동안 고정성을 가지고 있으므로, 이들은 맵에 추가적인 고정물로 저장되는 것이 필요하다.
특히, 본 명세서에서는 로봇이 배치된 공간을 기준으로 벽 또는 기둥이나 추가적인 고정물들 뒷편에 공간이 있는 경우, 이들 공간에서 새로운 이동 객체가 등장하여 로봇과 충돌하는 것을 방지하기 위해 맵 정보와 센싱된 정보를 이용하여 로봇이 이동할 수 있도록 한다.
본 발명의 일 실시예에서, 맵에는 다수의 고정 객체에 대한 위치 정보가 저장될 수 있다. 이때 고정 객체의 고정성에 대한 정보도 함께 저장된다.
일 실시예로 콘크리트 벽은 고정성이 가장 높은 것으로 저장할 수 있다. 다음으로 유리벽은 고정성이 콘크리트 벽 보다는 낮은 것으로 저장할 수 있다. 또한, 맵에서 일시적으로 열리거나 닫히는 문과 같은 고정 객체 역시 고정성을 낮게 하여 저장할 수 있다.
벽 외에도 콘크리트 기둥 역시 고정성이 높은 것으로 저장할 수 있다. 반면, 고정되지 않으나 일정기간 위치가 고정되는 안내 데스크, 안내판, 광고판 등도 고정성이 낮은 것으로 하여 맵에 저장될 수 있다.
맵에는 고정 객체의 위치정보와 객체의 고정성에 대한 값을 추가적으로 저장할 수 있다.
이하, 벽이 끝나는 지점 또는 기둥이 배치된 지점 등의 사각 지대에서 로봇이 충돌 없이 주행할 수 있도록 하는 방안 및 이를 구현하는 로봇에 대해 살펴본다. 도한, 로봇이 사각 지대를 식별하고 돌발 장애물에 대응하여 로봇의 주행 경로 또는 주행 방향과 주행 속도를 조절하는 실시예들과, 로봇이 센싱한 다양한 센싱 데이터에 기반하여 돌발 장애물과의 충돌을 회피하는 실시예들을 살펴본다.
도 1은 본 발명의 일 실시예에 의한 2차원에 기반한 맵의 구조를 보여주는 도면이다. 맵은 로봇에 배치된 센서 혹은 설계 도면 등을 기반으로 제작될 수 있다. 맵은 전체 공간을 일정한 셀로 나누어 해당 셀에 고정객체가 위치하는지를 표시할 수 있다. 일 실시예로 하나의 셀의 크기가 10x10 cm의 크기인 경우 이 셀 내에 고정 객체가 배치되는지 여부로 맵을 구성할 수 있다. 다른 실시예로 하나의 셀의 크기가 100x100cm 의 크기인 경우 가로 세로 1미터 내에 고정객체가 배치되는 것을 나타낼 수 있다. 또한, 객체의 위치 정보뿐만 아니라 고정성 정보도 함께 저장될 수 있다. 셀의 크기가 커지면 맵의 정밀도가 작아지고 셀의 크기가 커질 경우 맵의 정밀도가 커질 수 있다.
맵의 일 실시예로 특정 공간 내에 고정 객체의 위치 및 이들의 고정성 정보가 함께 배치된 비트맵 구조를 도시하고 있다.
맵(10) 내에는 다양한 고정 객체들의 고정성 정보가 1 내지 10의 숫자를 가진다. 고정성 정보가 높은 값을 가지는 경우 해당 객체는 고정되어 이동하지 않을 가능성이 높은 객체이다. 콘크리트 벽을 나타내는 고정성 정보는 10이 될 수 있다. 한편, 유리와 같은 벽은 고정성 정보로 7을 가질 수 있다. 5는 고정 객체이지만 제거가 쉬운 이동성 벽을 지시한다. 고정성 정보의 일 실시예는 라이다 센싱 과정에서 반사되어 센싱된 신호의 강도를 기준으로 구성할 수도 있다.
맵(10)에서 문과 같이 특정 위치에 고정되어 있으나 일시적으로 열리거나 닫히는 경우에는 별도의 특정된 고정성 정보로 설정할 수 있다. 예를 들어 도 1에서 3과 같은 고정성 정보로 설정된 영역(20)은 문이 열리거나 닫히는 영역이며 이 영역에서는 사물 혹은 사람이 이동할 수 있는 공간을 의미한다.
도 1의 맵(10)에서 로봇이 월 팔로잉(Wall-Following) 방식으로 주행하거나, 혹은 로봇에 설정된 센서가 벽과 같은 고정 객체로 인해 센싱할 수 있는 범위가 줄어들 수 있다. 예를 들어 로봇이 맵(10)상의 30으로 지시되는 영역에 배치될 경우 40으로 지시되는 영역(모퉁이 영역)에 위치하는 사람("H"로 표시)을 센싱하지 못할 수 있다. 그런데, 사람은 계속 이동하는 존재이므로, 로봇이 "H"에 근접하는 과정에서 "H"의 존재 혹은 "H"의 이동을 센싱하는데 오차가 발생하거나 혹은 "H"를 뒤늦게 인지할 수 있다. 이는 맵 상에서 로봇이 감지하지 못하는 영역이 있음을 의미한다. 이는 맵(10)상에 배치되는 기둥)(10) 또는 분리벽(60) 등에서도 동일한 영역이 발생한다. 이하, 로봇이 센싱하기 어려운 영역에서 로봇의 진행 방향으로 이동하는 객체를 돌발 장애물이라고 지시한다.
공항, 항만, 호텔, 병원, 학교 등과 같은 복잡하고 면적이 큰 공간을 주행하는 로봇은 돌발 장애물에 대비하지 않으면 큰 사고로 이어 질 수 있다. 특히 모퉁이(40)나 기둥(50) 뒤에서 나타나는 카트, 사람 등에 대비하지 못하면 충돌 사고로 이어 질 가능성이 크다.
이를 해결하기 위해서 본 명세서에서는 센서에서 센싱한 다양한 데이터들을 융합 및 분석하여 모퉁이 또는 기둥과 같은 사각 지대 영역을 인식하여 모퉁이 끝부분과 기둥 근처에서 로봇이 속도를 줄일 수 있도록 인식 알고리즘을 구현한다. 여기서 센서는 라이다(Lidar) 센서와 뎁스(Depth) 카메라와 같은 다양한 센서들을 이용할 수 있으며, 이들 센서들이 생성한 데이터를 융합한 데이터를 분석할 수 있다.
본 명세서에서의 라이다(Lidar) 센서는 특정한 높이를 센싱할 수 있으며, 뎁스(Depth)카메라는 라이다 센서 보다 인식하는 범위가 짧기 때문에 두 센서 데이터를 융합하는 실시예를 보여준다. 또한, 기존에 로봇이 가지고 있는 맵정보와 센싱된 데이터를 이용하여 로봇 주행 알고리즘에 모퉁이 또는 기둥과 같은 사각 지대를 센싱하는 알고리즘을 구현하고자 한다.
이를 위해 본 명세서에서는 도 1과 같은 이차원의 맵을 이용할 수도 있고, 3차원의 맵을 이용할 수도 있다. 3차원의 맵은 높이 정보까지 포함된 예이다. 일 실시예로 높이가 1미터인 지점에서의 고정 객체들의 위치가 도 1과 같이 구성하고, 다른 높이(예를 들어 30cm)에서의 고정 객체들의 위치를 별도로 맵으로 저장할 수 있다.
도 2는 본 발명의 일 실시예에 의한 h1, h2, h3 이라는 높이에서 센싱된 고정 객체들의 위치를 보여주는 도면이다. 10a는 h1이라는 높이에서. 10b는 h2라는 높이에서, 10c는 h3이라는 높이에서 센싱된 고정 객체들의 위치와 이들의 고정성 정보를 보여준다(h1 < h2 < h3). 세 개의 맵들(10a, 10b, 10c)에서 (x, y) 좌표 상으로 (7, 7)의 위치에 있는 기둥은 두 개의 맵들(10a, 10b) 에서만 표시되어 있다. 이는 기둥의 높이가 h3 보다는 낮음을 의미한다.
마찬가지로, (x, y) 좌표 상으로 (9, 12)에서 벽을 구성하는 구성 객체 역시 h2 높이의 맵(10c)에서는 표시되어 있지 않은 상태이다. 반면 h1 높이의 맵(10a) 및 h3 높이의 맵(10c) 에서는 고정 객체가 배치되어 있다. 이는 중간에 빈 공간이 있는 벽의 구조를 의미한다. 이 영역에서 만약 라이다 센서가 h2의 높이에 배치된 사물들을 센싱하는 경우 빈 공간 혹은 벽이 없는 공간으로 인식할 수 있다.
또한, 10b에서 (9, 12)는 빈 공간이지만 h1 및 h3의 높이에서는 모두 벽이 배치되어 있는바, (9, 12)에서 빈 공간은 h1에서 h3 사이라고 판단할 수 있다. 따라서 로봇은 (9, 12)는 사각 지대가 아닌 것으로 판단하여 주행할 수 있다. 즉, 로봇이 사각 지대를 판단하는 과정에서 사람이나 카트와 같은 물건이 나올 수 없는 공간에 대해서는 사각 지대로 판단하지 않는다.
한편, (x, y) 좌표 상으로 (8, 3) 및 (9, 3)에서 표시된 고정객체는 객체의 고정성의 값이 변경되는 것을 확인할 수 있다. 즉, 10a 및 10b의 맵에서는 7이라는 고정성을 가지지만 10c에서는 10이라는 고정성을 가지고 있다. 고정성 값이 변한다는 것은 재질이 변경되거나 혹은 해당 부분에서 고정 객체가 이동할 수 있는 경우(예를 들어 문)를 의미한다.
도 2와 같이 다양한 높이에서 센싱된 객체들의 맵을 구성할 경우 사각 지대를 판별함에 있어 정확도 또는 정밀도를 높일 수 있다.
추가적으로 도 1 및 도 2에 저장되는 고정 객체들의 정보들 중에서 객체들의 재질에 대한 정보도 추가될 수 있다. 콘크리트와 유리는 그 재질이 상이하므로 이들 재질에 대한 정보가 별도로 맵에 저장될 수 있다. 물론, 전술한 고정성 정보와 결합하여 재질에 대한 정보가 저장될 수 있다.
일 실시예로 10이라는 값은 콘크리트 재질의 고정성이 높은 벽으로 정보가 저장될 수 있다. 7이라는 값은 유리 재질의 고정성이 높고 이동은 어렵지만, 특정한 경우 이동 혹은 제거가 가능한 고정 객체라는 정보가 저장될 수 있다. 한편, 5라는 값은 플라스틱, 아크릴판 등 고정성을 가지고 있으나 쉽게 이동하거나 제거될 수 있는 고정 객체를 지시할 수 있다. 즉, 본 명세서에서 고정성 정보는 해당 고정 객체가 가지는 고정성뿐만 아니라, 그러한 고정성에 영향을 미치는 재질 정보도 함께 나타낼 수 있다.
도 3은 본 발명의 일 실시예에 의한 로봇의 구성을 보여주는 도면이다.
로봇(1000)은 로봇의 주변에 배치되는 고정 객체와 이동 객체들, 예를 들어 외부의 장애물을 센싱하는 센싱 모듈(100), 하나 혹은 다수의 맵을 저장하는 맵 저장부(200), 이동을 제어하는 이동부(300), 로봇의 소정의 기능을 수행하는 기능부(400), 다른 로봇과 사각 지대에 대한 정보 혹은 고정 객체들의 변화된 상태에 대한 정보 등을 송수신하는 통신부(500), 외부에 소정의 시각적 또는 청각적 정보를 출력하는 인터페이스부(600), 그리고 이들 각각의 구성요소들을 제어하는 제어부(900)를 포함한다.
제어부(900)는 센싱 모듈(100)이 센싱한 데이터와 맵 저장부(200)에 저장된 데이터에 기반하여 로봇의 주행 경로를 생성한다. 주행 경로의 생성 실시예에 대해서는 도 12를 참고한다. 또한 제어부(900)는 생성된 주행 경로 또는 센싱된 외부 객체의 위치 등에 따라 이동부(300)를 제어하여 로봇을 이동시킨다. 또한, 이 과정에서 제어부(900)는 로봇의 주행 경로에 배치되는 사각 지대에서 이동 객체를 식별하여 이동부(300)의 속도 또는 방향을 제어할 수 있다.
맵 저장부(200)는 로봇이 주행하는 공간의 고정 객체의 위치 및 고정 객체의 고정성을 저장할 수 있다. 고정성은 해당 객체가 움직이지 않고 고정된 정도에 따라 결정될 수 있다. 또한, 해당 객체의 재질 또한 반영될 수 있다. 왜냐하면 콘크리트 재질의 고정 객체는 쉽게 이동하지 않는 반면, 아크릴 판과 같은 재질의 고정 객체는 쉽게 이동할 수 있기 때문이다.
이동부(300)는 바퀴, 캐터필터 등과 같이 로봇(1000)을 이동시키는 수단으로, 제어부(900)의 제어에 따라 로봇(1000)을 이동시킨다. 이때, 제어부(900)는 맵 저장부(200)에 저장된 정보를 이용하여 로봇(1000)의 현재 위치를 확인하여 이동부(300)에 이동 신호를 제공할 수 있다. 또한, 센싱 모듈(100)에서 센싱된 외부의 장애물에 대한 정보를 제어부(900)가 분석하여 진행 방향이 사각 지대가 있거나 돌발 장애물이 등장할 확률이 높은지 등을 확인한 후, 이동부(300)의 이동 속도 또는 이동 방향 등을 제어할 수 있다.
기능부(400)는 로봇의 특화된 기능을 제공하는 것을 의미한다. 예를 들어, 청소 로봇인 경우 기능부(400)는 청소에 필요한 구성요소를 포함한다. 안내 로봇인 경우 기능부(400)는 안내에 필요한 구성요소를 포함한다. 기능부(400)는 로봇이 제공하는 기능에 따라 다양한 구성요소를 포함할 수 있다. 또한, 외부의 장애물의 크기나 특성에 따라 제어부(900)는 기능부(400)가 특정한 기능을 수행하도록 제어하거나, 혹은 기능부(400)가 기능을 수행하지 않도록 제어할 수 있다.
한편, 로봇이 취득한 사각 지대에 대한 정보 혹은 변경된 고정 객체에 대한 정보는 맵 저장부(200)내에 저장될 수 있으며, 저장된 내용은 통신부(500)를 통하여 다른 로봇과 정보를 교환하거나 서버 등의 시스템에 업로드할 수도 있다.
인터페이스부(600)는 인접한 영역에 사람이 존재할 경우, 사람에게 음성 정보를 출력하거나 시각적 정보를 출력할 수 있다. 인터페이스부(600)는 외부로 시각적 또는 청각적 정보를 출력한다. 로봇의 주행 경로에 사람이 존재하면 비켜달라고 하거나 로봇이 근접한다는 소리를 출력하여 사람의 이동을 유도할 수 있다. 또한, 이동을 요청하는 문자 혹은 이모티콘, 영상 등이 인터페이스부(600)에서 출력할 수 있다.
센싱 모듈(100)을 보다 상세히 살펴보면, 센싱 모듈(100)은 주요하게는 라이다 센싱부(110) 및 뎁스 카메라부(120)를 포함하며, 선택적으로 초음파 센싱부(130) 및 적외선 센싱부(140)를 포함할 수 있다. 그리고, 센싱 모듈(100)은 센싱된 값을 분석하는 센싱 데이터 분석부(150)를 포함한다.
센싱 모듈(100)을 구성하는 각각의 구성요소들은 논리적 구성요소들이므로, 이들이 반드시 물리적으로 하나의 장치 내에 구현될 필요는 없다. 예를 들어, 라이다 센싱부(110)와 뎁스 카메라부(120)는 로봇의 상면에 배치될 수 있다. 또한, 두 개의 라이다 센싱부들이 로봇의 상이한 높이에 배치될 수도 있다. 예를 들어 앞서 살펴본 h1 높이의 사물들을 센싱하도록 하나의 라이다 센싱부가 로봇의 h1 높이에 배치되고, h3 높이의 사물들을 센싱하도록 또다른 하나의 라이다 센싱부가 로봇의 h3 높이에 배치될 수 있다.
또한, 이들 각각의 센싱부들과 센싱 데이터 분석부(150)는 데이터 링크 또는 무선 신호를 통해 센싱된 정보를 송수신할 수 있다. 또한 각각의 센싱부들은 다양한 센서들의 집합일 수 있다. 예를 들어 적외선 센싱부(140)가 전면에 배치된 사물을 센싱하기 위해, 물리적으로 적외선 송신부 및 적외선 수신부가 한쌍 또는 다수 배치되는 것을 통합하여 논리적으로 적외선 센싱부(140)로 지시할 수 있다. 마찬가지로 초음파 센싱부(130) 역시 물리적으로 초음파 송신부 및 초음파 수신부가 한쌍 또는 다수 배치되는 것을 통합하여 논리적으로 초음파 센싱부(130)로 지시할 수 있다.
도 3의 로봇이 사각 지대를 판별하는 방법은 다음과 같다. 먼저 맵 상에서 모서리 혹은 기둥과 같은 고정 객체의 위치를 파악하여 이들 주변을 사각 지대로 판별하는 실시예를 포함한다. 이 경우, 맵 저장부(200)에 저장된 맵을 이용하여 사각 지대를 판별할 수 있다. 다음으로, 로봇(1000)이 주행 중에 센싱하는 데이터 중에서 전방과의 거리가 갑자기 증가하는 구간이 센싱 모듈(100)에 의해 확인할 수 있다.
예를 들어, 대면적 공간에서 운용하는 로봇이 벽을 따라 주행 중일 때, 라이다 센싱부(110)가 인식하는, 즉 라이다 센싱부(110)에 들어오는 값은 일정하다. 하지만 벽이 끝나는 모퉁이 부분 혹은 움푹 패인 부분이 전방에 존재할 때는 라이다 센서의 값이 갑자기 증가하게 된다. 이때, 라이다 센싱부(110)가 센싱한 특정 데이터(한점의 데이터)를 선택하여 뎁스 카메라(120)가 센싱을 수행할 수 있다. 즉, 라이다 센싱부(110)로부터 갑자기 멀어진 값을 수신하면 로봇(1000)은 뎁스 카메라부(120)가 해당 영역의 뎁스 정보를 취득하여 벽면이 끝나는 부분인지 아닌지 판단할 수 있고, 이에 대응하여 로봇(1000)의 이동 방향 또는 속도 등을 변경하도록 결정할 수 있다.
또다른 실시예에 의하면, 센싱 모듈(100)의 라이다 센싱부(110)가 주행 경로에 배치된 객체와의 거리를 센싱하여 센싱된 데이터의 변화가 불규칙한 경우 센싱 모듈(100)의 센싱 데이터 분석부(150)가 불규칙한 변화가 발생한 지점을 대상으로 센싱 모듈(100)의 뎁스 카메라부(120)가 뎁스 정보를 생성하도록 제어할 수 있다. 이에 대해서는 도 5 및 도 11에서 보다 상세히 살펴본다.
도 3에 제시된 로봇(1000) 및 이들의 세부적인 이동 방식을 구현할 경우, 공항과 같은 대면적의 복잡한 공간에서의 로봇이 주행하는 과정에서 돌발 장애물 대응 능력 향상을 높일 수 있다. 특히, 라이다(Lidar) 센싱부(110)가 생성하는 라이다 데이터(거리, 신호 강도 등)와 뎁스 카메라부(120)가 생성하는 뎁스 데이터를 융합 및 이들의 차이를 분석하고, 맵 저장부(200)에 저장된 맵 데이터와 합성할 경우, 사각 지대에서 로봇이 돌발 장애물과 충돌하지 않도록 주행할 수 있다.
다음으로 로봇이 사각 지대에서 발생하는 돌발 장애물에 대응하는 실시예들에 대해 살펴본다.
도 4는 본 발명의 일 실시예에 의한 로봇이 벽에서 이동 객체가 돌발할 수 있는 공간을 확인하는 과정을 보여주는 도면이다. 도 1에서 (4, 3)에서 (4, 15)로 로봇이 이동하는 것을 가정한다. 491에 도시된 바와 같이 벽(401)을 따라서 로봇(1000a)이 주행하며 로봇(1000a)은 주행 방향에 배치되는 객체들을 로봇의 센싱 모듈(100)이 센싱한다. 로봇(1000a)은 벽(401)이 배치된 것을 센싱하면서 지속하여 411 방향으로 주행한다. 예를 들어, 491에서 로봇(1000a)은 벽(401)과 일정한 거리를 유지하며 벽과의 거리는 50cm가 될 수 있다.
한편, 492와 같이 벽(401)의 끝에 다가설 경우 로봇(1000a)의 센싱 모듈(100)이 감지하는 거리가 급격히 증가한다. 도 1의 30이 지시하는 영역에 대응한다. 예를 들어 벽이 끝나는 부분에서 라이다 센싱부(110)가 센싱한 값이 불규칙하게 커질 수 있다. 이는 벽(401)이 없는 곳에서는 그 뒤의 객체를 센싱하기 때문에, 그 전에 센싱하고 있는 벽(401)과의 거리와 상이한 값이 도출될 수 있다. 예를 들어 492에서 로봇(1000a)은 벽(401)이 사라진 공간에서 그 뒤에 배치된 객체(402)를 센싱하여 거리가 3미터인 것으로 센싱할 수 있다. 이 경우, 로봇(1000a)의 제어부(900)는 벽(401)이 끝나는 지점에서 새로운 이동 객체가 발생할 가능성이 있으므로, 이동부(300)를 제어하여 주행 속도 혹은 주행 방향을 변경할 수 있다. 즉, 로봇(1000a)이 492에서 센싱한 객체(402)는 먼 거리에 있으나 벽이 끝나는 지점에 사각 지대(450)가 존재하며, 이 사각 지대(450)에서 사람이나 물체가 이동할 수 있다. 이로 인해, 이동 객체가 사각 지대(450)에서 로봇의 주행 경로로 갑자기 이동할 수 있으며, 로봇(1000a)은 492와 같은 상황에서 돌발할 수 있는 장애물을 회피하거나 충돌을 방지하는 동작을 수행할 수 있다. 일 실시예로 주행 경로를 변경하거나 주행 속도를 낮추거나 또는 로봇이 이동 중이라는 신호음을 발생시키는 등의 기능을 수행할 수 있다.
도 4와 같이 로봇이 벽 또는 기둥 뒤에 있는 사각 지대에서 돌발할 수 있는 장애물과의 충돌을 회피하기 위해 라이다 센싱부(110)가 센싱하는 값(사물과의 거리)이 갑자기 증가할 경우 센싱한 영역에서 특정한 점 혹은 특정한 영역을 선택하여 뎁스 카메라부(120)가 해당 영역의 뎁스 데이터를 생성한다. 그 결과 벽과 같은 객체가 더 이상 연속되지 않고 끝나는 지점이라는 부분이 확인될 경우 벽면이 끝나는 지점까지는 감속 운행을 하여 장애물이 없는 것을 확인한 후 정속 주행을 할 수 있다. 이는 기둥에도 동일하게 적용할 수 있다. 마찬가지로 라이다 센싱부(110)가 센싱하는 거리 정보가 급격하게 변화하는 경우 뎁스 카메라부(120)를 이용하여 전방에 배치된 사물의 뎁스를 산출하여 기둥인지를 확인한 후 감속 후 정속 주행할 수 있다.
도 5는 본 발명의 일 실시예에 의한 뎁스 카메라부가 사물의 뎁스를 산출한 데이터가 반영된 이미지이다.
도 4에서 492에 나타난 상황과 같이 로봇(1000a)의 좌측에 배치된 벽이 끝나는 지점에서 라이다 센싱부(110)가 센싱한 거리 정보가 급격히 증가할 경우, 해당 지점에 대해 뎁스 카메라부(120)가 전방의 사물들에 대한 뎁스를 산출한 이미지가 460이다. 벽(401) 부분에 대한 뎁스 데이터와 뒤쪽의 공간들에 대한 뎁스 데이터가 상이함을 확인할 수 있다. 또한 뒤쪽의 공간들에 배치된 사물들로부터의 뎁스 데이터는 이들 사물들이 멀리 떨어져 있음을 보여준다. 따라서 로봇(1000a)은 벽(401)이 종료하는 지점에 근접하면서 이동 객체가 돌발할 경우 충돌을 회피하도록 이동할 수 있다.
이를 위해 로봇(1000a)이 연속하지 않는 공간을 보다 정확하게 식별하기 위해, 센싱 모듈(100)을 구성하는 다양한 센서들의 얼라인(Align)을 정렬하여 라이다 센싱부(110)가 센싱한 데이터 중 특정한 데이터와 뎁스 카메라부(120)가 센싱한 데이터를 매칭시키는 작업을 전술한 센싱 데이터 분석부(150)가 수행하거나 혹은 제어부(900)가 수행할 수 있다. 이는 로봇(1000a)이 벽면이 끝나서 장애물이 나타날 수 있는 부분과의 거리에 따라서 달라질 수 있다. 또한, 제어부(900)는 센싱 모듈(100)이 센싱한 정보와 맵 저장부(200)에 저장된 맵 정보를 융합하여 더욱 정확하게 돌발 장애물 발생 우려 구간을 판별할 수 있다.
예를 들어, 로봇은 1차적으로 도 1 및 도 2에 도시된 맵을 이용하여 주행 경로를 구성할 수 있다. 그리고 주행 과정에서 지속적으로 로봇은 월 팔로잉(Wall-following)하는 벽면과 맵을 비교하여 로봇의 위치를 확인하거나 혹은 갱신할 수 있다. 즉, 로봇은 라이다 센싱부(110)와 뎁스 카메라부(120)를 통하여 벽면을 인식하여 센싱한 벽면과의 거리 정보를 활용하여 맵 저장부(200)에 저장된 맵과 비교하여 현재 로봇 위치의 오차가 발생하였다면 현재 로봇위치를 갱신하여 위치를 바로잡을 수 있다.
이후, 맵 상에서 벽면이 끝나는 지점을 미리 산출하여 해당 영역에 근접할 경우 벽면이 끝나는지를 다양한 센싱부들을 이용하여 확인하고 사각 지대에 대응하는 동작을 수행할 수 있다. 특히, 본 명세서의 일 실시예에 의한 라이다 센싱부는 장애물의 재질에 따라 반환(return)되는 데이터의 신호 강도(Intensity)정보를 다르게 제공할 수 있다. 따라서, 라이다 센싱부(110)로부터 로봇이 수신한 장애물의 신호 강도 정보를 분석하여 벽면/유리 등의 재질을 판단하여 주행의 알고리즘을 변경하여 주의 구간 등을 지정한다. 이러한 정보는 맵의 고정성 정보 또는 별도의 재질 정보로 저장될 수 있다.
전술한 로봇을 구현할 경우, 대면적에서 로봇이 주행하는 과정에서 돌발 장애물의 발생 확률을 미리 산출하거나, 이에 대응하여 이동 속도와 방향을 조절하여 돌발 장애물 대응 능력을 향상시켜 안전한 로봇의 주행을 가능하게 하며, 또한 이를 위한 로봇의 주행 알고리즘을 개발할 수 있다. 특히, 특정한 장애물 구간에서의 로봇 주행 시나리오를 만들어 로봇 주행 방법을 다양화할 수 있다. 예를 들어 사각 지대와 무관하게 이동하는 구간에서는 로봇이 돌발 장애물에 대한 대응 시나리오를 수행하지 않고, 사각 지대에 인접하여서는 돌발 장애물에 대한 대응 시나리오에 따라 주행 및 기능을 수행할 수 있다.
도 6은 본 발명의 일 실시예에 의한 로봇이 이동하는 과정에서 사각 지대를 식별하거나 센싱하여 이에 대응하는 동작을 수행하는 과정을 보여주는 도면이다.
먼저 로봇의 이동부(300)는 로봇을 주행시키며, 제어부(900)는 맵 저장부(200) 및 센싱 모듈(100)을 이용하여 로봇을 기둥 또는 벽면 근처로 이동할 수 있다(S610). 이 과정에서 센싱 모듈(100)의 라이다 센싱부(110)를 이용하여 수신한 라이다 센싱 데이터를 이용하여 벽면이나 기둥이 끝나는 영역인지를 판단한다(S620). 이는 라이다 센싱부(110)가 센싱하는 데이터가 갑자기 증가하거나 혹은 센싱되는 데이터의 강도가 갑자기 변하는 것을 토대로 제어부(900)는 불연속적인 공간의 변화가 발생했음을 확인할 수 있다. 또는, 제어부(900)는 맵 저장부(200)에 저장된 맵 정보를 이용하여 사각 지대를 확인하여 해당 지대 부근에서 주행할 경우 라이다 센싱부(110)의 센싱 주기 혹은 간격을 높이거나 다른 종류의 센싱 데이터를 이용하여 정확도를 높일 수 있다.
만약 벽면이나 기둥이 끝나는 영역이 아닌 경우 벽이나 기둥을 따라 주행하며 특정한 기능, 예를 들어 청소 기능을 수행할 수 있다(S625). 한편, 벽면이나 기둥이 끝나는 영역, 예를 들어 사각 지대로 판단된 경우, 뎁스 센싱부(120)를 이용하여 해당 영역에서 이동하는 객체를 판단할 수 있다(S630). 보다 정확하게 해당 영역에서 사람이 존재하는지를 확인할 수 있다. 사람이 아닌 경우, 장애물 회피 동작 시나리오로 회피하여 이동한다(S660). 한편, 사람으로 판단된 경우, 인터페이스부(600)를 통하여 대인 동작을 수행할 수 있다. 예를 들어, 음성 발화 시나리오(S640)에 따라, 사람에게 저장된 음성을 이용하여 이동을 요청하거나 혹은 로봇(1000)이 이동 중이니 주의할 것 등을 요청할 수 있다. 사람이 비켰는지를 확인하여(S650), 사람이 해당 위치에서 이동한 경우, 예정된 경로로 주행하여 청소, 보안, 안내 등과 같은 소정의 기능을 수행할 수 있다(S655).
또한, 기능부(400)가 대인 동작을 수행할 수 있다. 예를 들어, 청소 기능에 있어서는 사람이 주변에 있으므로 먼지를 더 많이 흡입하는 청소 기능을 수행할 수 있다. 안내 로봇은 안내 기능을 시작할 수 있다. 즉, 사각 지대에서 사람이 등장하거나 사람을 감지한 경우 로봇은 주어진 기능 중에서 대인 동작으로 설정된 특정한 동작을 수행할 수 있다. 또한, 사람들이 로봇을 피하도록 방출하는 사운드의 볼륨을 높일 수도 있다. 뿐만 아니라, 청소 로봇인 경우 사각 지대에는 청소 솔이 센서보다 먼저 진입하지 않도록 청소 솔의 확장 범위를 좁히거나 청소 솔이 로봇의 진입 방향을 기준으로 전면에 돌출되지 않도록 로봇이 회전할 수 있다.
전술한 바와 같이, 로봇은 센싱 모듈에서 센싱되는 값과 맵을 이용하여 사각 지대를 확인하고 여기에서 이동 객체가 사람인 경우 대인동작을 수행할 수 있다. 특히 S620에서 라이다 센서로 벽면이나 기둥이 끝나는 사각 지대를 판단하기 위해서 맵 정보를 이용할 수 있다.
도 7은 본 발명의 일 실시예에 의한 로봇이 주행 경로에 배치되는 사각 지대를 판별하는 과정을 보여주는 도면이다.
로봇의 센싱 모듈(100)이 로봇의 주행 경로에 배치된 사각 지대를 센싱한다(S710). 앞서 도 4에서 라이다 센싱부(110) 및 뎁스 센싱부(120)를 이용하여 센싱하는 과정을 S710에 적용할 수 있다. 또한, 사각 지대를 센싱하기 위해 맵 저장부(200)에 저장된 맵을 이용할 수 있다.
이후, 로봇의 제어부(S720)는 센싱된 사각 지대에서 이동 객체가 등장하는 확률을 산출한다. 이는 센싱된 사각 지대의 구조 상 사람과 같은 이동 객체가 등장할 확률을 계산하거나, 혹은 사각 지대에 근접하여 센싱되는 데이터에서 사람과 같이 이동 객체가 센싱되는지를 센싱 모듈(100)을 통하여 제어부(900)가 확인할 수 있다. 그리고 센싱된 값에 따라 제어부(900)는 확률을 산출하고, 산출된 확률에 따라 제어부(900)는 로봇의 이동부(300)의 속도 또는 방향을 제어한다(S730). 또한, 이동 객체가 사람으로 판별될 경우, 인터페이스부(600)에서 시각적 또는 청각적인 데이터를 출력할 수 있다.
도 8은 본 발명의 일 실시예에 의한 센싱 모듈이 사각 지대를 센싱하는 도면이다. 사각 지대는 벽면의 끝 지점 혹은 기둥과 같은 지점에서 센싱 모듈(100)이 센싱한 데이터가 불규칙한 경우를 의미한다. 도 8은 도 4의 491 및 492와 같은 상황에서 센싱한 로봇(1000a)의 라이다 센싱부(110)의 센싱 데이터를 나타낸다. 491에서 센싱되는 실시예를 보여주는 891의 센싱 데이터들을 보다 상세히 살펴본다.
SensingTime은 센싱된 시간(시:분:초)을, SensingDirection은 센싱된 방향(전방/후방, 좌측/우측, 각도 등), 그리고 Data는 센싱된 거리 데이터를, Intensity는 센싱된 신호의 세기를 의미한다. 센싱 모듈에 따라 센싱되는 값이 다양하게 산출될 수 있으며, 도 8은 센싱된 값을 소정의 정규화 과정을 거쳐 변환된 값을 보여준다.
891이 지시하는 바와 같이 라이다 센싱부(110)는 월 팔로잉을 하는 과정에서 5초 간격으로 전방 좌측의 객체를 센싱한다. 센싱 결과 신호의 강도(intensity)가 10으로 0.3 미터 거리에 객체가 배치되어 있다. 이는 동질한 사물이 배치됨을 의미하며, 제어부(900) 및 맵 저장부(200)에 저장된 맵을 이용하여 로봇의 좌측에는 벽이 배치되는 것을 확인할 수 있다.
한편, 492와 같은 상황에서 라이다 센싱부(110)는 892에서 지시되는 데이터들을 센싱한다. 즉, 전방 좌측으로 갑자기 센싱된 데이터의 크기가 2미터로 증가한다. 그리고 신호의 강도(Intensity)가 8로 변화가 발생하였다. 즉, 센싱 모듈의 라이다 센싱부(110)가 센싱부는 주행 경로에 배치된 객체와의 거리, 그리고 객체로부터 반사된 신호의 강도 등을 센싱하여 센싱된 데이터의 변화가 불규칙한 것으로 판단하는 시점(10시 5분 25초)에 센싱 모듈(100)은 센싱 간격(센싱하는 주기 혹은 센싱 각도 등)을 보다 조밀하게 조정하여 센싱의 정확도를 높일 수 있다. 그리고, 이 시점에서 맵 저장부(200)에 저장된 맵에 기반하여 사각 지대와 이동 객체의 등장 확률을 제어부(900)가 산출할 수 있다.
또한, 본 발명의 일 실시예로, 센싱 모듈의 센싱 데이터 분석부(150)가 불규칙한 변화가 발생한 지점(전방 좌측 30도 지점)을 대상으로 뎁스 카메라부(120)가 뎁스 정보를 생성하도록 제어할 수 있다. 그 결과 뎁스 카메라부(120)가 도 5에서 살펴본 바와 같은 뎁스 정보를 산출하면 이를 기반으로 사각 지대임을 확인할 수 있다.
그리고 1초 단위로 센싱된 값을 분석하며 전방 좌측 30도에 배치된 객체와의 거리를 확인한다. 이 과정에서 로봇은 이동부(300)의 속도 또는 방향을 제어할 수 있다. 그리고 "10시 5분 27초"에 라이다 센싱부(110)가 센싱한 정보들은 다시 외부에서 센싱된 객체와의 거리가 0.3미터이며 신호 강도가 5로 변경됨을 보여준다. 이는 전혀 다른 재질의 객체가 외부에 배치되어 있으므로, 제어부(900)는 신호의 강도를 통해 이동 객체일 확률을 산출할 수 있다. 그리고 이동부(300)의 속도를 제어할 수 있다.
도 9는 본 발명의 일 실시예에 의한 사각 지대를 맵을 기준으로 식별하는 도면이다.
앞서, 도 1 및 도 2에서 살펴본 바와 같이, 맵에는 고정 객체의 위치 및 고정성에 대한 정보가 저장된다. 도 9의 맵에서 930a와 같이 로봇이 위치하는 상황에서 로봇은 맵 저장부(200)에 저장된 맵에 현재 로봇의 위치를 대응시킨다. 셀의 크기는 0.5m x 0.5 m를 가정한다.
또한, 맵 정보를 통해 로봇의 제어부(900)는 주행 경로를 생성할 수 있다. 로봇의 기능이 벽에 근접하여 수행하는 기능이라면 제어부(900)는 벽에 일정 정도까지 가까이 이동하여 월팔로잉(Wall following) 동작을 수행하는 주행 경로를 생성할 수 있다.
첫번째 맵(991)을 참조한다. 로봇의 제어부(900)는 센싱 모듈(100)을 통해 전방의 공간이 불규칙함을 알리는 센싱 데이터를 취득한다. 라이다 센싱부(110) 및 뎁스 카메라부(120)를 이용하여 전방에 벽이 끝나는 지점(910a)이 있음을 제어부(900)가 확인한다. 그런데 첫번째 맵(991)을 참고하면 벽이 끝나는 지점에서 새로운 벽들이 (2,16)에서 (2, 19)까지 이어져 있으며, 셀의 크기가 0.5 미터로 사각 지대의 깊이 또한 0.5미터에 해당한다. 이는 사람이 이동하여 나올 수 있는 깊이의 공간이 아니므로, 사람과 같은 이동 객체가 등장할 확률은 높지 않다. 이 경우 910a를 사각 지대로 식별하지 않을 수 있다. 혹은 사각 지대로 식별하면서 도 7의 S720의 실시예와 같이 이동 객체가 등장할 확률이 낮은 것으로 산출할 수 있다.
정리하면, 로봇은 주행 경로 상에서 사각 지대인 지점을 판별함에 있어서, 사람이 갑자기 등장하기 어려운 공간에 대해서는 사각 지대로 식별하지 않거나, 혹은 해당 공간에 대해서는 이동 객체가 등장할 확률이 낮은 것으로 설정하여 주행 경로를 설정하거나 주행 속도를 유지할 수 있다.
두번째 맵(991)을 참조한다. 로봇의 제어부(900)는 센싱 모듈(100)을 통해 전방의 공간이 불규칙함을 알리는 센싱 데이터를 취득한다. 라이다 센싱부(110) 및 뎁스 카메라부(120)를 이용하여 전방에 벽이 끝나는 지점(910b)이 있음을 제어부(900)가 확인한다. 그런데 맵을 참고하면 벽이 끝나는 지점에서 새로운 벽들이 (0,16)에서 (0, 17)까지 짧게 이어져 있으며, 셀의 크기가 0.5 미터이며 910b가 지시하는 지점의 깊이는 1.5미터로, 이는 사람이 이동하여 나올 수 있는 깊이의 공간이다. 또한, 새로운 벽의 길이가 짧으므로(1미터) 사람과 같은 이동 객체가 등장할 확률이 높다. 이 경우 910b를 사각 지대로 식별할 수 있다. 혹은 사각 지대로 식별하는 것과 함께, 도 7의 S720에서 이동 객체가 등장할 확률이 높은 것으로 산출할 수 있다.
정리하면, 제어부(900)는 로봇의 주행 경로를 맵 저장부(200)의 맵을 기반으로 생성하고 제어부(900)는 맵에서 주행 경로에 배치되는 사각 지대를 식별할 수 있다. 또한, 사각 지대를 식별하는 것과 함께 이동 객체가 돌발 장애물로 등장할 확률을 산출할 수 있다. 예를 들어 사각 지대의 깊이와 폭에 대한 정보, 또는 도 2에서와 같이 사각 지대의 높이 정보까지 고려하여 사각 지대가 사람이 갑자기 나올 수 있는 공간인지 여부를 확인하여 이동 객체의 등장 확률을 산출하고 이에 따라 로봇의 이동 속도 또는 방향을 제어할 수 있다.
도 9의 991에서 910a 영역 중에서 (3, 16)의 지점에 사람이 서있을 경우, 라이다 센싱부(110)가 센싱한 신호에서 거리에는 변화가 없으나 센싱된 신호의 강도가 달라질 수 있다. 예를 들어, (3, 4) 내지 (3, 15)의 벽에서 반사되는 신호의 강도와 (3, 16)에 서 있는 사람으로부터 반사되는 신호의 강도가 달라질 수 있다. 신호의 강도가 달라질 경우 제어부(900)는 맵 저장부의 맵과 비교하여 해당 위치에서 벽이 아닌 사람이 벽에 가까이 서 있을 가능성이 있으므로, 이동 객체의 등장 확률 또는 사람으로 판단할 확률이 높은 것으로 설정할 수 있다. 이는 벽에 바짝 붙어선 사람을 사람으로 인식하여 이동 속도를 줄이는 것을 포함한다.
즉, 로봇의 센싱 모듈(100)은 사각 지대의 객체를 센싱하여 센싱된 데이터를 센싱 데이터 분석부(150)가 분석하여 고정 객체인지 이동 객체인지, 또는 사람인지 아닌지를 판별할 수 있는 데이터를 제어부(900)에게 제공한다. 이에 기반하여 제어부(900)는 센싱한 객체가 고정 객체인지 이동 객체인지를 판단할 수 있으며, 이에 따라 주행 경로를 변경하거나 혹은 회피 동작을 수행하거나 대인 동작을 수행할 수 있다.
도 10은 본 발명의 일 실시예에 의한 로봇이 사각 지대에 근접하여 이동 객체를 센싱하는 과정을 보여주는 도면이다.
로봇의 이동부(300)는 로봇의 제어부(900)가 제어하는 방향 또는 속도에 따라 로봇을 사각 지대로 이동시킨다(S740). 이후 센싱 모듈은 사각 지대에서 이동 객체를 센싱하여 이동 객체의 특성 혹은 움직임 등에 따라 주행 경로를 변경하거나 회피하거나 혹은 인터페이스부(600)를 통하여 시각적 정보 또는 청각적 정보를 출력할 수 있다. 보다 상세히 살펴본다.
센싱 모듈(100)의 뎁스 카메라부(120) 또는 적외선 센싱부(140) 중 어느 하나 이상이 이동 객체를 센싱한다(S750). 뎁스 카메라부(120)에서 전방에 배치된 뎁스 영상을 통해 사람에 대응하는 형상의 이동 객체를 확인할 수 있다. 또한, 적외선 센싱부(140)에서 전방의 이동 객체의 온도를 센싱할 수 있다.
그리고 센싱한 결과 센싱 데이터 분석부(150)는 이동 객체가 사람일 확률이 미리 설정된 기준 보다 높은지를 확인한다(S760). 이는 두 개의 센싱부들을 조합하여 이동 객체가 사람에 대응하는지 여부를 확인할 수 있다. 예를 들어, 사람의 형상에 대한 다양한 데이터 값이 저장된 상태에서 뎁스 카메라부(120)가 산출하는 형상과 저장된 데이터 값을 비교하여 일치도가 일정 수준 이상, 예를 들어 센싱 데이터 분석부(150)는 80% 이상 일치할 경우 사람으로 판단한다. 또한 적외선 센싱부(140)에서 센싱한 온도의 범위가 사람의 체온을 센싱하는 경우와 오차 범위 내에서 일치하는지 여부에 따라 주행 경로의 이동 객체가 존재하는지, 혹은 이동 객체가 사람인지를 확인할 수 있다.
만약 사람일 확률이 높은 경우, 센싱 데이터 분석부(150)는 이러한 정보를 제어부(900)에게 제공하고, 제어부(900)는 로봇의 인터페이스부(600)를 제어하고, 제어에 따라 인터페이스부(600)는 이동 객체에게 미리 설정된 청각적 정보 또는 시각적 정보를 출력한다(S770). 그 결과 이동 객체와 로봇 사이의 거리가 멀어졌는지를 확인한다(S780).
확인 결과, 이동 객체가 이동하여 로봇과 멀어지는 경우 제어부(900)는 이동부(300)를 제어하여 일반 주행 모드로 로봇을 주행시킨다(S790). 이동 객체와 로봇 사이의 거리가 멀어지면 지속하여 해당 이동 객체에 대해 S750과 같이 센싱을 수행하며 전술한 과정(S760 내지 S770) 과정을 수행할 수 있다. 한편, S760에서 센싱한 이동 객체가 사람일 확률이 낮으면 제어부(900)는 이동부(300)를 제어하여 이동 객체를 회피하며 주행한다(S765).
도 11은 본 발명의 다른 실시예에 의한 로봇이 사각 지대를 식별하는 과정을 보여주는 도면이다.
로봇의 제어부(900)가 맵 저장부(200)에 저장된 맵에서 주행 경로에 배치되는 사각 지대를 식별한다(S1110). 사각 지대의 식별은 도 9에서 살펴본 바와 같이 맵 상에서 불연속적인 공간을 확인하여 사각 지대를 식별할 수 있다. 이후 로봇이 식별된 사각 지대에 근접하는 경우 로봇의 센싱 모듈(100)이 사각 지대의 객체를 센싱한다(S1120). 사각 지대로의 근접은 맵을 기준으로 주행 경로를 생성하고 해당 경로로 이동하는 과정에서 로봇의 제어부(900)가 지속하여 현재 위치를 업데이트하여 사각 지대에 일정한 거리를 두고 접근했는지를 확인한다. 한편, 사각 지대의 객체를 센싱하기 위해 라이다 센싱부(110)와 뎁스 카메라부(120)를 이용하여 객체를 센싱할 수 있다.
사각 지대의 센싱 과정을 보다 상세히 살펴보면, 센싱 모듈의 라이다 센싱부는 주행 경로에 배치된 객체와의 거리를 센싱한다(S1130). 센싱한 결과, 센싱된 데이터의 변화가 불규칙하거나 또는 사각 지대의 빈 공간에 객체가 센싱되는지 확인한다(S1140). 그렇지 않은 경우, 일반 주행 모드로 로봇이 주행하며(S1145) 지속적으로 사각 지대의 객체를 센싱한다(S1120).
한편, S1140에서 센싱된 데이터의 변화가 불규칙하거나 또는 사각 지대의 빈 공간에 객체가 센싱되는 경우, 센싱 모듈의 센싱 데이터 분석부가 불규칙한 변화가 발생하거나 객체가 센싱된 지점을 대상으로 센싱 모듈의 뎁스 카메라부가 뎁스 정보를 생성하도록 제어한다(S1150). 뎁스 정보에 기반하여, 로봇의 제어부(900) 및 센싱 모듈(100)는 센싱한 객체가 고정 객체인지 이동 객체인지를 판단하여 이동 객체인 경우 제어부(900)는 로봇의 이동부의 속도 또는 방향을 제어한다(S1160).
이후, 로봇의 이동부(300)는 로봇을 사각 지대 주행 모드로 이동한다(S1170). 사각 지대 주행 모드는 후술한다. 그리고 사각 지대 주행 모드를 유지하며 센싱 모듈이 사각 지대에서 이동 객체를 센싱한다(S1180). 이동 객체의 센싱은 도 10의 S740 내지 S790 단계를 일 실시예로 한다.
도 12는 본 발명의 일 실시예에 의한 사각 지대 주행 모드로 로봇이 주행 경로를 구성하는 도면이다. 로봇이 월 팔로잉을 일반 주행 모드로 할 경우, 로봇은 벽이 끝나는 지점 부근에서의 주행 경로를 월 팔로잉이 아닌 방식으로 경로를 구성할 수 있다. 예를 들어, 도 12에서 로봇이 (0, 1)에서 출발하여 (0, 13)까지 월 팔로잉으로 이동하는 주행 경로 중에서 일부 영역에서는 고정 객체와의 거리를 멀리하는 방식으로 경로를 구성할 수 있다.
실선은 로봇이 일반 주행 모드로 이동하는 경로를 나타내고, 점선은 로봇이 사각 지대 주행 모드로 이동하는 경로를 나타낸다.
1201은 모든 경로를 월 팔로잉으로 주행할 경우의 주행 경로를 보여주는 도면이다. 벽을 따라 그대로 주행하므로, 사각 지대에 이동 객체가 존재할 경우 충돌 가능성이 있다. 특히 이동 객체가 로봇의 주행 경로를 향하여 이동하는 경우, 1201의 (4, 2) 지점 및 (2, 12) 지점에서 로봇이 이동 객체를 감지하지 못하고 충돌하는 위험이 발생한다.
마찬가지로, 고정 객체가 이어져 있지만. (3, 6)에는 고정성이 3의 값을 가져 주변의 객체들의 고정성의 값인 10 보다 낮은 값을 가지는 고정 객체가 배치되어 있다. 일 실시예로 문, 유리벽, 등이 될 수 있다. 이러한 공간에서도 사람이 갑자기 나올 수 있는데, 1201과 같이 일직선으로 주행하는 경우에는 문을 통해 나오는 사람과 충돌할 수 있다.
반면, 1202에서는 로봇이 사각 지대에 근접하여서는 월 팔로잉과 같은 일반 주행 모드가 아닌 사각 지대 주행 모드로 이동하도록 경로를 설정할 수 있다. 도 12에서 로봇이 (3, 1)의 위치에서 벽에서 멀어지는 방향으로 이동하여 사각 지대에 이동 객체를 센싱할 수 있도록 한다. 즉, (3, 1)의 위치에서는 (4, 3)에 이동 객체를 센싱할 수 없다. 그러나 로봇이 (3, 1) -> (3, 0) -> (4, 0)으로 이동하면 (4, 3)에 이동 객체를 센싱할 수 있다. 따라서, 이동 객체가 센싱되면 회피 동작으로 주행할 수 있다. 이동 객체가 사람인 것으로 센싱되면, 인터페이스부(600)를 통하여 시각적/청각적 정보를 출력하여 사람에게 이동을 요청할 수 있다. 사람과의 거리가 멀어질 경우 월 팔로잉과 같은 일반 주행 모드로 주행할 수 있다.
마찬가지로 (3, 6)에 배치된 문(고정성 값이 3인 고정 객체)을 회피하기 위해 로봇은 (4, 5) -> (5, 5) -> (4, 5)와 같이 이동하여 문에서 사람이 나오는 경우 회피할 수 있도록 주행 경로를 설정할 수 있다.
로봇은 (4, 11)의 위치에서도 (3, 12)에 위치하는 이동 객체를 센싱할 수 없으므로, 로봇이 (4, 11) -> (5, 11) -> (4, 12)으로 이동하면 (3, 12)에 이동 객체를 센싱할 수 있으며, 이동 객체의 존재 유무, 또는 이동 객체가 사람인지 아닌지에 따라 회피하여 주행하거나 대인 동작을 수행할 수 있다.
도 13은 본 발명의 일 실시예에 의한 다수의 로봇이 돌발 장애물에 대한 정보를 교환하는 과정을 보여주는 도면이다.
공항, 터미널, 병원 등에는 다수의 로봇들이 소정의 기능을 수행할 수 있다. 또한, 다수의 로봇들이 상이한 기능들을 수행할 수 있고 동일한 기능을 수행할 수도 있다. 여기에서 로봇들의 위치가 달라질 경우 제1로봇에게 사각 지대인 영역이 제2로봇에게는 사각 지대가 아닌 상황이 발생할 수 있다. 예를 들어, 동일한 기둥을 앞서 지나간 제1로봇과 해당 기둥을 향해 이동하는 제2로봇의 경우, 제2로봇에게 사각 지대인 영역은 제1로봇이 센싱할 수 있는 영역이다.
도 13은 이러한 상황에서 둘 이상의 로봇이 특정 사각 지대에 대한 이동 객체의 정보를 교환하는 과정을 보여준다. 제1로봇(1000b)이 (3, 7)에 위치한 상태이다. 제2로봇(1000c)은 (2, 1)에 위치한 상태이다. 제2로봇(1000c)의 주행 경로는 (2, 2)에서 (3, 4)의 방향으로 이동하도록 배치되며, 고정성의 값이 10인 기둥(70)을 회피하여 진행하도록 설정되어 있다. 그런데, 제2로봇(1000c)의 주행 경로 과정에서 기둥(70) 뒤에서 돌발하여 이동하는 이동객체들을 센싱할 수 없는 위치이다.
따라서, 제2로봇(1000c)은 기둥(70)의 뒤쪽 사각 지대를 센싱할 수 있는 로봇이 존재하는지 통신부(500)를 이용하여 메시지를 전송한다. 메시지를 수신한 제1로봇(1000b)은 자신의 위치와 메시지에 포함된 사각 지대에 대한 위치 정보를 비교하여 기둥(70)의 뒤쪽 사각 지대를 센싱하고 센싱한 데이터를 전송한다. 일 실시예로 제1로봇(1000b)의 라이다 센싱부(110)가 제1로봇(1000b)의 위치 및 센싱한 장애물의 거리 및 신호 강도를 제2로봇(1000c)에게 전송할 수 있다. 또한, 다른 실시예로 제1로봇(1000b)의 뎁스 카메라부(120)가 제1로봇(1000b)의 위치 및 해당 위치에서 취득한 뎁스 영상을 제2로봇(1000c)에게 전송할 수 있다.
또다른 실시예로 제1로봇(1000b)의 위치 및 초음파 센싱부(130) 및 적외선 센싱부(140)가 취득한 외부의 장애물의 위치 또는 거리 정보를 제2로봇(1000c)에게 전송할 수 있다. 각각의 센싱부들은 센싱의 정확도와 방향, 또는 높이 등에서 다양한 데이터를 산출할 수 있다. 따라서, 이러한 특징들을 조합하여 제1로봇(1000b)은 기둥(70)의 뒤쪽 사각 지대의 다양한 객체들을 센싱한 결과를 제2로봇(1000c)에게 전송할 수 있다. 전송 방식은 제1로봇(1000b) 및 제2로봇(1000c) 사이에서 직접 통신하는 방식과 중간에 별도의 서버를 통하여 통신하는 방식이 있다.
도 14는 본 발명의 일 실시예에 의한 다수의 로봇들 간에 사각 지대의 이동 객체를 센싱하는 과정을 보여주는 도면이다. 도 14의 실시예는 제1로봇(1000b) 및 제2로봇(1000c), 그리고 선택적으로 서버(2000)를 포함한다.
제2로봇(1000c)의 제어부(900)가 주행 경로 상에 배치되는 사각 지대를 맵 저장부(200)를 이용하여 식별한다(S1410). 그리고, 제2로봇(1000c)의 통신부(500)가 사각 지대에 대한 위치 정보를 전송한다(S1420). 이는 주변에 배치된 로봇들에게 브로드캐스팅 방식으로 전송하는 제1방식과 서버(2000)에게 전송된 후 서버(2000)가 주변의 로봇들에게 전송하는 제2방식 모두 가능하다.
사각 지대의 위치 정보를 수신한 제1로봇(1000b)은 해당 사각 지대의 객체들에 대한 센싱을 진행한다. 앞서 살펴본 바와 같이 다양한 센싱부들을 이용하여 센싱할 수 있다(S1430). 이 과정에서 고정 객체는 제외시킬 수 있다.
그리고 제1로봇은 센싱된 객체 정보와 제1로봇(1000b)의 위치 정보를 전송한다(S1440). 즉, 제2로봇의 통신부(500)는 사각 지대에서 센싱한 객체 정보 및 제1로봇의 위치 정보를 수신한다. 여기서도 마찬가지로 제2로봇의 통신부(500)는 제1로봇(1000b)으로부터 직접 수신하는 제1방식과 제1로봇(1000b)이 서버(2000)에게 전송한 후, 서버(2000)가 제2로봇(1000c)에게 전송하는 제2방식 모두 가능하다. 여기서 제1로봇의 위치 정보는 선택적으로 전송될 수 있다.
이후 제2로봇(1000c)의 제어부(900)는 제1로봇이 센싱한 객체가 이동 객체인지를 맵 저장부(200)와 비교하여 판단하고, 이동 객체가 등장하는 확률을 산출한다(S1450). 산출한 결과에 따라 제2로봇(1000c)은 주행 경로를 수정하거나 혹은 주행 속도와 방향을 변경할 수 있다.
로봇(1000)은 다양한 종류의 센서들을 활용할 수 있으며, 각각의 센서들이 가지는 장점과 단점을 결합하여 보다 정확하게 이동 객체 특히 돌발하여 이동하는 객체들을 정확하게 센싱할 수 있다. 일 실시예로 초음파 센싱부(130)는 어느 정도의 지향각은 있지만 정확이 로봇으로부터 어느 위치에 장애물이 있는지 그리고 어디서 장애물이 끝나고 시작하는지 알 수 없기 때문에 기둥 및 모퉁이를 인식할 수 없다. 따라서, 초음파 센싱부(130)는 특정한 범위 내에 이동 객체가 존재하는지에 대한 정보를 제공할 수 있다.
한편 적외선 센싱부(140)는 한 점만 센싱이 가능하므로, 맵이나 다른 센싱부들이 식별한 기둥과 모퉁이를 타겟으로 하여 정확하게 사람이 돌발하여 등장하는지 여부를 센싱할 수 있다. 예를 들어, 기둥으로 식별된 지점에서 기둥이 끝나는 지점을 타겟으로 하여 적외선 센싱부(140)에서 사람이 센싱되는지를 센싱할 수 있다. 적외선 센싱부(140)가 로봇에 다수 배치될 경우, 센싱의 범위를 넓히기 위해 로봇의 전면부에 다수 배치할 수 있다.
또한 로봇(1000)은 라이다 센싱부(110)를 적용할 경우, 특정 높이를 기준으로 거의 전방위 적으로 센싱이 가능하고 센싱 범위도 센서의 가격에 따라 30m까지 가능하다. 그러나 높이에 따라 센싱하지 못하는 장애물이 있으므로, 이에 본 발명의 실시예에서는 도 5 및 도 6 등에서 살펴본 바와 같이 뎁스 카메라부(120)를 이용하여 라이다 센싱부(110)가 센싱하지 못하는 다양한 높이에 배치되는 장애물을 확인할 수 있다.
도 15는 본 발명의 일 실시예에 의한 로봇이 사각 지대에 근접하여 자신의 위치 정보를 수정하는 과정을 보여주는 도면이다. 로봇(1000d)의 위치는 (2, 1)이지만 로봇의 제어부(900) 맵 상에서 (1, 1)(1001d)에 위치한 것으로 식별한 상태이다. 이러한 상태에서 로봇의 센싱모듈(100)이 전방의 객체(71)를 센싱하는데, 이는 (1, 1)의 위치에서는 센싱할 수 없다. 따라서, 로봇의 제어부(900)는 센싱된 전방의 객체(71)가 이동 객체인지 아니면 고정 객체인지를 판단한다. 라이다 센싱부(110)가 센싱한 거리 및 신호의 강도 등을 비교하여 고정 객체인지 혹은 이동 객체인지를 확인할 수 있다. 또는 뎁스 카메라부(120)를 이용하여 취득한 뎁스 영상을 이용하여 기둥인지 아니면 이동 객체인지를 식별한다. 제어부(900)가 객체(71)가 기둥인 것으로 확인한 경우 이를 맵 저장부의 맵과 비교하여 로봇(1000d)의 위치가 1001d가 아닌 (2, 1)인 것으로 수정할 수 있다.
로봇이 가지고 있는 맵 데이터를 활용하여 맵 상에서 모퉁이, 기둥들을 정의하고 그 근처에서 감속 주행을 하도록 설정된 상태에서 로봇이 현재 위치를 잘못 판단하거나 맵 데이터가 예상치 못한 오류로 누락되었을 때, 도 15와 같이 센싱되는 데이터를 맵과 비교하여 로봇의 돌발 장애물에 대한 대응 능력을높이며, 이는 특히 사람과의 충돌 사고의 가능성을 줄일 수 있다.
본 발명을 적용할 경우, 다양한 센싱부들(라이다 센싱부, 뎁스 카메라부, 초음파 센싱부, 적외선 센싱부 드)이 제공하는 데이터를 융합하여 돌발하여 이동하는 장애물이 출현하는 위험 구간, 즉 사각 지대를 판별할 수 있다. 예를 들어 이들 센싱된 데이터를 이용하면 전방의 객체가 돌발 장애물인지 여부를 검출할 수 있다. 이에 대해서는 도 6 및 도 10에서 살펴보았다.
또한, 돌발 장애물이 발생하는 사각 지대에서는 도 12에서 살펴본 바와 같이 로봇이 주행 경로를 변경하여 돌발 장애물을 쉽게 센싱할 수 있도록 이동할 수 있다. 뿐만 아니라, 전방에 배치되는 객체가 돌발 장애물이지, 아니면 고정된 객체인지를 비교하여, 도 15에 제시된 바와 같이 기존의 맵 정보와 실시간 장애물 정보를 비교 및 이들을 융합하여 로봇의 주행 경로 및 주행 알고리즘, 그리고 로봇의 현재 위치를 실시간으로 갱신할 수 있다.
도 16은 본 발명의 일 실시예에 의한 뎁스 카메라부를 이용하여 로봇이 주행하는 과정을 보여주는 도면이다. 이를 위해 맵 저장부(200)는 특정한 지점, 즉, 벽이 끝나는 지점, 기둥 등에 대한 뎁스 데이터를 과거의 주행 경로 상에서 취득하거나, 혹은 다른 로봇으로부터 수신하여 저장할 수 있다.
로봇은 맵 저장부(200)에 저장된 맵을 이용하여 주행한다(S1610). 주행 과정에서 전방의 뎁스 영상을 취득한다(S1620). 취득한 뎁스 영상은 센싱 데이터 분석부(150)가 실시간으로 분석하여 벽이 끝나는 지점 혹은 기둥이 배치된 지점인지를 확인한다. 즉, 뎁스 영상을 이용하여 센싱 데이터 분석부(150)는 전방에 사각 지대가 존재하는지를 확인한다(S1630). 확인 결과 사각 지대가 존재할 경우 로봇(1000)은 라이다 센싱부(110)를 이용하여 벽과의 거리를 유지하면서 속도를 줄이거나 혹은 회피 알고리즘으로 주행하는 등 로봇이 사각 지대의 이동 객체를 회피하여 이동한다(S1640).
일 실시예로 이동 객체와 충돌 가능성을 낮추도록 여유 공간을 가지고 낮은 속도로 이동할 수 있다. 물론, 이 과정에서 사람의 움직임을 센싱하기 위해 적외선 센싱부(140)를 이용할 수도 있다. 또한, 라이다 센싱부(110)는 맵 상의 고정성 정보에 기반하여 센싱된 객체의 재질을 신호 강도를 이용하여 비교할 수 있고, 센싱된 객체들이 어떤 사물들인지도 제어부(900) 및 센싱 데이터 분석부(150)가 확인할 수 있다.
본 발명의 실시예들을 적용할 경우, 로봇은 사각 지대에서 돌발하여 이동하는 장애물들과 충돌을 회피하며 주행할 수 있다.
또한 본 발명의 실시예들을 적용할 경우, 로봇은 사각 지대를 기준으로 로봇의 현재 위치를 수정하여 정확한 포지셔닝을 가능하게 한다.
뿐만 아니라, 본 발명의 실시예들을 적용할 경우, 센싱된 객체가 사람인 경우 로봇이 대인 동작을 수행할 수 있도록 한다.
본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니며, 본 발명의 목적 범위 내에서 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 반도체 기록소자를 포함하는 저장매체를 포함한다. 또한 본 발명의 실시예를 구현하는 컴퓨터 프로그램은 외부의 장치를 통하여 실시간으로 전송되는 프로그램 모듈을 포함한다.
이상에서는 본 발명의 실시예를 중심으로 설명하였지만, 통상의 기술자의 수준에서 다양한 변경이나 변형을 가할 수 있다. 따라서, 이러한 변경과 변형이 본 발명의 범위를 벗어나지 않는 한 본 발명의 범주 내에 포함되는 것으로 이해할 수 있을 것이다.
1000: 로봇 100: 센싱 모듈
110: 라이다 센싱부 120: 뎁스 카메라부
130: 초음파 센싱부 140: 적외선 센싱부
150: 센싱 데이터 분석부 200: 맵 저장부
300: 이동부 400: 기능부
500: 통신부 600: 인터페이스부
2000: 서버

Claims (13)

  1. 로봇의 맵 저장부가 상기 로봇이 주행하는 공간의 고정 객체의 위치를 저장하는 단계;
    상기 로봇의 센싱 모듈이 로봇의 주행 경로에 배치된 사각 지대를 센싱하는 단계;
    상기 로봇의 제어부가 상기 센싱된 사각 지대에서 이동 객체가 등장하는 확률을 산출하는 단계; 및
    상기 산출된 확률에 따라 상기 제어부는 상기 로봇의 이동부의 속도 또는 방향을 제어하는 단계를 포함하며,
    상기 맵 저장부는 둘 이상의 상이한 높이에서 센싱된 고정 객체들의 위치를 저장하는 둘 이상의 맵들을 포함하며
    상기 제어부는 상기 상이한 높이의 둘 이상의 맵을 이용하여 동일 지점의 사각지대를 판별하는 단계를 더 포함하는, 돌발 장애물을 식별하는 방법.
  2. 제1항에 있어서,
    상기 사각 지대를 센싱하는 단계는
    상기 센싱 모듈의 라이다 센싱부는 상기 주행 경로에 배치된 객체와의 거리를 센싱하여 상기 센싱된 데이터의 변화가 불규칙한 경우
    상기 센싱 모듈의 센싱 데이터 분석부가 상기 불규칙한 변화가 발생한 지점을 대상으로 센싱 모듈의 뎁스 카메라부가 뎁스 정보를 생성하도록 제어하는 단계를 포함하는, 돌발 장애물을 식별하는 방법.
  3. 제1항에 있어서,
    상기 제어부는 상기 로봇의 주행 경로를 상기 맵 저장부의 맵을 기반으로 생성하고 상기 제어부는 상기 맵에서 상기 주행 경로에 배치되는 사각 지대를 식별하는 단계를 포함하는, 돌발 장애물을 식별하는 방법.
  4. 제1항에 있어서,
    상기 제어하는 단계 이후에 상기 로봇의 이동부는 상기 제어부가 제어하는 방향 또는 속도에 따라 상기 로봇을 상기 사각 지대로 이동시키며,
    상기 센싱 모듈이 상기 사각 지대에서 이동 객체를 센싱하는 단계를 더 포함하는, 돌발 장애물을 식별하는 방법.
  5. 제4항에 있어서,
    상기 이동 객체를 센싱하는 단계는
    상기 센싱 모듈의 뎁스 카메라부 또는 적외선 센싱부 중 어느 하나 이상이 상기 이동 객체를 센싱하는 단계;
    센싱 데이터 분석부가 상기 이동 객체가 사람일 확률을 산출하는 단계; 및
    상기 이동 객체가 사람일 확률이 미리 설정된 기준 보다 높은 경우 상기 로봇의 인터페이스부는 상기 이동 객체에게 미리 설정된 청각적 정보 또는 시각적 정보를 출력하는 단계를 포함하는, 돌발 장애물을 식별하는 방법.
  6. 로봇의 제어부가 맵 저장부에 저장된 맵에서 주행 경로에 배치되는 사각 지대를 식별하는 단계;
    로봇이 식별된 사각 지대에 근접하는 경우 상기 로봇의 센싱 모듈이 상기 사각 지대의 객체를 센싱하는 단계; 및
    상기 제어부는 상기 센싱한 객체가 고정 객체인지 이동 객체인지를 판단하여 이동 객체인 경우 상기 제어부는 상기 로봇의 이동부의 속도 또는 방향을 제어하는 단계를 포함하며,
    상기 맵 저장부는 둘 이상의 상이한 높이에서 센싱된 고정 객체들의 위치를 저장하는 둘 이상의 맵들을 포함하며,
    상기 사각 지대를 식별하는 단계는 상기 제어부가 상기 상이한 높이의 둘 이상의 맵을 이용하여 동일 지점의 사각지대를 판별하는 단계를 더 포함하는, 돌발 장애물을 식별하는 방법.
  7. 제6항에 있어서,
    상기 사각 지대의 객체를 센싱하는 단계는
    상기 센싱 모듈의 라이다 센싱부가 상기 주행 경로에 배치된 객체와의 거리를 센싱하는 단계를 더 포함하며,
    상기 센싱된 데이터의 변화가 불규칙하거나 또는 상기 사각 지대의 빈 공간에 객체가 센싱된 경우,
    상기 배치된 객체와의 거리를 센싱하는 단계 이후에,
    상기 센싱 모듈의 센싱 데이터 분석부가 상기 불규칙한 변화가 발생하거나 객체가 센싱된 지점을 대상으로 센싱 모듈의 뎁스 카메라부가 뎁스 정보를 생성하도록 제어하는 단계를 더 포함하는, 돌발 장애물을 식별하는 방법.
  8. 제6항에 있어서,
    상기 제어하는 단계 이후에 상기 로봇의 이동부는 상기 로봇을 상기 사각 지대 주행 모드로 이동시키며,
    상기 센싱 모듈이 상기 사각 지대에서 이동 객체를 센싱하는 단계를 더 포함하는, 돌발 장애물을 식별하는 방법.
  9. 제8항에 있어서,
    상기 이동 객체를 센싱하는 단계는
    상기 센싱 모듈의 뎁스 카메라부 또는 적외선 센싱부 중 어느 하나 이상이 상기 이동 객체를 센싱하는 단계;
    센싱 데이터 분석부가 상기 이동 객체가 사람일 확률을 산출하는 단계; 및
    상기 이동 객체가 사람일 확률이 미리 설정된 기준 보다 높은 경우 상기 로봇의 인터페이스부는 상기 이동 객체에게 미리 설정된 청각적 정보 또는 시각적 정보를 출력하는 단계를 포함하는, 돌발 장애물을 식별하는 방법.
  10. 로봇의 주변에 배치된 고정 객체와 이동 객체를 센싱하는 센싱 모듈;
    로봇이 주행하는 공간의 고정 객체의 위치 및 상기 고정 객체의 고정성을 저장하는 맵 저장부;
    상기 센싱 모듈이 센싱한 데이터와 상기 맵 저장부에 저장된 데이터에 기반하여 로봇의 주행 경로를 생성하는 제어부; 및
    상기 제어부의 제어에 따라 상기 로봇을 이동시키는 이동부를 포함하며,
    상기 제어부는 상기 로봇의 주행 경로에 배치되는 사각 지대에서 이동 객체를 식별하여 상기 이동부의 속도 또는 방향을 제어하며,
    상기 맵 저장부는 둘 이상의 상이한 높이에서 센싱된 고정 객체들의 위치를 저장하는 둘 이상의 맵들을 포함하며,
    상기 제어부는 상기 상이한 높이의 둘 이상의 맵을 이용하여 동일 지점의 사각지대를 판별하는, 돌발 장애물을 식별하는 로봇.
  11. 제10항에 있어서,
    상기 센싱 모듈의 라이다 센싱부가 상기 주행 경로에 배치된 객체와의 거리를 센싱하여 상기 센싱된 데이터의 변화가 불규칙한 경우 상기 센싱 모듈의 센싱 데이터 분석부가 상기 불규칙한 변화가 발생한 지점을 대상으로 센싱 모듈의 뎁스 카메라부가 뎁스 정보를 생성하도록 제어하는, 돌발 장애물을 식별하는 로봇.
  12. 제10항에 있어서,
    상기 제어부는 맵 저장부에 저장된 맵에서 주행 경로에 배치되는 사각 지대를 식별하며,
    상기 로봇의 센싱 모듈이 상기 사각 지대의 객체를 센싱하여 상기 제어부가 상기 센싱한 객체가 고정 객체인지 이동 객체인지를 판단하는, 돌발 장애물을 식별하는 로봇.
  13. 제10항에 있어서,
    외부로 시각적 정보 또는 청각적 정보를 출력하는 인터페이스부를 더 포함하며,
    상기 센싱 모듈의 뎁스 카메라부 또는 적외선 센싱부 중 어느 하나 이상이 상기 이동 객체를 센싱하고, 상기 센싱 모듈의 센싱 데이터 분석부가 상기 이동 객체가 사람일 확률을 산출하여 상기 이동 객체가 사람일 확률이 미리 설정된 기준 보다 높은 경우 상기 제어부 및 상기 인터페이스부는 상기 이동 객체에게 미리 설정된 청각 또는 시각적 정보를 출력하는, 돌발 장애물을 식별하는 로봇.
KR1020170022238A 2017-02-20 2017-02-20 돌발 장애물을 식별하는 방법 및 이를 구현하는 로봇 KR102012550B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170022238A KR102012550B1 (ko) 2017-02-20 2017-02-20 돌발 장애물을 식별하는 방법 및 이를 구현하는 로봇
US15/892,589 US10948913B2 (en) 2017-02-20 2018-02-09 Method of identifying unexpected obstacle and robot implementing the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170022238A KR102012550B1 (ko) 2017-02-20 2017-02-20 돌발 장애물을 식별하는 방법 및 이를 구현하는 로봇

Publications (2)

Publication Number Publication Date
KR20180096058A KR20180096058A (ko) 2018-08-29
KR102012550B1 true KR102012550B1 (ko) 2019-08-20

Family

ID=63167811

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170022238A KR102012550B1 (ko) 2017-02-20 2017-02-20 돌발 장애물을 식별하는 방법 및 이를 구현하는 로봇

Country Status (2)

Country Link
US (1) US10948913B2 (ko)
KR (1) KR102012550B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4081431A4 (en) * 2019-12-27 2023-08-23 Mobileye Vision Technologies Ltd. DRIVING SAFETY SYSTEM
US11880209B2 (en) 2020-05-15 2024-01-23 Samsung Electronics Co., Ltd. Electronic apparatus and controlling method thereof

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11835343B1 (en) * 2004-08-06 2023-12-05 AI Incorporated Method for constructing a map while performing work
US10043076B1 (en) 2016-08-29 2018-08-07 PerceptIn, Inc. Visual-inertial positional awareness for autonomous and non-autonomous tracking
US11314262B2 (en) * 2016-08-29 2022-04-26 Trifo, Inc. Autonomous platform guidance systems with task planning and obstacle avoidance
US10162362B2 (en) 2016-08-29 2018-12-25 PerceptIn, Inc. Fault tolerance to provide robust tracking for autonomous positional awareness
KR102012550B1 (ko) * 2017-02-20 2019-08-20 엘지전자 주식회사 돌발 장애물을 식별하는 방법 및 이를 구현하는 로봇
CN109425352A (zh) * 2017-08-25 2019-03-05 科沃斯机器人股份有限公司 自移动机器人路径规划方法
US11274929B1 (en) * 2017-10-17 2022-03-15 AI Incorporated Method for constructing a map while performing work
US10994418B2 (en) * 2017-12-13 2021-05-04 X Development Llc Dynamically adjusting roadmaps for robots based on sensed environmental data
CN108344414A (zh) * 2017-12-29 2018-07-31 中兴通讯股份有限公司 一种地图构建、导航方法及装置、系统
CN110871315A (zh) * 2018-09-03 2020-03-10 苏州睿牛机器人技术有限公司 一种爬行弧焊机器人及爬行弧焊机器人的安全检测方法、装置
US20200090501A1 (en) * 2018-09-19 2020-03-19 International Business Machines Corporation Accident avoidance system for pedestrians
KR102220865B1 (ko) * 2018-10-02 2021-02-25 엘지전자 주식회사 청소로봇이 지면의 단차에 적응적으로 동작하는 방법 및 청소로봇
EP3867757A4 (en) * 2018-10-16 2022-09-14 Brain Corporation SYSTEMS AND METHODS FOR PERSISTENT MAPPING OF ENVIRONMENTAL PARAMETERS USING A CENTRALIZED CLOUD SERVER AND ROBOTIC NETWORK
US11774983B1 (en) 2019-01-02 2023-10-03 Trifo, Inc. Autonomous platform guidance systems with unknown environment mapping
KR20200115696A (ko) * 2019-03-07 2020-10-08 삼성전자주식회사 전자 장치 및 그 제어 방법
US20200356094A1 (en) * 2019-05-09 2020-11-12 Diversey, Inc. Methods and systems for machine state related visual feedback in a robotic device
KR102224637B1 (ko) 2019-07-05 2021-03-08 엘지전자 주식회사 이동 로봇 및 그 제어방법
KR102275300B1 (ko) 2019-07-05 2021-07-08 엘지전자 주식회사 이동 로봇 및 그 제어방법
KR102297496B1 (ko) * 2019-07-11 2021-09-02 엘지전자 주식회사 인공지능을 이용한 이동 로봇 및 이동 로봇의 제어방법
KR102361130B1 (ko) 2019-07-11 2022-02-09 엘지전자 주식회사 이동 로봇 및 그 제어방법
JP7302397B2 (ja) * 2019-09-06 2023-07-04 株式会社デンソー 壁形状計測装置
KR20220054104A (ko) * 2020-10-23 2022-05-02 삼성전자주식회사 전자 장치 및 그 제어 방법
US20220187841A1 (en) * 2020-12-10 2022-06-16 AI Incorporated Method of lightweight simultaneous localization and mapping performed on a real-time computing and battery operated wheeled device
US20220382282A1 (en) * 2021-05-25 2022-12-01 Ubtech North America Research And Development Center Corp Mobility aid robot navigating method and mobility aid robot using the same
US11886188B2 (en) * 2021-06-10 2024-01-30 R-Go Robotics, Ltd. Techniques for environmental parameter mapping

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015035139A (ja) * 2013-08-09 2015-02-19 トヨタ自動車株式会社 自律移動体、障害物判別方法及び障害物回避方法
JP6072934B2 (ja) * 2013-11-15 2017-02-01 株式会社日立製作所 移動ロボットシステム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6072934A (ja) 1983-09-30 1985-04-25 Agency Of Ind Science & Technol 微生物によるゴムの分解法
KR100834577B1 (ko) * 2006-12-07 2008-06-02 한국전자통신연구원 스테레오 비전 처리를 통해 목표물 검색 및 추종 방법, 및이를 적용한 가정용 지능형 서비스 로봇 장치
US9193402B2 (en) * 2013-11-26 2015-11-24 Elwha Llc Structural assessment, maintenance, and repair apparatuses and methods
WO2015120473A1 (en) * 2014-02-10 2015-08-13 Savioke Inc. Entryway based authentication system
US20160188977A1 (en) * 2014-12-24 2016-06-30 Irobot Corporation Mobile Security Robot
US9840003B2 (en) * 2015-06-24 2017-12-12 Brain Corporation Apparatus and methods for safe navigation of robotic devices
JP6762148B2 (ja) * 2015-07-09 2020-09-30 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 地図生成方法、移動ロボット及び地図生成システム
KR102012550B1 (ko) * 2017-02-20 2019-08-20 엘지전자 주식회사 돌발 장애물을 식별하는 방법 및 이를 구현하는 로봇
KR102391322B1 (ko) * 2017-06-30 2022-04-26 엘지전자 주식회사 이동 로봇

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015035139A (ja) * 2013-08-09 2015-02-19 トヨタ自動車株式会社 自律移動体、障害物判別方法及び障害物回避方法
JP6072934B2 (ja) * 2013-11-15 2017-02-01 株式会社日立製作所 移動ロボットシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4081431A4 (en) * 2019-12-27 2023-08-23 Mobileye Vision Technologies Ltd. DRIVING SAFETY SYSTEM
US11880209B2 (en) 2020-05-15 2024-01-23 Samsung Electronics Co., Ltd. Electronic apparatus and controlling method thereof

Also Published As

Publication number Publication date
US10948913B2 (en) 2021-03-16
US20180239355A1 (en) 2018-08-23
KR20180096058A (ko) 2018-08-29

Similar Documents

Publication Publication Date Title
KR102012550B1 (ko) 돌발 장애물을 식별하는 방법 및 이를 구현하는 로봇
US10783363B2 (en) Method of creating map by identifying moving object, and robot implementing the method
KR102090590B1 (ko) 장애물 회피에 기반하여 경유 지점을 주행하는 로봇 및 주행하는 방법
EP3035074A1 (en) Collision-avoidance system and method
EP3639986A1 (en) Robot and method of controlling thereof
KR102350533B1 (ko) 비전 정보에 기반한 위치 설정 방법 및 이를 구현하는 로봇
JP4871160B2 (ja) ロボットおよびその制御方法
BR112020024333A2 (pt) rastrear veículos em um ambiente de armazém
US20160171777A1 (en) Augmented reality asset locator
KR102635529B1 (ko) 공항용 로봇 및 그의 동작 방법
JP2021511974A (ja) 自律カートロボット用システム及び方法
KR102280798B1 (ko) 카트 로봇 및 로봇 관제 시스템
EP3627461A1 (en) Information processing method and apparatus, electronic device, and storage medium
KR102578138B1 (ko) 공항 로봇 및 이를 포함하는 시스템
US20210333391A1 (en) Mobile robot and method of controlling the same
US10871781B2 (en) Method for drawing map having feature of object applied thereto and robot implementing the same
KR20190143541A (ko) 이동 로봇의 동작 방법
KR102070213B1 (ko) 이동 로봇의 동작 방법
KR102063150B1 (ko) 사람을 식별하여 대인 동작을 수행하는 방법 및 이를 구현하는 로봇
KR20180015228A (ko) 장면 공간 모니터링을 통한 사람-컴퓨터 상호 작용
KR20190096897A (ko) 객체의 특성이 적용된 맵을 작성하는 방법 및 이를 구현하는 로봇
CN110231819A (zh) 用于避免碰撞的系统和用于避免碰撞的方法
KR101270895B1 (ko) 주차 제어 방법 및 시스템
KR102012548B1 (ko) 로봇의 진입 가능 영역을 식별하는 방법 및 이를 구현하는 로봇
JP7173518B2 (ja) 情報処理システム、情報処理方法及びプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant