[Mindstorms]NXT Distance x4

1つのポートに測距センサを4個接続できるセンサです。

ポートを節約することができます。

NXT側からは「超音波センサ」として認識されます。インテリジェントブロックNXTのメニューで「View-Ultrasonic(cm)」を使用するとCH0の結果だけ返します。

測距センサを4個接続しています。センサ1つあたりで、10~80cmの範囲で距離を測定できます。

サンプルプログラムでは

CH0=前方、

CH1=左側、

CH2=右側

CH3=後ろ側

に割り振りました。

ポートが余っていますので、あと3個センサを付け足すことができると思います。

Parts list

総製作費2500円くらいで作れると思います。

Firmware/Program

ファームウェアの開発環境はAVR studio4+WinAVRです。HEXファイルはAVRISPmkIIなどを使ってマイコンに書き込みます。

サンプルプログラム用ロボット

OUTPUT PORT A : Y方向移動

OUTPUT PORT B : X方向移動

INPUT PORT 1 : Distance x4 Sensor

NXT側のサンプルプログラムはNXCで動かします。0x45を送信するとCH0~3の測定値を4バイトで返します。単位はcmです。

サンプルプログラム(nxtdistrun.nxc)では20cm未満までセンサに近づくとロボットが逆方向に遠ざかります。