スライド 1

PICライントレーサー
2008E02
~目標~
確実にゴールできるプログラムを作成する
読みやすいプログラムの作成
各道ごとに専用の処理を行なう
プログラムの工夫
void Road1(void){
…
}
各道ごとに専用の関数
プログラムが読みやすく
デバッグしやすい
+
決められた道で
確実にゴールできる
void Road2(void){
…
}
…
main(){
…
Road1();
Road2();
…
}
~例~
今回プログラムした道は右図の通り
右後ろのセンサーが反応するときは
曲がる場所のみ
右後ろのセンサーが反応するまでは
曲がらない
~結果~
プログラムした通りの道でゴールまで到達し
パフォーマンスまで完了
目標達成!
実際には「確実」ではない・・・
車体によっては予期せぬ動作をする
別の方向へ曲がってしまう
~解決案~
1.モーターの左右の速さの違いが原因
片方のモーターのみで曲がる
2.センサーからの誤入力が原因
さらに細かく条件を指定する
より確実なゴールへ