KR101243133B1 - 이동로봇의 위치추정 장치 및 방법 - Google Patents
이동로봇의 위치추정 장치 및 방법 Download PDFInfo
- Publication number
- KR101243133B1 KR101243133B1 KR1020110008737A KR20110008737A KR101243133B1 KR 101243133 B1 KR101243133 B1 KR 101243133B1 KR 1020110008737 A KR1020110008737 A KR 1020110008737A KR 20110008737 A KR20110008737 A KR 20110008737A KR 101243133 B1 KR101243133 B1 KR 101243133B1
- Authority
- KR
- South Korea
- Prior art keywords
- mobile robot
- measuring unit
- error
- learning
- unit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 20
- 238000012545 processing Methods 0.000 claims description 16
- 239000000872 buffer Substances 0.000 claims description 15
- 238000005259 measurement Methods 0.000 claims description 10
- 230000003139 buffering effect Effects 0.000 claims description 6
- 230000007547 defect Effects 0.000 claims description 3
- 238000009825 accumulation Methods 0.000 abstract description 5
- 238000012937 correction Methods 0.000 abstract description 4
- 230000000694 effects Effects 0.000 abstract description 3
- 238000005070 sampling Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 2
- 238000005452 bending Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
- B25J13/088—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
- B25J19/04—Viewing devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/01—Mobile robot
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
본 발명은 이동로봇의 위치추정 장치 및 방법에 관한 것으로, 구체적으로는 비사각 지대에서 내부 주행센서의 위치 및 방향 오차를 학습엔진을 이용하여 학습하고, 사각지대에서 내부주행센서의 위치 및 방향 오차 누적을 학습한 학습엔진을 이용하여 이동로봇의 위치를 추정할 수 있도록 한 이동로봇의 위치인식 장치 및 방법에 관한 것이다. 이와 같은 본 발명은 비사각지대에서 수행되는 이동로봇의 위치 및 방향의 학습을 기반으로 사각지대에서 내부주행센서의 위치 및 방향 오차누적을 보정함으로써, 보정에 의해 이동로봇의 위치 및 방향의 정밀도를 향상시켜, 사각지대에서 이동로봇이 안정된 주행을 할 수 있도록 하는 효과가 있다.
Description
본 발명은 이동로봇의 위치추정 장치 및 방법에 관한 것으로, 구체적으로는 비사각 지대에서 내부 주행센서의 위치 및 방향 오차를 학습엔진을 이용하여 학습하고, 사각지대에서 내부주행센서의 위치 및 방향 오차 누적을 학습한 학습엔진을 이용하여 이동로봇의 위치를 추정할 수 있도록 한 이동로봇의 위치인식 장치 및 방법에 관한 것이다.
실내 공간을 이동하는 로봇을 제어하기 위해서는 이동로봇이 실내 공간상에서 어느 위치에 있는가를 인식하는 기능이 필요한데, 일반적으로 카메라를 이용한 로봇의 자기 위치를 계산하는 방법은 아래와 같이 크게 2가지로 나눌 수 있다.
첫째, 인위적인 랜드마크를 이용하는 방법으로서, 도 1에 도시된 바와 같이 특정 의미를 갖는 랜드마크(30)를 천정 또는 벽면에 설치하고, 이를 카메라(20)로 촬영한 후 영상에서 랜드마크(30)를 추출함으로써, 화면상의 좌표계와 이동로봇(10)의 좌표계를 일치시켜 이동로봇(10)이 자기 위치를 계산하는 방법이 있다.
둘째, 자연적인 랜드마크를 이용하는 방법으로서, 천정을 카메라로 촬영한 후 영상에서 조명기구 등 천정에 설치된 구조물 및 천정과 벽과의 경계면의 직전성분 및 에지(edge) 정보를 추출한 후 이를 이용하여 이동로봇의 자기 위치를 계산하는 방식이 있다.
이 중, 랜드마크를 이용하여 이동로봇의 자기 위치를 계산하는 기술에 대해서 살펴보면, 랜드마크를 이용하여 이동로봇의 위치 계산시, 카메라의 기하학적 영상왜곡에 의하여 또는 로봇의 이동 중 흔들림으로 인하여 위치계산에 오류가 발생될 수 있다. 또한 영상의 획득 처리에 별도의 시간이 소요되므로 응답시간이 늦다.
특히 랜드마크가 보이지 않는 사각지대를 로봇이 이동하는 경우, 위치 정보의 획득이 불가능한 문제점이 있다.
본 발명은 상기와 같은 문제점을 감안하여 안출된 것으로, 비사각 지대에서 내부 주행센서의 위치 및 방향 오차를 학습엔진을 이용하여 학습하고, 사각지대에서 내부주행센서의 위치 및 방향 오차 누적을 학습한 학습엔진을 이용하여 이동로봇의 위치를 추정할 수 있도록 한 이동로봇의 위치인식 장치 및 방법을 제공함에 그 목적이 있다.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해되어질 수 있을 것이다.
상기와 같은 목적을 달성하기 위한 본 발명의 일면에 따른 이동로봇의 위치 추정장치는, 이동로봇의 위치추정 장치에 있어서, 고유 위치정보가 마킹된 랜드 마크의 영상을 획득하는 카메라; 상기 이동로봇의 위치를 측정하는 위치 측정부; 상기 이동로봇의 방향을 측정하는 방향 측정부; 상기 랜드 마크의 영상을 획득할 수 있는 비사각지대를 이동하는 이동로봇의 위치 및 방향을 분석하며 학습하는 학습 엔진부; 및 상기 비사각지대에서는 상기 랜드 마크의 영상을 통해 이동로봇의 현재 위치 및 방향을 계산하며 상기 위치 측정부 및 방향 측정부를 통해 측정된 이동로봇의 위치 및 방향과 랜드 마크를 통해 획득되는 이동로봇의 위치 및 방향을 비교하며 위치 측정부 및 방향 측정부의 측정 오차를 추정하고, 주행경로타입에 따른 이동로봇의 위치 및 방향을 학습하도록 제어하며, 랜드 마크의 영상을 획득할 수 없는 사각지대에서는 상기 위치 측정부, 방향 측정부 및 학습 엔진부를 통해 이동로봇의 현재위치 및 방향을 추정하되, 상기 추정된 오차를 고려해서 이동로봇의 현재 위치 및 방향을 추정하도록 제어하는 제어부를 포함하는 것을 특징으로 한다.
바람직하게, 상기 위치 측정부는, 엔코더(encoder)인 것을 특징으로 한다.
바람직하게, 상기 방향 측정부는, 자이로센서인 것을 특징으로 한다.
바람직하게, 상기 제어부는, 상기 이동로봇의 현재 위치가 사각지대인지를 판단하는 판단부; 상기 이동로봇의 현재 위치가 비사각지대이면, 상기 위치 측정부와 방향 측정부를 구동시켜 이동로봇의 위치를 학습하도록 제어하여 상기 위치 측정부와 방향 측정부의 측정값을 상기 랜드 마크의 영상을 통해 계산된 이동로봇의 현재 위치 및 방향과 비교하여 오차를 추정하는 제1 오차 처리부; 상기 이동로봇에 특정 위치에 부착되는 상기 위치 측정부와 방향 측정부의 측정값에 대해 오차를 발생시킬 수 있는 이동로봇의 기구적인 결함에 대한 오차를 추정하는 제2 오차 처리부; 및 상기 이동로봇의 현재 위치가 사각지대이면, 상기 위치 측정부와 방향 측정부 및 학습 엔진부를 구동시켜 학습 엔진부를 통해 학습하며, 측정되는 이동로봇의 위치 및 방향에 상기 제1, 제2 오차 처리부의 추정된 오차를 고려하여 이동로봇의 현재 위치 및 방향을 추정하는 위치 및 방향 추정부를 포함하는 것을 특징으로 한다.
바람직하게, 상기 제1, 제2 오차 처리부는, 칼만 필터인 것을 특징으로 한다.
바람직하게, 상기 학습 엔진부는, 상기 이동로봇의 위치와 방향을 분석하여 주행 경로타입에 대응하는 학습 엔진을 선택하는 제1 엔진 선택기; 상기 이동로봇의 현재 위치에 대한 위치 및 방향의 데이터를 버퍼링하는 제1 데이터 버퍼; 상기 주행 경로타입을 고려하여 이동로봇의 위치와 방향에 대한 학습을 수행하는 학습 엔진; 상기 이동로봇의 위치와 방향을 분석하여 주행 경로타입에 대응하는 제2 데이터 버퍼측으로 상기 제1, 제2 오차 처리부의 추정된 오차를 출력하는 제2 엔진 선택기; 상기 제1,제2 오차 처리부의 추정된 오차를 버퍼링하는 제2 데이터 버퍼; 및 상기 학습 엔진과 제2 데이터 버퍼의 출력 데이터를 비교하여 획득되는 학습오차가 기 설정되는 임계치에 도달할때까지 학습을 반복하는 연산기를 포함하되, 상기 주행 경로타입에 대응하여 제1, 제2 엔진 선택기, 제1, 제2 데이터 버퍼, 학습엔진 및 연산기를 개별적으로 구비하는 것을 특징으로 한다.
바람직하게, 상기 제1, 제2 엔진 선택기는, 상기 이동로봇의 위치(VR)와 방향(WR)을 분석하여 인 경우를 회전 주행으로 판별하고, (여기서, β는 잡음을 고려한 임계치 파라미터)인 경우에 곡선 주행으로 판별하며, 상기 회전 및 곡선 주행의 판별 조건 이외에는 직선주행으로 주행 경로 타입을 판별하는 것을 특징으로 한다.
본 발명의 다른 면에 따른 이동로봇의 위치추정 방법은, 랜드 마크를 통해 이동로봇의 위치를 측정할 수 없는 사각지대에서 위치 측정부와 방향 측정부를 통해 이동로봇의 위치를 추정하는 방법에 있어서, 상기 이동로봇은 비사각지대에서 위치 측정부와 방향 측정부를 구동시켜, 측정되는 이동로봇의 위치 및 방향과 랜드 마크를 통해 계산되는 이동로봇의 위치 및 방향을 비교하여 상기 위치 측정부와 방향 측정부의 측정 오차를 추정하며, 주행경로타입에 따른 이동로봇의 위치 및 방향을 학습하는 단계; 및 상기 이동로봇은 상기 사각지대에서 상기 위치 측정부, 방향 측정부 및 학습된 이동로봇의 위치 및 방향을 통해 이동로봇의 위치 및 방향을 계산하되, 상기 추정된 오차를 고려해서 이동로봇의 위치 및 방향을 추정하는 단계를 포함하는 것을 특징으로 한다.
바람직하게, 상기 위치 측정부는, 엔코더(encoder)인 것을 특징으로 한다.
바람직하게, 상기 방향 측정부는, 자이로센서인 것을 특징으로 한다.
이상과 같은 본 발명은, 비사각지대에서 수행되는 이동로봇의 위치 및 방향의 학습을 기반으로 사각지대에서 내부주행센서의 위치 및 방향 오차누적을 보정함으로써, 보정에 의해 이동로봇의 위치 및 방향의 정밀도를 향상시킬 수 있는 효과가 있다.
이에, 사각지대에서 이동로봇이 안정된 주행을 할 수 있도록 하는 효과가 있다.
도 1은 종래의 이동로봇의 위치추정을 설명하기 위한 예시도.
도 2는 본 발명의 실시예에 따른 이동로봇 모델을 설명하기 위한 예시도.
도 3은 엔코더로부터 측정된 위치 오차의 패턴을 보여주는 도면.
도 4a 및 도 4b는 본 발명의 실시예에 따라 사각지대에 위치한 이동로봇을 설명하기 위한 예시도.
도 5는 본 발명의 실시예에 따라 칼만필터를 적용하여 구성된 이동로봇의 위치추정 장치를 보인 예시도.
도 6은 본 발명의 실시예에 따라 사각지대에서 이동로봇의 위치추정을 설명하기 위한 예시도.
도 7은 본 발명의 실시예에 따라 사각지대에서 이동로봇의 위치추정을 설명하기 위한 예시도.
도 8은 본 발명의 실시예에 따른 학습 엔진부의 내부구성을 보인 구성도.
도 9는 본 발명의 실시예에 따른 이동로봇의 위치추정 방법을 보인 흐름도.
도 2는 본 발명의 실시예에 따른 이동로봇 모델을 설명하기 위한 예시도.
도 3은 엔코더로부터 측정된 위치 오차의 패턴을 보여주는 도면.
도 4a 및 도 4b는 본 발명의 실시예에 따라 사각지대에 위치한 이동로봇을 설명하기 위한 예시도.
도 5는 본 발명의 실시예에 따라 칼만필터를 적용하여 구성된 이동로봇의 위치추정 장치를 보인 예시도.
도 6은 본 발명의 실시예에 따라 사각지대에서 이동로봇의 위치추정을 설명하기 위한 예시도.
도 7은 본 발명의 실시예에 따라 사각지대에서 이동로봇의 위치추정을 설명하기 위한 예시도.
도 8은 본 발명의 실시예에 따른 학습 엔진부의 내부구성을 보인 구성도.
도 9는 본 발명의 실시예에 따른 이동로봇의 위치추정 방법을 보인 흐름도.
본 발명의 이동로봇의 위치추정 장치 및 방법은 랜드마크 이외에 로봇 내부에 엔코더와 자이로센서를 구비하고, 위치 측정부(예컨대, 엔코더)와 방향 측정부(예컨대, 자이로센서)의 출력 정보를 융합하여 로봇의 위치를 추정할 수 있도록 하는 기술적 구성을 제안한다. 이때 위치 측정부와 방향 측정부의 오차를 최소화하기 위하여 제1, 제2 오차 처리부(예컨대, 칼만 필터)를 설계하고, 이를 위하여 이동로봇 및 각 위치 측정부와 방향 측정부를 수학적으로 모델링하며, 사각지대에서의 대응을 위하여 비사각 지대에서 이동로봇의 학습된 학습네트워크를 고려하여 위치 측정부와 방향 측정부를 통해 측정된 이동로봇의 위치 및 방향 측정값에 오차 처리부를 통해 추정된 오차값을 고려하여 사각지대에서의 이동로봇의 현재 위치를 추정할 수 있도록 한다.
하기의 설명에서 내부주행센서는 이동로봇에 구비되는 위치 측정부와 방향 측정부를 통합하는 명칭으로 사용될 것이다. 여기서 위치 측정부로 사용될 수 있는 일예의 엔코더는 이동로봇의 바퀴의 회전수를 측정하는 센서이고, 방향 측정부로 사용될 수 있는 일예의 자이로센서는 이동로봇의 회전속도를 측정하는 센서이며, 두 센서의 데이터를 기구학을 통해 위치 및 방향 데이터로 변환한다.
하기의 설명에서 본 발명의 이동로봇의 위치추정 장치 및 방법의 특정 상세들이 본 발명의 보다 전반적인 이해를 제공하기 위해 나타나 있는데, 이들 특정 상세들 없이 또한 이들의 변형에 의해서도 본 발명이 용이하게 실시될 수 있다는 것은 이 기술분야에서 통상의 지식을 가진 자에게 자명할 것이다.
하기의 설명에서 사각지대는 이동로봇이 랜드마크의 영상을 획득하지 못하는 영역을 의미하는 바로 사용할 것이고, 비사각지대는 비사각지대는 랜드 마크의 영상을 획득할 수 있는 영역을 의미하는 바로 사용할 것이다.
이하, 본 발명에 따른 바람직한 실시 예를 첨부된 도면을 참조하여 상세히 설명하되, 본 발명에 따른 동작 및 작용을 이해하는데 필요한 부분을 중심으로 설명한다.
도 2는 본 발명의 실시예에 따른 이동로봇 모델을 설명하기 위한 예시도이다.
도 2를 참조하면, 두개의 바퀴를 갖는 차륜 구동형 이동로봇을 대상으로 하여 우측 바퀴(A)의 회전속도를 Wr, 좌측 바퀴(B)의 회전속도를 Wl이라 하고, 직교 좌표계에서의 로봇의 중심위치 및 방향을 각각 (xc, yc) 및 θc라 하면, 아래의 수학식 1과 같이 표현될 수 있다.
여기서, r은 각 바퀴의 반지름, L은 두 바퀴 사이의 거리를 의미한다.
본 발명은 전술한 이동로봇(4)이 사각지대로 이동하였을때에도 이동로봇(4)의 위치를 인식할 수 있도록 하기 위해 이동로봇(4)에 엔코더와 자이로센서를 구비한다.
엔코더는 이동로봇의 바퀴를 구동하는 모터에 부착되어 바퀴의 회전수를 광학적으로 감지하여 펄스로 출력하는 센서이다.
바퀴의 회전수로부터 상기 수학식 1을 사용하여 이동로봇(4)의 위치 및 방향을 추정할 수 있다.
그러나, 시작지점으로부터의 상대적 위치는 파악할 수 있으나, 이동 공간에서의 전역위치를 파악할 수 없으며, 바퀴의 미끄러짐이 발생하는 경우 정확한 위치 추정이 힘들다.
또한 바퀴 축의 휨 등과 같은 기구학적 파라미터가 변경되는 경우, 위치계산의 오차가 발생되며, 이동로봇(4)이 이동함에 따라 위치오차가 계속 누적된다.
발생되는 오차는 도 3에 도시된 바와 같이, 직선, 곡선 및 회전 등과 같은 주행경로의 타입에 따라 다른 패턴을 갖는다.
전술한 엔코더와 함께 이동로봇(4)의 내부에 부착되는 자이로센서는 회전속도를 출력하는 관성 센서로서, 이동로봇의 방향을 추정하기 위하여 사용된다.
자이로센서는 응답시간이 작으나, 엔코더와 마찬가지로 전역위치 추정이 어렵고, 오차가 누적되는 단점이 있다. 그러나 엔코더에 비하여 오차의 크기가 작고, 백색가우시안 잡음으로 모델링 될 수 있다.
도 4a 및 도 4b는 본 발명의 실시예에 따른 이동로봇의 위치추정 장치의 구성도이다.
도 4a 및 도 4b를 참조하면, 본 발명에 따른 이동로봇(4)의 위치추정 장치는 카메라(2)와, 방향 측정부(5)와, 위치 측정부(6)와, 학습 엔진부(7)와, 제어부(8) 등을 포함하여 구성된다.
우선, 카메라(2)는 고유 위치정보가 마킹된 랜드 마크의 영상을 획득한다.
방향 측정부(5)는 이동로봇(4)의 방향을 측정하며, 위치 측정부(6)는 이동로봇(4)의 위치를 측정한다.
학습 엔진부(7)는 랜드 마크의 영상을 획득할 수 있는 비사각지대를 이동하는 이동로봇(4)의 위치 및 방향을 분석하며 학습한다.
제어부(8)는 비사각지대에서 상기 랜드 마크의 영상을 통해 이동로봇의 현재 위치 및 방향을 계산하며 위치 측정부(6) 및 방향 측정부(5)를 통해 측정된 이동로봇(4)의 위치 및 방향과 랜드 마크를 통해 획득되는 이동로봇(4)의 위치 및 방향을 비교하며 위치 측정부(6) 및 방향 측정부(5)의 측정 오차를 추정한다. 또한 제어부(8)는 주행경로타입에 따른 이동로봇(4)의 위치 및 방향을 학습하도록 제어하며, 랜드 마크의 영상을 획득할 수 없는 사각지대에서는 위치 측정부(6), 방향 측정부(5) 및 학습 엔진부(7)를 통해 이동로봇(4)의 현재위치 및 방향을 추정하되, 추정된 오차를 고려해서 이동로봇(4)의 현재 위치 및 방향을 추정하도록 제어한다.
이러한 제어부(8)는 도 4b에 도시된 바와 같이, 이동로봇(4)의 현재 위치가 사각지대인지를 판단하는 판단부(9)와, 이동로봇(4)의 현재 위치가 비사각지대이면, 위치 측정부(6)와 방향 측정부(5)를 구동시켜 이동로봇(4)의 위치를 학습하도록 제어하여 위치 측정부(6)와 방향 측정부(5)의 측정값을 랜드 마크의 영상을 통해 계산된 이동로봇(4)의 현재 위치 및 방향과 비교하여 오차를 추정하는 제1 오차 처리부(11)와, 이동로봇(4)에 특정 위치에 부착되는 위치 측정부(6)와 방향 측정부(5)의 측정값에 대해 오차를 발생시킬 수 있는 이동로봇(4)의 기구적인 결함에 대한 오차를 추정하는 제2 오차 처리부(13)와, 이동로봇(4)의 현재 위치가 사각지대이면, 위치 측정부(6)와 방향 측정부(5) 및 학습 엔진부(7)를 구동시켜 학습 엔진부(7)를 통해 학습하며, 측정되는 이동로봇(4)의 위치 및 방향에 제1, 제2 오차 처리부(11, 13)의 추정된 오차를 고려하여 이동로봇(4)의 현재 위치 및 방향을 추정하는 위치 및 방향 추정부(12)를 포함한다. 여기서, 제1, 제2 오차 처리부(11, 13)는 칼만 필터로 구성되며, 이에 대한 상세한 설명은 하기에서 기술하도록 한다.
도 5는 본 발명의 실시예에 따라 사각지대에 위치한 이동로봇을 설명하기 위한 예시도이다.
도 5를 참조하면, 이동로봇(4) 상단에 카메라(2)가 부착되어 있고, 천장의 랜드마크(1)를 보고 이동로봇(4)의 위치 및 방향(회전각)을 구한다. 이동로봇(4) 위에 장애물(3)이 있을 시에 카메라(2)가 천장의 랜드마크(1)를 보지 못하는 사각지대가 발생한다.
그러면 이동로봇(4)은 카메라(2)를 이용하여 랜드마크(1)의 영상을 획득할 수 없고, 이에 사각지대에서 이동로봇(4)의 위치 및 방향을 구할 수 없기 때문에 자이로센서(5)와 엔코더(6)의 내부주행센서를 이용하여 이동로봇(4)의 위치 및 방향을 출력한다.
본 발명에 따른 자이로센서(5)와 엔코더(6)는 이동로봇(4)의 위치 및 방향을 출력하기에 앞서 이동로봇의 선속도 VR 및 회전속도 WR은 아래의 수학식 2와 같다.
여기서, α∈[0,1]는 가중치를 의미한다.
자이로센서(5)와 엔코더(6)의 내부주행센서로부터 측정된 이동로봇(4)의 선속도 및 회전속도를 시간에 따라 적분하여 이동로봇(4)의 위치 및 방향(회전각)을 아래의 수학식 3과 같이 구할 수 있다.
여기서, △t는 샘플링시간이며, VR,K 및 WR,K는 K번째 샘프링 시간에서의 이동로봇의 선속도 및 회전속도를 의미하며, xR ,K, yR ,K는 K번째 샘플링시간에서의 이동로봇의 위치, θR,K는 K번째 샘플링시간에서의 이동로봇의 회전각을 의미한다.
자이로센서(5)와 엔코더(6)의 측정오차 및 구조적오차에 의하여 이동로봇의 실제위치와 측정위치 사이에 오차가 발생되며, 이를 δxR ,K , δyR ,K, δθR, K 로 표시하여 수학식으로 나타내면, 아래의 수학식 4와 같다.
여기서, Sr,k 및 Sl,k는 우측 및 좌측 바퀴의 왜곡율을 의미한다.
카메라(2)로부터 측정된 이동로봇(4)의 위치 및 회전각을 각각 xG, yG, θG로 표시한다. K번째 샘플링시간에서의 측정오차를 δxG ,K , δyG ,K, δθG,K로 표시하고, 오차 방정식은 아래의 수학식 5와 같다.
상기 수학식 4와 5로부터 칼만 필터의 적용을 위한 상태방정식이 아래의 수학식 6과 같이 구해진다.
다음과 같은 수학식 7과 같은 관계가 성립된다.
상기 수학식 7로부터 칼만필터의 적용을 위한 측정 방정식이 아래의 수학식 8과 같이 구해진다.
이때, 칼만이득 Kk+1은 아래의 수학식 10과 같이 주어진다.
상태오차 공분산 행렬 Pk +1은 다음의 수학식 11과 같이 업데이트 된다.
도 6은 본 발명의 실시예에 따라 칼만필터를 적용하여 구성된 이동로봇의 위치추정 장치를 보인 예시도이다.
도 6을 참조하면, 제1 오차 처리부(11)는 내부주행센서 데이터 xR ,K, yR ,K, θR,K
도 7은 본 발명의 실시예에 따라 사각지대에서 이동로봇의 위치추정을 설명하기 위한 예시도이다.
도 7을 참조하면, 본 발명은 학습엔진부(7)를 사용한 위치추정 장치로서, 카메라를 활용할 수 있는 비사각지대에서는 SW1 이 닫히고, SW2가 열린다.
이 경우는 도 6과 동일하게 제1 오차 처리부(11)에 의한 위치 추정이 수행된다. SW1과 SW2가 모두 닫히면, 학습엔진부(7)에 대한 학습이 수행된다.
내부 주행센서로부터 측정되는 이동로봇(4)의 선속도 VR 및 WR을 입력값으로 하고, 카메라(2)와 내부주행센서의 측정값에 대한 제1 오차 처리부(11)의 보정치 을 출력값으로 하여 학습을 수행한다.
사각지대에 진입하면, SW1이 열리고, SW2가 닫히며, 내부주행센서 값을 입력으로 학습엔진부(7)로 위치를 추정한다.
온라인 학습의 특성 상, 학습네트워크의 파라메터는 과거 입력된 샘플에 비하여 최근 입력된 샘플에 영향을 많이 받는다. 내부주행센서 중 엔코더의 경우, 오차파형은 주행경로의 타입에 따라 그림 3 과 같이 영향을 받음을 확인하였다. 즉 직선주행, 곡선주행 및 회전에 따라 오차패턴에 차이가 있으므로, 학습 시의 주행경로에 따라 학습결과가 달라질 수 있다.
예를 들어 직선주행 시에 학습된 네트워크를 곡선주행의 위치보정에 적용하는 경우 오히려 정확도를 저하시킬 수 있다.
본 발명은 사각지대에 대응하여 주행경로타입에 대응하여 이동로봇의 위치 및 방향을 학습한다.
도 8은 본 발명의 실시예에 따른 학습 엔진부의 내부구성을 보인 구성도이다.
도 8을 참조하면, 본 발명에 따른 학습 엔진부(7)는 이동로봇(4)의 위치와 방향을 분석하여 주행 경로타입에 대응하는 학습 엔진을 선택하는 엔진 선택기(15)와, 이동로봇(4)의 현재 위치에 대한 위치 및 방향의 데이터를 버퍼링하는 데이터 버퍼(16a, 16b, 16c)와, 주행 경로타입을 고려하여 이동로봇(4)의 위치와 방향에 대한 학습을 수행하는 학습 엔진(17a, 17b, 17c)과, 이동로봇(4)의 위치와 방향을 분석하여 주행 경로타입에 대응하는 데이터 버퍼(19a, 19b, 19c)측으로 제1, 제2 오차 처리부(11, 13)의 추정된 오차를 출력하는 엔진 선택기(18)와, 제1, 제2 오차 처리부(11, 13)의 추정된 오차를 버퍼링하는 데이터 버퍼(16a~16c)와, 학습 엔진(17a~17c)과 데이터 버퍼(19a~19c)의 출력 데이터를 비교하여 획득되는 학습오차가(e) 기 설정되는 임계치에 도달할때까지 학습을 반복하는 연산기(21a~21c)를 포함한다.
전술한 학습 엔진부(7)는 주행 경로타입에 대응하여 엔진 선택기(15, 18), 데이터 버퍼(16a~16c, 19a~19c), 학습엔진(17a~17c) 및 연산기(19a~19c)를 개별적으로 구비하여 학습할 수 있는 구성으로 이루어졌다.
즉, 주행 경로타입에 따라 직선, 곡선 및 회전에 따른 학습을 수행하며, 학습오차(e)가 정해진 임계치 이하가 될때까지 학습을 반복한다.
도 9는 본 발명의 실시예에 따른 이동로봇의 위치추정 방법을 보인 흐름도이다.
도 9를 참조하면, 이동로봇(4)은 비사각지대에서 방향 측정부(5)와 위치 측정부(6)를 구동시켜, 측정되는 이동로봇(4)의 위치 및 방향과 랜드 마크(1)를 통해 계산되는 이동로봇(4)의 위치 및 방향을 비교하여 방향 측정부(5)와 위치 측정부(6)의 측정 오차를 추정하며, 주행경로타입에 따른 이동로봇의 위치 및 방향을 학습한다(S910).
이후, 이동로봇(4)은 비사각지대에서 사각지대로 진입하면, 사각지대에서 상기 방향 측정부(5), 위치 측정부(6) 및 학습된 이동로봇(4)의 위치 및 방향을 통해 이동로봇(4)의 현재위치 및 방향을 계산하되, 추정된 오차를 고려해서 이동로봇(4)의 현재 위치 및 방향을 추정한다(S920).
Claims (10)
- 이동로봇의 위치추정 장치에 있어서,
고유 위치정보가 마킹된 랜드 마크의 영상을 획득하는 카메라;
상기 이동로봇의 위치를 측정하는 위치 측정부;
상기 이동로봇의 방향을 측정하는 방향 측정부;
상기 랜드 마크의 영상을 획득할 수 있는 비사각지대를 이동하는 이동로봇의 위치 및 방향을 분석하며 학습하는 학습 엔진부; 및
상기 비사각지대에서는 상기 랜드 마크의 영상을 통해 이동로봇의 현재 위치 및 방향을 계산하며 상기 위치 측정부 및 방향 측정부를 통해 측정된 이동로봇의 위치 및 방향과 랜드 마크를 통해 획득되는 이동로봇의 위치 및 방향을 비교하며 위치 측정부 및 방향 측정부의 측정 오차를 추정하고, 주행경로타입에 따른 이동로봇의 위치 및 방향을 학습하도록 제어하며, 랜드 마크의 영상을 획득할 수 없는 사각지대에서는 상기 위치 측정부, 방향 측정부 및 학습 엔진부를 통해 이동로봇의 현재위치 및 방향을 추정하되, 상기 추정된 오차를 고려해서 이동로봇의 현재 위치 및 방향을 추정하도록 제어하는 제어부를 포함하되,
상기 제어부는,
상기 이동로봇의 현재 위치가 사각지대인지를 판단하는 판단부;
상기 이동로봇의 현재 위치가 비사각지대이면, 상기 위치 측정부와 방향 측정부를 구동시켜 이동로봇의 위치를 학습하도록 제어하여 상기 위치 측정부와 방향 측정부의 측정값을 상기 랜드 마크의 영상을 통해 계산된 이동로봇의 현재 위치 및 방향과 비교하여 오차를 추정하는 제1 오차 처리부;
상기 이동로봇에 특정 위치에 부착되는 상기 위치 측정부와 방향 측정부의 측정값에 대해 오차를 발생시킬 수 있는 이동로봇의 기구적인 결함에 대한 오차를 추정하는 제2 오차 처리부; 및
상기 이동로봇의 현재 위치가 사각지대이면, 상기 위치 측정부와 방향 측정부 및 학습 엔진부를 구동시켜 학습 엔진부를 통해 학습하며, 측정되는 이동로봇의 위치 및 방향에 상기 제1, 제2 오차 처리부의 추정된 오차를 고려하여 이동로봇의 현재 위치 및 방향을 추정하는 위치 및 방향 추정부를 포함하는 것을 특징으로 하는 이동로봇의 위치추정 장치.
- 제1 항에 있어서, 상기 위치 측정부는,
엔코더(encoder)인 것을 특징으로 하는 이동로봇의 위치추정 장치.
- 제1 항에 있어서, 상기 방향 측정부는,
자이로센서인 것을 특징으로 하는 이동로봇의 위치추정 장치.
- 삭제
- 제1 항에 있어서, 상기 제1, 제2 오차 처리부는,
칼만 필터인 것을 특징으로 하는 이동로봇의 위치추정 장치.
- 제1 항에 있어서, 상기 학습 엔진부는,
상기 이동로봇의 위치와 방향을 분석하여 주행 경로타입에 대응하는 학습 엔진을 선택하는 제1 엔진 선택기;
상기 이동로봇의 현재 위치에 대한 위치 및 방향의 데이터를 버퍼링하는 제1 데이터 버퍼;
상기 주행 경로타입을 고려하여 이동로봇의 위치와 방향에 대한 학습을 수행하는 학습 엔진;
상기 이동로봇의 위치와 방향을 분석하여 주행 경로타입에 대응하는 제2 데이터 버퍼측으로 상기 제1, 제2 오차 처리부의 추정된 오차를 출력하는 제2 엔진 선택기;
상기 제1,제2 오차 처리부의 추정된 오차를 버퍼링하는 제2 데이터 버퍼; 및
상기 학습 엔진과 제2 데이터 버퍼의 출력 데이터를 비교하여 획득되는 학습오차가 기 설정되는 임계치에 도달할때까지 학습을 반복하는 연산기를 포함하되,
상기 주행 경로타입에 대응하여 제1, 제2 엔진 선택기, 제1, 제2 데이터 버퍼, 학습엔진 및 연산기를 개별적으로 구비하는 것을 특징으로 하는 이동로봇의 위치추정 장치.
- 삭제
- 삭제
- 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110008737A KR101243133B1 (ko) | 2011-01-28 | 2011-01-28 | 이동로봇의 위치추정 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110008737A KR101243133B1 (ko) | 2011-01-28 | 2011-01-28 | 이동로봇의 위치추정 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120087506A KR20120087506A (ko) | 2012-08-07 |
KR101243133B1 true KR101243133B1 (ko) | 2013-03-13 |
Family
ID=46873041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110008737A KR101243133B1 (ko) | 2011-01-28 | 2011-01-28 | 이동로봇의 위치추정 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101243133B1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101705601B1 (ko) * | 2014-05-30 | 2017-02-13 | 동명대학교 산학협력단 | 3차원 깊이정보기반 자율주행 로봇의 위치추정 장치 및 그 방법 |
CN110109457A (zh) * | 2019-04-29 | 2019-08-09 | 北方民族大学 | 一种智能语音导盲机器人控制方法及控制*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100758389B1 (ko) * | 2005-12-29 | 2007-09-14 | 한국생산기술연구원 | 이동물체 상태군을 적용한 이동물체 위치추정 시스템 및 그추정 방법 |
JP4037866B2 (ja) | 2002-07-25 | 2008-01-23 | 富士通株式会社 | 移動体の位置推定装置、位置推定方法および位置推定プログラム |
KR20100104581A (ko) * | 2009-03-18 | 2010-09-29 | 연세대학교 산학협력단 | 이동 로봇에서 자신의 위치를 추정하기 위한 방법 및 장치 |
-
2011
- 2011-01-28 KR KR1020110008737A patent/KR101243133B1/ko not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4037866B2 (ja) | 2002-07-25 | 2008-01-23 | 富士通株式会社 | 移動体の位置推定装置、位置推定方法および位置推定プログラム |
KR100758389B1 (ko) * | 2005-12-29 | 2007-09-14 | 한국생산기술연구원 | 이동물체 상태군을 적용한 이동물체 위치추정 시스템 및 그추정 방법 |
KR20100104581A (ko) * | 2009-03-18 | 2010-09-29 | 연세대학교 산학협력단 | 이동 로봇에서 자신의 위치를 추정하기 위한 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
KR20120087506A (ko) | 2012-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2495079B1 (en) | Slip detection apparatus and method for a mobile robot | |
KR102483649B1 (ko) | 차량 위치 결정 방법 및 차량 위치 결정 장치 | |
US10133278B2 (en) | Apparatus of controlling movement of mobile robot mounted with wide angle camera and method thereof | |
US10006772B2 (en) | Map production method, mobile robot, and map production system | |
KR101439921B1 (ko) | 비젼 센서 정보와 모션 센서 정보를 융합한 모바일 로봇용 slam 시스템 | |
US9058521B2 (en) | Mobile robot and simultaneous localization and map building method thereof | |
US9851211B2 (en) | Information processing apparatus, computer-readable recording medium, and information processing system | |
EP3159126A1 (en) | Device and method for recognizing location of mobile robot by means of edge-based readjustment | |
CN111164648B (zh) | 移动体的位置推断装置及位置推断方法 | |
KR101115012B1 (ko) | 로봇의 각속도 오차 보정 장치 및 방법 | |
KR101100827B1 (ko) | 도로주행 로봇의 자기 위치 인식방법 | |
CN110015304A (zh) | 用于求取和提供地面特性的方法和*** | |
CN110345936B (zh) | 运动装置的轨迹数据处理方法及其处理*** | |
JP7221549B2 (ja) | 情報処理装置および移動ロボット | |
KR101523848B1 (ko) | 이동 로봇의 슬립 추정 장치 및 그 방법 | |
CN111989631A (zh) | 自身位置推定方法 | |
JP5169273B2 (ja) | 移動ロボットの制御装置および移動ロボットシステム | |
KR101243133B1 (ko) | 이동로봇의 위치추정 장치 및 방법 | |
KR20110097139A (ko) | 이동 로봇의 지도 생성 장치 및 방법 | |
KR20050011053A (ko) | 천장 영상을 이용한 청소용 로봇의 자기위치 추정방법 | |
Pei et al. | Online robot odometry calibration over multiple regions classified by floor colour | |
KR101170873B1 (ko) | 엔코더를 이용한 비젼 트래킹 시스템 및 방법 | |
JP2018004435A (ja) | 移動量算出装置および移動量算出方法 | |
CN115246126A (zh) | 约束条件运算装置、机器人***以及约束条件运算方法 | |
JP2022092236A (ja) | 情報処理装置、情報処理方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
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: 20160303 Year of fee payment: 4 |
|
LAPS | Lapse due to unpaid annual fee |