こんにちは。
本日は迷路を作って走らせてみました。
ところが、壁が切れてるところに近づくとそっちに曲がりながら走ってしまいました。
Pi:Co Classic2は壁との距離をみて迷路の真ん中を走るようになっています。
LEDの光はピンポイントというよりは範囲がある感じなので切れ目に光が差し掛かると
センサの受光量が減ってしまい、壁が遠いと認識してしまいます。
そのため、切れ目があるほうに曲がってしまうのです。
そこでTera Termを開きセンサーの値が下がり始めてから下がり終わるまでの距離と
上がり始めてから上がり終わる距離を測定し、そこの間はただまっすぐ走るようにプログラムを追加しました。
while( (len - STEP2LEN(step_r + step_l) ) > ( ((speed*speed) - (tar_speed*tar_speed)) / (2*1000*accel) )){ if(STEP2LEN(step_r + step_l)<20){ con_wall.enable = false; //壁制御を無効にする }else{ con_wall.enable = true; //壁制御を有効にする } }
センサーの値が下がり始めてから下がり終わるまでの距離と上がり始めてから上がり終わる距離はどちらも20mmでした。
追加したプログラムをコンパイル、インストールして走行させると・・・
曲がらず走りました!
まだ前のセンサーを調整していないのでガツガツぶつかってしまっているので
明日は前のセンサーの調整をする予定です。
最後に本日のオフショットです。