#contents
* ロボットの説明 [#h4441f0b]
黒い線の進行方向向かって左側の境界を走行する。ボールはアームではさみこみゴールまで運ぶ。最初のT字路を右折、次の交差点を直進し、A→Cの最短ルートを走行する。
#ref(./デカルト座標.jpg,50%)
#ref(./全体図.jpg,80%)
* プログラムの説明 [#g0ea3610]
赤外線センサーを用い、入射した赤外線の反射強度を取得することにより、ロボットが黒い線のどの辺を走行しているか判断する。
ロボットはコース上を、
1)線の外側
2)線の境界上
3)線の上
の三種類として認識する。進行方向向かって左側の境界上を移動させるので、ロボットの場所によりそれぞれ
1)右にシフト
2)直進
3)左にシフト
しながら進んでいく。基本的にはwhileループで1[ms]ごとにセンサーの値を取得し、上記の動作を繰り返す。T字路、交差点、ゴール地点では上記の動作とは別の専用のタスクを割り込ませる。
センサーの値は0から100の整数値で与えられる。数値が大きいほど反射強度が高い。
以下にプログラムの詳細を記述する。

* 問題点 [#ae718112]
-メインコンピューターの電池残量による動作の違い
-ペンの上げ下げの際に、余計な線が残る
#ref(./mondai.jpg,80%)
* 改善案 [#sa31ea59]
ペンの上げ下げについては、円運動ではなくxy平面に垂直な運動に変更すればよい。
電池残量による動作の違いは、サーボモータの制御を動作時間による指定から、動作角度の指定にすることにより少しは改善したが、やはり電池残量によって動作角度が違ってしまいプログラムに修正が必要であった。

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS