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

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

Info

Publication number
KR20200103900A
KR20200103900A KR1020190016539A KR20190016539A KR20200103900A KR 20200103900 A KR20200103900 A KR 20200103900A KR 1020190016539 A KR1020190016539 A KR 1020190016539A KR 20190016539 A KR20190016539 A KR 20190016539A KR 20200103900 A KR20200103900 A KR 20200103900A
Authority
KR
South Korea
Prior art keywords
cleaning robot
obstacle
floor
sensor
main body
Prior art date
Application number
KR1020190016539A
Other languages
English (en)
Other versions
KR102677261B1 (ko
Inventor
소제윤
홍준우
김인주
이학봉
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020190016539A priority Critical patent/KR102677261B1/ko
Priority to US16/781,359 priority patent/US20200253445A1/en
Priority to EP20156454.9A priority patent/EP3696641B1/en
Priority to CN202010090239.8A priority patent/CN111557618A/zh
Publication of KR20200103900A publication Critical patent/KR20200103900A/ko
Application granted granted Critical
Publication of KR102677261B1 publication Critical patent/KR102677261B1/ko

Links

Images

Classifications

    • 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
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/24Floor-sweeping machines, motor-driven
    • 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/02Nozzles
    • A47L9/04Nozzles with driven brushes or agitators
    • A47L9/0461Dust-loosening tools, e.g. agitators, brushes
    • A47L9/0466Rotating tools
    • A47L9/0477Rolls
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4002Installations of electric equipment
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4011Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4063Driving means; Transmission means therefor
    • A47L11/4066Propulsion of the whole machine
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/009Carrying-vehicles; Arrangements of trollies or wheels; Means for avoiding mechanical obstacles
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/02Nozzles
    • A47L9/04Nozzles with driven brushes or agitators
    • A47L9/0405Driving means for the brushes or agitators
    • A47L9/0411Driving means for the brushes or agitators driven by electric motor
    • 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
    • A47L9/2826Parameters or conditions being sensed the condition of the floor
    • 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
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2857User input or output elements for control, e.g. buttons, switches or displays
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/30Arrangement of illuminating devices
    • 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/02Sensing devices
    • B25J19/021Optical sensing devices
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme 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/1697Vision controlled systems
    • 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/0227Control of position or course in two dimensions specially adapted to land vehicles using mechanical sensing means, e.g. for sensing treated area
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control 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
    • G05D1/0253Control 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 extracting relative motion information from a plurality of images taken successively, e.g. visual odometry, optical flow
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0272Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising means for registering the travel distance, e.g. revolutions of wheels
    • 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
    • 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/06Control of the cleaning action for autonomous devices; Automatic detection of the surface condition before, during or after cleaning

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Robotics (AREA)
  • Automation & Control Theory (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Electromagnetism (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Fuzzy Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Electric Vacuum Cleaner (AREA)

Abstract

플로워 재질에 관계없이 정확한 주행 기록을 생성할 수 있는 청소 로봇이 개시된다. 청소 로봇은 본체; 본체에 설치된 구동 바퀴; 구동 바퀴를 회전시키는 구동 모터; 구동 바퀴의 회전을 감지하는 주행 센서; 본체의 이동 방향에 위치하는 장애물을 검출하는 제1 광학 센서; 플로워를 청소하는 청소 툴; 플로워의 영상을 획득하는 제2 광학 센서; 구동 모터, 주행 센서, 제1 광학 센서 및 제2 광학 센서와 전기적으로 연결되는 프로세서를 포함할 수있다. 프로세서는 주행 센서의 출력과 제2 광학 센서의 출력에 기초하여 본체의 이동 기록을 저장할 수 있다. 프로세서는 장애물의 검출에 응답하여 제2 광학 센서의 출력에 기초하여 본체의 이동 거리를 산출할 수 있다. 프로세서는 산출된 이동 거리가 임계 거리보다 큰 것에 응답하여 장애물 주변의 플로워를 청소하도록 청소 툴을 제어할 수 있다.

Description

청소 로봇 및 그 제어 방법 {CLEANING ROBOT AND CONTROLLING METHOD THEREOF}
개시된 발명은 청소 로봇 및 그 제어방법에 관한 것으로, 더욱 상세하게는 광학 플로우 센서를 포함하는 청소 로봇 및 그 제어 방법에 관한 발명이다.
일반적으로, 청소 로봇은 사용자의 조작 없이 자동으로 청소 공간을 주행하며 청소 공간을 청소하는 장치이다.
청소 공간을 자동으로 주행하기 위하여, 청소 로봇은 주행을 방해하는 장애물을 감지하고 주행 중에 주행 기록(위치 정보, 방향 정보 등)을 저장한다. 예를 들어, 청소 로봇은, 바퀴의 회전을 감지하는 엔코더의 출력과 회전을 감지할 수 있는 자이로 센서의 출력과 가속도를 감지할 수 있는 가속도 센서의 출력 등에 기초하여, 주행 기록을 생성할 수 있다.
그러나, 바퀴와 플로워 사이의 슬립이 발생하면 엔코더에 의한 주행 기록은 부정확할 수 있다. 또한, 자이로 센서는 청소 로봇의 직선 운동을 감지하지 못하며, 가속도 센서는 청소 로봇의 등속 운동을 감지하지 못한다.
이처럼, 엔코더 및 자이로 센서 등에 의한 주행 기록은 플로워 재질에 따라 또는 주행 상황에 따라 그 정확성이 떨어질 수 있다.
이러한 문제를 극복하고자 개시된 발명의 일 측면은, 플로워 재질에 관계없이 정확한 주행 기록을 생성할 수 있는 청소 로봇을 제공하고자 한다.
주행 상황에 관계없이 정확한 주행 기록을 생성할 수 있는 청소 로봇을 제공하고자 한다.
개시된 발명의 일 측면은, 후진 중에 청소 로봇의 후미가 들린 것을 청소 로봇의 바퀴가 단차에 빠진 것으로부터 식별할 수 있는 청소 로봇을 제공하고자 한다.
개시된 발병의 일 측면에 의한 청소 로봇은 본체; 상기 본체에 설치된 구동 바퀴; 상기 구동 바퀴를 회전시키는 구동 모터; 상기 구동 바퀴의 회전을 감지하는 주행 센서; 상기 본체의 이동 방향에 위치하는 장애물을 검출하는 제1 광학 센서; 플로워를 청소하는 청소 툴; 상기 플로워의 영상을 획득하는 제2 광학 센서; 상기 구동 모터, 상기 주행 센서, 상기 제1 광학 센서 및 제2 광학 센서와 전기적으로 연결되는 프로세서를 포함할 수있다. 상기 프로세서는 상기 주행 센서의 출력과 상기 제2 광학 센서의 출력에 기초하여 상기 본체의 이동 거리를 판단하고, 상기 장애물의 검출에 응답하여 상기 제2 광학 센서의 출력에 기초하여 상기 본체의 이동 거리를 판단하고, 상기 제2 광학 센서의 출력에 기초하여 판단된 이동 거리가 임계 거리보다 큰 것에 응답하여 상기 장애물 주변의 플로워를 청소하도록 상기 청소 툴을 제어할 수 있다.
개시된 발병의 일 측면에 의한, 본체 및 상기 본체를 설치된 구동 바퀴를 포함하는 청소 로봇의 제어 방법에 있어서, 상기 구동 바퀴를 구동하고; 상기 구동 바퀴의 회전을 감지하고; 플로워의 영상을 획득하고; 상기 구동 바퀴의 회전과 상기 플로워의 영상에 기초하여 상기 청소 로봇의 이동 거리를 판단하고; 상기 본체의 이동 방향에 위치하는 장애물을 검출한 것에 응답하여, 상기 플로워의 영상에 기초하여 상기 청소 로봇의 이동 거리를 판단하고; 상기 플로워의 영상에 기초하여 산출된 이동 거리가 임계 거리보다 큰 것에 응답하여 상기 장애물 주변의 플로워를 청소하는 것을 포함할 수 있다.
개시된 발병의 일 측면에 의한 청소 로봇은 본체; 상기 본체에 설치된 구동 바퀴; 상기 구동 바퀴를 회전시키는 구동 모터; 상기 구동 바퀴의 이탈을 감지하는 바퀴 이탈 센서; 플로워의 영상을 획득하는 광학 센서; 상기 구동 모터, 상기 바퀴 이탈 센서 및 상기 광학 센서와 전기적으로 연결되는 프로세서를 포함할 수 있다. 상기 프로세서는 상기 바퀴 이탈 센서의 출력 및 상기 광학 센서에 기초하여 상기 본체의 들림을 감지할 수 있다.
개시된 발명의 일 측면에 따르면, 광학 플로우 센서를 구비함으로써 플로워 재질에 관계없이 정확한 주행 기록을 생성할 수 있는 청소 로봇을 제공할 수 있다.
개시된 발명의 일 측면에 따르면, 광학 플로우 센서를 구비함으로써 주행 상황에 관계없이 정확한 주행 기록을 생성할 수 있는 청소 로봇을 제공할 수 있다.
개시된 발명의 일 측면에 따르면, 광학 플로우 센서의 출력에게 기초하여 후진 중에 청소 로봇의 후미가 들린 것을 청소 로봇의 바퀴가 단차에 빠진 것으로부터 식별할 수 있는 청소 로봇을 제공하고자 한다.
도 1 및 도 2는 일 실시예에 의한 청소 로봇의 외관을 도시한다.
도 3은 일 실시예에 의한 청소 로봇의 구성을 도시한다.
도 5는 일 실시예에 의한 청소 로봇의 내부를 도시한다.
도 5 및 도 6은 일 실시예에 의한 청소 로봇에 포함된 제1 광학 센서를 도시한다.
도 7은 일 실시예에 의한 청소 로봇에 포함된 제2 광학 센서를 도시한다.
도 8 및 도 9은 일 실시예에 의한 청소 로봇에 포함된 청소 툴을 도시한다.
도 10은 일 실시예에 의한 청소 로봇의 주행의 일 예를 도시한다.
도 11는 일 실시예에 의한 청소 로봇이 장애물을 향하여 주행하는 일 예를 도시한다.
도 12은 일 실시예예 의한 청소 로봇이 장애물과 충돌하는 일 예를 도시한다.
도 13는 일 실시예예 의한 청소 로봇이 장애물의 주변을 청소하는 일 예를 도시한다.
도 14는 일 실시예예 의한 청소 로봇이 장애물과 충돌하는 다른 일 예를 도시한다.
도 15은 일 실시예에 의한 청소 로봇이 장애물을 향하여 주행하는 다른 일 예를 도시한다.
도 16 및 도 17은 일 실시예에 의한 청소 로봇에 포함된 제2 광학 센서의 출력의 일 예를 도시한다.
도 18는 일 실시예에 의한 청소 로봇의 주행 오류를 감지하는 일 예를 도시한다.
도 19은 일 실시예에 의한 청소 로봇이 주행하는 일 예를 도시한다.
도 20은 일 실시예에 의한 청소 로봇에 포함된 제2 광학 센서의 출력의 일 예를 도시한다.
도 21는 일 실시예에 의한 청소 로봇의 동작 오류를 감지하는 일 예를 도시한다.
도 22은 일 실시예에 의한 청소 로봇에 포함된 제2 광학 센서의 출력의 일 예를 도시한다.
도 23는 일 실시예에 의한 청소 로봇에 포함된 제2 광학 센서의 비활성화하는 일 예를 도시한다.
도 24는 일 실시예에 의한 청소 로봇에 포함된 제2 광학 센서의 동작 오류를 감지하는 일 예를 도시한다.
명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 명세서가 실시예들의 모든 요소들을 설명하는 것은 아니며, 본 발명이 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부, 모듈, 부재, 블록'이라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 모듈, 부재, 블록'이 하나의 구성요소로 구현되거나, 하나의 '부, 모듈, 부재, 블록'이 복수의 구성요소들을 포함하는 것도 가능하다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.
또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
제 1, 제 2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다.
단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.
각 단계들에 있어 식별 부호는 설명의 편의를 위하여 사용되는 것으로 식별 부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
이하 첨부된 도면들을 참고하여 본 발명의 작용 원리 및 실시예에 대해 설명한다.
도 1 및 도 2는 일 실시예에 의한 청소 로봇의 외관을 도시한다. 도 3은 일 실시예에 의한 청소 로봇의 구성을 도시한다. 도 5는 일 실시예에 의한 청소 로봇의 내부를 도시한다. 도 5 및 도 6은 일 실시예에 의한 청소 로봇에 포함된 제1 광학 센서를 도시한다. 도 7은 일 실시예에 의한 청소 로봇에 포함된 제2 광학 센서를 도시한다. 도 8 및 도 9은 일 실시예에 의한 청소 로봇에 포함된 청소 툴을 도시한다.
청소 로봇(100)은 청소 공간을 이동하며 청소 공간의 플로워(floor)을 청소할 수 있다. 청소 공간은 특별히 한정되지 아니하며, 청소 로봇(100)이 이동하며 청소하는 공간은 어디든지 청소 공간일 수 있다. 예를 들어, 청소 공간은 청소 로봇(100)이 놓여진 방 또는 거실 또는 복도 또는 사무실 또는 체육관 등의 실내 뿐만 아니라, 실외 공간을 포함할 수 있다.
도 1, 도 2, 도 3 및 도 4에 도시된 바와 같이, 청소 로봇(100)은 본체(101)와, 본체(101)의 전방에 마련된 범퍼(102)를 포함한다.
본체(101)는 대략 원통 형상으로 형성될 수 있다. 예를 들어, 본체(101)는 대략 원형의 상면(101a)과, 상면(101a)의 외곽선을 따라 형성되는 측면(101b)을 포함할 수 있다.
본체(101)의 측면(101b) 중 적어도 일부는 평평할 수 있다. 예를 들어, 본체(101)의 전방에 형성된 전면(101c)은 전방을 향하여 대략 평평할 수 있다.
범퍼(102)는 본체(101)의 전면(101c)에 형성될 수 있으며, 전방을 향하여 대력 평평할 수 있다. 본체(101)는 대략 원통 형성을 가지며 또한 범퍼(102)는 대략 평평한 면을 포함하므로, 청소 로봇(100)의 저면(101d)은 대략 반원과 직사각형이 조합된 형상을 가질 수 있다.
범퍼(102)는 장애물과의 충돌 시에 본체(101)에 전달되는 충격을 저감시킬 수 있다. 여기서, 청소 로봇(100)의 주행을 방해하는 물건 또는 사람 또는 동물을 포함할 수 있다. 장애물은 예를 들어 청소 공간을 구획하는 벽와, 청소 공간에 배치된 가구와, 청소 공간에 위치하는 사람 또는 동물을 포함할 수 있다.
청소 로봇(100)은 주로 범퍼(102)가 전방을 향하도록 주행할 수 있으며, 도 1에 도시된 바와 같이 범퍼(102)가 향하는 방향을 청소 로봇(100)의 '전방'으로 정의할 수 있다.
청소 로봇(100)의 본체(101) 내부 및 외부에는 청소 로봇(100)의 기능(주행 및 청소)를 실현하기 위한 구성 부품들이 마련될 수 있다.
청소 로봇(100)은 유저 인터페이스(110)와, 충돌 센서(120)와, 제1 광학 센서(130)와, 제2 광학 센서(140)와, 제3 광학 센서(195)와, 휠 드라이브(150)와, 주행 센서(160)와, 바퀴 이탈 센서(170)와, 청소 툴(180)와, 컨트롤러(190)를 포함할 수 있다.
청소 로봇(100)에 포함된 구성은 이상에서 나열된 구성에 한정되지 아니하며, 필요에 따라 다른 구성이 추가되거나 일부가 생략될 수 있다. 또한, 청소 로봇(100)에 포함된 구성의 명칭은 이상에서 나열된 명칭에 한정되는 것은 아니다. 청소 로봇(100)에 포함된 각각의 구성은 동일한 기능을 수행하는 다른 명칭으로 호칭될 수 있다.
유저 인터페이스(110)는 도 1에 도시된 바와 같이 본체(101)의 상면(101a)에 마련될 수 있으며, 입력 버튼(111)과 디스플레이(112)를 포함할 수 있다.
입력 버튼(111)은 사용자로부터 사용자 입력을 획득할 수 있다. 입력 버튼(111)은 청소 로봇(100)을 온 또는 오프시키기 위한 사용자 입력과, 청소 로봇(100)을 동작시키거나 정지시키기 위한 사용자 입력과, 청소 로봇(100)의 청소 모드를 선택하기 위한 사용자 입력과, 충전을 위하여 청소 로봇(100)을 충전 스테이션으로 복귀시키기 위한 사용자 입력 등을 포함할 수 있다.
입력 버튼(111)은 사용자가 누르는 것에 의하여 작동되는 푸시 스위치(push switch)와 멤브레인 스위치(membrane), 또는 사용자의 신체 일부의 접촉에 의하여 작동되는 터치 스위치(touch switch) 등을 포함할 수 있다.
디스플레이(112)는 사용자가 입력 버튼(111)을 통하여 입력된 사용자 입력에 응답하여 청소 로봇(100)의 동작 정보를 표시한다, 예를 들어, 디스플레이(112)는 청소 로봇(100)의 동작 상태, 배터리의 충전 상태, 사용자에 의하여 선택된 청소 모드, 충전 장치로의 복귀 여부 등을 표시할 수 있다.
디스플레이(112)는 발광 다이오드(Light Emitting Diode: LED) 패널 또는 유기 발광 다이오드(Organic Light Emitting Diode: OLED) 패널 또는 액정 디스플레이(Liquid Crystal Display, LCD) 패널 등을 포함할 수 있다.
입력 버튼(111)과 디스플레이(112)는 일체로 사용자로부터 사용자 입력을 획득하고, 사용자 입력에 대응하는 동작 정보를 표시하는 터치 스크린 패널(Touch Screen Panel: TSP)을 포함할 수도 있다. 터치 스크린 패널은 동작 정보 및 사용자 입력을 표시하는 디스플레이, 터치 입력을 감지하는 터치 패널(touch panel), 터치 입력에 기초하여 사용자가 입력한 제여 명령을 판단하는 터치 스크린 컨트롤러를 포함할 수 있다.
충돌 센서(120)는 도 4에 도시된 바와 같이 대략 범퍼(120)의 후방에 위치할 수 있으며, 제1 충돌 스위치(121)와 제2 충돌 스위치(122)를 포함한다.
범퍼(102)는 앞서 설명된 바와 같이 본체(101)의 전면(101c)에 형성될 수 있으며, 장애물과의 충돌 시에 본체(101)에 전달되는 충격을 저감시킬 수 있다. 범퍼(102)는 장애물과의 충돌 시에 충돌에 의한 충격을 제1 충돌 스위치(121)와 제2 충돌 스위치(122)로 전달할 수 있다.
제1 충돌 스위치(121)와 제2 충돌 스위치(122)는 각각 범퍼(102)의 장애물과의 충돌을 검출할 수 있다.
제1 충돌 스위치(121)는 본체(101)의 좌측에 설치되어, 범퍼(102)의 좌측 부분의 장애물과의 충돌을 검출할 수 있다. 범퍼(102)의 좌측 부분(102a)의 장애물과의 충돌에 의하여 범퍼(102)의 좌측 부분은 본체(101)에 대하여 상대적으로 후방으로 이동할 수 있으며, 제1 충돌 스위치(121)는 범퍼(102)의 좌측 부분의 이동을 검출할 수 있다. 예를 들어, 개방된(오프된) 제2 충돌 스위치(122)는 범퍼(102)의 좌측 부분의 이동에 의하여 폐쇄될 수 있다(온될 수 있다).
제2 충돌 스위치(122)는 본체(101)의 우측에 설치되어, 범퍼(102)의 우측 부분의 장애물과의 충돌을 검출할 수 있다. 범퍼(102)의 우측 부분(102b)의 장애물과의 충돌에 의하여 범퍼(102)의 우측 부분은 본체(101)에 대하여 상대적으로 후방으로 이동할 수 있으며, 제2 충돌 스위치(122)는 범퍼(102)의 우측 부분의 이동을 검출할 수 있다. 예를 들어, 개방된(오프된) 제1 충돌 스위치(121)는 범퍼(102)의 우측 부분의 이동에 의하여 폐쇄될 수 있다(온될 수 있다).
범퍼(102)가 장애물과 충돌할 때, 제1 충돌 스위치(121)와 제2 충돌 스위치(122)는 각각 범퍼(102)의 장애물과의 충돌을 나타내는 충돌 감지 신호(예를 들어, 전압 또는 전류)를 컨트롤러(190)에 전달할 수 있다.
장애물과의 충돌에 의한 이동된 범퍼(120)를 본래의 위치로 복원하기 위하여 탄성 부재(123)가 마련된다. 탄성 부재(123)는 본체(101)와 범퍼(102) 사이를 연결할 수 있다. 탄성 부재(123)는 범퍼(102)가 장애물과의 충돌에 의하여 이동한 이후 범퍼(102)를 본래의 위치로 복원시킬 수 있다.
제1 광학 센서(130)는 도 5 및 도 6에 도시된 바와 같이 대략 청소 로봇(100)의 본체(101)의 전방 부분에 위치할 수 있다.
제1 광학 센서(130)는 제1 이미지 센서(131)와 제1 발광 소자(132)와 반사 부재(133)와 윈도우(134)와 광학 가이드(135)와 제1 이미지 프로세서(136)를 포함한다.
제1 이미지 센서(131)는 청소 로봇(100)의 주변(예를 들어, 청소 로봇의 전방 및/또는 상측)을 촬영하고 영상 데이터를 획득할 수 있다. 제1 이미지 센서(131)는 광(예를 들어, 적외선 또는 가시광선)을 전기적 영상 데이터로 변환하는 포토 다이오드들을 포함할 수 있다. 예를 들어, 제1 이미지 센서(131)는 포토 다이오드들이 2차원으로 배열된 포토 다이오드 어레이(photodiode array)를 포함할 수 있다. 예를 들어, 제1 이미지 센서(131)는 CMOS (Complementary Metal Oxide Semiconductor) 센서 또는 CCD (Charge coupled device) 센서를 포함할 수 있다.
제1 이미지 센서(131)는 도 5 및 도 6에 도시된 바와 같이 상방을 향할 수 있다. 예를 들어, 제1 이미지 센서(131)는 제1 이미지 센서(131)의 상측으로부터 입사되는 광을 수신할 수 있다.
제1 이미지 센서(131)는 또한 광을 포토 다이오드 어레이로 집중시키는 렌즈를 더 포함할 수 있다.
제1 발광 소자(132)는 청소 로봇(100)의 전방을 향하여 광(예를 들어, 적외선)을 발신할 수 있다. 예를 들어, 제1 발광 소자(132)는 광을 발신하는 발광 다이오드(Light Emitting Diode, LED)를 포함할 수 있다. 발광 다이오드는 적외선 또는 가시광선(이하에서는 '적외선 등'이라 한다)을 발신할 수 있다. 다만 이에 한정되지 아니하며, 발광 다이오드는 자외선을 발신할 수 있다.
제1 발광 소자(132)는 또한 발광 다이오드로부터 발신된 광을 플로워와 평행하게 확산시키는 광각 렌즈를 더 포함할 수 있다. 광각 렌즈는 광을 투과시킬 수 있는 재질로 구성될 수 있으며, 굴절 또는 전반사를 이용하여 발광 다이오드로부터 발신된 광을 플로워와 평행하게 확산시킬 수 있다. 광각 렌즈로 인하여, 발광 다이오드로부터 발신된 광은 청소 로봇(100)의 전방을 향하여 부채꼴 형태로 확산될 수 있다.
반사 부재(133)는 제1 이미지 센서(131)의 상측에 마련될 수 있으며, 청소 로봇(100)의 전방으로부터 입사된 광을 제1 이미지 센서(131)를 향하여 반사할 수 있다.
제1 발광 소자(132)에 의하여 발신된 광은 청소 로봇(100)의 전방향을 향하여 전파될 수 있으며, 광은 청소 로봇(100)의 전방에 위치하는 장애물에 의하여 반사될 수 있다. 반사된 광의 일부는 청소 로봇(100)에 입사될 수 있다. 반사 부재(133)는 장애물로부터 반사된 광을 제1 이미지 센서(131)로 반사시킬 수 있다.
따라서, 제1 이미지 센서(131)의 적어도 일부는 장애물로부터 반사된 광에 의한 영상 데이터를 획득할 수 있다.
제1 이미지 센서(131)의 다른 일부가 청소 로봇(100) 상측을 촬영할 수 있도록, 제1 이미지 센서(131)의 상측에는 윈도우(134)와 광학 가이드(135)가 마련된다.
윈도우(134)는 먼지 등의 이물질로부터 제1 이미지 센서(131)를 보호하며, 광이 통과할 수 있는 투명한 재질로 구성될 수 있다. 윈도우(134)는 대략 평행한 변 중 어느 하나가 다른 하나보다 긴 사다리꼴 형상 또는 대략 반원 형상을 가질 수 있다.
광학 가이드(135)는 윈도우(134)를 통과한 광이 제1 이미지 센서(131)에 입사될 수 있도록 마련된다. 광학 가이드(135)는, 제1 이미지 센서(131)의 시야를 차단하지 아니하도록, 상부는 단면적이 넓고 하부는 단면적이 좁은 반원뿔(semi-conical) 형태를 가질 수 있다. 예를 들어, 광학 가이드(135)는 제1 이미지 센서(131)로부터 수직 방향으로 연장되는 제1 격벽(135a)과 제1 이미지 센서(131)로부터 비스듬하게 상측으로 연장되는 제2 격벽(135b)을 포함할 수 있다.
이처럼, 광학 가이드(135)가 대략 반원뿔(semi-conical) 형태를 가짐으로 인하여, 청소 로봇(100)의 상측으로부터 입사되는 광은 방해되지 아니하고 제1 이미지 센서(131)까지 입사될 수 있다. 그로 인하여, 제1 이미지 센서(131)는 청소 로봇(100) 상측의 영상 데이터를 획득할 수 있다.
이처럼, 제1 이미지 센서(131)는 청소 로봇(100)의 전방 영상 데이터와 청소 로봇(100)의 상측 영상 데이터를 획득할 수 있다.
제1 이미지 프로세서(136)는 제1 이미지 센서(131)로부터 영상 데이터를 수신하고, 제1 이미지 센서(131)의 영상 데이터를 처리할 수 있다.
예를 들어, 제1 이미지 프로세서(136)는 제1 이미지 센서(131)의 영상 데이터로부터 청소 로봇(100)의 전방 영상 데이터와 청소 로봇(100)의 상측 영상 데이터를 구획할 수 있다.
제1 이미지 프로세서(136)는 전방 영상 데이터로부터 청소 로봇(100)의 전방에 위치하는 장애물의 존재 여부를 식별하고, 장애물이 존재하면 장애물의 위치 정보(장애물까지의 거리 및 장애물의 방향)를 식별할 수 있다.
제1 이미지 프로세서(136)는 상측 영상 데이터로부터 특징점(예를 들어, 촬영된 물체의 엣지 부분)을 추출하고, 추출된 영상 데이터의 특징을 저장할 수 있다. 제1 이미지 프로세서(136)는 현재의 상측 영상 데이터의 특징점과 이전의 상측 영상 데이터의 특징점을 비교할 수 있다. 제1 이미지 프로세서(136)는 현재의 상측 영상 데이터의 특징점의 위치와 이전의 상측 영상 데이터의 특징점의 위치 사이의 비교에 기초하여 영상 데이터의 특징점의 이동 벡터를 판단할 수 있다. 또한, 제1 이미지 프로세서(136)는 영상 데이터의 특징점의 이동 벡터에 기초하여 청소 로봇(100)의 이동 방향을 판단할 수 있다.
이처럼, 제1 광학 센서(130)는 장애물의 존부, 장애물의 위치에 관한 정보 및 청소 로봇(100)의 이동 방향에 관한 정보를 컨트롤러(190)에 제공할 수 있다.
제2 광학 센서(140)는 청소 로봇(100)의 본체(101)의 일측에 설치될 수 있다. 예를 들어, 도 7에 도시된 바와 같이 제2 광학 센서(140)는 청소 로봇(100)의 후방 하부에 마련될 수 있으나, 이에 한정되지 아니한다. 예를 들어 제2 광학 센서(140)는 청소 로봇(100)의 본체(101)의 중심 부분에 설치될 수 있다.
제2 광학 센서(140)는 제2 이미지 센서(141)와, 제2 발광 소자(142)와, 인쇄 회로 기판(143)과, 센서 지지 부재(145)와, 제2 이미지 프로세서(146)를 포함한다.
제2 이미지 센서(141)는 청소 로봇(100)의 주변(예를 들어, 청소 공간의 플로워)을 촬영하고 영상 데이터를 획득할 수 있다. 제2 이미지 센서(141)는 포토 다이오드 어레이 예를 들어 CMOS센서 또는 CCD 센서를 포함할 수 있다.
제2 이미지 센서(141)는 도 7에 도시된 바와 같이 청소 공간의 플로워를 향할 수 있다. 예를 들어, 제2 이미지 센서(141)는 제2 이미지 센서(141)의 하측으로부터 입사되는 광을 수신할 수 있다.
제2 이미지 센서(141)는 또한 광을 포토 다이오드 어레이로 집중시키는 렌즈를 더 포함할 수 있다.
제2 발광 소자(142)는 청소 로봇(100)의 하측을 향하여 광(예를 들어, 적외선 또는 가시광선)을 발신할 수 있다. 예를 들어, 제2 발광 소자(142)는 광을 발신하는 발광 다이오드를 포함할 수 있다. 발광 다이오드는 적외선 또는 가시광선을 발신할 수 있다. 다만 이에 한정되지 아니하며, 발광 다이오드는 자외선을 발신할 수 있다.
제2 이미지 센서(141)와 제2 발광 소자(142)는 인쇄 회로 기판(143) 상에 마운트될 수 있다. 인쇄 회로 기판(143)에는 제2 이미지 센서(141)와 제2 발광 소자(142)를 컨트롤러(190)와 연결하는 회로들이 마운트될 수 있다.
인쇄 회로 기판(143)은 센서 지지 부재(145)에 의하여 지지될 수 있다.
센서 지지 부재(145)는 본체(101)에 형성된 경통(147)에 고정될 수 있다. 경통(147)은 본체(101)와 일체로 형성될 수 있다.
경통(147)의 상측에는 조립 돌기(147a)가 형성되며, 센서 지지 부재(145)의 하측에는 조립 홈(145a)에 형성된다. 경통(147)의 조립 돌기(147a)는 센서 지지 부재(145)의 조립 홈(145a)에 삽입될 수 있다. 조립 돌기(147a)와 조립 홈(145a)은 센서 지지 부재(145)가 조립되는 위치 및 자세를 안내할 수 있다. 경통(147)의 조립 돌기(147a)와 센서 지지 부재(145)의 조립 홈(145c)으로 인하여, 조립자가 센서 지지 부재(145)를 경통(147) 상에 잘못된 방향으로 조립하는 것이 방지될 수 있다.
제2 광학 센서(140)의 제2 발광 소자(142)는 경통(147)의 내측에서 하측을 향하여 광을 발신할 수 있다. 제2 발광 소자(142)에 의하여 발신된 광은 경통(147)의 하측을 향하여 전파될 수 있으며, 광은 청소 공간의 플로워에 의하여 반사될 수 있다. 반사된 광의 일부는 경통(147) 내에서 제2 이미지 센서(141)에 입사될 수 있다.
제2 이미지 센서(141)는 청소 공간의 플로워로부터 반사된 광을 수신할 수 있다. 다시 말해, 제2 이미지 센서(141)는 청소 공간의 플로워를 촬영하고, 청소 공간의 플로워 영상 데이터를 획득할 수 있다.
제2 이미지 프로세서(146)는 제2 이미지 센서(141)로부터 영상 데이터를 수신하고, 제2 이미지 센서(141)의 영상 데이터를 처리할 수 있다.
예를 들어, 제2 이미지 프로세서(146)는 현재 획득된 플로워 영상 데이터를 저장할 수 있다. 제2 이미지 프로세서(146)는 현재 획득된 플로워 영상 데이터와 이전에 저장된 플로워 영상 데이터를 비교할 수 있다. 제2 이미지 프로세서(146)는 현재의 플로워 영상 데이터와 이전의 플로워 영상 데이터 사이의 비교에 기초하여 영상 데이터의 이동 벡터를 판단할 수 있다. 또한, 제2 이미지 프로세서(146)는 영상 데이터의 이동 벡터에 기초하여 청소 로봇(100)의 이동 벡터를 판단할 수 있다.
제2 이미지 프로세서(146)는 청소 로봇(100)의 이동 여부 및 청소 로봇(100)의 이동 벡터를 출력할 수 있다. 청소 로봇(100)의 이동 벡터는 청소 로봇(100)의 이동 거리와 이동 방향을 포함할 수 있다. 예를 들어, 이동 벡터는 x축 방향으로의 이동 거리와 y축 방향으로의 이동 거리를 포함할 수 있다.
이처럼, 제2 광학 센서(140)는 청소 로봇(100)의 이동 여부, 청소 로봇(100)의 이동 벡터에 관한 정보를 컨트롤러(190)에 제공할 수 있다.
제3 광학 센서(195)는 청소 로봇(100)의 본체(101)의 저면(101d)에 설치될 수 있다. 예를 들어, 제3 광학 센서(195)는 복수의 광학 센서 모듈들을 포함할 수 있으며, 복수의 광학 센서 모듈들이 청소 로봇(100)의 본체(101)의 저면(101d)에 설치될 수 있다. 복수의 광학 센서 모듈들 중 일부는 복수의 광학 센서 모듈들 중 일부는 본체(101)의 저면(101d)의 최전방에 설치될 수 있으며, 다른 일부는 제1 구동 바퀴(151)와 제2 구동 바퀴(152)의 전면에 설치될 수 있다.
제3 광학 센서(195)는 제3 발광 소자(196)와 포토 다이오드(197)를 포함한다.
제3 발광 소자(196)는 본체(101)의 저면(101d)에 설치되어 하측을 향하여 적외선 또는 가시광선(적외선 등)을 발신할 수 있다. 청소 로봇(100)이 플로워에 놓여진 경우, 제3 발광 소자(196)는 플로워를 향하여 적외선 등을 발신할 수 있다.
포토 다이오드(197)는 본체(101)의 저면(101d)에 설치되어 본체(10)의 저면(101d)의 하측으로부터 전파되는 적외선 등을 수신할 수 있다. 또한, 포토 다이오드(197) 수신된 적외선 등의 세기에 의존하는 단차 감지 신호(전류 또는 전압)을 컨트롤러(190)에 전달할 수 있다.
컨트롤러(190)는 포토 다이오드(197)로부터 단차 감지 신호를 수신하고, 단차 감지 신호에 기초하여 청소 로봇(100)이 플로워로부터 이격되었는지 또는 플로워에 단차가 위치하는지를 감지할 수 있다.
휠 드라이브(150)는 컨트롤러(190)의 제어 신호에 응답하여 청소 로봇(100)을 이동시킬 수 있다.
휠 드라이브(150)는 제1 구동 바퀴(151)와, 제2 구동 바퀴(152)와, 제1 구동 모터(153)와, 제2 구동 모터(154)와, 제1 캐스터 휠(155)와, 제2 캐스터 휠(156)를 포함할 수 있다.
도 2에 도시된 바와 같이 제1 구동 바퀴(151)는 청소 로봇(100)의 저면(101d)의 좌측단에 마련되며, 제2 구동 바퀴(152)는 청소 로봇(100)의 저면(101d)의 우측단에 마련될 수 있다. 제1 구동 바퀴(151)와 제2 구동 바퀴(152)는 회전에 의하여 청소 로봇(100)의 본체(101)를 전방으로 또는 후방으로 또는 좌측으로 또는 우측으로 이동시킬 수 있다.
제1 구동 모터(153)는 제1 구동 바퀴(151)를 회전시키며, 제2 구동 모터(154)는 제2 구동 바퀴(152)를 회전시킬 수 있다. 제1 구동 모터(153)와 제2 구동 모터(154)는 컨트롤러(190)의 제어 신호에 의하여 서로 독립적으로 제1 구동 바퀴(151)와 제2 구동 바퀴(152)를 회전시킬 수 있다. 제1 구동 바퀴(151)는 제1 구동 모터(153)에 의하여 제2 구동 바퀴(152)의 회전과 독립적으로 회전할 수 있으며, 제2 구동 바퀴(152)는 제2 구동 모터(154)에 의하여 제1 구동 바퀴(151)의 회전과 독립적으로 회전할 수 있다.
제1 캐스터 휠(155)와 제2 캐스터 휠(156)는 각각 청소 로봇(100)의 저면(101d)의 전방과 저면(101d)의 후방에 설치된다. 제1 캐스터 휠(155)와 제2 캐스터 휠(156)는 청소 로봇(100)의 본체(101)의 이동을 방해하지 아니하고 본체(101)를 지지할 수 있다.
제1 구동 바퀴(151)와 제2 구동 바퀴(152)의 회전에 의하여, 청소 로봇(100)은 전진 주행, 후진 주행, 회전 주행 및 제자리 회전 등 다양한 주행을 수행할 수 있다. 예를 들어, 제1 구동 바퀴(151)와 제2 구동 바퀴(152)가 동일한 방향으로 동일한 속도로 회전하면, 청소 로봇(100)은 전진 주행 또는 후진 주행할 수 있다. 제1 구동 바퀴(151)와 제2 구동 바퀴(152)가 동일한 방향으로 서로 다른 속도로 회전하면, 청소 로봇(100)은 좌측 곡선 주행 또는 우측 곡선 주행할 수 있다. 또한, 제1 구동 바퀴(151)와 제2 구동 바퀴(152)가 서로 다른 방향으로 동일한 속도로 회전하면, 청소 로봇(100)은 제자리에서 시계 방향 또는 반시계 방향으로 회전할 수 있다.
휠 드라이브(150)는 컨트롤러(190)의 제어 신호에 응답하여 제1 구동 모터(153)와 제2 구동 모터(154)에 각각 구동 전류를 공급하는 구동 회로와, 제1 및 제2 구동 모터들(153, 154)의 회전을 각각 제1 및 제2 구동 바퀴들(151, 152)로 전달하는 동력 전달 수단 등을 더 포함할 수 있다.
주행 센서(160)는 제1 구동 바퀴(151)와 제2 구동 바퀴(152)에 설치되며, 제1 및 제2 구동 바퀴(152)의 회전 속도 및 회전 방향을 감지할 수 있다.
주행 센서(160)는 제1 엔코더(161)와 제2 엔코더(162)를 포함한다.
제1 엔코더(161)는 제1 구동 바퀴(151)의 회전 속도와 회전 방향을 감지하고, 제2 엔코더(162)는 제2 구동 바퀴(152)의 회전 속도와 회전 방향을 감지할 수 있다.
예를 들어, 제1 엔코더(161)와 제2 엔코더(162)는 각각 복수의 슬릿들이 형성된 디스크와 광을 발신하는 발광 다이오드와 복수의 슬릿들을 통과한 광을 감지할 수 있는 포토 다이오드를 포함할 수 있다. 제1 엔코더(161)와 제2 엔코더(162)는 각각 포토 다이오드에 의하여 감지된 광의 감지 주기 및 감지 횟수에 기초하여 제1 구동 바퀴(151)와 제2 구동 바퀴(152)의 회전 속도와 회전 방향을 식별할 수 있다.
또한, 제1 엔코더(161)와 제2 엔코더(162)는 각각 복수의 영구 자석들이 설치된 디스크와 복수의 영구 자석들에 의한 자기장을 감지할 수 있는 홀 센서를 포함할 수 있다. 제1 엔코더(161)와 제2 엔코더(162)는 각각 홀 센서에 의하여 감지된 자기장의 감지 주기 및 감지 횟수에 기초하여 제1 구동 바퀴(151)와 제2 구동 바퀴(152)의 회전 속도와 회전 방향을 식별할 수 있다.
제1 엔코더(161)와 제2 엔코더(162)는 각각 제1 구동 바퀴(151)의 회전 속도와 회전 방향에 관한 정보와 제2 구동 바퀴(152)의 회전 속도와 회전 방향에 관한 정보를 컨트롤러(190)에 제공할 수 있다.
바퀴 이탈 센서(170)는 제1 구동 바퀴(151)와 제2 구동 바퀴(152)가 원 위치로부터 이탈되는 것을 감지할 수 있다.
제1 구동 바퀴(151)와 제2 구동 바퀴(152)는 제1 위치와 제2 위치 사이에 이동할 수 있다. 예를 들어, 청소 로봇(100)의 본체(101)가 플로워에 놓여진 때에 제1 구동 바퀴(151)와 제2 구동 바퀴(152)는 각각 제1 위치에 위치할 수 있다. 청소 로봇(100)이 본체(101)가 플로워로 이격된 때에 제1 구동 바퀴(151)와 제2 구동 바퀴(152)는 제1 위치로부터 이탈되어 제2 위치로 이동될 수 있다.
바퀴 이탈 센서(170)는 제1 구동 바퀴(151)와 제2 구동 바퀴(152)가 제1 위치로부터 이탈하여 제2 위치로 이동되는 것을 감지할 수 있다.
바퀴 이탈 센서(170)는 제1 구동 바퀴(151)가 원 위치(제1 위치)로부터 이탈되는 것을 검출할 수 있는 제1 바퀴 이탈 센서(171)와 제2 구동 바퀴(152)가 원 위치(제1 위치)로부터 이탈되는 것을 검출할 수 있는 제2 바퀴 이탈 센서(172)를 포함할 수 있다.
제1 구동 바퀴(151)와 제2 구동 바퀴(152)가 원 위치(제1 위치)로부터 이탈될 때, 제1 바퀴 이탈 센서(171)와 제2 바퀴 이탈 센서(172)는 각각 범퍼(102)의 제1 구동 바퀴(151)와 제2 구동 바퀴(152)의 이탈을 나타내는 바퀴 이탈 신호(예를 들어, 전압 또는 전류)를 컨트롤러(190)에 제공할 수 있다.
컨트롤러(190)는 제1 바퀴 이탈 센서(171)와 제2 바퀴 이탈 센서(172)의 바퀴 이탈 신호에 응답하여 제1 구동 바퀴(151)와 제2 구동 바퀴(152)의 이탈을 식별할 수 있다.
청소 툴(180)는 컨트롤러(190)의 제어 신호에 응답하여 청소 공간의 플로워를 청소할 수 있다.
청소 툴(180)는 드럼 브러시(181)와, 브러시 모터(182)와 흡입 모터(184)와 셔터 어셈블리(185)를 포함한다.
드럼 브러시(181)는 도 8 및 도 9에 도시된 바와 같이 본체(101)의 저면(101d)에 형성된 흡입구(181a) 인근에 마련된다. 드럼 브러시(181)는 청소 공간의 플로워와 수평하게 마련된 회전축을 중심으로 회전하면서 플로워에 쌓인 먼지를 흡입구(181a)를 내부로 비산시킬 수 있다.
브러시 모터(182)는 드럼 브러시(181)에 인접하게 마련되며, 컨트롤러(190)의 제어 신호에 응답하여 드럼 브러시(181)를 회전시킬 수 있다. 브러시 모터(182)는 청소 로봇(100)의 이동 방향에 기초하여 드럼 브러시(181)를 정방향(드럼 브러시와 플로워가 접촉하는 부분이 전방으로부터 후방으로 이동하도록 회전) 또는 역방향(드럼 브러시와 플로워가 접촉하는 부분이 후방으로부터 전방으로 이동하도록 회전)으로 회전시킬 수 있다. 예를 들어, 청소 로봇(100)이 전진하면 브러시 모터(182)는 컨트롤러(190)의 제어 신호에 응답하여 드럼 브러시(181)를 정방향으로 회전시키고, 청소 로봇(100)가 후진하면 브러시 모터(182)는 컨트롤러(190)의 제어 신호에 응답하여 드럼 브러시(181)를 역방향으로 회전시킬 수 있다.
또한, 청소 툴(180)는 컨트롤러(190)의 제어 신호에 응답하여 브러시 모터(182)에 구동 전류를 공급하는 구동 회로와, 브러시 모터(182)의 회전을 드럼 브러시(181)에 전달하는 동력 전달 수단을 더 포함할 수 있다.
흡입 모터(184)는 컨트롤러(190)의 제어 신호에 의하여 흡입 팬을 회전시킬 수 있다. 흡입 팬은 본체(101) 내부에 마련되며, 드럼 브러시(181)에 의하여 비산된 먼지를 흡입할 수 있다.
청소 툴(180)는 컨트롤러(190)의 제어 신호에 응답하여 흡입 모터(184)에 구동 전류를 공급하는 구동 회로를 더 포함할 수 있다.
셔터 어셈블리(185)는 셔터(186)와, 셔터 모터(187)와, 동력 전달 링크(188)를 포함한다.
셔터(186)는 본체(101)로부터 돌출되거나 본체(101) 내로 후퇴할 수 있도록 마련된다. 셔터(186)는 본체(101)의 드럼 브러시(181) 인근에 설치될 수 있다. 예를 들어, 셔터(186)는 드럼 브러시(181) 전방에 설치될 수 있다.
셔터(186)는 판 형상으로 형성될 수 있다. 셔터(186)는 유연성 있는 재질로 형성될 수 있다. 셔터(186)의 하부 중 적어도 일부는 플로워와 접촉 가능하도록 연성재질을 포함할 수 있다.
셔터 모터(187)는 셔터(186)를 구동하기 위한 동력을 생성할 수 있다. 셔터 모터(187)는 회전하는 회전축(187a)를 포함할 수 있다.
동력 전달 링크(188)는 셔터 모터(187)에 의하여 생성된 동력을 셔터(186)에 전달할 수 있다. 동력 전달 링크(188)는 셔터 모터(187)의 회전축(187a)에 연결된 구동 기어(188a)와, 구동 기어(188a)와 연결된 기어 샤프트(188b)와, 기어 샤프트(188b)와 연결된 원호 형상의 슬라이더(188c)를 포함할 수 있다.
구동 기어(188a)는 셔터 모터(187)의 회전축(187a)과 연결되어, 셔터 모터(187)의 회전을 기어 샤프트(188b)에 전달할 수 있다.
기어 샤프트(188b)는 구동 기어(188a)로부터 셔터 모터(187)의 회전을 전달받고, 셔터 모터(187)의 회전을 슬라이더(188c)의 좌우에 균일하게 슬라이더(188c)에 전달할 수 있다.
기어 샤프트(188b)의 양단에는 피니언(188d)이 마련되며, 슬라이더(188c)의 양단에는 랙(188e)이 형성될 수 있다. 그로 인하여, 기어 샤프트(188b)의 회전은 슬라이더(188c)를 병진 이동시킬 수 있다.
슬라이더(188c)는, 기어 샤프트(188b)의 회전에 의하여, 드럼 브러시(181)의 주변을 따라 마련된 원통형의 커버(181b)를 따라 원호 이동할 수 있다.
셔터(186)는, 슬라이더(188c)의 원호 이동에 의하여, 상하로 병진 이동할 수 있다.
셔터 어셈블리(185)는 청소 공간의 구석에 쌓인 먼지를 청소하기 위하여 마련될 수 있다. 청소 로봇(100)이 청소 공간의 구석에서 셔터(186)를 내리고 후진할 수 있으며, 그로 인하여 청소 공간의 구석에 쌓인 먼지는 청소 공간의 구석으로부터 벗어난다. 청소 로봇(100)은 드럼 브러시(181)를 이용하여 청소 공간의 구성으로부터 벗어난 먼지를 청소할 수 있다.
컨트롤러(190)는 유저 인터페이스(110), 제1 광학 센서(130), 제2 광학 센서(140), 충돌 센서(120), 휠 드라이브(150), 주행 센서(160), 바퀴 이탈 센서(170) 및 청소 툴(180)와 전기적으로 연결될 수 있다.
컨트롤러(190)는 프로세서(191)와 메모리(192)를 포함한다.
프로세서(191)는 입력 버튼(111), 제1 광학 센서(130), 제2 광학 센서(140), 주행 센서(160) 및 바퀴 이탈 센서(170)로부터 데이터를 수신하고, 수신된 데이터를 처리할 수 있다.
프로세서(191)는 입력 버튼(111)으로부터 사용자 입력을 수신할 수 있다. 프로세서(191)는 충돌 센서(120)로부터 장애물과의 충돌을 나타내는 충돌 감지 신호를 수신할 수 있다. 프로세서(191)는 제1 광학 센서(130)로부터 장애물의 존부, 장애물의 위치에 관한 정보 및 청소 로봇(100)의 이동 방향에 관한 정보를 수신할 수 있다. 프로세서(191)는 제2 광학 센서(140)로부터 청소 로봇(100)의 이동 여부, 청소 로봇(100)의 이동 방향 및 청소 로봇(100)의 이동 거리에 관한 정보를 수신할 수 있다. 프로세서(191)는 제3 광학 센서(195)로부터 제1 및 제2 구동 바퀴들(151, 152) 전방의 단차를 나타내는 단차 감지 신호를 수신할 수 있다. 프로세서(191)는 주행 센서(160)로부터 제1 및 제2 구동 바퀴들(151, 152)의 회전 속도와 회전 방향에 관한 정보를 수신할 수 있다. 프로세서(191)는 바퀴 이탈 센서(170)로부터 제1 및 제2 구동 바퀴들(151, 152)의 이탈을 나타내는 바퀴 이탈 신호를 수신할 수 있다.
프로세서(191)는, 수신된 데이터의 처리에 기초하여, 디스플레이(112), 제1 구동 모터(153), 제2 구동 모터(154), 브러시 모터(182), 흡입 모터(184) 및 셔터 모터(187)를 제어하기 위한 제어 신호를 출력할 수 있다.
프로세서(191)는 제1 구동 바퀴(151)와 제2 구동 바퀴(152)를 회전시키도록 제1 구동 모터(153)와 제2 구동 모터(154)를 제어하기 위한 구동 제어 신호를 출력할 수 있다. 컨트롤러(190)는 드럼 브러시(181)를 회전시키도록 브러시 모터(182)를 제어하기 위한 브러시 제어 신호를 출력하고 먼지를 흡입하도록 흡입 모터(184)를 제어하기 위한 흡입 제어 신호를 출력할 수 있다. 프로세서(191)는 셔터(186)를 하강시키거나 상승시키도록 셔터 모터(187)를 제어하기 위한 셔터 제어 신호를 출력할 수 있다.
프로세서(191)는 앞서 설명된 제1 이미지 프로세서(136) 및 제2 이미지 프로세서(146)와 일체로 마련되거나, 또는 제1 이미지 프로세서(136) 및 제2 이미지 프로세서(146)와 별도로 마련될 수 있다.
메모리(192)는 프로세서(191)가 데이터를 처리하고 제어 신호를 출력하기 위한 프로그램 및 데이터를 저장할 수 있다.
메모리(192)는 입력 버튼(111), 제1 광학 센서(130), 제2 광학 센서(140), 주행 센서(160) 및 바퀴 이탈 센서(170)로부터 수신된 데이터를 기억하고, 프로세서(191)의 데이터 처리 중에 발생하는 임시 데이터를 기억할 수 있다. 또한, 메모리(192)는 프로세서(191)로부터 출력된 구동 제어 신호, 브러시 제어 신호, 흡입 제어 신호 및 셔터 제어 신호를 기억할 수 있다.
메모리(192)는 S램(S-RAM), D램(D-RAM) 등의 휘발성 메모리뿐만 아니라 플래시 메모리, 롬(Read Only Memory, ROM), 이피롬(Erasable Programmable Read Only Memory: EPROM) 등의 비휘발성 메모리를 포함할 수 있다.
메모리(192)는 프로세서(191)와 일체로 마련되거나, 또는 프로세서(191)로 별도로 마련될 수 있다.
컨트롤러(190)는, 프로세서(191) 및 메모리(192)와 함께, 청소 로봇(100)의 동작을 제어하기 위한 제어 회로(control circuitry)를 더 포함할 수 있다.
이처럼, 컨트롤러(190)는 청소 로봇(100)이 주행하고 또한 청소하도록 청소 로봇(100)에 포함된 구성 부품들을 제어할 수 있다.
또한, 컨트롤러(190)는 청소 공간을 효율적으로 주행하고 청소하기 위하여 청소 로봇(100)의 주행 중에 주행 기록을 저장하고, 주행 기록에 기초하여 청소 공간의 맵 데이터를 생성할 수 있다.
컨트롤러(190)는 청소 로봇(100)의 주행 중에 주행 센서(160)로부터 제1 및 제2 구동 바퀴들(151, 152)의 회전 속도와 회전 방향에 관한 정보를 수신하고, 제1 및 제2 구동 바퀴들(151, 152)의 회전 속도와 회전 방향에 기초하여 청소 로봇(100)의 이동 속도 및 이동 방향을 나타내는 이동 벡터를 판단할 수 있다.
또한, 컨트롤러(190)는 청소 로봇(100)의 주행 중에 제2 광학 센서(140)로부터 청소 로봇(100)의 이동 벡터를 수신할 수 있다.
컨트롤러(190)는 주행 센서(160)의 이동 벡터와 제2 광학 센서(140)의 이동 벡터를 혼합함으로써 청소 로봇(100)의 이동 벡터를 판단할 수 있다. 예를 들어, 컨트롤러(190)는 서로 다른 가중치로 주행 센서(160)의 이동 벡터와 제2 광학 센서(140)의 이동 벡터를 혼합할 수 있다. 컨트롤러(190)는, 주행 센서(160)의 이동 벡터의 변화량과 제2 광학 센서(140)의 이동 벡터의 변화량에 기초하여, '0'과 '1'사이의 값을 가지는 제1 가중치를 산출하고, '1'과 제1 가중치 사이의 차이로부터 제2 가중치를 산출할 수 있다. 컨트롤러(190)는 제1 가중치과 주행 센서(160)의 이동 벡터의 곱과 제2 가중치와 제2 광학 센서(140)의 이동 벡터의 곱의 합으로부터 청소 로봇(100)의 이동 벡터를 산출할 수 있다.
컨트롤러(190)는 기준점의 위치(예를 들어, 충전 스테이션의 위치)와 청소 로봇(100)의 이동 벡터에 기초하여 청소 로봇(100)의 현재 위치(기준점으로부터 상대 위치)를 판단할 수 있다.
컨트롤러(190)는 미리 정해진 시간마다(미리 정해진 주기로) 청소 로봇(100)의 이동 벡터를 판단하고, 청소 로봇(100)의 이동 벡터에 기초하여 청소 로봇(100)의 현재 위치를 판단할 수 있다. 컨트롤러(190)는 미리 정해진 시간마다 획득된 청소 로봇(100)의 현재 위치들을 포함하는 주행 기록을 저장할 수 있다. 또한, 컨트롤러(190)는 주행 기록에 기초하여 청소 공간의 맵을 생성하고, 청소 공간을 효율적으로 주행하며 청소할 수 있다.
이상에서 설명된 바와 같이, 청소 로봇(100)은 청소 공간을 주행하며 청소 공간을 청소할 수 있으며, 주행 센서(160)의 출력과 제2 광학 센서(140)의 출력에 기초하여 주행 기록을 생성할 수 있다.
이하에서는 청소 로봇(100)의 동작이 더욱 자세하게 설명된다.
도 10은 일 실시예에 의한 청소 로봇의 주행의 일 예를 도시한다. 도 11는 일 실시예에 의한 청소 로봇이 장애물을 향하여 주행하는 일 예를 도시한다. 도 12은 일 실시예예 의한 청소 로봇이 장애물과 충돌하는 일 예를 도시한다. 도 13는 일 실시예예 의한 청소 로봇이 장애물의 주변을 청소하는 일 예를 도시한다. 도 14는 일 실시예예 의한 청소 로봇이 장애물과 충돌하는 다른 일 예를 도시한다. 도 15는 일 실시예에 의한 청소 로봇이 장애물을 향하여 주행하는 다른 일 예를 도시한다. 도 16 및 도 17은 일 실시예에 의한 청소 로봇에 포함된 제2 광학 센서의 출력의 일 예를 도시한다.
도 10, 도 11, 도 12, 도 13, 도 14, 도 15, 도 16 및 도 17과 함께, 청소 로봇(100)의 주행(1000)이 설명된다.
청소 로봇(100)은 청소 공간에서 주행한다(1010).
청소 로봇(100)은, 사용자 입력에 응답하여, 청소 공간을 청소하기 위하여 주행할 수 있다. 예를 들어, 사용자는, 입력 버튼(111)을 통하여, 자동 주행 모드를 선택하기 위한 사용자 입력을 입력하고 청소 로봇(100)을 동작시키기 위한 사용자 입력을 입력할 수 있다. 사용자 입력에 응답하여 청소 로봇(100)는 자동으로 청소 공간을 주행할 수 있으며, 또한 청소 공간을 청소할 수 있다.
컨트롤러(190)는 청소 로봇(100)이 청소 공간을 주행하도록 제1 및 제2 구동 모터들(153, 154)을 제어할 수 있다.
청소 로봇(100)은 장애물이 검출되는지를 판단한다(1020).
청소 로봇(100)은 주행 중에 청소 로봇(100)의 주행 경로 상에 위치하는 장애물을 검출할 수 있다. 또한, 청소 로봇(100)은 검출된 장애물에 관한 정보를 수집할 수 있다.
컨트롤러(190)는 제1 광학 센서(130)로부터 수신된 데이터에 기초하여 장애물의 존부를 식별하고, 또한 장애물까지의 거리 및 장애물의 방향을 식별할 수 있다.
제1 광학 센서(130)는 청소 로봇(100)의 전방을 향하여 적외선 등을 발신하고, 장애물로부터 반사되는 적외선 등이 수신되는지 여부에 기초하여 장애물을 검출할 수 있다. 제1 광학 센서(130)는 장애물로부터 반사되는 적외선 등에 기초하여 청소 로봇(100)으로부터 장애물까지의 거리에 관한 정보와 청소 로봇(100)으로부터 장애물을 향하는 방향에 관한 정보를 수집할 수 있다.
제1 광학 센서(130)는 장애물의 검출 여부를 나타내는 데이터, 장애물까지의 거리를 나타내는 데이터 및 장애물의 방향을 나타내는 데이터를 컨트롤러(190)에 전달할 수 있다.
장애물이 검출되지 않으면(1020의 아니오), 청소 로봇(100)은 청소 공간의 주행을 계속한다.
장애물이 검출되면(1020의 예), 청소 로봇(100)은 장애물의 주변을 청소할지를 판단한다(1030).
청소 로봇(100)은 장애물의 폭 및 모양 등의 형상에 기초하여 장애물의 주변을 청소할지 여부를 판단할 수 있다.
벽 또는 그와 유사한 장애물(이하에서는 '제1 장애물'이라 한다)은 그 폭이 기준 폭보다 크며 그 외곽이 평평할 수 있다. 플로워의 중심보다 벽 또는 그와 유사한 장애물 주변에 먼지가 더욱 많이 쌓일 수 있다. 청소 로봇(100)는 효과적인 청소를 위하여 벽 또는 그와 유사한 제1 장애물의 주변을 집중적으로 청소할 수 있다.
벽 이외의 장애물 예를 들어 의자 또는 식탁 등의 가구의 다리 등은 그 폭이 기준 폭보다 작거나 그 외곽이 둥근 형상을 가질 수 있다. 청소 로봇(100)은 원활한 주행을 위하여 의자 또는 식탁 등의 가구의 다리 등의 장애물을 회피할 수 있다.
벽 또는 그와 유사한 제1 장애물 주변을 청소하기 위하여 청소 로봇(100)은 장애물의 형상을 식별하고, 장애물의 외곽의 형상에 기초하여(예를 들어, 장애물의 폭이 기준 폭보다 크고 장애물의 외곽이 평평하면) 장애물의 주변을 청소할 수 있다.
컨트롤러(190)는 제1 광학 센서(130)로부터 수신된 데이터에 기초하여 장애물의 폭 및 모양 등을 포함하는 장애물의 형상을 식별할 수 있다.
제1 광학 센서(130)는 장애물로부터 반사되는 적외선 등에 기초하여 장애물의 크기 및 모양 등의 형상에 관한 정보를 수집할 수 있으며, 장애물의 형상을 나타내는 데이터를 컨트롤러(190)에 전달할 수 있다.
컨트롤러(190)는, 장애물의 폭이 기준 폭보다 크고 장애물의 외곽이 평평하면, 장애물의 주변을 청소할 수 있다. 또한, 컨트롤러(190)는, 장애물의 폭이 가준 폭보다 작거나 장애물의 외곽이 평평하지 아니하면, 장애물을 회피하여 주행할 수 있다.
장애물의 주변을 청소하지 아니하는 것으로 판단되면(1030의 아니오), 청소 로봇(100)은 의자 또는 식탁 등의 가구의 다리 등의 장애물을 회피하여 주행을 계속할 수 있다.
장애물의 주변을 청소하는 것으로 판단되면(1030의 예), 청소 로봇(100)은 장애물을 향하여 이동한다(1040).
검출된 장애물이 벽 또는 그와 유사한 제1 장애물이면, 청소 로봇(100)은 도 11에 도시된 바와 같이 벽 또는 그와 유시한 제1 장애물(O1)의 주변을 청소하기 위하여 제1 장애물(O1)을 향하여 이동할 수 있다.
컨트롤러(190)는, 검출된 장애물이 벽 또는 그와 유사한 제1 장애물(O1)인 것으로 판단되면, 제1 장애물(O1)을 향하여 이동하도록 휠 드라이브(150)를 제어할 수 있다. 예를 들어, 컨트롤러(190)는, 청소 로봇(100)의 전면(101c)이 제1 장애물(O1)과 정렬되도록 휠 드라이브(150)를 제어할 수 있다. 컨트롤러(190)는 청소 로봇(100)의 이동 방향이 제1 장애물(O1)의 외곽선과 수직이 되도록 휠 드라이브(150)를 제어할 수 있다.
청소 로봇(100)은, 장애물을 향하여 이동하는 중에, 장애물과의 충돌이 검출되는지를 판단한다(1050).
청소 로봇(100)은 제1 장애물(O1)을 향하여 이동하는 중에 본체(101)가 제1 장애물(O1)과 충돌하는지 여부를 판단할 수 있다.
컨트롤러(190)는, 청소 로봇(100)이 제1 장애물(O1)을 향하여 이동하는 중에, 충돌 센서(120)의 출력에 기초하여 본체(101)가 제1 장애물(O1)과 충돌하는지 여부를 판단할 수 있다.
충돌 센서(120)는 범퍼(102)와 제1 장애물(O1) 사이의 접촉 또는 충돌을 검출할 수 있다. 장애물과의 충돌 시에 도 12에 도시된 바와 같이 범퍼(102)는 충돌에 의한 충격을 충돌 센서(120)로 전달할 수 있으며, 충돌 센서(120)는 범퍼(102)의 제1 장애물(O1)과의 충돌의 검출에 응답하여 충돌 감지 신호를 컨트롤러(190)에 전달할 수 있다.
컨트롤러(190)는 충돌 센서(120)의 충돌 감지 신호에 응답하여 본체(101)가 제1 장애물(O1)과 충돌한 것을 식별할 수 있다.
장애물과의 충돌이 검출되면(1050의 예), 청소 로봇(100)은 장애물의 주변을 청소한다(1055).
제1 장애물(O1)과의 충돌이 검출되면 청소 로봇(100)은 본체(101)의 전면(101c)을 제1 장애물(O1)의 외곽선과 정렬시킬 수 있다. 컨트롤러(190)는, 제1 충돌 스위치(121)와 제2 충돌 스위치(122) 중 어느 하나로부터 충돌 감지 신호를 수신하면, 제1 충돌 스위치(121)와 제2 충돌 스위치(122)로부터 충돌 감지 신호를 수신할 때까지 제1 구동 바퀴(151) 및/또는 제2 구동 바퀴(152)를 회전시키도록 제1 구동 모터(153) 및/또는 제2 구동 모터(153)를 제어할 수 있다.
제1 장애물(O1)과의 충돌이 검출되면 또한 청소 로봇(100)은 청소 툴(180)의 흡입력을 증가시킨다. 컨트롤러(190)는, 충돌 센서(120)로부터 충돌 감지 신호를 수신하면, 청소 툴(180)의 흡입력이 증가하도록 흡입 모터(184)를 제어할 수 있다. 예를 들어, 컨트롤러(190)는 흡입 모터(184)의 회전 속도를 증가시킬 수 있다.
본체(101)의 전면(101c)이 제1 장애물(O1)의 외곽선과 정렬되면, 청소 로봇(100)은 셔터 어셈블리(185)를 이용하여 제1 장애물(O1)의 주변을 청소할 수 있다.
컨트롤러(190)는, 제1 장애물(O1)과의 충돌이 검출된 것 또는 본체(101)의 전면(101c)이 제1 장애물(O1)의 외곽선과 정렬된 것에 응답하여, 셔터(186)를 하강시키도록 셔터 모터(187)를 제어할 수 있다.
예를 들어, 컨트롤러(190)는 도 12에 도시된 바와 같이 반시계 방향으로 회전하도록 셔터 모터(187)를 제어할 수 있다. 셔터 모터(187)의 반시계 방향으로의 회전에 의하여, 구동 기어(188a)는 반시계 방향으로 회전하고, 기어 샤프트(188b)는 시계 방향으로 회전할 수 있다.
기어 샤프트(188b)의 시계 방향으로의 회전에 의하여, 슬라이더(188c)는 드럼 브러시(181)의 커버(181a)를 따라서 반시계 방향으로 이동할 수 있다. 슬라이더(188c)가 반시계 방향으로 이동하는 것에 의하여, 셔터(186)는 하강할 수 있다. 셔터(186)는 도 12에 도시된 바와 같이 제1 장애물(O1)을 향하여 비스듬하게 하강하며, 하강한 이후 셔터(186)는 제1 장애물(O1)과 플로워(F1) 사이의 모서리에 위치할 수 있다.
셔터(186)를 하강한 이후, 컨트롤러(190)는 청소 로봇(100)이 후진하도록 휠 드라이브(150)를 제어할 수 있다.
예를 들어, 컨트롤러(190)는 도 13에 도시된 바와 같이 셔터(186)가 하강된 상태에서 청소 로봇(100)이 후진하도록 제1 및 제2 구동 모터들(153, 154)을 제어할 수 있다. 제1 장애물(O1)과 플로워(F1) 사이의 모서리에 쌓인 먼지는, 청소 로봇(100)의 후진에 의하여, 셔터(186)와 함께 제1 장애물(O1)으로부터 이격될 수 있다.
청소 로봇(100)의 후진 이후 컨트롤러(190)는 셔터(186)를 상승시키도록 셔터 모터(187)를 제어할 수 있다.
예를 들어, 컨트롤러(190)는 시계 방향으로 회전하도록 셔터 모터(187)를 제어할 수 있다, 그로 인하여, 슬라이더(188c)는 드럼 브러시(181)의 커버(181a)를 따라서 시계 방향으로 이동할 수 있으며, 셔터(186)는 상승할 수 있다.
셔터(186)를 상승한 이후, 컨트롤러(190)는 청소 로봇(100)이 전진하도록 휠 드라이브(150)를 제어할 수 있다.
예를 들어, 컨트롤러(190)는 셔터(186)가 상승된 상태에서 청소 로봇(100)이 전진하도록 제1 및 제2 구동 모터들(153, 154)을 제어할 수 있다. 제1 장애물(O1)로부터 이격된 먼지는, 청소 로봇(100)이 전진하는 동안, 청소 툴(180)에 의하여 비산되고 흡입될 수 있다.
이처럼, 컨트롤러(190)는, 제1 장애물(O1)과의 충돌을 감지하는 것에 응답하여, 제1 장애물(O1) 주변의 먼지를 청소할 수 있다.
장애물과의 충돌이 검출되지 아니하면(1050의 아니오), 청소 로봇(100)은, 장애물을 향하여 이동하는 중에, 이동 거리를 판단한다(1060).
컨트롤러(190)는, 청소 로봇(100)이 제1 장애물(O1)을 향하여 이동하는 중에, 제1 장애물(O1)을 검출한 이후 청소 로봇(100)이 이동한 이동 거리를 판단할 수 있다. 컨트롤러(190)는 주행 센서(160)의 출력에 기초한 이동 벡터와 제2 광학 센서의 출력에 기초하여 이동 벡터를 혼합하고, 혼합된 청소 로봇(100)의 이동 벡터에 기초하여 청소 로봇(100)의 이동 거리를 판단할 수 있다.
컨트롤러(190)는, 제1 장애물(O1)을 검출한 이후 청소 로봇(100)이 이동한 이동 거리에 의존하여, 청소 로봇(100)의 이동 속도를 제어할 수 있다. 청소 로봇(100)이 제1 장애물(O1)과 충돌할 때의 청소 로봇(100)의 충격을 저감하기 위하여, 컨트롤러(190)는 청소 로봇(100)의 이동 거리의 증가에 기초하여 청소 로봇(100)의 이동 속도를 저감할 수 있다.
청소 로봇(100)은 장애물을 검출한 이후 이동한 이동 거리가 임계 거리 이상인지를 판단한다(1070).
장애물과의 충돌이 검출되지 아니하면, 청소 로봇(100)은 장애물을 검출한 이후 이동한 이동 거리와 임계 거리를 비교할 수 있다.
여기서, 임계 거리는 청소 로봇(100)이 장애물을 검출할 때의 청소 로봇(100)으로부터 장애물까지의 거리에 의존할 수 있다. 예를 들어, 임계 거리는 청소 로봇(100)이 장애물을 검출할 때의 청소 로봇(100)으로부터 장애물까지의 거리와 동일할 수 있다. 또는, 임계 거리는 청소 로봇(100)이 장애물을 검출할 때의 청소 로봇(100)으로부터 장애물까지의 거리의 2배일 수 있다. 또는, 임계 거리는 청소 로봇(100)이 장애물을 검출할 때의 청소 로봇(100)으로부터 장애물까지의 거리와 미리 정해진 기준 거리의 합일 수 있다.
장애물과 청소 로봇(100) 사이의 충돌이 발생하더라도, 충돌 센서(120)가 장애물과 청소 로봇(100) 사이의 충돌을 감지하지 못할 수 있다. 예를 들어, 도 14에 도시된 바와 같이 장애물(O2)이 가벼우면, 장애물과 청소 로봇(100) 사이의 충돌 시에 청소 로봇(100)이 장애물(O2)을 밀고 나아갈 수 있다. 또한, 범퍼(102)가 후퇴하지 아니하고, 충돌 센서(120)는 장애물과 청소 로봇(100) 사이의 충돌을 감지하지 못할 수 있다.
이처럼, 충돌 센서(120)가 장애물(O2)과의 충돌을 감지하지 못하면, 청소 로봇(100)이 장애물(O2)에 많이 쌓이는 먼지를 청소하지 못할 수 있다. 또한, 장애물(O2)의 이동으로 인하여, 실제 청소 공간이 청소 로봇(100)이 작성한 청소 공간의 맵으로부터 상이해 질 수 있다.
이를 방지하기 위하여 컨트롤러(190)는, 청소 로봇(100)을 장애물(O2)을 향하여 이동하도록 휠 드라이브(150)를 제어하는 동안, 청소 로봇(100)의 이동 거리와 임계 거리를 비교할 수 있다.
청소 로봇(100)의 이동 거리가 임계 거리 이상이 아니면(1070의 아니오), 청소 로봇(100)은 장애물과의 충돌이 검출되는지를 판단한다(1050).
청소 로봇(100)의 이동 거리가 임계 거리 이상이면(1070의 예), 청소 로봇(100)은 청소 공간의 플로워가 부드러운 플로워인지를 식별한다(1080).
장애물을 검출한 이후 청소 로봇(100)의 이동 거리가 임계 거리 이상이고 장애물과의 충돌이 감지되지 아니하면, 청소 로봇(100)은 장애물을 향하여 이동하는 동안 산출된 이동 거리의 신뢰성을 판단할 수 있다.
장애물을 향하여 이동하는 동안 산출된 이동 거리의 신뢰성이 높다면, 청소 로봇(100)은 장애물이 가벼운 장애물(O2)이며 그로 인하여 충돌 센서(120)가 장애물(O2)과 청소 로봇(100) 사이의 접촉을 감지하지 못한 것으로 판단할 수 있다.
반면, 장애물을 향하여 이동하는 동안 산출된 이동 거리의 신뢰성이 낮다면, 청소 로봇(100)은 장애물을 검출한 이후 청소 로봇(100)의 이동 거리를 재산출할 수 있다.
예를 들어, 도 15에 도시된 바와 같이 청소 로봇(100)이 카펫 등 부드러운 플로워 상에서 주행하는 경우, 제1 및 제2 구동 바퀴들(151, 152)과 부드러운 플로워 사이의 마찰이 감소할 수 있다. 또한, 드럼 브러시(181)가 회전하고 흡입 팬이 먼지를 흡입하므로, 청소 로봇(100)의 주행 저항이 증가할 수 있다. 이러한 이유로 인하여, 청소 로봇(100)이 카펫 등 부드러운 플로워 상에서 주행하면, 제1 및 제2 구동 바퀴들(151, 152)과 플로워 사이의 슬립(미끄러짐)이 발생할 수 있다.
제1 및 제2 구동 바퀴들(151, 152)의 슬립이 발생하면, 주행 센서(160)에 의하여 감지된 이동 벡터의 오차가 증가할 수 있다. 구체적으로, 제1 및 제2 구동 바퀴들(151, 152)의 회전으로 인하여 주행 센서(160)는 청소 로봇(100)의 이동을 판단하지만, 제1 및 제2 구동 바퀴들(151, 152)의 슬립으로 인하여 실제로 청소 로봇(100)은 이동하지 아니할 수 있다.
제1 및 제2 구동 바퀴들(151, 152)의 슬립으로 인하여 컨트롤러(190)에 의하여 산출된 이동 거리에 오차가 발생할 수 있다. 예를 들어, 컨트롤러(190)에 의하여 산출된 청소 로봇(100)의 이동 거리는 실제 청소 로봇(100)이 이동한 거리보다 클 수 있다. 그로 인하여, 청소 로봇(100)이 실제 이동한 이동 거리는 임계 거리보다 작지만, 컨트롤러(190)는 청소 로봇(100)의 이동 거리가 임계 거리 이상으로 판단할 수 있다.
컨트롤러(190)는 산출된 청소 로봇(100)의 이동 거리의 신뢰성을 판단하기 위하여 플로워의 재질을 식별할 수 있다. 구체적으로, 컨트롤러(190)는 플로워가 카펫 등의 부드러운 플로워인지 여부를 식별할 수 있다.
제2 광학 센서(140)는 앞서 설명된 바와 같이 청소 로봇(100)의 이동 여부, 청소 로봇(100)의 이동 벡터에 관한 정보를 컨트롤러(190)에 제공할 수 있다. 또한, 제2 광학 센서(140)는 플로워의 재질을 나타내는 재질 파라미터와 플로워로부터의 높이를 나타내는 높이 파라미터를 출력할 수 있다.
제2 광학 센서(140)는 서로 다른 플로워의 재질에 따라 서로 다른 재질 파라미터와 높이 파라미터를 출력할 수 있다. 예를 들어, 청소 공간의 플로워가 강화 마루인 경우, 도 16에 도시된 바와 같이 재질 파라미터는 대략 40에서 50 사이일 수 있으며, 높이 파라미터는 대략 100일 수 있다. 이와 비교하여, 청소 공간의 플로워가 카펫인 경우, 도 17에 도시된 바와 같이 재질 파라미터는 대략 20에서 30 사이일 수 있으며, 높이 파라미터는 대략 50일 수 있다.
이처럼, 제2 광학 센서(140)는 서로 다른 플로워의 재질에 따라 서로 다른 재질 파라미터와 높이 파라미터를 출력하므로, 컨트롤러(190)는 재질 파라미터와 높이 파라미터에 기초하여 플로워의 재질을 식별할 수 있다.
청소 공간의 플로워가 부드러운 플로워가 아니면(1080의 아니오), 청소 로봇(100)은 장애물의 주변을 청소한다(1055).
플로워가 부드러운 플로워가 아니므로, 주행 센서(160)에 의하여 산출된 청소 로봇(100)의 이동 거리는 높은 신뢰도를 가질 수 있다. 또한, 청소 로봇(100)의 이동 거리가 임계 거리 이상이므로 컨트롤러(190)는 장애물이 가벼운 장애물(O2)이며 청소 로봇(100)이 장애물(O2)과 접촉한 것을 판단할 수 있다. 따라서, 컨트롤러(190)는 장애물의 주변을 청소하기 위하여 청소 툴(180)과 휠 드라이브(150)를 제어할 수 있다.
청소 공간의 플로워가 부드러운 플로워이면(1080의 예), 청소 로봇(100)은 제2 광학 센서(140)의 출력에 기초하여 이동 거리를 판단한다(1085).
플로워가 부드러운 플로워이므로, 주행 센서(160)에 의하여 산출된 청소 로봇(100)의 이동 거리는 낮은 신뢰도를 가질 수 있다.
따라서, 컨트롤러(190)는 주행 센서(160)의 출력을 배제하고 오직 제2 광학 센서(140)의 출력 만에 기초하여 청소 로봇(100)의 이동 거리를 재산출할 수 있다.
이후, 청소 로봇(100)은 제2 광학 센서(140)의 출력 만에 기초하여 산출된 이동 거리가 임계 거리 이상인지를 판단한다(1090).
컨트롤러(190)는 제2 광학 센서(140)의 출력 만에 기초하여 산출된 청소 로봇(100)의 이동 거리와 임계 거리를 비교할 수 있다. 여기서, 임계 거리는 청소 로봇(100)이 장애물을 검출할 때의 청소 로봇(100)으로부터 장애물까지의 거리에 의존할 수 있다.
청소 로봇(100)의 이동 거리가 임계 거리 이상이 아니면(1090의 아니오), 청소 로봇(100)은 장애물과의 충돌이 검출되는지를 판단한다(1095).
장애물과의 충돌이 검출되면(1095의 예), 청소 로봇(100)은 장애물의 주변을 청소하고(1055), 장애물과의 충돌이 검출되지 아니하면(1095의 아니오), 청소 로봇(100)은 제2 광학 센서(140)의 출력에 기초하여 이동 거리를 판단한다(1085).
청소 로봇(100)의 이동 거리가 임계 거리 이상이면(1090의 아니오), 청소 로봇(100)은 장애물의 주변을 청소한다(1055).
이상에서 설명된 바와 같이, 청소 로봇(100)은 장애물에 접근하고, 장애물 주변을 청소할 수 있다. 청소 로봇(100)은 장애물을 검출한 이후 제2 광학 센서(옵티컬 플로우 센서)를 이용하여 이동 거리를 산출할 수 있으며, 그로 인하여 보다 정확하게 장애물과의 접촉 여부를 판단할 수 있다.
도 18는 일 실시예에 의한 청소 로봇의 주행 오류를 감지하는 일 예를 도시한다. 도 19은 일 실시예에 의한 청소 로봇이 주행하는 일 예를 도시한다. 도 20은 일 실시예에 의한 청소 로봇에 포함된 제2 광학 센서의 출력의 일 예를 도시한다.
도 18, 도 19 및 도 20과 함께, 청소 로봇(100)의 주행 오류 감지(1200)이 설명된다.
청소 로봇(100)은 청소 공간을 주행한다(1210).
동작 1210은 도 10과 함께 설명된 동작 1010과 동일할 수 있다.
청소 로봇(100)은 장애물과의 충돌이 검출되는지를 판단한다(1220).
동작 1220는 도 10과 함께 설명된 동작 1050과 동일할 수 있다.
예를 들어, 도 19의 (a)에 도시된 바와 같이 청소 로봇(100)은 주행 중에 가구의 다리 등 폭이 좁은 장애물(O3)와 충돌할 수 있으며, 컨트롤러(190)는 충돌 센서(120)의 출력에 기초하여 본체(101)가 장애물(O3)과의 충돌을 검출할 수 있다.
장애물과의 충돌이 검출되지 아니하면(1220의 아니오), 청소 로봇(100)은 주행을 계속한다.
장애물과의 충돌이 검출되면(1220의 예), 청소 로봇(100)은 후진 주행한다(1230).
청소 로봇(100)은 적어도 일부가 평평한 본체(101)의 전면(101c)을 가지며, 그로 인하여 장애물과 충돌한 이후 즉시 방향 전환하기 곤란하다. 청소 로봇(100)은 장애물을 회피하여 주행하기 위하여 도 19의 (b)에 도시된 바와 같이 후진 주행할 수 있다.
장애물(O3)과 충돌 감지에 응답하여, 컨트롤러(190)는 청소 로봇(100)이 후진하도록 휠 드라이브(150)를 제어할 수 있다.
후진 주행 중에 청소 로봇(100)은 바퀴 이탈이 검출되는지를 판단한다(1240).
후진 중에는, 청소 로봇(100)의 후방에 위치하는 장애물로 인하여 청소 로봇(100)의 후방 들림이 발생할 수 있다. 예를 들어, 가구 등의 장애물은 도 19의 (c)에 도시된 바와 같이 복수의 다리들(O3, O4)를 포함할 수 있다. 또한, 복수의 다리들(O3, O4) 중 어느 하나와 충돌한 청소 로봇(100)은 후진하는 중에 다른 다리(후방 장애물) (O4)와 충돌할 수 있다. 그러나, 후방에는 범퍼(102)와 충돌 센서(120)가 마련되지 아니함으로 인하여, 청소 로봇(100)은 후진 주행을 계속하며, 후방 장애물(O4)로 인하여 본체(101)의 후방이 들릴 수 있다. 본체(101)의 후방 들림으로 인하여, 제1 및 제2 구동 바퀴들(151, 152) 중 적어도 하나가 원 위치로부터 이탈될 수 있다.
컨트롤러(190)는 바퀴 이탈 센서(170)의 출력에 기초하여 바퀴 이탈을 판단할 수 있다.
바퀴 이탈 센서(170)는 제1 및 제2 구동 바퀴들(151, 152) 중 적어도 하나가 원 위치로부터 이탈되는 것을 감지할 수 있으며, 바퀴 이탈 신호를 컨트롤러(190)에 전달할 수 있다. 컨트롤러(190)는 바퀴 이탈 신호에 기초하여 제1 및 제2 구동 바퀴들(151, 152) 중 적어도 하나가 원 위치로부터 이탈되는 것을 식별할 수 있다.
바퀴 이탈이 검출되지 아니하면(1240의 아니오), 청소 로봇(100)은 후진 주행 이후 회전하고, 다시 전진 주행한다(1280).
전방 장애물(O3)과 충돌한 청소 로봇(100)은 후진함으로써 전방 장애물(O3)의 간섭없이 회전할 수 있으며, 회전 이후 청소 로봇(100)은 전방 장애물(O3)을 회피하여 전진 주행할 수 있다.
바퀴 이탈이 검출되면(1240의 예), 청소 로봇(100)은 재질 파라미터가 제1 임계 값 이하인지 판단한다(1250). 재질 파라미터가 제1 임계 값 이하이면(1250의 예), 청소 로봇(100)은 높이 파라미터가 제2 임계 값 이하인지 판단한다(1260). 높이 파라미터가 제2 임계 값 이하이면(1260의 예), 청소 로봇(100)은 후방 들림을 경고한다(1270).
앞서 설명된 바와 같이, 후진 중에 청소 로봇(100)의 후방에 위치하는 장애물로 인하여 청소 로봇(100)의 후방 들림이 발생할 수 있으며, 청소 로봇(100)의 후방 들림으로 인하여 바퀴 이탈과 함께 청소 로봇(100)의 플로워로부터 이격될 수 있다(멀어질 수 있다).
컨트롤러(190)는 제2 광학 센서(140)의 출력에 기초하여 본체(101)의 후방 들림 여부를 판단할 수 있다.
제2 광학 센서(140)는 앞서 설명된 바와 같이 본체(101)의 후미에 설치될 수 있다. 또한, 제2 광학 센서(140)는 플로워의 재질을 나타내는 재질 파라미터와 플로워로부터의 높이를 나타내는 높이 파라미터를 출력할 수 있다. 제2 광학 센서(140)는 서로 다른 청소 로봇(100)의 플로워로부터의 높이에 따라 서로 다른 재질 파라미터와 높이 파라미터를 출력할 수 있다. 예를 들어, 도 20에 도시된 바와 같이 청소 로봇(100)의 높이가 증감 함에 따라 제2 광학 센서(140)로부터 출력되는 재질 파라미터와 높이 파라미터는 감소할 수 있다. 청소 로봇(100)이 플로워에 위치하면 재질 파라미터는 대략 50이고 높이 파라미터는 대략 60을 나타낼 수 있다. 청소 로봇(100)이 플로워로부터 대략 15mm 들리면, 재질 파라미터는 대략 30이고 높이 파라미터는 대략 40일 수 있다. 청소 로봇(100)이 플로워로부터 대략 20mm 들리면, 재질 파라미터는 대략 20일 수 있다.
이처럼, 제2 광학 센서(140)는 서로 다른 청소 로봇(100)의 플로워로부터의 높이에 따라 서로 다른 재질 파라미터와 높이 파라미터를 출력하므로, 컨트롤러(190)는 재질 파라미터와 높이 파라미터에 기초하여 청소 로봇(100)의 플로워로부터의 높이를 식별할 수 있다. 또한, 컨트롤러(190)는 재질 파라미터와 높이 파라미터에 기초하여 본체(101)의 후미가 플로워로부터 이격되는지 여부를 판단할 수 있다.
구체적으로, 컨트롤러(190)는 재질 파라미터를 제1 임계 값과 비교하고 높이 파라미터를 제2 임계값과 비교할 수 있다.
재질 파라미터가 제1 임계 값 이하이고 또한 높이 파라미터를 제2 임계값 이하이면, 컨트롤러(190)는 본체(101)의 후미가 플로워로부터 이격되는 것을 식별할 수 있다.
컨트롤러(190)는, 본체(101)의 후미가 플로워로부터 이격되는 것에 응답하여, 음향 및/또는 영상을 통하여 사용자에게 후방 들림을 경고할 수 있다. 예를 들어, 컨트롤러(190)는 후방 들림을 나타내는 메시지를 표시하도록 디스플레이(112)를 제어할 수 있다.
재질 파라미터가 제1 임계 값 이하가 아니거나(1250의 아니오) 또는 높이 파라미터가 제2 임계 값 이하가 아니면(1260의 아니오), 청소 로봇(100)은 후진 주행 이후 회전하고, 다시 전진 주행한다(1280).
이상에서 설명된 바와 같이, 청소 로봇(100)은 바퀴 이탈 센서(170)의 출력과 제2 광학 센서(140)의 출력에 기초하여 본체(101)의 후방 들림을 식별할 수 있다. 그 결과, 청소 로봇(100)은 본체(101)의 후방 들림으로 인하여 청소 로봇(100)의 주행이 중단되는 것을 사용자에게 경고할 수 있다.
도 21는 일 실시예에 의한 청소 로봇의 동작 오류를 감지하는 일 예를 도시한다. 도 22은 일 실시예에 의한 청소 로봇에 포함된 제2 광학 센서의 출력의 일 예를 도시한다.
도 21 및 도 22과 함께, 청소 로봇(100)의 동작 오류 감지(1100)가 설명된다.
청소 로봇(100)은 청소 공간을 주행한다(1110).
동작 1110은 도 10과 함께 설명된 동작 1010과 동일할 수 있다.
청소 로봇(100)은 주행 중에 제2 광학 센서(140)에 의하여 이동이 감지되는지 여부를 판단한다(1120).
앞서 설명된 바와 같이, 제2 광학 센서(140)는 청소 로봇(100)의 이동 여부, 청소 로봇(100)의 이동 벡터에 관한 정보를 컨트롤러(190)에 제공할 수 있다. 예를 들어, 제2 광학 센서(140)는 청소 로봇(100)의 이동이 감지되지 아니하면 "0"을 출력하고, 청소 로봇(100)의 이동 감지되면 특정 값을 출력할 수 있다.
컨트롤러(190)는 제2 광학 센서(140)의 출력에 기초하여 청소 로봇(100)의 이동 감지 여부를 판단할 수 있다.
청소 로봇(100)의 이동이 감지되면(1120의 예), 청소 로봇(100)은 주행을 계속한다.
청소 로봇(100)의 이동이 감지되지 아니하면(1120의 아니오), 청소 로봇(100)은 재질 파라미터가 제3 임계 값 이하인지 판단한다(1130). 재질 파라미터가 제3 임계 값 이하이면(1130의 예), 청소 로봇(100)은 높이 파라미터가 제4 임계 값 이하인지 판단한다(1140). 높이 파라미터가 제4 임계 값 이하이면(1140의 예), 청소 로봇(100)은 경통 막힘을 경고한다(1150).
제2 광학 센서(140)에 의하여 이동이 감지되지 아니하면, 컨트롤러(190)는 제2 광학 센서(140)가 설치된 경통(147)이 이물질에 의하여 막혔는지를 판단할 수 있다.
제2 광학 센서(140)는 앞서 설명된 바와 같이 제2 광학 센서(140)는 본체(101)에 형성된 경통(147) 상에 설치될 수 있다. 경통(147)이 먼지 등의 이물질에 의하여 막히면, 제2 광학 센서(140)는 청소 로봇(100)의 이동을 감지하지 못한다. 또한, 제2 광학 센서(140)는 특정한 값을 가지는 재질 파라미터와 높이 파라미터를 출력할 수 있다. 예를 들어, 도 22에 도시된 바와 같이 제2 광학 센서(140)로부터 출력되는 재질 파라미터와 높이 파라미터는 대략 '0'일 수 있다.
따라서, 컨트롤러(190)는 재질 파라미터와 높이 파라미터에 기초하여 경통(147)이 막혔는지 여부를 판단할 수 있다.
구체적으로, 컨트롤러(190)는 재질 파라미터를 제3 임계 값과 비교하고 높이 파라미터를 제4 임계값과 비교할 수 있다. 재질 파라미터가 제3 임계 값 이하이고 또한 높이 파라미터를 제4 임계값 이하이면, 컨트롤러(190)는 경통(147)이 막힌 것을 식별할 수 있다.
컨트롤러(190)는, 경통(147)이 막힌 것에 응답하여, 음향 및/또는 영상을 통하여 사용자에게 경통 막힘을 경고할 수 있다. 예를 들어, 컨트롤러(190)는 경통 막힘을 나타내는 메시지를 표시하도록 디스플레이(112)를 제어할 수 있다.
재질 파라미터가 제1 임계 값 이하가 아니거나(1130의 아니오) 또는 높이 파라미터가 제2 임계 값 이하가 아니면(1140의 아니오), 청소 로봇(100)은 휠 드라이브(150)의 이상을 경고한다(1160)
경통(147)이 막히지 않은 상태에서 제2 광학 센서(140)에 의하여 청소 로봇(100)의 이동이 감지되지 아니하면, 청소 로봇(100)은 휠 드라이브(150)의 이상을 식별할 수 있다.
컨트롤러(190)는 음향 또는 영상을 통하여 사용자에게 휠 드라이브(150)의 이상을 경고할 수 있다. 예를 들어, 컨트롤러(190)는 휠 드라이브(150)의 이상을 나타내는 메시지를 표시하도록 디스플레이(112)를 제어할 수 있다.
이상에서 설명된 바와 같이, 청소 로봇(100)은 제2 광학 센서(140)의 출력에 기초하여 제2 광학 센서(140)의 이상을 식별할 수 있다. 또한, 청소 로봇(100)은 제2 광학 센서(140)의 출력에 기초하여 휠 드라이브(150)의 이상을 식별할 수 있다.
도 23는 일 실시예에 의한 청소 로봇에 포함된 제2 광학 센서의 비활성화하는 일 예를 도시한다.
도 23과 함께, 제2 광학 센서(140)를 비활성화하기 위한 동작(1300)이 설명된다.
청소 로봇(100)이 전원 온된다(1310).
청소 로봇(100)은, 사용자 입력에 응답하여, 전원 온될 수 있다. 예를 들어, 사용자는, 입력 버튼(111)을 통하여, 청소 로봇(100)의 전원을 온하기 위한 사용자 입력을 입력할 수 있다.
전원을 온하기 위한 사용자 입력에 응답하여, 컨트롤러(190)는 청소 공간을 주행하도록 청소 로봇(100)을 제어하거나, 충전을 위하여 충전 스테이션에서 대기하도록 청소 로봇(100)을 제어할 수 있다.
청소 로봇(100)은 본체(101)의 리프트(들어 올림)이 검출되는지 여부를 판단한다(1320).
청소 로봇(100)은 동작 중에 본체(101)가 리프트되었는지(들어올려졌는지) 여부를 판단할 수 있다.
컨트롤러(190)는 제3 광학 센서(195)의 출력에 기초하여 본체(101)가 리프트되었는지(들어올려졌는지) 여부를 판단할 수 있다.
제3 광학 센서(195)는 청소 로봇(100)의 본체(101)의 저면(101d)에 설치되며, 청소 공간에서 반사되는 적외선 등을 수신할 수 있다. 컨트롤러(190)는 제3 광학 센서(195)로부터 단차 감지 신호를 수신하고, 단차 감지 신호에 기초하여 본체(101)가 플로워로부터 이격되었는지 여부를 판단할 수 있다. 또한, 컨트롤러(190)는 제3 광학 센서(195)로부터 단차 감지 신호가 수신되는지 여부에 기초하여 본체(101)의 리프트 여부를 판단할 수 있다.
다만 이에 한정되는 것은 아니며, 컨트롤러(190)는 제3 광학 센서(195)의 출력 및 바퀴 이탈 센서(170)의 출력에 기초하여 본체(101)가 리프트되었는지(들어올려졌는지) 여부를 판단할 수 있다. 예를 들어, 제3 광학 센서(195)로부터 단차 감지 신호와 바퀴 이탈 센서(170)로부터 바퀴 이탈 신호가 수신되는지 여부에 기초하여 본체(101)의 리프트 여부를 판단할 수 있다.
본체(101)의 리프트가 검출되면(1320의 예), 청소 로봇(100)은 제2 광학 센서(140)에 포함된 제2 발광 소자(142)를 오프한다(1330).
제2 광학 센서(140)의 제2 발광 소자(142)는 본체(101)의 저면(101d)으로부터 하측을 향하여 가시광선을 발신할 수 있다.
본체(101)가 리프트되면, 제2 발광 소자(142)가 사용자를 향할 수 있으며, 제2 발광 소자(142)가 사용자를 향하여 가시광선을 발신할 수 있다. 이를 방지하기 위하여, 컨트롤러(190)는 본체(101)의 리프트를 검출한 것에 응답하여 제2 발광 소자(142)를 오프하도록 제2 광학 센서(140)를 제어할 수 있다.
본체(101)의 리프트가 검출되지 아니하면(1320의 아니오), 청소 로봇(100)은 제2 광학 센서(140)에 포함된 제2 발광 소자(142)를 온한다(1340).
본체(101)가 리프트되지 아니하면, 제2 발광 소자(142)는 청소 공간의 플로워를 향하여 가시광선을 발신할 수 있다.
따라서, 컨트롤러(190)는 본체(101)의 리프트를 검출하지 아니한 것에 응답하여 제2 발광 소자(142)를 온하도록 제2 광학 센서(140)를 제어할 수 있다.
이상에서 설명된 바와 같이, 청소 로봇(100)은 본체(101)의 저면(101d)에 설치된 제3 광학 센서(195)를 이용하여 본체(101)의 리프트 여부를 판단할 수 있으며, 본체(101)의 리프트가 판단되면 청소 로봇(100)은 제2 광학 센서(140)의 광 발신을 중지할 수 있다. 이에 의하여, 청소 로봇(100)은 본체(101)의 리프트를 보다 정확하게 판단할 수 있으며, 또한 사용자를 향하여 가시광선을 발신하는 것을 방지할 수 있다.
도 24는 일 실시예에 의한 청소 로봇에 포함된 제2 광학 센서의 동작 오류를 감지하는 일 예를 도시한다.
도 24과 함께, 제2 광학 센서(140)의 동작 오류 감지(1400)가 설명된다.
청소 로봇(100)이 전원 온된다(1410).
동작 1410은 도 23와 함께 설명된 동작 1310과 동일할 수 있다.
청소 로봇(100)은 센서들로부터 센서 ID의 획득 여부를 판단한다(1420).
센서들에는 각각의 센서를 식별하기 위한 센서 ID가 분배되며, 센서들은 각각은 센서 ID를 저장할 수 있다.
컨트롤러(190)는, 센서들의 정상 동작을 확인하기 위하여, 센서들로부터 센서 ID를 읽어 들일 수 있다. 예를 들어, 컨트롤러(190)는 제2 광학 센서(140)로부터 센서 ID를 읽어 들일 수 있다.
또한, 컨트롤러(190)는 센서들로부터 센서 ID가 획득되었는지를 판단할 수 있다.
센서 ID가 획득되면(1420의 예), 청소 로봇(100)은 센서로부터 출력을 수신한다(1430).
컨트롤러(190)는 획득된 센서 ID가 나타내는 센서로부터 출력을 수신할 수 있다. 예를 들어, 제2 광학 센서(140)의 센서 ID가 획득되면, 컨트롤러(190)는 제2 광학 센서(140)로부터 청소 로봇(100)의 이동 여부, 청소 로봇(100)의 이동 벡터에 관한 정보를 수신할 수 있다.
센서 ID가 획득되지 아니하면(1420의 아니오), 청소 로봇(100)은 센서를 초기화한다(1440).
센서가 오동작하거나 센서와의 연결이 차단되면, 컨트롤러(190)는 센서로부터 센서 ID를 획득하지 못할 수 있다.
컨트롤러(190)는 센서의 동작을 확인하기 위하여 센서를 초기화할 수 있다. 예를 들어, 제2 광학 센서(140)의 센서 ID가 획득되지 아니하면, 컨트롤러(190)는 제2 광학 센서(140)를 초기화할 수 있다.
이상에서 설명된 바와 같이, 청소 로봇(100)는 센서들의 연결 상태를 확인할 수 있다.
개시된 발병의 일 측면에 의한 청소 로봇은 본체; 본체에 설치된 구동 바퀴; 구동 바퀴를 회전시키는 구동 모터; 구동 바퀴의 회전을 감지하는 주행 센서; 본체의 이동 방향에 위치하는 장애물을 검출하는 제1 광학 센서; 플로워를 청소하는 청소 툴; 플로워의 영상을 획득하는 제2 광학 센서; 구동 모터, 주행 센서, 제1 광학 센서 및 제2 광학 센서와 전기적으로 연결되는 프로세서를 포함할 수있다. 프로세서는 주행 센서의 출력과 제2 광학 센서의 출력에 기초하여 본체의 이동 거리를 판단하고, 장애물의 검출에 응답하여 제2 광학 센서의 출력에 기초하여 본체의 이동 거리를 산출하고, 제2 광학 센서의 출력에 기초하여 판단된 이동 거리가 임계 거리보다 큰 것에 응답하여 장애물 주변의 플로워를 청소하도록 청소 툴을 제어할 수 있다. 그로 인하여, 청소 로봇은 이동하는 장애물의 주변에 쌓인 먼지를 청소할 수 있다.
임계 거리는 장애물을 검출할 때의 장애물까지 거리에 의존할 수 있다. 그로 인하여, 청소 로봇은 이동하는 장애물에 접근한 것을 판단할 수 있다.
청소 툴은 본체에 마련되어, 플로워를 향하여 돌출되거나 본체로 후퇴되는 셔터; 및 플로워의 먼지를 청소하는 드럼 브러시를 포함할 수 있다. 프로세서는, 장애물을 검출한 이후 본체가 이동한 이동 거리가 임계 거리보다 큰 것에 응답하여, 셔터를 플로워를 향하여 하강시키도록 청소 툴을 제어하고 본체가 후진하도록 구동 모터를 제어 할 수 있다. 그로 인하여, 청소 로봇은 장애물의 주변에 쌓인 먼지를 장애물로부터 이격시킨 이후 청소할 수 있다.
청소 로봇은 프로세서와 전기적으로 연결되고, 장애물과 충돌을 검출하는 충돌 센서를 더 포함할 수 있다. 프로세서는, 충돌 센서가 장애물과 충돌을 검출하는 것에 응답하여, 셔터를 플로워를 향하여 하강시키도록 상기 청소 툴을 제어하고 본체가 후진하도록 구동 모터를 제어할 수 있다. 그로 인하여, 청소 로봇은 고정된 장애물의 주변에 쌓인 먼지를 청소할 수 있다.
제2 광학 센서는 본체에 마련되는 경통; 경통에 의하여 지지되는 지지 부재; 및 지지 부재 상에 마련된 발광 소자 및 이미지 센서를 포함할 수 있다. 프로세서는 이미지 센서에 의하여 획득된 플로워에 기초하여 본체의 이동 방향 및 이동 거리를 판단할 수 있다. 프로세서는 획득된 플로워의 영상과 미리 저장된 플로워의 영상의 차이에 기초하여 본체의 이동 방향 및 이동 거리를 판단할 수 있다. 그로 인하여, 청소 로봇은 주행 저항이 높은 바닥에서 이동 거리를 정확하게 판단할 수 있다.
경통 상에는 조립 돌기가 형성되고, 지지 부재 상에는 조립 돌기에 대응되는 위치에 조립 홈이 형성될 수 있다. 그로 인하여, 경통과 지지 부재 사이의 잘못된 조립이 방지될 수 있다.
청소 로봇은 본체의 저면에 마련되어, 플로워를 향하여 광을 발신하고, 플로워로부터 반사된 광을 수신하는 제3 광학 센서를 더 포함할 수 있다. 프로세서는 플로워를 향하여 광을 발신하도록 제3 광학 센서를 제어하고, 제2 광학 센서에 의하여 반사된 광이 수신되지 아니하는 것에 응답하여 제2 광학 센서의 발광 소자를 오프할 수 있다. 그로 인하여, 사용자를 향하여 광을 발신하는 것이 방지될 수 있다.
개시된 발병의 일 측면에 의한, 본체 및 본체를 설치된 구동 바퀴를 포함하는 청소 로봇의 제어 방법에 있어서, 구동 바퀴를 구동하고; 구동 바퀴의 회전을 감지하고; 플로워의 영상을 획득하고; 구동 바퀴의 회전과 플로워의 영상에 기초하여 청소 로봇의 이동 거리를 판단하고; 본체의 이동 방향에 위치하는 장애물을 검출한 것에 응답하여, 플로워의 영상에 기초하여 청소 로봇의 이동 거리를 산출하고; 플로워의 영상에 기초하여 산출된 이동 거리가 임계 거리보다 큰 것에 응답하여 장애물 주변의 플로워를 청소하는 것을 포함할 수 있다. 그로 인하여, 청소 로봇은 이동하는 장애물의 주변에 쌓인 먼지를 청소할 수 있다.
임계 거리는 장애물을 검출할 때의 장애물까지 거리에 의존할 수 있다. 그로 인하여, 청소 로봇은 이동하는 장애물에 접근한 것을 판단할 수 있다.
장애물 주변의 플로워를 청소하는 것은 플로워를 향하여 셔터를 돌출하고; 본체를 장애물과 반대 방향으로 이동시키고; 셔터를 본체로 후퇴시키고; 본체를 장애물을 향하여 이동시키고; 플로워의 먼지를 흡입하는 것을 포함할 수 있다. 그로 인하여, 청소 로봇은 장애물의 주변에 쌓인 먼지를 장애물로부터 이격시킨 이후 청소할 수 있다.
제어 방법은 장애물과 충돌을 감지한 것에 응답하여 장애물 주변의 플로워를 청소하는 것을 더 포함할 수 있다. 그로 인하여, 청소 로봇은 고정된 장애물의 주변에 쌓인 먼지를 청소할 수 있다.
플로워의 영상에 기초하여 청소 로봇의 이동 거리를 산출하는 것은 플로워의 영상과 미리 저장된 플로워의 영상의 차이에 기초하여 청소 로봇의 이동 거리를 산출하는 것을 포함할 수 있다. 그로 인하여, 청소 로봇은 주행 저항이 높은 바닥에서 이동 거리를 정확하게 판단할 수 있다.
개시된 발병의 일 측면에 의한 청소 로봇은 본체; 본체에 설치된 구동 바퀴; 구동 바퀴를 회전시키는 구동 모터; 구동 바퀴의 이탈을 감지하는 바퀴 이탈 센서; 플로워의 영상을 획득하는 광학 센서; 구동 모터, 바퀴 이탈 센서 및 광학 센서와 전기적으로 연결되는 프로세서를 포함할 수 있다. 프로세서는 바퀴 이탈 센서의 출력 및 광학 센서에 기초하여 본체의 들림을 감지할 수 있다. 그로 인하여, 청소 로봇은 주행 중에 본체의 들림을 판단할 수 있다.
청소 로봇은 프로세서와 전기적으로 연결되고, 장애물과의 충돌을 감지하는 충돌 센서를 더 포함할 수 있다. 프로세서는 충돌 센서가 장애물과의 충돌을 감지하는 것에 응답하여 본체를 장애물과 반대 방향으로 후진하도록 구동 모터를 제어하고, 후진하는 동안 본체의 들림을 감지할 수 있다. 그로 인하여, 청소 로봇은 후진 주행 중에 본체의 들림을 판단할 수 있다.
청소 로봇은 프로세서와 전기적으로 연결된 디스플레이를 더 포함할 수 있다. 프로세서는 본체의 들림을 감지한 것에 응답하여 본체의 들림을 나타내는 메시지를 표시하도록 디스플레이를 제어할 수 있다. 그로 인하여, 청소 로봇은 본체 들림을 사용자에게 알릴 수 있다.
광학 센서는 본체에 마련된 경통; 경통에 의하여 지지되는 지지 부재; 및 지지 부재 상에 마련된 발광 소자 및 이미지 센서를 포함할 수 있다. 프로세서는 이미지 센서에 의하여 획득된 플로워에 기초하여 본체의 이동 방향 및 이동 거리를 판단할 수 있다. 그로 인하여, 청소 로봇은 주행 저항이 높은 바닥에서 이동 거리를 정확하게 판단할 수 있다.
한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다.
이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다. 게시된 실시예가 속하는 기술분야에서 통상의 지식을 가진 자는 게시된 실시예의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안 된다.
100: 청소 로봇 101: 본체
101a: 상면 101b: 측면
101c: 전면 101d: 저면
102: 범퍼 110: 유저 인터페이스
111: 입력 버튼 112: 디스플레이
120: 충돌 센서 121: 제1 충돌 스위치
122: 제2 충돌 스위치 123: 탄성 부재
130: 제1 광학 센서 131: 제1 이미지 센서
132: 제1 발광 소자 133: 반사 부재
134: 윈도우 135: 광학 가이드
136: 제1 이미지 프로세서 140: 제2 광학 센서
141: 제2 이미지 센서 142: 제2 발광 소자
143: 인쇄 회로 기판 145: 센서 지지 부재
146: 제2 이미지 프로세서 147: 경통
150: 휠 드라이브 151: 제1 구동 바퀴
152: 제2 구동 바퀴 153: 제1 구동 모터
154: 제2 구동 모터 155: 제1 캐스터 휠
156: 제2 캐스터 휠 160: 주행 센서
161: 제1 엔코더 162: 제2 엔코더
170: 바퀴 이탈 센서 171: 제1 바퀴 이탈 센서
172: 제2 바퀴 이탈 센서 180: 청소 툴
181: 드럼 브러시 182: 브러시 모터
184: 흡입 모터 185: 셔터 어셈블리
186: 셔터 187: 셔터 모터
187a: 회전축 188: 동력 전달 링크
188a: 구동 기어 188b: 기어 샤프트
188c: 슬라이더 188d: 피니언
188e: 랙 190: 컨트롤러
191: 프로세서 192: 메모리
195: 제3 광학 센서 196: 제3 발광 소자
197: 포토 다이오드

Claims (20)

  1. 본체;
    상기 본체에 설치된 구동 바퀴;
    상기 구동 바퀴를 회전시키는 구동 모터;
    상기 구동 바퀴의 회전을 감지하는 주행 센서;
    상기 본체의 이동 방향에 위치하는 장애물을 검출하는 제1 광학 센서;
    플로워를 청소하는 청소 툴;
    상기 플로워의 영상을 획득하는 제2 광학 센서; 및
    상기 구동 모터, 상기 주행 센서, 상기 제1 광학 센서 및 제2 광학 센서와 전기적으로 연결되는 프로세서를 포함하고,
    상기 프로세서는
    상기 주행 센서의 출력과 상기 제2 광학 센서의 출력에 기초하여 상기 본체의 이동 거리를 판단하고,
    상기 장애물의 검출에 응답하여 상기 제2 광학 센서의 출력에 기초하여 상기 본체의 이동 거리를 판단하고,
    상기 제2 광학 센서의 출력에 기초하여 판단된 이동 거리가 임계 거리보다 큰 것에 응답하여 상기 장애물 주변의 플로워를 청소하도록 상기 청소 툴을 제어하는 청소 로봇.
  2. 제1항에 있어서,
    상기 임계 거리는 상기 장애물을 검출할 때의 장애물까지 거리에 의존하는 청소 로봇.
  3. 제1항에 있어서,
    상기 청소 툴은
    상기 본체에 마련되어, 상기 플로워를 향하여 돌출되거나 상기 본체로 후퇴되는 셔터; 및
    상기 플로워의 먼지를 청소하는 드럼 브러시를 포함하는 청소 로봇.
  4. 제3항에 있어서,
    상기 프로세서는, 상기 장애물을 검출한 이후 상기 본체가 이동한 이동 거리가 임계 거리보다 큰 것에 응답하여, 상기 셔터를 상기 플로워를 향하여 하강시키도록 상기 청소 툴을 제어하고 상기 본체가 후진하도록 상기 구동 모터를 제어하는 청소 로봇.
  5. 제3항에 있어서,
    상기 청소 로봇은, 상기 프로세서와 전기적으로 연결되고 상기 장애물과 충돌을 검출하는 충돌 센서를 더 포함하고,
    상기 프로세서는, 상기 충돌 센서가 상기 장애물과 충돌을 검출하는 것에 응답하여, 상기 셔터를 상기 플로워를 향하여 하강시키도록 상기 청소 툴을 제어하고 상기 본체가 후진하도록 상기 구동 모터를 제어하는 청소 로봇.
  6. 제1항에 있어서,
    상기 제2 광학 센서는 상기 본체에 마련되는 경통과, 상기 경통에 의하여 지지되는 지지 부재와, 상기 지지 부재 상에 마련된 발광 소자 및 이미지 센서를 포함하고,
    상기 프로세서는 상기 이미지 센서에 의하여 획득된 플로워의 영상에 기초하여 상기 본체의 이동 방향 및 이동 거리를 판단하는 청소 로봇.
  7. 제6항에 있어서,
    상기 프로세서는 상기 획득된 플로워의 영상과 미리 저장된 플로워의 영상의 차이에 기초하여 상기 본체의 이동 방향 및 이동 거리를 판단하는 청소 로봇.
  8. 제6항에 있어서,
    상기 경통 상에는 조립 돌기가 형성되고,
    상기 지지 부재 상에는 상기 조립 돌기에 대응되는 위치에 조립 홈이 형성되는 청소 로봇.
  9. 제6항에 있어서,
    상기 청소 로봇은 상기 본체의 저면에 마련되어, 상기 플로워를 향하여 광을 발신하고, 상기 플로워로부터 반사된 광을 수신하는 제3 광학 센서를 더 포함하고,
    상기 프로세서는 상기 플로워를 향하여 광을 발신하도록 상기 제3 광학 센서를 제어하고, 상기 제3 광학 센서에 의하여 상기 플로워로부터 반사된 광이 수신되지 아니하는 것에 응답하여 상기 제2 광학 센서의 발광 소자를 오프하는 청소 로봇.
  10. 제6항에 있어서,
    상기 프로세서는 상기 제2 광학 센서로부터 응답 신호가 수신되지 않는 것에 응답하여 상기 제2 광학 센서를 초기화하는 청소 로봇.
  11. 본체 및 상기 본체를 설치된 구동 바퀴를 포함하는 청소 로봇의 제어 방법에 있어서,
    상기 구동 바퀴를 구동하고;
    상기 구동 바퀴의 회전을 감지하고;
    플로워의 영상을 획득하고,
    상기 구동 바퀴의 회전과 상기 플로워의 영상에 기초하여 상기 청소 로봇의 이동 거리를 판단하고;
    상기 본체의 이동 방향에 위치하는 장애물을 검출한 것에 응답하여, 상기 플로워의 영상에 기초하여 상기 청소 로봇의 이동 거리를 산출하고;
    상기 플로워의 영상에 기초하여 산출된 이동 거리가 임계 거리보다 큰 것에 응답하여 상기 장애물 주변의 플로워를 청소하는 것을 포함하는 청소 로봇의 제어 방법.
  12. 제11항에 있어서,
    상기 임계 거리는 상기 장애물을 검출할 때의 장애물까지 거리에 의존하는 청소 로봇의 제어 방법.
  13. 제11항에 있어서,
    상기 장애물 주변의 플로워를 청소하는 것은
    상기 플로워를 향하여 셔터를 돌출하고;
    상기 본체를 상기 장애물과 반대 방향으로 이동시키고;
    상기 셔터를 상기 본체로 후퇴시키고;
    상기 본체를 상기 장애물을 향하여 이동시키고;
    상기 플로워의 먼지를 흡입하는 것을 포함하는 청소 로봇의 제어 방법.
  14. 제11항에 있어서,
    상기 제어 방법은 상기 장애물과 충돌을 감지한 것에 응답하여 상기 장애물 주변의 플로워를 청소하는 것을 더 포함하는 청소 로봇의 제어 방법.
  15. 제11항에 있어서,
    상기 플로워의 영상에 기초하여 상기 청소 로봇의 이동 거리를 산출하는 것은
    상기 플로워의 영상과 미리 저장된 플로워의 영상의 차이에 기초하여 상기 청소 로봇의 이동 거리를 산출하는 것을 포함하는 청소 로봇의 제어 방법.
  16. 본체;
    상기 본체에 설치된 구동 바퀴;
    상기 구동 바퀴를 회전시키는 구동 모터;
    상기 구동 바퀴의 이탈을 감지하는 바퀴 이탈 센서;
    플로워의 영상을 획득하는 광학 센서; 및
    상기 구동 모터, 상기 바퀴 이탈 센서 및 상기 광학 센서와 전기적으로 연결되는 프로세서를 포함하고,
    상기 프로세서는 상기 바퀴 이탈 센서의 출력 및 상기 광학 센서에 기초하여 상기 본체의 들림을 감지하는 청소 로봇.
  17. 제16항에 있어서,
    상기 청소 로봇은 상기 프로세서와 전기적으로 연결되고, 장애물과의 충돌을 감지하는 충돌 센서를 더 포함하고,
    상기 프로세서는 상기 충돌 센서가 상기 장애물과의 충돌을 감지하는 것에 응답하여 상기 본체를 상기 장애물과 반대 방향으로 후진하도록 상기 구동 모터를 제어하고, 후진하는 동안 상기 본체의 들림을 감지하는 청소 로봇.
  18. 제16항에 있어서,
    상기 청소 로봇은 상기 프로세서와 전기적으로 연결된 디스플레이를 더 포함하고,
    상기 프로세서는 상기 본체의 들림을 감지한 것에 응답하여 상기 본체의 들림을 나타내는 메시지를 표시하도록 상기 디스플레이를 제어하는 청소 로봇.
  19. 제16항에 있어서,
    상기 광학 센서는
    상기 본체에 마련된 경통;
    상기 경통에 의하여 지지되는 지지 부재; 및
    상기 지지 부재 상에 마련된 발광 소자 및 이미지 센서를 포함하는 청소 로봇.
  20. 제19항에 있어서,
    상기 프로세서는 상기 이미지 센서에 의하여 획득된 플로워에 기초하여 상기 본체의 이동 방향 및 이동 거리를 판단하는 청소 로봇.
KR1020190016539A 2019-02-13 2019-02-13 청소 로봇 및 그 제어 방법 KR102677261B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020190016539A KR102677261B1 (ko) 2019-02-13 2019-02-13 청소 로봇 및 그 제어 방법
US16/781,359 US20200253445A1 (en) 2019-02-13 2020-02-04 Robot cleaner and method of controlling the same
EP20156454.9A EP3696641B1 (en) 2019-02-13 2020-02-10 Robot cleaner and method of controlling the same
CN202010090239.8A CN111557618A (zh) 2019-02-13 2020-02-13 机器人清洁器及其控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190016539A KR102677261B1 (ko) 2019-02-13 2019-02-13 청소 로봇 및 그 제어 방법

Publications (2)

Publication Number Publication Date
KR20200103900A true KR20200103900A (ko) 2020-09-03
KR102677261B1 KR102677261B1 (ko) 2024-06-25

Family

ID=69570570

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190016539A KR102677261B1 (ko) 2019-02-13 2019-02-13 청소 로봇 및 그 제어 방법

Country Status (4)

Country Link
US (1) US20200253445A1 (ko)
EP (1) EP3696641B1 (ko)
KR (1) KR102677261B1 (ko)
CN (1) CN111557618A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024043719A1 (ko) * 2022-08-24 2024-02-29 삼성전자주식회사 에스컬레이터에서 하차하는 로봇 및 그 제어 방법

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112234665B (zh) * 2020-09-03 2022-08-16 深圳拓邦股份有限公司 一种充电座避让方法、装置、充电装置及存储介质
ES2899453A1 (es) * 2020-09-10 2022-03-11 Cecotec Res And Development Sl Procedimiento de operacion para robot de limpieza y/o desinfeccion con generacion de ozono
CN112137529B (zh) * 2020-09-28 2021-08-24 珠海市一微半导体有限公司 一种基于密集障碍物的清扫控制方法
CN112190186B (zh) * 2020-09-28 2022-02-22 湖南格兰博智能科技有限责任公司 一种扫地机器人的路线规划方法、系统及扫地机器人
CN113598653B (zh) * 2021-08-05 2023-03-31 北京石头世纪科技股份有限公司 清洁方法及装置、设备、计算机可读存储介质
WO2023065903A1 (zh) * 2021-10-18 2023-04-27 北京石头创新科技有限公司 清洁设备的控制方法、装置、清洁设备和存储介质
CN216932978U (zh) * 2021-11-17 2022-07-12 深圳市普渡科技有限公司 扫地机
CN114355887B (zh) * 2021-12-03 2023-08-08 云鲸智能(深圳)有限公司 机器人窄道通行方法、装置、机器人及存储介质
CN114217620B (zh) * 2021-12-15 2023-07-14 常州信息职业技术学院 一种轮式机器人智能避障控制系统及方法
DE102022200330B4 (de) 2022-01-13 2023-07-20 BSH Hausgeräte GmbH Verfahren zum Steuern eines sich autonom fortbewegenden Bodenreinigungsgeräts, Computerprogrammprodukt sowie Bodenreinigungsgerät zur Durchführung des Verfahrens
CN115137254B (zh) * 2022-06-29 2023-05-26 湖南炬神电子有限公司 一种基于语音控制的扫地机器人应用系统
CN114983293A (zh) * 2022-06-30 2022-09-02 深圳银星智能集团股份有限公司 一种自移动机器人
US20240008704A1 (en) * 2022-07-07 2024-01-11 Irobot Corporation Mobile cleaning robot with variable cleaning features
CN116634253B (zh) * 2023-04-11 2024-02-13 深圳看护加科技有限公司 一种调节式智能家居监控装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005296510A (ja) * 2004-04-15 2005-10-27 Funai Electric Co Ltd 監視カメラを備えた自走式掃除機
JP2013252431A (ja) * 2012-06-07 2013-12-19 Samsung Electronics Co Ltd 障害物感知モジュール及びそれを備えた掃除ロボット
KR20150065134A (ko) * 2013-12-04 2015-06-12 삼성전자주식회사 청소 로봇 및 그 제어 방법
US20180103812A1 (en) * 2016-10-19 2018-04-19 Samsung Electronics Co., Ltd. Robot vacuum cleaner

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6901624B2 (en) * 2001-06-05 2005-06-07 Matsushita Electric Industrial Co., Ltd. Self-moving cleaner
KR100459411B1 (ko) * 2002-12-31 2004-12-03 엘지전자 주식회사 로봇 청소기 및 그의 청소 영역 주행방법
KR20040086940A (ko) * 2003-04-03 2004-10-13 엘지전자 주식회사 이미지센서를 채용한 이동로봇 및 그의 이동거리 측정방법
ES2706729T3 (es) * 2005-12-02 2019-04-01 Irobot Corp Sistema de robot
KR101300493B1 (ko) * 2005-12-02 2013-09-02 아이로보트 코퍼레이션 커버리지 로봇 이동성
KR101850386B1 (ko) * 2011-04-19 2018-04-19 엘지전자 주식회사 로봇 청소기 및 이의 제어 방법
KR101949277B1 (ko) * 2012-06-18 2019-04-25 엘지전자 주식회사 이동 로봇
WO2016003077A1 (en) * 2014-07-01 2016-01-07 Samsung Electronics Co., Ltd. Cleaning robot and controlling method thereof
CN104757911B (zh) * 2014-11-26 2018-02-06 深圳市银星智能科技股份有限公司 智能扫地机器人的清扫方法及智能扫地机器人
KR101649665B1 (ko) * 2015-04-29 2016-08-30 엘지전자 주식회사 이동 로봇 및 그 제어방법
KR102506424B1 (ko) * 2016-04-26 2023-03-07 삼성전자주식회사 로봇청소기
KR102085338B1 (ko) * 2017-07-14 2020-03-05 에브리봇 주식회사 로봇 청소기 및 그의 주행 제어 방법
KR102011827B1 (ko) * 2017-08-07 2019-08-19 엘지전자 주식회사 로봇청소기 및 그 제어방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005296510A (ja) * 2004-04-15 2005-10-27 Funai Electric Co Ltd 監視カメラを備えた自走式掃除機
JP2013252431A (ja) * 2012-06-07 2013-12-19 Samsung Electronics Co Ltd 障害物感知モジュール及びそれを備えた掃除ロボット
KR20150065134A (ko) * 2013-12-04 2015-06-12 삼성전자주식회사 청소 로봇 및 그 제어 방법
US20180103812A1 (en) * 2016-10-19 2018-04-19 Samsung Electronics Co., Ltd. Robot vacuum cleaner

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024043719A1 (ko) * 2022-08-24 2024-02-29 삼성전자주식회사 에스컬레이터에서 하차하는 로봇 및 그 제어 방법

Also Published As

Publication number Publication date
CN111557618A (zh) 2020-08-21
KR102677261B1 (ko) 2024-06-25
EP3696641B1 (en) 2022-04-06
US20200253445A1 (en) 2020-08-13
EP3696641A1 (en) 2020-08-19

Similar Documents

Publication Publication Date Title
KR102677261B1 (ko) 청소 로봇 및 그 제어 방법
TWI653964B (zh) 行動機器人及其控制方法
TWI652034B (zh) 清掃機器人
US10342400B2 (en) Autonomous cleaner
US9511494B2 (en) Robot cleaner and controlling method of the same
US11185203B2 (en) Robot cleaner, charging device and charging system
KR102315953B1 (ko) 청소 로봇 및 그 제어 방법
US6901624B2 (en) Self-moving cleaner
US20190200823A1 (en) Mobile robot
EP1977673A2 (en) Wall-following robot cleaner and method to control the same
KR102617659B1 (ko) 로봇 청소기 및 그 제어 방법
US11474533B2 (en) Method of detecting a difference in level of a surface in front of a robotic cleaning device
KR102601463B1 (ko) 로봇 청소기 및 그 구동 방법
JP2014204984A (ja) センサーモジュール及びこれを備えるロボット掃除機
EP3430424B1 (en) Robotic cleaning device and a method at the robotic cleaning device of performing cliff detection
US11231720B2 (en) Moving robot and control method thereof
KR102637851B1 (ko) 청소 로봇
JP2016220823A (ja) 自走式掃除機
CN113613536A (zh) 机器人清扫器
KR102423497B1 (ko) 로봇 청소기의 제어 방법
KR102273678B1 (ko) 로봇 청소기
EP4101362A1 (en) Robot vacuum cleaner and control method therefor
KR102303546B1 (ko) 로봇 청소기 및 그 제어 방법
KR20020080897A (ko) 로봇 청소기의 장애물 형태 감지 장치 및 그 방법
JP6626723B2 (ja) 床面を移動する移動体

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant