センサはフォトインタラプタを2個使用します。 フォトインタラプタは、右のような形状をしており、 U字型の間を何かがさえぎると、出力信号が変化する素子です。 (注:フォトインタラプタには、反射型のものもあり、形状も異なります。) ここではシャープのGP1A20という素子を使用しました。 選択理由は、秋月電子にそれしかなかったからです。(笑) |
|
カバー付 | |
このフォトインタラプタを2つ並列に並べます。 通常は1を出力し、さえぎられると0を出力するとします。 |
|
今、障害物が左から右へ通過すると、 出力はそれぞれ次のように変化していきます。 (1、1)−(0、1)−(0、0)−(1、0)−(1、1) |
|
逆に右から左へ通過すると、次のように変化していきます。 (1、1)−(1、0)−(0、0)−(0、1)−(1、1) |
|
ここで、(0、0)の次の状態に着目すると、(1、0)だったら左から右、 (0、1)だったら右から左と識別することができます。 回路はこうなります。 当初フォトインタラプタの出力をそのまま取り出して、ソフトウェアだけで処理する予定でしたが、API関数の利用では速度が追いつかなかったので、ワンショットパルス回路を追加して補いました。 1回転検出で数10msecのパルスが発生します。 前作では、1回1回のカウントアップはワンチップマイコンが行なっており、パソコンの負担は軽かったのですが、本作では処理を専念させないとミスカウントを起こすかもしれません。 |
|
|
製作例 | ユニットのセンサ部分 |
後は、回し車の方にハネを付けて、回転した時にセンサの間をうまく通過するようにすればOKです。 |
|
このユニットは、回し車が回転する度にジョイスティックのボタンが1回押される状態を作り出しているわけです。 従ってジョイスティックを改造して、ボタンを前作の計測ユニットのスイッチに接続すれば計測ユニットGとして使用できるはずです。 |