KR100635829B1 - Cleaning area driving method of robot cleaner - Google Patents
Cleaning area driving method of robot cleaner Download PDFInfo
- Publication number
- KR100635829B1 KR100635829B1 KR1020050034147A KR20050034147A KR100635829B1 KR 100635829 B1 KR100635829 B1 KR 100635829B1 KR 1020050034147 A KR1020050034147 A KR 1020050034147A KR 20050034147 A KR20050034147 A KR 20050034147A KR 100635829 B1 KR100635829 B1 KR 100635829B1
- Authority
- KR
- South Korea
- Prior art keywords
- cleaning area
- driving
- robot cleaner
- cleaning
- cell
- Prior art date
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L9/00—Details 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/28—Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
- A47L9/2857—User input or output elements for control, e.g. buttons, switches or displays
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L2201/00—Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
- A47L2201/04—Automatic control of the travelling movement; Automatic obstacle detection
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Electric Vacuum Cleaner (AREA)
Abstract
Description
도 1은 본 발명의 실시예에 따른 로봇 청소기의 청소영역 주행 방법이 적용되는 로봇 청소기의 구성을 도시한 블록도.1 is a block diagram illustrating a configuration of a robot cleaner to which a cleaning area driving method of a robot cleaner according to an exemplary embodiment of the present invention is applied.
도 2는 본 발명에 따른 로봇 청소기의 청소영역 주행 방법에 대한 동작 흐름도.2 is a flowchart illustrating a method of driving a cleaning area of a robot cleaner according to the present invention;
도 3은 본 발명에 따른 로봇 청소기의 주행 패턴을 예시한 도면.3 is a diagram illustrating a driving pattern of the robot cleaner according to the present invention.
도 4는 종래 로봇 청소기의 랜덤 주행 방식에 의한 주행 패턴을 예시한 도면.4 is a diagram illustrating a driving pattern by a random driving method of a conventional robot cleaner.
도 5는 종래 로봇 청소기의 격자 주행 방식에 의한 주행 패턴을 예시한 도면.5 is a diagram illustrating a driving pattern by a grid driving method of a conventional robot cleaner.
도 6은 종래 로봇 청소기의 셀(Cell) 주행 방식에 의한 주행 패턴을 예시한 도면.6 is a diagram illustrating a driving pattern by a cell driving method of a conventional robot cleaner.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
110 : 메모리110: memory
120 : 센서부120: sensor
130 : 마이크로프로세서130: microprocessor
140 : 좌/우륜 모터 구동부140: left / right motor drive unit
150 : 엔코더150: encoder
본 발명은 로봇 청소기의 청소영역 주행 방법에 관한 것으로, 보다 상세하게는 청소영역의 누락 없이 모든 청소영역에 대하여 효율적으로 청소를 수행하도록 하는 로봇 청소기의 청소영역 주행 방법에 관한 것이다.The present invention relates to a method for driving a cleaning area of a robot cleaner, and more particularly, to a method for driving a cleaning area of a robot cleaner for efficiently cleaning all the cleaning areas without missing the cleaning area.
로봇 청소기는 주택 또는 사무실과 같은 일정한 청소구역을 사용자의 조작 없이도 스스로 주행하면서, 바닥 면에 떨어지거나 혹은 쌓여있는 먼지 또는 이물질을 흡입하는 기기이다. 이와 같은 로봇 청소기는 먼지 또는 이물질을 흡입하는 일반적인 진공청소기의 구성 이외에 해당 로봇 청소기를 주행시키는 주행 장치와, 청소구역 내에 있는 다양한 장애물과 충돌하지 않고 주행할 수 있도록 장애물을 감지하는 다수의 감지 센서와, 전원을 공급하는 배터리 및 장치 전반을 제어하는 마이크로프로세서 등으로 구성되어 있다.The robot cleaner is a device that runs on a certain cleaning area such as a house or an office without a user's operation, and sucks dust or foreign matter that has fallen or accumulated on the floor. Such a robot cleaner may include a driving device for driving the robot cleaner in addition to a general vacuum cleaner that sucks dust or foreign substances, a plurality of detection sensors for detecting obstacles so that the robot cleaner may run without colliding with various obstacles in the cleaning area. It is composed of a microprocessor that controls the overall power supply and a battery to supply power.
이러한 구성에 따라 로봇 청소기는 다수의 감지 센서를 통해 청소구역 내에 설치된 각종 장애물, 예를 들면 가구, 벽 등과 같은 장애물까지의 거리를 판별하고 판별된 정보를 이용하여 장애물과 충돌되지 않도록 주행하면서 청소구역을 청소한다.According to this configuration, the robot cleaner determines the distance to various obstacles installed in the cleaning area, for example, furniture, walls, etc. through a plurality of detection sensors, and uses the determined information to drive the robot cleaner so that it does not collide with the obstacle. Clean it.
이러한 로봇 청소기는 청소영역을 누락시키지 않고 청소하기 위해서 스스로 청소영역을 인식하고 청소가 된 부분과 청소가 되지 않은 부분을 구별하여 청소가 되지 않은 영역을 빈틈없이 청소하도록 설계가 되어 있다.The robot cleaner is designed to recognize the cleaning area by itself and distinguish between the cleaned part and the uncleaned part to clean the uncleaned area without any missing cleaning area.
여기서 로봇 청소기의 청소방법은 랜덤 청소 방식(Random sweep method)과 패턴 청소 방식(pattern sweep method), 셀 청소 방식(Cell sweep method)으로 구분된다.The robot cleaner may be classified into a random sweep method, a pattern sweep method, and a cell sweep method.
먼저 랜덤 청소 방식은 도 4에 도시된 바와 같이 단지 센서에 인식된 정보를 근거로 하여 장애물의 유무만을 판단하여 회전 및 직진을 랜덤으로 결정하는 방식이다. 그리고 패턴 청소 방식은 도 5에 도시된 바와 같이 센서에 인식된 정보로 장애물의 유무를 판단하고 또한 로봇 자신의 위치를 알아내어 로봇 자신을 특정한 패턴으로 이동시키면서 청소하는 방식으로, 보통 지그재그(zigzag) 패턴을 많이 사용한다. 그리고 셀 청소 방식은 도 6의 a)에 도시된 바와 같이 일정 사각형 영역을 설정한 다음, 그 사각형 내부를 전술한 패턴 청소 방식으로, 설정된 직사각형의 청소영역에 대한 청소가 완료되었다고 판단되면 다음 사각형의 출발지점으로 이동하여 청소하는 방식이다.First, as shown in FIG. 4, the random cleaning method is a method of randomly determining rotation and straightness by determining only the presence or absence of an obstacle based on information recognized by a sensor. In the pattern cleaning method, as shown in FIG. 5, the presence of obstacles is determined by information recognized by the sensor, and the robot itself is located and cleaned while moving the robot itself in a specific pattern, usually zigzag. Use a lot of patterns. The cell cleaning method sets a predetermined rectangular area as shown in a) of FIG. 6, and then, in the pattern cleaning method described above, the cleaning of the set rectangular cleaning area is completed. It is a way of cleaning by moving to the starting point.
그러나 상기한 방식 중 랜덤 청소 방식은 로봇 청소기의 진행 방향이 자유로이 전환되는 관계로 중복 청소하는 영역이 많아지므로, 특정 영역은 상황에 따라서 청소가 거의 되지 않는 문제가 있어서 그 사용상의 결합이 있다.However, the random cleaning method of the above-described method has a problem that since the cleaning direction is freely switched, the area of overlapping cleaning is increased, the specific area is hardly cleaned according to the situation, there is a combination of use.
그리고 패턴 청소 방식의 경우에는 해당 청소 영역의 벽에 근접하여 수평 이동함으로써, 각각의 측면에 벽을 감지하는 센서 및 로봇 자신의 운행 정보를 보정하기 위한 별도의 센서 및 회전을 위한 센서 등 각종 센서들이 필요할 뿐만 아니라 이들 센서로부터 입력되는 정보를 처리하는데 정보 처리 시간이 오래 걸리는 문제점이 있다.In the case of the pattern cleaning method, by moving horizontally close to the wall of the cleaning area, various sensors such as a sensor for detecting a wall on each side and a separate sensor for correcting the driving information of the robot and a sensor for rotation are provided. Not only is it necessary, there is a problem that it takes a long time to process information to process the information input from these sensors.
그리고 셀 청소 방식의 경우에는 일정 사각형 형상의 청소 영역을 청소한 후 다음 라인으로 이동하여 청소를 수행함에 있어서, 도 6의 b)에 도시된 바와 같이 청소기가 주행되는 동안 바퀴의 슬립으로 인한 공회전, 바닥면의 굴곡 등에 의해 센서를 통해 검출된 신호로부터 산출된 주행 거리 및 이동 위치와 실제 주행 거리 및 위치 사이에 오차가 발생하는 문제점이 있다. In the case of the cell cleaning method, when cleaning the cleaning area having a certain square shape and moving to the next line to perform cleaning, as shown in b) of FIG. 6, idling due to slip of the wheel while the cleaner is running, There is a problem that an error occurs between the driving distance and the moving position and the actual driving distance and the position calculated from the signal detected by the sensor due to the bending of the bottom surface.
이에 따라 셀 청소 방식에서 발생되는 위치 인식 오차는 로봇 청소기가 주행하면 할수록 누적되게 되므로, 누적된 위치 인식 오차에 의해 로봇 청소기가 인식한 현재 위치는 실제 위치와 많은 차이를 가지게 된다.Accordingly, since the position recognition error generated by the cell cleaning method is accumulated as the robot cleaner runs, the current position recognized by the robot cleaner by the accumulated position recognition error has a great difference from the actual position.
따라서 도 6의 b)에 도시된 바와 같이 셀 청소 방식에 의해 로봇 청소기가 주행하며 청소하는 경우 로봇의 위치 보정 수단에 따른 오차로 인해 청소 영역 전체에 대한 청소 작업을 수행함에 있어서 셀(Cell)과 셀(Cell) 사이의 청소가 미비해지는 문제점이 있다.Therefore, when the robot cleaner runs and cleans by the cell cleaning method as shown in FIG. 6B, the cell and the cell are cleaned in the entire cleaning area due to an error caused by the position correction means of the robot. There is a problem in that cleaning between the cells is insufficient.
본 발명은 상기한 청소 방식 중의 셀 청소 방식의 청소 알고리즘을 보완하기 위하여 발명된 것으로, 셀과 셀 사이의 이동 시 청소영역의 누락 없이 모든 청소영역에 대하여 효율적으로 청소를 수행하도록 하는 로봇 청소기의 청소영역 주행 방법을 제공하는데 목적이 있다.The present invention has been invented to complement the cleaning algorithm of the cell cleaning method in the above cleaning method, and cleaning the robot cleaner to efficiently clean all the cleaning areas without missing the cleaning area when the cell moves between the cells. It is an object of the present invention to provide an area driving method.
상기와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 로봇 청소기의 청소영역 주행 방법은 로봇 청소기의 셀 청소 모드 시 로봇 청소기의 현재 위치가 통과되는 반경을 가지는 원형의 청소영역을 설정하는 청소영역 설정 단계와, 현재 위치에서 설정된 청소 영역의 내측으로 직진 주행하도록 모터를 구동시키는 주행 단계와, 직진 주행에 따른 변위 정보를 이용하여 청소영역의 이탈 유무를 분석하고 분석 결과 청소영역을 이탈하는 경우 모터 구동을 정지시키는 청소영역 분석단계와, 주행 정지된 위치에서 방향을 전환하고 소정 거리만큼 이동하여 다음 직진 라인으로 이동하는 라인 이동 단계와, 이동된 위치가 청소영역 내의 위치인 경우 설정된 청소 영역의 내측으로 직진 주행하도록 모터를 구동시키며 이동된 위치가 셀의 종료 위치인 경우 다음 셀의 시작 위치로 이동하는 셀 분석 단계를 포함하는 것을 특징으로 한다.Cleaning area driving method of the robot cleaner according to a preferred embodiment of the present invention for achieving the above object cleaning to set a circular cleaning area having a radius passing the current position of the robot cleaner in the cell cleaning mode of the robot cleaner In the area setting step, the driving step of driving the motor to travel straight to the inside of the cleaning area set at the current position, and using the displacement information according to the straight running to analyze the presence or absence of the cleaning area and when leaving the cleaning area as a result of analysis A cleaning area analysis step of stopping the driving of the motor, a line moving step of changing a direction from a stopped position and moving a predetermined distance to the next straight line, and when the moved position is a position in the cleaning area, The motor is driven to travel straight inward and the moved position is above the end of the cell. In the case of the device, the cell analysis step moves to the start position of the next cell.
이와 같은 구성에 따라 본 발명에 따른 로봇 청소기의 청소영역 주행 방법은 기존의 직사각형 셀을 포함하는 청소영역을 주행하게 됨으로써, 기존 셀 주행 방식에서 셀과 셀 사이의 영역 이동 시 발생되었던 청소영역의 누락 문제점을 해결할 수 있어 모든 청소영역에 대하여 효율적으로 청소를 수행할 수 있다.According to such a configuration, the cleaning area driving method of the robot cleaner according to the present invention runs a cleaning area including an existing rectangular cell, so that the cleaning area that is generated when the area moves between the cell and the cell in the conventional cell driving method is omitted. The problem can be solved, and cleaning can be performed efficiently for all the cleaning areas.
즉 직사각형의 셀을 포함하는 원형의 청소영역을 주행함으로써, 기존 셀 청소 방식에서 센서를 통해 검출된 신호로부터 산출된 주행 거리 및 이동 위치와 실제 주행 거리 및 위치 사이에서 발생되는 오차로 인해 셀과 셀 사이에 이격 공간이 발생 하더러도 셀을 포함하는 원형의 청소영역이 상호 겹쳐지게 됨으로써, 종래 셀 청소 방식과는 달리 청소를 수행함에 있어 셀과 셀 사이에서 청소영역이 누락되는 것을 최소화할 수 있다.That is, by driving a circular cleaning area including a rectangular cell, the cell and the cell due to the error generated between the travel distance and the movement position and the actual travel distance and position calculated from the signal detected by the sensor in the conventional cell cleaning method The circular cleaning areas including the cells overlap with each other even when spaces are generated therebetween, so that the cleaning area may be minimized between the cells and the cells when the cleaning is performed unlike the conventional cell cleaning method. .
본 발명은 첨부된 도면을 참조하여 후술하는 바람직한 실시예를 통하여 더욱 명백해질 것이다. 이하에서는 이러한 실시예를 통해 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 설명하기로 한다.The invention will become more apparent through the preferred embodiments described below with reference to the accompanying drawings. Hereinafter will be described in detail to enable those skilled in the art to easily understand and reproduce through these embodiments.
도 1은 본 발명의 실시예에 따른 로봇 청소기의 청소영역 주행 방법이 적용되는 로봇 청소기의 구성을 도시한 블록도이다.1 is a block diagram illustrating a configuration of a robot cleaner to which a cleaning area driving method of a robot cleaner according to an exemplary embodiment of the present invention is applied.
도 1에 도시된 바와 같이 본 발명에 따른 주행 방법이 적용되는 로봇 청소기는 메모리(110)와, 센서부(120)와, 좌/우륜 모터 구동부(140)와 엔코더(150) 및 마이크로프로세서(130)를 포함하고 있다.As shown in FIG. 1, the robot cleaner to which the driving method according to the present invention is applied includes a
메모리(110)는 로봇 청소기 본체를 제어하기 위한 제어 프로그램 데이터가 저장되는 한편, 제어 동작 시 발생하는 데이터들을 일시 저장하는 역할도 담당한다. 또한 메모리(110)에는 직사각형의 청소영역에 대한 좌표 정보, 예를 들면 직사각형을 가지는 청소영역의 설정 시 각 꼭지점들에 대한 위치 좌표와 함께 해당 청소영역의 종료 위치에 대한 종료 좌표 정보를 포함한다. 나아가 메모리(110)에는 직사각형의 청소영역에 대한 좌표 정보로부터 산출되는 원형의 청소영역에 대한 중심 좌표 정보가 저장되어 있다. 그리고 메모리(110)에는 엔코더로부터 입력된 회전수 데이터에 따라 실제 로봇 청소기가 주행한 거리를 좌표로 계산하기 위해 필요한 정보, 즉 회전수 데이터로부터 산출되는 거리 데이터에 대한 좌표 데이터가 저장되어 있다.The
그리고 센서부(120)는 좌/우륜 모터 구동부(140)에 의한 로봇 청소기의 회전 구동 시 로봇 청소기가 회전한 각도를 감지하는 회전 감지 센서를 포함한다. 본 발명의 실시예에 있어서 회전 감지 센서는 회전 구동에 따른 방향 변위를 측정하는 자이로 센서가 적용될 수 있다.In addition, the
그리고 좌/우륜 모터 구동부(140)는 후술하는 마이크로프로세서(130)로부터 인가되는 주행 제어 신호에 따라 후방 양측에 설치된 좌/우륜 바퀴를 각각 회전 구동시키는 모터를 각각 구동시킨다. 즉 좌/우륜 모터 구동부(140)는 마이크로프로세서(130)로부터의 주행 제어 신호에 따라 각 모터를 독립적으로 정방향 혹은 역방향으로 회전 구동시킨다. 이 때 방향 회전은 각 모터의 회전수를 다르게 구동 함으로써, 로봇 청소기가 회전되는 것이다.In addition, the left / right
이와 같이 모터 구동에 의해 후방 양측의 좌/우륜 바퀴가 회전되는 경우 마이크로프로세서는 전술한 자이로 센서를 통해 로봇 청소기의 회전각도를 인식함은 물론 엔코더를 통해 각 바퀴의 회전량에 따른 주행 거리, 즉 이동 거리를 인식할 수 있게 된다.As such, when the left / right wheels are rotated by the motor, the microprocessor recognizes the rotation angle of the robot cleaner through the gyro sensor as described above, and also the driving distance according to the rotation amount of each wheel through the encoder. The movement distance can be recognized.
즉 엔코더(150)는 좌륜과 우륜 휠 각각에 연결되어 해당 바퀴의 회전량을 측정하여 그에 상응하는 회전수 데이터를 마이크로프로세서(130)로 피드백하여 준다. 이러한 회전수 데이터에 기초하여 마이크로프로세서(130)는 청소영역에서의 X, Y축으로의 이동량을 산출할 수 있다.That is, the
한편 마이크로프로세서(130)는 메모리(110)에 저장된 제어 프로그램 데이터에 기초하여 로봇 청소기의 동작을 전반적으로 제어하되, 본 발명의 특징적인 양상에 따라 로봇 청소기가 청소영역으로 설정되는 원형을 이탈하지 않도록 로봇 청소 기의 주행을 제어한다. Meanwhile, the
즉 본 발명의 실시예에 있어서 마이크로프로세서(130)는 설정된 원형의 청소영역에 대한 중심 좌표와 직진 주행 시 엔코더를 통해 획득되는 로봇 청소기의 위치 좌표로부터 산출되는 청소영역의 중심으로부터 직진 주행하는 로봇 청소기까지의 거리를 이용하여 청소영역 범위의 이탈 유무에 따라 로봇청소기의 주행을 제어한다. That is, in the embodiment of the present invention, the
예를 들어 마이크로프로세서(130)는 직진 주행 중인 로봇 청소기 위치 좌표와 청소영역의 중심 좌표까지의 거리가 원의 반경보다 작은 경우에는 이탈하지 않은 것으로 판단하여 로봇 청소기가 직진 주행하도록 좌/우륜 모터 구동부(140)로 직진 주행 신호를 출력한다. 그러나 청소영역 중심에서 직진 주행 중인 로봇 청소기까지의 거리가 원의 반경과 일치하게 되면, 마이크로프로세서(130)는 로봇 청소기가 설정된 청소영역의 경계에 도달한 것으로 판단하여 좌/우륜 모터 구동부(140)로 주행 정지 신호를 좌/우륜 모터 구동부(140)로 출력한다.For example, the
그리고 마이크로프로세서(130)는 직진 라인에 대한 청소가 완료되는 경우 방향을 전환하여 다음 직진 라인으로 이동하고 다음 직진 라인에서 직진 주행한다. When the cleaning of the straight line is completed, the
이 때 마이크로프로세서(130)는 청소영역에 대한 셀 청소 방식이 선택되는 경우 로봇 청소기가 위치하고 있는 현재 위치를 X, Y 좌표축 상의 청소영역에 대한 시작좌표(0,0)로 설정하여 X축 또는 Y축 방향으로 직진 주행 개시함으로써, 지정된 원형상의 청소영역 내를 이동하면서 청소할 수 있게 되는 것이다.At this time, when the cell cleaning method for the cleaning area is selected, the
또한 마이크로프로세서(130)는 상술한 바와 같이 엔코더(150)로부터 입력되 는 주행 이동에 따른 로봇 청소기의 회전수 데이터에 기초하여 로봇 청소기가 실제 이동한 이동 거리를 산출한다. 그리고 산출된 거리 데이터로부터 청소영역에 대한 좌표 데이터를 산출한다.In addition, the
따라서 상기와 같은 구성에 따라 본 발명에 따른 청소주행 방법이 적용되는 로봇 청소기는 엔코더로부터 입력되는 로봇 청소기의 이동 거리 정보 및 자이로 센서를 통해 입력되는 회전각도 데이터를 통해 원형으로 설정된 청소영역 내를 직진, 방향 전환의 과정을 반복적으로 수행하면서 청소영역에 대한 청소작업을 진행하게 된다.Therefore, the robot cleaner to which the cleaning driving method according to the present invention is applied in accordance with the above configuration goes straight through the cleaning area set in a circular shape through the moving distance information of the robot cleaner input from the encoder and the rotation angle data input through the gyro sensor. In this case, the cleaning operation is performed on the cleaning area while repeatedly performing the change of direction.
이하에서는 도 1 및 도 3을 참조하여 상기와 같은 구성을 가지는 로봇 청소기의 청소영역 주행 방법에 대하여 설명하기로 한다.Hereinafter, a cleaning area driving method of the robot cleaner having the above configuration will be described with reference to FIGS. 1 and 3.
도 2는 본 발명에 따른 로봇 청소기의 청소영역 주행 방법에 대한 동작 흐름도이고, 도 3은 본 발명에 따른 로봇 청소기의 주행 패턴을 예시한 도면이다.2 is a flowchart illustrating a method for driving a cleaning area of a robot cleaner according to the present invention, and FIG. 3 is a diagram illustrating a driving pattern of the robot cleaner according to the present invention.
먼저 본 발명에 따른 로봇 청소기의 청소영역 주행 방법은 청소해야 할 청소영역 내에 장애물이 전혀 없는 경우, 전체 청소영역에 대해여 로봇 청소기의 현재 위치가 통과되는 반경을 가지는 원형의 청소영역을 설정한다(S110,S120).First, in the cleaning area driving method of the robot cleaner according to the present invention, when there is no obstacle in the cleaning area to be cleaned, a circular cleaning area having a radius through which the current position of the robot cleaner passes is set for the entire cleaning area ( S110, S120).
즉 마이크로프로세서(130)는 청소해야 할 청소영역 내에 장애물이 전혀 없는 경우, 메모리(110)에 저장되어 있는 제어 프로그램 데이터에 기초하여 직사각형을 가지는 청소영역을 설정한다(S110). 이 때 본 발명의 바람직한 실시예에 있어서 마이크로프로세서(130)는 로봇 청소기가 위치하고 있는 현재 위치를 X, Y 좌표축 상의 청소영역에 대한 시작좌표 A(0,0)로 설정하여 직사각형의 청소영역을 설정한다. 즉 도 3의 a)에 도시된 바와 같이 A지점을 기준으로 제어 프로그램에 따라 B, C, D를 경유하는 직사각형의 청소영역을 설정한다. That is, when there is no obstacle in the cleaning area to be cleaned, the
예를 들어 X, Y축 상에서의 단위 길이 1에 대하여 실제 주행 거리 데이터가 2㎝로 설정되어 메모리에 저장되어 있으며, X축으로 2m, Y축으로 1m의 직사각형 청소영역을 설정하는 경우, 도면에 도시된 B의 좌표 데이터는 (0,50)이고, C는 (100,50) 그리고 D는 (100,0) 가 된다. 참고적으로 각 좌표, 예를 들면 A와 B 사이에는 수많은 좌표 데이터가 존재하며, 이하에서는 이 좌표 데이터를 예시하여 본 발명에 따른 로봇 청소기의 주행 방법을 설명하기로 한다.For example, when the actual travel distance data is set to 2 cm for the unit length 1 on the X and Y axes, and stored in the memory, and a rectangular cleaning area of 2 m on the X axis and 1 m on the Y axis is set in the drawing, The coordinate data of B shown is (0,50), C is (100,50) and D is (100,0). For reference, a large number of coordinate data exists between each coordinate, for example, A and B. Hereinafter, the driving method of the robot cleaner according to the present invention will be described by exemplifying the coordinate data.
이와 같이 직사각형의 청소영역을 설정한 다음, 마이크로프로세서(130)는 설정된 직사각형으로부터 본 발명에 따른 주행 방법이 구현되는 원형의 청소영역을 설정한다(S120). After setting the rectangular cleaning area as described above, the
즉 기 설정된 청소영역의 형상이 직사각형이므로 대각선에 위치하는 두 좌표로부터 설정된 직사각형의 꼭지점을 경유하는 원의 중심 좌표가 산출되며 이를 통해 기 설정된 직사각형의 A,B,C,D 좌표를 경유하는 원형의 청소영역을 설정하게 된다. 이에 따라 설정되는 원형의 청소영역의 중심 좌표 E에 대한 좌표는 (50,22.5) 가 된다.That is, since the shape of the preset cleaning area is a rectangle, the center coordinates of the circle passing through the vertex of the set rectangle are calculated from the two coordinates located on the diagonal line, and through this, the circular shape passing through the preset A, B, C, D coordinates of the rectangle is calculated. Set the cleaning area. The coordinate with respect to the center coordinate E of the circular cleaning area | region set by this is (50,22.5).
따라서 상기와 같은 과정을 통해 마이크로프로세서(130)는 로봇 청소기의 셀 청소 모드 시, 기존 셀 청소방식에서 사용되었던 직사각형과는 다른 원형의 청소영역을 설정한다. 그리고 이러한 청소영역의 설정 과정에서 설정된 청소영역에 대한 좌표정보를 산출하여 메모리(110)에 저장한다. 이 때 메모리(110)에 저장되는 좌표 정보에는 적어도 설정된 청소영역에서 로봇 청소기가 청소를 시작/종료하는 청소 개시/종료 좌표 그리고 청소영역 중심에 대한 중심 좌표 정보를 포함한다. Therefore, through the above process, the
이와 같이 원형의 청소영역이 설정되면, 마이크로프로세서(130)는 현재 위치에서 설정된 원형의 청소영역의 내측으로 직진 주행하도록 좌/우륜 모터 구동부(140)로 직진 주행 신호를 출력한다(S130). 이에 따라 로봇 청소기는 좌/우륜 모터 구동부(140)에 의한 모터 구동에 따라 직진 주행하게 된다.When the circular cleaning area is set as described above, the
그 다음, 직진 주행에 따른 변위 정보를 이용하여 청소영역의 이탈 유무를 분석하고 분석 결과 로봇 청소기가 청소영역을 이탈하는 경우 모터 구동을 정지시키고 다음 직진 라인으로 이동한다(S140~S160).Next, the presence or absence of the cleaning area is analyzed using the displacement information according to the straight running, and as a result of the analysis, when the robot cleaner leaves the cleaning area, the motor stops and moves to the next straight line (S140 to S160).
즉 마이크로프로세서(130)는 직진 주행 시 주행에 따른 로봇 청소기의 변위 정보를 이용하여 청소영역의 중심좌표에서 주행 중인 로봇 청소기의 현재 위치까지의 이격 거리를 산출한다(S140). 다시 말해 마이크로프로세서(130)는 직진 주행 시 엔코더(150)로부터 획득되는 모터의 회전수 데이터를 기초하여 로봇 청소기가 실제 이동한 거리를 산출한다. 그리고 산출된 거리 데이터로부터 청소영역에 대한 좌표 데이터를 산출한다.That is, the
그리고 산출된 이격 거리를 이용하여 직진 주행하는 로봇 청소기가 청소영역을 이탈했는가를 판단한다(S150). 본 발명의 실시예에 있어서 "이탈이라 함은 청소영역의 경계에 로봇 청소기가 도달한 것"으로 정의한다. In operation S150, it is determined whether the robot cleaner running straight travels out of the cleaning area by using the calculated separation distance. In the embodiment of the present invention, "departure" is defined as the robot cleaner reaches the boundary of the cleaning area.
즉 마이크로프로세서(130)는 청소영역의 반경, 본 발명의 실시예에 있어서 원의 중심인 E의 좌표 데이터 (50,22.5)인 경우 청소영역의 반경은 54.83이므로, 산출되는 로봇 청소기의 이격 거리가 반경을 초과하는 경우(S150), 모터 구동을 정지시키고 다음 직진 라인으로 이동한다. 그러나 상기 S150단계에서의 판단 결과 로봇 청소기의 이격 거리가 반경보다 작은 경우에는 현 위치에서 계속해서 직진 주행하도록 직진 주행 신호를 좌/우륜 모터 구동부(140)로 출력한다.That is, when the
예를 들어 로봇 청소기가 모터 구동에 의해 청소 시작 위치인 A지점에서 수직으로 80cm 이동 주행한 경우, X, Y축 상에서의 단위 길이 1에 대하여 실제 주행 거리 데이터가 2㎝로 설정되었기에, 마이크로프로세서(130)는 직진 주행한 로봇 청소기의 현재 위치가 X, Y축 상에서 (0.39)의 위치에 있는 것으로 인식한다.For example, when the robot cleaner travels 80 cm vertically from the point A, which is the cleaning start position by the motor drive, the actual travel distance data is set to 2 cm for the unit length 1 on the X and Y axes. 130 recognizes that the current position of the robot cleaner traveling straight is at a position of 0.39 on the X and Y axes.
이 지점에 로봇 청소기가 위치하는 경우 청소영역의 중심에서 로봇 청소기의 위치까지의 거리(d)는 If the robot cleaner is located at this point, the distance d from the center of the cleaning area to the position of the robot cleaner is
(xr:로봇청소기의 X좌표, yr:로봇청소기의 Y좌표, xc:원 중심의 X좌표, yc:원 중심의 Y좌표)(xr: X coordinate of robot cleaner, yr: Y coordinate of robot cleaner, xc: X coordinate of circle center, yc: Y coordinate of circle center)
로 산출된다.Is calculated.
즉 현재 로봇 청소기의 좌표가 (0,39)인 경우, 청소영역의 중심(50,22.5)에서 로봇 청소기의 위치까지의 거리는 약 52.65로 청소영역의 반경인 55.90보다 작으므로(S150), 마이크로프로세서(130)는 직진 주행하는 로봇 청소기가 아직 청소영역 내에 있는 것으로 판단하여 좌/우륜 모터 구동부(140)로 직진 주행 신호를 출력한다. 이에 따라 로봇 청소기는 S130 단계로 피드백되어 직진 주행하게 된다.That is, if the coordinate of the current robot cleaner is (0,39), the distance from the center of the cleaning area (50,22.5) to the location of the robot cleaner is about 52.65, which is smaller than 55.90, the radius of the cleaning area (S150). The
그러나 현재 로봇 청소기의 좌표가 (0.50)인 경우, 청소영역의 중심에서 로봇 청소기의 위치까지의 거리는 청소영역의 반경과 동일하므로, 마이크로프로세서(130)는 직진 주행하는 로봇 청소기가 청소영역 범위를 이탈한 것으로 판단하여 좌/우륜 모터 구동부(140)로 주행 정지 신호를 출력한다. 이에 따라 주행 중인 로봇 청소기는 마이크로프로세서로부터 인가되는 주행 정지 신호에 따라 모터 구동이 정지하게 됨으로써, 로봇 청소기가 정지하게 되는 것이다.However, when the coordinate of the robot cleaner is (0.50), the distance from the center of the cleaning area to the position of the robot cleaner is the same as the radius of the cleaning area, so that the
상기와 같이 S150 단계에서 직진 주행하는 로봇 청소기가 청소영역의 범위를 이탈하게 되면 전술한 바와 같이 정지된 위치에서 방향을 전환하고 소정 거리만큼 이동하여 다음 직진 라인으로 이동한다(S160).As described above, when the robot cleaner running straight in step S150 leaves the range of the cleaning area, the robot cleaner moves in the stopped position as described above, moves by a predetermined distance, and moves to the next straight line (S160).
이러한 로봇 청소기의 방향 전환 및 이동은 메모리에 저장된 제어 프로그램 데이터에 기초한 것으로, 다양한 알고리즘을 통해 구현될 수 있다.The direction change and movement of the robot cleaner is based on control program data stored in a memory, and may be implemented through various algorithms.
예를 들어 본 발명의 일 실시예에 있어서 로봇 청소기의 라인 이동방식은 기존의 셀 청소 방식과 마찬가지로 최초 정지된 지점에서 우측으로 90도 회전한 후 소정 거리만큼 직진 주행하고, 다음 정지되는 지점에서는 좌측으로 90도 회전한 후 소정 거리만큼 직진 주행하는 방식일 수도 있다. For example, in one embodiment of the present invention, the robot cleaner's line movement method rotates 90 degrees to the right from the first stop point, and moves straight ahead by a predetermined distance, as in the conventional cell cleaning method, and moves to the left at the next stop point. After the rotation by 90 degrees may be a way to go straight for a predetermined distance.
또 다른 실시예에 있어서 로봇 청소기의 라인 이동방식은 기존의 셀 청소 방식과 유사하지만 전환되는 방향의 각도가 직각이 아닌 청소영역의 원주를 따라 이동하는 방식으로도 가능하다. 이 경우 마이크로프로세서는 센서부인 자이로 센서로부터 입력되는 회전 각 데이터를 참조하여 정지되어 있는 로봇 청소기가 원주를 따라 회전 주행하도록 제어할 수 있게 되는 것이다.In another embodiment, the robot cleaner line movement method is similar to the conventional cell cleaning method, but may also be performed by moving the circumference of the cleaning area instead of the right angle. In this case, the microprocessor may control the robot cleaner that is stationary to rotate along the circumference with reference to the rotation angle data input from the gyro sensor, which is a sensor unit.
한편 상기와 같이 이동 알고리즘에 의해 다음 직진 라인으로 이동한 로봇 청소기의 위치 좌표가 청소영역의 종료 좌표와의 일치 여부를 판단하게 된다(S170). 이 때 마이크로프로세서(130)는 라인 이동 시 전술한 바와 같이 엔코더(150)로부터 획득되는 회전수 데이터에 기초하여 이동된 지점의 좌표를 산출하게 된다.Meanwhile, as described above, it is determined whether the position coordinates of the robot cleaner moved to the next straight line by the moving algorithm coincide with the end coordinates of the cleaning area (S170). At this time, the
따라서 본 발명에 따른 로봇 청소기의 청소영역 주행 방법을 구현하는 마이크로프로세서(130)는 다음 직진 라인으로 이동한 로봇 청소기의 위치 좌표가 청소영역 내의 위치인 경우(S170), 설정된 청소영역의 내측으로 직진 주행하도록 좌/우륜 모터 구동부(140)로 직진 주행 신호를 출력한다. 이에 따라 로봇 청소기는 좌/우륜 모터 구동부에 의한 모터 구동에 의해 직진 주행하게 된다.Therefore, the
그러나 다음 직진 라인으로 이동한 로봇 청소기의 위치 좌표가 메모리에 저장되어 있는 청소영역의 청소 종료 좌표와 일치하는 경우에는 다음 셀로 이동하도록 좌/우륜 모터 구동부(140)로 주행 제어 신호를 출력한다.However, when the position coordinates of the robot cleaner moved to the next straight line coincide with the cleaning end coordinates of the cleaning area stored in the memory, the driving control signal is output to the left / right
이에 따라 로봇 청소기는 원형으로 설정된 해당 청소영역의 청소 작업을 마치고 다른 셀로 이동하게 되는 것이다(S180).Accordingly, the robot cleaner moves to another cell after finishing the cleaning of the corresponding cleaning area set in a circle (S180).
따라서 상기와 같은 주행 방법을 통해 로봇 청소기는 기존 셀 청소 방식에서 센서를 통해 검출된 신호로부터 산출된 주행 거리 및 이동 위치와 실제 주행 거리 및 위치 사이에서 발생되는 오차로 인해 셀과 셀 사이에 이격 공간이 발생 하더러도 도 3의 b)에 도시된 바와 같이 셀을 포함하는 원형의 청소영역이 상호 겹쳐지게 되므로 종래 셀 청소 방식과는 달리 청소를 수행함에 있어 셀과 셀 사이에서 청소영역이 누락되는 것을 최소화할 수 있다.Therefore, the robot cleaner uses the driving method as described above. The space between the cell and the cell is due to the error generated between the driving distance and the moving position and the actual driving distance and the position calculated from the signal detected by the sensor in the conventional cell cleaning method. Even if this occurs, as shown in b) of FIG. 3, since the circular cleaning areas including the cells overlap each other, unlike the conventional cell cleaning method, the cleaning areas are missing between the cells in the cleaning. Can be minimized.
이상에서 상세하게 설명한 바와 같이 본 발명에 따른 로봇 청소기의 청소영역 주행 방법은 기존의 직사각형 셀을 포함하는 청소영역을 주행하게 됨으로써, 기존 셀 주행 방식에서 셀과 셀 사이의 영역 이동 시 발생되었던 청소영역의 누락 문제점을 해결할 수 있어 모든 청소영역에 대하여 효율적으로 청소를 수행할 수 있다.As described in detail above, the cleaning area driving method of the robot cleaner according to the present invention runs a cleaning area including a conventional rectangular cell, thereby cleaning the area generated when the area moves between the cells in the conventional cell driving method. The problem of omission of the problem can be solved, so that all the cleaning areas can be cleaned efficiently.
즉 직사각형의 셀을 포함하는 원형의 청소영역을 주행함으로써, 기존 셀 청소 방식에서 센서를 통해 검출된 신호로부터 산출된 주행 거리 및 이동 위치와 실제 주행 거리 및 위치 사이에서 발생되는 오차로 인해 셀과 셀 사이에 이격 공간이 발생 하더러도 셀을 포함하는 원형의 청소영역이 상호 겹쳐지게 되므로 종래 셀 청소 방식과는 달리 청소를 수행함에 있어 셀과 셀 사이에서 청소영역이 누락되는 것을 최소화할 수 있다.That is, by driving a circular cleaning area including a rectangular cell, the cell and the cell due to the error generated between the travel distance and the movement position and the actual travel distance and position calculated from the signal detected by the sensor in the conventional cell cleaning method The circular cleaning area including the cell overlaps with each other even when a space is generated therebetween, so that the cleaning area may be minimized between the cell and the cell when performing cleaning unlike the conventional cell cleaning method.
본 발명은 첨부된 도면을 참조하여 바람직한 실시예를 중심으로 기술되었지만 당업자라면 이러한 기재로부터 본 발명의 범주를 벗어남이 없이 많은 다양하고 자명한 변형이 가능하다는 것은 명백하다. 따라서 본 발명의 범주는 이러한 많은 변형예들을 포함하도록 기술된 특허청구범위에 의해서 해석되어져야 한다.Although the present invention has been described with reference to the accompanying drawings, it will be apparent to those skilled in the art that many different and obvious modifications are possible without departing from the scope of the invention from this description. Therefore, the scope of the invention should be construed by the claims described to include many such variations.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050034147A KR100635829B1 (en) | 2005-04-25 | 2005-04-25 | Cleaning area driving method of robot cleaner |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050034147A KR100635829B1 (en) | 2005-04-25 | 2005-04-25 | Cleaning area driving method of robot cleaner |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100635829B1 true KR100635829B1 (en) | 2006-10-19 |
Family
ID=37621442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050034147A KR100635829B1 (en) | 2005-04-25 | 2005-04-25 | Cleaning area driving method of robot cleaner |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100635829B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019114153A (en) * | 2017-12-26 | 2019-07-11 | アマノ株式会社 | Operation device, information generating method, program and autonomous travel work device |
-
2005
- 2005-04-25 KR KR1020050034147A patent/KR100635829B1/en not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019114153A (en) * | 2017-12-26 | 2019-07-11 | アマノ株式会社 | Operation device, information generating method, program and autonomous travel work device |
JP7100450B2 (en) | 2017-12-26 | 2022-07-13 | アマノ株式会社 | Operation device, information creation method, program and autonomous driving work device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4763359B2 (en) | Mobile robot object position recognition apparatus and method | |
KR101566207B1 (en) | Robot cleaner and control method thereof | |
US9844876B2 (en) | Robot cleaner and control method thereof | |
JP3674481B2 (en) | Self-propelled vacuum cleaner | |
JP2008198191A (en) | Robot cleaner using edge detection and its control method | |
JP2007213236A (en) | Method for planning route of autonomously traveling robot and autonomously traveling robot | |
KR20080090925A (en) | Robot cleaner and control method thereof | |
JP2005224265A (en) | Self-traveling vacuum cleaner | |
JP2005135400A (en) | Self-propelled working robot | |
JP2016051341A (en) | Autonomous traveling body and vacuum cleaner | |
KR101938703B1 (en) | Robot cleaner and control method for the same | |
KR20080098842A (en) | Cleaning robot unit and cleaning method using thereof | |
KR940007727B1 (en) | Automatic driver of vacuum cleaner | |
KR101412582B1 (en) | Robot cleaner and controlling method of the same | |
KR100728226B1 (en) | The Driving Control Apparatus for Moving Robot and Method Thereof | |
KR20090018336A (en) | Robot cleaner and control method of the same of | |
KR100963781B1 (en) | Controlling method of robot cleaner | |
KR100635829B1 (en) | Cleaning area driving method of robot cleaner | |
JP4408872B2 (en) | Self-propelled device and control method thereof | |
KR100985972B1 (en) | Controlling method of robot cleaner | |
KR101484941B1 (en) | Robot cleaner and control method thereof | |
KR100963782B1 (en) | Controlling method of robot cleaner | |
KR100863248B1 (en) | Robot cleaner and control method of the same of | |
JP2005346477A (en) | Autonomous travelling body | |
KR100792834B1 (en) | Moving Robot and driving method for the moving robot |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120926 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20130924 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20140924 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20150924 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20160923 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |