KR20180048088A - 로봇 청소기 및 그 제어방법 - Google Patents

로봇 청소기 및 그 제어방법 Download PDF

Info

Publication number
KR20180048088A
KR20180048088A KR1020160145236A KR20160145236A KR20180048088A KR 20180048088 A KR20180048088 A KR 20180048088A KR 1020160145236 A KR1020160145236 A KR 1020160145236A KR 20160145236 A KR20160145236 A KR 20160145236A KR 20180048088 A KR20180048088 A KR 20180048088A
Authority
KR
South Korea
Prior art keywords
battery
cleaning
cleaning efficiency
information
unit
Prior art date
Application number
KR1020160145236A
Other languages
English (en)
Inventor
박윤식
김상윤
황성목
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020160145236A priority Critical patent/KR20180048088A/ko
Publication of KR20180048088A publication Critical patent/KR20180048088A/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
    • 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/2868Arrangements for power supply of vacuum cleaners or the accessories thereof
    • A47L9/2884Details of arrangements of batteries or their installation
    • 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/2857User input or output elements for control, e.g. buttons, switches or displays
    • 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/2894Details related to signal transmission in suction cleaners
    • 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/02Docking stations; Docking operations
    • A47L2201/022Recharging of batteries

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Electric Vacuum Cleaner (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

본 발명의 일 측면에 따른 로봇 청소기는, 본체를 이동시키는 주행부, 주행부의 주행 정보를 저장하는 저장부, 및, 주행 정보에 기초하여, 배터리의 충전 상태 대비 청소 공간에 대한 청소 주행 시간으로 청소 효율을 측정하는 배터리 관리 모듈을 포함함으로써, 로봇 청소기의 주행 패턴을 고려한 배터리 수명 예측이 가능하고 사용자에게 직관적인 정보 제공이 가능하다.

Description

로봇 청소기 및 그 제어방법{Robot cleaner and control method thereof}
본 발명은 로봇 청소기 및 그 제어방법에 관한 것으로서, 더욱 상세하게는 청소 효율 기반의 배터리 수명 예측 및 알림을 수행하는 로봇 청소기 및 그 제어 방법에 관한 것이다.
로봇은 산업용으로 개발되어 공장 자동화의 일 부분을 담당하여 왔다. 최근에는 로봇을 응용한 분야가 더욱 확대되어, 의료용 로봇, 우주 항공 로봇 등이 개발되고, 일반 가정에서 사용할 수 있는 가정용 로봇도 만들어지고 있다. 이러한 로봇 중에서 자력으로 주행이 가능한 것을 이동 로봇이라고 한다.
가정에서 사용되는 이동 로봇의 대표적인 예는 로봇 청소기로, 로봇 청소기는 일정 영역을 스스로 주행하면서, 주변의 먼지 또는 이물질을 흡입함으로써, 해당 영역을 청소하는 기기이다.
로봇 청소기는 충전 가능한 배터리가 구비하며, 이동이 자유롭고 배터리의 동작전원을 이용한 스스로 이동이 가능하고, 이동 중 바닥면의 이물질을 흡입하여 청소를 실시하며, 필요 시 충전대로 복귀하여 배터리를 충전하도록 구성된다.
따라서, 배터리 관리는 주행 성능뿐만 아니라 청소 성능에 큰 영향을 미치므로, 배터리 관리 능력의 신뢰성 확보가 요구된다.
종래 기술 1(공개특허공보 10-2013-0089360호)은 배터리의 수명 예측 방법 및 장치, 이를 이용한 배터리 관리 시스템에 관한 발명으로, 배터리의 노화 정도를 예측하기 위한 SOH(state of health)를 추정하고, 추정된 SOH 값들을 정렬하여 히스토리 테이블을 생성한 후에, 테이블에서 최대/최소값을 제외한 후보 값들의 평균으로 타켓 SOH를 결정한다.
하지만, 종래 기술 1은 SOH 추정을 위한 별도의 회로 설계 및 로직이 필요하다는 문제점이 있다.
종래 기술 2(공개특허공보 10-2013-0091475호)는, 배터리의 수명 추정 장치 및 방법에 관한 발명으로, 센싱 장치를 통해 측정된 (누적) 전류 소모량, (누적) 고온 노출 시간을 기반으로 배터리 수명을 추정한다.
하지만, 종래 기술 2도 배터리 수명 추정을 위해 사용되는 (누적) 전류 소모량, (누적) 고온 노출 시간에 대한 측정을 위해 별도의 회로 설계 및 로직이 필요하다는 문제점이 있다.
또한, 종래 기술 1과 종래 기술 2가 제공하는 배터리 수명 정보는 사용자가 직관적으로 파악하기 어렵고, 배터리를 얼마나 더 사용할 수 있는지 파악하기 어렵다.
따라서, 배터리 수명을 효율적으로 예측하고, 사용자에게 직관적인 정보를 제공할 수 있는 방안에 대한 연구가 증가하고 있다.
한편, 최근에는 인공지능과 딥러닝 등 머신 러닝에 관한 관심이 크게 증가하고 있다.
종래의 머신 러닝은 통계학 기반의 분류, 회귀, 군집 모델이 중심이었다. 특히, 분류, 회귀 모델의 지도 학습에서는 학습 데이터의 특성과 이러한 특성을 기반으로 새로운 데이터를 구별하는 학습 모델을 사람이 사전에 정의했다. 이와 달리, 딥러닝은 컴퓨터가 스스로 특성을 찾아내고 판별하는 것이다.
딥러닝의 발전을 가속화한 요인 중 하나로 오픈소스로 제공되는 딥러닝 프레임워크를 들 수 있다. 딥러닝 프레임워크들의 공개에 따라, 효과적인 학습 및 인식을 위해, 딥러닝 알고리즘 외에 학습 과정, 학습 방법, 학습에 사용하는 데이터의 추출 및 선정이 더욱 중요해지고 있다.
또한, 인공지능과 머신 러닝을 다양한 제품, 서비스에 이용하기 위한 연구가 증가하고 있다.
1. 공개특허공보 10-2013-0089360호 (공개일자 2013. 8. 12.) 2. 공개특허공보 10-2013-0091475호 (공개일자 2013. 8. 19.)
본 발명의 목적은, 배터리의 수명을 예측하고, 사용자에게 직관적으로 배터리 수명 정보를 제공할 수 있는 로봇 청소기 및 그 제어방법을 제공함에 있다.
본 발명의 목적은, 청소 영역, 주행 경로에 기초한 청소 효율에 기반한 배터리 수명 예측 및 정보 제공이 가능한 로봇 청소기 및 그 제어방법을 제공함에 있다.
본 발명의 목적은, 머신 러닝에 기반하여 배터리 수명을 정확하게 예측할 수 있는 로봇 청소기 및 그 제어방법을 제공함에 있다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 로봇 청소기는, 본체를 이동시키는 주행부, 주행부의 주행 정보를 저장하는 저장부, 및, 주행 정보에 기초하여, 배터리의 충전 상태 대비 청소 공간에 대한 청소 주행 시간으로 청소 효율을 측정하는 배터리 관리 모듈을 포함함으로써, 로봇 청소기의 주행 패턴을 고려한 배터리 수명 예측이 가능하고 사용자에게 직관적인 정보 제공이 가능하다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 로봇 청소기의 제어 방법은, 주행 정보를 저장하는 단계, 주행 정보에 기초하여, 배터리의 충전 상태 대비 청소 공간에 대한 청소 주행 시간으로 청소 효율을 측정하는 단계, 및, 배터리의 충전 상태 대비 측정된 청소 효율을 입력 데이터로 머신 러닝(machine learning)하는 단계를 포함할 수 있다.
본 발명의 실시 예들 중 적어도 하나에 의하면, 배터리의 수명을 예측하고, 사용자에게 직관적으로 배터리 수명 정보를 제공할 수 있다.
또한, 본 발명의 실시 예들 중 적어도 하나에 의하면, 청소 영역, 주행 경로에 기초한 청소 효율에 기반한 배터리 수명 예측 및 정보 제공이 가능하다.
또한, 본 발명의 실시 예들 중 적어도 하나에 의하면, 머신 러닝에 기반하여 배터리 수명을 정확하게 예측할 수 있다.
한편, 그 외의 다양한 효과는 후술될 본 발명의 실시 예에 따른 상세한 설명에서 직접적 또는 암시적으로 개시될 것이다.
도 1은 본 발명의 일 실시 예에 따른 로봇 청소기 및 로봇 청소기를 충전시키는 충전대를 도시한 사시도이다.
도 2는 도 1에 도시된 로봇 청소기의 상면부를 도시한 도이다.
도 3은 도 1에 도시된 로봇 청소기의 정면부를 도시한 도이다.
도 4는 도 1에 도시된 로봇 청소기의 저면부를 도시한 도이다.
도 5는 본 발명의 일 실시 예에 따른 로봇 청소기의 내부 블록도이다.
도 6은 본 발명의 일 실시 예에 따른 로봇 청소기의 내부 블록도이다.
도 7은 본 발명의 실시 예에 따른 로봇 청소기의 주요 구성들 간의 제어관계를 도시한 블록도이다.
도 8은 본 발명의 일 실시 예에 따른 로봇 청소기의 제어 방법을 도시한 순서도이다.
도 9 내지 도 12는 본 발명의 실시 예에 따른 로봇 청소기의 제어 방법에 관한 설명에 참조되는 도면이다.
이하에서는 첨부한 도면을 참조하여 본 발명의 실시 예를 상세하게 설명한다. 그러나 본 발명이 이러한 실시 예에 한정되는 것은 아니며 다양한 형태로 변형될 수 있음은 물론이다.
도면에서는 본 발명을 명확하고 간략하게 설명하기 위하여 설명과 관계없는 부분의 도시를 생략하였으며, 명세서 전체를 통하여 동일 또는 극히 유사한 부분에 대해서는 동일한 도면 참조부호를 사용한다.
한편, 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 단순히 본 명세서 작성의 용이함만이 고려되어 부여되는 것으로서, 그 자체로 특별히 중요한 의미 또는 역할을 부여하는 것은 아니다. 따라서, 상기 "모듈" 및 "부"는 서로 혼용되어 사용될 수도 있다.
도 1은 본 발명의 일 실시 예에 따른 로봇 청소기 및 로봇 청소기를 충전시키는 충전대를 도시한 사시도이다.
도 2는 도 1에 도시된 로봇 청소기의 상면부를 도시한 도이고, 도 3은 도 1에 도시된 로봇 청소기의 정면부를 도시한 도이며, 도 4는 도 1에 도시된 로봇 청소기의 저면부를 도시한 도이다.
도 5와 도 6은 본 발명의 실시 예에 따른 로봇 청소기의 내부 블록도이다.
도 1 내지 도 6을 참조하면, 로봇 청소기(100, 100a, 100b)는 본체(110)와, 본체(110) 주변의 영상을 획득하는 영상획득부(120, 120a, 120b)를 포함할 수 있다.
이하, 본체(110)의 각 부분을 정의함에 있어서, 주행구역 내의 천장을 향하는 부분을 상면부(도 2 참조)로 정의하고, 주행구역 내의 바닥을 향하는 부분을 저면부(도 4 참조)로 정의하며, 상면부와 저면부 사이에서 본체(110)의 둘레를 이루는 부분 중 주행방향을 향하는 부분을 정면부(도 3 참조)라고 정의한다.
로봇 청소기(100, 100a, 100b)는 본체(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, 100a, 100b)를 구성하는 각종 부품들이 수용되는 공간을 형성하는 케이스(111)를 포함할 수 있다. 케이스(111)에는 상기 먼지통의 삽입과 탈거를 위한 개구부가 형성될 수 있고, 개구부를 여닫는 먼지통 커버(112)가 케이스(111)에 대해 회전 가능하게 구비될 수 있다.
흡입구(110h)를 통해 노출되는 솔들을 갖는 롤형의 메인 브러시(134)와, 본체(110)의 저면부 전방측에 위치하며, 방사상으로 연장된 다수개의 날개로 이루어진 솔을 갖는 보조 브러시(135)가 구비될 수 있다. 이들 브러시(134, 135)들의 회전에 의해 주행구역 내 바닥으로부터 먼지들이 분리되며, 이렇게 바닥으로부터 분리된 먼지들은 흡입구(110h)를 통해 흡입되어 먼지통에 모인다.
배터리(138)는 구동 모터뿐만 아니라, 로봇 청소기(100, 100a, 100b)의 작동 전반에 필요한 전원을 공급한다. 배터리(138)가 방전될 시, 로봇 청소기(100, 100a, 100b)는 충전을 위해 충전대(200)로 복귀하는 주행을 실시할 수 있으며, 이러한 복귀 주행 중, 로봇 청소기(100, 100a, 100b)는 스스로 충전대(200)의 위치를 탐지할 수 있다.
충전대(200)는 소정의 복귀 신호를 송출하는 신호 송출부(미도시)를 포함할 수 있다. 복귀 신호는 초음파 신호 또는 적외선 신호일 수 있으나, 반드시 이에 한정되는 것은 아니다.
로봇 청소기(100, 100a, 100b)는 복귀 신호를 수신하는 신호 감지부(미도시)를 포함할 수 있다. 충전대(200)는 신호 송출부를 통해 적외선 신호를 송출하고, 신호 감지부는 적외선 신호를 감지하는 적외선 센서를 포함할 수 있다. 로봇 청소기(100, 100a, 100b)는 충전대(200)로부터 송출된 적외선 신호에 따라 충전대(200)의 위치로 이동하여 충전대(200)와 도킹(docking)한다. 이러한 도킹에 의해 로봇 청소기(100, 100a, 100b)의 충전 단자(133)와 충전대(200)의 충전 단자(210) 간에 충전에 이루어진다.
영상획득부(120)는 주행구역을 촬영하는 것으로, 카메라 모듈을 포함할 수 있다. 상기 카메라 모듈은 디지털 카메라를 포함할 수 있다. 디지털 카메라는 적어도 하나의 광학렌즈와, 광학렌즈를 통과한 광에 의해 상이 맺히는 다수개의 광다이오드(photodiode, 예를 들어, pixel)를 포함하여 구성된 이미지센서(예를 들어, CMOS image sensor)와, 광다이오드들로부터 출력된 신호를 바탕으로 영상을 구성하는 디지털 신호 처리기(DSP: Digital Signal Processor)를 포함할 수 있다. 디지털 신호 처리기는 정지영상은 물론이고, 정지영상으로 구성된 프레임들로 이루어진 동영상을 생성하는 것도 가능하다.
바람직하게, 영상획득부(120)는, 본체(110) 전방의 영상을 획득하도록 구비되는 전면 카메라(120a)와 본체(110)의 상면부에 구비되어, 주행구역 내의 천장에 대한 영상을 획득하는 상부 카메라(120b)를 구비하나, 영상획득부(120)의 위치와 촬영범위가 반드시 이에 한정되어야 하는 것은 아니다.
본 실시 예의 경우, 로봇 청소기의 일부 부위(ex, 전방, 후방, 저면)에 카메라가 설치되어 있으며, 청소 시에 촬상영상을 지속적으로 획득할 수 있다. 이러한 카메라는 촬영 효율을 위해 각 부위별로 여러 개가 설치될 수도 있다. 카메라에 의해 촬상된 영상은 해당 공간에 존재하는 먼지, 머리카락, 바닥 등과 같은 물질의 종류 인식,청소 여부, 또는 청소 시점을 확인하는데 사용할 수 있다.
전면 카메라(120a)는 로봇 청소기(100, 100a, 100b)의 주행 방향 전면에 존재하는 장애물 또는 청소 영역의 상황을 촬영할 수 있다.
또한, 로봇 청소기(100, 100a, 100b)는 로봇 청소기의 동작, 상태와 관련된 각종 데이터를 센싱하는 센서들을 포함하는 센서부(170)를 포함할 수 있다.
예를 들어, 상기 센서부(170)는 전방의 장애물을 감지하는 장애물 감지센서(131)를 포함할 수 있다. 또한, 상기 센서부(170)는 주행구역 내 바닥에 낭떠러지의 존재 여부를 감지하는 낭떠러지 감지센서(132)와, 바닥의 영상을 획득하는 하부 카메라 센서(139)를 더 포함할 수 있다.
도 1과 도 3을 참조하면, 상기 장애물 감지센서(131)는 로봇 청소기(100)의 외주면에 일정 간격으로 설치되는 복수의 센서를 포함할 수 있다.
예를 들어, 상기 센서부(170)는, 상기 본체(110)의 전면에 배치되는 제1 센서, 상기 제1 센서로부터 좌, 우로 이격되도록 배치되는 제2 센서 및 제3 센서를 포함할 수 있다.
상기 장애물 감지센서(131)는, 적외선 센서, 초음파 센서, RF 센서, 지자기 센서, PSD(Position Sensitive Device) 센서 등을 포함할 수 있다.
한편, 상기 장애물 감지센서(131)에 포함되는 센서의 위치와 종류는 로봇 청소기의 기종에 따라 달라질 수 있고, 상기 장애물 감지센서(131)는 더 다양한 센서를 포함할 수 있다.
상기 장애물 감지센서(131)는 실내의 벽이나 장애물과의 거리를 감지하는 센서로, 본 발명은 그 종류에 한정되지 않으나, 이하에서는 초음파 센서를 예시하여 설명한다.
상기 장애물 감지센서(131)는 로봇 청소기의 주행(이동) 방향에 존재하는 물체, 특히 장애물을 감지하여 장애물 정보를 제어부(140)에 전달한다. 즉, 상기 장애물 감지센서(131)는, 로봇 청소기의 이동 경로, 전방이나 측면에 존재하는 돌출물, 집안의 집기, 가구, 벽면, 벽 모서리 등을 감지하여 그 정보를 제어 유닛에 전달할 수 있다.
이때, 제어부(140)는 초음파 센서를 통해 수신된 적어도 2 이상의 신호에 기초하여 장애물의 위치를 감지하고, 감지된 장애물의 위치에 따라 로봇 청소기(100)의 움직임을 제어할 수 있다.
실시 예에 따라서는, 케이스(110)의 외측면에 구비되는 장애물 감지 센서(131)는 발신부와 수신부를 포함하여 구성될 수 있다.
예를 들어, 초음파 센서는 적어도 하나 이상의 발신부 및 적어도 2 이상의 수신부가 서로 엇갈리도록 구비될 수 있다. 이에 따라, 다양한 각도로 신호를 방사하고, 장애물에 반사된 신호를 다양한 각도에서 수신할 수 있다.
실시 예에 따라서는, 장애물 감지센서(131)에서 수신된 신호는, 증폭, 필터링 등의 신호 처리 과정을 거칠 수 있고, 이후 장애물까지의 거리 및 방향이 산출될 수 있다.
한편, 상기 센서부(170)는 본체(110)의 구동에 따른 로봇 청소기(100, 100a, 100b)의 동작을 감지하고 동작 정보를 출력하는 동작 감지 센서를 더 포함할 수 있다. 동작 감지 센서로는, 자이로 센서(Gyro Sensor), 휠 센서(Wheel Sensor), 가속도 센서(Acceleration Sensor) 등을 사용할 수 있다.
자이로 센서는, 로봇 청소기(100, 100a, 100b)가 운전 모드에 따라 움직일 때 회전 방향을 감지하고 회전각을 검출한다. 자이로 센서는, 로봇 청소기(100, 100a, 100b)의 각속도를 검출하여 각속도에 비례하는 전압 값을 출력한다. 제어부(140)는 자이로 센서로부터 출력되는 전압 값을 이용하여 회전 방향 및 회전각을 산출한다.
휠 센서는, 좌륜(136(L))과 우륜(136(R))에 연결되어 바퀴의 회전수를 감지한다. 여기서, 휠 센서는 로터리 엔코더(Rotary Encoder)일 수 있다. 로터리 엔코더는 좌륜(136(L))과 우륜(136(R))의 회전수를 감지하여 출력한다.
제어부(140)는 회전수를 이용하여 좌, 우측 바퀴의 회전 속도를 연산할 수 있다. 또한, 제어부(140)는 좌륜(136(L))과 우륜(136(R))의 회전수 차이를 이용하여 회전각을 연산할 수 있다.
가속도 센서는, 로봇 청소기(100, 100a, 100b)의 속도 변화, 예를 들어, 출발, 정지, 방향 전환, 물체와의 충돌 등에 따른 로봇 청소기(100, 100a, 100b)의 변화를 감지한다. 가속도 센서는 주 바퀴나 보조바퀴의 인접 위치에 부착되어, 바퀴의 미끄러짐이나 공회전을 검출할 수 있다.
또한, 가속도 센서는 제어부(140)에 내장되어 로봇 청소기(100, 100a, 100b)의 속도 변화를 감지할 수 있다. 즉, 가속도 센서는 속도 변화에 따른 충격량을 검출하여 이에 대응하는 전압 값을 출력한다. 따라서, 가속도 센서는 전자식 범퍼의 기능을 수행할 수 있다.
제어부(140)는 동작 감지 센서로부터 출력된 동작 정보에 기초하여 로봇 청소기(100, 100a, 100b)의 위치 변화를 산출할 수 있다. 이러한 위치는 영상 정보를 이용한 절대 위치에 대응하여 상대 위치가 된다. 로봇 청소기는 이러한 상대 위치 인식을 통해 영상 정보와 장애물 정보를 이용한 위치 인식의 성능을 향상시킬 수 있다.
한편, 로봇 청소기(100, 100a, 100b)는 충전 가능한 배터리(138)를 구비하여 로봇 청소기 내로 전원을 공급하는 전원 공급부(미도시)를 포함할 수 있다.
상기 전원 공급부는 로봇 청소기(100, 100a, 100b)의 각 구성 요소들에 구동 전원과, 동작 전원을 공급하며, 전원 잔량이 부족하면 충전대(200)에서 충전 전류를 공급받아 충전될 수 있다.
로봇 청소기(100, 100a, 100b)는 배터리(138)의 충전 상태를 감지하고, 감지 결과를 제어부(140)에 전송하는 배터리 감지부(미도시)를 더 포함할 수 있다. 배터리(138)는 배터리 감지부와 연결되어 배터리 잔량 및 충전 상태가 제어부(140)에 전달된다. 배터리 잔량은 표시부(180)의 화면에 표시될 수 있다. 한편, 배터리 감지부는 후술할 의 일부로써 구현될 수 있다.
또한, 로봇 청소기(100, 100a, 100b)는 온/오프(On/Off) 또는 각종 명령을 입력할 수 있는 조작부(137)를 포함한다. 조작부(137)를 통해 로봇 청소기(100)의 작동 전반에 필요한 각종 제어명령을 입력받을 수 있다. 또한, 로봇 청소기(100, 100a, 100b)는 표시부(180)를 포함하여, 예약 정보, 배터리 상태, 동작모드, 동작상태, 에러상태 등을 표시할 수 있다.
도 5와 도 6을 참조하면, 로봇 청소기(100a, 100b)는 현재 위치의 인식, 배터리 상태 관리 등 각종 정보를 처리하고 판단하는 제어부(140), 및 각종 데이터를 저장하는 저장부(150)를 포함한다. 또한, 로봇 청소기(100, 100a, 100b)는 외부 단말기와 데이터를 송수신하는 통신부(190)를 더 포함할 수 있다.
외부 단말기는 로봇 청소기(100a, 100b)를 제어하기 위한 애플리케이션을 구비하고, 애플리케이션의 실행을 통해 로봇 청소기(100a, 100b)가 청소할 주행구역에 대한 맵을 표시하고, 맵 상에 특정 영역을 청소하도록 영역을 지정할 수 있다. 외부 단말기는 맵 설정을 위한 애플리케이션(application)이 탑재된 리모콘, PDA, 랩탑(laptop), 스마트 폰, 태블릿 등을 예로 들 수 있다.
외부 단말기는 로봇 청소기(100a, 100b)와 통신하여, 맵과 함께 로봇 청소기의 현재 위치를 표시할 수 있으며, 복수의 영역에 대한 정보가 표시될 수 있다. 또한, 외부 단말기는 로봇 청소기의 주행에 따라 그 위치를 갱신하여 표시한다.
제어부(140)는 로봇 청소기(100a, 100b)를 구성하는 영상획득부(120), 조작부(137), 주행부(160)를 제어하여, 로봇 청소기(100)의 동작 전반을 제어한다.
저장부(150)는 로봇 청소기(100)의 제어에 필요한 각종 정보들을 기록하는 것으로, 휘발성 또는 비휘발성 기록 매체를 포함할 수 있다. 기록 매체는 마이크로 프로세서(micro processor)에 의해 읽힐 수 있는 데이터를 저장한 것으로, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등을 포함할 수 있다.
또한, 저장부(150)에는 주행구역에 대한 맵(Map)이 저장될 수 있다. 맵은 로봇 청소기(100a, 100b)와 유선 또는 무선 통신을 통해 정보를 교환할 수 있는 외부 단말기, 서버 등에 의해 입력된 것일 수도 있고, 로봇 청소기(100a, 100b)가 스스로 학습을 하여 생성한 것일 수도 있다.
맵에는 주행구역 내의 방들의 위치가 표시될 수 있다. 또한, 로봇 청소기(100a, 100b)의 현재 위치가 맵 상에 표시될 수 있으며, 맵 상에서의 로봇 청소기(100a, 100b)의 현재의 위치는 주행 과정에서 갱신될 수 있다. 외부 단말기는 저장부(150)에 저장된 맵과 동일한 맵을 저장한다.
상기 저장부(150)는 청소 이력 정보를 저장할 수 있다. 이러한 청소 이력 정보는 청소를 수행할 때마다 생성될 수 있다.
상기 저장부(150)에 저장되는 주행구역에 대한 맵(Map)은, 청소 중 주행에 사용되는 내비게이션 맵(Navigation map), 위치 인식에 사용되는 SLAM(Simultaneous localization and mapping) 맵, 장애물 등에 부딪히면 해당 정보를 저장하여 학습 청소시 사용하는 학습 맵, 전역 위치 인식에 사용되는 전역 위치 맵, 인식된 장애물에 관한 정보가 기록되는 장애물 인식 맵 등일 수 있다.
한편, 상술한 바와 같이 용도별로 상기 저장부(150)에 맵들을 구분하여 저장, 관리할 수 있지만, 맵이 용도별로 명확히 구분되지 않을 수도 있다. 예를 들어, 적어도 2 이상의 용도로 사용할 수 있도록 하나의 맵에 복수의 정보를 저장할 수도 있다.
도 5를 참조하면, 제어부(140)는 주행제어모듈(141), 위치인식모듈(142), 지도생성모듈(143) 장애물인식모듈(144) 및 배터리 관리 모듈(145)을 포함할 수 있다.
또는, 도 6을 참조하면, 배터리 관리 모듈(145)은 제어부(140)와 별도로 구비될 수 있다.
도 6의 실시 예에 따른 로봇 청소기(100a)과 도 7의 실시 예를 실시 예에 따른 로봇 청소기(100b)는 배터리 관리 모듈(145) 외에 다른 구성은 동일하다.
도 1 내지 도 6을 참조하면, 주행제어모듈(141)은 로봇 청소기(100, 100a, 100b)의 주행을 제어하는 것으로, 주행 설정에 따라 주행부(160)의 구동을 제어한다. 또한, 주행제어모듈(141)은 주행부(160)의 동작을 바탕으로 로봇 청소기(100, 100a, 100b)의 주행경로를 파악할 수 있다. 예를 들어, 주행제어모듈(141)은 구동 바퀴(136)의 회전속도를 바탕으로 로봇 청소기(100)의 현재 또는 과거의 이동속도, 주행한 거리 등을 파악할 수 있으며, 각 구동 바퀴(136(L), 136(R))의 회전 방향에 따라 현재 또는 과거의 방향 전환 과정 또한 파악할 수 있다. 이렇게 파악된 로봇 청소기(100, 100a, 100b)의 주행 정보를 바탕으로, 맵 상에서 로봇 청소기(100, 100a, 100b)의 위치가 갱신될 수 있다.
지도생성모듈(143)은 주행구역의 맵을 생성할 수 있다. 지도생성모듈(143)은 영상획득부(120)를 통해 획득한 영상을 처리하여 맵을 작성할 수 있다. 즉, 청소 영역과 대응되는 청소 맵을 작성할 수 있다.
또한, 지도생성모듈(143)은 각 위치에서 영상획득부(120)를 통해 획득한 영상을 처리하여 맵과 연계시켜 전역위치를 인식할 수 있다.
위치인식모듈(142)은 현재 위치를 추정하여 인식한다. 위치인식모듈(142)은 영상획득부(120)의 영상 정보를 이용하여 지도생성모듈(143)과 연계하여 위치를 파악함으로써, 로봇 청소기(100, 100a, 100b)의 위치가 갑자기 변경되는 경우에도 현재 위치를 추정하여 인식할 수 있다.
로봇 청소기(100, 100a, 100b)는 위치인식모듈(142)을 통해 연속적인 주행 중에 위치 인식이 가능하고 또한, 위치인식모듈(142) 없이 지도생성모듈(143) 및 장애물인식모듈(144)을 통해, 맵을 학습하고 현재 위치를 추정할 수 있다.
로봇 청소기(100, 100a, 100b)가 주행하는 중에, 영상획득부(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, 100a, 100b)의 현재 위치가 미지의 상태가 된 경우에, 기 저장된 디스크립터 또는 하위 대표 디스크립터 등의 데이터를 근거로 현재 위치를 추정할 수 있다.
로봇 청소기(100, 100a, 100b)는, 미지의 현재 위치에서 영상획득부(120)를 통해 획득영상을 획득한다. 영상을 통해 천장에 위치하는 조명들, 경계(edge), 코너(corner), 얼룩(blob), 굴곡(ridge) 등의 여러가지 특징(feature)들이 확인된다.
위치인식모듈(142)은 획득영상으로부터 특징들을 검출한다. 컴퓨터 비전 기술 분야에서 영상으로부터 특징을 검출하는 다양한 방법 및 이들 특징의 검출에 적합한 여러 특징검출기들에 대한 설명은 상기한 바와 같다.
위치인식모듈(142)은 각 인식 특징점을 근거로 인식 디스크립터 산출단계를 거쳐 인식 디스크립터를 산출한다. 이때 인식 특징점 및 인식 디스크립터는 장애물인식모듈(144)에서 수행하는 과정을 설명하기 위한 것으로 지도생성모듈(143)에서 수행하는 과정을 설명하는 용어와 구분하기 위한 것이다. 다만, 로봇 청소기(100, 100a, 100b)의 외부 세계의 특징이 각각 다른 용어로 정의되는 것에 불과하다.
위치인식모듈(142)은 본 특징 검출을 위해 SIFT(Scale Invariant Feature Transform) 기법을 이용하여 인식 특징점을 인식 디스크립터로 변환할 수 있다. 인식 디스크립터는 n차원 벡터(vector)로 표기될 수 있다.
SIFT는 앞서 설명한 바와 같이, 획득영상에서 코너점 등 식별이 용이한 특징점을 선택한 후, 각 특징점 주변의 일정한 구역에 속한 픽셀들의 밝기 구배(gradient)의 분포 특성(밝기 변화의 방향 및 변화의 급격한 정도)에 대해, 각 방향에 대한 변화의 급격한 정도를 각 차원에 대한 수치로 하는 n차원 벡터(vector)를 구하는 영상인식기법이다.
위치인식모듈(142)은 미지의 현재 위치의 획득영상을 통해 얻은 적어도 하나의 인식 디스크립터 정보를 근거로, 소정 하위 변환규칙에 따라 비교대상이 되는 위치 정보(예를 들면, 각 위치의 특징분포)와 비교 가능한 정보(하위 인식 특징분포)로 변환한다.
소정 하위 비교규칙에 따라, 각각의 위치 특징분포를 각각의 인식 특징분포와 비교하여 각각의 유사도를 산출할 수 있다. 각각의 위치에 해당하는 상기 위치 별로 유사도(확률)를 산출하고, 그 중 가장 큰 확률이 산출되는 위치를 현재위치로 결정할 수 있다.
이와 같이, 제어부(140)는 주행구역을 구분하고 복수의 영역으로 구성된 맵을 생성하거나, 기저장된 맵을 바탕으로 본체(110)의 현재 위치를 인식할 수 있다.
제어부(140)는 맵이 생성되면, 생성된 맵을 통신부(190)를 통해 외부 단말기, 서버 등으로 전송할 수 있다. 또한, 제어부(140)는 앞서 설명한 바와 같이, 외부 단말기, 서버 등으로부터 맵이 수신되면, 저장부에 저장할 수 있다.
또한 제어부(140)는 주행 중 맵이 갱신되는 경우 갱신된 정보를 외부 단말기로 전송하여 외부 단말기와 로봇 청소기(100, 100a, 100b)에 저장되는 맵이 동일하도록 한다. 외부 단말기와 로봇 청소기(100, 100a, 100b)에 저장된 맵이 동일하게 유지됨에 따라 이동 단말기로부터의 청소명령에 대하여, 로봇 청소기(100, 100a, 100b)가 지정된 영역을 청소할 수 있으며, 또한, 외부 단말기에 로봇 청소기의 현재 위치가 표시될 수 있도록 하기 위함이다.
이때, 맵은 청소 영역을 복수의 영역으로 구분되고, 복수의 영역을 연결하는 연결통로가 포함하며, 영역 내의 장애물에 대한 정보를 포함할 수 있다.
제어부(140)는 청소명령이 입력되면, 맵 상의 위치와 로봇 청소기의 현재위치가 일치하는지 여부를 판단한다. 청소명령은 리모컨, 조작부 또는 외부 단말기로부터 입력될 수 있다.
제어부(140)는 현재 위치가 맵 상의 위치와 일치하지 않는 경우, 또는 현재 위치를 확인할 수 없는 경우, 현재 위치를 인식하여 로봇 청소기(100)의 현재 위치를 복구한 한 후, 현재 위치를 바탕으로 지정영역으로 이동하도록 주행부(160)를 제어할 수 있다.
현재 위치가 맵 상의 위치와 일치하지 않는 경우 또는 현재 위치를 확인 할 수 없는 경우, 위치인식모듈(142)은 영상획득부(120)로부터 입력되는 획득영상을 분석하여 맵을 바탕으로 현재 위치를 추정할 수 있다. 또한, 장애물인식모듈(144) 또는 지도생성모듈(143) 또한, 같은 방식으로 현재 위치를 인식할 수 있다.
위치를 인식하여 로봇 청소기(100, 100a, 100b)의 현재 위치를 복구한 후, 주행제어모듈(141)은 현재 위치로부터 지정영역으로 주행경로를 산출하고 주행부(160)를 제어하여 지정영역으로 이동한다.
서버로부터 청소 패턴 정보를 수신하는 경우, 주행제어모듈(141)은 수신한 청소 패턴 정보에 따라, 전체 주행구역을 복수의 영역으로 나누고, 하나 이상의 영역을 지정영역으로 설정할 수 있다.
또한, 주행제어모듈(141)은 수신한 청소 패턴 정보에 따라 주행경로를 산출하고, 주행경로를 따라 주행하며, 청소를 수행할 수 있다.
제어부(140)는 설정된 지정영역에 대한 청소가 완료되면, 청소기록을 저장부(150)에 저장할 수 있다.
또한, 제어부(140)는 통신부(190)를 통해 로봇 청소기(100)의 동작상태 또는 청소상태를 소정 주기로 외부 단말기, 서버로 전송할 수 있다.
그에 따라 외부 단말기는 수신되는 데이터를 바탕으로, 실행중인 애플리케이션의 화면상에 맵과 함께 로봇 청소기의 위치를 표시하고, 또한 청소 상태에 대한 정보를 출력한다.
본 발명의 실시 예에 따른 로봇 청소기(100, 100a, 100b)는 배터리의 수명을 예측하고, 배터리를 관리하는 배터리 관리 모듈(145)을 포함할 수 있다.
본 발명의 실시 예에 따른 배터리 관리 모듈(145)은 머신 러닝에 기반하여 배터리 수명을 예측할 수 있다.
머신 러닝은 컴퓨터에게 사람이 직접 로직(Logic)을 지시하지 않아도 데이터를 통해 컴퓨터가 학습을 하고 이를 통해 컴퓨터가 알아서 문제를 해결하게 하는 것을 의미한다.
딥러닝(Deep Learning)은. 인공지능을 구성하기 위한 인공신경망(Artificial Neural Networks: ANN)에 기반으로 해 컴퓨터에게 사람의 사고방식을 가르치는 방법으로 사람이 가르치지 않아도 컴퓨터가 스스로 사람처럼 학습할 수 있는 인공지능 기술이다.
상기 인공신경망(ANN)은 소프트웨어 형태로 구현되거나 칩(chip) 등 하드웨어 형태로 구현될 수 있다.
머신 러닝(Machine Learning)의 일종인 딥러닝(Deep Learning) 기술은 데이터를 기반으로 다단계로 깊은 수준까지 내려가 학습하는 것이다.
딥러닝(Deep learning)은 단계를 높여갈수록 복수의 데이터들로부터 핵심적인 데이터를 추출하는 머신 러닝(Machine Learning) 알고리즘의 집합을 나타낼 수 있다.
딥러닝 구조는 인공신경망(ANN)를 포함할 수 있으며, 예를 들어 딥러닝 구조는 CNN(Convolutional Neural Network), RNN(Recurrent Neural Network), DBN(Deep Belief Network) 등 심층신경망(DNN)으로 구성될 수 있다
인공신경망(ANN)은 입력 레이어(Input Layer), 히든 레이어(Hiddent Layer), 및 출력 레이어(Output Layer)를 포함할 수 있다. 각 레이어는 복수의 노드들을 포함하고, 각 레이어는 다음 레이어와 연결된다. 인접한 레이어 사이의 노드들은 웨이트(weight)를 가지고 서로 연결될 수 있다.
컴퓨터(머신)는 투입된 입력 데이터로부터 일정한 패턴을 발견해 특징맵(Feature Map)을 형성한다. 컴퓨터(머신)는 하위레벨 특징부터, 중간레벨 특징, 상위레벨 특징까지 추출하여, 대상을 인식하고 그 결과를 출력할 수 있다.
인공신경망은 다음 순서의 레이어로 갈수록 더욱 상위레벨의 특징으로 추상화할 수 있다.
인공신경망은 각 레벨에 대응하는 학습된 레이어(layer)를 이용하여, 각 레벨에 대응하는 특징 정보를 추출할 수 있다. 인공신경망은 순차적으로 추상화하여, 가장 상위 레벨의 특징 정보를 활용하여 소정 대상을 인식할 수 있다.
배터리 관리 모듈(145)은 배터리의 충전 상태에 따른 주행시간, 또는 배터리 충전 상태, 주행경로 및 청소공간에 따른 주행시간, 또는 배터리 상태 대비 주행시간에 따른 청소 효율이 학습된 소프트웨어 또는 하드웨어 형태의 인공신경망(ANN)을 포함할 수 있다.
예를 들어, 배터리 관리 모듈(145)은 딥러닝(Deep Learning)으로 학습된 CNN(Convolutional Neural Network), RNN(Recurrent Neural Network), DBN(Deep Belief Network) 등 심층신경망(Deep Neural Network: DNN)을 포함할 수 있다.
배터리 관리 모듈(145)은 상기 심층신경망(DNN)에 포함된 노드들 사이의 가중치(weight)들에 기초하여 배터리의 수명 및 청소 효율을 판별할 수 있다.
상기 배터리 관리 모듈(145)은 현재의 배터리 상태, 주행경로, 청소 공간 등을 머신 러닝(machine learning)으로 기학습된 데이터의 입력 데이터로 사용하여 배터리 수명을 예측할 수 있다.
도 7은 본 발명의 실시 예에 따른 로봇 청소기의 주요 구성들 간의 제어관계를 도시한 블록도이다.
도 7을 참조하면, 본 발명의 일 실시 예에 따른 로봇 청소기는, 주행부(160)의 주행 정보를 저장하는 저장부(150)와 상기 주행 정보에 기초하여, 배터리의 충전 상태 대비 청소 공간에 대한 청소 주행 시간으로 청소 효율을 측정하는 배터리 관리 모듈(145)을 포함할 수 있다.
예를 들어, 배터리 관리 모듈(145)은, 배터리가 1회의 완전 충전(100%) 상태에서 전체 청소 공간 중 60%를 주행하면서 청소하는 경우에 청소 효율을 60%로 측정할 수 있다.
상기 배터리 관리 모듈(145)은, 상기 측정된 청소 효율을 상기 저장부에 저장하도록 제어할 수 있다. 이 경우에, 배터리 관리 모듈(145)은, 배터리가 100% 충전 상태의 청소 효율을 60%로 등록, 관리할 수 있다.
또한, 배터리 관리 모듈(145)은, 주행경로가 변경되는 경우에는 변경된 주행경로에 대해서도 청소 효율을 측정할 수 있다.
또한, 배터리 관리 모듈(145)은, 배터리가 완전 충전되지 않은 상태에서도 배터리 충전 상태 대비 주행시간을 측정하여 청소 공간에 대한 청소 주행 시간으로 청소 효율을 측정할 수 있다.
또한, 배터리 관리 모듈(145)은, 주행 경로별, 배터리 상태별 청소 효율을 등록, 관리할 수 있다.
한편, 배터리 관리 모듈(145)은, 상기 배터리의 충전 상태 대비 측정된 청소 효율을 입력 데이터로 머신 러닝(machine learning)할 수 있다.
즉, 배터리 관리 모듈(145)은, 상기 배터리 상태 대비 주행시간 별 청소 효율을 저장하고, 이를 입력 데이터로 하여 학습할 수 있다.
한편, 배터리 관리 모듈(145)은, 상기 배터리의 충전 상태 대비 상기 청소 효율에 기초하여 상기 배터리의 수명을 추정할 수 있다.
배터리 관리 모듈(145)은, 청소 효율 도출을 위해 충전 시간 대비 주행 시간, 완충 속도, 방전 속도를 파라미터로 사용할 수 있다.
또한, 배터리 관리 모듈(145)은, 정상 상태(수명 100%)에서의 효율 대비 사용에 따른 수명 감소 추이 비교는 학습을 통해 분석할 수 있다.
한편, 로봇 청소기는, 상기 청소 효율에 기초하여 추정된 상기 배터리의 수명 정보 및/또는 교체 정보를 표시하는 표시부(180)를 더 포함할 수 있다. 또한, 로봇 청소기는, 상기 청소 효율에 기초하여 추정된 상기 배터리의 수명 정보를 외부의 전자기기로 전송하는 통신부(190)를 더 포함할 수 있다.
이 경우에, 배터리 수명 표현의 경우는 배터리의 물리적 상태가 아닌 청소 능력에 대한 관점으로 로봇 청소기가 인지한 청소 공간 정보를 참조하여 현 배터리 상태로 완충 시 청소 공간의 몇% 청소 가능한지 유추하여 고객에게 제공할 수 있다.
단순한 물리적 파라미터 값이 아닌 청소 효율에 기반하여 배터리 수명이 표시됨에 따라, 사용자는 현재 배터리 상태를 직관적으로 파악할 수 있다.
한편, 도 7을 참조하면, 배터리 관리 모듈(145)은, 상기 배터리의 상태 정보를 관리하는 배터리 데이터 관리부(710), 상기 배터리의 상태 대비 상기 청소 효율을 추정하는 청소 효율 추정부(720), 상기 주행 정보에 기반하여 청소 영역을 추정하는 청소 영역 추정부(730), 상기 청소 효율에 기초하여 상기 배터리의 수명을 추정하는 수명 예측 처리부(740)를 포함할 수 있다.
배터리 데이터 관리부(710)는 저장부(150)에 저장되는 배터리 관련 데이터를 관리할 수 있다. 또한, 배터리 데이터 관리부(710)는 저장부(150)에 저장된 주행 정보 등의 데이터를 불러와 청소 영역을 추정하는 청소 영역 추정부(730), 상기 배터리의 상태 대비 상기 청소 효율을 추정하는 청소 효율 추정부(720)로 전달할 수 있다.
한편, 도 7에서는 별도의 청소 영역 추정부(730)를 포함하는 예를 도시하였지만, 본 발명은 이에 한정되지 않는다.
예를 들어, 청소 효율 추정부(720)가 청소 영역 추정부(730)의 기능도 수행하도록 구현될 수 있다. 또는 주행 제어 모듈(141) 등 제어부(140)로부터 청소 영역에 대한 정보를 수신하여 처리할 수도 있다.
한편, 수명 예측 처리부(740)는 충전 시간별로 저장된 효율 정보 및 변화 추이를 분석하여 청소 능력에 기반한 배터리 수명을 예측할 수 있다.
청소 능력에 기반한 배터리 수명 및/또는 교체 정보는 표시부(180)를 통하여 제공되거나, 통신부(190)를 통하여 기등록된 사용자의 다른 전자기기로 전송될 수 있다.
또한, 통신부(190)를 통하여 상기 측정된 청소 효율과 관련된 데이터를 소정 서버로 전송하고, 상기 소정 서버로부터 머신 러닝과 관련된 데이터를 수신할 수 있다.
이 경우에, 상기 배터리 관리 모듈(145)은, 상기 소정 서버로부터 수신된 머신 러닝과 관련된 데이터에 기초하여 업데이트(update)될 수 있다.
본 발명에 따르면, 배터리 수명 예측을 위한 별도의 회로 설계 없이 수명 추정이 가능하고, 배터리의 물리적 측면에서의 수명 예측이 아닌 청소 효율을 기반으로 실제 청소 가능 정도를 사용자에게 알려줄 수 있다.
또한, 본 발명에 따르면, 다양한 청소 상황(주행 패턴)에 대한 학습을 통하여 수명 예측 외에 청소 공간에 대하여 청소 완료 시 걸리는 시간 등을 추정할 수 있다.
또한, 배터리 관리 모듈(145)은, 배터리 수명이 100%일 때의 청소 효율을 저장하도록 제어하고, 충전량(시간) 대비 청소 공간에 대한 청소 주행 시간(정상 상태)으로 효율을 측정할 수 있다.
한편, 배터리 수명이 감소할수록 충전량(시간) 대비 청소 가능 시간이 감소하고, 정상 상태 대비 완충 시간이 변화하며, 주행 시간 대비 충전을 위한 도킹 횟수가 많아진다.
따라서, 배터리 관리 모듈(145)은, 효과적인 배터리 수명 예측을 위해 다양한 상황에서 도출된 청소 효율에 대해 학습하고, 학습된 데이터에 기초하여 수명을 예측할 수 있다.
본 발명에 따르면, 사용자에게 청소 효율 기반의 수명 정보 및 교체 시기를 알려줌으로써 로봇 청소기를 효과적으로 사용할 수 있게 할 수 있다. 이에 따라, 배터리 수명이 부족한 경우 빈번한 충전으로 인해 청소 시간이 길어지고 청소를 마무리 못하고 도킹하는 경우를 방지할 수 있다.
도 8은 본 발명의 일 실시 예에 따른 로봇 청소기의 제어 방법을 도시한 순서도이고, 도 9 내지 도 12는 본 발명의 실시 예에 따른 로봇 청소기의 제어 방법에 관한 설명에 참조되는 도면이다.
도 8을 참조하면, 저장부(150)는 로봇 청소기의 주행에 따른 주행 정보를 저장하고, 배터리 관리 모듈(145)은, 상기 주행 정보에 기초하여, 배터리의 충전 상태 대비 청소 공간에 대한 청소 주행 시간으로 청소 효율을 측정할 수 있다(S810).
배터리 관리 모듈(145)은, 충전시간(충전량), 잔여량 등 배터리 상태 정보와 주행시간, 도킹 여부, 청소 기능 온/오프(on/off) 등 로봇 청소기 주행 정보에 기초하여 청소 공간에 대한 청소 효율을 측정할 수 있다.
한편, 배터리 관리 모듈(145)은, 충전 시간 별 청소 효율을 저장, 비교, 학습할 수 있다(S820).
예를 들어, 배터리 관리 모듈(145)은, 상기 배터리의 충전 상태 대비 측정된 청소 효율을 입력 데이터로 머신 러닝(machine learning)할 수 있다. 배터리 관리 모듈(145)은, 상기 측정된 청소 효율을 저장부(150)에 저장하도록 제어할 수 있다.
이후, 배터리 관리 모듈(145)은, 상기 배터리의 충전 상태 대비 상기 청소 효율에 기초하여 상기 배터리의 수명을 추정할 수 있다(S830).
상기 배터리 관리 모듈(145)은, 학습된 맵(Map) 정보, 자주 사용되는 청소 모드 등 청소 영역 정보를 활용하여 상기 배터리의 수명을 예측할 수 있다.
도 9는 배터리 수명 상태에 따른 관련 파라미터 변화에 대한 예시이다.
도 9를 참조하면, 사용 초기 상태를 수명 100%라 할 때 수명이 감소할수록 일정 배터리 양에 따라 주행 가능한 시간이 감소하고 일정 주행 시간 대비 방전 속도도 증가한다.
배터리 관리 모듈(145)은, 배터리 관련 파라미터 및 다양한 상황에 대한 학습을 통하여 청소 가능 배터리 수명을 예측하고, 배터리 교체 시기를 유추할 수 있다.
한편, 배터리 수명이 청소 효율을 기반으로 추정되면, 추정된 수명 정보 및/또는 교체 시기를 사용자에게 알릴 수 있다(S830).
예를 들어, 표시부(180)가 상기 청소 효율에 기초하여 추정된 상기 배터리의 수명/교체 정보를 표시할 수 있다.
도 10은 본 발명의 일 실시 예에 따른 배터리 수명 및 교체 알림 기능에 대한 사용 예로서, 로봇 청소기(100)의 표시부(180)를 이용하여 사용자에게 교체 알림을 주는 씬(scene)이다.
또는, 통신부(190)를 통하여, 상기 청소 효율에 기초하여 추정된 상기 배터리의 수명 정보를 외부의 전자기기로 전송할 수 있다.
도 11은 사용자의 스마트폰(90)과 연동을 통하여 배터리 수명 정보 및 교체 알림을 주는 씬(scene)이다.
도 12는 표시부(180)를 통하여 청소 효율 기반의 배터리 수명 정보를 사용자에게 알려주는 씬(scene)이다.
본 발명에 따르면, 배터리 상태 정보와 주행 정보에 기반한 청소 효율에 대한 시간적 분석 및 학습을 통하여 배터리 수명을 예측할 수 있다. 또한, 로봇 청소기의 기학습된 영역 정보를 활용하여 청소 공간 대비 청소 가능 정도를 유추하여 배터리의 수명/교체 시기를 제공할 수 있다.
본 발명은 배터리 충천 시간에 따른 청소 주행 시간의 상관 관계를 통한 배터리 효율의 학습 정보를 기반으로 배터리 수명을 예측하고 교체 시기를 사용자에게 알려줄 수 있다.
본 발명은 배터리 자체의 파라미터에 기반한 기존의 물리적 수명 예측 방법과 달리 실제 청소 상황에 대한 충전 시간 대비 실제 청소 가능 시간에 따른 청소 효율을 기반으로 수명을 예측한다.
본 발명은, 로봇 청소기에서 추정 가능한 배터리 충전 시간, 배터리 잔여량, 방전 속도, 주행 시간 등의 학습을 통하여 청소 능력을 지표로 하는 배터리 수명 유추에 따라, 수명 예측을 위한 추가 회로 설계 및 로직이 필요하지 않다.
본 발명에 따른 로봇 청소기는 상기한 바와 같이 설명된 실시 예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시 예들은 다양한 변형이 이루어질 수 있도록 각 실시 예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
한편, 본 발명의 실시 예에 따른 로봇 청소기의 제어 방법은, 프로세서가 읽을 수 있는 기록매체에 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 프로세서가 읽을 수 있는 기록매체는 프로세서에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 프로세서가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한, 인터넷을 통한 전송 등과 같은 캐리어 웨이브의 형태로 구현되는 것도 포함한다. 또한, 프로세서가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 프로세서가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.
본체: 110
영상획득부: 120
조작부: 137
배터리: 138
제어부: 140
저장부: 150
주행부: 160
센서부: 170
표시부: 180
통신부: 190

Claims (15)

  1. 본체를 이동시키는 주행부;
    상기 주행부의 주행 정보를 저장하는 저장부; 및,
    상기 주행 정보에 기초하여, 배터리의 충전 상태 대비 청소 공간에 대한 청소 주행 시간으로 청소 효율을 측정하는 배터리 관리 모듈;을 포함하는 로봇 청소기.
  2. 제1항에 있어서,
    상기 배터리 관리 모듈은,
    상기 배터리의 충전 상태 대비 측정된 청소 효율을 입력 데이터로 머신 러닝(machine learning)하는 것을 특징으로 하는 로봇 청소기.
  3. 제1항에 있어서,
    상기 배터리 관리 모듈은,
    상기 측정된 청소 효율을 상기 저장부에 저장하도록 제어하는 것을 특징으로 하는 로봇 청소기.
  4. 제1항에 있어서,
    상기 배터리 관리 모듈은,
    상기 배터리의 충전 상태 대비 상기 청소 효율에 기초하여 상기 배터리의 수명을 추정하는 것을 특징으로 하는 로봇 청소기.
  5. 제4항에 있어서,
    상기 청소 효율에 기초하여 추정된 상기 배터리의 수명 정보를 표시하는 표시부;를 더 포함하는 로봇 청소기.
  6. 제4항에 있어서,
    상기 청소 효율에 기초하여 추정된 상기 배터리의 교체 정보를 표시하는 표시부;를 더 포함하는 로봇 청소기.
  7. 제4항에 있어서,
    상기 청소 효율에 기초하여 추정된 상기 배터리의 수명 정보를 외부의 전자기기로 전송하는 통신부;를 더 포함하는 로봇 청소기.
  8. 제1항에 있어서,
    상기 배터리 관리 모듈은,
    상기 배터리의 상태 정보를 관리하는 배터리 데이터 관리부, 상기 배터리의 상태 대비 상기 청소 효율을 추정하는 청소 효율 추정부, 상기 주행 정보에 기반하여 청소 영역을 추정하는 청소 영역 추정부, 상기 청소 효율에 기초하여 상기 배터리의 수명을 추정하는 수명 예측 처리부를 포함하는 것을 특징으로 하는 로봇 청소기.
  9. 제1항에 있어서,
    상기 측정된 청소 효율과 관련된 데이터를 소정 서버로 전송하고, 상기 소정 서버로부터 머신 러닝과 관련된 데이터를 수신하는 통신부;를 더 포함하는 것을 특징으로 하는 로봇 청소기.
  10. 제9항에 있어서,
    상기 소정 서버로부터 수신된 머신 러닝과 관련된 데이터에 기초하여 상기 배터리 관리 모듈을 업데이트(update)하는 것을 특징으로 하는 로봇 청소기.
  11. 주행 정보를 저장하는 단계;
    상기 주행 정보에 기초하여, 배터리의 충전 상태 대비 청소 공간에 대한 청소 주행 시간으로 청소 효율을 측정하는 단계; 및,
    상기 배터리의 충전 상태 대비 측정된 청소 효율을 입력 데이터로 머신 러닝(machine learning)하는 단계;를 포함하는 로봇 청소기의 제어방법.
  12. 제11항에 있어서,
    상기 측정된 청소 효율을 저장하는 단계;를 더 포함하는 로봇 청소기의 제어방법.
  13. 제11항에 있어서,
    상기 배터리의 충전 상태 대비 상기 청소 효율에 기초하여 상기 배터리의 수명을 추정하는 단계;를 더 포함하는 로봇 청소기의 제어방법.
  14. 제13항에 있어서,
    상기 청소 효율에 기초하여 추정된 상기 배터리의 교체 정보를 표시하는 단계;를 더 포함하는 로봇 청소기의 제어방법.
  15. 제13항에 있어서,
    상기 청소 효율에 기초하여 추정된 상기 배터리의 수명 정보를 외부의 전자기기로 전송하는 단계;를 더 포함하는 로봇 청소기의 제어방법.
KR1020160145236A 2016-11-02 2016-11-02 로봇 청소기 및 그 제어방법 KR20180048088A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160145236A KR20180048088A (ko) 2016-11-02 2016-11-02 로봇 청소기 및 그 제어방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160145236A KR20180048088A (ko) 2016-11-02 2016-11-02 로봇 청소기 및 그 제어방법

Publications (1)

Publication Number Publication Date
KR20180048088A true KR20180048088A (ko) 2018-05-10

Family

ID=62184652

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160145236A KR20180048088A (ko) 2016-11-02 2016-11-02 로봇 청소기 및 그 제어방법

Country Status (1)

Country Link
KR (1) KR20180048088A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210018459A (ko) * 2018-06-08 2021-02-17 포시텍 파워 툴스(소주) 컴퍼니. 리미티드. 로봇청소기, 그 제어방법, 및 로봇청소기 시스템
KR102537219B1 (ko) * 2022-04-28 2023-05-30 가천대학교 산학협력단 배터리 중심의 모바일 로봇 귀소 알고리즘 제공방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210018459A (ko) * 2018-06-08 2021-02-17 포시텍 파워 툴스(소주) 컴퍼니. 리미티드. 로봇청소기, 그 제어방법, 및 로봇청소기 시스템
KR102537219B1 (ko) * 2022-04-28 2023-05-30 가천대학교 산학협력단 배터리 중심의 모바일 로봇 귀소 알고리즘 제공방법

Similar Documents

Publication Publication Date Title
EP3575046B1 (en) Mobile robot and method for controlling same
US10717193B2 (en) Artificial intelligence moving robot and control method thereof
EP3450117B1 (en) Mobile robot and control method therefor
JP7150773B2 (ja) 移動ロボット及びその制御方法
CN109890576B (zh) 移动机器人及其控制方法
US10750920B2 (en) Control method of robot system including plurality of moving robots
KR101976424B1 (ko) 이동 로봇
KR102275300B1 (ko) 이동 로봇 및 그 제어방법
EP3349087B1 (en) Moving robot
KR102235271B1 (ko) 이동 로봇 및 그 제어방법
US11700989B2 (en) Mobile robot using artificial intelligence and controlling method thereof
KR20180023301A (ko) 이동 로봇 및 그 제어방법
KR20180023302A (ko) 이동 로봇 및 그 제어방법
KR20180023303A (ko) 이동 로봇 및 그 제어방법
KR20180037516A (ko) 이동 로봇 및 그 제어방법
KR101922953B1 (ko) 이동 로봇 및 그 제어방법
KR102478283B1 (ko) 이동 로봇 및 그 제어방법
KR20180048088A (ko) 로봇 청소기 및 그 제어방법
KR20180089660A (ko) 조명 제어 시스템
US20220066463A1 (en) Mobile robot and method of controlling the mobile robot
KR102500525B1 (ko) 이동 로봇
KR20200091110A (ko) 이동 로봇 및 그 제어 방법