유동상
(Dong Sang Yoo)
†iD
Copyright © The Korean Institute of Illuminating and Electrical Engineers(KIIEE)
Key words
3D solid model, Dynamic model, Linear quadratic regulator(LQR), Self-balancing, Two wheeled robot
1. 서 론
최근 근거리 이동에 편리한 이동 수단을 요구하는 인구가 늘어남에 따라 개인용 이륜 이동 장치 개발이 활발하게 이루어지고 있다. 개인용 이륜 이동 장치는
고전적인 역진자 문제로부터 출발하고 있으며, 최근에는 연구자들은 인간형 로봇, 로봇 휠체어 및 개인 교통 시스템을 위한 설계 등 다양한 문제에 모바일
역진자 모델의 개념을 적용하고 있다. 내재적인 불안정성을 가진 역진자 시스템의 특이성은 많은 관심을 끌어 폭넓은 연구로 이어지고 있으며, 광범위한
응용을 위해서는 반드시 시스템의 안정화 문제를 극복해야 한다. 역진자 시스템을 기반으로 하는 이륜 자율 균형 로봇은 주행 제어뿐만 아니라 동시에 자세
균형까지 유지해야 하는 연구 주제로 수많은 로봇연구실에서 이에 관한 연구가 활발하게 진행되고 있다[1-4].
이런 이륜 자율 균형 로봇은 산업 현장에서보다는 일상생활에서 빠르게 확산되고 있다. 즉, 의료 현장에서의 의료원 보조, 관광지에서의 투어를 위한 용도,
장애인이나 노약자들의 이동용 수단 등 활용 분야가 계속 확대되고 있다. 이와 같은 현상은 기존의 이동 수단, 즉 4륜이나 캐터필러 방식의 이동 수단이
가지고 있는 안정성을 이륜 자율 균형 로봇이 확보하게 되면서 유연한 움직임과 조작의 용이성으로 인해 유용성이 점점 증대되고 있기 때문이다. 따라서
역진자 시스템의 기본적인 동역학을 바탕으로 용도에 따라 다양한 형태의 이륜 자율 균형 로봇의 플랫폼을 확보하는 것이 필요하게 되었다.
스위스 연방 기술원의 연구원들은 사람이 운전하는 것을 시뮬레이션하기 위해 질량을 부착한 역진자 모델을 기반으로 JOE를 개발하였는데, 자이로스코프와
모터 인코더에서 정보를 얻어내고 선형 상태 공간 제어기를 통해 시스템을 안정화하였다[5]. 이런 기술적 동향 및 개발은 상용화로 이어져 Dean Kamen은 최초로 모바일 역진자 모델을 기본으로 한 Segway (세그웨이)를 발명하였다.
세그웨이는 사용자가 어떤 지형을 주행하는 동안 플랫폼에 서 있는 인간의 균형 유지를 위해 다섯 개의 관성센서와 두 개의 기울기 센서 정보를 사용하였다[6]. David Anderson에 의해 만들어진 nBOT은 JOE와 비슷한 이륜 균형 로봇이며, 로봇 시스템의 균형을 위해 상용 관성센서와 모터 인코더의
위치 정보를 사용하였다[7].
한편, 최근 기계 시스템 등의 설계 및 제작 경향을 살펴보면 혁신적인 제품을 만들기 위해 설계자나 엔지니어들이 3D CAD 제품 개발 패키지 및 도구를
적극적으로 활용하고 있다. 3D CAD 시스템은 대상 시스템에 대해 3차원으로 모델을 구축하여 기계적 간접이나 강도 등 다양한 물리적 해석 결과를
제공하고 있으며, 시스템이 운용되는 특정 환경하에 실시간 가상 시뮬레이션이 가능하게 함으로써 설계 대상 시스템의 성능 검증에 커다란 이바지를 하고
있다. 하지만 제어기에 의한 대상 시스템의 거동이 제어되는 분야에서는 이런 3D CAD 시스템만으로는 제어입력에 의한 기계 시스템의 물리적 거동을
완전하게 해석하고 최적의 거동 조건을 추출하는 데에는 한계가 있다. 따라서 3D CAD 모델을 활용하면서도 대상 시스템의 거동을 적절하게 제어할 수
있는 제어시스템 시뮬레이션 도구가 필요하다.
Mathworks 사는 이런 개발 경향에 적합한 시뮬레이션 도구인 Matlab과 Simulink를 제공하고 있으며, 이를 통해 다양한 제어시스템을
개발하고 대상 시스템의 3D 모델의 거동을 검증할 수 있게 함으로써 개발 기간을 단축하고 개발 비용을 절감할 기회를 제공하고 있다. 특히 Simulink
환경 내에서 Simscape를 사용하면 물리적 시스템의 모델을 신속하게 생성하거나 물리적 연결을 통해 다중체를 조립할 수 있어 제어시스템을 개발하고
시스템 수준의 성능을 테스트하는 데 도움이 된다[8].
본 논문에서는 의료 분야, 관광 분야, 이송 분야에서 널리 사용되고 있는 역진자 기반의 이륜 자율 균형 로봇에 대한 3D 모델을 구축하여 이를 기반으로
안정적인 균형과 주행을 위한 제어 알고리즘을 개발하고 3D 애니메이션을 활용함으로써 그 효용성을 확인하는 것을 목적으로 한다.
2. 이륜 자율 균형 로봇의 동역학
이륜 자율 균형 로봇 (two-wheeled self-balancing robot, TWSBR)의 주행 및 균형을 위한 제어시스템을 설계하기 위해서는
첫 번째 방법으로 Lagrangian 방정식, Newton-Euler 방정식 또는 Kane 방법을 이용하여 수학적으로 동역학을 유도한 후 제어기를
구성하는 방법을 이용하거나 두 번째 방법으로 3D CAD 패키지를 이용하여 3D 모델을 확보한 후 제어기를 구성하는 방법이 있다.
2.1 동역학
Computed torque 방법이나 부족구동 기계 시스템에서의 부분궤환 선형화 기법 (partial feedback linearization method)와
같이 전체 또는 부분 동역학을 이용한 제어시스템을 구성하기 위해서는 상태변수를 이용한 운동방정식이 필요하다. 이를 위해서는 Fig. 1과 같이 TWSBR를 두 개의 바퀴와 역진자를 포함한 플랫폼의 3개 강체로 구성하고 공간상의 기준이 되는 기준 좌표계 $N$과 각 강체의 무게 중심에
대해 각각 좌표계 $B$와 $P$를 정의한 후 이를 바탕으로 동역학을 유도할 수 있다. 본 논문에서는 참고문헌[9]에서 제시한 유도 과정을 통해 TWSBR의 $ n_{x}$ 축 방향으로 직선 주행 운동에 대한 방정식을 기술하였으며, 사용된 기계적 파라미터는 Table 1에서 간단하게 정리하였다.
Fig. 1. Coordinates of TWSBR
Table 1. Mechanical parameters
Parameter : Description
|
Value [unit]
|
$l$ : distance from B to P point
|
0.22 [$m$]
|
$d$ : distance between wheels
|
0.28 [$m$]
|
$r$ : radius of wheel
|
0.10 [$m$]
|
$m_{p}$ : mass of platform & pend.
|
16.08 [$kg$]
|
$m_{w}$ : mass of wheel
|
1.81 [$kg$ ]
|
$I_{p}$ : inertia of platform & pend.
|
8.7×10-2[$kg$·$m^{2}$]
|
$I_{w}$ : inertia of wheel
|
7.6×10-3[$kg$·$m^{2}$]
|
먼저, 홀로노믹 구속에 따라 각 강체의 기준 좌표계 $N$에 대해 역진자와 좌·우 바퀴들의 무게 중심 위치는 다음과 같다.
한편, 바퀴와 지면 사이에 미끄러짐이 없다고 가정하면 $ n_{x}$ 축 방향의 직진 속도는 논홀로노믹 구속으로 다음과 같이 표현된다.
식 (1)를 시간에 대해 미분함으로써 각 강체의 무게 중심의 속도와 각속도는 다음과 같다.
TWSBR의 일반화된 속도 (generalized velocities)를 직진 운동 $\dot{x}$, 피치 (pitch) 운동 $\dot{\phi}$로
정의하고, 참고문헌[9]에 기술한 절차에 따라 유도하면 운동방정식은 다음과 같이 기술된다.
여기서 $\tau_{L}$과 $\tau_{R}$은 각각 좌·우측 바퀴에 인가되는 토크를 나타내며, 직진 운동의 경우에는 같은 크기를 가져야 하므로
$\tau =\tau_{L}=\tau_{R}$로 표현할 수 있다. $I_{w}$와 $I_{p}$는 각 강체의 기준 좌표계의 회전축에서 구한 관성 모멘트를
나타낸다.
2.2 3D 모델 구성 및 조립
이 절에서는 시뮬레이션과 애니메이션에서 활용할 수 있는 3D 모델링 방법을 기술하였다. 3D CAD 패키지인 SOLIDWORKS를 이용하여 Fig. 2와 같은 TWSBR를 구성하는 여러 강체를 설계한 후 데이터 호환 파일을 통해 Simscape에서 읽어 들여 조립하는 방법을 사용하였다. 모든 강체는
직교좌표계의 z축을 기준으로 병진 또는 회전 운동하도록 설계되었으며, 각 강체의 기준 좌표계와 운동 축을 고려하여 조립하였다.
Fig. 2. Solid model of TWSBR
Fig. 3. Assembly of TWSBR
이런 방식을 사용하면 각 강체의 무게 중심과 이에 따른 관성 모멘트를 자동으로 추출할 수 있어 TWSBR의 운동방정식을 수립할 때 활용할 수 있다.
또한 다양한 관절 블록과 좌표계 블록을 제공하고 있어 구동부를 가지는 다양한 기계 시스템을 조립할 수 있는데, 관절 블록에서는 제어기에 의해 계산된
힘/토크를 받을 수 있는 입력 포트와 제어입력에 의한 위치, 속도, 가속도 변화 등을 감지하기 위한 출력 포트를 제공하기 때문에 제어시스템 설계에
매우 유용하다. Fig. 3에서는 이런 특징들을 활용하여 TWSBR의 각 강체를 조립한 선도를 보여주고 있다.
앞 절에서 정의한 직진 운동과 피치 운동의 위치와 속도를 측정하기 위해서는 구동용 관절 블록과는 별도로 각각 드라이빙 센서와 피치 센서를 배치하였다.
드라이빙 센서는 바퀴의 구동축의 각위치 출력을 궤환 받아 평면 관절(planar joint) 블록을 통해 직선 운동의 거리와 속도로 변환하며, 기준
좌표계 $B$에 대한 플랫폼의 피치각을 측정용 피치 센서의 경우에는 회전 관절 블록을 배치하고 이로부터 각 위치와 각속도를 측정하였다. 완성된 TWSBR의
3D 모델은 Fig. 4와 같다.
Fig. 4. 3D Model of TWSBR
3. 제어시스템 설계 및 시뮬레이션
TWSBR의 주행 제어를 위해서는 먼저 균형점에서의 선형화 모델이 필요하다. TWSBR의 균형점은 피치각이 0°인 직립 상태를 의미하고, 직립 균형점
$(x,\: \dot{x},\: \phi ,\: \dot{\phi})=(-,\: 0 ,\: 0,\: 0)$에서의 작은 섭동의 경우 $s\phi\simeq\phi$,
$c\phi\simeq 1$로 근사화되므로 표 1에서 제시한 기계적 파라미터를 사용하여 균형점에서 식 (4)를 선형화한 후 상태방정식으로 표현하면 다음과 같다.
여기서 $ x(t)=[x,\: \dot{x},\: \phi ,\: \dot{\phi}],\: u(t)=\tau$,
$A=\begin{bmatrix}0&1&0&0\\0&0&-21.04&0\\0&0&0&1\\0&0&126.19&0\end{bmatrix},\: B=\begin{bmatrix}0\\
4.18\\ 0\\-19.40\end{bmatrix}$.
모든 상태변수가 측정 가능하고 궤환 가능하다고 가정하면 식 (5)에 의해 표현되는 균형점에서의 선형화 시스템은 행렬쌍 ($A,\: B$)가 제어 가능하므로 다음과 같은 전체 상태 궤환을 통해 안정화가 가능하다.
본 논문에서는 식 (6)의 궤환 이득 $K$을 설계하기 위해 LQR 기법을 활용하였다. LQR 기법은 상태 공간 접근 방식을 사용하는 현대 제어이론으로 다중입출력 시스템을
효과적 다룰 수 있다. 먼저 다음의 성능지수 함수를 최소화하면서 균형점을 안정시키는 이득을 설계한다.
여기서 가중치 행렬 $Q$과 $R$은 대칭인 양의 정의 행렬이다. 궤환 이득 $K$는 Riccarti 방정식의 해인 양의 정의 행렬 $P$에 의해
다음과 같이 정의된다.
$Q$와 $R$는 각각 시스템 상태 및 제어 노력의 동작을 제어하며 설계자에 의해 주어진 두 행렬값에 의존하며, 최적의 LQR 이득 행렬 $K$은
Matlab 명령어를 활용하여 계산할 수 있다.
$K = lqr(A,\: B,\: Q,\: R)$
이륜 자율 균형 로봇을 제어하는 목적은 피치각 섭동을 최소화하면서 주행하는 것이므로 가중치 행렬 $Q$에서 피치각 $\phi$에 해당하는 가중치를
다른 요소보다 크게 설정하였다. $Q=diag[10\;10\;100\;10]$과 $R=1$을 사용하였을 때 궤환 이득 $K$는 다음과 같다.
식 (9)로부터 설계된 상태 궤환 이득을 포함한 전체 제어시스템은 Simulink를 이용하여 Fig. 5와 같이 구현된다.
Fig. 5. Overall control system
먼저 TWSBR에서 가장 기본적으로 요구되는 사항인 직립 균형에 대해 시뮬레이션을 수행하였다. Fig. 6은 역진자의 초기 피치각이 15°로 주어졌을 때의 균형 제어에 대한 시뮬레이션 결과를 보여주고 있다. 그림에서 보는 바와 같이 TWSBR 전체가 약
1초 동안 전진 운동함으로써 역진자의 피치각을 0°로 수렴하도록 하고 그 이후에는 초기 위치로 서서히 되돌아와 균형을 유지하고 있음을 보여준다. 이는
Fig. 7의 3D 애니메이션을 통해서 확인할 수 있다.
다음으로 TWSBR이 일정한 거리를 직선 주행하면서도 역진자의 균형을 잘 유지하는지에 대해 시뮬레이션을 수행하였다. 역진자의 초기 피치각은 앞 시뮬레이션과
동일하게 15°로 설정하였으며 주행거리는 5$m$로 설정하였다.
주행 시뮬레이션 결과를 보여주는 Fig. 8과 9에서 볼 수 있듯이 LQR 기법에 이용해 설계된 상태 궤환 제어기가 직립 균형과 주행을 동시에 효과적으로 제어할 수 있음을 알 수 있다.
Fig. 6. Simulation results for upright balancing control
Fig. 7. Animation for upright balancing control
Fig. 8. Simulation results for maneuvering control
Fig. 9. Animation for maneuvering control
4. 결 론
본 논문에서는 SOLIDWORKS를 사용하여 이륜 자율 균형 로봇을 구성하는 바퀴, 플랫폼 및 역진자 부품을 각각 3D로 설계하였으며, Simscape의
다중체 결합 기능을 이용하여 조립하여 이륜 자율 균형 로봇의 3D 모델을 완성하였다. 또한 이륜 자율 균형 로봇의 동역학을 기술하고 직립 균형점에서
선형화 모델을 유도한 후 선형화 모델을 대상으로 LQR 기법을 사용하여 안정성을 보장하는 상태 궤환 제어기를 설계하였다. 이렇게 설계된 상태 궤환
제어기를 Simulink 통합 환경에서 3D 모델과 연결하였다. 시뮬레이션을 통하여 LQR 제어기가 이륜 로봇의 직립 균형 및 주행을 동시에 효과적으로
제어할 수 있다는 것을 보였을 뿐만 아니라 3D 모델을 활용한 애니메이션을 통해 이륜 로봇의 거동을 시각적으로 확인할 수 있다.
Acknowledgement
This work was supported by a research grant from Hankyong National University
for an academic exchange program in 2020.
References
A. Castro, “Modeling and Dynamic Analysis of a Two-Wheeled Inverted-Pendulum,” M.Sc.
Thesis, George W. Woodru School of Mechanical Engineering, Georgia Institute of Technology,
2012.
Y. Kim, S. H. Kim, and Y. K. Kwak, “Dynamic Analysis of a Nonholonomic Two-Wheeled
Inverted Pendulum Robot,” J. of Intelligent and Robotic Systems, Vol. 44, pp. 25-46,
2005.
M. O. Asali, F. Hadary, and B. W. Sanjaya, “Modeling, Simulation, and Optimal Control
for Two-Wheeled Self-Balancing Robot,” Int. J. of Electrical and Computer Engineering,
Vol. 7, No. 4, pp. 2008-2017, 2017.
I. K. Mohammed and A. I. Abdulla, “Balancing a Segway Robot Using LQR Controller Based
on Genetic and Bacteria Foraging Optimization Algorithms,” TELKOMNIKA Telecommunication
Computing Electronics and Control, Vol. 18, No. 5, pp. 2642-2653, 2020.
F. Grasser, A. D’Arrigo, S. Colombi, and A. C. Rufer, “JOE: A Mobile, Inverted Pendulum,”
IEEE Trans. on Industrial Electronics, Vol. 49, No. 1, pp. 107-114, 2002.
H. G. Nguyen, et al., “Segway Robotic Mobility Platform,” Proc. of Mobile Robots XVII.
Vol. 5609. SPIE, pp. 207-220, 2004.
D. P. Anderson, “nBot Balancing Robot,” http://www.geology.smu.edu/~dpa-www/robo/nbot/
(Accessed 14 Sep. 2013)
Mathworks, “Getting Started with Simscape Multibody,” https://www.mathworks.com/help/physmod/sm/getting-started-with-simmechanics.html
(Accessed 2022)
S. Kim and S. Kwon, “Dynamic Modeling of a Two-Wheeled Inverted Pendulum Balancing
Mobile Robot,” Int. J. of Control, Automation and Systems, Vol. 13, No. 4, pp. 926-933,
2015.
Biography
He received the B.S. degree in electrical engineering from Seoul National University,
Seoul, Korea in 1985, and the M.S. and Ph.D. degrees in electrical and electronic
engineering from KAIST, Taejon, Korea in 1987, and 1992, respectively. From 1992 to
2000, he was a senior research engineer with LG Electronics Company, where he was
engaged in research & development of semiconductor equipment and factory automation.
Since September 2000, he has been with Hankyong National University, where he is currently
a Professor. His current research interests are in the areas of robust control, automation,
robotics, and underactuated mechanical systems.