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

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

Info

Publication number
KR20170108656A
KR20170108656A KR1020160032918A KR20160032918A KR20170108656A KR 20170108656 A KR20170108656 A KR 20170108656A KR 1020160032918 A KR1020160032918 A KR 1020160032918A KR 20160032918 A KR20160032918 A KR 20160032918A KR 20170108656 A KR20170108656 A KR 20170108656A
Authority
KR
South Korea
Prior art keywords
information
image
sensor
laser
mobile robot
Prior art date
Application number
KR1020160032918A
Other languages
English (en)
Other versions
KR101786516B1 (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 KR1020160032918A priority Critical patent/KR101786516B1/ko
Publication of KR20170108656A publication Critical patent/KR20170108656A/ko
Application granted granted Critical
Publication of KR101786516B1 publication Critical patent/KR101786516B1/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4061Steering means; Means for avoiding obstacles; Details related to the place where the driver is accommodated
    • 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
    • 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/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • 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

Abstract

본 발명은 이동 로봇에 관한 것으로서, 보다 상세하게는, 자율 주행을 수행하는 청소기에 관한 것으로서, 본체, 상기 본체를 이동시키기 위한 구동력을 제공하는 구동부, 상기 본체의 외부환경과 관련된 이미지를 생성하는 카메라 센서, 상기 본체 주위에 존재하는 물체를 스캔하여, 레이저 스캔 정보를 생성하는 레이저 센서, 상기 이미지 및 상기 레이저 스캔 정보를 중 적어도 하나를 이용하여, 본체의 위치 및 경로와 관련된 정보를 수정하는 제어부를 포함한다.

Description

이동 로봇 및 그 제어방법{MOVING ROBOT AND CONTROLLING METHOD THEREOF}
본 발명은 이동 로봇 및 그 제어 방법에 관한 것으로서, 보다 상세하게는, 자율 주행을 수행하는 청소기 및 그 제어 방법에 관한 것이다.
일반적으로 로봇은 산업용으로 개발되어 공장 자동화의 일 부분을 담당하여 왔다. 최근에는 로봇을 응용한 분야가 더욱 확대되어, 의료용 로봇, 우주 항공 로봇 등이 개발되고, 일반 가정에서 사용할 수 있는 가정용 로봇도 만들어지고 있다.
상기 가정용 로봇의 대표적인 예는 로봇 청소기로서, 일정 영역을 스스로 주행하면서 주변의 먼지 또는 이물질을 흡입하여 청소하는 가전기기의 일종이다. 이러한 로봇 청소기는 일반적으로 충전 가능한 배터리를 구비하고, 주행 중 장애물을 피할 수 있는 장애물 센서를 구비하여 스스로 주행하며 청소할 수 있다.
최근에는, 로봇 청소기가 청소 영역을 단순히 자율적으로 주행하여 청소를 수행하는 것에서 벗어나 로봇 청소기를 헬스 케어, 스마트홈, 원격제어 등 다양한 분야에 활용하기 위한 연구가 활발하게 이루어지고 있다.
구체적으로, 기존의 로봇 청소기는 장애물과 관련된 정보를 검출하기 위해, 적외선 센서, 초음파 센서, RF 센서(Radio Frequency Sensor), 광 센서, 또는 2차원 영상을 획득하는 카메라 센서만을 구비한다. 따라서, 기존의 로봇 청소기에서는 정확한 장애물 정보를 얻기 어려운 문제점이 있다.
특히, 기존의 로봇 청소기는 일반적으로 2차원 카메라 센서에 의해 획득된 2차원 영상 정보를 이용하여 장애물을 검출하는데, 이러한 2차원 영상 정보만으로는 장애물과 로봇 본체 사이의 거리, 장애물의 입체적 형태 등을 정확하게 검출하기 어렵다.
또한, 기존의 로봇 청소기는 장애물 정보를 검출하기 위해 2차원 영상 정보로부터 특징점을 추출하는데, 2차원 영상 정보가 특징점 추출이 불리하도록 형성된 경우에는 검출된 장애물 정보의 정확도가 현저히 저하된다.
이와 같은 문제점을 해결하기 위해 레이저 센서를 탑재한 로봇 청소기의 필요성이 대두되고 있다.
레이저 센서를 탑재한 로봇 청소기는, 레이저 센서에서 생성된 레이저 스캔정보를 이용하여, 로봇 청소기의 위치를 검출하거나, 로봇 청소기의 경로를 보정할 수 있다. 또한, 레이저 센서를 탑재한 로봇 청소기는, 로봇 청소기의 본체 주변에 존재하는 장애물이나 벽면과 관련된 정보를 검출할 수 있다.
다만, 레이저 스캔정보만을 근거로 검출된 로봇 청소기의 위치는 그 정확도가 현저히 떨어지는 문제점이 있다. 즉, 레이저 센서는 로봇 청소기의 본체로부터 특정 거리 내의 물체만을 스캔할 수 있기 때문에, 로봇 청소기가 넓은 지역이나 긴 복도와 같은 환경에 위치하는 경우, 레이저 스캔정보를 생성할 수 없다.
또한, 로봇 청소기는 레이저 스캔정보만으로는 레이저 스캔정보가 생성된 시점에 상기 로봇 청소기가 존재하는 장소에 대해 장소 인식 또는 위치 인식을 수행할 수 없는 문제점이 있다.
본 발명이 해결하고자 하는 기술적 과제는, 로봇 청소기에 설치된 레이저 센서 및 카메라 센서를 함께 이용하여, 로봇의 위치를 인식하거나 경로를 조정하는 자율주행을 수행하는 청소기 및 그의 제어방법을 제공하는 것이다.
또한, 본 발명의 목적은 주행 환경에 존재하는 시각적 패턴과, 주행 환경의 형태 중 적어도 하나를 근거하여, 로봇의 위치를 인식하거나 경로를 조정하는 자율주행을 수행하는 청소기 및 그의 제어방법을 제공하는 것이다.
또한, 본 발명의 목적은 로봇 청소기가 주행하는 도중에 슬립이 발생되어도 카메라 센서에서 생성된 이미지와 레이저 센서에서 생성된 레이저 스캔정보를 비교하여, 로봇의 현재 위치를 정확하게 검출할 수 있는 자율주행을 수행하는 청소기 및 그의 제어방법을 제공하는 것이다.
또한, 본 발명의 목적은 로봇 청소기가 폐곡선을 따라 순환할 때마다, 카메라 센서와 레이저 센서를 함께 이용하여 청소기의 위치 정보와, 경로 정보를 조정할 수 있는 자율주행을 수행하는 청소기 및 그의 제어방법을 제공하는 것이다.
또한, 본 발명의 목적은 로봇 청소기가 주행 시작 지점을 복귀하는 때, 카메라 센서에서 촬영된 이미지로부터 추출되는 이미지 패턴과, 레이저 센서에서 생성된 레이저 스캔 정보로부터 추출되는 지형적 형태에 근거하여 복귀 경로를 설정하는 자율주행을 수행하는 청소기 및 그의 제어방법을 제공하는 것이다.
본 발명의 기술적 과제를 해결하기 위해, 본 발명에 따른 자율주행을 수행하는 청소기는 본체와, 상기 본체를 이동시키기 위한 구동력을 제공하는 구동부, 상기 본체의 외부환경과 관련된 이미지를 생성하는 카메라 센서, 상기 본체 주위에 존재하는 물체를 스캔하여, 레이저 스캔 정보를 생성하는 레이저 센서 및 상기 이미지 및 상기 레이저 스캔 정보를 중 적어도 하나를 이용하여, 본체의 위치 및 경로와 관련된 정보를 수정하는 제어부를 포함하는 것을 특징으로 한다.
제어부는 소정의 시간 간격으로 카메라 센서 및 레이저 센서를 작동시켜, 본체의 외부환경과 관련된 이미지를 생성시키고, 레이저 스캔 정보를 생성시킬 수 있다.
아울러, 제어부는 소정의 시간 간격마다 생성되는 이미지 및 레이저 스캔 정보에 근거하여 청소기 본체의 위치를 검출하며, 이미지 및 레이저 스캔 정보가 생성된 시점과, 검출되 위치와 상기 이미지 및 레이저 스캔 정보를 매칭시켜 데이터베이스에 저장되도록 저장부를 제어한다.
이후, 제어부는 재방문하는 것으로 판단되는 위치에서 위와 같이 형성된 데이터베이스와, 현재 시점에서 생성된 이미지 및 레이저 스캔 정보를 비교하여, 로봇의 현재 위치 및 경로와 관련된 정보를 수정한다.
일 실시예에 있어서, 상기 제어부는 상기 카메라 센서에서 생성되는 이미지를 이용하여, 상기 외부환경에 포함된 이미지 패턴과 관련된 정보를 추출하는 것을 특징으로 한다.
일 실시예에 있어서, 상기 제어부는 상기 레이저 센서에서 생성되는 레이저 스캔 정보를 이용하여, 상기 본체 주위에 존재하는 물체에 의해 형성되는 지형적 형태와 관련된 정보를 추출하는 것을 특징으로 한다.
일 실시예에 있어서, 상기 청소기의 작동과 관련된 신호를 수신하는 통신부를 더 포함하고, 상기 제어부는 상기 통신부가 상기 청소기를 주행 시작 지점으로 복귀시키기 위한 신호를 수신하면, 상기 청소기를 상기 주행 시작 지점으로 복귀시키도록 상기 구동부를 제어하는 것을 특징으로 한다.
일 실시예에 있어서, 상기 이미지, 상기 이미지 패턴과 관련된 정보, 상기 레이저 스캔 정보, 상기 지형적 형태와 관련된 정보 및 상기 이미지와 레이저 스캔 정보가 생성되는 위치 정보로 형성되는 데이터베이스를 저장하는 저장부를 더 포함하고, 상기 제어부는 기 설정된 주기로 카메라 센서 및 레이저 센서를 동작시키고, 상기 기 설정된 주기마다 상기 카메라 센서에 의해 생성된 이미지와, 상기 이미지로부터 추출되는 이미지 패턴과 관련된 정보와, 상기 레이저 센서에 의해 생성된 레이저 스캔 정보와, 상기 레이저 스캔 정보로부터 추출되는 지형적 형태와 관련된 정보와, 상기 카메라 센서 및 레이저 센서가 동작되는 위치와 관련된 정보를 상기 데이터베이스에 업데이트 시키는 것을 특징으로 한다.
일 실시예에 있어서, 상기 제어부는 상기 주행 시작 지점으로 복귀하는 도중에 추출된 이미지 패턴 및 지형적 형태와 관련된 정보와 상기 데이터베이스를 비교하여, 상기 주행 시작 지점으로 복귀하기 위한 경로와 관련된 정보를 설정하는 것을 특징으로 한다.
일 실시예에 있어서, 상기 제어부는 상기 주행 시작 지점으로 복귀하는 도중에 일 지점에서 추출된 이미지 패턴과 관련된 정보와, 상기 데이터베이스에 저장된 이미지 패턴과 관련된 정보 중 상기 일 지점에 대응되는 이미지 패턴과 관련된 정보가 일치하지 않으면, 상기 주행 시작 지점으로 복귀하기 위한 경로를 수정하는 것을 특징으로 한다,
일 실시예에 있어서, 상기 제어부는 상기 주행 시작 지점으로 복귀하는 도중에 일 지점에서 추출된 지형적 형태와 관련된 정보와, 상기 데이터베이스에 저장된 지형적 형태와 관련된 정보 중 상기 일 지점에 대응되는 지형적 형태와 관련된 정보가 일치하지 않으면, 상기 주행 시작 지점으로 복귀하기 위한 경로를 수정하는 것을 특징으로 한다.
일 실시예에 있어서, 상기 제어부는 상기 주행 시작 지점으로 복귀하는 도중에 일 지점에서 추출된 이미지 패턴과 상기 데이터베이스에 저장된 이미지 패턴 중 어느 하나가 일치하면, 상기 어느 하나의 이미지 패턴과 대응되는 지형적 형태와, 상기 본체의 현재 위치에서 추출된 지형적 형태를 비교하고, 상기 비교결과에 근거하여, 상기 주행 시작 지점으로 복귀하기 위한 경로를 수정하는 것을 특징으로 한다.
일 실시예에 있어서, 상기 제어부는 상기 주행 시작 지점으로 복귀하는 도중에 일 지점에서 생성된 레이저 스캔 정보와 상기 데이터베이스에 저장된 레이저 스캔 정보 중 어느 하나가 일치하면, 상기 어느 하나의 레이저 스캔 정보과 대응되는 이미지 패턴과, 상기 본체의 현재 위치에서 추출된 이미지 패턴을 비교하고, 상기 비교결과에 근거하여, 상기 주행 시작 지점으로 복귀하기 위한 경로를 수정하는 것을 특징으로 한다.
일 실시예에 있어서, 상기 제어부는 로컬 경로보정모듈과, 글로벌 경로보정모듈을 포함하고, 상기 로컬 경로보정모듈은 복수의 시점에서 획득된 레이저 스캔 정보를 이용하여, 로봇의 위치와 관련된 복수의 프레임을 생성하는 것을 특징으로 한다.
일 실시예에 있어서, 상기 로컬 경로보정모듈은 생성된 복수의 프레임 중 어느 하나를 선택하고, 선택된 프레임에 대응되는 이미지를 획득하는 것을 특징으로 한다.
일 실시예에 있어서, 상기 선택된 프레임은 상기 본체의 현재 위치에서 생성된 프레임인 것을 특징으로 한다.
일 실시예에 있어서, 상기 로컬 경로보정모듈은 상기 선택된 프레임에 대응되는 이미지에 근거하여, 상기 선택된 프레임에 대응되는 위치에 대해 장소 인식을 수행하는 것을 특징으로 한다.
일 실시예에 있어서, 상기 로컬 경로보정모듈은 상기 이미지로부터 특징점을 추출하고, 추출된 특징점에 근거하여 상기 이미지에 대응되는 기술자를 생성하고, 상기 생성된 기술자에 근거하여 상기 선택된 프레임에 대응되는 위치에 재방문하는 것인지 여부를 판단하는 것을 특징으로 한다.
일 실시예에 있어서, 상기 글로벌 경로보정모듈은 상기 수행된 장소 인식 결과, 상기 선택된 프레임에 대응되는 위치가 다른 프레임에 대응되는 위치와 일치하여 재방문하는 것으로 판단되는 경우, 상기 선택된 프레임의 레이저 스캔 정보와 상기 다른 프레임의 레이저 스캔 정보를 서로 정합시키는 것을 특징으로 한다.
일 실시예에 있어서, 상기 글로벌 경로보정모듈은 상기 상기 선택된 프레임의 레이저 스캔 정보와 상기 다른 프레임의 레이저 스캔 정보의 정합 결과에 근거하여, 상기 청소기의 경로를 수정하는 것을 특징으로 한다.
본 발명에 따르면, 청소기 주변을 촬영한 이미지와 함께 레이저 스캔 정보를 이용하여 청소기의 위치를 보다 정확하게 획득할 수 있는 효과가 도출되며, 계획된 경로대로 주행할 수 있으므로 청소기 사용자의 편의가 향상된다.
또한, 본 발명에 따르면, 청소기가 현재 위치를 검출하거나 주행방향을 결정함에 있어서, 카메라 센서나 레이저 센서 중 어느 하나에만 의존하지 않고 서로 다른 두 개 이상의 센서를 이용함으로써, 상기 카메라 센서의 단점과 레이저 센서의 단점을 극복할 수 있는 효과가 도출된다.
또한, 본 발명에 따르면, 청소기가 현재 위치를 검출하거나 주행방향을 결정함에 있어서, 카메라 센서와 레이저 센서를 함께 이용함으로써, 상기 카메라 센서와 레이저 센서에서 각각 발생되는 오차에 의한 영향을 감소시킬 수 있다.
또한, 본 발명에 따르면, 폐곡선을 따라 주행하는 청소기의 경우, 상기 폐곡선을 한 바퀴 순환할 때마다 청소기의 위치나 경로 정보를 조정함으로써, 청소기와 바닥 사이의 슬립이 발생하거나 청소기의 센서에서 오차가 발생하더라도, 청소기의 위치나 경로 정보를 정확하게 검출할 수 있는 효과가 도출된다.
도 1a는 본 발명의 일 실시예에 따른 이동 로봇의 구성요소를 나타내는 블록도이다.
도 1b는 본 발명의 이동 로봇에 포함된 센싱부(140)의 보다 상세한 구성요소를 나타내는 블록도이다.
도 1c 내지 도 1e는 본 발명의 이동 로봇의 외관을 나타내는 개념도이다.
도 2a 내지 도 2c는 본 발명에 따르는 카메라 센서 및 레이저 센서를 구비한 이동 로봇의 일 실시예를 나타내는 개념도이다.
도 3a는 본 발명의 이동 로봇에 포함된 제어부(180)의 보다 상세한 구성요소를 나타내는 블록도이다.
도 3b는 본 발명의 이동 로봇이 이미지와 레이저 스캔정보를 이용하여 로봇의 위치 정보를 검출 또는 수정하는 방법을 나타내는 흐름도이다.
도 3c는 본 발명의 이동 로봇이 서로 다른 시점에서 획득한 레이저 스캔정보를 나타내는 개념도이다.
도 3d는 본 발명의 이동 로봇이 주행 중에 복수의 이미지 또는 레이저 스캔정보를 획득하는 일 실시예를 나타내는 개념도이다.
도 3e는 본 발명의 이동 로봇이 이미지를 이용하여 장소 인식을 수행하는 방법을 나타내는 흐름도이다.
도 3f는 본 발명의 이동 로봇이 서로 다른 레이저 스캔정보를 정합하는 방법을 나타내는 개념도이다.
도 4a 내지 도 4d는 본 발명의 이동 로봇이 카메라 센서와 레이저 센서를 이용하여, 이동 로봇의 현재 위치를 판별하고, 경로를 보정하는 방법을 나타내는 개념도이다.
이하의 도 1a에서는 본 발명의 일 실시예에 따른 이동 로봇의 구성요소가 상세히 설명된다.
도 1a에 도시된 바와 같이, 본 발명의 일 실시 예에 따른 이동 로봇은, 통신부(110), 입력부(120), 구동부(130), 센싱부(140), 출력부(150), 전원부(160), 메모리(170) 및 제어부(180) 중 적어도 하나 또는 이들의 조합을 포함할 수 있다.
이때, 도 1a에 도시한 구성요소들이 필수적인 것은 아니어서, 그보다 많은 구성요소들을 갖거나 그보다 적은 구성요소들을 갖는 로봇 청소기가 구현될 수 있음은 물론이다. 이하, 각 구성요소들에 대해 살펴보기로 한다.
우선, 전원부(160)는 외부 상용 전원에 의해 충전 가능한 배터리를 구비하여 이동 로봇 내로 전원을 공급한다. 전원부(160)는 이동 로봇에 포함된 각 구성들에 구동 전원을 공급하여, 이동 로봇이 주행하거나 특정 기능을 수행하는데 요구되는 동작 전원을 공급할 수 있다.
이때, 제어부(180)는 배터리의 전원 잔량을 감지하고, 전원 잔량이 부족하면 외부 상용 전원과 연결된 충전대로 이동하도록 제어하여, 충전대로부터 충전 전류를 공급받아 배터리를 충전할 수 있다. 배터리는 배터리 감지부와 연결되어 배터리 잔량 및 충전 상태가 제어부(180)에 전달될 수 있다. 출력부(150)은 제어부에 의해 상기 배터리 잔량을 화면에 표시할 수 있다.
배터리는 로봇 청소기 중앙의 하부에 위치할 수도 있고, 좌, 우측 중 어느 한쪽에 위치할 수도 있다. 후자의 경우, 이동 로봇은 배터리의 무게 편중을 해소하기 위해 균형추를 더 구비할 수 있다.
한편, 구동부(130)는 모터를 구비하여, 상기 모터를 구동함으로써, 좌, 우측 주바퀴를 양 방향으로 회전시켜 본체를 회전 또는 이동시킬 수 있다. 구동부(130)는 이동 로봇의 본체를 전후좌우로 진행시키거나, 곡선주행시키거나, 제자리 회전시킬 수 있다.
한편, 입력부(120)는 사용자로부터 로봇 청소기에 대한 각종 제어 명령을 입력받는다. 입력부(120)는 하나 이상의 버튼을 포함할 수 있고, 예를 들어, 입력부(120)는 확인버튼, 설정버튼 등을 포함할 수 있다. 확인버튼은 감지 정보, 장애물 정보, 위치 정보, 맵 정보를 확인하는 명령을 사용자로부터 입력받기 위한 버튼이고, 설정버튼은 상기 정보들을 설정하는 명령을 사용자로부터 입력받기 위한 버튼이다.
또한, 입력부(120)는 이전 사용자 입력을 취소하고 다시 사용자 입력을 받기 위한 입력재설정버튼, 기 설정된 사용자 입력을 삭제하기 위한 삭제버튼, 작동 모드를 설정하거나 변경하는 버튼, 충전대로 복귀하도록 하는 명령을 입력받는 버튼 등을 포함할 수 있다.
또한, 입력부(120)는 하드 키나 소프트 키, 터치패드 등으로 이동 로봇의 상부에 설치될 수 있다. 또, 입력부(120)는 출력부(150)와 함께 터치 스크린의 형태를 가질 수 있다.
한편, 출력부(150)는, 이동 로봇의 상부에 설치될 수 있다. 물론 설치 위치나 설치 형태는 달라질 수 있다. 예를 들어, 출력부(150)는 배터리 상태 또는 주행 방식 등을 화면에 표시할 수 있다.
또한, 출력부(150)는, 센싱부(140)가 검출한 이동 로봇 내부의 상태 정보, 예를 들어 이동 로봇에 포함된 각 구성들의 현재 상태를 출력할 수 있다. 또, 출력부(150)는 센싱부(140)가 검출한 외부의 상태 정보, 장애물 정보, 위치 정보, 지도 정보 등을 화면에 디스플레이할 수 있다. 출력부(150)는 발광 다이오드(Light Emitting Diode; LED), 액정 표시 장치(Liquid Crystal Display; LCD), 플라즈마 표시 패널(Plasma Display Panel), 유기 발광 다이오드(Organic Light Emitting Diode; OLED) 중 어느 하나의 소자로 형성될 수 있다.
출력부(150)는, 제어부(180)에 의해 수행되는 이동 로봇의 동작 과정 또는 동작 결과를 청각적으로 출력하는 음향 출력 수단을 더 포함할 수 있다. 예를 들어, 출력부(150)는 제어부(180)에 의해 생성된 경고 신호에 따라 외부에 경고음을 출력할 수 있다.
한편, 통신부(110)는 단말 장치 및/또는 특정 영역 내 위치한 타 기기(본 명세서에서는 "가전 기기"라는 용어와 혼용하기로 한다)와 유선, 무선, 위성 통신 방식들 중 하나의 통신 방식으로 연결되어 신호와 데이터를 송수신한다.
통신부(110)는 특정 영역 내에 위치한 타 기기와 데이터를 송수신할 수 있다. 이때, 타 기기는 네트워크에 연결하여 데이터를 송수신할 수 있는 장치이면 어느 것이어도 무방하며, 일 예로, 공기 조화 장치, 난방 장치, 공기 정화 장치, 전등, TV, 자동차 등과 같은 장치일 수 있다. 또한, 상기 타 기기는, 문, 창문, 수도 밸브, 가스 밸브 등을 제어하는 장치 등일 수 있다. 또한, 상기 타 기기는, 온도, 습도, 기압, 가스 등을 감지하는 센서 등일 수 있다.
따라서, 제어부(180)는 통신부(110)를 통해 상기 타 기기에 제어 신호를 전송할 수 있고, 이에 따라, 상기 타 기기는 수신한 제어 신호에 따라 동작할 수 있다. 일 예로, 상기 타 기기가 공기 조화 장치인 경우, 전원을 켜거나 제어 신호에 따라 특정 영역에 대하여 냉방 또는 난방을 수행할 수 있고, 창문을 제어하는 장치인 경우, 제어 신호에 따라 창문을 개폐하거나 일정 비율로 개방할 수 있다.
또한, 통신부(110)는 특정 영역 내에 위치한 적어도 하나의 타 기기로부터 각종 상태 정보 등을 수신할 수 있고, 일 예로, 통신부(110)는 공기 조화 장치의 설정 온도, 창문의 개폐 여부 또는 개폐 정도를 나타내는 개폐 정보, 온도 센서에 의해 감지되는 특정 영역의 현재 온도 등을 수신할 수 있다.
이에 따라, 제어부(180)는 상기 상태 정보, 입력부(120)를 통한 사용자 입력, 또는 단말 장치를 통한 사용자 입력에 따라 상기 타 기기에 대한 제어 신호를 생성할 수 있다.
이때, 통신부(110)는 적어도 하나의 타 기기와 통신하기 위해 라디오 주파수(RF) 통신, 블루투스(Bluetooth), 적외선 통신(IrDA), 무선 랜(LAN), 지그비(Zigbee) 등과 같은 무선 통신 방식 중 적어도 하나의 통신 방식을 채용할 수 있고, 이에 따라 상기 타 기기 및 이동 로봇(100)은 적어도 하나의 네트워크를 구성할 수 있다. 이때, 상기 네트워크는, 인터넷(internet)인 것이 바람직하다.
통신부(110)는 단말 장치로부터 제어 신호를 수신할 수 있다. 이에 따라, 제어부(180)는 상기 통신부(110)를 통해 수신한 제어 신호에 따라 다양한 작업과 관련된 제어 명령을 수행할 수 있다. 또한, 통신부(110)는 상기 단말 장치로 이동 로봇의 상태 정보, 장애물 정보, 위치 정보, 영상 정보, 지도 정보 등을 전송할 수 있다.
한편, 메모리(170)는 로봇 청소기를 제어 또는 구동하는 제어 프로그램 및 그에 따른 데이터를 저장한다. 메모리(170)는 오디오 정보, 영상 정보, 장애물 정보, 위치 정보, 지도 정보 등을 저장할 수 있다. 또, 메모리(170)는 주행 패턴과 관련된 정보를 저장할 수 있다.
상기 메모리(170)는 비휘발성 메모리를 주로 사용한다. 여기서, 상기 비휘발성 메모리(Non-Volatile Memory, NVM, NVRAM)는 전원이 공급되지 않아도 저장된 정보를 계속 유지할 수 있는 저장 장치로서, 일 예로, 롬(ROM), 플래시 메모리(Flash Memory), 마그네틱 컴퓨터 기억 장치(예를 들어, 하드 디스크, 디스켓 드라이브, 마그네틱 테이프), 광디스크 드라이브, 마그네틱 RAM, PRAM 등일 수 있다.
한편, 도 1b를 참조하면, 센싱부(140)는, 외부 신호 감지 센서(141), 전방 감지 센서(142), 낭떠러지 감지 센서(143), 하부 카메라 센서(144), 상부 카메라 센서(145) 및 3차원 카메라 센서(146) 중 적어도 하나를 포함할 수 있다.
외부 신호 감지 센서(141)는 이동 로봇의 외부 신호를 감지할 수 있다. 외부 신호 감지 센서(141)는, 일 예로, 적외선 센서(Infrared Ray Sensor), 초음파 센서(Ultra Sonic Sensor), RF 센서(Radio Frequency Sensor) 등일 수 있다.
이동 로봇은 외부 신호 감지 센서(141)를 이용하여 충전대가 발생하는 안내 신호를 수신하여 충전대의 위치 및 방향을 확인할 수 있다. 이때, 충전대는 이동 로봇이 복귀 가능하도록 방향 및 거리를 지시하는 안내 신호를 발신할 수 있다. 즉, 이동 로봇은 충전대로부터 발신되는 신호를 수신하여 현재의 위치를 판단하고 이동 방향을 설정하여 충전대로 복귀할 수 있다.
또한, 이동 로봇은 외부 신호 감지 센서(141)를 이용하여 리모컨, 단말기 등의 원격 제어 장치가 발생하는 신호를 감지할 수 있다.
외부 신호 감지 센서(141)는 이동 로봇의 내부나 외부의 일 측에 구비될 수 있다. 일 예로, 적외선 센서는 이동 로봇 내부 또는 출력부(150)의 하부 또는 상부 카메라 센서(145) 또는 3차원 카메라 센서(146)의 주변에 설치될 수 있다.
한편, 전방 감지 센서(142)는, 이동 로봇의 전방, 구체적으로 이동 로봇의 측면 외주면을 따라 일정 간격으로 설치될 수 있다. 전방 감지 센서(142)는 이동 로봇의 적어도 일 측면에 위치하여, 전방의 장애물을 감지하기 위한 것으로서, 전방 감지 센서(142)는 이동 로봇의 이동 방향에 존재하는 물체, 특히 장애물을 감지하여 검출 정보를 제어부(180)에 전달할 수 있다. 즉, 전방 감지 센서(142)는, 이동 로봇의 이동 경로 상에 존재하는 돌출물, 집안의 집기, 가구, 벽면, 벽 모서리 등을 감지하여 그 정보를 제어부(180)에 전달할 수 있다.
전방 감지 센서(142)는, 일 예로, 적외선 센서, 초음파 센서, RF 센서, 지자기 센서 등일 수 있고, 이동 로봇은 전방 감지 센서(142)로 한 가지 종류의 센서를 사용하거나 필요에 따라 두 가지 종류 이상의 센서를 함께 사용할 수 있다.
일 예로, 초음파 센서는 일반적으로 원거리의 장애물을 감지하는 데에 주로 사용될 수 있다. 초음파 센서는 발신부와 수신부를 구비하여, 제어부(180)는 발신부를 통해 방사된 초음파가 장애물 등에 의해 반사되어 수신부에 수신되는 지의 여부로 장애물의 존부를 판단하고, 초음파 방사 시간과 초음파 수신 시간을 이용하여 장애물과의 거리를 산출할 수 있다.
또한, 제어부(180)는 발신부에서 방사된 초음파와, 수신부에 수신되는 초음파를 비교하여, 장애물의 크기와 관련된 정보를 검출할 수 있다. 예를 들어, 제어부(180)는 수신부에 더 많은 초음파가 수신될수록, 장애물의 크기가 큰 것으로 판단할 수 있다.
일 실시 예에서, 복수(일 예로, 5개)의 초음파 센서가 이동 로봇의 전방 측면에 외주면을 따라 설치될 수 있다. 이때, 바람직하게 초음파 센서는 발신부와 수신부가 교대로 이동 로봇의 전면에 설치될 수 있다.
즉, 발신부는 본체의 전면 중앙으로부터 좌, 우측에 이격되도록 배치될 수 있고, 수신부의 사이에 하나 또는 둘 이상의 발신부가 배치되어 장애물 등으로부터 반사된 초음파 신호의 수신 영역을 형성할 수 있다. 이와 같은 배치로 센서의 수를 줄이면서 수신 영역을 확장할 수 있다. 초음파의 발신 각도는 크로스토크(crosstalk) 현상을 방지하도록 서로 다른 신호에 영향을 미치지 아니하는 범위의 각을 유지할 수 있다. 또한, 수신부들의 수신 감도는 서로 다르게 설정될 수 있다.
또한, 초음파 센서에서 발신되는 초음파가 상향으로 출력되도록 초음파 센서는 일정 각도만큼 상향으로 설치될 수 있고, 이때, 초음파가 하향으로 방사되는 것을 방지하기 위해 소정의 차단 부재를 더 포함할 수 있다.
한편, 전방 감지 센서(142)는, 전술한 바와 같이, 두 가지 종류 이상의 센서를 함께 사용할 수 있고, 이에 따라, 전방 감지 센서(142)는 적외선 센서, 초음파 센서, RF 센서 등 중 어느 한 가지 종류의 센서를 사용할 수 있다.
일 예로, 전방 감지 센서(142)는 초음파 센서 이외에 다른 종류의 센서로 적외선 센서를 포함할 수 있다.
적외선 센서는 초음파 센서와 함께 이동 로봇의 외주면에 설치될 수 있다. 적외선 센서 역시, 전방이나 측면에 존재하는 장애물을 감지하여 장애물 정보를 제어부(180)에 전달할 수 있다. 즉, 적외선 센서는, 이동 로봇의 이동 경로 상에 존재하는 돌출물, 집안의 집기, 가구, 벽면, 벽 모서리 등을 감지하여 그 정보를 제어부(180)에 전달한다. 따라서, 이동 로봇은 본체가 장애물과의 충돌없이 특정 영역 내에서 이동할 수 있다.
한편, 낭떠러지 감지 센서(143)(또는 클리프 센서(Cliff Sensor))는, 다양한 형태의 광 센서를 주로 이용하여, 이동 로봇의 본체를 지지하는 바닥의 장애물을 감지할 수 있다.
즉, 낭떠러지 감지 센서(143)는, 바닥의 이동 로봇의 배면에 설치되되, 이동 로봇의 종류에 따라 다른 위치에 설치될 수 있음은 물론이다. 낭떠러지 감지 센서(143)는 이동 로봇의 배면에 위치하여, 바닥의 장애물을 감지하기 위한 것으로서, 낭떠러지 감지 센서(143)는 상기 장애물 감지 센서와 같이 발광부와 수광부를 구비한 적외선 센서, 초음파 센서, RF 센서, PSD(Position Sensitive Detector) 센서 등일 수 있다.
일 예로, 낭떠러지 감지 센서(143) 중 어느 하나는 이동 로봇의 전방에 설치되고, 다른 두 개의 낭떠러지 감지 센서(143)는 상대적으로 뒤쪽에 설치될 수 있다.
예를 들어, 낭떠러지 감지 센서(143)는 PSD 센서일 수 있으나, 복수의 서로 다른 종류의 센서로 구성될 수도 있다.
PSD 센서는 반도체 표면저항을 이용해서 1개의 p-n접합으로 입사광의 단장거리 위치를 검출한다. PSD 센서에는 일축 방향만의 광을 검출하는 1차원 PSD 센서와, 평면상의 광위치를 검출할 수 있는 2차원 PSD 센서가 있으며, 모두 pin 포토 다이오드 구조를 가질 수 있다. PSD 센서는 적외선 센서의 일종으로서, 적외선을 이용하여, 적외선을 송신한 후 장애물에서 반사되어 돌아오는 적외선의 각도를 측정하여 거리를 측정한다. 즉, PSD 센서는 삼각측량방식을 이용하여, 장애물과의 거리를 산출한다.
PSD 센서는 장애물에 적외선을 발광하는 발광부와, 장애물로부터 반사되어 돌아오는 적외선을 수광하는 수광부를 구비하되, 일반적으로 모듈 형태로 구성된다. PSD 센서를 이용하여, 장애물을 감지하는 경우, 장애물의 반사율, 색의 차이에 상관없이 안정적인 측정값을 얻을 수 있다.
제어부(180)는 낭떠러지 감지 센서(143)가 지면을 향해 발광한 적외선의 발광신호와 장애물에 의해 반사되어 수신되는 반사신호 간의 적외선 각도를 측정하여, 낭떠러지를 감지하고 그 깊이를 분석할 수 있다.
한편, 제어부(180)는 낭떠러지 감지 센서(143)를 이용하여 감지한 낭떠러지의 지면 상태에 따라 통과 여부를 판단할 수 있고, 판단 결과에 따라 낭떠러지의 통과 여부를 결정할 수 있다. 예를 들어, 제어부(180)은 낭떠러지 감지 센서(143)를 통해 낭떠러지의 존재 여부 및 낭떠러지 깊이를 판단한 다음, 낭떠러지 감지 센서(143)를 통해 반사 신호를 감지한 경우에만 낭떠러지를 통과하도록 한다.
다른 예로, 제어부(180)은 낭떠러지 감지 센서(143)를 이용하여 이동 로봇의 들림 현상을 판단할 수도 있다.
한편, 하부 카메라 센서(144)는, 이동 로봇의 배면에 구비되어, 이동 중 하방, 즉, 바닥면(또는 피청소면)에 대한 이미지 정보를 획득한다. 하부 카메라 센서(144)는, 다른 말로 옵티컬 플로우 센서(Optical Flow Sensor)라 칭하기도 한다. 하부 카메라 센서(144)는, 센서 내에 구비된 이미지 센서로부터 입력되는 하방 영상을 변환하여 소정 형식의 영상 데이터를 생성한다. 생성된 영상 데이터는 메모리(170)에 저장될 수 있다.
하부 카메라 센서(144)는, 렌즈(미도시)와 상기 렌즈를 조절하는 렌즈 조절부(미도시)를 더 구비할 수 있다. 상기 렌즈로는 초점거리가 짧고 심도가 깊은 팬포커스형 렌즈를 사용하는 것이 좋다. 상기 렌즈 조절부는 전후 이동되도록 하는 소정 모터와 이동수단을 구비하여 상기 렌즈를 조절한다.
또한, 하나 이상의 광원이 이미지 센서에 인접하여 설치될 수 있다. 하나 이상의 광원은, 이미지 센서에 의해 촬영되는 바닥면의 소정 영역에 빛을 조사한다. 즉, 이동 로봇이 바닥면을 따라 특정 영역을 이동하는 경우에, 바닥면이 평탄하면 이미지 센서와 바닥면 사이에는 일정한 거리가 유지된다. 반면, 이동 로봇이 불균일한 표면의 바닥면을 이동하는 경우에는 바닥면의 요철 및 장애물에 의해 일정 거리 이상 멀어지게 된다. 이때 하나 이상의 광원은 조사되는 빛의 양을 조절하도록 제어부(180)에 의해 제어될 수 있다. 상기 광원은 광량 조절이 가능한 발광 소자, 예를 들어 LED(Light Emitting Diode) 등일 수 있다.
하부 카메라 센서(144)를 이용하여, 제어부(180)는 이동 로봇의 미끄러짐과 무관하게 이동 로봇의 위치를 검출할 수 있다. 제어부(180)은 하부 카메라 센서에 의해 촬영된 영상 데이터를 시간에 따라 비교 분석하여 이동 거리 및 이동 방향을 산출하고, 이를 근거로 이동 로봇의 위치를 산출할 수 있다. 하부 카메라 센서(144)를 이용하여 이동 로봇의 하방에 대한 이미지 정보를 이용함으로써, 제어부(180)는 다른 수단에 의해 산출한 이동 로봇의 위치에 대하여 미끄러짐에 강인한 보정을 할 수 있다.
한편, 상부 카메라 센서(145)는 이동 로봇의 상방이나 전방을 향하도록 설치되어 이동 로봇 주변을 촬영할 수 있다. 이동 로봇이 복수의 상부 카메라 센서(145)들을 구비하는 경우, 카메라 센서들은 일정 거리 또는 일정 각도로 이동 로봇의 상부나 옆면에 형성될 수 있다.
상부 카메라 센서(145)는 피사체의 초점을 맞추는 렌즈와, 카메라 센서를 조절하는 조절부와, 상기 렌즈를 조절하는 렌즈 조절부를 더 포함할 수 있다. 상기 렌즈는 소정의 위치에서도 주변의 모든 영역, 예를 들어 천장의 모든 영역이 촬영될 수 있도록 화각이 넓은 렌즈를 사용한다. 예를 들어 화각이 일정 각, 예를 들어 160도, 이상인 렌즈를 포함한다.
레이저 센서(147)는 이동 로봇의 본체 일면 또는 일부분에 부착되어, 상기 본체의 전방위를 스캔하며, 이로써 본체로부터 측정 범위 내에 존재하는 물체와 관련된 레이저 스캔정보를 생성할 수 있다. 즉, 레이저 센서(147)는 본체 주변에 위치하는 물체들에 광원을 출력함으로써, 상기 물체와 본체 사이의 거리를 검출할 수 있다.
구체적으로 레이저 센서(147)는 레이저 송신부, 레이저 검출부, 신호 처리부 및 신호 통신부를 포함할 수 있다. 레이저 센서(147)는 레이저 신호의 변조 방법에 따라 TOF(Time of Flight) 방식과, Phase-shift 방식으로 구분될 수 있다.
레이저 센서(147)가 TOF 방식인 경우, 레이저 센서(147)는 펄스 신호를 방출하여 측정 범위 내에 있는 물체들로부터의 반사 펄스 신호들이 수신기에 도착하는 시간을 측정함으로써, 이동 로봇과 측정 범위 내에 있는 물체들 사이의 거리를 측정할 수 있다.
레이저 센서(147)가 Phase-shift 방식인 경우, 레이저 센서(147)는 특정 주파수를 갖고 연속적으로 변조되는 레이저 빔을 방출하고, 측정 범위 내에 있는 물체로부터 반사되어 되돌아 오는 신호의 위상 변화량을 측정함으로써, 이동 로봇과 측정 범위 내에 있는 물체들 사이의 거리를 측정할 수 있다.
예를 들어, 레이저 센서(147)는 라이다(Lidar) 센서일 수 있다.
이하의 도 2a 내지 도 2c에서는 본 발명에 따르는 카메라 센서 및 레이저 센서를 구비한 이동 로봇의 일 실시예가 설명된다.
도 2a에 도시된 것과 같이, 이동 로봇(100)은 임의의 작동 영역(1000) 내에서, 미리 설정된 경로(201)에 따라 이동 할 수 있다.
예를 들어, 미리 설정된 경로(201)는 작동 영역(1000)을 정의하는 벽을 따라 이동하는 경로일 수 있다. 또 다른 예에서, 미리 설정된 경로(201)는 폐곡선을 형성할 수 있다. 따라서, 이동 로봇(100)은 미리 설정된 경로(201)를 따라 주행하는 경우, 주행을 시작한 지점으로 복귀할 수 있다.
도 2b를 참조하면, 이동 로봇(100)은 도 2a에 도시된 경로(201)를 따라 주행 중에 특정 시간 간격마다 카메라 센서를 이용하여 이동 로봇(100)의 본체 주변과 관련된 이미지를 획득할 수 있다. 도 2b에 도시된 것과 같이, 이동 로봇(100)은 복수의 지점(202a)에 위치할 때마다, 본체 전방, 측방, 후방, 상방, 하방 중 적어도 하나와 관련된 이미지를 획득할 수 있다.
또한, 이동 로봇(100)은 도 2a에 도시된 경로(201)를 따라 주행 중에 특정 시간 간격마다 레이저 센서를 이용하여 이동 로봇(100)의 본체로부터 측정 범위 내에 존재하는 물체와 관련된 레이저 스캔정보를 획득할 수 있다. 즉, 이동 로봇(100)은 복수의 지점(202a)에 위치할 때마다, 본체에 대해 측정 범위 내에 존재하는 물체를 스캔하도록 레이저 센서(147)를 제어할 수 있으며, 이로써 레이저 스캔정보를 획득할 수 있다.
이동 로봇(100)은 카메라 센서와 레이저 센서의 동작 주기를 동일하게 설정할 수도 있고, 카메라 센서의 동작 주기를 레이저 센서의 동작 주기의 배수로 설정할 수도 있으며, 레이저 센서의 동작 주기를 카메라 센서의 동작 주기의 배수로 설정할 수도 있다.
즉, 도 2a에 도시된 것과 같이, 이동 로봇(100)은 작동 영역(1000)을 정의하는 폐곡선을 따라 주행하며, 주행 시작점으로 복귀할 때까지 일정 시간간격마다 카메라 센서를 이용하여 이동 로봇(100)의 외부 환경과 관련된 이미지를 획득할 수 있다. 또한, 이동 로봇(100)은 작동 영역(1000)을 정의하는 폐곡선을 따라 주행하며, 주행 시작점으로 복귀할 때까지 일정 시간간격마다 레이저 센서(147)를 이용하여 이동 로봇(100)의 외부 환경과 관련된 레이저 스캔정보를 획득할 수 있다.
도 2b에서는 작동 영역(1000)을 정의하는 폐곡선을 따라 주행하며, 복수의 지점(202a)마다 위치 정보를 검출하는 일 실시예가 도시된다.
즉, 이동 로봇(100)이 상기 폐곡선을 따라 주행하며, 주행시작지점(Pi)에서부터 주행종료지점(Pf)까지 주행하는 경우, 제어부(180)는 복수의 지점(202a)마다 재방문 여부를 판단할 수 있다. 예를 들어, 이동 로봇(100)이 상기 폐곡선을 따라 순환하는 경우, 제어부(180)는 주행시작지점(Pi)과 주행종료지점(Pf)을 동일한 지점이라 판단할 수 있다.
한편, 도 2b를 참조하면, 이동 로봇(100)의 제어부(180)는 복수의 지점(202a)마다 획득된 레이저 스캔정보와, 엔코더 및 휠센서 중 적어도 하나를 이용하여 복수의 지점(202a)에 각각 대응되는 위치 정보를 검출할 수 있다. 또한, 제어부(180)는 이동 로봇(100)의 이동 방향 또는 이동 거리와 관련된 정보를 누적시키고, 누적된 정보에 근거하여 경로 정보를 검출할 수 있다.
그러나, 제어부(180)가 상기 위치 정보 및 경로 정보를 검출하는 과정에서, 이동 로봇(100)의 구동바퀴에 슬립이 발생하거나, 상기 엔코더 및 휠센서에 오차가 발생하면, 상기 누적된 정보에 오차가 발생할 수 있다.
즉, 복수의 지점(202a) 중 어느 한 지점에서 이동 로봇(100)의 이동 방향 또는 이동 거리와 관련된 정보에서 오차가 발생하면, 오차가 발생된 이후의 지점에서 검출되는 위치 정보 또는 레이저 스캔정보에도 오차가 반영된다.
구체적으로, 도 2b에서는 제어부(180)가 제1 이미지(203a)와 제2 이미지(203b)를 비교한 결과, 주행시작지점(Pi)과 주행종료지점(Pf)이 실질적으로 동일한 지점으로 판단되었음에도, 주행시작지점(Pi)에 대응되는 위치정보와 주행종료지점(Pf)에 대응되는 위치정보 사이에 오차가 존재할 수 있다.
따라서, 도 2c를 참조하면, 제어부(180)는 제1 이미지(203a)와 제2 이미지(203b)를 비교한 결과, 주행시작지점(Pi)과 주행종료지점(Pf)이 실질적으로 동일한 지점으로 판단되면, 주행시작지점(Pi)과 주행종료지점(Pf)에 각각 대응되는 위치 정보와 레이저 스캔정보의 일치 여부를 판단할 수 있다.
아울러, 제어부(180)는 주행시작지점(Pi)에 대응되는 위치 정보 및 레이저 스캔정보와, 주행종료지점(Pf)에 대응되는 위치 정보와 레이저 스캔정보 사이에 오차가 존재하는 것으로 판단되면, 주행시작지점(Pi)과 주행종료지점(Pf)에 각각 대응되는 위치 정보와 레이저 스캔정보를 매칭시킬 수 있다. 이에 따라, 제어부(180)는 복수의 지점(202a)에 대응되는 경로 정보(202b)를 수정할 수 있다.
이하의 도 3a에서는 본 발명의 이동 로봇에 포함된 제어부(180)의 보다 상세한 구성요소가 설명된다.
제어부(180)는 로컬 경로보정모듈(181)과, 글로벌 경로보정모듈(182)을 포함할 수 있다. 로컬 경로보정모듈(181)은 국부 영역에 대한 이동 로봇(100)의 경로나 위치 정보를 보정하며, 글로벌 경로보정모듈(182)는 전체 주행 경로에 대한 보정을 수행할 수 있다. 이하에서는 로컬 경로보정모듈(181)과, 글로벌 경로보정모듈(182)과 관련된 실시예들을 개별적으로 설명하나, 로컬 경로보정모듈(181)과, 글로벌 경로보정모듈(182)이 수행하는 기능들은 제어부(180)가 실행한다고 설명할 수도 있다.
또한, 글로벌 경로보정모듈(182)은 키 프레임 매니징 유닛(182a), 장소 인식 유닛(182b), 장소 매칭 유닛(182c), 매핑 유닛(182d) 중 적어도 하나를 포함할 수 있다.
이하의 도 3b에서는, 로컬 경로보정모듈(181)과, 글로벌 경로보정모듈(182)을 포함하는 제어부(180)가 이동 로봇(100)의 위치 또는 경로를 수정하는 방법이 설명된다.
로컬 경로보정모듈(181)은 복수의 시점에서 획득된 레이저 스캔 정보를 이용하여, 로봇의 위치와 관련된 복수의 프레임을 생성할 수 있다(S301).
또한, 로컬 경로보정모듈(181)은 생성된 복수의 프레임 중 어느 하나를 선택할 수 있으며(S302), 선택된 프레임에 대응되는 이미지를 획득할 수 있다(S303).
예를 들어, 로컬 경로보정모듈(181)에 의해 선택된 프레임은, 이동 로봇(100)의 현재 위치 또는 청소기 본체의 현재 위치에서 생성된 프레임일 수 있다.
또 다른 예를 들어, 로컬 경로보정모듈(181)에 의해 선택된 프레임은, 가장 최근에 생성된 프레임일 수 있다.
글로벌 경로보정모듈(182)은 상기 선택된 프레임에 대응되는 이미지에 근거하여, 상기 선택된 프레임에 대응되는 위치에 대해 장소 인식을 수행할 수 있다(S304). 즉, 로컬 경로보정모듈(181)이 현재 위치에서 생성된 프레임을 선택한 경우, 글로벌 경로보정모듈(182)은 상기 현재 위치에서 촬영된 이미지에 근거하여, 현재 위치에 대해 장소 인식을 수행할 수 있다.
글로벌 경로보정모듈(182)은 장소 인식 결과를 이용하여, 선택된 프레임을 인식된 장소와 관련된 정보와 매칭시킬 수 있다(S305).
글로벌 경로보정모듈(182)은 매칭 결과를 이용하여, 복수의 프레임에 포함된 이동 로봇(100)의 위치 정보를 수정할 수 있다(S306).
이하의 도 3c 및 3d에서는 로컬 경로보정모듈(181)이 국부 경로 보정을 수행하는 일 실시예가 설명된다.
보다 구체적으로, 제어부(180)의 로컬 경로보정모듈(181)은 레이저 센서(147)에서 획득된 복수의 레이저 스캔정보 사이의 상호 정합(Co-registration)을 이용하여, 이동 로봇(100)의 현재 위치를 추정할 수 있다.
로컬 경로보정모듈(181)은 일정한 시간간격으로 레이저 센서(147)가 이동 로봇(100)의 본체 주변을 스캔하여, 복수의 레이저 스캔정보를 획득하도록 상기 레이저 센서(147)를 제어할 수 있다.
이로써, 도 3c를 참조하면, 로컬 경로보정모듈(181)은 제1 시점(t-1)에서 획득된 제1 레이저 스캔정보(310a)와 제2 시점(t)에서 획득된 제2 레이저 스캔정보(310b) 사이의 유클리디안(Euclidean) 거리가 가장 가까운 두 점을 검출할 수 있다. 아울러, 로컬 경로보정모듈(181)은 상기 검출된 두 점을 일치점(Corresponding point)으로 설정할 수 있다.
다음으로, 로컬 경로보정모듈(181)은 상기 설정된 일치점들의 위치를 동일하게 만드는 병진운동량과 회전운동량과 관련된 정보를 검출할 수 있다. 로컬 경로보정모듈(181)은 제1 레이저 스캔정보(310a)의 일치점과 제2 레이저 스캔정보(310b)의 일치점 사이의 거리가 기준치 이하로 감소할 때의 병진운동량과 회전운동량을 이용하여, 이동 로봇(100)의 변위와 관련된 정보를 검출할 수 있다. 이로써, 로컬 경로보정모듈(181)은 이동 로봇(100)이 이동을 시작한 지점과 관련된 위치정보와 상기 검출된 변위를 이용하여 이동 로봇(100)의 현재 지점과 관련된 위치정보를 검출할 수 있다.
예를 들어, 로컬 경로보정모듈(181)은 ICP(Iterative Closest Point) 알고리즘을 이용하여, 이동 로봇(100)의 위치를 추정할 수 있다.
도 3d를 참조하면, 이동 로봇(100)의 로컬 경로보정모듈(181)은 작동 영역(1000) 내에서 주행하면서, 복수의 프레임(320a, 320b, 320c, 320d, 320e)을 생성할 수 있다.
이하에서 프레임이란 복수의 지점마다 대응되는 이미지와 레이저 스캔 정보로 형성된 데이터의 단위를 의미한다. 아울러, 복수의 프레임 중 일부는 키 프레임으로 설정될 수 있다.
즉, 도 3d를 참조하면, 로컬 경로보정모듈(181)은 이동 로봇(100)이 작동 영역(1000) 내에서 주행하면서, 본체의 외부 환경과 관련된 이미지를 촬영하고, 본체로부터 측정 범위 내에 존재하는 물체들을 스캔하여 레이저 스캔 정보를 생성함으로써, 복수의 프레임(320a, 320b, 320c, 320d, 320e)을 생성할 수 있다. 아울러, 제어부(180)는 프레임(320a)와 프레임(320e)을 키 프레임으로 설정할 수 있다.
이와 같이 이동 로봇(100)이 주행하면서 복수의 프레임을 생성하는 경우, 로컬 경로보정모듈(181)은 일 프레임과 그 다음에 생성된 프레임을 이용하여 이동 로봇(100)의 위치 변화량을 산출할 수 있다. 로컬 경로보정모듈(181)은 복수의 프레임에 대해 순차적으로 위치 변화량을 산출할 수 있다.
따라서, 도 3d를 참조하면, 프레임(320d)와 프레임(320e) 사이에서 위치 변화량을 산출할 때는, 그 전 프레임에서 위치 변화량을 산출할 때 발생된 오차가 누적되어, 로컬 경로보정모듈(181)이 프레임(320e)에 대해 최종적으로 이동 로봇(100)의 위치를 검출하는 경우, 상대적으로 큰 오차가 발생할 수 있는 문제점이 있다.
본 발명에서는 이와 같은 오차를 최소화하기 위한 방법으로서, 키 프레임에 대응되는 레이저 스캔 정보와, 현재 프레임의 레이저 스캔 정보를 비교하여 위치 변화량을 산출할 수 있다.
즉, 도 3d에 도시된 것과 같이, 로컬 경로보정모듈(181)은 어느 하나의 키 프레임(320a)이 설정된 후, 그 다음 키 프레임(320e)이 설정되기까지, 상기 키 프레임(320a)과 현재 프레임을 비교하여, 이동 로봇(100)의 위치 변화량을 산출할 수 있다.
일 실시예에서, 로컬 경로보정모듈(181)은 설정된 키 프레임과 현재 프레임 사이의 거리가 기준 거리 이상 증가하면, 현재 프레임을 다음 키 프레임으로 설정할 수 있다.
다른 실시예에서, 로컬 경로보정모듈(181)은 임의의 키 프레임이 설정된 후, 기 설정된 개수의 프레임이 생성되면, 마지막으로 생성된 프레임을 다음 키 프레임으로 설정할 수 있다.
이하의 도 3e에서는 글로벌 경로보정모듈(182)이 이동 로봇(100)의 위치 정보 또는 경로 정보를 수정하는 일 실시예가 설명된다.
글로벌 경로보정모듈(182)의 장소 인식유닛(182b)은 카메라 센서를 이용하여 이동 로봇(100)의 현재 위치에 대해 장소인식을 수행할 수 있다.
구체적으로, 장소 인식유닛(182b)은 복수의 위치와 관련된 복수의 이미지를 포함하여 형성된 데이터베이스와, 현재 카메라 센서에서 생성된 이미지를 비교하여 유사성 검사를 수행할 수 있다.
장소 인식유닛(182b)은 현재 카메라 센서에서 생성된 이미지로부터 복수의 특징점(Features)을 추출할 수 있다(S314).
예를 들어, 장소 인식유닛(182b)은 임의의 이미지를 이용하여 장소인식을 수행하기 위해, OpenFABMAP과 같은 오픈 소스를 이용할 수 있다.
장소 인식유닛(182b)은 추출된 특징점에 근거하여, 현재 카메라 센서에서 생성된 이미지에 대응되는 기술자(Descriptor)를 생성할 수 있다(S324).
즉, 장소 인식유닛(182b)은 추출된 특징점을 클러스터링(Clustering)하고, 클러스터링 결과로 생성된 복수의 클러스터에 각각 대응되는 기술자(Descriptor)를 생성할 수 있다.
장소 인식유닛(182b)은 복수의 장소정보와, 상기 장소정보에 대응되는 이미지 정보로 형성되는 데이터베이스 및 상기 생성된 기술자를 이용하여, 상기 생성된 기술자에 대응되는 위치에 재방문하는 것인지 여부를 판단할 수 있다(S334).
장소 인식유닛(182b)은 이동 로봇(100)이 상기 생성된 기술자에 대응되는 위치에 처음 방문하는 것으로 판단되는 경우, 상기 생성된 기술자를 상기 데이터베이스에 업데이트 할 수 있다(S344).
장소 매칭유닛(182c)은 장소 인식유닛(182b)에서 이동 로봇(100)이 상기 생성된 기술자에 대응되는 위치에 재방문하는 것으로 판단되는 경우, 상기 데이터베이스에 저장된 프레임의 레이저 스캔 정보와, 현재 생성된 레이저 스캔 정보를 매칭시킬 수 있다(S305). 이하에서는 이러한 장소 매칭유닛(182c)의 기능을 장소 정합 또는 장소 매칭이라고 정의한다.
즉, 장소 매칭유닛(182c)은 장소 인식유닛(182b)에서 수행된 장소 인식 결과, 상기 선택된 프레임에 대응되는 위치가 다른 프레임에 대응되는 위치와 일치하여 재방문하는 것으로 판단되는 경우, 상기 선택된 프레임의 레이저 스캔 정보와 상기 다른 프레임의 레이저 스캔 정보를 서로 정합시킬 수 있다.
아울러, 글로벌 경로보정모듈(182)에 포함되는 매핑유닛(182d)은 선택된 프레임의 레이저 스캔 정보와 상기 다른 프레임의 레이저 스캔 정보의 정합 결과에 근거하여, 상기 청소기의 경로를 수정할 수 있다.
구체적으로, 도 3f에서는 장소 매칭유닛(182c)이 장소 정합을 수행하는 일 실시예가 설명된다.
도 3f에 도시된 것과 같이, 이동 로봇(100)이 주행 시작 지점에서 생성한 제1 프레임과, 주행 종료 지점에서 생성한 제n 프레임이 서로 동일한 장소인 것으로 판별되면, 장소 매칭유닛(182c)은 제1 프레임의 레이저 스캔정보(330a)와, 제n 프레임의 레이저 스캔정보(330b)를 매칭시킬 수 있다.
장소 매칭유닛(182c)은 장소 인식유닛(182b)에서 이동 로봇(100)이 상기 생성된 기술자에 대응되는 위치에 재방문하는 것으로 판단되면, 제1 프레임의 레이저 스캔정보(330a)와, 제n 프레임의 레이저 스캔정보(330b) 사이의 구속 조건과 관련된 정보를 검출할 수 있다. 예를 들어, 상기 구속 조건과 관련된 정보는 제1 프레임의 레이저 스캔정보(330a)와 제n 프레임의 레이저 스캔정보(330b) 사이의 상대변위 값을 포함할 수 있다.
장소 매칭유닛(182c)은 위와 같이 구속 조건이 설정되면, 제n 프레임 전에 생성된 복수의 프레임에 포함된 정보를 수정할 수 있다. 도 3f를 참조하면, 장소 매칭유닛(182c)은 제1 내지 제n 프레임 중 일부에 대응되는 레이저 스캔 정보 또는 위치 정보를 수정할 수 있다.
따라서, 이동 로봇(100)의 제어부(180) 또는 로컬 경로보정모듈(181)은 이동 중에 1차적으로 복수의 프레임과 관련된 위치 정보(340a)를 생성할 수 있다.
또한, 장소 인식유닛(182b)에 의해 제1 프레임에 대응되는 위치와, 제N 프레임에 대응되는 위치가 동일한 것으로 판단되면, 장소 매칭유닛(182c)은 제1 프레임의 레이저 스캔정보(330a)와 제N 프레임의 레이저 스캔정보(330b)를 매칭시킬 수 있다.
매핑유닛(182d)은 장소 매칭유닛(182c)에 의해 수행된 매칭결과에 근거하여, 상기 1차적으로 생성된 위치 정보(340a)를 수정함으로써, 2차적으로 복수의 프레임과 관련된 위치 정보(340b)를 생성할 수 있다. 즉, 매핑유닛(182d)은 이동 로봇(100)이 지나온 경로와 관련된 정보를 수정할 수 있다.
도 3f에서 매핑유닛(182d)에 의해 2차적으로 생성된 위치 정보(340b)는 도 2a에 도시된 이동 로봇(100)의 작동 영역(1000)을 정의하는 폐곡선 중 일부 지점과 대응될 수 있다.
이하의 도 4a 내지 도 4d에서는 본 발명의 이동 로봇이 카메라 센서와 레이저 센서를 이용하여, 이동 로봇의 현재 위치를 판별하고, 경로를 보정하는 방법이 설명된다.
도 4a를 참조하면, 이동 로봇(100)은 주행시작지점(P1)에서 주행을 시작하면서, 소정의 시간 간격마다 이미지 및 레이저 스캔 정보를 획득할 수 있다. 즉, 제어부(180)는 이동 로봇(100)의 본체가 제1 주행 경로(M1)를 따라 이동하는 동안, 소정의 시간 간격마다 카메라 센서와 레이저 센서를 작동시켜, 상기 본체의 외부환경과 관련된 이미지를 생성시키고, 상기 본체의 주변에 위치하는 물체에 의해 형성되는 레이저 스캔 정보를 생성시킬 수 있다.
제어부(180)는, 카메라 센서에서 생성되는 이미지를 이용하여, 이동 로봇(100)의 본체의 외부환경에 포함된 이미지 패턴과 관련된 정보를 추출할 수 있다.
제어부(180)는, 레이저 센서에서 생성되는 레이저 스캔 정보를 이용하여, 본체 주위에 존재하는 물체에 의해 형성되는 지형적 형태와 관련된 정보를 추출할 수도 있다.
예를 들어, 작동영역(400)은 제1 방(ROOM 1) 및 제2 방(ROOM 2)을 포함할 수 있으며, 제1 방의 입구와 제2 방의 입구에는 각각 제1 문(401)과, 제2 문(403)이 설치될 수 있다. 아울러, 제1 문(402)의 일면에는 인식 가능한 이미지 패턴이 표시된 패턴부재(402)가 부착될 수 있다. 이 경우, 주행시작지점(P1)은 제1 방 내부에 위치할 수 있다.
도 4a에 도시된 것과 같이, 이동 로봇(100)의 통신부(110)는 주행 중에, 주행시작지점(P1)으로 복귀하라는 명령을 포함하는 복귀 신호를 수신할 수 있으며, 복귀 신호를 수신한 지점을 복귀지점(P2)으로 정의한다.
즉, 통신부(110)는 이동 로봇 또는 청소기의 작동과 관련된 신호를 수신할 수 있으며, 제어부(180)는 통신부가 이동 로봇 또는 청소기를 주행 시작 지점으로 복귀시키기 위한 신호를 수신하면, 이동 로봇 또는 청소기를 주행 시작 지점으로 복귀시키도록 구동부(130)를 제어할 수 있다.
메모리(170)는 상기 카메라 센서에 의해 촬영된 이미지, 상기 이미지로부터 인식된 이미지 패턴과 관련된 정보, 상기 레이저 센서에 의해 생성된 레이저 스캔 정보, 상기 레이저 스캔정보로부터 추출된 이동 로봇(100)의 주변의 지형적 형태와 관련된 정보 및 상기 이미지와 레이저 스캔 정보가 생성되는 위치 정보를 포함하여 형성되는 데이터베이스를 저장할 수 있다.
제어부(180)는 기 설정된 주기로 카메라 센서를 동작시키고, 상기 기 설정된 주기마다 상기 카메라 센서에 의해 생성된 이미지와, 상기 이미지로부터 추출되는 이미지 패턴과 관련된 정보를 상기 데이터베이스에 업데이트 시킬 수 있다.
제어부(180)는 기 설정된 주기로 레이저 센서를 동작시키고, 상기 기 설정된 주기마다 상기 레이저 센서에 의해 생성된 레이저 스캔 정보와, 상기 레이저 스캔 정보로부터 추출되는 지형적 형태와 관련된 정보를 상기 데이터베이스에 업데이트 시킬 수 있다.
아울러 제어부(180)는 상기 카메라 센서 및 레이저 센서가 동작된 시점에서의 상기 이동 로봇(100)의 위치와 관련된 정보를 상기 데이터베이스에 업데이트 시킬 수 있다.
또한, 제어부(180)는, 주행 시작 지점(P1)으로 복귀하는 도중에 추출된 이미지 패턴 및 지형적 형태와 관련된 정보와 상기 데이터베이스를 비교하여, 상기 주행 시작 지점(P1)으로 복귀하기 위한 경로와 관련된 정보를 설정할 수 있다.
제어부(180)는, 주행 시작 지점(P1)으로 복귀하는 도중에 일 지점에서 추출된 이미지 패턴과 관련된 정보와, 상기 데이터베이스에 저장된 이미지 패턴과 관련된 정보 중 상기 일 지점에 대응되는 이미지 패턴과 관련된 정보가 일치하지 않으면, 상기 주행 시작 지점(P1)으로 복귀하기 위한 경로를 수정할 수 있다.
또한, 제어부(180)는 주행 시작 지점(P1)으로 복귀하는 도중에 일 지점에서 추출된 지형적 형태와 관련된 정보와, 상기 데이터베이스에 저장된 지형적 형태와 관련된 정보 중 상기 일 지점에 대응되는 지형적 형태와 관련된 정보가 일치하지 않으면, 주행 시작 지점(P1)으로 복귀하기 위한 경로를 수정할 수 있다.
한편, 제어부(180)는 주행 시작 지점(P1)으로 복귀하는 도중에 일 지점에서 추출된 이미지 패턴과 상기 데이터베이스에 저장된 이미지 패턴 중 어느 하나가 일치하는지 여부를 판단할 수 있다. 판단결과 일치하면, 제어부(180)는 상기 어느 하나의 이미지 패턴과 대응되는 지형적 형태와, 상기 본체의 현재 위치에서 추출된 지형적 형태를 비교하고, 상기 비교결과에 근거하여, 상기 주행 시작 지점으로 복귀하기 위한 경로를 수정할 수 있다.
아울러, 제어부(180)는 주행 시작 지점(P1)으로 복귀하는 도중에 일 지점에서 생성된 레이저 스캔 정보와 상기 데이터베이스에 저장된 레이저 스캔 정보 중 어느 하나가 일치하는지 여부를 판단할 수 있다. 판단결과 일치하면, 제어부(180)는 상기 어느 하나의 레이저 스캔 정보과 대응되는 이미지 패턴과, 상기 본체의 현재 위치에서 추출된 이미지 패턴을 비교하고, 상기 비교결과에 근거하여, 상기 주행 시작 지점으로 복귀하기 위한 경로를 수정할 수 있다.
따라서, 도 4a를 참조하면, 이동 로봇(100)이 복귀지점(P2)으로부터 주행시작지점(P1)으로 복귀하기 위해, 제2 주행 경로(M2)를 따라 이동하는 동안, 제어부(180)는 카메라 센서에 의해 생성된 이미지와, 레이저 센서에 의해 생성된 레이저 스캔 정보를 함께 이용하여, 이동 로봇(100)의 경로를 결정할 수 있다.
즉, 이동 로봇(100)의 제2 주행 경로(M2)를 따라 이동하는 동안, 제어부(180)는 레이저 스캔 정보로부터 지형적 형태와 관련된 정보를 검출할 수 있고, 이미지로부터 이미지 패턴을 추출할 수 있다.
예를 들어, 도 4a를 참조하면, 지형적 형태와 관련된 정보는 제1 문(401)과 제2 문(403)의 배치된 위치, 제1 및 제2 방을 형성하는 벽의 형태와 관련된 정보를 포함할 수 있다.
또 다른 예를 들어, 도 4a를 참조하면, 상기 추출된 이미지 패턴은, 패턴부재(401)의 일면에 표시된 이미지 패턴일 수 있다.
한편, 도 4b와 도 4a를 비교하면, 이동 로봇(100)이 제1 주행 경로(M1)를 따라 이동한 후에, 패턴부재(402)의 위치가 제1 문(401)에서 제2 문(403)으로 변경되었다.
이 경우, 제어부(180)가 카메라 센서만을 이용하여 주행시작지점(P1)까지 복귀하기 위한 경로를 설정한다면, 이동 로봇(100)이 제3 지점(P3)을 통과할 때 제어부(180)는 이동 로봇(100)의 위치 정보를 검출함에 있어서 오차를 발생시킬 수 있다.
즉, 제어부(180)는 제3 주행경로(M3)를 따라 복귀하는 중에 제3 지점(P3)에서 촬영된 이미지로부터 제2 문(403)에 부착된 패턴부재(402)에 표시된 이미지 패턴을 인식하고, 인식결과에 따라 제2 방(ROOM 2)을 제1 방(ROOM 1)으로 오인하게 된다.
한편, 본 발명에 따르는 이동 로봇(100)의 제어부(180)는 카메라 센서와 레이저 센서를 함께 이용하여 복귀 경로를 설정하므로, 도 4b와 같은 오차를 방지할 수 있다.
즉, 이동 로봇(100)이 제3 지점(P3)을 통과할 때, 제어부(180)가 제2 문(403)에 부착된 패턴부재(402)에 표시된 이미지 패턴을 인식하더라도, 상기 제3 지점(P3)에 대응되는 레이저 스캔 정보를 고려하여, 제2 방(ROOM 2)을 제1 방(ROOM 1)과 다른 장소로 판별할 수 있다.
한편, 도 4c와 도 4a를 비교하면, 이동 로봇(100)이 제1 주행 경로(M1)를 따라 이동한 후에, 제3 문(404)이 추가되었다.
이 경우, 제어부(180)가 레이저 센서만을 이용하여 주행시작지점(P1)까지 복귀하기 위한 경로를 설정한다면, 이동 로봇(100)이 제4 지점(P4)을 통과할 때 제어부(180)는 이동 로봇(100)의 위치 정보를 검출함에 있어서 오차를 발생시킬 수 있다.
즉, 제어부(180)는 제3 주행경로(M3)를 따라 복귀하는 중에 제4 지점(P4)에서 생성된 레이저 스캔정보로부터 제2 문(403)과 제3 문(404)에 의해 형성되는 지형적 형태와 관련된 정보를 추출하고, 상기 지형적 형태에 따라 제2 방(ROOM 2)을 제1 방(ROOM 1)으로 오인하게 된다.
반면, 본 발명에 따르는 이동 로봇(100)의 제어부(180)는 카메라 센서와 레이저 센서를 함께 이용하여 복귀 경로를 설정하므로, 도 4c와 같은 오차를 방지할 수 있다.
즉, 이동 로봇(100)이 제4 지점(P4)을 통과할 때, 제어부(180)가 제2 문(403)과 제3 문(404)에 의해 형성되는 지형적 형태와 관련된 정보를 추출하더라도, 상기 제4 지점(P4)에 대응되는 이미지 또는 상기 이미지로부터 인식되는 이미지 패턴을 고려하여, 제2 방(ROOM 2)을 제1 방(ROOM 1)과 다른 장소로 판별할 수 있다.
한편, 도 4d와 도 4a를 비교하면, 이동 로봇(100)이 제1 주행 경로(M1)를 따라 이동한 후에, 패턴부재(402)의 위치가 제1 문(401)에서 제2 문(403)으로 변경되고, 제3 문(404)이 추가되었다.
도 4d의 경우, 본원발명의 제어부(180)가 카메라 센서와 레이저 센서를 함께 이용한다고 하더라도, 제5 지점(P5)에서 인식된 이미지 패턴과 레이저 스캔정보가, 제1 주행 경로(M1)를 따라 이동하는 중에 제1 방(ROOM 1)에서 나온 후 인식된 이미지 패턴과 레이저 스캔정보와 유사할 수 있다.
따라서, 본원발명의 일 실시예에 따르면, 제어부(180)는 카메라 센서와 레이저 센서를 사용하여 이동 로봇(100)의 위치나 경로 정보를 설정하되, 제어부(180)는 상기 설정된 위치나 경로 정보를 센싱부(140)에 포함된 외부 신호 감지 센서(141), 전방 감지 센서(142), 낭떠러지 감지 센서(143) 등을 이용하여 보정하는 것이 바람직하다.
본 발명에 따르면, 청소기 주변을 촬영한 이미지와 함께 레이저 스캔 정보를 이용하여 청소기의 위치를 보다 정확하게 획득할 수 있는 효과가 도출되며, 계획된 경로대로 주행할 수 있으므로 청소기 사용자의 편의가 향상된다.
또한, 본 발명에 따르면, 청소기가 현재 위치를 검출하거나 주행방향을 결정함에 있어서, 카메라 센서나 레이저 센서 중 어느 하나에만 의존하지 않고 서로 다른 두 개 이상의 센서를 이용함으로써, 상기 카메라 센서의 단점과 레이저 센서의 단점을 극복할 수 있는 효과가 도출된다.
또한, 본 발명에 따르면, 청소기가 현재 위치를 검출하거나 주행방향을 결정함에 있어서, 카메라 센서와 레이저 센서를 함께 이용함으로써, 상기 카메라 센서와 레이저 센서에서 각각 발생되는 오차에 의한 영향을 감소시킬 수 있다.
또한, 본 발명에 따르면, 폐곡선을 따라 주행하는 청소기의 경우, 상기 폐곡선을 한 바퀴 순환할 때마다 청소기의 위치나 경로 정보를 조정함으로써, 청소기와 바닥 사이의 슬립이 발생하거나 청소기의 센서에서 오차가 발생하더라도, 청소기의 위치나 경로 정보를 정확하게 검출할 수 있는 효과가 도출된다.
본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.

Claims (17)

  1. 본체;
    상기 본체를 이동시키기 위한 구동력을 제공하는 구동부;
    상기 본체의 외부환경과 관련된 이미지를 생성하는 카메라 센서;
    상기 본체 주위에 존재하는 물체를 스캔하여, 레이저 스캔 정보를 생성하는 레이저 센서;
    상기 이미지 및 상기 레이저 스캔 정보를 중 적어도 하나를 이용하여, 본체의 위치 및 경로와 관련된 정보를 수정하는 제어부를 포함하는 자율주행을 수행하는 청소기.
  2. 제1항에 있어서,
    상기 제어부는,
    상기 카메라 센서에서 생성되는 이미지를 이용하여, 상기 외부환경에 포함된 이미지 패턴과 관련된 정보를 추출하는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  3. 제1항에 있어서,
    상기 제어부는,
    상기 레이저 센서에서 생성되는 레이저 스캔 정보를 이용하여, 상기 본체 주위에 존재하는 물체에 의해 형성되는 지형적 형태와 관련된 정보를 추출하는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  4. 제1항에 있어서,
    상기 청소기의 작동과 관련된 신호를 수신하는 통신부를 더 포함하고,
    상기 제어부는,
    상기 통신부가 상기 청소기를 주행 시작 지점으로 복귀시키기 위한 신호를 수신하면, 상기 청소기를 상기 주행 시작 지점으로 복귀시키도록 상기 구동부를 제어하는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  5. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 이미지, 상기 이미지 패턴과 관련된 정보, 상기 레이저 스캔 정보, 상기 지형적 형태와 관련된 정보 및 상기 이미지와 레이저 스캔 정보가 생성되는 위치 정보로 형성되는 데이터베이스를 저장하는 저장부를 더 포함하고,
    상기 제어부는,
    기 설정된 주기로 카메라 센서 및 레이저 센서를 동작시키고,
    상기 기 설정된 주기마다 상기 카메라 센서에 의해 생성된 이미지와, 상기 이미지로부터 추출되는 이미지 패턴과 관련된 정보와, 상기 레이저 센서에 의해 생성된 레이저 스캔 정보와, 상기 레이저 스캔 정보로부터 추출되는 지형적 형태와 관련된 정보와, 상기 카메라 센서 및 레이저 센서가 동작되는 위치와 관련된 정보를 상기 데이터베이스에 업데이트 시키는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  6. 제5항에 있어서,
    상기 제어부는,
    상기 주행 시작 지점으로 복귀하는 도중에 추출된 이미지 패턴 및 지형적 형태와 관련된 정보와 상기 데이터베이스를 비교하여, 상기 주행 시작 지점으로 복귀하기 위한 경로와 관련된 정보를 설정하는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  7. 제6항에 있어서,
    상기 제어부는,
    상기 주행 시작 지점으로 복귀하는 도중에 일 지점에서 추출된 이미지 패턴과 관련된 정보와, 상기 데이터베이스에 저장된 이미지 패턴과 관련된 정보 중 상기 일 지점에 대응되는 이미지 패턴과 관련된 정보가 일치하지 않으면, 상기 주행 시작 지점으로 복귀하기 위한 경로를 수정하는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  8. 제6항에 있어서,
    상기 제어부는,
    상기 주행 시작 지점으로 복귀하는 도중에 일 지점에서 추출된 지형적 형태와 관련된 정보와, 상기 데이터베이스에 저장된 지형적 형태와 관련된 정보 중 상기 일 지점에 대응되는 지형적 형태와 관련된 정보가 일치하지 않으면, 상기 주행 시작 지점으로 복귀하기 위한 경로를 수정하는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  9. 제6항에 있어서,
    상기 제어부는,
    상기 주행 시작 지점으로 복귀하는 도중에 일 지점에서 추출된 이미지 패턴과 상기 데이터베이스에 저장된 이미지 패턴 중 어느 하나가 일치하면, 상기 어느 하나의 이미지 패턴과 대응되는 지형적 형태와, 상기 본체의 현재 위치에서 추출된 지형적 형태를 비교하고,
    상기 비교결과에 근거하여, 상기 주행 시작 지점으로 복귀하기 위한 경로를 수정하는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  10. 제6항에 있어서,
    상기 제어부는,
    상기 주행 시작 지점으로 복귀하는 도중에 일 지점에서 생성된 레이저 스캔 정보와 상기 데이터베이스에 저장된 레이저 스캔 정보 중 어느 하나가 일치하면, 상기 어느 하나의 레이저 스캔 정보과 대응되는 이미지 패턴과, 상기 본체의 현재 위치에서 추출된 이미지 패턴을 비교하고,
    상기 비교결과에 근거하여, 상기 주행 시작 지점으로 복귀하기 위한 경로를 수정하는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  11. 제1항에 있어서,
    상기 제어부는 로컬 경로보정모듈과, 글로벌 경로보정모듈을 포함하고,
    상기 로컬 경로보정모듈은,
    복수의 시점에서 획득된 레이저 스캔 정보를 이용하여, 로봇의 위치와 관련된 복수의 프레임을 생성하는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  12. 제11항에 있어서,
    상기 로컬 경로보정모듈은,
    생성된 복수의 프레임 중 어느 하나를 선택하고, 선택된 프레임에 대응되는 이미지를 획득하는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  13. 제12항에 있어서,
    상기 선택된 프레임은 상기 본체의 현재 위치에서 생성된 프레임인 것을 특징으로 하는 자율주행을 수행하는 청소기.
  14. 제12항에 있어서,
    상기 로컬 경로보정모듈은,
    상기 선택된 프레임에 대응되는 이미지에 근거하여, 상기 선택된 프레임에 대응되는 위치에 대해 장소 인식을 수행하는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  15. 제14항에 있어서,
    상기 로컬 경로보정모듈은,
    상기 이미지로부터 특징점을 추출하고,
    추출된 특징점에 근거하여 상기 이미지에 대응되는 기술자를 생성하고,
    상기 생성된 기술자에 근거하여 상기 선택된 프레임에 대응되는 위치에 재방문하는 것인지 여부를 판단하는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  16. 제14항에 있어서,
    상기 글로벌 경로보정모듈은.
    상기 수행된 장소 인식 결과, 상기 선택된 프레임에 대응되는 위치가 다른 프레임에 대응되는 위치와 일치하여 재방문하는 것으로 판단되는 경우, 상기 선택된 프레임의 레이저 스캔 정보와 상기 다른 프레임의 레이저 스캔 정보를 서로 정합시키는 것을 특징으로 하는 자율주행을 수행하는 청소기.
  17. 제16항에 있어서,
    상기 글로벌 경로보정모듈은,
    상기 선택된 프레임의 레이저 스캔 정보와 상기 다른 프레임의 레이저 스캔 정보의 정합 결과에 근거하여, 상기 청소기의 경로를 수정하는 것을 특징으로 하는 자율주행을 수행하는 청소기.
KR1020160032918A 2016-03-18 2016-03-18 이동 로봇 및 그 제어방법 KR101786516B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160032918A KR101786516B1 (ko) 2016-03-18 2016-03-18 이동 로봇 및 그 제어방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160032918A KR101786516B1 (ko) 2016-03-18 2016-03-18 이동 로봇 및 그 제어방법

Publications (2)

Publication Number Publication Date
KR20170108656A true KR20170108656A (ko) 2017-09-27
KR101786516B1 KR101786516B1 (ko) 2017-10-18

Family

ID=60036593

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160032918A KR101786516B1 (ko) 2016-03-18 2016-03-18 이동 로봇 및 그 제어방법

Country Status (1)

Country Link
KR (1) KR101786516B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107890325A (zh) * 2017-11-08 2018-04-10 张子腾 可自动清理集尘盒的智能扫地拖地一体机
CN109570768A (zh) * 2019-01-25 2019-04-05 华东交通大学 一种全方位轮对激光除锈装置
WO2019114221A1 (zh) * 2017-12-15 2019-06-20 珊口(上海)智能科技有限公司 控制方法、系统及所适用的清洁机器人
WO2021020911A1 (en) * 2019-07-31 2021-02-04 Lg Electronics Inc. Mobile robot

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102577785B1 (ko) * 2018-09-20 2023-09-13 삼성전자주식회사 청소 로봇 및 그의 태스크 수행 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101366860B1 (ko) * 2011-09-20 2014-02-21 엘지전자 주식회사 이동 로봇 및 이의 제어 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107890325A (zh) * 2017-11-08 2018-04-10 张子腾 可自动清理集尘盒的智能扫地拖地一体机
WO2019114221A1 (zh) * 2017-12-15 2019-06-20 珊口(上海)智能科技有限公司 控制方法、系统及所适用的清洁机器人
CN109570768A (zh) * 2019-01-25 2019-04-05 华东交通大学 一种全方位轮对激光除锈装置
WO2021020911A1 (en) * 2019-07-31 2021-02-04 Lg Electronics Inc. Mobile robot
KR20210015126A (ko) * 2019-07-31 2021-02-10 엘지전자 주식회사 이동 로봇

Also Published As

Publication number Publication date
KR101786516B1 (ko) 2017-10-18

Similar Documents

Publication Publication Date Title
US10423163B2 (en) Mobile robot and method of controlling same
AU2017402126B2 (en) Vacuum cleaner and control method thereof
US11269355B2 (en) Plurality of autonomous mobile robots and controlling method for the same
KR101786516B1 (ko) 이동 로봇 및 그 제어방법
AU2016299576B2 (en) Mobile robot and control method thereof
KR101649665B1 (ko) 이동 로봇 및 그 제어방법
EP3409177B1 (en) Moving robot and controlling method thereof
KR101822942B1 (ko) 로봇 청소기 및 이의 제어 방법
EP2677386B1 (en) Robot cleaner and obstacle detection control method of the same
US10591925B2 (en) Cleaner and controlling method thereof
AU2021273534B2 (en) Cleaner and control method thereof
KR101542498B1 (ko) 로봇 청소기 및 그의 위치 검출 방법
US11412907B2 (en) Cleaner and controlling method thereof
KR101897775B1 (ko) 이동 로봇 및 그 제어방법
US20180055325A1 (en) Robot cleaner
US11324371B2 (en) Robot and method for controlling same
US20210244252A1 (en) Artificial intelligence vacuum cleaner and control method therefor
US20210212541A1 (en) Vacuum cleaner and control method thereof
TWI739255B (zh) 移動式機器人
US20210361132A1 (en) Cleaner and method for controlling same
EP3788927A1 (en) Vacuum cleaner and control method therefor
KR20210004453A (ko) 청소기 및 그 제어방법
KR20190020006A (ko) 청소기 및 그 제어방법
US20230371769A1 (en) Moving robot system
US20230081449A1 (en) Mobile robot and control method therefor

Legal Events

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