KR20090000500A - 이동 로봇의 리로케이션 방법 및 장치 - Google Patents
이동 로봇의 리로케이션 방법 및 장치 Download PDFInfo
- Publication number
- KR20090000500A KR20090000500A KR1020070064606A KR20070064606A KR20090000500A KR 20090000500 A KR20090000500 A KR 20090000500A KR 1020070064606 A KR1020070064606 A KR 1020070064606A KR 20070064606 A KR20070064606 A KR 20070064606A KR 20090000500 A KR20090000500 A KR 20090000500A
- Authority
- KR
- South Korea
- Prior art keywords
- point
- mobile robot
- relocation
- path
- image
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000033001 locomotion Effects 0.000 claims abstract description 32
- 230000002159 abnormal effect Effects 0.000 claims abstract 7
- 208000012661 Dyskinesia Diseases 0.000 claims description 10
- 230000001133 acceleration Effects 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 2
- 239000000284 extract Substances 0.000 abstract description 5
- 230000002093 peripheral effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 6
- 238000004140 cleaning Methods 0.000 description 4
- 241000282412 Homo Species 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0272—Control 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Electromagnetism (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Manipulator (AREA)
Abstract
본 발명은 이동 로봇이 이동 중에 슬립이 발생하여 자신의 위치를 잃어버렸을 경우에 자신의 위치를 다시 찾는 방법 및 장치에 관한 것이다.
상기 방법은 이동 로봇의 이동 경로 및 상기 이동 경로 중에서 주변 영상으로부터 절대 위치를 찾을 수 있는 지점을 저장하는 단계와, 상기 이동 로봇의 비정상 운동을 감지하는 단계와, 상기 비정상 운동이 감지되면 상기 이동 로봇이 소정의 복귀 경로를 따라서 상기 지점으로 이동하도록 제어하는 단계로 이루어진다.
이동 로봇, 천정 영상, 특징점, 리로케이션, 슬립
Description
도 1은 본 발명의 일 실시예에 따른 이동 로봇(100)의 구성을 도시하는 블록도.
도 2는 천정 영상으로부터 추출된 특징점의 예를 보여주는 도면.
도 3은 이동 로봇의 이동 경로 중에서 유효점들의 위치를 예시한 도면.
도 4는 이동 경로를 선 대칭 이동하여 생성된 경로를 도시한 예를 보여주는 도면.
도 5는 이동 경로를 점 대칭 이동하여 생성된 경로를 도시한 예를 보여주는 도면.
도 6은 다양한 위치에서 복귀 경로를 따라 이동하면 최종 유효점에 이르게 됨을 보여주는 도면.
도 7 및 도 8은 본 발명의 제1 실시예에 따른 리로케이션 과정을 보여주는 도면.
도 9 및 도 10은 본 발명의 제2 실시예에 따른 리로케이션 과정을 보여주는 도면.
도 11 및 도 12는 본 발명의 제3 실시예에 따른 리로케이션 과정을 보여주는 도면.
(도면의 주요부분에 대한 부호 설명)
100 : 이동 로봇
110 : 촬영부
120 : 특징점 추출부
130 : 운동 제어부
140 : 감지부
150 : 경로 저장부
160 : 유효점 저장부
170 : 리로케이션 부
본 발명은 이동 로봇에 관한 것으로, 보다 상세하게는 이동 로봇이 이동 중에 슬립(slip) 이 발생하여 자신의 위치를 잃어버렸을 경우에 자신의 위치를 다시 찾는 방법 및 장치에 관한 것이다.
일반적으로 로봇은 산업용으로 개발되어 공장자동화의 일환으로 사용되거나, 인간이 견딜 수 없는 극한의 환경에서 인간을 대신하여 작업을 수행하는 데 사용되어 왔다. 이러한 로봇 공학분야는 근래에 들어 최첨단의 우주개발산업에 사용되면서 발전을 거듭하여 최근에 들어서는 인간친화적인 가정용 로봇의 개발에까지 이르 렀다. 덧붙여, 로봇은 의료용 기기를 대체하여 인간 생체 내에 투입됨으로써, 기존의 의료용 기기로는 치료가 불가능했던 미세한 인간 생체조직의 치료에까지 이용된다. 이와 같은 눈부신 로봇공학의 발전은 인터넷에 의한 정보혁명과 이를 뒤이어 유행하고 있는 생명공학분야를 대체하여 새롭게 등장할 최첨단 분야로서 각광받고 있다.
이 중 상기 가정용 로봇은 산업용 로봇에 국한되어왔던 기존의 중공업 중심의 로봇공학분야를 경공업 중심의 로봇공학 분야까지 확대시킨 주역으로서 가장 기본적으로 상기되는 것으로 청소용 로봇을 그 예로 들 수 있다. 이러한 상기 청소용 로봇은 통상 이동을 위한 구동수단과, 청소를 위한 청소 수단 그리고, 자신의 위치 또는 사용자 리모컨의 위치를 측정하기 위한 위치 측정 수단 등으로 구성된다.
청소용 로봇과 같은 이동 로봇에서 자기의 정확한 위치를 파악하는 것은 가장 기본적이고 중요한 기능이다. 이동 로봇의 절대 위치를 계산하는 방법으로는 초음파 센서를 채용한 비콘(beacon)을 가정 내에 장착하는 방법이나 실내용 GPS(Global Positioning System)를 이용하는 방법이 있고, 상대 위치를 결정하는 방법으로는 엔코더(encoder)로부터 회전속도와 직진속도를 구하고 이를 적분하여 위치를 구하는 방법이나, 가속도 센서로부터 구한 가속도 값을 두 번 적분하여 위치를 구하는 방법, 또는 자이로 센서의 출력 값인 회전 속도를 적분하여 방향을 구하는 방법 등이 알려져 있다.
그런데, 이동 로봇이 SLAM(Simultaneous Localization and Map Building)을 수행하는 도중에, 슬립과 같은 비정상 운동이 발생하여 자신의 위치를 잃어버리게 되면, 어떻게든 자신의 위치를 다시 찾는 과정, 즉 리로케이션(relocation) 과정이 필요하다. 그런데, 일단 슬립이 발생하면 엔코더(encoder) 내지 주행계(odometer)에 의해 측정된 값은 전혀 신뢰할 수가 없으므로, 다른 센서를 이용하여 리로케이션을 수행하여야 한다.
슬립은 직선 방향 슬립과 회전 방향 슬립으로 나눌 수 있는데, 직선 방향 슬립은 가속도 센서에 의하여 보완이 가능하고 회전 방향 슬립은 자이로 센서에 의하여 보완이 가능하다. 센서의 사양에 따라 차이가 있기는 하지만, 일반적으로 가속도 센서에 비하여 자이로 센서가 오차가 작다고 알려져 있다. 이는 가속도 센서가 두 번의 적분을 거치면서 오차가 누적되는 경향이 있기 때문이다. 어쨌든, 이동 로봇의 슬립이 발생한 경우 통상의 가속도 센서나 자이로 센서와 같이 상대 위치를 결정하는 방법만으로는 리로케이션이 정확하게 이루어질 수 없다.
따라서, 이동 로봇의 슬립 발생시 리로케이션을 위해서는 절대 위치를 결정하는 방법을 적용할 필요가 있다. 이러한 절대 위치를 결정하는 방법 중에서도 이동 로봇에 장착된 카메라에 의해 촬영된 영상을 이용하는 기술이 최근에 많이 제안되고 있다. 이러한 기술은 이동 로봇에 장착된 카메라를 통하여 천정, 벽면, 바닥 등과 같이 절대 위치를 참조할 수 있는 영상을 촬영하고, 의해 촬영된 영상으로부터 특징점(feature points)을 추출한 후에, 이동 로봇이 실시간으로 이동 중에 획득된 특징점과 상기 추출된 특징점을 비교함으로써 이동 로봇의 절대 위치를 찾을 수 있게 해 준다.
그런데, 만약 이동 로봇이 SLAM을 수행하는 도중에 슬립이 발생하고 그 슬립 에 의하여 상기 이동 로봇이 상기와 같은 특징점을 획득할 수 없는 곳에 놓여진다면, 리로케이션이 불가능해진다는 문제가 발생한다. 상기와 같은 경우는 예를 들면, 촬영된 천정 영상에 포함되는 특징점의 수가 절대 위치를 확인할 정도에 미치지 못할 때에 일어날 수 있다.
본 발명이 이루고자 하는 기술적 과제는, 이동 로봇의 이동 중에 자신의 위치를 잃어버린 경우에 효율적으로 리로케이션을 수행하는 방법 및 장치를 제공하고자 하는 것이다.
특히, 본 발명이 이루고자 하는 기술적 과제는, 이동 로봇이 정상 이동 중에 리로케이션이 가능 지점을 지속적으로 업데이트 하고, 슬립 발생시 상기 업데이트된 지점으로 이동할 수 있도록 하는 방법 및 장치를 제공하고자 하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 리로케이션 방법은, 이동 로봇의 이동 경로 및 상기 이동 경로 중에서 주변 영상으로부터 절대 위치를 찾을 수 있는 지점을 저장하는 단계; 상기 이동 로봇의 비정상 운동을 감지하는 단계; 및 상기 비정상 운동이 감지되면 상기 이동 로봇이 소정의 복귀 경로를 따라서 상기 지점으로 이동하도록 제어하는 단계를 포함한다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 리로케이션 장치는, 이동 로봇의 이동 경로를 저장하는 경로 저장부; 상기 이동 경로 중에서 주변 영상으로부터 절대 위치를 찾을 수 있는 지점을 저장하는 유효점 저장부; 상기 이동 로봇의 비정상 운동을 감지하는 감지부; 및 상기 비정상 운동이 감지되면 상기 이동 로봇이 소정의 복귀 경로를 따라서 상기 지점으로 이동하도록 제어하는 리로케이션 부를 포함한다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이하 첨부된 도면들을 참조하여 본 발명의 일 실시예를 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 이동 로봇(100)의 구성을 도시하는 블록도이다. 이동 로봇(100)은 촬영부(110), 특징점 추출부(120), 운동 제어부(130), 감지부(140), 경로 저장부(150), 유효점 저장부(160) 및 리로케이션 부(170)를 포함하여 구성될 수 있다.
촬영부(110)는 특징점을 추출하기에 적합한 주변 영상을 촬영한다. 상기 주변 영상으로는 천정, 벽면, 바닥 등이 있을 수 있으나, 영상 변화의 가능성이 적고 특징점을 추출하기에 적합한 조명등을 포함하고 있는 천정이 주변 영상으로는 가장 적합하다고 할 수 있다. 이하 본 발명에서는 상기 주변 영상으로 천정을 사용하는 것으로 하여 설명하기로 한다. 촬영부(110)는 CCD(Charge Coupled Device), CMOS(Complementary Metal Oxide Semiconductor), 기타 당업계에 알려진 영상 획득(image capture) 수단으로 이루어질 수 있으며, 획득된 영상의 아날로그 신호를 디지털 신호로 변환하는 는 ADC(Analog-to-Digital Converter)를 더 포함할 수 있다.
특징점 추출부(120)는 촬영부(110)로부터 획득된 천정 영상으로부터 적어도 하나 이상의 특징점을 추출한다. 상기 특징점은 천정 영상에서 특정 위치를 식별할 수 있도록 표시되는 점들이다. 상기 특징점은 상기 특정 위치 고유의 특징이 나타날 수 있는 점들로서 선택되는 것이 바람직하다. 예를 들어, 도 2와 같은 천정 영상(20)이 촬영되었다고 할 때, 천정 영상(20)에는 샹들리에(21), 형광등(22), 모서리 부분(23) 등 다른 위치와는 구별되게 하는 세부 영상들이 포함되어 있을 수 있다. 이러한 세부 영상에 복수의 특징점들을 표시한 후, 이동 로봇(100)이 이동하면서 촬영한 영상에서 상기 표시된 특징점들과 동일한 특징점들을 발견하면 이동 로봇(100)의 절대 위치를 파악할 수 있게 된다.
운동 제어부(130)는 이동 로봇(100)의 운동을 제어하여, 이동 로봇(100)이 의도하는 위치로 이동할 수 있도록 한다. 운동 제어부(130)는 예를 들어, 복수의 주행바퀴와, 상기 주행바퀴를 구동하는 모터와, 상기 모터를 제어하는 모터 컨트롤러를 포함하여 구성될 수 있다. 이동 로봇(100)의 직선 운동은 상기 복수의 주행바 퀴의 회전 속도를 동일하게 함으로써 이루어지고, 곡선 운동은 상기 복수의 주행바퀴의 회전 속도를 다르게 함으로써 이루어질 수 있다.
감지부(140)는 이동 로봇(100)의 이동 중에 비정상 운동(슬립 등)의 발생 여부를 감지한다. 보다 구체적인 예로서, 감지부(140)는 엔코더 및 관성 센서(자이로 센서, 가속도 센서 등)를 이용하여 비정상 운동 여부를 감지할 수 있다. 상기 엔코더는 운동 제어부(130)에 포함되는 주행바퀴와 연결되어 상기 주행바퀴의 회전 속도를 감지한다. 상기 엔코더에서 감지된 회전 속도를 적분하면, 이동 로봇(100)의 움직인 거리 및 방향을 알 수 있다. 따라서, 특징점의 부족 등을 이유로 하여, 이동 로봇(100)이 천정 영상을 이용하여 절대 위치를 구할 수 없는 공간에서는 상기 엔코더를 이용하여 이동 로봇(100)의 위치 및 방향을 알 수 있는 것이다. 그러나, 슬립이 발생한 경우에는 상기 엔코더에 의한 위치 측정 방법은 전혀 의미가 없어진다. 감지부(140)는 예를 들어, 엔코더로부터 측정된 현재 위치와, 관성 센서로부터 측정된 현재 위치 간에 차이가 일정 임계치 이상이 되면 슬립이 발생한 것으로 판단한다.
그런데, 이와 같이 슬립이 발생하였을 때, 이동 로봇(100)이 천정 영상으로부터 절대 위치를 구할 수 없다고 한다면 별도의 과정을 통한 리로케이션이 필요하게 된다. 천정 영상으로부터 절대 위치를 구할 수 없는 상황은 예를 들어, 촬영된 천정 영상 내의 특징점이 현재 위치를 판단하기에 부족한 경우, 이동 로봇(100)이 SLAM 수행 중이어서 아직 현재 위치에서의 특징점을 생성하지 못한 경우 등이 있을 수 있다.
경로 저장부(150)는 이동 로봇(100)이 현재 위치에 이르기까지 이동한 경로(이하 '이동 경로'라고 함)를 실시간으로 저장한다. 상기 이동 경로는 2차원 좌표 점들의 집합으로 표시될 수 있으며, 상기 좌표 점들은 소정의 시간 간격 또는 거리 간격마다 저장될 수 있다. 상기 좌표 점들은 천정 영상을 이용한 절대 위치 계산 방법으로 계산될 수 있으나, 만약 천정 영상으로부터 절대 위치를 계산할 수 없는 구간에서는 보충적으로 엔코더를 이용하여 이동 로봇(100)의 상기 좌표 점들을 계산한다.
유효점 저장부(160)는 상기 이동 경로 중에서 천정 영상을 이용하여 절대 위치를 계산할 수 있는 지점(이하, '유효점'이라고 함)을 저장한다. 예를 들어, 이동 로봇(100)이 도 3과 같은 이동 경로(30)를 따라 이동한다고 할 때, 전술한 바와 같이 이동 경로(30) 상의 임의의 지점에서 절대 위치의 계산이 가능한 것은 아니다. 따라서, 유효점 저장부(160)는 리로케이션 과정을 수행할 때를 대비하여, 이동 경로(30) 중에서 천정 영상을 이용한 절대 위치의 계산이 가능한 지점들(31, 32, 33), 즉 유효점들을 저장한다. 유효점 저장부(160)는 복수의 유효점들을 모두 저장하여도 좋지만, 실제로 리로케이션 과정에서는 최종 유효점(p)만 이용하는 것으로 충분하므로, 바람직하게는 최종 유효점(p)만을 저장할 수 있다. 이는 다시 말하면, 유효점 저장부(160)가 유효점을 실시간으로 업데이트 한다는 것과도 같은 의미이다.
리로케이션 부(170)는 감지부(140)에 의하여 슬립이 발생하였다고 감지된 경우에는, 이동 로봇(100)의 위치를 찾기 위한 리로케이션 과정을 수행한다.
도 4 내지 도 6은 본 발명에서 제안하는 리로케이션의 기본 개념을 설명하기 위한 도면들이다. 도 4와 같이, 제1 지점(a)로부터 제2 지점(b)까지 이동하는 경로(40)가 있다고 할 때, 상기 경로(40)를 두 지점(a, b)을 잇는 선분을 기준으로 선 대칭(line symmetry) 이동 시켜서 얻은 복귀 경로(41)를 따라 제2 지점(b)에서부터 이동하면 제1 지점(a)에 다다르게 된다.
마찬가지로, 도 5와 같이, 상기 경로(40)를 상기 선분의 중심점(c)을 기준으로 점 대칭(line symmetry) 내지 회전 대칭 이동 시켜서 얻은 경로(42)를 따라 제2 지점(b)에서부터 이동하더라도 제1 지점(a)에 다다르게 된다.
그런데, 제2 지점(b)에서 이동 로봇(100)의 슬립이 발생하였고, 제1 지점(a)가 최종 유효점이라고 한다면, 리로케이션을 위해서는 이동 로봇(100)은 어떤 경로로든 제1 지점(a)로 이동하여야 한다. 그러나, 슬립이 발생한 경우에는 이동 로봇(100)은 자신의 현재 위치를 알 수가 없으므로, 도 4와 같은 선 대칭 경로(41)를 따라서 또는, 원래 이동한 경로(40)의 역방향 경로를 따라서 이동하는 것을 불가능하다.
따라서, 본 발명의 일 실시예에 따르면, 이동 로봇(100)은 슬립이 발생한 위치에서 점 대칭 경로(42)를 따라 이동함으로써 최종 유효점인 제1 지점(a)에 도달하게 된다.
이를 보다 자세히 설명하기 위하여 도 6을 참조한다. 이동 로봇(100)이 최종 유효점(p)을 통과하여 이동 경로(60)를 따라 이용하던 중에 어떤 지점에서 슬립이 발생하면 이동 로봇(100)은 자신의 위치를 잃어버리게 되므로, 실제 이동 로 봇(100)은 b1 내지 b3 또는 다른 임의의 위치에 놓여 있을 수 있다. 그럼에도 불구하고, b1 내지 b3 중에서 어떠한 지점에서든 점 대칭 경로(61, 62, 63)를 따라 이동 하게 되면 최종 유효점(p)에 반드시 도달하게 된다. 다만, 어떠한 지점에서든 출발 방향은 동일하고 결국 최종 유효점(p)에 도달하게 되지만, 이동 로봇(100)으로서는 언제 최종 유효점(p)과 만나게 될지는 알 수 없다.
따라서, 최종 유효점(p)과 만나는지를 판단하기 위하여, 리로케이션 부(170)는 이동 로봇(100)이 최종 유효점(p)을 향하여 이동하는 동안에 실시간으로 촬영되는 영상으로부터 얻어진 특징점을 최종 유효점(p)에서 얻은 특징점과 수시로 비교한다. 양자의 특징점이 매칭된다면, 비로소 이동 로봇(100)은 최종 유효점(p)에 도달한 것이 된다.
일단, 이동 로봇(100)이 최종 유효점(p)에 도달하면, 이 때부터는 이동 로봇(100)은 최종 유효점(p)에서의 절대 좌표 값(이미 알고 있는 값임)을 통하여 자신의 위치를 다시 파악하게 되고, 이로써 리로케이션 과정은 완료된다.
지금까지 도 1의 각 구성요소들은 메모리 상의 소정 영역에서 수행되는 태스크, 클래스, 서브 루틴, 프로세스, 오브젝트, 실행 쓰레드, 프로그램과 같은 소프트웨어(software)나, FPGA(field-programmable gate array)나 ASIC(application-specific integrated circuit)과 같은 하드웨어(hardware)로 구현될 수 있으며, 또한 상기 소프트웨어 및 하드웨어의 조합으로 이루어질 수도 있다. 상기 구성요소들은 컴퓨터로 판독 가능한 저장 매체에 포함되어 있을 수도 있고, 복수의 컴퓨터에 그 일부가 분산되어 분포될 수도 있다.
다음의 도 7 내지 도 12는 본 발명의 다양한 실시예에 따른 리로케이션 과정을 보여주는 도면들이다. 이 중에서, 도 7 및 도 8은 본 발명의 제1 실시예에 따른 리로케이션 과정을 보여준다.
이동 로봇(100)이 이동 경로(70)를 따라 이동하는 중에 슬립이 발생하면, 이동 로봇(100)의 최종 위치(p')와, 엔코더에 의하여 계산된 위치(s)가 서로 달라지게 된다. 이 때, 리로케이션 부(170)는 이동 로봇(100)이 상기 최종 위치(p')에서 출발하여, 최종 유효점(p)에서 상기 최종 위치로 이어지는 경로를 점 대칭 이동한 복귀 경로(71)를 따라 이동하도록 제어하면서, 특징점 추출부(120)를 통하여 천정 영상의 특징점을 추출하고 추출된 특징점과 최종 유효점(p)에서의 특징점간의 매칭이 발생되는지를 지속적으로 판단한다. 만약, 매칭이 발생된다면, 이동 로봇(100)은 최종 유효점(p)에 위치한 것이 된다. 상기 최종 유효점(p)은 적어도 이동 로봇(100)이 엔코더에 의하여 계산된 위치(s)를 점 대칭 이동하여 얻어지는 대응 점(s')에 도달하기 전에 발견된다.
도 9 및 도 10은 본 발명의 제2 실시예에 따른 리로케이션 과정을 보여준다. 상기 제2 실시예는 제1 실시예의 리로케이션 과정에서 장애물(10) 있는 경우를 예로 든 것이다. 이동 로봇(100)은 최종 위치(p')로부터 복귀 경로(71)를 따라서 최종 유효점(p)에 도달하고자 하지만, 도중에 장애물(10)을 만나게 된다. 그러면, 이 때부터는 리로케이션 부(170)는 이동 로봇(100)이 복귀 경로(71)가 아니라 장애물(10)의 외곽을 따라서 이동하는 벽 따라가기(wall following) 과정을 수행하도록 제어한다.
리로케이션 부(170)는 상기 벽 따라가기 과정 중에 다시 복귀 경로(71) 중 일 지점과 만나게 되면, 도 10에 도시한 바와 같이, 이동 로봇(100)이 다시 복귀 경로(71)를 따라 이동하도록 제어하고, 결국 이동 로봇(100)은 최종 유효점(p)에 도달할 수 있게 된다. 이동 로봇(100)이 이동하는 공간 내에서는 이와 같은 장애물(10)이 존재할 수 있으나, 적어도 최종 유효점(p)에는 장애물이 존재할 가능성은 거의 없다. 왜냐하면, 최종 유효점(p)은 이동 로봇(100)이 이미 통과한 적이 있는 지점이기 때문이다.
도 11 및 도 12는 본 발명의 제3 실시예에 따른 리로케이션 과정을 보여준다. 제3 실시예는 제1 및 제2 실시예와는 다른 방식으로 이동 로봇(100)이 최종 유효점(p)에 도달할 수도 있음을 보여준다. 리로케이션 부(170)는 이동 로봇(100)의 이동 경로(70)를 점 대칭 이동한 경로(71)의 최종점 즉, 엔코더에 의하여 계산된 위치(s)에 대응되는 점(s')은 정확히 알 수가 있다. 따라서, 리로케이션 부(170)는 먼저, 이동 로봇(100)이 최종 위치(p')로부터 상기 대응 점(s')을 향하여 직선 운동하도록 제어한다.
이동 로봇(100)이 상기 대응 점(s')에 도달하면, 리로케이션 부(170)는 이동 로봇(100)이 경로(71)을 따라서 이동하도록 제어한다. 이 때부터는, 리로케이션 부(170)는 천정 영상의 특징점을 추출하고 추출된 특징점과 최종 유효점(p)에서의 특징점간의 매칭이 발생되는지를 지속적으로 판단한다. 만약, 매칭이 발생된다면, 이 때 이동 로봇(100)은 최종 유효점(p)에 위치한 것이 된다.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야 한다.
상술한 바와 같이 본 발명에 따르면, 이동 로봇의 이동 중에 자신의 위치를 잃어버린 경우에 효율적으로 리로케이션을 수행할 수 있다.
Claims (26)
- 이동 로봇의 이동 경로 및 상기 이동 경로 중에서 주변 영상으로부터 절대 위치를 찾을 수 있는 지점을 저장하는 단계;상기 이동 로봇의 비정상 운동을 감지하는 단계; 및상기 비정상 운동이 감지되면 상기 이동 로봇이 소정의 복귀 경로를 따라서 상기 지점으로 이동하도록 제어하는 단계를 포함하는, 이동 로봇의 리로케이션 방법.
- 제 1항에 있어서, 상기 주변 영상은천정 영상, 벽면 영상 또는 바닥 영상인, 이동 로봇의 리로케이션 방법.
- 제 1항에 있어서, 상기 지점은상기 이동 경로 중에서 주변 영상으로부터 절대 위치를 찾을 수 있는 지점들 중에서 최종 지점인, 이동 로봇의 리로케이션 방법.
- 제 1항에 있어서, 상기 비정상 운동은슬립(slipping)인, 이동 로봇의 리로케이션 방법.
- 제 1항에 있어서, 상기 비정상 운동은엔코더의 측정 값과 관성 센서의 측정 값을 비교함으로써 감지되는, 이동 로봇의 리로케이션 방법.
- 제 5항에 있어서, 상기 관성 센서는자이로 센서 또는 가속도 센서인, 이동 로봇의 리로케이션 방법.
- 제 1항에 있어서, 상기 복귀 경로는상기 이동 경로를 바탕으로 구해지는, 이동 로봇의 리로케이션 방법.
- 제 7항에 있어서, 상기 복귀 경로는상기 이동 경로를 점 대칭 이동 시킴으로써 구해지는, 이동 로봇의 리로케이션 방법.
- 제 8항에 있어서, 상기 점 대칭을 위한 기준점은상기 이동 로봇의 현재 위치와 상기 지점간의 중심점인, 이동 로봇의 리로케이션 방법.
- 제 9항에 있어서,상기 이동 로봇이 상기 복귀 경로를 따라서 이동하는 도중에 장애물을 만나는 경우에는, 상기 복귀 경로와 다시 만날 때까지 상기 장애물의 외곽을 따라 이동 하는 단계를 더 포함하는, 이동 로봇의 리로케이션 방법.
- 제 1항에 있어서, 상기 복귀 경로는상기 비정상 운동 발생 후, 엔코더에 의하여 계산된 위치를 점 대칭 이동하여 얻어지는 대응 점을 경유하여 상기 지점에 이르는 경로인, 이동 로봇의 리로케이션 방법.
- 제 1항에 있어서, 상기 이동 로봇이 상기 지점에 도달하였는지를 판단하는 단계를 더 포함하는, 이동 로봇의 리로케이션 방법.
- 제 12항에 있어서, 상기 판단하는 단계는실시간으로 촬영되는 영상으로부터 얻어진 특징점과 상기 지점에서 얻은 특징점과의 매칭 여부를 판단하는 단계를 포함하는 리로케이션 방법.
- 이동 로봇의 이동 경로를 저장하는 경로 저장부;상기 이동 경로 중에서 주변 영상으로부터 절대 위치를 찾을 수 있는 지점을 저장하는 유효점 저장부;상기 이동 로봇의 비정상 운동을 감지하는 감지부; 및상기 비정상 운동이 감지되면 상기 이동 로봇이 소정의 복귀 경로를 따라서 상기 지점으로 이동하도록 제어하는 리로케이션 부를 포함하는, 이동 로봇의 리로 케이션 장치.
- 제 14항에 있어서, 상기 주변 영상은천정 영상, 벽면 영상 또는 바닥 영상인, 이동 로봇의 리로케이션 장치.
- 제 14항에 있어서, 상기 지점은상기 이동 경로 중에서 주변 영상으로부터 절대 위치를 찾을 수 있는 지점들 중에서 최종 지점인, 이동 로봇의 리로케이션 장치.
- 제 14항에 있어서, 상기 비정상 운동은슬립(slipping) 인, 이동 로봇의 리로케이션 장치.
- 제 14항에 있어서, 상기 감지부는엔코더의 측정 값과 관성 센서의 측정 값을 비교함으로써 상기 비정상 운동을 감지하는, 이동 로봇의 리로케이션 장치.
- 제 18항에 있어서, 상기 관성 센서는자이로 센서 또는 가속도 센서인, 이동 로봇의 리로케이션 장치.
- 제 14항에 있어서, 상기 리로케이션 부는상기 이동 경로를 바탕으로 상기 복귀 경로를 구하는, 이동 로봇의 리로케이션 장치.
- 제 20항에 있어서, 상기 리로케이션 부는상기 이동 경로를 점 대칭 이동 시킴으로써 상기 복귀 경로를 구하는, 이동 로봇의 리로케이션 장치.
- 제 21항에 있어서, 상기 점 대칭을 위한 기준점은상기 이동 로봇의 현재 위치와 상기 지점간의 중심점인, 이동 로봇의 리로케이션 장치.
- 제 22항에 있어서, 상기 리로케이션 부는상기 이동 로봇이 상기 복귀 경로를 따라서 이동하는 도중에 장애물을 만나는 경우에는, 상기 복귀 경로와 다시 만날 때까지 상기 장애물의 외곽을 따라 이동하도록 제어하는, 이동 로봇의 리로케이션 장치.
- 제 14항에 있어서, 상기 복귀 경로는상기 비정상 운동 발생 후, 엔코더에 의하여 계산된 위치를 점 대칭 이동하여 얻어지는 대응 점을 경유하여 상기 지점에 이르는 경로인, 이동 로봇의 리로케이션 장치.
- 제 14항에 있어서, 상기 리로케이션 부는상기 이동 로봇이 상기 지점에 도달하였는지를 실시간으로 판단하는, 이동 로봇의 리로케이션 장치.
- 제 25항에 있어서, 상기 리로케이션 부는실시간으로 촬영되는 영상으로부터 얻어진 특징점과 상기 지점에서 얻은 특징점과의 매칭 여부를 통하여 상기 이동 로봇이 상기 지점에 도달하였는지를 판단하는, 이동 로봇의 리로케이션 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070064606A KR100912874B1 (ko) | 2007-06-28 | 2007-06-28 | 이동 로봇의 리로케이션 방법 및 장치 |
US12/153,529 US20100324773A1 (en) | 2007-06-28 | 2008-05-20 | Method and apparatus for relocating mobile robot |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070064606A KR100912874B1 (ko) | 2007-06-28 | 2007-06-28 | 이동 로봇의 리로케이션 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090000500A true KR20090000500A (ko) | 2009-01-07 |
KR100912874B1 KR100912874B1 (ko) | 2009-08-19 |
Family
ID=40483675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070064606A KR100912874B1 (ko) | 2007-06-28 | 2007-06-28 | 이동 로봇의 리로케이션 방법 및 장치 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20100324773A1 (ko) |
KR (1) | KR100912874B1 (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020004035A (ja) * | 2018-06-27 | 2020-01-09 | 三菱電機株式会社 | 自走式掃除機 |
KR20220045725A (ko) * | 2020-10-06 | 2022-04-13 | 코가플렉스 주식회사 | 이동 로봇 및 이의 위치 추정 방법 |
CN117589154A (zh) * | 2024-01-19 | 2024-02-23 | 深圳竹芒科技有限公司 | 自移动设备的重定位方法、自移动设备和可读存储介质 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8630489B2 (en) * | 2009-05-05 | 2014-01-14 | Microsoft Corporation | Efficient image matching |
CN102596517B (zh) * | 2009-07-28 | 2015-06-17 | 悠进机器人股份公司 | 移动机器人定位和导航控制方法及使用该方法的移动机器人 |
KR20110021191A (ko) * | 2009-08-25 | 2011-03-04 | 삼성전자주식회사 | 로봇의 슬립 감지 장치 및 방법 |
TWI555496B (zh) * | 2011-05-17 | 2016-11-01 | 微星科技股份有限公司 | 清潔系統及其控制方法 |
US9928459B2 (en) * | 2011-07-25 | 2018-03-27 | Lg Electronics Inc. | Robotic cleaner and self testing method of the same |
US20180099846A1 (en) | 2015-03-06 | 2018-04-12 | Wal-Mart Stores, Inc. | Method and apparatus for transporting a plurality of stacked motorized transport units |
WO2016142794A1 (en) | 2015-03-06 | 2016-09-15 | Wal-Mart Stores, Inc | Item monitoring system and method |
US9534906B2 (en) | 2015-03-06 | 2017-01-03 | Wal-Mart Stores, Inc. | Shopping space mapping systems, devices and methods |
CA2961938A1 (en) | 2016-04-01 | 2017-10-01 | Wal-Mart Stores, Inc. | Systems and methods for moving pallets via unmanned motorized unit-guided forklifts |
KR20180121244A (ko) * | 2017-04-28 | 2018-11-07 | 엘지전자 주식회사 | 이동 로봇 및 그 제어방법 |
US11347226B2 (en) | 2019-04-25 | 2022-05-31 | Lg Electronics Inc. | Method of redefining position of robot using artificial intelligence and robot of implementing thereof |
CN113095227B (zh) * | 2021-04-13 | 2023-11-07 | 京东科技信息技术有限公司 | 一种机器人定位方法、装置、电子设备及存储介质 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01158250A (ja) * | 1987-12-15 | 1989-06-21 | Haamonitsuku Drive Syst:Kk | 撓み噛み合い式歯車装置 |
JP3002206B2 (ja) * | 1989-06-22 | 2000-01-24 | 神鋼電機株式会社 | 移動ロボットの走行制御方法 |
US5202661A (en) * | 1991-04-18 | 1993-04-13 | The United States Of America As Represented By The Secretary Of The Navy | Method and system for fusing data from fixed and mobile security sensors |
KR100493147B1 (ko) * | 1998-09-09 | 2005-09-09 | 삼성전자주식회사 | 실내자율이동운송수단에설치된자기위치인식장치및그방법 |
JP3986720B2 (ja) * | 1999-11-20 | 2007-10-03 | 株式会社バンダイ | 昆虫ロボット |
JP4672175B2 (ja) | 2000-05-26 | 2011-04-20 | 本田技研工業株式会社 | 位置検出装置、位置検出方法、及び位置検出プログラム |
CN1649698A (zh) * | 2002-03-18 | 2005-08-03 | 索尼株式会社 | 机器人设备、腿式移动机器人的运动控制设备和方法、腿式移动机器人的传感器系统和移动单元 |
AU2003256435A1 (en) * | 2002-08-16 | 2004-03-03 | Evolution Robotics, Inc. | Systems and methods for the automated sensing of motion in a mobile robot using visual data |
US7177737B2 (en) * | 2002-12-17 | 2007-02-13 | Evolution Robotics, Inc. | Systems and methods for correction of drift via global localization with a visual landmark |
US6804580B1 (en) * | 2003-04-03 | 2004-10-12 | Kuka Roboter Gmbh | Method and control system for controlling a plurality of robots |
US7689321B2 (en) * | 2004-02-13 | 2010-03-30 | Evolution Robotics, Inc. | Robust sensor fusion for mapping and localization in a simultaneous localization and mapping (SLAM) system |
US8025473B2 (en) * | 2004-10-25 | 2011-09-27 | Tokyo Electron Limited | Carrying system, substrate treating device, and carrying method |
KR100702663B1 (ko) * | 2005-08-27 | 2007-04-02 | 한국과학기술원 | 입자 필터 프레임 워크에서 전방향 시각센서 기반 위치추정 및 매핑을 위한 방법 |
US7539557B2 (en) * | 2005-12-30 | 2009-05-26 | Irobot Corporation | Autonomous mobile robot |
US8239083B2 (en) * | 2006-01-18 | 2012-08-07 | I-Guide Robotics, Inc. | Robotic vehicle controller |
US7953526B2 (en) * | 2006-01-18 | 2011-05-31 | I-Guide Robotics, Inc. | Robotic vehicle controller |
US7211980B1 (en) * | 2006-07-05 | 2007-05-01 | Battelle Energy Alliance, Llc | Robotic follow system and method |
US7584020B2 (en) * | 2006-07-05 | 2009-09-01 | Battelle Energy Alliance, Llc | Occupancy change detection system and method |
US7587260B2 (en) * | 2006-07-05 | 2009-09-08 | Battelle Energy Alliance, Llc | Autonomous navigation system and method |
US7801644B2 (en) * | 2006-07-05 | 2010-09-21 | Battelle Energy Alliance, Llc | Generic robot architecture |
US7974738B2 (en) * | 2006-07-05 | 2011-07-05 | Battelle Energy Alliance, Llc | Robotics virtual rail system and method |
US8073564B2 (en) * | 2006-07-05 | 2011-12-06 | Battelle Energy Alliance, Llc | Multi-robot control interface |
US7668621B2 (en) * | 2006-07-05 | 2010-02-23 | The United States Of America As Represented By The United States Department Of Energy | Robotic guarded motion system and method |
US7620477B2 (en) * | 2006-07-05 | 2009-11-17 | Battelle Energy Alliance, Llc | Robotic intelligence kernel |
TWI305610B (en) * | 2006-07-07 | 2009-01-21 | Ind Tech Res Inst | Path guidance method for autonomous mobile device |
KR100855657B1 (ko) * | 2006-09-28 | 2008-09-08 | 부천산업진흥재단 | 단안 줌 카메라를 이용한 이동로봇의 자기위치 추정 시스템및 방법 |
-
2007
- 2007-06-28 KR KR1020070064606A patent/KR100912874B1/ko not_active IP Right Cessation
-
2008
- 2008-05-20 US US12/153,529 patent/US20100324773A1/en not_active Abandoned
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020004035A (ja) * | 2018-06-27 | 2020-01-09 | 三菱電機株式会社 | 自走式掃除機 |
KR20220045725A (ko) * | 2020-10-06 | 2022-04-13 | 코가플렉스 주식회사 | 이동 로봇 및 이의 위치 추정 방법 |
CN117589154A (zh) * | 2024-01-19 | 2024-02-23 | 深圳竹芒科技有限公司 | 自移动设备的重定位方法、自移动设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20100324773A1 (en) | 2010-12-23 |
KR100912874B1 (ko) | 2009-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100912874B1 (ko) | 이동 로봇의 리로케이션 방법 및 장치 | |
KR100877072B1 (ko) | 이동 로봇을 위한 맵 생성 및 청소를 동시에 수행하는 방법및 장치 | |
KR100922494B1 (ko) | 이동 로봇의 자세 측정 방법 및 상기 방법을 이용한 위치측정 방법 및 장치 | |
US8855819B2 (en) | Method and apparatus for simultaneous localization and mapping of robot | |
KR101553653B1 (ko) | 로봇의 슬립 감지 장치 및 방법 | |
US8897947B2 (en) | Autonomous mobile device | |
KR20090009172A (ko) | 이동 로봇의 위치 측정 방법 및 장치 | |
KR101493075B1 (ko) | 이동 로봇의 위치 인식 장치 및 방법 | |
KR101439921B1 (ko) | 비젼 센서 정보와 모션 센서 정보를 융합한 모바일 로봇용 slam 시스템 | |
KR101705601B1 (ko) | 3차원 깊이정보기반 자율주행 로봇의 위치추정 장치 및 그 방법 | |
KR101697857B1 (ko) | 이동 로봇 및 그의 위치인식방법 | |
JP2000097637A5 (ja) | 姿勢位置検出装置及び移動体姿勢検出装置 | |
WO2007113956A1 (ja) | 移動体位置の推定装置と推定方法及び推定プログラム | |
US11874666B2 (en) | Self-location estimation method | |
KR20120059428A (ko) | 과거 지도 데이터에 기반의 이동 로봇 제어 장치 및 방법 | |
KR101619365B1 (ko) | 로봇의 slam 장치 및 방법 | |
KR100784125B1 (ko) | 단일 카메라를 이용한 이동 로봇의 랜드 마크의 좌표 추출방법 | |
KR101553656B1 (ko) | 로봇의 리로케이션 장치 및 방법 | |
KR100586648B1 (ko) | 천장 영상을 이용한 청소용 로봇의 자기위치 추정방법 | |
KR101376536B1 (ko) | 센서 융합을 이용한 모바일 객체의 위치 인식방법 및 그 장치 | |
Babu et al. | Gyroscope assisted scalable visual simultaneous localization and mapping | |
JP7273696B2 (ja) | 位置推定装置及びシステム | |
JP6175745B2 (ja) | 決定装置、決定方法、および決定プログラム | |
WO2018230560A1 (ja) | 位置検出装置および位置検出方法 | |
JP2020190888A (ja) | 座標情報取得方法、制御装置、移動体及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120716 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20130724 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |