KR102203438B1 - 이동 로봇 및 이동 로봇의 제어방법 - Google Patents
이동 로봇 및 이동 로봇의 제어방법 Download PDFInfo
- Publication number
- KR102203438B1 KR102203438B1 KR1020180169082A KR20180169082A KR102203438B1 KR 102203438 B1 KR102203438 B1 KR 102203438B1 KR 1020180169082 A KR1020180169082 A KR 1020180169082A KR 20180169082 A KR20180169082 A KR 20180169082A KR 102203438 B1 KR102203438 B1 KR 102203438B1
- Authority
- KR
- South Korea
- Prior art keywords
- image
- reflector
- main body
- mobile robot
- unit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 42
- 238000001514 detection method Methods 0.000 claims description 17
- 238000004458 analytical method Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 description 21
- 230000003287 optical effect Effects 0.000 description 10
- 238000004140 cleaning Methods 0.000 description 9
- 239000000428 dust Substances 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 5
- 238000003860 storage Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000009991 scouring Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0234—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
- B25J11/008—Manipulators for service tasks
- B25J11/0085—Cleaning
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L9/00—Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
- A47L9/28—Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L9/00—Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
- A47L9/28—Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
- A47L9/2836—Installation 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/2852—Elements for displacement of the vacuum cleaner or the accessories therefor, e.g. wheels, casters or nozzles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
- B25J19/021—Optical sensing devices
- B25J19/023—Optical sensing devices including video camera means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
- B25J9/1666—Avoiding collision or forbidden zones
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1674—Programme controls characterised by safety, monitoring, diagnostic
- B25J9/1676—Avoiding collision or forbidden zones
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0214—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0244—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using reflecting strips
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L2201/00—Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
- A47L2201/04—Automatic control of the travelling movement; Automatic obstacle detection
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Robotics (AREA)
- Automation & Control Theory (AREA)
- Aviation & Aerospace Engineering (AREA)
- Remote Sensing (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Electromagnetism (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Electric Vacuum Cleaner (AREA)
Abstract
본 발명은 본체를 이동시키는 주행부; 주변의 영상을 획득하는 영상획득부; 및 상기 영상획득부에서 획득한 영상을 분석하여 상기 본체의 주변에 위치된 반사체의 존재여부를 판단하는 제어부를 포함하고, 상기 제어부는 상기 영상획득부에서 획득한 영상과, 기 저장된 상기 본체의 영상 사이의 유사도를 바탕으로 상기 본체의 주변에 반사체가 존재 여부를 판단하는 것을 특징으로 한다.
Description
본 발명은 이동 로봇에 관한 것으로 상세하게는 반사체를 구별할 수 있는 이동 로봇에 관한 것이다.
로봇은 산업용으로 개발되어 공장 자동화의 일 부분을 담당하여 왔다. 최근에는 로봇을 응용한 분야가 더욱 확대되어, 의료용 로봇, 우주 항공 로봇 등이 개발되고, 일반 가정에서 사용할 수 있는 가정용 로봇도 만들어지고 있다. 이러한 로봇 중에서 자력으로 주행이 가능한 것을 이동 로봇이라고 한다. 가정에서 사용되는 이동 로봇의 대표적인 예는 로봇 청소기이다.
로봇 청소기에 구비된 여러 센서를 통하여 로봇 청소기 주변의 환경 및 사용자를 감지하는 여러 기술들이 알려져 있다. 또한, 로봇 청소기가 스스로 주행 구역을 학습하여 맵핑하고, 맵 상에서 현재 위치를 파악하는 기술들이 알려져 있다. 주행 구역을 기 설정된 방식으로 주행하며 청소하는 로봇 청소기가 알려져 있다.
종래의 로봇 청소기는 청소기의 주변 환경에서 장애물과 벽과의 거리 및 매핑을 위해, 거리판단, 지형 파악 및 장애물의 영상 파악이 용이한 광센서를 통해서 이를 식별해 왔다.
또한, 종래 기술(한국특허공개번호 10-2014-0138555)에는, 소정의 패턴 광을 조사하고, 상이 광이 조사된 영역의 영상을 획득하여 상기 패턴을 검출하여 청소기의 주변에 장애물의 존재 여부를 식별하였다.
그러나, 광센서를 이용한 장애물 식별은 정확성은 있으나, 빛을 반사하는 거울 및 금속 외관의 가구 및 가전 등의 경우, 광 또는 광 패턴을 반사하기 때문에, 장애물의 표면이 검출되지 않는 문제점이 존재한다.
따라서, 종래의 로봇 청소기는 반사체를 회피하지 못하고, 충돌하여서, 로봇 청소기가 파손되고나 고장이 나는 등의 여러 문제점을 가지고 있다.
본 발명이 해결하고자 하는 과제는, 광 센서를 사용하여서 장애물의 표면 형상 및 장애물의 위치를 정확히 식별하면서, 반사체를 식별할 수 있는 이동로봇을 제공하는 것이다.
본 발명이 해결하고자 하는 다른 과제는, 광 센서를 사용하여서 반사체를 식별하여서, 이를 맵상에 장애물 처리하여서, 차후에 반사체 주변 청소 시에 빠른 청소와 회피가 가능한 이동로봇을 제공하는 것이다.
상기 과제들을 해결하기 위하여, 본 발명은 이동 로봇이 획득한 영상을 분석하여 자기 자신의 영상이 보이는 경우, 반사체로 판단하는 것이다.
구체적으로, 본 발명은 본체를 이동시키는 주행부; 주변의 영상을 획득하는 영상획득부; 및 상기 영상획득부에서 획득한 영상을 분석하여 상기 본체의 주변에 위치된 반사체의 존재여부를 판단하는 제어부를 포함하고, 상기 제어부는, 상기 영상획득부에서 획득한 영상과, 기 저장된 상기 본체의 영상 사이의 유사도를 바탕으로 상기 본체의 주변에 반사체가 존재 여부를 판단하는 것을 특징으로 한다.
상기 제어부는, 상기 영상획득부에서 획득한 영상과, 기 저장된 상기 본체의 영상의 유사도가 기준 값을 초과하는 경우, 상기 본체의 주변에 반사체가 존재한다고 판단할 수 있다.
상기 제어부는, 상기 본체의 주변에 반사체가 존재하다고 판단하는 경우, 획득한 상기 영상을 바탕으로 주행 구역의 맵 상에서 상기 반사체가 위치되는 반사체 영역을 특정할 수 있다.
상기 제어부는, 상기 본체가 상기 반사체 영역을 회피하여 주행하도록 상기 주행부를 제어할 수 있다.
상기 제어부는 상기 본체의 주행 중 상기 본체의 전방에 상기 반사체가 존재한다고 판단하는 경우, 상기 주행부가 정지되도록 제어할 수 있다.
상기 제어부는 상기 본체의 주행 중 상기 본체의 전방에 상기 반사체가 존재한다고 판단하는 경우, 상기 본체의 속도가 감속되도록 상기 주행부를 제어할 수 있다.
상기 제어부는, 상기 획득한 영상에서 본체의 이미지의 크기를 바탕으로 상기 반사체와 상기 본체와의 거리를 연산할 수 있다.
또한, 본 발명은 상기 본체의 전방의 장애물을 감지하는 장애물 감지센서를 더 포함하고, 상기 제어부는 상기 영상획득부에서 획득한 전방 영상과, 기 저장된 상기 본체의 영상의 유사도가 기준치를 초과하고, 상기 본체의 전방에 장애물이 감지 되지 않는 경우, 상기 본체의 전방에 반사체가 존재한다고 판단할 수 있다.
상기 제어부는, 상기 영상획득부에서 획득한 전방 영상과, 기 저장된 상기 본체의 영상의 유사도가 기준치를 초과하고, 상기 본체의 전방에 장애물이 감지 되는 경우, 상기 본체의 전방에 다른 이동 로봇이 존재한다고 판단할 수 있다.
또한, 본 발명은 이동 로봇의 전방의 영상을 획득하는 영상 획득단계; 상기 획득한 영상을 분석하는 분석 단계; 상기 분석된 영상을 기 저장된 이동 로봇의 영상과 비교하는 비교단계; 및 상기 분석된 영상과 기 저장된 이동 로봇의 영상 사이의 비교 결과를 바탕으로 반사체의 존재여부를 판단하는 반사체 판단단계를 포함한다.
상기 반사체 판단단계는, 상기 영상획득부에서 획득한 영상과, 기 저장된 상기 이동 로봇의 영상 사이의 유사도를 바탕으로 상기 이동 로봇의 전방에 반사체가 존재 여부를 판단할 수 있다.
상기 반사체 판단단계는, 상기 영상획득부에서 획득한 영상과, 기 저장된 상기 이동 로봇의 영상 사이의 유사도가 기준 값을 초과하는 경우, 상기 이동 로봇의 전방에 반사체가 존재한다고 판단할 수 있다.
또한, 본 발명은 획득한 상기 영상을 바탕으로 주행 구역의 맵 상에서 상기 반사체가 위치되는 반사체 영역을 특정하는 반사체 영역 특정 단계를 더 포함할 수 있다.
또한, 본 발명은 상기 이동 로봇이 상기 반사체 영역을 회피하여 주행하는 회피 주행 단계를 더 포함할 수 있다.
또한, 본 발명은 상기 이동 로봇의 전방의 장애물을 감지하는 장애물 감지단계; 및 상기 이동 로봇 전방의 장애물 존재여부를 바탕으로 상기 반사체와 장애물을 구분하는 구분 단계를 더 포함할 수 있다.
본 발명의 이동 로봇에 따르면 다음과 같은 효과가 하나 혹은 그 이상 있다.
첫째, 광 센서를 사용하여서 장애물의 표면 형상 및 장애물의 위치를 정확히 식별하면서, 반사체를 식별할 수 있는 장점이 있다.
둘째, 초음파 센서 등의 다른 센서를 추가하지 않고 광 센서 하나만으로 반사체를 포함하는 장애물을 식별할 수 있으므로, 제조비용이 절감되고, 이동 로봇의 제어부담이 줄어드는 장점도 있다.
셋째, 이동 로봇이 정확하게 반사체를 식별할 수 있어서, 이동 로봇이 반사체와 충돌 위험이 없어지고, 반사체의 파손을 방지하는 장점도 있다.
넷째, 이동 로봇이 반사체를 식별하고 회피 기동하고, 반사체의 주변 영역을 제외한 영역을 먼저 청소하므로, 빠른 청소가 가능한 광 센서를 사용하여서 장애물의 표면 형상 및 장애물의 위치를 정확히 식별하면서, 장점도 있다.
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 로봇 청소기(100) 및 로봇 청소기를 충전시키는 충전대(200)를 도시한 사시도이다.
도 2는 도 1의 로봇 청소기(100)를 상측에서 바라본 입면도이다.
도 3은 도 1의 로봇 청소기(100)를 정면에서 바라본 입면도이다.
도 4는 도 1의 로봇 청소기(100)를 하측에서 바라본 입면도이다.
도 5는 도 1의 로봇 청소기(100)의 주요 구성들 간의 제어관계를 도시한 블록도이다.
도 6은 본 발명의 일 실시예에 따른 로봇 청소기의 제어방법을 도시한 순서도이다.
도 7은 도 6의 제어방법에 따라 진행되는 과정 중 이동 로봇이 반사체에 근접한 모습을 도시한 도면이다.
도 8은 본 발명의 다른 실시예에 따른 로봇 청소기의 제어방법을 도시한 순서도이다.
도 2는 도 1의 로봇 청소기(100)를 상측에서 바라본 입면도이다.
도 3은 도 1의 로봇 청소기(100)를 정면에서 바라본 입면도이다.
도 4는 도 1의 로봇 청소기(100)를 하측에서 바라본 입면도이다.
도 5는 도 1의 로봇 청소기(100)의 주요 구성들 간의 제어관계를 도시한 블록도이다.
도 6은 본 발명의 일 실시예에 따른 로봇 청소기의 제어방법을 도시한 순서도이다.
도 7은 도 6의 제어방법에 따라 진행되는 과정 중 이동 로봇이 반사체에 근접한 모습을 도시한 도면이다.
도 8은 본 발명의 다른 실시예에 따른 로봇 청소기의 제어방법을 도시한 순서도이다.
본 설명 전체에 걸쳐 언어적/수학적으로 표현된 대소비교에 있어서, '작거나 같음(이하)'과 '작음(미만)'은 통상의 기술자 입장에서 서로 용이하게 치환 가능한 정도이며, '크거나 같음(이상)'과 '큼(초과)'은 통상의 기술자 입장에서 서로 용이하게 치환 가능한 정도이며, 본 발명을 구현함에 있어서 치환하여도 그 효과 발휘에 문제가 되지 않음은 물론이다.
본 발명인 이동 로봇(100)은 바퀴 등을 이용하여 스스로 이동이 가능한 로봇을 의미하고, 가정 도우미 로봇 및 로봇 청소기 등이 될 수 있다.
이하 도 1 내지 도 5를 참조하여, 이동 로봇 중 로봇 청소기(100)를 예로 들어 설명하나, 반드시 이에 한정될 필요는 없다.
로봇 청소기(100)는 본체(110)를 포함한다. 이하, 본체(110)의 각 부분을 정의함에 있어서, 주행구역 내의 천장을 향하는 부분을 상면부(도 2 참조)로 정의하고, 주행구역 내의 바닥을 향하는 부분을 저면부(도 4 참조)로 정의하고, 상면부와 저면부 사이에서 본체(110)의 둘레를 이루는 부분 중 주행방향을 향하는 부분을 정면부(도 3 참조)라고 정의한다. 또한, 본체(110)의 정면부와 반대 방향을 향하는 부분을 후면부로 정의할 수 있다. 본체(110)는 로봇 청소기(100)를 구성하는 각종 부품들이 수용되는 공간을 형성하는 케이스(111)를 포함할 수 있다.
로봇 청소기(100)는 주변의 상황을 감지하는 센싱부(130)를 포함한다. 센싱부(130)는 로봇 청소기(100) 외부의 정보를 감지할 수 있다. 센싱부(130)는 로봇 청소기(100) 주변의 장애물을 감지한다. 센싱부(130)는 로봇 청소기(100) 주변의 물체를 감지할 수 있다.
센싱부(130)는 주행 구역에 대한 정보를 감지할 수 있다. 센싱부(130)는 주행면 상의 벽체, 가구 및 낭떠러지 등의 장애물을 감지할 수 있다. 센싱부(130)는 천장에 대한 정보를 감지할 수 있다. 센싱부(130)는, 주행면 상에 놓여진 물건 및/또는 외부의 상측 물체를 포함할 수 있다. 외부의 상측 물체는, 로봇 청소기(100)의 상측 방향에 배치되는 천장이나 가구의 하측면 등을 포함할 수 있다. 센싱부(130)가 감지한 정보를 통해, 로봇 청소기(100)는 주행 구역을 맵핑(Mapping)할 수 있다.
센싱부(130)는, 로봇 청소기(100) 주변의 장애물에 대한 정보를 감지할 수 있다. 센싱부(130)는, 장애물의 위치 정보를 감지할 수 있다. 위치 정보는, 로봇 청소기(100)에 대한 방향 정보를 포함할 수 있다. 위치 정보는, 로봇 청소기(100)와 장애물 사이의 거리 정보를 포함할 수 있다. 센싱부(130)는 장애물의 로봇 청소기(100)에 대한 방향을 감지할 수 있다. 센싱부(130)는 장애물과 로봇 청소기(100) 사이의 거리를 감지할 수 있다.
위치 정보는, 센싱부(130)의 감지에 의해 곧바로 획득될 수도 있고, 제어부(140)에 의해 처리되어 획득될 수도 있다.
센싱부(130)에 의한 감지를 통해 주행 구역을 맵핑하고 맵 상에서 장애물 및 반사체의 위치 정보를 감지할 수 있다. 거리 정보는 맵 상에서 어느 두 지점 사이의 거리로 측정될 수 있다. 맵 상에서 로봇 청소기(100) 및 장애물의 위치를 인식할 수 있고, 맵 상의 좌표 차이를 이용하여 로봇 청소기(100) 및 장애물 사이의 거리 정보를 획득할 수 있다.
장애물 및 반사체의 위치 정보는, 카메라 등에 의해 획득된 영상을 통해 획득될 수 있다. 영상 획득부(135)를 통해 영상을 획득할 수 있다.
센싱부(130)는 주변의 영상을 감지하는 영상 획득부(135)를 포함할 수 있다. 영상 획득부(135)는 로봇 청소기(100)에 대한 특정 방향으로 영상을 감지할 수 있다. 예를 들어, 영상 획득부(135)는, 로봇 청소기(100)의 전방으로 영상을 감지할 수 있다.
영상 획득부(135)는 주행구역을 촬영하는 것으로, 디지털 카메라를 포함할 수 있다. 디지털 카메라는 적어도 하나의 광학렌즈와, 광학렌즈를 통과한 광에 의해 상이 맺히는 다수개의 광다이오드(photodiode, 예를 들어, pixel)를 포함하여 구성된 이미지센서(예를 들어, CMOS image sensor)와, 광다이오드들로부터 출력된 신호를 바탕으로 영상을 구성하는 디지털 신호 처리기(DSP: Digital Signal Processor)를 포함할 수 있다. 디지털 신호 처리기는 정지영상은 물론이고, 정지영상으로 구성된 프레임들로 이루어진 동영상을 생성하는 것도 가능하다.
센싱부(130)는 주변의 장애물까지의 거리를 감지하는 거리 감지부(131)를 포함할 수 있다. 거리 감지부(131)를 통해 로봇 청소기(100)와 주변의 사용자까지의 거리를 감지할 수 있다. 거리 감지부(131)는, 로봇 청소기(100)의 특정 방향으로 장애물까지의 거리를 감지한다. 거리 감지부(131)는 카메라, 초음파 센서 또는 IR(적외선) 센서 등을 포함할 수 있다.
거리 감지부(131)는 본체(110)의 정면부에 배치될 수 있고, 측방부에 배치될 수도 있다. 바람직하게는, 거리 감지부(131)와 영상 획득부(135)가 하나의 카메라로 구현될 수도 있다. 이 경우, 로봇 청소기의 제조 비용이 절감될 수 있다.
센싱부(130)는 주행구역 내 바닥에 낭떠러지의 존재 여부를 감지하는 낭떠러지 감지부(132)를 포함할 수 있다. 복수의 낭떠러지 감지부(132)가 구비될 수 있다.
센싱부(130)는 바닥의 영상을 획득하는 하부 영상 센서(137)를 더 포함할 수 있다.
로봇 청소기(100)는 본체(110)를 이동시키는 주행부(160)를 포함한다. 주행부(160)는 바닥에 대해 본체(110)를 이동시킨다. 주행부(160)는 본체(110)를 이동시키는 적어도 하나의 구동 바퀴(166)를 포함할 수 있다. 주행부(160)는 구동 모터를 포함할 수 있다. 구동 바퀴(166)는 본체(110)의 좌, 우 측에 각각 구비될 수 있으며, 이하, 각각 좌륜(166(L))과 우륜(166(R))이라고 한다.
좌륜(166(L))과 우륜(166(R))은 하나의 구동 모터에 의해 구동될 수도 있으나, 필요에 따라 좌륜(166(L))을 구동시키는 좌륜 구동 모터와 우륜(166(R))을 구동시키는 우륜 구동 모터가 각각 구비될 수도 있다. 좌륜(166(L))과 우륜(166(R))의 회전 속도에 차이를 두어 좌측 또는 우측으로 본체(110)의 주행방향을 전환할 수 있다.
로봇 청소기(100)는 청소 기능을 수행하는 청소부(180)를 포함한다.
로봇 청소기(100)는 주행 구역을 이동하며 청소부(180)에 의해 바닥을 청소할 수 있다. 청소부(180)는, 이물질을 흡입하는 흡입 장치, 비질을 수행하는 브러시(184, 185), 흡입장치나 브러시에 의해 수거된 이물질을 저장하는 먼지통(미도시) 및/또는 걸레질을 수행하는 걸레부(미도시) 등을 포함할 수 있다.
본체(110)의 저면부에는 공기의 흡입이 이루어지는 흡입구(180h)가 형성될 수 있다. 본체(110) 내에는 흡입구(180h)를 통해 공기가 흡입될 수 있도록 흡입력을 제공하는 흡입장치(미도시)와, 흡입구(180h)를 통해 공기와 함께 흡입된 먼지를 집진하는 먼지통(미도시)이 구비될 수 있다.
케이스(111)에는 먼지통의 삽입과 탈거를 위한 개구부가 형성될 수 있고, 개구부를 여닫는 먼지통 커버(112)가 케이스(111)에 대해 회전 가능하게 구비될 수 있다.
흡입구(180h)를 통해 노출되는 솔들을 갖는 롤형의 메인 브러시(184)와, 본체(110)의 저면부 전방측에 위치하며, 방사상으로 연장된 다수개의 날개로 이루어진 솔을 갖는 보조 브러시(185)가 구비될 수 있다. 이들 브러시(184, 185)들의 회전에 의해 주행구역내 바닥으로부터 먼지들이 제거되며, 이렇게 바닥으로부터 분리된 먼지들은 흡입구(180h)를 통해 흡입되어 먼지통에 모인다.
배터리(138)는 구동 모터뿐만 아니라, 로봇 청소기(100)의 작동 전반에 필요한 전원을 공급할 수 있다. 배터리(138)가 방전될 시, 로봇 청소기(100)는 충전을 위해 충전대(200)로 복귀하는 주행을 실시할 수 있으며, 이러한 복귀 주행 중, 로봇 청소기(100)는 스스로 충전대(200)의 위치를 탐지할 수 있다.
충전대(200)는 소정의 복귀 신호를 송출하는 신호 송출부(미도시)를 포함할 수 있다. 복귀 신호는 초음파 신호 또는 적외선 신호일 수 있으나, 반드시 이에 한정되어야 하는 것은 아니다.
로봇 청소기(100)는, 정보를 입력받거나 수신하는 커뮤니케이션 모듈(170)을 포함한다. 커뮤니케이션 모듈(170)은 정보를 출력하거나 송신할 수 있다. 커뮤니케이션 모듈(170)은 외부의 다른 기기와 정보를 송수신하는 통신부(175)를 포함할 수 있다. 커뮤니케이션 모듈(170)은 정보를 입력하는 입력부(171)를 포함할 수 있다. 커뮤니케이션 모듈(170)은 정보를 출력하는 출력부(173)를 포함할 수 있다.
일 예로, 로봇 청소기(100)는 입력부(171)로부터 직접 정보를 입력 받을 수 있다. 다른 예로, 로봇 청소기(100)는 별도의 단말기에 입력된 정보를 통신부(175)를 통해 수신 받을 수 있다.
일 예로, 로봇 청소기(100)는 출력부(173)로 직접 정보를 출력시킬 수 있다. 다른 예로, 로봇 청소기(100)는 통신부(175)를 통해 별도의 단말기로 정보를 송신하여, 단말기가 정보를 출력하게 할 수 있다.
통신부(175)는, 외부의 서버, 단말기 및/또는 충전대(200) 등과 통신하게 구비될 수 있다. 통신부(175)는 복귀 신호를 수신하는 신호 감지부(미도시)를 포함할 수 있다. 충전대(200)는 신호 송출부를 통해 적외선 신호를 송출하고, 신호 감지부는 적외선 신호를 감지하는 적외선 센서를 포함할 수 있다. 로봇 청소기(100)는 충전대(200)로부터 송출된 적외선 신호에 따라 충전대(200)의 위치로 이동하여 충전대(200)와 도킹(docking)한다. 이러한 도킹에 의해 로봇 청소기(100)의 충전 단자(133)와 충전대(200)의 충전 단자(210) 간에 충전에 이루어진다.
통신부(175)는 단말기로부터 각종 명령 신호를 수신할 수 있다. 통신부(175)는, 스마트폰이나 컴퓨터 등의 단말기로부터 입력된 정보를 수신할 수 있다.
통신부(175)는 단말기로 출력될 정보를 송신할 수 있다. 단말기는 통신부(175)로부터 받은 정보를 출력할 수 있다.
입력부(171)는 On/Off 또는 각종 명령을 입력 받을 수 있다. 입력부(171)는 버튼, 키 또는 터치형 디스플레이 등을 포함할 수 있다. 입력부(171)는 음성 인식을 위한 마이크를 포함할 수 있다.
출력부(173)는 각종 정보를 사용자에게 알릴 수 있다. 출력부(173)는 스피커 및/또는 디스플레이를 포함할 수 있다.
로봇 청소기(100)는 맵핑 및/또는 현재 위치를 인식하는 등 각종 정보를 처리하고 판단하는 제어부(140)를 포함한다. 제어부(140)는 로봇 청소기(100)를 구성하는 각종 구성들의 제어를 통해, 로봇 청소기(100)의 동작 전반을 제어할 수 있다. 제어부(140)는, 영상을 통해 주행 구역을 맵핑하고 현재 위치를 맵 상에서 인식 가능하게 구비될 수 있다. 즉, 제어부(140)는 슬램(SLAM : Simultaneous Localization and Mapping) 기능을 수행할 수 있다.
제어부(140)는 커뮤니케이션 모듈(170)로부터 정보를 받아 처리할 수 있다. 제어부(140)는 입력부(171)로부터 정보를 입력 받아 처리할 수 있다. 제어부(140)는 통신부(175)로부터 정보를 받아 처리할 수 있다. 제어부(140)는 센싱부(130)로부터 정보를 입력 받아 처리할 수 있다.
제어부(140)는 출력을 위해 커뮤니케이션 모듈(170)로 정보를 줄 수 있다. 제어부(140)는 통신부(175)로 정보를 줄 수 있다. 제어부(140)는 출력부(173)의 출력을 제어할 수 있다. 제어부(140)는 주행부(160)의 구동을 제어할 수 있다. 제어부(140)는 청소부(180)의 동작을 제어할 수 있다.
로봇 청소기(100)는 각종 데이터를 저장하는 저장부(150)를 포함한다. 저장부(150)는 로봇 청소기(100)의 제어에 필요한 각종 정보들을 기록하는 것으로, 휘발성 또는 비휘발성 기록 매체를 포함할 수 있다.
저장부(150)에는 주행구역에 대한 맵이 저장될 수 있다. 맵은 로봇 청소기(100)과 통신부(175)을 통해 정보를 교환할 수 있는 외부 단말기에 의해 입력된 것일 수도 있고, 로봇 청소기(100)가 스스로 학습을 하여 생성한 것일 수도 있다. 전자의 경우, 외부 단말기로는 맵 설정을 위한 어플리케이션(application)이 탑재된 리모콘, PDA, 랩탑(laptop), 스마트 폰, 태블릿 등을 예로 들 수 있다.
현실의 주행구역은 맵 상의 주행구역과 대응될 수 있다. 주행구역은 로봇 청소기(100)가 주행 경험이 있는 모든 평면상의 구역 및 현재 주행하고 있는 평면상의 구역을 모두 합한 범위로 정의될 수 있다.
저장부(150)에는 제어부(140)가 영상 획득부(135)에서 획득한 영상과 비교할 비교 대상 이미지가 저장될 수 있다. 이러한 비교 대상 이미지는 사용자가 직접 입력하거나, 로봇 청소기와 연결된 서버에서 다운 받거나, 학습에 의해 누적된 것 일 수 있다.
제어부(140)는 주행부(160)의 동작을 바탕으로 로봇 청소기(100)의 이동 경로를 파악할 수도 있다. 예를 들어, 제어부(140)는 구동 바퀴(166)의 회전속도를 바탕으로 로봇 청소기(100)의 현재 또는 과거의 이동속도, 주행한 거리 등을 파악할 수 있으며, 각 구동 바퀴(166(L), 166(R))의 회전 방향에 따라 현재 또는 과거의 방향 전환 과정 또한 파악할 수 있다. 이렇게 파악된 로봇 청소기(100)의 주행 정보를 바탕으로, 맵 상에서 로봇 청소기(100)의 위치가 갱신될 수 있다. 또한, 영상 정보를 이용하여, 맵 상에서 로봇 청소기(100)의 위치가 갱신될 수도 있다.
제어부(140)는, 센싱부(130)를 통해 감지된 정보를 근거로 하여 장애물 및 반사체의 위치를 인식한다. 제어부(140)는 센싱부(130)를 통해 주변의 장애물 및 반사체 위치 정보를 획득할 수 있다. 제어부(140)는 센싱부(130)를 통해 주변의 장애물 및 반사체까지의 거리 정보를 획득할 수 있다.
예를 들면, 제어부(140)는 영상 획득부(135)에서 획득한 영상에서 본체(로봇 청소기)의 이미지의 크기를 바탕으로 반사체와 본체와의 거리를 연산할 수 있다. 구체적으로, 제어부(140)는 본체의 외각선 또는 외형을 추출하고, 그 외형의 폭 또는/및 높이의 크기를 연산하고, 원근법을 사용하여서, 반사체와 로봇 청소기 사이의 거리를 연산할 수 있다.
제어부(140)는, 사용자를 추종하며 청소하도록 제어한다. 제어부(140)는 로봇 청소기(100)가 사용자를 추종(following) 이동하도록 주행부(160)를 제어할 수 있다. 제어부(140)는 로봇 청소기(100)가 사용자의 주변 영역을 청소하도록 청소부(180)를 제어할 수 있다. 제어부(140)는, 사용자를 추종 이동하여 사용자의 주변 영역을 청소하도록 제어할 수 있다.
제어부(140)는 센싱부(130)에서 감지된 거리를 근거로 하여 로봇 청소기(100)의 이동을 제어할 수 있다. 제어부(140)는, 거리 감지부(131)에서 감지된 사용자까지의 거리를 근거로 하여, 사용자를 추종 이동할지 여부를 판단할 수 있다. 거리가 상대적으로 클 경우 제어부(140)는 사용자를 추종 이동하는 것으로 판단하고, 거리가 상대적으로 작을 경우 제어부(140)는 사용자를 추종 이동하지 않는 것으로 판단할 수 있다. 거리가 소정 값 이상 (또는 초과)일 경우, 제어부(140)는 로봇 청소기(100)가 사용자를 추종 이동하도록 제어할 수 있다. 거리가 소정치 미만 (또는 이하)일 경우, 제어부(140)는 로봇 청소기(100)가 사용자의 주변 영역을 청소하도록 제어할 수 있다.
또한, 제어부(140)는 영상 획득부(135)에서 획득한 영상을 분석하여 본체의 주변에 위치된 반사체의 존재여부를 판단할 수 있다. 예를 들면, 제어부(140)는 영상 획득부(135)에서 획득한 영상을 분석하는 분석 모듈(141)과, 분석 모듈(141)에서 분석된 영상을 기준이 되는 영상 또는 이미지와 비교하는 비교 모듈(142)을 포함할 수 있다.
제어부(140)는 영상 획득부(135)에서 획득한 영상과, 기 저장된 본체의 영상 사이의 유사도를 바탕으로 본체의 주변에 반사체가 존재 여부를 판단할 수 있다.
제어부(140)는 먼저 영상 획득부(135)를 통해 획득한 영상을 분석한다. 구체적으로, 제어부(140)는 학습된 데이터나 이미 저장된 테이터를 바탕으로, 획득한 영상 내의 이미지의 외형, 색상 정보 등을 추출하고, 그 추출된 외형 정보 및 색상 정보를 바탕으로 획득한 영상 속의 이미지의 사물의 종류를 판단한다.
제어부(140)는 획득한 영상 속의 사물이 로봇 청소기라고 판단되는 경우, 저장된 본체(자신)의 이미지와 획득한 영상 속의 이미지의 유사도를 비교할 수 있다. 제어부(140)는 영상획득부에서 획득한 영상과, 기 저장된 본체의 영상의 유사도가 기준 값을 초과하는 경우, 본체의 주변에 반사체가 존재한다고 판단할 수 있다.
여기서, 유사도는, 이미 저장된 자기 자신의 전방 이미지와, 반사체에 비쳐서 영상 획득부(135)를 통해 획득한 이미지 사이의 연관성을 의미한다. 제어부(140)는, 이미 저장된 자기 자신의 전방 이미지와, 반사체에 비쳐서 영상 획득부(135)를 통해 획득한 이미지 사이 외관 또는 색상의 유사도를 판단할 수 있다. 물론, 제어부(140)는, 이미 저장된 자기 자신의 전방 이미지와, 획득한 이미지를 좌우를 반전시킨 반전 이미지 사이 외관 또는 색상의 유사도를 판단할 수 있다.
물론, 제어부(140)는 정확한 유사도를 판단하기 위해, 획득한 영상 속의 이미지가 로봇 청소기 자신의 이미지라고 판단되는 경우, 로봇 청소기가 서행으로 이동되게 주행부(180)를 제어하고, 이 때, 획득한 영상 속의 이미지의 크기 변화가 존재하는 경우, 로봇 청소기의 전방에 반사체가 존재한다고 판단할 수 있다.
또한, 로봇 청소기는 사용자에게 보여주는 맵 상에서 장애물과 반사체를 구별할 필요가 있다. 따라서, 본 발명은 본체의 전방의 장애물을 감지하는 장애물 감지센서를 더 포함할 수 있다. 장애물 감지센서는 광학적인 센서(IR 센서) 및 카메라 중 어느 하나를 사용하는 거리 감지부(131)를 포함할 수 있다.
제어부(140)는 영상 획득부(135)에서 획득한 일 방향의 영상과, 기 저장된 본체의 영상의 유사도가 기준치를 초과하고, 본체의 일 방향에 장애물이 감지 되지 않는 경우, 본체의 일 방향에 반사체가 존재한다고 판단할 수 있다.
구체적으로, 제어부(140)는 영상 획득부(135)에서 획득한 전방 영상과, 기 저장된 본체의 영상의 유사도가 기준치를 초과하고, 본체의 전방에 장애물이 감지 되지 않는 경우, 본체의 전방에 반사체가 존재한다고 판단할 수 있다.
또한, 제어부(140)는 영상 획득부(135)에서 획득한 일 방향의 영상과, 기 저장된 본체의 영상의 유사도가 기준치를 초과하고, 본체의 일 방향에 장애물이 감지 되는 경우, 본체의 일 방향에 다른 이동 로봇이 존재한다고 판단할 수 있다.
구체적으로, 제어부(140)는 영상 획득부(135)에서 획득한 전방 영상과, 기 저장된 본체의 영상의 유사도가 기준치를 초과하고, 본체의 전방에 장애물이 감지 되는 경우, 본체의 전방에 다른 이동 로봇이 존재한다고 판단할 수 있다.
이 때, 제어부(140)는 다른 이동 로봇이 움직이는 경우, 주행 경로를 따라 그대로 주행하고, 다른 이동 로봇이 정지 상태일 때, 다른 이동 로봇을 회피하여 주행할 수 있다.
제어부(140)는 본체의 주변에 반사체가 존재하다고 판단하는 경우, 획득한 영상을 바탕으로 주행 구역의 맵 상에서 반사체가 위치되는 반사체 영역을 특정할 수 있다. 바람직하게는, 제어부(140)는 영상 획득부(135)에서 획득된 영상을 분석하여 반사체의 크기 방향을 계산할 수 있다. 제어부(140)는, 반사체가 감지되는 방향에서, 반사체와의 거리를 획득된 영상 속의 이미지 크기로 계산하고, 반사체의 거리 및 방향(반사체의 위치정보)을 특정한다.
또한, 제어부(140)는 반사체의 폭을 특정하기 위해, 반사체의 주변의 서행 주행하면서, 영상을 획득하고, 획득된 영상으로 다른 방향 또는 다른 위치에서, 반사체와 본체 사이의 거리정보 및 반사체와 본체 사이의 방향 정보 등을 특정할 수 있다. 제어부(140)는 상술한 바와 같이 얻어진 반사체의 위치정보를 바탕으로 맵 상에 반사체 영역을 특정할 수 있다.
제어부(140)는 반사체가 감지되는 경우, 본체가 반사체 영역을 회피하여 주행하도록 주행부를 제어할 수 있다. 구체적으로, 제어부(140)는 반사체가 감지되는 경우, 반사체의 경계를 따라 주행하거나, 반사체 영역을 제외하고 주행하도록 주행부를 제어할 수 있다.
또한, 제어부(140)는 본체의 파손을 방지하기 위해, 본체의 주행 중 본체의 전방에 반사체가 존재한다고 판단하는 경우, 주행부가 정지되도록 제어할 수 있다. 로봇 청소기가 반사체를 인지한 경우, 일단 정지하여서 반사체 및 로봇 청소기의 파손을 방지하고, 로봇 청소기의 연산 시간을 벌 수 있게 한다.
또한, 제어부(140)는 본체의 주행 중 본체의 전방에 반사체가 존재한다고 판단하는 경우, 본체의 속도가 감속되도록 주행부를 제어할 수 있다. 물론, 제어부(140)는 본체의 서행 중에, 반사체가 존재한다고 판단된 영역 주변을 주행하면서, 반사체에 대한 영상을 획득하고, 정확한 반사체의 위치 정보를 수집할 수 있다.
로봇 청소기가 반사체를 인지한 경우, 서행 주행하여서 반사체 및 로봇 청소기의 파손을 방지하고, 로봇 청소기의 연산 시간을 벌 수 있게 하고, 반사체 위치정보를 수집을 용이하게 한다.
도 6은 본 발명의 일 실시예에 따른 로봇 청소기의 제어방법을 도시한 순서도, 도 7은 도 6의 제어방법에 따라 진행되는 과정 중 이동 로봇이 반사체에 근접한 모습을 도시한 도면이다.
도 6 및 도 7을 참조하면, 본 발명의 실시예들에 따른 로봇 청소기(100)의 제어방법을 설명한다. 각 순서도들에서 서로 중복되는 내용은 동일한 도면 부호로 표기하고, 중복되는 설명은 생략한다.
제어방법은 제어부(140)에 의해 수행될 수 있다. 본 발명은, 로봇 청소기(100)의 제어방법이 될 수 있고, 제어방법을 수행하는 제어부(140)를 포함하는 로봇 청소기(100)가 될 수도 있다. 본 발명은, 제어방법의 각 단계를 포함하는 컴퓨터 프로그램이 될 수도 있고, 제어방법을 컴퓨터로 구현하기 위한 프로그램이 기록된 기록매체가 될 수도 있다. '기록매체'는 컴퓨터로 판독 가능한 기록매체를 의미한다. 본 발명은, 하드웨어와 소프트웨어를 모두 포함하는 로봇 청소기 제어 시스템이 될 수도 있다.
제어방법의 순서도 도면들의 각 단계와 순서도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션(instruction)들에 의해 수행될 수 있다. 인스트럭션들은 범용 컴퓨터 또는 특수용 컴퓨터 등에 탑재될 수 있고, 인스트럭션들이 순서도 단계(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다.
또한, 몇 가지 실시예들에서는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능하다. 예컨대, 잇달아 도시되어 있는 두 개의 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
본 발명의 일 실시예의 이동 로봇 제어방법(S100)은 이동 로봇의 주변의 영상을 획득하는 영상 획득단계(S110), 획득한 영상을 분석하는 분석 단계(S120), 분석된 영상을 기 저장된 이동 로봇의 영상과 비교하는 비교단계(S130) 및 분석된 영상과 기 저장된 이동 로봇의 영상 사이의 비교 결과를 바탕으로 반사체의 존재여부를 판단하는 반사체 판단단계(S140)를 포함할 수 있다.
영상 획득단계에서, 로봇 청소기는 주행과 동시에 실시간으로 이동 로봇의 영상을 획득한다. 제어부(140)는 영상 획득부(135)를 제어하여서 주행 중 일정한 간격으로 로봇 청소기의 주변의 영상을 획득할 수 있다. 여기서, 로봇 청소기 주변의 영상은 로봇 청소기의 정면과 측면을 포함할 수 있다.
분석 단계에서, 로봇 청소기는 획득한 영상을 분석한다. 구체적으로, 제어부(140)는 학습된 데이터나 이미 저장된 테이터를 바탕으로, 획득한 영상 내의 이미지의 외형, 색상 정보 등을 추출하고, 그 추출된 외형 정보 및 색상 정보를 바탕으로 획득한 영상 속의 이미지의 사물의 종류를 판단한다.
비교 단계에서, 로봇 청소기는 분석된 영상을 기 저장된 이동 로봇의 영상과 비교한다. 여기서, 기 저장된 이동 로봇의 영상은 로봇 청소기 자신의 영상을 의미한다. 제어부(140)는 영상획득부에서 획득한 영상과, 기 저장된 본체의 영상의 유사도를 기준으로 판단한다.
반사체 판단단계에서, 로봇 청소기는 분석된 영상과 기 저장된 이동 로봇의 영상 사이의 비교 결과를 바탕으로 반사체의 존재여부를 판단한다. 반사체 판단단계에서, 로봇 청소기는 영상획득부에서 획득한 영상과, 기 저장된 이동 로봇의 영상 사이의 유사도를 바탕으로 이동 로봇의 주변에 반사체가 존재 여부를 판단할 수 있다.
반사체 판단단계에서, 로봇 청소기는 영상획득부에서 획득한 영상과, 기 저장된 이동 로봇의 영상 사이의 유사도가 기준 값을 초과하는 경우, 이동 로봇의 주변에 반사체가 존재한다고 판단한다.
본 발명은 이동 로봇이 반사체 영역을 회피하여 주행하는 회피 주행 단계(S150)를 더 포함할 수 있다. 회피 주행 단계에서, 로봇 청소기는 로봇 청소기의 주변에 반사체가 존재하다고 판단하는 경우, 획득한 영상을 바탕으로 주행 구역의 맵 상에서 반사체가 위치되는 반사체 영역을 특정할 수 있다. 바람직하게는, 제어부(140)는 영상 획득부(135)에서 획득된 영상을 분석하여 반사체의 크기 방향을 계산할 수 있다.
회피 주행 단계에서, 로봇 청소기는 반사체가 전방에 일정 거리 이내로 존재하는 경우, 주행을 정지할 수 있고, 반사체 영역을 특정하고, 반사체 영역을 회피하여 주행할 수 있다.
본 발명은 획득한 영상을 바탕으로 주행 구역의 맵 상에서 반사체가 위치되는 반사체 영역을 특정하는 반사체 영역 특정 단계(S160)를 더 포함할 수 있다. 반사체 영역 특정 단계에서, 로봇 청소기는 획득한 영상을 바탕으로 주행 구역의 맵 상에서 반사체가 위치되는 반사체 영역을 특정할 수 이다.
구체적으로, 제어부(140)는 저장부에 반사체 영역을 특정한 맵 정보를 저장할 수 있다. 또한, 제어부(140)는, 반사체 영역을 특정한 맵 정보를 서버에 전송하거나, 다른 로봇 청소기에 전달할 수 있다.
또한, 본 발명은 이동 로봇의 주변의 장애물을 감지하는 장애물 감지단계 및 이동 로봇 주변의 장애물 존재여부를 바탕으로 반사체와 장애물을 구분하는 구분 단계를 더 포함할 수 있다.
장애물 감지단계에서, 로봇 청소기는 거리 감지부(131)를 제어하여 반사체가 감지되는 방향으로 장애물을 탐지한다. 반사체와 장애물 구분 단계에서, 로봇 청소기는, 거리 감지부(131)에 의해 거리가 측정되거나 거리 정보가 입력되는 경우, 로봇 청소기의 주변에 장애물이 존재하는 것으로 판단하고, 거리 정보가 입력되지 않는 경우, 로봇 청소기의 주변에 반사체가 존재한다고 판단한다.
도 8은 본 발명의 다른 실시예에 따른 로봇 청소기의 제어방법을 도시한 순서도이다.
도 8의 로봇 청소기의 제어방법은 도 7의 실시예와 비교하면, 서행 주행 단계(S250)와, 반사체 접촉 단계(S260)를 더 포함할 수 있다.
도 8을 참조하면, 서행 주행 단계에서, 로봇 청소기는 로봇 청소기 주변에 반사체가 존재하는 경우, 서행 주행할 수 있다. 구체적으로, 제어부(140)는 획득한 영상 속의 이미지가 로봇 청소기 자신의 이미지라고 판단되는 경우, 로봇 청소기가 서행으로 이동되게 주행부(180)를 제어할 수 있다. 여기서, 서행 주행은 로봇 청소기가 기 설정된 속도 보다 낮은 속도로 주행하는 것을 의미한다.
로봇 청소기가 반사체의 주변에서 서행으로 주행하여서, 반사체의 정확한 위치 정보를 수집하지 못한 경우, 반사체와 로봇 청소기가 충돌하여도 반사체 및 로봇 청소기의 파손을 방지할 수 있다. 또한, 로봇 청소기가 반사체의 주변에서 서행으로 주행하면서, 반사체의 위치정보를 정확하게 수집할 수 있도록 한다.
반사체 접촉 단계에서, 로봇 청소기는 반사체의 방향으로 서행으로 주행하고, 반사체와 접촉하면 정지한 후 방향을 전환하여 주행한다. 반사체 접촉 단계에서, 로봇 청소기는 획득한 영상 속의 이미지의 크기 변화를 통해 로봇 청소기와 반사체 사이의 거리를 산정할 수 있다.
로봇 청소기는 반사체와 외면과 접촉하면서, 반사체의 정확한 외형을 파악할 수 있게 되므로, 반사체의 위치정보를 정확하게 수집할 수 있게 된다. 이는, 로봇 청소기가 광 센서를 사용하는 경우, 반사체의 정확한 위치정보 수집이 영상만으로는 정확도가 떨어지는 보완해 줄 수 있다.
이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 특허청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.
100 : 로봇 청소기 130 : 센싱부
140 : 제어부 160 : 주행부
170 : 커뮤니케이션 모듈 171 : 입력부
173 : 출력부 175 : 통신부
180 : 청소부 200 : 충전대
140 : 제어부 160 : 주행부
170 : 커뮤니케이션 모듈 171 : 입력부
173 : 출력부 175 : 통신부
180 : 청소부 200 : 충전대
Claims (15)
- 본체를 이동시키는 주행부;
주변의 영상을 획득하는 영상획득부; 및
상기 영상획득부에서 획득한 영상을 분석하여 상기 본체의 주변에 위치된 반사체의 존재여부를 판단하는 제어부를 포함하고,
상기 제어부는,
상기 영상획득부에서 획득한 영상과, 기 저장된 상기 본체의 영상 사이의 유사도를 바탕으로 상기 본체의 주변에 반사체의 존재 여부를 판단하는 것을 특징으로 하는 이동 로봇. - 제1항에 있어서,
상기 제어부는,
상기 영상획득부에서 획득한 영상과, 기 저장된 상기 본체의 영상의 유사도가 기준 값을 초과하는 경우, 상기 본체의 주변에 반사체가 존재한다고 판단하는 이동 로봇. - 제1항에 있어서,
상기 제어부는,
상기 본체의 주변에 반사체가 존재하다고 판단하는 경우, 획득한 상기 영상을 바탕으로 주행 구역의 맵 상에서 상기 반사체가 위치되는 반사체 영역을 특정하는 이동 로봇. - 제1항에 있어서,
상기 제어부는,
상기 본체가 상기 반사체 영역을 회피하여 주행하도록 상기 주행부를 제어하는 이동 로봇. - 제1항에 있어서,
상기 제어부는,
상기 본체의 주행 중 상기 본체의 전방에 상기 반사체가 존재한다고 판단하는 경우, 상기 주행부가 정지되도록 제어하는 이동 로봇. - 제1항에 있어서,
상기 제어부는,
상기 본체의 주행 중 상기 본체의 전방에 상기 반사체가 존재한다고 판단하는 경우, 상기 본체의 속도가 감속되도록 상기 주행부를 제어하는 이동 로봇. - 제1항에 있어서,
상기 제어부는,
상기 획득한 영상에서 본체의 이미지의 크기를 바탕으로 상기 반사체와 상기 본체와의 거리를 연산하는 이동 로봇. - 제1항에 있어서,
상기 본체의 전방의 장애물을 감지하는 장애물 감지센서를 더 포함하고,
상기 제어부는,
상기 영상획득부에서 획득한 전방 영상과, 기 저장된 상기 본체의 영상의 유사도가 기준치를 초과하고, 상기 본체의 전방에 장애물이 감지 되지 않는 경우, 상기 본체의 전방에 반사체가 존재한다고 판단하는 것을 특징으로 하는 이동 로봇. - 제8항에 있어서,
상기 제어부는,
상기 영상획득부에서 획득한 전방 영상과, 기 저장된 상기 본체의 영상의 유사도가 기준치를 초과하고, 상기 본체의 전방에 장애물이 감지 되는 경우, 상기 본체의 전방에 다른 이동 로봇이 존재한다고 판단하는 것을 특징으로 하는 이동 로봇. - 이동 로봇의 주변의 영상을 획득하는 영상 획득단계;
상기 획득한 영상을 분석하는 분석 단계;
상기 분석된 영상을 기 저장된 이동 로봇의 영상과 비교하는 비교단계; 및
상기 분석된 영상과 기 저장된 이동 로봇의 영상 사이의 비교 결과를 바탕으로 반사체의 존재여부를 판단하는 반사체 판단단계를 포함하는 이동 로봇의 제어방법. - 제10항에 있어서,
상기 반사체 판단단계는,
획득한 상기 영상과, 기 저장된 상기 이동 로봇의 영상 사이의 유사도를 바탕으로 상기 이동 로봇의 주변에 반사체가 존재 여부를 판단하는 이동 로봇의 제어방법. - 제10항에 있어서,
상기 반사체 판단단계는,
획득한 상기 영상과, 기 저장된 상기 이동 로봇의 영상 사이의 유사도가 기준 값을 초과하는 경우, 상기 이동 로봇의 주변에 반사체가 존재한다고 판단하는 이동 로봇의 제어방법. - 제12항에 있어서,
획득한 상기 영상을 바탕으로 주행 구역의 맵 상에서 상기 반사체가 위치되는 반사체 영역을 특정하는 반사체 영역 특정 단계를 더 포함하는 이동 로봇의 제어방법. - 제13항에 있어서,
상기 이동 로봇이 상기 반사체 영역을 회피하여 주행하는 회피 주행 단계를 더 포함하는 이동 로봇의 제어방법. - 제10항에 있어서,
상기 이동 로봇의 주변의 장애물을 감지하는 장애물 감지단계; 및
상기 이동 로봇 주변의 장애물 존재여부를 바탕으로 상기 반사체와 장애물을 구분하는 구분 단계를 더 포함하는 이동 로봇의 제어방법.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180169082A KR102203438B1 (ko) | 2018-12-26 | 2018-12-26 | 이동 로봇 및 이동 로봇의 제어방법 |
PCT/KR2019/018469 WO2020138954A1 (ko) | 2018-12-26 | 2019-12-26 | 이동 로봇 및 이동 로봇의 제어방법 |
US17/309,880 US20220066463A1 (en) | 2018-12-26 | 2019-12-26 | Mobile robot and method of controlling the mobile robot |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180169082A KR102203438B1 (ko) | 2018-12-26 | 2018-12-26 | 이동 로봇 및 이동 로봇의 제어방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200084430A KR20200084430A (ko) | 2020-07-13 |
KR102203438B1 true KR102203438B1 (ko) | 2021-01-14 |
Family
ID=71129905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180169082A KR102203438B1 (ko) | 2018-12-26 | 2018-12-26 | 이동 로봇 및 이동 로봇의 제어방법 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220066463A1 (ko) |
KR (1) | KR102203438B1 (ko) |
WO (1) | WO2020138954A1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112493924B (zh) * | 2019-08-26 | 2023-03-10 | 苏州宝时得电动工具有限公司 | 清洁机器人及其控制方法 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1517117A1 (de) * | 2003-09-22 | 2005-03-23 | Leica Geosystems AG | Verfahren und System zur Bestimmung einer Aktualposition eines Positionierungsgerätes |
KR101461185B1 (ko) * | 2007-11-09 | 2014-11-14 | 삼성전자 주식회사 | 스트럭쳐드 라이트를 이용한 3차원 맵 생성 장치 및 방법 |
JP5857747B2 (ja) * | 2012-01-05 | 2016-02-10 | 富士通株式会社 | 撮像装置を搭載したロボットの動作設定法。 |
KR101849354B1 (ko) * | 2013-03-19 | 2018-05-24 | 한화지상방산 주식회사 | 이동 로봇의 경로계획 생성 장치 및 방법 |
KR101495849B1 (ko) | 2014-10-24 | 2015-03-03 | 김태윤 | 에코 마그네슘 합금 제조방법과 제조장치 |
US20170132821A1 (en) * | 2015-11-06 | 2017-05-11 | Microsoft Technology Licensing, Llc | Caption generation for visual media |
KR101778500B1 (ko) * | 2015-12-07 | 2017-09-14 | (주)새온 | 반사판을 구비한 이동로봇 |
JP2017177294A (ja) * | 2016-03-31 | 2017-10-05 | キヤノン株式会社 | ロボット制御装置、ロボット制御方法、ロボットシステムおよびコンピュータプログラム |
US10245730B2 (en) * | 2016-05-24 | 2019-04-02 | Asustek Computer Inc. | Autonomous mobile robot and control method thereof |
JP6607162B2 (ja) * | 2016-09-23 | 2019-11-20 | カシオ計算機株式会社 | ロボット、状態判定システム、状態判定方法及びプログラム |
US11125860B2 (en) * | 2017-09-29 | 2021-09-21 | Rockwell Automation Technologies, Inc. | Triangulation applied as a safety scanner |
US20200241549A1 (en) * | 2017-10-12 | 2020-07-30 | Sony Corporation | Information processing apparatus, moving apparatus, and method, and program |
JP6720958B2 (ja) * | 2017-12-22 | 2020-07-08 | カシオ計算機株式会社 | 駆動装置、駆動方法及びプログラム |
CN108267121A (zh) * | 2018-01-24 | 2018-07-10 | 锥能机器人(上海)有限公司 | 一种可变场景下多设备的视觉导航方法及系统 |
US10909599B2 (en) * | 2018-03-08 | 2021-02-02 | Capital One Services, Llc | Systems and methods for car shopping using messaging framework |
WO2019235067A1 (ja) * | 2018-06-05 | 2019-12-12 | ソニー株式会社 | 情報処理装置、情報処理システム、プログラム、及び情報処理方法 |
US11460849B2 (en) * | 2018-08-09 | 2022-10-04 | Cobalt Robotics Inc. | Automated route selection by a mobile robot |
JP2021193470A (ja) * | 2018-09-11 | 2021-12-23 | ソニーグループ株式会社 | 制御装置、情報処理方法、およびプログラム |
US11364903B2 (en) * | 2018-09-28 | 2022-06-21 | Logistics and Supply Chain MultiTech R&D Centre Limited | Automated guide vehicle with a collision avoidance apparatus |
-
2018
- 2018-12-26 KR KR1020180169082A patent/KR102203438B1/ko active IP Right Grant
-
2019
- 2019-12-26 WO PCT/KR2019/018469 patent/WO2020138954A1/ko active Application Filing
- 2019-12-26 US US17/309,880 patent/US20220066463A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
KR20200084430A (ko) | 2020-07-13 |
US20220066463A1 (en) | 2022-03-03 |
WO2020138954A1 (ko) | 2020-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102275300B1 (ko) | 이동 로봇 및 그 제어방법 | |
KR101976424B1 (ko) | 이동 로봇 | |
EP3349087B1 (en) | Moving robot | |
KR102021833B1 (ko) | 인공지능을 이용한 이동 로봇 및 이동 로봇의 제어방법 | |
US11537135B2 (en) | Moving robot and controlling method for the moving robot | |
AU2017258264B2 (en) | Mobile robot and control method therefor | |
US20220257074A1 (en) | Mobile robot using artificial intelligence and controlling method thereof | |
KR102423573B1 (ko) | 인공지능을 이용한 이동 로봇 및 이동 로봇의 제어방법 | |
KR20100098997A (ko) | 로봇 청소기 및 그의 위치 검출 방법 | |
KR102201144B1 (ko) | 이동 로봇 및 그 제어방법 | |
KR102410530B1 (ko) | 이동 로봇 시스템 | |
US20220175208A1 (en) | Robot cleaner using artificial intelligence and control method thereof | |
KR20180037516A (ko) | 이동 로봇 및 그 제어방법 | |
KR20180074141A (ko) | 이동 로봇 | |
KR102490754B1 (ko) | 이동 로봇 시스템 | |
KR102203438B1 (ko) | 이동 로봇 및 이동 로봇의 제어방법 | |
WO2020059292A1 (ja) | 自律走行掃除機 | |
KR20200142865A (ko) | 인공지능을 이용한 이동 로봇 및 이동 로봇의 제어방법 | |
KR102490755B1 (ko) | 이동 로봇 시스템 | |
KR20210113902A (ko) | 인공지능을 이용한 이동 로봇 및 이동 로봇의 제어방법 | |
KR20210089461A (ko) | 인공지능을 이용한 이동 로봇 및 이동 로봇의 제어방법 | |
KR102410529B1 (ko) | 이동 로봇 시스템 | |
KR102500525B1 (ko) | 이동 로봇 | |
KR20230134800A (ko) | 로봇 청소기 및 로봇 청소기의 제어방법 | |
KR20230126868A (ko) | 로봇 청소기 및 로봇 청소기의 제어방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |