바퀴구름운동을 고려한 역진자 로봇의 주행
Driving of Inverted Pendulum Robot Using Wheel Rolling Motion
이 준 호
1, 박 치 성
2, 황 종 명
3, 이 장 명
†Jun Ho Lee
1, Chi Sung Park
2, Jong Myung Hwang
3, Jang Myung Lee
†Abstract This paper aims to add the autonomous driving capability to the inverted pendulum system which maintains the inverted pendulum upright stably. For the autonomous driving from the starting position to the goal position, the motion control algorithm is proposed based on the dynamics of the inverted pendulum robot. To derive the dynamic model of the inverted pendulum robot, a three dimensional robot coordinate is defined and the velocity jacobian is newly derived. With the analysis of the wheel rolling motion, the dynamics of inverted pendulum robot are derived and used for the motion control algorithm. To maintain the balance of the inverted pendulum, the autonomous driving strategy is derived step by step considering the acceleration, constant velocity and deceleration states simultaneously. The driving experiments of inverted pendulum robot are performed while maintaining the balance of the inverted pendulum. For reading the positions of the inverted pendulum and wheels, only the encoders are utilized to make the system cheap and reliable. Even though the derived dynamics works for the slanted surface, the experiments are carried out in the standardized flat ground using the inverted pendulum robot in this paper. The experimental data for the wheel rolling and inverted pendulum motions are demonstrated for the straight line motion from a start position to the goal position.
Keywords: Inverted Pendulum, Jacobian, Autonomous Driving, Encoder, Dynamics
1. 서 론
1)최근 모바일 로봇은 자동화 산업의 발전과 함께 무인 화 기술의 접목을 시도하고 있으며, 산업 현장에서 자동 주행 로봇을 도입하여 생산 효율을 증가시키는 사례가 늘 어나고 있는 상황이다. 자동 주행을 위한 모바일 로봇의 구동 방식은 적용 환경에 따라 바퀴, 다리, 무한궤도나 이 것을 혼합한 방식을 이용하지만, 일반적으로 바퀴 방식이 많이 활용 된다. 구조적인 측면에서 바퀴의 형태는 고정 바퀴, 조향 바퀴, 편심 거리가 있는 조향 바퀴(캐스터 바
Received: Feb. 02, 2010; Reviewed: Apr. 09, 2010; Accepted: May. 11, 2010
※ 본 연구는 (부산대학교 특수환경 NAVIGATION/LOCALIZATION 로 봇기술 연구센터를 통한) 지식경제부/한국산업기술진흥원 융/복합형 로봇 전문 인력 양성 사업의 지원으로 수행되었음.
† 교신저자 : 부산대학교 전자전기공학과 교수
1 부산대학교 전자전기공학과 박사
2 부산대학교 전자전기공학과 석사과정
3 부산대학교 전자전기공학과 박사과정
퀴)와 Swedish 바퀴로 분류 된다[1]. 다양한 바퀴 형태에 따른 기구학 모델은 Muir와 Campion 등이 제시하고 있
으며[2, 3], 바퀴의 미끄럼을 고려한 모델은 Balakrishna와
Ghosal에 의해 연구되고 있다[4]. Caracciolo는 SSMR (skid-steering mobile robot)의 궤적 추적 제어에 대해 제 안하고 있으며[5], 조향 가능한 전방향 바퀴의 에너지 효 율에 관한 연구도 진행되고 있다[6]. 모바일 로봇과 관련 된 선행연구들[2-5]은 역진자를 포함하지 않는 시스템으로, 기구학 측면에서 모바일 플랫폼을 2차원 평면상에서 해 석하는 연구들이 대부분이다. 하지만 본 논문의 기구학 문제는 모바일 플랫폼에 역진자가 추가되어 있는 시스템 으로, 2차원 평면상에서 모바일 플랫폼과 역진자를 동시 에 고려하는 것은 한계가 있기 때문에 3차원 공간상에서 해석하는 것이 바람직하다. 또한 3차원 공간에서 직교 좌 표공간과 관절 좌표공간의 상관관계를 나타내는 자코비안 에 관해 언급된 선행 연구 사례는 전무한 상황이다.
(a)역진자 로봇의 방위 좌표계
(b)역진자 로봇의 위치 좌표계
그림 1. 3차원 공간의 역진자 로봇 좌표계 역진자 시스템은 구조적인 불안정성과 비선형 특성으
로 인하여 제어 이론의 성능 검증을 위하여 많이 활용되 고 있으며[7], 퍼지 및 신경망을 이용한 연구도 진행되고
있다[8, 9]. 최근에는 이륜 역진자 로봇이 근거리 이동수단
으로서 주목을 받기 시작하면서 이에 대한 연구가 활발히 진행되고 있으며[10, 11], 자이로 센서의 누적오차를 줄이기 위하여 센서 융합을 이용하는 연구도 진행되고 있다[12]. 하지만 기존의 역진자 시스템은 대부분 탑승자에 의해 불 안정한 상태가 제어되는 반자동 시스템(semi-autonomous system)으로 구성되며, 역진자의 균형 유지를 위한 자세 제어에 초점이 맞추어져 있기 때문에 자동 주행을 위한 연구는 미흡한 실정이다. 역진자 로봇의 자동 주행은 모 바일 플랫폼에 역진자가 부착되어 역진자의 균형유지와 동시에 바퀴의 구름운동이 고려되어야 하는 시스템이기 때문에 역진자와 바퀴의 연동관계를 수학적으로 모델링 하는 것은 매우 복잡하다. 이러한 이유로 본 논문에서는 기존의 역진자 시스템에 자동 주행(autonomous driving) 기술을 접목하기 위하여 기구학 모델 기반의 자코비안과 바퀴 구름운동을 고려한 동역학 모델을 새롭게 유도하고, 역진자와 바퀴의 인코더 센서를 이용하여 출발지점에서 목표지점까지 직선 주행 실험 결과를 제시한다.
1장 서론에 이어 2장에서는 역진자 로봇의 기구학 모 델 제시를 통하여 자코비안을 유도하고, 바퀴의 구름운동 을 고려한 동역학 모델은 3장에 제시한다. 4장은 역진자 시스템의 동역학 특성에 기반한 주행 전략을 제시하며, 5 장에서는 실험 환경 및 결과를 제시한다. 마지막으로 6장 에서 결론을 맺는다.
2. 역진자 로봇 기구학 모델
자동 주행을 위한 역진자 로봇의 물리적인 현상은 네 개의 바퀴구동에 따라 지면에 고정된 좌표계를 기준으로 역진자 로봇의 질량 중심의 위치가 변하게 되고, 이에 따 라 역진자 끝단의 자세도 함께 변하게 된다. 지면에 고정 된 좌표계와 몸체(질량중심)의 좌표계를 각각f X Y Z( f, f, f) 와 b x y z( , , )b b b 로 나타내고, 역진자축의 좌표계와 역진자 끝단의 좌표계는 각각 p x y z( ,p p, p)와 pe x( pe,ype,zpe)로 표기한다. ψb는 좌/우측 바퀴의 회전수가 다른 경우 몸체 가 틀어지는 각도이며, 직선 주행을 하는 경우 ψb는 고 려하지 않을 수 있다. αp는 역진자가 xp축에 대해 회전 한 각도이며, 그림 1에 역진자 로봇의 좌표계가 도시되어 있다. 역진자의 끝단까지 좌표 변환 관계를 살펴보면 다 음과 같다.
f f b ps
pe b ps pe
T = T T T =
0
0 0 0 1
b b b b ip
p b p b p b p b ps p
p b p b p b p b ps p
c s l c l
c s c c s l c s l s
s s s c c l s s l c
ψ ψ ψ
α ψ α ψ α α ψ α
α ψ α ψ α α ψ α
− +
⎡ ⎤
⎢ − − ⎥
⎢ ⎥
⎢ + ⎥
⎢ ⎥
⎢ ⎥
⎣ ⎦
(1)
여기서
0 0
0 0 1 0
0 0 0 1
b b b b
b b b b
f b
c s l c
s c l s
T
ψ ψ ψ
ψ ψ ψ
⎡ − ⎤
⎢ ⎥
⎢ ⎥
=⎢ ⎥
⎢ ⎥
⎣ ⎦
,
1 0 0 0
0 1 0 0
0 0 1
0 0 0 1
b ps
ps
T l
⎡ ⎤
⎢ ⎥
⎢ ⎥
= ⎢ ⎥
⎢ ⎥
⎢ ⎥
⎣ ⎦
,
FLh,FRh 좌,우측 바퀴의 수평방향 힘
FLhf,FRhf 좌,우측 바퀴의 수평방향 마찰력
NLi,NRi 좌,우측 바퀴의 수직항력
τLwr,τRwr 좌,우측 바퀴의 회전 반력
αp 역진자의 기울기 각도
mp 역진자의질량
mwi i번째 바퀴의 질량(i=1,2,3,4)
θwi i번째 바퀴의 회전각 변위
g 중력 가속도
lpe 역진자의 길이
, ,
x x x& && 바퀴의 변위, 속도, 각속도
Fxp
∑
역진자에 작용하는 수직방향 힘의 합그림 2. 역진자 로봇의 동역학 모델 표 1. 역진자 로봇 파라미터
1 0 0
0 0
0 0
0 0 0 1
ip
p p
ps pe
p p
l
c s
T s c
α α
α α
⎡ ⎤
⎢ − ⎥
⎢ ⎥
= ⎢ ⎥
⎢ ⎥
⎢ ⎥
⎣ ⎦
이고, 첨자f와 b는 각각 지면(floor)좌표계와 질량중심 몸체(body)좌표계를 의미하고, ps와pe는 각각 진자축 (pendulum shaft)좌표계와 진자축 끝단(pendulum end)좌 표계를 의미한다. lb는 지면 좌표계에서 몸체까지의 공간 상의 거리이고, lps는 몸체 좌표계에서 진자축 좌표계까지 공간상의 거리이며, lip역진자의 길이이다. 역진자 끝단의 위치와 방향을 ⎡⎣XpeY Zpe peβpe⎤⎦T라 하고, βpe=ψb+αp라 하면 식(1)은 다음과 같이 표현된다.
pe b b ip
pe b p b ps p
pe b p b ps p
pe b p
X l c l
Y l c s l s
Z l s s l c
ψ
α ψ α
α ψ α
β ψ α
⎡ ⎤ ⎡ + ⎤
⎢ ⎥ ⎢ − ⎥
⎢ ⎥ ⎢= ⎥
⎢ ⎥ ⎢ + ⎥
⎢ ⎥ ⎢ ⎥
⎢ ⎥ ⎢ + ⎥
⎣ ⎦ ⎣ ⎦
(2)
여기서 자코비안J를 유도하기 위하여 식(2)를 편미분 하여 정리하면 다음과 같다.
pe pe pe
pe
X Y Z β
⎡ ⎤
⎢ ⎥
⎢ ⎥=
⎢ ⎥
⎢ ⎥
⎢ ⎥
⎣ ⎦
&
&
&
&
0 1
0 0
0 1 1 0
b b b
p p b p b b p b ps p b
p b b p b b p b ps p p
ip
c s l
c s l c c l s s l s
s s l s c l c s l s
l
ψ ψ
α α α ψ α ψ α ψ
α ψ α ψ α ψ α α
− ⎡ ⎤
⎡ ⎤
⎢ ⎥
⎢ − − ⎥⎢ ⎥
⎢ ⎥
⎢ ⎥
⎢ − ⎥⎢ ⎥
⎢ ⎥
⎢ ⎥
⎢ ⎥
⎣ ⎦ ⎣ ⎦
&
&
&
&
(3)
여기서p&= ⎣⎡X&pe Y&pe Z&pe β&pe⎤⎦T라 하고,
T
b b p ip
q&= ⎣⎡l& ψ& α& l& ⎤⎦ 라 하고,
0 1
0 0
0 1 1 0
b b
p p b p b b p b ps p
p b b p b b p b ps p
c s
c s l c c l s s l s
J s s l s c l c s l s
ψ ψ
α α α ψ α ψ α
α ψ α ψ α ψ α
⎡ − ⎤
⎢ − − ⎥
⎢ ⎥
= ⎢⎢ − ⎥⎥
⎢ ⎥
⎣ ⎦
라 하면 식(3)은 아래의 식(4)와 같으며, 직교공간과 관 절공간의 속도와 각속도 관계에 대해 표현된다.
p Jq&= & (4)
3. 동역학 모델
역진자 로봇의 구조적인 특징은 바퀴 구름운동과 역진 자가 항상 연동되어 주행이 이루어지기 때문에, 바퀴의 구름운동을 고려한 동역학 모델은 필수적으로 요구된다.
역진자 로봇의 파라미터 값은 표 1에 도시되어 있다. 그 림 2는 역진자 로봇의 동역학 모델을 도시하고 있으며, 그림 3은 좌/우측 바퀴에 대한 구름운동 모델을 제시하고 있다.
그림 3. 좌/우측 바퀴의 구름운동 모델
우측 바퀴에 작용하는 수평방향의 힘과 모멘트는 식 (4,5)와 같다.
wi Rhf Rh
m x F&&= −F (4)
w w Rwr Rhf w
I θ&& =τ −F r (5)
DC모터 동역학과 바퀴의 중심에 작용하는 토크는 다 음의 식(6,7)로 표현된다.
m R a
I d dt
τ = ω+τ (6)
m e m
wr Rd k k w k a
I V
dt R R
τ = ω=− θ& + (7)
식(7)을 식(5)에 대입하면
m e m
w w w a Rhf w
k k k
I V F r
R R
θ&& =− θ& + − (8)
이고, 식(8)을 정리하면 식(9)와 같다.
m e m w
Rhf w a w
w w w
k k k I
F V
Rr θ Rr r θ
=− & + − && (9)
식(9)를 식(4)에 대입하여 정리하면 다음의 식(10,11) 과 같다.
m e m w
wi w a w Rh
w w w
k k k I
m x V F
Rr θ Rr r θ
=− & + − && −
&& (10)
m e m w
wi w a w Lh
w w w
k k k I
m x V F
Rr θ Rr r θ
=− & + − && −
&& (11)
여기서 식(10)과 (11)를 간략히 표현하기 위하여 아래 의 식(12)적용하여 정리하면 식(13)과 같다.
w w w w
r x r x θ θ
=
=
&& &&
& &
w w
w w
x r x r θ
θ
=
=
&&
&&
&
& (12)
2
2
m e m w
wi a Rh
w w
w
m e m w
wi a Lh
w w
w
k k k I
m x x V x F
Rr r
Rr
k k k I
m x x V x F
Rr r
Rr
=− + − −
=− + − −
&& & &&
&& & && (13)
여기서 직선주행 상황을 고려하여 식(13)을 다시 표현 하면 식(14)와 같다.
( )
2 2
2 2
2 wi w m e m a Lh Rh
w w w
I k k k
m x x V F F
r Rr Rr
⎛ + ⎞ =− + − +
⎜ ⎟
⎜ ⎟
⎝ ⎠&& & (14)
역진자에 작용하는 수평방향의 힘은 식(15)와 같다.
( )
( )
2
2
cos sin
cos sin
Lh Rh p pe p p p pe p p p
Lh Rh p p pe p p p pe p p
F F m l m l m x
F F m x m l m l
α θ α α
α α α α
+ − + =
+ = + −
&& & &&
&& &
&& (15)
수직방향의 힘은 식(16,17)과 같이 표현된다.
xp p cos p
F =m x α
∑
&& (16)( )cos ( )sin
sin cos
Lh Rh p Li Ri p
p p p pe p p p
F F N N
m g m l m x
α α
α α α
+ + +
− − && = && (17)
또한 역진자에 작용하는 모멘트는 식(18)과 같으며, 반 력으로 작용하는 토크는 식(19)와 같다.
( ) ( )
( )
cos sin
Lh Rh pe p Li Ri pe p
Lwr Rwr p p
F F l N N l
I
α α
τ τ α
− + − +
− + = && (18)
2 m e 2 m
Lwr Rwr a
w
k k x k R r R V
τ +τ =− & +
(19)
식(19)를 식(18)에 대입하여 정리하면 식(20)과 같다.
( ) cos ( ) sin
2 2
Lh Rh pe p Li Ri pe p
m e m
p p a
w
F F l N N l
k k k
I x V
Rr R
α α
α
− + − + =
− +
&& & (20)
식(17)의 양변에 −lpe곱하여 정리하면
( ) ( )
2
cos sin
sin cos
Lh Rh pe p Li Ri pe p
p pe p p pe p p pe p
F F l N N l
m gl m l m l x
α α
α α α
⎡ ⎤
−⎣ + − + ⎦
+ + && = − && (21)
(a) 평지 환경 (b) 경사지면 환경 그림 4. 평지와 경사지면에서 자동 주행을 위한 역진자 인코더
값의 범위 이고, 식(20)을 식(21)에 대입하여 정리하면 다음의 식
(22)와 같다.
2 m e 2 m sin
p p a p pe p
w
k k k
I x V m gl
Rr R
α&& − &+ + α
2 cos
p pe p p pe p
m l α m l x α + && = − &&
(22)
식(15)의 (FLh+FRh)소거하기 위하여 식(15)를 식(14) 에 대입하면 아래와 같다.
2 2
2
2 2
2
cos sin
w m e m
wi a
w w w
p p pe p p p pe p p
I k k k
m x x V
r Rr Rr
m x m l α α m l α α
⎛ + ⎞ =− +
⎜ ⎟
⎜ ⎟
⎝ ⎠
− − +
&& &
&& &
&&
(23)
식(22)와(23)을 정리하면 식(24,25)와 같이 표현된다.
( )
22 2
sin
cos
m e m
p p pe p a p pe p
w w
p pe p
k k k
I m l x V m gl
Rr Rr m l x
α α
α
+ − + +
=
&& &
&&
(24)
2 2
2
2 2 2
2
cos sin
m w m e
a wi p
w w w
p pe p p p pe p p
k I k k
V m m x x
Rr r Rr
m l α α m l α α
⎛ ⎞
=⎜⎜⎝ + + ⎟⎟⎠ +
+ −
&& &
&& &
(25)
여기서 식(24,25)는 바퀴의 구름 운동을 고려한 역진자 로봇의 비선형 방정식이다. 선형화를 위하여 cosαp= −1,
2
sin p , d p 0
dt α = −φ ⎛⎜ α ⎞⎟ =
⎝ ⎠ 라 두고, 식(24,25)를 정리하면 식 (26,27)과 같다.
2
2 2
2
2
2 2
2 2
2 2 2
p pe m e
p
w w
w p w w p
w w
m a
w w w p
w
m l k k
x x
I I
m m Rr m m
r r
k V
Rr m I m
r
= − α −
⎛ ⎞ ⎛ ⎞
+ + + +
⎜ ⎟ ⎜ ⎟
⎜ ⎟ ⎜ ⎟
⎝ ⎠ ⎝ ⎠
− ⎛ ⎞
+ +
⎜ ⎟
⎜ ⎟
⎝ ⎠
&&
&& &
(26)
( ) ( )
( ) ( )
2 2
2 2
2
2
p pe m e
p
p p pe w p p pe
p pe
m a p
p p pe p p pe
m l x k k x
I m l Rr I m l
k V m gl
R I m l I m l
α
α
= +
+ +
− +
+ +
&& && &
(27)
식(26)과 식(27)를 상태공간 모델로 표현하면 식(28)과 같다.
* * * * *
* * * *
* * * *
* * * *
0 1 0 0
0 0
1 1
0 0 0 1
0 0
1 1
p p
p p
x A E B A G x
x A D A D x
E D B G
D A D A
α α
α α
⎡ ⎤
⎢ ⎥
⎡ ⎤ ⎢ − ⎥⎡ ⎤
⎢ ⎥ ⎢ − − ⎥⎢ ⎥
⎢ ⎥= ⎢ ⎥⎢ ⎥
⎢ ⎥ ⎢ ⎥⎢ ⎥
⎢ ⎥ ⎢ ⎥⎢ ⎥
⎢ ⎥ − ⎢ ⎥
⎣ ⎦ ⎢ ⎥⎣ ⎦
⎢ − − ⎥
⎣ ⎦
&
&& &
&
&& &
* * *
* *
* * *
0
1 0
1
a
A F C A D V
D C F DA
⎡ ⎤
⎢ ⎥
⎢− + ⎥
⎢ − ⎥
+ ⎢ ⎥
⎢ ⎥
⎢ + ⎥
⎢ ⎥
⎢ − ⎥
⎣ ⎦
(28)
여기서
*
2
2 2
p pe
w w p
w
A m l
m I m
r
=⎛ ⎞
+ +
⎜ ⎟
⎜ ⎟
⎝ ⎠
, D*=
(
Ipm l+p pem lp pe2)
,
* 2
2
2 2 2
m e
w w w p
w
B k k
Rr m I m
r
= ⎛ ⎞
+ +
⎜ ⎟
⎜ ⎟
⎝ ⎠
, F*=R I
(
p2+kmm lp pe2)
,
*
2
2 2 2
m
w w w p
w
C k
Rr m I m
r
= ⎛ ⎞
+ +
⎜ ⎟
⎜ ⎟
⎝ ⎠
, E*=Rr Iw
(
2pk km e+m lp pe2)
,G*=
(
Ipm gl+pm lp pepe2)
이다.
4. 주행 전략
역진자 로봇이 자동 주행을 하기 위해서는 역진자는 중심선을 기준으로 양과 음의 방향으로 기울어지게 되고, 이때 바퀴가 전/후진방향으로 구동하게 되는 물리적인 현 상에 기반을 둔 것이다. 그림 4는 평지와 경사지면에서 자동 주행을 위한 역진자 인코더 값의 범위를 나타내고 있으며, 역진자의 균형유지를 위한 인코더의 중심값(평지:
그림 5. 평지와 경사지면에서 자동 주행을 위한 제어 흐름도
그림 6. 역진자 로봇 시스템의 구성도 505, 경사지면: 523)을 기준으로 양과 음의방향으로 기울
어지는 정도에 따라 바퀴의 속도를 가/감속하여 역진자 로봇의 주행을 제어한다. 그림 4(a)에서 제시되는 역진자 인코더 값(498, 512)은 시행착오적인 방법을 통하여 양과 음의방향으로 역진자가 기울지는 정도의 범위를 파악하 기 위하여 제시되는 값으로, 중심값 505에 7을 더하거나 빼는 값으로 정의한다. 그림 4(b)에서 제시되는 역진자 인코더 값(516, 530)은 평지 환경인 그림 4(a)와 동일한 방법으로 제시되는 값이다.
그림 5는 역진자 로봇의 자동 주행을 위한 제어 흐름 도를 도시하고 있으며, 평지와 경사지면 환경의 주행 상 황을 고려하고 있다. 평지 주행의 경우 역진자가 균형을 유지하는 중심값 505보다 큰 값인 512의 값을 가지게 되 면 바퀴는 정방향 주행을 위하여 0.3m/s의 속도로 구동하 게 되고, 역진자 인코더 값이 512보다 더 큰 519의 값을 가질 경우, 바퀴는 0.5m/s의 속도로 더 빠른 구동을 하여 역진자의 균형을 유지하면서 주행하게 된다. 또한 역진자 의 중심값 505보다 작은 값인 498의 값을 가지게 되면, 바퀴는 역방향으로 0.3m/s의 속도로 구동하게 되고, 498 값 보다 더 작은 491의 값을 가질 경우, 바퀴는 0.5m/s의 속도로 더 빠른 구동을 하여 역진자의 균형을 유지하면서 주행하게 된다. 경사지면에서 자동 주행을 할 경우도 평 지 주행과 동일한 방법으로 제어되며, 역진자의 균형유지 를 위한 중심값이 523으로 평지 주행 환경과는 다른 특 징이 있다. 그림 5에서 제시하는 역진자 로봇의 주행을 위한 제어 알고리즘을 요약하면 역진자는 중심값을 기준 으로 양과 음의 방향에 대해 중심값과 가까운 범위에 있 으면 바퀴는 저속으로 구동하고, 중심값에서 먼 범위에
있으면 바퀴는 고속으로 구동하여 역진자의 균형을 유지 하면서 동시에 주행을 하게 되는 것이다.
5. 자동 주행 실험
자동 주행이 가능한 역진자 로봇 시스템의 구성도가 그림 6에 도시되어 있다. 로봇 몸체는 역진자와 4개의 바 퀴로 구성되어 있으며, 바퀴 구동용 모터는 각각의 바퀴 에 부착되어 있다. 제어기 하드웨어는 MCU(Micro controller unit), 역진자와 바퀴 인코더 연결부, 데이터 송 신부와 바퀴 구동을 위한 모터 드라이브 부분으로 구성되 어 있다.
역진자 로봇의 자동 주행을 위한 실험은 평지와 경사 지면 환경에서 각각 5m 주행 거리를 이동하며, 그림 7과
그림 7. 평지 자동 주행을 위한 실험 환경
그림 8. 경사 지면의 자동 주행을 위한 실험 환경
(a) 역진자 인코더 값
(b) 바퀴 인코더 값
그림 9. 평지 자동 주행 실험 결과 8에 각각 도시되어 있다. 또한 수평계를 사용하여 지면이
편평하다는 것과 경사면이 있다는 것을 보여주고 있다. 그림 7과 같은 환경에서의 주행 실험 결과가 그림 9에 도시되어 있으며, 그림 9의 (a)와 (b)는 각각 역진자의 인 코더 값과 바퀴의 인코더 값을 나타내고 있다. 그림 9의 가로축은 샘플링 시간이고, 세로축은 인코더 값을 의미한 다. 그림 9의 (a)에서 역진자의 중심 인코더 값은 505이 며, 양의방향 최대값은 512이고, 음의방향 최대값은 503 이다. 중심 인코더 값을 기준으로 양의방향과 음의 방향 편차 값은 각각 7과 2이다. 역진자 로봇의 특징은 4장에 서 논의한 것처럼 역진자가 기울어지게 되면, 균형 유지 를 위해 바퀴는 역진자가 기울어지는 방향으로 가속하게 되는 알고리즘을 사용하기 때문에, 양의방향 편차가 음의 방향 편차보다 크다는 것은 역진자가 양의방향으로 기울 어져 있다는 것을 의미한다. 즉, 정방향의 주행중인 상황 을 나타내고 있는 것이다. 이때 바퀴의 인코더 값을 살펴 보면, 역진자가 기울어지는 방향으로 바퀴가 구동되고 있
으며, 역진자의 양과 음의방향 최대값이 각각 512와 503 이므로 바퀴의 주행 속도는 그림 5에서 제시한 알고리즘 에 의해 0.3m/s로 주행되고 있다. 또한 역진자가 음의 최 대값을 갖는 샘플링 시간대 (250, 2000)에서 바퀴 인코더 값의 변화가 있음을 확인 할 수 있다.
평지 주행 상황에서 역진자에 외란을 가한 실험 결과 가 그림 10에 도시되어 있으며, 그림 10의 (a)와 (b)는 각 각 역진자의 인코더 값과 바퀴의 인코더 값을 나타내고 있다. 그림 10의 (a)는 로봇의 주행 방향과 반대 방향으 로 7번의 외란을 주었을 때, 역진자는 진동이 발생하고 그 이후에 균형을 유지하는 것을 보여주고 있다. 이때 바 퀴의 인코더 값을 살펴보면, 지속적으로 전진하면서 역진 자에 외란이 가해질 때마다 바퀴 속도를 의미하는 기울기 값이 변화하는 것을 볼 수 있고, 역진자가 외란을 받는 샘플링 시간대에서 역진자가 균형을 유지하기 위해 바퀴 의 구름운동이 많지 않은 것을 알 수 있다. 또한 역진자 의 기준 인코더 값은 그림 9의 (a)와 동일한 505이며, 양 과 음의방향 최대값은 각각 517과 498이고, 양과 음의방 향과 편차 값은 각각 12와 7이다. 이것은 주행 알고리즘 에 의해 역진자 인코더 값이 양과 음의방향으로 최대값
(a) 역진자 인코더 값
(b) 바퀴 인코더 값[
그림 10. 외란이 가해진 평지 자동 주행 실험 결과
(a) 역진자 인코더 값
(b) 바퀴 인코더 값 그림 11. 경사지면 자동 주행 실험 결과
(517, 498)를 갖는 샘플링 시간대(12500, 13000)에서 바 퀴 인코더 값의 급격한 변화를 확인 할 수 있으며, 바퀴 는 양과 음의방향으로 각각 0.5m/s와 0.3m/s의 속도로 구 동한다.
그림 8과 같은 경사각 지면환경에서의 주행 실험 결과 가 그림 11에 도시되어 있으며, 그림 11의 (a)와 (b)는 각 각 역진자의 인코더 값과 바퀴의 인코더 값을 나타내고 있다. 평지 주행 실험결과인 그림 9와 경사지면 주행 실 험결과인 그림 11을 비교해 보면, 역진자 인코더의 중심 값(523)과 양과 음의방향 최대값이 각각 546과 413으로 평지 주행 실험 결과값보다 더 큰 것을 확인할 수 있으며, 양과 음의방향 편차값 또한 각각 23과 10으로 크게 나타 나는 것을 볼 수 있다. 이것이 의미하는 것은 경사지면에 서 역진자 로봇이 주행을 하기 위해서는 평지에서 주행 할 때 보다 역진자가 주행 방향으로 더욱 기울어져야 한 다는 것이다. 역진자가 기울어지는 인코더의 범위가 각각 546과 413으로 크기 때문에 바퀴의 주행 속도도 0.5m/s 로 빠르게 구동하여 역진자의 균형을 유지하면서 경사지 면을 올라가게 된다.
6. 결 론
본 논문은 기존의 역진자 시스템에 자동 주행을 위한 기술을 접목한 역진자 로봇에 관한 것으로, 기존의 2차원 모바일 로봇 기구학 모델을 3차원으로 확장하여 직교좌 표 공간과 관절좌표 공간의 관계를 나타내는 자코비안을 새롭게 유도하였다. 역진자 시스템의 특성을 고려해 볼 때, 역진자와 바퀴는 항상 연동되어야 하기 때문에 바퀴 구름운동은 필수적으로 고려되어야 한다. 역진자가 갖는 불안정한 비선형 특성과 모바일 로봇의 바퀴가 갖는 nonholonomic 특성을 결합하여 역진자 로봇의 동역학 방 정식을 제시하였다. 또한 자동 주행을 위한 전략은 역진 자 인코더의 값의 범위를 설정하고 이에 따라 바퀴의 구 동속도를 설정하여 제어 알고리즘을 구성하였다. 역진자 로봇의 주행 상황에서 바퀴의 구름운동과 역진자의 연동 관계를 살펴보기 위하여 인코더가 부착된 역진자 로봇을 제작하였고, 이것을 이용하여 평지와 경사지면 환경에서 실험을 수행하였다. 실험 결과의 명확성을 위하여 역진자 와 바퀴의 인코더 값을 동일한 샘플링 시간영역에 대해
비교하여 주행 전략에 대한 검증을 수행하였다.
역진자 로봇은 지면의 평탄도에 민감하기 때문에 이를 보상하기 위한 알고리즘과 틸팅(tilting)센서를 이용한 지 면 평탄도 측정이 실시간으로 요구된다. 또한 고속으로 곡선 주행 시 발생할 수 있는 측면방향 미끄러짐(side slip) 현상에 대한 모델 제시와 이에 강인한 제어 방법에 대한 연구를 통하여 임의의 곡선궤적을 추종하는 연구를 향후에 수행 할 계획이다.
참 고 문 헌
[1] T. Takahashi, E. Nakano, Y. Mori, and K.
Takayama, “A study on the mechanism and control of omni-directional vehicle,” Proc. of RSJ/IEEE Conf. of Intelligent Robots and systems, pp.52- 59, 1996.
[2] P. F. Mur, and C. P. Neuman, “Kinematic modeling of wheeled mobile robots,” Journal of Robotic Systems, Vol.4, No.2, pp.281-340, 1987.
[3] G. Campion, G. Bsatin, and B. D’Andrea-Novel,
“Structural properties and classification of kinematic and dynamic models of wheeled mobile robots,” IEEE Trans. on Robotics and Automation, Vol.12, No.1, 1996.
[4] P. Morin and C. Samson, “Practical stabilization of Driftless systems on lie groups: The transverse function approach,” IEEE Trans. Automation and Control, Vol.48, No.9, pp.1496-1508, 2003.
[5] K. Kozlowski, and D. Pazderski, “Modeling and control of a 4-wheel skid-steering mobil robot,”
Int. J. Appl. Math. Comput. Sci., Vol.14, No.4, pp.477-496, 2004.
[6] 송재복, 김정근, “조향 가능한 전방향 바퀴를갖는 전방향 이동로봇의 에너지 효율 개선”, 제어·자동 화·시스템공학논문지, 제11권, 제8호, pp.696-703, 2005.
[7] V. D. Furasov, “Construction of controlled systems using specified estimates for the transients,”
VDC 62-50, No.1, pp.23-29, Jan., 1973.
[8] J. S. Wanf and C. S. Lee, “Self-adaptive recurrent neuro-fuzzy control of an autonomous underwater vehicle,” IEEE Trans. on Robotics and Automations, Vol.19, No.2, pp.283-295, 2003.
[9] S. Omaut, T. Fujinaka, and M. Yoshioka,” Neuro -pid control for inverted single and double pendulum,” IEEE Conf. on Systems, Man and Cybernetics, pp.8-11, 2000.
[10] Rong-Jong Wai and Li-Jung Chang, “Adaptive Stabilizing and Tracking Control for a Nonlinear Inverted-Pendulum System via Sliding-Mode Techniqe,” IEEE Trans. Industrial Electronics, Vol.53, No.2, pp.674-692, Apr., 2006.
[11] Danielle Sami Nasrallah, Hannah Michalska, and Jorge Angeless, “Controllability and Posture Control of a Wheeled Pendulum Moving on an Inclined Plane,” IEEE Trans. Robotics, Vol.23, No.3, pp.564-577, June, 2007.
[12] 윤재무, 이재경, 이장명, “모바일 역진자의 효율적 수평 유지 기법”, 제어·로봇·시스템학회논문지, 제 13권, 제7호, pp.631-636, July, 2007.
이 준 호
2000 동명대학교 로봇시스템 공학과(공학사)
2003 부산대학교 지능기계공 학과 제어 자동화 및 로 보틱스 전공(공학석사) 2010 부산대학교 전자전기공
학과 제어 및 시스템 전 공(공학박사)
2010~현재 (주)동현씨스텍 기술개발부 근무 관심분야 : 역진자 시스템, 표면 부착형 이동 로봇 시
스템
박 치 성
2009 동서대학교 전자공학과 (공학사)
2009~현재 부산대학교 전자전 기공학과 석사과정 재학중 관심분야 : 머니퓰레이터 시스
템의 강인제어
황 종 명
2007 동아대학교 전자공학과 (공학사)
2008~현재 부산대학교 전자전 기공학과 석/박사 통합과 정 재학중
관심분야 : 외바퀴 로봇, HRI (Human Robot Interac- tion), 수중 로봇
이 장 명
1980 서울대학교 전자공학과 (공학사)
1982 서울대학교 전자공학과 (공학석사)
1990 USC(미국 남가주 대학 교) 컴퓨터공학과(공학박 사)
1992~현재 부산대학교 전자전기공학과 교수 관심분야 : 지능로봇제어, 로보틱스, 비선형제어, 특
수환경 Localization 및 Navigation