KR20180133367A - 이동 로봇 및 그 제어방법 - Google Patents

이동 로봇 및 그 제어방법 Download PDF

Info

Publication number
KR20180133367A
KR20180133367A KR1020180156702A KR20180156702A KR20180133367A KR 20180133367 A KR20180133367 A KR 20180133367A KR 1020180156702 A KR1020180156702 A KR 1020180156702A KR 20180156702 A KR20180156702 A KR 20180156702A KR 20180133367 A KR20180133367 A KR 20180133367A
Authority
KR
South Korea
Prior art keywords
search
area
mobile robot
charging
search position
Prior art date
Application number
KR1020180156702A
Other languages
English (en)
Other versions
KR102478283B1 (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
Priority claimed from KR1020160106366A external-priority patent/KR20180021595A/ko
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020180156702A priority Critical patent/KR102478283B1/ko
Publication of KR20180133367A publication Critical patent/KR20180133367A/ko
Application granted granted Critical
Publication of KR102478283B1 publication Critical patent/KR102478283B1/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/005Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators using batteries, e.g. as a back-up power source
    • 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/0003Home robots, i.e. small robots for domestic use
    • 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
    • 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)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

본 발명은 이동 로봇 및 그 제어방법에 관한 것으로, 배터리 소진으로 충전이 필요한 상황에서, 기 저장된 맵을 바탕으로 영역을 선택하여 이동하면서 충전대를 탐색하는 것으로, 이동 로봇의 위치가 임의로 변경되더라도 자신의 위치를 다시 인식하도록 함으로써 영역 간의 이동이 쉽고, 장애물의 복잡도에 따른 영향이 적으며, 영역 내에서 특정 지점을 탐색위치로 설정하여 충전대를 탐색함에 따라 적은 이동으로 영역내의 충전대를 탐색할 수 있으므로, 충전대 탐색 중 동작이 정지하는 문제를 해소하고, 단시간 내에 정확하게 충전대를 탐색할 수 있는 효과가 있다.

Description

이동 로봇 및 그 제어방법{ Moving Robot and controlling method }
본 발명은 이동 로봇 및 그 제어방법에 관한 것으로서, 특히 이동 로봇이 이동하며 충전대를 탐색하여 복귀하는 이동 로봇 및 그 제어방법에 관한 것이다.
이동 로봇은 청소하고자 하는 영역을 스스로 주행하면서 바닥면으로부터 먼지 등의 이물질을 흡입하여 자동으로 청소하는 기기이다.
이동 로봇은 충전 가능한 배터리가 구비되어, 이동이 자유롭고 배터리의 동작전원을 이용한 스스로 이동이 가능하며, 이동 중 바닥면의 이물질을 흡입하여 청소를 실시한다.
이동 로봇은 주행구역 내에 설치된 가구나 사무용품, 벽 등의 장애물까지의 거리를 감지하고, 좌륜과 우륜의 구동을 제어하여 장애물 회피 동작을 수행한다.
이동 로봇은 필요 시 충전대로 복귀하여 배터리를 충전하도록 구성된다.
종래의 이동 로봇은 영역을 구분하지 않고 벽을 따라 이동하는 월팔로 윙을 통해 이동하면서 충전대를 탐색한다.
그러나, 월팔로윙을 통해 충전대를 탐색하는 경우 공간 전체에 대해 이동하게 되므로 많은 시간이 소요되는 문제점이 있다.
영역 내에 가구 등의 배치로 인하여 장애물이 많고, 신호를 탐색할 수 있는 범위가 한정적이므로, 충전대 탐색에 많은 시간이 소요되는 문제점이 있다.
특히 실내공간이 복수의 영역으로 구분되는 경우, 각 영역을 이동하면서 충전대를 탐색해야하므로, 탐색 시간의 증가로 인하여 충전대를 찾기 전 배터리가 방전되어 그자리에 멈춰버리는 상황이 발생하기도 한다.
그에 따라, 빠르게 영역을 이동하면서 단시간에 충전대를 탐색할 수 있는 방안이 모색되어야 한다.
본 발명의 이동 로봇 및 그 제어방법은, 배터리 소진으로 충전이 필요한 상황에서, 기 저장된 맵을 바탕으로 영역을 선택하여 이동하면서 단시간에 충전대를 탐색하는 이동 로봇 및 제어방법을 제공하는데 있다.
본 발명의 일 실시예에 따른 이동 로봇은, 이동 가능한 본체; 상기 본체를 이동시키는 주행부; 주행구역에 대한 맵(MAP)이 저장되는 저장부; 현재 위치를 인식하여 상기 맵을 바탕으로, 상기 본체가 상기 주행구역을 주행하며 청소를 수행하도록 하는 제어부를 포함하고, 상기 제어부는, 충전 필요 시 상기 주행구역의 각 영역의 형태에 대응하여 영역에 적어도 하나의 탐색위치를 설정하고, 탐색위치를 연결하는 이동경로를 따라 상기 본체가 이동하도록 상기 주행부를 제어하며, 이동 중 충전대의 복귀신호를 감지하여 상기 충전대를 탐색하는 것을 특징으로 한다.
또한, 본 발명에 따른 이동 로봇의 제어방법은, 충전이 필요한 경우, 충전대 탐색을 시작하는 단계; 기 저장된 맵으로부터 현재위치를 판단하여, 탐색을 시작할 영역을 선택하는 단계; 상기 영역의 형태에 대응하여 탐색위치를 설정하는 단계; 상기 탐색위치를 연결하는 이동경로를 설정하는 단계; 상기 이동경로를 따라 이동하며 충전대를 탐색하는 단계; 상기 충전대가 존재하지 않는 경우, 새로운 영역을 지정하고, 상기 새로운 영역으로 이동하여 상기 충전대를 탐색하는 단계; 및 상기 충전대로부터 송출된 복귀신호가 감지되면, 상기 충전대로 이동하여 충전하는 단계;를 포함한다.
본 발명의 이동 로봇 및 그 제어방법은 저장된 맵을 바탕으로 영역을 선택하면서 충전대를 탐색함으로써, 이동 로봇의 위치가 임의로 변경되더라도 자신의 위치를 다시 인식하도록 함으로써 영역 간의 이동이 쉽고, 장애물의 복잡도에 따른 영향이 적으며, 영역 내에서 특정 지점을 탐색위치로 설정하여 충전대를 탐색함에 따라 적은 이동으로 영역내의 충전대를 탐색할 수 있으므로, 충전대 탐색 중 동작이 정지하는 문제를 해소하고, 단시간 내에 정확하게 충전대를 탐색할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 이동 로봇 및 이동 로봇을 충전시키는 충전대를 도시한 사시도이다.
도 2는 도 1에 도시된 이동 로봇의 상면부를 도시한 도이다.
도 3은 도 1에 도시된 이동 로봇의 정면부를 도시한 도이다.
도 4는 도 1에 도시된 이동 로봇의 저면부를 도시한 도이다.
도 5는 본 발명의 일 실시예에 따른 이동 로봇의 주요 구성들 간의 제어관계를 도시한 블록도이다.
도 6 은 본 발명의 이동 로봇의 영역 구분 및 그에 따른 맵 생성의 예가 도시된 도이다.
도 7 은 본 발명의 이동 로봇의 영역 내에서 충전대를 탐색하는 실시예가 도시된 도이다.
도 8 은 도 7의 실시예에 따른 영역별 충전대 탐색모드를 설명하는데 참조되는 도이다.
도 9 는 본 발명의 이동 로봇의 영역 내, 탐색위치 설정방법을 설명하는데 참조되는 도이다.
도 10 은 본 발명의 이동 로봇의, 탐색위치에 따른 경로 설정방법을 설명하는데 참조되는 도이다.
도 11 은 도 9의 탐색위치 설정방법을 바탕으로 영역의 형태에 따른 실시예가 도시된 도이다.
도 12 는 도 10의 경로 설정방법을 바탕으로 영역의 형태에 따른 실시예가 도시된 도이다.
도 13 은 본 발명의 이동 로봇의, 복수의 영역 간 이동 및 충전대 탐색의 실시예가 도시된 도이다.
도 14 는 본 발명의 이동 로봇의 충전대 탐색방법이 도시된 순서도이다.
도 15 는 도 14의 충전대 탐색 시, 탐색위치 설정방법을 설명하는데 참조되는 순서도이다.
도 16 은 본 발명의 영역 바운더리 이동을 통한 이동 로봇의 충전대 탐색방법이 도시된 순서도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이하에서는 도면을 참조하여 본 발명의 실시 예에 대해서 구체적으로 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 이동 로봇 및 이동 로봇을 충전시키는 충전대를 도시한 사시도이고, 도 2는 도 1에 도시된 이동 로봇의 상면부를 도시한 도이며, 도 3은 도 1에 도시된 이동 로봇의 정면부를 도시한 도이고, 도 4는 도 1에 도시된 이동 로봇의 저면부를 도시한 도이다.
도 1 내지 도 4에 도시된 바와 같이, 이동 로봇(100)은 본체(110)와, 본체(110) 주변의 영상을 획득하는 영상획득부(120)를 포함한다. 이하, 본체(110)의 각부분을 정의함에 있어서, 주행구역 내의 천장을 향하는 부분을 상면부(도 2 참조)로 정의하고, 주행구역 내의 바닥을 향하는 부분을 저면부(도 4 참조)로 정의하며, 상면부와 저면부 사이에서 본체(110)의 둘레를 이루는 부분 중 주행방향을 향하는 부분을 정면부(도 3 참조)라고 정의한다.
이동 로봇(100)은 본체(110)를 이동시키는 주행부(160)를 포함한다. 주행부(160)는 본체(110)를 이동시키는 적어도 하나의 구동 바퀴(136)를 포함한다. 주행부(160)는 구동 바퀴(136)에 연결되어 구동 바퀴를 회전시키는 구동 모터(미도시)를 포함한다. 구동 바퀴(136)는 본체(110)의 좌, 우 측에 각각 구비될 수 있으며, 이하, 각각 좌륜(136(L))과 우륜(136(R))이라고 한다.
좌륜(136(L))과 우륜(136(R))은 하나의 구동 모터에 의해 구동될 수도 있으나, 필요에 따라 좌륜(136(L))을 구동시키는 좌륜 구동 모터와 우륜(136(R))을 구동시키는 우륜 구동 모터가 각각 구비될 수도 있다. 좌륜(136(L))과 우륜(136(R))의 회전 속도에 차이를 두어 좌측 또는 우측으로 본체(110)의 주행방향을 전환할 수 있다.
본체(110)의 저면부에는 공기의 흡입이 이루어지는 흡입구(110h)가 형성될 수 있으며, 본체(110) 내에는 흡입구(110h)를 통해 공기가 흡입될 수 있도록 흡입력을 제공하는 흡입장치(미도시)와, 흡입구(110h)를 통해 공기와 함께 흡입된 먼지를 집진하는 먼지통(미도시)이 구비될 수 있다.
본체(110)는 이동 로봇(100)을 구성하는 각종 부품들이 수용되는 공간을 형성하는 케이스(111)를 포함할 수 있다. 케이스(111)에는 먼지통의 삽입과 탈거를 위한 개구부가 형성될 수 있고, 개구부를 여닫는 먼지통 커버(112)가 케이스(111)에 대해 회전 가능하게 구비될 수 있다.
흡입구(110h)를 통해 노출되는 솔들을 갖는 롤형의 메인 브러시(134)와, 본체(110)의 저면부 전방측에 위치하며, 방사상으로 연장된 다수개의 날개로 이루어진 솔을 갖는 보조 브러시(135)가 구비될 수 있다. 이들 브러시(134, 135)들의 회전에 의해 주행구역 내 바닥으로부터 먼지들이 분리되며, 이렇게 바닥으로부터 분리된 먼지들은 흡입구(110h)를 통해 흡입되어 먼지통에 모인다.
배터리(138)는 구동 모터뿐만 아니라, 이동 로봇(100)의 작동 전반에 필요한 전원을 공급한다. 배터리(138)가 방전될 시, 이동 로봇(100)은 충전을 위해 충전대(200)로 복귀하는 주행을 실시할 수 있으며, 이러한 복귀 주행 중, 이동 로봇(100)은 스스로 충전대(200)의 위치를 탐지할 수 있다.
충전대(200)는 소정의 복귀 신호를 송출하는 신호 송출부(미도시)를 포함할 수 있다. 복귀 신호는 초음파 신호 또는 적외선 신호일 수 있으나, 반드시 이에 한정되어야하는 것은 아니다.
이동 로봇(100)은 복귀 신호를 수신하는 신호 감지부(미도시)를 포함할 수 있다. 충전대(200)는 신호 송출부를 통해 적외선 신호를 송출하고, 신호 감지부는 적외선 신호를 감지하는 적외선 센서를 포함할 수 있다. 이동 로봇(100)은 충전대(200)로부터 송출된 적외선 신호에 따라 충전대(200)의 위치로 이동하여 충전대(200)와 도킹(docking)한다. 이러한 도킹에 의해 이동 로봇(100)의 충전 단자(133)와 충전대(200)의 충전 단자(210) 간에 충전이 이루어진다.
영상획득부(120)는 주행구역을 촬영하는 것으로, 디지털 카메라를 포함할 수 있다. 디지털 카메라는 적어도 하나의 광학렌즈와, 광학렌즈를 통과한 광에 의해 상이 맺히는 다수개의 광다이오드(photodiode, 예를들어, pixel)를 포함하여 구성된 이미지센서(예를들어, CMOS image sensor)와, 광다이오드들로부터 출력된 신호를 바탕으로 영상을 구성하는 디지털 신호 처리기(DSP: Digital Signal Processor)를 포함할 수 있다. 디지털 신호 처리기는 정지영상은 물론이고, 정지영상으로 구성된 프레임들로 이루어진 동영상을 생성하는 것도 가능하다.
바람직하게, 영상획득부(120)는 본체(110)의 상면부에 구비되어, 주행구역 내의 천장에 대한 영상을 획득하나, 영상획득부(120)의 위치와 촬영범위가 반드시 이에 한정되어야 하는 것은 아니다. 예를들어, 영상획득부(120)는 본체(110) 전방의 영상을 획득하도록 구비될 수도 있다.
또한, 이동 로봇(100)은 전방의 장애물을 감지하는 장애물 감지센서(131)를 더 포함할 수 있다. 이동 로봇(100)은 주행구역 내 바닥에 낭떠러지의 존재 여부를 감지하는 낭떠러지 감지센서(132)와, 바닥의 영상을 획득하는 하부 카메라 센서(139)를 더 포함할 수 있다.
또한, 이동 로봇(100)은 On/Off 또는 각종 명령을 입력할 수 있는 조작부(137)를 포함한다. 조작부(137)를 통해 이동 로봇(100)의 작동 전반에 필요한 각종 제어명령을 입력받을 수 있다. 또한, 이동 로봇(100)은 출력부(미도시)를 포함하여, 예약 정보, 배터리 상태, 동작모드, 동작상태, 에러상태 등을 표시할 수 있다.
도 5는 본 발명의 일 실시예에 따른 이동 로봇의 주요 구성들 간의 제어관계를 도시한 블록도이다.
도 5를 참조하면, 이동 로봇(100)은 현재 위치를 인식하는 등 각종 정보를 처리하고 판단하는 제어부(140), 각종 데이터를 저장하는 저장부(150), 주행부(160), 및 청소부(170)를 포함한다.
또한, 이동 로봇(100)은 데이터를 송수신하는 통신부(190)를 더 포함할 수 있다.
이동 로봇(100)은 리모컨(미도시) 또는 단말(미도시)을 통해 동작에 대한 명령을 수신할 수 있다. 단말은 이동 로봇(100)을 제어하기위한 어플리케이션을 구비하고, 어플리케이션의 실행을 통해 이동 로봇(100)이 청소할 주행구역에 대한 맵을 표시하고, 맵 상에 특정 영역을 청소하도록 영역을 지정할 수 있다. 단말은 맵 설정을 위한 어플리케이션(application)이 탑재된 리모콘, PDA, 랩탑(laptop), 태블릿PC, 스마트 폰 등을 예로 들 수 있다.
단말은 이동 로봇(100)과 통신하여, 맵을 수신하여 표시하고, 맵 상에 이동 로봇의 현재 위치를 표시할 수 있다. 또한, 단말은 이동 로봇의 주행에 따라 그 위치를 갱신하여 표시한다.
제어부(140)는 이동 로봇(100)을 구성하는 영상획득부(120), 조작부(137), 주행부(160), 청소부(170)를 제어하여, 이동 로봇(100)의 동작 전반을 제어한다.
저장부(150)는 이동 로봇(100)의 제어에 필요한 각종 정보들을 기록하는 것으로, 휘발성 또는 비휘발성 기록 매체를 포함할 수 있다. 기록 매체는 마이크로 프로세서(micro processor)에 의해 읽힐 수 있는 데이터를 저장한 것으로, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등을 포함할 수 있다.
저장부(150)에는 주행구역에 대한 맵(Map)이 저장될 수 있다. 또한, 저장부(150)에는 주행 중 감지되는 장애물에 대한 정보를 저장하고, 충전대 위치, 또는 충전대 탐색을 위해 설정되는 데이터가 저장된다.
이때, 저장부에 저장되는 맵은, 이동 로봇(100)이 스스로 학습을 하여 생성할 수 있고, 경우에 따라 이동 로봇(100)과 유선 또는 무선 통신을 통해 정보를 교환할 수 있는 단말에 의해 입력된 것일 수도 있다.
맵에는 주행구역 내의 방들의 위치가 영역별로 표시될 수 있다. 또한, 이동 로봇(100)의 현재 위치가 맵 상에 표시될 수 있으며, 맵 상에서의 이동 로봇(100)의 현재의 위치는 주행 과정에서 갱신될 수 있다. 단말은 저장부(150)에 저장된 맵과 동일한 맵을 저장한다.
제어부(140)는 주행 중, 청소부(170)를 제어하여, 이동 로봇 주변의 먼지 또는 이물질을 흡수하여 청소를 수행한다. 청소부(170)는 브러쉬를 동작시켜 이동 로봇 주변의 먼지 또는 이물질을 흡입하기 쉬운 상태로 만들고, 흡입장치를 동작시켜 먼지 또는 이물질을 흡입한다.
제어부(140)는 복수의 영역 중 적어도 하나의 영역에 대한 청소를 지시할 수 있고, 주행부에 의해 지정된 영역으로 이동하여 청소를 수행하도록 한다. 이때 주행부에 의해 이동하는 중에도 청소부를 제어하여 청소를 수행할 수 있다.
제어부(140)는 배터리의 충전용량을 체크하여 충전대(200)로의 복귀 시기를 결정한다. 제어부(140)는 충전용량이 일정값에 도달하면, 수행중이던 동작을 중지하고, 충전대 복귀를 위해 충전대 탐색을 시작한다. 제어부(140)는 배터리의 충전용량에 대한 알림 및 충전대 복귀에 대한 알림을 출력할 수 있다.
제어부(140)는, 저장된 맵을 바탕으로, 어느 하나의 영역을 지정하여 충전대 탐색을 시작한다. 이때, 제어부(140)는 저장된 맵을 바탕으로, 장애물의 위치 및 그에 따른 영역의 형태를 바탕으로 충전대 탐색을 위한 탐색위치를 설정한다. 제어부(140)는 영역의 중심을 탐색위치로 설정하거나, 또는 복수의 지점이 탐색위치로 설정될 수 있고, 탐색위치를 이동경로로 설정하여 이동하면서 충전대를 탐색할 수 있다.
제어부(140)는 개방된 영역인 경우, 장애물에 의해 복수의 소구역으로 구분되는 영역에 대하여 각각 상이하게 탐색위치를 설정한다. 또한, 제어부(140)는 맵의 존재 여부, 또는 맵을 바탕으로 현재위치 확인이 가능하지 여부에 따라 충전대 탐색모드를 상이하게 설정할 수 있다.
제어부(140)는 탐색위치 설정 후, 탐색위치를 연결하는 이동경로를 설정하여 주행부(160)를 제어한다.
제어부(140)는 지정된 영역으로 이동하여 충전대 탐색을 시작하도록 주행부(160)를 제어한다. 제어부(140)는 현재 이동 로봇이 위치한 영역 또는 근접한 영역부터 충전대 탐색을 수행하도록 설정할 수 있다. 하나의 영역에서 충전대를 발견하지 못한 경우 인접한 다른 영역으로 이동하여 충전대 탐색을 이어서 수행하도록 주행부를 제어한다.
또한, 제어부(140)는 별도로 지정된 영역으로 이동하도록 하여 충전대 탐색을 수행하도록 설정할 수 있다. 경우에 따라 맵에 충전대 위치가 저장된 경우 해당 영역을 우선하여 충전대를 탐색하도록 한다.
제어부(140)는 충전대(200)로부터 송출되는 복귀 신호를 수신하면, 충전대의 위치를 판단하고, 충전대로 접근하여 도킹하도록 주행부(160)를 제어한다.
제어부(140)는 충전대(200)의 복귀신호를 통해 충전대가 감지되면, 이동 로봇(100)의 현재 위치를 바탕으로 맵 상에 충전대 위치를 저장할 수 있다.
제어부(140)는 주행제어모듈(141), 구역구분모듈(142), 학습모듈(143) 및 인식모듈(144)을 포함한다.
주행제어모듈(141)은 이동 로봇(100)의 주행을 제어하는 것으로, 주행 설정에 따라 주행부(160)의 구동을 제어한다. 또한, 주행제어모듈(141)은 주행부(160)의 동작을 바탕으로 이동 로봇(100)의 이동 경로를 파악할 수 있다. 예를 들어, 주행제어모듈(141)은 구동 바퀴(136)의 회전속도를 바탕으로 이동 로봇(100)의 현재 또는 과거의 이동속도, 주행한 거리 등을 파악할 수 있으며, 각 구동 바퀴(136(L), 136(R))의 회전 방향에 따라 현재 또는 과거의 방향 전환 과정 또한 파악할 수 있다. 이렇게 파악된 이동 로봇(100)의 주행 정보를 바탕으로, 맵 상에서 이동 로봇(100)의 위치가 갱신될 수 있다.
구역구분모듈(142)은 소정 기준에 따라 주행구역을 복수의 구역으로 구분할 수 있다. 주행구역은 이동 로봇(100)이 주행 경험이 있는 모든 평면상의 구역 및 현재 주행하고 있는 평면상의 구역을 모두 합한 범위로 정의될 수 있다.
구역구분모듈(142)은 주행구역을 복수의 소구역으로 구분하며, 소구역은 주행구역 내의 각 실(방)을 근거로 구분될 수 있다. 또한, 구역구분모듈(142)은 주행구역을 주행능력상 서로 분리된 복수의 대구역으로 구분할 수 있다. 예를 들면, 서로 동선상 완전히 분리된 두개의 실내공간은 각각 두개의 대구역으로 구분될 수 있다. 다른 예로, 같은 실내 공간이라 하더라도, 상기 대구역은 주행구역 내의 각 층을 근거로 구분될 수 있다.
학습모듈(143)은 주행구역의 맵을 생성할 수 있다. 또한, 학습모듈(143)은 각 위치에서 영상획득부(120)를 통해 획득한 영상을 처리하여 맵과 연계시켜 전역위치를 인식한다.
인식모듈(144)은 현재 위치를 추정하여 인식한다. 인식모듈(144)은 영상획득부(120)의 영상 정보를 이용하여 학습모듈(143)과 연계하여 위치를 파악함으로써, 이동 로봇(100)의 위치가 갑자기 변경되는 경우에도 현재 위치를 추정하여 인식할 수 있다.
이동 로봇(100)은 구역구분모듈(142)을 통해 연속적인 주행 중에 위치 인식이 가능하고 또한, 구역구분모듈(142) 없이 학습모듈(143) 및 인식모듈(144)을 통해, 맵을 학습하고 현재 위치를 추정할 수 있다.
이동 로봇(100)이 주행하는 중에, 영상획득부(120)는 이동 로봇(100) 주변의 영상들을 획득한다. 이하, 영상획득부(120)에 의해 획득된 영상을 '획득영상'이라고 정의한다. 획득영상에는 천장에 위치하는 조명들, 경계(edge), 코너(corner), 얼룩(blob), 굴곡(ridge) 등의 여러가지 특징(feature)들이 포함된다.
학습모듈(143)은 획득영상들 각각으로부터 특징을 검출한다. 컴퓨터 비전(Computer Vision) 기술 분야에서 영상으로부터 특징을 검출하는 다양한 방법(Feature Detection)이 잘 알려져 있다. 이들 특징의 검출에 적합한 여러 특징검출기(feature detector)들이 알려져 있다. 예를들어, Canny, Sobel, Harris&Stephens/Plessey, SUSAN, Shi&Tomasi, Level curve curvature, FAST, Laplacian of Gaussian, Difference of Gaussians, Determinant of Hessian, MSER, PCBR, Grey-level blobs 검출기 등이 있다.
학습모듈(143)은 각 특징점을 근거로 디스크립터를 산출한다. 학습모듈(143)은 특징 검출을 위해 SIFT(Scale Invariant Feature Transform) 기법을 이용하여 특징점을 디스크립터(descriptor)로 변환할 수 있다. 디스크립터는 n차원 벡터(vector)로 표기될 수 있다.
SIFT는 촬영 대상의 스케일(scale), 회전, 밝기변화에 대해서 불변하는 특징을 검출할 수 있어, 같은 영역을 이동 로봇(100)의 자세를 달리하며 촬영하더라도 불변하는(즉, 회전 불변한(Rotation-invariant)) 특징을 검출할 수 있다. 물론, 이에 한정되지 않고 다른 다양한 기법(예를들어, HOG: Histogram of Oriented Gradient, Haar feature, Fems, LBP:Local Binary Pattern, MCT:Modified Census Transform)들이 적용될 수도 있다.
학습모듈(143)은 각 위치의 획득영상을 통해 얻은 디스크립터 정보를 바탕으로, 획득영상마다 적어도 하나의 디스크립터를 소정 하위 분류규칙에 따라 복수의 군으로 분류하고, 소정 하위 대표규칙에 따라 같은 군에 포함된 디스크립터들을 각각 하위 대표 디스크립터로 변환할 수 있다.
다른 예로, 실(room)과 같이 소정 구역내의 획득영상 들로부터 모인 모든 디스크립터를 소정 하위 분류규칙에 따라 복수의 군으로 분류하여 상기 소정 하위 대표규칙에 따라 같은 군에 포함된 디스크립터들을 각각 하위 대표 디스크립터로 변환할 수도 있다.
학습모듈(143)은 이 같은 과정을 거쳐, 각 위치의 특징분포를 구할 수 있다. 각 위치 특징분포는 히스토그램 또는 n차원 벡터로 표현될 수 있다. 또 다른 예로, 학습모듈(143)은 소정 하위 분류규칙 및 소정 하위 대표규칙을 거치지 않고, 각 특징점으로부터 산출된 디스크립터를 바탕으로 미지의 현재위치를 추정할 수 있다.
또한, 위치 도약 등의 이유로 이동 로봇(100)의 현재 위치가 미지의 상태가 된 경우에, 기 저장된 디스크립터 또는 하위 대표 디스크립터 등의 데이터를 근거로 현재 위치를 추정할 수 있다.
이동 로봇(100)은, 미지의 현재 위치에서 영상획득부(120)를 통해 획득영상을 획득한다. 영상을 통해 천장에 위치하는 조명들, 경계(edge), 코너(corner), 얼룩(blob), 굴곡(ridge) 등의 여러가지 특징(feature)들이 확인된다.
인식모듈(144)은 획득영상으로부터 특징들을 검출한다. 컴퓨터 비전 기술 분야에서 영상으로부터 특징을 검출하는 다양한 방법 및 이들 특징의 검출에 적합한 여러 특징검출기들에 대한 설명은 상기한 바와 같다.
인식모듈(144)은 각 인식 특징점을 근거로 인식 디스크립터 산출단계(S31)를 거쳐 인식 디스크립터를 산출한다. 이때 인식 특징점 및 인식 디스크립터는 인식모듈(144)에서 수행하는 과정을 설명하기 위한 것으로 학습모듈(143)에서 수행하는 과정을 설명하는 용어와 구분하기 위한 것이다. 다만, 이동 로봇(100)의 외부 세계의 특징이 각각 다른 용어로 정의되는 것에 불과하다.
인식모듈(144)은 본 특징 검출을 위해 SIFT(Scale Invariant Feature Transform) 기법을 이용하여 인식 특징점을 인식 디스크립터로 변환할 수 있다. 인식 디스크립터는 n차원 벡터(vector)로 표기될 수 있다.
SIFT는 앞서 설명한 바와 같이, 획득영상에서 코너점 등 식별이 용이한 특징점을 선택한 후, 각 특징점 주변의 일정한 구역에 속한 픽셀들의 밝기 구배(gradient)의 분포 특성(밝기 변화의 방향 및 변화의 급격한 정도)에 대해, 각 방향에 대한 변화의 급격한 정도를 각 차원에 대한 수치로 하는 n차원 벡터(vector)를 구하는 영상인식기법이다.
인식모듈(144)은 미지의 현재 위치의 획득영상을 통해 얻은 적어도 하나의 인식 디스크립터 정보를 근거로, 소정 하위 변환규칙에 따라 비교대상이 되는 위치 정보(예를 들면, 각 위치의 특징분포)와 비교 가능한 정보(하위 인식 특징분포)로 변환한다.
소정 하위 비교규칙에 따라, 각각의 위치 특징분포를 각각의 인식 특징분포와 비교하여 각각의 유사도를 산출할 수 있다. 각각의 위치에 해당하는 상기 위치 별로 유사도(확률)를 산출하고, 그 중 가장 큰 확률이 산출되는 위치를 현재위치로 결정할 수 있다.
이와 같이, 제어부(140)는 주행구역을 구분하고 복수의 영역으로 구성된 맵을 생성하거나, 기 저장된 맵을 바탕으로 본체(110)의 현재 위치를 인식할 수 있다.
제어부(140)는 맵이 생성되면, 생성된 맵을 통신부(190)를 통해 외부 단말기로 전송한다. 또한, 제어부(140)는 앞서 설명한 바와 같이, 외부 단말기로부터 맵이 수신되면, 저장부에 저장할 수 있다.
또한 제어부(140)는 주행 중 맵이 갱신되는 경우 갱신된 정보를 외부 단말기로 전송하여 외부 단말기와 이동 로봇(100)에 저장되는 맵이 동일하도록 한다. 외부 단말기와 이동 로봇(100)에 저장된 맵이 동일하게 유지됨에 따라 이동 단말기로부터의 청소명령에 대하여, 이동 로봇(100)이 지정된 영역을 청소할 수 있으며, 또한, 외부 단말기에 이동 로봇의 현재 위치가 표시될 수 있도록 하기 위함이다.
이때, 맵은 청소 영역을 복수의 영역으로 구분되고, 복수의 영역을 연결하는 연결통로가 포함하며, 영역 내의 장애물에 대한 정보를 포함한다. 청소 영역에 대한 구분은, 앞서 설명한 바와 같이 구역구분모듈(142)에 의해 소영역 및 대영역으로 구분된다.
제어부(140)는 청소명령이 입력되면, 맵 상의 위치와 이동 로봇의 현재위치가 일치하는지 여부를 판단한다. 청소명령은 리모컨, 조작부 또는 외부 단말기로부터 입력될 수 있다.
제어부(140)는 현재 위치가 맵 상의 위치와 일치하지 않는 경우, 또는 현재 위치를 확인할 수 없는 경우, 현재 위치를 인식하여 이동 로봇(100)의 현재 위치를 복구한 한 후, 현재 위치를 바탕으로 지정영역으로 이동하도록 주행부를 제어한다.
현재 위치가 맵 상의 위치와 일치하지 않는 경우 또는 현재 위치를 확인할 수 없는 경우, 인식모듈(144)은 영상획득부(120)로부터 입력되는 획득영상을 분석하여 맵을 바탕으로 현재 위치를 추정할 수 있다. 또한, 구역구분모듈(142) 또는 학습모듈(143) 또한, 앞서 설명한 바와 같이 현재 위치를 인식할 수 있다.
위치를 인식하여 이동 로봇(100)의 현재 위치를 복구한 후, 주행제어모듈(141)은 현재 위치로부터 지정영역으로 이동 경로를 산출하고 주행부(160)를 제어하여 지정영역으로 이동한다.
외부 단말기로부터 복수의 영역 중, 적어도 하나의 영역이 선택되는 경우, 주행제어모듈(141)은 선택된 영역을 지정영역으로 설정하고, 이동 경로를 산출한다. 주행제어모듈(141)은 지정영역 이동 후, 청소를 수행한다.
한편, 복수의 영역이 지정영역으로 선택된 경우, 주행제어모듈(141)은 복수의 영역 중 우선영역이 설정되었는지 여부 또는 선택된 복수의 지정영역에 대한 청소순서가 설정되었는지 여부를 판단한 후, 지정영역으로 이동하여 청소를 수행한다.
주행제어모듈(141)은 복수의 지정영역 중 어느 하나가 우선영역으로 설정된 경우, 복수의 지정영역 중 우선영역으로 이동하여, 우선영역을 제일 먼저 청소한 후 나머지 지정영역으로 이동하여 청소하도록 한다. 또한, 지정영역에 대한 청소순서가 설정된 경우 주행제어모듈(141)은 지정된 청소순서에 따라 지정영역을 순차적으로 이동하면서 청소를 수행한다.
또한, 주행제어모듈(141)은 맵 상의 복수의 영역에 대한 구분에 관계없이 새롭게 임의의 영역이 설정되는 경우, 설정된 지정영억으로 이동하여 청소를 수행하도록 한다.
제어부(140)는 설정된 지정영역에 대한 청소가 완료되면, 청소기록을 저장부(150)에 저장한다.
또한, 제어부(140)는 통신부(190)를 통해 이동 로봇(100)의 동작상태 또는 청소상태를 소정 주기로 외부 단말기(50)로 전송한다. 그에 따라 단말은 수신되는 데이터를 바탕으로, 실행중인 어플리케이션의 화면상에 맵과 함게 이동 로봇의 위치를 표시하고, 또한 청소상태에 대한 정보를 출력한다.
또한, 제어부(140)는 충전대(200)의 복귀신호를 통해 충전대가 감지되면, 학습부 및 인식부를 통해 이동 로봇의 현재 위치를 인식하고, 이동 로봇의 현재위치를 바탕으로 충전대(200)의 위치를 산출하여 저장한다. 또한, 제어부(140)는 충전대의 위치가 맵 상에 표시되도록 설정할 수 있다.
도 6 은 본 발명의 이동 로봇의 영역 구분 및 그에 따른 맵 생성의 예가 도시된 도이다.
도 6의 (a)에 도시된 바와 같이, 이동 로봇(100)은 저장된 맵이 존재하지 않는 경우, 월팔로윙을 통해 주행구역(X1)을 주행하면서 맵을 생성할 수 있다.
구역구분모듈(142)은 도 6의(b)에 도시된 바와 같이, 주행구역(X1)을 복수의 영역(A1' 내지 A9')으로 구분하여 도 6의 (c)와 같이 맵을 생성한다. 생성된 맵은 저장부(150)에 저장되고, 통신부(190)를 통해 외부 단말기(50)로 전송된다. 구역구분모듈(142)은 전술한 바와 같이 주행구역(X1)에 대하여 소영역과 대영역을 구분하고 그에 따른 맵을 생성한다.
단말은 어플리케이션을 실행하고, 수신된 맵을 화면에 표시한다. 이때 구분된 복수의 영역(A1 내지 A9)을 각각 상이하게 표시한다. 맵은 복수의 영역(A1 내지 A9)이 각각 상이한 색상으로 표시되거나 또는 상이한 이름이 표시된다.
이동 로봇과 단말은 동일한 맵을 저장하는 것을 기본으로 하나, 단말에는 사용자가 영역을 쉽게 인식할 수 있도록 도 6의 (c)와 같이 영역을 단순화한 맵이 표시되도록 하고, 이동 로봇은, 장애물에 대한 정보가 포함된 도 6의 (b)와 같은 맵을 바탕으로 주행 및 청소를 수행한다. 도 6의 (c)에도 장애물이 표시될 수 있다.
이동 로봇(100)은 청소명령이 입력되면, 저장된 맵을 바탕으로, 현재 위치를 판단하고, 현재 위치와 맵 상의 위치가 일치하는 경우에는 지정된 청소를 수행하고, 현재 위치가 일치하지 않는 경우, 현재 위치를 인식하여 복구한 후 청소를 수행한다. 따라서 이동 로봇(100)은 복수의 영역(A1 내지 A9) 중 어느 위치에 있더라도 현재 위치를 판단 한 후 지정영역으로 이동하여 청소를 수행할 수 있다.
리모컨 또는 단말은 도시된 바와 같이, 복수의 영역(A1 내지 A9) 중 적어도 하나의 영역을 선택하여 이동 로봇(100)으로 청소명령을 입력할 수 있다. 또한, 이동 로봇(100)은 리모컨 또는 단말을 통해 어느 하나의 영역의 일부를 청소영역으로 설정하거나, 복수의 영역에 대하여 영역 구분없이 터치 또는 드래그를 통해 청소영역을 설정할 수 있다.
복수의 영역에 대하여 청소명령이 입력되는 경우, 어느 하나의 영역을 우선영역으로 설정하거나, 우선영역을 시작한 후 근거리인 영역으로 이동하여 청소 할 수 있으며, 또는 청소순서를 설정할 수 있다. 이동 로봇(100)은 복수의 지정영역에 대하여 청소순서가 설정된 경우 지정된 순서에 따라 이동하며 청소를 수행한다. 이동 로봇(100)은 복수의 청소영역에 대하여, 별도의 순서가 지정되지 않은 경우에는 현재 위치로부터 가까운 영역으로 이동하여 청소를 수행한다.
도 7 은 본 발명의 이동 로봇의 영역 내에서 충전대를 탐색하는 실시예가 도시된 도이다.
도 7에 도시된 바와 같이, 이동 로봇(100)은 청소 또는 주행 중, 충전이 필요한 경우, 충전대 탐색을 시작한다.
이동 로봇(100)은 영역의 형태에 따라 탐색모드를 설정하여, 탐색모드 별 탐색 위치를 설정하여 충전대 탐색을 수행한다. 이동 로봇(100)은 영역의 중앙 지점을 이용하거나, 복수의 탐색위치를 설정할 수 있고, 또한, 영역의 외곽선 형상의 주행경로를 설정하여 충전대를 탐색할 수 있으며, 또한, 영역의 형상에 따라 추출되는 라인을 주행하며 충전대를 탐색할 수 있다.
도 7의 (a)에 도시된 바와 같이, 이동 로봇(100)은 영역의 중심으로 이동하여 영역의 중심에서 360도 회전하며 충전대(200)의 복귀신호를 감지한다. 이동 로봇(100)은 영역의 중심을 탐색위치로 설정하여 충전대를 감지한다.
이때 이동 로봇(100)은 개방된 공간의 경우 영역의 중심에서, 회전동작을 수행하여 충전대를 감지한다. 영역 내에 장애물이 존재하더라도, 장애물에 의해 사각지대가 발생하지 않는 경우에는 영역의 중심에서 회전하여 충전대를 감지한다.
또한 도 7의 (b)에 도시된 바와 같이 이동 로봇(100)은 영역의 외곽선으로 부터 일정 거리 떨어서 외곽선의 형상에 대응하여 이동하면서 충전대의 복귀신호를 감지할 수 있다. 이동 로봇(100)은 영역의 외곽선을 따라 이동하는 경로를 탐색위치로 설정하여 충전대를 감지한다.
이동 로봇(100)이 영역의 외곽선을 따라 이동하는 것은, 월팔로윙과 구분되는 것으로, 벽면에 근접하여 벽을 따라 이동하는 것은 아니고, 영역의 외곽선 형태에 따라, 벽에 근접하지 않고 벽으로부터 일정 거리 떨어져서 이동하며 충전대를 탐색한다. 이동 로봇은 충전대의 복귀신호를 감지할 수 있는 정도의 거리를 두고 이동하게 된다. 영역의 외곽선을 따라 이동하되, 벽면에 작은 장애물로 인한 외곽선의 변화는 무시하고 이동할 수 있다.
도 7의 (c)에 도시된 바와 같이, 이동 로봇(100)은 영역 내에 복수의 탐색위치를 설정하여 충전대(200)를 탐색할 수 있다.
이동 로봇(100)은, 단말 또는 리모컨으로부터 입력되는 위치를 탐색위치로 설정할 수 있고, 또한, 공간의 형태를 바탕으로 탐색위치를 설정할 수 있다. 또한, 이동 로봇(100)은 감지범위에 따라 복수의 탐색위치를 설정할 수 있다.
예를 들어, 탐색할 영역의 크기가 큰 경우, 또는 영역의 중심에서 복귀 신호를 감지하는 경우, 감지 불가능한 사각시대가 존재하는 경우, 영역내 장애물에 위해 영역이 복수의 소영역으로 구분되는 경우에 대하여, 복수의 위치를 탐색위치로 설정한다.
이동 로봇(100)은 탐색위치로 이동하여, 탐색위치에서 360도 회전동작 하면서 충전대의 복귀신호를 감지한다. 복수의 탐색위치가 설정되는 경우, 하나의 탐색위치에서 충전대를 감지 한 후, 다음 탐색위치로 이동하여 충전대를 감지한다.
예를 들어 제 1 지점(P1)과 제 2 지점(P2)을 탐색위치로 설정하여 충전대의 복귀신호를 감지함으로써, 영역내에 충전대가 위치하는지 여부 및 그 위치를 판단한다.
도 7의 (d)에 도시된 바와 같이, 이동 로봇(100)은, 영역의 형태를 분석하여, 라인화 하고, 생성된 라인으로부터 탐색위치로 설정할 수 있다.
이동 로봇(100)은, 영역의 형태에 따라 생성되는 라인을 이동경로로 설정하여, 지정된 이동경로로 이동하면서 충전대를 탐색할 수 있다.
또한, 이동 로봇(100)은 영역의 형태에 따라 생성되는 라인 상에 복수의 지점을 추출하여 탐색위치를 설정할 수 있다. 이동 로봇(100)은 라인상에 형성되는 모서리, 복수의 분기점, 라인 상의 노드 중 일부 또는 전체를 탐색위치로 설정할 수 있다.
예를 들어 사각형 형태의 영역에 대하여, 이동 로봇(100)은 사각형의 라인을 생성하고 라인 상의 모서리 제 3 내지 제 6 지점(P3 내지 P6)을 각각 탐색위치로 설정한다.
또한, 이동 로봇(100)은 라인을 통해 설정된 탐색위치에 대하여, 라인을 이동경로로 설정하거나, 또는 각 탐색위치를 연결하는 최단거리를 이동경로로 설정하여 충전대를 탐색할 수 있다. 이동 로봇(100)은 탐색위치에서 회전동작 후, 다음 탐색위치로 이동하며 충전대(200)를 탐색한다.
도 8 은 도 7의 실시예에 따른 영역별 충전대 탐색모드를 설명하는데 참조되는 도이다.
도 8에 도시된 바와 같이, 이동 로봇(100)은 복수의 영역에 대하여, 앞서 설명한 탐색위치 설정방법을 바탕으로 충전대를 탐색한다.
도 8의 (a)에 도시된 바와 같이, 이동 로봇(100)은 복수의 영역에 대하여, 각 영역의 중앙을 탐색위치로 설정하고, 각 영역의 중앙으로 이동하여 1회전 하며 충전대를 탐색하고, 충전대가 감지되지 않는 경우, 다음 영역으로 이동하여 충전대를 감지한다.
이동 로봇(100)은 영역의 중앙으로 이동하므로, 이동 로봇(100)은 복수의 영역 중, 복도 또는 통로에 해당하는 영역에 대해 별도의 소영역으로 판단하여 충전대 탐색을 수행할 수 있다.
단, 이동 로봇(100)은 개방된 공간에 대하여, 도시된 바와 같이 영역의 중앙에서 충전대를 탐색한다. 영역 내에 장애물로 인하여, 이동 로봇(100)의 복귀 신호 감지범위를 벗어나는 사각지대가 형성되는 경우 또는 이동 로봇의 감지범위보다 영역의 크기가 큰 경우에는, 앞서 설명한 도 7에서의 다른 충전대 탐색방법을 사용하거나, 병행할 수 있다.
도 8의 (b)에 도시된 바와 같이, 이동 로봇(100)은 각 영역의 외곽선을 바탕으로, 영역 내부에 이동경로를 설정하여 주행하면서 충전대를 탐색한다. 하나의 영역에 대한 탐색이 완료되면, 근접한 다른 영역으로 이동하여, 해당 영역의 외곽선을 바탕으로 영역 내부의 이동경로를 설정하여 주행하면서 충전대를 탐색한다. 이동 로봇(100)은 벽에 근접하지 않고, 감지범위를 바탕으로 벽으로부터 일정 거리 떨어져 주행하게 된다.
이 경우, 이동 로봇(100)은 앞서 설명한 도 8의 (a)와 같이 영역의 중앙에서 충전대를 탐색되는 것이 비교하여 이동거리를 증가할 수 있으나, 각 영역에 대하여 구석구석까지 충전대를 탐색할 수 있다.
도 8의 (c)에 도시된 바와 같이, 이동 로봇(100)은 각 영역 내에 복수의 탐색위치를 설정하여 영역 별 탐색위치를 이동하며 충전대를 탐색한다.
이때 탐색위치는, 리모컨 또는 단말을 통해 입력되는 위치일 수 있고, 또한, 영역의 형태를 바탕으로 설정될 수 있다. 예를 들어 앞서 설명한 도 7의 (d)에서 영역의 형태를 라인화 하는 경우, 라인상의 복수의 점, 예를 들어 모서리, 분기점, 라인상의 노드를 추출하여 이를 탐색위치로 설정할 수 있다.
또한, 이동 로봇(100)은 전술한 도 8의 (a)에서 영역의 중앙에서 탐지 불가능한 사각지대가 발생하는 경우, 감지범위를 고려하여 복수의 탐색위치를 설정함으로써 복수의 영역에 대한 충전대 탐색을 수행한다.
도 8의 (d)에 도시된 바와 같이, 이동 로봇(100)은 영역의 형태를 라인화 하여, 라인을 탐색위치 및 이동경로로 설정하여 이동경로를 주행하는 중에 충전대를 탐색한다.
이동 로봇(100)은 영역의 형태를 바탕으로 라인을 생성하므로, 앞서 설명한 감지범위에 따른 사각지대에 대한 문제를 해소할 수 있고, 또한 외곽선의 형태로 이동하는 것이 비해 주행거리를 감소시킬 수 있다.
이동 로봇(100)은 이와 같이 복수의 방법으로 충전대를 탐색하며, 각 방법을 조합하여 영역의 형태를 바탕으로 각 영역에 대하여 상이한 충전대 탐색을 수행할 수 있다.
복수의 영역에 대하여 충전대를 탐색하는 경우 각 영역의 크기 또는 형태를 바탕으로 일정 크기 이하의 개방된 공간에 대해서는 중앙에서의 충전대 탐색을 수행하고, 일정 크기를 초과하는 영역 또는 영역 내에 장애물이 있는 경우에 대하여 복수의 탐색지점을 설정하거나, 공간의 형태에 따라 라인화 하여 탐색위치를 설정하여 충전대를 탐색할 수 있다.
도 9 는 본 발명의 이동 로봇의 영역 내, 탐색위치 설정방법을 설명하는데 참조되는 도이다.
도 9에 도시된 바와 같이, 탐색하고자 하는 영역의 형태에 대응하여 탐색위치를 설정한다. 도 9의 (a)와 같이, 제 1 영역(L01)에 대하여 충전대를 탐색하는 경우, 이동 로봇(100)은 제 1 영역에 대한 기 저장된 맵(L11)을 바탕으로 영역의 형태를 분석한다.
이동 로봇(100)은 맵을 바탕으로 제 1 영역(L01)의 형태를 분석하여, 세선화 작업을 수행함으로써, 영역의 형태에 대한 라인을 추출한다.
세선화 작업이란, 굵기가 있는 도형으로부터 선의 정보를 추출하는 것으로, 도형의 굵기를 가늘게 조작하여 일정 굵기 이하로 처리함으로써, 도형의 형태에 따른 선 정보를 추출하는 것이다.
이동 로봇(100)은, 영역에 대한 맵(L11)을 바탕으로, 도 9의 (b)와 같이 그 굵기를 가늘게 변경하는 것을 반복한다. 이동 로봇(100)은 영역에 대한 맵의 굵기가 감소하고(L12), 굵기가 일정값 이하로 감소하여 도형 형태에서 선 형태로 변화하게 되면, 도 9의 (c)와 같이 제 1 라인(L13)을 추출한다.
이동 로봇(100)은 추출된 라인(L13)으로부터 탐색위치를 설정한다.
이동 로봇(100)은 전술한 도 7 및 도 8에서와 같이, 제 1 라인(L13)의 모서리, 분기점, 라인 중간의 노드를 포함하는 복수의 노드(P11 내지 P15)를 추출하고, 복수의 노드 또는 복수의 노드 중 일부를 제 1 영역에 대한 탐색위치로 설정할 수 있다.
이동 로봇(100)은 지정된 탐색위치 사이를 라인에 관계없이 이동하여, 탐색위치에서 회전을 통해 충전대를 탐색한다. 또한, 이동 로봇(100)은 제 1 라인(L13)을 따라 이동라는 제 1경로(PL01)를 이동경로 설정하여 라인을 따라 이동하면서 탐색위치에서 회전을 통해 충전대를 탐색할 수 있다.
또한, 이동 로봇(10)은 추출된 라인(L13)을 탐색위치로 지정하고, 이동경로로 설정할 수 있다. 즉 이동 로봇(100)은 라인을 따라 이동하면서 충전대를 탐색할 수 있다.
이동 로봇(100)의 탐색위치의 설정 및 라인을 이동경로로 설정하는지 여부는, 입력되는 설정에 따라 변경될 수 있고, 또한, 앞서 설명한 바와 같이 충전대를 탐색하는 영역의 형태에 따라 변경될 수 있으며, 복수의 방법을 조합하여 복수의 영역에 대하여 각각 상이한 방법을 통해 충전대를 탐색할 수 있다.
이동 로봇(100)은 충전대가 감지되면, 충전대 위치를 맵과 함께 저장한다. 또한, 이동 로봇(100)은 충전대의 위치가 변경될 수 있으므로, 추출된 라인(L13)과 탐색위치에 대한 정보를 맵과 함께 저장한다.
도 10 은 본 발명의 이동 로봇의, 탐색위치에 따른 경로 설정방법을 설명하는데 참조되는 도이다.
도 10의 (a)에 도시된 바와 같이, 이동 로봇(100)은 제 1 영역(L01)에 대하여 제 1 라인(L13)과 복수의 노드(P11 내지 P15)를 추출한 후, 복수의 노드 중 일부를 탐색위치로 설정할 수 있다. 이동 로봇(100)은 제 1 라인(L13)을 따라 이동하는 제 1 경로(PL01)를 이동경로 설정하여 이동하면서 충전대를 탐색할 수 있다.
도 10의 (b)에 도시된 바와 같이, 이동 로봇(100)은 영역의 크기와, 충전대 탐색을 위한 감지범위(S)를 바탕으로, 복수의 노드(P11 내지 P15) 중 일부를 탐색위치로 설정한다.
이동 로봇(100)은 제 1 영역(L01)에 대하여, 감지범위(S)의 크기를 바탕으로, 제 1 영역(L01)을 모두 탐색할 수 있도록 탐색위치를 설정한다.
이동 로봇(100)은 복수의 노드(P11 내지 P15) 중 모서리인 제 2 지점과 제 3 지점 또는 영역 내의 끝노드 제 1 지점과 제 4 지점을 각각 탐색위치로 설정할 수 있다. 또한, 이동 로봇(100)은 영역의 크기에 따라 노드와 노드 사이에 새로운 노드를 설정하여 탐색위치를 설정할 수 있다.
예를 들어, 이동 로봇(100)은 제 2 지점(P12)을 제 1 탐색위치로 설정하고, 제 2 지점에서 감지범위에 포함되지 않는 영역을 탐색하기 위해 제 4 지점(P14)을 제 2 탐색위치로 설정할 수 있다.
이동 로봇(100)은 제 1 라인(L13)을 따라 이동하는 제 1 경로(PL01)를 이동경로로 설정할 수 있고, 또한, 도시된 바와 같이, 제 1 및 제 2 탐색위치를 연결하는 최단경로(PL02)를 이동경로로 설정할 수 있다. 이때, 이동 로봇(100)은 제 1 경로(PL01)를 기본으로 이동경로를 설정하되, 탐색위치에 따라 제 1 경로의 일부만을 주행할 수 있다.
도 11 은 도 9의 탐색위치 설정방법을 바탕으로 영역의 형태에 따른 실시예가 도시된 도이다.
도 11의 (a)에 도시된 바와 같이, 이동 로봇(100)은,제 1 영역(L01)에 대한 충전대 탐색을 수행하는 경우, 세선화 작업을 통해 제 1 라인(L13)을 추출하고, 복수의 노드(P11 내지 P15)를 추출한 후, 영역의 크기 또는 형태, 감지범위(S)에 따라, 복수의 노드(P11 내지 P15) 중 일부를 탐색위치로 설정한다.
이하, 제 1 영역 내에서의 이동은, 탐색위치를 연결하는 최단경로를 이동경로로 설정할 수도 있으나, 제 1경로(PL01)를 따라 이동하는 것을 예로하여 설명한다. 단, 이동 로봇은 탐색위치에 따라 제 1 경로 중 일부만을 이동경로로 설정하여 주행할 수 있고, 또한 최단경로를 이용한 이동 또한 가능함을 명시한다.
이동 로봇(100)은 지정된 이동경로를 이동하면서 충전대를 탐색하고, 충전대가 감지되면 즉시 충전대로 이동하여 도킹을 시도한다. 이동 로봇(100)은, 하나의 영역에서 이동경로를 따라 이동하여 충전대를 감지하지 못하는 경우, 다른 영역으로 이동하여 충전대를 탐색한다.
이하, 영역의 형태 및 크기에 따른 탐색위치 설정의 예를 설명하면 다음과 같다.
도 11의 (b)에 도시된 바와 같이, 이동 로봇(100)은, 영역의 형태와 감지범위(S)의 크기에 따라, 제 1 영역을 모두 탐색할 수 있는 제 2 지점(P12)과 제 3 지점(P13)을 탐색위치로 설정하여 제 1 영역에 대하 충전대 탐색을 수행할 수 있다.
이동 로봇(100)은 이동경로에 따라 이동하면서 제 2 지점(P12)과 제 3 지점(P13)에서 정지후 1회전 하며 충전대를 탐색한다.
이때, 제 1 경로(PL01)는 제 4 지점(P14)까지 연결되나, 이동 로봇(100)은 제 3 지점(P13)에서 제 4 지점까지 탐색할 수 있으므로, 제 4 지점까지는 이동하지 않도록 제 12 경로(PL12)를 이동경로로 설정하여 이동한다.
도 11의 (c)에 도시된 바와 같이, 이동 로봇(100)은, 영역의 형태와 감지범위(S)의 크기에 따라, 제 2 지점(P12)과 제 3 지점(P13) 사이의 거리가 감지범위보다 먼 제 2 영역(L02)에 대하여, 추가로 탐색위치를 설정할 수 있다.
이동 로봇(100)은, 제 2 지점과 제 3 지점에서의 충전대 탐색만으로는 모든 영역을 감지할 수 없으므로 중간지점인 제 5 지점(P15)을 제 2 지점(P12) 및 제 3 지점(P13)과 함께 탐색위치로 설정한다. 또한, 이동 로봇(100)은 제 2 지점부터 제 3 지점까지의 제 13 경로(PL13)를 이동경로로 설정한다.
이동 로봇(100)은, 제 2 지점(P12), 제 5 지점(P15) 및 제 3 지점(P13) 간을 이동하면서 각 지점에서 1회전하여 충전대를 탐색하고, 제 3 지점까지 탐색 한 후, 충전대가 감지되지 않는 경우 다른 영역으로 이동하여 충전대를 탐색한다.
도 11의 (d)와 같이, 제 1 지점(P11)과 제 2 지점(P12), 그리고 제 3 지점(P13)과 제 4 지점(P14) 간의 거리가 먼 제 3 영역(L03)에 대하여, 이동 로봇(100)은 감지범위(S)에 따라 4개의 지점을 탐색위치로 설정할 수 있다.
제 3 지점에서 제 4 지점을 감지할 수 없으므로 제 4지점까지의 제 14 경로(PL14)를 이동경로로 설정하여 충전대를 탐색한다.
이동 로봇(100)은 제 14경로(PL14)에 따라 제 1 지점(P11)부터 제 4지점(P14)까지 이동하면서, 제 1 지점(P11) 내지 제 4 지점(P14)에서 각각 회전하며 충전대를 탐색한다.
또한, 도 11의 (e)에 도시된 바와 같이, 이동 로봇의 감지범위(S)로 제 5 영역(L05)의 가로길이에 대한 감지가 가능하지만, 제 2 지점(P12)과 제 3 지점(P13)에서 각각 일부 영역에 대한 감지가 불가능한 경우, 제 1 지점(P11)과 제 2지점(P12) 사이의 제 6 지점(P16), 제 3 지점과 제 4 지점 사이의 제 7 지점(P17)을 각각 탐색위치로 설정할 수 있다.
이동 로봇(100)은 탐색위치를 연결하는 제 15 경로(PL15)를 이동경로로 설정하여 충전대를 탐색하고, 충전대가 감지되지 않는 경우 다음 영역으로 이동하여 충전대 감지를 수행한다.
도 12 는 도 10의 경로 설정방법을 바탕으로 영역의 형태에 따른 실시예가 도시된 도이다.
도 12의 (a)에 도시된 바와 같이, 영역 내에 복수의 장애물(O11, O12, O13)이 존재하는 경우, 개방된 영역이 아니므로, 이동 로봇(100)은 앞서 설명한 바와 같이 복수의 지점을 탐색위치로 설정하여 충전대를 탐색한다.
이동 로봇(100)은 세선화 작업을 통해 영역에 대한 라인을 추출하고, 복수의 노드 중 일부를 탐색위치로 설정하여 충전대를 탐색한다. 이동 로봇(100)은 감지범위(S)에 따라, 제 21지점(P21), 제 22지점(P22), 제 23지점(P23), 그리고 제 24지점(P24)을 각각 탐색위치로 설정한다.
이동 로봇(100)은 추출된 라인(PL21)을 바탕으로 탐색위치를 연결하는 제 22 경로(PL22)를 이동경로로 설정하여 충전대를 탐색한다. 이동 로봇(100)은 각 탐색위치에서 회전하면 충전대를 탐색하고, 충전대가 감지되지 않는 경우 다음 탐색위치로 이동하여 회전하며 충전대를 감지한다.
또한, 이동 로봇은, 도 12의 (b)에 도시된 바와 같이, 탐색위치를 연결하는 최단경로인 제 23 경로(PL23)를 이동경로로 설정하여 충전대를 탐색한다.
한편, 도 12의 (c)와 같이, 이동 로봇(100)은 영역의 크기 및 감지범위에 따라, 제 21지점과 제 22지점 사이에 제 26지점을 설정하고, 제 23지점과 제 24지점 사이에 제 27지점(P27)을 각각 탐색위치로 설정하고, 탐색위치를 연결하는 제 24 경로(PL24)를 이동경로로 설정하여 충전대를 탐색할 수 있다.
도 13 은 본 발명의 이동 로봇의, 복수의 영역 간 이동 및 충전대 탐색의 실시예가 도시된 도이다.
복수의 영역, 제 31 영역(A31), 제 32 영역(A32), 제 33영역(A33)에 대하여, 충전대를 탐색하는 경우, 이동 로봇(100)은 각 영역을 이동하며 탐색위치를 설정하고, 탐색위치를 연결하는 이동경로를 설정하여 충전대를 탐색한다.
도 13의 (a)에 도시된 바와 같이, 제 31 영역(A31), 제 32 영역(A32), 제 33영역(A33)이 장애물이 없는 개방된 영역인 경우, 각 영역의 중앙지점을 탐색위치로 설정하고, 영역의 중앙에서 회전하며 충전대를 탐색한다.
이동 로봇(100)은 제 32 영역(A32)에서 회전하며 충전대를 탐색한 후, 제 31 영역(A31)의 중앙으로 이동하여 회전하면서 충전대를 감지하고, 충전대가 감지되지 않은 경우 제 32영역을 거쳐 제 33 영역(A33)의 중앙으로 이동한 후 충전대를 탐색할 수 있다.
이동 로봇(100)은 충전대가 감지되면, 충전대로 이동하여 도킹한 후 충전을 시작한다. 또한, 이동 로봇(100)은 감지된 충전대에 대하여, 이동 로봇의 현재위치를 바탕으로 맵상에 충전대의 위치를 저장한다.
단, 제 32 영역과 제 33 영역을 연결하는 영역에 충전대가 위치하는 경우 이동 로봇은 충전대를 감지할 수 없게 된다. 그에 따라 이동 로봇은 제 32 영역과 제 33 영역을 연결하는 영역에 탐색위치를 추가 설정하여 충전대를 탐색할 수 있다.
또한, 이동 로봇(100)은 도 13의 (b)에 도시된 바와 같이, 각 영역에 대하여 복수의 지점을 탐색위치로 설정하여 충전대를 탐색할 수 있다.
제 31 영역(A31)에 장애물(O31 내지 O33)이 복수로 존재하고 개방된 상태가 아닌 경우 이동 로봇(100)은 제 31 영역(A31)에 대하여 제 33 내지 제 39 지점을 노드로 추출한 후 감지범위와 영역의 형태에 따라 탐색위치를 설정한다.
예를 들어, 이동 로봇(100)은 제 33 지점(P33), 제 35 지점(P35), 제 39지점(P39)을 탐색위치로 설정하고 탐색위치를 연결하는 이동경로를 라인을 따라 설정할 수 있다. 또한, 이동 로봇(100)은 제 32 영역(A32)에 대하여, 장애물(O34)이 존재하기는 하나, 개방된 영역이므로 중앙지점인 제 31 지점(P31)을 탐색위치로 설정하고, 제 31 지점에서 감지가 불가능한한 제 32 영역과 제 33 영역을 연결하는 제 42지점(P42)과, 제 43 지점(P43)을 탐색위치로 추가하여 제 43 지점(P43)까지의 이동경로를 설정한다. 제 33 영역(A33)의 경우, 영역내의 장애물(O36, O35)이 충전대 감지에 방해가 되지 않으므로 개방된 공간으로 판단하여 중앙지점인 제 46지점(P46)을 탐색위치로 설정한다. 경우에 따라 제 33 영역의 크기가 감지범위보다 큰 경우에는 탐색위치를 추가로 설정할 수 있다.
이동 로봇(100)은 이와 같이 영역의 형태에 따라, 중앙지점 또는 복수의 노드를 탐색위치로 설정하고, 세선화에 의해 추출된 라인으로부터 형성된 이동경로를 따라 이동하며 충전대를 감지한다.
한편, 이동 로봇(100)은, 앞서 설명한 바와 같이 탐색위치를 설정한 후, 도 13의 (c)에 도시된 바와 같이, 탐색위치를 연결하는 이동경로를, 최단경로로 설정할 수 있다.
그에 따라 이동 로봇(100)은, 추출된 라인에 관계없이, 탐색위치와 탐색위치를 최단경로로 연결하여 이동경로를 설정하여, 충전대를 탐색할 수 있다.
도 14 는 본 발명의 이동 로봇의 충전대 탐색방법이 도시된 순서도이다.
도 14에 도시된 바와 같이, 이동 로봇(100)은 배터리의 충전용량이 일정값 미만으로 감소하는 경우, 충전이 필요하다고 판단하여 충전대 탐색을 시작한다(S310).
제어부(140)는 저장부(150)에 저장된 맵으로부터 충전대 위치를 확인한다. 제어부(140)는 충전대 위치가 설정되어 있는 경우 충전대 위치로 이동하여 충전대 도킹을 시도한다.
맵 상에 충전대 위치가 설정되어 있지 않은 경우, 제어부(140)는 청소를 중지하고 충전대 탐색을 수행한다.
제어부(140)는 기 저장된 맵을 바탕으로, 현재 위치를 판단한다(S320). 제어부(140)의 학습모듈(143)은 각 위치에서 영상획득부(120)를 통해 획득한 영상을 처리하여 맵과 연계시켜 전역위치를 인식함으로써, 현재 위치를 판단한다.
제어부(140)는 현재 위치를 확인할 수 없는 경우, 벽 추종(월팔로윙)을 통해 주행하며(S390), 충전대를 감지한다(S400). 제어부(140)는 주행 중, 충전대 복귀신호를 감지하면, 충전대로 이동하여 도킹을 시도한다(S410, S420).
한편, 제어부(140)는 현재 위치를 확인할 수 있는 경우, 맵 상에 현재 위치를 매칭한 후, 탐색할 영역을 선택한다(S330). 탐색할 영역이 복수인 경우, 어느 하나의 영역을 선택하여 충전대 탐색을 시작한다. 예를 들어, 현재 이동 로봇의 위치한 영역부터 충전대 탐색을 시작하거나, 근접한 영역으로 이동하여 충전대 탐색을 시작할 수 있다. 경우에 따라 리모컨 또는 단말을 통해 어느 하나의 영역이 선택되면, 선택된 영역으로 이동하여 충전대 탐색을 수행할 수 있다.
제어부(140)는 선택된 영역에 대하여, 탐색위치를 설정한다(S340).
예를 들어, 제어부(140)는 기 저장된 맵을 바탕으로 영역의 형태를 판단하여 개방된 영역의 경우 영역의 중앙을 탐색위치로 설정하고, 영역 또는 감지범위의 크기에 따라 복수의 지점을 탐색위치로 설정할 수 있다. 또한, 제어부(140)는 세선화를 통해 영역의 형태에 따라 라인을 추출하여 복수의 노드를 설정하고, 복수의 노드 중 적어도 하나를 탐색위치로 설정할 수 있다.
제어부(140)는 탐색위치가 설정되면, 탐색위치를 연결하는 이동경로를 설정하고, 주행부를 제어하여 이동경로에 따라 탐색위치로 이동한다(S350).
이동 로봇(100)은 설정된 이동경로에 따라 탐색위치로 이동하여, 탐색위치에서 회전하며 충전대의 복귀신호를 감지한다(S360).
제어부(140)는 통신부를 통해 충전대의 복귀신호가 수신되면(S370), 충전대 위치를 판단하여 주행부를 제어하여 충전대로 이동한다. 충전대 이동 후, 충전대의 신호를 바탕으로 도킹하여 충전한다(S420).
한편, 탐색위치에서 충전대가 감지되지 않는 경우, 제어부(140)는 주행부를 제어하여 다음 탐색위치로 이동한다.
이때, 영역에 탐색위치가 복수로 설정되어, 다음 탐색위치가 존재하는 경우(S380), 다음 탐색위치로의 경로를 따라 이동하여 충전대 탐색을 수행한다(S350 내지S370).
이때, 영역에 탐색위치가 하나인 경우에는 다음 탐색위치가 존재하지 않으므로, 탐색을 영역을 재 설정하여 선택된 영역으로 이동하여 충전대 탐색을 계속 수행한다(S330 내지 S370),
영역에 설정된 마지막 탐색위치까지 이동하여 충전대를 탐색 후, 충전대가 감지되지 않은 경우, 제어부(140)는 탐색할 영역을 다시 설정하고, 선택된 영역으로 이동하여 충전대 탐색을 수행한다(S330 내지 S370).
제어부(140)는 통신부를 통해 충전대의 복귀신호가 수신되면, 충전대 위치를 판단하여 주행부를 제어하여 충전대로 이동한다. 충전대 이동 후, 충전대의 신호를 바탕으로 도킹하여 충전한다(S420).
도 15 는 도 14의 충전대 탐색 시, 탐색위치 설정방법을 설명하는데 참조되는 순서도이다.
도 15에 도시된 바와 같이, 이동 로봇(100)의 제어부(140)는 복수의 영역 중, 탐색할 영역을 선택한다(S330).
탐색위치 설정 시(S340), 제어부(140)는 리모컨 또는 단말로부터 입력되는 데이터에 따라 탐색위치를 설정할 수 있고, 영역에 랜덤으로 탐색위치를 설정할 수 있다(S440). 또한, 영역의 중앙지점을 탐색위치로 설정할 수 있다.
또한, 제어부(140)는 선택된 영역의 형태를 분석하여 단순화하고, 세선화 작업을 수행하여 라인을 추출한다(S450).
제어부(140)는 단순화된 영역의 형태를 바탕으로 탐색위치를 설정할 수 있다(S460). 제어부(140)는 영역의 형태에 따라 추출된 라인을 바탕으로, 라인상의 분기점, 모서리 등의 노드를 탐색위치로 설정하거나, 또는 추출되는 복수의 노드 중 적어도 하나를 탐색위치로 설정한다. 이때, 제어부(140)는 영역의 크기, 이동 로봇의 감지범위 등에 대응하여 적어도 하나의 노드를 탐색위치로 설정한다.
또한, 제어부(140)는 추출된 라인을 탐색위치로 설정하여 라인 상에서 충전대를 탐색하도록 설정할 수 있다(S480).
탐색위치가 설정되면, 경로를 설정하여 이동한다(S350).
경로 설정 시, 제어부(140)는 탐색위치가 설정되면, 탐색위치를 잇는 이동경로를 설정한다. 이동경로를 라인에 따라 설정되거나 또는 탐색위치간의 최단경로를 연결하여 이동경로로 설정할 수 있다(S490).
한편, 추출된 라인을 탐색위치로 설정하는 경우에는 추출된 라인으로 이동경로를 설정한다(S500).
제어부(140)는 주행부를 제어하여 탐색위치로 이동하고(S520), 지정된 탐색위치에서 회전하며 충전대의 복귀신호를 감지한다(S530)(S540). 탐색위치가 설정된 경우에도 주행 중에 충전대 복귀신호를 감지할 수 있다.
라인을 탐색위치로 설정한 경우에는 주행중에 충전대 복귀신호를 감지한다(S550).
도 16 은 본 발명의 영역 바운더리 이동을 통한 이동 로봇의 충전대 탐색방법이 도시된 순서도이다.
도 16에 도시된 바와 같이, 이동 로봇(100)은 앞서 설명한 도 8의 (b)와 같이 영역내에 탐색위치가 아닌 영역의 외곽선 형태에 따라 주행경로를 설정하여 충전대를 탐색할 수 있다.
배터리의 충전용량이 일정값 미만으로 감소하면 이동 로봇은 충전대 탐색을 시작한다(S730).
제어부(140)는 저장부(150)에 저장된 맵으로부터 충전대 위치를 확인한다. 제어부(140)는 충전대 위치가 설정되어 있는 경우 충전대 위치로 이동하여 충전대 도킹을 시도한다.
맵 상에 충전대 위치가 설정되어 있지 않은 경우, 제어부(140)는 청소를 중지하고 충전대 탐색을 수행한다.
제어부(140)는 기 저장된 맵을 바탕으로, 현재 위치를 판단한다(S740).
제어부(140)는 현재 위치를 확인할 수 없는 경우, 벽 추종(월팔로윙)을 통해 주행하며(S790), 충전대를 감지한다(S800). 제어부(140)는 주행 중, 충전대 복귀신호를 감지하면, 충전대로 이동하여 도킹을 시도한다(S810, S820).
한편, 제어부(140)는 현재 위치를 확인할 수 있는 경우, 맵 상에 현재 위치를 매칭한 후, 탐색할 영역을 선택한다(S750). 탐색할 영역이 복수인 경우, 어느 하나의 영역을 선택하여 충전대 탐색을 시작한다.
제어부(140)는 영역의 형태를 바탕으로, 영역의 바운더리, 즉 벽면으로부터 일정 거리 떨어진 위치에 외곽선 형태의 주행경로를 설정하고(S760), 주행경로를 이동하면서 충전대의 복귀신호를 감지한다(S770).
제어부(140)는 충전대의 복귀신호가 수신되기 까지 이동하고, 영역 탐색이 완료되면 다음 영역으로 이동하여 충전대 탐색을 수행한다.
제어부(140)는 충전대의 복귀신호가 수신되면, 복귀신호에 따라 충전대로 이동하여(S810), 충전대 도킹을 시도하고, 도킹 완료시 충전대로부터 충전전류를 공급받아 충전한다(S820).
따라서 이동 로봇(100)은 충전이 필요한 경우, 설정에 따라 영역별로 탐색위치를 설정하여 적은 이동량으로 복수의 영역에 대한 충전대 탐색을 수행하여 단시간에 충전대로 복귀할 수 있다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다.
100: 이동 로봇 110: 본체
120: 영상획득부 140: 제어부
141: 주행제어부 142: 구역구분부
143: 학습부 144: 인식부
150: 저장부 160: 주행부
50: 단말

Claims (24)

  1. 이동 가능한 본체;
    상기 본체를 이동시키는 주행부;
    주행구역에 대한 맵(MAP)이 저장되는 저장부;
    현재 위치를 인식하여 상기 맵을 바탕으로, 상기 본체가 상기 주행구역을 주행하며 청소를 수행하도록 하는 제어부를 포함하고,
    상기 제어부는, 충전 필요 시 상기 주행구역의 각 영역의 형태에 대응하여 영역에 적어도 하나의 탐색위치를 설정하고, 탐색위치를 연결하는 이동경로를 따라 상기 본체가 이동하도록 상기 주행부를 제어하며, 이동 중 충전대의 복귀신호를 감지하여 상기 충전대를 탐색하는 것을 특징으로 하는 이동 로봇.
  2. 제 1 항에 있어서,
    상기 제어부는, 개방된 영역에 대하여 영역의 중앙 지점을 탐색위치로 설정하고, 상기 탐색위치로 이동하여 회전하며 상기 복귀신호를 감지하는 것을 특징으로 하는 이동 로봇.
  3. 제 1 항에 있어서,
    상기 제어부는, 리모컨 또는 단말로부터 수신되는 데이터에 대응하여 영역에 적어도 하나의 탐색위치를 설정하고, 상기 탐색위치로 이동하여 회전하며 상기 복귀신호를 감지하는 것을 특징으로 하는 이동 로봇.
  4. 제 1 항에 있어서,
    상기 제어부는, 영역의 형태에 따라 복수의 탐색위치를 설정하고, 상기 탐색위치로 이동하여 회전하며 상기 복귀신호를 감지하는 것을 특징으로 하는 이동 로봇.
  5. 제 1 항에 있어서,
    상기 제어부는, 영역의 형태를 분석하여 세선화 작업을 통해 상기 영역의 형태에 대응하는 라인을 추출하고, 상기 라인으로부터 복수의 노드를 추출하여 상기 복수의 노드 중 적어도 하나를 상기 탐색위치로 설정하는 것을 특징으로 하는 이동 로봇.
  6. 제 5 항에 있어서,
    상기 제어부는, 영역의 형태, 영역의 크기, 및 상기 본체의 감지범위의 크기에 대응하여, 상기 영역을 모두 탐색할 수 있도록 상기 복수의 노드 중 적어도 하나를 탐색위치로 설정하는 것을 특징으로 하는 이동 로봇.
  7. 제 5 항에 있어서,
    상기 제어부는, 상기 라인의 모서리, 분기점의 노드를 상기 탐색위치로 설정하는 것을 특징으로 하는 이동 로봇.
  8. 제 5 항에 있어서,
    상기 제어부는, 상기 라인 상에 노드와 노드 사이의 거리가 상기 본체의 감지범위보다 먼 경우, 중간지점에 노드를 설정하여 상기 탐색위치로 설정하는 것을 특징으로 하는 이동 로봇.
  9. 제 7 항 또는 제 8 항에 있어서,
    상기 제어부는, 상기 탐색위치를 연결하는 이동경로를 설정하여 하나의 탐색위치에서 회전하며 상기 충전대를 탐색 한 후, 다음 탐색위치로 이동하여 상기 충전대를 탐색하는 것을 특징으로 하는 이동 로봇.
  10. 제 5 항에 있어서,
    상기 제어부는, 상기 라인을 상기 탐색위치로 설정하고, 상기 라인을 따라 상기 이동경로를 설정하여 이동중 상기 충전대의 복귀신호를 감지하는 것을 특징으로 하는 이동 로봇.
  11. 제 5 항에 있어서,
    상기 제어부는, 상기 라인을 따라 상기 탐색위치를 상호 연결하도록 상기 이동경로를 설정하는 것을 특징으로 하는 이동 로봇.
  12. 제 5 항에 있어서,
    상기 제어부는, 상기 탐색위치 간의 최단경로를 연결하여 상기 이동경로를 설정하는 것을 특징으로 하는 이동 로봇.
  13. 제 1 항에 있어서,
    상기 제어부는, 영역의 벽면으로부터 일정 거리 떨어진 위치로부터 상기 영역의 외곽선 형태로 상기 이동경로를 설정하여 이동 중 상기 충전대를 탐색하는 것을 특징으로 하는 이동 로봇.
  14. 제 1 항에 있어서,
    주변의 영상을 획득하는 영상획득부; 를 더 포함하고,
    상기 제어부는 상기 영상획득부를 통해 입력되는 획득영상을 상기 저장부에 저장된 영상과 비교하여 상기 맵 상에서 상기 본체의 현재 위치를 판단하여, 상기 충전대를 탐색하는 것을 특징으로 하는 이동 로봇.
  15. 제 14 항에 있어서,
    상기 제어부는 상기 충전대가 감지되면, 상기 충전대로 이동 한 후, 상기 본체의 위치를 바탕으로 상기 충전대의 위치를 상기 맵에 저장하는 것을 특징으로 하는 이동 로봇.
  16. 충전이 필요한 경우, 충전대 탐색을 시작하는 단계;
    기 저장된 맵으로부터 현재위치를 판단하여, 탐색을 시작할 영역을 선택하는 단계;
    상기 영역의 형태에 대응하여 탐색위치를 설정하는 단계;
    상기 탐색위치를 연결하는 이동경로를 설정하는 단계;
    상기 이동경로를 따라 이동하며 충전대를 탐색하는 단계;
    상기 충전대가 존재하지 않는 경우, 새로운 영역을 지정하고, 상기 새로운 영역으로 이동하여 상기 충전대를 탐색하는 단계; 및
    상기 충전대로부터 송출된 복귀신호가 감지되면, 상기 충전대로 이동하여 충전하는 단계;를 포함하는 이동로봇의 제어방법.
  17. 제 16 항에 있어서,
    상기 탐색위치를 설정하는 경우,
    개방된 영역인 경우, 상기 영역의 중앙 지점을 탐색위치로 설정하고,
    리모컨 또는 단말로부터 데이터가 수신되는 경우, 상기 데이터에 대응하여 상기 영역에 적어도 하나의 탐색위치를 설정하고,
    영역의 형태에 따라 복수의 탐색위치를 랜덤으로 설정하는 것을 특징으로 하는 이동로봇의 제어방법.
  18. 제 16 항에 있어서,
    상기 탐색위치를 설정하는 경우, 영역의 형태를 분석하여 세선화 작업을 통해 상기 영역의 형태에 대응하는 라인을 추출하는 단계;
    상기 라인으로부터 복수의 노드를 추출하여 상기 복수의 노드 중 적어도 하나를 상기 탐색위치로 설정하는 단계를 더 포함하는 이동로봇의 제어방법.
  19. 제 18 항에 있어서,
    상기 탐색위치를 설정하는 경우, 영역의 형태, 영역의 크기, 및 본체의 감지범위의 크기에 대응하여, 상기 영역을 모두 탐색할 수 있도록 상기 복수의 노드 중 적어도 하나를 탐색위치로 설정하는 것을 특징으로 하는 이동로봇의 제어방법.
  20. 제 18 항에 있어서,
    상기 탐색위치를 설정하는 경우, 상기 라인의 모서리, 분기점의 노드를 상기 탐색위치로 설정하는 것을 특징으로 하는 이동로봇의 제어방법.
  21. 제 16 항에 있어서,
    상기 탐색위치를 설정하는 경우, 상기 탐색위치에서 회전하며 상기 복귀신호를 감지하고, 다음 탐색위치로 이동하는 단계를 더 포함하는 이동로봇의 제어방법.
  22. 제 18 항에 있어서,
    상기 이동경로를 설정하는 경우, 상기 라인을 상기 탐색위치로 설정하고, 상기 라인을 따라 상기 이동경로를 설정하는 단계를 더 포함하는 이동로봇의 제어방법.
  23. 제 18 항에 있어서,
    상기 이동경로를 설정하는 경우, 상기 라인을 따라 상기 탐색위치를 상호 연결하도록 상기 이동경로를 설정하는 단계를 더 포함하는 이동로봇의 제어방법.
  24. 제 16 항에 있어서,
    상기 이동경로를 설정하는 경우, 상기 탐색위치 간의 최단경로를 연결하여 상기 이동경로를 설정하는 것을 특징으로 하는 이동로봇의 제어방법.
KR1020180156702A 2016-08-22 2018-12-07 이동 로봇 및 그 제어방법 KR102478283B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180156702A KR102478283B1 (ko) 2016-08-22 2018-12-07 이동 로봇 및 그 제어방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020160106366A KR20180021595A (ko) 2016-08-22 2016-08-22 이동 로봇 및 그 제어방법
KR1020180156702A KR102478283B1 (ko) 2016-08-22 2018-12-07 이동 로봇 및 그 제어방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020160106366A Division KR20180021595A (ko) 2016-08-22 2016-08-22 이동 로봇 및 그 제어방법

Publications (2)

Publication Number Publication Date
KR20180133367A true KR20180133367A (ko) 2018-12-14
KR102478283B1 KR102478283B1 (ko) 2022-12-15

Family

ID=84439704

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180156702A KR102478283B1 (ko) 2016-08-22 2018-12-07 이동 로봇 및 그 제어방법

Country Status (1)

Country Link
KR (1) KR102478283B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112987743A (zh) * 2021-03-02 2021-06-18 珠海市一微半导体有限公司 一种机器人快速找座方法、芯片和机器人
CN115890647A (zh) * 2021-08-27 2023-04-04 成都家有为力机器人技术有限公司 基于视觉导航的机器人基座定位方法、装置、机器人及介质
KR102572841B1 (ko) * 2022-07-21 2023-08-30 주식회사 클로봇 이동 로봇, 인공 지능 기반의 이동 로봇의 공간 크기 별 맞춤형 자율 주행 방법 및 프로그램

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080078327A (ko) * 2007-02-23 2008-08-27 주식회사 유진로봇 이동 로봇의 자동 충전 장치 및 그를 이용한 자동 충전방법
KR20100092807A (ko) * 2009-02-13 2010-08-23 삼성전자주식회사 이동 로봇 및 이동 로봇의 이동 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080078327A (ko) * 2007-02-23 2008-08-27 주식회사 유진로봇 이동 로봇의 자동 충전 장치 및 그를 이용한 자동 충전방법
KR20100092807A (ko) * 2009-02-13 2010-08-23 삼성전자주식회사 이동 로봇 및 이동 로봇의 이동 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112987743A (zh) * 2021-03-02 2021-06-18 珠海市一微半导体有限公司 一种机器人快速找座方法、芯片和机器人
CN112987743B (zh) * 2021-03-02 2024-02-23 珠海一微半导体股份有限公司 一种机器人快速找座方法、芯片和机器人
CN115890647A (zh) * 2021-08-27 2023-04-04 成都家有为力机器人技术有限公司 基于视觉导航的机器人基座定位方法、装置、机器人及介质
KR102572841B1 (ko) * 2022-07-21 2023-08-30 주식회사 클로봇 이동 로봇, 인공 지능 기반의 이동 로봇의 공간 크기 별 맞춤형 자율 주행 방법 및 프로그램

Also Published As

Publication number Publication date
KR102478283B1 (ko) 2022-12-15

Similar Documents

Publication Publication Date Title
KR20180021595A (ko) 이동 로봇 및 그 제어방법
KR102319489B1 (ko) 이동 로봇 및 그 제어방법
KR102314539B1 (ko) 인공지능 이동 로봇의 제어 방법
KR102032285B1 (ko) 이동 로봇 및 그 제어방법
KR102235271B1 (ko) 이동 로봇 및 그 제어방법
KR102000067B1 (ko) 이동 로봇
KR101629649B1 (ko) 로봇 청소기 및 로봇 청소기의 제어방법
KR20180087798A (ko) 이동 로봇 및 그 제어방법
KR20180085309A (ko) 이동 로봇 시스템 및 그 제어방법
KR102203434B1 (ko) 로봇 청소기 및 로봇 청소기의 제어방법
KR20180125010A (ko) 이동 로봇 및 이동 로봇의 제어방법
US11348276B2 (en) Mobile robot control method
KR20180023301A (ko) 이동 로봇 및 그 제어방법
KR102478283B1 (ko) 이동 로봇 및 그 제어방법
KR101922953B1 (ko) 이동 로봇 및 그 제어방법
KR102669126B1 (ko) 이동 로봇 및 그 제어방법
KR20180037516A (ko) 이동 로봇 및 그 제어방법
KR20180048088A (ko) 로봇 청소기 및 그 제어방법
KR102048363B1 (ko) 이동 로봇
KR20200091110A (ko) 이동 로봇 및 그 제어 방법
KR20230011698A (ko) 이동 로봇

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E601 Decision to refuse application
GRNT Written decision to grant