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

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

Info

Publication number
KR20210100518A
KR20210100518A KR1020200124691A KR20200124691A KR20210100518A KR 20210100518 A KR20210100518 A KR 20210100518A KR 1020200124691 A KR1020200124691 A KR 1020200124691A KR 20200124691 A KR20200124691 A KR 20200124691A KR 20210100518 A KR20210100518 A KR 20210100518A
Authority
KR
South Korea
Prior art keywords
information
obstacle
robot cleaner
distance
module
Prior art date
Application number
KR1020200124691A
Other languages
English (en)
Inventor
유환
이영섭
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Publication of KR20210100518A publication Critical patent/KR20210100518A/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • 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/28Floor-scrubbing machines, motor-driven
    • A47L11/282Floor-scrubbing machines, motor-driven having rotary tools
    • 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/4036Parts or details of the surface treating tools
    • A47L11/4038Disk shaped surface treating tools
    • 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/4061Steering means; Means for avoiding obstacles; Details related to the place where the driver is accommodated
    • 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
    • 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/4069Driving or transmission means for the cleaning tools
    • 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/4072Arrangement of castors or wheels
    • 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/2889Safety or protection devices or systems, e.g. for prevention of motor over-heating or for protection of the user
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • B25J11/0085Cleaning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • 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
    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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/0248Control 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 in combination with a laser
    • 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

Abstract

로봇 청소기 및 그 제어 방법이 개시된다. 본 발명의 실시 예에 따른 로봇 청소기는 가속도 변화 센서 모듈, 거리 센서 모듈을 포함한다. 감지된 각 정보는 장애물 통과 정보 연산 모듈로 전달된다.
장애물 통과 정보 연산 모듈은 전달된 각 정보를 이용하여, 로봇 청소기의 일측에 장애물이 존재하는지 여부에 대한 정보 및 로봇 청소기가 일측의 장애물을 통과할 수 있는지 여부에 대한 정보를 연산한다.
로봇 청소기가 일 측의 장애물을 통과할 수 없는 것으로 연산된 경우, 로봇 청소기가 장애물을 회피하도록 동력 모듈이 구동된다.
따라서, 로봇 청소기가 카펫과 같은 장애물에 올라타는 것이 억제될 수 있다. 또한, 로봇 청소기가 문턱과 같은 장애물을 통과하여 청소 영역을 벗어나는 것이 억제될 수 있다.

Description

로봇 청소기 및 그 제어 방법{ROBOT CLEANER AND CONTROL METHOD THEREOF}
본 발명은 로봇 청소기에 관한 것으로, 구체적으로 로봇 청소기가 일측의 장애물을 통과할 수 있는지 여부를 판단할 수 있는 구조의 로봇 청소기 및 그 제어 방법에 관한 것이다.
로봇 청소기는 스스로 주행하면서 로봇 청소기가 주행하는 바닥을 청소하는 기기이다. 종래의 로봇 청소기 중 일부는 로봇 청소기가 주행하는 바닥면을 물걸레질 하기 위한 맙(Mop)을 구비한다.
사용자는 원하는 주행 패턴, 시간 등에 관한 제어 정보를 미리 입력할 수 있고, 상기 로봇 청소기는 상기 입력된 제어 정보에 따라 작동된다.
또한, 주지된 바와 같이, 상기 로봇 청소기는, 맙(Mop)이 기 설정된 패턴에 의해 바닥면에서 회전되면 일 방향으로 주행될 수 있다. 즉, 로봇 청소기의 주행과 바닥면의 청소가 일원화된 동작에 의해 수행될 수 있다. 맙(Mop)의 회전에 의한 로봇 청소기의 주행방법은 한국 등록특허공보 제10-1602790호에 개시되어 있다.
상기 로봇 청소기가 주행하는 과정에서 카펫과 같은 장애물을 타고 올라가는 경우, 로봇 청소기의 주행에 의해 카펫이 오염되는 문제가 발생될 수 있다.
또한, 상기 로봇 청소기가 주행하는 과정에서 문턱과 같은 장애물을 타고 넘어가는 경우, 기존의 청소 영역에서 이탈된 후 다시 복귀하지 못하는 문제가 발생될 수 있다.
이러한 점을 고려하여, 상기 로봇 청소기가 카펫 또는 장애물을 만난 경우, 이를 회피하여 주행하는 것이 바람직하다.
선행기술문헌 1(한국 등록특허공보 제10-0926322호)에는 분산된 거리 측정 센서들이 측정한 거리의 차를 이용하여 장애물의 존재 여부를 판단하는 로봇 청소기가 개시된다. 구체적으로, 상기 로봇 청소기는 측정한 거리의 차를 이용하여 낭떠러지로 판단되면 회피하고, 문턱으로 판단되면 직진한다.
다만, 상기 로봇 청소기는 맙(Mop)의 회전에 의해 주행되는 구조가 아닌 별도의 휠에 의해 주행되는 구조이며, 문턱을 회피하기 위한 방법을 개시하지 않는다.
선행기술문헌 1: 한국 등록특허공보 제10-0926322호(2009.11.12.)
본 발명은 상술한 문제점을 해결할 수 있는 구조의 로봇 청소기 및 그 제어 방법을 제공함을 목적으로 한다.
먼저, 로봇 청소기의 주행 중 로봇 청소기의 주행경로 상에 장애물이 존재하는지 여부를 감지할 수 있는 구조의 로봇 청소기 및 그 제어 방법을 제공함을 일 목적으로 한다.
또한, 로봇 청소기가 로봇 청소기의 일 측에 있는 장애물을 통과할 수 있는지 여부를 판단할 수 있는 구조의 로봇 청소기 및 그 제어 방법을 제공함을 일 목적으로 한다.
또한, 로봇 청소기가 로봇 청소기의 일 측에 있는 장애물을 통과할 수 없는 것으로 판단된 경우, 장애물을 회피할 수 있는 구조의 로봇 청소기 및 그 제어 방법을 제공함을 일 목적으로 한다.
또한, 로봇 청소기가 주행 중 장애물을 만날 때 카펫인지 문턱인지 판단할 수 있는 로봇 청소기 및 제어방법을 제공함을 일 목적으로 한다.
또한, 로봇 청소기가 주행 중 카펫에 진입이 방지되어 2차 오염이 방지될 수 있는 로봇 청소기 및 제어방법을 제공함을 일 목적으로 한다.
상기 목적을 달성하기 위해, 본 발명은, 스핀 맙이 회전 가능하게 결합되는 몸체부; 상기 스핀 맙과 연결되고, 작동 정보에 따라 회전되어 상기 스핀 맙을 회전시키는 동력 모듈; 상기 몸체부에 구비되어, 상기 몸체부의 주행에 대한 정보를 감지하도록 구성되는 센서부; 및 상기 작동 정보를 연산하고, 상기 동력 모듈과 통전 가능하게 연결되어 연산된 상기 작동 정보를 전달하며, 상기 센서부와 통전 가능하게 연결되어 감지된 상기 정보를 전달받도록 구성되는 제어부를 포함하는 로봇 청소기를 제공한다.
또한, 상기 센서부는, 상기 몸체부의 가속도 변화에 대한 가속도 정보를 감지하도록 구성되는 가속도 센서 모듈; 및 상기 몸체부가 주행하는 바닥면과의 거리 정보를 감지하도록 구성되는 거리 센서 모듈을 포함한다.
또한, 상기 제어부는, 상기 가속도 정보 및 상기 거리 정보 중 적어도 하나를 이용하여 상기 작동 정보를 연산한다.
또한, 상기 제어부는, 상기 가속도 정보를 이용하여, 상기 몸체부의 일측에 장애물이 있는지 여부에 대한 장애물 존재 정보를 연산한다.
또한, 상기 제어부는, 상기 장애물 존재 정보를 이용하여, 상기 몸체부가 일측의 장애물을 통과할 수 있는지 여부에 대한 장애물 통과 정보를 연산하고, 상기 장애물 존재 정보 및 상기 장애물 통과 정보 중 적어도 하나를 이용하여 상기 작동 정보를 연산한다.
또한, 상기 스핀 맙은, 상기 몸체부의 일 측에 위치되는 제1 스핀 맙; 및 상기 몸체부의 타 측에 위치되는 제2 스핀 맙을 포함한다.
또한, 상기 동력 모듈은, 상기 제1 스핀 맙과 연결되는 제1 동력 모듈; 및 상기 제2 스핀 맙과 연결되는 제2 동력 모듈을 포함한다.
또한, 상기 작동 정보는, 상기 제1 동력 모듈의 회전 방향을 제어하는 제1 조향 정보; 및 상기 제2 동력 모듈의 회전 방향를 제어하는 제2 조향 정보를 포함한다.
또한, 상기 제어부는, 상기 제1 동력 모듈 및 상기 제2 동력 모듈의 회전 방향이 서로 동일한 방향 또는 서로 다른 방향으로 교번적으로 변경되도록, 상기 제1 조향 정보 및 상기 제2 조향 정보를 연산한다.
또, 본 발명은, (a) 가속도 센서 모듈 및 거리 센서 모듈이 로봇 청소기의 작동 상태에 대한 정보를 감지하는 단계; (b) 장애물 정보 연산 모듈이 감지된 상기 정보를 이용하여 상기 로봇 청소기의 주행 방향에 통과 가능한 장애물이 있는지 여부에 대한 장애물 통과 정보를 연산하는 단계; (c) 작동 정보 연산 모듈이 연산된 상기 장애물 통과 정보를 이용하여 작동 정보를 연산하는 단계; 및 (d) 동력 모듈이 연산된 상기 작동 정보에 따라 제어되는 단계를 포함하는 로봇 청소기의 제어 방법을 제공한다.
또한, 상기 (a) 단계는, (a1) 상기 가속도 센서 모듈이 상기 로봇 청소기의 가속도 변화 정보를 감지하는 단계; 및 (a2) 상기 거리 센서 모듈이 상기 로봇 청소기가 주행하는 바닥면과 상기 거리 센서 모듈 사이의 거리 정보를 감지하는 단계를 포함한다.
또한, 상기 (b) 단계는, (b1) 가속도 변화 정보 연산 유닛이 감지된 가속도 변화 정보를 이용하여 상기 로봇 청소기가 주행 중인 상기 일측에 장애물이 있는지 여부에 대한 장애물 존재 정보를 연산하는 단계; 및 (b2) 거리 정보 연산 유닛이 연산된 상기 장애물 존재 정보를 이용하여 상기 로봇 청소기가 주행 중인 상기 일측의 상기 장애물을 통과 가능한지 여부에 대한 장애물 통과 정보를 연산하는 단계를 포함한다.
또한, 상기 (b1) 단계는, (b11) 상기 가속도 변화 정보 연산 유닛이 감지된 상기 가속도 변화 정보를 기 설정된 기준 가속도 변화범위와 비교하는 단계; (b12) 상기 가속도 변화 정보가 상기 기준 가속도 변화범위에 포함되지 않는 경우, 상기 가속도 변화 정보 연산 유닛이 상기 장애물 존재 정보를 상기 로봇 청소기의 일측에 장애물이 존재하지 않는 것으로 연산하는 단계; 및 (b13) 상기 가속도 변화 정보가 기준 가속도 범위에 포함되는 경우, 상기 가속도 변화 정보 연산 유닛이 상기 장애물 존재 정보를 상기 로봇 청소기의 일측에 장애물이 존재하는 것으로 연산하는 단계를 포함한다.
또한, 상기 거리 센서 모듈은 복수 개로 구비되고, 복수 개의 상기 거리 센서 모듈은 각각 거리 정보를 감지한다.
또한, 상기 (b2) 단계는, (b21) 상기 가속도 변화 정보 연산 유닛이 상기 로봇 청소기의 일측에 상기 장애물이 존재하는 것으로 상기 장애물 존재 정보를 연산한 경우, 상기 거리 정보 연산 유닛이 감지된 복수 개의 상기 거리 정보를 기 설정된 기준 거리 값과 비교하는 단계; 및 (b22) 상기 비교의 결과가 기 설정된 조건에 해당되지 않는 경우, 상기 거리 정보 연산 유닛이 상기 장애물 통과 정보를 상기 로봇 청소기가 일측의 장애물을 통과할 수 있는 것으로 연산하는 단계를 포함한다.
또한, 상기 기 설정된 조건은, 복수 개의 상기 거리 정보 중 적어도 하나가 상기 기준 거리 값보다 크고 복수 개의 상기 거리 정보 중 적어도 다른 하나가 상기 기준 거리 값보다 작은 경우이다.
또한, 상기 (b2) 단계는, (b21) 단계 이후에, (b23) 상기 비교의 결과가 상기 기 설정된 조건에 해당되는 경우, 상기 거리 정보 연산 유닛이 복수 개의 상기 거리 정보의 최대값과 최소값을 비교하는 단계; 및 (b24) 상기 최대값과 상기 최소값의 차가 기 설정된 값 미만인 경우, 상기 거리 정보 연산 유닛이 상기 장애물 통과 정보를 상기 로봇 청소기가 일측의 장애물을 통과할 수 있는 것으로 연산하는 단계를 포함한다.
또한, 상기 (b2) 단계는, 상기 (b23) 단계 이후에, (b25) 상기 최대값과 상기 최소값의 차가 기 설정된 값 이상인 경우, 상기 거리 정보 연산 유닛이 상기 장애물 통과 정보를 상기 로봇 청소기가 일측의 장애물을 통과할 수 없는 것으로 연산하는 단계를 포함한다.
또한, 상기 동력 모듈은 제1 동력 모듈 및 제2 동력 모듈을 포함하고, 상기 작동 정보 연산 모듈은 제1 조향 정보 연산 유닛 및 제2 조향 정보 연산 유닛을 포함한다.
또한, 상기 (c) 단계는, (c1) 제1 조향 정보 연산 유닛이 상기 장애물 통과 정보를 이용하여 상기 제1 동력 모듈의 회전 방향에 대한 제1 조향 정보를 연산하는 단계; 및 (c2) 제2 조향 정보 연산 유닛이 상기 장애물 통과 정보를 이용하여 상기 제2 동력 모듈의 회전 방향에 대한 제2 조향 정보를 연산하는 단계를 포함한다.
또한, 상기 (a) 단계에서, 상기 제1 동력 모듈이 일 방향으로 회전되며, 상기 제2 동력 모듈이 상기 일 방향의 반대방향인 타 방향으로 회전되고, 상기 장애물 통과 정보가 상기 로봇 청소기가 일측의 장애물을 통과할 수 없는 것으로 연산된 경우, 상기 제1 조향 정보 연산 유닛은, 상기 제1 동력 모듈을 상기 타 방향으로 회전시키는 제1 조향 정보를 연산한다.
또한, 상기 (a) 단계에서, 상기 제1 동력 모듈이 일 방향으로 회전되며, 상기 제2 동력 모듈이 상기 일 방향의 반대방향인 타 방향으로 회전되고, 상기 장애물 통과 정보가 상기 로봇 청소기가 일측의 장애물을 통과할 수 없는 것으로 연산된 경우, 상기 제2 조향 정보 연산 유닛은, 상기 제2 동력 모듈을 상기 일 방향으로 회전시키는 제1 조향 정보를 연산한다.
또한, 상기 (a) 단계에서, 상기 제1 동력 모듈이 일 방향으로 회전되며, 상기 제2 동력 모듈이 상기 일 방향의 반대방향인 타 방향으로 회전되고, 상기 장애물 통과 정보가 상기 로봇 청소기가 일측의 장애물을 통과할 수 없는 것으로 연산된 경우, 상기 제1 조향 정보 연산 유닛은, 상기 제1 동력 모듈을 상기 타 방향으로 회전시키는 제1 조향 정보를 연산하고, 상기 제2 조향 정보 연산 유닛은, 상기 제2 동력 모듈을 상기 일 방향으로 회전시키는 제2 조향 정보를 연산한다.
또한, 상기 (d) 단계는, (d1) 동력 모듈 제어 유닛이 연산된 상기 제1 조향 정보 및 상기 제2 조향 정보에 따라 상기 제1 동력 모듈 및 상기 제2 동력 모듈을 회전시키는 단계를 포함한다.
본 발명에 따르면, 다음과 같은 효과가 도출될 수 있다.
먼저, 로봇 청소기가 로봇 청소기의 가속도 변화 정보를 감지한다. 제어부는 감지된 가속도 변화 정보를 이용하여 로봇 청소기의 일측에 장애물이 존재하는지 여부에 대한 정보를 연산한다.
또한, 로봇 청소기가 바닥면과의 거리를 감지한다. 제어부는 감지된 거리 정보를 이용하여 로봇 청소기가 일측의 장애물을 통과할 수 있는지 여부에 대한 정보를 연산한다.
가속도 변화 정보 및 거리 변화 정보를 모두 이용하여 정보를 연산하므로, 장애물을 통과할 수 있는 여부에 대한 판단 정확도가 증가된다.
또한, 장애물 통과가능 여부에 대한 정보의 연산에 앞서 장애물의 존재 여부에 대한 정보가 연산된다. 이에 의해, 로봇 청소기의 흔들림에 의해 장애물이 존재하는 것으로 오판되는 것이 억제될 수 있다.
또한, 카펫과 같은 오염될 수 있는 장애물은 로봇 청소기가 통과할 수 없는 장애물로 판단될 수 있다. 이에 의해, 카펫이 로봇 청소기에 의해 오염되는 것이 억제될 수 있다.
또한, 문턱과 같은 장애물이 로봇 청소기가 통과할 수 없는 장애물로 판단될 수 있다. 이에 의해, 로봇 청소기가 문턱을 넘어 청소 영역을 이탈한 후, 본래의 청소 영역으로 돌아오지 못하는 것이 억제될 수 있다.
또한, 다른 실시예에 따르면, 외관을 형성하는 몸체부, 상기 몸체부에 결합되어 상기 몸체부를 이동시키고 바닥면을 청소하는 스핀 맙, 상기 몸체부의 기울기를 감지하는 기울기 센서 모듈, 상기 몸체부의 바닥면을 향하는 일측 면과 바닥면의 거리를 감지하는 거리 센서 모듈, 상기 기울기 센서 모듈과 상기 거리 센서 모듈에서 획득된 정보를 기초로 바닥면이 문턱 또는 카펫인지 판단하는 제어부를 포함하는 로봇 청소기의 제어방법에 있어서, 바닥면에 위치하는 장애물의 시작점을 판단하는 시작점 판단단계, 바닥면에 위치한 장애물이 문턱인지 카펫인지 판단하는 장애물 구분단계 및 바닥면에 위치한 장애물이 카펫인 경우 로봇 청소기가 카펫으로 이동되는 것이 방지되도록 작동되는 작동단계;를 포함하는 로봇 청소기의 제어방법를 제공한다.
또한, 상기 시작점 판단단계는 상기 기울기 센서 모듈이 Roll 또는 Pitch 방향으로 일정 크기 이상으로 기울어진 것으로 감지하고, 상기 거리 센서 모듈에서 측정된 거리값의 분산값이 기 설정된 크기 이상인 경우 장애물의 시작점으로 판단하는 로봇 청소기의 제어방법를 제공한다.
또한, 상기 시작점 판단단계는 상기 기울기 센서 모듈가 Roll 또는 Pitch 방향으로 일정 크기 이상으로 기울어진 것을 의미하는 제1 기울기 조건 및 상기 거리 센서 모듈에서 측정된 거리값의 분산값이 기 설정된 크기 이상인 경우를 의미하는 제1 거리조건을 설정하는 조건설정단계;를 포함하는 로봇 청소기의 제어방법을 제공한다.
또한, 상기 제1 기울기 조건 및 상기 제1 거리조건이 만족되면 장애물의 시작점을 저장하는 시작점 저장단계;를 포함하는 로봇 청소기의 제어방법을제공한다.
또한, 상기 시작점 판단단계에서 장애물의 시작점이 판단되면 로봇 청소기가 시작점을 지난 후 기 설정된 시간을 초과하는지 판단하는 단계를 포함하는 로봇 청소기의 제어방법을 제공한다.
또한, 상기 위치정보는 정보가 저장되는 데이터베이스에 전달하는 로봇 청소기의 제어방법을 제공한다.
또한, 기 결정된 시간을 초과하지 않는 경우, 상기 기울기 센서가 상기 제1 기울기 조건과 반대방향으로 상기 제1 기울기 조건과 같은 크기 이상으로 기울어지는 것을 의미하는 제2 기울기 조건의 만족여부를 판단하는 제2 기울기 조건 판단단계 및 상기 거리 센서 모듈에서 측정된 거리값의 분산값이 기 설정된 크기 이상인 경우를 의미하는 제2 거리조건의 만족여부를 판단하는 제2 거리조건 판단단계를 포함하는 로봇 청소기의 제어방법을 제공한다.
또한, 상기 제2 기울기 조건 판단단계 및 상기 제2 거리조건 판단단계에서 상기 제2 기울기 조건 및 상기 제2 거리조건이 만족된다고 판단되면 상기 장애물을 문턱으로 판단하는 로봇 청소기의 제어방법을 제공한다.
또한, 상기 장애물이 문턱으로 판단되면 상기 장애물의 시작점의 위치정보를 삭제하는 작동단계가 수행되는 로봇 청소기의 제어방법을 제공한다.
도 1은 본 발명의 일 실시 예에 따른 로봇 청소기의 사시도이다.
도 2는 도 1에 따른 로봇 청소기의 일 측을 도시하는 저면도이다.
도 3은 도 1에 따른 로봇 청소기의 구성을 도시하는 블록도이다.
도 4는 본 발명의 일 실시 예에 따른 로봇 청소기의 제어 방법의 흐름을 도시하는 순서도이다.
도 5는 도 4의 S100 단계의 구체적인 흐름을 도시하는 순서도이다.
도 6은 도 4의 S200 단계의 구체적인 흐름을 도시하는 순서도이다.
도 7은 도 6의 S210 단계의 구체적인 흐름을 도시하는 순서도이다.
도 8은 도 6의 S220 단계의 구체적인 흐름을 도시하는 순서도이다.
도 9는 도 4의 S300 단계의 구체적인 흐름을 도시하는 순서도이다.
도 10은 도 4의 S400 단계의 구체적인 흐름을 도시하는 순서도이다.
도 11은 도 1의 로봇 청소기가 일 측으로 기울어진 상태를 도시하는 측면도이다.
도 12는 도 1의 로봇 청소기가 일 측으로 기울어진 상태를 도시하는 측면도이다.
도 13은 도 1의 로봇 청소기의 거리 센서 모듈 및 광량 센서 모듈을 도시하는 단면도이다.
도 14는 도 1의 로봇 청소기를 도시하는 정면도이다.
도 15는 도 1의 로봇 청소기가 들어올려진 상태를 도시하는 측면도이다.
도 16은 도 1의 로봇 청소기가 주행 중인 상태를 도시하는 측면도이다.
도 17은 본 발명의 다른 실시 예에 따른 로봇 청소기의 제어 방법의 흐름을 도시하는 순서도이다.
도 18은 도 17의 S1000 단계의 구체적인 흐름을 도시하는 순서도이다.
도 19는 도 17의 S2000 단계의 구체적인 흐름을 도시하는 순서도이다.
도 20은 도 19는 S2100 단계의 구체적인 흐름을 도시하는 순서도이다.
도 21은 도 19의 S2200 단계의 구체적인 흐름을 도시하는 순서도이다.
도 22는 도 17의 S3000 단계의 구체적인 흐름을 도시하는 순서도이다.
도 23은 도 17의 S4000 단계의 구체적인 흐름을 도시하는 순서도이다.
도 24는 도 1의 로봇 청소기가 주행하는 일 예를 도시하는 평면도이다.
도 25는 도 24의 상황에서 도 1의 로봇 청소기가 장애물에 접촉된 일 예를 도시하는 정면도이다.
도 26는 도 24의 상황에서 도 1의 로봇 청소기가 장애물에 접촉된 다른 예를 도시하는 정면도이다.
도 27은 도 24의 상황에서 도 1의 로봇 청소기가 주행하는 일 예를 도시하는 평면도이다.
도 28은 도 24의 상황에서 도 1의 로봇 청소기가 주행하는 다른 예를 도시하는 평면도이다.
도 29는 도 24의 상황에서 도 1의 로봇 청소기가 주행하는 또 다른 예를 도시하는 평면도이다.
도 30은 일 실시예에 따른 로봇 청소기의 사시도이다.
도 31은 장애물을 판단하는 로봇 청소기의 제어방법을 도시한 도면이다.
도 32는 장애물의 시작점을 판단하는 로봇 청소기의 제어방법을 구체적으로 도시한 도면이다.
도 33은 로봇 청소기가 장애물을 문턱 또는 카펫으로 판단하는 제어방법을 나타낸 도면이다.
이하, 첨부한 도면들을 참조하여 본 발명의 실시 예에 따른 로봇 청소기를 상세하게 설명한다.
이하의 설명에서는 본 발명의 특징을 명확하게 하기 위해, 일부 구성 요소들에 대한 설명이 생략될 수 있다.
1. 용어의 정의
아래에서 사용되는 "바닥면"이라는 용어는, 로봇 청소기(10)가 주행하는 면이며, 로봇 청소기(10)의 맙(Mop)에 의해 청소되는 면을 의미한다.
아래에서 사용되는 "청소"라는 용어는 로봇 청소기(10)가 맙(Mop)으로 바닥면을 물걸레질하는 것을 의미한다.
아래에서 사용되는 "전진"이라는 용어는, 로봇 청소기(10)가 작업을 수행하기 위해 특정 방향으로 이동되는 동작을 의미한다.
아래에서 사용되는 "후진"이라는 용어는, 로봇 청소기(10)가 작업을 수행하기 위해 이동되는 특정 방향의 반대 방향으로 이동되는 동작을 의미한다.
아래에서 사용되는 "통전"이라는 용어는, 어느 하나의 구성이 다른 하나의 구성과 전기적으로 연결되거나, 정보 통신 가능하게 연결됨을 의미한다.
상기 통전은 도선, 통신 케이블, 무선 통신 등에 의해 형성될 수 있다.
아래에서 사용되는 "장애물"이라는 용어는, 로봇 청소기(10)의 전진 시 로봇 청소기(10)의 주행 경로 상에 위치되고, 로봇 청소기(10)의 진행을 방해할 수 있는 물체를 의미한다. 예를 들어, 문턱, 카펫 등이 장애물에 해당될 수 있다.
아래에서 사용되는 "전방 측", "후방 측", "좌측", "우측", "상측" 및 "하측"이라는 용어는 도 1에 표시된 좌표계를 참조하여 이해될 수 있다.
2. 본 발명의 실시 예에 따른 로봇 청소기(10)의 구성의 설명
도 1 내지 도 3을 참조하면, 본 발명의 실시 예에 따른 로봇 청소기(10)는 몸체부(100), 센서부(200), 제어부(300) 및 데이터베이스부(400)를 포함한다.
(1) 몸체부(100)의 설명
몸체부(100)는 로봇 청소기(10)의 몸체를 형성한다. 몸체부(100)는 하우징(110), 구동 모듈(120) 및 동력 모듈(130)을 포함한다.
하우징(110)은 몸체부(100)의 외측을 형성한다.
하우징(110)은 경량이면서도 내구성이 높은 소재로 형성되는 것이 바람직하다. 일 실시 예에서, 하우징(110)은 강화 플라스틱 등의 합성 수지로 형성될 수 있다.
일 실시 예에서, 하우징(110)은 외측면은 원형으로 형성될 수 있다. 이를 통해, 로봇 청소기(10)의 방향 전환 시, 하우징(110)의 외측면이 장애물(1, 도 24 참조)에 걸리는 것이 억제될 수 있다.
바닥면과 마주하는 하우징(110)의 일 측에는 센서부(200)의 일부가 구비될 수 있다.
하우징(110)의 내측에는 소정의 공간이 형성된다. 상기 공간에는, 센서부(200)의 일부, 제어부(300) 및 데이터베이스부(400)가 구비될 수 있다.
바닥면과 마주하는 하우징(110)의 일측 면에는 구동 모듈(120)이 구비된다.
구동 모듈(120)은 로봇 청소기(10)가 이동될 수 있는 수단으로 기능된다. 구동 모듈(120)은 동력 모듈(130)에 연결된다.
동력 모듈(130)이 생성하는 구동력은 구동 모듈(120)에 전달되어 로봇 청소기(10)가 전방 측 또는 후방 측으로 이동될 수 있다.
또한, 동력 모듈(130)은 복수 개 구비되어 독립적으로 구동될 수 있다. 이에 따라, 구동 모듈(120)이 독립적으로 구동되어 로봇 청소기(10)가 구동되는 방향이 변경될 수 있다.
구동 모듈(120)은 제1 맙(121) 및 제2 맙(122)을 포함한다. 제1 맙(121)은 제1 동력 모듈(131)과 결합되어 제1 동력 모듈(131)로부터 구동력을 전달 받는다. 또한, 제2 맙(122)은 제2 동력 모듈(132)과 결합되어 제2 동력 모듈(132)로부터 구동력을 전달 받는다.
일 실시 예에서, 제1 맙(121) 및 제2 맙(122)은 회전축에 결합되어 회전될 수 있는 원 형상으로 형성될 수 있다.
제1 맙(121) 및 제2 맙(122)은 하우징(110)의 일 측면의 양 측에 구비된다. 도시된 실시 예에서, 상기 일 측면은 하측면으로, 상기 양 측은 좌우측으로 정의될 수 있다.
도 2를 참조하면, 로봇 청소기(10)의 전진방향을 따라 연장되어 로봇 청소기(10)를 양분하는 제1 가상선(L1)이 도시되고, 제1 가상선(L1)과 교차하고 로봇 청소기(10)를 양분하는 제2 가상선(L2)이 도시된다.
제1 가상선(L1)과 제2 가상선(L2)을 기준으로 후술할 제1 기울기 및 제2 기울기가 각각 결정될 수 있다.
일 실시 예에서, 제1 맙(121) 및 제2 맙(122)의 중심을 통과하는 맙 가상선(ML)은 제2 가상선(L2)보다 후방 측에 위치될 수 있다.
일 실시 예에서, 제1 맙(121) 및 제2 맙(122)의 각 중심은 제2 가상선(L2)의 후방 측에 위치될 수 있다.
일 실시 예에서, 제1 맙(121) 및 제2 맙(122)은 제1 가상선(L1)의 좌측 및 우측에 각각 배치될 수 있다.
제1 맙(121) 및 제2 맙(122)은 바닥면과 소정 각도를 이루며 경사지도록 형성될 수 있다. 일 실시 예에서, 제1 맙(121)은 좌측이 우측에 비해 바닥면에 더 근접되도록 경사질수 있다. 또한, 제2 맙(122)은 우측이 좌측에 비해 바닥면에 더 근접되도록 경사질 수 있다.
그러면, 제1 맙(121)의 좌측 및 제2 맙(122)의 우측이 바닥면과 주로 접촉될 수 있다. 이에 의해, 제1 맙(121) 및 제2 맙(122)의 회전 시, 제1 맙(121)의 좌측 및 제2 맙(122)의 우측이 바닥면을 밀어 로봇 청소기(10)가 이동하게 된다.
일 실시 예에서, 제1 맙(121)이 반 시계방향으로, 제2 맙(122)이 시계방향으로 회전함에 따라 로봇 청소기(10)가 전진될 수 있다.
일 실시 예에서, 제1 맙(121)이 시계방향으로, 제2 맙(122)이 반 시계방향으로 회전함에 따라 로봇 청소기(10)가 후진될 수 있다.
일 실시 예에서, 제1 맙(121)이 반 시계방향으로, 제2 맙(122)이 반 시계방향으로 회전함에 따라 로봇 청소기(10)가 우측으로 회전될 수 있다.
일 실시 예에서, 제1 맙(121)이 시계방향으로, 제2 맙(122)이 시계방향으로 회전함에 따라 로봇 청소기(10)가 좌측으로 회전될 수 있다.
동력 모듈(130)은 제1 맙(121) 및 제2 맙(122)이 회전되기 위한 구동력을 생성한다. 동력 모듈(130)은 제어부(300)와 통전 가능하게 연결되어, 작동 정보를 전달 받을 수 있다.
일 실시 예에서, 동력 모듈(130)은 모터(motor)로 구비될 수 있다. 동력 모듈(130)은 하우징(110)의 내부 공간에 수용될 수 있다.
동력 모듈(130)은 외부로부터 전원을 인가 받을 수 있다. 일 실시 예에서, 동력 모듈(130)은 로봇 청소기(10)에 구비된 배터리(미도시)에 의해 전원을 인가 받을 수 있다. 동력 모듈(130)은 배터리(미도시)와 통전 가능하게 연결될 수 있다.
상술된 바와 같이, 동력 모듈(130)이 회전됨에 따라 로봇 청소기(10)가 전진 또는 후진될 수 있다. 또한, 동력 모듈(130)이 회전됨에 따라 로봇 청소기(10)가 좌측 또는 우측으로 회전될 수 있다.
제1 동력 모듈(131)과 제2 동력 모듈(132)은 독립적으로 구동될 수 있다. 즉, 제1 동력 모듈(131)과 제2 동력 모듈(132) 각각의 회전 방향은 서로 독립적으로 제어될 수 있다. 이를 위해, 제1 동력 모듈(131)과 제2 동력 모듈(132)은 제어부(300)와 각각 통전 가능하게 연결될 수 있다.
(2) 센서부(200)의 설명
센서부(200)는 로봇 청소기(10)의 작동 상태에 대한 정보를 감지한다. 또한, 센서부(200)는 로봇 청소기(10)의 주행에 관한 정보를 감지한다. 센서부(200)가 감지한 정보는 제어부(300)에 전달되어 제어부(300)가 상황에 맞는 제어 정보를 생성하는데 이용된다.
센서부(200)는 로봇 청소기(10)의 작동 상태에 대한 정보를 감지할 수 있는 임의의 형태로 구비될 수 있다.
센서부(200)는 배터리(미도시)와 통전 가능하게 연결될 수 있다. 센서부(200)의 작동에 필요한 전력은 연결된 배터리(미도시)로부터 공급될 수 있다.
센서부(200)는 기울기 센서 모듈(210), 가속도 센서 모듈(220), 거리 센서 모듈(230) 및 광량 센서 모듈(240)을 포함한다.
기울기 센서 모듈(210)은 로봇 청소기(10)의 기울기를 감지하도록 구성된다. 일 실시 예에서, 기울기 센서 모듈(210)은 로봇 청소기(10)가 바닥면으로 들린 경우 기준선과 이루는 기울기 정보를 감지하도록 구성될 수 있다.
일 실시 예에서, 기울기 센서 모듈(210)은 자이로 센서(gyro sensor) 등으로 구비될 수 있다.
기울기 센서 모듈(210)은 제1 기울기 센서 유닛(211) 및 제2 기울기 센서 유닛(212)을 포함한다.
제1 기울기 센서 유닛(211) 및 제2 기울기 센서 유닛(212)은 각각 로봇 청소기(10)가 기준선과 이루는 기울기 정보를 감지하도록 구성될 수 있다.
일 실시 예에서, 제1 기울기 센서 유닛(211)은 제1 가상선(L1)에 대해 로봇 청소기(10)가 기울어진 각도를 측정하도록 구성될 수 있다. 일 실시 예에서, 제2 기울기 센서 유닛(212)은 제2 가상선(L2)에 대해 로봇 청소기(10)가 기울어진 각도를 측정하도록 구성될 수 있다.
제1 기울기 센서 유닛(211) 및 제2 기울기 센서 유닛(212)은 제어부(300)의 감지 정보 수신 모듈(340)과 통전 가능하게 연결된다. 제1 기울기 센서 유닛(212) 및 제2 기울기 센서 유닛(212)이 감지한 기울기 정보는 제1 기울기 정보 수신 유닛(341) 및 제2 기울기 정보 수신 유닛(342)에 각각 전달된다. 전달된 정보는 작동 정보를 연산하기 위해 사용될 수 있다.
일 실시 예에서, 기울기 센서 모듈(210)은 하우징(110)의 내측에 설치된다. 설치된 기울기 센서 모듈(210)은 설치된 위치를 기준으로 기준선에 대한 로봇 청소기(10)의 기울기 정보를 감지한다.
가속도 센서 모듈(220)은 로봇 청소기(10)의 가속도 변화를 감지하도록 구성된다. 즉, 가속도 센서 모듈(220)은 로봇 청소기(10)의 주행 중 발생되는 로봇 청소기(10)의 가속도 변화를 감지한다.
가속도 센서 모듈(220)은 로봇 청소기(10)의 가속도 변화를 감지할 수 있는 임의의 형태로 구비될 수 있다. 일 실시 예에서, 가속도 센서 모듈(220)은 ICP(Integrated Circuit Piezoelectric) 타입 센서, Capacitance 타입 센서 및 스트레인 게이지 타입 센서 등이 사용될 수 있다.
가속도 센서 모듈(220)은 제어부(300)의 감지 정보 수신 모듈(340)과 통전 가능하게 연결된다. 가속도 센서 모듈(220)이 감지한 가속도 변화 정보는 가속도 변화 정보 수신 유닛(343)에 전달되어 작동 정보를 연산하기 위해 사용될 수 있다.
일 실시 예에서, 가속도 센서 모듈(220)은 하우징(110)의 내측에 설치된다. 설치된 가속도 센서 모듈(220)은 로봇 청소기(10)의 가속도 변화량을 감지한다.
일 실시 예에서, 기울기 센서 모듈(210)과 가속도 센서 모듈(220)은 일체형으로 형성될 수 있다.
거리 센서 모듈(230)은 로봇 청소기(10)의 바닥면을 향하는 일측 면과 바닥면 사이의 거리를 감지하도록 구성된다. 즉, 거리 센서 모듈(230)은 바닥면과 로봇 청소기(10) 사이의 거리 정보를 감지하도록 구성된다.
거리 센서 모듈(230)은 임의의 개체 사이의 거리를 감지할 수 있는 임의의 형태로 구비될 수 있다. 일 실시 예에서, 거리 센서 모듈(230)은 초음파(ultrasonic) 센서, 적외선(IR, Infrared Ray) 센서, 레이저 센서(LIDAR, Light Detection and Ranging) 센서, Radar(Radio Detecting and Ranging) 센서 또는 카메라(Stereo Camera) 센서 등으로 구비될 수 있다.
일 실시 예에서, 거리 센서 모듈(230)은 TOF(Time of Flight) 방식의 센서 등으로 구비될 수 있다. TOF(Time of Flight) 방식의 센서를 사용하는 경우, 빛이 반사되서 돌아오는 시간을 측정하여 거리를 측정할 수 있다(도 13 참조).
거리 센서 모듈(230)은 제어부(300)의 감지 정보 수신 모듈(340)과 통전 가능하게 연결된다. 거리 센서 모듈(230)에서 감지된 거리 정보는 거리 정보 수신 유닛(344, 345, 346)에 전달되어, 작동 정보를 연산하기 위해 활용될 수 있다.
도시된 실시 예에서, 거리 센서 모듈(230)은 로봇 청소기(10)의 전방 측에 위치될 수 있다. 즉, 거리 센서 모듈(230)은 로봇 청소기(10)가 전진하는 측에 위치될 수 있다.
도시된 실시 예에서, 거리 센서 모듈(230)은 제1 거리 센서 유닛(231), 제2 거리 센서 유닛(232) 및 제3 거리 센서 유닛(233)을 포함할 수 있다.
도시된 실시 예에서, 제1 거리 센서 유닛(231), 제2 거리 센서 유닛(232) 및 제3 거리 센서 유닛(233)은 하우징(110)의 전방 측의 원호를 따라 배치될 수 있다.
도시된 실시 예에서, 제1 거리 센서 유닛(231)이 하우징(110)의 전방 측에 위치되고, 제2 거리 센서 유닛(232) 및 제3 거리 센서 유닛(233)이 제1 거리 센서 유닛(231)의 좌측 및 우측에 각각 위치될 수 있다.
이는, 로봇 청소기(10)가 전진 하는 과정에서 장애물(1)과 접촉될 수 있는 방향을 고려한 것이다. 이에 따라, 로봇 청소기(10)가 전방 측에서 장애물(1)과 접촉되는 경우 뿐만 아니라, 로봇 청소기(10)가 전방과 좌측 사이에서 또는 전방과 우측 사이에서 장애물(1)과 접촉되는 경우에도 거리 정보가 감지될 수 있다.
제1 거리 센서 유닛(231), 제2 거리 센서 유닛(232) 및 제3 거리 센서 유닛(233)은 하우징(110)의 하측 면에서 소정 깊이만큼 함몰되어 위치될 수 있다.
이에 의해, 로봇 청소기(10)가 정지 상태에서, 바닥면과 각 거리 센서 유닛(231, 232, 233) 사이에 기 설정된 기준 거리 값이 정의될 수 있다.
도 14를 참조하면, 각 거리 센서 유닛(231, 232, 233)이 바닥면과 각각 소정 거리(D1, D2, D3)만큼 이격된다.
각 거리 센서 유닛(231, 232, 233)이 바닥면에서 들리는 경우, 각 거리 센서 유닛(231, 232, 233)에서 측정되는 거리 정보는 기준 거리 값 이상으로 감지된다.
도 15를 참조하면, 로봇 청소기(10)가 바닥면에서 들림에 따라, 각 거리 센서 유닛(231, 232, 233)과 바닥면 사이의 거리(D1, D2, D3)가 상기 기준 거리 값보다 증가된다. 도시되지는 않았으나, 제3 거리 센서 유닛(233)과 바닥면 사이의 거리(D3)는 제2 거리 센서 유닛(232)과 바닥면 사이의 거리(D2)와 동일하다.
또한, 각 거리 센서 유닛(231, 232, 233)과 바닥면 사이에 이물질이 유입되거나, 로봇 청소기(10)가 장애물(1)을 타고 올라가는 경우, 각 거리 센서 유닛(231, 232, 233)에서 감지되는 거리 정보는 기준 거리 값 이하로 감지될 수 있다(도 25, 도 26 참조).
도시되지 않은 실시 예에서, 거리 센서 모듈(230)은 4개 이상의 거리 센서 유닛을 구비할 수 있다.
광량 센서 모듈(240) 바닥면에서 반사되어 광량 센서 모듈(240)로 유입되는 광량에 대한 광량 정보를 감지하도록 구성된다. 도시되지 않은 실시 예에서, 광량 센서 모듈(240)의 주변에는 빛을 방출하는 광 유닛(미도시)이 구비될 수 있다.
광량 센서 모듈(240)은 바닥면에서 반사된 빛의 광량을 감지할 수 있는 임의의 형태로 구비될 수 있다(도 13 참조).
광량 센서 모듈(240)은 하우징(110)의 하측면에서 소정 깊이만큼 함몰되어 위치될 수 있다. 이에 의해, 로봇 청소기(10)의 정지 상태에서, 광량 센서 모듈(240)은 바닥면과 소정 거리만큼 이격되어 위치된다.
광량 센서 모듈(240)과 바닥면 사이의 거리가 증가되면 감지되는 광량이 감소되고, 광량 센서 모듈(240)과 바닥면 사이의 거리가 근접되면 감지되는 광량이 증가된다.
도 15를 참조하면, 로봇 청소기(10)가 바닥면에서 들어 올려짐에 따라, 광량 센서 모듈(240)과 바닥면 사이의 거리(D4)가 증가되고, 이에 의해 광량 센서 모듈(240)로 유입되는 광량이 감소된다.
일 실시 예에서, 광량 센서 모듈(240)은 옵티컬 플로우 센서(Optical Flow Sensor) 등으로 구비될 수 있다.
옵티컬 플로우 센서는 이동 중 본체 주변과 관련된 이미지 정보를 감지하는 센서이다. 옵티컬 플로우 센서 내에 구비된 이미지 센서로부터 입력되는 하측의 영상을 변환하여 소정 형식의 영상 데이터를 생성한다. 감지된 영상 데이터를 활용하여 제어부(300)가 로봇 청소기(10)의 미끄러짐과 무관하게 로봇 청소기(10)의 위치를 검출할 수 있다.
옵티컬 플로우 센서가 영상 데이터를 감지하기 위해 바닥면에서 반사된 빛이 옵티컬 플로우 센서로 유입되야 하므로, 유입된 빛의 광량을 이용하면 옵티컬 플로우 센서가 바닥면으로부터 멀어지는지 또는 근접되는 여부를 감지할 수 있다.
즉, 하나의 옵티컬 플로우 센서를 이용하여 바닥면의 영상 데이터뿐만 아니라 바닥면과의 근접 또는 이격 여부까지 감지할 수 있다.
즉, 별도의 거리 센서를 구비하지 않고, 로봇 청소기(10)의 후방 측이 바닥면에서 이격되는지 여부를 판단할 수 있다.
즉, 추가적인 구성 없이 로봇 청소기(10)의 들림 여부에 대한 판단 정확성이 향상될 수 있다.
도시된 실시 예에서, 광량 센서 모듈(240)은 맙 가상선(ML)보다 후방 측에 위치될 수 있다. 이에 따라, 로봇 청소기(10)의 전방 측이 바닥면에서 이격 또는 근접되었는지 여부는 거리 센서 모듈(230)에 의해 감지될 수 있고, 후방 측이 바닥면에서 이격 또는 근접되었는지 여부는 광량 센서 모듈(240)에 의해 감지될 수 있다.
또한, 로봇 청소기(10)의 후방 측에 광량 센서 모듈(240)이 위치됨에 따라, 로봇 청소기(10)가 낭떨어지에 있는 경우에 로봇 청소기(10)가 바닥면에서 들린 것으로 오판되는 것이 억제될 수 있다.
도 16을 참조하면, 로봇 청소기(10)의 후방 측은 낭떠어지에 걸쳐있고, 이에 의해 거리 센서 모듈(230)과 바닥면 사이의 거리가 기준 거리 값보다 증가될 수 있다. 로봇 청소기(10)의 들림 여부가 거리 센서 모듈(230)이 감지한 거리 정보들에 의해서만 판단되는 경우, 로봇 청소기(10)가 낭떠러지에 위치되어 있음에도 불구하고 바닥면에서 들린 것으로 오판될 가능성이 존재한다.
로봇 청소기(10)의 후방 측에 위치되는 광량 센서 모듈(240)에 의해 로봇 청소기(10)의 후방 측이 바닥면과 이격되는지 여부가 판단될 수 있으므로, 로봇 청소기(10)가 낭떨어지에 있는 경우에 로봇 청소기(10)가 바닥면에서 들린 것으로 오판되는 것이 억제될 수 있다.
광량 센서 모듈(240)은 제어부(300)의 감지 정보 수신 모듈(340)과 통전 가능하게 연결된다. 광량 센서 모듈(240)이 감지한 광량 정보는 광량 정보 수신 유닛(347)에 전달되어 작동 정보를 연산하는데 사용될 수 있다.
(3) 제어부(300)의 설명
제어부(300)는 사용자로부터 제어 신호를 입력 받고, 로봇 청소기(10)를 작동시키기 위한 작동 정보를 연산한다.
또한, 제어부(300)는 센서부(200)가 감지한 여러 감지 정보를 전달받을 수 있다. 이를 위해, 제어부(300)는 센서부(200)와 통전 가능하게 연결된다.
제어부(300)는 입력 받은 제어 신호 또는 전달 받은 감지 정보를 이용하여 작동 정보를 연산할 수 있다. 또한, 제어부(300)는 연산된 작동 정보에 따라 로봇 청소기(10)의 각 구성, 특히 동력 모듈(130)을 제어할 수 있다. 이를 위해, 제어부(300)는 동력 모듈(130)과 통전 가능하게 연결된다.
또한, 제어부(300)는 데이터베이스부(400)와 통전 가능하게 연결된다.
사용자가 입력한 제어 신호, 센서부(200)가 감지한 감지 정보 및 제어부(300)가 연산한 각종 정보는 데이터베이스부(400)에 저장될 수 있다.
후술될 제어부(300)의 각종 모듈들 및 유닛들은 서로 통전 가능하게 연결될 수 있다. 이에 따라, 어느 하나의 모듈 또는 유닛에 입력된 정보 또는 어느 하나의 모듈 또는 유닛이 연산한 정보는 다른 모듈 또는 유닛에 전달될 수 있다.
제어부(300)는 정보의 입력, 출력 및 연산 등이 가능한 임의의 형태로 구비될 수 있다. 일 실시 예에서, 제어부(300)는 마이크로프로세서, 중앙처리장치(CPU), 인쇄회로기판(PCB) 등의 형태로 구비될 수 있다.
제어부(300)는 하우징(110) 내부에 형성되는 소정의 공간에 위치된다. 제어부(300)는 외부의 습기 등에 의해 영향을 받지 않도록 상기 공간에 밀폐 가능하게 수용될 수 있다.
제어부(300)는 제어 신호 입력 모듈(310), 작동 정보 연산 모듈(320), 동작 제어 모듈(330) 및 감지 정보 수신 모듈(340), 들림 정보 연산 모듈(350) 및 장애물 통과 정보 연산 모듈(360)을 포함한다.
제어 신호 입력 모듈(310)에는 사용자에 의해 로봇 청소기(10)를 구동하기 위한 제어 신호가 입력된다. 사용자는 단말기 등을 통해 제어 신호를 입력할 수 있다. 일 실시 예에서, 상기 단말기는 스마트 폰 등으로 구비될 수 있다.
다른 실시 예에서, 사용자는 로봇 청소기(10)에 구비되는 입력 인터페이스(미도시)를 통해 제어 신호를 입력할 수 있다.
상기 다른 실시 예에서, 제어 신호 입력 모듈(310)은 입력 인터페이스(미도시)와 통전 가능하게 연결될 수 있다.
제어 신호 입력 모듈(310)에 입력된 제어 신호는 작동 정보 연산 모듈(320)에 전달된다. 또한, 제어 신호 입력 모듈(310)에 입력된 제어 신호는 데이터베이스부(400)의 제어 신호 저장 모듈(410)에도 전달되어 저장될 수 있다.
작동 정보 연산 모듈(320)은 로봇 청소기(10)를 작동시키기 위한 작동 정보를 연산한다.
작동 정보 연산 모듈(320)은 제어 신호 입력 모듈(310)을 통해 입력된 제어 신호, 들림 정보 연산 모듈(350) 또는 장애물 통과 정보 연산 모듈(360)에서 연산된 각 정보를 이용하여 작동 정보를 연산할 수 있다.
일 실시 예에서, 상기 작동 정보는 구동 정보 및 조향 정보를 포함할 수 있다. 구동 정보는 로봇 청소기(10)의 동력 모듈(130)의 동작 또는 정지에 관련된 작동 정보로 정의될 수 있다. 또한, 조향 정보는 제1 동력 모듈(131) 및 제2 동력 모듈(132)의 각각의 회전방향에 대한 작동 정보로 정의될 수 있다.
작동 정보 연산 모듈(320)이 연산한 작동 정보는 동작 제어 모듈(330)에 전달된다. 또한, 작동 정보 연산 모듈(320)이 연산한 작동 정보는 데이터베이스부(400)의 작동 정보 저장 모듈(420)에 전달된다.
작동 정보 연산 모듈(320)은 구동 정보 연산 유닛(321), 제1 조향 정보 연산 유닛(322) 및 제2 조향 정보 연산 유닛(323)을 포함한다.
구동 정보 연산 유닛(321)은 구동 정보를 연산한다. 구동 정보 연산 유닛(321)은 제어 신호 입력 모듈(310)을 통해 입력된 제어 신호 또는 들림 정보 연산 모듈(350)에서 연산된 각 정보를 이용하여 구동 정보를 연산할 수 있다.
구동 정보 연산 유닛(321)이 연산하는 구동 정보에는, 제1 동력 모듈(131) 및 제2 동력 모듈(132)의 동작 및 정지에 관한 정보가 포함될 수 있다.
구체적으로, 들림 정보 연산 모듈(350)에서 들림 정보가 로봇 청소기(10)가 바닥면에서 들린 것으로 연산된 경우 제1 동력 모듈(131) 및 제2 동력 모듈(132)의 동작이 정지될 수 있다.
또한, 들림 정보 연산 모듈(350)에서 들림 정보가 로봇 청소기(10)가 바닥면에서 들리지 않을 것으로 연산된 경우 제1 동력 모듈(131) 및 제2 동력 모듈(132)이 동작될 수 있다. 일 실시 예에서, 제1 동력 모듈(131) 및 제2 동력 모듈(132)은 정지되기 전 회전하던 방향으로 동작될 수 있다.
상술한 바와 같이, 구동 정보에 의해 제어된 제1 동력 모듈(131) 및 제2 동력 모듈(132)이 동작 또는 정지될 수 있다. 따라서, 구동 정보는 제1 동력 모듈(131) 및 제2 동력 모듈(132)을 동작시키기 위한 제1 구동 정보 및 정지시키기 위한 제2 구동 정보로 분류될 수 있다.
제1 구동 정보는 제1 동력 모듈(131) 및 제2 동력 모듈(132)의 작동을 정지시키는 제어 정보를 포함한다.
제2 구동 정보는 제1 동력 모듈(131) 및 제2 동력 모듈(132)을 작동시키는 정보를 포함한다. 일 실시 예에서, 제2 구동 정보가 연산되는 경우, 제1 동력 모듈(131) 및 제2 동력 모듈(132)은 정지되기 전 회전 방향으로 회전되도록 작동될 수 있다.
구동 정보 연산 유닛(321)이 연산한 구동 정보, 구체적으로 제1 구동 정보 및 제2 구동 정보는 동작 제어 모듈(330) 및 작동 정보 저장 모듈(420)에 전달된다.
제1 조향 정보 연산 유닛(322) 및 제2 조향 정보 연산 유닛(323)은 제1 조향 정보 및 제2 조향 정보를 각각 연산한다. 제1 조향 정보 연산 유닛(322) 및 제2 조향 정보 연산 유닛(323)은 제어 신호 입력 모듈(330)을 통해 입력된 제어 신호 또는 장애물 통과 정보 연산 모듈(360)에서 연산된 각 정보를 이용하여 제1 조향 정보 및 제2 조향 정보를 각각 연산할 수 있다.
제1 조향 정보 및 제2 조향 정보에는 각각 제1 동력 모듈(131) 및 제2 동력 모듈(132)의 회전 방향 및 회전 속도에 관한 정보가 포함될 수 있다.
즉, 제1 조향 정보에는 제1 동력 모듈(131)의 회전 방향에 관한 정보가, 제2 조향 정보에는 제2 동력 모듈(132)의 회전 방향 및 회전 속도에 관한 정보가 포함될 수 있다.
일 실시 예에서, 제1 조향 정보가 제1 동력 모듈(131)을 반 시계방향으로 회전시키도록 연산되고, 제2 조향 정보가 제2 동력 모듈(132)을 시계방향으로 회전시키도록 연산되면, 로봇 청소기(10)가 전진한다.
상기 일 실시 예에서, 제1 조향 정보 및/또는 제2 조향 정보에 의해 제1 동력 모듈(131)의 회전 속도가 제2 동력 모듈(132)의 회전 속도보다 큰 값으로 연산되면, 로봇 청소기(10)가 우측으로 회전되어 진행될 수 있다.
상기 일 실시 예에서, 제1 조향 정보 및/또는 제2 조향 정보에 의해 제1 동력 모듈(131)의 회전 속도가 제2 동력 모듈(132)의 회전 속도보다 작은 값으로 연산되면, 로봇 청소기(10)가 좌측으로 회전되어 진행될 수 있다.
일 실시 예에서, 제1 조향 정보가 제1 동력 모듈(131)을 시계방향으로 회전시키도록 연산되고, 제2 조향 정보가 제2 동력 모듈(132)을 시계방향으로 회전시키도록 연산되면, 로봇 청소기(10)가 우측으로 회전되어 진행된다.
일 실시 예에서, 제1 조향 정보가 제1 동력 모듈(131)을 반 시계방향으로 회전시키도록 연산되고, 제2 조향 정보가 제2 동력 모듈(132)을 반 시계방향으로 회전시키도록 연산되면, 로봇 청소기(10)가 좌측으로 회전되어 진행될 수 있다.
일 실시 예에서, 제1 조향 정보가 제1 동력 모듈(131)을 시계방향으로 회전시키도록 연산되고, 제2 조향 정보가 제2 동력 모듈(132)을 반 시계방향으로 회전시키도록 연산되면, 로봇 청소기(10)가 후진될 수 있다.
후술할 장애물 통과 정보 연산 모듈(360)이 장애물 통과 정보를 로봇 청소기(10)가 일 측의 장애물(1)을 통과할 수 있는 것으로 연산하는 경우, 제1 조향 정보 및 제2 조향 정보는 로봇 청소기(10)를 전진시키도록 연산될 수 있다.
후술할 장애물 통과 정보 연산 모듈(360)이 장애물 통과 정보를 로봇 청소기(10)가 일 측의 장애물(1)을 통과할 수 없는 것으로 연산하는 경우, 제1 조향 정보 및 제2 조향 정보는 로봇 청소기(10)를 전진, 좌측 회전 또는 우측 회전시켜 장애물(1)을 회피하도록 연산될 수 있다.
연산된 제1 조향 정보 및 제2 조향 정보는 동작 제어 모듈(330) 및 작동 정보 저장 모듈(420)에 전달된다. 상술한 제1 조향 정보 및 제2 조향 정보에 따라 로봇 청소기(10)는 다양한 방향으로 이동될 수 있다.
동작 제어 모듈(330)은 작동 정보 연산 모듈(320)에 의해 연산된 작동 정보에 따라 동력 모듈(130)을 제어한다. 동작 제어 모듈(330)은 작동 정보 연산 모듈(320)과 통전 가능하게 연결된다.
동작 제어 모듈(330)은 동력 모듈 제어 유닛(331)을 포함한다.
동력 모듈 제어 유닛(331)은 연산된 작동 정보에 상응하게, 동력 모듈(130)을 제어하도록 구성된다.
구체적으로, 동력 모듈 제어 유닛(331)은 연산된 제1 구동 정보 또는 제2 구동 정보에 따라 제1 동력 모듈(131) 및 제2 동력 모듈(132)을 제어할 수 있다.
또한, 동력 모듈 제어 유닛(331)은 연산된 제1 조향 정보에 따라 제1 동력 모듈(131)을 제어할 수 있다. 동력 모듈 제어 유닛(331)은 연산된 제2 조향 정보에 따라 제2 동력 모듈(132)을 제어할 수 있다.
동력 모듈 제어 유닛(331)은 동력 모듈(130)과 통전 가능하게 연결된다.
감지 정보 수신 모듈(340)은 센서부(200)에서 감지된 각 정보를 수신하도록 구성된다. 감지 정보 수신 모듈(340)은 센서부(200)와 통전 가능하게 연결된다.
감지 정보 수신 모듈(340)에 전달된 각 정보는, 들림 정보 연산 모듈(350) 및 장애물 통과 정보 연산 모듈(360)에 전달되어 각 정보를 연산하기 위해 사용된다. 감지 정보 수신 모듈(340)은 들림 정보 연산 모듈(350) 및 장애물 통과 정보 연산 모듈(360)과 통전 가능하게 연결된다.
감지 정보 수신 모듈(340)은 데이터베이스부(400)와 통전 가능하게 연결된다.
센서부(200)에서 감지된 각 정보는 감지 정보 수신 모듈(340)을 통해 데이터베이스부(400)에 전달될 수 있다.
감지 정보 수신 모듈(340)은 제1 기울기 정보 수신 유닛(341), 제2 기울기 정보 수신 유닛(342), 가속도 변화 정보 수신 유닛(343), 제1 거리 정보 수신 유닛(344), 제2 거리 정보 수신 유닛(345), 제3 거리 정보 수신 유닛(346) 및 광량 정보 수신 유닛(347)을 포함한다.
제1 기울기 정보 수신 유닛(341)은 제1 기울기 센서 유닛(211)이 감지한 제1 기울기 정보를 전달받는다. 제1 기울기 정보 수신 유닛(341)은 제1 기울기 센서 유닛(211)과 통전 가능하게 연결된다.
상기 제1 기울기 정보는 로봇 청소기(10)가 바닥면에서 들린지 여부를 연산하기 위해 사용될 수 있다.
또한, 본 발명의 실시 예에서, 제1 기울기 정보는 들림 정보 연산 모듈(350)의 기울기 정보 연산 유닛(351)에 전달되어 로봇 청소기(10)가 바닥면에서 들렸지는 여부에 대한 들림 정보를 연산하기 위해 사용될 수 있다. 제1 기울기 정보 수신 유닛(341)은 기울기 정보 연산 유닛(351)과 통전 가능하게 연결된다.
제1 기울기 정보 수신 유닛(341)이 수신한 제1 기울기 정보는 데이터베이스부(400)의 감지 정보 저장 모듈(430)에 전달된다. 제1 기울기 정보 수신 유닛(341)은 기울기 정보 저장 유닛(431)과 통전 가능하게 연결된다.
제2 기울기 정보 수신 유닛(342)은 제2 기울기 센서 유닛(212)이 감지한 제2 기울기 정보를 전달받는다. 제2 기울기 정보 수신 유닛(342)은 제2 기울기 센서 유닛(212)과 통전 가능하게 연결된다.
상기 제2 기울기 정보는 로봇 청소기(10)가 바닥면에서 들린지 여부를 연산하기 위해 사용될 수 있다.
또한, 본 발명의 실시 예에서, 제2 기울기 정보는 들림 정보 연산 모듈(350)의 기울기 정보 연산 유닛(351)에 전달되어 로봇 청소기(10)가 바닥면에서 들렸지는 여부에 대한 들림 정보를 연산하기 위해 사용될 수 있다. 제2 기울기 정보 수신 유닛(342)은 기울기 정보 연산 유닛(351)과 통전 가능하게 연결된다.
제2 기울기 정보 수신 유닛(341)이 수신한 제2 기울기 정보는 데이터베이스부(400)의 감지 정보 저장 모듈(430)에 전달된다. 제2 기울기 정보 수신 유닛(341)은 기울기 정보 저장 유닛(431)과 통전 가능하게 연결된다.
가속도 변화 정보 수신 유닛(343)은 가속도 센서 모듈(220)이 감지한 가속도 변화 정보를 수신하도록 구성된다. 가속도 변화 정보 수신 유닛(343)은 가속도 센서 모듈(220)과 통전 가능하게 연결된다.
가속도 변화 정보 수신 유닛(343)이 수신한 가속도 변화 정보는 로봇 청소기(10)의 일 측에 장애물(1)이 있는지 여부를 연산하기 위해 활용된다.
본 발명의 실시 예에서, 가속도 변화 정보는 장애물 통과 정보 연산 모듈(360)의 가속도 변화 정보 연산 유닛(361)에 전달되어 로봇 청소기(10)의 일 측에 장애물(1)이 있는지 여부에 대한 장애물 존재 정보를 연산하는데 활용될 수 있다. 가속도 변화 정보 수신 유닛(343)은 가속도 변화 정보 연산 유닛(361)과 통전 가능하게 연결된다.
제1 거리 정보 수신 유닛(344)은 제1 거리 센서 유닛(231)이 감지한 제1 거리 정보를 수신하도록 구성된다. 제1 거리 정보 수신 유닛(344)은 제1 거리 센서 유닛(231)과 통전 가능하게 연결된다.
제1 거리 정보 수신 유닛(344)이 수신한 제1 거리 정보는 로봇 청소기(10)가 바닥면에서 들렸는지 여부를 연산하기 위해 활용된다.
또한, 제1 거리 정보는 들림 정보 연산 모듈(350)의 제1 거리 정보 연산 유닛(352)에 전달되어 로봇 청소기(10)가 바닥면에서 들렸는지 여부를 연산하기 위해 활용된다. 제1 거리 정보 수신 유닛(344)은 제1 거리 정보 연산 유닛(352)과 통전 가능하게 연결된다.
제1 거리 정보 수신 유닛(344)이 수신한 제1 거리 정보는 로봇 청소기(10)의 일 측에 통과 가능한 장애물(1)이 있는지 여부를 연산하기 위해 활용된다.
또한, 제1 거리 정보는 장애물 통과 정보 연산 모듈(360)의 제2 거리 정보 연산 유닛(362)에 전달되어 로봇 청소기(10)의 일 측에 통과 가능한 장애물(1)이 존재하는지 여부를 연산하기 위해 활용된다. 제1 거리 정보 수신 유닛(344)은 제2 거리 정보 연산 유닛(362)과 통전 가능하게 연결된다.
제2 거리 정보 수신 유닛(345)은 제2 거리 센서 유닛(232)이 감지한 제2 거리 정보를 수신하도록 구성된다. 제2 거리 정보 수신 유닛(345)은 제2 거리 센서 유닛(232)과 통전 가능하게 연결된다.
제2 거리 정보 수신 유닛(345)이 수신한 제2 거리 정보는 로봇 청소기(10)가 바닥면에서 들렸는지 여부를 연산하기 위해 활용된다.
또한, 제2 거리 정보는 들림 정보 연산 모듈(350)의 제1 거리 정보 연산 유닛(352)에 전달되어 로봇 청소기(10)가 바닥면에서 들렸는지 여부를 연산하기 위해 활용된다. 제2 거리 정보 수신 유닛(345)은 제1 거리 정보 연산 유닛(352)과 통전 가능하게 연결된다.
제2 거리 정보 수신 유닛(345)이 수신한 제2 거리 정보는 로봇 청소기(10)의 일 측에 통과 가능한 장애물(1)이 있는지 여부를 연산하기 위해 활용된다.
또한, 제2 거리 정보는 장애물 통과 정보 연산 모듈(360)의 제2 거리 정보 연산 유닛(362)에 전달되어 로봇 청소기(10)의 일 측에 통과 가능한 장애물(1)이 존재하는지 여부를 연산하기 위해 활용된다. 제2 거리 정보 수신 유닛(345)은 제2 거리 정보 연산 유닛(362)과 통전 가능하게 연결된다.
제3 거리 정보 수신 유닛(346)은 제3 거리 센서 유닛(233)이 감지한 제3 거리 정보를 수신하도록 구성된다. 제3 거리 정보 수신 유닛(346)은 제3 거리 센서 유닛(233)과 통전 가능하게 연결된다.
제3 거리 정보 수신 유닛(346)이 수신한 제3 거리 정보는 로봇 청소기(10)가 바닥면에서 들렸는지 여부를 연산하기 위해 활용된다.
또한, 제3 거리 정보는 들림 정보 연산 모듈(350)의 제1 거리 정보 연산 유닛(352)에 전달되어 로봇 청소기(10)가 바닥면에서 들렸는지 여부를 연산하기 위해 활용된다. 제3 거리 정보 수신 유닛(345)은 제1 거리 정보 연산 유닛(352)과 통전 가능하게 연결된다.
제3 거리 정보 수신 유닛(345)이 수신한 제3 거리 정보는 로봇 청소기(10)의 일 측에 통과 가능한 장애물(1)이 있는지 여부를 연산하기 위해 활용된다.
또한, 제3 거리 정보는 장애물 통과 정보 연산 모듈(360)의 제2 거리 정보 연산 유닛(362)에 전달되어 로봇 청소기(10)의 일 측에 통과 가능한 장애물(1)이 존재하는지 여부를 연산하기 위해 활용된다. 제3 거리 정보 수신 유닛(345)은 제2 거리 정보 연산 유닛(362)과 통전 가능하게 연결된다.
광량 정보 수신 유닛(347)은 광량 센서 모듈(240)이 수신한 광량 정보를 수신하도록 구성된다. 광량 정보 수신 유닛(347)은 광량 센서 모듈과 통전 가능하게 연결된다.
광량 정보 수신 유닛(347)이 수신한 광량 정보는 로봇 청소기(10)가 바닥면에서 들렸지는 여부를 연산하기 위해 활용된다.
또한, 광량 정보는 들림 정보 연산 모듈(350)의 광량 정보 연산 유닛(353)에 전달되어 로봇 청소기(10)가 바닥면에서 들렸는지 여부를 연산하기 위해 활용된다. 광량 정보 수신 유닛(347)은 광량 정보 연산 유닛(353)과 통전 가능하게 연결된다.
감지 정보 수신 모듈(340)에 수신된 각 정보들은 데이터베이스부(400)의 감지 정보 저장 모듈(430)에 전달되어 저장될 수 있다. 감지 정보 수신 모듈(340)은 감지 정보 저장 모듈(430)과 통전 가능하게 연결된다.
들림 정보 연산 모듈(350)은 감지 정보 수신 모듈(340)에서 수신된 각 정보를 이용하여, 로봇 청소기(10)가 바닥면에서 들렸는지 여부에 대한 들림 정보를 연산하도록 구성된다.
상기 들림 정보는 로봇 청소기(10)가 바닥면에서 들린 것으로 연산되거나, 로봇 청소기(10)가 바닥면에서 들리지 않은 것으로 연산될 수 있다.
들림 정보 연산 모듈(350)은 감지 정보 수신 모듈(340)과 통전 가능하게 연결된다. 센서부(200)에서 감지 정보 수신 모듈(340)로 전달된 각 정보는 들림 정보 연산 모듈(350)로 전달될 수 있다.
들림 정보 연산 모듈(350)은 데이터베이스부(400)와 통전 가능하게 연결된다. 들림 정보 연산 모듈(350)이 연산한 각 정보는 데이터베이스부(400)에 전달될 수 있다.
들림 정보 연산 모듈(350)이 연산한 각 정보는 작동 정보 연산 모듈(320)에 전달되어, 작동 정보를 연산하기 위해 활용된다. 들림 정보 연산 모듈(350)은 작동 정보 연산 모듈(320)과 통전 가능하게 연결된다.
들림 정보 연산 모듈(350)은 기울기 정보 연산 유닛(351), 제1 거리 정보 연산 유닛(352), 광량 정보 연산 유닛(353) 및 제1 시간 정보 연산 유닛(354)을 포함한다.
들림 정보는 로봇 청소기(10)가 바닥면에서 들렸는지 여부에 대한 정보로 정의될 수 있다.
또한, 들림 정보는 로봇 청소기(10)가 바닥면과 이루는 각도, 로봇 청소기(10)가 바닥면과 이격된 거리 등에 정의될 수 있다.
이하에서 설명되는 각 정보 연산 유닛(351, 352, 353, 354)가 들림 정보를 연산하는 과정은 일 예로서 기술된다.
기울기 정보 연산 유닛(351)은 제1 기울기 정보 수신 유닛(341) 및 제2 기울기 정보 수신 유닛(342)에서 전달받은 제1 기울기 정보 및 제2 기울기 정보를 이용하여 들림 정보를 연산하기 위한 각종 정보를 연산할 수 있다.
일 실시 예에서, 기울기 정보 연산 유닛(351)은 제1 기울기 정보를 수신하여 기 설정된 기준 기울기 정보와 비교한다. 이에 대한 상세한 설명은 후술하기로 한다. 제1 기울기 정보는 제1 가상선(L1)이 바닥면의 바닥선(CL1)과 이루는 경사(A1)에 대한 정보이다 (도 11 참조).
일 실시 예에서, 기울기 정보 연산 유닛(351)은 제2 기울기 정보를 수신하여 기 설정된 기준 기울기 정보와 비교한다. 이에 대한 상세한 설명은 후술하기로 한다. 제2 기울기 정보는 제1 가상선(L2)이 바닥면의 바닥선(CL1)과 이루는 경사(A2)에 대한 정보이다 (도 12 참조).
상기 기준 기울기 정보는 로봇 청소기(10)가 주행이 불가능할 정도의 경사로 정의될 수 있다.
또한, 사용자가 로봇 청소기(10)를 한 손으로 잡고 들어 올리는 경우, 로봇 청소기(10)에는 기울어짐이 발생되므로, 상기 기준 기울기 정보는 사용자가 로봇 청소기(10)를 한 손으로 잡고 들어 올릴 때 발생될 수 있는 로봇 청소기(10)의 기울기로 정의될 수 있다.
일 실시 예에서, 상기 기준 기울기 정보는 30도로 정의될 수 있다.
기울기 정보 연산 유닛(351)은 제1 기울기 정보 및 제2 기울기 정보와 기준 기울기 정보를 비교하여 제1 일시 들림 정보를 연산할 수 있다.
제1 기울기 정보 및 제2 기울기 정보 중 적어도 하나가 기준 기울기 정보 이상인 경우, 기울기 정보 연산 유닛(351)이 제1 일시 들림 정보를 연산한다.
상기 제1 일시 들림 정보는 로봇 청소기(10)가 바닥면에서 일시적으로 들린 것으로 정의될 수 있다.
연산된 제1 일시 들림 정보는 제1 시간 정보 연산 유닛(354)으로 전달된다. 기울기 정보 연산 유닛(351)과 제1 시간 정보 연산 유닛(354)은 통전 가능하게 연결된다.
또한, 제1 기울기 정보 및 제2 기울기 정보가 모두 기준 기울기 정보 미만인 경우, 제1 거리 정보 연산 유닛(352)이 제1 거리 정보 정보, 제2 거리 정보 및 제3 거리 정보를 전달 받는다.
제1 거리 정보 연산 유닛(352)은 전달 받은 거리 정보들 중 기 설정된 기준 거리 값 이상인 거리 정보의 개수를 연산한다. 상기 기 설정된 기준 거리 값은, 로봇 청소기(10)의 주행 중 발생될 수 있는 흔들림으로 인해 이격될 수 있는 거리보다 큰 값으로 설정될 수 있다. 일 실시 예에서, 상기 기준 거리 값은 10cm일 수 있다.
또한, 제1 거리 정보 연산 유닛(352)은 상기 기준 거리 값 이상인 거리 정보의 개수와 기 설정된 기준 개수를 비교한다.
사용자가 로봇 청소기(10)의 전방 측을 잡고 들어올리는 경우, 사용자의 손에 의해 거리 센서 유닛(231, 232, 233) 중 일부가 가려질 수 있다. 따라서, 상기 기 설정된 기준 개수는 사용자가 거리 센서 유닛(231, 232, 233)들이 위치된 로봇 청소기(10)의 전방 측을 잡고 들어올릴 경우를 고려하여 설정될 수 있다.
일 실시 예에서, 상기 기 설정된 기준 개수는 2개로 설정될 수 있다.
상기 기준 거리 값 이상인 거리 정보의 개수가 기준 개수 미만인 경우, 제1 거리 정보 연산 유닛(352)이 제2 일시 들림 정보를 연산한다.
상기 제2 일시 들림 정보는 로봇 청소기(10)가 바닥면에서 들리지 않을 것으로 정의될 수 있다.
연산된 제2 일시 들림 정보는 제1 시간 정보 연산 유닛(354)으로 전달된다. 제1 거리 정보 연산 유닛(352)은 제1 시간 정보 연산 유닛(354)과 통전 가능하게 연결된다.
상기 기준 거리 이상인 거리 정보의 개수가 기준 개수 이상인 경우, 거리 센서 모듈(230)이 위치되는 로봇 청소기(10)의 전방 측이 들린 것으로 판단될 수 있다.
따라서, 상기 기준 거리 이상인 거리 정보의 개수가 기준 개수 이상인 경우, 로봇 청소기(10)의 후방 측에서 감지되는 광량 정보를 이용하여 로봇 청소기(10)의 후방 측이 들렸는지 여부에 대해 판단한다.
즉, 상기 기준 거리 이상인 거리 정보의 개수가 기준 개수 이상인 경우, 광량 정보 연산 유닛(353)이 광량 정보 수신 유닛(341)에서 전달 받은 광량 정보를 기 설정된 기준 광량 값과 비교한다.
상기 기 설정된 기준 광량 값은, 로봇 청소기(10)의 주행 중 발생될 수 있는 흔들림으로 인해 이격될 수 있는 거리보다 큰 거리에서 수신되는 광량 값으로 설정될 수 있다.
광량 정보가 기준 광량 값 이하인 경우, 광량 정보 연산 유닛(353)이 제1 일시 들림 정보를 연산한다.
또한, 광량 정보가 기준 광량 값 초과인 경우, 광량 정보 연산 유닛(353)이 제2 일시 들림 정보를 연산한다.
광량 정보 연산 유닛(353)이 연산한 제1 일시 들림 정보 또는 제2 일시 들림 정보는 제1 시간 정보 연산 유닛(354)으로 전달된다. 광량 정보 연산 유닛(353)은 제1 시간 정보 연산 유닛(354)과 통전 가능하게 연결된다.
상술된 바와 같이, 제1 거리 정보 연산 유닛(352)이 로봇 청소기(10)의 전방 측이 바닥면에서 들렸는지 여부에 대한 정보를 연산하고, 광량 정보 연산 유닛(353)이 로봇 청소기(10)의 후방 측이 바닥면에서 들렸는지 여부에 대한 정보를 연산한다.
이에 의해, 로봇 청소기(10)가 기준 기울기 미만의 경사로 들린 경우에 로봇 청소기(10)가 바닥면에서 들렸는지 여부가 판단될 수 있다. 즉, 사용자가 로봇 청소기(10)를 두 손으로 들어올린 경우에 로봇 청소기(10)가 바닥면에서 들렸는지 여부가 판단될 수 있다.
기울기 정보 연산 유닛(351) 및 광량 정보 연산 유닛(353) 중 적어도 하나에서 제1 일시 들림 정보가 연산되면, 연산된 제1 일시 들림 정보는 제1 시간 정보 연산 유닛(354)으로 전달된다.
제1 일시 들림 정보를 전달받은 제1 시간 정보 연산 유닛(354)은 제1 일시 들림 정보가 지속되는 시간을 연산한 후, 연산된 시간과 기 설정된 제1 시간을 비교한다. 일 실시 예에서, 제1 시간은 800 msec일 수 있다.
제1 일시 들림 정보가 제1 시간 이상으로 지속되는 경우, 제1 시간 정보 연산 유닛(354)이 들림 정보를 로봇 청소기(10)가 바닥면에서 들린 것으로 연산한다.
제1 일시 들림 정보가 제1 시간 미만으로 지속되는 경우, 제1 시간 정보 연산 유닛(354)이 들림 정보를 로봇 청소기(10)가 바닥면에서 들리지 않은 것으로 연산한다.
또한, 기울기 정보 연산 유닛(351), 제1 거리 정보 연산 유닛(352) 및 광량 정보 연산 유닛(353) 중 적어도 하나에서 제2 일시 들림 정보가 연산되면, 연산된 제2 일시 들림 정보는 제1 시간 정도 연산 유닛(354)에 전달된다.
제2 일시 들림 정보를 전달받은 제1 시간 정보 연산 유닛(354)은 제2 일시 들림 정보가 지속되는 시간을 연산한 후, 연산된 시간과 기 설정된 제2 시간을 비교한다. 일 실시 예에서, 제2 시간은 500 mec일 수 있다.
제2 일시 들림 정보가 제2 시간 이상으로 지속되는 경우, 제1 시간 정보 연산 유닛(354)이 들림 정보를 로봇 청소기(10)가 바닥면에서 들리지 않은 것으로 연산한다.
제2 일시 들림 정보가 제2 시간 미만으로 지속되는 경우, 제1 시간 정보 연산 유닛(354)이 들림 정보를 로봇 청소기(10)가 바닥면에서 들린 것으로 연산한다.
연산된 들림 정보는 작동 정보 연산 모듈(320)로 전달되어 작동 정보를 연산하는데 활용된다.
장애물 통과 정보 연산 모듈(360)은 감지 정보 수신 모듈(340)에서 수신된 각 정보를 이용하여, 로봇 청소기(10)의 일측에 장애물(1)이 있는지 여부 및 장애물(1)을 통과할 수 있는지 여부에 대한 장애물 통과 정보를 연산하도록 구성된다.
상기 장애물 통과 정보는 로봇 청소기(10)의 일측에 장애물(1)이 있는지 여부에 대한 정보 및 로봇 청소기(10)가 일측에 있는 장애물(1)을 통과할 수 있는지 여부에 대한 정보를 포함한다.
일 실시 예에서, 상기 장애물 통과 정보는 로봇 청소기(10)의 일측에 장애물(1)이 없는 것으로 연산될 수 있다. 또한, 상기 장애물 통과 정보는 로봇 청소기(10)가 일측에 있는 장애물(1)을 통과할 수 있는 것으로 연산될 수 있다. 또한, 상기 장애물 통과 정보는 로봇 청소기(10)가 일측에 있는 장애물(1)을 통과할 수 없는 것으로 연산될 수 있다.
장애물 통과 정보 연산 모듈(360)은 감지 정보 수신 모듈(340)과 통전 가능하게 연결된다. 센서부(200)에서 감지 정보 수신 모듈(340)로 전달된 각 정보는 장애물 통과 정보 연산 모듈(360)로 전달될 수 있다.
장애물 통과 정보 연산 모듈(360)은 데이터베이스부(400)와 통전 가능하게 연결된다. 장애물 통과 정보 연산 모듈(350)이 연산한 각 정보는 데이터베이스부(400)에 전달될 수 있다.
장애물 통과 정보 연산 모듈(360)이 연산한 각 정보는 작동 정보 연산 모듈(320)에 전달되어, 작동 정보를 연산하기 위해 활용된다. 장애물 통과 정보 연산 모듈(360)은 작동 정보 연산 모듈(320)과 통전 가능하게 연결된다.
장애물 통과 정보 연산 모듈(360)은 가속도 변화 정보 연산 유닛(361) 및 제2 거리 정보 연산 유닛(362)을 포함한다.
장애물 통과 정보는 로봇 청소기(10)의 가속도 변화 및 로봇 청소기(10)가 바닥면과 이격된 거리 등에 정의될 수 있다.
이하에서 설명되는 각 정보 연산 유닛(361, 362)가 들림 정보를 연산하는 과정은 일 예로서 기술된다.
가속도 변화 정보 연산 유닛(361)은 가속도 변화 정보 수신 유닛(343)에서 전달받은 가속도 변화 정보를 이용하여 장애물 존재 정보를 연산할 수 있다. 가속도 변화 정보 연산 유닛(361)은 가속도 변화 정보 수신 유닛(343)과 통전 가능하게 연결된다.
장애물 존재 정보는 로봇 청소기(10)의 주행 경로 상 일 측에 장애물(1)이 존재하는지 여부에 대한 정보로 정의될 수 있다.
가속도 변화 정보 연산 유닛(361)은 전달 받은 가속도 변화 정보를 기 설정된 기준 가속도 변화범위와 비교한다.
기 설정된 기준 가속도 변화범위는 로봇 청소기(10)가 장애물(1)에 충동된 경우 발생될 수 있는 가속도의 변화범위 일 수 있다.
일 실시 예에서, 상기 기준 가속도 변화범위는 기 설정된 제1 가속도 변화량의 분산 값 이상 기 설정된 제2 가속도 변화랑의 분산 값 이하일 수 있다.
전달된 가속도 변화 정보가 기준 가속도 변화범위 내에 포함되는 경우, 가속도 변화 정보 연산 유닛(361)이 장애물 존재 정보를 로봇 청소기(10)의 일 측에 장애물(1)이 존재하는 것으로 연산한다.
전달된 가속도 변화 정보가 기준 가속도 변화범위 내에 포함되지 않는 경우, 가속도 변화 정보 연산 유닛(361)이 장애물 존재 정보를 로봇 청소기(10)의 일 측에 장애물(1)이 존재하지 않는 것으로 연산한다.
장애물 존재 정보가 로봇 청소기(10)의 일 측에 장애물(1)이 존재하지 않는 것으로 연산된 경우, 가속도 변화 정보 연산 유닛(361)이 장애물 통과 정보를 로봇 청소기(10)의 일 측에 장애물(1)이 존재하지 않는 것으로 연산한다.
장애물 존재 정보가 로봇 청소기(10)의 일 측에 장애물(1)이 존재하는 것으로 연산된 경우, 제2 거리 정보 연산 유닛(362)이 각 거리 정보 수신 유닛(344, 345, 346)에서 각 거리 정보를 전달 받아 장애물 통과 정보를 연산한다.
구체적으로, 제2 거리 정보 연산 유닛(362)이 전달된 제1 거리 정보, 제2 거리 정보 및 제3 거리 정보를 기 설정된 기준 거리 값과 비교한다.
상기 기 설정된 기준 거리 값은 정지 상태에서 제1 거리 센서 유닛(231), 제2 거리 센서 유닛(232) 및 제3 거리 센서 유닛(233)과 바닥면 사이의 거리 값일 수 있다.
로봇 청소기(10)의 전방 측이 장애물(1)을 타고 올라간 경우, 각 거리 정보 중 적어도 하나의 거리 정보가 기준 거리 값보다 작아지고, 각 거리 정보 중 적어도 다른 하나의 거리 정보가 기준 거리 값보다 커질 수 있다.
예를 들어, 로봇 청소기(10)의 전방 측이 장애물(1)을 타고 올라간 경우, 장애물(1)이 제1 거리 센서 유닛(231)과 인접되어 제1 거리 센서 유닛(231)과 장애물(1) 사이의 거리(D1)가 기준 거리 값보다 작아질 수 있다. 또한, 나머지 제2 거리 센서 유닛(232) 및 제3 거리 센서 유닛(233)은 바닥면과 더욱 이격되어 각 센서 유닛(232, 233)과 장애물(1) 사이의 거리(D2, D3)가 기준 거리 값보다 커질 수 있다(도 25 참조). 이와 관련하여 뒤에서 상세히 설명한다.
또한, 예를 들어, 로봇 청소기(10)의 부분 중 전방 측과 좌측 사이가 장애물(1)을 타고 올라간 경우, 장애물(1)이 제2 거리 센서 유닛(232)과 인접되어 제2 거리 센서 유닛(232)과 장애물(1) 사이의 거리(D2)가 기준 거리 값보다 작아질 수 있다. 또한, 나머지 제1 거리 센서 유닛(231) 및 제3 거리 센서 유닛(233)과 장애물(1) 사이의 거리(D1, D3)가 기준 거리 값보다 커질 수 있다(도 26 참조). 이와 관련하여 뒤에서 상세히 설명한다.
제1 거리 정보, 제2 거리 정보 및 제3 거리 정보를 기 설정된 기준 거리 값과 비교한 결과가 기 설정된 조건에 해당되지 않는 경우, 제2 거리 정보 연산 유닛(362)이 장애물 통과 정보를 로봇 청소기가 일 측의 장애물(1)을 통과할 수 있는 것으로 연산한다.
상기 기 설정된 조건은 각 거리 정보 중 적어도 하나가 기준 거리 값보다 크고 각 거리 정보 중 적어도 다른 하나가 기준 거리 값보다 작은 것일 수 있다.
제1 거리 정보, 제2 거리 정보 및 제3 거리 정보를 기 설정된 기준 거리 값과 비교한 결과가 상기 기 설정된 조건에 해당되는 경우, 제2 거리 정보 연산 유닛(362)이 각 거리 정보의 최대 값과 최소 값을 비교한다.
상기 최대 값과 상기 최소 값의 차가 기 설정된 값 미만인 경우, 제2 거리 정보 연산 유닛(362)이 장애물 통과 정보를 로봇 청소기(10)가 일측의 장애물(1)을 통과할 수 있는 것으로 연산한다.
일 실시 예에서, 상기 기 설정된 값은 5 mm일 수 있다.
상기 최대 값과 상기 최소 값의 차가 기 설정된 값 이상인 경우, 제2 거리 정보 연산 유닛(362)이 장애물 통과 정보를 로봇 청소기(10)가 일측의 장애물(1)을 통과할 수 없는 것으로 연산한다.
로봇 청소기(10)는 휠(Wheel)이 아닌 맙(Mop)의 회전에 의해 이동되므로, 맙(Mop)과 바닥면 사이에 이물질이 유입됨에 따라 로봇 청소기(10)가 상하로 흔들릴 수 있다. 또한, 로봇 청소기(10)가 출발 및 정지하는 과정에서 상하 흔들림이 발생될 수 있다. 이에 의해, 각 거리 정보가 기준 거리 값보다 커지거나 작아질 수 있다.
상기 기 설정된 값을 로봇 청소기(10)의 상하 흔들림에 의해 발생될 수 있는 최대 값과 최소 값의 차의 값보다 크게 설정함으로써, 로봇 청소기(10)의 상하 유동에 의해 장애물 통과 정보가 로봇 청소기(10)가 일측의 장애물(1)을 통과할 수 없는 것으로 오판되는 것이 억제될 수 있다.
또한, 로봇 청소기(10)의 상하 흔들림에 의해 발생된 최대 값의 최소 값의 차의 값이 상기 기 설정된 값 이상으로 발생된 경우에도, 가속도 변화 정보 연산 유닛(361)에 의해 오판하는 것이 억제될 수 있다.
구체적으로, 가속도 변화 정보 연산 유닛(361)이 장애물 존재 정보를 로봇 청소기(10)의 일 측에 장애물(1)이 존재하는 것으로 연산한 경우에 제2 거리 정보 연산 유닛(362)이 연산을 시작하므로, 로봇 청소기(10)의 상하 유동에 의해 장애물 통과 정보가 로봇 청소기(10)가 일측의 장애물(1)을 통과할 수 없는 것으로 오판되는 것이 억제될 수 있다.
(4) 데이터베이스부(400)의 설명
데이터베이스부(400)는 로봇 청소기(10)의 작동과 관련된 다양한 정보를 저장한다.
데이터베이스부(400)는 정보의 입력, 출력 및 저장이 가능한 임의의 형태로 구비될 수 있따. 일 실시 예에서, 데이터베이스부(400)는 SD 카드, 마이크로 SD 카드, USB 메모리 또는 SSD 등의 형태로 구비될 수 있다.
데이터베이스부(400)는 제어 신호 입력 모듈(310)과 통전 가능하게 연결된다.
제어 신호 입력 모듈(310)에 입력된 제어 신호는 데이터베이스부(400)에 전달되어, 저장될 수 있다.
데이터베이스부(400)는 작동 정보 연산 모듈(320)과 통전 가능하게 연결된다. 작동 정보 연산 모듈(320)에서 연산된 작동 정보는 데이터베이스부(400)에 전달되어, 저장될 수 있다.
데이터베이스부(400)는 감지 정보 수신 모듈(340)을 통해 센서부(200)와 통전 가능하게 연결된다. 센서부(200)에서 감지된 각 감지 정보는 데이터베이스부(400)에 전달되어, 저장될 수 있다.
데이터베이스부(400)는 들림 정보 연산 모듈(350) 및 장애물 통과 정보 연산 모듈(360)과 각각 통전 가능하게 연결된다. 들림 정보 연산 모듈(350) 및 장애물 통과 정보 연산 모듈(360)에서 연산된 각 정보는 데이터베이스부(400)에 전달되어, 저장될 수 있다.
상기 저장된 각 정보들은, 로봇 청소기(10)의 작동 시간 및 환경 등과 매핑(mapping)되어 저장될 수 있다. 즉, 특정 시점에서 로봇 청소기(10)가 수행한 작업 및 로봇 청소기(10)가 작업을 수행한 소 영역에 대한 각 정보가 매핑되어 저장될 수 있다.
저장된 데이터들은 로봇 청소기(10)가 효율적으로 작업을 수행하기 위한 빅데이터(big data)로 활용될 수 있다. 또한, 로봇 청소기(10)는 인공지능(AI)을 통해 상기 저장된 정보를 학습하여 보다 효과적인 작업 수행이 가능해질 수 있다.
데이터베이스부(400)는 제어 신호 저장 모듈(410), 작동 정보 저장 모듈(420), 감지 정보 저장 모듈(430) 및 연산 정보 저장 모듈(440)을 포함한다. 상기 각 모듈들(410, 420, 430, 440)은 서로 통전 가능하게 연결될 수 있다.
제어 신호 저장 모듈(410)은 제어 신호 입력 모듈(310)에 입력된 제어 신호를 저장한다. 제어 신호 저장 모듈(410)은 제어 신호 입력 모듈(310)과 통전 가능하게 연결된다.
제어 신호 저장 모듈(410)에 저장된 제어 신호는 로봇 청소기(10)가 작동되는 환경 정보와 매핑되어 저장될 수 있다. 이에 따라, 제어 신호 저장 모듈(410)은 사용자가 원하는 작업에 따른 제어 신호가 특정 환경에 따라 분류되어 저장될 수 있다.
작동 정보 저장 모듈(420)은 특정 제어 신호에 따른 작동 정보를 저장할 수 있다. 작동 정보 저장 모듈(420)은 제어 신호 저장 모듈(410)과 통전 가능하게 연결된다.
작동 정보 저장 모듈(420)에 저장된 작동 정보는 로봇 청소기(10)가 작동되는 환경 정보 및 제어 신호와 매핑되어 저장될 수 있다. 이에 따라, 작동 정보 저장 모듈(420)은 로봇 청소기(10)가 수행할 작업에 대한 작동 정보가 특정 환경 및 특정 제어 신호에 따라 분류되어 저장될 수 있다.
작동 정보 저장 모듈(420)에 저장된 작동 정보는 사용자가 자동으로 작업을 수행하고자 할 때 활용될 수 있다. 즉, 로봇 청소기(10)가 작동되는 시간의 환경 또는 제어 신호가, 작동 정보가 매핑된 특정 환경 또는 특정 제어 신호와 유사할 경우, 해당 작동 정보에 따라 동력 모듈(130)이 작동될 수 있다.
들림 정보 연산 모듈(350) 및 장애물 통과 정보 연산 모듈(360)에서 연산된 정보는 연산 정보 저장 모듈(440)에 전달되어, 저장될 수 있다. 들림 정보 연산 모듈(350) 및 장애물 통과 정보 연산 모듈(360)은 연산 정보 저장 모듈(440)과 통전 가능하게 연결된다.
상술한 센서부(200)의 감지 과정, 제어부(300)의 정보 처리 및 연산 과정 및 데이터베이스부(400)에의 저장 과정은 실시간으로 진행될 수 있다. 또한, 상기 각 과정들은 연속적으로 진행될 수 있다.
3. 본 발명의 일 실시 예에 따른 로봇 청소기(10)의 제어방법의 설명
본 발명의 실시 예에 따른 로봇 청소기(10)의 제어 방법은, 로봇 청소기(10)가 바닥면으로부터 들렸는지 여부에 따라 로봇 청소기(10)의 작동을 효율적으로 제어할 수 있다.
즉, 로봇 청소기(10)가 바닥면에서 들린 경우에 로봇 청소기(10)가 정지되기 위한 작동 정보가 연산될 수 있다. 또한, 로봇 청소기(10)가 바닥면에 다시 놓여진 경우에 로봇 청소기(10)가 작동되기 위한 작동 정보가 연산될 수 있다.
상기 제어는, 사용자에 의해 제어 신호를 별도로 입력 받지 않고도 상술한 구성들에 의해 달성될 수 있다.
이하, 도 4 내지 도 10을 참조하여, 본 발명의 실시 예에 따른 로봇 청소기(10)의 제어 방법을 상세하게 설명한다.
(1) 센서부(200)가 로봇 청소기(10)의 작동 상태에 대한 정보를 감지하는 단계(S100)의 설명
센서부(200)가 로봇 청소기(10)의 작동 상태에 대한 정보를 감지하는 단계이다. 이하, 도 5를 참조하여 본 단계를 상세하게 설명한다.
먼저, 각 기울기 센서 모듈(210, 220)이 로봇 청소기(10)의 기울어진 정도에 대한 정보를 감지한다(S110). 즉, 제1 기울기 센서 모듈(210)이 로봇 청소기(10)의 제1 기울기 정보를 감지한다. 제2 기울기 센서 모듈(220)이 로봇 청소기(10)의 제2 기울기 정보를 감지한다.
제1 기울기 정보는 로봇 청소기(10)의 제1 가상선(L1)이 바닥면의 바닥선(CL1)과 이루는 경사(A1)일 수 있다. 또한, 제2 기울기 정보는 로봇 청소기(10)의 제2 가상선(L2)이 바닥면의 바닥선(CL1)과 이루는 경사(A2)일 수 있다.
일 실시 예에서, 제1 가상선(L1)과 제2 가상선(L2)은 서로 교차될 수 있다. 일 실시 예에서, 제1 가상선(L1)과 제2 가상선(L2)은 서로 직교될 수 있다.
또한, 거리 센서 모듈(230)이 바닥면과의 거리에 대한 거리 정보를 감지한다(S120). 상기 단계에서, 제1 내지 제3 거리 센서 유닛(231, 232, 233)이 각각 제1 내지 제3 거리 정보를 감지할 수 있다.
또한, 광량 센서 모듈(230)이 바닥면에서 반사되는 광량에 대한 광량 정보를 감지한다(S130).
상기 각 센서 모듈(210, 220, 230, 240)이 정보를 감지하는 순서는 변경될 수 있다. 또는, 각 센서 모듈(210, 220, 230, 240)은 동시 또는 이시에 각 정보를 감지할 수 있다.
각 센서 모듈(210, 220, 230, 240)이 감지한 각 정보는 감지 정보 수신 모듈(340)에 전달된다.
(2) 들림 정보 연산 모듈(350)이 감지된 정보를 이용하여 로봇 청소기(10)가 바닥면에서 들렸는지 여부에 대한 들림 정보를 연산하는 단계(S200)의 설명
제어부(300)가 감지된 각 정보를 전달받고, 이를 이용하여 들림 정보를 연산하는 단계이다. 이하, 도 6 내지 도 8을 참조하여 본 단계를 상세하게 설명한다.
먼저, 들림 정보 연산 모듈(350)은 감지 정보 수신 모듈(340)로부터 감지된 각 정보를 전달받는다.
들림 정보 연산 모듈(350)이 감지된 각 정보 중 어느 하나 이상을 이용하여 기 설정된 방법으로 제1 일시 들림 정보 또는 제2 일시 들림 정보를 연산한다(S210).
들림 정보 연산 모듈(350)에 의해 제1 일시 들림 정보 또는 제2 일시 들림 정보가 연산되는 과정은 다음과 같다.
먼저, 기울기 정보 연산 유닛(351)이 제1 기울기 정보와 기 설정된 제1 기준 기울기 값을 비교한다(S211).
기울기 정보 연산 유닛(351)이 제1 기울기 정보와 기 설정된 제1 기준 기울기 값을 비교하는 과정은 상술된 바와 같다.
제1 기울기 정보가 제1 기준 기울기 값 이상인 경우, 기울기 정보 연산 유닛(351)이 제1 일시 들림 정보를 연산한다(S212).
반면, 제1 기울기 정보가 제1 기준 기울기 값 미만인 경우, 기울기 정보 연산 유닛(351)이 제2 기울기 정보와 기 설정된 제2 기준 기울기 값을 비교한다(S213).
기울기 정보 연산 유닛(351)이 제2 기울기 정보와 기 설정된 제2 기준 기울기 값을 비교하는 과정은 상술된 바와 같다.
제2 기울기 정보가 제2 기준 기울기 값 이상인 경우, 기울기 정보 연산 유닛(351)이 제1 일시 들림 정보를 연산한다(S214).
반면, 제2 기울기 정보가 제2 기준 기울기 값 미만인 경우, 제1 거리 정보 연산 유닛(352)이 복수 개의 거리 정보 중 기 설정된 기준 거리 값 이상인 거리 정보의 개수를 기 설정된 기준 개수와 비교한다(S215).
제1 거리 정보 연산 유닛(352)이 복수 개의 거리 정보를 기 설정된 기준 거리 값과 비교하는 과정 및 기준 거리 값 이상인 거리 정보의 개수를 기 설정된 기준 개수와 비교하는 과정은 상술된 바와 같다.
복수 개의 거리 정보 중 기준 거리 값 이상인 거리 정보의 개수가 기준 개수 미만인 경우, 제1 거리 정보 연산 유닛(352)이 제2 일시 들림 정보를 연산한다(S216).
반면, 복수 개의 거리 정보 중 기준 거리 값 이상인 거리 정보의 개수가 기준 개수 이상인 경우, 광량 정보 연산 유닛(353)이 광량 정보를 기 설정된 기준 광량 값과 비교한다(S217).
광량 정보 연산 유닛(353)이 광량 정보를 기 설정된 기준 광량 값과 비교하는 과정은 상술된 바와 같다.
광량 정보가 기준 광량 값 이하인 경우, 광량 정보 연산 유닛(353)이 제1 일시 들림 정보를 연산한다(S218).
반면, 광량 정보가 기준 광량 값을 초과할 경우, 광량 정보 연산 유닛(353)이 제2 일시 들림 정보를 연산한다(S219).
들림 정보 연산 모듈(350)은 연산된 제1 일시 들림 정보 또는 제2 일시 들림 정보를 이용하여 기 설정된 방법으로 들림 정보를 연산한다(S220).
들림 정보 연산 모듈(350)이 기 설정된 방법으로 들림 정보를 연산하는 과정은 다음과 같다.
먼저, 기울기 정보 연산 유닛(351), 제1 거리 정보 연산 유닛(352) 및 광량 정보 연산 유닛(353)에서 제1 일시 들림 정보 또는 제2 일시 들림 정보가 연산되는 경우, 제1 일시 들림 정보 또는 제2 일시 들림 정보는 제1 시간 정보 연산 유닛(354)에 전달된다.
제1 일시 들림 정보가 연산된 경우, 제1 시간 정보 연산 유닛(354)이 제1 일시 들림 정보가 유지되는 시간을 기 설정된 제1 시간과 비교한다(S221).
제1 시간 정보 연산 유닛(354)이 제1 일시 들림 정보가 유지되는 시간을 기 설정된 제1 시간과 비교하는 과정은 상술된 바와 같다.
제1 일시 들림 정보가 유지되는 시간이 제1 시간 이상인 경우, 제1 시간 정보 연산 유닛(354)이 들림 정보를 로봇 청소기(10)가 바닥면에서 들린 것으로 연산한다(S222).
반면, 제1 일시 들림 정보가 유지되는 시간이 제1 시간 미만인 경우, 제1 시간 정보 연산 유닛(354)이 들림 정보를 로봇 청소기(10)가 바닥면에서 들리지 않은 것으로 연산한다(S223).
제2 일시 들림 정보가 연산된 경우, 제1 시간 정보 연산 유닛(354)이 제2 일시 들림 정보가 유지되는 시간과 기 설정된 제2 시간을 비교한다(S224).
제1 시간 정보 연산 유닛(354)이 제2 일시 들림 정보가 유지되는 시간과 기 설정된 제2 시간을 비교하는 과정은 상술된 바와 같다.
제2 일시 들림 정보가 유지되는 시간이 제2 시간 이상인 경우, 제1 시간 정보 연산 유닛(354)이 들림 정보를 상기 로봇 청소기가 바닥면에서 들리지 않은 것으로 연산한다(S225).
반면, 제2 일시 들림 정보가 유지되는 시간이 제2 시간 미만인 경우, 제1 시간 정보 연산 유닛(354)이 들림 정보를 로봇 청소기(10)가 바닥면에서 들린 것으로 연산한다(S226).
상기 연산 과정의 순서는 변경될 수 있다. 또한, 상기 연산 과정은 동시 또는 이시에 진행될 수 있다.
들림 정보 연산 모듈(350)이 연산한 들림 정보는 작동 정보 연산 모듈(320)에 전달된다.
(3) 작동 정보 연산 모듈(320)이 연산된 들림 정보를 이용하여 작동 정보를 연산하는 단계(S300)의 설명
작동 정보 연산 모듈(320)이 전달받은 들림 정보를 이용하여 동력 모듈(130)을 작동시키기 위한 작동 정보를 연산하는 단계이다. 이하, 도 9를 참조하여 본 단계를 상세하게 설명한다.
작동 정보 연산 모듈(320)은 들림 정보 연산 모듈(350)에서 들림 정보를 전달받는다.
또한, 구동 정보 연산 유닛(321)이 들림 정보를 이용하여 기 설정된 방법으로 구동 정보를 연산한다.
구체적으로, 들림 정보가 로봇 청소기(10)가 바닥면에서 들리지 않은 것으로 연산된 경우, 구동 정보 연산 유닛(321)이 로봇 청소기(10)가 바닥면에서 들리지 않은 것으로 연산된 들림 정보를 이용하여 구동 정보를 동력 모듈(130)을 구동시키는 것으로 연산한다(S310).
또한, 들림 정보가 로봇 청소기(10)가 바닥면에서 들린 것으로 연산된 경우, 구동 정보 연산 유닛(321)이 로봇 청소기(10)가 바닥면에서 들린 것으로 연산된 들림 정보를 이용하여 구동 정보를 동력 모듈(130)을 정지시키는 것으로 연산한다(S320).
구동 정보가 동력 모듈(130)을 구동시키는 것으로 연산된 경우, 제1 동력 모듈(131) 및 제2 동력 모듈(132)은 정지 전 회전 방향 및 속력으로 재구동될 수 있다.
구동 정보 연산 유닛(321)이 연산한 각 구동 정보는 동작 제어 모듈(330)에 전달된다.
(4) 동력 모듈(130)이 연산된 작동 정보에 따라 제어되는 단계(S400)의 설명
작동 정보 연산 모듈(320)이 연산한 작동 정보에 따라 동력 모듈(130)이 작동되는 단계이다. 이하, 도 10을 참조하여 본 단계를 상세하게 설명한다.
동력 모듈 제어 유닛(331)이 연산된 구동 정보에 따라 동력 모듈(130)을 회전시킨다(S410).
구체적으로, 구동 정보가 동력 모듈(130)을 구동시키는 것으로 연산된 경우, 동력 모듈 제어 유닛(331)이 상기 구동 정보에 따라 동력 모듈(130)을 회전시킨다.
또한, 동력 모듈 제어 유닛(331)이 연산된 구동 정보에 따라 동력 모듈(130)을 정지시킨다(S420).
구체적으로, 구동 정보가 동력 모듈(130)을 정지시키는 것으로 연산된 경우, 동력 모듈 제어 유닛(331)이 상기 구동 정보에 따라 동력 모듈(130)을 회전시킨다.
사용자가 로봇 청소기(10)를 들어올린 경우를 감지하여 구동 모듈(120)의 회전을 정지시킴으로써, 사용자에게 구동 모듈(120)에 기인한 부상이 발생되는 것이 억제될 수 있다.
4. 본 발명의 다른 실시 예에 따른 로봇 청소기(10)의 제어방법의 설명
본 발명의 다른 실시 예에 따른 로봇 청소기(10)의 제어 방법은, 로봇 청소기(10)의 주행 경로 상 일측에 장애물(1)이 있는지 여부 및 로봇 청소기(10)가 일 측의 장애물을 통과 가능한지 여부에 따라 로봇 청소기(10)의 작동을 효율적으로 제어할 수 있다.
즉, 로봇 청소기(10)가 넘어갈 수 없을 정도의 장애물(1)을 만난 경우, 로봇 청소기(10)가 장애물(1)을 회피하기 위한 작동 정보가 연산될 수 있다.
이에 의해, 로봇 청소기(10)가 넘어갈 수 없는 정도의 장애물(1)을 우연히 넘어가는 경우가 억제될 수 있다. 즉, 로봇 청소기(10)가 청소를 진행하던 영역에서 문턱과 같은 장애물(1)을 넘어간 후 다시 청소를 진행하던 영역으로 복귀하지 못하는 경우가 발생되는 것이 억제될 수 있다.
상기 제어는, 사용자에 의해 제어 신호를 별도로 입력 받지 않고도 상술한 구성들에 의해 달성될 수 있다.
이하, 도 17 내지 도 23을 참조하여, 본 발명의 다른 실시 예에 따른 로봇 청소기(10)의 제어 방법을 상세하게 설명한다.
(1) 가속도 센서 모듈(220) 및 거리 센서 모듈(230)이 로봇 청소기(10)의 작동 상태에 대한 정보를 감지하는 단계(S1000)의 설명
센서부(200)가 로봇 청소기(10)의 작동 상태에 대한 정보를 감지하는 단계이다. 이하, 도 18을 참조하여 본 단계를 상세하게 설명한다.
먼저, 가속도 센서 모듈(220)이 로봇 청소기(10)의 가속도 변화 정보를 감지한다(S1100).
또한, 거리 센서 모듈(230)이 로봇 청소기(10)가 주행하는 바닥면과 거리 센서 모듈(230) 사이의 거리 정보를 감지한다(S1100). 상기 단계에서, 제1 내지 제3 거리 센서 유닛(231, 232, 233)이 각각 제1 내지 제3 거리 정보를 감지할 수 있다.
상기 각 센서 모듈(220, 230)이 정보를 감지하는 순서는 변경될 수 있다. 또는, 각 센서 모듈(220, 230)은 동시 또는 이시에 각 정보를 감지할 수 있다.
각 센서 모듈(220, 230)이 감지한 각 정보는 감지 정보 수신 모듈(340)에 전달된다.
구체적으로, 가속도 센서 모듈(220) 이 감지한 가속도 변화 정보는 가속도 변화 정보 수신 유닛(343)에 전달된다. 거리 센서 모듈(230)이 감지한 거리 정보는 거리 정보 수신 유닛들(344, 345, 346)에 전달된다.
(2) 장애물 통과 정보 연산 모듈(360)이 감지된 정보를 이용하여 로봇 청소기(10)의 주행 방향에 통과 가능한 장애물(1)이 있는지 여부에 대한 장애물 통과 정보를 연산하는 단계(S2000)의 설명
제어부(300)가 감지된 각 정보를 전달받고, 이를 이용하여 장애물 통과 정보를 연산하는 단계이다. 이하, 도 19 내지 도 21을 참조하여 본 단계를 상세하게 설명한다.
먼저, 가속도 변화 정보 연산 유닛(343)이 감지된 가속도 변화 정보를 이용하여 로봇 청소기(10)가 주행 중인 일측에 장애물(1)이 있는지 여부에 대한 장애물 존재 정보를 연산한다(S2100).
장애물 존재 정보를 연산하는 과정은 다음과 같다.
먼저, 가속도 변화 정보 연산 유닛(361)이 감지된 가속도 변화 정보를 기 설정된 기준 가속도 변화범위와 비교한다(S2110).
감지된 가속도 변화 정보를 기 설정된 기준 가속도 변화범위와 비교하는 과정은 상술된 바와 같다.
가속도 변화 정보가 기준 가속도 변화범위에 포함되지 않는 경우, 가속도 변화 정보 연산 유닛(361)이 장애물 존재 정보를 로봇 청소기(10)의 일측에 장애물(1)이 존재하지 않는 것으로 연산한다(S2120).
반면, 가속도 변화 정보가 기준 가속도 범위에 포함되지 않는 경우, 가속도 변화 정보 연산 유닛(361)이 장애물 존재 정보를 로봇 청소기(10)의 일측에 장애물(1)이 존재하는 것으로 연산한다(S2130).
상술된 과정을 통해, 로봇 청소기(10)의 주행 중인 일측에 장애물(1)이 존재하는지 여부에 대한 정보가 연산될 수 있다.
연산된 장애물 존재 정보는 제2 거리 정보 연산 유닛(362)에 전달된다.
제2 거리 정보 연산 유닛(362)이 전달된 장애물 존재 정보를 이용하여 로봇 청소기(10)가 주행 중이 일측의 장애물(1)을 통과 가능한지 여부에 대한 장애물 통과 정보를 연산한다(S2200).
제2 거리 정보 연산 유닛(362)이 장애물 통과 정보를 연산하는 과정은 다음과 같다.
먼저, 가속도 변화 정보 연산 유닛(361)이 로봇 청소기(10)의 일측에 장애물(1)이 존재하는 것으로 장애물 존재 정보를 연산한 경우, 제2 거리 정보 연산 유닛(362)이 감지된 복수 개의 거리 정보를 기 설정된 기준 거리 값과 비교한다(S2210).
감지된 복수 개의 거리 정보를 기 설정된 기준 거리 값과 비교하는 과정은 상술된 바와 같다.
비교의 결과가 기 설정된 조건에 해당되지 않는 경우, 제2 거리 정보 연산 유닛(361)이 장애물 통과 정보를 로봇 청소기(10)가 일측의 장애물(1)을 통과할 수 있는 것으로 연산한다(S2220).
일 실시 예에서, 기 설정된 조건은 복수 개의 거리 정보 중 적어도 하나가 기준 거리 값보다 크고 복수 개의 거리 정보 중 적어도 다른 하나가 기준 거리 값보다 작은 경우일 수 있다.
비교의 결과가 기 설정된 조건에 해당되는 경우, 제2 거리 정보 연산 유닛(362)이 복수 개의 거리 정보의 최대 값과 최소 값을 비교한다(S2230).
복수 개의 거리 정보의 최대 값과 최소 값을 비교하는 과정은 상술된 바와 같다.
최대 값과 최소 값의 차가 기 설정된 값 미만인 경우, 제2 거리 정보 연산 유닛(362)이 장애물 통과 정보를 로봇 청소기(10)가 일측의 장애물(1)을 통과할 수 있는 것으로 연산한다(S2240).
반면, 최대 값과 최소 값의 차가 기 설정된 값 이상인 경우, 제2 거리 정보 연산 유닛(362)이 장애물 통과 정보를 로봇 청소기(10)가 일측의 장애물(1)을 통과할 수 없는 것으로 연산한다.
상기 연산 과정의 순서는 변경될 수 있다. 또한, 상기 연산 과정은 동시 또는 이시에 진행될 수 있다.
장애물 통과 정보 연산 모듈(360)이 연산한 장애물 통과 정보는 작동 정보 연산 모듈(320)에 전달된다.
(3) 작동 정보 연산 모듈(320)이 연산된 장애물 통과 정보를 이용하여 작동 정보를 연산하는 단계(S3000)의 설명
작동 정보 연산 모듈(320)이 전달 받은 장애물 통과 정보를 이용하여 동력 모듈(130)을 작동시키기 위한 작동 정보를 연산하는 단계이다. 이하, 도 22를 참조하여 본 단계를 상세하게 설명한다.
작동 정보 연산 모듈(320)은 장애물 통과 정보 연산 모듈(360)에서 장애물 통과 정보를 전달 받는다.
또한, 제1 조향 정보 연산 유닛(322)이 장애물 통과 정보를 이용하여 제1 동력 모듈(131)의 회전 방향에 대한 제1 조향 정보를 연산한다(S3100).
또한, 제2 조향 정보 연산 유닛(323)이 장애물 통과 정보를 이용하여 제2 동력 모듈(132)의 회전 방향에 대한 제2 조향 정보를 연산한다(S3200).
장애물 통과 정보가 로봇 청소기(10)가 일측의 장애물을 통과할 수 없는 것으로 연산되는 경우, 제1 조향 정보 연산 유닛(322) 및 제2 조향 정보 연산 유닛(323)은 로봇 청소기(10)가 좌측 회전, 우측 회전 또는 후진하여 장애물을 회피하도록 작동 정보를 연산한다.
예를 들어, 로봇 청소기(10)가 후진하여 장애물을 회피하고자 하는 경우, 제1 조향 정보 연산 유닛(322)이 제1 조향 정보를 제1 맙(121)이 시계방향으로 회전하는 것으로 연산하고, 제2 조향 정보 연산 유닛(323)이 제2 조향 정보를 제2 맙(122)이 반 시계방향으로 회전하는 것으로 연산한다.
로봇 청소기(10)가 좌측 회전, 우측 회전 또는 후진하기 위한 제1 맙(121) 및 제2 맙(122)의 회전 방향 및 회전 속도에 대해서는 앞에서 설명된 바, 이에 대한 구체적인 설명은 이에 갈음한다.
장애물 통과 정보가 로봇 청소기(10)의 일측의 장애물을 통과할 수 있는 것으로 연산되는 경우, 제1 및 제2 조향 정보 연산 유닛(322, 323)은 제1 및 제2 동력 모듈(131, 132)가 기존의 동작상태를 유지하도록 작동 정보를 연산한다.
상기 제1 조향 정보 및 제2 조향 정보의 연산 과정의 순서는 변경될 수 있다. 또한, 상기 제1 조향 정보 및 제2 조향 정보의 연산 과정의 순서는 동시 또는 이시에 진행될 수 있다.
각 조향 정보 연산 유닛(322, 323)이 연산한 제1 및 제2 조향 정보는 동작 제어 모듈(330)에 전달된다.
(4) 동력 모듈(130)이 연산된 작동 정보에 따라 제어되는 단계(S4000)의 설명
작동 정보 연산 모듈(320)이 연산한 작동 정보에 따라 동력 모듈(130)이 작동되는 단계이다. 이하, 도 23을 참조하여 본 단계를 상세하게 설명한다.
동력 모듈 제어 유닛(331)이 연산된 제1 조향 정보 및 제2 조향 정보에 따라 제1 동력 모듈(131) 및 제2 동력 모듈(132)을 회전시킨다(S4100).
즉, 동력 모듈 제어 유닛(331)은 각 조향 정보 연산 유닛(322, 323)이 연산한 제1 조향 정보 및 제2 조향 정보에 따라, 제1 동력 모듈(131) 및 제2 동력 모듈(132)을 회전시킨다.
이에 따라, 로봇 청소기(10)가 통과할 수 없는 장애물을 회피하여 청소작업을 수행할 수 있다.
(5) 본 발명의 실시 예에 따른 로봇 청소기(10)가 본 실시 예에 따라 장애물 통과 가능 여부를 감지하고, 그에 따라 제어되는 과정의 설명
이하, 도 24 내지 도 29를 참조하여 상술한 로봇 청소기(10)의 각 구성 및 로봇 청소기(10)의 제어 방법에 따라, 로봇 청소기(10)가 작동되어 작업이 수행되는 과정을 상세하게 설명한다.
도 24를 참조하면, 로봇 청소기(10)가 바닥면에서 직진하면서 청소를 수행하는 과정이 도시된다. 로봇 청소기(10)의 전진 시, 제1 맙(121)이 반 시계 방향, 제2 맙(122)이 시계 방향으로 회전된다.
로봇 청소기(10)가 주행 경로 상에 장애물(1)이 존재하는 경우, 로봇 청소기(10)가 전진되어 장애물(1)과 충돌된다.
도시되지는 않았으나, 로봇 청소기(10)는 로봇 청소기(10)의 전방측면이 장애물(1)과 충돌 시 후진되는 기능을 구비할 수 있다.
다만, 장애물(1)의 높이가 로봇 청소기(10)의 전방측면과 충돌될 정도로 높지 않은 경우, 로봇 청소기(10)의 전방 측이 장애물(1)을 타고 올라갈 수 있다.
도 25 및 도 26을 참조하면, 로봇 청소기(10)의 전방 측이 장애물(1)을 타고 올라갈 수 있다.
여기서, 로봇 청소기(10)가 장애물(1)을 완전히 타고 넘어가서 청소 영역을 이탈한 후, 다시 원래의 청소 영역을 복귀하지 못하는 문제가 발생될 수 있다. 예를 들어, 로봇 청소기(10)가 문턱을 타고 넘어가서 청소 영역을 이탈하는 문제가 발생될 수 있다.
또한, 로봇 청소기(10)가 카펫을 타고 올라가서 카펫에서 주행하는 경우, 카펫이 오염되는 문제가 발생될 수 있다.
이러한 문제점을 고려하여, 상술된 바와 같이, 장애물 통과 정보 연산 모듈(360)에 의해 로봇 청소기(10)가 주행 상 일측에 있는 장애물을 통과할 수 있는지 여부가 연산된다.
장애물 통과 정보 연산 모듈(360)에 의해 로봇 청소기(10)가 일측의 장애물을 통과할 수 없는 것으로 연산된 경우, 로봇 청소기(10)는 후진, 좌측 회전 또는 우측 회전하여 장애물(1)을 회피할 수 있다.
도 27을 참조하면, 로봇 청소기(10)가 장애물(1)과 충돌된 후 후진하는 경로가 도시된다.
재1 조향 정보 및 제2 조향 정보를 전달받은 동력 모듈 제어 유닛(331)에 의해 제1 맙(121)이 시계방향으로 회전되도록 제어되고, 제2 맙(122)이 반 시계방향으로 회전되도록 제어된다. 이에 의해, 로봇 청소기(10)가 후진되어 장애물(1)을 회피할 수 있다.
도 28을 참조하면, 로봇 청소기(10)가 장애물(1)과 충돌된 후 좌측으로 장애물(1)을 회피하는 경로가 도시된다.
제1 조향 정보 및 제2 조향 정보를 전달받은 동력 모듈 제어 유닛(331)에 의해 제1 및 제2 맙(121, 122)이 제어된다. 이에 의해, 로봇 청소기(10)가 좌측으로 회전되어 장애물(1)을 회피할 수 있다.
일 실시 예에서, 제1 맙(121) 및 제2 맙(122)은 모두 시계방향으로 회전될 수 있다. 이에 의해, 로봇 청소기(10)가 좌측으로 회전되어 장애물(1)을 회피할 수 있다.
또한, 일 실시 예에서, 제1 맙(121)이 반 시계방향으로, 제2 맙(122)이 시계방향으로 회전됨과 동시에, 제2 맙(122)의 회전 속도가 제1 맙(121)의 회전 속도보다 크도록 제어될 수 있다. 이에 의해, 로봇 청소기(10)가 좌측으로 회전되어 장애물(1)을 회피할 수 있다.
도 29를 참조하면, 로봇 청소기(10)가 장애물(1)과 충돌된 후 우측으로 장애물(1)을 회피하는 경로가 도시된다.
제1 조향 정보 및 제2 조향 정보를 전달받은 동력 모듈 제어 유닛(331)에 의해 제1 및 제2 맙(121, 122)이 제어된다. 이에 의해, 로봇 청소기(10)가 우측으로 회전되어 장애물(1)을 회피할 수 있다.
일 실시 예에서, 제1 맙(121) 및 제2 맙(122)은 모두 반 시계방향으로 회전될 수 있다. 이에 의해, 로봇 청소기(10)가 우측으로 회전되어 장애물(1)을 회피할 수 있다.
또한, 일 실시 예에서, 제1 맙(121)이 반 시계방향으로, 제2 맙(122)이 시계방향으로 회전됨과 동시에, 제1 맙(121)의 회전 속도가 제2 맙(122)의 회전 속도보다 크도록 제어될 수 있다. 이에 의해, 로봇 청소기(10)가 우측으로 회전되어 장애물(1)을 회피할 수 있다.
따라서, 로봇 청소기(10)가 청소 영역을 이탈하여 다시 복귀하지 못하거나, 카펫 등을 오염시키는 것이 억제될 수 있다.
도 30은 일 실시예에 따른 로봇 청소기의 사시도이다.
본 발명의 일 실시예에 따른 로봇 청소기는 외관을 형성하는 몸체부(100), 상기 몸체부(100)에 결합되어 상기 몸체부(100)를 이동시키고 바닥면을 청소하는 스핀 맙, 상기 몸체부의 기울기를 감지하는 기울기 센서 모듈(210, 220), 상기 몸체부의 바닥면을 향하는 일측 면과 바닥면의 거리를 감지하는 거리 센서 모듈(230), 상기 기울기 센서 모듈(210, 220)과 상기 거리 센서 모듈(230)에서 획득된 정보를 기초로 바닥면이 문턱 또는 카펫인지 판단하는 제어부(300)를 포함할 수 있다.
이하에서는 상술한 내용과 동일한 부분에 대한 설명은 생략한다.
도 30을 참조하면, 본 발명의 일 실시예에 따른 로봇 청소기는 몸체부(100)의 중심을 지나는 가상의 축(x축, y축, z축)들을 설정할 수 있다.
이때 로봇 청소기의 각 축을 기준으로 회전되는 방향이 정의될 수 있다. 도면에 도시된 바와 같이 x축을 기준으로 회전되는 방향을 Roll 방향으로 정의될 수 있고, 도면에 도시된 바와 같이 y축을 기준으로 회전되는 방향을 pitch방향으로 정의될 수 있고, 도면에 도시된 바와 같이 z축을 기준으로 회전되는 방향을 yaw방향으로 정의될 수 있다.
도 31은 장애물을 판단하는 로봇 청소기의 제어방법을 도시한 도면이다.
일 실시예에 따르면, 로봇 청소기의 제어방법은 시작점 판단단계(S1), 장애물 구분단계(S2) 및 작동단계(S3)를 포함할 수 있다.
시작점 판단단계(S1)는 로봇 청소기가 주행하는 도중 바닥면에 위치하는 장애물의 시작점을 판단하는 단계이다.
구체적으로 설명하면, 일 실시예에 따른 로봇 청소기는 바닥면에 대한 영상촬영없이도 바닥면의 재질을 판단할 수 있다. 특히 상술한 바와 같이 스핀 맙을 포함하는 로봇 청소기의 경우 바닥을 물걸레질하며 몸체부(100)가 이동된다.
바닥면에 카펫이 위치된 경우 로봇 청소기가 주행할 때 스핀 맙에 존재하는 수분으로 인해 카펫이 2차적인 오염이 될 수 있다. 스핀 맙이 깨끗한 상태여도 카펫의 모(毛)에 수분이 함유되어 곰팡이가 생기거나 악취를 풍길 수 있다.
따라서, 로봇 청소기가 카펫에 진입하지 않는 것이 바람직하다. 즉, 로봇 청소기의 카펫으로의 진입이 방지되는 것이 바람직하다. 카펫이 위치하는 부분의 바닥면은 카펫이 위치하지 않는 부분의 바닥면과 단차가 필연적으로 발생한다. 다만 문턱이 위치한 바닥면과 문턱이 위치하지 않은 바닥면과도 단차가 필연적으로 발생한다. 따라서, 로봇 청소기는 바닥면의 단차 만을 이용하여 카펫을 정확하기 어렵다.
문턱이 위치된 공간은 생활영역을 나누는 경계선이므로 문턱이 있다고 하여 로봇 청소기가 진입하지 않으면 청소영역을 골고루 청소하기 어렵다. 즉, 문턱이 위치된 부분과 카펫이 위치된 부분을 구분하는 것은 로봇 청소기의 청소에 중요하다.
즉, 상술한 문제를 해결하기에 앞서, 시작점 판단단계(S1)는 청소지역을 주행하다가 장애물을 만나면 문턱인지 카펫인지 구별하기 전 장애물의 시작점을 판단하여 특정하는 단계이다.
시작점 판단단계(S1)에 대한 구체적인 설명은 후술한다.
장애물 구분단계(S2)는 바닥면에 위치한 장애물이 문턱인지 카펫인지 판단하는 단계이다. 구체적으로, 장애물 구분단계(S2)는 상술한 기울기 센서 모듈(210, 220) 및 거리 센서 모듈(230)을 통해 수집된 정보를 기초로 장애물이 문턱인지 카펫인지 판단하는 단계이다.
작동단계(S3)는 로봇 청소기가 상기 시작점 판단단계(S1) 및 장애물 구분단계(S2)를 거치면서 획득한 장애물에 대한 정보를 기초로 로봇 청소기가 주행되는 단계이다.
구체적으로 바닥면에 위치한 장애물이 카펫인 경우 로봇 청소기가 카펫으로 이동되는 것이 방지되도록 작동되고, 바닥면에 위치한 장애물이 문턱인 경우 청소를 계속 수행한다.
도 32는 장애물의 시작점을 판단하는 로봇 청소기의 제어방법을 구체적으로 도시한 도면이다.
도 32를 참조하면 시작점 판단단계(S1)의 구체적인 내용을 파악할 수 있다.
시작점 판단단계(S1)는 조건설정단계(S11)를 포함할 수 있다.
조건설정단계(S11)는 로봇 청소기가 주행 중 장애물의 시작점을 결정하는 기준을 설정하는 단계이다.
조건설정단계(S11)는 제1 기울기 조건 및 제1 거리조건을 설정할 수 있다. 제1 기울기 조건과 제1 거리조건을 만족하면 장애물의 시작점으로 판단할 수 있다. 물론 제1 기울기 조건 및 제1 거리조건을 만족하는지 여부 및 장애물의 시작점으로 판단하는 것은 제어부(300)에서 수행될 수 있다.
조건설정단계(S11)는 1회만 수행될 수 있다. 즉, 로봇 청소기가 주행을 할때마다 조건설정단계(S11)가 수행되는 것이 아니라 사용자에 의한 초기화 또는 최초 주행등과 같은 경우에만 수행될 수 있다.
장애물의 시작점이 판단된 뒤 다시 조건을 설정할 필요성이 적기 때문이다.
제1 기울기 조건은 기울기 센서 모듈(210, 220)이 Roll축 또는 Pitch축에서 일정 크기(각도)로 기울어져 있는 것으로 감지한 경우로 설정될 수 있다.
제1 거리조건은 거리 센서 모듈(230)에서 측정된 바닥면과의 거리값의 분산값이 기 설정된 크기 이상인 경우로 설정될 수 있다.
제1 기울기 조건을 만족하는지 여부를 판단(S12)하여 제1 기울기 조건을 만족하면, 제1 거리 조건을 만족하는지 여부를 판단(S13)하여 제1 기울기 조건을 만족하면, 장애물의 시작지점이 저장(S14)될 수 있다.
도면에는 제1 기울기 조건을 제1 거리조건보다 먼저 판단하는 것으로 도시되어 있으나 제1 기울기 조건 및 제1 거리 조건의 판단순서는 달라질 수 있다.
제1 기울기 조건 및 제1 거리조건 중 적어도 하나가 충족되지 않으면 별도로 해당 영역의 위치정보를 저장하지 않고 지속적으로 청소가 수행될 수 있다(S3).
이하에서는 제1 기울기 조건에 대해서 구체적으로 설명한다.
로봇 청소기가 주행을 하던 도중 문턱이나 카펫을 만나면 경계선에서 단차로 인해 로봇 청소기가 일측으로 기울어질 수 있다. 이때 로봇 청소기가 주행하는 방향에 따라 기울이지는 방향이 달라질 수 있다(도 25 및 도 26 참조).
따라서, Roll축 또는 Pitch축을 기준으로 회전될 때 기 결정된 크기(각도)이상 기울어지는지 판단하여 로봇 청소기가 단차진 지형으로 이동되었는지 판단할 수 있다.
마찬가지로, 거리 센서 모듈(230)에서 로봇 청소기의 일면 중 바닥면을 마주하는 면과 바닥면과의 거리가 커짐에 따라 단차진 지형으로 이동되었는지 판단할 수 있다. 다만, 로봇 청소기가 주행하는 바닥면은 항상 평평한 상태로 유지되는 것은 아니므로 분산값을 통해 정확한 장애물의 시작지점을 판단할 수 있다.
즉, 제1 기울기 조건과 제1 거리 조건을 모두 만족하는 경우 장애물의 시작위치를 판단할 수 있다.
도 33은 로봇 청소기가 장애물을 문턱 또는 카펫으로 판단하는 제어방법을 나타낸 도면이다.
도 33을 참조하면, 로봇 청소기가 장애물의 종류를 구분하는 방식을 파악할 수 있다.
시작점 판단단계(S1)에서 제1 기울기 조건과 제1 거리 조건을 만족하는 경우 장애물의 시작점이 저장(S14)된다. 이후, 장애물이 카펫인지 문턱인지 단순한 노이즈인지 판단하는 장애물 구분단계(S2)가 수행된다.
구체적으로 시작점 판단단계(S1)가 종료된 후 기 설정된 시간이 초과하였는지 여부를 파악할 수 있다(S21).
로봇 청소기가 주행 중 장애물의 시작점을 지나면, 로봇 청소기는 장애물이 위치한 바닥면에 안착될 수 있다. 아직 장애물의 종류가 판단되지 않았으나 만약 장애물이 카펫이라면 최대한 빨리 로봇 청소기가 카펫에서 이탈되는 것이 바람직하다.
따라서, 로봇 청소기가 장애물의 시작점을 지난 후 기 설정된 시간이 초과하지 않으면 제2 기울기 조건을 만족하는지 여부(S24)와 제2 거리 조건을 만족하는 지 여부(S25)를 판단하여 제2 기울기 조건 및 제2 거리조건이 만족되면 해당 장애물을 문턱으로 판단하여 청소를 연속적으로 수행할 수 있다.
제2 기울기 조건 및 제2 거리조건 중 하나 이상이 만족되지 않는 경우, 카펫으로 판단하여 청소를 일시적으로 중지하고 해당 영역을 벗어난 후 다른 영역을 청소할 수 있다.
제2 기울기 조건이란 기울기 센서 모듈(210, 220)이 상기 제1 기울기 조건과 반대방향으로 상기 제1 기울기 조건과 같은 크기 이상으로 기울어지는 것이다.
제2 거리조건이란 거리 센서 모듈(230)에서 측정된 거리값의 분산값이 기 설정된 크기 이상인 경우를 의미할 수 있다.
즉, 제2 기울기 조건은 제1 기울기 조건과 같은 크기의 반대방향으로 로봇 청소기가 기울어?병쩝? 여부를 판단하는 것이다. 제2 거리조건은 제1 거리조건과 동일할 수 있다.
일례로 제1 기울기 조건은 Roll 축(또는 Roll 방향측) 또는 Pitch축(또는 Pitch 방향)으로 1.5도 기울어 진 것으로 정의하면, 제2 기울기 조건은 제1 기울기 조건에서 로봇 청소기가 기울어지는 방향의 반대방향 Roll 축(또는 Roll 방향측) 또는 Pitch축(또는 Pitch 방향)으로 1.5도 기울어 진 것을 의미한다.
제2 거리조건에서 바닥면과 몸체부(100)와의 거리의 분산값은 로봇 청소기의 작동주기에 대응되어 계산될 수 있다.
장애물이 문턱으로 판단되면 청소가 연속적으로 수행될 수 있다. 또한, 시작점 판단단계(S1)에서 저장된 장애물의 시작점 위치정보가 삭제될 수 있다. 문턱의 경우 2차 오염 등의 위험을 고려하지 않아도 되기 때문이다. 이는 로봇 청소기의 맵핑단계와는 별도로 수행될 수 있다.
반대로 기 설정된 시간이 초과되는 경우 해당 장애물을 카펫으로 판단할 수 있다(S22). 카펫으로 판단된 장애물은 스핀 맙을 구비한 로봇 청소기의 청소가 수행되는 경우 2차 오염이 발생할 수 있다.
따라서, 로봇 청소기는 해당 장애물의 위치정보를 저장하도록 위치정보를 데이터베이스부(400)에 전달할 수 있다. 위치정보가 저장되면 추후 청소 수행시 로봇 청소기가 해당 영역의 청소를 수행할 때 장애물의 종류를 다시 판단할 필요가 없기 때문이다.
시간을 기준으로 문턱과 카펫을 구별하는 것은 문턱의 형상이 다양할 수 있기 때문이다. 이뿐만 아니라 문턱의 형상이 동일하더라도 로봇 청소기의 진입각도에 따라 기울기나 거리는 다르게 측정될 수 있기 때문이다.
또한, 장애물이 카펫이라면 로봇 청소기의 후방측이 들리는 경우가 발생하지 않기 때문에 제2 기울기 조건과 제2 거리조건을 판단하여 문턱과 카펫을 구별할 수 있다.
이상 본 발명의 바람직한 실시 예를 참조하여 설명하였지만, 당 업계에서 통상의 지식을 가진 자라면 이하의 청구범위에 기재된 본 발명의 사상 및 영역을 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
10: 로봇 청소기
100: 몸체부
110: 하우징
120: 구동 모듈
121: 제1 맙
122: 제2 맙
130: 동력 모듈
131: 제1 동력 모듈
132: 제2 동력 모듈
200: 센서부
210: 기울기 센서 모듈
211: 제1 기울기 센서 유닛
212: 제2 기울기 센서 유닛
220: 가속도 센서 모듈
230: 거리 센서 모듈
231: 제1 거리 센서 유닛
232: 제2 거리 센서 유닛
233: 제3 거리 센서 유닛
240: 광량 센서 모듈
300: 제어부
310: 제어 신호 입력 모듈
320: 작동 정보 연산 모듈
321: 구동 정보 연산 유닛
322: 제1 조향 정보 연산 유닛
323: 제2 조향 정보 연산 유닛
330: 동작 제어 모듈
331: 동력 모듈 제어 유닛
340: 감지 정보 수신 모듈
341: 제1 기울기 정보 수신 유닛
342: 제2 기울기 정보 수신 유닛
343: 가속도 변화 정보 수신 유닛
344: 제1 거리 정보 수신 유닛
345: 제2 거리 정보 수신 유닛
346: 제3 거리 정보 수신 유닛
347: 광량 정보 수신 유닛
350: 들림 정보 연산 모듈
351: 기울기 정보 연산 유닛
352: 제1 거리 정보 연산 유닛
353: 광량 정보 연산 유닛
354: 제1 시간 정보 연산 유닛
400: 데이터베이스부
410: 제어 신호 저장 모듈
420: 작동 정보 저장 모듈
430: 감지 정보 저장 모듈
431: 기울기 정보 저장 유닛
432: 가속도 변화 정보 저장 유닛
433: 거리 정보 저장 유닛
434: 광량 정보 저장 유닛
440: 연산 정보 저장 모듈
441: 들림 정보 저장 유닛
442: 문턱 정보 저장 유닛

Claims (29)

  1. 스핀 맙이 회전 가능하게 결합되는 몸체부;
    상기 스핀 맙과 연결되고, 작동 정보에 따라 회전되어 상기 스핀 맙을 회전시키는 동력 모듈;
    상기 몸체부에 구비되어, 상기 몸체부의 주행에 대한 정보를 감지하도록 구성되는 센서부; 및
    상기 작동 정보를 연산하고, 상기 동력 모듈과 통전 가능하게 연결되어 연산된 상기 작동 정보를 전달하며, 상기 센서부와 통전 가능하게 연결되어 감지된 상기 정보를 전달받도록 구성되는 제어부를 포함하고,
    상기 센서부는,
    상기 몸체부의 가속도 변화에 대한 가속도 정보를 감지하도록 구성되는 가속도 센서 모듈; 및
    상기 몸체부가 주행하는 바닥면과의 거리 정보를 감지하도록 구성되는 거리 센서 모듈을 포함하며,
    상기 제어부는,
    상기 가속도 정보 및 상기 거리 정보 중 적어도 하나를 이용하여 상기 작동 정보를 연산하는,
    로봇 청소기.
  2. 제1항에 있어서,
    상기 제어부는,
    상기 가속도 정보를 이용하여, 상기 몸체부의 일측에 장애물이 있는지 여부에 대한 장애물 존재 정보를 연산하는,
    로봇 청소기.
  3. 제2항에 있어서,
    상기 제어부는,
    상기 장애물 존재 정보를 이용하여, 상기 몸체부가 일측의 장애물을 통과할 수 있는지 여부에 대한 장애물 통과 정보를 연산하고,
    상기 장애물 존재 정보 및 상기 장애물 통과 정보 중 적어도 하나를 이용하여 상기 작동 정보를 연산하는,
    로봇 청소기.
  4. 제3항에 있어서,
    상기 스핀 맙은,
    상기 몸체부의 일 측에 위치되는 제1 스핀 맙; 및
    상기 몸체부의 타 측에 위치되는 제2 스핀 맙을 포함하며,
    상기 동력 모듈은,
    상기 제1 스핀 맙과 연결되는 제1 동력 모듈; 및
    상기 제2 스핀 맙과 연결되는 제2 동력 모듈을 포함하고,
    상기 작동 정보는,
    상기 제1 동력 모듈의 회전 방향을 제어하는 제1 조향 정보; 및
    상기 제2 동력 모듈의 회전 방향를 제어하는 제2 조향 정보를 포함하는,
    로봇 청소기.
  5. 제4항에 있어서,
    상기 제어부는,
    상기 제1 동력 모듈 및 상기 제2 동력 모듈의 회전 방향이 서로 동일한 방향 또는 서로 다른 방향으로 교번적으로 변경되도록, 상기 제1 조향 정보 및 상기 제2 조향 정보를 연산하는,
    로봇 청소기.
  6. (a) 가속도 센서 모듈 및 거리 센서 모듈이 로봇 청소기의 작동 상태에 대한 정보를 감지하는 단계;
    (b) 장애물 정보 연산 모듈이 감지된 상기 정보를 이용하여 상기 로봇 청소기의 주행 방향에 통과 가능한 장애물이 있는지 여부에 대한 장애물 통과 정보를 연산하는 단계;
    (c) 작동 정보 연산 모듈이 연산된 상기 장애물 통과 정보를 이용하여 작동 정보를 연산하는 단계; 및
    (d) 동력 모듈이 연산된 상기 작동 정보에 따라 제어되는 단계를 포함하는,
    로봇 청소기의 제어 방법.
  7. 제6항에 있어서,
    상기 (a) 단계는,
    (a1) 상기 가속도 센서 모듈이 상기 로봇 청소기의 가속도 변화 정보를 감지하는 단계; 및
    (a2) 상기 거리 센서 모듈이 상기 로봇 청소기가 주행하는 바닥면과 상기 거리 센서 모듈 사이의 거리 정보를 감지하는 단계;
    로봇 청소기의 제어 방법.
  8. 제7항에 있어서,
    상기 (b) 단계는,
    (b1) 가속도 변화 정보 연산 유닛이 감지된 가속도 변화 정보를 이용하여 상기 로봇 청소기가 주행 중인 상기 일측에 장애물이 있는지 여부에 대한 장애물 존재 정보를 연산하는 단계; 및
    (b2) 거리 정보 연산 유닛이 연산된 상기 장애물 존재 정보를 이용하여 상기 로봇 청소기가 주행 중인 상기 일측의 상기 장애물을 통과 가능한지 여부에 대한 장애물 통과 정보를 연산하는 단계를 포함하는,
    로봇 청소기의 제어 방법.
  9. 제8항에 있어서,
    상기 (b1) 단계는,
    (b11) 상기 가속도 변화 정보 연산 유닛이 감지된 상기 가속도 변화 정보를 기 설정된 기준 가속도 변화범위와 비교하는 단계;
    (b12) 상기 가속도 변화 정보가 상기 기준 가속도 변화범위에 포함되지 않는 경우, 상기 가속도 변화 정보 연산 유닛이 상기 장애물 존재 정보를 상기 로봇 청소기의 일측에 장애물이 존재하지 않는 것으로 연산하는 단계; 및
    (b13) 상기 가속도 변화 정보가 기준 가속도 범위에 포함되는 경우, 상기 가속도 변화 정보 연산 유닛이 상기 장애물 존재 정보를 상기 로봇 청소기의 일측에 장애물이 존재하는 것으로 연산하는 단계를 포함하는,
    로봇 청소기의 제어 방법.
  10. 제8항에 있어서,
    상기 거리 센서 모듈은 복수 개로 구비되고, 복수 개의 상기 거리 센서 모듈은 각각 거리 정보를 감지하고,
    상기 (b2) 단계는,
    (b21) 상기 가속도 변화 정보 연산 유닛이 상기 로봇 청소기의 일측에 상기 장애물이 존재하는 것으로 상기 장애물 존재 정보를 연산한 경우, 상기 거리 정보 연산 유닛이 감지된 복수 개의 상기 거리 정보를 기 설정된 기준 거리 값과 비교하는 단계; 및
    (b22) 상기 비교의 결과가 기 설정된 조건에 해당되지 않는 경우, 상기 거리 정보 연산 유닛이 상기 장애물 통과 정보를 상기 로봇 청소기가 일측의 장애물을 통과할 수 있는 것으로 연산하는 단계를 포함하며,
    상기 기 설정된 조건은,
    복수 개의 상기 거리 정보 중 적어도 하나가 상기 기준 거리 값보다 크고 복수 개의 상기 거리 정보 중 적어도 다른 하나가 상기 기준 거리 값보다 작은 경우인,
    로봇 청소기의 제어 방법.
  11. 제10항에 있어서,
    상기 (b2) 단계는,
    (b21) 단계 이후에,
    (b23) 상기 비교의 결과가 상기 기 설정된 조건에 해당되는 경우, 상기 거리 정보 연산 유닛이 복수 개의 상기 거리 정보의 최대값과 최소값을 비교하는 단계; 및
    (b24) 상기 최대값과 상기 최소값의 차가 기 설정된 값 미만인 경우, 상기 거리 정보 연산 유닛이 상기 장애물 통과 정보를 상기 로봇 청소기가 일측의 장애물을 통과할 수 있는 것으로 연산하는 단계를 포함하는,
    로봇 청소기의 제어 방법.
  12. 제11항에 있어서,
    상기 (b2) 단계는,
    상기 (b23) 단계 이후에,
    (b25) 상기 최대값과 상기 최소값의 차가 기 설정된 값 이상인 경우, 상기 거리 정보 연산 유닛이 상기 장애물 통과 정보를 상기 로봇 청소기가 일측의 장애물을 통과할 수 없는 것으로 연산하는 단계를 포함하는,
    로봇 청소기의 제어 방법.
  13. 제6항에 있어서,
    상기 동력 모듈은 제1 동력 모듈 및 제2 동력 모듈을 포함하고,
    상기 작동 정보 연산 모듈은 제1 조향 정보 연산 유닛 및 제2 조향 정보 연산 유닛을 포함하며,
    상기 (c) 단계는,
    (c1) 제1 조향 정보 연산 유닛이 상기 장애물 통과 정보를 이용하여 상기 제1 동력 모듈의 회전 방향에 대한 제1 조향 정보를 연산하는 단계; 및
    (c2) 제2 조향 정보 연산 유닛이 상기 장애물 통과 정보를 이용하여 상기 제2 동력 모듈의 회전 방향에 대한 제2 조향 정보를 연산하는 단계를 포함하는,
    로봇 청소기의 제어 방법.
  14. 제13항에 있어서,
    상기 (a) 단계에서, 상기 제1 동력 모듈이 일 방향으로 회전되며, 상기 제2 동력 모듈이 상기 일 방향의 반대방향인 타 방향으로 회전되고,
    상기 장애물 통과 정보가 상기 로봇 청소기가 일측의 장애물을 통과할 수 없는 것으로 연산된 경우,
    상기 제1 조향 정보 연산 유닛은, 상기 제1 동력 모듈을 상기 타 방향으로 회전시키는 제1 조향 정보를 연산하는,
    로봇 청소기의 제어 방법.
  15. 제13항에 있어서,
    상기 (a) 단계에서, 상기 제1 동력 모듈이 일 방향으로 회전되며, 상기 제2 동력 모듈이 상기 일 방향의 반대방향인 타 방향으로 회전되고,
    상기 장애물 통과 정보가 상기 로봇 청소기가 일측의 장애물을 통과할 수 없는 것으로 연산된 경우,
    상기 제2 조향 정보 연산 유닛은, 상기 제2 동력 모듈을 상기 일 방향으로 회전시키는 제1 조향 정보를 연산하는,
    로봇 청소기의 제어 방법.
  16. 제13항에 있어서,
    상기 (a) 단계에서, 상기 제1 동력 모듈이 일 방향으로 회전되며, 상기 제2 동력 모듈이 상기 일 방향의 반대방향인 타 방향으로 회전되고,
    상기 장애물 통과 정보가 상기 로봇 청소기가 일측의 장애물을 통과할 수 없는 것으로 연산된 경우,
    상기 제1 조향 정보 연산 유닛은, 상기 제1 동력 모듈을 상기 타 방향으로 회전시키는 제1 조향 정보를 연산하고,
    상기 제2 조향 정보 연산 유닛은, 상기 제2 동력 모듈을 상기 일 방향으로 회전시키는 제2 조향 정보를 연산하는,
    로봇 청소기의 제어 방법.
  17. 제13항에 있어서,
    상기 (d) 단계는,
    (d1) 동력 모듈 제어 유닛이 연산된 상기 제1 조향 정보 및 상기 제2 조향 정보에 따라 상기 제1 동력 모듈 및 상기 제2 동력 모듈을 회전시키는 단계를 포함하는,
    로봇 청소기의 제어 방법.
  18. 외관을 형성하는 몸체부, 상기 몸체부에 결합되어 상기 몸체부를 이동시키고 바닥면을 청소하는 스핀 맙, 상기 몸체부의 기울기를 감지하는 기울기 센서 모듈, 상기 몸체부의 바닥면을 향하는 일측 면과 바닥면의 거리를 감지하는 거리 센서 모듈, 상기 기울기 센서 모듈과 상기 거리 센서 모듈에서 획득된 정보를 기초로 바닥면이 문턱 또는 카펫인지 판단하는 제어부를 포함하는 로봇 청소기의 제어방법에 있어서,
    바닥면에 위치하는 장애물의 시작점을 판단하는 시작점 판단단계;
    상기 기울기 센서 모듈 및 상기 거리 센서 모듈에서 수집된 정보를 기초로 바닥면에 위치한 장애물이 문턱인지 카펫인지 판단하는 장애물 구분단계; 및
    바닥면에 위치한 장애물이 카펫인 경우 로봇 청소기가 카펫으로 이동되는 것이 방지되도록 작동되는 작동단계;를 포함하는 로봇 청소기의 제어방법.
  19. 제18항에 있어서,
    상기 시작점 판단단계는 상기 기울기 센서 모듈이 Roll 또는 Pitch 방향으로 일정 크기 이상으로 기울어진 것으로 감지하고, 상기 거리 센서 모듈에서 측정된 거리값의 분산값이 기 설정된 크기 이상인 경우 장애물의 시작점으로 판단하는 로봇 청소기의 제어방법.
  20. 제19항에 있어서,
    상기 시작점 판단단계는 상기 기울기 센서 모듈이 Roll 또는 Pitch 방향으로 일정 크기 이상으로 기울어진 것을 의미하는 제1 기울기 조건 및 상기 거리 센서 모듈에서 측정된 거리값의 분산값이 기 설정된 크기 이상인 경우를 의미하는 제1 거리조건을 설정하는 조건설정단계;를 포함하는 로봇 청소기의 제어방법.
  21. 제20항에 있어서,
    상기 제1 기울기 조건 및 상기 제1 거리조건이 만족되면 장애물의 시작점을 저장하는 시작점 저장단계;를 포함하는 로봇 청소기의 제어방법.
  22. 제21항에 있어서,
    상기 시작점 판단단계에서 장애물의 시작점이 판단되면 로봇 청소기가 시작점을 지난 후 기 설정된 시간을 초과하는지 판단하는 단계를 포함하는 로봇 청소기의 제어방법.
  23. 제22항에 있어서,
    상기 위치정보는 정보가 저장되는 데이터베이스에 전달하는 로봇 청소기의 제어방법.
  24. 제22항에 있어서,
    기 결정된 시간을 초과하지 않는 경우,
    상기 기울기 센서 모듈이 상기 제1 기울기 조건과 반대방향으로 상기 제1 기울기 조건과 같은 크기 이상으로 기울어지는 것을 의미하는 제2 기울기 조건의 만족여부를 판단하는 제2 기울기 조건 판단단계; 및
    상기 거리 센서 모듈에서 측정된 거리값의 분산값이 기 설정된 크기 이상인 경우를 의미하는 제2 거리조건의 만족여부를 판단하는 제2 거리조건 판단단계를 포함하는 로봇 청소기의 제어방법.
  25. 제24항에 있어서,
    상기 제2 기울기 조건 판단단계 및 상기 제2 거리조건 판단단계에서 상기 제2 기울기 조건 및 상기 제2 거리조건이 만족된다고 판단되면 상기 장애물을 문턱으로 판단하는 로봇 청소기의 제어방법.
  26. 제25항에 있어서,
    상기 장애물이 문턱으로 판단되면 상기 장애물의 시작점의 위치정보를 삭제하는 작동단계가 수행되는 로봇 청소기의 제어방법.
  27. 외관을 형성하는 몸체부;
    상기 몸체부에 결합되어 상기 몸체부를 이동시키고 바닥면을 청소하는 스핀 맙;
    상기 몸체부의 기울기를 감지하는 기울기 센서 모듈;
    상기 몸체부의 바닥면을 향하는 일측 면과 바닥면의 거리를 감지하는 거리 센서 모듈;
    상기 기울기 센서 모듈과 상기 거리 센서 모듈에서 획득된 정보를 기초로 바닥면이 문턱 또는 카펫인지 판단하는 제어부;를 포함하고,
    상기 기울기 센서 모듈 및 상기 거리 센서 모듈에서 수집된 정보를 기초로 바닥면에 위치한 장애물이 문턱인지 카펫인지 판단하고,
    바닥면에 위치한 장애물이 카펫인 경우 로봇 청소기가 카펫으로 이동되는 것이 방지되는 로봇 청소기.
  28. 제27항에 있어서,
    상기 시작점 판단단계는 상기 기울기 센서 모듈이 Roll 또는 Pitch 방향으로 일정 크기 이상으로 기울어진 것으로 감지하고, 상기 거리 센서 모듈에서 측정된 거리값의 분산값이 기 설정된 크기 이상인 경우 장애물의 시작점으로 판단하고,
    기결정된 시간이 초과하면 카펫으로 판단하여 카펫으로의 진입이 방지되는 로봇청소기.
  29. 제28항에 있어서,
    장애물의 시작점을 판단한 후 기 결정된 시간이 초과하지 않을 때,
    상기 기울기 센서 모듈이 상기 제1 기울기 조건과 반대방향으로 상기 제1 기울기 조건과 같은 크기 이상으로 기울어지는 것을 의미하는 제2 기울기 조건을 만족하고, 상기 거리 센서 모듈에서 측정된 거리값의 분산값이 기 설정된 크기 이상인 경우를 의미하는 제2 거리조건을 만족하면, 장애물을 문턱으로 판단하는 로봇 청소기.
KR1020200124691A 2020-02-06 2020-09-25 로봇 청소기 및 그 제어 방법 KR20210100518A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200014467 2020-02-06
KR20200014467 2020-02-06

Publications (1)

Publication Number Publication Date
KR20210100518A true KR20210100518A (ko) 2021-08-17

Family

ID=77200732

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200124691A KR20210100518A (ko) 2020-02-06 2020-09-25 로봇 청소기 및 그 제어 방법

Country Status (4)

Country Link
US (1) US20230053480A1 (ko)
EP (1) EP4101362A4 (ko)
KR (1) KR20210100518A (ko)
WO (1) WO2021157833A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023140481A1 (ko) * 2022-01-20 2023-07-27 삼성전자 주식회사 이동 로봇 및 그 제어 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100926322B1 (ko) 2008-03-07 2009-11-12 (주)경민메카트로닉스 로봇 청소기

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1548532A4 (en) * 2002-10-01 2007-08-08 Fujitsu Ltd ROBOT
US7599758B2 (en) * 2003-09-19 2009-10-06 Royal Appliance Mfg. Co. Sensors and associated methods for controlling a vacuum cleaner
JP2005218560A (ja) * 2004-02-04 2005-08-18 Funai Electric Co Ltd 自走式掃除機
EP3311722B1 (en) * 2008-04-24 2019-07-24 iRobot Corporation Application of localization, positioning & navigation systems for robotic enabled mobile products
KR101619076B1 (ko) * 2009-08-25 2016-05-10 삼성전자 주식회사 모바일 플랫폼의 동적 물체 검출 및 추적 방법
WO2014047557A1 (en) * 2012-09-21 2014-03-27 Irobot Corporation Proximity sensing on mobile robots
KR102072387B1 (ko) * 2014-03-20 2020-02-03 삼성전자주식회사 로봇 청소기 및 로봇 청소기의 제어방법
EP3159123A4 (en) * 2014-06-17 2018-08-08 Yujin Robot Co., Ltd. Device for controlling driving of mobile robot having wide-angle cameras mounted thereon, and method therefor
KR101602790B1 (ko) 2015-02-26 2016-03-11 에브리봇 주식회사 로봇 청소기 및 그의 제어 방법
KR101623871B1 (ko) * 2015-07-02 2016-05-24 주식회사 파인로보틱스 로봇 청소기
US9840256B1 (en) * 2015-12-16 2017-12-12 Uber Technologies, Inc. Predictive sensor array configuration system for an autonomous vehicle
KR101903022B1 (ko) * 2016-07-14 2018-10-01 엘지전자 주식회사 로봇 청소기
US11300958B2 (en) * 2017-07-13 2022-04-12 Waymo Llc Sensor adjustment based on vehicle motion
US20190033869A1 (en) * 2017-07-25 2019-01-31 Neato Robotics, Inc. Robot with rotational/translation movement
GB2607257B (en) * 2017-12-22 2023-03-29 Bissell Inc Robotic cleaner with sweeper and rotating dusting pads
KR102045003B1 (ko) * 2018-01-25 2019-11-14 엘지전자 주식회사 로봇청소기의 제어방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100926322B1 (ko) 2008-03-07 2009-11-12 (주)경민메카트로닉스 로봇 청소기

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023140481A1 (ko) * 2022-01-20 2023-07-27 삼성전자 주식회사 이동 로봇 및 그 제어 방법

Also Published As

Publication number Publication date
EP4101362A1 (en) 2022-12-14
US20230053480A1 (en) 2023-02-23
EP4101362A4 (en) 2024-03-06
WO2021157833A1 (ko) 2021-08-12

Similar Documents

Publication Publication Date Title
US11547255B2 (en) Cleaning robot
EP3082543B1 (en) Autonomous mobile robot
AU2013317738B2 (en) Proximity sensing on mobile robots
KR20190035376A (ko) 인공지능을 이용한 이동 로봇 및 이동 로봇의 제어방법
CN103534659A (zh) 覆盖机器人导航
KR20190030349A (ko) 로봇청소기 및 그 제어방법
US20220257074A1 (en) Mobile robot using artificial intelligence and controlling method thereof
KR102637851B1 (ko) 청소 로봇
CN112423639B (zh) 自主行走式吸尘器
KR20180074537A (ko) 청소 로봇
KR20210100518A (ko) 로봇 청소기 및 그 제어 방법
KR102303546B1 (ko) 로봇 청소기 및 그 제어 방법
WO2020017235A1 (ja) 自走式掃除機
KR102423497B1 (ko) 로봇 청소기의 제어 방법
WO2020017239A1 (ja) 自走式掃除機及び自走式掃除機の制御方法
WO2020059292A1 (ja) 自律走行掃除機
AU2016225774B2 (en) Proximity sensing on mobile robots
JP7325058B2 (ja) 自走式掃除機
WO2020017234A1 (ja) 自走式掃除機
KR20230172347A (ko) 로봇 청소기 및 그 제어 방법
AU2015201973A1 (en) Proximity sensing on mobile robots