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

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

Info

Publication number
KR20090018562A
KR20090018562A KR1020080021869A KR20080021869A KR20090018562A KR 20090018562 A KR20090018562 A KR 20090018562A KR 1020080021869 A KR1020080021869 A KR 1020080021869A KR 20080021869 A KR20080021869 A KR 20080021869A KR 20090018562 A KR20090018562 A KR 20090018562A
Authority
KR
South Korea
Prior art keywords
obstacle
robot cleaner
local map
cell
area
Prior art date
Application number
KR1020080021869A
Other languages
English (en)
Other versions
KR101362373B1 (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 US12/216,802 priority Critical patent/US20090048727A1/en
Publication of KR20090018562A publication Critical patent/KR20090018562A/ko
Application granted granted Critical
Publication of KR101362373B1 publication Critical patent/KR101362373B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • 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/009Carrying-vehicles; Arrangements of trollies or wheels; Means for avoiding mechanical obstacles
    • 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/2805Parameters or conditions being sensed
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • 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)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Electromagnetism (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

본 발명은 로봇 청소기 및 그 제어방법에 관한 것으로, 본 발명의 목적은 장애물센서에 의해 감지된 장애물을 로컬 맵에 반영하여 관리하는 로봇 청소기 및 그 제어방법을 제공함에 있다. 이를 위해 본 발명에 따른 로봇 청소기는 본 발명에 따른 로봇 청소기는 장애물을 감지하기 위한 장애물센서; 로봇 청소기 주위의 장애물 위치가 표시되는 로컬 맵이 저장되는 메모리; 상기 장애물센서를 이용하여 상기 장애물 위치를 산출하고, 상기 로컬 맵에 장애물 위치를 반영하는 제어부를 포함한다.
장애물센서, 로봇 청소기, 로컬 맵

Description

로봇청소기 및 그 제어방법{Robot cleaner and control method of the same of}
본 발명은 로봇청소기에 관한 것으로, 더욱 상세하게는 장애물센서에 의해 감지된 장애물을 로컬 맵에 반영하여 관리하는 로봇청소기 및 그 제어방법에 관한 것이다.
일반적으로 청소기는 본체 내부에 설치되는 진공펌프의 진공압을 이용하여, 바닥 등에 묻어 있는 이물질을 포함한 공기를 흡입한 후에 본체 내부에서 이물질을 필터링 하고 필터링되어 이물질이 제거된 공기를 본체 외부로 배출하도록 하여 바닥 등을 깨끗이 하는 기기이다.
이러한 청소기는 사용자가 직접 들고 다니면서 바닥을 청소해야 하는 불편함이 있어, 최근에는 배터리를 동력원으로 하며 스스로 청소영역을 주행하면서 청소를 수행하는 로봇 청소기가 출시되고 있다.
그런데, 이러한 로봇 청소기는 자동으로 설정된 주행경로를 주행하면서 장애물과 잦은 충돌로 인하여 주행경로로부터 이탈되거나 로봇 청소기의 외부가 손상되는 문제점이 있다.
이러한 문제점을 해결하기 위하여 대한민국공개특허공보 특2006-0095657호에서는 로봇 청소기의 본체 둘레에 적외선 센서 또는 초음파센서를 구비하여 장애물을 회피하도록 하는 로봇 청소기가 개시되고 있다.
한편, 적외선 센서는 일정한 거리내의 장애물 존재여부를 판단하여 장애물에 대한 충돌 가능성을 파악하여 감속하거나 정지하는 목적으로 이용되거나 로봇 청소기의 측면에 부착되어 벽면추종 주행을 하는 데에 이용될 수 있으나 외부 조명의 영향에 민감하여 장애물 감지의 신뢰성이 낮은 단점이 있다.
초음파 센서는 넓은 영역 내의 장애물 존부와 장애물과의 거리를 감지하는 데에 이용되나, 감지영역 내에서 장애물의 위치를 파악할 수 없는 단점이 있다.
전술된 초음파 센서와 적외선 센서의 단점을 보완하기 위하여, 외부조명에 둔감하고 삼각법을 이용하여 로봇 청소기와 장애물의 거리와 장애물의 존부 및 장애물의 위치를 감지할 수 있는 발광부와 수신부로 이루어진 장애물거리감지센서(Position Sensitive Detector)가 이용되는 것이 제시될 수 있을 것이다.
그러나, 전술된 장애물거리감지센서를 이용하는 로봇 청소기는 초음파 센서에 비하여 감지영역이 좁기 때문에, 감지영역 밖의 사각영역에서 로봇 청소기와 장애물의 거리와 장애물의 존부 및 장애물의 위치를 감지하지 못하는 단점이 있다.
따라서, 본 발명의 목적은 장애물센서에 의해 감지된 장애물을 로컬 맵에 반영하여 관리하는 로봇 청소기 및 그 제어방법을 제공함에 있다.
또한, 본 발명의 목적은 장애물 회피와 장애물 갇힘 판단과 장애물 갇힘 탈출을 하기 위해 장애물이 반영된 로컬 맵을 이용하는 데 있어서 로봇 청소기의 연산 량이 감소되도록 하는 로봇 청소기 및 그 제어방법을 제공하는 데에 있다.
상기와 같은 목적을 달성하기 위한 본 발명에 따른 로봇 청소기는 장애물을 감지하기 위한 장애물센서; 로봇 청소기 주위의 장애물 위치가 표시되는 로컬 맵이 저장되는 메모리; 상기 장애물센서를 이용하여 상기 장애물 위치를 산출하고, 상기 로컬 맵에 장애물 위치를 반영하는 제어부를 포함한다.
여기서, 상기 장애물센서는 적외선을 일 방향으로 발신하고 장애물에서 반사되는 상기 적외선을 이용하여, 상기 장애물센서와 상기 장애물의 거리를 감지하기 위한 PSD(Position Sensitive Detector)센서이다.
그리고 상기 메모리에 저장되는 상기 로컬 맵의 가로길이와 세로길이는 로봇 청소기가 장애물 회피할 수 있는 최소거리가 고려되어 설정된다.
그리고 상기 제어부는 상기 장애물센서를 이용하여 상기 장애물 거리를 감지하고, 상기 장애물 거리와 상기 장애물센서의 설치위치를 이용하여 상기 장애물 위치를 산출한다.
그리고 상기 제어부는 상기 로컬 맵을 이용하여 상기 로봇 청소기가 벽면추종주행과 장애물 회피와 장애물 갇힘 판단 및 장애물 갇힘 탈출들 중 일부 또는 전부를 하도록 한다.
또한, 상기와 같은 목적을 달성하기 위한 본 발명에 따른 로봇 청소기는 장애물을 감지하기 위한 장애물센서; 로봇 청소기 주변의 장애물 영역이 반영되는 복수의 셀로 이루어지는 로컬 맵이 저장되는 메모리; 상기 장애물센서를 이용하여 장애물 영역을 산출하고, 상기 장애물 영역에 해당하는 상기 셀에 장애물 영역을 반영하는 제어부를 포함한다.
여기서, 상기 셀의 크기는 상기 메모리의 용량과 상기 로컬 맵의 해상도가 고려되어 결정된다.
그리고 상기 제어부는 상기 장애물센서를 이용하여 장애물 위치를 산출하고, 상기 상 장애물 위치를 기준점으로 한 일정한 영역을 산출하여 상기 장애물 영역을 산출한다.
그리고 상기 제어부는 상기 로봇 청소기가 장애물 회피 또는 장애물 갇힘 탈출하도록 상기 로봇 청소기의 중심에서 상기 로봇 청소기의 헤딩방향으로 연장되는 라인 상의 상기 셀에 장애물 영역이 반영되어 있는지 판단한다.
또한, 상기와 같은 목적을 달성하기 위한 본 발명에 따른 로봇 청소기의 제 어방법은 장애물센서를 이용하여 장애물거리를 산출하는 단계;상기 장애물 거리와 상기 장애물센서의 설치위치를 이용하여 장애물 위치를 산출하는 단계; 상기 장애물 위치를 복수의 셀로 이루어진 로컬 맵의 상기 장애물 위치에 해당하는 상기 셀에 반영하는 단계를 포함한다.
여기서, 상기 장애물 위치가 반영된 상기 셀을 이용하여 벽면추종제어를 수행한다.
그리고 상기 로봇 청소기의 주행진로 상에 상기 장애물 위치가 반영된 상기 셀이 있는 경우 상기 로봇 청소기가 장애물 회피하도록 한다.
그리고 상기 로봇 청소기의 주위에 상기 장애물 위치가 반영된 상기 셀이 있는 경우 상기 로컬 맵을 초기화 하고, 상기 로봇 청소기가 제자리에서 저속으로 회전하는 한다.
그리고 상기 로봇 청소기의 주위에 상기 장애물 위치가 반영된 상기 셀이 있는 경우 상기 로봇 청소기가 장애물 갇힘 탈출하도록 한다.
또한, 상기와 같은 목적을 달성하기 위한 본 발명에 따른 로봇 청소기의 제어방법은 장애물센서를 이용하여 장애물거리를 산출하는 단계; 상기 장애물 거리와 상기 장애물센서의 설치위치를 이용하여 장애물 위치를 산출하는 단계; 상기 장애물 위치를 기준으로 하여 장애물 영역을 산출하는 단계; 상기 장애물 영역을 복수의 셀로 이루어진 로컬 맵의 상기 장애물 영역에 해당하는 상기 셀에 반영하는 단계를 포함한다.
여기서, 상기 장애물 영역은 상기 장애물 위치를 중심으로 하고 상기 로봇 청소기의 크기에 대응되는 영역이다.
그리고 상기 장애물 영역이 반영된 상기 셀을 이용하여 벽면추종제어를 수행한다.
그리고 상기 로봇 청소기의 중심에서 상기 로봇 청소기의 헤딩방향으로 연장하는 라인 상에 상기 장애물 영역이 반영된 상기 셀이 있는 경우 상기 로봇 청소기가 장애물 회피하도록 한다.
그리고 상기 로봇 청소기의 둘레 전체에 상기 장애물 영역이 반영된 상기 셀이 있는 경우 상기 로컬 맵을 초기화 하고, 상기 로봇 청소기가 제자리에서 저속으로 회전하도록 한다.
그리고 상기 로컬 맵을 이용하여 상기 로봇 청소기가 장애물 갇힘 탈출하도록 한다.
본 발명에 따른 로봇 청소기 및 그 제어방법은 장애물센서에 의해 감지된 장애물을 로컬 맵에 반영하여 관리함으로써, 장애물센서의 감지영역 밖의 사각영역에도 장애물 위치를 감지할 수 있는 효과가 있다.
또한, 본 발명에 따른 로봇 청소기 및 그 제어방법은 장애물센서에 의해 감지된 장애물을 로컬 맵에 반영하여 관리함으로써, 적은 수의 장애물센서로도 장애물 위치를 감지할 수 있게 되는 효과가 있다.
또한, 본 발명에 따른 로봇 청소기 및 그 제어방법은 로컬 맵에 장애물 영역을 반영하고, 로봇 청소기의 주행라인 상에 장애물이 반영된 셀이 있는지 확인하여 장애물 회피와 장애물 갇힘 판단과 장애물 갇힘 탈출을 하여, 셀을 검색하는 데에 요구되는 연산 량이 줄어드는 효과가 있다.
이하, 첨부된 도면을 참조하면서 본 발명의 바람직한 실시 예를 상세히 설명하기로 한다.
도 1 내지 도 5를 참조하면, 본 발명의 제 1 실시 예에 따른 로봇 청소기(1)는 상부(11)와 하부(12)로 이루어져 내부에 배터리가 수용되는 본체(10)와, 상부(11)의 일측에 형성되어 사용자가 로봇 청소기(1)를 조작할 수 있도록 하는 입력부(110)와, 본체(10)의 둘레에 설치되는 복수의 장애물센서(S1,S2,S3,S4,S5,S6,S7)와, 하부(12)의 좌우측에서 하방으로 일부 노출되어 본체(10) 내부에 회전 가능하게 설치되는 좌우구동바퀴(40,41)를 회전하는 좌우측주행모터(162,163)를 포함하는 구동부(160)와, 본체(10)에서 바닥으로 일부 노출되어 설치되는 브러쉬(141)를 회전하는 브러쉬 회전모터(142)를 포함하는 이물수거부(140)와, 본체(10)의 내부에 설치되는 흡입펌프(151)를 회전하는 흡입모터(152)를 포함하는 이물질 흡입부(150)로 이루어지는 청소부(130) 및 로봇 청소기(1)를 전반적으로 제어하는 제어부(200)를 포함한다.
입력부(110)는 다수의 버튼을 구비하여 사용자가 버튼을 누르는 경우 눌러지는 버튼에 대응하는 명령을 제어부(200)에 제공한다.
구동부(160)는 하부(12)의 좌우측에 설치되어 회전하는 좌우구동바퀴(40,41)와 좌우구동바퀴(40,41)를 회전하는 좌우측주행모터(162,163)와 제어부(200)에 의 해 제어되어 좌우측주행모터(162,163)의 회전방향 및 회전속도를 조절하는 주행모터구동부(161)로 이루어진다. 이러한 구동부(160)는 제어부(200)의 주행명령에 따라 로봇 청소기(1)가 전후진 또는 좌우방향전환을 하며 주행할 수 있도록 한다.
청소부(130)의 이물질 수거부(140)는 바닥의 이물질을 본체(10)의 내부로 긁어 올리기 위한 브러쉬(141)와 브러쉬(141)를 회전하는 브러쉬 모터(142) 및 브러쉬 모터(142)를 구동하는 브러쉬 모터 구동부(143)로 이루어진다. 이러한 이물질 수거부(140)는 브러쉬 모터 구동부(143)에 제어부(200)에 의한 구동명령이 입력되면 브러시(141)를 회전하여 바닥에 떨어져 있는 이물질을 본체(10)의 내부로 긁어 올린다.
청소부(130)의 이물질 흡입부(150)는 이물질 수거부(140)에 의해 긁어 올려진 이물질을 흡입하기 위한 흡입펌프(151)와 흡입펌프(151)를 회전하는 흡입모터(152) 및 제어부(200)에 의해 제어되어 흡입모터(152)를 구동하는 흡입모터구동부(153)로 이루어진다. 이러한 이물질 흡입부(150)는 흡입모터구동부(153)에 제어부(200)에 의한 구동명령이 입력되면 이물 수거부(140)가 긁어 올린 이 물질을 흡입하여 본체(10)의 내부에 설치되는 집진 통(도면에 도시되지 않음)으로 배출한다. 이에 따라, 집진 통에는 이물질이 쌓이여 저장된다.
복수의 장애물센서(S1,S2,S3,S4,S5,S6,S7)는 도 3에서 도시되는 바와 같이 본체(10)의 전면에 설치되는 일부의 장애물센서(S3, S4, S5))와 본체(10)의 좌 측면에 설치되는 다른 일부의 장애물센서(S1,S2) 및 본체(10)의 우측면에 설치되는 또 다른 일부의 장애물센서(S6,S7)로 이루어진다.
이러한 복수의 장애물센서(S1,S2,S3,S4,S5,S6,S7)는 도 4에서 도시되는 바와 같이 일 방향(DS1~DS7)으로 적외선을 발산하는 엘이디 발광부(211a, 212a, 213a, 221a, 222a, 231a, 232a)와 엘이디 발광부(211a, 212a, 213a, 221a, 222a, 231a, 232a)에서 발산된 후 장애물에서 반사되어 되돌아오는 적외선의 입사 점을 감지하는 수신부(211b, 212b, 213b, 221b, 222b, 231b, 232b)로 이루어진다.
한편, 엘이디 발광부(211a, 212a, 213a, 221a, 222a, 231a, 232a)는 일 방향(DS1~DS7)으로 적외선이 장애물(O)에서 반사되어 각각의 수신부(211b, 212b, 213b, 221b, 222b, 231b, 232b)에 적외선이 입사되면, 각각의 장애물센서(S1,S2,S3,S4,S5,S6,S7)는 적외선이 입사되는 적외선 입사 점을 제어부(200)로 출력한다. 그리고 후술되는 제어부(200)는 각각의 장애물센서(S1,S2,S3,S4,S5,S6,S7)들로부터 입력되는 적외선 입사점과 삼각함수관계를 이용하여 장애물과 각각의 장애물센서(S1,S2,S3,S4,S5,S6,S7) 사이의 장애물거리(D-1~D-7)를 산출할 수 있게 된다. 여기서, 입사점과 삼각함수관계를 이용한 거리 산출방법은 일반적으로 알려진 방법을 이용함으로 이에 대한 상세한 설명은 생략하기로 한다.
제어부(200)의 입력 측에는 제어부(200)에 사용자에 의한 명령이 입력될 수 있도록 하는 입력부(110)와 로봇 청소기(1)와 장애물 사이의 거리를 감지하는 복수의 장애물센서(S1,S2,S3,S4,S5,S6,S7)가 제공되고, 출력 측에는 좌우측주행모터(162,163)를 구동하기 위한 주행모터구동부(161)와 브러쉬 모터(142)를 구동하기 위한 브러쉬 모터구동부(143)와 흡입 모터(152)를 구동하기 위한 흡입모터구동 부(153)가 제공된다.
또한, 제어부(200)에는 로봇 청소기(1)가 운전하는 데 요구되는 데이터와 프로그램 및 로봇 청소기 주변의 장애물 위치(OP)가 반영되는 로컬 맵(LM)이 저장되는 메모리(120)가 제공된다.
메모리(120)에 저장되는 로컬 맵(LM)은 로봇 청소기(1)를 중심(C)을 XY좌표의 기준으로 하며 로봇 청소기 주변의 장애물 위치(OP) 정보가 반영되도록 하기 위해 행렬 배열되는 복수의 셀(CE)들로 이루어진 로봇 청소기(1)을 중심으로 하는 국부적인 지도이다. 이러한 로컬 맵(LM)의 가로길이(L)와 세로길이(H)는 로봇 청소기(1)가 장애물 회피하는 데에 요구되는 로봇 청소기(1)와 장애물(O)의 최소거리가 고려되어 가로길이(L)와 세로길이(H)는 1M로 설정된다.
셀(CE)의 면적은 메모리(120)의 용량이 고려되어 로컬 맵(LM) 상에서 장애물 위치(OP) 정보의 해상도가 높도록 작게 결정된다.
한편, 제어부(200)는 도 4에서 도시되는 바와 같이, 복수의 장애물센서(S1,S2,S3,S4,S5,S6,S7)를 이용하여, 각각의 장애물센서(S1,S2,S3,S4,S5,S6,S7)에서 장애물(O)까지의 장애물거리(D-1~D-7)를 산출한다. 그리고 각각의 쟁애물센서(S1,S2,S3,S4,S5,S6,S7)의 설치위치(S1x,S1y)~(S7x,S7y)들과 각각의 장애물센서(S1,S2,S3,S4,S5,S6,S7)에서 장애물(O)까지의 장애물거리(D-1~D-7)들의 짝을 아래의 [수학식1]에 순차적으로 대입하여 장애물 위치(OP)를 산출한다.
[수학식 1]
Figure 112008017143783-PAT00001
여기서, 0P(Ox,Oy)는 로컬 맵(LM) 상에서의 장애물 위치이고, (Sx,Sy)는 로봇 청소기(1)의 헤딩방향(HD)과 로컬 맵(LM)의 X축과 일치 할 때 로컬 맵(LM)의 좌표 상에서 각각의 장애물센서(S1~S7)의 설치위치(S1x,S1y)~(S7x,S7y)이고, d는 각각의 장애물센서(S1,S2,S3,S4,S5,S6,S7)와 장애물(O)까지의 장애물거리(D-1~D-7)이고, Sθ는 각각의 장애물센서(S1,S2,S3,S4,S5,S6,S7)가 바라보는 방향(DS1~DS7)과 로봇 청소기(1)의 헤딩방향(HD)의 사이각(S1θ~S7θ)이고, Rθ는 로봇 청소기(1)의 헤딩방향(HD)과 로컬 맵(LM)의 X축 사이각이다.
그리고 제어부(200)는 산출된 장애물 위치(OP)에 해당하는 로컬 맵(LM)의 셀(CE)을 검색하여, 해당 셀(CE)에 장애물 위치(OP)를 반영한다.
그리고 제어부(200)는 장애물 위치(OP)가 반영된 로컬 맵(LM)을 이용하여 로봇 청소기(1)가 장애물 회피와 장애물 갇힘 판단과 장애물 갇힘 탈출 및 벽면추종주행을 수행하도록 한다.
이하에서는 본 발명에 따른 로봇 청소기의 제어방법에 대하여 도면과 함께 설명하기로 한다.
도 5 내지 도 10을 참조하면, 우선, 사용자가 로봇 청소기(1)를 온(ON)시키고 입력부(110)를 통하여 주행방식을 포함한 운전조건을 입력하면, 제어부(200)는 로봇 청소기(1)가 운전시작 하도록 한다(501).
그 다음, 제어부(200)는 메모리(120)에 저장되어 있는 로컬 맵(LM)을 초기화 한다(502). 다시 말하면, 로컬 맵(LM)의 셀(CE)에 반영되어 있던 장애물 위치(OP)를 삭제한다.
그 다음, 제어부(200)는 장애물센서(S1,S2,S3,S4,S5,S6,S7)를 이용하여, 장애물센서(S1,S2,S3,S4,S5,S6,S7)와 장애물(O)의 장애물거리(D-1~D-7)를 산출하고, 이렇게 산출된 장애물거리(D-1~D-7)와 상기되는 [수학식1]을 이용하여 장애물 위치(OP)를 취득하여 로컬 맵(LM)의 해당 셀(CE)에 반영한다. 그리고 제어부(200)는 로컬 맵(LM)을 주기적으로 갱신한다(503). 여기서, 로컬 맵(LM)의 갱신은 장애물 위치(OP)가 반영된 셀(CE)에서 장애물 위치(OP)를 로컬 맵(L)의 병진 운동에 대응한 다른 셀(CE)로 이동시켜 반영하면서 장애물 위치(OP)가 반영된 셀(CE)에서 장애물 위치(OP)를 삭제하는 것을 말한다.
이어서, 제어부(200)는 주행방식이 벽면추종인가를 판단한다(504). 이때에, 주행방식이 벽면추종이 아니면, 제어부(200)는 그 이외의 주행방식에 따른 주행경로를 따라 주행하도록 하면서(505), 후술되는 507 단계 및 그 이후의 단계를 수행한다. 여기서, 그 이외의 주행방식은 랜덤주행방식 사선주행방식 등이 있다.
반면에, 주행방식이 벽면추종이면, 제어부(200)는 장애물 위치(OP)가 반영된 로컬 맵(LM)을 이용하여 로봇 청소기(1)가 벽면추종주행 하도록 한다(506). 다시 말하면, 도 7에서 도시되는 바와 같이, 로봇 청소기(1)의 좌측에 위치하며 로봇 청소기(1)에 가까운 장애물 위치(OP)가 저장되는 적어도 두 개의 셀(CE)를 검색하고, 검색된 두 개의 셀(CE)을 연결하여 벽면직선(WL)을 구한다. 그 다음, 벽면직선(WL)에 평행한 로봇 청소기(1)의 헤딩방향(HD)을 산출하고, 산출된 로봇 청소기(1)의 헤딩방향(HD)를 기준으로 주행진로(AP)를 산출한다. 여기서, 주행진로(AP)는 로봇 청소기(1)가 지나갈 정도의 폭(AW)과 로봇 청소기(1)의 주행속도에 따라 가변되는 전방길이(AH)를 가지는 영역을 의미한다. 전방길이(AH)는 로봇 청소기(1)의 주행속도에 반비례하여 설정된다. 이어서, 제어부(200)는 로봇 청소기(1)가 산출된 주행진로(AP)를 따라 주행하도록 한다.
그 다음, 제어부(200)는 로봇 청소기(1)가 주행진로(DP)를 주행하도록 하면서, 메모리(120)에 저장되는 로컬 맵(LM)의 주행진로(AP) 상에 장애물 위치(OP)가 반영된 셀(CE)이 있는지를 판단한다(507).
이때에, 주행진로(AP) 상에 장애물 위치(OP)가 반영된 셀(CE)이 없으면, 제어부(200)는 운전종료조건인지를 판단하여(512), 운전종료조건이 아니면 상기되는 507 단계로 회귀 및 그 이후의 단계를 수행하고, 운전종료조건이면 종료한다. 여기서, 운전종료조건은 로봇 청소기(1)가 벽면추종주행방식 또는 그 이외의 주행방식에 따른 주행경로를 완주한 경우일 수 있다.
반면에, 주행진로(AP) 상에 장애물 위치(OP)가 반영된 셀(CE)이 있으면, 제어부(200)는 장애물 회피 진로(EAP)를 산출한다(508). 즉, 도 8에서 도시되는 바와 같이, 로봇 청소기(10의 헤딩방향(HP)을 장애물 회피 각(EQ) 만큼 이동하여 장애물 회피 헤딩 방향(EHD)를 결정하고, 장애물 회피 헤딩 방향(EHD)에 대응하는 장애물 회피 진로(EAP)를 산출한다.
이어서, 제어부(200)는 장애물 회피 진로(EAP) 상에 장애물 위치(OP)가 반영된 셀(CE)이 있는지를 검색한다(508).
이때에, 장애물 회피 진로(EAP) 상에 장애물 위치(OP)가 반영된 셀(CE)가 없으면, 제어부(200)는 로봇 청소기(1)가 장애물 회피 진로(EAP)를 완주하도록 하고(510), 로봇 청소기(1)가 벽면추종주행방식 또는 그 이외의 주행방식에 따른 주행경로로 복귀 및 벽면추종주행방식 또는 그 이외의 주행방식에 따른 주행경로를 따라 주행하도록 하면서(511) 상기되는 512 단계 및 그 이후의 단계를 수행한다.
반면에, 장애물 회피 진로(EAP) 상에 장애물 위치(OP)가 반영된 셀(CE)이 있으면, 제어부(200)는 로봇 청소기(1)가 장애물에 의해 갇혀 있는지를 판단한다(513). 즉, 제어부(200)는 로봇 청소기(1)가 장애물 위치(OP)가 반영된 셀(CE)에 의해 포위되어 있는지를 판단한다. 다시 말하면, 장애물 위치(OP)가 반영된 셀(CE)들 간의 최단거리(ID)들 중 로봇 청소기(1)의 지름보다 큰 것이 없는지를 판단한다.
이때에, 로봇 청소기(1)가 장애물에 의해 갇혀 있지 않으면 상기되는 508 단계로 회귀 및 그 이후의 단계를 수행한다.
반면에, 로봇 청소기(1)가 장애물에 의해 갇혀 있으면, 제어부(200)는 장애물 갇힘 탈출 제어를 수행한다.
더욱 구체적으로, 로봇 청소기(1)가 장애물 위치(OP)가 반영된 셀(CE)들에 의해 포위되어 있으면, 제어부(200)는 상기되는 502 단계와 같이 로컬 맵(LM)을 초기화 한다(514).
그 다음, 제어부(200)는 로봇 청소기(1)가 제자리에서 저속으로 회전되도록 하면서(515), 상기되는 503 단계와 같이 장애물센서(S1,S2,S3,S4,S5,S6,S7)를 이용하여, 장애물센서(S1,S2,S3,S4,S5,S6,S7)와 장애물의 장애물거리(D-1~D-7)를 산출하고, 이렇게 산출된 장애물거리(D-1~D-7)와 상기되는 [수학식1]을 이용하여 장애물 위치(OP)를 취득하여 로컬 맵(LM)의 해당 셀(CE)에 반영하면서 로컬 맵(LM)을 주기적으로 갱신한다(516). 그 다음, 제어부(200)는 로봇 청소기(1)가 360 도 회전을 완료했는지를 판단하여(517), 미완료이면 계속하여 로봇 청소기(1)가 360도 회전을 완료했는지를 판단하고, 완료이면 로봇 청소기(1)의 회전을 정지시킨다(518).
그 다음, 제어부(200)는 도 9에서 도시되는 바와 같이 로컬 맵(LM) 상에 장애물 갇힘 탈출 갇힘 탈출 영역이 있는지를 판단한다(519). 다시 말하면, 장애물 위치(OP)가 반영된 셀(CE)들의 인접거리(ID)를 산출하여, 산출된 인접거리(ID)들 중 로봇 청소기(1)의 지름(2R)보다 긴 인접거리(ID)가 있는지를 판단한다.여기서, 장애물 갇힘 탈출 영역은 산출된 인접거리(ID)들 중 로봇 청소기(1)의 지름(2R)보다 긴 인접거리(ID)를 가지는 장애물 위치(OP)가 반영된 셀(CE)들의 사이를 말한다.
이때에, 로컬 맵(LM) 상에 장애물 갇힘 탈출 갇힘 탈출 영역이 있으면, 제어부(200)는 로컬 맵(LM) 상에 장애물 갇힘 탈출 갇힘 탈출 영역 쪽으로 장애물 갇힘 탈출 진로(ECAP)를 산출하고, 로봇 청소기(1)가 장애물 갇힘 탈출 진로(ECAP)를 따라 주행하도록 한다(520). 그 다음, 제어부(200)는 상기되는 502 단계 및 503와 같이 로컬맵을 초기화하고, 장애물센서(S1,S2,S3,S4,S5,S6,S7)를 이용하여 장애물센 서(S1,S2,S3,S4,S5,S6,S7)와 장애물의 장애물거리(D-1~D-7)를 산출하고, 이렇게 산출된 장애물거리(D-1~D-7)와 상기되는 [수학식1]을 이용하여 장애물 위치(OP)를 취득하여 로컬 맵(LM)의 해당 셀(CE)에 반영하면서 로컬 맵(LM)을 주기적으로 갱신한다(521). 이어서, 제어부(200)는 로봇 청소기(1)가 기 주행경로로 복귀하도록 하면서 상기되는 507 단계로 회귀 및 그 이후의 단계를 수행한다.
이에 반하여, 로컬 맵(LM) 상에 장애물 갇힘 탈출 갇힘 탈출 영역이 없으면, 제어부(200)는 로봇 청소기(1)가 충돌 탈출을 하도록 한다(523). 다시 말하면, 장애물 위치(OP)가 반영된 셀(CE)들의 인접거리(ID)를 산출하여 산출된 인접거리(ID)들 중 가장 긴 거리를 검색하고, 가장 긴 인접거리(ID)를 갖는 장애물 위치(OP)가 반영된 셀(CE)들 사이로 장애물 갇힘 탈출 진로(ECAP)를 산출한다. 이어서, 제어부(200)는 로봇 청소기(1)가 장애물 갇힘 탈출 진로(ECAP)를 따라 주행하도록 한다.
그 다음, 제어부(200)는 로봇 청소기(1)가 충돌탈출을 완료했는지를 판단한다(524). 여기서, 충돌탈출 완료여부는 로봇 청소기(1)가 장애물 갇힘 탈출 진로(ECAP)를 완주했는지 여부로 판단할 수 있다.
이때에, 로봇 청소기(1)가 충돌탈출을 완료했으면, 제어부(200)는 상기되는 520 단계 및 그 이후의 단계를 수행한다. 반면에, 로봇 청소기(1)가 충돌탈출을 완료하지 안 했으면, 제어부(200)는 로봇 청소기(1)가 처음 충돌탈출을 하도록 한 시점부터 현재까지의 시간이 기준시간을 경과했는지를 판단하여(525), 기준시간을 경과하지 안 했으면 상기되는 523 단계로 회귀 및 그 이후의 단계를 수행하고, 기준 시간을 경과했으면 로봇 청소기(1)가 운전대기 하도록 하며(526) 종료한다.
이하, 본 발명의 제 2 실시 예에 따른 로봇 청소기에 대하여 본 발명의 제 1 실시 예에 따른 로봇 청소기와 동일한 구성에 대하여는 동일한 부호를 참조하여 설명하기로 하되, 본 발명의 제 1 실시 예와 비교되는 부분에 한정하여 설명하기로 한다.
본 발명의 제 2 실시 예에 따른 로봇 청소기(1)의 제어부(200)는 본 발명의 제 1 실시 예에서와 다르게 로컬 맵(LM)에 장애물 영역(OZ)를 반영한다. 다시 말하면, 도 10에서 도시되는 바와 같이 본 발명의 제 2 실시 예에 따른 로봇 청소기(1)의 제어부(200)는 복수의 장애물 센서(S1,S2,S3,S4,S5,S6,S7)를 이용하여 장애물 위치(OP)를 감지하고, 이렇게 감지되는 장애물 위치(OP)를 기점으로 장애물 영역(OZ)을 산출한다. 여기서, 장애물 영역(OZ)은 로봇 청소기(1)의 본체(10)의 크기에 대응되도록 장애물 위치(OP)를 기점으로 반지름(R1)이 로봇 청소기(1)의 반지름(R)보다 큰 원이다. 그리고 제어부(200)는 로컬 맵(LM)의 상기에서 산출된 장애물 영역(OZ)에 해당하는 셀(CE)을 검색하여, 로컬 맵(LM)의 해당 셀(CE)에 장애물 영역(OZ)을 반영한다.
이하, 본 발명의 제 2 실시 예에 따른 로봇 청소기의 제어방법에 대하여 본 발명의 제 1 실시 예에 따른 로봇 청소기를 참조하며 도면과 함께 설명하기로 한다.
도 11 내지 도 15를 참조하면, 우선, 사용자가 로봇 청소기(1)를 온(ON)시키고 입력부(110)를 통하여 주행방식을 포함한 운전조건을 입력하면, 제어부(200)는 로봇 청소기(1)가 운전시작 하도록 한다(901).
그 다음, 제어부(200)는 메모리(120)에 저장되어 있는 로컬 맵(LM)을 초기화 한다(502). 다시 말하면, 로컬 맵(LM)의 셀(CE)에 반영되어 있던 장애물 영역(OZ)를 삭제한다.
그 다음, 제어부(200)는 장애물센서(S1,S2,S3,S4,S5,S6,S7)를 이용하여, 장애물센서(S1,S2,S3,S4,S5,S6,S7)와 장애물(O)의 장애물거리(D-1~D-7)를 산출하고, 이렇게 산출된 장애물거리(D-1~D-7)와 상기되는 [수학식1]을 이용하여 장애물 위치(OP) 및 장애물 영역(OZ)를 취득하여, 로컬 맵(LM)의 해당 셀(CE)에 반영한다. 그리고 제어부(200)는 로컬 맵(LM)을 주기적으로 갱신한다(903). 여기서, 로컬 맵(LM)의 갱신은 장애물 위치(OP)가 반영된 셀(CE)에서 장애물 위치(OP) 및 장애물 영역(OZ)을 로컬 맵(L)의 병진 운동에 대응한 다른 셀(CE)로 이동시켜 반영하면서 장애물 위치(OP) 및 장애물 영역(OZ)이 반영된 셀(CE)에서 장애물 위치(OP) 및 장애물 영역(OZ)를 삭제하는 것을 말한다.
이어서, 제어부(200)는 주행방식이 벽면추종인가를 판단한다(904). 이때에, 주행방식이 벽면추종이 아니면, 제어부(200)는 그 이외의 주행방식에 따른 주행경로를 따라 주행하도록 하면서(905), 후술되는 907 단계 및 그 이후의 단계를 수행한다. 여기서, 그 이외의 주행방식은 랜덤주행방식 사선주행방식 등이 있다.
반면에, 주행방식이 벽면추종이면, 제어부(200)는 장애물 위치(OP) 및 장애물 영역(OZ)이 반영된 로컬 맵(LM)을 이용하여 로봇 청소기(1)가 벽면추종주행 하도록 한다(906). 다시 말하면, 도 13에서 도시되는 바와 같이, 로봇 청소기(1)의 좌측에 위치하며 로봇 청소기(1)에 가까운 장애물 영역(OZ)이 저장되는 적어도 두 개의 셀(CE)를 검색하고, 검색된 두 개의 셀(CE)을 연결하여 벽면직선(WL)을 구한다. 그 다음, 벽면직선(WL)에 평행한 로봇 청소기(1)의 헤딩방향(HD)을 산출하고, 로봇 청소기(1)의 중심에서 산출된 로봇 청소기(1)의 헤딩방향(HD)을 향하여 연장하는 주행진로라인(AL)를 산출한다. 여기서, 주행진로라인(AL)의 길이는 로봇 청소기(1)의 주행속도에 반비례하여 설정된다. 이어서, 제어부(200)는 로봇 청소기(1)가 산출된 주행진로라인(AL)을 따라 주행하도록 한다.
그 다음, 제어부(200)는 로봇 청소기(1)가 주행진로(DP)를 주행하도록 하면서, 메모리(120)에 저장되는 로컬 맵(LM)의 주행진로라인(AL) 상에 장애물 영역(OZ)이 반영된 셀(CE)이 있는지를 판단한다(907).
이때에, 주행진로라인(AL) 상에 장애물 위치(OP)가 반영된 셀(CE)이 없으면, 제어부(200)는 운전종료조건인지를 판단하여(912), 운전종료조건이 아니면 상기되는 907 단계로 회귀 및 그 이후의 단계를 수행하고, 운전종료조건이면 종료한다. 여기서, 운전종료조건은 로봇 청소기(1)가 벽면추종주행방식 또는 그 이외의 주행방식에 따른 주행경로를 완주한 경우일 수 있다.
반면에, 주행진로라인(AL) 상에 장애물 영역(OZ)가 반영된 셀(CE)이 있으면, 제어부(200)는 장애물 회피 진로 라인(EAL)를 산출한다(908). 즉, 도 14에서 도시되는 바와 같이, 로봇 청소기(10의 헤딩방향(HP)을 장애물 회피 각(EQ) 만큼 이동하여 장애물 회피 헤딩 방향(EHD)를 결정하고, 로봇 청소기(1)의 중심(C)에서 장애물 회피 헤딩 방향(EHD)으로 연장하는 장애물 회피 진로 라인(EAL)을 산출한다.
이어서, 제어부(200)는 장애물 회피 진로 라인(EAL) 상에 장애물 영역(OZ)이 반영된 셀(CE)이 있는지를 검색한다(909).
이때에, 장애물 회피 진로 라인(EAL) 상에 장애물 영역(OZ)가 반영된 셀(CE)이 없으면, 제어부(200)는 로봇 청소기(1)가 장애물 회피 진로 라인(EAL)를 완주하도록 하고(910), 로봇 청소기(1)가 벽면추종주행방식 또는 그 이외의 주행방식에 따른 주행경로로 복귀 및 벽면추종주행방식 또는 그 이외의 주행방식에 따른 주행경로를 따라 주행하도록 하면서(911), 상기되는 912 단계 및 그 이후의 단계를 수행한다.
반면에, 장애물 회피 진로 라인(EAL) 상에 장애물 영역(OZ)가 반영된 셀(CE)이 있으면, 제어부(200)는 로봇 청소기(1)가 장애물에 의해 갇혀 있는지를 판단한다(913). 즉, 제어부(200)는 로봇 청소기(1)가 장애물 영역(OZ)가 반영된 셀(CE)에 의해 포위되어 있는지를 판단한다. 다시 말하면, 장애물 영역(OZ)가 반영된 셀(CE)들 간의 최단거리(ID)들 중 로봇 청소기(1)의 지름보다 큰 것이 없는지를 판단한다.
이때에, 로봇 청소기(1)가 장애물에 의해 갇혀 있지 않으면 상기되는 908 단계로 회귀 및 그 이후의 단계를 수행한다.
반면에, 로봇 청소기(1)가 장애물에 의해 갇혀 있으면, 제어부(200)는 장애물 갇힘 탈출 제어를 수행한다.
더욱 구체적으로, 로봇 청소기(1)가 장애물 위치(OP)가 반영된 셀(CE)들에 의해 포위되어 있으면, 제어부(200)는 상기되는 902 단계와 같이 로컬 맵(LM)을 초 기화 한다(914).
그 다음, 제어부(200)는 로봇 청소기(1)가 제자리에서 저속으로 회전되도록 하면서(915), 상기되는 903 단계와 같이 장애물센서(S1,S2,S3,S4,S5,S6,S7)를 이용하여, 장애물센서(S1,S2,S3,S4,S5,S6,S7)와 장애물(O)의 장애물거리(D-1~D-7)를 산출하고, 이렇게 산출된 장애물거리(D-1~D-7)와 상기되는 [수학식1]을 이용하여 장애물 위치(OP) 및 장애물 영역(OZ)를 취득하여, 로컬 맵(LM)의 해당 셀(CE)에 반영한다. 그리고 제어부(200)는 로컬 맵(LM)을 주기적으로 갱신한다(916). 이어서, 제어부(200)는 로봇 청소기(1)가 360 도 회전을 완료 했는지를 판단하여(917), 미 완료이면 계속하여 로봇 청소기(1)가 360도 회전을 완료 했는지를 판단하고, 완료이면 로봇 청소기(1)의 회전을 정지시킨다(918).
그 다음, 제어부(200)는 도 15에서 도시되는 바와 같이 로컬 맵(LM) 상에 장애물 갇힘 탈출 갇힘 탈출 영역이 있는지를 판단한다(919). 다시 말하면, 장애물 영역(OZ)가 반영된 셀(CE)들 사이 중 장애물 갇힘 탈출 진로 라인(ECAL)이 지나갈 수 있는 곳이 있는지를 판단한다.
이때에, 로컬 맵(LM) 상에 장애물 갇힘 탈출 갇힘 탈출 영역이 있으면, 제어부(200)는 로컬 맵(LM) 상에 장애물 갇힘 탈출 갇힘 탈출 영역 쪽으로 장애물 갇힘 탈출 진로 라인(ECAL)를 산출하고, 로봇 청소기(1)가 장애물 갇힘 탈출 진로(ECAP)를 따라 주행하도록 한다(920). 그 다음, 제어부(200)는 상기되는 902 단계 및 903와 같이 로컬맵을 초기화하고, 장애물센서(S1,S2,S3,S4,S5,S6,S7)를 이용하여 장애물센서(S1,S2,S3,S4,S5,S6,S7)와 장애물의 장애물거리(D-1~D-7)를 산출하고, 이렇 게 산출된 장애물거리(D-1~D-7)와 상기되는 [수학식1]을 이용하여 장애물 위치(OP) 및 장애물 영역(OZ)을 산출하여 로컬 맵(LM)의 해당 셀(CE)에 반영하면서 로컬 맵(LM)을 주기적으로 갱신한다(921). 이어서, 제어부(200)는 로봇 청소기(1)가 기 주행경로로 복귀하도록 하면서 상기되는 907 단계로 회귀 및 그 이후의 단계를 수행한다.
이에 반하여, 로컬 맵(LM) 상에 장애물 갇힘 탈출 갇힘 탈출 영역이 없으면, 제어부(200)는 로봇 청소기(1)가 충돌 탈출을 하도록 한다(923). 다시 말하면, 장애물 영역(OZ)이 반영된 셀(CE)들이 밀집되지 않은 지역으로 장애물 갇힘 탈출 진로 라인(ECAL)을 산출한다. 이어서, 제어부(200)는 로봇 청소기(1)가 장애물 갇힘 탈출 진로 라인(ECAL)를 따라 주행하도록 한다.
그 다음, 제어부(200)는 로봇 청소기(1)가 충돌탈출을 완료했는지를 판단한다(924). 여기서, 충돌탈출 완료여부는 로봇 청소기(1)가 장애물 갇힘 탈출 진로 라인(ECAL)를 완주했는지 여부로 판단할 수 있다.
이때에, 로봇 청소기(1)가 충돌탈출을 완료했으면, 제어부(200)는 상기되는 520 단계 및 그 이후의 단계를 수행한다. 반면에, 로봇 청소기(1)가 충돌탈출을 완료하지 안 했으면, 제어부(200)는 로봇 청소기(1)가 처음 충돌탈출을 하도록 한 시점부터 현재까지의 시간이 기준시간을 경과했는지를 판단하여(925), 기준시간을 경과하지 안 했으면 상기되는 923 단계로 회귀 및 그 이후의 단계를 수행하고, 기준시간을 경과했으면 로봇 청소기(1)가 운전대기 하도록 하며(926) 종료한다.
도 1은 본 발명의 제 1 실시 예에 따른 로봇 청소기를 나타낸 사시도이다.
도 2는 본 발명의 제 1 실시 예에 따른 로봇 청소기의 제어계통을 나타낸 블럭도이다.
도 3은 본 발명의 제 1 실시 예에 따른 로봇 청소기의 장애물센서의 배치를 나타낸 도면이다.
도 4는 본 발명의 제 1 실시 예에 따른 로봇 청소기가 로컬 맵에 장애물 위치를 반영하는 방법을 설명하기 위한 도면이다.
도 5 및 도 6은 본 발명의 제 1 실시 예에 따른 로봇 청소기의 제어수순을 나타낸 흐름도 이다.
도 7은 본 발명의 제 1 실시 예에 따른 로봇 청소기의 벽면추종주행을 설명하기 위한 도면이다.
도 8은 본 발명의 제 1 실시 예에 따른 로봇 청소기의 장애물 회피를 설명하기 위한 도면이다.
도 9는 본 발명의 제 1 실시 예에 따른 로봇 청소기의 장애물 갇힘 판단 및 장애물 갇힘 탈출을 설명하기 위한 도면이다.
도 10는 본 발명의 제 2 실시 예에 따른 로봇 청소기가 로컬 맵에 장애물 영역을 반영하는 방법을 설명하기 위한 도면이다.
도 11 및 도 12는 본 발명의 제 2 실시 예에 따른 로봇 청소기의 제어수순을 나타낸 흐름도 이다.
도 13는 본 발명의 제 2 실시 예에 따른 로봇 청소기의 벽면추종주행을 설명하기 위한 도면이다.
도 14은 본 발명의 제 2 실시 예에 따른 로봇 청소기의 장애물 회피를 설명하기 위한 도면이다.
도 15는 본 발명의 제 2 실시 예에 따른 로봇 청소기의 장애물 갇힘 탈출을 설명하기 위한 도면이다.
<도면의 주요부분에 대한 부호의 설명>
10: 본체 120: 메모리
200: 제어부 LM: 로컬 맵
S1,S2,S3,S4,S5,S6,S7: 장애물센서 CE: 셀

Claims (20)

  1. 장애물을 감지하기 위한 장애물센서;
    로봇 청소기 주위의 장애물 위치가 표시되는 로컬 맵이 저장되는 메모리;
    상기 장애물센서를 이용하여 상기 장애물 위치를 검출하고, 상기 로컬 맵에 장애물 위치를 반영하는 제어부를 포함하는 로봇 청소기.
  2. 제 1 항에 있어서,
    상기 장애물센서는 적외선을 일 방향으로 발신하고 장애물에서 반사되는 상기 적외선을 이용하여, 상기 장애물센서와 상기 장애물의 거리를 감지하기 위한 PSD(Position Sensitive Detector)센서인 로봇 청소기.
  3. 제 1 항에 있어서,
    상기 메모리에 저장되는 상기 로컬 맵의 가로길이와 세로길이는 로봇 청소기가 장애물 회피할 수 있는 최소거리가 고려되어 설정되는 로봇 청소기.
  4. 제 1 항에 있어서,
    상기 제어부는 상기 장애물센서를 이용하여 상기 장애물 거리를 감지하고, 상기 장애물 거리와 상기 장애물센서의 설치위치를 이용하여 상기 장애물 위치를 산출하는 로봇 청소기.
  5. 제 1 항에 있어서,
    상기 제어부는 상기 로컬 맵을 이용하여 상기 로봇 청소기가 벽면추종주행과 장애물 회피와 장애물 갇힘 판단 및 장애물 갇힘 탈출들 중 일부 또는 전부를 하도록 하는 로봇 청소기.
  6. 장애물을 감지하기 위한 장애물센서;
    로봇 청소기 주변의 장애물 영역이 반영되는 복수의 셀로 이루어지는 로컬 맵이 저장되는 메모리;
    상기 장애물센서를 이용하여 장애물 영역을 산출하고, 상기 장애물 영역에 해당하는 상기 셀에 장애물 영역을 반영하는 제어부를 포함하는 로봇 청소기.
  7. 제 6 항에 있어서,
    상기 셀의 크기는 상기 메모리의 용량과 상기 로컬 맵의 해상도가 고려되어 결정되는 로봇 청소기.
  8. 제 6 항에 있어서,
    상기 제어부는 상기 장애물센서를 이용하여 장애물 위치를 산출하고, 상기 상 장애물 위치를 기준점으로 한 일정한 영역을 산출하여 상기 장애물 영역을 산출하는 로봇 청소기.
  9. 제 6 항에 있어서,
    상기 제어부는 상기 로봇 청소기가 장애물 회피 또는 장애물 갇힘 탈출하도록 상기 로봇 청소기의 중심에서 상기 로봇 청소기의 헤딩방향으로 연장되는 라인 상의 상기 셀에 장애물 영역이 반영되어 있는지 판단하는 로봇 청소기.
  10. 장애물센서를 이용하여 장애물거리를 산출하는 단계;
    상기 장애물 거리와 상기 장애물센서의 설치위치를 이용하여 장애물 위치를 산출하는 단계;
    상기 장애물 위치를 복수의 셀로 이루어진 로컬 맵의 상기 장애물 위치에 해당하는 상기 셀에 반영하는 단계를 포함하는 로봇 청소기의 제어방법.
  11. 제 10 항에 있어서,
    상기 장애물 위치가 반영된 상기 셀을 이용하여 벽면추종제어를 수행하는 단계를 더 포함하는 로봇 청소기의 제어방법.
  12. 제 10 항에 있어서,
    상기 로봇 청소기의 주행진로 상에 상기 장애물 위치가 반영된 상기 셀이 있는 경우 상기 로봇 청소기가 장애물 회피하도록 하는 단계를 포함하는 로봇 청소기의 제어방법.
  13. 제 10 항에 있어서,
    상기 로봇 청소기의 주위에 상기 장애물 위치가 반영된 상기 셀이 있는 경우 상기 로컬 맵을 초기화 하고, 상기 로봇 청소기가 제자리에서 저속으로 회전하는 단계를 포함하는 로봇 청소기의 제어방법.
  14. 제 10 항에 있어서,
    상기 로봇 청소기의 주위에 상기 장애물 위치가 반영된 상기 셀이 있는 경우 상기 로봇 청소기가 장애물 갇힘 탈출하도록 하는 단계를 포함하는 로봇 청소기의 제어방법.
  15. 장애물센서를 이용하여 장애물거리를 산출하는 단계;
    상기 장애물 거리와 상기 장애물센서의 설치위치를 이용하여 장애물 위치를 산출하는 단계;
    상기 장애물 위치를 기준으로 하여 장애물 영역을 산출하는 단계;
    상기 장애물 영역을 복수의 셀로 이루어진 로컬 맵의 상기 장애물 영역에 해당하는 상기 셀에 반영하는 단계를 포함하는 로봇 청소기의 제어방법.
  16. 제 15 항에 있어서,
    상기 장애물 영역은 상기 장애물 위치를 중심으로 하고 상기 로봇 청소기의 크기에 대응되는 영역인 로봇 청소기의 제어방법.
  17. 제 15 항에 있어서,
    상기 장애물 영역이 반영된 상기 셀을 이용하여 벽면추종제어를 수행하는 단계를 포함하는 로봇 청소기의 제어방법.
  18. 제 15 항에 있어서,
    상기 로봇 청소기의 중심에서 상기 로봇 청소기의 헤딩방향으로 연장하는 라인 상에 상기 장애물 영역이 반영된 상기 셀이 있는 경우 상기 로봇 청소기가 장애물 회피하도록 하는 단계를 포함하는 로봇 청소기의 제어방법.
  19. 제 15 항에 있어서,
    상기 로봇 청소기의 둘레 전체에 상기 장애물 영역이 반영된 상기 셀이 있는 경우 상기 로컬 맵을 초기화 하고, 상기 로봇 청소기가 제자리에서 저속으로 회전하도록 하는 로봇 청소기의 제어방법.
  20. 제 19 항에 있어서,
    상기 로컬 맵을 이용하여 상기 로봇 청소기가 장애물 갇힘 탈출하도록 하는 로봇 청소기의 제어방법.
KR1020080021869A 2007-08-17 2008-03-10 로봇청소기 및 그 제어방법 KR101362373B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/216,802 US20090048727A1 (en) 2007-08-17 2008-07-10 Robot cleaner and control method and medium of the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020070082725 2007-08-17
KR20070082725 2007-08-17

Publications (2)

Publication Number Publication Date
KR20090018562A true KR20090018562A (ko) 2009-02-20
KR101362373B1 KR101362373B1 (ko) 2014-02-12

Family

ID=40686816

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080021869A KR101362373B1 (ko) 2007-08-17 2008-03-10 로봇청소기 및 그 제어방법

Country Status (1)

Country Link
KR (1) KR101362373B1 (ko)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011059296A3 (ko) * 2009-11-16 2011-11-03 엘지전자 주식회사 로봇 청소기 및 그의 제어 방법
KR20150050159A (ko) * 2013-10-31 2015-05-08 엘지전자 주식회사 이동 로봇 및 그 동작방법
KR20180094718A (ko) * 2017-02-16 2018-08-24 엘지전자 주식회사 로봇청소기 및 그의 제어하는 방법
RU2673857C1 (ru) * 2017-08-17 2018-11-30 Бейдзин Сяоми Мобайл Софтвэр Ко., Лтд. Способ и устройство для уборки
KR20190103512A (ko) * 2018-02-12 2019-09-05 엘지전자 주식회사 장애물을 학습하는 인공지능 이동 로봇 및 그 제어방법
US10571918B2 (en) 2017-08-17 2020-02-25 Beijing Xiaomi Mobile Software Co., Ltd. Cleaning method and device
CN111736580A (zh) * 2019-03-19 2020-10-02 北京奇虎科技有限公司 扫地设备的避障脱困方法、装置、电子设备及存储介质
CN112180924A (zh) * 2020-09-28 2021-01-05 珠海市一微半导体有限公司 一种导航至密集障碍物的移动控制方法
CN112526984A (zh) * 2020-09-30 2021-03-19 深圳市银星智能科技股份有限公司 一种机器人避障方法、装置及机器人
US11324371B2 (en) 2017-01-13 2022-05-10 Lg Electronics Inc. Robot and method for controlling same
CN115191889A (zh) * 2022-07-14 2022-10-18 杭州萤石软件有限公司 清洁机器人的控制方法及控制装置和清洁机器人系统

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI639021B (zh) 2016-05-17 2018-10-21 南韓商Lg電子股份有限公司 行動機器人及其控制方法
KR102167898B1 (ko) * 2016-10-27 2020-10-20 엘지전자 주식회사 이동 로봇 및 그 제어방법
TWI689387B (zh) * 2016-05-17 2020-04-01 南韓商Lg電子股份有限公司 行動機器人
TWI653964B (zh) 2016-05-17 2019-03-21 Lg電子股份有限公司 行動機器人及其控制方法
EP3459692B1 (en) 2016-05-20 2022-03-30 LG Electronics Inc. Robot cleaner
US10362916B2 (en) 2016-05-20 2019-07-30 Lg Electronics Inc. Autonomous cleaner
US10420448B2 (en) 2016-05-20 2019-09-24 Lg Electronics Inc. Autonomous cleaner
US10481611B2 (en) 2016-05-20 2019-11-19 Lg Electronics Inc. Autonomous cleaner
WO2017200345A1 (ko) 2016-05-20 2017-11-23 엘지전자 주식회사 로봇 청소기
US10463221B2 (en) 2016-05-20 2019-11-05 Lg Electronics Inc. Autonomous cleaner
WO2017200350A1 (ko) 2016-05-20 2017-11-23 엘지전자 주식회사 로봇 청소기
WO2017200353A1 (ko) 2016-05-20 2017-11-23 엘지전자 주식회사 로봇 청소기
US10441128B2 (en) 2016-05-20 2019-10-15 Lg Electronics Inc. Autonomous cleaner
CN207575101U (zh) 2016-05-20 2018-07-06 Lg电子株式会社 机器人吸尘器
WO2017200351A1 (ko) 2016-05-20 2017-11-23 엘지전자 주식회사 로봇 청소기
KR101930870B1 (ko) * 2016-08-03 2018-12-20 엘지전자 주식회사 이동 로봇 및 그 제어방법
KR20180087798A (ko) 2017-01-25 2018-08-02 엘지전자 주식회사 이동 로봇 및 그 제어방법
KR102624560B1 (ko) * 2017-01-31 2024-01-15 엘지전자 주식회사 청소기

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100466321B1 (ko) * 2002-10-31 2005-01-14 삼성광주전자 주식회사 로봇청소기와, 그 시스템 및 제어방법
JP4445210B2 (ja) * 2003-04-28 2010-04-07 株式会社東芝 自律走行ロボット
JP4264009B2 (ja) * 2004-01-23 2009-05-13 シャープ株式会社 自走式掃除機
KR100648417B1 (ko) * 2005-01-25 2006-11-24 주식회사 마이크로로봇 자율이동로봇의 접촉센싱장치 및 그 제어방법

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011059296A3 (ko) * 2009-11-16 2011-11-03 엘지전자 주식회사 로봇 청소기 및 그의 제어 방법
US8903590B2 (en) 2009-11-16 2014-12-02 Lg Electronics Inc. Robot cleaner and method for controlling the same
KR20150050159A (ko) * 2013-10-31 2015-05-08 엘지전자 주식회사 이동 로봇 및 그 동작방법
US11324371B2 (en) 2017-01-13 2022-05-10 Lg Electronics Inc. Robot and method for controlling same
KR20180094718A (ko) * 2017-02-16 2018-08-24 엘지전자 주식회사 로봇청소기 및 그의 제어하는 방법
US10571918B2 (en) 2017-08-17 2020-02-25 Beijing Xiaomi Mobile Software Co., Ltd. Cleaning method and device
RU2673857C1 (ru) * 2017-08-17 2018-11-30 Бейдзин Сяоми Мобайл Софтвэр Ко., Лтд. Способ и устройство для уборки
KR20190103512A (ko) * 2018-02-12 2019-09-05 엘지전자 주식회사 장애물을 학습하는 인공지능 이동 로봇 및 그 제어방법
CN111736580A (zh) * 2019-03-19 2020-10-02 北京奇虎科技有限公司 扫地设备的避障脱困方法、装置、电子设备及存储介质
CN111736580B (zh) * 2019-03-19 2024-04-16 北京奇虎科技有限公司 扫地设备的避障脱困方法、装置、电子设备及存储介质
CN112180924A (zh) * 2020-09-28 2021-01-05 珠海市一微半导体有限公司 一种导航至密集障碍物的移动控制方法
CN112180924B (zh) * 2020-09-28 2024-04-02 珠海一微半导体股份有限公司 一种导航至密集障碍物的移动控制方法
CN112526984A (zh) * 2020-09-30 2021-03-19 深圳市银星智能科技股份有限公司 一种机器人避障方法、装置及机器人
CN115191889A (zh) * 2022-07-14 2022-10-18 杭州萤石软件有限公司 清洁机器人的控制方法及控制装置和清洁机器人系统

Also Published As

Publication number Publication date
KR101362373B1 (ko) 2014-02-12

Similar Documents

Publication Publication Date Title
KR101362373B1 (ko) 로봇청소기 및 그 제어방법
US9844876B2 (en) Robot cleaner and control method thereof
KR101566207B1 (ko) 로봇 청소기 및 그 제어방법
KR102527645B1 (ko) 청소 로봇 및 그 제어 방법
KR101887055B1 (ko) 로봇 청소기 및 그 제어 방법
US20150265125A1 (en) Robot cleaner and method for controlling the same
EP2325714B1 (en) Control method of performing rotational traveling of robot cleaner
US11497364B2 (en) Robot cleaner and controlling method thereof
RU2308214C1 (ru) Способ движения робота-уборщика (варианты)
CN102652654B (zh) 具有垃圾检测单元的机器人清洁装置
CN1291691C (zh) 带有地面消毒功能的自动清洁器
KR101641237B1 (ko) 로봇 청소기 및 이의 제어 방법
EP1955632A2 (en) Robot cleaner using edge detection and method of controlling the same
EP2963515A2 (en) Robot cleaner and method for controlling the same
KR20050072300A (ko) 청소로봇 및 그 제어방법
KR101938703B1 (ko) 로봇 청소기 및 그 제어방법
KR20180024326A (ko) 이동 로봇 및 그 제어방법
KR20070027840A (ko) 로봇청소기 및 이를 이용한 제어방법
KR940007727B1 (ko) 청소기의 자동 주행 청소방법
KR20090018336A (ko) 로봇 청소기 및 그 제어방법
JP2005211499A (ja) 自走式掃除機
CN112423639A (zh) 自主行走式吸尘器
CN112423640A (zh) 自主行走式吸尘器
KR100478657B1 (ko) 로봇 청소기 시스템
KR100863248B1 (ko) 자동 주행 청소기 및 그 제어방법

Legal Events

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

Payment date: 20170125

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180130

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee