目次

ライントレースマシンに挑戦(その4)

 ライントレースマシンのインタフェース回路を、より
 簡素化できないのかを考えて欲しいと依頼されたので
 次のように回路を構成し直しました。



 IN2に距離センサーを接続し、それ以外はフォトリフレクタからの
 情報を入力。フォトリフレクタは、床にあるライン検知に利用。

 IN1、IN3、IN4を組み合わせると、8通りのパターンを
 判定して走行できるようになります。

 モータドライブ回路とセンサーおよびIchigoJamの電源用
 電池は別々に用意して接続。逆挿し防止に、ダイオードを
 入れる。

 モータドライブ回路にあるTA7291は、論理レベルの'1'を
 3.5V以上にしなければならないため、74HC08によるレベル
 のシフトを入れて対応。

 OUT2からOUT5は、PWM波形を出力できるので、OUT1、OUT6を
 他の用途に振り分けました。

 2LEDにOUT1、OUT6を接続し、前進、右回転、左回転を
 点灯状態の組み合せで表示すると、わかりやすいだろう
 と判断。

 ボタンは、IchigoJamの基板上にありますが、インタフェース
 基板をジャックインすると隠れてしまうので、この基板上へと
 実装しておきます。

 OUT1、OUT6に接続したLEDの動作テストは、以下のコードを利用。

10 ' test two LED
20 FOR J=0 TO 1:FOR I=0 TO 1
30   ? I,J:OUT 1,I:OUT 6,J:WAIT 10
40 NEXT:NEXT
50 GOTO 20
60 END

 距離センサーの動作テストは、数値を表示すればよいと考えます。

10 ' test PDS
20 LET A,ANA(2)
30 ? A
40 WAIT 60
50 GOTO 20
60 END

 MicomCarRallyでは、次のようなスタートゲートを
 使うので、ゲート開閉検出に距離センサーを利用
 することになります。



 モータドライバは、次のようにHブリッジを動かすことを
 考えればよいでしょう。

10 ' test motor driver
20 FOR J=0 TO 1:FOR I=0 TO 1
30   ? I,J:WAIT 600
40   OUT 2,I:OUT 3,J:OUT 4,I:OUT 5,J
50 NEXT:NEXT
60 FOR I=2 TO 5:OUT I,0:NEXT
70 GOTO 20
80 END

 ラベル利用で、次のようにも書けます。

10 ' test motor driver
20 @LOOP
30 FOR J=0 TO 1:FOR I=0 TO 1
40   ? I,J:WAIT 600
50   OUT 2,I:OUT 3,J:OUT 4,I:OUT 5,J
60 NEXT:NEXT
70 FOR I=2 TO 5:OUT I,0:NEXT
80 GOTO @LOOP
90 END

 フォトリフレクタの感度調整は、次のプログラムを使えば
 簡単になります。

10 ' test photo refrecter
20 LET [0],IN(1),IN(3),IN(4)
30 ? [0],[1],[2]
40 WAIT 120
50 GOTO 20
60 END

 ラベル利用で、次のようにも書けます。

10 ' test photo refrecter
20 @LOOP
30 LET [0],IN(1),IN(3),IN(4)
40 ? [0],[1],[2]
50 WAIT 120
60 GOTO @LOOP
70 END


目次

inserted by FC2 system