KR102301758B1 - 자율 주행 가능한 이동 로봇 및 이의 주행 제어 방법 - Google Patents

자율 주행 가능한 이동 로봇 및 이의 주행 제어 방법 Download PDF

Info

Publication number
KR102301758B1
KR102301758B1 KR1020190120981A KR20190120981A KR102301758B1 KR 102301758 B1 KR102301758 B1 KR 102301758B1 KR 1020190120981 A KR1020190120981 A KR 1020190120981A KR 20190120981 A KR20190120981 A KR 20190120981A KR 102301758 B1 KR102301758 B1 KR 102301758B1
Authority
KR
South Korea
Prior art keywords
mobile robot
driving
driving mode
mode
obstacle
Prior art date
Application number
KR1020190120981A
Other languages
English (en)
Other versions
KR20200070087A (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 EP19893670.0A priority Critical patent/EP3892426A4/en
Priority to PCT/KR2019/017186 priority patent/WO2020116986A1/ko
Priority to US17/311,358 priority patent/US20220022715A1/en
Publication of KR20200070087A publication Critical patent/KR20200070087A/ko
Application granted granted Critical
Publication of KR102301758B1 publication Critical patent/KR102301758B1/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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • 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
    • 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/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2805Parameters or conditions being sensed
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2836Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means characterised by the parts which are controlled
    • A47L9/2852Elements for displacement of the vacuum cleaner or the accessories therefor, e.g. wheels, casters or nozzles
    • 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/2868Arrangements for power supply of vacuum cleaners or the accessories thereof
    • A47L9/2873Docking units or charging stations
    • 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
    • B25J19/021Optical sensing 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
    • 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
    • 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/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0219Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
    • 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
    • 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/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
    • 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/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • 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

Landscapes

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

Abstract

본 발명에 따르면, 이동 로봇의 주변에 위치하는 장애물을 추종하여 주행하는 제1 주행 모드 또는 상기 이동 로봇이 이미 주행한 기존 주행 경로와의 위치관계를 고려하여 주행하는 제2 주행 모드에 따라 이동 로봇의 주행을 제어하고, 이동 로봇이 주행 경로에 따라 이동하면서 상기 이동 로봇이 이동할 수 있는 후보 지점을 생성하여 나선형 패턴의 청소 패턴을 구현할 수 있는 자율 주행 가능한 이동 로봇 및 이의 주행 제어 방법이 개시된다.

Description

자율 주행 가능한 이동 로봇 및 이의 주행 제어 방법 {Autonomous Mobile Robot and Method for Driving Control the same}
본 발명은 이동 로봇의 주행 제어 방법에 관한 것으로서, 특히 자율 주행 가능한 이동 로봇 및 이의 주행 제어 방법에 관한 것이다.
일반적으로 로봇은 산업용으로 개발되어 공장 자동화의 일 부분을 담당하여 왔다. 최근에는 로봇을 응용한 분야가 더욱 확대되어, 의료용 로봇, 우주 항공 로봇 등이 개발되고 있으며, 일반 가정에서 사용할 수 있는 가정용 로봇도 만들어지고 있다.
가정용 로봇의 대표적인 일 예로, 청소 로봇을 들 수 있는데, 이 때 청소 로봇이란 청소 하고자 하는 영역을 스스로 주행하면서 바닥면으로부터 먼지 등의 이물질을 흡입함으로써, 청소하고자 하는 영역을 자동으로 청소하는 장치를 의미한다. 이러한 청소 로봇은 각종 센서 등을 통해 청소 영역 내에 위치하는 장애물 등을 감지하고, 감지 결과를 이용하여, 청소 로봇의 주행 경로 및 청소 동작을 제어하게 된다.
기존 방식의 청소 패턴은 로봇의 움직임에 부하를 많이 주고, 180도 방향을 변경해야 하는 급격한 모션들이 많이 포함되어 있어서 로봇의 움직임의 부하가 크고 주행 시 시간 소모가 크다.
본 발명은 자율 주행 가능한 이동 로봇 및 이의 주행 제어 방법으로 이동 로봇의 주변에 위치하는 장애물을 추종하여 주행하는 제1 주행 모드 또는 상기 이동 로봇이 이미 주행한 기존 주행 경로와의 위치관계를 고려하여 주행하는 제2 주행 모드에 따라 이동 로봇의 주행을 제어하고, 이동 로봇이 주행 경로에 따라 이동하면서 상기 이동 로봇이 이동할 수 있는 후보 지점을 생성하여 나선형 패턴의 청소 패턴을 구현하는데 그 목적이 있다.
또한, 자율 주행이 가능한 이동 로봇에 부하를 주는 180도 턴을 줄일 수 있는 청소 패턴을 적용하여, 자율 주행이 가능한 이동 로봇의 청소 시간을 줄이고, 에너지 효율을 높이는 데 또 다른 목적이 있다.
본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 수 있다.
상기 과제를 해결하기 위해, 본 발명의 일 실시예에 자율 주행 가능한 이동 로봇의 주행 제어 방법은, 주행 제어 장치가 상기 이동 로봇의 주변에 위치하는 장애물을 추종하여 주행하는 제1 주행 모드 또는 상기 이동 로봇이 이미 주행한 기존 주행 경로와의 위치관계를 고려하여 주행하는 제2 주행 모드에 따라 이동 로봇의 주행을 제어하는 단계 및 상기 이동 로봇이 주행 경로에 따라 이동하면서 상기 이동 로봇이 이동할 수 있는 후보 지점을 생성하는 단계를 포함한다.
여기서, 상기 주행 제어 장치가 상기 이동 로봇의 현재 위치가 이미 주행한 기존의 경로에 포함되는 경우, 또는 상기 추종하던 장애물이 검출되지 않을 경우, 상기 생성된 후보 지점을 고려하여 이동 로봇의 주행 경로를 결정하는 제3 주행 모드에 따라 상기 이동 로봇의 주행을 제어하는 단계를 더 포함한다.
여기서, 상기 제1 주행 모드에 따라 이동 로봇의 주행을 제어하는 단계는, 상기 이동 로봇의 전방에서 기 설정된 거리보다 가까운 거리에서 상기 장애물이 감지되는 경우, 상기 이동 로봇의 속도를 저감시키고 상기 이동 로봇의 곡률 반경을 더 적게 하는 방향으로 회전하도록 주행을 제어한다.
여기서, 상기 제1 주행 모드에 따라 이동 로봇의 주행을 제어하는 단계는, 상기 이동 로봇의 일측에서 기 설정된 거리보다 가까운 거리에서 상기 장애물이 감지되는 경우, 상기 장애물이 상기 일측으로부터 상기 이동 로봇의 반대측에 위치하도록 상기 이동 로봇을 제자리에서 회전시키도록 주행을 제어한다.
여기서, 상기 제1 주행 모드에 따라 이동 로봇의 주행을 제어하는 단계는, 상기 이동 로봇이 추종하던 상기 장애물의 검출에 불연속이 발생한 경우, 상기 추종하던 장애물과 상기 이동 로봇 간의 거리와, 상기 이동 로봇의 두 휠 간의 거리를 고려하여 움직이도록 주행을 제어한다.
여기서, 상기 이동 로봇이 이동할 수 있는 후보 지점을 생성하는 단계는, 상기 이동 로봇을 이동시키는 메인 휠의 회전에 따른 휠 인코더 정보와, 상기 이동 로봇의 중심과 상기 메인 휠 간의 거리를 이용하여 후보 지점을 선정하는 단계 및 상기 선정된 후보 지점을 일정한 기준에 따라 누적하여 저장하는 단계를 포함한다.
여기서, 상기 후보 지점을 일정한 기준에 따라 누적하여 저장하는 것은, 누적된 상기 후보 지점들 중 상기 장애물과 겹치거나 상기 이미 주행한 기존의 경로에 포함되는 경우의 후보 지점을 제외하여 저장한다.
여기서, 상기 제3 주행 모드에 따라 상기 이동 로봇의 주행을 제어하는 단계는, 상기 생성된 후보 지점들 중에서 상기 이동 로봇에서 가장 가까이 위치하는 후보 지점을 선택하고, 상기 후보 지점으로 이동하도록 주행을 제어한다.
여기서, 상기 제2 주행 모드에 따라 이동 로봇의 주행 경로를 제어하는 단계는, 상기 이동 로봇이 이미 주행한 상기 제1 주행 모드에 따른 경로와 미리 결정된 기준에 따른 중첩이 발생되도록 상기 이동 로봇의 주행을 제어한다.
본 발명의 일 실시예에 따른 자율 주행 가능한 이동 로봇은, 상기 이동 로봇의 주변에 위치한 장애물을 감지하는 센서부, 상기 이동 로봇의 주변에 위치하는 장애물을 추종하여 주행하는 제1 주행 모드 또는 상기 이동 로봇이 이미 주행한 기존 주행 경로와의 위치관계를 고려하여 주행하는 제2 주행 모드에 따라 이동 로봇의 주행을 제어하고, 상기 이동 로봇이 주행 경로에 따라 이동하면서 상기 이동 로봇이 이동할 수 있는 후보 지점을 생성하는 주행 제어부 및 상기 주행 제어부의 주행 명령에 따라 상기 이동 로봇을 구동시키는 구동부를 포함한다.
여기서, 상기 주행 제어부는, 상기 이동 로봇의 현재 위치가 이미 주행한 기존의 경로에 포함되는 경우, 또는 상기 추종하던 장애물이 검출되지 않을 경우, 상기 생성된 후보 지점을 고려하여 이동 로봇의 주행 경로를 결정하는 제3 주행 모드에 따라 상기 이동 로봇의 주행을 제어한다.
여기서, 상기 주행 제어부는, 상기 이동 로봇의 전방에서 기 설정된 거리보다 가까운 거리에서 상기 장애물이 감지되는 경우, 상기 이동 로봇의 속도를 저감시키고 상기 이동 로봇의 곡률 반경을 더 적게 하는 방향으로 회전하도록 주행을 제어하고, 상기 이동 로봇의 일측에서 기 설정된 거리보다 가까운 거리에서 상기 장애물이 감지되는 경우, 상기 장애물이 상기 일측으로부터 상기 이동 로봇의 반대측에 위치하도록 상기 이동 로봇을 제자리에서 회전시키도록 주행을 제어한다.
여기서, 상기 주행 제어부는, 상기 이동 로봇을 이동시키는 메인 휠의 회전에 따른 휠 인코더 정보와, 상기 이동 로봇의 중심과 상기 메인 휠 간의 거리를 이용하여 후보 지점을 선정하고, 상기 선정된 후보 지점을 일정한 기준에 따라 누적하여 저장한다.
여기서, 상기 주행 제어부는, 상기 이동 로봇이 이미 주행한 상기 제1 주행 모드에 따른 경로와 미리 결정된 기준에 따른 중첩이 발생되도록 상기 이동 로봇의 주행을 제어한다.
본 실시예의 다른 측면에 의하면, 자율 주행 가능한 이동 로봇의 주행 제어 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
이상에서 설명한 바와 같이 본 발명의 실시예들에 의하면, 이동 로봇의 주변에 위치하는 장애물을 추종하여 주행하는 제1 주행 모드 또는 상기 이동 로봇이 이미 주행한 기존 주행 경로와의 위치관계를 고려하여 주행하는 제2 주행 모드에 따라 이동 로봇의 주행을 제어하고, 이동 로봇이 주행 경로에 따라 이동하면서 상기 이동 로봇이 이동할 수 있는 후보 지점을 생성하여 나선형 패턴의 청소 패턴을 구현할 수 있다.
또한, 자율 주행이 가능한 이동 로봇에 부하를 주는 180도 턴을 줄일 수 있는 청소 패턴을 적용하여, 자율 주행이 가능한 이동 로봇의 청소 시간을 줄이고, 에너지 효율을 높일 수 있다.
여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급된다.
도 1은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 시스템을 개략적으로 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇을 개략적으로 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 제어 장치를 나타낸 블록도이다.
도 4는 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 제어부를 나타낸 블록도이다.
도 5 및 도 6은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 청소 패턴을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 모드와 이벤트를 설명하기 위한 도면이다.
도 8은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 분할 영역을 설명하기 위한 도면이다.
도 9는 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 후보 지점 생성을 설명하기 위한 도면이다.
도 10 및 도 11은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 장애물 검출을 설명하기 위한 도면이다.
도 12는 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 기구학적 특징을 설명하기 위한 도면이다.
도 13은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 알고리즘을 설명하기 위한 도면이다.
도 14 내지 도 17는 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 움직임을 설명하기 위한 도면이다.
도 18 및 도 19는 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 제어 방법을 나타낸 흐름도이다.
이하, 본 발명에 관련된 자율 주행 가능한 이동 로봇 및 이의 주행 제어 방법에 대하여 도면을 참조하여 보다 상세하게 설명한다. 그러나, 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며, 설명하는 실시예에 한정되는 것이 아니다. 그리고, 본 발명을 명확하게 설명하기 위하여 설명과 관계없는 부분은 생략되며, 도면의 동일한 참조부호는 동일한 부재임을 나타낸다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
이하의 설명에서 사용되는 구성요소에 대한 접미사 “모듈” 및 “부”는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 발명은 자율 주행 가능한 이동 로봇 및 이의 주행 제어 방법에 관한 것이다.
도 1은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 시스템을 개략적으로 나타낸 도면이다.
도 1에 도시한 바와 같이, 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 시스템은 자율 주행이 가능한 이동 로봇(1), 이동 로봇의 충전을 위한 도킹 스테이션(docking station)(2)을 포함할 수 있다.
자율 주행이 가능한 이동 로봇(1)은 이동이 가능한 청소 로봇을 말하고, 예컨대, 소정 공간 예컨대, 가정집, 공공기관, 회사 등에서 이동하면서 자동으로 청소를 수행할 수 있다.
자율 주행이 가능한 이동 로봇(1)은 내부 또는 외부에 장착된 라이다(LiDAR)(11)와 영상 정보 획득부(12)를 포함한다.
영상 정보 획득부(12)는 각종 센서 예컨대, 카메라, 레이저 스캐너, 초음파 센서 등을 포함할 수 있으며, 획득한 데이터를 기반으로 소정 공간 예컨대, 가정집, 공공기관, 회사 등에서 이동하면서 청소하게 될 전체 영역에 대한 지도를 생성하고, 기 생성된 지도를 기반으로 사용자의 조작 없이도 청소하고자 하는 영역을 스스로 주행하면서 바닥면으로부터 먼지 등의 이물질을 흡입하여 청소하고자 하는 구역을 자동으로 청소할 수 있다.
본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 제어 장치(10)는 자율 주행이 가능한 이동 로봇(1)에서 프로세서로 구현되며, 라이다(11)와 영상 정보 획득부(12)가 획득한 환경 정보를 이용하게 되고, 주행 중에 이미 획득한 환경 정보와 자율 주행이 가능한 이동 로봇이 주행한 주행 영역과 관련하여 생성된 주행 지도 정보를 저장하는 메모리를 포함할 수 있다.
여기서, 주행 지도 정보는, 상기 주행 영역과 관련한 주행 지도를 구성하는 다수의 노드 및 링크를 포함하며, 상기 환경 정보는, 주행 시 획득한 상기 주행 영역 상의 영상 정보 및 외부의 라이다(LiDAR)로부터 획득한 3차원 기반의 점군(point cloud) 데이터에서 추출되는 거리 정보와 반사광 정보를 포함한다.
이때, 자율 주행이 가능한 이동 로봇(1)은 예컨대, 슬램(Simultaneous Localization And Mapping: SLAM) 기술을 이용하여 지도를 생성할 수 있다. 여기서 슬램 기술이란 기존의 지도를 가지고 위치 인식을 하거나 위치를 알고 지도를 만드는 기술에서 더 나아가 동시에 위치 파악과 지도 구축을 수행하여 상호보완 시키는 기술을 말한다.
자율 주행이 가능한 이동 로봇(1)은 청소하고자 하는 구역을 자율적으로 이동하며 자동 청소를 수행하다가 충전 및 로봇 청소기 내에 저장된 먼지를 비우기 위해 도킹 스테이션(2)으로 이동한다.
신호 처리부(미도시)는 영상 정보 획득부(12)에서 획득된 환경 정보를 이용하여 상기 자율 주행이 가능한 이동 로봇의 주행 모드 또는 주행 경로를 결정하며, 주행 영역과 관련된 동작과 사용자 명령을 처리한다.
도킹 스테이션(2)은 전방에 도킹 유도 신호를 발신하여 발신된 도킹 유도 신호에 따라 자율 주행이 가능한 이동 로봇(1)이 도킹하면, 도킹된 자율 주행이 가능한 이동 로봇(1)을 충전시킬 수 있다.
이때, 도킹 스테이션(2)은 이동 로봇이 도킹 스테이션에서 충전을 시작하면, 이동 로봇을 유도하기 위한 도킹 유도 신호의 송출을 중단 또는 차단할 수 있다.
이러한 도킹 스테이션(2)은 평소에는 이동 로봇이 원활히 도킹 스테이션으로 유도되도록 하는 신호를 송출하는 기능뿐 아니라, 이동 로봇이 연결된 경우 외부 전원을 이동 로봇으로 연결하여 전원을 공급하는 기능, 사용자에 의해 전원이 들어와 있는지, 충전 중인지, 충전 완료 상태인지 등에 대한 상태를 표시하는 기능, 전원 공급기의 전원을 이용하여 유도 신호, 상태 표시, 외부 전원 공급 등의 기능, 외부 AC 입력에서 전원을 공급 받고 도킹 스테이션 동작을 위한 전원으로 변환하는 기능 등을 수행한다.
또한, 도킹 스테이션(2)은 자율 주행이 가능한 이동 로봇(1)이 도킹 스테이션에서 충전을 시작하면 상태 표시부에서의 충전 상태 표시를 차단할 수 있고, 이후 충전을 완료하더라도 도킹되어 있으면 상태 표시부에서의 충전 상태 표시를 차단할 수 있다.
도 2는 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇을 개략적으로 나타낸 도면이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇은 제1 휠 어셈블리(13), 전방 센서부(14), 신호 처리부(15), 하우징(16), 제2 휠(17), 바닥 센서부(18)를 포함하며, 각 모듈이 분리 가능하도록 독립적으로 구현되거나, 또는 결합된 형태로 구현될 수 있다.
특히, 메인브러쉬 어셈블리와 휠 어셈블리, 흡입부의 경우, 하우징과 별도의 세트로 회전하도록 마련될 수 있는데, 이 경우 자율 주행 이동 로봇의 포즈와 실제 이동 방향, 청소로봇의 경우 청소 방향은 달라 질 수 있다. 예를 들어, 긴 사각형 모양의 공간의 경우, 청소로봇의 포즈는 벽을 향하며 이동 방향과 청소 방향은 해당 공간의 길이 방향으로 형성될 수 있다.
흡입부는 하우징의 저면에 장착되어, 바닥의 표면 상태에 따라 상승 또는 하강하면서 메인 브러쉬 어셈블리의 회전에 따라 이물질을 흡입한다.
제1 휠 어셈블리(13)와 제2 휠(17)은 주행을 위하여 다수 개 포함된다.
하우징 저면의 전방 영역 에는 제2 휠(17)이 장착되고, 하우징 저면의 중앙 영역에는 사이드 제1 휠 어셈블리(13)가 각각 장착되어 모터에서 전력을 공급받을 수 있다.
또한, 하우징 저면에는 사이드 브러쉬가 장착되되, 사이드 브러쉬는 회전 가능할 수 있다. 이러한 사이드 브러쉬는 주변 바닥에 놓인 먼지 등의 이물질을 하우징 중앙으로 이동시킬 수 있고, 바닥과 벽면의 경계가 되는 구성에 쌓인 먼지를 청소할 수 있다.
신호처리부(15)는 주행 영역과 관련된 동작과 사용자 명령을 처리하며, 주행 제어 신호를 처리하도록 구성된다.
전방 센서부(14)는 이동 로봇의 외주면에 각각 영역별(14a, 14b, 14c, 14d, 14e)로 위치하며, 이동 로봇의 주변 영역을 센서가 각각 위치한 영역에서 장애물을 검출할 수 있다. 본 발명의 실시예에서는 적외선 거리센서(PSD 센서)를 이용하는 것이 바람직하며, 이 외에도 객체를 감지할 수 있는 방법으로 장애물을 검출하는 것이 가능하다.
바닥 센서부(18)는 이동 로봇의 하단에 각각 영역별(18a, 18b, 18c)로 위치한다. 바닥 센서부는 하단의 바퀴의 빠짐이나 계단, 낭떠러지를 인식할 수 있다. 바닥 센서부는 적외선 거리센서(PSD 센서)로 구현되는 것이 바람직하다.
이동 로봇은 다수의 감지 센서를 이용하여 청소구역 내에 설치된 각종 장애물, 예를 들면 가구, 벽 등과 같은 장애물까지의 거리를 판별하고 판별된 정보를 이용하여 장애물과 충돌되지 않도록 주행하면서 청소구역을 청소한다.
도 3은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 제어 장치를 나타낸 블록도이다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 제어 장치(10)는 센서부(100), 주행 제어부(200), 구동부(300)를 포함한다.
자율 주행이 가능한 이동 로봇의 주행 제어 장치(10)는 자율 주행이 가능한 이동 로봇이 장애물과 이전 경로 영역을 따라 이동하도록 하기 위하여 주행 모드를 생성하고, 주행을 제어하는 장치이다.
본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 제어 장치(10)는 자율 주행이 가능한 이동 로봇이 나선형의 패턴으로 청소 영역을 주행하도록 구현된다.
센서부(100)는 상기 이동 로봇의 주변에 위치한 장애물을 감지한다. 구체적으로, 상기 자율 주행이 가능한 이동 로봇이 상기 주행 영역을 주행 시, 상기 자율 주행이 가능한 이동 로봇으로부터 일정 범위 내에 존재하는 영역을 주변 영역으로 인지하고, 인지한 상기 주변 영역을 위치에 따른 복수의 분할 영역으로 분할하며, 분할 영역 각각 에서 상기 장애물을 검출하며, 상기 이동 로봇의 외주면을 기준으로 검출되는 장애물의 외주면까지의 수직 거리를 각각 측정한다.
주행 제어부(200)는 상기 이동 로봇의 주변에 위치하는 장애물을 추종하여 주행하는 제1 주행 모드 또는 상기 이동 로봇이 이미 주행한 기존 주행 경로와의 위치관계를 고려하여 주행하는 제2 주행 모드에 따라 이동 로봇의 주행을 제어하고, 상기 이동 로봇이 주행 경로에 따라 이동하면서 상기 이동 로봇이 이동할 수 있는 후보 지점을 생성한다.
구동부(300)는 상기 주행 제어부의 주행 명령에 따라 상기 이동 로봇을 구동시킨다.
도 4는 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 제어부를 나타낸 블록도이다.
도 4를 참조하면, 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 제어부는 하나 이상의 인스트럭션을 저장하는 메모리(220)와 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 프로세서(210)를 포함한다. 구체적으로, 메모리(220)는 주행 제어를 위한 알고리즘들을 포함하며, 프로세서(210)는 주행 제어 방법을 구현하기 위한 주행 제어 프로세서이다.
도 5 및 도 6은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 청소 패턴을 설명하기 위한 도면이다.
도 5는 기존의 자율 주행이 가능한 이동 로봇의 지그재그 청소 패턴(P1)을 나타낸 것이다. 도 5에 나타난 바와 같이 기존 지그재그 움직이는 방식의 청소 패턴은 로봇의 움직임에 부하를 많이 주고, 시간은 많이 소모하는 180도 턴(T)이 많이 발생한다.
또한, 지그재그 패턴에는 180도 방향을 변경해야 하는 급격한 모션들이 많이 포함되어 있어서 로봇의 움직임의 부하가 크고 주행 시 시간 소모가 크다.
도 6은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 나선 청소 패턴(Spiral cleaning pattern)을 나타낸 것이다.
나선 청소 패턴(P2)을 자율 주행이 가능한 이동 로봇에 적용 했을 때 도 5와 같은 청소 형태가 나타나며, 도 6에 나타난 바와 같이 청소 로봇에 나선 청소 패턴을 적용 했을 때 로봇에 부하를 주는 180도 턴이 현저하게 줄어준다는 것을 알 수 있다.
이를 통하여 청소 로봇에 나선 청소 패턴을 적용할 경우 로봇의 청소 시간을 줄일 수 있고, 청소 시간이 줄어 듦에 따라 에너지 효율을 높일 수 있다.
도 7은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 모드와 이벤트를 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 나선 청소 패턴(Spiral cleaning pattern)의 구성을 나타낸 것이다.
도 7에 나타난 것과 같이, 나선 청소 패턴은 크게 3가지 모드와 3가지 이벤트를 중심으로 구성되어 있다.
제1 주행 모드(M1)는 장애물 추적 모드(obstacle following mode)이며, 청소 로봇이 장애물을 청소 로봇의 사이드와 일정 간격을 유지하면서 이동하도록 하는 모드이다.
제2 주행 모드(M2)는 경로 추적 모드(Trajectory following mode)이며, 청소 로봇이 이전에 이동한 경로를 일정 간격 유지하면서 이동하도록 하는 모드이다.
제3 주행 모드(M3)는 네비게이션 모드(Navigation mode)이며, 청소 로봇이 주어진 목표 지점을 따라 이동하는 모드이다.
또한, 제1 이벤트(E1)는 지점 재방문(Visit same position)이며, 청소 로봇이 이전에 방문한 지점을 재 방문한 경우 발생하는 이벤트(event)이다.
제2 이벤트(E2)는 장애물 감지(Detect obstacles)이며, 청소 로봇 주위에 장애물이 감지 되었을 때 발생하는 이벤트(event)이다.
제3 이벤트(E3)는 목표지점 도착(Arrive target position)이며, 청소 로봇이 목표 지점을 향해 이동할 때 목표 지점에 도착 시 발생하는 이벤트(event)이다.
도 8은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 분할 영역을 설명하기 위한 도면이다.
도 8은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 나선 청소 패턴(Spiral cleaning pattern)을 유지하기 위한 장애물/이전 경로 감지 영역을 나타낸 것이다.
도 8에 나타난 바와 같이 자율 주행이 가능한 이동 로봇은 장애물과 이전 경로 영역을 따라 이동하기 위하여 4개로 분할된 영역(3)을 이용한다.
상기 분할 영역(3)은, 상기 주변 영역을 상기 자율 주행이 가능한 이동 로봇을 기준으로 우측에 위치하는 영역인 오른쪽(right) 영역, 좌측에 위치하는 영역인 왼쪽(left) 영역, 전방에 위치하는 영역인 중앙(center) 영역으로 분할되는 영역이다.
상기 도 7에서 설명한 각 모드와 이벤트에 대하여 도 8에 나타난 분할된 영역을 이용하여 설명한다.
제1 주행 모드(M1)인 장애물 추적 모드(obstacle following mode)에서, 만약 어떤 영역에도 장애물이 감지되지 않았을 경우 기본 이동속도와 반 시계(CCW, Counter clockwise) 방향으로 기본 회전 속도로 이동한다.
이동 로봇의 전방에서 기 설정된 거리보다 가까운 거리에서 상기 장애물이 감지되는 경우, 상기 이동 로봇의 속도를 저감시키고 상기 이동 로봇의 곡률 반경을 더 적게 하는 방향으로 회전하도록 주행을 제어한다.
회전하는 방향은 구현하고자 하는 나선형 패턴이 감기는 방향에 따라 달라질 수 있으며, 예를 들어 만약 영역 CL 또는 영역 CR에 장애물이 감지 되었을 때 시계 CW(clockwise) 방향으로 영역 L에 장애물이 감지 될 때까지 회전한다.
한편, 영역 R에 장애물이 감지되었을 경우 영역 L에 장애물이 감지될 때까지 CW 방향으로 회전한다.
만약 영역 L에 장애물이 감지되었을 때에는 L에 감지된 장애물들과 청소 로봇 사이의 최소 거리가 사용자가 원하는 거리를 유지하면서 로봇을 전진 시킨다.
감지 영역의 우선순위는 R > CL, CR > L 이다.
제2 주행 모드에 따라 이동 로봇의 주행 경로를 제어하는 경우, 상기 이동 로봇이 이미 주행한 상기 제1 주행 모드에 따른 경로와 미리 결정된 기준에 따른 중첩이 발생되도록 상기 이동 로봇의 주행을 제어한다.
여기에서 미리 결정된 기준에 따른 중첩은, 예를 들어 제1 주행 모드에 따라 청소 구역의 벽면 경로를 따라 주행을 한 경우, 이미 이동한 벽면 경로와 최소한의 중첩을 유지하면서 이동하는 것을 의미한다. 여기에서 최소한의 중첩은 계속적인 중첩으로 한정되지는 않는다. 영역의 중첩이 너무 큰 경우, 청소 효율이 떨어지고, 중첩이 없는 경우 청소되지 않는 영역이 발생할 수 있기 때문이다.
예를 들어, 제2 주행 모드(M2)인 경로 추적 모드(Trajectory following mode)에서, CL과 CR에 이전에 이동했던 경로가 있으면, CW 방향으로 회전한다.
L에 이전에 이동했던 경로가 감지되면, 일정 거리를 유지하면서 로봇을 전진 시킨다. 감지 영역의 우선순위는 CL, CR > L 이다.
제3 주행 모드(M3)인 네비게이션 모드(Navigation mode)는 청소 로봇이 이전에 방문했던 지점을 반복하여 방문할 경우 방문할 후보 지점들로 이동하는 모드이다.
구체적으로, 주행 제어 프로세서가 상기 이동 로봇의 현재 위치가 이미 주행한 기존의 경로에 포함되는 경우, 또는 상기 추종하던 장애물이 검출되지 않을 경우, 상기 생성된 후보 지점을 고려하여 이동 로봇의 주행 경로를 결정하는 제3 주행 모드에 따라 상기 이동 로봇의 주행을 제어한다.
여기서, 추종하던 장애물이 검출되지 않는 경우는 장애물을 따라 이동하는 경우에서 일시적으로 불연속이 나타나는 것이 아닌, 정해진 기준을 초과하여 불연속이 검출되거나 장애물이 실제로 주변 영역에 위치하지 않는 경우를 의미한다.
네비게이션 모드에서는 후보 지점들 중에서 가장 가까운 후보 지점을 목표지점으로 설정한다.
현재 로봇의 위치에서 후보 지점까지의 이동 경로를 생성하며, 이동 경로를 따라 이동하면서 장애물과의 충돌을 회피한다.
도 9는 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 후보 지점 생성을 설명하기 위한 도면이다.
도 9를 참조하면, 주행 모드가 상기 제1 주행 모드(obstacle following mode) 또는 제2 주행 모드(trajectory following mode)일 때, 주행 제어 프로세서는 도 8에 나타난 바와 같이 후보 지점을 생성한다.
자율 주행이 가능한 이동 로봇(1)의 이동 경로(L1)에 수직인 방향에 위치하는 영역(L2)에 다수개의 후보 지점들(4)을 생성하고 상기 자율 주행이 가능한 이동 로봇이 이동하는 경로상에 후보 지점이 있을 경우 후보 지점을 삭제한다. 여기서, 후보 지점은 로봇의 -90도 방향에 생성된다.
즉, 주행 제어 프로세서는, 상기 자율 주행이 가능한 이동 로봇의 예상 이동 경로(L2)에 위치한 각각의 지점을 이동 가능 후보 지점들로 생성하고, 상기 이동 가능 후보 지점이 상기 장애물이 있는 영역이거나, 상기 기 이동한 경로에 존재하는 경우 상기 이동 가능 후보 지점을 삭제한다.
도 10 및 도 11은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 장애물 검출을 설명하기 위한 도면이다.
센서부(100)는 상기 분할 영역에서 상기 장애물을 검출하며, 상기 자율 주행이 가능한 이동 로봇의 외주면을 기준으로 검출되는 장애물의 외주면까지의 수직 거리를 각각 측정한다. 주행 영역에 따라 주행 시 별도의 센서부를 통해 장애물을 검출할 수 있다.
도 10에 나타난 바와 같이, 자율 주행이 가능한 이동 로봇은 네 영역에 대한 장애물 검출이 가능하다. 주변 영역을 상기 자율 주행이 가능한 이동 로봇을 기준으로 우측에 위치하는 영역인 오른쪽(right) 영역, 좌측에 위치하는 영역인 왼쪽(left) 영역, 전방에 위치하는 영역인 중앙(center) 영역으로 분할되는 영역 중 왼쪽 영역(L), 중앙 왼쪽 영역(CL), 중앙 오른쪽 영역(CR), 오른쪽 영역(R)의 네 장애물 검출 영역을 가지고 있고 검출된 장애물은 li X의 거리로 표시할 수 있다.
구체적으로, 장애물까지의 거리는 자율 주행이 가능한 이동 로봇의 외주면으로부터 장애물의 외주면의 가장 가까운 부분까지의 거리를 수직으로 측정한 길이이다.
예를 들어, 왼쪽 영역(L)은 li L, 오른쪽 영역(R)은 li R, 중앙 왼쪽 영역(CL)은 li CL, 중앙 오른쪽 영역(CR)은 li CR 로 표시할 수 있다.
도 11은 왼쪽 영역(L) 내에서 장애물이 감지되고 있을 때를 예로 들어 나타낸 것이다.
도 11에 나타난 바와 같이 자율 주행이 가능한 이동 로봇(1)의 왼쪽 영역(L) 내에서 장애물(5)이 감지되고 있을 때 이를 나타내는 척도로 li L (i=1, ... , n) 표현된다. 이와 같은 방법으로 L, CL, CR, R 영역에 대해서도 i 번째 라인(Line) 상의 장애물의 위치는 각각 li L, li CL, li CR, li R 로 표현할 수 있다. 이때, R 영역은 주로 측면 장애물을 또는 이전 청소 패턴을 따라 이동할 때 사용되고 CL과 CR, L 영역은 장애물과의 충돌 회피를 위해 사용한다.
또한, 장애물(5)과의 거리를 자율 주행이 가능한 이동 로봇의 각각의 지점을 라인으로 지정하여 측정한다. 예를 들어, 자율 주행이 가능한 이동 로봇의 최외각을 기준으로 l1 L, l2 L, l3 L, ... ,l11 L, l12 L, l13 L 까지의 각각의 거리를 측정하며, 이는 장애물이 곡선이나 빗면을 포함하는 경우 자율 주행이 가능한 이동 로봇까지의 거리가 모든 면에서 일정하지 않으므로 한 지점만을 측정할 때의 오차를 해결하기 위한 것이다.
여기서, 자율 주행이 가능한 이동 로봇은 중앙의 영역을 이동 방향으로 하여 움직인다.
도 12는 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 기구학적 특징을 설명하기 위한 도면이다.
도 12에 나타난 로봇의 기구학적 구조와 같이 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 경우 자율 주행이 가능한 이동 로봇의 중심과 구동 축이 다르기 때문에 하기 수학식 1과 같은 기구학적 특징을 가지게 된다.
Figure 112019100029534-pat00001
여기서, (xd, yd)는 구동축의 위치, θd는 구동축의 바라보는 각도, v와 ω는 각각 로봇의 직진, 회전 속도이다.
자율 주행이 가능한 이동 로봇의 구동 축과 중심축의 위치(xc, yc, θc)와의 관계는 하기 수학식 2로 구현된다.
Figure 112019100029534-pat00002
Figure 112019100029534-pat00003
Figure 112019100029534-pat00004
상기 수학식 2의 시간 미분을 통해서 속도와 로봇의 중심 위치(xc, yc, θc)관계를 하기 수학식 3으로 얻을 수 있다.
Figure 112019100029534-pat00005
상기 수학식 3에 의해 직진 속도와 회전속도를 부여하였을 때 로봇의 움직임이 결정된다.
앞서 설명한 로봇의 구성과 움직임을 바탕으로 상기 제1 주행 모드(obstacle following mode)를 설명할 수 있다. 먼저, 로봇은 오른쪽에 벽이 있을 수 있도록 자세를 유지한다. 먼저 로봇의 안전을 위하여 전방에 감지되는 장애물이 있을 경우 장애물과의 충돌을 회피하고 장애물을 로봇의 오른쪽으로 유도하기 위하여 하기 알고리즘 1과 같은 움직임을 가지도록 한다.
[알고리즘 1]
Figure 112019100029534-pat00006
상기 알고리즘 1에서 볼 수 있듯이 로봇이 정면에 장애물이 있으면 로봇은 왼쪽으로 회전하면서 로봇의 정면에 있던 장애물이 로봇의 오른쪽으로 가도록 회전한다. 알고리즘 1을 적용하였을 때 앞으로 이동하던 로봇의 정면에 ξ_th 보다 가까운 거리에 장애물이 감지되면 로봇을 정지 시키고 로봇을 회전시키기 때문에 로봇이 급정지 하면서 덜컹거리면서 로봇에 무리를 주거나 사용자가 보기에 불편한 움직임을 취할 수 있다. 이러한 움직임을 보완하기 위하여 다음의 알고리즘 2를 적용하는 것이 가능하다.
[알고리즘 2]
Figure 112019100029534-pat00007
도 13은 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 알고리즘을 설명하기 위한 도면이다.
상기 알고리즘 2에서 min(min(li CL), min(li CR)) = A라고 한다면, ω의 함수와
Figure 112019100029534-pat00008
는 도 13과 같이 표현할 수 있다.
도 13은 회전속도 ω의 함수와 직진속도
Figure 112019100029534-pat00009
를 나타낸 것이다.
상기 알고리즘 2에서 보는 것과 같이 로봇의 직진 속도와 회전 속도는 CR과 CL에 위치한 장애물의 위치에 따라 결정되어 급정거/급출발 없이 자연스럽게 가감속 하면서 장애물을 로봇의 오른쪽으로 오도록 회전할 수 있다.
로봇의 정면에 장애물이 있는 경우와 유사한 상황이 장애물이 로봇의 왼쪽에 있는 경우이다. 이 경우에는 로봇이 장애물이 있기를 바라는 오른쪽과 완전히 반대에 장애물이 있게 되기 때문에 제자리에서 180를 회전해야 한다. 따라서 하기 알고리즘 3에 의해 움직이게 된다.
[알고리즘 3]
Figure 112019100029534-pat00010
상기 알고리즘 1 내지 3에 의해 장애물이 로봇의 오른쪽에 위치되도록 하고 나면 로봇은 오른쪽에 있는 장애물을 따라 이동할 수 있게 된다. 로봇은 장애물과 일정거리를 유지하면서 장애물의 표면을 따라 이동하게 되는데, 이를 위하여 R영역에 위치한 장애물과의 거리를 사용자가 원하는 기준 거리를 두고 유지할 수 있도록 알고리즘 4에 의하여 로봇을 제어한다.
[알고리즘 4]
Figure 112019100029534-pat00011
여기서, k>0은 상수이고, 직진 속도는 상수이거나 알고리즘 2와 같이 ω에 따라 가변한다.
알고리즘 4에 의하여 장애물이 R 지역에 있을 때 로봇은 장애물과 일정 거리 간격, ldes를 유지하면서 이동할 수 있게 된다. 만약, L, R, CL, CR 영역에 장애물이 존재하지 않는다면 장애물을 찾기 위해 다음 알고리즘 5와 같이 움직인다.
[알고리즘 5]
Figure 112019100029534-pat00012
여기서, vmin은 상수인 최소 이동 직진 속도이고, α는 바퀴간 거리이다.
도 14 내지 도 17는 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 제어 장치의 움직임을 설명하기 위한 도면이다.
상기 알고리즘 5에 따르면 자율 주행이 가능한 이동 로봇은 도 14와 같이 움직이게 된다.
도 14에서 보는 것과 같이 자율 주행이 가능한 이동 로봇(1)은 장애물(6)과 ldes를 유지하면서 회전하게 되고 오른쪽 영역에서 장애물을 찾게 된다. 이 때의 경로는 L3이다.
제1 주행 모드에 따라 이동 로봇의 주행을 제어하는 단계에서 상기 이동 로봇이 추종하던 상기 장애물의 검출에 불연속이 발생한 경우, 상기 추종하던 장애물과 상기 이동 로봇 간의 거리와, 상기 이동 로봇의 두 휠 간의 거리를 고려하여 움직이도록 주행을 제어한다.
여기서, 발생하는 장애물 검출의 불연속은 장애물의 모서리 또는 코너, 곡면에 일시적으로 위치하였을 때 생기는 불연속에 의한 것으로 주변 영역에 장애물이 존재하지 않음으로써 생기는 것이 아닌 일시적인 불연속에 의한 것으로 센서부의 감지에 따라 장애물의 측면을 따라 이동하게 된다.
도 15를 참조하면, 상기 알고리즘 1 내지 5를 통해 자율 주행이 가능한 이동 로봇(1)이 장애물(7)과의 충돌을 회피하면서 장애물을 따라 이동하는 동안 로봇은 자기가 다음에 이동할 수 있는 지점들에 대한 정보를 생성하고 저장한다. 이를 이동 가능 후보 지점(4)이라고 한다.
상기 이동 로봇을 이동시키는 메인 휠의 회전에 따른 휠 인코더 정보와, 상기 이동 로봇의 중심과 상기 메인 휠 간의 거리를 이용하여 후보 지점을 선정하게 된다.
여기서, 휠 인코더는 한쌍의 메인 휠의 회전을 카운트하여, 휠의 이동 경로 즉, 공간상에서의 휠의 위치를 계산할 수 있다. 휠 인코더 정보는 메인 휠의 좌표와 중심 좌표를 포함한다.
도 15와 같이 생성되는 이동 가능 후보 지점들은 자율 주행이 가능한 이동 로봇이 계속 이동하면서 계속 누적되는데 하기 알고리즘 6과 같은 과정을 통해 후보 지점을 생성하게 된다.
[알고리즘 6]
Figure 112019100029534-pat00013
여기서, 만약 Pc가 장애물과 겹치거나 이미 가본 지점이라면 후보 지점에서 삭제된다.
또한 로봇이 장애물을 따라 이동하고 있는 경우 로봇이 이동한 경로를 지도의 형태로 저장한다. 따라서 이후에 로봇이 장애물의 표면을 따라 이동한 후에 다시 로봇은 이전에 이동했던 궤적과 일정 거리를 두고 이동하도록 함으로써 로봇이 점차 이전 경로를 기준으로 하여 점차 더 많은 영역을 커버할 수 있도록 하며, 이는 제2 주행 모드(trajectory following mode)에서 수행하게 된다.
도 16은 지도에 표시되는 자율 주행 이동 로봇의 이동 궤적을 나타낸 것이다.
제3 주행 모드(M3)인 네비게이션 모드(Navigation mode)는 이전 경로를 회피하여 청소하기 위한 주행 모드로써, 만약 로봇이 이전에 왔던 지점을 반복하여 이동하게 되면 로봇이 중복된 영역을 청소할 가능성이 높아지기 때문에 효율성이 떨어지게 되어 이동하지 않았던 지점으로 이동하는 것이 좋다. 따라서 로봇이 이전 지점에 반복되게 위치하는 경우에 이동가능 후보 지점들 중에서 가장 적합한 점을 골라 이동하게 된다.
제2 주행 모드(trajectory following mode)에서 제3 주행 모드(Navigation mode)를 통하여 가장 가까운 후보 지점을 이동한 로봇은 주변에 이동로봇이 이동했던 궤적을 찾는다. 궤적을 찾는 방법은 장애물을 찾는 상기 알고리즘 5와 매우 유사하다. 먼저, 로봇은 지도 상에서 자신의 위치를 확인하고 자신의 감지 영역인 L, CL, CR, R에 이전에 이동했던 궤적이 지도상에 마크되어 있는지 확인하고 감지 영역 내에 이전에 이동했던 궤적이 없다면 하기 알고리즘 7을 통하여 이전 궤적을 찾는다.
[알고리즘 7]
Figure 112019100029534-pat00014
여기서, 만약 지도상에서 R에 이전에 이동했던 궤적이 감지 되면 v=0, ω=0이다.
상기 알고리즘 7에 의해 로봇은 가까운 후보 지점으로 이동한 후에 제자리에서 회전하면서 이전에 이동했던 궤적을 찾을 수 있다. 이후 로봇은 이전에 자신이 이동했던 궤적을 오른쪽에 두고 이동하는 것이 가능하다. 알고리즘 8은 상기 알고리즘 4와 유사한 방식으로 경로를 따라 이동하는 것이 가능하다.
[알고리즘 8]
Figure 112019100029534-pat00015
여기서 li R은 R영역에 감지된 이전 이동 궤적과의 거리이다.
자율 주행이 가능한 이동 로봇이 상기 알고리즘 8과 같이 이동하면 경로 패턴은 도 17과 같이 이동하는 것이 가능하다.
도 17은 상기 알고리즘 4와 상기 알고리즘 8에 의해 로봇이 이동한 궤적이다. 자율 주행이 가능한 이동 로봇(1)은 장애물(8)을 회피하며 점차 내측으로 이동하게 되며, 장애물(8)을 회피하며 이동한 이전 주행 경로(L5)과 중복되지 않도록 이전 궤적(S1)의 내측에서 이전 주행 경로(L5)와 일정 간격을 유지하며 주행하게 된다.
점차 청소 가능 영역(S2)은 줄어들게 되며, 자율 주행이 가능한 이동 로봇(1)은 나선형의 패턴으로 이동하게 된다.
도 18 및 도 19는 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 제어 방법을 나타낸 흐름도이다.
도 18을 참조하면, 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 주행 제어 방법은, 단계 S100에서 주행 제어 프로세서가 상기 이동 로봇의 주변에 위치하는 장애물을 추종하여 주행하는 제1 주행 모드 또는 상기 이동 로봇이 이미 주행한 기존 주행 경로와의 위치관계를 고려하여 주행하는 제2 주행 모드에 따라 이동 로봇의 주행을 제어한다.
여기서, 제1 주행 모드에 따라 이동 로봇의 주행을 제어하는 단계는, 상기 이동 로봇의 전방에서 기 설정된 거리보다 가까운 거리에서 상기 장애물이 감지되는 경우, 상기 이동 로봇의 속도를 저감시키고 상기 이동 로봇의 곡률 반경을 더 적게 하는 방향으로 회전하도록 주행을 제어한다.
또한, 상기 제1 주행 모드에 따라 이동 로봇의 주행을 제어하는 단계는, 상기 이동 로봇의 일측에서 기 설정된 거리보다 가까운 거리에서 상기 장애물이 감지되는 경우, 상기 장애물이 상기 일측으로부터 상기 이동 로봇의 반대측에 위치하도록 상기 이동 로봇을 제자리에서 회전시키도록 주행을 제어한다.
또한, 상기 이동 로봇이 추종하던 상기 장애물의 검출에 불연속이 발생한 경우, 상기 추종하던 장애물과 상기 이동 로봇 간의 거리와, 상기 이동 로봇의 두 휠 간의 거리를 고려하여 움직이도록 주행을 제어한다.
또한, 제2 주행 모드에 따라 이동 로봇의 주행 경로를 제어하는 단계는, 상기 이동 로봇이 이미 주행한 상기 제1 주행 모드에 따른 경로와 미리 결정된 기준에 따른 중첩이 발생되도록 상기 이동 로봇의 주행을 제어한다.
단계 S200에서 상기 이동 로봇이 주행 경로에 따라 이동하면서 상기 이동 로봇이 이동할 수 있는 후보 지점을 생성한다.
단계 S300 상기 주행 제어 프로세서가 상기 이동 로봇의 현재 위치가 이미 주행한 기존의 경로에 포함되는 경우, 또는 상기 추종하던 장애물이 검출되지 않을 경우, 상기 생성된 후보 지점을 고려하여 이동 로봇의 주행 경로를 결정하는 제3 주행 모드에 따라 상기 이동 로봇의 주행을 제어한다.
여기서, 상기 생성된 후보 지점들 중에서 상기 이동 로봇에서 가장 가까이 위치하는 후보 지점을 선택하고, 상기 후보 지점으로 이동하도록 주행을 제어한다.
도 19를 참조하면, 본 발명의 일 실시예에 따른 자율 주행이 가능한 이동 로봇의 이동 로봇이 이동할 수 있는 후보 지점을 생성하는 단계(S200)는,
단계 S210에서 상기 이동 로봇을 이동시키는 메인 휠의 회전에 따른 휠 인코더 정보와, 상기 이동 로봇의 중심과 상기 메인 휠 간의 거리를 이용하여 후보 지점을 선정한다.
단계 S220에서 상기 선정된 후보 지점을 일정한 기준에 따라 누적하여 저장한다.
여기서, 상기 후보 지점을 일정한 기준에 따라 누적하여 저장하는 것은, 누적된 상기 후보 지점들 중 상기 장애물과 겹치거나 상기 이미 주행한 기존의 경로에 포함되는 경우의 후보 지점을 제외하여 저장한다.
또한, 자율 주행이 가능한 이동 로봇의 주행 제어 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
이러한 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(Floptical disk)와 같은 자기-광매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상의 설명은 본 발명의 일 실시예에 불과할 뿐, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명의 본질적 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현할 수 있을 것이다. 따라서 본 발명의 범위는 전술한 실시예에 한정되지 않고 특허 청구 범위에 기재된 내용과 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.

Claims (15)

  1. 자율 주행 가능한 이동 로봇의 주행 제어 방법에 있어서,
    주행 제어 장치가, 상기 이동 로봇이 나선 청소 패턴에 따라 주행하도록, 제1 주행 모드, 제2 주행 모드 및 제3 주행 모드 중 하나의 주행 모드에 따라 상기 이동 로봇의 주행을 제어하는 단계; 및
    상기 주행 제어 장치가, 상기 제1 주행 모드 또는 상기 제2 주행 모드에 따라 상기 이동 로봇이 이동하는 도중 상기 이동 로봇의 이동 경로에 수직인 방향에 위치하는 영역에 상기 이동 로봇이 이동할 수 있는 후보 지점을 생성하는 단계;
    를 포함하고,
    상기 제1 주행 모드는, 상기 이동 로봇의 주변에 위치하는 장애물과 기 설정된 간격을 유지하면서 상기 이동 로봇이 상기 이동 로봇의 주변에 위치하는 장애물을 추종하여 주행하도록 하는 주행 모드이며,
    상기 제2 주행 모드는, 상기 이동 로봇이 이전에 이동한 경로와 기 설정된 간격을 유지하면서 상기 이동 로봇이 이미 주행한 기존 주행 경로와의 위치관계를 고려하여 주행하도록 하는 주행 모드이고,
    상기 제3 주행 모드는, 상기 이동 로봇이 상기 후보 지점을 기반으로 결정되는 목표 지점으로 이동하도록 하는 주행 모드이며,
    상기 주행 제어 장치는, 상기 제2 주행 모드 또는 상기 제3 주행 모드에 따라 상기 이동 로봇이 이동하는 도중에 상기 이동 로봇의 주변에 위치하는 장애물이 감지되면 상기 제1 주행 모드로 상기 이동 로봇의 주행 모드를 변경하고, 상기 제1 주행 모드 또는 상기 제2 주행 모드에 따라 상기 이동 로봇이 이동하는 도중에 상기 이동 로봇이 이전에 방문한 지점을 재방문하면 상기 제3 주행 모드로 상기 이동 로봇의 주행 모드를 변경하며, 상기 제3 주행 모드에 따라 상기 이동 로봇이 이동하는 도중에 상기 목표 지점에 도착하면 상기 제2 주행 모드로 상기 이동 로봇의 주행 모드를 변경하는,
    자율 주행 가능한 이동 로봇의 주행 제어 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 제1 주행 모드에 따라 이동 로봇의 주행을 제어하는 단계는,
    상기 이동 로봇의 전방에서 기 설정된 거리보다 가까운 거리에서 상기 장애물이 감지되는 경우, 상기 이동 로봇의 속도를 저감시키고 상기 이동 로봇의 곡률 반경을 더 적게 하는 방향으로 회전하도록 주행을 제어하는 것을 특징으로 하는 자율 주행 가능한 이동 로봇의 주행 제어 방법.
  4. 제1항에 있어서,
    상기 제1 주행 모드에 따라 이동 로봇의 주행을 제어하는 단계는,
    상기 이동 로봇의 일측에서 기 설정된 거리보다 가까운 거리에서 상기 장애물이 감지되는 경우, 상기 장애물이 상기 일측으로부터 상기 이동 로봇의 반대측에 위치하도록 상기 이동 로봇을 제자리에서 회전시키도록 주행을 제어하는 것을 특징으로 하는 자율 주행 가능한 이동 로봇의 주행 제어 방법.
  5. 제1항에 있어서,
    상기 제1 주행 모드에 따라 이동 로봇의 주행을 제어하는 단계는,
    상기 이동 로봇이 추종하던 상기 장애물의 검출에 불연속이 발생한 경우,
    상기 추종하던 장애물과 상기 이동 로봇 간의 거리와, 상기 이동 로봇의 두 휠 간의 거리를 고려하여 움직이도록 주행을 제어하는 것을 특징으로 하는 자율 주행 가능한 이동 로봇의 주행 제어 방법.
  6. 제1항에 있어서,
    상기 이동 로봇이 이동할 수 있는 후보 지점을 생성하는 단계는,
    상기 이동 로봇을 이동시키는 메인 휠의 회전에 따른 휠 인코더 정보와, 상기 이동 로봇의 중심과 상기 메인 휠 간의 거리를 이용하여 후보 지점을 선정하는 단계; 및
    상기 선정된 후보 지점을 일정한 기준에 따라 누적하여 저장하는 단계를 포함하는 것을 특징으로 하는 자율 주행 가능한 이동 로봇의 주행 제어 방법.
  7. 제6항에 있어서,
    상기 후보 지점을 일정한 기준에 따라 누적하여 저장하는 것은,
    누적된 상기 후보 지점들 중 상기 장애물과 겹치거나 상기 이미 주행한 기존의 경로에 포함되는 경우의 후보 지점을 제외하여 저장하는 것을 특징으로 하는 자율 주행 가능한 이동 로봇의 주행 제어 방법.
  8. 제1항에 있어서,
    상기 제3 주행 모드에 따라 상기 이동 로봇의 주행을 제어하는 단계는,
    상기 생성된 후보 지점들 중에서 상기 이동 로봇에서 가장 가까이 위치하는 후보 지점을 상기 목표 지점으로 선택하고, 상기 목표 지점으로 이동하도록 주행을 제어하는 것을 특징으로 하는 자율 주행 가능한 이동 로봇의 주행 제어 방법.
  9. 제1항에 있어서,
    상기 제2 주행 모드에 따라 이동 로봇의 주행 경로를 제어하는 단계는,
    상기 이동 로봇이 이미 주행한 상기 제1 주행 모드에 따른 경로와 미리 결정된 기준에 따른 중첩이 발생되도록 상기 이동 로봇의 주행을 제어하는 것을 특징으로 하는 자율 주행 가능한 이동 로봇의 주행 제어 방법.
  10. 자율 주행 가능한 이동 로봇에 있어서,
    상기 이동 로봇의 주변에 위치한 장애물을 감지하는 센서부;
    상기 이동 로봇이 나선 청소 패턴에 따라 주행하도록, 제1 주행 모드, 제2 주행 모드 및 제3 주행 모드 중 하나의 주행 모드에 따라 상기 이동 로봇의 주행을 제어하고, 상기 제1 주행 모드 또는 상기 제2 주행 모드에 따라 상기 이동 로봇이 이동하는 도중 상기 이동 로봇의 이동 경로에 수직인 방향에 위치하는 영역에 상기 이동 로봇이 이동할 수 있는 후보 지점을 생성하는 주행 제어부; 및
    상기 주행 제어부의 주행 명령에 따라 상기 이동 로봇을 구동시키는 구동부;
    를 포함하고,
    상기 제1 주행 모드는, 상기 이동 로봇의 주변에 위치하는 장애물과 기 설정된 간격을 유지하면서 상기 이동 로봇이 상기 이동 로봇의 주변에 위치하는 장애물을 추종하여 주행하도록 하는 주행 모드이며,
    상기 제2 주행 모드는, 상기 이동 로봇이 이전에 이동한 경로와 기 설정된 간격을 유지하면서 상기 이동 로봇이 이미 주행한 기존 주행 경로와의 위치관계를 고려하여 주행하도록 하는 주행 모드이고,
    상기 제3 주행 모드는, 상기 이동 로봇이 상기 후보 지점을 기반으로 결정되는 목표 지점으로 이동하도록 하는 주행 모드이며,
    상기 주행 제어부는, 상기 제2 주행 모드 또는 상기 제3 주행 모드에 따라 상기 이동 로봇이 이동하는 도중에 상기 이동 로봇의 주변에 위치하는 장애물이 감지되면 상기 제1 주행 모드로 상기 이동 로봇의 주행 모드를 변경하고, 상기 제1 주행 모드 또는 상기 제2 주행 모드에 따라 상기 이동 로봇이 이동하는 도중에 상기 이동 로봇이 이전에 방문한 지점을 재방문하면 상기 제3 주행 모드로 상기 이동 로봇의 주행 모드를 변경하며, 상기 제3 주행 모드에 따라 상기 이동 로봇이 이동하는 도중에 상기 목표 지점에 도착하면 상기 제2 주행 모드로 상기 이동 로봇의 주행 모드를 변경하는,
    자율 주행 가능한 이동 로봇.
  11. 삭제
  12. 제10항에 있어서,
    상기 주행 제어부는, 상기 이동 로봇의 전방에서 기 설정된 거리보다 가까운 거리에서 상기 장애물이 감지되는 경우, 상기 이동 로봇의 속도를 저감시키고 상기 이동 로봇의 곡률 반경을 더 적게 하는 방향으로 회전하도록 주행을 제어하고,
    상기 이동 로봇의 일측에서 기 설정된 거리보다 가까운 거리에서 상기 장애물이 감지되는 경우, 상기 장애물이 상기 일측으로부터 상기 이동 로봇의 반대측에 위치하도록 상기 이동 로봇을 제자리에서 회전시키도록 주행을 제어하는 것을 특징으로 하는 자율 주행 가능한 이동 로봇.
  13. 제10항에 있어서,
    상기 주행 제어부는, 상기 이동 로봇을 이동시키는 메인 휠의 회전에 따른 휠 인코더 정보와, 상기 이동 로봇의 중심과 상기 메인 휠 간의 거리를 이용하여 후보 지점을 선정하고, 상기 선정된 후보 지점을 일정한 기준에 따라 누적하여 저장하는 것을 특징으로 하는 자율 주행 가능한 이동 로봇.
  14. 제10항에 있어서,
    상기 주행 제어부는, 상기 이동 로봇이 이미 주행한 상기 제1 주행 모드에 따른 경로와 미리 결정된 기준에 따른 중첩이 발생되도록 상기 이동 로봇의 주행을 제어하는 것을 특징으로 하는 자율 주행 가능한 이동 로봇.
  15. 제1항, 제3항 내지 제9항 중 어느 하나의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020190120981A 2018-12-07 2019-09-30 자율 주행 가능한 이동 로봇 및 이의 주행 제어 방법 KR102301758B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP19893670.0A EP3892426A4 (en) 2018-12-07 2019-12-06 MOBILE ROBOT WITH AUTONOMOUS MOVEMENT AND ASSOCIATED MOVEMENT CONTROL METHOD
PCT/KR2019/017186 WO2020116986A1 (ko) 2018-12-07 2019-12-06 자율 주행 가능한 이동 로봇 및 이의 주행 제어 방법
US17/311,358 US20220022715A1 (en) 2018-12-07 2019-12-06 Autonomously traveling mobile robot and traveling control method therefor

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20180156943 2018-12-07
KR1020180156943 2018-12-07
KR1020190086265 2019-07-17
KR20190086265 2019-07-17

Publications (2)

Publication Number Publication Date
KR20200070087A KR20200070087A (ko) 2020-06-17
KR102301758B1 true KR102301758B1 (ko) 2021-09-14

Family

ID=71405663

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190120981A KR102301758B1 (ko) 2018-12-07 2019-09-30 자율 주행 가능한 이동 로봇 및 이의 주행 제어 방법

Country Status (2)

Country Link
EP (1) EP3892426A4 (ko)
KR (1) KR102301758B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11835343B1 (en) * 2004-08-06 2023-12-05 AI Incorporated Method for constructing a map while performing work
CN111949019A (zh) * 2020-07-10 2020-11-17 丁武辉 一种智能机器人自主定位巡航用路面探测机构
KR102384102B1 (ko) * 2020-09-29 2022-04-06 주식회사 케이티 자율주행 로봇 및 자율주행 로봇의 주행 방법
KR20230035871A (ko) 2021-09-06 2023-03-14 에이치엘만도 주식회사 비정밀 지도 및 정밀 지도를 활용한 자율 주행 로봇 제어 시스템 및 이의 구동 방법
KR102605436B1 (ko) * 2021-10-21 2023-11-23 한국기술교육대학교 산학협력단 무인 순찰 로봇 시스템 및 이의 작동 방법

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002101477A2 (en) * 2001-06-12 2002-12-19 Irobot Corporation Method and system for multi-mode coverage for an autonomous robot
KR100600487B1 (ko) * 2004-10-12 2006-07-13 삼성광주전자 주식회사 로봇 청소기의 좌표보정방법 및 이를 이용한 로봇 청소기시스템
KR100711995B1 (ko) * 2005-01-07 2007-05-02 주식회사 유진로봇 청소용 로봇 및 이를 이용한 청소방법
KR100919698B1 (ko) * 2007-08-14 2009-09-29 포항공과대학교 산학협력단 로봇청소기를 이용한 청소방법
EP3311722B1 (en) * 2008-04-24 2019-07-24 iRobot Corporation Application of localization, positioning & navigation systems for robotic enabled mobile products
KR101931360B1 (ko) * 2011-10-21 2018-12-24 삼성전자주식회사 로봇 청소기 및 그 제어방법
KR102009482B1 (ko) * 2012-10-30 2019-08-14 한화디펜스 주식회사 로봇의 경로계획 장치와 방법 및 상기 방법을 구현하는 프로그램이 기록된 기록 매체
EP3082544B1 (en) * 2013-12-19 2020-10-07 Aktiebolaget Electrolux Robotic vacuum cleaner with side brush moving in spiral pattern
WO2018101631A2 (ko) * 2016-11-30 2018-06-07 (주)유진로봇 청소 로봇, 청소 로봇에 구비되는 청소 기능 제어 장치, 및 청소 로봇에 구비되는 다채널 라이더 기반 장애물 검출 장치

Also Published As

Publication number Publication date
EP3892426A1 (en) 2021-10-13
EP3892426A4 (en) 2022-08-17
KR20200070087A (ko) 2020-06-17

Similar Documents

Publication Publication Date Title
KR102301758B1 (ko) 자율 주행 가능한 이동 로봇 및 이의 주행 제어 방법
KR102252033B1 (ko) 이동 로봇 및 그 제어방법
JP5560978B2 (ja) 自律移動体
US11148290B2 (en) Plurality of robot cleaner and a controlling method for the same
KR102404258B1 (ko) 로봇충전복귀장치 및 그 복귀방법
CN112367888B (zh) 多个机器人清洁器及其控制方法
JP5560979B2 (ja) 自律移動体
JP6054425B2 (ja) 自己位置推定を自動的に実行する方法
US11497364B2 (en) Robot cleaner and controlling method thereof
TWI733105B (zh) 複數個移動式機器人及其控制方法
CN214484411U (zh) 自主式地板清洁器
KR102595187B1 (ko) 경로 계획
CN103054517A (zh) 机器人吸尘器以及用于该机器人吸尘器的控制方法
JP2009037378A (ja) 自律走行装置およびプログラム
US20200397202A1 (en) Floor treatment by means of an autonomous mobile robot
EP2870513A1 (en) Autonomous mobile robot and method for operating the same
US20160195875A1 (en) Autonomous mobile robot and method for operating the same
JP5553220B2 (ja) 移動体
JP6348971B2 (ja) 移動体
KR20130056655A (ko) 무인 자율주행 운반차량의 충돌회피 대응방법
JP4962255B2 (ja) 自走式装置
US20220022715A1 (en) Autonomously traveling mobile robot and traveling control method therefor
JP4910972B2 (ja) 自走式装置およびプログラム
KR20180080935A (ko) 로봇 청소기
KR101353309B1 (ko) 로봇청소기 시스템 및 그 제어방법

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