KR102339974B1 - 이동 로봇 및 그 제어 방법 - Google Patents

이동 로봇 및 그 제어 방법 Download PDF

Info

Publication number
KR102339974B1
KR102339974B1 KR1020200029749A KR20200029749A KR102339974B1 KR 102339974 B1 KR102339974 B1 KR 102339974B1 KR 1020200029749 A KR1020200029749 A KR 1020200029749A KR 20200029749 A KR20200029749 A KR 20200029749A KR 102339974 B1 KR102339974 B1 KR 102339974B1
Authority
KR
South Korea
Prior art keywords
cost
stay
mobile robot
grid
driving
Prior art date
Application number
KR1020200029749A
Other languages
English (en)
Other versions
KR20210114258A (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 KR1020200029749A priority Critical patent/KR102339974B1/ko
Priority to PCT/KR2021/002928 priority patent/WO2021182857A1/ko
Priority to US17/196,070 priority patent/US11625040B2/en
Priority to EP21767370.6A priority patent/EP4119303A4/en
Publication of KR20210114258A publication Critical patent/KR20210114258A/ko
Application granted granted Critical
Publication of KR102339974B1 publication Critical patent/KR102339974B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0217Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/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
    • 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
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01DHARVESTING; MOWING
    • A01D34/00Mowers; Mowing apparatus of harvesters
    • A01D34/006Control or measuring arrangements
    • A01D34/008Control or measuring arrangements for automated or remotely controlled operation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1684Tracking a line or surface by means of sensors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/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, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0225Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving docking at a fixed facility, e.g. base station or loading bay

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Environmental Sciences (AREA)
  • Mathematical Physics (AREA)
  • Fuzzy Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

본 발명의 일 측면에 따른 이동 로봇은, 외관을 형성하는 바디(body), 주행 영역의 주행면에 대해 상기 바디를 이동시키는 주행부, 및, 상기 주행 영역에 대응하는 격자 지도(grid map) 및 상기 격자 지도에 포함되는 격자들의 비용(cost) 정보가 저장되는 저장부, 상기 비용 정보에 기초하여 이동 경로를 생성하고, 상기 생성된 이동 경로에 따라 주행하도록 상기 주행부를 제어하며, 상기 주행 시 지나간 경로에 대응하는 격자의 스테이 비용(stay cost)을 증가시켜 저장하도록 제어하는 제어부를 포함할 수 있다.

Description

이동 로봇 및 그 제어 방법{Moving Robot and controlling method}
본 발명은 자율주행하는 이동 로봇 및 그 제어 방법에 관한 것으로, 실외 환경에서 효율 및 신뢰성이 높은 이동 로봇의 패턴 주행에 관한 것이다.
로봇은 산업용으로 개발되어 공장 자동화의 일 부분을 담당하여 왔다. 최근에는 로봇을 응용한 분야가 더욱 확대되어, 의료용 로봇, 우주 항공 로봇 등이 개발되고, 일반 가정에서 사용할 수 있는 가정용 로봇도 만들어지고 있다. 이러한 로봇 중에서 자력으로 주행이 가능한 것을 이동 로봇이라고 한다. 가정의 야외 환경에서 사용되는 이동 로봇의 대표적인 예는 잔디깎이 로봇이다.
실내를 자율 주행하는 이동 로봇의 경우 벽이나 가구 등에 의해 이동 가능 영역이 제한되나, 실외를 자율 주행하는 이동 로봇의 경우 이동 가능한 영역을 사전에 설정해야 할 필요성이 있다. 또한, 상기 잔디깎이 로봇이 잔디가 심어진 영역을 주행하도록 이동 가능한 영역을 제한할 필요성이 있다.
종래 기술 1(한국공개특허공보 제2015-0125508호)에서는, 잔디깎이 로봇이 이동할 영역을 설정하기 와이어를 매설하고, 잔디깎이 로봇은 와이어에 의해 흐르는 전류에 의해 형성되는 자기장을 센싱(sensing)하여 와이어에 의해 설정된 영역 내에서 이동할 수 있다.
또한, 경계를 설정하여 이동을 제한하는 것에 있어서, 비콘(Becon) 방식으로 신호를 송출하여 가상의 벽(Virtual wall)을 설정하여 이동 로봇의 주행을 제한할 수 있다.
잔디깎이 로봇은, 제한된 주행 영역을 주행하며 잔디를 깍을 수 있으나, 충전대 등 동일 시작점에서 다른 지점까지 동일한 알고리즘에 따라 동일 경로로 이동하고 있다. 이에 따라, 동일한 장소를 반복적으로 방문함으로써 효율이 떨어지고 잔디가 손상될 수 있는 문제점이 있다.
종래 기술 2(미국등록특허공보 제9063547호)는 충전기로 귀환할 때마다 동일한 궤적을 주행하는 문제점을 해결하기 위하여 작업 에리어의 둘레 가장자리에 배치된 에리어 와이어의 자기 강도에 따라 기설정된 복수의 궤적으로 귀환하고 있다.
종래 기술 2는 와이어가 없는 와이어리스 방식에는 적용할 수 없고 잔디깎기 작업 등 귀환 위외의 주행시 사용할 수 없다는 한계가 있었다.
종래 기술의 경로 계획 수립 및 주행은 효율이 떨어지고 잔디 손상 가능성이 큰 문제가 있었다. 본 발명의 목적은, 동일 지점 방문을 최소화하여 잔디 손상을 최소화하고 효율은 향상하는 것이다.
본 발명의 목적은, 실외 환경에서 효율 및 신뢰성이 높은 이동 로봇 및 그 제어 방법을 제공함에 있다.
본 발명의 목적은, 와이어와 무관하게 반복적으로 주행하는 영역을 최소화함으로써, 와이어 방식과 와이어리스 방식에서, 잔디 손상 가능성을 감소시키고 효율은 향상할 수 있는 이동 로봇 및 그 제어 방법을 제공함에 있다.
본 발명의 다른 목적은, 상황에 따라 경로를 효과적으로 수립할 수 있는 이동 로봇 및 그 제어 방법을 제공함에 있다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇 및 그 제어 방법은, 동일 지점 방문을 최소화함으로써, 잔디 손상을 최소화하고 효율은 향상할 수 있다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇 및 그 제어 방법은, 주행 시 지나간 경로에 대한 비용(cost)을 이후의 경로 계획에 반영함으로써, 동일 지점 방문을 최소화할 수 있다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇은, 외관을 형성하는 바디(body), 주행 영역의 주행면에 대해 상기 바디를 이동시키는 주행부, 및, 상기 주행 영역에 대응하는 격자 지도(grid map) 및 상기 격자 지도에 포함되는 격자들의 비용(cost) 정보가 저장되는 저장부, 상기 비용 정보에 기초하여 이동 경로를 생성하고, 상기 생성된 이동 경로에 따라 주행하도록 상기 주행부를 제어하며, 상기 주행 시 지나간 경로에 대응하는 격자의 스테이 비용(stay cost)을 증가시켜 저장하도록 제어하는 제어부를 포함할 수 있다.
한편, 상기 비용 정보는, 상기 주행 영역의 환경 정보에 기반하여 부여되는 고유 비용(intrinsic cost), 및, 상기 스테이 비용을 포함할 수 있다.
또한, 상기 스테이 비용은, 상기 주행 영역에 대응하는 격자들과 각 격자들의 스테이 비용으로 구성되는 스테이 지도(stay map)에 별도로 저장될 수 있다.
또는, 상기 고유 비용과 상기 스테이 비용은 상기 격자 지도 상에 저장될 수 있다.
한편, 상기 제어부는, 상기 고유 비용, 상기 스테이 비용, 및 출발점에서 도착점까지 이동할 때 발생하는 거리에 대한 인접 비용(adjacent cost)을 합산하여 주행 비용을 산출하고, 주행 비용이 최소가 되는 경로로 상기 이동 경로를 생성할 수 있다.
또한, 상기 제어부는, 1회 주행시 상기 스테이 비용을 인접한 두 격자의 인접 비용 차이값과 동일하게 증가시킬 수 있다.
또한, 상기 인접 비용은 이동 거리에 비례할 수 있다.
한편, 상기 제어부는, 어느 한 격자의 스테이 비용이 상기 고유 비용의 최소값이상이 되면 전 스테이 비용들을 초기화할 수 있다.
한편, 상기 고유 비용은, 고정 객체 또는 경계선에 대응하는 위험 영역에 대해서 제1값이 설정되고, 상기 위험 영역에 인접한 위험 예상 영역에 대해서 상기 제1값보다 낮은 제2값이 설정될 수 있다. 이 경우에, 상기 제어부는, 어느 한 격자의 스테이 비용이 상기 제2값 이상이 되면 전 스테이 비용들을 초기화할 수 있다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇의 제어 방법은, 주행 영역에 대응하는 격자 지도(grid map)의 격자들에 비용(cost) 정보를 설정하는 단계, 상기 비용 정보에 기초하여 주행하는 단계. 및, 상기 주행 시 지나간 경로에 대응하는 격자의 스테이 비용(stay cost)을 증가시켜 저장하는 단계를 포함할 수 있다.
한편, 상기 비용 정보는, 상기 주행 영역의 환경 정보에 기반하여 부여되는 고유 비용(intrinsic cost), 및, 상기 스테이 비용을 포함할 수 있다.
또한, 상기 스테이 비용은, 상기 주행 영역에 대응하는 격자들과 각 격자들의 스테이 비용으로 구성되는 스테이 지도(stay map)에 별도로 저장될 수 있다.
또는, 상기 고유 비용과 상기 스테이 비용은 상기 격자 지도 상에 저장될 수 있다.
한편, 상기 이동 경로 생성 단계는, 상기 고유 비용, 상기 스테이 비용, 및 출발점에서 도착점까지 이동할 때 발생하는 거리에 대한 인접 비용을 합산하여 주행 비용을 산출하고, 주행 비용이 최소가 되는 경로로 상기 이동 경로를 생성할 수 있다.
또한, 상기 스테이 비용을 증가시켜 저장하는 단계는, 1회 주행시 상기 스테이 비용을 인접한 두 격자의 인접 비용 차이값과 동일하게 증가시킬 수 있다.
한편, 상기 인접 비용은 이동 거리에 비례할 수 있다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇의 제어 방법은, 어느 한 격자의 스테이 비용이 상기 고유 비용의 최소값이상이 되면 전 스테이 비용들을 초기화하는 단계를 더 포함할 수 있다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇의 제어 방법은, 상기 고유 비용은, 고정 객체 또는 경계선에 대응하는 위험 영역에 대해서 제1값이 설정되고, 상기 위험 영역에 인접한 위험 예상 영역에 대해서 상기 제1값보다 낮은 제2값이 설정되고, 어느 한 격자의 스테이 비용이 상기 제2값 이상이 되면 전 스테이 비용들을 초기화하는 단계를 더 포함할 수 있다.
본 발명의 실시 예들 중 적어도 하나에 의하면, 동일 지점 방문을 최소화하여 잔디 손상을 최소화하고 효율은 향상할 수 있다는 장점이 있다.
또한, 본 발명의 실시 예들 중 적어도 하나에 의하면, 실외 환경에서 효율 및 신뢰성이 높은 이동 로봇 및 그 제어 방법을 제공할 수 있다.
또한, 본 발명의 실시 예들 중 적어도 하나에 의하면, 와이어와 무관하게 반복적으로 주행하는 영역을 최소화함으로써, 와이어 방식과 와이어리스 방식에서, 잔디 손상 가능성을 감소시키고 효율은 향상할 수 있는 이동 로봇 및 그 제어 방법을 제공할 수 있다.
또한, 본 발명의 실시 예들 중 적어도 하나에 의하면, 상황에 따라 경로를 효과적으로 수립할 수 있다.
한편, 그 외의 다양한 효과는 후술될 본 발명의 실시 예에 따른 상세한 설명에서 직접적 또는 암시적으로 개시될 것이다.
도 1은 본 발명의 일 실시 예에 따른 이동 로봇의 사시도이다.
도 2는 도 1의 이동 로봇의 정면을 바라본 입면도이다.
도 3은 도 1의 이동 로봇의 우측면을 바라본 입면도이다.
도 4는 도 1의 이동 로봇의 하측면을 바라본 입면도이다.
도 5는 도 1의 이동 로봇을 도킹(docking)시키는 도킹 기기를 도시한 사시도이다.
도 6은 도 5의 도킹 기기를 정면을 바라본 입면도이다.
도 7은 도 1의 이동 로봇의 제어 관계를 나타낸 블록도이다.
도 8은 본 발명의 일 실시 예에 따른 이동 로봇의 제어 방법의 순서도이다
도 9 내지 도 19c는 본 발명의 실시 예에 따른 이동 로봇의 제어 방법에 관한 설명에 참조되는 도면이다
이하에서 언급되는 “전(F)/후(R)/좌(Le)/우(Ri)/상(U)/하(D)” 등의 방향을 지칭하는 표현은 도면에 표시된 바에 따라 정의하나, 이는 어디까지나 본 발명이 명확하게 이해될 수 있도록 설명하기 위한 것이며, 기준을 어디에 두느냐에 따라 각 방향들을 다르게 정의할 수도 있음은 물론이다.
이하에서 언급되는 구성요소 앞에 ‘제1 , 제2' 등의 표현이 붙는 용어 사용은, 지칭하는 구성요소의 혼동을 피하기 위한 것일 뿐, 구성요소들 사이의 순서, 중요도 또는 주종관계 등과는 무관하다. 예를 들면, 제1 구성요소 없이 제2 구성요소 만을 포함하는 발명도 구현 가능하다.
이하 도 1 내지 도 6을 참조하여, 이동 로봇 중 잔디깎이 로봇(100)을 예로 들어 설명하나, 반드시 이에 한정될 필요는 없다.
도 1 내지 도 4를 참고하여, 이동 로봇(100)은 외관을 형성하는 바디(110)를 포함한다. 바디(110)는 내부 공간을 형성한다. 이동 로봇(100)은 주행면에 대해 바디(110)를 이동시키는 주행부(120)을 포함한다. 이동 로봇(100)은 소정의 작업을 수행하는 작업부(130)를 포함한다.
바디(110)는 후술할 구동 모터 모듈(123)이 고정되는 프레임(111)을 포함한다. 프레임(111)에 후술할 블레이드 모터(132)가 고정된다. 프레임(111)은 후술할 배터리를 지지한다. 프레임(111)은 그 밖에도 다른 여러 부품들을 지지하는 뼈대 구조를 제공한다. 프레임(111)은 보조 휠(125) 및 구동 휠(121)에 의해 지지된다.
바디(110)는 블레이드(131)의 양 측방에서 사용자의 손가락이 블레이드(131)로 진입하는 것을 차단하기 위한 측방 차단부(111a)를 포함한다. 측방 차단부(111a)는 프레임(111)에 고정된다. 측방 차단부(111a)는 프레임(111)의 다른 부분의 하측면에 비해 하측으로 돌출되어 배치된다. 측방 차단부(111a)는 구동 휠(121)과 보조 휠(125)의 사이 공간의 상측부를 커버하며 배치된다.
한 쌍의 측방 차단부(111a-1, 111a-2)가 블레이드(131)를 사이에 두고 좌우로 배치된다. 측방 차단부(111a)는 블레이드(131)로부터 소정 거리 이격되어 배치된다.
측방 차단부(111a)의 전방면(111af)은 라운드지게 형성된다. 전방면(111af)은 측방 차단부(111a)의 하측면에서부터 전방으로 갈수록 라운드지게 상측으로 꺾이는 표면을 형성한다. 이러한 전방면(111af)의 형상을 이용하여, 이동 로봇(100)이 전방으로 이동할 때 측방 차단부(111a)는 소정 기준 이하의 하부 장애물을 쉽게 타고 넘어갈 수 있다.
바디(110)는 블레이드(131)의 전방에서 사용자의 손가락이 블레이드(131)로 진입하는 것을 차단하기 위한 전방 차단부(111b)를 포함한다. 전방 차단부(111b)는 프레임(111)에 고정된다. 전방 차단부(111b)는 한 쌍의 보조 휠(125(L), 125(R))의 사이 공간의 상측부의 일부를 커버하며 배치된다.
전방 차단부(111b)는 프레임(111)의 다른 부분의 하측면에 비해 하측으로 돌출되는 돌출 리브(111ba)를 포함한다. 돌출 리브(111ba)는 전후 방향으로 연장된다. 돌출 리브(111ba)의 상단부는 프레임(111)에 고정되고, 돌출 리브(111ba)의 하단부는 자유단을 형성한다.
복수의 돌출 리브(111ba)가 좌우 방향으로 이격되어 배치될 수 있다. 복수의 돌출 리브(111ba)가 서로 평행하게 배치될 수 있다. 인접하는 2개의 돌출 리브(111ba) 사이에 틈이 형성된다.
돌출 리브(111ba)의 전방면은 라운드지게 형성된다. 돌출 리브(111ba)의 상기 전방면은 돌출 리브(111ba)의 하측면에서부터 전방으로 갈수록 라운드지게 상측으로 꺾이는 표면을 형성한다. 이러한 돌출 리브(111ba)의 상기 전방면의 형상을 이용하여, 이동 로봇(100)이 전방으로 이동할 때 돌출 리브(111ba)는 소정 기준 이하의 하부 장애물을 쉽게 타고 넘어갈 수 있다.
전방 차단부(111b)는 강성을 보조하는 보조 리브(111bb)를 포함한다. 인접하는 2개의 돌출 리브(111ba)의 상단부의 사이에, 전방 차단부(111b)의 강성을 보강하기 위한 보조 리브(111bb)가 배치된다. 보조 리브(111bb)는 하측으로 돌출되고 격자형으로 연장되어 형성될 수 있다.
프레임(111)에는 보조 휠(125)을 회전 가능하게 지지하는 캐스터(미도시)가 배치된다. 상기 캐스터는 프레임(111)에 대해 회전 가능하게 배치된다. 상기 캐스터는 수직 축을 중심으로 회전 가능하게 구비된다. 상기 캐스터는 프레임(111)의 하측에 배치된다. 한 쌍의 보조 휠(125)에 대응하는 한 쌍의 상기 캐스터가 구비된다.
바디(110)는 프레임(111)을 상측에서 덮어주는 케이스(112)를 포함한다. 케이스(112)는 이동 로봇(100)의 상측면 및 전/후/좌/우 측면을 형성한다.
바디(110)는 케이스(112)를 프레임(111)에 고정시키는 케이스 연결부(미도시)를 포함할 수 있다. 상기 케이스 연결부의 상단에 케이스(112)에 고정될 수 있다. 상기 케이스 연결부는 프레임(111)에 유동 가능하게 배치될 수 있다. 상기 케이스 연결부는 프레임(111)에 대해 상하 방향으로만 유동 가능하게 배치될 수 있다. 상기 케이스 연결부는 소정 범위 내에서만 유동 가능하게 구비될 수 있다. 상기 케이스 연결부는 케이스(112)와 일체로 유동한다. 이에 따라, 케이스(112)는 프레임(111)에 대해 유동이 가능하다.
바디(110)는 전방부에 배치되는 범퍼(112b)를 포함한다. 범퍼(112b)는 외부의 장애물과 접촉시 충격을 흡수해 주는 기능을 수행한다. 범퍼(112b) 정면부에는, 후측으로 함몰되어 좌우 방향으로 길게 형성된 범퍼 홈이 형성될 수 있다. 복수의 상기 범퍼 홈이 상하 방향으로 이격되어 배치될 수 있다. 돌출 리브(111ba)의 하단이 보조 리브(111bb)의 하단보다 더 낮은 위치에 배치된다.
범퍼(112b)는 전방면 및 좌우 측면이 서로 연결되어 형성된다. 범퍼(112b)의 전방면 및 측면은 라운드지게 연결된다.
바디(110)는 범퍼(112b)의 외표면을 감싸며 배치되는 범퍼 보조부(112c)를 포함할 수 있다. 범퍼 보조부(112c)는 범퍼(112b)에 결합된다. 범퍼 보조부(112c)는 범퍼(112b)의 전방면의 하부 및 좌우 측면의 하부를 감싸준다. 범퍼 보조부(112c)는 범퍼(112b)의 전방면 및 좌우 측면의 하반부를 덮어줄 수 있다.
범퍼 보조부(112c)의 전단면은 범퍼(112b)의 전단면보다 전방에 배치된다. 범퍼 보조부(112c)는 범퍼(112b)의 표면에서 돌출된 표면을 형성한다.
범퍼 보조부(112c)는 고무 등 충격 흡수에 유리한 재질로 형성될 수 있다. 범퍼 보조부(112c)는 플렉서블(flexible)한 재질로 형성될 수 있다.
프레임(111)에는, 범퍼(112b)가 고정되는 유동 고정부(미도시)가 구비될 수 있다. 상기 유동 고정부는 프레임(111)의 상측으로 돌출되게 배치될 수 있다. 상기 유동 고정부의 상단부에 범퍼(112b)가 고정될 수 있다.
범퍼(112b)는 프레임(111)에 대해 소정 범위 내 유동 가능하게 배치될 수 있다. 범퍼(112b)는 상기 유동 고정부에 고정되어 상기 유동 고정부와 일체로 유동할 수 있다.
상기 유동 고정부는 프레임(111)에 유동 가능하게 배치될 수 있다. 상기 유동 고정부는 가상의 회전축을 중심으로, 상기 유동 고정부가 프레임(111)에 대해 소정 범위 내 회전 가능하게 구비될 수 있다. 이에 따라, 범퍼(112b)는 프레임(111)에 대해 상기 유동 고정부와 일체로 회전 가능하게 구비될 수 있다.
바디(110)는 손잡이(113)를 포함한다. 손잡이(113)는 케이스(112)의 후측부에 배치될 수 있다.
바디(110)는 상기 배터리를 인출입하기 위한 배터리 투입부(114)를 포함한다. 배터리 투입부(114)는 프레임(111)의 하측면에 배치될 수 있다. 배터리 투입부(114)는 프레임(111)의 후측부에 배치될 수 있다.
바디(110)는 이동 로봇(100)의 전원을 On/Off하기 위한 전원 스위치(115)를 포함한다. 전원 스위치(115)는 프레임(111)의 하측면에 배치될 수 있다.
바디(110)는 블레이드(131)의 중앙부의 하측을 가려주는 블레이드 보호부(116)를 포함한다. 블레이드 보호부(116)는 블레이드(131)의 원심 방향 부분의 날이 노출되되 블레이드(131)의 중앙부가 가려지도록 구비된다.
바디(110)는 높이 조절부(156) 및 높이 표시부(157)가 배치된 부분을 개폐시키는 제1 개폐부(117)를 포함한다. 제1 개폐부(117)는 케이스(112)에 힌지(hinge) 결합되어, 열림 동작 및 닫힘 동작이 가능하게 구비된다. 제1 개폐부(117)는 케이스(112)의 상측면에 배치된다.
제1 개폐부(117)는 판형으로 형성되어, 닫힘 상태에서 높이 조절부(156) 및 높이 표시부(157)의 상측을 덮어준다.
바디(110)는 디스플레이 모듈(165) 및 입력부(164)가 배치된 부분을 개폐시키는 제2 개폐부(118)를 포함한다. 제2 개폐부(118)는 케이스(112)에 힌지 결합되어, 열림 동작 및 닫힘 동작이 가능하게 구비된다. 제2 개폐부(118)는 케이스(112)의 상측면에 배치된다. 제2 개폐부(118)는 제1 개폐부(117)의 후방에 배치된다.
제2 개폐부(118)는 판형으로 형성되어, 닫힘 상태에서 디스플레이 모듈(165) 및 입력부(164)를 덮어준다.
제2 개폐부(118)의 상기 열림 가능 각도는 상기 제1 개폐부(117)의 상기 열림 가능 각도에 비해 작도록, 기설정된다. 이를 통해, 제2 개폐부(118)의 열림 상태에서도, 사용자가 제1 개폐부(117)를 쉽게 열게 해주고, 사용자가 쉽게 높이 조절부(156)를 조작할 수 있게 해준다. 또한, 제2 개폐부(118)의 열림 상태에서도, 사용자가 높이 표시부(157)의 내용을 시각적으로 확인할 수 있게 해준다.
예를 들어, 제1 개폐부(117)의 열림 가능 각도는 닫힘 상태를 기준으로 약 80 내지 90도 정도가 되도록 구비될 수 있다. 예를 들어, 제2 개폐부(118)의 열림 가능 각도는 닫힘 상태를 기준으로 약 45 내지 60도 정도가 되도록 구비될 수 있다.
제1 개폐부(117)는 전단부를 중심으로 후단부가 상측으로 들어올려져 열림 동작하고, 제2 개폐부(118)는 전단부를 중심으로 후단부가 상측으로 들어올려져 열림 동작한다. 이를 통해, 잔디깎이 로봇(100)이 전방으로 이동할 때에도 안전한 지역인 잔디깎이 로봇(100)의 후방에서, 사용자가 제1 개폐부(117) 및 제2 개폐부(118)를 여닫을 수 있다. 또한, 이를 통해, 제1 개폐부(117)의 열림 동작과 제2 개폐부(118)의 열림 동작이 서로 간섭되지 않게 할 수 있다.
제1 개폐부(117)의 전단부에서 좌우 방향으로 연장된 회전축을 중심으로, 제1 개폐부(117)가 케이스(112)에 대해 회전 동작 가능하게 구비될 수 있다. 제2 개폐부(118)의 전단부에서 좌우 방향으로 연장된 회전축을 중심으로, 제2 개폐부(118)가 케이스(112)에 대해 회전 동작 가능하게 구비될 수 있다.
바디(110)는, 제1 구동 모터(123(L))를 내부에 수용하는 제1 모터 하우징(119a)과, 제2 구동 모터(123(R))를 내부에 수용하는 제2 모터 하우징(119b)을 포함할 수 있다. 제1 모터 하우징(119a)은 프레임(111)의 좌측에 고정되고, 제2 모터 하우징(119b)은 프레임의 우측에 고정될 수 있다. 제1 모터 하우징(119a)의 우단이 프레임(111)에 고정된다. 제2 모터 하우징(119b)의 좌단이 프레임(111)에 고정된다.
제1 모터 하우징(119a)은 전체적으로 좌우로 높이를 형성하는 원통형으로 형성된다. 제2 모터 하우징(119b)은 전체적으로 좌우로 높이를 형성하는 원통형으로 형성된다.
주행부(120)는 구동 모터 모듈(123)의 구동력에 의해 회전하는 구동 휠(121)을 포함한다. 주행부(120)는, 구동 모터 모듈(123)의 구동력에 의해 회전하는 적어도 한 쌍의 구동 휠(121)을 포함할 수 있다. 구동 휠(121)은, 각각 독립적으로 회전 가능하게 좌우에 구비되는 제1 휠(121(L)) 및 제2 휠(121(R))을 포함한다. 제1 휠(121(L))는 좌측에 배치되고, 제2 휠(121(R))는 우측에 배치된다. 제1 휠(121(L)) 및 제2 휠(121(R))은 좌우로 이격 배치된다. 제1 휠(121(L)) 및 제2 휠(121(R))은 바디(110)의 후측 하방부에 배치된다.
제1 휠(121(L)) 및 제2 휠(121(R))은 바디(110)가 지면에 대해 회전 운동 및 전진 운동이 가능하도록 각각 독립적으로 회전 가능하게 구비된다. 예를 들어, 제1 휠(121(L))과 제2 휠(121(R))이 같은 회전 속도로 회전할 때, 바디(110)는 지면에 대해 전진 운동할 수 있다. 예를 들어, 제1 휠(121(L))의 회전 속도가 제2 휠(121(R))의 회전 속도보다 빠르거나 제1 휠(121(L))의 회전 방향 및 제2 휠(121(R))의 회전 방향이 서로 다를 때, 바디(110)는 지면에 대해 회전 운동을 할 수 있다.
제1 휠(121(L)) 및 제2 휠(121(R))은 보조 휠(125)보다 크게 형성될 수 있다. 제1 휠(121(L))의 중심부에 제1 구동 모터(123(L))의 축이 고정될 수 있고, 제2 휠(121(R))의 중심부에 제2 구동 모터(123(R))의 축이 고정될 수 있다.
구동 휠(121)은 지면과 접촉하는 휠 외주부(121b)를 포함한다. 예를 들어, 휠 외주부(121b)는 타이어일 수 있다. 휠 외주부(121b)에는 지면과의 마찰력을 상승시키기 위한 복수의 돌기가 형성될 수 있다.
구동 휠(121)은 휠 외주부(121b)를 고정시키고 모터(123)의 동력을 전달받는 휠 프레임(미도시)을 포함할 수 있다. 상기 휠 프레임의 중앙부에 모터(123)의 축이 고정되어, 회전력을 전달받을 수 있다. 휠 외주부(121b)는 상기 휠 프레임의 둘레를 감싸며 배치된다.
구동 휠(121)은 상기 휠 프레임의 외측 표면을 덮어주는 휠 커버(121a)를 포함한다. 휠 커버(121a)는 상기 휠 프레임을 기준으로 모터(123)가 배치된 방향의 반대 방향에 배치된다. 휠 커버(121a)는 휠 외주부(121b)의 중앙부에 배치된다.
주행부(120는 구동력을 발생시키는 구동 모터 모듈(123)을 포함한다. 구동 휠(121)에 구동력을 제공하는 구동 모터 모듈(123)을 포함한다. 구동 모터 모듈(123)은, 제1 휠(121(L))의 구동력을 제공하는 제1 구동 모터(123(L))와, 제2 휠(121(R))의 구동력을 제공하는 제2 구동 모터(123(R))를 포함한다. 제1 구동 모터(123(L))와 제2 구동 모터(123(R))는 좌우로 이격되어 배치될 수 있다. 제1 구동 모터(123(L))는 제2 구동 모터(123(R))의 좌측에 배치될 수 있다.
제1 구동 모터(123(L)) 및 제2 구동 모터(123(R))는 바디(110)의 하측부에 배치될 수 있다. 제1 구동 모터(123(L)) 및 제2 구동 모터(123(R))는 바디(110)의 후방부에 배치될 수 있다.
제1 구동 모터(123(L))는 제1 휠(121(L))의 우측에 배치되고, 제2 구동 모터(123(R))는 제2 휠(121(R))의 좌측에 배치될 수 있다. 제1 구동 모터(123(L)) 및 제2 구동 모터(123(R))는 바디(110)에 고정된다.
제1 구동 모터(123(L))는 제1 모터 하우징(119a)의 내부에 배치되어, 좌측으로 모터축이 돌출되게 구비될 수 있다. 제2 구동 모터(123(R))는 제2 모터 하우징(119b)의 내부에 배치되어, 우측으로 모터축이 돌출되게 구비될 수 있다.
본 실시 예에서는 제1 휠(121(L)) 및 제2 휠(121(R))이 각각 제1 구동 모터(123(L))의 회전축 및 제2 구동 모터(123(R))의 회전축에 직접 연결되나, 제1 휠(121(L)) 및 제2 휠(121(R))에 샤프트 등의 부품이 연결될 수도 있고, 기어나 체인 등에 의해 모터(123(L), 123(R))의 회전력이 휠(121a, 120b)에 전달되게 구현될 수도 있다.
주행부(120)는, 구동 휠(121)과 함께 바디(110)를 지지하는 보조 휠(125)을 포함할 수 있다. 보조 휠(125)은 블레이드(131)의 전방에 배치될 수 있다. 보조 휠(125)은 모터에 의한 구동력을 전달받지 않는 휠로서, 바디(110)를 지면에 대해 보조적으로 지지하는 역할을 한다. 보조 휠(125)의 회전축을 지지하는 캐스터는 수직한 축에 대해 회전 가능하게 프레임(111)에 결합된다. 좌측에 배치된 제1 보조 휠(125(L))과 우측에 배치된 제2 보조 휠(125(R))이 구비될 수 있다.
작업부(130)는 소정의 작업을 수행하도록 구비된다. 작업부(130)는 바디(110)에 배치된다.
일 예로, 작업부(130)는 청소나 잔디깎기 등의 작업을 수행하도록 구비될 수 있다. 다른 예로, 작업부(130)는 물건의 운반이나 물건 찾기 등의 작업을 수행하도록 구비될 수도 있다. 또 다른 예로, 작업부(130)는 주변의 외부 침입자나 위험 상황등을 감지하는 보안 기능을 수행할 수 있다.
본 실시 예에서는 작업부(130)가 잔디깎기를 수행하는 것으로 설명하나, 작업부(130)의 작업의 종류는 여러가지 예시가 있을 수 있으며, 본 설명의 예시로 제한될 필요가 없다.
작업부(130)는 잔디를 깎기 위해 회전 가능하게 구비된 블레이드(131)를 포함할 수 있다. 작업부(130)는 블레이드(131)의 회전력을 제공하는 블레이드 모터(132)를 포함할 수 있다.
블레이드(131)는 구동 휠(121)과 보조 휠(125)의 사이에 배치된다. 블레이드(131)는 바디(110)의 하측부에 배치된다. 블레이드(131)는 바디(110)의 하측에서 노출되도록 구비된다. 블레이드(131)는 상하 방향으로 연장된 회전축을 중심으로 회전하여, 잔디를 깎는다.
상기 블레이드 모터(132)는 상기 제1 휠(121(L)) 및 제2 휠(121(R))의 전방에 배치될 수 있다. 상기 블레이드 모터(132)는 바디(110)의 상기 내부 공간 내에서 중앙부의 하측에 배치된다.
상기 블레이드 모터(132)는 보조 휠(125)의 후측에 배치될 수 있다. 상기 블레이드 모터(132)는 바디(110)의 하측부에 배치될 수 있다. 상기 모터축의 회전력은 기어 등의 구조를 이용하여 블레이드(131)에 전달된다.
이동 로봇(100)은 구동 모터 모듈(123)에 전원을 공급하는 배터리(미도시)를 포함한다. 상기 배터리는 상기 제1 구동 모터(123(L))에 전원을 제공한다. 상기 배터리는 상기 제2 구동 모터(123(R))에 전원을 제공한다. 상기 배터리는 상기 블레이드 모터(132)에 전원을 공급할 수 있다. 상기 배터리는, 제어부(190), 방위각 센서(176) 및 출력부(165)에 전원을 제공할 수 있다. 상기 배터리는 바디(110)의 상기 내부 공간 내에서 후측부의 하측에 배치될 수 있다.
이동 로봇(100)은 지면에 대한 블레이드(131)의 높이를 변경 가능하게 구비되어, 잔디의 깎는 높이를 변경할 수 있다. 이동 로봇(100)은 사용자가 상기 블레이드(131)의 높이를 변경하기 위한 높이 조절부(156)를 포함한다. 높이 조절부(156)는 회전 가능한 다이얼을 포함하여, 상기 다이얼을 회전시킴으로써 상기 블레이드(131)의 높이를 변경시킬 수 있다.
이동 로봇(100)은 블레이드(131)의 높이의 수준을 표시해주는 높이 표시부(157)를 포함한다. 높이 조절부(156)의 조작에 따라 블레이드(131)의 높이가 변경되면, 높이 표시부(157)가 표시하는 높이 수준도 같이 변경된다. 예를 들어, 높이 표시부(157)에는 현재의 블레이드(131) 높이 상태로 이동 로봇(100)이 잔디깎이를 수행한 후 예상되는 잔디의 높이 값이 표시될 수 있다.
이동 로봇(100)은 도킹 기기(200)에 도킹 시, 도킹 기기(200)와 연결되는 도킹 삽입부(158)를 포함한다. 도킹 삽입부(158)는 도킹 기기(200)의 도킹 연결부(210)가 삽입되도록 함몰되게 구비된다. 도킹 삽입부(158)는 바디(110)의 정면부에 배치된다. 도킹 삽입부(158)와 도킹 연결부(210)의 연결에 의해, 이동 로봇(100)이 충전시 정확한 위치가 안내될 수 있다.
이동 로봇(100)은, 도킹 삽입부(158)가 도킹 연결부(210)에 삽입된 상태에서, 후술할 충전 단자(211)와 접촉 가능한 위치에 배치되는 충전 대응 단자(159)를 포함할 수 있다. 충전 대응 단자(159)는 한 쌍의 충전 단자(211a, 211b)와 대응되는 위치에 배치되는 한 쌍의 충전 대응 단자(159a, 159b)를 포함할 수 있다. 한 쌍의 충전 대응 단자(159a, 159b)는 도킹 삽입부(158)를 사이에 두고 좌우로 배치될 수 있다.
도킹 삽입부(158)와 한 쌍의 충전 단자(211a, 211b)를 개폐 가능하게 덮어주는 단자 커버(미도시)가 구비될 수 있다. 이동 로봇(100)의 주행시, 상기 단자 커버는 상기 도킹 삽입부(158)와 한 쌍의 충전 단자(211a, 211b)를 가려줄 수 있다. 이동 로봇(100)이 도킹 기기(200)와 연결시, 상기 단자 커버가 열려 상기 도킹 삽입부(158)와 한 쌍의 충전 단자(211a, 211b)가 노출될 수 있다.
한편, 도 5 및 도 6을 참고하여, 도킹 기기(200)는 바닥에 배치되는 도킹 베이스(230)와, 도킹 베이스(230)의 전방부에서 상측으로 돌출된 도킹 지지부(220)를 포함한다. 이동 로봇(100)의 충전시, 도킹 삽입부(158)에 삽입되는 도킹 연결부(210)를 포함한다. 도킹 연결부(210)는 도킹 지지부(220)에서 후방으로 돌출될 수 있다.
도킹 연결부(210)는 상하 방향의 두께가 좌우 방향의 폭보다 작게 형성될 수 있다. 도킹 연결부(210)의 좌우 방향 폭은 후측으로 갈수록 좁아지게 형성될 수 있다. 상측에서 바라볼 때, 도킹 연결부(210)는 전체적으로 사다리꼴이다. 도킹 연결부(210)는 좌우 대칭된 형상으로 형성된다. 도킹 연결부(210)의 후방부는 자유단을 형성하고, 도킹 연결부(210)의 전방부는 도킹 지지부(220)에 고정된다. 도킹 연결부(210)의 후방부는 라운드진 형상으로 형성될 수 있다.
도킹 연결부(210)가 도킹 삽입부(158)에 완전히 삽입되면, 이동 로봇(100)의 도킹 기기에 의한 충전이 이루어질 수 있다.
도킹 기기(200)는 이동 로봇(100)을 충전시키기 위한 충전 단자(211)를 포함한다. 충전 단자(211)와 이동 로봇(100)의 충전 대응 단자(159)가 접촉하여, 도킹 기기(200)로부터 이동 로봇(100)으로 충전을 위한 전원이 공급될 수 있다.
충전 단자(211)는 후측을 바라보는 접촉면을 포함하고, 충전 대응 단자(159)는 전방을 바라보는 접촉 대응면을 포함한다. 충전 단자(211)의 상기 접촉면과 충전 대응 단자(159)의 상기 접촉 대응면이 접촉함으로써, 도킹 기기(200)의 전원이 이동 로봇(100) 연결된다.
충전 단자(211)는 +극 및 -극을 형성하는 한 쌍의 충전 단자(211a, 211b)를 포함할 수 있다. 제1 충전 단자(211a)는 제1 충전 대응 단자(159a)와 접촉하게 구비되고, 제2 충전 단자(211b)는 제2 충전 대응 단자(159b)에 접촉하게 구비된다.
한 쌍의 충전 단자(211a, 211b)는 도킹 연결부(210)를 사이에 두고 배치될 수 있다. 한 쌍의 충전 단자(211a, 211b)는 도킹 연결부(210)의 좌우에 배치될 수 있다.
도킹 베이스(230)는 이동 로봇(100)의 구동 휠(121) 및 보조 휠(125)이 올라서는 휠 가드(232)를 포함한다. 휠 가드(232)는, 제1 보조 휠(125)의 이동을 안내하는 제1 휠 가드(232a)와, 제2 보조 휠(125)의 이동을 안내하는 제2 휠 가드(232b)를 포함한다. 제1 휠 가드(232a)와 제2 휠 가드(232b)의 사이에는 상측으로 볼록한 중앙 베이스(231)가 배치된다. 도킹 베이스(230)는 제1 휠(121(L)) 및 제2 휠(121(R))의 미끄럼을 방지하기 위한 슬립 방지부(234)를 포함한다. 슬립 방지부(234)는 상측으로 돌출된 복수의 돌기를 포함할 수 있다.
한편, 이동 로봇(100)의 주행 영역의 경계를 설정하기 위한 와이어(wire, 미도시)가 구현될 수 있다. 와이어는 소정의 경계 신호를 발생시킬 수 있다. 이동 로봇(100)은 상기 경계 신호를 감지하여, 와이어에 의해 설정된 상기 주행 영역의 경계를 인식할 수 있다.
예를 들어, 와이어를 따라 소정의 전류가 흐르도록 하여, 와이어 주변의 자기장을 발생시킬 수 있다. 여기서, 발생된 자기장이 상기 경계 신호이다. 와이어에 소정의 변화 패턴을 가진 교류가 흐르도록 하여, 와이어 주변에 발생된 자기장이 소정의 변화 패턴을 가지며 변화할 수 있다. 이동 로봇(100)은 자기장을 감지하는 경계 신호 감지부(177)를 이용하여, 와이어에 소정 거리 이내로 근접하였음을 인식할 수 있고, 이를 통해 와이어에 의해 설정된 경계 내의 주행 영역에서만 주행을 할 수 있다.
상기 와이어에 소정의 전류를 보내주는 역할을 상기 도킹 기기(200)가 할 수 있다. 도킹 기기(200)는 상기 와이어와 연결되는 와이어 단자(250)를 포함할 수 있다. 와이어의 양단이 각각 제1 와이어 단자(250a) 및 제2 와이어 단자(250b)에 연결될 수 있다. 와이어와 와이어 단자(250)의 연결을 통해, 도킹 기기(200)의 전원이 와이어에 전류를 공급할 수 있다.
상기 와이어 단자(250)는 도킹 기기(200)의 전방(F)에 배치될 수 있다. 즉, 상기 와이어 단자(250)는 도킹 연결부(210)가 돌출된 방향의 반대 방향 측에 배치될 수 있다. 와이어 단자(250)는 도킹 지지부(220)에 배치될 수 있다. 제1 와이어 단자(250a) 및 제2 와이어 단자(250b)는 좌우로 이격되어 배치될 수 있다.
도킹 기기(200)는 상기 와이어 단자(250)를 개폐 가능하게 덮어주는 와이어 단자 개폐부(240)를 포함할 수 있다. 와이어 단자 개폐부(240)는 도킹 지지부(220)의 전방(F)에 배치될 수 있다. 와이어 단자 개폐부(240)는 도킹 지지부(220)에 힌지 결합되어, 회전 동작을 통해 개폐 동작을 하도록 기설정될 수 있다.
한편, 도 7을 참고하여, 이동 로봇(100)은 사용자의 각종 지시를 입력할 수 있는 입력부(164)를 포함할 수 있다. 입력부(164)는 버튼, 다이얼, 터치형 디스플레이 등을 포함할 수 있다. 입력부(164)는 음성 인식을 위한 마이크(미도시)를 포함할 수 있다. 본 실시 예에서, 케이스(112)의 상측부에 다수의 버튼이 배치된다.
이동 로봇(100)은 사용자에게 각종 정보를 출력해주는 출력부(165)를 포함할 수 있다. 출력부(165)는 시각적 정보를 출력하는 디스플레이 모듈을 포함할 수 있다. 출력부(165)는 청각적 정보를 출력하는 스피커(미도시)를 포함할 수 있다.
본 실시 예에서, 상기 디스플레이 모듈(165)은 상측 방향으로 화상을 출력한다. 디스플레이 모듈(165)은 케이스(112)의 상측부에 배치된다. 일 예로, 디스플레이 모듈(165)은 액정 표시(LCD: Thin film transistor liquid-crystal display) 패널을 포함할 수 있다. 그 밖에도, 디스플레이 모듈(165)은, 플라스마 디스플레이 패널(plasma display panel) 또는 유기 발광 디스플레이 패널(organic light emitting diode display panel) 등의 다양한 디스플레이 패널을 이용하여, 구현될 수 있다.
이동 로봇(100)은 각종 정보를 저장하는 저장부(166)를 포함한다. 저장부(166)는 이동 로봇(100)의 제어에 필요한 각종 정보들을 기록하는 것으로, 휘발성 또는 비휘발성 기록 매체를 포함할 수 있다. 저장부(166)는 입력부(164)로부터 입력되거나 통신부(167) 수신한 정보를 저장할 수 있다. 저장부(166)는 이동 로봇(100)의 제어를 위한 프로그램이 저장할 수 있다.
이동 로봇(100)은 외부의 기기(단말기 등), 서버, 공유기 등과 통신하기 위한 통신부(167)를 포함할 수 있다. 예를 들어, 통신부(167)는 IEEE 802.11 WLAN, IEEE 802.15 WPAN, UWB, Wi-Fi, Zigbee, Z-wave, Blue-Tooth 등과 같은 무선 통신 기술로 무선 통신하게 구현될 수 있다. 상기 통신부는 통신하고자 하는 다른 장치 또는 서버의 통신 방식이 무엇인지에 따라 달라질 수 있다.
이동 로봇(100)은 이동 로봇(100)의 상태나 이동 로봇(100) 외부의 환경과 관련된 정보를 감지하는 센싱부(170)를 포함한다. 센싱부(170)는, 원격 신호 감지부(171), 장애물 감지부(172), 레인 감지부(173), 케이스 유동 센서(174), 범퍼 센서(175), 방위각 센서(176), 경계 신호 감지부(177), GPS 감지부(178) 및 낭떠러지 감지부(179) 중 적어도 하나를 포함할 수 있다.
원격 신호 감지부(171)는 외부의 원격 신호를 수신한다. 외부의 리모트 컨트롤러에 의한 원격 신호가 송신되면, 원격 신호 감지부(171)가 상기 원격 신호를 수신할 수 있다. 예를 들어, 상기 원격 신호는 적외선 신호일 수 있다. 원격 신호 감지부(171)에 의해 수신된 신호는 제어부(190)에 의해 처리될 수 있다.
복수의 원격 신호 감지부(171)가 구비될 수 있다. 복수의 원격 신호 감지부(171)는, 바디(110)의 전방부에 배치된 제1 원격 신호 감지부(171a)와, 바디(110)의 후방부에 배치된 제2 원격 신호 감지부(171b)를 포함할 수 있다. 제1 원격 신호 감지부(171a)는 전방으로부터 송신되는 원격 신호를 수신한다. 제2 원격 신호 감지부(171b)는 후방으로부터 송신되는 원격 신호를 수신한다.
장애물 감지부(172)는 이동 로봇(100)의 주변의 장애물을 감지한다. 장애물 감지부(172)는 전방의 장애물을 감지할 수 있다. 복수의 장애물 감지부(172a, 172b, 172c)가 구비될 수 있다. 장애물 감지부(172)는 바디(110)의 전방면에 배치된다. 장애물 감지부(172)는 프레임(111)보다 상측에 배치된다. 장애물 감지부(172)는, 적외선 센서, 초음파 센서, RF 센서, 지자기 센서, PSD(Position Sensitive Device) 센서 등을 포함할 수 있다.
레인 감지부(173)는 이동 로봇(100)이 놓여진 환경에서 비가 올 경우, 비(rain)를 감지한다. 상기 레인 감지부(173)는 케이스(112)에 배치될 수 있다.
케이스 유동 센서(174)는 상기 케이스 연결부의 유동을 감지한다. 프레임(111)에 대해 케이스(112)가 상측으로 들어올려지면, 상기 케이스 연결부가 상측으로 유동하게 되고, 케이스 유동 센서(174)가 상기 케이스(112)의 들어 올려짐을 감지하게 된다. 케이스 유동 센서(174)가 상기 케이스(112)의 들어 올려짐을 감지하면, 제어부(190)는 블레이드(131)의 동작을 정지시키도록 제어할 수 있다. 예를 들어, 사용자가 케이스(112)를 들어올리거나 상당한 크기의 하부 장애물이 케이스(112)를 들어올리는 상황 발생시, 케이스 유동 센서(174)가 이를 감지할 수 있다.
범퍼 센서(175)는 상기 유동 고정부의 회전을 감지할 수 있다. 예를 들어, 상기 유동 고정부의 하부의 일측에 자석을 배치하고, 프레임(111)에 상기 자석의 자기장의 변화를 감지하는 센서를 배치할 수 있다. 상기 유동 고정부가 회전시 상기 센서가 상기 자석의 자기장 변화를 감지함으로써, 상기 유동 고정부의 회전을 감지하는 범퍼 센서(175)가 구현될 수 있다. 범퍼(112b)가 외부의 장애물에 충돌하면, 범퍼(112b)와 일체로 상기 유동 고정부가 회전한다. 상기 범퍼 센서(175)가 상기 유동 고정부의 회전을 감지함으로써, 범퍼(112b)의 충격을 감지할 수 있다.
센싱부(20)는 주행면의 경사에 대한 기울기 정보를 획득하는 기울기 정보 획득부(180)를 포함한다. 상기 기울기 정보 획득부(180)는 바디(110)의 기울기를 감지함으로써, 바디(110)가 올려진 주행면의 경사에 대한 기울기 정보를 획득할 수 있다. 예를 들어, 상기 기울기 정보 획득부(180)는 자이로 센싱 모듈(176a)를 포함할 수 있다. 기울기 정보 획득부(180)는 자이로 센싱 모듈(176a)의 감지 신호를 상기 기울기 정보로 변환하는 처리 모듈(미도시)을 포함할 수 있다. 상기 처리 모듈은 제어부(190)의 일부로서, 알고리즘이나 프로그램으로 구현될 수 있다. 다른 예로, 상기 기울기 정보 획득부(180)는 자기장 센싱 모듈(176c)를 포함하여, 지구의 자기장에 대한 감지 정보를 근거로 하여 상기 기울기 정보를 획득할 수도 잇다.
자이로 센싱 모듈(176a)는 바디(30)의 상기 수평면에 대한 회전 각속도에 대한 정보를 획득할 수 있다. 구체적으로 자이로 센싱 모듈(176a)는 상기 수평면에 평행하고 서로 직교하는 X축 및 Y축을 중심으로한 회전 각속도를 감지할 수 있다. 상기 처리 모듈을 통해 X축에 대한 회전 각속도(롤)와 Y축에 대한 회전 각속도(피치)를 합성하여, 상기 수평면에 대한 회전 각속도를 산출할 수 있다. 상기 처리 모듈을 통해 상기 회전 각속도를 적분하여, 기울기 값을 산출할 수 있다.
상기 자이로 센싱 모듈(176a)는 정해진 기준 방향을 감지할 수 있다. 상기 기울기 정보 획득부(180)는 상기 기준 방향을 근거로 하여 상기 기울기 정보를 획득할 수 있다.
방위각 센서(AHRS)(176)는 자이로(gyro) 센싱 기능을 구비할 수 있다. 상기 방위각 센서(176)은 가속도 센싱 기능을 더 구비할 수 있다. 상기 방위각 센서(176)는 자기장 센싱 기능을 더 구비할 수 있다.
방위각 센서(176)는 자이로(Gyro) 센싱을 수행하는 자이로 센싱 모듈(176a)를 포함할 수 있다. 자이로 센싱 모듈(176a)은 바디(110)의 수평의 회전 속도를 감지할 수 있다. 자이로 센싱 모듈(176a)은 바디(110)의 수평면에 대한 기울임 속도를 감지할 수 있다.
자이로 센싱 모듈(176a)는 서로 직교하는 공간 좌표계의 3개의 축에 대한 자이로(Gyro) 센싱 기능을 구비할 수 있다. 상기 자이로 센싱 모듈(176a)에서 수집된 정보는 롤(Roll), 피치(Pitch) 및 요(Yaw) 정보일 수 있다. 상기 처리 모듈은, 롤링(roll), 피칭(pitch), 요(yaw) 각속도를 적분하여 청소기(1, 1')의 방향각의 산출이 가능하다.
방위각 센서(176)는 가속도 센싱을 수행하는 가속도 센싱 모듈(176b)을 포함할 수 있다. 가속도 센싱 모듈(176b)는 서로 직교하는 공간 좌표계의 3개의 축에 대한 가속도 센싱 기능을 구비할 수 있다. 소정의 처리 모듈이 상기 가속도를 적분함으로써 속도를 산출하고, 상기 속도를 적분함으로써 이동 거리를 산출할 수 있다.
방위각 센서(176)는 자기장 센싱을 수행하는 자기장 센싱 모듈(176c)을 포함할 수 있다. 자기장 센싱 모듈(176c)은 서로 직교하는 공간 좌표계의 3개의 축에 대한 자기장 센싱 기능을 구비할 수 있다. 자기장 센싱 모듈(176c)은 지구의 자기장을 감지할 수 있다.
경계 신호 감지부(177)는 이동 로봇(100) 외부의 와이어의 상기 경계 신호를 감지한다. 경계 신호 감지부(177)는 상기 바디(110)의 전방부에 배치될 수 있다. 이를 통해, 이동 로봇(100)의 주된 주행 방향인 전방으로 이동하면서, 상기 주행 영역의 경계를 조기에 감지할 수 있다. 경계 신호 감지부(177)는 범퍼(112b)의 내측 공간에 배치될 수 있다.
경계 신호 감지부(177)는 좌우로 이격되어 배치되는 제1 경계 신호 감지부(177a) 및 제2 경계 신호 감지부(177b)를 포함할 수 있다. 제1 경계 신호 감지부(177a) 및 제2 경계 신호 감지부(177b)는 바디(110)의 전방부에 배치될 수 있다.
상기 경계 신호가 자기장 신호인 경우, 상기 경계 신호 감지부(177)는 자기장 센서를 포함한다. 경계 신호 감지부(177)는, 자기장의 변화를 감지하도록 코일을 이용하여 구현될 수 있다. 경계 신호 감지부(177)는 적어도 상하 방향의 자기장을 감지할 수 있다. 경계 신호 감지부(177)는 공간상 서로 직교하는 3개의 축에 대한 자기장을 감지할 수 있다.
GPS 감지부(178)는 GPS(Global Positioning System) 신호를 감지하기 위해 구비될 수 있다. GPS 감지부(178)는 PCB를 이용하여 구현될 수 있다.
낭떠러지 감지부(179)는 주행면에 낭떠러지의 존재 여부를 감지한다. 낭떠러지 감지부(179)는 바디(110)의 전방부에 배치되어, 이동 로봇(100)의 전방에 낭떠러지 유무를 감지할 수 있다.
센싱부(170)은 상기 제1 개폐부(117) 및 상기 제2 개폐부(118) 중 적어도 하나의 개폐 여부를 감지하는 개폐 감지부(미도시)를 포함할 수 있다. 상기 개폐 감지부는 케이스(112)에 배치될 수 있다.
이동 로봇(100)은 자율 주행을 제어하는 제어부(190)를 포함한다. 제어부(190)는 센싱부(170)의 신호를 처리할 수 있다. 제어부(190)는 입력부(164)의 신호를 처리할 수 있다.
제어부(190)는 제1 구동 모터(123(L)) 및 제2 구동 모터(123(R))의 구동을 제어할 수 있다. 제어부(190)는 상기 블레이드 모터(132)의 구동을 제어할 수 있다. 제어부(190)는 출력부(165)의 출력을 제어할 수 있다.
제어부(190)는 바디(110)의 상기 내부 공간에 배치되는 메인 보드(미도시)를 포함한다. 상기 메인 보드는 PCB를 의미한다.
제어부(190)는 이동 로봇(100)의 자율 주행을 제어할 수 있다. 제어부(190)는 입력부(164)로부터 수신한 신호를 근거로 하여 주행부(120)의 구동을 제어할 수 있다. 제어부(190)는 센싱부(170)로부터 수신한 신호를 근거로 하여 주행부(120)의 구동을 제어할 수 있다.
앞서, 와이어(wire)를 이용하여 이동 로봇(100)의 주행 영역의 경계를 설정하는 예를 설명하였지만, 본 발명은 이에 한정되지 않고, 다양한 와이어리스(wireless) 방식을 이용할 수 있다. 예를 들어, 이동 로봇(100)은 주행 영역 또는 그 주변에 설치된 위치정보송출기로부터 수신되는 위치정보, 또는 GPS위성을 이용한 GPS신호 또는 기타 단말로부터 수신되는 위치정보를 바탕으로 현재 위치 및 주행 영역을 판별할 수 있다. 위치정보신호는 GPS신호, 초음파신호, 적외선신호, 전자기신호 또는 UWB(Ultra Wide Band)신호가 사용될 수 있다. 이동 로봇(100)은, 주행 영역 및 경계를 설정하기 위해서는 위치정보를 수집한다. 이동 로봇(100)은, 영역의 어느 한 지점을 기준위치로 설정하여 위치정보를 수집한다. 이동 로봇(100)은 초기 시작지점, 충전대의 위치, 위치정보송출기 중 어느 한 위치를 기준위치로 설정할 수 있다. 이동 로봇(100)은 기준위치를 설정하고, 해당 기준위치를 바탕으로 영역에 대한 좌표 및 지도를 생성하여 저장부(166)에 저장할 수 있다. 이동 로봇(100)은 주행 영역에 대한 지도가 생성되면, 저장된 지도를 바탕으로 이동할 수 있다. 주행 영역에 대한 지도는, 주행 영역에 대한 경계, 장애물 등의 정보를 포함하는 환경 지도(environment map)일 수 있다.
상기 저장부(166)에 저장되는 주행 영역에 대한 맵(Map)은, 주행 영역의 소정 정보들을 소정 형식으로 저장한 데이터로서, 주행에 사용되는 내비게이션 맵(Navigation map), 위치 인식에 사용되는 SLAM(Simultaneous localization and mapping) 맵, 인식된 장애물에 관한 정보가 기록되는 장애물 인식 맵 중 적어도 하나이거나 하나 이상의 맵이 조합된 형태일 수 있다.
또한, 상기 저장부(166)에 저장되는 주행 영역에 대한 맵(Map)은, 격자 지도(grid map), 위상 지도(topology map) 등 다양한 형태로 표현될 수 있다. 예를 들어, 격자 지도는 주변 공간을 동일한 크기의 셀 또는 격자(이하 격자)로 표현하고 각 격자에 물체의 유무를 표시한 지도가 될 수 있다. 예를 들어, 흰색 격자는 물체가 없는 영역을, 검은색 격자는 물체가 있는 영역을 나타낼 수 있다. 따라서, 검은색 격자를 연결한 선은 어떠한 공간의 경계선(벽, 장애물 등)을 나타낼 수 있다. 실시 예에 따라서, 안정적인 주행을 위해 위험 예상 영역이 설정될 수 있다. 예를 들어, 위험 예상 영역은 경계선(벽, 장애물 등)에 인접한 하나 이상의 격자일 수 있다. 한편, 위험 예상 영역은 회색 격자로 나타낼 수 있다. 격자의 색상은 이미지 처리 과정을 통해 바뀔 수 있다.
격자의 크기는 다르게 설정할 수 있다. 예를 들면, 이동 로봇(100)의 길이와 폭이 모두 50cm이면, 격자의 가로와 세로의 길이를 25cm로 설정할 수 있다. 이경우, 이동 로봇(100)은 2 by 2 격자가 빈 공간의 영역일 때 위치할 수 있다. 격자의 가로와 세로의 길이를 10cm로 설정할 수 있다. 이경우, 이동 로봇(100)은 5 by 5 격자가 빈 공간의 영역일 때 위치할 수 있다. 또는 격자의 크기는 이동 로봇(100)의 블레이드(131) 등 작업부(130)를 기준으로 설정될 수 있다.
실시 예에 따라서, 각 격자에는 소정 정보를 나타내는 비용(cost)이 부여될 수 있다. 예를 들어, 경계선에 대응하는 격자에는 상대적으로 매우 높은 비용이 부여되고, 제어부(190)는 비용에 기반하여 주행을 제어할 수 있다. 본 발명의 일 실시 예에 따른 이동 로봇(100)은 출발지로부터 목표점까지의 최적 경로의 생성을 위해 주행 비용이라는 개념을 사용하는 구배법(gradient method) 기반 경로 계획을 사용할 수 있다.
이하, 도 8 내지 도 19c를 참고하여, 이동 로봇(100)의 주행 제어에 대해 자세히 설명한다.
도 8은 본 발명의 일 실시 예에 따른 이동 로봇의 제어 방법의 순서도이고, 도 9 내지 도 19c는 본 발명의 실시 예에 따른 이동 로봇의 제어 방법에 관한 설명에 참조되는 도면이다.
본 발명의 일 측면에 따른 이동 로봇(100)은, 동일 지점 방문을 최소화함으로써, 잔디 손상을 최소화하고 효율은 향상할 수 있다. 이를 위해, 본 발명의 일 측면에 따른 제어부(190)는, 주행 시 지나간 경로에 대한 비용(cost)을 이후의 경로 계획에 반영함으로써, 동일 지점 방문을 최소화할 수 있다.
도 8을 참조하면, 제어부(190)는, 주행 영역의 환경에 비용(cost)을 부여할 수 있다. 예를 들어, 제어부(190)는, 주행 영역의 환경 정보에 기초하여 주행 영역에 대응하는 격자 지도(grid map)의 격자들에 비용(cost) 정보를 설정할 수 있다(S810).
도 9는 격자 지도(900)를 예시한 것으로, 검은색 격자는 주행 영역의 경계선(벽, 장애물 등)을 나타내고, 흰색 격자는 이동 로봇(100)이 주행할 수 있는 주행 영역을 나타낼 수 있다.
또한, 격자 지도(900)의격자들에는 장애물 존재 여부, 장애물의 종류, 장애물의 크기, 장애물 인접 여부 등 환경 정보에 기초한 비용이 부여될 수 있다.
또한, 장애물 존재 여부, 장애물의 종류, 장애물의 크기, 장애물 인접 여부 등 환경 정보에 기초하여 비용값이 설정될 수 있다.
예를 들어, 고정 객체 또는 경계선에 대응하는 위험 영역(910)에 대해서 제1값이 설정되고, 상기 위험 영역(910)에 인접한 위험 예상 영역(920)에 대해서 상기 제1값보다 낮은 제2값이 설정될 수 있다. 실시 예에 따라서, 위험 영역(910)에 포함되는 격자에 부여되는 비용도 장애물의 종류, 장애물의 크기에 따라 다르게 설정될 수 있고, 포함되는 격자에 부여되는 비용도 인접한 장애물의 종류, 크기, 거리에 따라 다르게 설정될 수 있다.
장애물이 없는 일반 영역(930)의 격자에는 비용이 0으로 설정될 수 있다. 또는, 장애물이 없는 일반 영역(930)의 격자에는 장애물과의 거리에 기초하여 상대적으로 낮은 비용이 설정될 수 있다.
각 격자의 비용 정보는 해당 격자를 이동할 경우 이동 로봇(100)이 장애물을 회피하거나 혹은 충돌할 가능성 또는 장애물에 인접하여 이동할 가능성 등을 의미할 수 있다. 비용이 0이거나 비용이 낮은 격자(930)에서는 이동 로봇(100)이 고정 객체나 이동 객체와 같은 장애물로부터 멀리 떨어져 있는 경우를 포함할 수 있다.
한편, 격자 지도(900)에서는 격자의 환경 정보, 비용 등에 따라 격자를 표시 상태를 달리하여 표시할 수 있다. 예를 들어, 위험 영역(910), 위험 예상 영역(920), 일반 영역(930)의 색상, 채도 등을 다르게 표시할 수 있다. 이에 따라, 격자 자도(900)는 등고선 형태로 비용이 직관적으로 나타날 수 있다.
본 발명의 일 실시 예에 따른 이동 로봇(100)은 출발지로부터 목표점까지의 최적 경로의 생성을 위해 주행 비용이라는 개념을 사용하는 구배법(gradient method) 기반 경로 계획을 사용할 수 있고, 상기 주행 영역의 환경 정보에 기초하여 설정되는 비용은, 고유 비용(intrinsic cost)일 수 있다.
고유 비용은 환경과 관련하여 설정되는 영역의 특성을 나타내는 비용으로 고정 장애물과 같이 주행을 방해하는 영역에 부여될 수 있다. 고유 비용은 장애물 존재 여부에 따라 부여될 수 있고, 각 격자와 장애물 간의 거리, 해당 격자 공간의 주행 위험도에 비례하여 부여될 수 있다.
도 9의 예시에서는 고정 장애물에 대응하는 위험 영역(910) 격자들에 대해서는 고유 비용이 '100'으로 설정되고, 상기 위험 영역(910)에 인접한 위험 예상 영역(920) 격자들에 대해서 '100'보다 낮은 '10'으로 설정되었다.
고정 장애물에 대해서는 상대적으로 매우 높은 비용을 설정하여 이동 로봇(100)이 고정 장애물과 충돌하지 않도록 하고, 고정 장애물의 인접 영역에 대해서도 어느 정도의 비용을 설정함으로써 가급적 고정 장애물에 접근하지 않도록 할 수 있다.
한편, 구배법 기반의 경로계획은 인접 비용(Adjacent cost)을 포함하여 최소 경비를 계산하고 경로를 수립할 수 있다.
인접 비용은, 두 점 간의 이동에 관련된 경로 비용으로, 출발점에서 도착점까지 경로를 생성했을 때 소요되는 가상의 비용이다. 대부분의 경우에 인접 비용은 이동 거리에 비례하게 된다.
도 10의 격자 지도(1000) 상에 출발점(1010)에서 도착점(1020)까지의 인접 비용을 도시한 것이다.
인접 비용은 하나의 출발점(1010) 격자에서 도착점(1020) 격자까지 이동하는데 발생하는 거리에 대한 비용이다. 도 10의 예시에서는 격자 간 이동 비용으로 '1'이 설정된다. 예를 들어, 도착점(1020)에 인접한 격자(1042, 1043)에서 도착점(1020)까지의 인접 비용은 '1'이다. 또한, 도착점(1020)에 인접한 격자(1042)에서 인접한 격자(1041), 즉, 도착점(1020)에서 격자 하나만큼 이격된 격자(1041)의 인접 비용은 '2'가 된다. 동일한 방식으로 출발점(1010)과 출발점(1010) 근처의 격자들(1051, 1052, 1053)의 인접 비용이 결정될 수 있다.
한편, 격자 간 이동 비용은 도 10에서 예시된 '1'이 아닌 다른 값이 설정될 수 있다. 또한, 도 10에서는, 도착점(1020)을 '0'으로 설정하고 격자당 '1'씩 인접 비용이 증가하나, 출발점(1010)을 '0'으로 설정하고 격자당 '1'씩 인접 비용이 증가하게 설정될 수도 있다.
한편, 상기 주행 영역의 환경 정보에 기초하여 설정되는 비용은, 인접 비용과 고유 비용의 합일 수 있다. 제어부(190)는, 출발점(1010)에서 도착점(1020)까지 이동 로봇(100)의 이동을 위한 경로 계획을 수립할 때, 출발점(1010)에서 도착점(1020)까지의 인접 비용과 고유 비용의 합을 예상 경로별로 비교하여 최소 비용의 경로를 수립할 수 있다.
도 11은 도 9의 고유 비용과 도 10의 인접 비용이 합산된 환경 비용을 포함하는 격자 지도(1100)를 예시한 것으로, 도 11의 출발점(1110)과 도착점(1120)은 각각 도 10의 출발점(1010)에서 도착점(1020)과 동일하다.
도 9 내지 도 11을 참조하면, 도 11의 격자들(1141, 1142, 1143, 1151, 1152, 1153)에 부여된 환경 비용은, 도 10의 격자들(1041, 1042, 1043, 1051, 1052, 1053)에 부여된 인접 비용과 도 9의 예시된 고유 비용이 합산된 값임을 확인할 수 있다.
도 12는 구배법에 기초하여 수립된 최소 비용의 경로(1210)가 표시된 격자 지도(1200)를 예시한다.
도 12를 참조하면, 제어부(190)는, 격자들의 환경 비용에 기초하여, 출발점(1110)에서 도착점(1120)까지 최소 비용의 경로(1210)를 수립할 수 있다.
이동 로봇(100)은 비용 정보에 기초하여 주행할 수 있다(S820). 제어부(190)는 최소 비용 경로(1210)에 따라 이동하도록 주행부(120)를 제어할 수 있다(S820).
한편, 제어부(190)는 환경 비용으로 최소 비용을 계산하여 경로 계획을 수립하고, 이동 로봇(100)의 주행을 제어할 수 있다. 이때, 출발지와 목적지가 같다면 항상 동일한 경로로 주행할 것이다. 고유 비용은 고정 장애물 등에 부여되므로 변경되는 상황이 거의 없고 인접 비용도 동일 지점 사이의 이동이라면 동일하다. 따라서, 출발지와 목적지가 동일한 경우에는 최소 비용의 경로(1210)는 하나만 존재하고, 계속 유일한 최소 비용 경로(1210)로 주행하게 되어 최소 비용 경로(1210) 영역은 다른 격자에 대응하는 영역 대비 잔디 손상 가능성이 커진다.
본 발명의 일 실시 예에 따르면, 잔디를 깎거나 해당 지역을 이동시에도 비용을 부여함으로써, 경로 계획 수립시 이전에 지나간 이동 경로도 경로 계획에 고려함으로써 동일 지역의 재방문을 최소화할 수 있다.
한편, 격자 지도(900) 등 각종 지도 및 지도 관련 데이터는 저장부(166)에 저장될 수 있다. 따라서, 격자 지도(900) 및 격자 지도(900)에 포함되는 격자들의 비용(cost) 정보는 저장부(166)에 저장될 수 있다.
지나간 이동 경로에 부여되는 비용은 스테이 비용(stay cost)으로 명명될 수 있고, 제어부(190)는 주행 시 지나간 경로에 대응하는 격자의 스테이 비용(stay cost)을 증가시켜 저장부(166)에 저장시킬 수 있다(S830).
상기 스테이 비용은, 상기 주행 영역에 대응하는 격자들과 각 격자들의 스테이 비용으로 구성되는 스테이 지도(stay map)에 별도로 저장될 수 있다. 제어부(190)는 경로 계획 수립시, 스테이 지도(stay map)의 스테이 비용들을 호출하여 다른 환경 비용에 합산할 수 있다.
또는, 상기 고유 비용과 상기 스테이 비용은 상기 격자 지도 상에 저장될 수 있다. 또한, 출발지와 목적지가 결정되어 인접 비용이 계산되면, 상기 고유 비용과 상기 스테이 비용은 상기 인접 비용과 합산되어 전체 비용이 상기 격자 지도에 연계되어 저장될 수 있다.
스테이 비용은 초기 환경지도 작성시부터 누적이 되며, 최초 스테이 비용이 부여된 주행을 1회차 주행이라고 한다면, 제어부(190)는 다음 2회차 주행부터 경로 계획시 1회차 주행부터 누적되는 스테이 비용을 포함하여 경로를 계획할 수 있다(S840). 이에 따라, 와이어 등 별도의 하드웨어 추가 없이 동일 영역에 대한 재방문을 최소화할 수 있다.
도 13은 이동 로봇(100)의 이동에 따라 격자 지도(1300)의 비용이 변경되는 과정을 예시한다.
도 13을 참조하면, 이동 로봇(100)이 이동함에 따라, 지나간 경로(1310)에 부여된 비용이 설정된 증가량만큼 증가한다. 증가량은 이동 로봇(100)이 한번 지나갈때마다 증가되는 비용이다.
이동 로봇(100)이 한번 지나갈 때 스테이 비용의 증가량은 인접 비용에 기초하여 결정될 수 있다.
예를 들어, 제어부(190)는, 1회 주행시 상기 스테이 비용을 인접한 두 격자의 인접 비용 차이값과 동일하게 증가시킬 수 있다. 즉, 한번 지나갈 때 스테이 비용의 증가량은 격자당 부여되는 인접 비용 증가량과 동일하게 부여될 수 있다. 이에 따라 이동 로봇(100)의 '이동'과 관련된 비용을 동일하게 관리할 수 있다.
도 13은 인접 비용 증가량 '1'과 동일하게 1회 주행시 스테이 비용의 증가량이 '1'로 설정되는 예를 도시한 것이다.
도 14는 이동 로봇(100)의 이동 종료 후 생성된 스테이 지도(1400)를 예시하고, 도 15는 이동 로봇(100)의 이동 종료 후 변경된 전체 주행 비용이 반영된 격자 지도(1500)를 예시한다.
도 14를 참조하면, 스테이 지도(1400)에 포함되는 격자들 중에 이동 로봇(100)이 이동한 경로(1410)의 격자들에 스테이 비용이 '1'씩 부여된다.
도 15를 참조하면, 스테이 비용이 '1'씩 증가함에 따라 이동 로봇(100)이 이동한 경로(1510)의 격자들 전체 비용도 '1'씩 증가함을 확인할 수 있다.
또는, 제어부(190)는, 1회 주행시 상기 스테이 비용을 인접한 두 격자의 인접 비용 차이값과 크게 증가시킬 수 있다. 즉, 한번 지나갈 때 스테이 비용의 증가량은 격자당 부여되는 인접 비용 증가량과 크게 부여될 수 있다. 이에 따라 스테이 비용이 경로 계획 수립에 더 크게 반영될 수 있다.
본 발명의 일 실시 예에 따르면, 제어부(190)는, 비용 정보에 기초하여 이동 경로를 생성하고, 상기 생성된 이동 경로에 따라 주행하도록 주행부(120)를 제어하며(S820), 상기 주행 시 지나간 경로에 대응하는 격자의 스테이 비용(stay cost)을 증가시켜 저장하도록 저장부(166)를 제어할 수 있다(S830).
또한, 제어부(190)는, 이후의 경로 계획 수립에는 저장부(166)에 저장된 스테이 비용을 반영할 수 있다(S840, S810).
제어부(190)는, 고유 비용, 스테이 비용을 포함하는 비용 정보에 기초하여 최소 비용 경로를 판별할 수 있다.
또한, 제어부(190)는, 상기 고유 비용, 상기 스테이 비용, 및 출발점에서 도착점까지 이동할 때 발생하는 거리에 대한 인접 비용을 합산하여 주행 비용을 산출하고, 주행 비용이 최소가 되는 경로로 이동 경로를 생성할 수 있다.
도 16은 도 15에 예시된 주행 비용 상태에서 동일한 출발점(1110)에서 도착점(1120)까지 스테이 비용을 반영한 경로 계획을 수립하는 과정을 예시한다.
도 16을 참조하면, 격자 지도(1600) 상에 고유 비용, 인접 비용, 이전 회차까지의 주행을 반영한 스테이 비용이 합산된 전체 주행 비용이 예시된다.
제어부(190)는 스테이 비용이 포함된 전체 주행 비용을 이용하여 최소 비용 경로(1610)를 생성할 수 있다. 이에 따라, 이전 회차의 경로(1510)와는 다른 경로(1610)가 생성되고, 이전 회차의 경로(1510)를 중복 방문하지 않을 수 있다.
실시 예에 따라서, 최소 비용 경로가 복수개 존재한다면, 스테이 비용에 우선 순위를 두고, 스테이 비용이 낮은 경로를 선택할 수 있다.
한편, 도 16에서 선정된 경로(1610)를 따라 이동 로봇(100)이 2회차 주행한 후에는 스테이 지도에 2회차 주행 결과에 따른 스테이 비용 증가가 반영될 수 있다.
도 17은 1,2회차 주헹에 따른 스테이 비용을 포함하는 스테이 지도(1700)를 예시한 것이다.
도 17을 참조하면, 스테이 지도(1700)에는 1회차 주행에 따른 스테이 비용(1710)과 2회차 주행에 따른 스테이 비용(17120)이 반영될 수 있다. 이와 같이 스테이 지도(1700)에는 이동 로봇(100)의 주행에 따른 스테이 비용이 누적되며 갱신될 수 있다.
본 발명의 일 실시 예에 따르면, 스테이 비용이 누적된다. 스테이 비용의 누적값이 너무 커지면, 위험 회피를 위해 설정되는 비용보다 커질 수 있고, 위험한 지역에 진입하거나 근접하게 되는 상황이 발생할 수 있다. 따라서, 제어부(190)는 일정 조건에 따라 스테이 비용을 리셋(reset)시킬 수 있다.
제어부(190)는, 어느 한 격자의 스테이 비용이 상기 고유 비용의 최소값이상이 되면 전 스테이 비용들을 초기화할 수 있다.
경우에 따라서, 고정 객체 또는 경계선에 대응하는 위험 영역(910)에 대해서 제1값이 설정되고, 상기 위험 영역(910)에 인접한 위험 예상 영역(920)에 대해서 상기 제1값보다 낮은 제2값이 설정될 수 있다. 이 경우에, 제어부(190)는, 어느 한 격자의 스테이 비용이 상기 제2값 이상이 되면 전 스테이 비용들을 초기화할 수 있다.
본 발명이 일 실시 예에 따르면, 어느 한 격자의 스테이 비용이 인접한 격자의 고유 비용 이상이되면 전 스테이 비용들을 초기화할 수 있다.
또는 위험 예상 영역(920)이 완충 지역으로서 충분한 역할을 수행할 수 있다면 전체 스테이 비용이 상기 제2값 이상이 되면 전 스테이 비용들을 초기화할 수 있다.
도 18을 참조하면, 고유 비용과 스테이 비용이 합산된 격자 지도(1800)가 예시된다. 도 18의 예시에서, 고정 장애물에 대응하는 위험 영역(1810) 격자들에는 제1값(예를 들어, '100')이 비용으로 부여되고, 상기 위험 영역(1810)에 인접한 위험 예상 영역(1820) 격자들에 대해서 제1값보다 낮은 제2값(예를 들어, '10')이 부여된다.
도 18을 참조하면, 어느 한 격자(1830)의 스테이 비용이 교유 비용의 최소값(예를 들어, 10) 이상이 되면, 모든 스테이 비용을 0으로 초기화할 수 있다.
또는, 모든 스테이 비용이 제2값(예를 들어, '10') 이상이되면 모든 스테이 비용을 0으로 초기화하도록 설정할 수도 있다.
본 발명의 일 실시 예에 따르면, 비용 기반 경로 계획에서 이동 로봇(100)의 주행 이력을 반영하는 스테이 비용(stay cost)을 추가적으로 비용을 포함시킬 수 있다.
즉, 스테이 비용은 이동 로봇(100)이 머물렀던 지역에 대하여 부여되는 추가적인 비용으로, 경로 계획시 스테이 비용을 포함하여 경로를 계획함으로써, 동일한 지역의 동일한 지역의 움직임을 최소화 하여 잔디 손상을 줄일 수 있다.
도 19a 내지 도 19c는 재방문을 최소화한 최단 경로 계획에 관한 설명에 참조되는 도면이다.
먼저 도 19a와 같은 전체 비용 상태에서 제1 출발점(1910)부터 도착점(1920)까지의 1회차 주행 경로는 최단 거리 경로 계획에 따라 제1 경로(1930)가 선택될 수 있고, 이동 로봇(100)은 제1 경로(1930)를 따라 제1 출발점(1910)부터 도착점(1920)까지 1회차 주행하고, 이를 스테이 비용에 반영할 수 있다.
만약 2회차 주행이 제2 출발점(1940)부터 도착점(1920)까지 이동하는 것일 때, 최단 거리 경로 계획에 따르면 도 19b와 같이 제2 경로(1950)가 선택될 수 있다.
1,2회차 주행은, 출발점이 달라 제2 출발점(1940)에서 일부 구간(1952)에 차이는 있다. 하지만, 1,2회차 주행은, 도착점(1920)이 같기 때문에, 제1 경로(1930)와 제2 경로(1950)는 동일한 구간(1951)을 포함할 수 있다. 따라서, 동일한 구간(1951)은 중복 방문하게 된다.
본 발명의 일 실시 예에 따르면, 1회차 주행을 반영한 스테이 비용을 추가로 비용에 합산하여 경로를 수립함으로써 동일 지역 재방문을 최소화할 수 있다.
도 19c를 참조하면, 1회차 주행시 이동 로봇(100)이 머물렀던 격자들(1960, 1973)에는 스테이 비용이 반영된다. 이에 따라, 2회차 주행이 제2 출발점(1940)부터 도착점(1920)까지 이동하는 것일 때, 최소 경비로 경로 계획을 수립하면, 제3 경로(1970)가 선택될 수 있다.
도 19a와 도 19c를 참조하면, 제3 경로(1970)는 대부분의 구간(1971, 1972)에서 이전의 경로(1960)와 겹쳐지 않고, 중복 방문 구간(1973)이 최소화될 수 있다.
본 발명의 일 실시 예에 따르면, 이동 로봇(100)의 위치와 충전대 등 목적지의 위치 및 이전 주행시의 경로에 기초하여 재방문을 최소화한 경로를 수립하고 주행할 수 있다. 이에 따라, 상황에 따라 경로를 효과적으로 수립할 수 있다.
본 발명의 실시 예에 따르면, 와이어 방식, 와이어리스 방식 모두에 적용할 수 있고, 추가적인 와이어 설치가 필요없다는 장점이 있다.
본 발명에 따른 이동 로봇 및 그 제어 방법은 상기한 바와 같이 설명된 실시 예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시 예들은 다양한 변형이 이루어질 수 있도록 각 실시 예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나, 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다.
한편, 본 발명의 실시 예에 따른 이동 로봇의 제어 방법은, 프로세서가 읽을 수 있는 기록매체에 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 프로세서가 읽을 수 있는 기록매체는 프로세서에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 또한, 프로세서가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 프로세서가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.
100: 이동 로봇
110: 바디
120: 주행부
130: 작업부
170: 센싱부
190: 제어부
200: 도킹 기기

Claims (20)

  1. 외관을 형성하는 바디(body);
    주행 영역의 주행면에 대해 상기 바디를 이동시키는 주행부;
    상기 주행 영역에 대응하는 격자 지도(grid map) 및 상기 격자 지도에 포함되는 격자들의 비용(cost) 정보가 저장되는 저장부; 및,
    상기 비용 정보에 기초하여 이동 경로를 생성하고, 상기 생성된 이동 경로에 따라 주행하도록 상기 주행부를 제어하며, 상기 주행 시 지나간 경로에 대응하는 격자의 스테이 비용(stay cost)을 증가시켜 저장하도록 제어하는 제어부;를 포함하고,
    상기 스테이 비용은 누적되고,
    상기 제어부는 이전 회차의 주행까지 누적된 스테이 비용을 반영하여 상기 이동 경로를 생성하는 이동 로봇.
  2. 제1항에 있어서,
    상기 비용 정보는, 상기 주행 영역의 환경 정보에 기반하여 부여되는 고유 비용(intrinsic cost), 및, 상기 스테이 비용을 포함하는 것을 특징으로 하는 이동 로봇.
  3. 제2항에 있어서,
    상기 스테이 비용은, 상기 주행 영역에 대응하는 격자들과 각 격자들의 스테이 비용으로 구성되는 스테이 지도(stay map)에 별도로 저장되는 것을 특징으로 하는 이동 로봇.
  4. 제2항에 있어서,
    상기 고유 비용과 상기 스테이 비용은 상기 격자 지도 상에 저장되는 것을 특징으로 하는 이동 로봇.
  5. 제2항에 있어서,
    상기 제어부는,
    상기 고유 비용, 상기 스테이 비용, 및 출발점에서 도착점까지 이동할 때 발생하는 거리에 대한 인접 비용(adjacent cost)을 합산하여 주행 비용을 산출하고, 주행 비용이 최소가 되는 경로로 상기 이동 경로를 생성하는 것을 특징으로 하는 이동 로봇.
  6. 제5항에 있어서,
    상기 제어부는, 1회 주행시 상기 스테이 비용을 인접한 두 격자의 인접 비용 차이값과 동일하게 증가시키는 것을 특징으로 하는 이동 로봇.
  7. 제5항에 있어서,
    상기 인접 비용은 이동 거리에 비례하는 것을 특징으로 하는 이동 로봇.
  8. 제2항에 있어서,
    상기 제어부는, 어느 한 격자의 스테이 비용이 상기 고유 비용의 최소값이상이 되면 전 스테이 비용들을 초기화하는 것을 특징으로 하는 이동 로봇.
  9. 제2항에 있어서,
    상기 고유 비용은, 고정 객체 또는 경계선에 대응하는 위험 영역에 대해서 제1값이 설정되고, 상기 위험 영역에 인접한 위험 예상 영역에 대해서 상기 제1값보다 낮은 제2값이 설정되는 것을 특징으로 하는 이동 로봇.
  10. 제9항에 있어서,
    상기 제어부는, 어느 한 격자의 스테이 비용이 상기 제2값 이상이 되면 전 스테이 비용들을 초기화하는 것을 특징으로 하는 이동 로봇.
  11. 주행 영역에 대응하는 격자 지도(grid map)의 격자들에 비용(cost) 정보를 설정하는 단계;
    상기 비용 정보에 기초하여 주행하는 단계;
    상기 주행 시 지나간 경로에 대응하는 격자의 스테이 비용(stay cost)을 증가시켜 저장하는 단계; 및,
    다음 회자 주행에서, 이전 회차의 주행까지 누적된 스테이 비용을 반영하여 이동 경로를 생성하는 단계;를 포함하는 이동 로봇의 제어 방법.
  12. 제11항에 있어서,
    상기 비용 정보는, 상기 주행 영역의 환경 정보에 기반하여 부여되는 고유 비용(intrinsic cost), 및, 상기 스테이 비용을 포함하는 것을 특징으로 하는 이동 로봇의 제어 방법.
  13. 제12항에 있어서,
    상기 스테이 비용은, 상기 주행 영역에 대응하는 격자들과 각 격자들의 스테이 비용으로 구성되는 스테이 지도(stay map)에 별도로 저장되는 것을 특징으로 하는 이동 로봇의 제어 방법.
  14. 제12항에 있어서,
    상기 고유 비용과 상기 스테이 비용은 상기 격자 지도 상에 저장되는 것을 특징으로 하는 이동 로봇의 제어 방법.
  15. 제12항에 있어서,
    상기 이동 경로 생성 단계는,
    상기 고유 비용, 상기 스테이 비용, 및 출발점에서 도착점까지 이동할 때 발생하는 거리에 대한 인접 비용을 합산하여 주행 비용을 산출하고, 주행 비용이 최소가 되는 경로로 상기 이동 경로를 생성하는 것을 특징으로 하는 이동 로봇의 제어 방법.
  16. 제15항에 있어서,
    상기 스테이 비용을 증가시켜 저장하는 단계는,
    1회 주행시 상기 스테이 비용을 인접한 두 격자의 인접 비용 차이값과 동일하게 증가시키는 것을 특징으로 하는 이동 로봇의 제어 방법.
  17. 제15항에 있어서,
    상기 인접 비용은 이동 거리에 비례하는 것을 특징으로 하는 이동 로봇의 제어 방법.
  18. 제12항에 있어서,
    어느 한 격자의 스테이 비용이 상기 고유 비용의 최소값이상이 되면 전 스테이 비용들을 초기화하는 단계;를 더 포함하는 이동 로봇의 제어 방법.
  19. 제12항에 있어서,
    상기 고유 비용은, 고정 객체 또는 경계선에 대응하는 위험 영역에 대해서 제1값이 설정되고, 상기 위험 영역에 인접한 위험 예상 영역에 대해서 상기 제1값보다 낮은 제2값이 설정되는 것을 특징으로 하는 이동 로봇의 제어 방법.
  20. 제19항에 있어서,
    어느 한 격자의 스테이 비용이 상기 제2값 이상이 되면 전 스테이 비용들을 초기화하는 단계;를 더 포함하는 이동 로봇의 제어 방법.

KR1020200029749A 2020-03-10 2020-03-10 이동 로봇 및 그 제어 방법 KR102339974B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020200029749A KR102339974B1 (ko) 2020-03-10 2020-03-10 이동 로봇 및 그 제어 방법
PCT/KR2021/002928 WO2021182857A1 (ko) 2020-03-10 2021-03-09 이동 로봇 및 그 제어 방법
US17/196,070 US11625040B2 (en) 2020-03-10 2021-03-09 Moving robot and controlling method
EP21767370.6A EP4119303A4 (en) 2020-03-10 2021-03-09 MOBILE ROBOT AND ITS CONTROL METHOD

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200029749A KR102339974B1 (ko) 2020-03-10 2020-03-10 이동 로봇 및 그 제어 방법

Publications (2)

Publication Number Publication Date
KR20210114258A KR20210114258A (ko) 2021-09-23
KR102339974B1 true KR102339974B1 (ko) 2021-12-20

Family

ID=77663952

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200029749A KR102339974B1 (ko) 2020-03-10 2020-03-10 이동 로봇 및 그 제어 방법

Country Status (4)

Country Link
US (1) US11625040B2 (ko)
EP (1) EP4119303A4 (ko)
KR (1) KR102339974B1 (ko)
WO (1) WO2021182857A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210073032A (ko) * 2019-12-10 2021-06-18 엘지전자 주식회사 충전 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040117079A1 (en) * 2001-03-15 2004-06-17 Jarl Hulden Efficient navigation of autonomous carriers

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4251545B2 (ja) * 2003-07-11 2009-04-08 独立行政法人科学技術振興機構 移動ロボット用経路計画システム
KR20090126414A (ko) * 2008-06-04 2009-12-09 삼성전자주식회사 로봇 및 그 경로생성방법
KR101984214B1 (ko) * 2012-02-09 2019-05-30 삼성전자주식회사 로봇 청소기의 청소 작업을 제어하기 위한 장치 및 방법
JP2013165588A (ja) 2012-02-10 2013-08-22 Honda Motor Co Ltd 無人走行作業車の制御装置
KR101382982B1 (ko) 2012-03-06 2014-04-09 고려대학교 산학협력단 로봇의 주행 경로 계획 장치 및 방법
KR101659031B1 (ko) 2014-04-30 2016-09-23 엘지전자 주식회사 잔디 깎기 로봇 및 그 제어 방법
KR101868695B1 (ko) * 2016-05-26 2018-07-23 고려대학교 산학협력단 이동 로봇 제어 방법
US10394244B2 (en) * 2016-05-26 2019-08-27 Korea University Research And Business Foundation Method for controlling mobile robot based on Bayesian network learning
US11467584B2 (en) * 2019-12-27 2022-10-11 Baidu Usa Llc Multi-layer grid based open space planner

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040117079A1 (en) * 2001-03-15 2004-06-17 Jarl Hulden Efficient navigation of autonomous carriers

Also Published As

Publication number Publication date
US11625040B2 (en) 2023-04-11
WO2021182857A1 (ko) 2021-09-16
US20210286367A1 (en) 2021-09-16
EP4119303A1 (en) 2023-01-18
EP4119303A4 (en) 2024-05-08
KR20210114258A (ko) 2021-09-23

Similar Documents

Publication Publication Date Title
US11921513B2 (en) Moving robot and moving robot system
KR102272676B1 (ko) 이동 로봇과 이동 로봇 시스템
KR102106100B1 (ko) 이동 로봇
EP3778145B1 (en) Mobile robot and control method of mobile robot
EP3778148B1 (en) Mobile robot and mobile robot system
KR20210084392A (ko) 이동로봇과 이동로봇의 제어방법
KR102296694B1 (ko) 이동 로봇
KR102339974B1 (ko) 이동 로봇 및 그 제어 방법
KR20210080341A (ko) 이동로봇과 이동로봇 시스템
KR102489618B1 (ko) 이동 로봇과 이동 로봇 시스템
KR102489616B1 (ko) 이동 로봇과 이동 로봇 시스템
KR20240029950A (ko) 이동로봇
KR20220025606A (ko) 이동 로봇 및 그 제어방법
KR20220025604A (ko) 이동 로봇 및 이의 제어 방법

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant