KR101667708B1 - Robot cleaner and controlling method thereof - Google Patents

Robot cleaner and controlling method thereof Download PDF

Info

Publication number
KR101667708B1
KR101667708B1 KR1020090111117A KR20090111117A KR101667708B1 KR 101667708 B1 KR101667708 B1 KR 101667708B1 KR 1020090111117 A KR1020090111117 A KR 1020090111117A KR 20090111117 A KR20090111117 A KR 20090111117A KR 101667708 B1 KR101667708 B1 KR 101667708B1
Authority
KR
South Korea
Prior art keywords
space
sector
sectors
cleaning operation
edge
Prior art date
Application number
KR1020090111117A
Other languages
Korean (ko)
Other versions
KR20110054473A (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 KR1020090111117A priority Critical patent/KR101667708B1/en
Publication of KR20110054473A publication Critical patent/KR20110054473A/en
Application granted granted Critical
Publication of KR101667708B1 publication Critical patent/KR101667708B1/en

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
    • 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
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Robotics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Electric Vacuum Cleaner (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

본 발명은 공간-공간 위상 지도를 근거로 상기 공간-공간 위상 지도에 포함된 복수의 공간에 대해 각 공간 단위로 해당 공간을 세부적인 섹터로 분할하고, 상기 분할된 각 섹터별로 청소 동작을 수행하도록 하는 로봇 청소기 및 그의 제어 방법에 관한 것이다. 이를 위하여 본 발명에 따른 로봇 청소기는, 공간-공간 위상 지도를 저장하는 저장부; 및 상기 공간-공간 위상 지도에 포함된 복수의 공간 중 제1 공간을 선택하고, 상기 선택된 제1 공간을 복수의 섹터로 분할하여, 상기 분할된 복수의 섹터별로 청소 동작을 수행하도록 제어하는 제어부를 포함한다.The present invention divides a space into a plurality of sectors included in the space-space phase map on the basis of the space-space phase map, and performs a cleaning operation for each divided sector And a control method thereof. To this end, the robot cleaner according to the present invention includes a storage unit for storing a space-space phase map; And a controller for selecting a first one of a plurality of spaces included in the space-space phase map, dividing the selected first space into a plurality of sectors, and performing a cleaning operation for each of the plurality of divided sectors .

로봇 청소기, 위상 지도, 섹터 분할, 공간 경로 계획, 섹터 경로 계획 Robot cleaner, phase map, sector partitioning, space path planning, sector path planning

Description

로봇 청소기 및 그의 제어 방법{ROBOT CLEANER AND CONTROLLING METHOD THEREOF}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a robot cleaner,

본 발명은 로봇 청소기 및 그의 제어 방법에 관한 것이다.The present invention relates to a robot cleaner and a control method thereof.

일반적으로 로봇은, 산업용으로 개발되어 공장 자동화의 일부분을 담당하여 왔다. 최근에는 로봇을 응용한 분야가 더욱 확대되어, 의료용 로봇, 우주 항공 로봇 등이 개발되고, 일반 가정에서 사용할 수 있는 가정용 로봇도 만들어지고 있다.In general, robots have been developed for industrial use and have been part of factory automation. In recent years, medical robots, aerospace robots, and the like have been developed, and household robots that can be used in ordinary homes are being developed.

상기 가정용 로봇의 대표적인 예는, 로봇 청소기로서, 상기 로봇 청소기는, 일정 영역을 스스로 주행하면서 주변의 먼지 또는 이물질을 흡입하여 청소하는 가전기기의 일종이다.A representative example of the domestic robot is a robot cleaner. The robot cleaner is a type of household appliance that sucks and cleanes dust or foreign matter around the robot while traveling in a certain area by itself.

또한, 상기 로봇 청소기는, 충전 가능한 배터리를 구비하여 스스로 주행하며 임의의 공간을 청소한다.In addition, the robot cleaner includes a rechargeable battery, runs by itself, and cleans any space.

본 발명의 목적은, 공간-공간 위상 지도를 근거로 상기 공간-공간 위상 지도에 포함된 복수의 공간에 대해 각 공간 단위로 청소 동작을 수행하는 로봇 청소기 및 그의 제어 방법을 제공하는 데 있다.SUMMARY OF THE INVENTION An object of the present invention is to provide a robot cleaner and a control method thereof that perform a cleaning operation for each space unit on a plurality of spaces included in the space-space phase map based on a space-space phase map.

본 발명의 다른 목적은, 임의의 공간을 복수의 섹터로 분할하고, 상기 분할된 각 섹터별로 청소 동작을 수행하는 로봇 청소기 및 그의 제어 방법을 제공하는 데 있다.It is another object of the present invention to provide a robot cleaner for dividing an arbitrary space into a plurality of sectors and performing a cleaning operation for each divided sector, and a control method thereof.

본 발명의 또 다른 목적은, 공간-공간 위상 지도에 포함된 복수의 공간에 대해, 사용자가 지정한 적어도 하나의 임의의 공간에 대해서만 청소 동작을 수행하는 로봇 청소기 및 그의 제어 방법을 제공하는 데 있다.It is still another object of the present invention to provide a robot cleaner and a control method thereof for performing a cleaning operation only for at least one arbitrary space specified by a user for a plurality of spaces included in a space-space phase map.

상기 목적들을 달성하기 위한 본 발명에 따른 로봇 청소기는, 공간-공간 위상 지도를 저장하는 저장부; 및 상기 공간-공간 위상 지도에 포함된 복수의 공간 중 제1 공간을 선택하고, 상기 선택된 제1 공간을 복수의 섹터로 분할하여, 상기 분할된 복수의 섹터별로 청소 동작을 수행하도록 제어하는 제어부를 포함하여 구성된다.According to an aspect of the present invention, there is provided a robot cleaner including: a storage unit for storing a spatial-spatial phase map; And a controller for selecting a first one of a plurality of spaces included in the space-space phase map, dividing the selected first space into a plurality of sectors, and performing a cleaning operation for each of the plurality of divided sectors .

상기 목적들을 달성하기 위한 본 발명에 따른 로봇 청소기의 제어 방법은, 기저장된 공간-공간 위상 지도를 근거로 상기 공간-공간 위상 지도에 포함된 복수의 공간 중 제1 공간을 선택하는 제1 단계; 상기 선택된 제1 공간을 복수의 섹터 단위로 분할하는 제2 단계; 상기 분할된 복수의 섹터에 대해 각 섹터별로 청소 동작을 수행하는 제3 단계; 상기 제1 공간에 대한 청소 동작 완료 후, 상기 복수의 공간에 포함된 공간 중에서 적어도 하나의 미청소 공간이 존재하는지 확인하는 제4 단계; 및 상기 확인 결과, 적어도 하나의 미청소 공간이 존재하는 경우, 상기 적어도 하나의 미청소 공간에 대해 복수의 섹터 단위로 분할하는 제2 단계를 수행하는 제5 단계를 포함하여 이루어진다.According to another aspect of the present invention, there is provided a method for controlling a robot cleaner, the method comprising: a first step of selecting a first space among a plurality of spaces included in the space-space phase map based on a previously stored space-space phase map; A second step of dividing the selected first space into a plurality of sector units; A third step of performing a cleaning operation for each sector of the plurality of divided sectors; A fourth step of checking whether there is at least one uncleaned space among the spaces included in the plurality of spaces after completing the cleaning operation for the first space; And performing a second step of dividing the at least one uncleaned space into a plurality of sector units when at least one uncleaned space exists as a result of the checking.

상기 목적들을 달성하기 위한 본 발명에 따른 로봇 청소기의 제어 방법은, 기저장된 공간-공간 위상 지도를 근거로 상기 공간-공간 위상 지도에 포함된 복수의 공간에 대한 공간-공간 경로 계획을 수립하는 단계; 및 상기 수립된 공간-공간 경로 계획을 근거로 상기 복수의 공간에 대해 순차적으로 청소 동작을 수행하는 단계를 포함하여 이루어진다.According to another aspect of the present invention, there is provided a method of controlling a robot cleaner, the method comprising: establishing a space-space path plan for a plurality of spaces included in the space- ; And sequentially performing a cleaning operation on the plurality of spaces based on the established space-space path planning.

상기 목적들을 달성하기 위한 본 발명에 따른 로봇 청소기의 제어 방법은, 표시부에 표시된 공간-공간 위상 지도에 포함된 복수의 공간 중 사용자 입력에 의해 적어도 하나의 공간을 선택하는 단계; 상기 선택된 적어도 하나의 공간에 대한 공간-공간 경로 계획을 수립하는 단계; 상기 수립된 공간-공간 경로 계획을 근거로 상기 선택된 적어도 하나의 공간 중 제1 공간을 복수의 섹터 단위로 분할하는 단계; 상기 분할된 복수의 섹터에 대해 각 섹터별로 청소 동작을 수행하는 단계; 상기 제1 공간에 대한 청소 동작 완료 후, 상기 적어도 하나의 공간 중 미청소 공간이 존재하는지 확인하는 단계; 상기 확인 결과, 미청소 공간이 존재하면, 상기 공간-공간 경로 계획을 근거로 상기 적어도 하나의 공간에 포함된 다른 공간에 대한 청소 동작을 수행하는 단계; 및 상기 확인 결과, 미청소 공간이 존재하지 않으면, 청소 동작을 종료하고 기설정된 초기 위치로 이동하는 단계를 포함하여 이루어진다.According to another aspect of the present invention, there is provided a method for controlling a robot cleaner, the method comprising: selecting at least one space among a plurality of spaces included in a space-space phase map displayed on a display unit; Establishing a space-space path plan for the selected at least one space; Dividing a first space of the selected at least one space into a plurality of sector units based on the established space-space path plan; Performing a cleaning operation for each sector of the divided sectors; After completion of the cleaning operation for the first space, checking whether there is a clean space in the at least one space; Performing a cleaning operation on another space included in the at least one space on the basis of the space-space path planning if the uncleaned space exists; And if the uncleaned space does not exist as a result of the checking, terminating the cleaning operation and moving to a predetermined initial position.

본 발명의 실시예에 따른 로봇 청소기 및 그의 제어 방법은, 공간-공간 위상 지도를 근거로 상기 공간-공간 위상 지도에 포함된 복수의 공간에 대해 각 공간 단위로 해당 공간을 세부적인 섹터로 분할하고, 상기 분할된 각 섹터별로 청소 동작을 수행함으로써, 각 공간에 대한 세부적인 청소 동작을 수행하고, 각 공간에 대한 정보를 분할하여 저장함으로써 저장공간의 사용 효율을 높일 수 있는 효과가 있다.A robot cleaner and a control method thereof according to an embodiment of the present invention divide a space into a plurality of sectors included in the space-space phase map on the basis of a space-space phase map, Performing a cleaning operation for each divided sector by performing a detailed cleaning operation on each space, and dividing and storing information about each space, thereby increasing the efficiency of use of the storage space.

또한, 본 발명의 실시예에 따른 로봇 청소기 및 그의 제어 방법은, 공간-공간 위상 지도에 포함된 복수의 공간에 대해, 사용자가 지정한 적어도 하나의 임의의 공간에 대해서만 청소 동작을 수행함으로써, 사용자가 원하는 공간에 대한 집중 청소를 가능하게 하고, 각 공간에 대한 정보를 분할하여 저장함으로써 저장공간의 사용 효율을 높일 수 있는 효과가 있다.Further, the robot cleaner and the control method thereof according to the embodiment of the present invention perform a cleaning operation only for at least one arbitrary space designated by the user for a plurality of spaces included in the space-space phase map, It is possible to concentrate cleaning on a desired space, and to divide and store information on each space, thereby increasing the efficiency of use of the storage space.

이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 대응하는 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings, wherein like or corresponding elements are denoted by the same reference numerals, and a duplicate description thereof will be omitted.

도 1은 본 발명의 실시예에 따른 로봇 청소기의 구성을 나타낸 블록도로서, 이에 도시된 바와 같이, 로봇 청소기(10)는, 입력부(110), 영상 센서부(120), 검출 부(130), 저장부(140), 제어부(150), 표시부(160), 주행부(170), 청소부(180), 통신부(190) 및, 전원부(200)로 구성된다.FIG. 1 is a block diagram illustrating a configuration of a robot cleaner according to an embodiment of the present invention. The robot cleaner 10 includes an input unit 110, an image sensor unit 120, a detection unit 130, A storage unit 140, a control unit 150, a display unit 160, a traveling unit 170, a cleaning unit 180, a communication unit 190, and a power unit 200.

상기 입력부(110)는, 사용자에 의한 버튼 조작을 입력받거나, 디스플레이되는 화면을 터치/스크롤하는 등의 조작에 의해 명령 또는 제어 신호를 입력받는다.The input unit 110 receives input of a button operation by a user, or receives an instruction or a control signal by an operation such as touching / scrolling a displayed screen.

또한, 상기 입력부(110)는, 사용자가 원하는 기능을 선택하거나 정보를 입력받으며, 키패드, 터치스크린, 조그셔틀, 마이크 등의 다양한 장치가 사용될 수 있다.The input unit 110 may be a variety of devices such as a keypad, a touch screen, a jog shuttle, and a microphone.

또한, 상기 입력부(110)는, 주행 모드 명령을 입력받기 위한 버튼, 청소 모드 명령을 입력받기 위한 버튼, 영상 정보 촬상 명령을 입력받기 위한 버튼, 정지 명령을 입력받기 위한 버튼 등을 포함한다.In addition, the input unit 110 includes a button for receiving a driving mode command, a button for receiving a cleaning mode command, a button for receiving an image information imaging command, and a button for receiving a stop command.

상기 영상 센서부(120)는, 상기 제어부(150)의 제어에 의해 영상 정보를 촬상한다.The image sensor unit 120 captures image information under the control of the control unit 150. [

또한, 상기 영상 센서부(120)는, 도 2에 도시된 바와 같이, 상기 로봇 청소기(10)의 상면에 구비되어 상기 로봇 청소기(10)의 이동 방향에 수직인 상방을 촬영할 수 있는 적어도 하나 이상의 카메라를 포함한다. 즉, 상기 영상 센서부(120)는, 상방을 촬영할 수 있는 카메라 등의 영상 센서를 구비하여 상방 영상 정보를 생성하고, 상기 상방 영상 정보를 이용하여 천장이나 벽면에 설치된 물체들(장애물 정보 포함)을 영상 처리하여 출력한다.2, the image sensor unit 120 includes at least one or more image sensors 120 provided on the upper surface of the robot cleaner 10 and capable of photographing an upper portion perpendicular to the moving direction of the robot cleaner 10, Camera. That is, the image sensor unit 120 includes an image sensor such as a camera capable of photographing the upper side to generate upper image information, and objects (including obstacle information) installed on a ceiling or a wall using the upper image information, And outputs the processed image.

또한, 상기 영상 센서부(120)는, 상기 로봇 청소기(10)의 전면(또는, 측면)에 구비되어, 전방(또는, 측방)을 촬영할 수 있는 적어도 하나 이상의 카메라를 포 함한다. 또한, 상기 영상 센서부(120)는, 상기 로봇 청소기(10)의 상면과 전면에 하나 이상의 카메라를 각각 구비할 수도 있다.The image sensor unit 120 includes at least one or more cameras provided on a front surface (or a side surface) of the robot cleaner 10 and capable of capturing a forward (or side) image. In addition, the image sensor unit 120 may include at least one camera on the upper surface and the front surface of the robot cleaner 10, respectively.

상기 검출부(130)는, 상기 로봇 청소기(10)의 측면에 구비되며, 임의의 특정 영역을 포함하는 작업 영역(또는, 청소 영역) 내에 존재하는 물체(또는, 장애물)를 감지(또는, 검출)한다.The detection unit 130 is provided on a side surface of the robot cleaner 10 and detects (or detects) an object (or an obstacle) existing in a work area (or a cleaning area) do.

또한, 상기 검출부(130)는, 상기 로봇 청소기(10)의 현재 위치 정보 및 주행 방향에 대한 정보 등을 검출한다.The detection unit 130 detects the current position information and the traveling direction information of the robot cleaner 10.

또한, 상기 검출부(130)는, 초음파 센서(Supersonic Sensor), 적외선 센서(Infrared Sensor), RF 센서(Radio Frequency Sensor) 등의 신호를 송신하여 수신된 신호를 통해 장애물의 위치 및 장애물과의 거리를 검출하는 센서 또는, 장애물과의 충돌에 의해 장애물을 감지하는 충돌 센서 등을 포함한다.The detection unit 130 transmits a signal such as a supersonic sensor, an infrared sensor, and an RF sensor to detect the position of the obstacle and the distance between the obstacle and the obstacle A sensor for detecting an obstacle, a collision sensor for detecting an obstacle by collision with the obstacle, and the like.

상기 저장부(140)는, 각종 메뉴 화면, 복수의 청소 알고리즘, 청소 지도 등의 각종 정보를 저장한다.The storage unit 140 stores various information such as various menu screens, a plurality of cleaning algorithms, and cleaning maps.

또한, 상기 저장부(140)는, 다양한 사용자 인터페이스(User Interface : UI) 및/또는 그래픽 사용자 인터페이스(Graphic User Interface : GUI)를 저장한다.Also, the storage unit 140 stores various user interface (UI) and / or graphical user interface (GUI).

또한, 상기 저장부(140)는, 상기 로봇 청소기(10)가 동작하는데 필요한 데이터와 프로그램 등을 저장한다.In addition, the storage unit 140 stores data and programs necessary for the robot cleaner 10 to operate.

또한, 상기 저장부(140)는, 상기 로봇 청소기(10)의 주행 또는 청소 동작에 따른 주행 경로별 위치 정보, 주행 경로별 주행 방향, 주행 경로별 주행 알고리즘, 주행 경로별 청소 알고리즘 등에 대한 정보를 저장한다.In addition, the storage unit 140 stores information on location information for each traveling route, traveling direction for each traveling route, traveling algorithm for each traveling route, cleaning algorithm for each traveling route, etc. according to traveling or cleaning operation of the robot cleaner 10 .

또한, 상기 저장부(140)는, 상기 통신부(190)를 통해 수신된 각종 정보(지도 데이터, 청소 알고리즘, 각종 제어 신호 등 포함)를 저장한다.The storage unit 140 stores various kinds of information (including map data, a cleaning algorithm, various control signals, etc.) received through the communication unit 190.

또한, 상기 저장부(140)는, 상기 통신부(190)를 통해 수신된 CAD(Computer-Aided Design) 파일을 저장한다.Also, the storage unit 140 stores a CAD (Computer-Aided Design) file received through the communication unit 190.

또한, 상기 저장부(140)는, 상기 통신부(190)를 통해 수신된 공간-공간 위상 지도(또는, 방-방 위상 지도(room-to-room topological map)를 저장한다.Also, the storage unit 140 stores a space-space phase map (or a room-to-room topological map) received through the communication unit 190.

또한, 상기 저장부(140)는, 상기 제어부(150)에 의해 작성된 공간-공간 위상 지도를 저장한다.Also, the storage unit 140 stores the space-space phase map created by the controller 150. [

상기 제어부(150)는, 상기 로봇 청소기(10)의 전반적인 제어 기능을 수행한다.The control unit 150 performs an overall control function of the robot cleaner 10.

또한, 상기 제어부(150)는, 상기 영상 센서부(120)에 의해 출력된 영상 정보(또는/및 위치인식부(미도시)에 의해 인식된 위치 정보)를 이용하여 상기 로봇 청소기(10)의 위치를 판단할 수 있다.The control unit 150 may control the robot cleaner 10 using the image information output from the image sensor unit 120 (or positional information recognized by a position recognition unit (not shown)). The position can be judged.

또한, 상기 제어부(150)는, 외부 비콘(beacon)으로부터 전송된 신호를 수신하고, 상기 수신된 신호를 근거로 상기 로봇 청소기(10)의 위치를 판단할 수도 있다.Also, the controller 150 may receive a signal transmitted from an external beacon and determine the position of the robot cleaner 10 based on the received signal.

또한, 상기 제어부(150)는, 상기 영상 센서부(120)에 의해 출력된 영상 정보에 포함된 물체에 대해, 장애물인지 여부를 판단하고, 상기 판단 결과 장애물로 판단되면 상기 장애물의 위치 정보를 확인하고, 상기 확인된 장애물의 위치 정보를 근거로 상기 장애물을 회피하여 주행하거나 청소 동작을 수행하도록 제어한다.In addition, the controller 150 determines whether or not an object included in the image information output by the image sensor unit 120 is an obstacle, and if the obstacle is determined to be an obstacle, And controls to avoid the obstacle based on the positional information of the obstacle and to travel or perform the cleaning operation.

또한, 상기 제어부(150)는, 상기 검출부(130)에 의해 감지된 물체에 대해, 장애물인지 여부를 판단하고, 상기 판단 결과 장애물로 판단되면 상기 장애물의 위치 정보를 확인하고, 상기 확인된 장애물의 위치 정보를 근거로 상기 장애물을 회피하여 주행하거나 청소 동작을 수행하도록 제어한다.In addition, the controller 150 determines whether the obstacle is an object detected by the detector 130. If the obstacle is determined to be an obstacle, the controller 150 confirms the position information of the obstacle, Avoiding the obstacle based on the positional information, and performing a cleaning operation.

또한, 상기 제어부(150)는, 상기 청소 영역 내에 위치한 장애물의 위치 정보를 근거로 청소 지도를 작성하고, 상기 작성된 청소 지도를 상기 저장부(140)에 저장한다. 이때, 상기 청소 지도에는, 장애물의 위치 정보, 상기 로봇 청소기(10)의 이동에 따른 이동 경로 상의 위치 정보 등이 포함될 수 있다.The control unit 150 creates a cleaning map based on the position information of the obstacle located in the cleaning area and stores the cleaning map in the storage unit 140. At this time, the cleaning map may include positional information of an obstacle, position information on a moving route according to movement of the robot cleaner 10, and the like.

또한, 상기 제어부(150)는, 상기 입력부(110) 또는 상기 표시부(160)에 의해 입력된 버튼 입력 상태, 상기 로봇 청소기(10)의 동작 상태 등을 포함하는 상기 로봇 청소기(10)의 각종 정보를 상기 표시부(160)에 표시하도록 제어한다.The control unit 150 may control various types of information of the robot cleaner 10 including the button input state inputted by the input unit 110 or the display unit 160 and the operation state of the robot cleaner 10, To be displayed on the display unit (160).

또한, 상기 제어부(150)는, 상기 로봇 청소기(10)가 청소 동작을 수행하는 경우, 이동 경로에 따라 청소 지도를 작성한다. 또한, 상기 작성된 청소 지도를 근거로 상기 로봇 청소기(10)가, 청소 동작을 수행하는 경우, 청소를 수행한 기청소 영역과 청소를 수행하지 않은 미청소 영역이 구분되도록 하며, 상기 청소 지도에는, 상기 기청소 영역과 상기 미청소 영역이 포함된다.When the robot cleaner 10 performs a cleaning operation, the control unit 150 creates a cleaning map according to the movement route. In addition, when the robot cleaner 10 performs a cleaning operation based on the created cleaning map, the cleaning area is divided into a basic cleaning area in which cleaning is performed and a non-cleaning area in which cleaning is not performed. The base cleaning area and the uncleaned area.

또한, 상기 제어부(150)는, 주행 동작 및/또는 청소 동작에 따른 상기 로봇 청소기(10)의 위치 정보 및 주행 방향에 대한 정보를 상기 저장부(140)에 저장한다.The control unit 150 stores the position information and the traveling direction of the robot cleaner 10 in the storage unit 140 according to the traveling operation and / or the cleaning operation.

또한, 상기 제어부(150)는, 상기 저장부(140)에 기저장된 캐드 도면을 이용 하여 청소할 공간을 나타내는 바이너리 형태(binary type)의 비트맵 이미지(bitmap image)를 생성한다.The control unit 150 generates a bitmap image of a binary type indicating a space to be cleaned using the CAD drawing previously stored in the storage unit 140. [

또한, 상기 제어부(150)는, 상기 생성된 바이너리 형태의 비트맵 이미지 중에서 특징점(feature point)을 추출한다.In addition, the controller 150 extracts a feature point from the generated bitmap image of the binary form.

또한, 상기 제어부(150)는, 상기 추출된 특징점을 근거로 상기 비트맵 이미지에 포함된 문(door)의 위치를 검출한다.Also, the controller 150 detects a position of a door included in the bitmap image based on the extracted minutiae.

또한, 상기 제어부(150)는, 상기 비트맵 이미지, 특징점, 문의 위치 정보 등을 근거로 상기 생성된 바이너리 형태의 비트맵 이미지에 포함된 모든 복수의 공간에 대한 공간-공간 위상 지도를 생성한다.Also, the controller 150 generates a space-space phase map for all the plurality of spaces included in the generated bitmap image based on the bitmap image, the feature point, the location information of the query, and the like.

또한, 상기 제어부(150)는, 상기 저장부(140)에 기저장된 공간-공간 위상 지도를 근거로 상기 공간-공간 위상 지도에 포함된 복수의 공간 중에서 어느 하나의 공간에 대해 해당 공간의 청소 영역을 모두 포함하는 기설정된 최소 크기의 하나 이상의 직사각형 범위를 설정한다. 또한, 상기 제어부(150)는, 상기 설정된 하나 이상의 직사각형 범위를 기설정된 섹터(sector)로 분할한다. 여기서, 상기 섹터는, 상기 섹터 내부를 상기 로봇 청소기(10)가 자유롭게 이동할 수 있는 공간을 의미하며, 각 섹터의 크기는 서로 상이할 수 있다.In addition, the control unit 150 may search for any one of a plurality of spaces included in the space-space phase map based on the space-space phase map previously stored in the storage unit 140, And sets at least one rectangular range of a predetermined minimum size including all of the rectangular areas. In addition, the controller 150 divides the set one or more rectangular ranges into predetermined sectors. Here, the sector refers to a space in which the robot cleaner 10 can move freely within the sector, and the sizes of the sectors may be different from each other.

또한, 상기 제어부(150)는, 상기 분할된 복수의 섹터 중에서 어느 하나의 섹터를 선택하고, 주행부(170) 및/또는 청소부(180)를 제어하여 상기 선택된 섹터에 대한 청소 동작을 수행한다.In addition, the controller 150 selects one of the divided sectors and controls the driving unit 170 and / or the cleaning unit 180 to perform a cleaning operation on the selected sector.

또한, 상기 제어부(150)는, 상기 복수의 섹터 간의 위상 지도(예를 들어, 섹 터-섹터 간의 위상 지도)를 구성(또는, 생성)한 뒤, 상기 구성된 복수의 섹터 간의 위상 지도를 근거로 상기 복수의 섹터 간의 경로 계획(예를 들어, 섹터-섹터 경로 계획)을 수행(또는, 수립 또는, 설정)할 수 있다.In addition, the controller 150 constructs (or generates) a phase map (e.g., a phase map between sectors and sectors) between the plurality of sectors, and then, based on the phase map between the plurality of configured sectors (Or establish, or set) a path plan (e.g., sector-sector path plan) between the plurality of sectors.

또한, 상기 제어부(150)는, 상기 수립된 섹터-섹터 경로 계획을 근거로 상기 분할된 복수의 섹터에 대해서 모든 섹터에 대한 청소 동작을 순차적으로 수행하도록 제어한다.In addition, the controller 150 controls the sectors to sequentially perform a cleaning operation for all the sectors based on the established sector-sector path plan.

또한, 상기 제어부(150)는, 상기 공간-공간 위상 지도에 포함된 복수의 공간에 대해서도 상기 복수의 공간 간의 위상 지도를 근거로 상기 복수의 공간 간의 경로 계획(예를 들어, 공간-공간 경로 계획)을 수행(수립 또는, 설정)할 수 있다.In addition, the control unit 150 may be configured to perform a path plan between the plurality of spaces based on the phase map between the plurality of spaces (for example, a space-space path planning ) Can be performed (established or set).

또한, 상기 제어부(150)는, 상기 수립된 공간-공간 경로 계획을 근거로 상기 공간-공간 위상 지도에 포함된 복수의 공간에 대해서 모든 공간에 대한 청소 동작을 순차적으로 수행하도록 제어한다.In addition, the controller 150 controls the cleaning operation for all the spaces in the plurality of spaces included in the space-space phase map based on the established space-space path planning.

상기 표시부(160)는, 상기 로봇 청소기(10)의 상면 또는 측면에 설치되고, 상기 제어부(150)에 의해 생성된 각종 정보를 표시한다. 여기서, 상기 표시부(160)는, 액정 디스플레이(Liquid Crystal Display : LCD), 박막 트랜지스터 액정 디스플레이(Thin Film Transistor-Liquid Crystal Display : TFT LCD), 유기 발광 다이오드(Organic Light-Emitting Diode : OLED), 플렉시블 디스플레이(Flexible Display), 전계 방출 디스플레이(Feld Emission Display : FED), 3차원 디스플레이(3D Display) 중에서 적어도 하나를 포함할 수 있다.The display unit 160 is installed on the upper surface or the side surface of the robot cleaner 10 and displays various kinds of information generated by the controller 150. Here, the display unit 160 may be a liquid crystal display (LCD), a thin film transistor-liquid crystal display (TFT LCD), an organic light-emitting diode (OLED) A display, a flexible display, a field emission display (FED), and a three-dimensional display (3D display).

이들 중 일부 표시부(160)는 그를 통해 외부(또는, 상기 로봇 청소기(10)의 내부)를 볼 수 있도록 투명형 또는 광 투과형으로 구성될 수 있다. 이는 투명 디스플레이라 호칭될 수 있는데, 상기 투명 디스플레이의 대표적인 예로는 TOLED(Transparant OLED) 등이 있다.Some of the display portions 160 may be transparent or light transmissive so that the display portion 160 can see the outside (or the inside of the robot cleaner 10) therethrough. This can be referred to as a transparent display, and a typical example of the transparent display is TOLED (Transparent OLED) and the like.

또한, 상기 로봇 청소기(10)의 구현 형태에 따라, 상기 표시부(160)가 2개 이상 존재할 수 있다. 예를 들면, 로봇 청소기(10)에 복수의 표시부들이 하나의 면(동일면)에 이격되거나 일체로 배치될 수 있고, 또한 서로 다른 면에 각각 배치될 수도 있다.In addition, according to the embodiment of the robot cleaner 10, there may be two or more display units 160. For example, the robot cleaner 10 may have a plurality of display portions separated from each other on one surface (the same surface), or may be arranged on different surfaces.

한편, 상기 표시부(160)와 터치 동작을 감지하는 센서(이하, '터치 센서'라 함)가 상호 레이어 구조를 이루는 경우(이하, '터치 스크린'이라 함)에, 상기 표시부(160)는 출력 장치 이외에 입력 장치로도 사용될 수 있다. 터치 센서는, 예를 들어, 터치 필름, 터치 시트, 터치 패드 등의 형태를 가질 수 있다.Meanwhile, when the display unit 160 and a sensor (hereinafter, referred to as a 'touch sensor') for detecting a touch operation form a mutual layer structure (hereinafter referred to as a 'touch screen' It can also be used as an input device in addition to the device. The touch sensor may have the form of, for example, a touch film, a touch sheet, a touch pad, or the like.

또한, 상기 터치 센서는, 상기 표시부(160)의 특정 부위에 가해진 압력 또는 표시부(160)의 특정 부위에 발생하는 정전 용량 등의 변화를 전기적인 입력신호로 변환하도록 구성될 수 있다. 상기 터치 센서는, 터치되는 위치 및 면적뿐만 아니라, 터치 시의 압력까지도 검출할 수 있도록 구성될 수 있다. 상기 터치 센서에 대한 터치 입력이 있는 경우, 그에 대응하는 신호(들)는 터치 제어기(미도시)로 보내진다. 터치 제어기는 그 신호(들)를 처리한 다음 대응하는 데이터를 상기 제어부(150)로 전송한다. 이로써, 상기 제어부(150)는, 상기 표시부(160)의 어느 영역이 터치 되었는지 여부 등을 알 수 있게 된다.The touch sensor may be configured to convert a change in a pressure applied to a specific portion of the display unit 160 or a capacitance generated in a specific portion of the display unit 160 into an electrical input signal. The touch sensor can be configured to detect not only the position and area to be touched but also the pressure at the time of touch. If there is a touch input to the touch sensor, the corresponding signal (s) is sent to a touch controller (not shown). The touch controller processes the signal (s) and then transmits the corresponding data to the controller 150. Thus, the control unit 150 can know which area of the display unit 160 is touched or the like.

또한, 상기 표시부(160)는, 상기 제어부(150)에 의해 생성된 각종 정보를 표 시할 때, 상기 저장부(140)에 포함된 사용자 인터페이스 및/또는 그래픽 사용자 인터페이스를 이용하여 다양한 콘텐츠를 표시할 수 있다. 여기서, 상기 표시부(160)에 표시되는 콘텐츠는, 다양한 텍스트 또는 이미지 데이터와 아이콘, 리스트 메뉴, 콤보 박스 등의 데이터를 포함하는 메뉴 화면 등을 포함한다.The display unit 160 may display various contents using the user interface and / or graphical user interface included in the storage unit 140 when displaying the various information generated by the controller 150. For example, can do. Here, the content displayed on the display unit 160 includes various text or image data, a menu screen including data such as an icon, a list menu, and a combo box.

또한, 상기 표시부(160)는, 상기 제어부(150)의 제어에 의해 상기 로봇 청소기(10)의 주행 및/또는 청소 동작에 따른 상기 로봇 청소기(10)에 대한 위치 정보, 상태 정보, 청소 지도, 주행 알고리즘, 청소 알고리즘 등에 대한 각종 정보를 표시한다.The display unit 160 displays the position information, the status information, the cleaning map, and the position information of the robot cleaner 10 according to the driving and / or cleaning operation of the robot cleaner 10 under the control of the controller 150. [ A traveling algorithm, a cleaning algorithm, and the like.

또한, 상기 표시부(160)는, 상기 제어부(150)의 제어에 의해 상기 저장부(140)에 저장된 상기 로봇 청소기(10)의 이동 경로에 대한 정보를 표시할 수 있다.The display unit 160 may display information on the movement path of the robot cleaner 10 stored in the storage unit 140 under the control of the controller 150. [

또한, 상기 로봇 청소기(10)는, 상기 제어부(150)에 의해 생성된 각종 정보에 포함된 음성 정보를 출력하기 위한 음성 출력부(미도시)를 더 포함할 수도 있다. 여기서, 상기 음성 출력부는, 스피커가 될 수도 있다.The robot cleaner 10 may further include an audio output unit (not shown) for outputting audio information included in various types of information generated by the controller 150. Here, the audio output unit may be a speaker.

또한, 상기 음성 출력부는, 상기 제어부(150)의 제어에 의해 상기 로봇 청소기(10)의 주행 및/또는 청소 동작에 따른 상기 로봇 청소기(10)에 대한 위치 정보, 상태 정보, 청소 지도, 주행 알고리즘, 청소 알고리즘 등에 대한 각종 정보를 출력할 수 있다.The voice output unit may output positional information, status information, a cleaning map, a traveling algorithm, and the like of the robot cleaner 10 according to the running and / or cleaning operation of the robot cleaner 10 under the control of the controller 150. [ , A cleaning algorithm, and the like.

상기 주행부(170)는, 적어도 하나 이상의 바퀴를 포함하고, 모터 등의 구동부에 의해 상기 적어도 하나 이상의 바퀴를 구동시킨다.The traveling unit 170 includes at least one wheel, and drives the at least one wheel by a driving unit such as a motor.

또한, 상기 주행부(170)는, 상기 제어부(150)의 제어에 의해 이동, 정지, 방향 전환 등의 주행 동작을 수행한다.In addition, the travel unit 170 performs travel operations such as movement, stop, direction change, etc. under the control of the control unit 150. [

또한, 상기 주행부(170)는, 엔코더(encorder) 등의 센서들이 연결될 수 있다.In the traveling unit 170, sensors such as encoders may be connected.

상기 청소부(180)는, 상기 로봇 청소기(10)의 하면에 구비되며, 상기 제어부(150)의 제어에 의해 상기 로봇 청소기(10)가 이동 중이거나 또는, 정지 중에 하방에 있는 이물질을 흡수하여 청소 동작을 수행한다.The cleaning unit 180 is provided on a lower surface of the robot cleaner 10 and absorbs foreign substances below the robot cleaner 10 while the robot cleaner 10 is moving or stopping under the control of the controller 150, And performs an operation.

또한, 상기 청소부(180)는, 공기 중의 오염 물질을 정화하는 공기 정화부를 포함할 수 있다.In addition, the cleaner 180 may include an air purifier for purifying contaminants in the air.

상기 통신부(190)는, 리모컨, 이동 단말, 정보 제공 센터 등의 외부 단말과 유/무선 통신 방식에 의해 상호 연결을 수행한다. 여기서, 무선 인터넷 기술로는, 무선랜(Wireless LAN : WLAN), 와이 파이(Wi-Fi), 와이브로(Wireless Broadband : Wibro), 와이맥스(World Interoperability for Microwave Access : Wimax), HSDPA(High Speed Downlink Packet Access), IEEE 802.16, 롱 텀 에볼루션(Long Term Evolution : LTE), 광대역 무선 이동 통신 서비스(Wireless Mobile Broadband Service : WMBS) 등이 포함될 수 있다. 또한, 근거리 통신 기술로는, 블루투스(Bluetooth), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association : IrDA), UWB(Ultra Wideband), 지그비(ZigBee) 등이 포함될 수 있다.The communication unit 190 performs mutual connection with external terminals such as a remote controller, a mobile terminal, and an information providing center by a wire / wireless communication method. Here, the wireless Internet technology includes a wireless LAN (WLAN), a Wi-Fi, a wireless broadband (Wibro), a World Interoperability for Microwave Access (Wimax), a High Speed Downlink Packet Access, IEEE 802.16, Long Term Evolution (LTE), Wireless Mobile Broadband Service (WMBS), and the like. The short range communication technology may include Bluetooth, Radio Frequency Identification (RFID), Infrared Data Association (IrDA), Ultra Wideband (UWB), ZigBee, and the like.

또한, 상기 통신부(190)는, 상기 외부 단말로부터 전송되는 각종 정보(제어 신호, 청소 지도 정보 등 포함)를 수신한다.Also, the communication unit 190 receives various kinds of information (including control signals, cleaning map information, etc.) transmitted from the external terminal.

또한, 상기 통신부(190)는, 상기 외부 단말로부터 전송되는 방, 건물 등과 같은 임의의 공간에 대한 캐드 도면 파일 등을 수신한다.Also, the communication unit 190 receives a CAD drawing file for an arbitrary space such as a room, a building, etc., transmitted from the external terminal.

또한, 상기 통신부(190)는, 상기 외부 단말로부터 전송되는 공간-공간 위상 지도를 수신한다.Also, the communication unit 190 receives the space-space phase map transmitted from the external terminal.

상기 전원부(200)는, 외부 전원 공급 장치로부터 공급되는 전원을 저장(또는, 충전)한다.The power supply unit 200 stores (or charges) power supplied from the external power supply.

또한, 상기 전원부(200)는, 단일 장치로 구성된 배터리를 포함하거나 또는 복수의 배터리가 하나의 팩(배터리 팩)을 형성한다.In addition, the power source unit 200 includes a battery configured by a single device, or a plurality of batteries form one pack (battery pack).

또한, 상기 전원부(200)는, 복수의 배터리가 구비된 경우, 상기 복수의 배터리들이 서로 직렬로 연결되며, 상기 복수의 배터리 사이에는 하나 이상의 안전 스위치가 포함될 수 있다.In addition, when the plurality of batteries are provided, the power source unit 200 may include a plurality of batteries connected in series, and at least one safety switch may be included between the plurality of batteries.

또한, 상기 전원부(200)는, 상기 외부 전원 공급 장치와 유/무선 충전 방식에 의해 전원을 공급받을 수 있다. 즉, 상기 전원부(200)는, 상기 외부 전원 공급 장치와 전원 콘센트와 같은 구성 요소에 의해 직접 연결되거나 또는, 상기 전원부(200)와 상기 외부 전원 공급 장치가 각각 송/수신부를 구비하고, 상기 송/수신부 간에 자기 동조 방식(Magnetic Resonance Coupling Method), 전자기 유도 방식(Electromagnetic Induction Mehtod), 전파 방식(Radiowave Method) 중 어느 하나를 이용하여 상기 전원부(200)가 충전될 수도 있다. 즉, 상기 전원부(200)와 상기 외부 전원 공급 장치는 무선으로 충전할 수 있도록 구성할 수도 있으며, 상기 무선 충전 시, 그에 따른 상기 수신부와 상기 송신부의 구성은 이 분야의 통상의 기술을 가진자에 의해 용이하게 설계되어 그 기능이 수행될 수 있다.In addition, the power source unit 200 may be supplied with power by the external power supply device and a wire / wireless charging method. That is, the power supply unit 200 may be directly connected to the external power supply device by a component such as a power outlet, or the power supply unit 200 and the external power supply unit may each include a transmitter / The power source unit 200 may be charged using any one of a magnetic resonance coupling method, an electromagnetic induction method, and a radiowave method. That is, the power supply unit 200 and the external power supply unit may be configured to be able to charge wirelessly, and the configurations of the receiving unit and the transmitting unit according to the wireless charging may be configured by those having ordinary skill in the art So that the function can be performed.

이와 같이, 공간-공간 위상 지도를 근거로 상기 공간-공간 위상 지도에 포함된 복수의 공간에 대해 각 공간 단위로 해당 공간을 세부적인 섹터로 분할하고, 상기 분할된 각 섹터별로 청소 동작을 수행하여, 각 공간에 대한 세부적인 청소 동작을 수행할 수 있다.In this way, the space is divided into detailed sectors in each space unit for a plurality of spaces included in the space-space phase map based on the space-space phase map, and a cleaning operation is performed for each of the divided sectors , A detailed cleaning operation for each space can be performed.

또한, 이와 같이, 공간-공간 위상 지도를 근거로 상기 공간-공간 위상 지도에 포함된 복수의 공간에 대해 각 공간 단위로 해당 공간을 세부적인 섹터로 분할하고, 상기 분할된 각 섹터별 정보를 저장하여, 저장 공간의 사용 효율을 높일 수 있다.In this way, the space is divided into detailed sectors in each space unit with respect to the plurality of spaces included in the space-space phase map on the basis of the space-space phase map, and information on the divided sectors is stored So that the use efficiency of the storage space can be increased.

또한, 이와 같이, 공간-공간 위상 지도에 포함된 복수의 공간에 대해, 사용자가 지정한 적어도 하나의 임의의 공간에 대해서만 청소 동작을 수행하여, 사용자가 원하는 공간에 대한 집중 청소를 수행할 수 있다.In this manner, for the plurality of spaces included in the space-space phase map, the cleaning operation is performed only for at least one arbitrary space designated by the user, so that the user can perform concentrated cleaning for the desired space.

이하에서는, 본 발명에 따른 로봇 청소기의 제어 방법을 도 1 내지 도 6을 참조하여 상세히 설명한다.Hereinafter, a method of controlling the robot cleaner according to the present invention will be described in detail with reference to FIGS. 1 to 6. FIG.

도 3은 본 발명의 일 실시예에 따른 로봇 청소기의 제어 방법을 나타낸 흐름도이다.3 is a flowchart illustrating a method of controlling a robot cleaner according to an embodiment of the present invention.

먼저, 제어부(150)는, 저장부(140)에 저장된 집, 건물 등의 임의의 공간에 대한 위상 지도에 포함된 복수의 공간(예를 들어, 방(room)) 중에서 어느 하나의 제1 공간에 대해 해당 공간의 청소 영역을 모두 포함하는 기설정된 최소 크기의 하 나 이상의 직사각형 범위를 설정하고, 상기 설정된 하나 이상의 직사각형 범위를 기설정된 섹터 단위로 분할한다. 여기서, 상기 섹터는, 상기 섹터 내부를 로봇 청소기(10)가 자유롭게 이동 가능한 공간을 의미하며, 각 섹터의 크기는 서로 다를 수 있다.First, the controller 150 determines whether any one of the plurality of spaces (for example, rooms) included in the phase map for an arbitrary space such as a house or a building stored in the storage unit 140, Sets at least one rectangular area having a predetermined minimum size including all the cleaning areas of the corresponding space for the at least one rectangular area, and divides the set at least one rectangular area into predetermined sector units. Here, the sector refers to a space in which the robot cleaner 10 can move freely within the sector, and the sizes of the sectors may be different from each other.

일 예로, 상기 제어부(150)는, 도 4a 및 도 4b에 도시된 바와 같이, 집 전체에 대한 위상 지도(500) 중에서 임의의 제1 공간(501)에 대해, 상기 제1 공간(501)의 청소 영역을 모두 포함하는 하나 이상의 최소 크기의 직사각형 범위(511, 512)를 설정한다. 이후, 상기 제어부(150)는, 도 4c에 도시된 바와 같이, 상기 설정된 하나 이상의 직사각형 범위(511, 512)를 복수의 섹터 단위로 분할(521, 522, 523, 524, 525, 526, 527, 528, 529, 530)한다(S110).4A and 4B, the controller 150 controls the first space 501 of the first space 501 among the phase maps 500 of the current collector, One or more minimum size rectangular areas 511, 512 including all the cleaning areas are set. 4C, the controller 150 divides the one or more rectangular ranges 511 and 512 into a plurality of sector units 521, 522, 523, 524, 525, 526, 527, 528, 529, 530) (S110).

이후, 상기 제어부(150)는, 주행부(170) 및/또는 청소부(180)를 제어하여 상기 섹터 단위로 분할된 복수의 섹터 중에서 어느 하나의 제1 섹터에 대한 청소 동작을 수행한다.Thereafter, the controller 150 controls the driving unit 170 and / or the cleaning unit 180 to perform a cleaning operation on any one of the plurality of sectors divided in the sector unit.

이때, 상기 제어부(150)는, 상기 제1 섹터에 대한 청소 동작 수행 시, 해당 섹터의 외곽 청소(boundary exploration) 후, 해당 섹터의 내부 청소를 수행한다. 또한, 상기 제어부(150)는, 상기 해당 섹터의 내부 청소 시, 지그재그 경로(zig-zag path), 장애물 외곽 주행(contour following), 제한된 역 거리 변환 경로(Constrained Inverse Distance Transform Path : CIDT Path) 등을 이용하여 청소 동작을 수행할 수 있다.At this time, when performing the cleaning operation for the first sector, the controller 150 performs a boundary exploration of the sector, and then performs internal cleaning of the sector. In addition, the controller 150 controls the zig-zag path, the contour following, and the constrained inverse distance path (CIDT path) when cleaning the corresponding sector. The cleaning operation can be performed.

또한, 상기 제어부(150)는, 상기 청소 동작에 의한 상기 로봇 청소기(10)의 위치 정보 및 상기 로봇 청소기(10)의 상태 정보를 상기 표시부(160)에 표시할 수 있다(S120).The control unit 150 may display the positional information of the robot cleaner 10 and the status information of the robot cleaner 10 on the display unit 160 in step S120.

이후, 상기 제어부(150)는, 상기 분할된 복수의 섹터 중에서 미청소 섹터가 존재하는지를 판단한다(S130).Thereafter, the controller 150 determines whether there is a clean sector among the divided sectors (S130).

상기 판단 결과, 상기 분할된 복수의 섹터 중에서 적어도 하나의 미청소 섹터가 존재하는 경우, 상기 제어부(150)는, 상기 적어도 하나의 미청소 섹터 중에서 임의의 제2 섹터(또는, 제2 미청소 섹터)로 이동한 후(S140), 상기 주행부(170) 및/또는 상기 청소부(180)를 제어하여 상기 제2 섹터에 대한 청소 동작을 수행한다. 즉, 상기 제어부(150)는, 상기 분할된 복수의 섹터 중에서 적어도 하나의 미청소 섹터가 존재하는 경우, 상기 단계들(S120 단계 내지 S140 단계)을 반복적으로 수행하여, 상기 분할된 모든 복수의 섹터에 대한 청소 동작을 수행한다.As a result of the determination, if there is at least one uncleaned sector among the plurality of divided sectors, the controller 150 determines whether any one of the at least one uncleaned sector (or the second unheated sector, (S140), and controls the traveling unit 170 and / or the cleaning unit 180 to perform the cleaning operation on the second sector. That is, when there is at least one unscratched sector among the plurality of divided sectors, the controller 150 repeatedly performs the steps S120 to S140, As shown in FIG.

이때, 상기 제어부(150)는, 상기 분할된 복수의 섹터에 대한, 섹터-섹터 간의 경로 계획을 수행할 수 있다.At this time, the controller 150 can perform sector-sector path planning for the divided sectors.

즉, 상기 제어부(150)는, 섹터-섹터 간의 위상 지도를 구성한 뒤, 상기 구성된 섹터-섹터 간의 위상 지도를 근거로 섹터-섹터 간의 경로 계획을 수행한다.That is, the controller 150 constructs a phase map between the sector and the sector, and then performs a path plan between sectors and sectors based on the phase map between the configured sectors and the sectors.

일 예로, 상기 제어부(150)는, 도 4d에 도시된 바와 같이, 복수의 섹터(521, 522, 523, 524, 525, 526, 527, 528, 529, 530)의 각각의 중심 지점을 각각의 고유 인덱스(index)를 가지는 노드(node)(531)로 정의하고, 인접한 섹터와 연결되는 경계 섹션(boundary section)을 에지(edge)(532 또는 533)로 정의한다. 이때, 상기 에지는, 양쪽 섹터에 모두 연결된 두 노드의 인덱스를 정보를 가지며, 양쪽의 정보 를 모두 가진 경우, 익스플로워드(explored)(532)라 하고, 한쪽 노드의 정보만 가진 경우 언익스플로워드(unexplored)(533)라 한다. 또한, 상기 복수의 섹터가 포함된 제1 공간에 대한 완전한 청소를 위해서는, 모든 에지가 익스플로워드의 속성을 가져야하며, 상기 모든 에지가 익스플로워드의 속성을 가질 때 제1 공간에 대한 완전한 위상 지도가 구성될 수 있다.4D, the control unit 150 may set the center point of each of the plurality of sectors 521, 522, 523, 524, 525, 526, 527, 528, 529, Is defined as a node 531 having a unique index and a boundary section connected to an adjacent sector is defined as an edge 532 or 533. In this case, the edge has information on the indexes of two nodes connected to both sectors, and when both edges have both information, the edge is referred to as an exploded 532, and when there is only information of one node, the edge is an unexplored word unexplored (533). In addition, for a complete cleaning of the first space containing the plurality of sectors, all edges must have an attribute of the exploit, and when all of the edges have attributes of the exploit, a complete phase map for the first space Lt; / RTI >

이후, 상기 제어부(150)는, 상기 제1 공간에 대한 위상 지도를 구성한 후, 상기 제1 공간에 포함된 복수의 섹터를 각각 주행하기 위한 섹터-섹터 간의 경로 계획을 수행한다.After that, the controller 150 constructs a phase map for the first space, and then performs a sector-sector path plan for running a plurality of sectors included in the first space.

일 예로, 상기 제어부(150)는, 도 4e에 도시된 바와 같이, 상기 제1 공간(501)에 포함된 복수의 섹터에 대해 각각의 섹터 간의 연결 관계에 따라 각 섹터에 대한 경로 계획을 수행한다.For example, as shown in FIG. 4E, the controller 150 performs a path plan for each sector according to a connection relationship between the sectors for a plurality of sectors included in the first space 501 .

이때, 상기 제어부(150)가 현재 상기 로봇 청소기(10)가 위치한 임의의 섹터에서 다른 섹터와 연결되는 에지를 선택하여 해당 에지(또는, 해당 노드)로 이동하는 방법은, 현재 상기 로봇 청소기(10)가 위치한 섹터의 노드에 연결된 하나 이상의 언익스플로워드 에지가 존재하는 경우, 상기 하나 이상의 언익스플로워드 에지의 위치에 따른 비용(cost)을 정의하여 가장 낮은 비용을 갖는 에지로 거리 변환(distance transform)을 이용하여 해당 에지로 이동한다.In this case, the controller 150 selects an edge connected to another sector in an arbitrary sector where the robot cleaner 10 is currently located and moves to the corresponding edge (or a corresponding node) Expose word edge is connected to a node of a sector where the unexplained word edge is located, a cost according to the position of the at least one unexplored word edge is defined and a distance transform is performed to the edge having the lowest cost. To the corresponding edge.

또한, 상기 제어부(150)가 현재 상기 로봇 청소기(10)가 위치한 임의의 섹터에서 다른 섹터와 연결되는 에지를 선택하여 해당 에지로 이동하는 다른 방법은, 도 4f에 도시된 바와 같이, 현재 상기 로봇 청소기(10)가 위치한 섹터(521)에 해당 하는 노드에 연결된 언익스플로워드 에지가 없는 경우, 다이크스트라 알고리즘(Dijkstra Algorithm)을 적용하여 모든 언익스플로워드 에지 중에서 현재 노드와 가장 가까이 있는 에지를 찾고(541), 해당 경로와 가장 가까운 에지로 거리 변환을 이용해 이동(542 경로)하여 섹터의 경계를 따라 목표 노드로 이동(543 경로)한다.Another method for the controller 150 to select an edge connected to another sector in an arbitrary sector where the robot cleaner 10 is currently located and move to the edge is as shown in FIG. If there is no unexplored word edge connected to the node corresponding to the sector 521 in which the cleaner 10 is located, a Dijkstra Algorithm is applied to find the edge closest to the current node among all unexplored word edges ( 541) and moves to the nearest edge to the target path using the distance transform (542 path), and moves to the target node along the boundary of the sector (543 path).

이와 같이, 상기 제어부(150)는, 상기 도 4e에 도시된 바와 같이, 상기 제1 공간(501)에 포함된 복수의 섹터에 대해 ①→②→③→④→⑤→⑥→⑦→⑧→⑨→⑩ 순으로 섹터-섹터 간의 경로 계획을 수립할 수 있다.As shown in FIG. 4E, the control unit 150 controls the plurality of sectors included in the first space 501 in the order of ① → ② → ③ → ④ → ⑤ → ⑥ → ⑦ → ⑧ → ⑨ → ⑩ in the order of sector to sector.

또한, 상기 제어부(150)는, 상기 청소 동작에 따른 상기 복수의 공간 중에서 청소한 공간과 미청소 공간에 대한 정보 및 상기 위상 지도를 근거로 청소 지도를 작성하고, 상기 작성된 청소 지도를 상기 저장부(140)에 저장하거나 또는 상기 표시부(160)에 표시할 수 있다.In addition, the control unit 150 creates a cleaning map based on the cleaned space, information on the cleaned space, and the topological map among the plurality of spaces according to the cleaning operation, Or may be stored in the display unit 140 or displayed on the display unit 160.

또한, 상기 S130 단계에서의 판단 결과, 상기 분할된 복수의 섹터 중에서 미청소 섹터가 존재하지 않는 경우, 상기 제어부(150)는, 상기 위상 지도에 포함된 복수의 공간에 대해서 청소가 되지 않은 공간이 있는지 여부를 확인한다(S150).If it is determined in step S130 that there is no clean sector among the plurality of divided sectors, the controller 150 determines whether a space that is not cleaned is included in the plurality of spaces included in the phase map (S150).

상기 확인 결과, 상기 복수의 공간 중에서 청소가 되지 않은 적어도 하나의 공간이 존재하는 경우, 상기 제어부(150)는, 상기 적어도 하나의 공간 중 임의의 제2 공간에 대한 섹터 분할, 지정된 섹터 청소, 미청소 섹터의 존재 여부 확인 및 모든 미청소 섹터에 대한 청소 완료 등의 동작을 수행하는 상기 단계들(S110 단계 내지 S140 단계)을 반복적으로 수행한다. 즉, 상기 제어부(150)는, 상기 복수의 공간 중에서 적어도 하나의 미청소 공간이 존재하는 경우, 상기 단계들(S110 단계 내 지 S140 단계)을 반복적으로 수행하여, 상기 복수의 공간에 대한 모든 청소 동작을 수행한다.As a result of the checking, if there is at least one space that is not cleaned among the plurality of spaces, the controller 150 may perform sector division for any second space among the at least one space, (S110 to S140) for performing operations such as confirming the presence of a cleaning sector and completing the cleaning for all undamaged sectors. That is, when there is at least one uncleaned space among the plurality of spaces, the controller 150 repeatedly performs the steps S140 through S110, And performs an operation.

이때, 상기 제어부(150)는, 상기 복수의 공간에 대한, 공간-공간(또는, 룸-룸) 간의 경로 계획을 수행할 수 있다.At this time, the controller 150 may perform a path planning between the space-space (or the room-room) for the plurality of spaces.

즉, 상기 제어부(150)는, 상기 집 전체에 대한 위상 지도를 근거로 공간-공간 간의 경로 계획을 수행한다.That is, the control unit 150 performs a space-space path plan based on the phase map of the current collector.

일 예로, 상기 제어부(150)는, 상기 도 4a에 도시된 바와 같이, 한 방(또는 한 공간)의 청소가 모두 끝나면, 상기 공간-공간 위상 지도(또는, 방-방(room-to-room) 위상 지도)를 이용하여 다음 청소할 방을 결정한다. 즉, 상기 제어부(150)는, 상기 도 4a에 도시된, 복수의 공간들에 대해 제1 공간(501)→제2 공간(502)→제3 공간(503)→제4 공간(504)→제5 공간(505)→제6 공간(506) 순으로 공간-공간 간의 경로 계획을 수립할 수 있다.4A, when the cleaning of one room (or one space) is completed, the controller 150 controls the space-space phase map (or the room-to-room ) Phase map) to determine the next room to clean. That is, the control unit 150 determines whether the first space 501, the second space 502, the third space 503, the fourth space 504, A space-space path plan can be established in the order of the fifth space 505 → the sixth space 506.

이때, 상기 다음 청소할 방에 대한 검색은, 깊이-우선 탐색(depth-first search)에 의해 언익스플로워드 에지를 찾는 방식으로 이루어지며, 너비-우선 탐색(width-first search) 방법을 이용할 수도 있다.At this time, the search for the next room to be cleaned is performed by searching for an unexplored word edge by a depth-first search, and a width-first search method may be used.

또한, 상기 제어부(150)는, 다음 청소할 방이 결정되면, 해당 방으로 이동(예를 들어, S150 단계의 섹터-섹터 경로 계획 이용)한 후, 상기 단계들(S110 단계 내지 S160 단계)을 수행하여, 상기 해당 방에 대한 청소 동작을 수행한다.If the next room to be cleaned is determined, the control unit 150 performs the steps (S110 to S160) after shifting to the corresponding room (for example, using sector-sector path planning in step S150) And performs a cleaning operation on the corresponding room.

또한, 상기 제어부(150)는, 상기 방 검색 시, 언익스플로워드 에지가 검색되지 않으면, 상기 복수의 공간에 대한 모든 청소 동작이 끝난 것으로 판단한다.If the unexploited word edge is not found at the time of searching the room, the controller 150 determines that all the cleaning operations for the plurality of spaces have been completed.

또한, 상기 제어부(150)는, 상기 복수의 공간에 대한 청소 동작 중, 상기 로봇 청소기(10)의 위치 정보, 상기 로봇 청소기(10)의 상태 정보 및 상기 작성되는 청소 지도 등에 대한 각종 정보를 상기 표시부(160)에 표시할 수 있다(S160).In addition, the controller 150 may store various information on the position information of the robot cleaner 10, the status information of the robot cleaner 10, and the cleaning map to be created, And displayed on the display unit 160 (S160).

상기 확인 결과, 상기 복수의 공간 중에서 청소가 되지 않은 공간이 존재하지 않는 경우, 상기 제어부(150)는, 상기 위상 지도에 포함된 복수의 공간에 대한 모든 청소 동작이 완료된 것으로 판단하고, 상기 로봇 청소기(10)를 기설정된 초기 위치(509)로 이동시킨다(S170).If it is determined that there is no unclean space among the plurality of spaces, the controller 150 determines that all cleaning operations for the plurality of spaces included in the phase map are completed, (Step S170).

또한, 상기 실시예에서, 상기 제어부(150)는, 공간-공간 위상 지도에 포함된 모든 공간에 대해 청소 동작을 수행하도록 제어하는 구성을 기재하였으나, 상기 공간-공간 위상 지도에 포함된 복수의 공간 중에서 사용자의 입력에 의해 선택된 임의의 적어도 하나의 특정 공간에 대해서만, 해당 특정 공간에 대한 청소 동작을 수행하도록 제어할 수도 있다.In the above-described embodiment, the controller 150 controls to perform a cleaning operation on all the spaces included in the space-space phase map. However, it is also possible that the plurality of spaces included in the space- It is possible to perform control to perform a cleaning operation for the specific space only for at least one specific space selected by the user's input.

또한, 상기 실시예에서, 상기 제어부(150)는, 공간-공간 위상 지도에 포함된 임의의 공간에 대해, 복수의 섹터로 분할 후, 상기 복수의 섹터 각각에 대해 섹터-섹터 간의 경로 계획에 의해 각 섹터들에 대한 청소 동작을 수행하여, 상기 임의의 공간에 포함된 복수의 섹터에 대한 청소 동작을 수행 완료한 후, 상기 공간-공간 위상 지도에 포함된 다른 임의의 공간에 대해 청소 동작을 수행하여, 상기 공간-공간 위상 지도에 포함된 모든 복수의 공간에 대한 청소 동작을 수행하도록 구성하고 있다.In addition, in the above embodiment, the control unit 150 may divide an arbitrary space included in the space-space phase map into a plurality of sectors, and then, for each of the plurality of sectors, Performing a cleaning operation on each sector, completing a cleaning operation on a plurality of sectors included in the arbitrary space, and performing a cleaning operation on another arbitrary space included in the space-space phase map And performs a cleaning operation on all the plurality of spaces included in the space-space phase map.

이에 대해, 상기 제어부(150)는, 상기 공간-공간 위상 지도에 포함된 모든 복수의 공간들에 대해 공간-공간 경로 계획을 수립하고, 상기 수립된 공간-공간 경로 계획을 근거로 임의의 공간에 대해 복수의 섹터로 분할 후, 상기 복수의 섹터 각각에 대해 섹터-섹터 간의 경로 계획에 의해 각 섹터들에 대한 청소 동작을 수행하여, 상기 임의의 공간에 포함된 복수의 섹터에 대한 청소 동작을 수행 완료한 후, 상기 공간-공간 경로 계획에 따라 다른 임의의 공간에 대한 청소 동작을 수행하여, 상기 공간-공간 위상 지도에 포함된 모든 복수의 공간에 대한 청소 동작을 수행하도록 구성할 수도 있다. 즉, 상기 제어부(150)는, 상기 공간-공간 위상 지도에 포함에 복수의 공간에 대해서, 다양한 순서에 의해 각 공간에 대한 청소 동작을 수행하도록 구성할 수 있다.On the other hand, the controller 150 establishes a space-space path plan for all the plurality of spaces included in the space-space phase map, and creates a space-space path plan based on the established space- And performs a cleaning operation on each of the plurality of sectors included in the arbitrary space by performing path planning between the sector and the sector for each of the plurality of sectors to perform a cleaning operation on the plurality of sectors included in the arbitrary space The cleaning operation may be performed on any other space according to the space-space path plan, and the cleaning operation may be performed on all the plurality of spaces included in the space-space phase map. That is, the controller 150 may perform a cleaning operation for each space in a plurality of spaces included in the space-space phase map in various orders.

도 5는 본 발명의 일 실시예에 따른 공간-공간 위상 지도를 작성하는 방법을 나타낸 흐름도이다.5 is a flowchart illustrating a method of generating a spatial-spatial topology map according to an embodiment of the present invention.

먼저, 제어부(150)는, 외부 단말로부터 전송되어 저장부(140)에 저장된 캐드(CAD) 도면에 대해 청소할 영역에 대해서 선분 레이어(layer)를 설정하고, 상기 설정된 선분 레이어에 대해 바이너리 형태(binary type)의 비트맵 이미지(bitmap image)를 생성한다.First, the control unit 150 sets a segment layer for an area to be cleaned with respect to a CAD drawing transmitted from an external terminal and stored in the storage unit 140, and sets a binary type (bitmap image) of the type shown in FIG.

일 예로, 상기 제어부(150)는, 도 6a에 도시된 바와 같이, 상기 저장부(140)에 저장된 캐드 도면에 대해 로봇 청소기(10)의 충전대가 놓여지는 지점(또는, 초기 위치)(601)과 연결된 모든 영역(또는, 공간)을 청소 영역으로 설정하여 바이너리 형태의 비트맵 이미지를 생성한다(S510).6A, the control unit 150 may include a point (or an initial position) 601 at which the charging stand of the robot cleaner 10 is placed on the CAD drawing stored in the storage unit 140, (Or space) connected to the bitmap image is set as a cleaning area to generate a binary bitmap image (S510).

이후, 상기 제어부(150)는, 상기 생성된 바이너리 형태의 비트맵 이미지 중 에서 특징점(feature point)을 추출(extraction 또는 detection)한다. 이때, 상기 제어부(150)는, 마스크(mask)를 이용하여 특징점을 추출하는 등 다양한 방법을 이용하여 상기 비트맵 이미지상에서의 특징점을 추출할 수 있다.Then, the controller 150 extracts feature points from the generated bitmap images of the binary type. At this time, the controller 150 can extract feature points on the bitmap image by using various methods such as extracting feature points using a mask.

일 예로, 상기 제어부(150)는, 도 6b에 도시된 바와 같이, 볼록 특징점(convex feature point)(611)과 오목 특징점(concave feature point)(612)을 각각 추출한다. 또한, 상기 제어부(150)는, 상기 볼록 특징점에 대해서 기설정된 일정 거리 이내에 복수의 볼록 특징점이 존재하는 경우, 해당 볼록 특징점들을 병합하여 하나의 볼록 특징점으로 나타낼 수 있다. 여기서, 상기 볼록 특징점과 상기 오목 특징점은, 코너 특징점(corner feature point)으로 정의할 수 있다(S520).For example, the controller 150 extracts a convex feature point 611 and a concave feature point 612, respectively, as shown in FIG. 6B. When there are a plurality of convex feature points within a predetermined distance from the convex feature points, the controller 150 may combine the convex feature points and represent the convex feature points as one convex feature point. Here, the convex feature points and the concave feature points may be defined as corner feature points (S520).

이후, 상기 제어부(150)는, 상기 추출된 특징점을 근거로 문(door) 위치를 검출한다.Then, the control unit 150 detects a door position based on the extracted minutiae.

즉, 상기 제어부(150)는, 상기 검출된 하나 이상의 볼록 특징점 중에서, 임의의 제1 볼록 특징점의 기설정된 거리 이내에 임의의 제2 볼록 특징점이 존재하고, 상기 두 볼록 특징점 사이에 장애물이 없는지를 확인하여, 상기 제1 볼록 특징점에 대해서 기설정된 거리 이내에 제2 볼록 특징점이 존재하고, 두 볼록 특징점 사이에 장애물이 없는 경우, 상기 두 볼록 특징점 사이에 문이 위치하는 것으로 판단한다.That is, the controller 150 determines whether there is an arbitrary second convex feature point within a predetermined distance of any first convex feature point among the detected one or more convex feature points and whether there is an obstacle between the two convex feature points If the second convex feature point exists within a predetermined distance from the first convex feature point and there is no obstacle between the two convex feature points, it is determined that the door is located between the two convex feature points.

일 예로, 상기 제어부(150)는, 도 6c에 도시된 바와 같이, 제1 볼록 특징점(621)의 기설정된 거리 이내에 제2 볼록 특징점(622)이 존재하고 상기 두 볼록 특징점(621, 622) 사이에 장애물이 존재하지 않는 경우, 상기 두 볼록 특징점(621, 622) 사이에 문(623)이 존재하는 것으로 판단한다.6C, a second convex feature point 622 exists within a predetermined distance of the first convex feature point 621, and the second convex feature point 622 exists between the two convex feature points 621 and 622. In this case, It is determined that there is a door 623 between the two convex feature points 621 and 622. In this case,

다른 일 예로, 상기 제어부(150)는, 상기 도 6c에 도시된 바와 같이, 제3 볼록 특징점(624)의 기설정된 거리 이내에 복수의 볼록 특징점(625, 626)이 존재하고, 상기 볼록 특징점들 사이(624과 625 및, 624과 626)에 장애물이 존재하지 않는 경우, 상기 볼록 특징점(624과 625 및, 624과 626)들 사이에 각각의 문(627 및 628)이 존재하는 것으로 판단한다(S530).6C, the controller 150 includes a plurality of convex feature points 625 and 626 within a predetermined distance of the third convex feature point 624, and a plurality of convex feature points 625 and 626 exist between the convex feature points 624. In other words, It is determined that the respective doors 627 and 628 are present between the convex feature points 624 and 625 and 624 and 626 when no obstacle exists in the first and second convex feature points 624 and 625 and 624 and 626 ).

이후, 상기 제어부(150)는, 모든 복수의 청소 영역(또는, 복수의 공간)에 대해 공간-공간 위상 지도(또는, 방-방 위상 지도)를 생성(또는, 작성)한다.Thereafter, the controller 150 generates (or creates) a space-space phase map (or a room-phase phase map) for all the plurality of cleaning areas (or a plurality of spaces).

즉, 상기 제어부(150)는, 상기 복수의 공간에 대해서, 하나의 공간을 선택하여 해당 공간의 문에 대한 정보를 공유하고 있는 공간과 서로 연결하는 방식으로 공간-공간에 대한 위상 지도를 작성한다.That is, the controller 150 creates a phase map for the space-space by selecting one space for the plurality of spaces and connecting the space with the space sharing information on the corresponding space .

일 예로, 상기 제어부(150)는, 도 6d에 도시된 바와 같이, 제3 공간(503)의 초기 위치를 기준으로, 제3 공간(503)→제2 공간(502)→제3 공간(503)→제1 공간(501)→제3 공간(503)→제4 공간(504)→제3 공간(503)→제5 공간(505)→제3 공간(503) 순으로 각 공간에 대한 연결 관계를 확인한다.6D, the controller 150 controls the third space 503, the second space 502, the third space 503, and the third space 503 based on the initial position of the third space 503, The first space 501, the third space 503, the fourth space 504, the third space 503, the fifth space 505, and the third space 503, Check the relationship.

또한, 상기 제어부(150)는, 상기 각 공간의 중심점(631, 632, 633, 634 및 645)을 대표 포인터로 설정한다. 이때, 각각의 대표 포인터는, 각각의 공간에 포함된 코너 특징점과의 연결 관계에 대한 정보를 포함한다(S540).In addition, the controller 150 sets the center points 631, 632, 633, 634, and 645 of the respective spaces as representative pointers. At this time, each representative pointer includes information on the connection relation with the corner feature points included in each space (S540).

상기 실시예에서는, 집, 건물 등의 임의의 공간에 대한 공간 정보를 포함하는 캐드 도면 등을 이용하여 공간-공간 위상 지도를 생성(또는, 작성)하는 방법을 설명하였다. 또한, 상기 실시예에서는, 상기 캐드 도면을 이용하여 로봇 청소기(10)에 구비된 제어부(150)에서 상기 공간-공간 위상 지도를 작성하는 방법을 설명하였으나, 상기 공간-공간 위상 지도는 임의의 단말에서 작성되어 상기 로봇 청소기(10)로 전송된 후, 상기 로봇 청소기(10)에서 상기 공간-공간 위상 지도를 저장하고, 상기 저장된 공간-공간 위상 지도를 이용할 수도 있다.In the above embodiment, a method of generating (or creating) a spatial-spatial topological map by using a CAD drawing including spatial information on an arbitrary space such as a house or a building has been described. In the above embodiment, the method of generating the space-space phase map by the control unit 150 included in the robot cleaner 10 using the CAD drawing has been described. However, the space- The robot cleaner 10 may store the space-space phase map, and use the stored space-space phase map.

본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.

도 1은 본 발명의 일 실시예에 따른 로봇 청소기의 구성을 나타낸 블록도이다.1 is a block diagram showing a configuration of a robot cleaner according to an embodiment of the present invention.

도 2는 본 발명의 일 실시예에 따른 로봇 청소기를 나타낸 도이다.2 is a view illustrating a robot cleaner according to an embodiment of the present invention.

도 3은 본 발명의 일 실시예에 따른 로봇 청소기의 제어 방법을 나타낸 흐름도이다.3 is a flowchart illustrating a method of controlling a robot cleaner according to an embodiment of the present invention.

도 4a 내지 도 4f는 본 발명의 일 실시예에 따른 로봇 청소기의 제어 방법을 나타낸 도이다.4A to 4F illustrate a method of controlling a robot cleaner according to an embodiment of the present invention.

도 5는 본 발명의 일 실시예에 따른 공간-공간 위상 지도를 작성하는 방법을 나타낸 흐름도이다.5 is a flowchart illustrating a method of generating a spatial-spatial topology map according to an embodiment of the present invention.

도 6a 내지 도 6d는 본 발명의 일 실시예에 따른 공간-공간 위상 지도를 작성하는 방법을 나타낸 도이다.6A to 6D are diagrams illustrating a method of generating a spatial-spatial topological map according to an embodiment of the present invention.

Claims (14)

공간-공간 위상 지도를 저장하는 저장부; 및A storage unit for storing a space-space phase map; And 상기 공간-공간 위상 지도에 포함된 복수의 공간 중 제1 공간을 선택하고, 상기 선택된 제1 공간을 복수의 섹터로 분할하여, 상기 분할된 복수의 섹터별로 청소 동작을 수행하도록 제어하는 제어부;를 포함하며, A controller for selecting a first one of a plurality of spaces included in the space-space phase map, dividing the selected first space into a plurality of sectors, and performing a cleaning operation for each of the plurality of divided sectors ≪ / RTI & 상기 제어부는, Wherein, 상기 복수의 섹터 각각에 대하여, 섹터 내 중심 지점을 고유 인덱스(index)로 갖는 복수의 노드(node)를 각각 설정하고, A plurality of nodes each having a central point in a sector as a unique index are set for each of the plurality of sectors, 인접한 양쪽 섹터의 경계인 에지(edge)를, 상기 양쪽 섹터에 대한 노드 정보를 모두 가지는 익스플로워드(explored) 에지 또는 한쪽 섹터에 대한 노드 정보만을 가지는 언익스플로워드(unexplored) 에지로 분류하고, An edge that is a boundary between adjacent sectors is classified into an exploded edge having both node information for both sectors or an unexplored edge having only node information for one sector, 상기 에지 분류에 근거하여, 상기 분할된 복수의 섹터에 대한 섹터-섹터 경로 계획을 수립하며, Establishing a sector-sector path plan for the segmented plurality of sectors based on the edge classification, 상기 섹터-섹터 경로 계획은,The sector-sector path planning includes: 로봇 청소기의 위치에 따라 상기 에지에 부여되는 비용에 근거하여, 최소 비용을 갖도록 설정되는 것을 특징으로 하는 로봇 청소기.Wherein the robot cleaner is set to have a minimum cost based on the cost given to the edge according to the position of the robot cleaner. 제1항에 있어서, 상기 제어부는,The apparatus of claim 1, 상기 수립된 섹터-섹터 경로 계획을 근거로 주행부 및 청소부를 제어하여 청소 동작을 수행하는 것을 특징으로 하는 로봇 청소기.And performs a cleaning operation by controlling the traveling unit and the cleaning unit based on the established sector-sector path plan. 제1항에 있어서, 상기 제어부는,The apparatus of claim 1, 상기 복수의 공간에 대해 공간-공간 경로 계획을 수립하고, 상기 수립된 공간-공간 경로 계획을 근거로 상기 복수의 공간에 포함된 모든 공간에 대한 청소 동작을 순차적으로 수행하는 것을 특징으로 하는 로봇 청소기.Space path planning for the plurality of spaces and sequentially performing cleaning operations on all the spaces included in the plurality of spaces based on the established space- . 제1항에 있어서, 상기 제어부는,The apparatus of claim 1, 상기 복수의 공간 중 사용자 입력에 의해 선택된 적어도 하나의 공간에 대해 공간-공간 경로 계획을 수립하고, 상기 수립된 공간-공간 경로 계획을 근거로 상기 적어도 하나의 공간에 대한 청소 동작을 수행하는 것을 특징으로 하는 로봇 청소기.Establishing a space-space path plan for at least one space selected by user input among the plurality of spaces, and performing a cleaning operation for the at least one space based on the established space- . 제1항에 있어서, 상기 공간-공간 위상 지도는,2. The method of claim 1, wherein the spatial- 상기 제어부의 제어에 의해 캐드 도면을 바이너리 형태의 비트맵 이미지로 변환하고, 상기 변환된 비트맵 이미지에 포함된 특징점을 추출하고, 상기 추출된 특징점을 근거로 상기 비트맵 이미지에 포함된 문(door)의 위치 정보를 검출하고, 상기 비트맵 이미지와 상기 특징점과 상기 문의 위치 정보를 근거로 생성되는 것을 특징으로 하는 로봇 청소기.The control unit controls the CAD drawing to convert the bitmap image into a binary bitmap image, extracts the minutiae included in the converted bitmap image, and extracts a door included in the bitmap image based on the extracted minutiae, ), And is generated based on the bitmap image, the feature point, and the position information of the door. 기저장된 공간-공간 위상 지도를 근거로 상기 공간-공간 위상 지도에 포함된 복수의 공간 중 제1 공간을 선택하는 제1 단계;A first step of selecting a first space among a plurality of spaces included in the space-space phase map based on a previously stored space-space phase map; 상기 선택된 제1 공간을 복수의 섹터 단위로 분할하는 제2 단계;A second step of dividing the selected first space into a plurality of sector units; 상기 분할된 복수의 섹터에 대해 각 섹터별로 청소 동작을 수행하는 제3 단계;A third step of performing a cleaning operation for each sector of the plurality of divided sectors; 상기 제1 공간에 대한 청소 동작 완료 후, 상기 복수의 공간에 포함된 공간 중에서 적어도 하나의 미청소 공간이 존재하는지 확인하는 제4 단계; 및A fourth step of checking whether there is at least one uncleaned space among the spaces included in the plurality of spaces after completing the cleaning operation for the first space; And 상기 확인 결과, 적어도 하나의 미청소 공간이 존재하는 경우, 상기 적어도 하나의 미청소 공간에 대해 복수의 섹터 단위로 분할하는 제2 단계를 수행하는 제5 단계;를 포함하며, And a second step of dividing the at least one uncleaned space into a plurality of sector units if at least one uncleaned space exists as a result of the checking, 상기 제2 단계는,The second step comprises: 상기 제1 공간의 청소 영역을 모두 포함하는 하나 이상의 기설정된 최소 크기의 직사각형 범위를 설정하는 과정; Setting at least one rectangle of a predetermined minimum size size including all the cleaning areas of the first space; 상기 설정된 하나 이상의 직사각형 범위를 복수의 섹터 단위로 분할하는 과정; 및Dividing the set one or more rectangular ranges into a plurality of sector units; And 상기 복수의 섹터 각각에 대하여, 섹터 내 중심 지점을 고유 인덱스(index)로 갖는 복수의 노드(node)를 각각 설정하고, A plurality of nodes each having a central point in a sector as a unique index are set for each of the plurality of sectors, 인접한 양쪽 섹터의 경계인 에지(edge)를, 상기 양쪽 섹터에 대한 노드 정보를 모두 가지는 익스플로워드(explored) 에지 또는 한쪽 섹터에 대한 노드 정보만을 가지는 언익스플로워드(unexplored) 에지로 분류하는 과정;을 포함하며, An edge that is a border between adjacent sectors is classified into an exploded edge having both node information for both sectors or an unexplored edge having only node information for one sector In addition, 상기 제3 단계는,In the third step, 상기 에지 분류에 근거하여, 상기 분할된 복수의 섹터에 대한 섹터-섹터 경로 계획을 수립하는 과정;을 포함하며, And establishing a sector-sector path plan for the segmented plurality of sectors based on the edge classification, 상기 섹터-섹터 경로 계획은,The sector-sector path planning includes: 로봇 청소기의 위치에 따라 상기 에지에 부여되는 비용에 근거하여, 최소 비용을 갖도록 설정되는 것을 특징으로 하는 로봇 청소기의 제어 방법.Wherein the robot cleaner is set to have a minimum cost based on the cost given to the edge according to the position of the robot cleaner. 제6항에 있어서, 상기 공간-공간 위상 지도는,7. The method of claim 6, wherein the space- 기저장된 캐드 도면을 바이너리 형태의 비트맵 이미지로 변환하는 과정;Converting the pre-stored CAD drawing into a bitmap image in a binary form; 상기 변환된 비트맵 이미지에 포함된 특징점을 추출하는 과정;Extracting feature points included in the converted bitmap image; 상기 추출된 특징점을 근거로 상기 비트맵 이미지에 포함된 문의 위치 정보를 검출하는 과정; 및Detecting location information of a query included in the bitmap image based on the extracted minutiae; And 상기 비트맵 이미지, 상기 특징점 및, 상기 문의 위치 정보를 근거로 상기 공간-공간 위상 지도를 생성하는 과정에 의해 생성된 것을 특징으로 하는 로봇 청소기의 제어 방법.And generating the space-space phase map based on the bitmap image, the minutiae point, and the position information of the door. 삭제delete 제6항에 있어서, 상기 제3 단계는,7. The method of claim 6, 상기 수립된 섹터-섹터 경로 계획을 근거로 주행부 및 청소부를 제어하여 청소 동작을 수행하는 과정을 포함하여 이루어진 것을 특징으로 하는 로봇 청소기의 제어 방법.And controlling the traveling unit and the cleaning unit based on the established sector-sector path plan to perform a cleaning operation. 제6항에 있어서, 상기 제5 단계는,7. The method of claim 6, 상기 복수의 공간에 대해 공간-공간 경로 계획을 수립하는 과정; 및Establishing a space-space path plan for the plurality of spaces; And 상기 수립된 공간-공간 경로 계획을 근거로 상기 제1 공간에 대한 청소 동작을 수행한 후, 미청소 공간이 존재하면, 해당 미청소 공간에 대해 청소 동작을 수행하는 과정을 포함하여 이루어진 것을 특징으로 하는 로봇 청소기의 제어 방법.Performing a cleaning operation on the first space based on the established space-space path plan, and performing a cleaning operation on the un-cleaned space if the un-cleaned space exists, A control method of the robot cleaner. 제6항에 있어서,The method according to claim 6, 상기 확인 결과, 미청소 공간이 존재하지 않는 경우, 청소 동작을 종료하고 기설정된 초기 위치로 이동하는 제6 단계를 더 포함하여 이루어진 것을 특징으로 하는 로봇 청소기의 제어 방법.Further comprising a sixth step of terminating the cleaning operation and moving to a predetermined initial position when the uncleaned space does not exist as a result of the checking. 기저장된 공간-공간 위상 지도를 근거로 상기 공간-공간 위상 지도에 포함된 복수의 공간에 대한 공간-공간 경로 계획을 수립하는 단계; 및Establishing a space-space path plan for a plurality of spaces included in the space-space phase map based on the pre-stored space-space phase map; And 상기 수립된 공간-공간 경로 계획을 근거로 상기 복수의 공간에 대해 순차적으로 청소 동작을 수행하는 단계;를 포함하며, And sequentially performing a cleaning operation on the plurality of spaces based on the established space-space path planning, 상기 복수의 공간에 대한 청소 동작을 수행하는 단계는,The step of performing a cleaning operation on the plurality of spaces may include: 상기 복수의 공간 중 특정 공간을 선택하는 과정;Selecting a specific space among the plurality of spaces; 상기 선택된 특정 공간을 복수의 섹터 단위로 분할하는 과정;Dividing the selected specific space into a plurality of sector units; 상기 분할된 복수의 섹터에 대해 섹터-섹터 경로 계획을 수립하는 과정; 및Establishing a sector-sector path plan for the plurality of sectors; And 상기 수립된 섹터-섹터 경로 계획을 근거로 상기 특정 공간에 포함된 복수의 섹터에 대한 청소 동작을 수행하는 과정;을 포함하며, And performing a cleaning operation for a plurality of sectors included in the specific space based on the established sector-sector path plan, 상기 복수의 섹터 단위로 분할하는 과정은, Wherein the dividing into the plurality of sector units comprises: 상기 복수의 섹터 각각에 대하여, 섹터 내 중심 지점을 고유 인덱스(index)로 갖는 복수의 노드(node)를 각각 설정하고, A plurality of nodes each having a central point in a sector as a unique index are set for each of the plurality of sectors, 인접한 양쪽 섹터의 경계인 에지(edge)를, 상기 양쪽 섹터에 대한 노드 정보를 모두 가지는 익스플로워드(explored) 에지 또는 한쪽 섹터에 대한 노드 정보만을 가지는 언익스플로워드(unexplored) 에지로 분류하는 과정;을 포함하며, An edge that is a border between adjacent sectors is classified into an exploded edge having both node information for both sectors or an unexplored edge having only node information for one sector In addition, 상기 섹터-섹터 경로 계획을 수립하는 과정은, The step of establishing the sector-sector path plan comprises: 상기 에지 분류에 근거하여, 상기 분할된 복수의 섹터에 대한 섹터-섹터 경로 계획을 수립하는 과정;을 포함하며, And establishing a sector-sector path plan for the segmented plurality of sectors based on the edge classification, 상기 섹터-섹터 경로 계획은,The sector-sector path planning includes: 로봇 청소기의 위치에 따라 상기 에지에 부여되는 비용에 근거하여, 최소 비용을 갖도록 설정되는 것을 특징으로 하는 로봇 청소기의 제어 방법.Wherein the robot cleaner is set to have a minimum cost based on the cost given to the edge according to the position of the robot cleaner. 삭제delete 표시부에 표시된 공간-공간 위상 지도에 포함된 복수의 공간 중 사용자 입력에 의해 적어도 하나의 공간을 선택하는 단계;Selecting at least one space by user input among a plurality of spaces included in the space-space phase map displayed on the display unit; 상기 선택된 적어도 하나의 공간에 대한 공간-공간 경로 계획을 수립하는 단계;Establishing a space-space path plan for the selected at least one space; 상기 수립된 공간-공간 경로 계획을 근거로 상기 선택된 적어도 하나의 공간 중 제1 공간을 복수의 섹터 단위로 분할하는 단계;Dividing a first space of the selected at least one space into a plurality of sector units based on the established space-space path plan; 상기 분할된 복수의 섹터에 대해 각 섹터별로 청소 동작을 수행하는 단계;Performing a cleaning operation for each sector of the divided sectors; 상기 제1 공간에 대한 청소 동작 완료 후, 상기 적어도 하나의 공간 중 미청소 공간이 존재하는지 확인하는 단계;After completion of the cleaning operation for the first space, checking whether there is a clean space in the at least one space; 상기 확인 결과, 미청소 공간이 존재하면, 상기 공간-공간 경로 계획을 근거로 상기 적어도 하나의 공간에 포함된 다른 공간에 대한 청소 동작을 수행하는 단계; 및Performing a cleaning operation on another space included in the at least one space on the basis of the space-space path planning if the uncleaned space exists; And 상기 확인 결과, 미청소 공간이 존재하지 않으면, 청소 동작을 종료하고 기설정된 초기 위치로 이동하는 단계;를 포함하며, And if the uncleaned space does not exist, terminating the cleaning operation and moving to a predetermined initial position, 상기 복수의 섹터 단위로 분할하는 단계는, Wherein the dividing into the plurality of sector units comprises: 상기 복수의 섹터 각각에 대하여, 섹터 내 중심 지점을 고유 인덱스(index)로 갖는 복수의 노드(node)를 각각 설정하고, A plurality of nodes each having a central point in a sector as a unique index are set for each of the plurality of sectors, 인접한 양쪽 섹터의 경계인 에지(edge)를, 상기 양쪽 섹터에 대한 노드 정보를 모두 가지는 익스플로워드(explored) 에지 또는 한쪽 섹터에 대한 노드 정보만을 가지는 언익스플로워드(unexplored) 에지로 분류하는 과정;을 포함하며, An edge that is a border between adjacent sectors is classified into an exploded edge having both node information for both sectors or an unexplored edge having only node information for one sector In addition, 상기 각 섹터별로 청소 동작을 수행하는 단계는, The step of performing the cleaning operation for each sector may include: 상기 에지 분류에 근거하여, 상기 분할된 복수의 섹터에 대한 섹터-섹터 경로 계획을 수립하고, 상기 수립된 섹터-섹터 경로 계획을 근거로 상기 청소 동작을 수행하는 과정;을 포함하며, Establishing a sector-sector path plan for the plurality of divided sectors based on the edge classification, and performing the cleaning operation based on the established sector-sector path plan, 상기 섹터-섹터 경로 계획은,The sector-sector path planning includes: 로봇 청소기의 위치에 따라 상기 에지에 부여되는 비용에 근거하여, 최소 비용을 갖도록 설정되는 것을 특징으로 하는 로봇 청소기의 제어 방법.Wherein the robot cleaner is set to have a minimum cost based on the cost given to the edge according to the position of the robot cleaner.
KR1020090111117A 2009-11-17 2009-11-17 Robot cleaner and controlling method thereof KR101667708B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090111117A KR101667708B1 (en) 2009-11-17 2009-11-17 Robot cleaner and controlling method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090111117A KR101667708B1 (en) 2009-11-17 2009-11-17 Robot cleaner and controlling method thereof

Publications (2)

Publication Number Publication Date
KR20110054473A KR20110054473A (en) 2011-05-25
KR101667708B1 true KR101667708B1 (en) 2016-10-20

Family

ID=44363656

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090111117A KR101667708B1 (en) 2009-11-17 2009-11-17 Robot cleaner and controlling method thereof

Country Status (1)

Country Link
KR (1) KR101667708B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108170138A (en) * 2017-12-18 2018-06-15 深圳市奇虎智能科技有限公司 Sweeper control method and device
CN108335302B (en) * 2018-01-26 2021-10-08 上海思岚科技有限公司 Region segmentation method and device
KR102301759B1 (en) * 2019-07-17 2021-09-14 주식회사 유진로봇 Environment Learning Device and Method in Charging Time for Autonomous Mobile Robot

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090077547A (en) * 2008-01-11 2009-07-15 삼성전자주식회사 Method and apparatus of path planning for a mobile robot

Also Published As

Publication number Publication date
KR20110054473A (en) 2011-05-25

Similar Documents

Publication Publication Date Title
KR101741583B1 (en) Robot cleaner and controlling method thereof
US20240051153A1 (en) Mobile robot providing environmental mapping for household environmental control
US9429949B2 (en) Robot cleaner and controlling method thereof
AU2017200992B2 (en) Mobile robot providing environmental mapping for household environmental control
KR101857952B1 (en) Apparatus and System for Remotely Controlling a Robot Cleaner and Method thereof
KR101910382B1 (en) Automatic moving apparatus and manual operation method thereof
EP2573639A2 (en) Mobile robot and controlling method of the same
KR101297255B1 (en) Mobile robot, and system and method for remotely controlling the same
KR101753361B1 (en) Smart cleaning system and method using a cleaning robot
KR101534005B1 (en) System for cleaning user defined area using cleaning robot and method thereof
KR20140126539A (en) Moving robot, user terminal apparatus, and control method thereof
KR20110053760A (en) Robot cleaner, robot cleaning system, and method for controlling the robot cleaner
KR101667708B1 (en) Robot cleaner and controlling method thereof
KR20130027353A (en) Mobile robot, terminal, and system and method for remotely controlling the robot
KR102412847B1 (en) Robot cleaner and robot cleaning system
KR20230173939A (en) Robot-friendly buildings, methods and systems for map creation for robot operation
KR20110054474A (en) Robot cleaner and controlling method thereof

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