KR20190103512A - 장애물을 학습하는 인공지능 이동 로봇 및 그 제어방법 - Google Patents

장애물을 학습하는 인공지능 이동 로봇 및 그 제어방법 Download PDF

Info

Publication number
KR20190103512A
KR20190103512A KR1020180017204A KR20180017204A KR20190103512A KR 20190103512 A KR20190103512 A KR 20190103512A KR 1020180017204 A KR1020180017204 A KR 1020180017204A KR 20180017204 A KR20180017204 A KR 20180017204A KR 20190103512 A KR20190103512 A KR 20190103512A
Authority
KR
South Korea
Prior art keywords
obstacle
image
restraint
mobile robot
image data
Prior art date
Application number
KR1020180017204A
Other languages
English (en)
Other versions
KR102330607B1 (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 KR1020180017204A priority Critical patent/KR102330607B1/ko
Priority to US16/759,118 priority patent/US11586211B2/en
Priority to AU2018356126A priority patent/AU2018356126B2/en
Priority to EP18870615.4A priority patent/EP3702111B1/en
Priority to CN201880081516.XA priority patent/CN111479662B/zh
Priority to PCT/KR2018/012688 priority patent/WO2019083291A1/ko
Publication of KR20190103512A publication Critical patent/KR20190103512A/ko
Application granted granted Critical
Publication of KR102330607B1 publication Critical patent/KR102330607B1/ko

Links

Images

Classifications

    • 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
    • B25J11/0085Cleaning
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2836Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means characterised by the parts which are controlled
    • A47L9/2852Elements for displacement of the vacuum cleaner or the accessories therefor, e.g. wheels, casters or nozzles
    • 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/022Optical sensing devices using lasers
    • 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
    • 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/06Safety devices
    • B25J19/061Safety devices with audible signals
    • 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/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2201/00Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
    • A47L2201/04Automatic control of the travelling movement; Automatic obstacle detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

본 발명의 이동 로봇 및 그 제어방법은 영상획득부를 통해 주행중 영상을 촬영하여 촬영되는 복수의 영상데이터를 저장하고, 장애물 감지유닛에 의해 장애물이 소정거리 내에 위치하는 것으로 판단되는 시점에, 상기 영상데이터를 바탕으로 판단되는 장애물에 따라 어느 하나의 대응모션을 시작하고, 주행 상태에 대응하여 위험상황을 판단하여 위험상황이 발생되는 시점을 기준으로 그 이전에 촬영된 적어도 하나의 영상데이터를 서버로 전송하여 위험상황에 대한 학습을 수행함으로써, 위험상황이 발생된 장애물을 회피하도록 대응모션을 설정하고, 위험상황이 발생하지 않도록 방지하여 주행이 계속되도록 한다.

Description

이동 로봇 및 그 제어방법{Moving Robot and controlling method}
본 발명은 이동 로봇 및 그 제어방법에 관한 것으로, 청소영역을 주행하여 청소를 수행하는 이동 로봇 및 그 제어방법에 관한 것이다.
일반적으로 이동 로봇은 사용자의 조작 없이도 청소하고자 하는 구역 내를 스스로 주행하면서 바닥면으로부터 먼지 등의 이물질을 흡입하여 자동으로 청소하는 기기이다.
이러한 이동 로봇은 청소구역 내에 설치된 가구나 사무용품, 벽 등의 장애물까지의 거리를 감지하고, 장애물 회피 동작을 수행한다.
이동 로봇은, 장애물을 감지하기 위한 수단으로, 적외선, 레이저 등의 장애물 감지수단을 구비하고 있다. 이동 로봇은 적외선 또는 레이저 등의 센서에 의한 감지신호를 바탕으로, 소정 거리 내의 장애물을 감지하여 장애물을 회피한다.
장애물을 감지 시 즉시 경로를 변경하는 경우 해당 영역에 대한 청소를 수행할 수 없으므로, 최대한 장애물에 근접하거나 또는 충돌한 후에 경로를 변경하게 된다.
이러한 이동 로봇은 장애물의 회피하여 주행하도록 기본적으로 설계되기는 하지만, 모든 장애물의 종류를 인식하는데에는 한계가 있다. 그에 따라 일부 장애물에 의해 주행이 방해받을 수 있고, 심하게는 더 이상 주행하지 못하는 구속 상황에 처할 수 있다.
그에 따라 최근에는 제품이 출시 되기전에 다양한 실험을 통해 테스트가 이루어짐에 따라 장애물에 대한 정보를 선행 학습하도록 한다.
그러나 테스트 환경은 제한적으로 모든 장애물에 대한 정보를 선행 학습을 통해 축적할 수 없으므로 이동 로봇의 장애물에 대한 대응에는 한계가 있다.
또한, 실제 이동 로봇이 사용되는 사용자의 주거 환경은 집집마다 상이하고 발생할 수 있는 위험상황 또한 상이하므로 각각의 환경에 따른 장애물에 대한 정보가 지속적으로 추가되어야 할 필요성이 있다.
본 발명이 해결하고자 하는 과제는, 주행중에 주기적으로 영상을 촬영하여 복수의 영상을 통해 장애물의 특징을 분석하여 새로운 장애물에 대한 정보를 획득함으로서, 다양한 대응모션으로 장애물을 회피하거나, 위험상황으로부터 탈출할 수 있도록 하는 이동 로봇 및 그 제어방법을 제공하는 것이다.
본 발명이 일 실시예에 따른 이동 로봇은, 이동 가능한 본체, 주행방향에 대한 영상을 촬영하는 영상획득부, 주행방향에 위치한 장애물을 감지하는 장애물 감지유닛, 상기 영상획득부를 통해 주기적으로 촬영되는 복수의 영상데이터가 저장되는 데이터부, 주행상태에 대응하여 상기 장애물에 의한 본체의 구속 여부를 판단하고, 구속에 대한 판단시점으로부터 이전에 촬영된 적어도 하나의 상기 영상데이터를 서버로 전송하며, 상기 서버로부터 수신되는 장애물 정보에 대응하여 상기 본체의 구속을 방지하도록 대응모션을 설정하여 상기 장애물을 회피하는 제어부를 포함한다.
상기 제어부는 상기 장애물 감지유닛에 의해 상기 장애물이 소정거리 내에 위치하는 것으로 판단되는 소정 시점에 대응모션을 시작하되, 상기 소정 시점 이전에 획득된 상기 영상데이터를 바탕으로 판단되는 상기 장애물에 따라 상기 대응모션을 결정하는 것을 특징으로 한다.
상기 제어부는 구속상황이 발생되면, 상기 본체의 구속이 판단된 시점으로부터, 이전 일정시간 또는 이전 일정거리 이동중 촬영된 적어도 하나의 영상데이터를 상기 서버로 전송하는 것을 특징으로 한다.
상기 제어부는 상기 서버로부터 수신되는 장애물 정보에 근거하여 지정된 대응모션을 수행하여 구속 상황으로부터 탈출하는 것을 특징으로 한다.
상기 제어부는 상기 장애물이 구속의 원인이 되는 장애물인 경우, 상기 장애물을 회피하도록 상기 복수의 대응모션 중 지정된 어느 하나의 대응모션을 수행하는 것을 특징으로 한다.
상기 제어부는 상기 대응모션으로, 상기 장애물에 일정거리 접근 후 회피하거나 또는 상기 장애물 감지 시 즉시 회피하도록 하는 것을 특징으로 한다.
상기 제어부는 상기 장애물이 구속상황이 발생될 수 있는 후보에 포함된 경우 상기 복수의 대응모션 중, 구속에 대한 경고를 출력하도록 어느 하나의 대응모션을 수행하는 것을 특징으로 한다.
본 발명은, 주행 중, 영상획득부를 통해 주행방향에 대한 영상을 주기적으로 촬영하여 영상데이터를 저장하는 단계, 상기 영상데이터를 분석하여 주행방향에 위치한 장애물을 인식하는 단계, 장애물 감지유닛에 의해 상기 장애물을 감지하는 단계, 상기 장애물 감지 시, 상기 영상데이터로부터 기 인식된 상기 장애물의 종류에 대응하여 복수의 대응모션 중 어느 하나의 대응모션을 수행하는 단계, 주행상태에 대응하여, 상기 장애물에 의한 본체의 구속 여부를 판단하는 단계, 구속으로 판단되면, 구속에 대한 판단시점으로부터 이전에 촬영된 적어도 하나의 상기 영상데이터를 서버로 전송하는 단계 및 상기 서버로부터 수신되는 장애물 정보에 대응하여 상기 본체의 구속을 방지하도록 대응모션을 설정하여 상기 장애물을 회피하는 단계를 포함한다.
본 발명은, 주행중 주기적으로 영상을 촬영하여 복수의 영상데이터를 저장하고, 상기 영상데이터로부터 장애물은 인식하여, 소정거리 내의 장애물 감지시 기 인식된 장애물에 따라 어느 하나의 대응모션을 수행하고, 주행 중 상기 장애물에 의해 구속되는 경우, 그 이전에 촬영된 복수의 영상데이터를 서버로 전송하는 이동 로봇, 및 상기 복수의 영상데이터를 분석하여 상기 구속의 원인이 된 상기 장애물의 특징을 분석하고, 상기 구속을 해소하거나 또는 상기 장애물을 회피하기 위한 대응모션을 설정하는 서버를 포함한다.
상기 서버는 상기 적어도 하나의 영상데이터를 분석하여, 상기 본체가 구속되기 전 촬영된 영상데이터로부터 주변의 장애물을 인식하여 구속의 원인이 되는 장애물을 판단하는 것을 특징으로 한다.
상기 서버는 구속의 원인이 되는 상기 장애물의 특징을 추출하여 상기 장애물에 대한 인식모델을 생성하고, 상기 장애물을 회피하기 위한 대응모션 또는 구속상황으로부터 탈출하기 위한 대응모션을 포함하여 상기 장애물 정보를 생성하는 것을 특징으로 한다.
상기 서버는 상기 장애물의 특징에 대응하여, 상기 장애물과 유사한 형태의 다른 장애물에 대하여 구속이 발생할 수 있는 후보로 설정하여 상기 장애물 정보를 생성하는 것을 특징으로 한다.
본 발명의 이동 로봇 및 그 제어방법은 주행중에 영상을 주기적으로 촬영하고, 장애물이 소정 거리 내에 위치하는 경우 기 촬영된 영상을 분석하여 장애물에 대하여 설정된 복수의 모션 중 어느 하나를 선택하여 수행함에 따라, 상이한 복수의 장애물에 대하여 장애물 감지 시 동일한 감지신호가 입력되더라도 영상을 통해 장애물을 판단하여 장애물에 따라 상이한 동작이 수행되도록 하여 다양한 장애물에 대응할 수 있다.
본 발명은 주행상태에 따라 구속 여부를 판단하고, 구속된 시점으로부터 그 이전에 촬영된 적어도 하나의 영상을 분석하여 구속의 원인이 되는 장애물을 추출하고, 구속의 원인이 되는 장애물을 회피할 수 있도록 대응모션을 설정함으로써, 다음 주행 시 구속이 발생하지 않도록 한다.
본 발명은, 본체의 이동이 구속된 시점을 기준으로 그 이전에 촬영된 적어도 하나의 영상을 분석하여 구속상황을 탈출할 수 있도록 하는 대응모션을 설정하여, 구속상황을 해소할 수 있다.
본 발명은 구속의 원인이 되는 장애물과 동일하거나 유사한 형태의 다른 장애물에 대하여 구속발생에 대한 후보를 설정하고, 다른 장애물에 대한 대응모션을 설정하여 구속이 발생하지 않도록 한다.
본 발명은 본체가 주행하지 못하고 구속되는 상황을 사전에 방지함으로써, 본체가 지속적으로 주행할 수 있도록 한다.
본 발명은 서버를 통한 장애물의 분석 및 학습을 통해, 이동 로봇이 새로운 장애물에 대한 정보를 획득하고, 기존의 장애물에 대한 정보를 갱신함으로써, 장애물에 대하여 다양한 대응이 가능하고, 위험상황을 회피할 수 있다.
도 1 은 본 발명의 일 실시예에 따른 이동 로봇 시스템의 이동 로봇이 도시된 사시도이다.
도 2 는 도 1의 이동 로봇의 수평 화각을 도시한 도이다.
도 3 은 도 1의 이동 로봇의 전면도이다.
도 4 는 도 1의 이동 로봇의 저면을 도시한 도이다.
도 5 는 본 발명의 일 실시예에 따른 이동 로봇 및 장애물 인식을 위한 시스템이 간략하게 도시된 도이다.
도 6 은 본 발명의 일 실시예에 따른 이동 로봇의 주요부들을 도시한 블록도이다.
도 7 은 본 발명의 일실시예에 따른 이동 로봇 및 장애물 인식을 위한 기기간의 신호 흐름을 설명하는데 참조되는 도이다.
도 8 은 본 발명의 일실시예에 따른 이동 로봇의 장애물 인식을 위한 영상 전송을 설명하는데 참조되는 도이다.
도 9 는 본 발명의 일실시예에 따른 이동 로봇의 영상을 통한 구속상황판단방법을 설명하는데 참조되는 도이다.
도 10 은 본 발명의 일실시예에 따른 이동 로봇의 제어방법을 설명하는데 참조되는 순서도이다.
도 11은 본 발명의 일실시예에 따른 이동 로봇의 에러판단방법을 설명하는데 참조되는 순서도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다. 본 발명의 제어구성은 적어도 하나의 프로세서로 구성될 수 있다.
도 1은 본 발명의 일 실시예에 따른 이동 로봇의 사시도이다. 도 2는 도 1의 이동 로봇의 수평 화각을 도시한 것이다. 도 3은 도 1의 이동 로봇의 전면도이다. 도 4는 도 1의 이동 로봇의 저면을 도시한 것이다.
도 1 내지 도 4를 참조하면, 본 발명의 일 실시예에 따른 이동 로봇(1)은 청소구역의 바닥을 따라 이동하며, 바닥 상의 먼지 등의 이물질을 흡입하는 본체(10)와, 본체(10)의 전면에 배치되어 장애물을 감지하는 감지수단을 포함한다.
본체(10)는 외관을 형성하며 내측으로 본체(10)를 구성하는 부품들이 수납되는 공간을 형성하는 케이싱(11)과, 케이싱(11)에 배치되어 먼지나 쓰레기 등의 이물질을 흡입하는 흡입유닛(34)과, 케이싱(11)에 회전 가능하게 구비되는 좌륜(36(L))과 우륜(36(R))을 포함할 수 있다. 좌륜(36(L))과 우륜(36(R))이 회전함에 따라 본체(10)가 청소구역의 바닥을 따라 이동되며, 이 과정에서 흡입유닛(34)을 통해 이물질이 흡입된다.
흡입유닛(34)은 흡입력을 발생시키는 흡입 팬(미도시)과, 흡입 팬의 회전에 의해 생성된 기류가 흡입되는 흡입구(10h)를 포함할 수 있다. 흡입유닛(34)은 흡입구(10h)를 통해 흡입된 기류 중에서 이물질을 채집하는 필터(미도시)와, 필터에 의해 채집된 이물질들이 축적되는 이물질 채집통(미도시)을 포함할 수 있다.
또한, 본체(10)는 좌륜(36(L))과 우륜(36(R))을 구동시키는 주행부를 포함할 수 있다. 주행부는 적어도 하나의 구동모터를 포함할 수 있다. 적어도 하나의 구동모터는 좌륜(36(L))을 회전시키는 좌륜 구동모터와 우륜(36(R))을 회전시키는 우륜 구동모터를 포함할 수 있다.
좌륜 구동모터와 우륜 구동모터는 제어부의 주행제어부에 의해 작동이 독립적으로 제어됨으로써 본체(10)의 직진, 후진 또는 선회가 이루어질 수 있다. 예를들어, 본체(10)가 직진 주행하는 경우에는 좌륜 구동모터와 우륜 구동모터가 같은 방향으로 회전되나, 좌륜 구동모터와 우륜 구동모터가 다른 속도로 회전되거나, 서로 반대 방향으로 회전되는 경우에는 본체(10)의 주행 방향이 전환될 수 있다. 본체(10)의 안정적인 지지를 위한 적어도 하나의 보조륜(37)이 더 구비될 수 있다.
케이싱(11)의 저면부 전방측에 위치하며, 방사상으로 연장된 다수개의 날개로 이루어진 솔을 갖는 복수의 브러시(35)가 더 구비될 수 있다. 복수의 브러시(35)의 회전에 의해 청소구역의 바닥으로부터 먼지들이 제거되며, 이렇게 바닥으로부터 분리된 먼지들은 흡입구(10h)를 통해 흡입되어 채집통에 모인다.
케이싱(11)의 상면에는 사용자로부터 이동 로봇(1)의 제어를 위한 각종 명령을 입력받는 조작부(160)를 포함하는 컨트롤 패널이 구비될 수 있다.
감지수단은, 도 1의 (a)와 같이 복수의 센서를 이용하여 장애물을 감지하는 센서부(150), 영상을 촬영하는 영상획득부(170)를 포함한다.
또한, 감지수단은, 도 1의 (b)와 같이, 본체(10)의 전면에 배치되어, 장애물을 감지하는 장애물 감지유닛(100), 영상을 촬영하는 영상획득부(170)를 포함할 수 있다. 장애물 감지유닛(100)은 광패턴을 조사하고 촬영되는 영상을 통해 장애물을 감지한다. 장애물 감지유닛(100)은 패턴획득부(140)를 포함하고, 또한, 센서부(150)를 포함할 수 있다.
영상획득부(170)는 각각 전방을 향하도록 구비되어 주행방향을 촬영하고, 또한, 경우에 따라 천장을 향하도록 구비될 수 있다. 경우에 따라 전방과 천장을 향하는 두개의 영상획득부(170)가 구비될 수도 있다. 두개의 영상획득부가 구비되는 경우, 본체의 전면과 상단부에 각각 설치되어 전방과 천장의 영상을 각각 촬영할 수 있다.
장애물 감지유닛(100)은 본체(10)의 전면에 배치될 수 있다.
장애물 감지유닛(100)은 케이싱(11)의 전면에 고정되고, 제 1 패턴 조사부(120), 제 2 패턴 조사부(130) 및 패턴획득부(140)를 포함한다. 이때 패턴획득부(140)는 도시된 바와 같이 패턴 조사부의 하부에 설치되거나 또는 제 1 및 제 2 패턴 조사부 사이에 배치될 수 있다.
도 2에서, 표시된 조사각(θh)은 제 1 패턴 조사부(120)로부터 조사된 제 1 패턴 광(P1)의 수평조사각을 표시한 것으로, 수평선의 양단이 제 1 패턴 조사부(120)와 이루는 각도를 나타내며, 130˚ 내지 140˚ 범위에서 정해지는 것이 바람직하나, 반드시 이에 한정되어야 하는 것은 아니다. 도 2에 표시된 점선은 이동 로봇(1)의 전방을 향하는 것이며, 제 1 패턴 광(P1)은 점선에 대해 대칭인 형태로 구성될 수 있다.
본체(10)에는 재충전이 가능한 배터리(38)가 구비되며, 배터리(38)의 충전 단자(33)가 상용 전원(예를 들어, 가정 내의 전원 콘센트)과 연결되거나, 상용 전원과 연결된 별도의 충전대(400)에 본체(10)가 도킹되어, 충전 단자(33)가 충전대의 단자(410)와의 접촉을 통해 상용 전원과 전기적으로 연결되고, 배터리(38)의 충전이 이루어질 수 있다. 이동 로봇(1)을 구성하는 전장 부품들은 배터리(38)로부터 전원을 공급받을 수 있으며, 따라서, 배터리(38)가 충전된 상태에서 이동 로봇(1)은 상용 전원과 전기적으로 분리된 상태에서 자력 주행이 가능하다.
도 5 는 본 발명의 일 실시예에 따른 이동 로봇 및 장애물 인식을 위한 시스템이 간략하게 도시된 도이다.
이동 로봇(1)은 주행영역(H) 중 소정의 청소영역에 대한 청소명령을 수신하여 청소를 수행한다. 이동 로봇(1)은 주행 중 촬영되는 영상을 분석하여 장애물의 종류를 판단한다.
이동 로봇(1)은 주행영역(H)에 존재하는 복수의 장애물(2, 3)을 감지하여 장애물을 인식하고, 장애물의 종류에 따라 접근, 통과, 회피 중 어느 하나의 동작을 수행한다. 이때, 이동 로봇(1)은 장애물에 접근하지 않고 회피하거나, 소정거리 접근한 후 소정의 동작을 수행할 수 있고, 장애물에 근접한 이후에 회피할 수 있으며, 장애물의 형태에 따라 장애물을 통과할 수 있다.
이동 로봇(1)은 주행 중에 구비되는 영상획득부(170)를 통해 주행방향을 촬영하고 장애물 감지유닛(100)을 통해 소정거리 내에 위치하는 장애물을 감지한다. 이동 로봇(1)은 영상획득부(170)를 통해 연속적으로 주행방향을 촬영할 수 있고, 설정에 따라 소정시간 간격으로 영상을 촬영할 수 있다.
이동 로봇(1)은 주행중에 촬영되는 영상을 저장하고, 장애물 감지유닛(100)을 통해 장애물이 감지되면, 대응 가능한 대응모션을 선별한 후, 영상분석을 통해 판단된 장애물에 따라, 특히 장애물의 종류에 따라 장애물에 대한 대응모션을 결정하여 동작한다.
이동 로봇(1)은 상이한 장애물에 대하여 장애물 감지유닛(100)에 의해 동일한 감지신호가 입력되는 경우라도, 기 촬영된 영상을 바탕으로 장애물을 분석하여, 장애물에 따른 대응모션을 설정하고, 그에 따라 장애물에 대응하는 동작을 수행한다.
또한, 이동 로봇(1)은 영상이 촬영되면, 소정 시간 간격으로 영상을 분석하여 영상에 포함된 장애물을 인식하고, 장애물 감지유닛(100)에의해 소정 거리내에 장애물이 위치하는 것이 감지되면, 기 판단된 장애물의 종류를 바탕으로 대응모션에 대한 동작을 수행할 수 있다.
예를 들어, 이동 로봇(1)은 장애물에 따라 위험장애물인 경우 접근하지 않고 회피하도록 하고, 일반 장애물인 경우 근접거리까지 접근하거나 또는 장애물에 충돌 후 회피하도록 한다.
이동 로봇(1)은 자체 저장되는 데이터를 바탕으로 장애물의 종류를 판단하고 또한, 서버(90) 또는 단말(80)과 연결되어 장애물의 종류를 판단할 수 있다. 이동 로봇(1)은 네트워크(N)를 통해 서버(90)와의 통신하기 위해 별도의 통신장치(미도시)와 연결될 수 있다.
이동 로봇(1)은 주행 중 촬영되는 영상에 대하여, 각 영상데이터를 필터링하여, 소정 시간 간격으로 서버 또는 단말로 전송하여 장애물 정보를 요청함으로써, 영상데이터에 포함된, 장애물에 대한 정보를 서버 또는 단말로부터 수신한다. 이동 로봇(1)은 장애물 감지유닛(100)에 의해 장애물이 소정거리 내에 위치하는 것으로 판단되는 때에, 영상데이터를 통해 장애물을 즉시 확인할 수 있다.
단말(80)은 이동 로봇(1)을 제어하기 위한 어플리케이션을 구비하고, 어플리케이션의 실행을 통해 이동 로봇(1)이 청소할 주행구역에 대한 맵을 표시하고, 맵 상에 특정 영역을 청소하도록 영역을 지정할 수 있다. 또한, 이동 로봇으로부터 수신되는 데이터를 바탕으로 이동 로봇의 위치를 표시하고, 청소상태에 대한 정보를 표시한다.
단말은 통신모듈이 탑재되어 네트워크 접속이 가능하고 이동 로봇을 제어하기 위한 프로그램, 또는 이동 로봇 제어용 어플리케이션이 설치된 기기로, 컴퓨터, 랩탑, 스마트폰, PDA, 태블릿PC 등의 기기가 사용될 수 있다. 또한, 단말은, 스마트 워치 등의 웨어러블(wearable) 장치 또한 사용될 수 있다.
단말(80)은 이동 로봇과, 가정 내 구축되는 네트워크를 통해 상호 연결될 수 있다. 단말과 이동 로봇은 WIFI로 연결됨은 물론, 블루투스, 적외선통신, 지그비 등의 근거리 무선통신방식을 이용하여 상호 통신할 수 있다. 단말과 이동 로봇의 통신 방식은, 이에 한정되지 않음을 명시한다.
또한, 단말(80)은 이동 로봇(1)으로부터 수신되는 영상에 대응하여 장애물의 종류를 판단할 수 있다. 단말(80)은 기 저장된 데이터를 바탕으로 장애물의 종류를 판단하거나, 서버와 연결되어 장애물의 종류를 판단할 수 있다. 예를들어 이동 로봇(1)이 네트워크 접속을 통한 서버연결이 불가능한 경우, 단말(80)이 이동 로봇의 데이터를 수신하여 서버로 전송할 수 있다.
또한, 단말(80)은 영상을 화면에 표시하여 사용자의 입력을 통해 장애물의 종류를 입력하여 이동 로봇으로 전송할 수 있고, 어플리케이션의 메뉴를 통해 특정 장애물에 대한 동작을 지정할 수 있다.
서버(90)는 소정 네트워크(N)를 통해 접속되는, 이동 로봇(1)으로부터 수신되는 영상데이터를 분석하여 장애물의 종류를 판단하고, 그에 대한 응답을 이동 로봇(1)으로 전송한다. 서버(90)는 단말로부터 요청이 있는 경우 장애물의 종류를 판단하여 응답할 수 있다.
서버(90)는 복수의 이동 로봇(1)으로부터 수신되는 영상데이터를 누적하고 복수의 영상데이터를 분석하여 장애물에 대하여 학습한다.
서버(90)는 복수의 영상데이터를 바탕으로 하는 장애물 인식을 위한 데이터베이스(미도시)를 구비하여, 영상데이터로부터 추출되는 장애물에 대한 특징을 인식하여 장애물의 종류를 판단한다.
서버(90)는 장애물 정보를 누적하여 저장하고, 장애물 정보를 분석하여 장애물의 종류를 판단한다. 또한, 서버(90)는 장애물을 종류에 따라 분류하여 장애물에 대한 이동 로봇(1)의 동작을 적어도 하나의 대응모션으로 설정할 수 있다.
서버(90)는 새로운 장애물 정보를 분석하여, 기 저장된 장애물 정보를 갱신한다. 또한, 서버(90)는 단말(80)에 의해 설정되거나 또는 변경되는 장애물에 대한 이동 로봇의 동작정보를 수신하여 저장하고, 기 저장된 장애물 정보에 매칭하여 장애물에 대한 이동 로봇의 동작에 대한 설정을 갱신한다.
도 6은 본 발명의 일 실시예에 따른 이동 로봇의 주요부들을 도시한 블록도이다.
도 6에 도시된 바와 같이, 이동 로봇(1)은 장애물 감지유닛(100), 영상획득부(170), 청소부(260), 주행부(250), 데이터부(180), 출력부(190), 조작부(160), 통신부(280) 그리고 동작 전반을 제어하는 제어부(110)를 포함한다.
조작부(160)는 적어도 하나의 버튼, 스위치, 터치입력수단을 포함하여, 이동 로봇(1)의 작동 전반에 필요한, 온/오프 또는 각종 명령을 입력받아 제어부(110)로 입력한다.
출력부(190)는 LED, LCD와 같은 디스플레이를 구비하고, 이동 로봇(1)의 동작모드, 예약 정보, 배터리 상태, 동작상태, 에러상태 등을 표시한다. 또한, 출력부(190)는 스피커 또는 버저를 구비하여, 동작모드, 예약 정보, 배터리 상태, 동작상태, 에러상태에 대응하는 소정의 효과음, 경고음 또는 음성안내를 출력한다.
통신부(280)는, 무선통신 방식으로 단말(80)과 통신한다. 또한, 통신부(280)는 가정 내 네트워크를 통해, 인터넷망에 연결되어, 외부의 서버(90)와 통신할 수 있다.
통신부(280)는 생성되는 지도를 단말(80)로 전송하고, 단말로부터 청소명령을 수신하며, 이동 로봇의 동작상태, 청소상태에 대한 데이터를 단말로 전송한다. 통신부(280)는 지그비, 블루투스 등의 근거리 무선통신뿐 아니라, 와이파이, 와이브로 등의 통신모듈을 포함하여 데이터를 송수신한다.
통신부(280)는 장애물 감지유닛(100)로부터 감지되는 장애물에 대한 정보를 통신부(280)를 통해 서버(90)로 전송하고, 서버로부터 장애물에 대한 데이터를 수신한다. 또한, 통신부(280)는 단말(80)로부터 주행구역 내에 존재하는 장애물에 대한 정보 및 그에 따른 동작정보를 수신하고, 이동 로봇의 동작데이터를 단말(80)로 전송한다.
주행부(250)는 적어도 하나의 구동모터를 포함하여 주행제어부(113)의 제어명령에 따라 이동 로봇이 주행하도록 한다. 주행부(250)는 앞서 설명한 바와 같이, 좌륜(36(L))을 회전시키는 좌륜 구동모터와 우륜(36(R))을 회전시키는 우륜 구동모터를 포함할 수 있다.
청소부(260)는 브러쉬를 동작시켜 이동 로봇 주변의 먼지 또는 이물질을 흡입하기 쉬운 상태로 만들고, 흡입장치를 동작시켜 먼지 또는 이물질을 흡입한다. 청소부(260)는 먼지나 쓰레기 등의 이물질을 흡입하는 흡입유닛(34)에 구비되는 흡입 팬의 동작을 제어하여 먼지가 흡입구를 통해 이물질 채집통(먼지통)에 투입되도록 한다.
또한, 청소부(260)는 본체의 저면부 후방에 설치되어 바닥면과 접하여 바닥면을 물걸레질하는 물걸레청소부(미도시), 물걸레청소부로 물을 공급하는 물통(미도시)을 더 포함할 수 있다.
배터리(미도시)는 구동 모터뿐만 아니라, 이동 로봇(1)의 작동 전반에 필요한 전원을 공급한다. 배터리가 방전될 시, 이동 로봇(1)은 충전을 위해 충전대(400)로 복귀하는 주행을 할 수 있으며, 이러한 복귀 주행 중, 이동 로봇(1)은 스스로 충전대의 위치를 탐지할 수 있다. 충전대(400)는 소정의 복귀 신호를 송출하는 신호 송출부(미도시)를 포함할 수 있다. 복귀 신호는 초음파 신호 또는 적외선 신호일 수 있으나, 반드시 이에 한정되어야하는 것은 아니다.
데이터부(180)에는 장애물 감지유닛(100), 또는 센서부(150)로부터 입력되는 감지신호가 저장되고, 장애물을 판단하기 위한 기준데이터가 저장되며, 감지된 장애물에 대한 장애물정보가 저장된다.
데이터부(180)는 장애물의 종류를 판단하기 위한 장애물데이터(181), 촬영되는 영상이 저장되는 영상데이터(182), 영역에 대한 지도데이터(183)가 저장된다. 지도데이터(183)에는 장애물정보가 포함되며, 이동 로봇에 의해 탐색되는 주행가능한 영역에 대한 기초맵, 기초맵으로부터 영역이 구분된 청소맵, 청소맵의 영역의 형상을 정리하여 사용자가 확인할 수 있도록 생성된 사용자맵, 그리고 청소맵과 사용자맵이 중첩되어 표시되는 가이드맵이 저장될 수 있다.
장애물데이터(181)는 장애물 인식 및 장애물의 종류를 판단하기 위한 데이터이고, 인식된 장애물에 대한 이동 로봇의 동작, 예를 들어 주행속도, 주행방향, 회피 여부, 정지 여부 등에 대한 모션정보와, 스피커(173)를 통해 출력되는 효과음, 경고음, 음성안내에 대한 데이터가 포함된다. 영상데이터(182)는 촬영된 영상, 서버로부터 수신된 장애물 인식을 위한 인식정보가 포함된다.
또한, 데이터부(180)에는 이동 로봇의 동작을 제어하기 위한 제어데이터 및 이동 로봇의 청소모드에 따른 데이터, 센서부(150)에 의한 초음파/레이저 등의 감지신호가 저장된다.
데이터부(180)는, 마이크로 프로세서(micro processor)에 의해 읽힐 수 있는 데이터를 저장하는 것으로, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치를 포함할 수 있다.
장애물 감지유닛(100)은 제 1 패턴 조사부(120), 제 2 패턴 조사부(130), 그리고 패턴획득부(140)를 포함한다. 앞서 설명한 도 1의 (a)와 같이 패턴 조사부가 구비되지 않는 경우에는 조사되는 패턴없이, 영상획득부가 촬영되는 영상으로부터 장애물을 감지할 수 있다.
또한, 영상획득부는 복수로 구비될 수 있다. 패턴 조사부가 구비되는 경우, 패턴이 포함된 영상을 촬영하는 영상획득부와 주행방향 또는 전방의 상부를 촬영하는 별도의 영상획득부가 더 구비될 수 있다.
장애물 감지유닛(100)은 제 1 패턴 조사부(120), 제 2 패턴 조사부(130) 및 패턴획득부(140)를 포함한다. 또한, 장애물 감지유닛(100)은 적어도 하나의 센서로 구성된 센서부(150)를 포함할 수 있다. 경우에 따라 장애물 감지유닛(100)은 센서부로 구성될 수 있다.
장애물 감지유닛(100)은 앞서 설명한 바와 같이, 본체(10)의 전면에 설치되어, 이동 로봇의 전방에 제 1 및 제 2 패턴의 광(P1, P2)을 조사하고, 조사된 패턴의 광을 촬영하여 패턴이 포함된 영상을 획득한다. 장애물 감지유닛(100)은 획득영상을 장애물 감지신호로써 제어부(110)로 입력한다.
장애물 감지유닛(100)의 제 1 및 제 2 패턴 조사부(120, 130)는 광원과, 광원으로부터 조사된 광이 투과됨으로써 소정의 패턴을 생성하는 패턴생성자(OPPE: Optical Pattern Projection Element)를 포함할 수 있다. 광원은 레이져 다이오드(Laser Diode, LD), 발광 다이오드(Light Emitteing Diode, LED) 등 일 수 있다. 레이져 광은 단색성, 직진성 및 접속 특성에 있어 다른 광원에 비해 월등해, 정밀한 거리 측정이 가능하며, 특히, 적외선 또는 가시광선은 대상체의 색상과 재질 등의 요인에 따라 거리 측정의 정밀도에 있어서 편차가 크게 발생되는 문제가 있기 때문에, 광원으로는 레이져 다이오드가 바람직하다. 패턴생성자는 렌즈, DOE(Diffractive optical element)를 포함할 수 있다. 각각의 패턴 조사부(120, 130)에 구비된 패턴 생성자의 구성에 따라 다양한 패턴의 광이 조사될 수 있다.
패턴획득부(140)는 본체(10) 전방의 영상을 획득할 수 있다. 특히, 패턴획득부(140)에 의해 획득된 영상(이하, 획득영상이라고 함.)에는 패턴 광(P1, P2)이 나타나며, 이하, 획득영상에 나타난 패턴 광(P1, P2)의 상을 광 패턴이라고 하고, 이는 실질적으로 실제 공간상에 입사된 패턴 광(P1, P2)이 이미지 센서에 맺힌 상이기 때문에, 패턴 광들(P1, P2)과 같은 도면 부호를 부여하여, 제 1 패턴 광(P1) 및 제 2 패턴 광(P2)과 각각 대응하는 상들을 제 1 광 패턴(P1) 및 제 2 광 패턴(P2)이라고 하기로 한다.
패턴 조사부가 구비되지 않는 경우, 패턴획득부(140)는 본체 전방의, 패턴광이 포함되지 않은 영상을 획득한다.
패턴획득부(140)는 피사체의 상을 전기적 신호로 변환시킨 후 다시 디지털 신호로 바꿔 메모리소자에 기억시키는 카메라를 포함할 수 있다. 카메라는 적어도 하나의 광학렌즈와, 광학렌즈를 통과한 광에 의해 상이 맺히는 다수개의 광다이오드(photodiode, 예를들어, pixel)를 포함하여 구성된 이미지센서(예를 들어, CMOS image sensor)와, 광다이오드들로부터 출력된 신호를 바탕으로 영상을 구성하는 디지털 신호 처리기(DSP: Digital Signal Processor)를 포함할 수 있다. 디지털 신호 처리기는 정지영상은 물론이고, 정지영상으로 구성된 프레임들로 이루어진 동영상을 생성하는 것도 가능하다.
이미지센서는 광학 영상(image)을 전기적 신호로 변환하는 장치로, 다수개의 광 다이오드(photo diode)가 집적된 칩으로 구성되며, 광 다이오드로는 픽셀(pixel)을 예로 들 수 있다. 렌즈를 통과한 광에 의해 칩에 맺힌 영상에 의해 각각의 픽셀들에 전하가 축적되며, 픽셀에 축적된 전하들은 전기적 신호(예를들어, 전압)로 변환된다. 이미지센서로는 CCD(Charge Coupled Device), CMOS(Complementary Metal Oxide Semiconductor) 등이 잘 알려져 있다.
영상처리부는 이미지센서로부터 출력된 아날로그 신호를 바탕으로 디지털 영상을 생성한다. 영상처리부는 아날로그 신호를 디지털 신호로 변환하는 AD컨버터와, AD컨버터로부터 출력된 디지털 신호에 따라 일시적으로 디지털 정보(digital data)를 기록하는 버퍼 메모리(buffer memory)와, 버퍼 메모리에 기록된 정보를 처리하여 디지털 영상을 구성하는 디지털 신호처리기(DSP:Digital Signal Processor)를 포함할 수 있다.
장애물 감지유닛(100)은 획득영상을 통해 패턴을 분석하여 패턴의 형태에 따라 장애물을 감지하고, 센서부(150)는 각 센서의 감지거리에 위치하는 장애물을 구비되는 센서를 통해 감지한다.
센서부(150)는 복수의 센서를 포함하여 장애물을 감지한다. 센서부(150)는 레이저, 초음파, 적외선 중 적어도 하나를 이용하여 본체(10)의 전방, 즉 주행방향의 장애물을 감지한다. 또한, 센서부(150)는 주행구역 내 바닥에 낭떠러지의 존재 여부를 감지하는 낭떠러지 감지센서를 더 포함할 수 있다. 센서부(150)는 송출되는 신호가 반사되어 입사되는 경우, 장애물의 존재 여부 또는 장애물까지의 거리에 대한 정보를 장애물 감지신호로써 제어부(110)로 입력한다.
영상획득부(170)는 이동 로봇이 동작하면, 연속적 영상을 촬영한다. 또한, 영상획득부(170)는 소정 주기로 영상을 촬영할 수 있다. 영상획득부(170)는 장애물 감지유닛(100)에 의해 장애물이 감지되지 않는, 주행 또는 청소상태에서도 영상을 촬영한다.
예를 들어 영상획득부(170)는 1회 촬영 후, 동일한 주행방향으로 이동하게 되면, 주행방향이 변경되지 않고 유지되는 동안 1회 촬영된 영상에 촬영된 장애물의 크기가 변화할 뿐 동일한 장애물이 촬영되므로, 주기적으로 영상을 촬영한다. 영상획득부(170)는 소정 시간 또는 소정 거리 단위로 영상을 촬영할 수 있다. 또한, 영상획득부(170)는 주행방향이 변경되는 경우, 새로운 영상을 촬영한다.
영상획득부(170)는 이동 로봇의 이동 속도에 따라 촬영 주기를 설정할 수 있다. 또한, 영상획득부(170)는 센서부에 의한 감지거리와 이동 로봇의 이동속도를 고려하여 촬영 주기를 설정할 수 있다.
영상획득부(170)는 본체가 주행하는 중에 촬영되는 영상을 영상데이터(182)로써 데이터부(180)에 저장한다.
한편, 장애물 감지유닛(100)은 주행 중에 주행방향에 위치하는 장애물을 감지하여 제어부로 감지신호를 입력한다. 장애물 감지유닛(100)은 감지되는 장애물의 위치 또는 그 움직임에 대한 정보를 제어부(110)로 입력한다. 패턴획득부(140)는 패턴 조사부에 의해 조사된 패턴이 포함된 영상을 감지신호로써 제어부로 입력하고, 센서부(150)는 구비되는 센서에 의해 감지되는 장애물에 대한 감지신호를 제어부로 입력한다.
제어부(110)는 주행영역(H) 중 지정된 주행구역 내에서, 이동 로봇이 주행하도록 주행부(250)를 제어한다.
제어부(110)는 주행 중, 주행부(250) 및 청소부(260)를 제어하여, 이동 로봇 주변의 먼지 또는 이물질을 흡수하도록 함으로써 주행구역에 대한 청소를 수행한다. 그에 따라 청소부(260)는 브러쉬를 동작시켜 이동 로봇 주변의 먼지 또는 이물질을 흡입하기 쉬운 상태로 만들고, 흡입장치를 동작시켜 먼지 또는 이물질을 흡입한다. 주행 중에 이물질을 흡입하여 청소를 수행하도록 청소부를 제어한다.
제어부(110)는 배터리의 충전용량을 체크하여 충전대로의 복귀 시기를 결정한다. 제어부(110)는 충전용량이 일정값에 도달하면, 수행중이던 동작을 중지하고, 충전대 복귀를 위해 충전대 탐색을 시작한다. 제어부(110)는 배터리의 충전용량에 대한 알림 및 충전대 복귀에 대한 알림을 출력할 수 있다.
제어부(110)는 조작부(160)의 조작에 의해 입력되는 데이터를 처리하여 이동 로봇의 동작모드를 설정하고, 동작상태를 출력부(190)를 통해 출력하며, 동작상태, 에러상태 또는 장애물 감지에 따른 경고음, 효과음, 음성안내가 스피커를 통해 출력되도록 한다.
또한, 제어부(110)는 영상획득부(170) 또는 장애물 감지유닛(100)로부터 감지되는 장애물에 대하여, 장애물을 인식하고, 장애물에 대응하여 복수의 대응모션중 어느 하나를 설정하여 수행되도록 한다.
제어부(110)는 영상획득부(170)에 의해 촬영되는 영상으로부터 장애물을 판단하고, 장애물 감지유닛(100)에 의해 장애물이 소정거리 내에 위치하는 것으로 감지되면, 장애물에 대한 대응모션을 설정하여 동작하도록 한다.
제어부(110)는 장애물 감지유닛(100)에 의해 장애물이 감지되기 전, 영상획득부(170)를 통해 촬영된 영상, 즉 영상데이터를 분석하여 영상데이터에 포함된 장애물을 판단할 수 있다. 제어부(110)는 자체 구비되는 데이터를 통해 장애물을 판단할 수 있고, 또한 통신부를 통해 서버 또는 단말로 영상데이터를 전송하여 장애물의 종류를 판단할 수 있다.
제어부(110)는 영상이 촬영된 후, 장애물 감지유닛(100)에 의해, 장애물이 소정 거리 내에 위치하는 것으로 감지되면, 감지신호를 해당 장애물의 종류에 따라 대응모션을 설정하는 센서부에 의해 해당 장애물이 감지되는 경우, 미리 인식된 장애물의 종류에 따라 본체가 지정된 동작을 수행하도록 한다.
제어부(110)는 장애물 감지유닛의 감지거리에 따라, 장애물이 감지되는 때에 장애물에 대응하는 동작이 수행되도록 할 수 있고, 또한, 장애물 감지유닛에 의해 장애물이 감지되더라도, 장애물이 지정된 거리 내에 위치하는 경우에 장애물에 대응하는 동작이 수행되도록 할 수 있다.
예를 들어 패턴획득부에 의한 감지신호로부터 장애물이 초기 감지되는 거리와, 초음파 센서에 의해 감지되는 거리가 상이한 경우 장애물에 대한 감지신호가 입력되는 시점이 상이해 진다. 그에 따라, 제어부(110)는 장애물을 감지할 수 있는 수단이 복수이거나, 또는 레이저센서와 같이 장애물을 감지할 수 있는 거리가 일정 거리 이상인 경우, 장애물 감지유닛(100)에 의해 감지되는 장애물까지의 거리를 바탕으로, 장애물이 지정된 거리, 예를 들어 30cm 에 위치하는 경우 복수의 대응모션 중 어느 하나가 수행되도록 한다.
제어부(110)는 장애물에 대한 감지신호를 바탕으로, 감지신호의 형태에 따라 복수의 대응모션 중 수행 가능한 대응모션을 선별하고, 영상데이터를 분석하여 영상에 포함된 장애물을 인식하여 그에 따라 어느 하나의 대응모션을 선택하여 본체의 동작을 제어한다.
예를 들어 제어부는 감지신호가 패턴에 포함된 영상인 경우 패턴의 형태에 따라 상이한 감지신호로써 판단할 수 있고, 감지신호, 즉 패턴의 형태에 따라 장애물을 구분할 수 있다.
제어부(110)는 영상을 통해 장애물을 인식하는 경우, 촬영된 영상에 대하여 소정 주기로, 장애물 감지유닛에 의해 감지신호가 입력되기 전, 수행할 수 있고, 또한, 장애물 감지신호가 입력되는 때에 판단할 수도 있다. 제어부(110)는 필요에 따라 서버(90) 또는 단말(80)로 데이터를 전송하여 장애물에 대한 데이터를 수신할 수 있다.
예를 들어 제어부(110)는 상이한 장애물, 문턱, 선풍기, 테이블에 대하여 동일한 감지신호가 입력되는 경우, 해당 감지신호에 대하여 동작 가능한 대응모션을 복수로 선별하고, 영상데이터를 통해 문턱, 선풍기, 테이블에 대하여 각각 대응모션을 설정하여 동작을 제어한다.
제어부(110)는 장애물인식부(111), 맵생성부(112), 주행제어부(113)를 포함한다.
맵생성부(112)는 초기 동작 시, 또는 청소영역에 대한 지도가 저장되어 있지 않은 경우, 청소영역을 주행하면서 장애물 정보를 바탕으로 청소영역에 대한 지도를 생성한다. 또한, 맵생성부(112)는 주행중 획득되는 장애물 정보를 바탕으로, 기 생성된 지도를 갱신한다.
맵생성부(112)는 주행 중 장애물인식부(111)를 획득되는 정보를 바탕으로 기초맵을 생성하고, 기초맵으로부터 영역을 구분하여 청소맵을 생성한다. 또한, 맵생성부(112)는 청소맵에 대하여 영역을 정리하고, 영역에 대한 속성을 설정하여 사용자맵과 가이드맵을 생성한다. 기초맵은, 주행을 통해 획득되는 청소영역의 형태가 외곽선으로 표시되는 지도이고, 청소맵은 기초맵에 영역이 구분된 지도이다. 기초맵과 청소맵에는 이동 로봇의 주행 가능한 영역과 장애물정보가 포함된다. 사용자맵은 청소맵의 영역을 단순화하고 외각선의 형태를 정리하여 가공한 것으로 시각적 효과를 가미한 지도이다. 가이드맵은 청소맵과 사용자맵이 중첩된 지도이다. 가이드맵에는 청소맵이 표시되므로, 이동 로봇이 실제 주행할 수 있는 영역을 바탕으로 청소명령이 입력될 수 있다.
맵생성부(112)는 기초맵 생성 후, 청소영역을 복수의 영역으로 구분하고, 복수의 영역을 연결하는 연결통로를 포함하며, 각 영역 내의 장애물에 대한 정보를 포함하여 지도를 생성한다. 맵생성부(112)는, 지도상의 영역 구분을 위해 소영역을 분리하여 대표영역을 설정하고, 분리된 소영역을 별도의 세부영역으로 설정하여 대표영역에 병합함으로써 영역이 구분된 지도를 생성한다.
맵생성부(112)는 구분된 각 영역에 대하여, 영역의 형태를 가공한다. 맵생성부(112)는 구분된 영역에 대하여 속성을 설정하고, 영역별 속성에 따라 영역의 형태를 가공한다.
장애물인식부(111)는 영상획득부(170) 또는 장애물 감지유닛(100)으로부터 입력되는 데이터를 통해 장애물을 판단하고, 맵생성부(112)는 주행구역에 대한 지도를 생성하고, 감지되는 장애물에 대한 정보가 지도에 포함되도록 한다. 또한, 주행제어부(113)는 장애물 정보에 대응하여 이동방향 또는 주행경로를 변경하여 장애물을 통과하거나 또는 장애물을 회피하여 주행하도록 주행부(250)를 제어한다.
주행제어부(113)는 주행부(250)를 제어하여 좌륜 구동모터와 우륜 구동모터의 작동을 독립적으로 제어함으로써 본체(10)가 직진 또는 회전하여 주행하도록 한다. 주행제어부(113)는 청소명령에 따라 주행부(250)와 청소부(260)를 제어하여 본체(10)가 청소영역을 주행하면서 이물질을 흡입하여 청소가 수행되도록 한다.
장애물인식부(111)는 장애물 감지유닛(100)으로부터 입력되는 데이터를 분석하여 장애물을 판단한다. 장애물인식부(111)는 장애물 감지유닛의 감지신호, 예를 들어 초음파 또는 레이저 등의 신호에 따라 장애물의 방향 또는 장애물까지의 거리를 산출하고, 또한, 패턴이 포함된 획득영상을 분석하여 패턴을 추출하고 패턴의 형태를 분석하여 장애물을 판단한다. 장애물인식부(111)는 초음파 또는 적외선 신호를 이용하는 경우 장애물과의 거리 또는 장애물의 위치에 따라 수신되는 초음파의 형태, 초음파가 수신되는 시간에 차이가 있으므로 이를 바탕으로 장애물을 판단한다.
또한, 장애물인식부(111)는 영상획득부(170)에 의해 장애물을 촬영한 영상데이터가 입력되면, 데이터부(180)에 저장한다. 영상획득부(170)는 전방의 장애물을 복수회 촬영하므로, 영상데이터 또한 복수개가 저장된다. 또한, 영상획득부(170)가 주행방향에 대한 영상을 연속 촬영하는 경우, 장애물인식부(111)는 입력되는 동영상을 영상데이터로써 저장하거나 또는 동영상을 프레임 단위로 구분하여 영상데이터로써 저장한다. 장애물인식부(111)는 동영상을 프레임 단위로 분석하여 불필요한 프레임, 즉 대상물이 흔들리거나 초점이 맞지 않는 프레임 또는 빈 프레임(장애물이 촬영되지 않은 프레임)은 제거하고, 소정 시간 단위로 프레임을 영상데이터로써 저장한다.
장애물인식부(111)는 복수의 영상데이터를 분석하여, 촬영된 대상, 즉 장애물을 인식할 수 있는지 여부를 판단한다. 이때 장애물인식부(111)는 영상데이터를 분석하여 영상데이터가 인식 가능한 것인지 아닌지 여부를 판단한다. 예를 들어, 장애물인식부(111)는 흔들린 영상, 초점이 맞지 않는 영상, 어두워서 장애물을 구분할 수 없는 영상을 분리하여 폐기한다.
장애물인식부(111)는 영상데이터를 분석하여 장애물의 특징으로 추출하고, 장애물의 형상(형태), 크기 및 색상 바탕으로 장애물을 판단하고 그 위치를 판단한다. 장애물인식부(111)는 기 촬영된 복수의 영상으로부터 장애물을 분석하고, 장애물이 지정거리에 위치하는 것으로 판단되는 시점을 기준으로 기 설정된 시간 이전에 촬영된 영상을 분석하여 장애물을 판단한다.
감지신호에 의해 장애물 판단 후 영상데이터를 통한 장애물 판단을 수행하는 것으로 기재하고 있으나, 그 순서에 한정되지 아니하고, 영상을 통한 장애물 판단을 수행한 후에 감지신호에 의한 장애물 판단은 수행할 수 있고, 또한, 동시에 수행 될 수 있다.
장애물에 지정거리 이내로 접근한 상태에서는 장애물의 일부만 촬영될 수 있으므로, 기 설정된 시간 이전에 촬영된, 즉 지정거리보다 먼 거리에서 촬영되어 장애물의 전체형상이 촬영된 영상을 이용하여 장애물을 판단한다. 장애물인식부(111)는 구체적인 장애물의 종류를 판단할 수 있고, 경우에 따라 형상과 크기만을 판단할 수도 있다.
장애물인식부(111)는 영상데이터로부터 영상의 배경을 제외하고, 기 저장된 장애물데이터를 바탕으로 장애물의 특징을 추출하여 장애물의 종류를 판단할 수 있다. 장애물데이터(181)는 서버로부터 수신되는 새로운 장애물데이터에 의해 갱신된다. 이동 로봇(1)은 감지되는 장애물에 대한 장애물데이터를 저장하고 그외 데이터에 대하여 서버로부터 장애물의 종류에 대한 데이터를 수신할 수 있다.
장애물인식부(111)는 영상을 구성하는 소정의 픽셀들에 대해 점, 선, 면 등의 특징을 검출 (feature detection)하고, 이렇게 검출된 특징을 바탕으로 장애물을 검출한다.
장애물인식부(111)는 장애물의 외곽선을 추출하여 그 형태를 바탕으로 장애물을 인식하여 그 종류를 판단한다. 장애물인식부(111)는 형태를 바탕으로, 장애물의 색상, 크기에 따라 장애물의 종류를 판단할 수 있다. 또한, 장애물인식부(111)는 장애물의 형태와 움직임을 바탕으로 장애물의 종류를 판단할 수 있다.
장애물인식부(111)는 장애물 정보를 바탕으로, 사람, 동물, 사물을 구분한다. 장애물인식부(111)는 장애물의 종류를, 일반장애물, 위험장애물, 생체장애물, 바닥장애물로 분류하고, 각 분류에 대하여 세부적인 장애물의 종류를 판단할 수 있다.
또한, 장애물인식부(111)는 인식 가능한 영상데이터를 통신부(280)를 통해 서버(90)로 전송하여 장애물의 종류를 판단하도록 한다. 통신부(280)는 적어도 하나의 영상데이터를 서버(90)로 전송한다.
서버(90)는 이동 로봇(1)으로부터 영상데이터가 수신되면, 영상데이터를 분석하여 촬영된 대상에 대한 외곽선 또는 형상을 추출하고, 기 저장된 장애물에 대한 데이터와 비교하여, 장애물의 종류를 판단한다. 서버(90)는 유사한 형태 또는 유사한 색상의 장애물을 우선 검색하고, 해당 영상데이터로부터 특징을 추출하여 비교함으로써, 장애물의 종류를 판단한다.
서버(90)는 장애물의 종류를 판단한 후, 장애물에 대한 데이터를 이동 로봇(1)으로 전송한다.
장애물인식부(111)는 통신부를 통해 서버로부터 수신되는 장애물에 대한 데이터를 장애물데이터로써 데이터부(180)에 저장한다. 장애물인식부(111)는 서버에 의해 장애물의 종류가 판단되면, 그에 대응하는 동작을 수행하도록 한다. 주행제어부(113)는 장애물의 종류에 대응하여 장애물을 회피하거나, 접근하거나 또는 통과하도록 주행부를 제어하고, 경우에 따라 소정의 효과음 또는 경고음, 음성안내가 스피커를 통해 출력되도록 한다.
장애물인식부(111)는 앞서 설명한 바와 같이, 영상데이터를 인식 가능한지 여부를 판단하고, 저장된 장애물데이터에 따라 영상데이터를 서버로 전송함으로써, 서버의 응답에 따라 장애물의 종류를 인식한다.
또한, 장애물 인식부는 복수의 장애물 중 선택된 장애물에 대하여, 장애물 인식을 위한 장애물데이터를 저장함으로써, 서버로 영상데이터를 전송하지 않더라도 장애물인식데이터를 바탕으로, 장애물을 인식할 수 있다.
제어부(110)는 데이터부(180)의 저장용량에 한계가 있으므로, 선택된 일부 장애물에 대한 정보를 장애물인식데이터로써 저장할 수 있다. 예를 들어 제어부(110)는 단말(80)을 통해 선택된 장애물, 또는 감지 횟수를 바탕으로 감지 횟수가 많은 장애물에 대하여 데이터부에 장애물인식데이터를 저장할 수 있다.
그에 따라 장애물인식부(111)는 청소영역에 존재하는 장애물, 반복적으로 감지되는 장애물에 대하여 데이터부에 저장함으로써, 장애물이 감지되면 즉시 그에 대응하는 동작을 수행할 수 있다.
주행제어부(113)는 영상데이터로부터 주행제어부(113)는 장애물의 종류가 인식되면, 장애물의 종류에 대응하여 주행부(250)를 제어하여, 본체(10)가 소정의 동작을 수행하도록 한다.
주행제어부(113)는 장애물 감지유닛(100)의 감지신호에 따라 장애물이 소정 거리 내에 위치하는 것으로 판단되면, 감지신호의 종류 또는 형태에 따라 실행 가능한 대응모션에 대하여, 영상데이터를 바탕으로 판단되는 장애물의 종류, 형태 크기에 따라 복수의 대응모션 중 어느 하나를 설정하여 동작을 수행한다.
주행제어부(113)는 장애물인식부(111)로부터 인식되는 장애물에 대응하여, 주행 가능 여부 또는 진입가능 여부를 판단하여 장애물에 접근하여 주행하거나, 장애물을 통과하거나, 또는 장애물을 회피하도록 주행경로/청소경로를 설정하여 주행부(250)를 제어한다.
예를 들어, 주행제어부(113)는 장애물에 대응하여, 본체(10)가 정지, 감속, 가속, 역주행, 유턴, 주행방향을 변경하도록 하며, 장애물에 대하여 일정거리 이상 접근하지 않도록 하고, 일정시간 대기하도록 할 수 있다. 또한, 주행제어부(113)는 장애물에 따라 지정된 소리가 스피커를 통해 출력되도록 하며, 지정된 동작과 함께 소리가 출력되도록 할 수 있다.
주행제어부(113)는 장애물 감지유닛(100)을 통해 장애물이 지정된 거리 내에 위치하는 경우, 감지신호에 따라 회피, 접근, 접근거리에 대한 설정, 그리고 정지, 감속, 가속, 역주행, 유턴, 주행방향 변경과 같은 복수의 대응모션을 설정하고, 기 촬영된 영상데이터로부터 판단되는 장애물에 따라 어느 하나의 대응모션을 설정하여 주행부를 제어한다.
즉 주행제어부(113)는 입력되는 감지신호에 따라 복수의 대응모션을 설정하되, 기 촬영된, 감지신호가 입력되기 이전 시간의 영상데이터로부터 판단되는 장애물에 대응하여 복수의 대응모션 중 어느 하나의 대응모션이 수행되되도록 주행부를 제어한다. 주행제어부(113)는 영상데이터를 통해 장애물의 종류가 구체적으로 판단되는 경우 장애물의 종류에 따라 대응모션을 설정하고, 정확한 종류를 판단할 수 없는 경우라도, 장애물의 형상 또는 크기에 따라 대응모션을 설정할 수 있다. 예를 들어 구체적인 종류는 알 수 없으나, 바닥면으로부터 일정 크기 이상의 공간, 즉 이동 로봇이 통관 가능한 높이와 폭의 공간, 이 존재하는 경우 본체가 장애물을 통과하도록 설정할 수 있다.
주행제어부(113)는 주행중에 발생되는 다양한 상황에 대하여 위험상황을 구분하여, 위험상황이 발생하는 시점을 기준으로 그 이전에 촬영된 영상데이터를 서버로 전송하여 위험상황을 방지하거나 대비할 수 있도록 장애물 정보를 요청할 수 있다.
예를 들어, 주행제어부(113)는 소정 장애물 진입 후, 장애물에 의해 구속 상황이 발생하는 경우, 구속 상황으로 판단된 시점을 기준으로 이전의 일정시간 동안 촬영된 영상 또는 일정거리 이동하는 동안 촬영된 적어도 하나의 영상데이터를 서버로 전송할 수 있다. 주행제어부(113)는 일정시간 동안의 이동거리가 설정거리 미만이면 구속상황인 것으로 판단할 수 있다.
구속 상황이란, 본체의 이동이 구속된 것으로, 장애물에 의해 소정 거리 이상의 이동이 불가능하여 이동이 제한된 상태를 의미한다.
또한, 주행제어부(113)는 주행 중에, 특정 물건이 본체 또는 본체의 전방에 낙하하는 위험상황이 발생하는 경우, 그 이전에 촬영된 영상데이터를 서버로 전송할 수 있다. 예를 들어 주행 중 장애물과의 충돌로 화병 등이 낙하하는 경우가 발생될 수 있다.
주행제어부(113)는 에러를 출력하고, 필요에 따라 소정의 경고음 또는 음성안내를 출력할 수 있다.
주행제어부(113)는 위험상황이 발생되면, 서버로 전송된 영상데이터를 기반으로 생성되는 장애물 정보를 수신하여 데이터부의 장애물 정보를 갱신하고, 해당 장애물에 대하여 위험상황이 발생한 원인이 되는 장애물인 것으로 판단하여 이후 회피하여 주행하도록 한다.
서버(90)는 수신되는 일정시간 또는 일정 이동거리에 대한 복수의 영상데이터를 분석하여 위험상황의 원인이 되는 장애물을 판단하고, 해당 장애물에 대하여 인식 모델을 생성하고 접근 또는 진입하지 않도록 대응모션을 설정하여 그에 대한 장애물 정보를 갱신하여 이동 로봇(1)으로 전송한다.
서버(90)는 구속상황이 발생되는 원인이 되는 장애물을 판단하고, 해당 장애물에 진입하지 않고 회피하도록 해당 장애물의 특징과 그에 대한 대응모션이 포함된 장애물 정보를 설정하여 이동 로봇으로 전송할 수 있다. 또한, 서버(90)는 장애물 충돌 시 화병의 낙하가 발생한 경우, 영상을 분석하여 화병에 올려진 장애물을 판단하고 해당 장애물에는 접근하지 않도록 대응모션을 설정하여 장애물 정보를 생성할 수 있다.
주행제어부(113)는 서버로부터 수신된, 구속상황에 대한 대응모션에 따라 해당 장애물을 회피하여 주행할 수 있다. 감지된 장애물에서 구속상황이 발생한 경우, 주행제어부(113)는 해당 장애물에 일정거리 접근한 후 회피하거나, 감지한 즉시 주행방향을 변경하여 회피하도록 주행부를 제어할 수 있다.
도 7 은 본 발명의 일실시예에 따른 이동 로봇 및 장애물 인식을 위한 기기간의 신호 흐름을 설명하는데 참조되는 도이다.
도 7에 도시된 바와 같이, 이동 로봇(1)은 주행구역을 주행하면서 청소를 수행한다.
이동 로봇(1)은 주행 중 영상을 촬영하고, 영상을 영상데이터로 저장한다.
이동 로봇(1)은 주행 중에 소정시간 또는 소정 이동거리 간격으로 지속적으로 영상을 촬영한다.
이동 로봇(1)은 장애물 감지 여부에 관계없이 영상을 촬영하고 영상으로부터 주행방향에 위치하는 장애물을 인식할 수 있다.
제어부(110)는 영상을 통해 장애물을 판단하는 경우, 저장된 장애물 정보를 바탕으로 영상을 분석하여 장애물을 판단한다(S1).
제어부(110)는 영상데이터를 저장하고, 장애물 감지유닛에 의해 장애물이 감지되면, 장애물이 지정 거리 내에 위치하는 경우 기 촬영된 영상데이터를 분석하여 배경을 제거하고 특징을 추출한다. 장애물인식부(111)는 장애물에 대한 형상(형태), 크기, 종류를 판단할 수 있다. 경우에 따라 제어부(110)는 장애물 감지유닛(100)에 의해 감지신호가 입력되기 전, 소정 단위로 영상데이터를 분석하여 필터링하고 특징으로 추출하여, 장애물의 형상, 크기, 또는 종류를 판단할 수 있다.
이동 로봇(1)은 영상으로부터 인식된 장애물에 대하여, 소정 거리 내에 장애물이 위치하는 것으로 감지되는 경우, 영상으로 통해 기 인식된 장애물의 종류에 따라 장애물을 회피하여 주행할 수 있다.
장애물에 대한 판단이 완료된 상태에서 장애물 감지유닛(100)에 의해 감지신호가 입력되면, 제어부는 감지신호와 영상을 통한 장애물 판단을 근거로 장애물에 대한 대응모션을 설정하여 지정된 동작을 수행한다.
한편, 제어부(1110)는 복수의 영상데이터는 서버로 전송하여, 서버로 장애물 판단을 요청할 수 있다. 서버로부터 장애물에 대한 데이터가 수신되면 장애물 정보(S16)를 저장하고, 그에 따라 장애물을 판단한다.
제어부(110)는 장애물 감지유닛(100)의 감지신호와 영상을 통한 장애물 판단을 바탕으로 대응모션을 설정하고 그에 따라 동작한다.
또한, 이동 로봇(1)은 영상데이터를 서버(90) 또는 단말(80)로 전송하여 장애물 확인을 요청할 수 있다(S2).
서버(90)는 영상데이터를 분석하여 장애물에 대한 특징을 추출하여, 형태를 바탕으로 장애물의 종류를 판단한다. 서버(90)는 누적되는 장애물에 대한 데이터를 데이터베이스에 저장하여 장애물 판단에 활용한다.
또한, 서버(90)는 영상으로부터 새로운 장애물을 인식하면, 새로운 장애물에 대한 인식 모델을 생성하고 장애물 정보를 갱신한다. 인식 모델이란, 영상으로부터 장애물의 종류를 판단할 수 있도록 장애물의 특징, 발생하는 환경 등에 대한 정보를 포함한다. 또한, 인식 모델은 해당 장애물에 대한 대응동작을 설정하는 것으로, 유사한 장애물에 대한 영상이 수신되면 기 생성된 장애물 모델을 바탕으로 특징을 분석하여 장애물의 종류를 판단하고 그에 대한 대응동작을 회피동작으로써 설정할 수 있다. 예를 들어 특정 장애물을 감지하면 해당 장애물에 접근하지 않고 즉시 회피할지, 또는 일정거리 접근한 후 회피할지, 소정의 경고음을 출력할지 여부에 대하여 대응모션을 설정할 수 있다.
단말(80)은 이동 로봇(1)이 서버에 접속할 수 없는 경우 이동 로봇으로부터 수신된 영상데이터를 서버로 전송할 수 있다. 또한, 단말(80)은 수신된 영상데이터를 바탕으로 장애물의 종류를 판단할 수 있고, 사용자 입력을 통해 장애물의 종류를 판단할 수 있다.
서버(90) 또는 단말(80)은 이동 로봇의 요청 대응하여, 장애물의 종류에 대한 데이터를 이동 로봇(1)으로 전송한다(S3). 또한, 서버(90) 또는 단말(80)은 장애물의 종류에 대응하는 회피동작에 대한 데이터를 이동 로봇(1)으로 전송할 수 있다.
이동 로봇(1)은 수신되는 데이터에 따라 장애물의 종류를 판단하고, 그에 대응하여 회피 동작을 수행한다. 회피 동작 또한, 서버 또는 단말로부터 설정될 수 있고, 경우에 따라 복수의 동작 중 어느 하나를 선택하여 동작할 수 있다. 필요에 따라 단말을 통해 복수의 동작 중 어느 하나가 선택입력될 수 있다.
도 8 은 본 발명의 일실시예에 따른 이동 로봇의 장애물 인식을 위한 영상 전송을 설명하는데 참조되는 도이다.
이동 로봇(1)은 주행 중에 영상획득부(170)를 통해 복수의 영상을 촬영한다. 제어부(110)는 장애물 감지유닛을 통해 장애물이 감지되지 않더라고 주행중에 영상이 촬영되도록 한다.
도 8에 도시된 바와 같이, 이동 로봇(1)은, 주행 중 복수의 영상(301 내지 304)을 촬영한다. 이동 로봇(1)은 소정 시간 간격으로 촬영되는 영상을 영상데이터로써 저장하고, 영상데이터를 서버(90)로 전송하여 장애물에 대한 정보를 요청할 수 있다.
이동 로봇(1)은 정지영상으로 영상을 주기적으로 촬영할 수 있고, 또한 연속 촬영을 통해 동영상으로 촬영할 수 있다. 영상획득부(170)는 촬영되는 영상을 복수의 영상데이터(301 내지 304)로 데이터부에 저장한다.
영상획득부(170)에 구비되는 영상처리부는 촬영된 영상을 필터링하여 일정시간 또는 일정 이동거리 간격으로 영상데이터가 저장되도록 하고, 동영상이 촬영되는 경우 프레임 단위로 분석하여 불필요한 프레임은 제거한 후 영상데이터를 저장한다.
이동 로봇(1)은 주행하는 중에 촬영된 영상데이터를 시간의 순서에 따라 서버로 전송할 수 있고, 복수의 영상데이터 중, 일부를 선택적으로 전송할 수 있다.
예를 들어 이동 로봇(1)은 영상으로부터 주행방향의 장애물을 인식하면, 해당 영상데이터를 서버로 전송할 수 있다.
서버(90)는 장애물의 종류를 분석하여 장애물정보를 이동 로봇(1)으로 전송하고, 이동 로봇(1)은 수신되는 장애물 정보에 대응하여 장애물에 대한 회피동작을 수행한다. 회피동작이란, 장애물의 종류에 대응하여 접근 후 주행방향을 변경하여 회피하거나 또는 지정된 거리까지만 접근한 후 회피할 수 있고, 장애물이 감지된 즉시 회피하여 주행할 수도 있다. 또한, 이동 로봇(1)은 장애물의 종류에 대응하여 소정의 경고음, 효과음, 음성안내를 출력할 수 있고, 소정 시간 정지 후 다시 주행할 수도 있다.
또한, 이동 로봇(1)은 설정 시간 내에 동일한 영상이 반복적으로 촬영되는 경우, 일정 시간 내에 촬영된 복수의 영상데이터를 서버로 전송할 수 있다.
예를 들어 이동 로봇(1)은 의자 또는 탁자 밑에 구속되어 이동이 불가능한 경우 에러를 출력하고, 또한 일정시간 내에 촬영된 영상데이터 또는 일정거리 이동하는 동안 촬영된 영상데이터를 서버로 전송하여 장애물에 대한 정보를 수신함으로써 현재의 구속상황을 판단할 수 있다. 이동 로봇(1)은 구속상황으로 인하여 이동이 불가능한 것으로 판단하고 그에 따른 에러를 출력할 수 있다.
한편, 서버(90)는 수신되는 영상데이터를 분석하여 이동 로봇의 구속상황에 대한 인식모델을 생성할 수 있다.
서버(90)는 이동 로봇이 구속된 위치뿐 아니라, 이동 로봇이 일정거리 또는 일정시간 동안 촬영한 복수의 영상데이터를 분석하여 구속상황이 발생하기 전의 영상을 분석하고, 영상을 통해 이동 로봇이 해당 장애물을 회피할 수 있도록 인식모델을 생성한다. 서버(90)는 생성된 인식모델을 기반으로 장애물 정보를 생성하여 이동 로봇으로 전송한다.
서버(90)는 구속상황이 발생된 주변의 장애물에 대한 정보, 구속상황이 발생하기 전의 주변의 장애물에 대한 정보를 바탕으로 구속상황의 원인을 분석할 수 있다. 서버(90)는 해당 장애물과 유사한 형태와 크기의 장애물에 대하여 구속상황이 발생할 수 있는 것으로 판단하여 구속상황에 대한 대응모션을 추가 설정하여 장애물 정보를 갱신할 수 있다.
이동 로봇(1)은 서버로부터 수신되는 장애물 정보에 대응하여 구속상황이 발생했던 장애물에 대하여 접근 전에 회피하여 주행하여 구속상황이 발생하지 않도록 한다.
또한, 서버(90)는 구속상황이 발생했던 장애물에 대한 분석하여 통계를 산출하고, 구속상황이 발생할 수 있는 장애물에 대한 후보군을 지정하여 경고가 출력되도록 할 수 있다.
예를 들어 테이블에 대한 복수의 영상데이터를 분석하여 구속상황이 발생한 테이블의 영상과, 구속상황이 발생하지 않은 테이블의 영상을 분류하고 상호 비교 분석하여, 장애물의 종류가 테이블인 경우 구속상황이 발생하게 되는 장애물의 특징을 추출하여 구속상황에 대한 후보군을 지정할 수 있다.
예를 들어 테이블의 높이가 20cm 이하인 경우, 테이블 다리의 간격이 35cm 이하인 경우, 테이블 밑에 다른 장애물이 존재하는 경우, 테이블의 다리가 5개 이상인 경우 등으로 특징으로 추출하여 구속상황에 대한 후보군을 설정할 수 있다. 서버는 해당 후보군에 대하여 구속상황에 대한 대응모션을 지정할 수 있다.
필요에 따라, 서버는 구속상황이 발생하지는 않았으나, 다른 유사한 형태의 장애물에서 구속상황이 발생한 경우, 구속상황이 발생할 수 있는 장애물에 대한 후보군을 생성하여 해당 장애물을 회피하도록 대응모션을 설정할 수 있다. 또한, 서버는 해당 장애물에 진입하되 진입하기 전에 경고음 또는 음성안내를 출력하고 일정 시간 대기 후, 진입하도록 대응모션을 설정할 수도 있다.
그에 따라 이동 로봇(1)은 구속상황이 발생했던 장애물에 대하여, 해당 장애물을 감지하면 일정거리 접근 후, 또는 감지한 즉시 주행방향을 변경하여 회피주행을 수행한다. 이동 로봇(1)은 장애물 회피 시 그에 대한 음성안내를 출력할 수 있다. 예를 들어 이동 로봇(1)은 '구속상황이 발생하는 장애물을 회피하여 주행합니다.'와 같은 음성안내를 출력할 수 있다.
또한, 이동 로봇(1)은 수신된 장애물 정보를 바탕으로 구속상황이 발생한 장애물과 유사한 장애물을 감지하는 경우, 일시 정지한 상태에서 '계속 주행 시, 구속상황이 발생할 수 있습니다.'와 같은 음성안내를 출력한 후 주행할 수 있다. 이동 로봇은 음성안내 후, 사용자에 의해 소정의 명령이 입력되는 경우 그에 대응하여 계속 주행하거나 또는 주행방향을 변경하여 주행할 수 있다.
또한, 이동 로봇(1)은 주행 중, 물체의 낙하가 발생하는 경우, 위험상황으로 판단하여 그 이전에 촬영된 복수의 영상데이터를 서버로 전송할 수 있다.
서버(90)는 복수의 영상데이터를 분석하여 물체의 낙하를 발생시키는 원인이 되는 장애물을 판단하고, 해당 장애물에 대한 특징으로 추출한 후, 대응모션을 설정하여 장애물 정보를 생성할 수 있다.
예를 들어 탁자 위에 화병에 놓인 상태에서, 이동 로봇이 탁자에 충돌하는 경우 화병이 추락할 수 있다. 서버는 화병이 놓인 탁자에 대한 새로운 인식모델을 생성하고, 그에 대하여 일정거리 이상 접근하지 않도록 대응모션을 생성하여 장애물 정보를 이동 로봇으로 전송할 수 있다.
그에 따라 이동 로봇(1)은 화병이 놓인 탁자를 감지하는 경우 일정거리 이상 접근하지 않고 회피하여 주행할 수 있다.
도 9 는 본 발명의 일실시예에 따른 이동 로봇의 영상을 통한 구속상황판단방법을 설명하는데 참조되는 도이다.
도 9에 도시된 바와 같이, 이동 로봇(1)은 소정 시간 간격으로 영상(311 내지 315)을 촬영하고, 복수의 영상데이터를 저장한다. 이동 로봇(1)은 영상데이터를 시간정보와 함께 저장할 수 있다.
영상획득부(170)는 영상을 연속하여 촬영하거나, 또는 소정 주기에 따라 반복하여 촬영할 수 있다. 이동 로봇(1)이 일정거리 이동하면, 장애물에 가까워짐에 따라 장애물이 확대된 형태로 촬영된다.
이동 로봇(1)은 촬영된 영상을 분석하여 장애물을 인식할 수 있고, 또한, 서버(90)로 전송하여 장애물 정보를 수신할 수 있다.
이동 로봇(1)은 주행 중, 소정 시간 또는 소정 이동거리 간격으로 영상획득부(170)를 통해 제 0 시간(t0), 제 11 시간(t11), 제 12 시간(t12), 제 13시간(t13), 제 14 시간(t14)에 각각 제 1 내지 제 5 영상(311 내지 315)을 촬영하여 저장한다. 예를 들어 이동 로봇(1)은 10cm 이동거리마다 영상을 촬영할 수 있다. 또한, 이동 로봇(1)은 주행 중, 10초 간격으로 영상을 촬영할 수 있다.
이동 로봇(1)은 주행 중, 일정 시간 동안 이동한 거리가 설정거리 미만인 경우, 구속상황으로 판단할 수 있다. 예들 들어 이동 로봇(1)은 일정 시간 동안 5cm 이상 이동하지 못한 경우 구속상황으로 판단할 수 있다.
이동 로봇(1)은 구속상황으로 판단되는 경우, 구속상황으로 판단한 시점(P11)으로부터 일정시간 이전, 또는 일정 이동거리 이전에 촬영된 영상데이터를 서버(90)로 전송한다.
이동 로봇(1)은 이동거리를 기준으로, 일정 이동거리 이전에 촬영된 영상, 제 12 영상 내지 제 14 영상(312 내지 314)을 서버(90)로 전송할 수 있다. 또한, 이동 로봇(1)은 제 11 시간(t11) 내지 제 13 시간(t13) 동안의 영상, 즉 제 12 내지 제14 영상(312 내지 314)을 서버(90)로 전송할 수 있다.
또한, 이동 로봇(1)은 단말 등으로 영상데이터와 에러정보를 전송하여, 구속상황에 따른 에러와 현재 위치에 대한 정보를 단말을 통해 출력되도록 할 수 있다.
서버(90)는 각 영상으로부터 장애물을 인식하고, 구속상황이 발생하게 된 원인이 되는 장애물을 분석하여, 해당 장애물에 접근 또는 진입하지 않도록 인식모델을 생성할 수 있다. 서버(90)는 해당 장애물에 대한 특징을 분석하여 유사한 장애물에 대하여 동일한 인식모델이 적용되도록 한다.
서버(90)는 도시된 바와 같이, 테이블 밑에서 구속상황이 발생하는 경우, 해당 테이블을 감지하고, 테이블 밑으로 진입하지 않도록 하는 대응모션이 설정된 인식모델을 생성한다. 서버(90)는 해당 테이블에 대한 장애물 정보가 기 생성되어 있는 경우, 구속상황에 대한 정보를 추가하여 인식 모델을 다시 생성할 수 있다.
이동 로봇은 새로운 장애물 정보, 또는 기 저장된 장애물 정보를 갱신하여 구속상황이 발생하지 않도록 장애물을 회피하여 주행한다. 또한, 기 저장된 지도(맵)에 구속발생위치를 설정할 수 있다.
그에 따라 이동 로봇(1)은 다음 주행 시, 제 12 영상(312)과 같이 영상이 촬영되면, 영상을 통해 테이블을 감지하고, 해당 테이블에 대한 대응모션에 따라 테이블로 진입하지 않고 일정거리 접근 후 회피하여 주행할 수 있다. 이동 로봇(1)은 필요에 따라 회피주행 시, 구속상황에 대한 음성안내를 출력할 수 있다.
또한, 이동 로봇(1)은 테이블과 유사한 형태의 장애물이 감지되면 동일하게 회피하여 주행할 수 있다.
도 10 은 본 발명의 일실시예에 따른 이동 로봇의 제어방법을 설명하는데 참조되는 순서도이다.
도 10에 도시된 바와 같이, 이동 로봇(1)은 주행 중(S450), 주기적으로 주행방향에 대한 영상을 촬영하여 영상정보를 획득한다(S460). 영상획득부(170)는 영상을 촬영하여 영상을 처리하고 인식가능한 영상데이터로써 데이터부에 저장한다.
장애물 감지유닛(100)은 주행 중, 주행방향에 위치하는 장애물을 감지하여 소정의 감지신호를 장애물인식부로 인가한다. 패턴 조사부(120, 130)는 소정 형태의 패턴을 주행방향에 조사하고, 해당 패턴을 패턴획득부(140)를 통해 촬영하여 장애물인식부(111)로 입력한다.
장애물인식부(111)는 영상획득부(170)로부터 입력되는 영상을 분석하여 특징을 추출하고, 데이터부(180)에 기 저장된 장애물데이터를 바탕으로 촬영된 장애물의 종류를 판단한다(S470).
또한, 제어부(110)는 영상데이터를 서버로 전송하여 장애물 정보를 요청할 수 있다. 제어부(110)는 서버로부터 수신되는 데이터를 바탕으로 영상에 촬영된 장애물에 대한 종류를 판단한다. 제어부(110)는 장애물정보로부터 장애물의 종류는 물론 장애물에 대하여 수행 가능한 적어도 대응모션에 대한 정보를 수신하여 설정할 수 있다.
장애물인식부(111)는 기 판단된 장애물에 대하여, 장애물 감지유닛(100)에 의해 해당 장애물이 소정 거리 내에 위치하는지 여부를 감지한다(S480).
주행제어부(113)는 장애물인식부(111)에 소정 거리 내에 위치하면, 영상으로부터 미리 인식된 장애물인 것으로 판단하고(S490), 해당 장애물의 종류에 대응하여 복수의 대응모션 중 어느 하나의 대응모션을 설정하여 장애물을 회피하도록 주행부(250)를 제어한다(S500).
주행제어부(113)는 기 판단된 장애물의 종류에 대응하여 장애물에 대하여, 접근, 진입, 통과, 회피 중 어느 적어도 하나의 조합으로 구성된 대응모션을 수행할 수 있다. 또한, 제어부(110)는 출력부(190)를 통해 소정의 경고음, 효과음, 음성안내를 출력할 수 있다.
주행제어부(113)는 감지된 장애물에 대하여 진입하도록 대응모션이 설정된 경우, 본체가 계속 주행하도록 주행부(250)를 제어한다.
예를 들어 테이블이 감지되면, 주행제어부(113)는 본체가 테이블에 근접한 후 주행방향을 변경하도록 할 수 있고, 또한 테이블 밑으로 진입하여 주행을 계속하도록 할 수 있다.
장애물인식부(111)는 주행 중 촬영되는 영상을 지속적으로 분석하여 장애물의 종류를 판단하고, 장애물 감지유닛(100)에 의해 장애물이 소정 거리 내에서 감지되면 주행제어부(113)는 해당 장애물에 대한 대응모션을 설정하여 주행부를 제어한다.
또한, 제어부(110)는 영상데이터를 서버(90)로 전송하여 장애물에 대한 정보를 요청한다(S510).
서버(90)는 복수의 이동 로봇으로부터 수신되는 영상데이터를 분석하여 장애물의 종류를 판단하고, 기 판단된 장애물에 대한 정보를 갱신하며 새로운 장애물에 대한 인식모델을 생성한다. 서버(90)는 이동 로봇의 요청에 따라 새로 생성된 인식모델을 바탕으로 하는 장애물 정보 또는 갱신된 장애물 정보를 이동 로봇으로 전송한다.
이동 로봇(1)은 서버로부터 수신되는 데이터를 저장하고, 기 저장된 장애물 정보를 갱신한다. 이동 로봇(1)은 새로운 데이터를 바탕으로 장애물을 판단하고, 또한, 서버로 전송하여 장애물의 정보를 확인할 수 있다.
이동 로봇(1)은 기 인식된 장애물에서 구속상황이 발생하는 경우 구속상황을 기준으로 이전에 촬영된 복수의 영상데이터를 서버로 전송하여 구속상황에 대한 새로운 정보를 요청할 수 있다.
서버(90)는 복수의 영상데이터를 분석하여 구속상황이 발생되기 전, 주변의 장애물을 판단하고, 구속상황의 원인이 되는 장애물을 구분하여 그에 대한 대응모션을 설정할 수 있다.
서버(90)는 구속상황이 발생한 장애물에 대한 인식모델을 신규 생성하고, 그에 대응모션을 새로 설정하여, 장애물 정보로써 이동 로봇으로 전송할 수 있다.
그에 따라 이동 로봇(1)은 기 저장된 데이터를 변경하여 새로운 장애물 정보에 따라 장애물에 대한 대응모션을 수행할 수 있다. 또한, 이동 로봇은 구속상황 발생 시, 해당 위치에 구속상황이 발생되었음을 표시하고, 필요에 따라 가상벽을 설정할 수 있다.
이동 로봇(1)은 주행 중 영상으로부터 인식된 장애물이 구속상황이 발생했던 장애물인 경우, 장애물 감지유닛(100)에 해당 장애물이 감지되는 때에 설정된 대응모션에 따라 해당 장애물을 회피하여 주행할 수 있다.
도 11은 본 발명의 일실시예에 따른 이동 로봇의 에러판단방법을 설명하는데 참조되는 순서도이다.
도 11에 도시된 바와 같이, 주행 중(S550), 이동 로봇(1)은 영상획득부(170)를 통해 주기적으로 주행방향에 대한 영상을 촬영한다(S560). 영상획득부는 일정기간 간격 또는 일정거리 간격으로 영상을 촬영하여 영상데이터를 저장한다.
이동 로봇(1)은 촬영된 영상데이터로부터 장애물을 인식하여 장애물의 종류를 판단한다. 영상획득부(170)는 주행 중에 촬영되는 영상데이터를 저장하고, 제어부는 소정 주기에 따라 영상데이터를 분석하여 장애물을 판단하거나 또는 장애물이 지정거리에 위치하는 것으로 장애물 감지유닛(100)에 의해 감지되면 기 촬영된 영상데이터를 이용하여 장애물을 판단할 수 있다. 또한, 제어부(110)는 영상데이터를 서버로 전송하여 장애물 정보를 수신하고, 장애물 정보를 바탕으로, 촬영된 장애물의 종류를 판단할 수 있다.
제어부는 영상데이터를 통해 장애물의 종류, 형태, 크기 등에 대한 정보를 판단하므로, 주행중 장애물 감지유닛에 의해 장애물이 소정 거리 내에 위치하는 것으로 감지되면 그에 대응하여 대응모션이 수행되도록 주행부를 제어한다.
예를 들어 제어부(110)는 테이블에 대하여, 장애물에 대한 감지신호가 입력되면, 접근 후 회피, 진입의 두 가지 대응모션을 선별하고, 영상데이터를 분석하여 탁자 밑으로 진입 가능한지 여부에 따라 어느 하나의 대응모션을 결정하여 동작할 수 있다.
또한, 주행제어부(113)는 주행 중, 주행부의 바퀴의 회전횟수, 또는 이동속도를 바탕으로 이동거리를 산출한다.
주행제어부(113)는 이동거리를 기준으로 영상을 촬영하는 경우 설정된 제 1 이동거리를 이동하는 경우(S570), 제 1 이동거리 단위로 영상획득부(170)가 영상을 촬영하도록 제어명령을 인가할 수 있다. 또한, 주행제어부(113)는 이동시간을 기준으로, 일정시간 이동한 경우 영상획득부(170)를 제어할 수 있다.
주행제어부(113)는 주행 중, 소정 시간, 즉 제 1 시간 동안의 이동거리가 설정거리(제 2 이동거리) 미만인지 여부를 판단한다(S580).
주행제어부(113)는 제 1 시간 동안의 이동거리가 제 2 이동거리 미만인 경우, 정상적인 주행이 이루어지지 못하였으므로, 에러로 판단한다. 주행제어부(113)는 주변의 장애물로 인하여 이동하지 못한 것으로 판단하여 구속상황으로 판단할 수 있다(S590).
이때, 본체가 장애물에 진입한 이후, 주행제어부(113)는 시간당 이동거리를 바탕으로 본체가 구속된 상태인지 여부를 판단할 수 있다. 예를 들어 테이블이 너무 낮거나, 테이블의 다리 간격이 좁은 경우, 테이블 밑에 다른 종류의 장애물이 존재하는 경우 본체가 정상적으로 주행할 수 없는 구속상황이 발생할 수 있다.
주행제어부(113)는 설정된 시간 동안, 이동한 거리가 설정거리 미만이면, 주행제어부(113)는 본체가 구속된 상태인 것으로 판단할 수 있다. 주행제어부(113)는 장애물의 종류에 대응하여 회피주행을 수행한다.
주행제어부(113)는 구속상황으로 판단되면, 이전 일정시간 동안 또는 일정거리 동안의 복수의 영상데이터를 데이터부로부터 호출하여 통신부를 통해 서버(90)로 전송한다(S600). 이동 로봇(1)은 제 1 시간 동안 이동한 거리가 제 2 이동거리 미만이므로, 구속상황이 발생하기 이전의 영상데이터를 포함하여 서버로 전송하게 된다.
서버(90)는 수신되는 복수의 영상을 분석하고, 다른 이동 로봇으로부터 수신되는 영상데이터를 분석하여 장애물의 종류를 분류하고, 장애물의 종류에 따라 필요한 정보를 산출하여 대응모션을 각각 설정할 수 있다.
서버(90)에 의해 영상 분석 및, 복수의 영상데이터를 통한 학습이 진행됨에 따라 테이블이라 하더라도 테이블의 형태, 크기 등에 따라 상이한 대응모션을 수행하도록 인식 모델이 각각 생성되어, 그에 따라 장애물 정보가 신규생성되거나 기 저장된 장애물 정보가 갱신될 수 있다. 서버는 이동 로봇이 실행 가능한 대응모션을 복수로 설정하여 장애물 정보를 제공함으로써 이동 로봇에 의해 어느 하나의 대응모션을 수행하도록 할 수 있다.
제어부(110)는 통신부를 통해 서버로부터 수신되는 장애물 정보를 데이터부에 저장한다(S610).
이동 로봇은 수신되는 데이터를 바탕으로 구속상황을 회피 또는 탈출하여 주행할 수 있다(S620). 제어부는 탈출이 불가능한 경우 에러를 출력하고, 경고음이 출력되도록 한다. 또한, 제어부는 현재 위치와 기 촬영된 영상을 단말로 전송하여 사용자로 하여금 본체의 구속상황이 해제되도록 할 수 있다.
장애물인식부는 테이블이 촬영되는 경우, 기 저장된 장애물 정보를 바탕으로 영상을 통해, 구속상황이 발생된 테이블을 감지할 수 있다.
주행제어부는 장애물이 소정 거리 내에 위치하는 것으로 판단되면, 변경된 장애물 정보를 바탕으로 장애물인 테이블을 회피하여 주행하도록 한다.
즉, 본체는 초기 감지 시, 진입하도록 대응모션을 설정하여 수행한 후, 구속상황이 발생된 경우, 다음 감지시에는 해당 장애물에 대하여 접근 후 회피 또는 회피 중 어느 하나로 대응모션을 설정하여 회피 또는 탈출하여 주행하도록 할 수 있다.
종류가 동일한 탁자라도, 그 크기가 상이하고, 탁자 밑의 공간의 크기가 상이하며, 이동 로봇의 크기 또한 상이할 수 있으므로 이동 로봇의 진입 가능 여부가 상이하므로, 제어부는 장애물 감지유닛(100)의 감지신호를 바탕으로 복수의 대응모션, 예를 들어 접근 후 회피하거나 진입 또는 통과하도록 하는, 수행 가능한 대응모션을 설정하되, 영상분석을 통해 장애물의 종류, 형태(형상), 크기에 따라 복수의 대응모션 중 어느 하나의 대응모션을 지정하여 수행하도록 결정할 수 있다.
또한, 제어부(110)는 동일하지 않고 유사한 다른 테이블이 감지된 경우, 테이블에 의하여 구속상황이 발생할지 여부를 판단하여 진입하지 않고 회피하도록 설정할 수 있다. 또한, 이동 로봇은 소정의 경고음을 출력할 수도 있다.
따라서 이동 로봇(1)은 동일한 감지신호가 입력되는 경우라도, 영상분석을 통해 장애물에 따라 상이한 동작이 수행할 수 있고, 동일한 감지신호 및 장애물의 종류라 하더라도 장애물의 크기나 형태에 따라 대응모션을 상이하게 수행할 수 있다.
본 발명은 기 촬영된 영상을 통해 장애물에 대하여 즉각적으로 대응할 수 있고, 구속상황 발생 시, 기 촬영된 일정시간 또는 일정거리를 이동하는 동안 촬영된 영상을 통해 구속상황의 원인이 되는 장애물을 분류하여 해당 장애물 감지시 사전에 회피하여 주행하도록 함으로써, 구속상황이 발생되는 것을 방지할 수 있다.
또한, 서버를 통해 장애물에 대한 새로운 인식모델을 생성하여 장애물 정보를 갱신함으로써, 유사한 상황에서 장애물을 회피하도록 함으로써 구속상황의 발생을 방지하고 계속하여 주행할 수 있도록 한다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다.
1: 이동 로봇 10: 본체
100: 장애물 감지유닛 110: 제어부
111: 장애물인식부 113: 주행제어부
120, 130: 패턴 조사부 140: 패턴 획득부
150: 센서부 170: 영상획득부
180: 데이터부
250: 주행부 260: 청소부

Claims (24)

  1. 이동 가능한 본체;
    주행방향에 대한 영상을 촬영하는 영상획득부;
    주행방향에 위치한 장애물을 감지하는 장애물 감지유닛;
    상기 영상획득부를 통해 주기적으로 촬영되는 복수의 영상데이터가 저장되는 데이터부;
    주행상태에 대응하여 상기 장애물에 의한 본체의 구속 여부를 판단하고, 구속에 대한 판단시점으로부터 이전에 촬영된 적어도 하나의 상기 영상데이터를 서버로 전송하며,
    상기 서버로부터 수신되는 장애물 정보에 대응하여 상기 본체의 구속을 방지하도록 대응모션을 설정하여 상기 장애물을 회피하는 제어부를 포함하는 이동 로봇.
  2. 제 1 항에 있어서,
    상기 제어부는 구속상황이 발생되면, 상기 본체의 구속이 판단된 시점으로부터, 이전 일정시간 동안 촬영되거나 또는 이전 일정거리 이동중 촬영된 적어도 하나의 영상데이터를 상기 서버로 전송하는 것을 특징으로 하는 이동 로봇.
  3. 제 1 항에 있어서,
    상기 제어부는 상기 본체의 이동거리를 산출하고, 설정시간 동안의 이동거리가 설정거리 미만인 경우 상기 본체가 구속된 것으로 판단하는 것을 특징으로 하는 이동 로봇.
  4. 제 1 항에 있어서,
    상기 제어부는 상기 장애물 정보에 대응하여 구속상황으로부터 탈출하는 것을 특징으로 하는 이동 로봇.
  5. 제 1 항에 있어서,
    상기 제어부는 기 저장된 상기 장애물 정보에 근거하여 상기 영상데이터를 분석하여 주행방향에 위치한 상기 장애물의 종류를 판단하고, 상기 장애물 감지유닛에 의해 상기 장애물이 소정거리 내에 위치하는 것으로 판단되는 시점에, 상기 장애물에 대한 복수의 대응모션 중 어느 하나를 수행하는 것을 특징으로 하는 이동 로봇.
  6. 제 1 항에 있어서,
    상기 제어부는 상기 장애물이 구속의 원인이 되는 장애물인 경우, 상기 장애물을 회피하도록 복수의 대응모션 중 지정된 어느 하나의 대응모션을 수행하는 것을 특징으로 하는 이동 로봇.
  7. 제 6 항에 있어서,
    상기 제어부는 상기 대응모션으로, 상기 장애물에 일정거리 접근 후 회피하거나 또는 상기 장애물 감지 시 즉시 회피하도록 하는 것을 특징으로 하는 이동 로봇.
  8. 제 1 항에 있어서,
    상기 제어부는 상기 장애물이 구속상황이 발생될 수 있는 후보에 포함된 경우 복수의 대응모션 중, 구속에 대한 경고를 출력하도록 어느 하나의 대응모션을 수행하는 것을 특징으로 하는 이동 로봇.
  9. 제 6 항 또는 제 8 항에 있어서,
    상기 제어부는 상기 대응모션으로 구속에 대한 경고음 또는 음성안내를 출력하는 것을 특징으로 하는 이동 로봇.
  10. 제 1 항에 있어서,
    상기 서버는 상기 적어도 하나의 영상데이터를 분석하여, 상기 본체가 구속되기 전 촬영된 영상데이터로부터 주변의 장애물을 인식하여 구속의 원인이 되는 장애물을 판단하는 것을 특징으로 하는 이동 로봇.
  11. 제 10 항에 있어서,
    상기 서버는 구속의 원인이 되는 상기 장애물의 특징을 추출하여 상기 장애물에 대한 인식모델을 생성하고, 상기 장애물을 회피하기 위한 대응모션 또는 구속상황으로부터 탈출하기 위한 대응모션을 포함하여 상기 장애물 정보를 생성하는 것을 특징으로 하는 이동 로봇.
  12. 제 11 항에 있어서,
    상기 서버는 상기 장애물의 특징에 대응하여, 상기 장애물과 유사한 형태의 다른 장애물에 대하여 구속이 발생할 수 있는 후보로 설정하여 상기 장애물 정보를 생성하는 것을 특징으로 하는 이동 로봇.
  13. 제 1 항에 있어서,
    상기 영상획득부는 소정 시간 또는 소정 이동거리 간격으로 상기 영상을 촬영하는 것을 특징으로 하는 이동 로봇.
  14. 제 1 항에 있어서,
    상기 제어부는 정지, 감속, 가속, 역주행, 대기, 회피, 근거리 접근 금지, 음성안내 중 적어도 하나가 조합된 상기 대응모션을 수행하도록 제어하는 것을 특징으로 하는 이동 로봇.
  15. 제 1 항에 있어서,
    상기 장애물 감지유닛은 초음파센서, 레이저센서, 적외선센서, 3D센서 중 적어도 하나를 포함하는 이동 로봇.
  16. 주행 중, 영상획득부를 통해 주행방향에 대한 영상을 주기적으로 촬영하여 영상데이터를 저장하는 단계;
    상기 영상데이터를 분석하여 주행방향에 위치한 장애물을 인식하는 단계;
    장애물 감지유닛에 의해 상기 장애물을 감지하는 단계;
    상기 장애물이 감지되면, 상기 영상데이터로부터 기 인식된 상기 장애물의 종류에 대응하여 복수의 대응모션 중 어느 하나의 대응모션을 수행하는 단계;
    주행상태에 대응하여, 상기 장애물에 의한 본체의 구속 여부를 판단하는 단계;
    구속으로 판단되면, 구속에 대한 판단시점으로부터 그 이전에 촬영된 적어도 하나의 영상데이터를 서버로 전송하는 단계; 및
    상기 서버로부터 수신되는 장애물 정보에 대응하여 상기 본체의 구속을 방지하도록 대응모션을 설정하여 상기 장애물을 회피하는 단계;를 포함하는 이동 로봇의 제어방법.
  17. 제 16 항에 있어서,
    주행 중, 상기 본체의 이동거리를 산출하는 단계;를 더 포함하고,
    설정시간 동안의 이동거리가 설정거리 미만인 경우 상기 본체가 구속된 것으로 판단하는 것을 특징으로 하는 이동 로봇의 제어방법.
  18. 제 16 항에 있어서,
    상기 본체의 구속이 판단된 시점으로부터, 이전 일정시간 또는 이전 일정거리 이동중 촬영된 적어도 하나의 영상데이터를 상기 서버로 전송하는 것을 특징으로 하는 이동 로봇의 제어방법.
  19. 제 16 항에 있어서,
    상기 장애물 정보에 대응하여 구속상황으로부터 탈출하는 단계를 더 포함하는 이동 로봇의 제어방법.
  20. 제 16 항에 있어서,
    상기 장애물 감지유닛에 의해 감지된 상기 장애물이 구속의 원인이 되는 장애물인 경우, 상기 장애물을 회피하도록 상기 복수의 대응모션 중 지정된 어느 하나의 대응모션을 수행하는 단계를 더 포함하는 이동 로봇의 제어방법.
  21. 제 16 항에 있어서,
    상기 장애물 감지유닛에 의해 감지된 상기 장애물이 구속상황이 발생될 수 있는 후보에 포함된 경우 상기 복수의 대응모션 중, 구속에 대한 경고를 출력하도록 어느 하나의 대응모션을 수행하는 단계를 더 포함하는 이동 로봇의 제어방법.
  22. 제 16 항에 있어서,
    상기 서버가, 상기 적어도 하나의 영상데이터를 분석하여 상기 본체가 구속되기 전 촬영된 영상데이터로부터 주변의 장애물을 인식하여 구속의 원인이 되는 장애물을 판단하는 단계를 더 포함하는 이동 로봇의 제어방법.
  23. 제 22 항에 있어서,
    상기 서버가, 구속의 원인이 되는 상기 장애물의 특징을 추출하여 상기 장애물에 대한 인식모델을 생성하는 단계; 및
    상기 장애물을 회피하기 위한 대응모션 또는 구속상황으로부터 탈출하기 위한 대응모션 중 적어도 하나를 포함하여 상기 장애물 정보를 생성하는 단계;를 더 포함하는 이동 로봇의 제어방법.
  24. 제 23 항에 있어서,
    상기 서버가, 상기 장애물의 특징에 대응하여, 상기 장애물과 유사한 형태의 다른 장애물에 대하여 구속이 발생할 수 있는 후보로 설정하는 단계; 및
    상기 후보에 대한 상기 장애물 정보를 생성하는 단계를 더 포함하는 이동 로봇의 제어방법.

KR1020180017204A 2017-10-25 2018-02-12 장애물을 학습하는 인공지능 이동 로봇 및 그 제어방법 KR102330607B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020180017204A KR102330607B1 (ko) 2018-02-12 2018-02-12 장애물을 학습하는 인공지능 이동 로봇 및 그 제어방법
US16/759,118 US11586211B2 (en) 2017-10-25 2018-10-25 AI mobile robot for learning obstacle and method of controlling the same
AU2018356126A AU2018356126B2 (en) 2017-10-25 2018-10-25 Artificial intelligence moving robot which learns obstacles, and control method therefor
EP18870615.4A EP3702111B1 (en) 2017-10-25 2018-10-25 Artificial intelligence moving robot which learns obstacles, and control method therefor
CN201880081516.XA CN111479662B (zh) 2017-10-25 2018-10-25 学习障碍物的人工智能移动机器人及其控制方法
PCT/KR2018/012688 WO2019083291A1 (ko) 2017-10-25 2018-10-25 장애물을 학습하는 인공지능 이동 로봇 및 그 제어방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180017204A KR102330607B1 (ko) 2018-02-12 2018-02-12 장애물을 학습하는 인공지능 이동 로봇 및 그 제어방법

Publications (2)

Publication Number Publication Date
KR20190103512A true KR20190103512A (ko) 2019-09-05
KR102330607B1 KR102330607B1 (ko) 2021-11-23

Family

ID=67949648

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180017204A KR102330607B1 (ko) 2017-10-25 2018-02-12 장애물을 학습하는 인공지능 이동 로봇 및 그 제어방법

Country Status (1)

Country Link
KR (1) KR102330607B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021172936A1 (en) * 2020-02-28 2021-09-02 Lg Electronics Inc. Moving robot and control method thereof
WO2021177540A1 (ko) * 2020-03-04 2021-09-10 엘지전자 주식회사 이동 로봇 및 이의 제어 방법
WO2022104161A3 (en) * 2020-11-13 2022-06-23 Armstrong Robotics, Inc. System for automated manipulation of objects using a vision-based collision-free motion plan

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102452843B1 (ko) * 2021-12-10 2022-10-11 (주) 경성테크놀러지 장애인 전용 지도 생성을 위한 딥러닝 기반의 객체 인식 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090018562A (ko) * 2007-08-17 2009-02-20 삼성전자주식회사 로봇청소기 및 그 제어방법
JP2010009371A (ja) * 2008-06-27 2010-01-14 Kansai Electric Power Co Inc:The 移動ロボットおよび移動ロボット制御システム
KR101049155B1 (ko) * 2011-02-01 2011-07-14 국방과학연구소 자율이동장치의 장애물 판단방법 및 이를 이용한 자율이동장치
KR101772084B1 (ko) * 2015-07-29 2017-08-28 엘지전자 주식회사 이동 로봇 및 그 제어방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090018562A (ko) * 2007-08-17 2009-02-20 삼성전자주식회사 로봇청소기 및 그 제어방법
JP2010009371A (ja) * 2008-06-27 2010-01-14 Kansai Electric Power Co Inc:The 移動ロボットおよび移動ロボット制御システム
KR101049155B1 (ko) * 2011-02-01 2011-07-14 국방과학연구소 자율이동장치의 장애물 판단방법 및 이를 이용한 자율이동장치
KR101772084B1 (ko) * 2015-07-29 2017-08-28 엘지전자 주식회사 이동 로봇 및 그 제어방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021172936A1 (en) * 2020-02-28 2021-09-02 Lg Electronics Inc. Moving robot and control method thereof
KR20210110064A (ko) * 2020-02-28 2021-09-07 엘지전자 주식회사 이동 로봇 및 그 제어방법
WO2021177540A1 (ko) * 2020-03-04 2021-09-10 엘지전자 주식회사 이동 로봇 및 이의 제어 방법
KR20210112104A (ko) * 2020-03-04 2021-09-14 엘지전자 주식회사 이동 로봇 및 이의 제어 방법
WO2022104161A3 (en) * 2020-11-13 2022-06-23 Armstrong Robotics, Inc. System for automated manipulation of objects using a vision-based collision-free motion plan

Also Published As

Publication number Publication date
KR102330607B1 (ko) 2021-11-23

Similar Documents

Publication Publication Date Title
CN111479662B (zh) 学习障碍物的人工智能移动机器人及其控制方法
KR102070067B1 (ko) 장애물을 학습하는 인공지능 이동 로봇 및 그 제어방법
EP3590665B1 (en) Mobile robot and control method therefor
KR102024092B1 (ko) 이동 로봇 시스템 및 그 제어방법
KR102021834B1 (ko) 이동 로봇 시스템 및 그 제어방법
EP3950234B1 (en) Mobile robot and control method thereof
KR102032285B1 (ko) 이동 로봇 및 그 제어방법
EP3459688B1 (en) Mobile robot and control method therefor
KR20180075176A (ko) 이동 로봇 및 그 제어방법
KR20180098891A (ko) 이동 로봇 및 그 제어방법
KR102330607B1 (ko) 장애물을 학습하는 인공지능 이동 로봇 및 그 제어방법
KR20190103511A (ko) 이동 로봇 및 그 제어방법
US20220257075A1 (en) Moving robot and method of controlling the same
US20230091839A1 (en) Moving robot and control method thereof
KR20190119234A (ko) 이동 로봇 및 그 제어방법
US20220280007A1 (en) Mobile robot and method of controlling the same
KR102500529B1 (ko) 이동 로봇 및 그 제어방법
KR20190115516A (ko) 이동 로봇 및 그 제어방법
KR102300790B1 (ko) 이동 로봇 및 그 제어방법
KR20210004679A (ko) 이동 로봇 및 그 제어방법

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X601 Decision of rejection after re-examination
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL NUMBER: 2020101001176; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20200424

Effective date: 20210329

E902 Notification of reason for refusal
GRNO Decision to grant (after opposition)
GRNT Written decision to grant