Archive

Journal of Korea Robotics Society - Vol. 9 , No. 1

[ ARTICLE ]
Journal of Korea Robotics Society - Vol. 9, No. 1, pp. 39-47
Abbreviation: J. of Korea Robotics Society
ISSN: 1975-6291 (Print) 2287-3961 (Online)
Print publication date Feb 2014
Received 29 Nov 2013 Revised 27 Dec 2013 Accepted 6 Feb 2014
DOI: https://doi.org/10.7746/jkros.2014.9.1.039

이륜차동구동형로봇의 복합오차를 고려한 기구학적 파라미터 정밀보정기법
이국태1 ; 정창배2 ; 정다운3 ; 정우진
1기계 공학, 고려 대학교
2기계 공학, 고려 대학교
3기계 공학, 고려 대학교

Accurate Calibration of Kinematic Parameters for Two Wheel Differential Drive Robots by Considering the Coupled Effect of Error Sources
Kooktae Lee1 ; Changbae Jung2 ; Daun Jung3 ; Woojin Chung
1Mechanical Engineering, Korea University (hakuna79@korea.ac.kr)
2Mechanical Engineering, Korea University (roka0102@korea.ac.kr)
3Mechanical Engineering, Korea University (id-taewoong@korea.ac.kr)
This work was supported by the National Research Foundation of Korea(NRF) grant funded by the Korea government(MEST) (2013-029812). This research was also supported in part by the MKE, Korea, under the Human Resources Development Program supervised by the NIPA (NIPA-2013- H1502-13-1001).
Corresponding author: Mechanical Engineering, Korea University, Anam-Ro, Seongbuk-Gu, Seoul, Korea (smartrobot@korea.ac.kr)


© Korea Robotics Society
This is an Open-Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License (http://creativecommons.org/licenses/by-nc/3.0) which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract

Odometry using wheel encoders is one of the fundamental techniques for the pose estimation of wheeled mobile robots. However, odometry has a drawback that the position errors are accumulated when the travel distance increases. Therefore, position errors are required to be reduced using appropriate calibration schemes. The UMBmark method is the one of the widely used calibration schemes for two wheel differential drive robots. In UMBmark method, it is assumed that odometry error sources are independent. However, there is coupled effect of odometry error sources. In this paper, a new calibration scheme by considering the coupled effect of error sources is proposed. We also propose the test track design for the proposed calibration scheme. The numerical simulation and experimental results show that the odometry accuracy can be improved by the proposed calibration scheme.


Keywords: Calibration, Localization, Mobile robots, Odometry, Systematic error.

1. 서 론

휠 엔코더를 이용하는 오도메트리는 이동로봇의 위치인 식에 기본적으로 사용되는 기법 중 하나이다. 이러한 오도 메트리를 사용할 때의 단점은 오차가 주행거리에 비례해 서 누적된다는 점이다. 오도메트리의 오차원인은 크게 두 가지로 구분된다[1-3]. 첫 번째 오차원인은 시스템적 오차이 다. 시스템적 오차는 바퀴 직경 차이, 바퀴 간격 오차 등과 같이 로봇의 기구학적 모델링에 관한 오차이다. 시스템적 오차는 주행하는 동안 변하지 않기 때문에 적절한 보정을 통해 오차를 감소시킬 수 있다. 두 번째 오차원인은 비시 스템적 오차이다. 비시스템적 오차는 로봇과 주행환경간의 상호작용에 의해 나타나는 오차로 불균일한 노면, 미끄러 짐 등이 비시스템적 오차에 포함된다. 따라서 [4]에서와 같 이 오도메트리를 확률적인 관점에서 표현하기도 한다. 위 치추정의 불확실성은 주행거리에 비례하여 증가하기 때문 에 오도메트리와 외장센서를 함께 사용하기도 한다. Borenstein[5]과 Komoriya[5]는 오도메트리와 자이로 센서를 함께 사용하여 위치추정 정밀도를 향상시키는 방법을 제 안하였다.

이전의 연구에서 몇 가지 시스템적 오차 보정기법이 제 안되었다. Abbas[6]는 BCPT(Bi-directional cicular path test)를 제 안하였다. BCPT기법은 시계 및 반시계방향으로 원형경로 를 주행 한 후, 실제로 주행한 경로의 반지름을 비교하여 시스템적 오차를 보정하게 된다. Bostani[7]는 로봇을 직선왕 복주행 결과로부터 오차를 보정하는 기법을 제안하였다. Antonelli[8]는 최소자승법을 기반으로 오도메트리 모델의 4 가지 인자를 산출하는 방법을 제안하였다. 오도메트리 모 델에서 미지수와 측정값 사이의 선형관계를 보임으로써 최소자승법의 사용이 타당함을 보였다. 이후에는 오도메트 리 모델을 3가지 인자로 표현하고 최소자승법을 이용하여 그 값을 구하였다[9]. 여러 연구에서 이륜차동구동형로봇[2, 6-10], 차량형로봇[11], 싱크로구동로봇[12-13]에 대한 보정기법이 제안되었다.

본 논문에서는 이륜차동구동형로봇을 대상으로 하고 있 다. 이륜차동구동형로봇은 구조가 비교적 단순하고 좌우 바퀴가 독립적으로 구동되어 운동성능이 우수하다는 장점 을 가지고 있어 널리 활용되고 있다. 이륜차동구동형로봇 의 오도메트리 보정에 사용되는 일반적인 방법은 [2]에서 제안한 UMBmark기법이다. UMBmark[2]기법은 주행시험 후 최종 위치오차를 측정하여 오차를 보정하기 때문에 비교 적 쉽게 사용할 수 있는 방법이다. 본 논문에서는 기존 UMBmark 기법을 확장하여 새로운 보정기법을 제안하고 자 한다.

본 논문의 첫 번째 목표는 기존 기법의 한계를 극복하 고 새로운 보정기법을 제안하는 것이다. 기존 기법[2]에서 는 바퀴 직경 오차와 바퀴 간격 오차가 완전히 독립적이 라는 가정을 전제로 하고 있다. 그러나 실제로는 바퀴 직 경 오차와 바퀴 간격 오차가 완전히 독립적이지 않다. 따 라서 본 논문에서는 바퀴 직경 오차와 바퀴 간격 오차의 복합적 영향을 고려한 보정기법을 제안하고자 한다.

두 번째 목표는 새로운 보정기법에 적합한 주행시험경 로를 제안하는 것이다. 적절한 주행시험경로를 사용함으로 써 보정성능을 크게 향상시킬 수 있음을 경험적으로 확인 하였다. 본문에 나타난 시뮬레이션 결과는 적절한 주행시 험경로를 선택함으로써 보정성능이 향상될 수 있음을 보 인다.

본 논문은 다음과 같이 구성된다. 2장에서는 [2]에서 제 안한 기존 기법을 분석하고, 새로운 보정기법을 제안한다. 또한 주행시험경로 설계 시 요구사항을 다룬다. 3장에서는 시뮬레이션을 통해 제안하는 기법의 장점을 확인하고 적 절한 주행시험경로를 설계한다. 4장에서는 실험을 통해 제 안하는 기법을 사용함으로써 오도메트리 보정성능이 향상 될 수 있음을 보인다.


2. 기구학적 파라미터 정밀보정기법
2.1. 기존 기법에 대한 분석

Fig. 1은 UMBmark[2]기법의 실험방법을 나타낸다. UMBmark 기법에서는 바퀴 직경 오차와 바퀴 간격 오차에 의해 시 스템적 오차가 발생한다고 가정한다. 또한 두 가지 오차원 인은 완전히 독립적이라고 가정한다. 바퀴 직경 오차와 바 퀴 간격 오차에 대한 기구학적 파라미터는 4m × 4m 정사 각형 경로를 시계 및 반시계방향으로 주행한 후 최종 위 치오차로부터 구할 수 있다.


Fig. 1 

The calibration experiments in UMBmark [2]. The robot is driven along the square path in CW and CCW direction by the open-loop motion control.



Fig. 2는 기구학적 모델링 오차의 영향을 나타낸다. A유 형 오차는 Fig. 2(a)에 나타낸 것과 같이 제자리 회전 시 방 향각오차에 영향을 미친다. A유형 오차는 바퀴 간격에 대 한 모델링 오차에서 기인한다. Fig. 2(b)는 B유형 오차에 의 해 로봇이 직선주행구간에서 직선이 아닌 곡선경로를 주 행하는 것을 보여준다. B유형 오차는 바퀴 직경에 대한 모 델링 오차에 의해 발생한다.


Fig. 2 

End position error caused by type A and type B error; (a) Type A error, (b) Type B error.



주행시험 후의 로봇의 최종 위치는 비선형식에 의해 결 정된다. 또한 실제 로봇이 기구학적 오차를 포함할 때, 바 퀴 간격 오차와 바퀴 직경 오차가 동시에 존재하기 때문 에 오차 원인간의 복합적 영향이 나타날 수 있다. 따라서 본 연구에서는 동시에 존재하는 A 유형 오차와 B 유형 오 차에 의한 복합적 영향을 고려하여 새로운 보정기법을 제 안하고자 한다.

2.2. 오차원인의 복합적 영향을 고려한 새로운 보정기법

이륜차동구동형로봇의 운동모델은 Fig. 3과 같다. [3]에서 서술한 것과 같이 이륜차동구동형로봇의 위치 및 방향각 은 다음과 같은 식을 이용하여 계산할 수 있다.


Fig. 3 

The kinematic model of a two wheel differential drive robot.



xk=xk-1+Δdcosθk-1+Δθ/2yk=yk-1+Δdsinθk-1+Δθ/2θk=θk-1+Δθ(1) 

Δd=ΔdR+ΔdL2(2) 

Δθ=ΔdR+ΔdLb(3) 

ΔdRL=πDRLNRLReRL(4) 

xk: Position of the robot in the x-direction at time k.

yk: Position of the robot in the y-direction at time k.

θk: Orientation of the robot at time k.

Δd: Incremental displacement of the robot.

Δθ: Incremental orientation of the robot.

ΔdR(L): Incremental displacement of the right(left) wheel.

DR(L): Nominal diameter of the right(left) wheel.

NR(L): The number of encoder pulses of the right(left) wheel.

ReR(L): Encoder resolution of the right(left) wheel.

바퀴 직경 오차와 바퀴 간격 오차의 복합적 영향을 확 인하기 위하여 바퀴 직경 오차와 바퀴 간격 오차가 동시 에 나타난다고 가정하였다. [Fig 4]는 반시계방향 주행 시 직선주행과 제자리회전 후의 방향각오차를 나타낸다. 로봇 의 초기 방향각은 0° 이다. 주행 후의 방향각은 바퀴 직경 오차에 의한 오차뿐만 아니라 바퀴 간격 오차에 의한 오 차를 포함한다. [2]에서는 바퀴 직경 오차와 바퀴 간격 오 차의 복합적 영향을 고려하지 않았다.


Fig. 4 

Orientation errors due to wheel diameter errors and wheelbase errors; (a) Orientation error after straight motion, (b) Orientation error after 90° turning motion.



[Fig 4(a)]에서와 같이 우측 바퀴 직경이 좌측 바퀴 직경 보다 εd만큼 클 때, 직선주행 이후 β만큼의 방향각오차가 발생한다. 직선주행 이후 방향각오차 β는 다음과 같이 계 산될 수 있다.

β=i=1mΔdR+ϵd-ΔdLb=i=1mϵdb=ϵdmb(5) 

m은 직선주행을 하는 동안의 엔코더펄스수를 나타낸다. 좌우 바퀴의 이동거리 증분 ΔdR과 ΔdL은 식 (4)를 이용하 여 구할 수 있다. [Fig 4(b)]는 제자리회전 이전의 로봇의 위 치 및 방향각(그림에서 회색)과 제자리회전 이후의 로봇의 위치 및 방향각(그림에서 흑색)을 나타낸다. 제자리회전 이 후의 방향각은 다음과 같이 계산될 수 있다.

θactual=i=1nΔdR+ϵd--ΔdLb+ϵb(6) 

n은 제자리회전을 하는 동안의 엔코더펄스수를 나타낸 다. 식 (6)으로부터 제자리회전 이후의 방향각오차는 바퀴 직경 오차 εd와 바퀴 간격 오차 εb의 영향을 동시에 받는 것 을 확인할 수 있다. 식 (6)으로부터 다음의 식이 유도된다.

θactual=i=1nΔdR--ΔdLb+ϵb+i=1nϵdb=90°+α(7) 

따라서 제자리회전 후의 방향각오차 α는 다음과 같이 재정의된다.

α=αϵb+αϵd(8) 

αεb 는 바퀴 간격 오차에 의해 발생한다. 식 (8)의 αεd를 계산하기 위하여 이동거리 L과 회전각도 θnominal는 다음 과 같이 유도된다.

L=i=1mΔdR+ϵd+ΔdL2=Δd+ϵd2mθnominal=i=1nΔdR+ΔdLb=-2Δdnb(9) 

따라서 αεd 는 다음과 같이 계산된다.

αϵd=-π4bβL-bβ2(10) 

식 (10)의 결과를 이용하여 보정식을 다음과 같이 재기 술할 수 있다.

αx=xCW+xCCW-4L+πbxCW-xCCW-16L2-2bxCW-xCCW(11) 

αy=yCW-yCCW-4L+πbyCW+yCCW-16L2-2byCW+yCCW(12) 

식 (11-12)의 첫 번째 항은 기존 기법[2]의 식과 동일하 다. 두 번째 항은 본 논문에서 새로 추가되었다.

2.3. 주행시험경로

오도메트리 보정에서 중요한 요소 중 하나는 주행시험 경로이다. 본 연구에서도 기존 기법[2]과 마찬가지로 정사 각형 형태의 경로를 사용하였다. 그러나 기존 기법[2]에서 는 주행시험경로의 크기에 대해서는 자세한 설명 없이 한 변의 길이를 4m로 정하였다. 따라서 본 논문에서는 주행 시험경로의 크기로서 적절한 값을 확인하고자 한다.

주행시험경로의 크기는 바퀴 직경, 기구학적 모델링 에 러, 보정기법 등을 고려하여 신중하게 결정되어야 한다. 주행시험경로가 너무 클 경우, 보정실험에 너무 큰 공간이 요구된다. 또한 식 (11-12)에 나타낸 방향각오차 α의 값이 커지게 된다. 이는 삼각함수에 대한 근사식 sinγ =γ, cosγ = 1에 의한 근사오차가 증가함을 의미한다.

xCW,approximated=-2Lα+βyCW,approximated=-2Lα+β(13) 

xCW,actual=L+Lsinα-Lcos 2α-Lsin 3α+Lcosβ2+Lsin3β2-Lcos5β2-Lsin7β2yCW,actual=-Lcosα-Lsin 2α+Lcos 3α+Lsinβ2-Lcos3β2-Lsin5β2+Lcos7β2(14) 

시계방향 주행시의 최종 위치오차 xCW, yCW는 직선주행 후의 오차와 제자리회전 후의 오차를 더하여 구할 수 있 다. 식 (13)과 같이 근사식을 사용하는 경우, 최종 위치오 차 xCWyCW는 시스템적 오차에 무관하게 같은 값을 갖는 다. 그러나 식 (14)에 나타낸 근사식을 사용하지 않은 경우 에는 xCW, yCW의 값이 항상 동일한 것은 아니다. 따라서 식 (13-14)로부터 방향각오차 α와 β가 증가함에 따라 근사오 차가 증가하는 것을 확인할 수 있다.

반면, 너무 작은 주행시험경로를 사용할 경우, 주행시험 후 얻는 최종 위치 및 방향각오차 또한 작아지게 된다. 이 는 보정결과가 비시스템적 오차에 민감하게 영향을 받게 됨을 의미한다.

α=avgxCW±ϵxCW+xCCW±ϵxCCW-4L,yCW±ϵyCW-yCCW±ϵyCCW-4Lβ=avgxCW±ϵxCW-xCCW±ϵxCCW-4L,yCW±ϵyCW+yCCW±ϵyCCW-4L(15) 

식 (15)는 최종 위치오차 xCW, yCW, xCCW, yCCW와 비시스템적 오차 εx, εy로부터 방향각오차 α, β를 구하는 과정을 나타낸 다. 비시스템적 오차의 영향을 줄이기 위하여 비교적 평탄 한 환경에서 실험을 수행한다. 또한 주행시험을 반복적으 로 수행하고, 최종 위치오차의 평균값을 이용하여 오도메 트리를 보정하게 된다. 그럼에도 불구하고 너무 작은 주행 시험경로를 사용할 경우, 비시스템적 오차의 상대적인 크 기가 커지기 때문에 비시스템적 오차에 민감하게 된다. 본 연구에서는 비시스템적 오차가 오도메트리 보정 정밀도에 미치는 영향을 분석하기 위하여 사전예비실험을 통해 최 종 위치오차의 표준편차를 확인하고 시뮬레이션에 반영하 였다.


3. 시뮬레이션 결과

본 논문에서 제안하는 기법의 장점을 확인하고, 적절한 주행시험경로의 크기를 결정하기 위하여 시뮬레이션을 수 행하였다.

시뮬레이션에서 시스템적 오차 조건은 기구학적 파라 미터 Eb, Ed로 주어지며, 식 (16)과 같이 정의된다[2].

Eb=bactualbnominal,Ed=DRDL(16) 

이때, b는 바퀴 간격, DL, DR은 각각 좌우 바퀴 직경을 나 타낸다.

시뮬레이션 상의 로봇은 상용 이륜차동구동형로봇인 Tetra DS-II[14]를 참고하였다. 로봇의 주요 제원은 바퀴 직경 0.150m, 바퀴간 간격 0.385m, 바퀴 너비 0.030m, 엔코더 해 상도 200,000pulses/rev이다. 이 로봇의 경우, 바퀴가 1회전 할 때 이동하는 거리는 0.471m이다. 따라서 로봇의 바퀴가 충분히 회전할 수 있는 0.5m 또는 1m 단위로 주행시험경 로의 크기를 변화시켰다.

첫 번째 시뮬레이션에서는 기존 기법과 비교하여 제안 하는 기법의 보정성능 향상을 확인한다. 두 번째 시뮬레이 션에서는 제안하는 기법을 사용할 때에 적합한 주행시험 경로의 크기를 시뮬레이션을 통해 확인한다.

3.1. 복합오차 반영에 의한 보정성능 향상

첫 번째 시뮬레이션에서는 기존 기법 대비 제안하는 기 법의 보정성능 향상을 확인한다. 첫 번째 시뮬레이션은 시 스템적 오차의 영향에 초점을 두고 있기 때문에 비시스템 적 오차의 영향은 시뮬레이션에서 고려하지 않았다.

시뮬레이션 절차는 다음과 같다. 주행시험 시뮬레이션을 통해 시뮬레이션 조건에서의 최종 위치오차를 계산하고, 이로부터 기구학적 파라미터를 산출하게 된다. 기구학적 파라미터는 기존 기법과 제안하는 기법을 이용하여 각각 산출한다.

Fig. 5는 주행시뮬레이션을 통해 구한 기구학적 파라미터 의 오차를 나타낸다. 시뮬레이션에서 가정한 로봇의 기구 학적 파라미터는 Eb = 0.980, Ed = 0.990였다. 주행시험경로는 정사각형 경로를 이용하였으며, 한 변의 길이를 0.5m에서 10m까지 0.5m씩 증가시키며 시뮬레이션을 반복하였다. 시 뮬레이션 결과 바퀴 직경에 대한 기구학적 파라미터 Ed의 경우, 기존 기법과 제안하는 기법의 결과가 유사하게 나타 났다. 그러나 바퀴 간격에 대한 기구학적 파라미터 Eb의 경우, 기존 기법에 비해 제안하는 기법을 사용하였을 때 시뮬레이션 조건에 보다 가까운 값을 산출할 수 있음을 보였다. 이는 제안하는 기법에서는 식(11-12)에 나타낸 것 과 같이 바퀴 간격 오차와 바퀴 직경 오차의 복합적 영향 을 고려하였기 때문이다.


Fig. 5 

The resultant kinematic parameter errors after calibration simulation.



또한 Fig. 5에서 주행시험경로의 크기가 증가함에 따라 주행시험 후 산출한 기구학적 파라미터의 오차가 증가하 는 것을 확인 할 수 있다. 이는 주행시험경로의 크기가 증 가함에 따라 근사오차가 증가하기 때문이다. 따라서 효과 적인 보정이 가능한 주행시험경로의 크기를 확인할 필요 가 있다.

3.2. 주행시험경로 설계

두 번째 시뮬레이션에서는 제안하는 기법을 사용하여 오도메트리를 보정할 때 보정성능을 충분히 발휘 할 수 있는 주행시험경로의 크기를 확인하고자 한다. 실제 주행 시험에는 비시스템적 오차의 영향이 존재하기 때문에 시 뮬레이션에 앞서 로봇의 비시스템적 오차를 측정하였다.

Table 1은 서로 다른 크기의 주행시험경로에서 확인한 비시스템적 오차의 분포를 나타낸다. 비시스템적 오차 측 정을 위하여 정사각형 경로의 한 변의 길이를 1m부터 4m 까지 변화시키면서 로봇을 주행시켰다. 각 주행시혐경로 별로 30-40회 반복주행을 통해 위치오차의 표준편차를 확 인하였다. 비시스템적 오차 측정에 사용된 로봇은 Tetra DS-II[14]였다. 오차측정에 사용된 센서는 상용 위치인식 센서인 STARGAZER[15]로 센서의 측정오차는 x = 0.17mm, y = 0.24mm, and θ = 0.37°와 같다.

Table 1 

Nonsystematic errors for the different track size


Track size Standard deviation (m)

1m × 1m 0.057
2m × 2m 0.122
3m × 3m 0.229
4m × 4m 0.293

Table 1로부터 비시스템적 오차의 표준편차가 주행시험 경로의 크기에 비례하여 증가하는 것을 확인할 수 있다. 다음으로 보정정밀도를 분석하기 위해 기구학적 모델링 오차가 있을 때, 최종 위치오차를 비교하였다.

Fig. 6은 정사각형 경로의 한 변의 길이를 1m에서 4m까 지 변화시켰을 때, 최종 위치오차와 비시스템적 오차의 표 준편차를 나타낸다. 시스템적 오차 파라미터는 Eb = 1.030, Ed = 1.020이었으며, 주행방향은 반시계방향이다. 비시스템 적 오차는 Table 1과 같다. 주행시험경로의 크기가 증가함 에 따라 최종 위치오차와 비시스템적 오차 모두 증가하는 것을 확인 할 수 있다.


Fig. 6 

Comparison of the final position errors and the standard deviation of the nonsystematic errors.



Fig. 7은 전체 위치오차 대비 시스템적 오차에 의한 위치 오차의 상대적인 크기를 나타낸다. x축은 정사각형 경로의 한 변의 길이를 나타낸다. 시스템적 오차 파라미터는 Fig. 6과 동일하게 Eb = 1.030, Ed = 1.020이였다. 비시스템적 오차 역시 Table 1을 따른다. Fig. 7에서는 주행시험경로의 크기가 증가함에 따라 전체 위치오차 대비 시스템적 오차에 의한 위치오차의 상대적인 크기가 증가함을 확인할 수 있다.


Fig. 7 

The relative size of position errors caused by systematic errors compared with total position errors.



Fig. 6-7로부터 너무 작은 크기의 주행시험경로를 사용할 경우, 주행시험 후 나타나는 최종 위치오차에 비시스템적 오차의 영향이 커지기 때문에 충분한 보정정밀도를 보장 할 수 없게 되는 것을 알 수 있다. 반면, 너무 큰 크기의 주행시험경로를 사용할 경우, 비시스템적 오차와 근사오차 가 증가하기 때문에 보정정밀도가 감소하게 된다. 따라서 비시스템적 오차와 근사오차의 영향을 고려하였을 때, 적 합한 주행시험경로의 크기를 확인하기 위하여 다음의 시 뮬레이션을 수행하였다.

Fig. 8은 비시스템적 오차를 포함 및 미포함한 주행시험 후의 기구학적 파라미터 오차이다. Fig. 8의 시스템적 오차 파라미터 조건은 Eb = 1.030, Ed = 1.020이다. Fig. 8에서 실선 은 비시스템적 오차를 포함한 경우이고, 점선은 비시스템 적 오차를 미포함한 경우를 나타낸다. 먼저 점선으로 나타 낸 비시스템적 오차를 미포함한 경우의 기구학적 파라미 터 오차를 보면 주행시험경로의 크기가 증가함에 따라 오 차가 증가하는 것을 확인할 수 있다. 이는 주행시험경로의 크기가 증가함에 따라 근사오차가 증가하기 때문에다. 다 음으로 실선으로 나타낸 비시스템적 오차를 포함한 경우 의 기구학적 파라미터 오차를 보면 1m × 1m 크기의 주행 시험경로에서 기구학적 파라미터의 오차가 증가한 것을 확인 할 수 있다. 이는 작은 크기의 주행시험경로에서는 비시스템적 오차의 영향이 커지기 때문이다.


Fig. 8 

The resultant kinematic parameter errors after calibration test with and without nonsystematic errors.



2m × 2m 크기의 주행시험경로의 경우, 1m × 1m 크기의 주행시험경로에 비해 비시스템적 오차에 민감하게 영향을 받지 않는다. 또한 3m × 3m나 4m × 4m 크기의 주행시험경 로에 비해 근사오차가 크게 나타나지 않는 것을 확인할 수 있다. 따라서 2m × 2m 크기의 주행시험경로가 적절한 주행시험경로가 될 수 있다.

[Fig 9]는 각 주행시험경로를 이용하여 오도메트리를 보 정한 후 동일한 4m × 4m 크기의 정사각형 경로를 주행시 켰을 경우의 최종 위치오차를 나타낸다. [Fig 9]에서 2m × 2m 크기의 주행시험경로를 사용한 경우의 보정 후 최종 위치오차가 0.035m로 다른 크기의 주행시험경로를 사용하 였을 때와 비교하여 가장 작은 것을 확인할 수 있다. 따라 서 근사오차와 비시스템적 오차를 고려하였을 때, 2m × 2m 크기의 주행시험경로가 가장 적합한 주행시험경로임을 알 수 있다.


Fig. 9 

Comparison of the final position errors for same 4m × 4m square path. The robot is calibrated using different track sizes that are represented in x-axis.




4. 실험 결과

실험에는 상용 이륜차동구동형로봇인 Tetra DS-II[14]를 이용하였다. 로봇의 주요 제원은 바퀴 직경 0.150m, 바퀴간 간격 0.385m, 바퀴 너비 0.030m, 엔코더 해상도 200,000 pulses/rev이다. 최종 위치오차는 상용 위치인식 센서인 STARGAZER[15]를 이용하여 측정하였다. 측정오차는 x = 0.17mm, y = 0.24mm, and θ = 0.37°와 같다.

기존 기법과 제안하는 기법의 보정성능비교를 위하여 우선 보정 전 상태의 로봇을 이용하여 주행시험을 수행하 고 기구학적 파라미터를 산출하였다. Fig. 10과 Table 2는 보정 전 로봇의 최종 위치오차로 각 주행경로와 주행방향 별로 5회 반복 주행한 결과이다. Table 3은 주행시험을 통 해 산출한 기구학적 파라미터를 나타낸다.


Fig. 10 

The final position errors before the calibration.



Table 2 

The average final pose error before calibration


Track size direction x y θ

2m × 2m CW 0.34m 0.21m -16.89°
CCW -0.41m 0.65m -30.28°
4m × 4m CW 1.67m 0.69m -41.91°
CCW -0.99m 2.66m -53.81°

Table 3 

Resultant kinematic parameters


Calibration method Track size Eb Ed

UMBmark 4m × 4m 1.0262 0.9821
Proposed method 2m × 2m 1.0107 0.9809

Fig. 11과 Table 4는 각 보정기법을 이용하여 오도메트리 를 보정 한 후 최종 위치오차를 나타낸다. 보정 후 로봇은 동일한 4m × 4m 정사각형 경로를 주행하였다.


Fig. 11 

The final position errors after the calibration.



Table 4 

The average final pose error after calibration


Calibration direction x y θ

Uncalibrated CW 1.67m 0.69m -41.91°
CCW -0.99m 2.66m -53.81°
UMBmark CW 0.63m 0.41m -16.32°
CCW -0.20m 0.24m -6.17°
Proposed method CW 0.19m 0.12m -4.68°
CCW -0.25m 0.26m -7.25°

Table 5에는 오도메트리 보정 결과로서 동일한 4m × 4m 정사각형 경로를 주행하였을 때의 보정 전후 위치오차를 나타낸다. 보정 전 로봇의 평균 위치오차는 2.84m로 나타 났다. 기존 기법을 이용하여 오도메트리를 보정한 경우에 는 위치오차가 0.53m로 보정 전에 비해 4.37배 오도메트리 정밀도가 향상되었다. 제안하는 기법을 이용하여 오도메트 리를 보정한 경우에는 위치오차가 0.30m로 보정 전에 비 해 7.87배, 기존 기법에 비해 1.80배 오도메트리 정밀도가 향상되었다. 이로부터 제안하는 기법을 이용함으로써 오도 메트리 정밀도 향상이 가능하며, 특히 기존 기법에 비해서 도 보정성능이 우수함을 확인 할 수 있다.

Table 5 

Results of odometry calibration


Average position error Improvement

Before calibration 2.32m -
UMBmark 0.53m 4.37 fold
Proposed method 0.30m 7.87 fold
(1.80 fold)


5. 결 론

본 논문에서는 이륜차동구동형로봇에 적용 가능한 새로 운 오도메트리 보정기법을 제안하였다. 바퀴 간격 오차와 바퀴 직경 오차가 독립적이라고 가정한 기존 기법과 다르 게 바퀴 간격 오차와 바퀴 직경 오차의 복합적 오차를 고 려한 새로운 보정식을 유도하였다. 또한 비시스템적 오차 와 근사오차의 영향을 고려하여 효과적인 주행시험경로를 설계하였다. 시뮬레이션과 실험 결과를 통해 제안된 기법 을 이용함으로써 오도메트리 정밀도가 향상되었으며, 기존 기법에 비해 보정성능이 우수함을 입증하였다.


References
1. Borenstein, J., Everett, H., Feng, L., “Where am I? Sensors and Methods for Mobile Robot Positioning”, (1996).
2. Borenstein, J., Feng, L., “Measurement and correction of systematic odometry errors in mobile robots”, IEEE Transactions on Robotics and Automation, 1996, Dec, 12, p869-880.
3. Siegwart, R., Nourbakhsh, I.R., Scaramuzza, D., Introduction to autonomous mobile robots, (2011), 2nd ed, The MIT Press.
4. Thrun, S., Burgard, W., Fox, D., Probabilistic robotics, (2005), The MIT press.
5. Komoriya, K., Oyama, E., “Position estimation of a mobile robot using optical fiber gyroscope (OFG)”, (1994), in IEEE/RSJ International Conference on Intelligent Robots and Systems, Munich, Germany, p143-149.
6. Abbas, T., Arif,, M., Ahmed, W., Measurement and correction of systematic odometry errors caused by kinematics imperfections in mobile robots, Correction Review, (2006), in SICEICASE International Joint Conference, Korea, p2073-2078.
7. Bostani, A., Vakili, A., Denidni, T.A., “A novel method to measure and correct the odometry errors in mobile robots”, (2008), in IEEE Canadian Conference on Electrical and Computer Engineering, Niagara Falls, Canada, p000897-000900.
8. Antonelli, G., Chiaverini, S., Fusco, G., “A calibration method for odometry of mobile robots based on the leastsquares technique: theory and experimental validation”, IEEE Transactions on Robotics, (2005), 21, p994-1004.
9. Antonelli, G., Chiaverini, S., Linear estimation of the physical odometric parameters for differential-drive mobile robots, Autonomous Robots, (2007), 23, p59-68.
10. Ivanjko, E., Komsic, I., Petrovic, I., “Simple off-line odometry calibration of differential drive mobile robots”, (2007), in Proceedings of 16th Int. Workshop on Robotics in Alpe-Adria-Danube Region–RAAD.
11. Lee, K., Chung, W., Yoo, K., “Kinematic parameter calibration of a car-like mobile robot to improve odometry accuracy”, Mechatronics, (2010), 20, p582-595.
12. Martinelli, A., “The odometry error of a mobile robot with a synchronous drive system”, IEEE Transactions on Robotics and Automation, (2002), 18, p399-405.
13. Martinelli, A., Tomatis, N., Siegwart, R., “Simultaneous localization and odometry self calibration for mobile robot”, Autonomous Robots, (2007), 22, p75-85.
14. Dongbu robot Co. Ltd, Available: http://www.dongburobot.com.
15. HAGISONIC. Co. Ltd, Available: http://www.hagisonic.com.