KR102500525B1 - Moving robot - Google Patents

Moving robot Download PDF

Info

Publication number
KR102500525B1
KR102500525B1 KR1020210092294A KR20210092294A KR102500525B1 KR 102500525 B1 KR102500525 B1 KR 102500525B1 KR 1020210092294 A KR1020210092294 A KR 1020210092294A KR 20210092294 A KR20210092294 A KR 20210092294A KR 102500525 B1 KR102500525 B1 KR 102500525B1
Authority
KR
South Korea
Prior art keywords
dust contamination
mobile robot
count
sensor
contamination
Prior art date
Application number
KR1020210092294A
Other languages
Korean (ko)
Other versions
KR20230011699A (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 KR1020210092294A priority Critical patent/KR102500525B1/en
Publication of KR20230011699A publication Critical patent/KR20230011699A/en
Application granted granted Critical
Publication of KR102500525B1 publication Critical patent/KR102500525B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/0058Means for cleaning manipulators, e.g. dust removing means
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2805Parameters or conditions being sensed
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2836Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means characterised by the parts which are controlled
    • A47L9/2852Elements for displacement of the vacuum cleaner or the accessories therefor, e.g. wheels, casters or nozzles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • B25J11/0085Cleaning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • B25J5/007Manipulators mounted on wheels or on carriages mounted on wheels
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2201/00Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
    • A47L2201/04Automatic control of the travelling movement; Automatic obstacle detection
    • G05D2201/0203

Landscapes

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

Abstract

본 발명의 일 측면에 따른 이동 로봇은, 본체를 이동시키는 주행부, 상기 본체의 하측에 배치되고, 광을 출력하는 발광부와 반사광을 수신하는 수광부, 상기 발광부 및 상기 수광부에 이격배치되는 센서창을 포함하는 클리프센서, 및, 상기 클리프센서에서 획득되는 데이터가 설정된 먼지오염조건을 만족하면, 먼지오염 카운트를 1씩 증가시키고, 상기 먼지오염 카운트가 문턱값보다 크면, 상기 이동을 정지하도록 제어하는 제어부를 포함할 수 있다. A mobile robot according to an aspect of the present invention includes a traveling unit for moving a main body, a light emitting unit disposed below the main body, and a light emitting unit for outputting light and a light receiving unit for receiving reflected light, and a sensor disposed spaced apart from the light emitting unit and the light receiving unit. A cliff sensor including a window, and, if the data obtained from the cliff sensor satisfies a set dust contamination condition, increase the dust contamination count by 1, and if the dust contamination count is greater than a threshold value, control to stop the movement It may include a control unit to.

Description

이동 로봇{Moving robot}Moving robot {Moving robot}

본 발명은 이동 로봇 및 그 제어 방법에 관한 것으로서, 더욱 상세하게는 이동 로봇이 낭떠러지를 인식하고 안전하게 주행할 수 있는 수 있는 이동 로봇 및 그 제어 방법에 관한 것이다.The present invention relates to a mobile robot and a control method thereof, and more particularly, to a mobile robot capable of recognizing a precipice and driving safely, and a control method thereof.

로봇은 산업용으로 개발되어 공장 자동화의 일 부분을 담당하여 왔다. 최근에는 로봇을 응용한 분야가 더욱 확대되어, 의료용 로봇, 우주 항공 로봇 등이 개발되고, 일반 가정에서 사용할 수 있는 가정용 로봇도 만들어지고 있다. 이러한 로봇 중에서 자력으로 주행이 가능한 것을 이동 로봇이라고 한다. Robots have been developed for industrial use and have been in charge of a part of factory automation. In recent years, the field of application of robots has been further expanded, and medical robots, space robots, etc. have been developed, and household robots that can be used at home are also being made. Among these robots, those capable of driving on their own are called mobile robots.

가정에서 사용되는 이동 로봇의 대표적인 예는 로봇 청소기로, 로봇 청소기는 일정 영역을 스스로 주행하면서, 주변의 먼지 또는 이물질을 흡입함으로써, 해당 영역을 청소하는 기기이다. A representative example of a mobile robot used in a home is a robot cleaner. The robot cleaner is a device that cleans a corresponding area by sucking in dust or foreign substances while traveling in a certain area by itself.

이동 로봇은, 주행하면서 다양한 환경을 감지하고 그에 맞는 대응을 하기위해 여러 센서들을 구비하고 있다. 센서들 중 클리프(cliff)센서는 낭떠러지를 감지, 회피하여, 이동 로봇의 낙하를 방지하는 기능을 한다. The mobile robot is equipped with various sensors to detect various environments while driving and to respond appropriately thereto. Among the sensors, a cliff sensor detects and avoids a cliff to prevent the mobile robot from falling.

그러나 클리프센서의 센서창이 오염되면 낭떠러지를 감지하기 어려워진다. 특히, 로봇청소기는 특성상 먼지를 쓸어 흡입하는 과정에서 먼지가 발생하게 되기 때문에 센서창이 오염되는 경우가 잦다. 먼지에 의해 센서창이 오염되게 되면 낭떠러지를 감지 못하고 로봇청소기가 낙하하는 경우가 발생할 수 있다. However, if the sensor window of the cliff sensor is contaminated, it becomes difficult to detect the cliff. In particular, due to the nature of the robot cleaner, dust is generated in the process of sweeping and inhaling dust, so the sensor window is often contaminated. If the sensor window is contaminated by dust, a cliff may not be detected and the robot cleaner may fall.

따라서, 로봇청소기 하단부 낭떠러지 감지를 위한 클리프센서가 오염되었을때, 이를 감지하고, 위험한 환경에서 주행하지 않도록 할 수 있는 방안이 필요하다. Therefore, there is a need for a method capable of detecting when the cliff sensor for detecting a cliff at the lower end of the robot cleaner is contaminated and preventing the robot cleaner from driving in a dangerous environment.

선행 문헌(미국 등록특허공보 9446521)은, 클리프센서 발신부와 수신부가 기구물로 분리되어 있고, 클리프센서 발신부에서 쏜 빛이 수신부에 들어오지 않으면 낭떠러지로 판단하여 회피하고 있다. In the prior literature (US Patent Publication No. 9446521), the cliff sensor transmitter and receiver are separated from the instrument, and if the light emitted from the cliff sensor transmitter does not enter the receiver, it is judged as a cliff and avoided.

한편, 수신부와 발신부가 기구물에 의해 분리되지 않고, 수신부와 발신부의 전방에 하나의 센서창이 배치된 클리프센서 모듈은, 센서창이 오염되었을때, 발신부에서 쏜 빛이 센서창 내부에서 반사되어 수신부에서 수신되기 때문에 선행문헌의 알고리즘으로는 센서 오염을 감지할 수 없다. On the other hand, in the Cliff sensor module, in which the receiver and transmitter are not separated by equipment and one sensor window is disposed in front of the receiver and transmitter, when the sensor window is contaminated, the light emitted from the transmitter is reflected inside the sensor window and Since it is received, sensor contamination cannot be detected by the algorithm of the prior art literature.

본 발명의 목적은 이동 로봇이 구비한 클리프센서의 센서창 오염을 감지하는 기술을 제공함에 있다.An object of the present invention is to provide a technique for detecting contamination of a sensor window of a cliff sensor provided in a mobile robot.

본 발명의 목적은 센서창이 오염된 상태에서 낭떠러지 진입으로 인한 낙하를 방지할 수 있는 이동 로봇을 제공함에 있다.An object of the present invention is to provide a mobile robot capable of preventing a fall due to entry into a cliff when a sensor window is contaminated.

본 발명의 목적은 센서창 오염 오감지로 인한 오동작을 방지할 수 있는 이동 로봇을 제공함에 있다.An object of the present invention is to provide a mobile robot capable of preventing malfunction due to erroneous detection of contamination of a sensor window.

본 발명의 목적은 불필요한 회피주행을 방지하여 효율적인 이동 로봇을 제공함에 있다.An object of the present invention is to provide an efficient mobile robot by preventing unnecessary avoidance driving.

상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇은, 센서창 오염으로 인한 반사광이 수신되는 경우에, 오염조건 만족횟수를 카운팅(counting)하고 일정수치에 도달하면 센서창 오염으로 판별함으로써, 센서창 오염을 정확하게 감지할 수 있다.In order to achieve the above or other object, the mobile robot according to one aspect of the present invention counts the number of times of satisfaction of the contamination condition when reflected light due to contamination of the sensor window is received, and when a certain value is reached, the contamination of the sensor window occurs. By discriminating, contamination of the sensor window can be accurately detected.

상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇은, 센서창 오염으로 인한 반사광이 수신되는 경우에도, 클리프센서의 측정거리와 광량값을 사용하여 센서창 오염을 감지할 수 있다.In order to achieve the above or other objects, the mobile robot according to one aspect of the present invention can detect contamination of the sensor window using the measurement distance and light intensity value of the cliff sensor even when reflected light due to contamination of the sensor window is received. .

상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇은, 본체를 이동시키는 주행부, 상기 본체의 하측에 배치되고, 광을 출력하는 발광부와 반사광을 수신하는 수광부, 상기 발광부 및 상기 수광부에 이격배치되는 센서창을 포함하는 클리프센서, 및, 상기 클리프센서에서 획득되는 데이터가 설정된 먼지오염조건을 만족하면, 먼지오염 카운트를 1씩 증가시키고, 상기 먼지오염 카운트가 문턱값보다 크면, 상기 이동을 정지하도록 제어하는 제어부를 포함할 수 있다. In order to achieve the above or other objects, a mobile robot according to an aspect of the present invention includes a driving unit for moving a main body, a light emitting unit disposed below the main body and outputting light, a light receiving unit for receiving reflected light, and the light emitting unit. and a cliff sensor including a sensor window spaced apart from the light receiving unit, and when the data obtained from the cliff sensor satisfies a set dust contamination condition, the dust contamination count is increased by 1, and the dust contamination count is greater than the threshold value. If it is large, a control unit controlling to stop the movement may be included.

또한, 상기 먼지오염 카운트가 문턱값보다 크면, 먼지오염에러를 발생시킬 수 있다.In addition, if the dust contamination count is greater than the threshold value, a dust contamination error may be generated.

상기 먼지오염조건은, 상기 클리프센서의 측정거리값과 수신 광량값을 기준으로 설정되고, 상기 제어부는, 측정거리값조건과 광량값조건이 모두 만족되는 경우에 먼지오염 카운트를 1 증가시킬 수 있다.The dust contamination condition is set based on the measurement distance value of the cliff sensor and the received light intensity value, and the control unit may increase the dust contamination count by 1 when both the measurement distance value condition and the light intensity value condition are satisfied. .

상기 제어부는, 상기 측정거리값조건과 상기 광량값조건이 모두 만족되지 못하는 경우에 상기 먼지오염 카운트를 1 감소시킬 수 있다.The control unit may decrease the dust contamination count by 1 when both the measurement distance value condition and the light intensity value condition are not satisfied.

상기 먼지오염조건이 만족되면, 현재 주행방향으로 이동하지 않도록 방향 전환하여 이동하는 회피 주행할 수 있다.When the dust contamination condition is satisfied, avoidance driving may be performed in which the driver changes direction so as not to move in the current driving direction.

또한, 최근 N개의 측정거리값 중 최대값이 상기 먼지오염조건을 만족할 때만 상기 회피 주행을 수행할 수 있다.In addition, the avoidance driving may be performed only when the maximum value among the latest N measured distance values satisfies the dust contamination condition.

상기 제어부는, 제1 시간 주기를 경과할 때까지, 시간 경과에 따라, 시간 카운트를 1씩 증가시킬 수 있다.The controller may increase the time count by 1 as time elapses until the first time period elapses.

상기 제어부는, 상기 제1 시간 주기를 경과하면, 상기 먼지오염 카운트 및 시간 카운트를 초기화할 수 있다.The control unit may initialize the dust contamination count and the time count when the first time period elapses.

상기 제어부는, 상기 제1 시간 주기 경과 전에 상기 먼지오염 카운트가 제1 문턱값보다 크면 먼지오염 에러를 발생시킬 수 있다.The controller may generate a dust contamination error when the dust contamination count is greater than a first threshold value before the first time period elapses.

상기 먼지오염 카운트는, 제2 시간 주기 동안에 상기 먼지오염조건이 복수회 만족되어도, 상기 제2 시간 주기 경과 후 1만 증가될 수 있다.The dust contamination count may increase by only 1 after the lapse of the second time period even if the dust contamination condition is satisfied a plurality of times during the second time period.

상기 제어부는, 상기 제1 시간 주기 경과 전에 상기 먼지오염 카운트가 제2 문턱값보다 크면 먼지오염 에러를 발생시킬 수 있다.The controller may generate a dust contamination error when the dust contamination count is greater than a second threshold value before the first time period elapses.

상기 제어부는, 상기 먼지오염조건이 만족되면, 오염감지 플래그(flag)를 트루(true)로 설정할 수 있다.The control unit may set a contamination detection flag to true when the dust contamination condition is satisfied.

상기 제어부는, 상기 제2 시간 주기가 경과되고, 상기 오염감지 플래그(flag)가 트루(true)이면, 상기 먼지오염 카운트를 1 증가시킬 수 있다.The control unit may increase the dust contamination count by 1 when the second time period elapses and the contamination detection flag is true.

상기 제어부는, 상기 먼지오염에러가 발생하면, 상기 오염감지 플래그(flag)를 폴스(false)로 설정할 수 있다.The control unit may set the contamination detection flag to false when the dust contamination error occurs.

소정 시간 주기 동안에 상기 먼지오염 카운트가 문턱값보다 크면, 상기 이동을 정지하고, 상기 문턱값은, 상기 먼지오염 카운트가 증가하는 방식에 따라 다르게 설정될 수 있다. If the dust contamination count is greater than a threshold value during a predetermined time period, the movement is stopped, and the threshold value may be set differently according to an increasing method of the dust contamination count.

소정 시간 주기 동안에 상기 먼지오염 카운트가 문턱값보다 크면, 상기 이동을 정지하고, 상기 문턱값은, 상기 소정 시간 주기에 따라 다르게 설정될 수 있다.If the dust contamination count is greater than a threshold value during a predetermined time period, the movement may be stopped, and the threshold value may be set differently according to the predetermined time period.

상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇은, 본체를 이동시키는 주행부, 상기 본체의 하측에 배치되고, 광을 출력하는 발광부와 반사광을 수신하는 수광부, 상기 발광부 및 상기 수광부에 이격배치되는 센서창을 포함하는 클리프센서, 및 상기 클리프센서의 측정거리값과 수신 광량값이 설정된 조건을 만족하면, 먼지오염 카운트를 1씩 증가시키고, 상기 먼지오염 카운트가 문턱값보다 크면, 상기 이동을 정지하도록 제어하는 제어부를 포함할 수 있다.In order to achieve the above or other objects, a mobile robot according to an aspect of the present invention includes a driving unit for moving a main body, a light emitting unit disposed below the main body and outputting light, a light receiving unit for receiving reflected light, and the light emitting unit. and a cliff sensor including a sensor window spaced apart from the light receiving unit, and when the measured distance value and the received light amount value of the cliff sensor satisfy set conditions, the dust contamination count is increased by one, and the dust contamination count is a threshold value If it is larger than that, it may include a control unit that controls to stop the movement.

본 발명의 실시예들 중 적어도 하나에 의하면, 센서창 오염을 정확하게 감지할 수 있다.According to at least one of the embodiments of the present invention, contamination of the sensor window can be accurately detected.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 센서창이 오염된 상태에서 낭떠러지 진입으로 인한 낙하를 방지할 수 있다.In addition, according to at least one of the embodiments of the present invention, it is possible to prevent a fall due to entering a cliff in a state in which the sensor window is contaminated.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 센서창 오염 오감지로 인한 오동작을 방지할 수 있다.In addition, according to at least one of the embodiments of the present invention, malfunction due to erroneous detection of contamination of the sensor window can be prevented.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 불필요한 회피주행을 방지하여 효율적인 주행이 가능하다.In addition, according to at least one of the embodiments of the present invention, efficient driving is possible by preventing unnecessary avoidance driving.

한편, 그 외의 다양한 효과는 후술될 본 발명의 실시예에 따른 상세한 설명에서 직접적 또는 암시적으로 개시될 것이다.Meanwhile, other various effects will be disclosed directly or implicitly in detailed descriptions according to embodiments of the present invention to be described later.

도 1은 본 발명의 일 실시예에 따른 이동 로봇 및 이동 로봇을 충전시키는 충전대를 도시한 사시도이다.
도 2는 도 1에 도시된 이동 로봇의 상면부를 도시한 도이다.
도 3은 도 1에 도시된 이동 로봇의 정면부를 도시한 도이다.
도 4는 도 1에 도시된 이동 로봇의 저면부를 도시한 도이다.
도 5는 본 발명의 실시예에 따른 이동 로봇의 주요 구성들 간의 제어관계를 도시한 블록도이다.
도 6은 본 발명의 일 실시예에 따른 이동 로봇의 클리프센서에 관한 설명에 참조되는 도면이다.
도 7은 클리프센서의 센서창 오염에 관한 설명에 참조되는 도면이다.
도 8은 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이다.
도 9 내지 도 11은 본 발명의 일 실시예에 따른 센서창 오염에 대한 설명에 참조되는 도면이다.
도 12는 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이다.
도 13은 과다한 회피 주행에 관한 설명에 참조되는 도면이다.
도 14는 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이다.
1 is a perspective view showing a mobile robot and a charging stand for charging the mobile robot according to an embodiment of the present invention.
FIG. 2 is a view showing an upper surface of the mobile robot shown in FIG. 1;
FIG. 3 is a view showing the front of the mobile robot shown in FIG. 1;
FIG. 4 is a diagram illustrating a bottom portion of the mobile robot shown in FIG. 1;
5 is a block diagram showing a control relationship between major components of a mobile robot according to an embodiment of the present invention.
6 is a view referenced for description of a cliff sensor of a mobile robot according to an embodiment of the present invention.
7 is a view referenced for description of contamination of the sensor window of the cliff sensor.
8 is a flowchart illustrating a control method of a mobile robot according to an embodiment of the present invention.
9 to 11 are diagrams referenced for description of sensor window contamination according to an embodiment of the present invention.
12 is a flowchart illustrating a control method of a mobile robot according to an embodiment of the present invention.
13 is a diagram referenced for description of excessive avoidance driving.
14 is a flowchart illustrating a control method of a mobile robot according to an embodiment of the present invention.

이하에서는 첨부한 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. 그러나 본 발명이 이러한 실시예에 한정되는 것은 아니며 다양한 형태로 변형될 수 있음은 물론이다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, it goes without saying that the present invention is not limited to these embodiments and can be modified in various forms.

한편, 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 단순히 본 명세서 작성의 용이함만이 고려되어 부여되는 것으로서, 그 자체로 특별히 중요한 의미 또는 역할을 부여하는 것은 아니다. 따라서, 상기 "모듈" 및 "부"는 서로 혼용되어 사용될 수도 있다.On the other hand, the suffixes "module" and "unit" for components used in the following description are simply given in consideration of the ease of preparation of this specification, and do not themselves give a particularly important meaning or role. Accordingly, the “module” and “unit” may be used interchangeably.

또한, 본 명세서에서, 다양한 요소들을 설명하기 위해 제1, 제2 등의 용어가 이용될 수 있으나, 이러한 요소들은 이러한 용어들에 의해 제한되지 아니한다. 이러한 용어들은 한 요소를 다른 요소로부터 구별하기 위해서만 이용된다.Also, in this specification, terms such as first and second may be used to describe various elements, but these elements are not limited by these terms. These terms are only used to distinguish one element from another.

본 발명의 일 실시예에 따른 이동 로봇(100)은 바퀴 등을 이용하여 스스로 이동이 가능한 로봇을 의미하고, 가정 도우미 로봇 및 로봇 청소기 등이 될 수 있다. 이하에서는, 도면들을 참조하여, 이동 로봇 중 청소 기능을 가지는 로봇 청소기를 예로 들어 설명하나, 본 발명은 이에 한정되지 않는다.The mobile robot 100 according to an embodiment of the present invention refers to a robot capable of moving by itself using wheels, etc., and may be a home helper robot or a robot vacuum cleaner. Hereinafter, a robot cleaner having a cleaning function among mobile robots will be described as an example with reference to the drawings, but the present invention is not limited thereto.

도 1은 본 발명의 일 실시예에 따른 이동 로봇 및 이동 로봇을 충전시키는 충전대를 도시한 사시도이다.1 is a perspective view showing a mobile robot and a charging stand for charging the mobile robot according to an embodiment of the present invention.

도 2는 도 1에 도시된 이동 로봇의 상면부를 도시한 도이고, 도 3은 도 1에 도시된 이동 로봇의 정면부를 도시한 도이며, 도 4는 도 1에 도시된 이동 로봇의 저면부를 도시한 도이다.FIG. 2 is a view showing the top of the mobile robot shown in FIG. 1, FIG. 3 is a view showing the front of the mobile robot shown in FIG. 1, and FIG. 4 shows the bottom of the mobile robot shown in FIG. it is one degree

도 5는 본 발명의 실시예에 따른 이동 로봇의 주요 구성들 간의 제어관계를 도시한 블록도이다.5 is a block diagram showing a control relationship between major components of a mobile robot according to an embodiment of the present invention.

도 1 내지 도 5를 참조하면, 이동 로봇(100)은 본체(110)를 이동시키는 주행부(160)를 포함한다. 주행부(160)는 본체(110)를 이동시키는 적어도 하나의 구동 바퀴(136)를 포함한다. 주행부(160)는 구동 바퀴(136)에 연결되어 구동 바퀴를 회전시키는 구동 모터(미도시)를 포함한다. 예를 들어, 구동 바퀴(136)는 본체(110)의 좌, 우 측에 각각 구비될 수 있으며, 이하, 각각 좌륜(136(L))과 우륜(136(R))이라고 한다.Referring to FIGS. 1 to 5 , the mobile robot 100 includes a driving unit 160 that moves the main body 110 . The driving part 160 includes at least one driving wheel 136 for moving the main body 110 . The driving unit 160 includes a driving motor (not shown) connected to the driving wheel 136 to rotate the driving wheel. For example, the driving wheels 136 may be provided on the left and right sides of the main body 110, respectively, and are hereinafter referred to as a left wheel 136(L) and a right wheel 136(R), respectively.

좌륜(136(L))과 우륜(136(R))은 하나의 구동 모터에 의해 구동될 수도 있으나, 필요에 따라 좌륜(136(L))을 구동시키는 좌륜 구동 모터와 우륜(136(R))을 구동시키는 우륜 구동 모터가 각각 구비될 수도 있다. 좌륜(136(L))과 우륜(136(R))의 회전 속도에 차이를 두어 좌측 또는 우측으로 본체(110)의 주행방향을 전환할 수 있다.The left wheel 136(L) and the right wheel 136(R) may be driven by a single drive motor, but the left wheel drive motor and the right wheel 136(R) driving the left wheel 136(L) as needed ) may be provided respectively with a right wheel drive motor for driving. The running direction of the main body 110 can be switched to the left or right by making a difference between the rotation speeds of the left wheel 136 (L) and the right wheel 136 (R).

이동 로봇(100)은 소정의 서비스를 제공하기 위한 서비스부(150)를 포함한다. 도 1 내지 도 5에서는 서비스부(150)가 청소 작업을 수행하는 것으로 예를 들어 본 발명을 설명하나, 본 발명은 이에 한정되지 않는다. 예를 들어, 서비스부(150)는 청소(비질, 흡입청소, 걸레질 등), 설거지, 요리, 빨래, 쓰레기 처리 등의 가사 서비스를 사용자에게 제공하도록 구비될 수 있다. 또 다른 예로, 서비스부(150)는 주변의 외부 침입자나 위험 상황 등을 감지하는 보안 기능을 수행할 수 있다. The mobile robot 100 includes a service unit 150 for providing predetermined services. In FIGS. 1 to 5 , the present invention is described as an example in which the service unit 150 performs cleaning work, but the present invention is not limited thereto. For example, the service unit 150 may be provided to provide users with housekeeping services such as cleaning (sweeping, suction cleaning, mopping, etc.), dishwashing, cooking, laundry, garbage disposal, and the like. As another example, the service unit 150 may perform a security function of detecting a surrounding external intruder or dangerous situation.

이동 로봇(100)은 주행 구역을 이동하며 서비스부(150)에 의해 바닥을 청소할 수 있다. 서비스부(150)는, 이물질을 흡입하는 흡입 장치, 비질을 수행하는 브러시(184, 185), 흡입장치나 브러시에 의해 수거된 이물질을 저장하는 먼지통(미도시) 및/또는 걸레질을 수행하는 걸레부(미도시) 등을 포함할 수 있다.The mobile robot 100 may clean the floor by the service unit 150 while moving in the driving area. The service unit 150 includes a suction device for sucking foreign substances, brushes 184 and 185 for sweeping, a dust bin (not shown) for storing foreign substances collected by the suction device or brush, and/or a mop for wiping. A part (not shown) may be included.

본체(110)의 저면부에는 공기의 흡입이 이루어지는 흡입구(150h)가 형성될 수 있으며, 본체(110) 내에는 흡입구(150h)를 통해 공기가 흡입될 수 있도록 흡입력을 제공하는 흡입장치(미도시)와, 흡입구(150h)를 통해 공기와 함께 흡입된 먼지를 집진하는 먼지통(미도시)이 구비될 수 있다.A suction port 150h through which air is sucked may be formed on the bottom of the main body 110, and a suction device (not shown) provides a suction force so that air can be sucked through the suction hole 150h in the main body 110. ), and a dust bin (not shown) for collecting dust sucked together with air through the suction port 150h may be provided.

본체(110)는 이동 로봇(100)을 구성하는 각종 부품들이 수용되는 공간을 형성하는 케이스(111)를 포함할 수 있다. 케이스(111)에는 상기 먼지통의 삽입과 탈거를 위한 개구부가 형성될 수 있고, 개구부를 여닫는 먼지통 커버(112)가 케이스(111)에 대해 회전 가능하게 구비될 수 있다.The main body 110 may include a case 111 forming a space in which various parts constituting the mobile robot 100 are accommodated. An opening for inserting and removing the dust bin may be formed in the case 111 , and a dust bin cover 112 that opens and closes the opening may be rotatably provided with respect to the case 111 .

흡입구(150h)를 통해 노출되는 솔들을 갖는 롤형의 메인 브러시(154)와, 본체(110)의 저면부 전방측에 위치하며, 방사상으로 연장된 다수개의 날개로 이루어진 솔을 갖는 보조 브러시(155)가 구비될 수 있다. 이들 브러시(154, 155)들의 회전에 의해 주행 구역 내 바닥으로부터 먼지들이 분리되며, 이렇게 바닥으로부터 분리된 먼지들은 흡입구(150h)를 통해 흡입되어 먼지통에 모인다.A roll-type main brush 154 having brushes exposed through the suction port 150h, and an auxiliary brush 155 located on the front side of the bottom surface of the main body 110 and having a brush made of a plurality of wings extending radially may be provided. The rotation of the brushes 154 and 155 separates dust from the floor in the driving area, and the dust separated from the floor is sucked through the suction port 150h and collected in a dust bin.

배터리(138)는 구동 모터뿐만 아니라, 이동 로봇(100)의 작동 전반에 필요한 전원을 공급한다. 배터리(138)가 방전될 시, 이동 로봇(100)은 충전을 위해 충전대(200)로 복귀하는 주행을 실시할 수 있으며, 이러한 복귀 주행 중, 이동 로봇(100)은 스스로 충전대(200)의 위치를 탐지할 수 있다.The battery 138 supplies power necessary for the overall operation of the mobile robot 100 as well as the driving motor. When the battery 138 is discharged, the mobile robot 100 may return to the charging station 200 for charging, and during this return driving, the mobile robot 100 moves to the charging station 200 by itself can detect

충전대(200)는 소정의 복귀 신호를 송출하는 신호 송출부(미도시)를 포함할 수 있다. 복귀 신호는 초음파 신호 또는 적외선 신호일 수 있으나, 반드시 이에 한정되는 것은 아니다.The charging station 200 may include a signal transmission unit (not shown) that transmits a predetermined return signal. The return signal may be an ultrasonic signal or an infrared signal, but is not necessarily limited thereto.

이동 로봇(100)은 복귀 신호를 수신하는 신호 감지부(미도시)를 포함할 수 있다. 충전대(200)는 신호 송출부를 통해 적외선 신호를 송출하고, 신호 감지부는 적외선 신호를 감지하는 적외선 센서를 포함할 수 있다. 이동 로봇(100)은 충전대(200)로부터 송출된 적외선 신호에 따라 충전대(200)의 위치로 이동하여 충전대(200)와 도킹(docking)한다. 이러한 도킹에 의해 이동 로봇(100)의 충전 단자(133)와 충전대(200)의 충전 단자(210) 간에 충전에 이루어진다.The mobile robot 100 may include a signal detector (not shown) for receiving a return signal. The charging station 200 may transmit an infrared signal through a signal transmission unit, and the signal detection unit may include an infrared sensor for detecting the infrared signal. The mobile robot 100 moves to the position of the charging station 200 according to the infrared signal transmitted from the charging station 200 and docks with the charging station 200 . Due to this docking, charging is performed between the charging terminal 133 of the mobile robot 100 and the charging terminal 210 of the charging base 200.

이동 로봇(100)은 이동 로봇(100)의 내/외부의 정보를 감지하는 센싱부(170)를 포함할 수 있다.The mobile robot 100 may include a sensing unit 170 that senses internal/external information of the mobile robot 100 .

예를 들어, 센싱부(170)는 주행 구역에 대한 각종 정보를 감지하는 하나 이상의 센서(171, 175), 주행 구역에 대한 영상 정보를 획득하는 영상획득부(120)를 포함할 수 있다. 실시예에 따라서, 영상획득부(120)는 센싱부(170) 외부에 별도로 구비될 수 있다.For example, the sensing unit 170 may include one or more sensors 171 and 175 to detect various types of information about the driving area and an image acquisition unit 120 to acquire image information about the driving area. Depending on the embodiment, the image acquisition unit 120 may be provided separately outside the sensing unit 170 .

이동 로봇(100)은 센싱부(170)가 감지한 정보를 통해, 주행 구역을 맵핑(Mapping)할 수 있다. 예를 들어, 이동 로봇(100)은 영상획득부(120)가 획득한 주행 구역의 천장 영상에 기초하여 비전(vision) 기반의 위치 인식 및 맵 생성을 수행할 수 있다. 또한, 이동 로봇(100)은 레이저를 이용하는 라이다(Light Detection And Ranging: LiDAR) 센서(175) 기반의 위치 인식 및 맵 생성을 수행할 수 있다. The mobile robot 100 may map a driving area through information detected by the sensing unit 170 . For example, the mobile robot 100 may perform vision-based location recognition and map creation based on the ceiling image of the driving area acquired by the image acquisition unit 120 . In addition, the mobile robot 100 may perform location recognition and map generation based on a LiDAR (Light Detection And Ranging) sensor 175 using a laser.

더욱 바람직하게는 본 발명에 따른 이동 로봇(100)은 카메라를 이용하는 비전 기반의 위치 인식과 레이저를 이용하는 라이다 기반의 위치 인식 기술을 효과적으로 융합하여 조도 변화, 물품 위치 변경 등 환경 변화에 강인한 위치 인식 및 맵 생성을 수행할 수 있다. More preferably, the mobile robot 100 according to the present invention effectively combines vision-based position recognition using a camera and lidar-based position recognition technology using a laser to recognize a position that is robust against environmental changes such as changes in illumination and position of an object. and map creation.

한편, 영상획득부(120)는 주행 구역을 촬영하는 것으로, 본체(110) 외부의 영상을 획득하는 하나 이상의 카메라 센서를 포함할 수 있다. Meanwhile, the image acquisition unit 120 captures a driving area and may include one or more camera sensors that acquire an image of the outside of the main body 110 .

또한, 영상획득부(120)는 카메라 모듈을 포함할 수 있다. 상기 카메라 모듈은 디지털 카메라를 포함할 수 있다. 디지털 카메라는 적어도 하나의 광학렌즈와, 광학렌즈를 통과한 광에 의해 상이 맺히는 다수개의 광다이오드(photodiode, 예를 들어, pixel)를 포함하여 구성된 이미지센서(예를 들어, CMOS image sensor)와, 광다이오드들로부터 출력된 신호를 바탕으로 영상을 구성하는 디지털 신호 처리기(DSP: Digital Signal Processor)를 포함할 수 있다. 디지털 신호 처리기는 정지영상은 물론이고, 정지영상으로 구성된 프레임들로 이루어진 동영상을 생성하는 것도 가능하다.Also, the image acquisition unit 120 may include a camera module. The camera module may include a digital camera. A digital camera includes an image sensor (eg, CMOS image sensor) including at least one optical lens and a plurality of photodiodes (eg, pixels) forming images by light passing through the optical lens; A digital signal processor (DSP) for composing an image based on signals output from the photodiodes may be included. The digital signal processor can create not only still images, but also moving images composed of frames composed of still images.

본 실시예에서 영상획득부(120)는, 본체(110) 전방의 영상을 획득하도록 구비되는 전면 카메라 센서(120a)와 본체(110)의 상면부에 구비되어, 주행 구역 내의 천장에 대한 영상을 획득하는 상부 카메라 센서(120b)를 구비하나, 영상획득부(120)의 위치와 촬영범위가 반드시 이에 한정되어야 하는 것은 아니다. In this embodiment, the image acquisition unit 120 is provided with a front camera sensor 120a provided to acquire an image of the front of the main body 110 and an upper surface of the main body 110 to obtain an image of the ceiling in the driving area. An upper camera sensor 120b is provided, but the location and shooting range of the image acquisition unit 120 are not necessarily limited thereto.

예를 들어, 이동 로봇(100)은 주행 구역 내의 천장에 대한 영상을 획득하는 상부 카메라 센서(120b)만 구비하여, 비전(vision) 기반의 위치 인식 및 주행을 수행할 수 있다.For example, the mobile robot 100 may include only an upper camera sensor 120b that acquires an image of a ceiling in a driving area, and may perform vision-based location recognition and driving.

또는, 본 발명의 일 실시예에 따른 이동 로봇(100)의 영상획득부(120)는, 본체(110)의 일면에 대하여 경사지게 배치되어 전방과 상방을 함께 촬영하도록 구성된 카메라 센서(미도시)를 포함할 수 있다. 즉, 하나의 카메라 센서로 전방과 상방을 함께 촬영할 수 있다. 이 경우에 제어부(140)는 카메라가 촬영하여 획득한 영상에서 전방 영상과 상방 영상을 화각을 기준으로 분리할 수 있다. 분리된 전방 영상은 전면 카메라 센서(120a)에서 획득된 영상과 같이 비전(vision) 기반의 사물 인식에 사용될 수 있다. 또한, 분리된 상방 영상은 상부 카메라 센서(120b)에서 획득된 영상과 같이 비전(vision) 기반의 위치 인식 및 주행에 사용될 수 있다.Alternatively, the image acquisition unit 120 of the mobile robot 100 according to an embodiment of the present invention includes a camera sensor (not shown) disposed obliquely with respect to one surface of the main body 110 and configured to capture both the front and the upper directions. can include In other words, it is possible to photograph both the front and the upper direction with a single camera sensor. In this case, the controller 140 may separate a front image and an upper image from the image captured by the camera based on the angle of view. The separated front image may be used for vision-based object recognition like the image acquired by the front camera sensor 120a. In addition, the separated upper image can be used for vision-based location recognition and driving like the image acquired by the upper camera sensor 120b.

본 발명에 따른 이동 로봇(100)은 주변의 이미지를 이미지 기반의 기저장된 정보와 비교하거나 획득되는 이미지들을 비교하여 현재 위치를 인식하는 비전 슬램을 수행할 수 있다.The mobile robot 100 according to the present invention may perform vision slam recognizing a current location by comparing a surrounding image with image-based pre-stored information or by comparing obtained images.

한편, 영상획득부(120)는 전면 카메라 센서(120a) 및/또는 상부 카메라 센서(120b)를 복수개 구비하는 것도 가능하다. 또는 영상획득부(120)는 전방과 상방을 함께 촬영하도록 구성된 카메라 센서(미도시)를 복수개 구비하는 것도 가능하다.Meanwhile, the image acquisition unit 120 may also include a plurality of front camera sensors 120a and/or upper camera sensors 120b. Alternatively, the image acquisition unit 120 may also include a plurality of camera sensors (not shown) configured to photograph both the front and the upper directions.

본 실시예의 경우, 이동 로봇의 일부 부위(ex, 전방, 후방, 저면)에 카메라가 설치되어 있으며, 청소 시에 촬상영상을 지속적으로 획득할 수 있다. 이러한 카메라는 촬영 효율을 위해 각 부위별로 여러 개가 설치될 수도 있다. 카메라에 의해 촬상된 영상은 해당 공간에 존재하는 먼지, 머리카락, 바닥 등과 같은 물질의 종류 인식,청소 여부, 또는 청소 시점을 확인하는데 사용할 수 있다.In the case of this embodiment, a camera is installed in some parts (eg, front, rear, bottom) of the mobile robot, and captured images can be continuously acquired during cleaning. Several such cameras may be installed for each part for shooting efficiency. The image captured by the camera can be used to recognize the type of material such as dust, hair, floor, etc. present in the space, whether to clean, or to confirm the cleaning time.

전면 카메라 센서(120a)는 이동 로봇(100)의 주행 방향 전면에 존재하는 장애물 또는 청소 영역의 상황을 촬영할 수 있다.The front camera sensor 120a may capture a situation of an obstacle or a cleaning area existing in front of the driving direction of the mobile robot 100 .

본 발명의 일 실시예에 따르면, 상기 영상획득부(120)는 본체(110) 주변을 연속적으로 촬영하여 복수의 영상을 획득할 수 있고, 획득된 복수의 영상은 저장부(130)에 저장될 수 있다.According to an embodiment of the present invention, the image acquisition unit 120 may acquire a plurality of images by continuously photographing the surroundings of the main body 110, and the obtained plurality of images may be stored in the storage unit 130. can

이동 로봇(100)은 복수의 영상을 이용하여 장애물 인식의 정확성을 높이거나, 복수의 영상 중 하나 이상의 영상을 선택하여 효과적인 데이터를 사용함으로써 장애물 인식의 정확성을 높일 수 있다.The mobile robot 100 may increase the accuracy of obstacle recognition by using a plurality of images or by selecting one or more images from among the plurality of images and using effective data.

센싱부(170)는 레이저를 이용하여 본체(110) 외부의 지형 정보를 획득하는 라이다 센서(175)를 포함할 수 있다.The sensing unit 170 may include a lidar sensor 175 that obtains topographical information of the outside of the main body 110 using a laser.

라이다 센서(175)는 레이저를 출력하여 레이저를 반사시킨 객체의 거리, 위치 방향, 재질 등의 정보를 제공하며 주행 구역의 지형 정보를 획득할 수 있다. 이동 로봇(100)은 라이다 센서(175)로 360도의 지형(Geometry) 정보를 얻을 수 있다.The lidar sensor 175 outputs a laser to provide information such as the distance, position direction, and material of an object reflecting the laser, and may obtain topographical information of a driving area. The mobile robot 100 may obtain 360-degree geometry information using the lidar sensor 175.

본 발명의 일 실시예에 따른 이동 로봇(100)은 라이다 센서(175)가 센싱한 객체들의 거리와 위치, 방향 등을 파악하여 맵을 생성할 수 있다.The mobile robot 100 according to an embodiment of the present invention may generate a map by recognizing distances, positions, and directions of objects sensed by the lidar sensor 175.

본 발명의 일 실시예에 따른 이동 로봇(100)은 외부에서 반사되어 수신되는 레이저의 시간차 또는 신호 강도 등 레이저 수신 패턴을 분석하여 주행 구역의 지형 정보를 획득할 수 있다. 또한, 이동 로봇(100)은 라이다 센서(175)를 통하여 획득한 지형 정보를 이용하여 맵을 생성할 수 있다.The mobile robot 100 according to an embodiment of the present invention may obtain terrain information of a driving area by analyzing a laser reception pattern, such as a time difference or signal strength of a laser reflected and received from the outside. In addition, the mobile robot 100 may generate a map using terrain information acquired through the lidar sensor 175.

예를 들어, 본 발명에 따른 이동 로봇(100)은 라이다 센서(175)를 통하여 현재 위치에서 획득된 주변 지형 정보를 라이다 센서 기반의 기저장된 지형 정보와 비교하거나 획득되는 지형 정보들을 비교하여 현재 위치를 인식하는 라이다 슬램을 수행할 수 있다.For example, the mobile robot 100 according to the present invention compares the surrounding terrain information obtained from the current location through the lidar sensor 175 with previously stored terrain information based on the lidar sensor or compares the obtained terrain information. It can perform lidar slam recognizing the current location.

더욱 바람직하게는, 본 발명에 따른 이동 로봇(100)은 카메라를 이용하는 비전 기반의 위치 인식과 레이저를 이용하는 라이다 기반의 위치 인식 기술을 효과적으로 융합하여 조도 변화, 물품 위치 변경 등 환경 변화에 강인한 위치 인식 및 맵 생성을 수행할 수 있다. More preferably, the mobile robot 100 according to the present invention effectively combines vision-based position recognition using a camera and lidar-based position recognition technology using a laser to provide a position that is robust to environmental changes such as changes in illumination and position of objects. It can perform recognition and map creation.

한편, 센싱부(170)는 이동 로봇의 동작, 상태와 관련된 각종 데이터를 센싱하는 센서들(171, 172, 179)을 포함할 수 있다.Meanwhile, the sensing unit 170 may include sensors 171, 172, and 179 that sense various data related to the operation and state of the mobile robot.

예를 들어, 상기 센싱부(170)는 전방의 장애물을 감지하는 장애물 감지센서(171)를 포함할 수 있다. 또한, 상기 센싱부(170)는 바닥의 영상을 획득하는 하부 카메라 센서(179)를 더 포함할 수 있다. For example, the sensing unit 170 may include an obstacle detection sensor 171 that detects a forward obstacle. In addition, the sensing unit 170 may further include a lower camera sensor 179 that acquires an image of the floor.

또한, 상기 센싱부(170)는 상기 본체(110)의 하측에 배치되고, 주행 구역 내 바닥에 낭떠러지의 존재 여부를 감지하는 클리프센서(172)를 포함할 수 있다. In addition, the sensing unit 170 may include a cliff sensor 172 disposed below the main body 110 and detecting the presence or absence of a cliff on the floor within the driving area.

클리프센서(172)는 바닥을 향해 광을 출력하는 출광부(도 6의 610 참조)와 바닥에서 반사된 광을 수광하는 수광부(도 6의 620 참조)를 포함할 수 있다. 클리프센서(172)는 수광부(620)에 되돌아 오는 시간차에 의해 거리를 측정할 수 있다.The cliff sensor 172 may include a light output unit (see 610 in FIG. 6 ) that outputs light toward the floor and a light receiver (see 620 in FIG. 6 ) that receives light reflected from the floor. The cliff sensor 172 may measure the distance by the time difference between the signals returned to the light receiving unit 620 .

클리프센서(172)는 바닥과의 거리를 감지하고, 제어부(140)는 바닥과의 거리가 상기 설정된 거리보다 크거나 반사광이 수신되지 않는 경우 낭떠러지라고 판단하고 이에 대응되는 동작을 수행하게 제어할 수 있다.The cliff sensor 172 detects the distance from the floor, and the control unit 140 determines that the distance from the floor is greater than the set distance or the reflected light is not received, and controls the corresponding operation to be performed. there is.

또한, 클리프센서(172)는 바닥에서 반사되는 광의 반사량을 감지할 수 있다. 구체적으로, 수광부(620)는 되돌아 오는 광의 광량, 조도 등을 측정하여서, 출광부에서 조사된 광 대비 반사율을 구할 수 있다. Also, the cliff sensor 172 may detect a reflection amount of light reflected from the floor. Specifically, the light receiving unit 620 may measure the amount of light returned, the illuminance, and the like, and obtain the reflectance compared to the light emitted from the light exiting unit.

또한, 클리프센서(172)는, 상기 발광부(610) 및 상기 수광부(620)에 이격배치되는 센서창(도 6의 630 참조)을 포함할 수 있다. 상기 센서창(630)은 상기 발광부(610) 및 상기 수광부(620)의 전방으로 소정 간격 이격되어 배치될 수 있다. In addition, the cliff sensor 172 may include a sensor window (see 630 in FIG. 6 ) spaced apart from the light emitting part 610 and the light receiving part 620 . The sensor window 630 may be disposed in front of the light emitting part 610 and the light receiving part 620 at a predetermined interval.

상기 센서창(630)은 투명한 재질로 형성되어, 상기 발광부(610)가 출력한 광과 바닥에서 반사되는 광이 통과할 수 있다.The sensor window 630 is made of a transparent material, and light emitted from the light emitting unit 610 and light reflected from the floor may pass therethrough.

클리프센서(172)는 획득되는 데이터를 제어부(140)로 전달할 수 있다. 예를 들어, 측정거리값, 수신되는 광의 광량값을 제어부(140)로 전달할 수 있다. 제어부(140)는 클리프센서(172)의 센싱 데이터에 기초하여 낭떠러지 여부, 바닥과의 거리, 바닥의 재질 등을 판별하고, 주행부(160)를 제어할 수 있다.The cliff sensor 172 may transmit acquired data to the controller 140 . For example, the measured distance value and the received light intensity value may be transmitted to the controller 140 . The control unit 140 may determine whether or not there is a cliff, a distance from the floor, and the material of the floor based on the sensing data of the cliff sensor 172 and control the driving unit 160 .

또한, 제어부(140)는 클리프센서(172)의 센싱 데이터에 기초하여 상기 센서창(630)의 오염 여부를 판별할 수 있다. 센서창(630)의 오염 판별에 대해서는 도 6 내지 도 14를 참조하여 상세히 후술한다.In addition, the control unit 140 may determine whether the sensor window 630 is contaminated based on the sensing data of the cliff sensor 172 . Determination of contamination of the sensor window 630 will be described later in detail with reference to FIGS. 6 to 14 .

도 1과 도 3을 참조하면, 상기 장애물 감지센서(171)는 이동 로봇(100)의 외주면에 일정 간격으로 설치되는 복수의 센서를 포함할 수 있다. Referring to FIGS. 1 and 3 , the obstacle detection sensor 171 may include a plurality of sensors installed at regular intervals on the outer circumferential surface of the mobile robot 100 .

상기 장애물 감지센서(171)는, 적외선 센서, 초음파 센서, RF 센서, 지자기 센서, PSD(Position Sensitive Device) 센서 등을 포함할 수 있다.The obstacle detection sensor 171 may include an infrared sensor, an ultrasonic sensor, an RF sensor, a geomagnetic sensor, a Position Sensitive Device (PSD) sensor, and the like.

한편, 상기 장애물 감지센서(171)에 포함되는 센서의 위치와 종류는 이동 로봇의 기종에 따라 달라질 수 있고, 상기 장애물 감지센서(171)는 더 다양한 센서를 포함할 수 있다.Meanwhile, the location and type of sensors included in the obstacle detection sensor 171 may vary depending on the type of mobile robot, and the obstacle detection sensor 171 may include more various sensors.

상기 장애물 감지센서(171)는 실내의 벽이나 장애물과의 거리를 감지하는 센서로, 본 발명은 그 종류에 한정되지 않으나, 이하에서는 초음파 센서를 예시하여 설명한다. The obstacle detection sensor 171 is a sensor that detects a distance to an indoor wall or an obstacle, and the present invention is not limited to that type, but an ultrasonic sensor will be described below as an example.

상기 장애물 감지센서(171)는 이동 로봇의 주행(이동) 방향에 존재하는 물체, 특히 장애물을 감지하여 장애물 정보를 제어부(140)에 전달한다. 즉, 상기 장애물 감지센서(171)는, 이동 로봇의 이동 경로, 전방이나 측면에 존재하는 돌출물, 집안의 집기, 가구, 벽면, 벽 모서리 등을 감지하여 그 정보를 제어 유닛에 전달할 수 있다. The obstacle detection sensor 171 detects an object, particularly an obstacle, existing in the traveling (moving) direction of the mobile robot and transmits obstacle information to the control unit 140. That is, the obstacle detection sensor 171 can detect the moving path of the mobile robot, protruding objects in front or on the side, furniture, furniture, wall surfaces, wall corners, etc., and transmit the information to the control unit.

이때, 제어부(140)는 초음파 센서를 통해 수신된 적어도 2 이상의 신호에 기초하여 장애물의 위치를 감지하고, 감지된 장애물의 위치에 따라 이동 로봇(100)의 움직임을 제어할 수 있다.In this case, the controller 140 may detect the position of the obstacle based on at least two or more signals received through the ultrasonic sensor, and control the movement of the mobile robot 100 according to the detected position of the obstacle.

실시예에 따라서는, 케이스(110)의 외측면에 구비되는 장애물 감지 센서(131)는 발신부와 수신부를 포함하여 구성될 수 있다. Depending on the embodiment, the obstacle detection sensor 131 provided on the outer surface of the case 110 may include a transmitter and a receiver.

예를 들어, 초음파 센서는 적어도 하나 이상의 발신부 및 적어도 2 이상의 수신부가 서로 엇갈리도록 구비될 수 있다. 이에 따라, 다양한 각도로 신호를 방사하고, 장애물에 반사된 신호를 다양한 각도에서 수신할 수 있다.For example, in the ultrasonic sensor, at least one transmitting unit and at least two receiving units may be provided so that they are crossed with each other. Accordingly, signals can be radiated at various angles and signals reflected by obstacles can be received at various angles.

실시예에 따라서는, 장애물 감지센서(171)에서 수신된 신호는, 증폭, 필터링 등의 신호 처리 과정을 거칠 수 있고, 이후 장애물까지의 거리 및 방향이 산출될 수 있다.Depending on the embodiment, the signal received from the obstacle detection sensor 171 may undergo signal processing such as amplification and filtering, and then the distance and direction to the obstacle may be calculated.

한편, 상기 센싱부(170)는 본체(110)의 구동에 따른 이동 로봇(100)의 주행 동작을 감지하고 동작 정보를 출력하는 주행 감지 센서를 더 포함할 수 있다. 주행 감지 센서로는, 자이로 센서(Gyro Sensor), 휠 센서(Wheel Sensor), 가속도 센서(Acceleration Sensor) 등을 사용할 수 있다. 주행 감지 센서 중 적어도 하나에서 감지되는 데이터 또는 주행 감지 센서 중 적어도 하나에서 감지되는 데이터에 기초하여 산출되는 데이터는 오도메트리(odometry) 정보를 구성할 수 있다.Meanwhile, the sensing unit 170 may further include a driving detection sensor that detects a driving motion of the mobile robot 100 according to driving of the main body 110 and outputs motion information. As the driving detection sensor, a gyro sensor, a wheel sensor, an acceleration sensor, or the like may be used. Data detected by at least one of the driving sensors or data calculated based on data detected by at least one of the driving sensors may constitute odometry information.

자이로 센서는, 이동 로봇(100)이 운전 모드에 따라 움직일 때 회전 방향을 감지하고 회전각을 검출한다. 자이로 센서는, 이동 로봇(100)의 각속도를 검출하여 각속도에 비례하는 전압 값을 출력한다. 제어부(140)는 자이로 센서로부터 출력되는 전압 값을 이용하여 회전 방향 및 회전각을 산출한다.The gyro sensor detects a rotation direction and a rotation angle when the mobile robot 100 moves according to the driving mode. The gyro sensor detects the angular velocity of the mobile robot 100 and outputs a voltage value proportional to the angular velocity. The controller 140 calculates the rotation direction and rotation angle using the voltage value output from the gyro sensor.

휠 센서는, 좌륜(136(L))과 우륜(136(R))에 연결되어 바퀴의 회전수를 감지한다. 여기서, 휠 센서는 엔코더(Encoder)일 수 있다. 엔코더는 좌륜(136(L))과 우륜(136(R))의 회전수를 감지하여 출력한다. The wheel sensor is connected to the left wheel 136 (L) and the right wheel 136 (R) to detect the number of revolutions of the wheel. Here, the wheel sensor may be an encoder. The encoder detects and outputs the number of revolutions of the left wheel 136(L) and the right wheel 136(R).

제어부(140)는 회전수를 이용하여 좌, 우측 바퀴의 회전 속도를 연산할 수 있다. 또한, 제어부(140)는 좌륜(136(L))과 우륜(136(R))의 회전수 차이를 이용하여 회전각을 연산할 수 있다.The controller 140 may calculate the rotation speed of the left and right wheels using the number of revolutions. In addition, the controller 140 may calculate the rotation angle using a difference in rotation speeds between the left wheel 136 (L) and the right wheel 136 (R).

가속도 센서는, 이동 로봇(100)의 속도 변화, 예를 들어, 출발, 정지, 방향 전환, 물체와의 충돌 등에 따른 이동 로봇(100)의 변화를 감지한다. 가속도 센서는 주 바퀴나 보조바퀴의 인접 위치에 부착되어, 바퀴의 미끄러짐이나 공회전을 검출할 수 있다.The acceleration sensor detects a change in speed of the mobile robot 100, for example, a change in the mobile robot 100 according to start, stop, direction change, collision with an object, and the like. The acceleration sensor is attached to a location adjacent to the main wheel or the auxiliary wheel, and can detect slippage or idling of the wheel.

또한, 가속도 센서는 제어부(140)에 내장되어 이동 로봇(100)의 속도 변화를 감지할 수 있다. 즉, 가속도 센서는 속도 변화에 따른 충격량을 검출하여 이에 대응하는 전압 값을 출력한다. 따라서, 가속도 센서는 전자식 범퍼의 기능을 수행할 수 있다.In addition, the acceleration sensor may be built into the control unit 140 to detect a change in speed of the mobile robot 100 . That is, the acceleration sensor detects the amount of impact according to the speed change and outputs a corresponding voltage value. Accordingly, the acceleration sensor may perform a function of an electronic bumper.

제어부(140)는 주행 감지 센서로부터 출력된 동작 정보에 기초하여 이동 로봇(100)의 위치 변화를 산출할 수 있다. 이러한 위치는 영상 정보를 이용한 절대 위치에 대응하여 상대 위치가 된다. 이동 로봇은 이러한 상대 위치 인식을 통해 영상 정보와 장애물 정보를 이용한 위치 인식의 성능을 향상시킬 수 있다.The control unit 140 may calculate a change in position of the mobile robot 100 based on motion information output from the driving sensor. This position becomes a relative position corresponding to the absolute position using image information. The mobile robot can improve the performance of location recognition using image information and obstacle information through relative location recognition.

한편, 이동 로봇(100)은 충전 가능한 배터리(138)를 구비하여 로봇 청소기 내로 전원을 공급하는 전원 공급부(미도시)를 포함할 수 있다.Meanwhile, the mobile robot 100 may include a power supply unit (not shown) having a rechargeable battery 138 to supply power to the robot cleaner.

상기 전원 공급부는 이동 로봇(100)의 각 구성 요소들에 구동 전원과, 동작 전원을 공급하며, 전원 잔량이 부족하면 충전대(200)에서 충전 전류를 공급받아 충전될 수 있다. The power supply unit supplies driving power and operating power to each component of the mobile robot 100, and when the remaining power is insufficient, it can be charged by receiving charging current from the charging station 200.

이동 로봇(100)은 배터리(138)의 충전 상태를 감지하고, 감지 결과를 제어부(140)에 전송하는 배터리 감지부(미도시)를 더 포함할 수 있다. 배터리(138)는 배터리 감지부와 연결되어 배터리 잔량 및 충전 상태가 제어부(140)에 전달된다. 배터리 잔량은 출력부(미도시)의 화면에 표시될 수 있다.The mobile robot 100 may further include a battery detector (not shown) that detects the state of charge of the battery 138 and transmits the detection result to the control unit 140 . The battery 138 is connected to the battery detection unit, and the battery remaining amount and charging state are transmitted to the controller 140 . The remaining battery capacity may be displayed on a screen of an output unit (not shown).

또한, 이동 로봇(100)은 온/오프(On/Off) 또는 각종 명령을 입력할 수 있는 조작부(137)를 포함한다. 조작부(137)를 통해 이동 로봇(100)의 작동 전반에 필요한 각종 제어명령을 입력받을 수 있다. 또한, 이동 로봇(100)은 출력부(미도시)를 포함하여, 예약 정보, 배터리 상태, 동작모드, 동작상태, 에러상태 등을 표시할 수 있다. In addition, the mobile robot 100 includes a control unit 137 capable of inputting on/off or various commands. Various control commands necessary for the overall operation of the mobile robot 100 may be received through the control unit 137 . In addition, the mobile robot 100 may display reservation information, battery status, operation mode, operation status, error status, etc., including an output unit (not shown).

도 5를 참조하면, 이동 로봇(100)은 현재 위치를 인식하는 등 각종 정보를 처리하고 판단하는 제어부(140), 및 각종 데이터를 저장하는 저장부(130)를 포함한다. 또한, 이동 로봇(100)은 다른 기기와 데이터를 송수신하는 통신부(190)를 더 포함할 수 있다. Referring to FIG. 5 , the mobile robot 100 includes a controller 140 that processes and determines various types of information, such as recognizing a current location, and a storage unit 130 that stores various types of data. In addition, the mobile robot 100 may further include a communication unit 190 that transmits and receives data with other devices.

이동 로봇(100)과 통신하는 기기 중 외부 단말기는 이동 로봇(100)을 제어하기 위한 애플리케이션을 구비하고, 애플리케이션의 실행을 통해 이동 로봇(100)이 청소할 주행 구역에 대한 맵을 표시하고, 맵 상에 특정 영역을 청소하도록 영역을 지정할 수 있다. 외부 단말기는 맵 설정을 위한 애플리케이션(application)이 탑재된 리모콘, PDA, 랩탑(laptop), 스마트 폰, 태블릿 등을 예로 들 수 있다. Among the devices communicating with the mobile robot 100, an external terminal has an application for controlling the mobile robot 100, displays a map of a driving area to be cleaned by the mobile robot 100 through the execution of the application, and displays a map on the map. You can specify an area to clean in a specific area. The external terminal may include, for example, a remote control, a PDA, a laptop, a smart phone, a tablet, etc. loaded with an application for setting a map.

외부 단말기는 이동 로봇(100)과 통신하여, 맵과 함께 이동 로봇의 현재 위치를 표시할 수 있으며, 복수의 영역에 대한 정보가 표시될 수 있다. 또한, 외부 단말기는 이동 로봇의 주행에 따라 그 위치를 갱신하여 표시한다. The external terminal can communicate with the mobile robot 100 to display the current location of the mobile robot along with a map, and information on a plurality of areas can be displayed. In addition, the external terminal updates and displays its location according to the movement of the mobile robot.

제어부(140)는 이동 로봇(100)을 구성하는 센싱부(170), 조작부(137), 주행부(160)를 제어하여, 이동 로봇(100)의 동작 전반을 제어한다. The control unit 140 controls the overall operation of the mobile robot 100 by controlling the sensing unit 170, the manipulation unit 137, and the traveling unit 160 constituting the mobile robot 100.

저장부(130)는 이동 로봇(100)의 제어에 필요한 각종 정보들을 기록하는 것으로, 휘발성 또는 비휘발성 기록 매체를 포함할 수 있다. 기록 매체는 마이크로 프로세서(micro processor)에 의해 읽힐 수 있는 데이터를 저장한 것으로, 그 종류나 구현 방식에 한정되지 않는다.The storage unit 130 records various information necessary for controlling the mobile robot 100, and may include a volatile or non-volatile recording medium. The recording medium stores data that can be read by a microprocessor, and is not limited to its type or implementation method.

또한, 저장부(130)에는 주행 구역에 대한 맵(Map)이 저장될 수 있다. 맵은 이동 로봇(100)과 유선 또는 무선 통신을 통해 정보를 교환할 수 있는 외부 단말기, 서버 등에 의해 입력된 것일 수도 있고, 이동 로봇(100)이 스스로 학습을 하여 생성한 것일 수도 있다. Also, a map for a driving area may be stored in the storage unit 130 . The map may be input by an external terminal or server capable of exchanging information with the mobile robot 100 through wired or wireless communication, or may be generated by the mobile robot 100 through self-learning.

맵에는 주행 구역 내의 방들의 위치가 표시될 수 있다. 또한, 이동 로봇(100)의 현재 위치가 맵 상에 표시될 수 있으며, 맵 상에서의 이동 로봇(100)의 현재의 위치는 주행 과정에서 갱신될 수 있다. 외부 단말기는 저장부(130)에 저장된 맵과 동일한 맵을 저장한다. The location of rooms within the driving area may be indicated on the map. Also, the current location of the mobile robot 100 may be displayed on a map, and the current location of the mobile robot 100 on the map may be updated in the process of driving. The external terminal stores the same map as the map stored in the storage unit 130 .

상기 저장부(130)는 청소 이력 정보를 저장할 수 있다. 이러한 청소 이력 정보는 청소를 수행할 때마다 생성될 수 있다.The storage unit 130 may store cleaning history information. Such cleaning history information may be generated whenever cleaning is performed.

상기 저장부(130)에 저장되는 주행 구역에 대한 맵(Map)은, 청소 중 주행에 사용되는 내비게이션 맵(Navigation map), 위치 인식에 사용되는 슬램(Simultaneous localization and mapping: SLAM) 맵, 장애물 등에 부딪히면 해당 정보를 저장하여 학습 청소시 사용하는 학습 맵, 전역 위치 인식에 사용되는 전역 위치 맵, 인식된 장애물에 관한 정보가 기록되는 장애물 인식 맵 등일 수 있다. The map for the driving area stored in the storage unit 130 includes a navigation map used for driving during cleaning, a simultaneous localization and mapping (SLAM) map used for location recognition, an obstacle, etc. It may be a learning map used for learning and cleaning by storing corresponding information when collided with, a global location map used for global location recognition, an obstacle recognition map in which information on recognized obstacles is recorded, and the like.

한편, 상술한 바와 같이 용도별로 상기 저장부(130)에 맵들을 구분하여 저장, 관리할 수 있지만, 맵이 용도별로 명확히 구분되지 않을 수도 있다. 예를 들어, 적어도 2 이상의 용도로 사용할 수 있도록 하나의 맵에 복수의 정보를 저장할 수도 있다.Meanwhile, as described above, maps may be stored and managed by dividing them into the storage unit 130 for each purpose, but the maps may not be clearly classified for each purpose. For example, a plurality of pieces of information may be stored in one map so that they can be used for at least two purposes.

제어부(140)는 주행제어모듈(141), 위치인식모듈(142), 지도생성모듈(143) 및 장애물인식모듈(144)을 포함할 수 있다. The control unit 140 may include a driving control module 141, a location recognition module 142, a map generation module 143, and an obstacle recognition module 144.

도 1 내지 도 5를 참조하면, 주행제어모듈(141)은 이동 로봇(100)의 주행을 제어하는 것으로, 주행 설정에 따라 주행부(160)의 구동을 제어한다. 또한, 주행제어모듈(141)은 주행부(160)의 동작을 바탕으로 이동 로봇(100)의 주행경로를 파악할 수 있다. 예를 들어, 주행제어모듈(141)은 구동 바퀴(136)의 회전속도를 바탕으로 이동 로봇(100)의 현재 또는 과거의 이동속도, 주행한 거리 등을 파악할 수 있으며, 각 구동 바퀴(136(L), 136(R))의 회전 방향에 따라 현재 또는 과거의 방향 전환 과정 또한 파악할 수 있다. 이렇게 파악된 이동 로봇(100)의 주행 정보를 바탕으로, 맵 상에서 이동 로봇(100)의 위치가 갱신될 수 있다. 1 to 5, the driving control module 141 controls driving of the mobile robot 100, and controls driving of the driving unit 160 according to driving settings. In addition, the driving control module 141 may determine the driving path of the mobile robot 100 based on the operation of the driving unit 160 . For example, the driving control module 141 can determine the current or past moving speed of the mobile robot 100, the distance traveled, etc. based on the rotational speed of the driving wheels 136, and each driving wheel 136 ( According to the rotation direction of L) and 136(R)), the current or past direction change process can also be grasped. Based on the driving information of the mobile robot 100 identified in this way, the location of the mobile robot 100 on the map may be updated.

지도생성모듈(143)은 주행 구역의 맵을 생성할 수 있다. 지도생성모듈(143)은 영상획득부(120)를 통해 획득한 영상을 처리하여 맵을 작성할 수 있다. 예를 들어, 주행 구역에 대응하는 맵, 청소 영역과 대응되는 청소 맵을 작성할 수 있다.The map generation module 143 may generate a map of the driving area. The map generation module 143 may create a map by processing the image obtained through the image acquisition unit 120 . For example, a map corresponding to a driving area and a cleaning map corresponding to a cleaning area can be created.

또한, 지도생성모듈(143)은 각 위치에서 영상획득부(120)를 통해 획득한 영상을 처리하여 맵과 연계시켜 전역위치를 인식할 수 있다.In addition, the map generation module 143 can recognize the global location by processing the image acquired through the image acquisition unit 120 at each location and linking it with a map.

또한, 지도생성모듈(143)은 라이다 센서(175)를 통해 획득한 정보에 기초하여 맵을 작성하고, 각 위치에서 라이다 센서(175)를 통해 획득한 정보에 기초하여 위치를 인식할 수 있다.In addition, the map generation module 143 may create a map based on information obtained through the lidar sensor 175 and recognize a location based on the information obtained through the lidar sensor 175 at each location. there is.

더욱 바람직하게는, 지도생성모듈(143)은 영상획득부(120)와 라이다 센서(175)를 통해 획득한 정보에 기초하여 맵을 작성하고 위치 인식을 수행할 수 있다.More preferably, the map generation module 143 may create a map based on information obtained through the image acquisition unit 120 and the LIDAR sensor 175 and perform location recognition.

위치인식모듈(142)은 현재 위치를 추정하여 인식한다. 위치인식모듈(142)은 영상획득부(120)의 영상 정보를 이용하여 지도생성모듈(143)과 연계하여 위치를 파악함으로써, 이동 로봇(100)의 위치가 갑자기 변경되는 경우에도 현재 위치를 추정하여 인식할 수 있다.The location recognition module 142 estimates and recognizes the current location. The location recognition module 142 estimates the current location even when the location of the mobile robot 100 suddenly changes by identifying the location in conjunction with the map generation module 143 using the image information of the image acquisition unit 120. can be recognized.

이동 로봇(100)은 위치인식모듈(142)을 통해 연속적인 주행 중에 위치 인식이 가능하고 또한, 위치인식모듈(142) 없이 주행제어모듈(141), 지도생성모듈(143), 장애물인식모듈(144)을 통해, 맵을 학습하고 현재 위치를 추정할 수 있다. The mobile robot 100 can recognize the location during continuous driving through the location recognition module 142, and also includes the driving control module 141, the map generation module 143, and the obstacle recognition module (without the location recognition module 142). 144), the map can be learned and the current location can be estimated.

이동 로봇(100)이 주행하는 중에, 영상획득부(120)는 이동 로봇(100) 주변의 영상들을 획득한다. 이하, 영상획득부(120)에 의해 획득된 영상을 '획득영상'이라고 정의한다. While the mobile robot 100 is driving, the image acquisition unit 120 acquires images around the mobile robot 100 . Hereinafter, an image acquired by the image acquisition unit 120 is defined as an 'obtained image'.

획득영상에는 천장에 위치하는 조명들, 경계(edge), 코너(corner), 얼룩(blob), 굴곡(ridge) 등의 여러가지 특징(feature)들이 포함된다. The obtained image includes various features such as lights located on the ceiling, edges, corners, blobs, and ridges.

지도생성모듈(143)은 획득영상들 각각으로부터 특징을 검출한다. 컴퓨터 비전(Computer Vision) 기술 분야에서 영상으로부터 특징을 검출하는 다양한 방법(Feature Detection)이 잘 알려져 있다. 이들 특징의 검출에 적합한 여러 특징검출기(feature detector)들이 알려져 있다. 예를 들어, Canny, Sobel, Harris&Stephens/Plessey, SUSAN, Shi&Tomasi, Level curve curvature, FAST, Laplacian of Gaussian, Difference of Gaussians, Determinant of Hessian, MSER, PCBR, Grey-level blobs 검출기 등이 있다.The map generating module 143 detects features from each of the acquired images. Various methods (Feature Detection) of detecting a feature from an image are well known in the field of computer vision technology. Several feature detectors suitable for detection of these features are known. For example, Canny, Sobel, Harris & Stephens/Plessey, SUSAN, Shi & Tomasi, Level curve curvature, FAST, Laplacian of Gaussian, Difference of Gaussians, Determinant of Hessian, MSER, PCBR, Gray-level blobs detector, etc.

지도생성모듈(143)은 각 특징점을 근거로 디스크립터를 산출한다. 지도생성모듈(143)은 특징 검출을 위해 SIFT(Scale Invariant Feature Transform) 기법을 이용하여 특징점을 디스크립터(descriptor)로 변환할 수 있다. 디스크립터는 n차원 벡터(vector)로 표기될 수 있다.The map generating module 143 calculates a descriptor based on each feature point. The map generating module 143 may convert a feature point into a descriptor using a Scale Invariant Feature Transform (SIFT) technique for feature detection. The descriptor may be expressed as an n-dimensional vector.

SIFT는 촬영 대상의 스케일(scale), 회전, 밝기변화에 대해서 불변하는 특징을 검출할 수 있어, 같은 영역을 이동 로봇(100)의 자세를 달리하며 촬영하더라도 불변하는(즉, 회전 불변한(Rotation-invariant)) 특징을 검출할 수 있다. 물론, 이에 한정되지 않고 다른 다양한 기법(예를 들어, HOG: Histogram of Oriented Gradient, Haar feature, Fems, LBP:Local Binary Pattern, MCT:Modified Census Transform)들이 적용될 수도 있다.SIFT can detect features that are invariant with respect to changes in scale, rotation, and brightness of the subject to be photographed, so that even if the same area is photographed with different postures of the mobile robot 100, it is invariant (i.e., rotation invariant (Rotation)). -invariant)) features can be detected. Of course, it is not limited thereto, and various other techniques (eg, HOG: Histogram of Oriented Gradient, Haar feature, Fems, LBP: Local Binary Pattern, MCT: Modified Census Transform) may be applied.

지도생성모듈(143)은 각 위치의 획득영상을 통해 얻은 디스크립터 정보를 바탕으로, 획득영상마다 적어도 하나의 디스크립터를 소정 하위 분류규칙에 따라 복수의 군으로 분류하고, 소정 하위 대표규칙에 따라 같은 군에 포함된 디스크립터들을 각각 하위 대표 디스크립터로 변환할 수 있다.The map generation module 143 classifies at least one descriptor for each acquired image into a plurality of groups according to a predetermined sub-classification rule, based on the descriptor information obtained through the acquired image of each location, and the same group according to a predetermined sub-representative rule. The descriptors included in may be converted into sub-representative descriptors, respectively.

다른 예로, 실(room)과 같이 소정 구역내의 획득영상 들로부터 모인 모든 디스크립터를 소정 하위 분류규칙에 따라 복수의 군으로 분류하여 상기 소정 하위 대표규칙에 따라 같은 군에 포함된 디스크립터들을 각각 하위 대표 디스크립터로 변환할 수도 있다. As another example, all descriptors gathered from acquired images in a predetermined area, such as a room, are classified into a plurality of groups according to a predetermined sub-classification rule, and the descriptors included in the same group according to the predetermined sub-representation rule are respectively classified as sub-representative descriptors. can also be converted to

지도생성모듈(143)은 이 같은 과정을 거쳐, 각 위치의 특징분포를 구할 수 있다. 각 위치 특징분포는 히스토그램 또는 n차원 벡터로 표현될 수 있다. 또 다른 예로, 지도생성모듈(143)은 소정 하위 분류규칙 및 소정 하위 대표규칙을 거치지 않고, 각 특징점으로부터 산출된 디스크립터를 바탕으로 미지의 현재 위치를 추정할 수 있다. The map generation module 143 may obtain the feature distribution of each location through the above process. Each location feature distribution can be expressed as a histogram or an n-dimensional vector. As another example, the map generating module 143 may estimate an unknown current location based on a descriptor calculated from each feature point without passing through a predetermined subclassification rule and a predetermined subrepresentation rule.

또한, 위치 도약 등의 이유로 이동 로봇(100)의 현재 위치가 미지의 상태가 된 경우에, 기 저장된 디스크립터 또는 하위 대표 디스크립터 등의 데이터를 근거로 현재 위치를 추정할 수 있다. In addition, when the current location of the mobile robot 100 becomes unknown due to location jumping or the like, the current location can be estimated based on data such as a pre-stored descriptor or sub-representative descriptor.

이동 로봇(100)은, 미지의 현재 위치에서 영상획득부(120)를 통해 획득영상을 획득한다. 영상을 통해 천장에 위치하는 조명들, 경계(edge), 코너(corner), 얼룩(blob), 굴곡(ridge) 등의 여러가지 특징(feature)들이 확인된다.The mobile robot 100 acquires an acquired image through the image acquisition unit 120 at an unknown current location. Through the video, various features such as lights located on the ceiling, edges, corners, blobs, and ridges are confirmed.

위치인식모듈(142)은 획득영상으로부터 특징들을 검출한다. 컴퓨터 비전 기술 분야에서 영상으로부터 특징을 검출하는 다양한 방법 및 이들 특징의 검출에 적합한 여러 특징검출기들에 대한 설명은 상기한 바와 같다.The location recognition module 142 detects features from the acquired image. Descriptions of various methods for detecting features from images in the field of computer vision technology and various feature detectors suitable for detecting these features have been described above.

위치인식모듈(142)은 각 인식 특징점을 근거로 인식 디스크립터 산출단계를 거쳐 인식 디스크립터를 산출한다. 이때 인식 특징점 및 인식 디스크립터는 위치인식모듈(142)에서 수행하는 과정을 설명하기 위한 것으로 지도생성모듈(143)에서 수행하는 과정을 설명하는 용어와 구분하기 위한 것이다. 다만, 이동 로봇(100)의 외부 세계의 특징이 각각 다른 용어로 정의되는 것에 불과하다. The location recognition module 142 calculates a recognition descriptor through a recognition descriptor calculation step based on each recognition feature point. At this time, the recognition feature point and the recognition descriptor are for explaining the process performed by the location recognition module 142, and are intended to be distinguished from terms describing the process performed by the map generation module 143. However, it is merely that the characteristics of the external world of the mobile robot 100 are defined in different terms.

위치인식모듈(142)은 본 특징 검출을 위해 SIFT(Scale Invariant Feature Transform) 기법을 이용하여 인식 특징점을 인식 디스크립터로 변환할 수 있다. 인식 디스크립터는 n차원 벡터(vector)로 표기될 수 있다. The location recognition module 142 may convert the recognition feature point into a recognition descriptor using a Scale Invariant Feature Transform (SIFT) technique to detect this feature. The recognition descriptor may be expressed as an n-dimensional vector.

SIFT는 앞서 설명한 바와 같이, 획득영상에서 코너점 등 식별이 용이한 특징점을 선택한 후, 각 특징점 주변의 일정한 구역에 속한 픽셀들의 밝기 구배(gradient)의 분포 특성(밝기 변화의 방향 및 변화의 급격한 정도)에 대해, 각 방향에 대한 변화의 급격한 정도를 각 차원에 대한 수치로 하는 n차원 벡터(vector)를 구하는 영상인식기법이다. As described above, SIFT selects easily identifiable feature points such as corner points in the acquired image, and then determines the distribution characteristics of the brightness gradient of pixels belonging to a certain area around each feature point (direction of brightness change and rapid degree of change). ), it is an image recognition technique that obtains an n-dimensional vector with the rapid degree of change in each direction as a numerical value for each dimension.

위치인식모듈(142)은 미지의 현재 위치의 획득영상을 통해 얻은 적어도 하나의 인식 디스크립터 정보를 근거로, 소정 하위 변환규칙에 따라 비교대상이 되는 위치 정보(예를 들면, 각 위치의 특징분포)와 비교 가능한 정보(하위 인식 특징분포)로 변환한다.The location recognition module 142 is based on at least one recognition descriptor information obtained through an acquired image of an unknown current location, and location information (eg, feature distribution of each location) to be compared according to a predetermined sub-conversion rule. It is converted into information (lower recognition feature distribution) that can be compared with .

소정 하위 비교규칙에 따라, 각각의 위치 특징분포를 각각의 인식 특징분포와 비교하여 각각의 유사도를 산출할 수 있다. 각각의 위치에 해당하는 상기 위치 별로 유사도(확률)를 산출하고, 그 중 가장 큰 확률이 산출되는 위치를 현재 위치로 결정할 수 있다.According to a predetermined subcomparison rule, each location feature distribution may be compared with each recognition feature distribution to calculate each degree of similarity. A similarity (probability) may be calculated for each location corresponding to each location, and a location where the highest probability is calculated among them may be determined as the current location.

이와 같이, 제어부(140)는 주행 구역을 구분하고 복수의 영역으로 구성된 맵을 생성하거나, 기저장된 맵을 바탕으로 본체(110)의 현재 위치를 인식할 수 있다. In this way, the controller 140 may divide the driving area and create a map composed of a plurality of areas, or recognize the current location of the main body 110 based on a previously stored map.

또한, 제어부(140)는 영상획득부(120)와 라이다 센서(175)를 통해 획득한 정보를 융합하여 맵을 작성하고 위치 인식을 수행할 수 있다.In addition, the control unit 140 may combine information obtained through the image acquisition unit 120 and the LIDAR sensor 175 to create a map and perform location recognition.

제어부(140)는 맵이 생성되면, 생성된 맵을 통신부(190)를 통해 외부 단말기, 서버 등으로 전송할 수 있다. 또한, 제어부(140)는 앞서 설명한 바와 같이, 외부 단말기, 서버 등으로부터 맵이 수신되면, 저장부에 저장할 수 있다. When a map is generated, the control unit 140 may transmit the generated map to an external terminal or server through the communication unit 190 . Also, as described above, the controller 140 may store the map in the storage unit when the map is received from an external terminal or server.

또한 제어부(140)는 주행 중 맵이 갱신되는 경우 갱신된 정보를 외부 단말기로 전송하여 외부 단말기와 이동 로봇(100)에 저장되는 맵이 동일하도록 한다. 외부 단말기와 이동 로봇(100)에 저장된 맵이 동일하게 유지됨에 따라 이동 단말기로부터의 청소명령에 대하여, 이동 로봇(100)이 지정된 영역을 청소할 수 있으며, 또한, 외부 단말기에 이동 로봇의 현재 위치가 표시될 수 있도록 하기 위함이다. Also, when the map is updated while driving, the controller 140 transmits the updated information to the external terminal so that the external terminal and the map stored in the mobile robot 100 are the same. As the maps stored in the external terminal and the mobile robot 100 remain the same, the mobile robot 100 can clean the designated area in response to a cleaning command from the mobile terminal, and the current location of the mobile robot is displayed in the external terminal. so that it can be displayed.

이때, 맵은 청소 영역을 복수의 영역으로 구분되고, 복수의 영역을 연결하는 연결통로가 포함하며, 영역 내의 장애물에 대한 정보를 포함할 수 있다. In this case, the map may divide the cleaning area into a plurality of areas, include a connection passage connecting the plurality of areas, and include information about obstacles in the area.

제어부(140)는 청소명령이 입력되면, 맵 상의 위치와 이동 로봇의 현재 위치가 일치하는지 여부를 판단한다. 청소명령은 리모컨, 조작부 또는 외부 단말기로부터 입력될 수 있다. When a cleaning command is input, the controller 140 determines whether the location on the map matches the current location of the mobile robot. The cleaning command may be input from a remote control, a control panel, or an external terminal.

제어부(140)는 현재 위치가 맵 상의 위치와 일치하지 않는 경우, 또는 현재 위치를 확인할 수 없는 경우, 현재 위치를 인식하여 이동 로봇(100)의 현재 위치를 복구한 한 후, 현재 위치를 바탕으로 지정영역으로 이동하도록 주행부(160)를 제어할 수 있다. If the current location does not match the location on the map, or if the current location cannot be confirmed, the controller 140 recognizes the current location and recovers the current location of the mobile robot 100, and then based on the current location The driving unit 160 may be controlled to move to a designated area.

현재 위치가 맵 상의 위치와 일치하지 않는 경우 또는 현재 위치를 확인 할 수 없는 경우, 위치인식모듈(142)은 영상획득부(120)로부터 입력되는 획득영상 및/또는 라이다 센서(175)를 통해 획득된 지형 정보를 분석하여 맵을 바탕으로 현재 위치를 추정할 수 있다. 또한, 장애물인식모듈(144) 또는 지도생성모듈(143) 또한, 같은 방식으로 현재 위치를 인식할 수 있다. If the current location does not match the location on the map or if the current location cannot be confirmed, the location recognition module 142 uses the acquired image input from the image acquisition unit 120 and/or the LIDAR sensor 175. The current location can be estimated based on the map by analyzing the obtained terrain information. In addition, the obstacle recognition module 144 or the map generation module 143 may also recognize the current location in the same way.

위치를 인식하여 이동 로봇(100)의 현재 위치를 복구한 후, 주행제어모듈(141)은 현재 위치로부터 지정영역으로 주행경로를 산출하고 주행부(160)를 제어하여 지정영역으로 이동한다. After recognizing the position and restoring the current position of the mobile robot 100, the driving control module 141 calculates a driving route from the current position to the designated area and controls the driving unit 160 to move to the designated area.

서버로부터 청소 패턴 정보를 수신하는 경우, 주행제어모듈(141)은 수신한 청소 패턴 정보에 따라, 전체 주행 구역을 복수의 영역으로 나누고, 하나 이상의 영역을 지정영역으로 설정할 수 있다.When receiving cleaning pattern information from the server, the driving control module 141 may divide the entire driving area into a plurality of areas and set one or more areas as a designated area according to the received cleaning pattern information.

또한, 주행제어모듈(141)은 수신한 청소 패턴 정보에 따라 주행경로를 산출하고, 주행경로를 따라 주행하며, 청소를 수행할 수 있다. In addition, the driving control module 141 may calculate a driving route according to the received cleaning pattern information, drive along the driving route, and perform cleaning.

제어부(140)는 설정된 지정영역에 대한 청소가 완료되면, 청소기록을 저장부(130)에 저장할 수 있다. The controller 140 may store the cleaning record in the storage unit 130 when cleaning of the set designated area is completed.

또한, 제어부(140)는 통신부(190)를 통해 이동 로봇(100)의 동작상태 또는 청소상태를 소정 주기로 외부 단말기, 서버로 전송할 수 있다. In addition, the control unit 140 may transmit the operating state or cleaning state of the mobile robot 100 to an external terminal or server through the communication unit 190 at predetermined intervals.

그에 따라 외부 단말기는 수신되는 데이터를 바탕으로, 실행중인 애플리케이션의 화면상에 맵과 함께 이동 로봇의 위치를 표시하고, 또한 청소 상태에 대한 정보를 출력한다.Accordingly, the external terminal displays the location of the mobile robot along with a map on the screen of the running application based on the received data, and also outputs information on the cleaning status.

본 발명의 실시예에 따른 이동 로봇(100)은 일방향으로 장애물이나 벽면이 감지될 때까지 이동하다가, 장애물인식모듈(144)이 장애물을 인식하면, 인식된 장애물의 속성에 따라 직진, 회전 등 주행 패턴을 결정할 수 있다.The mobile robot 100 according to an embodiment of the present invention moves in one direction until an obstacle or wall is detected, and when the obstacle recognition module 144 recognizes the obstacle, the mobile robot 100 travels in a straight line, turns, etc. according to the attributes of the recognized obstacle. patterns can be determined.

예를 들어, 인식된 장애물의 속성이 넘어갈 수 있는 종류의 장애물이면, 이동 로봇(100)은 계속 직진할 수 있다. 또는, 인식된 장애물의 속성이 넘어갈 수 없는 종류의 장애물이면, 이동 로봇(100)은 회전하여 일정거리 이동하고, 다시 최초 이동 방향의 반대방향으로 장애물이 감지되는 거리까지 이동하여 지그재그 형태로 주행할 수 있다For example, if the attribute of the recognized obstacle is a type of obstacle that can be crossed, the mobile robot 100 can continue to move forward. Alternatively, if the attribute of the recognized obstacle is a type of obstacle that cannot be crossed, the mobile robot 100 rotates and moves a certain distance, moves again in the opposite direction to the initial movement direction to the distance at which the obstacle is detected, and travels in a zigzag pattern. can

본 발명의 실시예에 따른 이동 로봇(100)은, 머신 러닝(machine learning) 기반의 사람, 사물 인식 및 회피를 수행할 수 있다. The mobile robot 100 according to an embodiment of the present invention may perform machine learning-based human and object recognition and avoidance.

상기 제어부(140)는, 입력 영상에서 머신 러닝(machine learning)으로 기학습된 장애물을 인식하는 장애물인식모듈(144)과 상기 인식된 장애물의 속성에 기초하여, 상기 주행부(160)의 구동을 제어하는 주행제어모듈(141)을 포함할 수 있다.The controller 140 controls the driving of the driving unit 160 based on the obstacle recognition module 144 for recognizing an obstacle pre-learned by machine learning in an input image and the attribute of the recognized obstacle. A driving control module 141 for controlling may be included.

본 발명의 실시예에 따른 이동 로봇(100)은, 머신 러닝으로 장애물의 속성이 학습된 장애물인식모듈(144)을 포함할 수 있다.The mobile robot 100 according to an embodiment of the present invention may include an obstacle recognition module 144 in which attributes of obstacles are learned through machine learning.

머신 러닝은 컴퓨터에게 사람이 직접 로직(Logic)을 지시하지 않아도 데이터를 통해 컴퓨터가 학습을 하고 이를 통해 컴퓨터가 알아서 문제를 해결하게 하는 것을 의미한다.Machine learning means that a computer learns through data without a person directly instructing the computer with logic, and through this, the computer solves the problem on its own.

딥러닝(Deep Learning)은. 인공지능을 구성하기 위한 인공신경망(Artificial Neural Networks: ANN)에 기반으로 해 컴퓨터에게 사람의 사고방식을 가르치는 방법으로 사람이 가르치지 않아도 컴퓨터가 스스로 사람처럼 학습할 수 있는 인공지능 기술이다.Deep Learning is. Based on artificial neural networks (ANNs) to construct artificial intelligence, it is an artificial intelligence technology that allows computers to learn like humans on their own without being taught by humans as a method of teaching computers how to think.

상기 인공신경망(ANN)은 소프트웨어 형태로 구현되거나 칩(chip) 등 하드웨어 형태로 구현될 수 있다.The artificial neural network (ANN) may be implemented in the form of software or hardware such as a chip.

장애물인식모듈(144)은 장애물의 속성이 학습된 소프트웨어 또는 하드웨어 형태의 인공신경망(ANN)을 포함할 수 있다. The obstacle recognition module 144 may include an artificial neural network (ANN) in the form of software or hardware in which attributes of obstacles are learned.

예를 들어, 장애물인식모듈(144)은 딥러닝(Deep Learning)으로 학습된 CNN(Convolutional Neural Network), RNN(Recurrent Neural Network), DBN(Deep Belief Network) 등 심층신경망(Deep Neural Network: DNN)을 포함할 수 있다.For example, the obstacle recognition module 144 uses a deep neural network (DNN) such as a convolutional neural network (CNN), a recurrent neural network (RNN), and a deep belief network (DBN) learned by deep learning. can include

장애물인식모듈(144)은 상기 심층신경망(DNN)에 포함된 노드들 사이의 가중치(weight)들에 기초하여 입력되는 영상 데이터에 포함되는 장애물의 속성을 판별할 수 있다.The obstacle recognition module 144 may determine attributes of obstacles included in input image data based on weights between nodes included in the deep neural network (DNN).

상기 제어부(140)는, 상기 영상획득부(120), 특히 전면 카메라 센서(120a)가 획득한 영상 전체를 사용하는 것이 아니라 일부 영역만을 사용하여 이동 방향에 존재하는 장애물의 속성을 판별할 수 있다.The control unit 140 may determine the attribute of the obstacle existing in the moving direction by using only a part of the image, not the entire image acquired by the image acquisition unit 120, particularly the front camera sensor 120a. .

또한, 상기 주행제어모듈(141)은 상기 인식된 장애물의 속성에 기초하여 상기 주행부(160)의 구동을 제어할 수 있다.Also, the driving control module 141 may control the driving of the driving unit 160 based on the attribute of the recognized obstacle.

한편, 저장부(130)에는 장애물 속성 판별을 위한 입력 데이터, 상기 심층신경망(DNN)을 학습하기 위한 데이터가 저장될 수 있다. Meanwhile, the storage unit 130 may store input data for obstacle attribute determination and data for learning the deep neural network (DNN).

저장부(130)에는 영상획득부(120)가 획득한 원본 영상과 소정 영역이 추출된 추출 영상들이 저장될 수 있다. The storage unit 130 may store the original image obtained by the image acquisition unit 120 and the extracted images from which a predetermined area is extracted.

또한, 실시예에 따라서는, 저장부(130)에는 상기 심층신경망(DNN) 구조를 이루는 웨이트(weight), 바이어스(bias)들이 저장될 수 있다.Also, depending on the embodiment, weights and biases constituting the deep neural network (DNN) structure may be stored in the storage unit 130 .

또는, 실시예에 따라서는, 상기 심층신경망 구조를 이루는 웨이트(weight), 바이어스(bias)들은 상기 장애물인식모듈(144)의 임베디드 메모리(embedded memory)에 저장될 수 있다.Alternatively, according to embodiments, weights and biases constituting the deep neural network structure may be stored in an embedded memory of the obstacle recognition module 144 .

한편, 상기 장애물인식모듈(144)은 상기 영상획득부(120)가 획득하는 영상의 일부 영역을 추출할 때마다 상기 추출된 영상을 트레이닝(training) 데이터로 사용하여 학습 과정을 수행하거나, 소정 개수 이상의 추출 영상이 획득된 후 학습 과정을 수행할 수 있다.On the other hand, whenever the obstacle recognition module 144 extracts a partial region of the image acquired by the image acquisition unit 120, it performs a learning process using the extracted image as training data, or a predetermined number of After the above extracted images are obtained, a learning process may be performed.

즉, 상기 장애물인식모듈(144)은 장애물을 인식할 때마다 인식 결과를 추가하여 웨이트(weight) 등 심층신경망(DNN) 구조를 업데이트(update)하거나, 소정 횟수의 트레이닝 데이터가 확보된 후에 확보된 트레이닝 데이터로 학습 과정을 수행하여 웨이트(weight) 등 심층신경망(DNN) 구조를 업데이트할 수 있다.That is, the obstacle recognition module 144 updates a deep neural network (DNN) structure such as a weight by adding a recognition result whenever an obstacle is recognized, or obtained after a predetermined number of training data is secured. A deep neural network (DNN) structure such as weights may be updated by performing a learning process with training data.

또는, 이동 로봇(100)은 통신부(190)를 통하여 상기 영상획득부(120)가 획득한 원본 영상 또는 추출된 영상을 소정 서버로 전송하고, 상기 소정 서버로부터 머신 러닝과 관련된 데이터를 수신할 수 있다.Alternatively, the mobile robot 100 may transmit the original image or the extracted image acquired by the image acquisition unit 120 to a predetermined server through the communication unit 190, and receive data related to machine learning from the predetermined server. there is.

이 경우에, 이동 로봇(100)은, 상기 소정 서버로부터 수신된 머신 러닝과 관련된 데이터에 기초하여 장애물인식모듈(141)을 업데이트(update)할 수 있다.In this case, the mobile robot 100 may update the obstacle recognition module 141 based on data related to machine learning received from the predetermined server.

한편, 이동 로봇(100)은 출력부(180)를 더 포함하여, 소정 정보를 영상으로 표시하거나 음향으로 출력할 수 있다. Meanwhile, the mobile robot 100 may further include an output unit 180 to display predetermined information as an image or output sound.

출력부(180)는 사용자의 명령 입력에 대응하는 정보, 사용자의 명령 입력에 대응하는 처리 결과, 동작모드, 동작상태, 에러상태 등을 영상으로 표시하는 디스플레이(미도시)를 포함할 수 있다. The output unit 180 may include a display (not shown) that displays information corresponding to a user's command input, a processing result corresponding to the user's command input, an operation mode, an operation state, an error state, and the like as images.

실시예에 따라서는, 상기 디스플레이는 터치패드와 상호 레이어 구조를 이루어 터치스크린으로 구성될 수 있다. 이 경우에, 터치스크린으로 구성되는 디스플레이는 출력 장치 이외에 사용자의 터치에 의한 정보의 입력이 가능한 입력 장치로도 사용될 수 있다. Depending on the embodiment, the display may be configured as a touch screen by forming a mutual layer structure with a touch pad. In this case, a display composed of a touch screen may be used as an input device capable of inputting information by a user's touch in addition to an output device.

또한, 출력부(180)는 오디오 신호를 출력하는 음향 출력부(미도시)를 포함할 수 있다. 음향 출력부는 제어부(140)의 제어에 따라 경고음, 동작모드, 동작상태, 에러상태 등의 알림 메시지, 사용자의 명령 입력에 대응하는 정보, 사용자의 명령 입력에 대응하는 처리 결과 등을 음향으로 출력할 수 있다. 음향 출력부(181)는, 제어부(140)로부터의 전기 신호를 오디오 신호로 변환하여 출력할 수 있다. 이를 위해, 스피커 등을 구비할 수 있다.Also, the output unit 180 may include an audio output unit (not shown) that outputs an audio signal. Under the control of the control unit 140, the sound output unit outputs a notification message such as a warning sound, an operation mode, an operation state, an error state, information corresponding to a user's command input, a processing result corresponding to a user's command input, and the like as sound. can The audio output unit 181 may convert an electrical signal from the control unit 140 into an audio signal and output the converted audio signal. To this end, a speaker or the like may be provided.

도 6은 본 발명의 일 실시예에 따른 이동 로봇의 클리프센서에 관한 설명에 참조되는 도면이고, 도 7은 클리프센서의 센서창 오염에 관한 설명에 참조되는 도면이다.FIG. 6 is a diagram referred to in the description of the cliff sensor of the mobile robot according to an embodiment of the present invention, and FIG. 7 is a diagram referred to in the description of contamination of the sensor window of the cliff sensor.

도 6을 참조하면, 본체(110)의 하측에 배치되는 클리프센서(172)는 광을 출력하는 출광부(610)와 반사광을 수신하는 수광부(620)를 포함할 수 있다. Referring to FIG. 6 , the cliff sensor 172 disposed below the main body 110 may include a light emitting unit 610 that outputs light and a light receiving unit 620 that receives reflected light.

상기 클리프센서(172)는 상기 출광부(610)에서 출력된 광이 바닥(700)에서 반사되어 수광부(620)에서 수신될 때까지의 시간에 기초하여 거리를 측정하고, 이렇게 측정된 측정거리값을 제어부(140)에 송신할 수 있다. 또한, 상기 클리프센서(172)는 상기 수광부(620)에서 수신되는 반사광의 광량을 상기 제어부(140)에 송신할 수 있다.The cliff sensor 172 measures the distance based on the time until the light output from the light output unit 610 is reflected from the floor 700 and received by the light receiver 620, and the measured distance value may be transmitted to the control unit 140. In addition, the cliff sensor 172 may transmit the amount of reflected light received from the light receiving unit 620 to the controller 140 .

한편, 도 6과 도 7에서 도시된 상기 클리프센서(172)의 배치 각도와 광 경로는 예시적인 것으로, 상기 클리프센서(172)가 측정하는 측정거리값은 바닥(700)에서 수직한 방향으로 측정된 값이거나 경사진 방향으로 측정된 값일 수 있다.On the other hand, the arrangement angle and light path of the cliff sensor 172 shown in FIGS. 6 and 7 are exemplary, and the measurement distance value measured by the cliff sensor 172 is measured in a direction perpendicular to the floor 700 It may be a measured value or a value measured in an inclined direction.

상기 제어부(140)는, 상기 클리프센서(172)의 센싱 데이터에 기초하여 상기 본체(110)를 이동시키는 주행부(160)를 제어할 수 있다. 예를 들어, 상기 수광부(620)에 반사광이 수신되지 않으면, 상기 제어부(140)는, 낭떠러지로 판별하고. 상기 본체(100)가 낭떠러지로 진입하지 않도록 회피 주행하도록 상기 주행부(160)를 제어할 수 있다. 여기서 회피 주행은 다양한 패턴으로 수행될 수 있다. 예를 들어, 이동 로봇(100)은, 일단 이동을 정지하고, 방향을 전환하여 이동함으로써 낭떠러지 지역을 회피할 수 있다.The control unit 140 may control the driving unit 160 for moving the main body 110 based on the sensing data of the cliff sensor 172 . For example, if reflected light is not received by the light receiving unit 620, the control unit 140 determines that it is a cliff. The driving unit 160 may be controlled to avoid driving so that the main body 100 does not enter the cliff. Here, avoidance driving may be performed in various patterns. For example, the mobile robot 100 can avoid a precipice area by temporarily stopping its movement, changing its direction and moving.

한편, 상기 클리프센서(172)는 상기 발광부(610) 및 상기 수광부(620)에 이격배치되는 센서창(630)을 포함할 수 있다. 센서창(630)은 투명한 소재로 형성되어 상기 발광부(610) 및 상기 수광부(620)를 보호하면서 광을 투과시킬 수 있다. 상기 발광부(610) 및 상기 수광부(620)의 전면에는 상기 센서창(630)이 배치되고, 상기 발광부(610) 및 상기 수광부(620)의 후면에는 바디가 배치되고, 상기 바디의 내부에는 상기 발광부(610) 및 상기 수광부(620)에 전력을 공급하고, 데이터를 처리할 수 있는 각종 회로물 등이 수용될 수 있다. 경우에 따라서, 상기 센서창(630)은 상기 클리프센서(172)의 전면 외부에 독립적으로 배치될 수 있다.Meanwhile, the cliff sensor 172 may include a sensor window 630 spaced apart from the light emitting part 610 and the light receiving part 620 . The sensor window 630 is formed of a transparent material to transmit light while protecting the light emitting part 610 and the light receiving part 620 . The sensor window 630 is disposed in front of the light emitting part 610 and the light receiving part 620, and a body is disposed in the rear surface of the light emitting part 610 and the light receiving part 620, and inside the body Various circuits capable of supplying power to the light emitting unit 610 and the light receiving unit 620 and processing data may be accommodated. In some cases, the sensor window 630 may be independently disposed outside the front surface of the cliff sensor 172 .

상기 센서창(630)은, 상기 발광부(610)이 광을 출력하는 전면에 배치되어 상기 발광부(610)가 출력하는 광을 통과시킬 수 있다. 상기 센서창(630)은, 상기 수광부(620의 전면에 배치되어 반사광을 통과시킬 수 있다. The sensor window 630 is disposed in front of the light emitting unit 610 to output light, and may pass the light output by the light emitting unit 610 . The sensor window 630 may be disposed in front of the light receiving unit 620 to pass reflected light.

도 6을 참조하면, 상기 발광부(610) 및 상기 수광부(620)는 격벽 등 기구물에 의해 분리되지 않고, 하나의 센서창(630)을 통하여 상기 발광부(610)가 출력한 광과 상기 수광부(620)에서 수신되는 반사광이 통과하게된다.Referring to FIG. 6 , the light emitting unit 610 and the light receiving unit 620 are not separated by a mechanism such as a partition wall, and the light output from the light emitting unit 610 through one sensor window 630 and the light receiving unit The reflected light received at 620 passes through.

도 7을 참조하면, 먼지나 톱밥같은 작은 물질에 의해, 상기 센서창(730)이 오염된 경우에, 바닥(700)이 아닌 오염된 센서창(730)에서 광이 반사될 수 있다. 따라서, 상기 발광부(610)가 출력한 광은 상기 오염된 센서창(730)에서 반사되고, 반사광은 상기 수광부(620)에서 수신될 것이다. Referring to FIG. 7 , when the sensor window 730 is contaminated by small substances such as dust or sawdust, light may be reflected from the contaminated sensor window 730 instead of the floor 700 . Accordingly, the light emitted from the light emitting unit 610 is reflected by the contaminated sensor window 730 and the reflected light is received by the light receiving unit 620 .

상기 수광부(620)가 반사광을 수신하지 않으면, 상기 제어부(140)는 낭떠러지로 판별하고 정지 및/또는 회피 주행 제어할 수 있다. 하지만, 도 7과 같이, 바닥(700)이 아닌 오염된 센서창(730)에서 광이 반사되어, 상기 수광부(620)가 반사광을 수신하면, 낭떠러지 지역으로 인식하지 못하여 이동 로봇(100)은 계속하여 이동하게 될 것이다. 만약 실제 낭떠러지 지역에서도 센서창(730)이 오염되어 있다면, 이동 로봇(100)은 낭떠러지로 낙하할 수 있다.If the light receiving unit 620 does not receive the reflected light, the controller 140 may determine that a cliff is a cliff and control stopping and/or avoiding driving. However, as shown in FIG. 7 , when light is reflected from the contaminated sensor window 730 instead of the floor 700 and the light receiver 620 receives the reflected light, it is not recognized as a cliff area and the mobile robot 100 continues and will move If the sensor window 730 is contaminated even in an actual cliff area, the mobile robot 100 may fall onto the cliff.

또한, 먼지나 톱밥같은 작은 물질에 의해 상기 센서창(630)이 오염된 경우, 클리프센서(172)의 측정거리가 정상적으로 출력되지 않아, 이동로봇(100)이 낙하할 수 있다.In addition, when the sensor window 630 is contaminated by small substances such as dust or sawdust, the measurement distance of the cliff sensor 172 is not normally output, and the mobile robot 100 may fall.

이를 방지하기 위해, 본 발명의 일 실시예에 따르면, 이동 로봇(100)은, 상기 센서창(630)이 오염된 상태를 감지하고, 상기 센서창(630)이 오염된 경우에는 해당방향으로 주행하지 않을 수 있다.In order to prevent this, according to an embodiment of the present invention, the mobile robot 100 detects a state in which the sensor window 630 is contaminated, and travels in the corresponding direction when the sensor window 630 is contaminated. may not

만약, 상기 발광부(610) 및 상기 수광부(620)가 기구물로 분리가 되어 있다면, 상기 발광부(610)가 출력한 광이 상기 발광부(610)를 보호하는 센서창에서 반사되더라도 상기 수광부(620)에 반사되지 않으므로, 이동 로봇(100)은 낭떠러지로 판별하고 회피할 수 있다. 즉, 센서창 오염도 낭떠러지와 동일하게 반사광이 수신되지 않아 동일한 회피 로직을 수행할 수 있다. 하지만, 실제 낭떠러지가 아닌 센서창 오염의 경우를 구분하여 판별하지 못하므로 주행이 비효율적으로 수행될 수 있다.If the light emitting part 610 and the light receiving part 620 are separated as an appliance, even if the light output from the light emitting part 610 is reflected from the sensor window protecting the light emitting part 610, the light receiving part ( 620, the mobile robot 100 can determine it as a cliff and avoid it. That is, the same avoidance logic can be performed because the reflected light is not received the same as the contamination of the sensor window and the cliff. However, since it is not possible to discriminate between a case of sensor window contamination and not an actual cliff, driving may be performed inefficiently.

따라서, 본 발명은 클리프센서(172)의 구조를 변경하지 않으면서도, 낙하 사고를 방지하고, 효율적으로 주행할 수 있는 방안을 제안한다.Therefore, the present invention proposes a method for preventing a fall accident and efficiently driving without changing the structure of the cliff sensor 172 .

본 발명의 일 측면에 따른 이동 로봇(100)은, 센서창(630) 오염으로 인한 반사광이 수신되는 경우에, 오염조건 만족횟수를 카운팅(counting)하고 일정수치에 도달하면 센서창(630) 오염으로 판별함으로써, 센서창(630) 오염을 정확하게 감지할 수 있다.The mobile robot 100 according to one aspect of the present invention counts the number of times the contamination condition is satisfied when the reflected light due to contamination of the sensor window 630 is received, and when a certain value is reached, the contamination of the sensor window 630 By determining as , contamination of the sensor window 630 can be accurately detected.

본 발명의 일 측면에 따른 이동 로봇(100)은, 센서창(630) 오염으로 인한 반사광이 수신되는 경우에도, 클리프센서(172)의 측정거리와 광량값을 사용하여 센서창(630) 오염을 감지할 수 있다.The mobile robot 100 according to one aspect of the present invention, even when reflected light due to the contamination of the sensor window 630 is received, uses the measured distance and the amount of light of the cliff sensor 172 to avoid contamination of the sensor window 630. can detect

제어부(140)는, 상기 클리프센서(172)에서 획득되는 데이터가 설정된 먼지오염조건을 만족하면, 먼지오염 카운트를 1 증가시킬 수 있다. 상기 제어부(140)는, 먼지오염조건을 만족할때마다, 상기 먼지오염 카운트를 1씩 증가시킬 수 있다. The controller 140 may increase the dust contamination count by 1 when the data obtained from the cliff sensor 172 satisfies the set dust contamination condition. The controller 140 may increase the dust contamination count by 1 whenever a dust contamination condition is satisfied.

본 명세서에서 센서창(630) 오염의 대표적인 원인인 먼지를 중심으로 센서창(630) 오염을 설명하나, 본 발명이 이에 한정되는 것은 아니다. 따라서, 본 명세서에서 '먼지오염조건', '먼지오염 카운트' 등의 용어는 각각 '오염조건', '오염 카운트'로 대체될 수 있고, 본 발명은 먼지, 톱밥, 진흙 등 다양한 원인의 의한 센서창(630) 오염에 적용 가능함은 당연하다.In this specification, contamination of the sensor window 630 is described centering on dust, which is a representative cause of contamination of the sensor window 630, but the present invention is not limited thereto. Therefore, in the present specification, terms such as 'dust contamination condition' and 'dust contamination count' may be replaced with 'contamination condition' and 'contamination count', respectively, and the present invention is a sensor due to various causes such as dust, sawdust, mud, etc. It goes without saying that it can be applied to window 630 contamination.

한편, 상기 먼지오염조건은, 상기 클리프센서(172)의 측정거리값과 수신 광량값을 기준으로 설정될 수 있다. 즉, 상기 먼지오염조건은 측정거리값조건과 수신 광량값조건을 포함할 수 있다.Meanwhile, the dust contamination condition may be set based on a measurement distance value of the cliff sensor 172 and a received light intensity value. That is, the dust contamination condition may include a measurement distance value condition and a received light intensity value condition.

센서창(630)이 오염되면, 상기 발광부(610)가 출력한 광이 오염된 센서창(630)에서 반사되고 반사광이 상기 수광부(620)에서 수신된다. 이에 따라, 센서창(630)이 오염된 경우, 광이 바닥(700)까지 가서 반사되어 돌아오는 경우보다 이동거리 및 소요시간이 짧아진다. 따라서, 센서창(630)이 오염된 경우, 상기 클리프센서(172)의 측정거리값이 작아지므로, 상기 측정거리값을 센서창(630) 오염 판단의 주요 인자로 사용할 수 있다. When the sensor window 630 is contaminated, light output from the light emitting unit 610 is reflected from the contaminated sensor window 630 and the reflected light is received by the light receiving unit 620 . Accordingly, when the sensor window 630 is contaminated, the moving distance and required time are shorter than when the light goes to the floor 700 and is reflected and returned. Therefore, when the sensor window 630 is contaminated, since the measurement distance value of the cliff sensor 172 becomes small, the measurement distance value can be used as a major factor in determining contamination of the sensor window 630.

한편, 상기 클리프센서(172)에서 문턱 등 특정 장애물이 감지되는 경우에도 상기 측정거리값이 바닥의 경우보다 짧아질 수 있다. 광이 바닥(700)보다 높은 문턱 등 장애물에서 반사되어 돌아오는 경우, 광이 바닥(700)까지 가서 반사되어 돌아오는 경우보다, 이동거리 및 소요시간이 짧다. 따라서, 센서창(630) 오염을 더 정확하게 판별하기 위해서, 다른 조건을 더 고려하는 것이 더 바람직하다.Meanwhile, even when a specific obstacle such as a threshold is detected by the cliff sensor 172, the measured distance value may be shorter than that of the floor. When the light is reflected from an obstacle such as a threshold higher than the floor 700 and returns, the moving distance and required time are shorter than when the light travels to the floor 700 and is reflected and returns. Therefore, in order to more accurately determine contamination of the sensor window 630, it is more desirable to further consider other conditions.

오염된 센서창(630)에서 반사되는 광의 광량은, 광이 바닥(700)까지 가서 반사되어 돌아오는 경우보다 작고, 광이 문턱까지 가서 반사되어 돌아오는 경우보다작다. 또한, 문턱에서 반사되는 광의 광량은, 광이 바닥(700)까지 가서 반사되어 돌아오는 경우보다 크다, 따라서, 상기 먼지오염조건은 수신 광량값조건을 포함할 수 있다. The amount of light reflected from the contaminated sensor window 630 is smaller than when the light travels to the floor 700 and is reflected back, and is smaller than when the light travels to the threshold and is reflected back. In addition, the amount of light reflected from the threshold is greater than that of the case where the light goes to the floor 700 and is reflected back. Therefore, the dust contamination condition may include a received light amount value condition.

본 발명의 일 실시예에 따르면, 상기 먼지오염조건은 측정거리값조건과 수신 광량값조건을 포함할 수 있다. 또한, 상기 측정거리값조건과 수신 광량값조건은 AND 조건일 수 있다. 따라서, 상기 제어부(140)는, 상기 측정거리값조건과 수신 광량값조건을 모두 만족하는 경우에만 상기 먼지오염조건을 만족하는 것으로 판별할 수 있다. 따라서, 상기 제어부(140)는, 상기 측정거리값조건과 수신 광량값조건을 모두 만족하는 경우에만 상기 먼지오염 카운트를 1씩 증가시킬 수 있다. According to an embodiment of the present invention, the dust pollution condition may include a measurement distance value condition and a received light intensity value condition. Also, the measurement distance value condition and the received light amount value condition may be AND conditions. Therefore, the controller 140 can determine that the dust contamination condition is satisfied only when both the measurement distance value condition and the received light amount value condition are satisfied. Accordingly, the controller 140 may increase the dust contamination count by one only when both the measurement distance value condition and the received light intensity value condition are satisfied.

한편, 상기 제어부(140)는, 먼지오염조건을 만족할때마다, 상기 먼지오염 카운트를 1씩 증가시키다가, 상기 먼지오염 카운트가 문턱값(threshhold) 이상이면, 이동 로봇(100)의 이동을 정지시켜, 사고 발생을 방지할 수 있다.Meanwhile, the control unit 140 increases the dust contamination count by 1 whenever a dust contamination condition is satisfied, and stops the movement of the mobile robot 100 when the dust contamination count is equal to or greater than a threshold. By doing so, accidents can be prevented.

센서창(630)이 오염된 상태에서 이동 로봇(100)이 이동을 계속하는 것은 낭떠러지를 감지할 수 없어 위험하다, 또한, 센서창(630)이 오염되었는데, 해당 지역의 주행을 계속하면 상기 센서창(630)이 더 오염될 수 있다. 따라서, 상기 제어부(140)는, 상기 먼지오염 카운트가 문턱값(threshhold) 이상이면, 상기 이동 로봇(100)이 해당 지역을 회피하는 회피 주행을 수행하도록 제어할 수 있다. It is dangerous for the mobile robot 100 to continue moving while the sensor window 630 is contaminated because it cannot detect the cliff. In addition, if the sensor window 630 is contaminated and continues to drive in the area, the sensor Window 630 may be further contaminated. Accordingly, the controller 140 may control the mobile robot 100 to perform avoidance driving avoiding a corresponding area when the dust contamination count is equal to or greater than a threshold.

또한, 상기 제어부(140)는, 상기 먼지오염 카운트가 문턱값(threshhold) 이상이면, 센서창(630) 오염을 나타내는 먼지오염에러를 발생시킬 수 있다. 여기서, 먼지오염에러의 발생은 센서창(630) 오염을 나타내는 신호를 발생시키는 것이다. 예를 들어, 상기 먼지오염에러는 출력부(180)를 통하여 출력되거나 통신부(190)를 통하여 외부기기로 전송될 수 있다. 또한, 제어부(140)는 먼지오염에러의 발생에 따라 이동 로봇(100)의 이동을 정지시킬 수 있다. 또한, 제어부(140)는 먼지오염에러의 발생에 따라 해당 지역에 대한 회피 주행을 수행하도록 제어할 수 있다.In addition, the controller 140 may generate a dust contamination error indicating contamination of the sensor window 630 when the dust contamination count is equal to or greater than a threshold. Here, the occurrence of the dust contamination error is to generate a signal indicating contamination of the sensor window 630 . For example, the dust contamination error may be output through the output unit 180 or transmitted to an external device through the communication unit 190. In addition, the controller 140 may stop the movement of the mobile robot 100 according to occurrence of a dust contamination error. In addition, the controller 140 may control avoidance driving in the corresponding area according to occurrence of a dust pollution error.

한편, 실시예에 따라서, 상기 클리프센서(172)에서 획득되는 데이터가 설정된 먼지오염조건을 만족하면, 이동 로봇(100)이 일단 정지할 수 있다. 주행 중인 이동 로봇(100)은 센서창(630) 오염이 감지되면 해당 방향으로 진입하지 않도록 회피하며 지속될경우 오염감지에러를 발생시킬 수 있다. 이에 따라, 센서창(630)이 오염되더라도 낭떠러지영역 진입으로 인한 낙하를 방지할 수 있다.Meanwhile, according to an embodiment, when the data obtained from the cliff sensor 172 satisfies the set dust pollution condition, the mobile robot 100 may stop once. When contamination of the sensor window 630 is detected, the moving mobile robot 100 avoids entering in the corresponding direction and may generate a contamination detection error if it continues. Accordingly, even if the sensor window 630 is contaminated, falling due to entry into the cliff area can be prevented.

본 발명의 일 실시예에 따르면, 상기 클리프센서(172)의 측정거리와 광량값을 사용하여 센서창(630) 오염을 감지할 수 있다. 먼지 오염시 거리값이 평상시 측정되는 거리(센서에서 바닥까지 거리)보다 작게 나오며 광량 또한 작게 나온다. 또한, 센서오염(다량)과 문턱에 밀접되어 있는 것은 광량값으로 구별할 수 있다.According to an embodiment of the present invention, contamination of the sensor window 630 may be detected using the measurement distance and light intensity value of the cliff sensor 172 . In case of dust contamination, the distance value is smaller than the normally measured distance (the distance from the sensor to the floor) and the amount of light is also small. In addition, sensor contamination (a lot) and those close to the threshold can be distinguished by the light amount value.

한편, 제어부(140)는, 상기 클리프센서(172)의 센싱 데이터가 먼지오염조건을 만족하더라도 바로 에러를 띄우지 않고, 먼지오염 카운트를 증가시키며 상기 먼지오염 카운트가 일정 문턱값(threshold) 이상이면 에러를 발생시킬 수 있다. 이에 따라, 장애물 등반, 오염감지조건(먼지오염조건)과 비슷한 환경 주행 시 일시적으로 오염감지조건을 만족해서 발생하는 오염감지 에러 오동작을 방지할 수 있다.On the other hand, even if the data sensed by the cliff sensor 172 satisfies the dust contamination condition, the control unit 140 does not immediately display an error and increases the dust contamination count. can cause Accordingly, when climbing an obstacle or driving in an environment similar to the contamination detection condition (dust contamination condition), it is possible to prevent an erroneous operation of a contamination detection error caused by temporarily satisfying the contamination detection condition.

한편, 센서창(630)이 오염되지 않았음에도 오염감지에러 오동작으로 인한 주행중 멈춤상황이 발생할 수 있다. On the other hand, even though the sensor window 630 is not contaminated, a contamination detection error may cause a stop situation during driving due to an erroneous operation.

또한, 센서창(630)이 완전히 오염되어 측정거리값이 낭떠러지 위에서도 변하지 않는 경우 에러가 늦게 발생하면 낙하가 발생할 수 있다.In addition, when the sensor window 630 is completely contaminated and the measured distance value does not change even on a cliff, a fall may occur if an error occurs late.

따라서, 이동 로봇(100)은, 먼지오염조건 만족시 해당방향으로 주행하지 않도록 낭떠리지(Cliff) 회피 모션을 수행함으로써, 낭떠러지 영역인지 알 수 없는 오염상태에서 낭떠러지 진입으로 인한 낙하를 방지할 수 있다.Therefore, the mobile robot 100 performs a cliff avoidance motion so as not to travel in the corresponding direction when the dust contamination condition is satisfied, thereby preventing falling due to entry into the cliff in a contaminated state in which it is unknown whether it is a cliff area. .

예를 들어, 상기 클리프센서(172)의 센싱 로우데이터(Rawdata)가 20ms간격으로 발생한다면, 1분 동안에는 3000(50*60)개의 로우데이터가 발생한다. 이때, 하나의 로우데이터가 먼지오염조건 만족시 회피주행을 수행하고, 먼지오염조건을 만족하는 로우데이터 발생이 소정시간 지속되면 에러를 발생시킬 수 있다.For example, if raw data sensed by the cliff sensor 172 is generated at intervals of 20 ms, 3000 (50*60) raw data are generated during one minute. At this time, when one piece of raw data satisfies the dust contamination condition, avoidance driving is performed, and if generation of raw data satisfying the dust contamination condition continues for a predetermined time, an error may be generated.

도 8은 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이다.8 is a flowchart illustrating a control method of a mobile robot according to an embodiment of the present invention.

도 8을 참조하면, 상기 제어부(140)는, 먼지오염조건을 만족할때마다(S810), 상기 먼지오염 카운트를 1씩 증가시킬 수 있다(S820). 상술한 것과 같이, 먼지오염조건은 측정거리값조건과 광량값조건을 포함할 수 있다. 상기 제어부(140)는, 측정거리값조건과 광량값조건이 모두 만족되는 경우에(S810), 먼지오염 카운트를 1 증가시킬 수 있다(S820).Referring to FIG. 8 , the controller 140 may increase the dust contamination count by 1 whenever a dust contamination condition is satisfied (S810). As described above, the dust contamination condition may include a measurement distance value condition and a light intensity value condition. The controller 140 may increase the dust contamination count by 1 when both the measurement distance value condition and the light intensity value condition are satisfied (S810).

일 실시예에 따르면, 상기 제어부(140)는, 상기 측정거리값조건과 상기 광량값조건이 모두 만족되지 못하는 경우에 상기 먼지오염 카운트를 1 감소시킬 수 있다(S830). 이에 따라, 상기 먼지오염 카운트를 초기화하지 않는다.According to an embodiment, the control unit 140 may decrease the dust contamination count by 1 when both the measurement distance value condition and the light intensity value condition are not satisfied (S830). Accordingly, the dust contamination count is not initialized.

한편, 상기 제어부(140)는, 상기 먼지오염 카운트가 일정 문턱값(threshold) 이상이면(S840), 에러를 발생시키고 이동을 정지할 수 있다(S850). 상기 누적되는 먼지오염 카운트가 문턱값에 도달하지 않으면 에러가 발생하지 않는다.Meanwhile, if the dust contamination count is equal to or greater than a predetermined threshold (S840), the control unit 140 may generate an error and stop the movement (S850). If the cumulative dust contamination count does not reach the threshold value, no error occurs.

예를 들어, 상기 클리프센서(172)의 센싱 로우데이터(Rawdata)가 20ms간격으로 발생한다면, 1분 동안에는 3000(50*60)개의 로우데이터가 발생한다. 이때, 로우데이터 발생이 몇초동안 지속되면(S840), 에러를 발생시킬 수 있다(S850).For example, if raw data sensed by the cliff sensor 172 is generated at intervals of 20 ms, 3000 (50*60) raw data are generated during one minute. At this time, if the generation of raw data continues for several seconds (S840), an error may occur (S850).

한편, 에러 발생 및 이동 정지(S850)는, 동시에 수행되거나, 어느 하나가 먼저 수행된 후 나머지가 수행될 수 있다.Meanwhile, the occurrence of an error and the stop of movement (S850) may be performed simultaneously, or one may be performed first and then the other may be performed.

한편, 일 실시예에 따르면, 상기 먼지오염조건이 만족되면(S810), 제어부(140)는, 현재 주행방향으로 이동하지 않도록 방향 전환하여 이동하는 회피 주행하도록 제어할 수 있다. 이에 따라, 먼지오염에러가 발생하지 않은 상태에서도 사고 발생을 방지할 수 있다.Meanwhile, according to an embodiment, when the dust pollution condition is satisfied (S810), the controller 140 may control the vehicle to avoid traveling by changing direction so as not to move in the current driving direction. Accordingly, it is possible to prevent an accident from occurring even in a state where no dust contamination error occurs.

도 9 내지 도 11은 본 발명의 일 실시예에 따른 센서창 오염에 대한 설명에 참조되는 도면이다.9 to 11 are diagrams referenced for description of sensor window contamination according to an embodiment of the present invention.

도 9는 다양한 먼지 유형, 톱밥 유형에 따라 클리프센서(172)에서 측정된 측정거리값 실험예를 도시한 것이다. 9 illustrates an experimental example of measured distance values measured by the cliff sensor 172 according to various types of dust and sawdust.

도 9를 참조하면, 먼지, 톱밥으로 센서창(630)이 오염되면, 대부분 a값보다 작은 값까지 측정거리값이 감소한다. 하지만, 일부 데이터는 a값보다 크기때문에 측정거리값조건은 a값보다 큰 일부 데이터까지 포함하는 s값을 기준으로 설정할 수 있다. s값보다 큰 b값을 기준으로 설정하게 되면, 조건을 만족시키기 더 어렵기 때문에, 오염감지 감도가 떨어질 수 있다.Referring to FIG. 9 , when the sensor window 630 is contaminated with dust or sawdust, the measured distance value decreases to a value smaller than the value a. However, since some data is greater than the value a, the measurement distance value condition can be set based on the value s including some data greater than the value a. If the value of b is set based on the value of b, which is greater than the value of s, since it is more difficult to satisfy the condition, contamination detection sensitivity may decrease.

한편, 센서측정편차로 인해 같은 조건에서도 낭떠러지로 감지되는 경우가 발생할 수 있다.On the other hand, due to the sensor measurement deviation, it may occur that a cliff is detected even under the same conditions.

먼지오염에러가 발생전에 클리프센서(172)의 측정거리가 지나치게 측정거리값조건을 많이 만족하지 않도록 조건을 수정하는 것이 더 바람직할 수 있다.It may be more desirable to modify the conditions so that the measurement distance of the cliff sensor 172 does not excessively satisfy the measurement distance value condition before the dust contamination error occurs.

예를 들어, 최근 N개의 측정거리값 중 최대값만 사용하도록 조건을 수정할 수 있다. 최근 N개의 측정거리값 중 최대값만 사용하여, 최대값이 s값미만일때만 센서오염에 의한 낭떠러지로 판단할 수 있다. 이에 따라, 제어부(140)는, 최근 N개의 측정거리값 중 최대값이 상기 먼지오염조건을 만족할 때만 상기 회피 주행을 수행하도록 제어할 수 있다.For example, the condition may be modified to use only the maximum value among the last N measured distance values. Only the maximum value among the latest N measured distance values can be used, and only when the maximum value is less than the s value, it can be determined as a cliff caused by sensor contamination. Accordingly, the control unit 140 may control the avoidance driving to be performed only when the maximum value among the latest N measured distance values satisfies the dust pollution condition.

도 10은 상기 클리프센서(172)의 센싱 로우데이터(Rawdata)가 20ms간격으로 발생할 때, 각 로우데이터마다 s값과 비교하는 경우를 예시하고, 도 11은 상기 클리프센서(172)의 센싱 로우데이터(Rawdata)가 20ms간격으로 발생할 때, 최근 N개의 측정거리값 중 최대값을 s값과 비교하는 경우를 예시한다. 도 11은 소정 구간에서 최대값을 사용하므로, 오염감지에 사용하는 데이터의 측정거리가 전체적으로 상승하고, 도 10에서 s값 미만으로 떨어진 구간도 도 11에서는 s값보다 큰 것을 확인할 수 있다. 이에 따라, 지나친 조건 만족 판별 횟수를 줄일 수 있다.10 illustrates a case where raw data sensed by the cliff sensor 172 is generated at intervals of 20 ms and compared with the s value for each raw data, and FIG. 11 shows raw data sensed by the cliff sensor 172 When (Rawdata) occurs at 20 ms intervals, the case in which the maximum value among the latest N measured distance values is compared with the s value is exemplified. Since FIG. 11 uses the maximum value in a predetermined section, it can be seen that the measurement distance of the data used for contamination detection increases overall, and the section falling below the s value in FIG. 10 is greater than the s value in FIG. 11 . Accordingly, it is possible to reduce the excessive number of times of condition satisfaction determination.

클리프센서(172) 오염에러가 발생하지 않고 낭떠러지 회피모션만 할 경우, 맵(map)에는 회피모션을 수행한 낭떠러지 영역이 다량 등록된다. 이 경우에 등록된 낭떠러지 영역 주변이 전부 낭떠러지로 인식이 되기에 주행 불가상태가 될 수 있다. 센서창(630) 먼지오염에 의한 낭떠러지 회피모션이 자주 발생하면, 주행하여야할 패스(path)가 낭떠러지 영역으로 인식되고, 차단됨으로써, 주행이 불가능한 경우가 발생할 수 있다.When only the cliff avoidance motion is performed without the contamination error occurring in the cliff sensor 172, a large amount of cliff areas where the avoidance motion has been performed are registered in the map. In this case, since all areas around the registered cliff area are recognized as cliffs, driving may become impossible. If a cliff avoidance motion due to dust contamination of the sensor window 630 frequently occurs, a path to be driven is recognized as a cliff area and blocked, so that driving may be impossible.

일 실시예에 따르면, 거리값에 맥스 필터(Max filter)를 적용하여 센서창 오염감지 조건이 되었을 경우 낭떠러지로 감지하여 해당방향으로 가지 않도록 회피한다.According to an embodiment, a max filter is applied to a distance value to avoid going in the corresponding direction by detecting a cliff when a contamination detection condition is met in the sensor window.

클리프센서(172)의 거리 측정때마다 값의 편차가 발생할 수 있고, 오염상태가 아니어도 거리조건이 편차로 인해 만족되어 낭떠러지 회피모션이 자주 발생할 수 있다. 이때. 최근 복수의 거리값 중 최대값을 사용하는 맥스 필터를 적용하여 거리측정 편차를 줄이고, 조건 만족 발생 빈도를 줄일 수 있다. 이에 따라, 에러 발생 전에 센서오염에 의한 낭떠러지 회피모션을 최소화할 수 있다.A value deviation may occur whenever the distance of the cliff sensor 172 is measured, and a cliff avoidance motion may frequently occur because the distance condition is satisfied due to the deviation even if there is no contamination. At this time. It is possible to reduce the distance measurement deviation and reduce the occurrence frequency of condition satisfaction by applying a max filter using the maximum value among a plurality of recent distance values. Accordingly, it is possible to minimize the cliff avoidance motion caused by sensor contamination before an error occurs.

먼지오염조건 만족 시(S810), 먼지오염 카운트를 증가시키고(S820), 만족하지 못하면(S810), 먼지오염 카운트를 0으로 만들거나 감소시킬 경우, 상황에 따라 먼지오염에러가 발생하지 않을 수 있다.When the dust pollution condition is satisfied (S810), the dust pollution count is increased (S820), and if not satisfied (S810), when the dust pollution count is set to 0 or reduced, a dust pollution error may not occur depending on the situation. .

클리프센서(172)의 로우데이터와 같이 센서오염에 의한 낭떠러지 감지(먼지오염조건 만족)는 간헐적으로 발생하나, 먼지오염조건을 만족하지 않는 데이터들이 존재하면 먼지오염 카운트가 감소하므로, 상당한 시간동안 방치해도 에러가 발생하지 않을 수 있다. 이 문제를 에러조건 문턱값을 크게 줄이는 방식으로 해결할 경우 어두운 계열의 바닥장애물을 넘어갈때 오감지 에러가 발생할 수 있다.Like the raw data of the cliff sensor 172, cliff detection by sensor contamination (satisfying the dust contamination condition) occurs intermittently, but if there is data that does not satisfy the dust contamination condition, the dust contamination count decreases, so it is left unattended for a considerable period of time Even if you do, the error may not occur. If this problem is solved by greatly reducing the error condition threshold, a false detection error may occur when crossing a dark floor obstacle.

도 12는 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이다.12 is a flowchart illustrating a control method of a mobile robot according to an embodiment of the present invention.

도 12를 참조하면, 제어부(140)는, 제1 시간 주기를 경과할 때까지(S910), 시간 경과(예를 들어, 로우데이터가 하나 들어오는 시간 20ms)에 따라, 시간 카운트를 1씩 증가시킬 수 있다(S920). Referring to FIG. 12, the controller 140 increases the time count by 1 according to the elapse of time (eg, 20 ms when one raw data is received) until the first time period elapses (S910). It can (S920).

또한, 상기 제어부(140)는, 상기 제1 시간 주기를 경과하면(S910), 상기 먼지오염 카운트 및 시간 카운트를 초기화할 수 있다(S930). Also, when the first time period elapses (S910), the control unit 140 may initialize the dust contamination count and the time count (S930).

한편, 상기 제어부(140)는, 먼지오염조건 만족하면(S940), 상기 먼지오염 카운트를 1만큼 증가시킬 수 있다(S950). 상술한 것과 같이, 먼지오염조건은 측정거리값조건과 광량값조건을 포함할 수 있다. 상기 제어부(140)는, 측정거리값조건과 광량값조건이 모두 만족되는 경우에(S940), 먼지오염 카운트를 1 증가시킬 수 있다(S950). 예를 들어, 상기 제어부(140)는, 거리값이 S값미만이고, 광량값이 X값미만인 경우에(S940), 먼지오염 카운트를 1 증가시킬 수 있다(S950).On the other hand, if the dust contamination condition is satisfied (S940), the controller 140 may increase the dust contamination count by 1 (S950). As described above, the dust contamination condition may include a measurement distance value condition and a light intensity value condition. The controller 140 may increase the dust contamination count by 1 when both the measurement distance value condition and the light quantity condition are satisfied (S940). For example, the controller 140 may increase the dust contamination count by 1 when the distance value is less than the S value and the light intensity value is less than the X value (S940).

한편, 상기 제어부(140)는, 상기 제1 시간 주기 경과 전에 상기 먼지오염 카운트가 제1 문턱값(th1) 이상이면(S960), 먼지오염 에러를 발생시킬 수 있다(S970).Meanwhile, if the dust contamination count is greater than or equal to a first threshold value th1 before the first time period elapses (S960), the control unit 140 may generate a dust contamination error (S970).

즉, 상기 제1 시간 주기는 먼지오염 에러를 판단하는 시간 주기로써, 상기 제1 시간 주기가 경과하면(S910), 카운트 값들이 초기화된다(S930), 그리고, 다시 다음 제1 시간 주기가 시작되고, 제1 시간 주기 동안에 먼지오염 카운트가 제1 문턱값(th1)에 도달하면(S960), 먼지오염 에러를 발생시킬 수 있다(S970).That is, the first time period is a time period for determining a dust contamination error, and when the first time period elapses (S910), count values are initialized (S930), and then the next first time period starts again , When the dust contamination count reaches the first threshold value th1 during the first time period (S960), a dust contamination error may be generated (S970).

일 실시예에 따른 이동 로봇(100)은, 소정 시간 주기 동안에 상기 먼지오염 카운트가 문턱값보다 크면, 이동을 정지할 수 있다. 또한, 상기 문턱값은, 상기 소정 시간 주기에 따라 다르게 설정될 수 있다. 상기 제1 시간 주기와 상기 제1 문턱값(th1)은 연관되어 설정될 수 있다. 예를 들어, 상기 제1 시간 주기가 길게 설정되면 상기 제1 문턱값(th1)도 크게 설정되고, 상기 제1 시간 주기가 짧게 설정되면 상기 제1 문턱값(th1)도 작게 설정될 수 있다. 또한, 상기 문턱값은, 상기 먼지오염 카운트가 증가하는 방식에 따라 다르게 설정될 수 있다. The mobile robot 100 according to an embodiment may stop moving when the dust contamination count is greater than a threshold value during a predetermined time period. Also, the threshold value may be set differently according to the predetermined time period. The first time period and the first threshold value th1 may be set in association with each other. For example, when the first time period is set to be long, the first threshold value th1 is also set to be large, and when the first time period is set to be short, the first threshold value th1 is also set to be small. In addition, the threshold value may be set differently depending on how the dust contamination count increases.

본 발명의 일 실시예에 따르면, 상기 센서창(630)이 오염되었을때 이를 감지하여 이동 로봇(100)이 위험한 환경에서 주행하는 것을 방지할 수 있다.According to one embodiment of the present invention, it is possible to prevent the mobile robot 100 from driving in a dangerous environment by detecting when the sensor window 630 is contaminated.

본 발명의 일 실시예에 따르면, 상기 센서창(630) 오염감지를 위하여 상기 클리프센서(172)의 거리값과 광량값을 사용할 수 있다. According to an embodiment of the present invention, the distance value and the light intensity value of the cliff sensor 172 may be used to detect contamination of the sensor window 630 .

실시예에 따라서, 거리값에 상술한 맥스필터를 적용하여, 먼지오염조건이 만족되면 낭떠러지로 감지하여 회피할 수 있다.Depending on the embodiment, by applying the above-described Max filter to the distance value, when the dust pollution condition is satisfied, the cliff may be detected and avoided.

본 발명의 일 실시예에 따르면, 일정 시간 주기로 먼지오염 카운트를 초기화할 수 있다. 이 경우에도, 먼지오염 카운트가 설정된 문턱값보다 커지면 이동 로봇(100)을 정지시킨후 먼지에러를 발생시킬 수 있다. According to an embodiment of the present invention, the dust contamination count may be initialized at regular time intervals. Even in this case, if the dust contamination count is greater than the set threshold value, the mobile robot 100 may be stopped and then a dust error may be generated.

한편, 주행 환경에 따라 에러가 정확하게 발생하지 않는 경우가 있을 수 있고, 이동 로봇(100)이 과다한 회피 주행을 수행할 수 있다.Meanwhile, there may be cases in which errors do not occur accurately depending on the driving environment, and the mobile robot 100 may perform excessive avoidance driving.

도 13은 과다한 회피 주행에 관한 설명에 참조되는 도면이다.13 is a diagram referenced for description of excessive avoidance driving.

도13을 참조하면 바닥이 밝은 바닥(1310)과 어두운 바닥(1320)을 포함할 수 있다. 어두운 바닥(1320)의 경우, 클리프센서(172)의 거리값이 밝은 바닥(1310)의 거리값보다 작게 감지되는 경우가 발생할 수 있다. 센서창(630)이 오염된 상태에서 밝은 바닥(1310)에서는 먼지오염 카운트가 오르지 않고 어두운 바닥(1320)에서만 먼지오염 카운가 오르는 경우가 발생할 수 있다.Referring to FIG. 13 , the floor may include a light floor 1310 and a dark floor 1320 . In the case of a dark floor 1320 , a distance value of the cliff sensor 172 may be detected smaller than a distance value of a bright floor 1310 . In a state in which the sensor window 630 is contaminated, the dust contamination count does not rise on the light floor 1310 and the dust contamination counter increases only on the dark floor 1320.

센서창(630) 먼지오염상태에서 밝은 바닥(1310)은 먼지오염조건에 만족하지 않다가 검은 바닥(1320)에서 먼지오염조건을 만족하는 경우, 센서창(630) 오염에 의한 낭떠러지 회피모션으로 검은 바닥(1320)과 밝은 바닥(1310)을 왔다갔다 하는경우(1331, 1332, 1333, 1334)가 발생할 수 있다.In the dust contamination condition of the sensor window 630, when the light floor 1310 does not satisfy the dust contamination condition and the black floor 1320 satisfies the dust contamination condition, the sensor window 630 is in a cliff avoidance motion caused by contamination. When the floor 1320 and the bright floor 1310 are moved back and forth (1331, 1332, 1333, 1334) may occur.

이 경우에 문턱값이 크게 설정되어 있으면, 에러를 발생시켜야하는 상황을 놓칠 수 있다. 반대로 문턱값이 작게 설정되어 있으면 에러 오동작 가능성이 있다.In this case, if the threshold value is set high, a situation that should generate an error may be missed. Conversely, if the threshold value is set small, there is a possibility of error malfunction.

검은 바닥(1320) 주행 시 거리값이 작게 들어오는 경향이 있어 먼지오염조건을 쉽게 만족할 수 있다. 이에 따라, 이동 로봇(100)은, 검은 바닥(1320) 진입 후 먼지오염상태로 인식하여 낭떠러지 회피할 수 있다. 바닥 환경에 따라 이러한 상황이 반복되며 이때 검은 바닥(1320)에 있는 시간이 짧으면 먼지오염에러는 발생하지 않는다.When driving on the black floor 1320, the distance value tends to come in small, so dust contamination conditions can be easily satisfied. Accordingly, after entering the black floor 1320, the mobile robot 100 recognizes it as a dust-contaminated state and can avoid a cliff. This situation is repeated depending on the floor environment, and at this time, if the time in the black floor 1320 is short, the dust contamination error does not occur.

따라서, 도 13과 같이, 이동 로봇(100)이 검은 바닥(1320)을 진입할 때마다 낭떠러지 회피 모션을 취하고, 주행할 수 있는 영역이 없어질 수 있다. 따라서, 바닥 환경에 따라 오동작을 방지할 수 있는 먼지감지 카운팅 방식이 필요하다.Therefore, as shown in FIG. 13 , whenever the mobile robot 100 enters the black floor 1320 , a cliff avoiding motion may be taken, and an area in which it may travel may disappear. Therefore, there is a need for a dust detection and counting method capable of preventing malfunction depending on the floor environment.

상기 제어부(140)는, 일정한 시간 동안에 먼지오염조건이 복수회 만족되어도, 하나만 반영하여 상기 먼지오염 카운트를 1만 증가시킬 수 있다. 또한, 이와 같이 먼지감지 카운팅 방식이 달라지면 문턱값도 다르게 설정할 수 있다.The control unit 140 may increase the dust pollution count by 1 by reflecting only one condition even if the dust pollution condition is satisfied a plurality of times during a predetermined time. In addition, if the dust detection counting method is changed in this way, the threshold value may be set differently.

도 14는 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이다.14 is a flowchart illustrating a control method of a mobile robot according to an embodiment of the present invention.

도 14를 참조하면, 제어부(140)는, 제1 시간 주기를 경과할 때까지(S1410), 시간 경과(예를 들어, 로우데이터가 하나 들어오는 시간 20ms)에 따라, 시간 카운트를 1씩 증가시킬 수 있다(S1420). Referring to FIG. 14, the controller 140 increases the time count by 1 according to the elapse of time (eg, 20 ms when one raw data is received) until the first time period elapses (S1410). It can (S1420).

또한, 상기 제어부(140)는, 상기 제1 시간 주기를 경과하면(S1410), 상기 먼지오염 카운트 및 시간 카운트를 초기화할 수 있다(S1430). Also, when the first time period elapses (S1410), the control unit 140 may initialize the dust contamination count and the time count (S1430).

한편, 상기 먼지오염 카운트는, 제2 시간 주기 동안에 상기 먼지오염조건이 복수회 만족되어도, 상기 제2 시간 주기 경과 후 1만 증가될 수 있다.Meanwhile, the dust contamination count may increase by only 1 after the lapse of the second time period even if the dust contamination condition is satisfied a plurality of times during the second time period.

상기 제어부(140)는, 제2 시간 주기 동안에 상기 먼지오염조건이 만족되었는지 판별할 수 있다(S1460). 경우에 따라서, 상기 제어부(140)는, 제2 시간 주기 동안에 상기 먼지오염조건이 만족되는 횟수를 카운팅할 수 있다.The controller 140 may determine whether the dust contamination condition is satisfied during the second time period (S1460). In some cases, the controller 140 may count the number of times the dust contamination condition is satisfied during the second time period.

한편, 상기 제어부(140)는, 상기 제2 시간 주기 동안에 상기 먼지오염조건이 복수회 만족되어도, 상기 제2 시간 주기 경과 후(S1460), 상기 먼지오염 카운트를 1만 증가시킬 수 있다(S1480).Meanwhile, even if the dust pollution condition is satisfied a plurality of times during the second time period, the control unit 140 may increase the dust pollution count by 1 after the second time period elapses (S1460) (S1480). .

예를 들어, 1초에 로우데이터 50개면 0.02초=20ms당 로우데이터가 카운팅가능하나, 제2 시간 주기 동안에는 상기 먼지오염조건을 만족하는 로우데이터가 몇개가 나와도 제2 시간 주기 간격으로 상기 먼지오염 카운트를 1씩 증가시킬 수 있다.For example, if 50 pieces of raw data per second, raw data per 0.02 seconds = 20 ms can be counted, but during the second time period, even if some raw data satisfying the dust contamination condition is generated, the dust contamination occurs at intervals of the second time period. The count can be incremented by 1.

일 실시예에 따르면, 클리프센서(172)의 거리값에 맥스필터 적용없이 상기 먼지오염조건이 되었을때 상기 먼지오염 카운트를 증가시킨다. 이때, 로우데이터가 제2 시간 주기 동안에 여러 번 먼지오염조건을 만족하더라도 한번만 먼지오염 카운트를 증가시킨다. 이에 따라, 검은 바닥(1320)에 짧게 머물더라도 먼지오염 카운트가 1 증가되면서, 바닥들(1310, 1320)을 왕복하더라도 먼지오염 카운트가 급증하지 않아 불필요한 주행, 낭떠러지 회피모션, 낭떠러지 지역 등록을 방지할 수 있다.According to an embodiment, the dust contamination count is increased when the dust contamination condition is reached without applying the max filter to the distance value of the cliff sensor 172 . At this time, even if the raw data satisfies the dust contamination condition several times during the second time period, the dust contamination count is increased only once. Accordingly, the dust contamination count is increased by 1 even when staying on the black floor 1320 for a short time, and the dust contamination count does not increase rapidly even if the floors 1310 and 1320 are reciprocated, so unnecessary driving, cliff avoidance motion, and cliff area registration can be prevented. can

한편, 상기 제어부(140)는, 상기 제1 시간 주기 경과 전에 상기 먼지오염 카운트가 제2 문턱값(th2)보다 크면(S1490), 먼지오염 에러를 발생시킬 수 있다(S1510). 먼지오염 에러 발생시, 먼지오염 카운트는 0으로 초기화될 수 있다(S1510).Meanwhile, if the dust contamination count is greater than the second threshold value th2 before the lapse of the first time period (S1490), the controller 140 may generate a dust contamination error (S1510). When a dust contamination error occurs, the dust contamination count may be initialized to 0 (S1510).

일 실시예에 따르면, 상기 제2 문턱값(th2)은 상기 제1 문턱값(th1)보다 작게 설정될 수 있다.According to an embodiment, the second threshold value th2 may be set smaller than the first threshold value th1.

일 실시예에 따르면, 상기 제어부(140)는, 상기 먼지오염조건이 만족되면(S1440), 오염감지 플래그(flag)를 트루(true)로 설정할 수 있다(S1450). 한편, 상기 오염감지 플래그의 기본(default) 상태는 폴스(false)일 수 있다. 상기 오염감지 플래그 정보는 상기 제어부(140)의 자체 메모리에 저장되거나 저장부(130)에 저장될 수 있다.According to an embodiment, when the dust contamination condition is satisfied (S1440), the control unit 140 may set a contamination detection flag to true (S1450). Meanwhile, the default state of the contamination detection flag may be false. The contamination detection flag information may be stored in the memory of the control unit 140 or stored in the storage unit 130 .

상기 제어부(140)는, 현재(최신) 로우데이터가 상기 먼지오염조건을 만족하면(S1440), 상기 오염감지 플래그 정보를 트루로 설정할 수 있다(S1450). 상기 제어부(140)는, 현재(최신) 로우데이터가 측정거리값조건과 광량값조건이 모두 만족되는 경우에(S1440), 상기 오염감지 플래그 정보를 트루로 설정할 수 있다(S1450).The control unit 140 may set the pollution detection flag information to true when the current (latest) raw data satisfies the dust contamination condition (S1440). The control unit 140 may set the contamination detection flag information to true when the current (latest) raw data satisfies both the measured distance value condition and the light quantity condition (S1440).

이 경우에, 상기 제어부(140)는, 상기 제2 시간 주기가 경과되고(S1460), 상기 오염감지 플래그를 확인하여 트루이면(S1470), 상기 먼지오염 카운트를 1 증가시킬 수 있다(S1480).In this case, the controller 140 may increase the dust contamination count by 1 after the second time period has elapsed (S1460), and if the contamination detection flag is determined to be true (S1470) (S1480).

또한, 상기 제어부(140)는, 상기 먼지오염에러가 발생하면(S1510), 상기 오염감지 플래그(flag)를 폴스(false)로 설정할 수 있다(S1520), 즉, 상기 제어부(140)는, 상기 먼지오염에러가 발생하면(S1510), 상기 오염감지 플래그(flag)를 디폴트 상태로 복원할 수 있다.In addition, when the dust contamination error occurs (S1510), the control unit 140 may set the contamination detection flag to false (S1520), that is, the control unit 140 may When a dust contamination error occurs (S1510), the contamination detection flag may be restored to a default state.

본 발명에 따른 이동 로봇은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.The mobile robot according to the present invention is not limited to the configuration and method of the embodiments described above, but all or part of each embodiment is selectively combined so that various modifications can be made. may be configured.

마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나, 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다.Similarly, while actions are depicted in the drawings in a particular order, it should not be construed as requiring that those actions be performed in the specific order shown or in the sequential order, or that all depicted actions must be performed to obtain desired results. . In certain cases, multitasking and parallel processing can be advantageous.

한편, 본 발명의 실시예에 따른 이동 로봇의 제어 방법은, 프로세서가 읽을 수 있는 기록매체에 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 프로세서가 읽을 수 있는 기록매체는 프로세서에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. Meanwhile, the method for controlling a mobile robot according to an embodiment of the present invention can be implemented as a processor-readable code on a processor-readable recording medium. The processor-readable recording medium includes all types of recording devices in which data readable by the processor is stored.

또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.In addition, although the preferred embodiments of the present invention have been shown and described above, the present invention is not limited to the specific embodiments described above, and the technical field to which the present invention belongs without departing from the gist of the present invention claimed in the claims. Of course, various modifications are possible by those skilled in the art, and these modifications should not be individually understood from the technical spirit or perspective of the present invention.

이동 로봇: 100
본체: 110
제어부: 140
서비스부: 150
주행부: 160
센싱부: 170
클리프센서: 172
Mobile robots: 100
Body: 110
Control: 140
Service Department: 150
Driving part: 160
Sensing unit: 170
Cliff sensor: 172

Claims (17)

본체를 이동시키는 주행부;
상기 본체의 하측에 배치되고, 광을 출력하는 발광부와 반사광을 수신하는 수광부, 상기 발광부 및 상기 수광부에 이격배치되는 센서창을 포함하는 클리프센서; 및,
상기 클리프센서에서 획득되는 데이터가 설정된 먼지오염조건을 만족하면, 먼지오염 카운트를 1씩 증가시키고, 상기 먼지오염 카운트가 문턱값보다 크면, 상기 이동을 정지하도록 제어하는 제어부;를 포함하는 이동 로봇.
a driving unit for moving the main body;
a cliff sensor disposed on a lower side of the main body, including a light emitting unit for outputting light, a light receiving unit for receiving reflected light, and a sensor window spaced apart from the light emitting unit and the light receiving unit; and,
and a controller configured to increase a dust contamination count by 1 when the data obtained from the cliff sensor satisfies a set dust contamination condition, and to stop the movement when the dust contamination count is greater than a threshold value.
제1항에 있어서,
상기 먼지오염 카운트가 문턱값보다 크면, 먼지오염에러를 발생시키는 이동 로봇.
According to claim 1,
The mobile robot generating a dust contamination error when the dust contamination count is greater than a threshold value.
제1항에 있어서,
상기 먼지오염조건은, 상기 클리프센서의 측정거리값과 수신 광량값을 기준으로 설정되고,
상기 제어부는, 측정거리값조건과 광량값조건이 모두 만족되는 경우에 먼지오염 카운트를 1 증가시키는 이동 로봇.
According to claim 1,
The dust contamination condition is set based on a measurement distance value and a received light amount value of the cliff sensor,
The controller increases the dust contamination count by 1 when both the measurement distance value condition and the light quantity condition are satisfied.
제3항에 있어서,
상기 제어부는, 상기 측정거리값조건과 상기 광량값조건이 모두 만족되지 못하는 경우에 상기 먼지오염 카운트를 1 감소시키는 이동 로봇.
According to claim 3,
The control unit decreases the dust contamination count by 1 when both the measurement distance value condition and the light intensity value condition are not satisfied.
제1항에 있어서,
상기 먼지오염조건이 만족되면, 현재 주행방향으로 이동하지 않도록 방향 전환하여 이동하는 회피 주행하는 이동 로봇.
According to claim 1,
When the dust contamination condition is satisfied, a mobile robot that avoids traveling by changing direction so as not to move in the current driving direction.
제5항에 있어서,
최근 N개의 측정거리값 중 최대값이 상기 먼지오염조건을 만족할 때만 상기 회피 주행을 수행하는 이동 로봇.
According to claim 5,
The mobile robot performing the avoidance driving only when the maximum value among the latest N measured distance values satisfies the dust contamination condition.
제1항에 있어서,
상기 제어부는, 제1 시간 주기를 경과할 때까지, 시간 경과에 따라, 시간 카운트를 1씩 증가시키는 이동 로봇.
According to claim 1,
The controller increases the time count by 1 as time elapses until the first time period elapses.
제7항에 있어서,
상기 제어부는, 상기 제1 시간 주기를 경과하면, 상기 먼지오염 카운트 및 시간 카운트를 초기화하는 이동 로봇.
According to claim 7,
The controller initializes the dust contamination count and the time count when the first time period elapses.
제7항에 있어서,
상기 제어부는, 상기 제1 시간 주기 경과 전에 상기 먼지오염 카운트가 제1 문턱값보다 크면 먼지오염 에러를 발생시키는 이동 로봇.
According to claim 7,
The controller generates a dust contamination error when the dust contamination count is greater than a first threshold value before the first time period elapses.
제7항에 있어서,
상기 먼지오염 카운트는, 제2 시간 주기 동안에 상기 먼지오염조건이 복수회 만족되어도, 상기 제2 시간 주기 경과 후 1만 증가되는 이동 로봇.
According to claim 7,
The mobile robot of claim 1 , wherein the dust contamination count is increased by only 1 after the second time period has elapsed even if the dust contamination condition is satisfied a plurality of times during the second time period.
제10항에 있어서,
상기 제어부는, 상기 제1 시간 주기 경과 전에 상기 먼지오염 카운트가 제2 문턱값보다 크면 먼지오염 에러를 발생시키는 이동 로봇.
According to claim 10,
The control unit generates a dust contamination error when the dust contamination count is greater than a second threshold value before the first time period elapses.
제11항에 있어서,
상기 제어부는, 상기 먼지오염조건이 만족되면, 오염감지 플래그(flag)를 트루(true)로 설정하는 이동 로봇.
According to claim 11,
The control unit sets a contamination detection flag to true when the dust contamination condition is satisfied.
제12항에 있어서,
상기 제어부는, 상기 제2 시간 주기가 경과되고, 상기 오염감지 플래그(flag)가 트루(true)이면, 상기 먼지오염 카운트를 1 증가시키는 이동 로봇.
According to claim 12,
The controller increases the dust contamination count by 1 when the second time period elapses and the contamination detection flag is true.
제13항에 있어서,
상기 제어부는, 상기 먼지오염에러가 발생하면, 상기 오염감지 플래그(flag)를 폴스(false)로 설정하는 이동 로봇.
According to claim 13,
The control unit sets the contamination detection flag to false when the dust contamination error occurs.
제1항에 있어서,
소정 시간 주기 동안에 상기 먼지오염 카운트가 문턱값보다 크면, 상기 이동을 정지하고,
상기 문턱값은, 상기 먼지오염 카운트가 증가하는 방식에 따라 다르게 설정되는 이동 로봇.
According to claim 1,
Stopping the movement when the dust contamination count is greater than a threshold value during a predetermined time period;
The mobile robot wherein the threshold value is set differently according to a method in which the dust contamination count increases.
제1항에 있어서,
소정 시간 주기 동안에 상기 먼지오염 카운트가 문턱값보다 크면, 상기 이동을 정지하고,
상기 문턱값은, 상기 소정 시간 주기에 따라 다르게 설정되는 이동 로봇.
According to claim 1,
Stopping the movement when the dust contamination count is greater than a threshold value during a predetermined time period;
The mobile robot wherein the threshold value is set differently according to the predetermined time period.
본체를 이동시키는 주행부;
상기 본체의 하측에 배치되고, 광을 출력하는 발광부와 반사광을 수신하는 수광부, 상기 발광부 및 상기 수광부에 이격배치되는 센서창을 포함하는 클리프센서; 및,
상기 클리프센서의 측정거리값과 수신 광량값이 설정된 조건을 만족하면, 먼지오염 카운트를 1씩 증가시키고, 상기 먼지오염 카운트가 문턱값보다 크면, 상기 이동을 정지하도록 제어하는 제어부;를 포함하는 이동 로봇.

a driving unit for moving the main body;
a cliff sensor disposed on a lower side of the main body, including a light emitting unit for outputting light, a light receiving unit for receiving reflected light, and a sensor window spaced apart from the light emitting unit and the light receiving unit; and,
a control unit configured to increase a dust contamination count by 1 when the measured distance value of the cliff sensor and the received light intensity value satisfy set conditions, and to stop the movement when the dust contamination count is greater than a threshold value; robot.

KR1020210092294A 2021-07-14 2021-07-14 Moving robot KR102500525B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210092294A KR102500525B1 (en) 2021-07-14 2021-07-14 Moving robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210092294A KR102500525B1 (en) 2021-07-14 2021-07-14 Moving robot

Publications (2)

Publication Number Publication Date
KR20230011699A KR20230011699A (en) 2023-01-25
KR102500525B1 true KR102500525B1 (en) 2023-02-16

Family

ID=85109806

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210092294A KR102500525B1 (en) 2021-07-14 2021-07-14 Moving robot

Country Status (1)

Country Link
KR (1) KR102500525B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101697557B1 (en) 2015-07-28 2017-01-18 주식회사 파인로보틱스 Dust measurement apparatus and robot cleaner included the apparatus

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101303158B1 (en) * 2011-07-25 2013-09-09 엘지전자 주식회사 Robot cleaner and self testing method of the same
KR102020210B1 (en) * 2013-04-11 2019-11-05 삼성전자주식회사 Sensor module and robot cleaner having the same
JP6178677B2 (en) * 2013-09-09 2017-08-09 シャープ株式会社 Self-propelled electronic device
KR102226770B1 (en) * 2019-01-30 2021-03-12 경상국립대학교산학협력단 Measurement robot and system for solar panels

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101697557B1 (en) 2015-07-28 2017-01-18 주식회사 파인로보틱스 Dust measurement apparatus and robot cleaner included the apparatus

Also Published As

Publication number Publication date
KR20230011699A (en) 2023-01-25

Similar Documents

Publication Publication Date Title
JP6785950B2 (en) Mobile robot and its control method
US11737635B2 (en) Moving robot and control method thereof
US20200306983A1 (en) Mobile robot and method of controlling the same
KR102314539B1 (en) Controlling method for Artificial intelligence Moving robot
JP2019528535A5 (en)
KR102275300B1 (en) Moving robot and control method thereof
KR102548936B1 (en) Artificial intelligence Moving robot and control method thereof
US11700989B2 (en) Mobile robot using artificial intelligence and controlling method thereof
KR20180087798A (en) Moving robot and control method therof
KR20180023302A (en) Moving robot and control method thereof
US20220257074A1 (en) Mobile robot using artificial intelligence and controlling method thereof
KR20180023303A (en) Moving robot and control method thereof
KR102467990B1 (en) Robot cleaner
KR102500525B1 (en) Moving robot
JP7329125B2 (en) Mobile robot and its control method
KR20180048088A (en) Robot cleaner and control method thereof
JP7432701B2 (en) Mobile robot and its control method

Legal Events

Date Code Title Description
GRNT Written decision to grant