![Journal of Korea Robotics Society](/images/basic/pubreader_back.gif)
삼륜형 전방향 이동로봇을 위한 경로추종 및 방위제어
†Corresponding Author : Mechanical Engineering, Korea University, Anam-dong, Seongbuk-gu, Seoul, Korea jbsong@korea.ac.kr
© Korea Robotics Society All rights reserved
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
Conventional path tracking methods designed for two-wheeled differential drive robots are not suitable for omni-directional robots. In this study, we present a controller which can accomplish more accurate path tracking and orientation correction by exploiting the unconstrained movement capability of omni-directional robots. The proposed controller is proven to be stable using a Lyapunov stability criterion. Various experiments in real environments show that performance of path tracking and orientation correction has improved in the proposed controller.
Keywords:
Omni-directional robots, path tracking, orientation control1. 서 론
자세의 변화 없이 모든 방향으로 이동이 가능한 전방향(omni-directional) 이동로봇은 여행안내로봇, 청소로봇, 교육로봇 등에 폭넓게 이용되고 있다.[1-3] 이륜형 차동구동 방식의 이동로봇에는 주로 Kanayama 제어기를 이용하여 경로추종을 수행하였다.[4] 또한, Kanayama 제어기와 퍼지이론을 사용한 사륜형 이동로봇의 경로추종 제어기는 정확한 경로추종을 수행하였다.[5] 이러한 제어기를 사용하는 이동로봇에 센서 정보를 함께 활용함으로써 산업현장에서도 이동로봇은 널리 사용되고 있다.[6,7] 이러한 방식은 안정적인 경로추종을 수행할 수 있다는 장점이 있지만, 2개의 구동모터에 기반한 2자유도 입력을 이용하므로 로봇의 위치와 방위가 독립적으로 제어되지 못한다. 그러나 삼륜형 전방향 이동로봇은 3개의 모터에 기반한 3자유도 입력이 가능하여 위치와 방위를 독립적으로 제어하는 것이 가능하다. 그러므로 Kanayama 제어기를 그대로 삼륜형 전방향 플랫폼에 적용하면 위치와 방위를 독립적으로 제어하지 못하므로, 전방향 이동로봇의 장점을 살리지 못하게 된다. 위치와 방위의 독립적인 제어를 위해 경로를 추종하는 PID 제어기가 제안되었다.[8] 그러나 이 방법은 직선경로와 사각경로 등과 같은 비교적 제한된 범위의 경로에 대해서만 성능을 평가하였다.
본 연구에서는 이러한 점들을 보완하기 위해 보다 복잡한 경로에서 경로추종과 방위제어를 안정적으로 수행하는 삼륜형 전방향 이동로봇을 위한 제어기를 제안한다. 제안된 제어기의 안정성은 리아푸노프 지수안정 이론으로 증명한다. 이동로봇은 실제 환경에서 주행을 할 경우 곡선구간에서 지면과 바퀴의 마찰, 위치추정의 오차 등과 같은 현상에 의해 정해진 경로를 이탈하거나 원하는 방위에서 조금씩 벗어나는 현상이 발생한다. 하지만, 리아푸노프 지수안정(Lyapunov exponential stability)를 만족하도록 제안된 제어 기는 이러한 오차를 신속히 최소화하여 경로추종의 정확성을 보장할 수 있다.
본 논문은 다음과 같이 구성되었다. 2장에서는 기존의 이륜형 이동로봇의 경로추종을 위한 Kanayama 제어기를 소개한다. 3장에서는 삼륜형 전방향 이동로봇의 기구학을 유도하고, 리아푸노프 안정성 이론에 기반하여 안정적인 경로추종과 방위보정을 가능하게 하는 제어기를 제안한다. 4장에서는 실제 환경에서 제어기의 성능을 살펴보고, 5장에서 결론을 도출한다.
2. 이륜형 이동로봇의 경로추종
본 장에서는 이륜형 차동구동 방식의 이동로봇의 경로추종에 사용되는 제어기에 대하여 살펴본다. Fig. 1에서 보듯이, 전역(global) 좌표계 (X, Y) 및 로봇의 중심에 고정된 로봇좌표계 (xrob, yrob)를 고려하자. 이 때, 로봇의 전면과 일치하는 xrob 축은 X축으로부터 반시계 방향으로 θ의 각도를 갖는다. 전역좌표계에 대한 로봇의 위치/방위는 p=[x, y, θ]T에 의해서 표현된다.
전역좌표계에 대한 로봇의 속도
(1) |
Fig. 1과 같이 로봇의 경로 상에서 로봇의 목표점에 해당하는 기준(reference) 위치/방위 pr과 로봇의 현재(current) 위치/방위 pc 간의 오차 pe는
(2) |
와 같으며, 경로추종의 목표는 pc가 pr을 잘 추종하여 pe = 0이 되도록 하는 것이다. 식 (2)를 미분하면 아래의 식을 얻을 수 있는데, 이의 유도는 [4]를 참고하면 된다.
(3) |
여기서
(4) |
여기서 Kx, Ky, Kθ는 양의 상수 파라미터이다. 즉, 기준속도와 위치/방위 오차가 주어지면, 식 (4)의 제어기로부터 이 오차를 최소화하기 위한 로봇의 선속도 vc와 각속도 ωc가 계산되며, 따라서 두 바퀴의 회전속도를 산출할 수 있다.
이러한 제어기를 사용하여 이륜형 이동로봇은 생성된 경로를 안정적으로 추종할 수 있다. 그러나 전방향 이동로봇에 식 (4)의 제어기를 적용하면 경로추종의 정확도가 저하되며, 이동로봇이 향하는 방향과 로봇의 이동 방향이 항상 동일한 채로 경로추종을 하게 된다. 이러한 결과로 로봇이 향하는 방향에 상관 없이 주행이 가능한 전방향 이동로봇의 장점을 살릴 수 없게 된다. 따라서 전방향 이동로봇에는 이륜형 이동로봇에 사용되는 제어기와는 다른 제어기를 사용하는 것이 바람직하다.
3. 전방향 이동로봇의 경로추종 및 방향제어
이 장에서는 전방향 이동로봇이 동시에 경로추종 및 방향제어를 수행할 수 있게 하는 제어기를 제안한다. 본 연구에서는 삼륜형 전방향 이동로봇에 대하여 제어기를 유도하지만, 동일한 방식으로 사륜형 등 다른 방식의 전방향 이동로봇에도 적용이 가능하다.
3.1. 전방향 이동로봇의 기구학
Fig. 2는 세 바퀴를 갖는 전방향 이동로봇의 좌표계 및 속도를 보여준다. 여기서 R은 로봇 중심으로부터 바퀴 중 심까지의 거리, r은 바퀴의 반경, v 및 ω는 로봇 중심의 선속도 및 몸체의 각속도, vi 및 ωi는 바퀴 i의 선속도 및 각속도, αi와 φ는 xrob 축에 기준한 바퀴 i 및 선속도 v의 각도를 각각 나타낸다. 또한, θ는 전역좌표계의 X축을 기준으로 xrob 축이 반시계 방향으로 회전한 각이다.
우선 바퀴 i의 선속도는 다음과 같이 구해진다.[9,10]
(5) |
이 때, 첫째 항은 로봇 선속도와 관련된 항이고, 둘째 항은 로봇의 각속도에 의한 항이다. 식 (5)는 로봇 선속도 v의 로봇좌표계 상의 x축 및 y축 성분인 vx 및 vy로 다음과 같이 나타낼 수 있다.
(6) |
일반적으로 삼륜형 전방향 로봇의 x축은 대칭되는 두 바퀴의 중간점을 지나도록 설정하므로, Fig. 2에서 α1 = 30°, α2 = 150°, α3 = -90°가 되어, 식 (6)는 다음과 같이 나타낼 수 있다.
(7) |
한편, 식 (1)과 같이 전역좌표계와 로봇좌표계 간의 속도 관계는 자코비안 행렬 J로 다음과 같이 나타낼 수 있다.
(8) |
식 (7)과 (8)을 합하여 다음과 같이 전역좌표계 상에서 원하는 선속도(vX, vY)와 각속도 ω를 얻을 수 있는 각 바퀴들의 각속도를 구할 수 있다.
(9) |
3.2. 경로추종과 방위보정을 위한 제어기
이 절에서는 전방향 이동로봇이 원하는 방향을 향하면서 생성된 경로를 추종할 수 있도록 하는 제어기를 제안한다. 이 제어기를 사용하면 이륜형 이동로봇과는 달리 전방향 이동로봇의 3자유도 움직임이 가능하다.
경로를 올바르게 추종하기 위해서는 수립한 제어기를 이용하여 식 (2)에서 언급한 오차 pe가 리아푸노프 지수안정을 만족하여야 한다. Taylor 전개의 근사를 사용하면
(10) |
전방향 이동로봇은 위치성분과 방위성분 간의 구속조건이 없으므로, 위치오차는 위치성분만으로, 방위오차는 방위성분만으로 보정할 수 있다. 따라서 식 (10)을 다음과 같이 단순화할 수 있다.
(11) |
본 연구에서는 다음과 같은 제어기를 제안한다.
(12) |
여기서
식 (12)의 제어기의 안정성을 리아푸노프 안정도 이론을 이용해 검증한다. 리아푸노프 안정도 이론은 비선형 문제의 안정성을 다루는 대표적인 이론이다. 먼저 식 (2)를 시간에 대하여 미분하고, (12)를 대입하면 다음과 같다.
(13) |
식 (13)은 식 (11)의 형식을 만족하는 선형시스템이다. 위의 구조는 Routh-Hurwitz Criterion을 만족한다.[11]
제안된 제어기의 안정성을 판별하기 위하여 리아푸노프함수를 설정하고, 이의 지수안정 여부를 확인하여야 하는데, 이를 위한 조건은 다음과 같다.[12] 첫째, pe = 0일 때, 설정한 함수값은 0이다. 둘째, pe ≠ 0일 때, 해당 함수값은 항상 양수여야 한다. 셋째, 해당 함수를 시간으로 미분하면 함수값은 항상 원래 함수값의 음의 상수배보다 작거나 같아야 한다. 본 연구에서는 리아푸노프 지수함수를 다음과 같이 설정하였다.
(14) |
식 (14)는 pe = 0이면 V = 0이고, pe ≠ 0이면 항상 V > 0를 만족한다. 마지막 조건을 확인하기 위해 식 (14)를 시간에 대해 미분하면 다음과 같다.
위에서 사용된 M은 (15)와 같다.
(15) |
위의 과정을 통해 식 (14)는 리아푸노프 지수 안정성 조건을 모두 만족하는 함수임을 확인하였다. 따라서 본 연구에서 제안한 제어기는 이론적으로 안정적이며, 원하는 방향을 바라보며 정확하게 경로를 추종할 수 있게 한다. 이에 대한 제어식의 구조도는 Fig. 3과 같이 표현된다.
4. 실 험
본 연구에서는 실제 환경에서의 실험을 통해 제안된 제어기가 안정적으로 경로추종과 방향 보정을 수행하는것을 검증하였다. Fig. 4(a)의 환경 1은 5m x 10m, Fig. 4(b)의 환경 2는 20m x 10m의 크기로 설정하였다. 환경 1은 주로 선분 형태, 환경 2는 곡선 형태의 경로추종이 수행되도록 환경을 설정하였다. 로봇에는 전방을 향하는 키넥트 센서 와 천장 관측용 모노카메라를 장착하여 위치인식을 수행하였는데, 위치인식 오차는 좌우로 각각 10cm로 총 20cm내외이다. 실험에 사용된 Fig. 5의 이동로봇은 로봇 중심에서 바퀴 중심까지의 거리가 0.2m이고, 바퀴의 반경은 0.1m이다. 이동로봇의 실험에 사용된 방위각의 정보는 Fig. 5와 같이 추가적인 자이로 센서를 장착하여 측정하였다. 주행을 처음 시작할 때 이동로봇이 바라본 방향을 0도로 설정하여, 이를 기준으로 반시계 방향으로 각도를 정의하였다.
제안된 제어기의 성능을 검증하기 위해 설정한 환경에 장애물을 설치하여 복잡한 주행경로를 생성하였다. 먼저, Fig. 4(a)의 환경은 Fig. 6(a)와 6(a)와 같이, 그리고 Fig. 4(b)의 환경은 Fig. 6(c)와 같이 장애물을 설치하였다. 실험에 사용된 로봇의 기준 선속도는 vr = 300mm/sec, 기준 각속 도는 ωr= 0 rad/sec로 설정하였고, 이동로봇이 향하는 방향에 대한 오차의 허용범위는 5°로 하였다. 제안한 경로추종의 정확도를 비교하기 위해서 이륜형 Kanayama controller[4]를 이용한 실험을 함께 수행하였다.
Fig. 6(a)와 (b))에서는 2장에서 언급하였던 기준 위치/방위와 현재 위치/방위의 간격을 1m로 설정하였고, 파라미터는 (a)의 경우에는 Kx=0.1, Ky=0.1, Kθ=0.9로, (b)의 경우에는 Kx=0.2, Ky=0.1, Kθ=0.9로 설정하였다. 파라미터는 Kanayama 제어기를 기준으로 반복적인 실험을 통해 설정하였다. 해당 환경에서 각 파라미터를 0.1 간격으로 변화시키면서 30회씩 실험을 통해 생성경로를 효율적으로 추종하는 값으로 설정하였다.
실제 환경의 실험은 Fig. 7과 같이 진행되었다. 이동로봇이 실제로 움직이는 경로를 10cm 간격으로 바닥에 표시한 뒤, 이를 매끄럽게 연결하여 주었다. 청색 테이프 파선은 구배법(Gradient method)[13]을 사용한 경로를 따라 로봇이 실제로 정확하게 움직인 경로를 표현하였다. 적색 테이프의 실선은 제안한 방법을 나타내며, Kanayama 제어기를 사용한 주행경로는 녹색 테이프를 사용하여 파선의 형태로 표현하였다. Fig. 8은 Fig. 6의 (a), (b)의 환경에서 실험한 결과를 나타낸 그림이다. Fig. 7과 마찬가지로 청색 파선은 구배법으로 생성한 경로이고, 적색 실선은 본 연구에서 제안한 방법 (12)를 사용하여 주행한 실제 경로이다. 또한 이륜형 이동로봇으로 개발된 Kanayama 제어기, 즉 식 (4)를 적용한 실제 주행경로는 녹색 파선으로 나타내었다. 경로추종을 수행하는 이동로봇의 추정위치와 생성경로의 경유점 간의 최단거리를 오차로 설정하여, 수집된 전체 오차값들의 합을 이동거리로 나누어 평균오차를 구하였다. 환경 (a)에서의 평균오차는 Kanayama 제어기는 21.0cm이고, 제안한 제어기는 3.3cm였으며, 환경 (b)에서의 평균오차는 Kanayama 제어기는 6.6cm, 제안한 제어기는 2.0cm였다. 이 결과로부터, Kanayama 제어기 보다는 제안된 제어기가 경로추종에 있어서 우수한 정확도의 성능을 보여줌을 알 수 있다. Fig. 9는 이동로봇이 주어진 구간을 20회 왕복 이동하는 동안 로봇의 방위를 누적한 히스토그램이다. 가로축은 이동로봇이 향하는 각도, 세로축은 해당 각도에 대한 빈도를 나타내며, 그림에 표시된 2개의 적색 선은 ±5°의 허용 범위를 나타낸다. Fig. 6의 환경 (a)와 (b)에서는 로봇이 향하는 각도는 각각 0° 및 90°로 설정하였다. Fig. 8의 히스토그램을 보면 로봇이 허용범위 내에서 정해진 방향을 바라보며 주행한 것을 알 수 있으며, 허용범위를 벗어난 비율은 환경 (a)는 0.30%, 환경 (b)는 0.99%였다.
Fig. 10은 Fig. 9의 환경 (c)에 맞추어 실험한 결과를 나타내었다. 환경 (c)의 경우는 이동경로의 폭이 좁은 관계로 기준 위치/방위와 현재 위치/방위의 간격을 0.2m로 설정하였고, 파라미터는 각각 Kx=0.1, Ky=0.1, Kθ=0.7로 설정 하였다. 앞에서와 마찬가지로 이 파라미터는 Kanayama 제어기에 최적화된 값을 기준으로 하였다. 실험중 발생한 평균오차는 Kanayama 제어기는 7.1cm, 제안한 제어기는 2.1cm였다.
Fig. 11은 Fig. 9와 같이, 이동로봇이 주어진 구간을 20회 왕복 이동하는 동안 로봇이 향하는 방향을 누적한 히스토 그램이다. 이 실험에서는 이동로봇이 향하는 각도를 270°로 설정하였으며, 적색 선으로 표시된 ±5°의 허용범위를 벗어나는 비율은 2.73%였다. 이로부터 현재 이동로봇이 바라보는 방향과 설정된 방향 간의 오차가 발생하여도 로봇이 일정한 방향을 향하면서 경로를 추종하는 것을 알 수 있다.
본 논문에서는 외란에 대한 강인함을 측정하기 위해 미끄러짐이 발생하는 바닥으로 환경으로 선택하였다. 앞의 실험과 같은 과정을 통해 경로추종에 대한 파라미 터는 Kx=0.3, Ky=0.2, Kθ=0.7로 설정하였다. 또한, 기준 위치와 현재 위치의 간격을 0.4m로 설정하였고, 추종에 대한 결과는 Fig. 12와 같다. 청색 파선은 구배법을 사용하여 생성한 추종경로이고, 적색 실선은 본 연구에서 제안한 제어기, 녹색 파선은 Kanayama 제어기를 사용한 결과이다. 실험구간에서 발생한 경로추종에 대한 오차의 평균은 Kanayama 제어기의 경우 8.3cm이고, 제안한 방법은 2.0cm이다. 이 실험을 통해 Kanayama 제어기를 사용한 경우보다 경로추종에 대한 외란이 더 강인하다는 것을 확인할 수 있었다.
5. 결 론
본 논문에서는 삼륜형 전방향 이동로봇을 대상으로 로봇이 원하는 경로를 정확히 추종하면서 로봇의 방위를 함께 제어하는 제어기를 제안하였다. 제안한 제어기는 리아푸노프 이론으로 안정성을 증명하였으며, 제어기 성능은 다양한 실험을 통하여 입증하여 다음과 같은 결론을 도출하였다.
- 제안한 제어기가 적용된 전방향 이동로봇은 이륜형 이동로봇용으로 개발된 Kanayama 제어기가 적용된 경우보다 정밀하게 경로를 추종하는 모습을 보였다.
- 제안된 제어기를 사용하면 로봇 위치뿐만 아니라, 로봇의 방위도 정확하게 제어하는 것이 가능하다. 설정한 방위의 허용범위인 ±5°를 벗어나는 비율이 3% 미만이었다.
향후에는 전방향 이동로봇이 경로를 추종하는 중에 동적 장애물이 발생하는 경우에도 대처할 수 있는 제어 알고리즘을 연구할 계획이다.
References
- Hsu, Y, Tsai, C, Wang, Z, Feng, Y, Lin, H, "Hybrid Navigation of a Four-Wheeled Tour-Guide Robot", ICROS-SICE Int. Joint Conf. Au, (2009), p4353-4358.
-
Kim, DW, Igor, Y, Kang, ES, Jung, S, "Design and Control of an Omni-directional Cleaning Robot Based on Landmarks, Journal of Korean Institute of Intelligent Systems, (2013), 23, p100-106.
[https://doi.org/10.5391/jkiis.2013.23.2.100]
-
Yun, S, Shin, J, Kim, D, "Engkey: ele-education Robot", Social Robotics, (2011), 7072, Berlin Heidelberg, Springer, p142-152.
[https://doi.org/10.1007/978-3-642-25504-5_15]
-
Kanayama, Y, Kimura, Y, Miyazaki, F, Noguchi, T, "A Stable Tracking Control Method for an Autonomous Mobile Robot", Robotics and Automation. IEEE Int. Conf, (1990, May), 1, p384-389.
[https://doi.org/10.1109/robot.1990.126006]
-
Maalouf, E, Saad, M, Saliah, H, "A higher level path tracking controller for a four-wheel differentially steered mobile robot,", Robotics and Autonomous Systems, (2006), 54, p23-33.
[https://doi.org/10.1016/j.robot.2005.10.001]
- Park, J, Kim, J, Do, J, Kim, S, Bae, S, "Path Tracking for AGV using Laser Guidance system", Journal of the Korea Robotics Society, (2010), 5(2), p120-126.
- Do, J, Kim, J, Jung, K, Woo, S, Kim, S, "Path Planning for AGVs with Path Tacking", Journal of the Korea Robotics Society, (2010), 5(4), p332-338.
- Kwon, JH, Kim, TY, You, J, "Path Following Control for an Omni-Directional Mobile Robot Using Low-cost Gyro Sensor, ICROS Annual Conference, (2010, May), p222-227.
-
Ashmore, M, Barnes, N, "Omni-drive Robot Motion on Curved Paths: The Fastest Path between Two Points Is Not a Straight-Line", Advances in Artificial Intelligence, (2002), p225-236.
[https://doi.org/10.1007/3-540-36187-1_20]
-
Song, JB, Byun, KS, "Design and Control of an Omnidirectional Mobile Robot with Steerable Omnidirectional wheels", Mobile Robots, Moving Intelligence, (2006), -576.
[https://doi.org/10.5772/4723]
-
Parks, PC, "A new proof the Routh-Hurwitz stability Criterion using the second method of Liapunov,", Mathematical Proc. of the Cambridge Philosophical Society. vol, (1962, Oct), 58, p694-702.
[https://doi.org/10.1017/s030500410004072x]
- Vidyasagar, M, "Nonlinear system analysis", (2002), Eaglewood Cliffs. N.J, Prentice-Hall Inc.
-
Konolige, K, "A Gradient Method for Realtime Robot Control,", Proc. of the IEEE Int. Conf. Intelligent Robots and Systems, (2000), p639-646.
[https://doi.org/10.1109/iros.2000.894676]