http://dx.doi.org/10.5369/JSST.2018.27.3.165 pISSN 1225-5475/eISSN 2093-7563
반작용 휠의 LQR 제어를 통한 Cubli 프레임의 균형유지
김용훈1 · 박준모2 · 한승오2,+
Balancing the Cubli Frame with LQR-controlled Reaction Wheel
Yonghun Kim1, Junmo Park2, and Seungoh Han2,+
Abstract
A single-axis Cubli frame realized simply with an IMU sensor and DC motor is presented herein. To maintain the balance on the Cubli frame, an LQR controller based on a Lagrangian derivation of the dynamics was designed, which utilized the state variables of the frame angle and its angular acceleration, as well as the wheel angle and its angular acceleration. The designed LQR controller showed a settling time balancing capability of approximately two seconds and 40% of the maximum overshoot in Matlab/Simulink sim- ulations. Our experimental results of the fabricated Cubli frame matched with the simulation results. It maintained balancing at the ref- erence position even though an initial offset as well as external disturbance during the balancing was applied.
Keywords: Reaction wheel, Balancing, Cubli frame, LQR control
1. 서 론
역진자(Inverted Pendulum) 기반의 균형유지는 오랜 역사를 가진 기술로써 다양한 응용분야에서 균형유지를 위해 활용되고 있다. 최근에는 역진자 응용기술의 하나로써, 휠을 회전시킬 때 얻어지는 관성 모멘트를 이용한 반작용 휠 기술이 제시되었으 며[1,2], 이를 이용하여 이륜 주행 장치의 1축 균형유지를 보조 함으로써 주행 성능을 향상시키거나[3-5] 3축 휠 제어를 통해 다양한 자세를 유지하는 방법이 발표되었다[6]. 특히, Cubli 프 레임은 3차원 공간에서 다양한 움직임과 위치를 제어할 수 있 다는 잠재력이 있지만 균형유지를 위해 2개의 관성센서가 필요 하고 제어가 복잡하다는 단점이 있다[7].
이에 본 논문에서는 3축 제어를 수행하는 Cubli의 구성요소 인 1축 균형유지 프레임을 기반으로 기구에 대한 라그랑지 방
정식을 통해 동역학 모델을 도출하고 이로부터 얻어진 라그랑 지 방정식으로 LQR(linear quadratic regulator) 제어기를 설계해 Cubli 프레임에서 1축 균형유지를 수행하는 기술을 제시한다.
동역학 모델링과 제어기 설계에 대한 Simulink 모의해석을 통 해 설계 타당성을 검증한 후 Cubli 프레임을 구현하였다. Cubli 프레임의 roll 축 균형유지를 위해 기구의 기울어진 각도와 가 속도, 휠의 각도와 가속도가 필요하며 이들 상태값들의 측정을 위해 기구부의 회전축에 장착되는 단일 IMU(inertial measurement unit) 센서와 DC(direct current) 모터에 부착되어 있는 엔코더를 사용하였다.
2. 본 론
2.1 동역학 모델링
Cubli 프레임의 외형과 좌표축은 Fig. 1과 같으며 L
w는 회전 중심으로부터 휠의 무게 중심까지를 나타내고, L
b는 휠을 제외 한 기구의 무게 중심까지를 나타낸다. q
B는 기준축에 대한 기구 의 회전각도이며 q
W는 휠의 회전각도이다. 동역학 모델링을 위 한 주요 파라미터는 Table 1과 같이 DC 모터 데이터시트와 기 구 모델링에 사용된 설계환경인 Pro-E를 활용해 도출하였다.
Cubli 프레임의 동역학 방정식을 도출하기 위해 라그랑지 방 정식을 사용하는데, 전체 운동에너지와 위치에너지의 차이로 이 루어지는 라그랑지안을 구하기 위해 Cubli 프레임의 전체 운동 에너지와 전체 위치에너지를 구한다. 표시된 좌표를 기준으로
1세종대학교 지능기전공학부(School of Intelligent Mechatronic Engineering, Sejong University)
Sejong University, 209 Neungdong-ro, Gwangjin-gu, Seoul 143-747, Korea
2호서대학교 로봇자동화공학과 (Department of Robotics and Automation Engineering, Hoseo University)
Hoseo University, 201 Sandan7-ro, Seongmun-myeon, Dangjin-si, Chungcheongnam-do 31702, Korea
+Corresponding author: [email protected]
(Received: Dec. 5, 2017, Revised: Apr. 8, 2018, Accepted: May. 3, 2018)
This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License(http://creativecommons.org/
licenses/bync/3.0) which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.
운동에너지를 구하기 위해 위치벡터를 정의하고 위치벡터의 성 분을 미분함으로써 식 (1~2)와 같이 Cubli 프레임의 중심점과 휠 중심점에서의 속도벡터 v
b와 v
w를 각각 구할 수 있다.
(1)
(2) 식 (1)~(2)와 같이 주어지는 속도벡터를 이용하여 Cubli 프레 임의 전체 운동에너지 T를 표현하면 식 (3)과 같고, 전체 위치 에너지 V는 식 (4)와 같이 구할 수 있다.
(3)
(3)
(4) Cubli 프레임에 대한 라그랑지 방정식으로부터 도출되는 동역 학 모델은, 외력이 존재하지 않는 프레임 부분의 동역학 성분과 모터의 회전이 외력으로 작용하는 휠에 대한 성분 즉, 2개의 동 역학 방정식으로 구성된다. 따라서 Cubli 프레임의 θ
B에 대한 라그랑지 방정식과 휠의 θ
W에 대한 라그랑지 방정식을 구해야 한다. 라그랑지안 L은 식 (5)와 같이 표현되며 θ
B와 θ
W에 대한 라그랑지 방정식은 식 (6)과 식 (7)로 정리된다.
(5)
(6)
(7)
Cubli 프레임의 동역학 모델을 수립하는 과정에서 프레임의 각도에 대한 외력으로 베어링의 마찰력이 존재할 수 있는데, 베 어링의 마찰은 매우 작아 무시하였다. 휠에 대한 동역학 방정식 의 외력인 τ는 모터 토크이며, 이에 대한 토크 방정식인 식 (8) 로 기술된다[4].
(8)
식 (6)과 식 (7)을 정리하면 기구의 동작을 설명하는 θ
B와 θ
W에 대한 두 개의 식 (9)와 (10)이 얻어진다.
(9)
(10)
주어진 동역학 모델에서 베어링에 의한 마찰은 기구의 속도 에 의존하는데, 전술한 바와 같이 베어링에 의한 마찰을 0으로 가정했기 때문에 해당 성분이 존재하지 않게 된다.
2.2 제어기 설계
휠이 회전하는 상태에서 휠의 회전 운동량에 따라 Cubli 프 레임이 균형을 유지하도록 하기 위해 LQR 제어기를 설계하였 다. 이는 출력의 결과만을 피드백 받아 제어하는 방식이 아닌,
jL i L
v
b
=b
θB
cos(θB
)−b
θB
sin(θB
) j Li L
v
w
=w
θB
cos(θB
)−w
θB
sin(θB
)) ( ) 2 (
1M
b
vb
vw
Mw
vb
vw
Jb B
Jw W
T= • + • + θ + θ
)
2
(
B W
J
w
θ +θ +2 2
2 2
2 ( )
2 1 2
) 1 2 (
1 M b L b + M w L w θ B + J b θ B + J w θ B + θ w
=
) cos(
)
cos( B w w B
b
g gL M gL
M
V = θ + θ
) cos(
) (
) 2 (
1 2
) 1 2 (
1 2 2 2 2 2
B w
w b g
B w w B b B w w b b
g L M L M
J J
L M L M
V T L
θ
θ θ θ
θ +
−
+ +
+ +
=
−
=
0 ) sin(
) (
)
( 2 2
= +
−
+ +
+ +
∂ =
− ∂
⎟ ⎟
⎠
⎞
⎜ ⎜
⎝
⎛
∂
∂
B w
b w b
W w B w b w w b B b
W
g L M L M
J J
J L M L L M L dt
d
θ
θ θ θ
θ
τ θ θ θ
θ = + =
∂
− ∂
⎟ ⎟
⎠
⎞
⎜ ⎜
⎝
⎛
∂
∂ b B w W
W W
J L J
L dt
d
W m m t
in W
b K F
R V
K θ θ
τ = + −
w w b b b
B w w b B b
M L M L J
M L M L g
+ +
−
= ( + 2 ) sin( θ ) τ θ
) (
) (
) (
) sin(
) (
2 2
2 2
2 2
w w b b b w
w w b b w b
w w b b b w
B w w b b w W w
M L M L J J
M L M L J J
M L M L J J
M L M L gJ J
+ +
+ + + +
+ +
+
−
= −
τ θ θ
Fig. 1. Schematic view of the Cubli frame.
Table 1. Modeling parameters of the Cubli frame and motor.
Parameters Value
L
wDistance to center-of-mass in wheel 0.086 m L
bDistance to center-of-mass in structure 0.17 m
M
bMass of structure 0.622 kg
M
wMass of wheel 0.321 kg
J
bMoment of inertia of the structure 3.4821 ×10
-4kg·m
2J
wMoment of inertia of the wheel 1.025 ×10
-3kg·m
2g Gravity 9.8 m/s
2K
bBack EMF constant of motor 0.026 Vs/rad
R
mResistance of motor 7 Ω
K
tTorque constant of motor 0.026 Nm/A
F
mFrictional coefficient of motor 0.0005 kg·m
2모든 상태변수의 출력을 피드백 받는 LQR 제어기의 세밀함을 활용하기 위한 것으로써, 시스템 상태변수는 프레임의 각도, 프 레임의 각속도, 휠의 각도, 휠의 각속도로 설정하였다. 이러한 시스템 상태변수를 토대로, 식 (9)와 식 (10)을 식 (8)의 토크 방 정식을 사용하여 전압에 대한 관계식으로 변환하면 다음과 같다.
(11)
(12)
식 (11)과 식 (12)를 이용하여 시스템 행렬을 식 (13)으로 정 리하여 나타낼 수 있는데, 여기서 u는 입력 전압 V
in을 나타내 고 A와 B는 동역학 모델링에서 구한 상태값들에 해당하며 식 (14) 와 같이 표현된다.
(13)
(14)
제어기 이득을 결정하기 위해서는 가중치 행렬 R과 Q 또한 필요한데, 여기서 R은 제어변수의 입력 크기이다[4]. R이 클수 록 제어입력의 크기가 증가하므로 위 시스템에서는 빠른 응답 을 얻기 위해 R의 값을 500으로 설정하였다. Q는 선정한 상태 변수의 가중치를 의미하며, 본 시스템에서 요구되는 적절한 Q 값은 다음과 같이 설정하였다.
(15)
식 (14)의 행렬에 대해 Matlab의 LQR 함수를 이용하면 제어 이득 K를 구할 수 있다. 이때의 상태변수들인 θ
B와 그 1차미 분, 그리고 θ
W와 그 1차미분에 대한 이득 값 K1, K2, K3, K4는 각각 다음과 같다: K1=-29.139, K2=-3.39, K3=-0.0257, K4=- 0.0399. 이때, u=Kx로 입력전압이 결정되는데, 여기서 x는 시스 템 행렬에서 설정되는 상태에 해당된다.
Fig. 2 는 전술한 시스템 모델을 Matlab Simulink로 표현한 시 스템 블록 다이어그램이며, 모터 정격을 고려하여 saturation 요 소를 통해 24 V 이상의 전압이 인가되지 못하도록 제한하였다.
Fig. 2의 시스템 블록 다이어그램을 사용한 모의해석을 통해 초기 오프셋이 주어졌을 때, Cubli 프레임이 균형유지를 할 수 있는지 확인하였다. Table 1에서 제시한 파라미터들을 사용하는 경우의 모의해석 결과는 Fig. 3과 같으며 초기 각도가 -5
o일 경 우 기준 위치인 0
o를 기준으로 최종값의 2% 이내의 값인 0.02
o로 안정화되는 정착시간은 2.134초이고 최대 오버슈트는 2.025 도이다. 즉, 설계된 시스템은 –5
o의 초기위치에서 시작하여 기 준위치로 복귀함을 확인할 수 있다.
2.3 Cubli 프레임 제작 및 균형유지 실험
전술한 바와 같이 설계된 Cubli 프레임의 본체는 Fig. 4와 같 이 알루미늄으로 제작되었고 휠은 가공성이 좋은 폴리카보네이 트로 가공하였다.
프레임의 각도를 제어하기 위해 사용되는 IMU는 휠의 회전
m w w b b b
in t w t b
w w b b b
w m B w w b B b
R M L M L J
V K K K
M L M L J
F M
L M L g
) (
) sin(
) (
2 2
+ +
− +
+ +
+
= +
θ
θ
θ θ
m w w b b b W
in t w t b w w b b w b
w w b b b W
w m B w w b b w W w
R M L M L J J
V K K K M L M L J J
M L M L J J
F M
L M L gJ J
) (
) )(
(
) (
) sin(
) (
2 2
2 2
2 2
+ +
+ +
+ + +
+ +
− +
−
= −
θ θ
θ θ
Bu Ax x = +
u B B
A A A
A A A
W W B B
W W B B
⎟⎟
⎟ ⎟
⎟
⎠
⎞
⎜⎜
⎜ ⎜
⎜
⎝
⎛ +
⎟ ⎟
⎟ ⎟
⎟
⎠
⎞
⎜ ⎜
⎜ ⎜
⎜
⎝
⎛
⎟ ⎟
⎟ ⎟
⎟
⎠
⎞
⎜ ⎜
⎜ ⎜
⎜
⎝
⎛
=
⎟ ⎟
⎟ ⎟
⎟
⎠
⎞
⎜ ⎜
⎜ ⎜
⎜
⎝
⎛
41 21 44
43 41
24 23 21
0 0
0
1 0 0 0
0
0 0 1 0
θ θ θ θ
θ θ θ θ
500 ,
1 . 0 0 0 0
0 1 0 0
0 0 10 0
0 0 0 10
=
⎟⎟
⎟ ⎟
⎟
⎠
⎞
⎜⎜
⎜ ⎜
⎜
⎝
⎛
= R
Q
Fig. 2. System block diagram in Matlab Simulink.
Fig. 3. Simulated results of re-balancing from initial offset of 5
degrees.
에 따른 진동을 최소화하기 위해서 본체의 회전을 지지하는 베 어링의 축에 1개를 부착하였다. IMU 센서는 본체의 각도와 각 속도에 대한 센서 데이터를 얻기 위해 사용되었다. 휠을 회전시 키는 구동모터로는 엔코더가 장착된 DC 모터를 사용하였으며, 해당 엔코더는 광학식 엔코더로써 332cpr의 분해능을 갖는 2채 널 엔코더이고 휠의 회전 각도와 각속도를 얻는데 사용되었다.
LQR 제어기는 8Bit 마이크로프로세서로 구현하였으며 이상의 주요 부품들은 Table 2와 같다.
Matlab Simulink 모의해석을 통해 Cubli 프레임의 동역학 방 정식이 정확하게 모델링되어 균형유지를 수행하는지 확인하였 으므로 실제 제작된 Cubli 프레임으로부터의 실험 데이터와 비
교 분석해 차이점과 원인을 분석하였다.
먼저 Fig. 5는 실제 제작된 Cubli 프레임이 기준위치인 0
o에서 성공적으로 균형을 유지함을 보여주는데, 이후의 모든 실 험은 평편한 바닥에서 진행되었다. 균형유지에 대한 측정결과 에 의하면, 모터가 휠을 회전시키면서 발생하는 진동으로 인 한 기계적인 잡음과 모델링에서는 무시하였던 베어링에서의 마찰, 그리고 위치인식에서의 오프셋과 분해능 한계 등으로 인 해 IMU 센서값이 0
o를 기준으로 미세하게 움직이게 된다. 이 러한 이유로 휠은 기준위치로부터 0.355±0.196
o만큼 벗어난 위치를 유지하게 된다. 따라서 보다 정밀한 균형유지를 위해 서는 위치인식의 정확도 향상과 내진동 설계에 기초한 구조적 개선 등이 필요하다.
다음으로 Fig. 6은 기준위치로부터 –6
o벗어난 초기값이 주어 진 상태로부터 균형유지를 시작한 경우의 측정결과와 시뮬레이 션 결과를 나타낸다. Matlab Simulink 시뮬레이션 결과는 0.311 초에 3.64
o의 최대 오버슈트에 도달한다. 반면, 실제 측정된 결 과는 0.506초에서 최대 오버슈트는 3.21
o로써 peak time은 38.5%, 최대 오버슈트는 11.8%의 차이를 보인다. 그리고 시뮬레이션 결 과는 최대 오버슈트 이후 빠른 응답속도를 나타내어 기준위치 에서 균형을 유지하지만, 실제 측정된 결과는 최대 오버슈트 이 후 상대적으로 느린 속도로 정상상태에 수렴하는 것을 볼 수 있 다. 이러한 결과는 전술한 동역학 모델에서 마찰력이 고려되지 않았기 때문이다.
마지막으로 Fig. 7은 균형유지 5초 후, 휠에 외란이 인가되었 을 때의 시뮬레이션과 측정 결과들이다. 실험결과는 시뮬레이션 결과와 동일하게 기준위치로 복귀하여 다시 균형을 유지하는 것 을 나타내지만, Fig. 6의 초기값 실험에서 논의된 것처럼 시뮬 레이션 결과에 비해 조금 더 느린 응답속도와 작은 최대 오버 슈트를 나타낸다.
Fig. 4. Fabricated Cubli frame.
Fig. 5. Experimental results of Cubli frame balancing at the reference position.
Table 2. Components used in the Cubli frame.
Components Company Model
Microprocessor Microchip Tech. Inc. ATmega128 DC motor Mitsumi Elec. Co., LTD. M36N-4E
IMU InvenSense MPU6050
Fig. 6. Experimental results of re-balancing from initial offset of 6
degrees, which were compared also with the simulated results
from Matlab Simulink.
3. 결 론
본 논문에서는 3차원 공간에서 다양한 움직임과 위치를 제어 할 수 있다는 장점을 가진 Cubli 프레임을 상대적으로 저렴한 1 개의 IMU 센서와 DC 모터를 사용하여 구현하였다. 라그랑지 방정식을 유도해 동역학 모델을 수립하였으며 이를 토대로 LQR 제어기를 설계한 후, Matlab Simulink 시뮬레이션을 통해 동역 학 모델과 LQR 제어기의 설계 타당성을 검증하였다. 이후 1축 Cubli 프레임을 제작하여 균형유지 성능을 시뮬레이션 결과와 비교하였다. 초기 오프셋이 주어지거나 균형유지 가운데 외란이 가해져도 제작된 Cubli 프레임은 기준위치로 복귀하여 성공적 으로 균형을 유지하였다.
단일 IMU 센서와 DC 모터를 사용함으로써 비교적 저렴한
가격으로 구현된 본 Cubli 프레임은 저가형 이륜구동 장치나 3 차원 위치제어 등에 활용될 수 있을 것으로 기대된다.
감사의 글
본 연구는 충청남도 당진시의 CA장학금 지원을 통해 이루어 졌으며, 이에 감사드립니다.
REFERENCES