자전거로봇의 균형제어 및 주행
Balancing and Driving Control of a Bicycle Robot
이 석 인, 이 인 욱, 김 민 성, 하 혁, 이 장 명*
(Sukin Lee
1, Inwook Lee
1, Minsung Kim
1, He He
1, and Jangmyung Lee
1)
1
Pusan National University
Abstract: This paper proposes a balancing and driving control system for a bicycle robot. A reaction wheel pendulum control method is adopted to maintain the balance while the bicycle robot is driving. For the driving control, PID control algorithm with a variable gain adjustment has been developed in this paper, where the gains are heuristically adjusted during the experiments. To measure the angles of the wheels the encoders are used. For the balancing control, a roll controller is designed with a non-model based algorithm to make the shortest cycle. The tilt angle is measured by the fusion of the acceleration and gyroscope sensors, which is used to generate the control input of the roll controller to make the tilt angle zero. The performance of the designed control system has been verified through the real experiments with the developed bicycle robot.
Keywords: bicycle robot, balancing control, reaction wheel pendulum, PID control
I. 서론
최근 로봇 기술의 발전에 따라 모바일 로봇에 관한 연구도 활발히 이루어 지고 있다. 그 중 무인 주행로봇은 자율기법 을 통해 사람이 접근할 수 없는 특수 환경으로의 이동, 감시 및 정찰 등에 다방면으로 활용 되고 있다. 이러한 무인 주행 시스템의 대부분은 4륜 및 6륜을 기반으로 개발되었다. 이러 한 로봇은 운영부분에 있어 에너지의 효율적 사용과 특수한 환경 요소인 좁은 공간에서의 이동 및 회전 등의 필요성을 만족하지 못하는 경우가 있다. 이러한 문제점을 극복하기 위 하여 2륜 주행 시스템에 대한 많은 연구가 진행되어 왔다. 2 륜 시스템은 좁은 공간에서의 이동 시 4륜 주행 시스템이 가 지고 있는 문제점을 해결할 수 있지만 구조적 특성에 따라 많은 불안정성을 가지게 된다. 특히 자전거형태의 2륜 로봇 은 2개의 Wheel이 로봇몸체의 방향과 수평으로 위치하고 있 어 안정된 자세를 위한 Roll 제어가 필요하다. 최근 이러한 자전거로봇의 안정된 자세와 주행을 개선하기 위하여 많은 제어방법들이 제시되었다[1-12]. Front Wheel의 각도를 이용하 여 제어하는 방법[1-6], 무게중심을 이동시켜 제어하는 방법 [10], Gyroscope 를 사용한 방법[11,12], Reaction Wheel Pendulum 을 이용한 방법[7] 등이 있다. 하지만 이러한 제어방법에는 복잡한 모델링과 수식을 필요로 한다. 본 논문에서는 복잡한 수식 없이 간략하게 제어하기 위하여 비모델 기반의 제어기 를 제시한다. 또한 균형제어와 동시에 자전거로봇의 주행성 능에 대해서도 다룬다.
본 논문에서 사용하는 자전거로봇의 Roll 제어는 Reaction Wheel Pendulum 을 사용한다[13,14]. Reaction Wheel Pendulum은
로봇이 기울어지는 방향으로 Disk를 회전시켜 순간적인 가속 을 발생시키고, Disk의 관성과 회전의 반작용으로 로봇 몸체 가 회전방향의 반대방향으로 기울어 지게 되는 힘을 이용한 다. 자전거로봇의 Roll 제어에 사용된 제어기의 입력은 로봇 몸체의 각도이다. 로봇 몸체의 각도는 가속도 센서와 자이로 센서의 퓨전을 통하여 구해진다. 자전거로봇은 Disk 회전을 위한 DC 모터와 주행을 위한 DC 모터, 방향전환을 위한 서 보모터가 사용되었다.
본 논문은 II 장에서 실험에서 사용된 부품과 로봇의 구성 에 대하여 설명한다. III 장에서는 로봇의 Roll을 제어하기 위 한 제어기와 동작에 대하여 설명한다. IV 장에서는 설계된 제 어기를 통한 자전거로봇의 Roll 제어 성능과 주행성능에 대 하여 설명하고 V 장에서 결론을 맺도록 구성된다.
II. 로봇의 구성
설계된 자전거로봇은 그림 1과 같다. 로봇은 Disk를 회전 하기 위한 DC 모터, 주행을 위한 DC 모터, 로봇의 방향을 제어하기 위한 서보모터로 구성된다.
그림 1. 실제 자전거 로봇.
Fig. 1. Designed bicycle robot.
Copyright© ICROS 2012
* 책임저자(Corresponding Author)
논문접수: 2012. 2. 20., 수정: 2012. 5. 12., 채택확정: 2012. 5. 15.
이석인, 이인욱, 김민성, 하 혁, 이장명: 부산대학교 전자전기공학부 ([email protected]/[email protected]/[email protected]/hvell [email protected]/[email protected])
※ 본 연구는 교육부 학술연구조성비(기계공학 ME123-1234-12)에 의
하여 연구되었음.
표 1. 자전거로봇에 사용된 부품.
Table 1. Parts used in the bicycle robot.
제조사 품명
Wheel 루카테크닉스 Xaris Wheel 105mm
MCU TI LM3S8962
서보모터 Hitec HSR-5995TG
Roll 제어 DC모터 D&J IG-42GM 01TYPE 1/4 주행용 DC모터 D&J RA20GM 03TYPE 1/52
모터드라이브 NTREX NT-DC20A
Roll 센서 NTREX NT-ARS V1
Yaw 센서 이투박스 EBIMU-9DOF
블루투스 모듈 COMFILE ACODE-300
배터리 애니알씨 11.1V-LiPo-Battery 로봇몸체의 각도를 얻기 위해 관성센서는 로봇 몸체의 중 앙에 위치하게 된다. 중앙은 로봇의 Roll 축을 따라 설정하며 NT-ARS 센서 위에 EBIMU 센서를 부착하였다. 이때, NT- ARS 센서는 Roll축 각도를 얻는데 사용하며, EBIMU 센서는 Yaw 축의 각도를 얻는데 사용한다. Disk는 Roll 축 중앙에 위 치하며 무게는 765 g이다. 로봇 전체의 무게는 2,720 g이며, 이중 Disk 회전을 위한 DC 모터의 무게는 630 g이다. 로봇에 사용된 부품은 표 1과 같다.
1. 시스템 구성
전체 시스템은 MCU를 중심으로 구성되며 그림 2와 같다.
MCU 는 설계된 제어기에 따라 10 ms의 주기로 모든 모터에 대한 PWM 제어신호를 출력한다. 또한 블루투스 모듈은 PC 로부터 주행제어 데이터를 무선으로 수신하여 UART 통신을 통해 MCU에 전달한다.
각 축의 기울기 값은 CAN 통신과 UART를 통하여 전송된 다. NT-ARS는 CAN 통신을 통하여 10 ms의 주기로 데이터를 전송하며, Roll 축 각도 값을 얻는데 사용한다. EBIMU는 UART 통신을 이용하여 10 ms의 주기로 데이터를 전송하며, Yaw 축의 각도 값을 얻는데 사용한다. 이때, 각 센서의 각도 값은 자이로 센서와 가속도 센서를 융합한 데이터이다. 각도 데이터는 절대값이 아닌 상대적인 값이므로 사용시 0도 지 점을 설정하여 사용한다. 로봇의 각도정의는 그림 3과 같으 며, Yaw축의 각도는 III 장에서 설명하도록 한다.
(a)
(b)
그림 3. (a) Roll 축 각도 정의 (b) 서보모터의 각도 정의.
Fig. 3. (a) Definition of the Roll angle (b) Definition of the angle of servo.
2. Roll 제어 구성
Roll 축의 Disk를 제어하기 위하여 인코더가 부착된 DC 모 터를 사용한다. 인코더는 모터 축 1회전당 서로 다른 위상의 구형파 19펄스가 출력되며 Roll 제어에 사용된 DC 모터의 최대 구동전압은 11.1V Li-Po 배터리의 전압이다. 모터는 H- bridge 형 모터드라이브 모듈을 사용하여 구동한다. 모터의 입 력신호는 PWM이며, 펄스의 폭에 따라 모터의 토크와 회전 속도가 변하게 된다. 이때 모터에 인가되는 PWM 신호는 MCU 에서 모터드라이브 모듈을 거친 PWM 신호이다.
3. 주행제어 구성
자전거로봇은 Rear Wheel을 회전시켜 주행을 제어한다.
Rear Wheel 을 회전시키기 위하여 인코더가 부착된 DC 모터 를 사용하며 인코더는 모터 축 1회전당 서로 다른 위상의 구 형파 3펄스가 출력된다. 모터의 동작방식은 Disk 회전 모터 와 동일하다.
로봇의 방향전환은 서보모터를 사용한다. 서보모터는 Front Wheel 에 직접 연결되어 Wheel의 각도를 제어한다. 주행중인 로봇의 방향은 Wheel의 각도에 따라 제어되며, 서보모터는 PWM 신호의 펄스폭에 따라 정해진 각도를 유지한다. 서보 모터의 전원은 5 V 전원을 사용한다.
III. 제어기 설계
자전거 로봇의 Roll 제어와 속도제어 및 주행제어는 개별 적으로 제어한다. 각각의 제어기는 관성센서와 인코더를 이 용한다.
그림 2. 전체 시스템.
Fig. 2. Overall system.
1. Roll 제어기
설계된 Roll 제어기의 구조는 그림 4와 같다. 여기서 θ는 로봇몸체의 각도이며, ψ
D는 Disk의 회전각을 의미한다.
제어기의 입력은 로봇 몸체의 기울기를 사용하며, 로봇의 중심은 0도이다. Roll 제어기 내부의 PID항은 로봇의 몸체를 0 도로 맞추기 위한 제어신호를 출력한다. 이때 제어에 필요 한 토크는 관성모멘트와 각가속도의 곱으로써[15] 제어기에 서 똑같은 출력을 내더라도 Disk의 회전 상태에 따라 발생되 는 토크는 다양하게 나타나게 되어 로봇은 다른 반응을 보이 게 된다. Reaction Wheel [13]의 이러한 특성은 이상적인 PID 제어환경에서는 충분한 제어가 가능하지만 본 시스템과 같 이 일정한 주기로 동작하는 이산 시스템에서는 제어가 어렵 다. 이러한 시스템의 특성을 보상해주기 위하여 모터에 부착 된 인코더를 이용하여 ψ
D' 값을 피드백 하였다. ψ
D' 항은 K1 이득을 통해 PID 제어기의 출력에 더해지며 실제 실험을 통하여 제어성능을 확인하였다.
로봇의 중심으로 설정한 0도가 실제 로봇의 무게 중심점 이 아닐 경우 로봇은 무게 중심점에서 기울어진 상태를 유지 하기 위해 지속적인 가속을 필요로 하게 된다. 이 때 시간이 지날수록 Disk의 회전속도는 무한히 증가해야 한다. 하지만 실제 로봇은 모터가 출력할 수 있는 가속에 한계가 있으므로 한계에 이르면 균형을 잃게 된다. 이러한 문제를 보상하기 위해 ψ
D' 항을 K2 이득을 거쳐 error 값으로 피드백 하였다.
Disk 회전의 증가는 출력 값이 아닌 에러 값을 증가시키므로 전체의 출력을 증가시키는 효과가 있다. 입력 보다 더 큰 출 력은 증가하는 Disk의 속도를 줄일 수 있게 된다. 이러한 결 과는 실험을 통하여 확인하였으며 본 논문의 IV 장에서 설명 하도록 한다.
2. 속도 제어기
설계된 자전거로봇의 속도 제어기는 그림 5와 같다. ψ
R은 Rear Wheel의 회전각을 의미한다. 속도를 제어하기 위해
R
'
ψ 을 피드백 받는다.
주행용 DC 모터의 인코더는 분해능이 낮아 미분 항이 들
어갈 경우 Rear Wheel이 심하게 떨리게 된다. 이러한 진동을 줄이기 위하여 자전거 로봇의 속도 제어는 미분 항을 제외한 PI 제어기를 사용하였다.
PI 제어기는 오차에 이득이 곱해진 비례항과 오차를 적분 한 항에 이득이 곱해진 적분 항으로 이루어져 있으며, 비례 항은 제어기의 반응속도를 올려주지만 오버슈트가 발생하는 특성이 있고, 적분 항은 정상상태 오차가 줄어들지만 정착시 간이 길어지는 특성이 있다[15,16]. 이와 같은 특성을 조절하 여 자전거 로봇의 속도를 제어한다.
본 논문에서 사용된 제어기의 모든 제어이득은 실험을 통 해서 결정하였으며, 그 값은 표 2와 같다.
3. 자전거 로봇의 주행제어
자전거 로봇은 구조적 특성상 현재 위치에서 로봇의 방향 을 바로 변경할 수 없으므로 간략한 모델을 통해 현재 위치 를 구하고, 목표 위치까지의 직선거리를 구하여 목표점에 도 달하기 위한 조향 각을 제어한다. 자전거 로봇의 위치를 구 하기 위한 모델은 그림 6과 같다. 이때, 로봇의 위치는 로봇 의 시작점을 기준으로 한 상대 위치이다.
자전거 모델에서 로봇의 좌표는 Rear Wheel의 중심점을 기 준으로 한다. φ
r은 x축을 기준으로 한 자전거 몸체의 Yaw 각도 이며 φ 는 서보모터의 각도 이다. L 은 바퀴 각각의
f중심축간의 거리이며 실제 값은 317 mm 이다. R 은 바퀴의 지름이며 105 mm 이다.
r f
,
r fR = R ω = ω (1)
식 (1)과 같이 바퀴의 각속도가 같다고 하면, 다음과 같은 식을 얻을 수 있다.
( )
r r( )cos ( )
rx t = R ω t φ t (2)
( )
r r( )sin ( )
ry t = R ω t φ t (3)
( ) ( / ) ( )tan ( )
r
t R L
f rt
ft
φ = ω φ (4)
본 논문에서는 로봇을 목적지점으로 이동시키기 위하여 현재 위치와 목적지점과의 직선거리를 구하고 로봇의 진행 방향과 직선거리와의 각도차이를 서보모터의 제어입력으로 사용한다. 각도 정의는 그림 7과 같다.
그림 6. 주행을 위한 자전거 로봇 모델.
Fig. 6. Model of the Bicycle robot for driving.
그림 4. Roll 제어 구조.
Fig. 4. Roll control structure.
그림 5. 속도 제어 구조.
Fig. 5. Velocity control structure.
그림 7. 조향 제어를 위한 각도 정의.
Fig. 7. Definition of the angle for the heading control.
이때, 목적지점과 로봇위치의 차를 각각 x t
err( ), y t
err( ) 라 정의하며 그 값은 식 (5)와 같다.
( ) ( ) ( ) ( ) ( ) ( )
err d
err d
x t x t x t y t y t y t
= −
= − (5)
로봇의 현재위치에서 목적지점까지 직선의 각도 φ
d는 y축 을 기준으로 설정하며 그 값은 식 (6)과 같다. φ 의 값은 x축
r을 기준으로 한 ±180도를 사용한다.
( ) arctan( ( ) / ( ))
d
t x t y t
err errφ = (6)
φ
i값은 φ
d와 φ
r의 값을 이용하여 계산한다. 이때 y
d의 값이 y 값보다 작을 경우 φ 값은 y
d− 축을 기준으로 계산하 므로 φ
i값은 y
err의 값이 양수일 때와 음수일 때를 나누어 서 적용한다. 계산 방법은 다음 식 (7)과 같다.
( ) ( ) ( ) 90, y 0 ( ) ( ) ( ) 90, y 0
i d r err
i d r err
t t t
t t t
φ φ φ
φ φ φ
= + − ≥
= + + < (7)
위의 과정을 통해 얻어진 φ 값은 이득 K 를 거쳐 서보모
i터의 각도로 입력되게 된다. 이때 자전거로봇이 안정하게 균 형을 제어할 수 있기 위해 각도의 범위를 40 ± 도 안으로 각 도 값을 제한한다. 조향각 φ 의 값은 다음 식 (8)과 같다.
f( ) ( ) , -40 ( ) 40
f
t
it K
ft
φ = φ × ° ≤ φ ≤ ° (8)
IV. 실험 및 결과
본 장에서는 설계된 자전거로봇의 균형제어와 주행제어를 각각 실험을 통하여 성능을 확인한다. 이때 제어기의 제어 이득상수는 실험을 통하여 결정하였다. 모든 실험은 평평한 바닥을 기준으로 실험되었으며, 바닥의 미끌림은 거의 없는 상태이다. 또한 배터리는 항상 11.1 V 이상 충전된 상태에서 실험하였다.
1. Roll 제어 실험
자전거 로봇의 균형제어시 Roll 각도 변화는 그림 8과 같 다. 이때 로봇의 중심각도인 0도 값은 직접 설정해야 되므로 손으로 로봇의 균형을 잡았을 때의 값을 설정한다. 처음 구
간은 로봇을 손으로 세운 상태에서 시작하므로, 다소 각도 변화가 크다. 하지만 점차 시간이 지날수록 로봇은 안정되며 0 도에 수렴하려는 것을 확인할 수 있다. 균형 제어시 자전거 로봇은 대부분 ± 1도 내에서 안정된다.
그림 9는 자전거 로봇의 중심 각도를 +3도 정도 고의적으 로 오프셋을 주었을 경우의 각도 변화이다.
로봇의 중심에서 +3도 기울인 상태에서 균형을 잡는 것과 동일함으로 자전거 로봇이 전체적으로 +방향으로 기울어진 것을 확인할 수 있다. 로봇의 중심이 균형상태가 아닌 상태 로 설정되어 있을 경우에도 제어기의 ψ 항과 K2 이득에
D' 의해 균형제어가 가능하다. 이때 로봇의 진동은 증가하며 오 프셋의 값이 클수록 불안정하거나 제어불능 상태가 된다.
그림 10은 ψ
D' 항과 K2 이득이 없을 경우 로봇의 상태이 다. 초기 자전거 로봇의 중심각도에 +3도 를 추가하였다. 로 봇은 추가된 입력 값에 의해 실제 로봇의 중심이 아닌 각도 를 유지하려 한다. 이때 전체적인 Disk의 속도는 점차적으로 증가한다. 이는 그림 10의 Disk 속도 그래프를 통하여 확인 할 수 있다. 증가하는 Disk의 속도에 따라 제어입력 또한 증 가한다. 이후 Roll 제어기는 ψ
D' 항과 K1 항에 의해 더 큰
0 2 4 6 8 10 12 14 16 18 20
-1.5 -1 -0.5 0 0.5 1 1.5 2
sec
θ
Roll angle
그림 8. 균형제어시 Roll 각도.
Fig. 8. Balanced roll angle.
0 2 4 6 8 10 12 14 16 18 20
-3 -2 -1 0 1 2 3 4
sec
θ
Roll angle
그림 9. 오프셋이 추가된 Roll 각도.
Fig. 9. Roll angle added offset.
제어입력을 출력하려 한다. 이때 순간적인 제어입력의 변화 혹은 시스템 출력의 한계로 인해 로봇의 몸체는 진동하거나 제어가 불가능하게 되며, 이는 로봇을 더욱 불안정하게 만들 어 결국 로봇은 넘어지게 된다.
2. 속도 제어 실험
자전거 로봇의 속도 제어 성능을 확인하기 위해 단위계단 함수 입력과 등가속, 등속, 등감속 운동을 실험하였다. 실험 에 사용한 RearWheel 인코더의 분해능이 낮아 결과 데이터에 많은 노이즈 성분이 발생하게 된다. 이러한 노이즈를 제거하 기 위해 결과 데이터에는 이동평균필터를 적용하였다. 다음 그림 11은 단위계단 입력에 대한 결과 데이터이다.
실선은 모터에 부착된 인코더의 속도 데이터에 이동평균 필터를 적용한 값이다. 로봇의 속도는 설계된 제어기에 의해 입력을 따라가는 것을 확인 할 수 있다. 이때 단위계단 입력 에 대한 오차특성은 그림 12와 같다.
자전거 로봇은 단위계단 입력에 대해 오차가 약 0.5 초 후 에 최소화 되는 것을 확인 할 수 있다. 이때 오차는 약 ± 25 mm/s 의 진동이 발생한다.
그림 13은 로봇의 등가속, 등속, 등감속 주행 실험 결과이다.
점선은 입력 데이터이고, 실선은 모터에 부착된 인코더의
속도 데이터에 이동평균필터[18]를 적용한 값이다. 자전거 로 봇이 입력에 따라 속도를 제어하는 것을 확인할 수 있다. 이 때 속도 궤적에 추종 따른 오차는 그림 14와 같다.
0 2 4 6 8 10 12 14 16 18 20
-30 -25 -20 -15 -10 -5 0 5 10 15 20
sec RPS θ
Disk velocity Roll angle
그림 10. Disk속도와 로봇의 각도변화.
Fig. 10. Disk velocity and angle change of robot.
0 1 2 3 4 5 6 7
0 50 100 150 200 250 300
Velocity(mm/s)
sec
Encoder Data Input Data
그림 11. 단위계단 입력 응답 특성.
Fig. 11. Characteristics of the step-function input.
0 1 2 3 4 5 6 7
-50 0 50 100 150 200 250
sec
Velocity Error(mm/s)
Error Data
그림 12. 단위계단 입력 오차 데이터.
Fig. 12. Error data of the step-function input.
0 5 10 15
0 50 100 150 200 250 300 350
sec
Velocity(mm/s)
Encoder Data Input Data
그림 13. 등가속-등속-등감속 운동특성.
Fig. 13. Motion characteristics of constant acceleration, velocity, and deceleration.
0 5 10 15
-50 0 50 100 150 200 250 300 350
sec
Velocity Error(mm/s)
Error Data Input Data
그림 14. 등가속-등속-등감속 운동에 따른 오차.
Fig. 14. Error data of constant acceleration, velocity, and
deceleration.
등가속 구간에서의 오차 데이터는 약 1초 후에 안정화 되 지만 20 mm/s에 근사한 정상상태 오차를 가지며, 등속구간에 서는 약 ± 40 mm/s의 오차 진동을 확인할 수 있다. 등감속 구 간에서는 등가속 구간과 반대로 약 -20 mm/s 정도의 정상상 태 오차를 가진다.
3. 주행 제어 실험
자전거 로봇의 주행 제어 성능을 확인하기 위해 S-곡선을 입력하였다. S-곡선의 입력은 PC를 통해 따로 제작한 C#프로 그램을 사용하였다. 입력신호는 블루투스 모듈을 통해 무선 으로 송수신되며, 현재 로봇의 위치를 전송 받아 다음 위치 를 전송하는 방식을 사용하였다. 그림 15는 실제 자전거 로 봇의 주행 데이터 이다.
(500,0) 지점은 로봇이 시작하는 위치이며 각각의 입력은 시작점을 기준으로 한 상대적인 위치이다. 실선은 로봇에게 이동을 지시하는 좌표를 의미하며 점선은 실제 로봇에서 이 동하면서 계산한 좌표를 의미한다. 그림 16은 곡선 부분을 확대한 그래프이다.
그림 16을 통하여 커브 주행시 10 mm 이내의 오차를 가지 는 것을 확인할 수 있다. 조향을 제어하는 서보모터의 입력 은 피드백이 없는 Open-Loop 시스템이므로 오차를 최소화하 기 위해 몸체의 각도는 계산된 값이 아닌 부착된 Yaw 센서 를 통해 측정된 값을 사용하였다. 자전거 로봇은 측정된 Yaw
축 각도와 인코더 데이터를 이용하여 현재 위치를 계산한다.
주행은 3.3절에서 제시한 제어 방법을 사용하였다. 본 실험을 통하여 출력된 데이터는 매우 작은 오차를 가지나, 자이로센 서를 사용하는 Yaw 축 센서의 드리프트 오차 혹은 각도 측 정 오차에 의해 실제 주행위치와의 오차가 존재한다.
그림 17은 로봇이 이동 할 수 없는 범위이다. 점선은 서보 모터의 각이 40°일 때의 원이며, 실선은 -40°일 때의 원이다.
본 논문에서 제안한 주행 기법은 후진동작을 사용하지 않는 다. 또한 균형제어의 안정을 위해 서보모터의 최대 각을
± 40° 로 제한하고 있으므로 현재 로봇의 위치를 (0,0)으로 하 였을 때, 위의 원안에 입력이 들어올 경우 목표지점까지의 이동은 불가능하다.
그림 18은 시간에 따른 X-축 입력과 로봇의 이동 좌표이 다. 목표지점 입력 후 로봇이 좌표를 따라 이동하며, 로봇이 목표지점 근처에 도착하였을 때, 새로운 목표지점이 입력되 는 것을 확인할 수 있다. 다음은 실제 로봇의 주행 장면과 균형제어 장면이다.
그림 19의 로봇 시작점은 (500,0)으로 그림 15의 그래프상 의 실제 실험 장면이다. 로봇의 위치는 Rear Wheel을 기준으 로 하며 바닥의 금선간격은 1 m이다. 센서 및 인코더의 오차 에 의해 데이터상의 오차와는 차이가 있지만 최종 도착지점 을 보았을 때 바닥의 금선과 데이터의 (-500,5000) 지점과 거 의 흡사한 것을 확인할 수 있다. 그림 20은 균형제어시의 로 봇 사진이다.
-6000 -400 -200 0 200 400 600
1000 2000 3000 4000 5000
X(mm)
Y(mm)
Robot X,Y Input X,Y
그림 15. 입력과 자전거 로봇의 위치.
Fig. 15. Input and location of Bicycle Robot.
485 490 495 500 505 510 515
3260 3280 3300 3320 3340 3360 3380 3400
X(mm)
Y(mm)
Robot X,Y Input X,Y
그림 16. 입력과 로봇의 위치 오차.
Fig. 16. Location error between input and Bicycle Robot.
-800 -600 -400 -200 0 200 400 600 800
-400 -200 0 200 400
X-Axis(mm)
Y-Axis(mm)
40º -40º
그림 17. 자전거 로봇의 이동 불가능한 지역.
Fig. 17. The impossible moving range of Bicycle Robot.
0 5 10 15 20 25 30 35 40
-600 -400 -200 0 200 400 600
sec
X(mm)
Robot X Input X