2016年10月13日木曜日

16.10.13 またもやうろうろ歩き


格子状の道をうろうろ歩きまわる2輪車をまたもや復活。以前は交差点でいったん止まり、その場で90度回転していたが、今回は止まらずに90度方向を変えるようにしてみた。


レゴのモーターを使い、できるだけコンパクトなボディを作った。飾り気は全くない。サイズを優先したため、歯車の組み合わせが限定され、速度はかなり遅い。倒れないように後ろ側だけタミヤのボールキャスターを付けた。


センサーは反射型のフォトインタラプタを2ヶ使う。車輪の少し前の位置に道路の幅より少し外側になるように取り付けた。交差点を検出したときの車輪の位置が重要なので、センサーの前後の位置は試行錯誤で決定した。


基板は以前3輪車用に作ったものを使う。CPUは16bitのPIC24FV32KA301。モータードライバはロームのBD6211を2ヶ実装してある。PWMのチャンネル数が少ないので、PWMの出力をコンデンサに充電してPWMの幅で電圧が変化するようにし、これをBD6211のVREF端子に接続してモーターの回転数を制御している。


ライントレースは、左右のセンサーの値の差が0になるように制御する。一応PID制御でやっているが積分の項は使っていない。両側のセンサーが暗くなったら交差点と判断し、次に進む方向をランダムに決定する。右回転する場合は右側の車輪にブレーキをかけ、左側の車輪を回転させる。右のセンサーが明るくなったら回転終了。スピードが遅いせいもあり、ライントレースや回転でコースを外れることはほとんんどない。

0 件のコメント:

コメントを投稿