Arduinoにフォトリフレクタを付けて照明制御

今回はArduinoをMaxを繋げてみたく、そのセンサーにフォトリフレクタを選びました。
実際、こんな感じにできました!


フォトリクフレクタは発光部から出る光を、検知したい物体で遮り、反射された光を受光部で受信することにより、物体を検知するセンサ。

それを照明が点く・点かないで応用してみました◎

 

パッチはこんな感じに。

スクリーンショット 2015-03-08 19.29.07

パッチは、ほぼMaxチュートリアルのコミュニケーションカテゴリの「Max Comm Tutorial 2: Serial Communication」のままです。

必要なさそうなオブジェクトは消してあります。

ポートはdだったり、cだったりその時のPCのUSBの状態によって変わるようです。

Max windowには、port d: usbmodem1411と表示してありました。
Arduino側で「ツール」→「シリアルポート」を見ると、そのポート番号にチェックが入っているので、ポートはこれで間違いなし。

Arduinoのシリアルモニタで確認した時に、フォトリフレクタの値の最小値、最大値が980~1020だっため、照明の明るさに合わせて0~255にスケールしてあります。

 

んで、Arduinoのスケッチはこんな感じに。

スクリーンショット 2015-03-08 19.28.39

Arduinoシリアルポートを開いてると、Maxでデータを受信する事はできません。
同様に、Maxでデータを受けてるとArduinoのシリアルポートは開けない。

使えるシリアルは1つのみです。デリケートですね。。

んで!
センサーをこれより増やしたりしたい時は当然の事ながら、ArduinoのスケッチもMaxのパッチもそれ専用に書き換えなければなりません。

…そこで今つまづき中。。。

 

出来たらまた、公開しますーー。