沼津高専 電子制御工学科 |
MG3S 標準プログラムでの直進走行調整 |
MIRSMG3D-MG3S-0018 |
|
改訂記録 |
版数 |
作成日 |
作成者 |
承認 |
改訂内容 |
B01 |
2014/07/23 |
牛丸 |
|
初版 |
1. はじめに
本ドキュメントは MG3S 標準プログラム Ver 2 で、直進走行を正確に行うための調整法について説明する。
正確な直進走行が行えない理由は、エンコーダの値の回転に対して、左右のタイヤの円周速度およびその走行距離が異なる
ことが原因であるため、その調整を行う。
なお、直進走行の調整はバッテリーを2本とも搭載した上で行うこと。
2. test_vel_ctrl を使った直進走行時の速度値の確認
速度制御器のテストプログラム(test_vel_ctrl)を動作させて、走行させたい速度(例えば 20cm/sec)に
対して、左右に同じ速度値を与えもどちらかに曲がってしまう場合、左右で異なる速度値を与え、直進走行
する速度値を確認する。速度値は実数で与えることができる。
test_vel_ctrl で左右で同じ速度値を与えたときに、ほぼ直進すればこの調整は必要ない。
3. 左右のエンコーダ・タイヤ円周速度の調整パラメータの設定
2.で確認した速度値をもとに hardware.h の TIRE_DIST_RATIO の値を設定する。
TIRE_DIST_RATIO の計算法
【例1】 test_vel_ctrl で、左 20.0 [cm/s]、右 20.85 [cm/s]で直進した場合 → 20.85/20 = 1.0425
【例2】 test_vel_ctrl で、左 20.0 [cm/s]、右 19.2 [cm/s]で直進した場合 → 19.3/20 = 0.965
この値を #define TIRE_DIST_RATIO に記述する。
hardware.h を保存したら、make clean ; make して、プログラムをリコンパイルする。
4. 直進走行性の確認
- test_vel_ctrl で、左右同じ速度値を与えて直進走行することを確認する。
- test_run_ctrl で、直進モードを選択し、正確な直進走行が出来るかを確認する。