2-2-2.赤外線障害物センサ
電気回路と電子工作
赤外線障害物センサは赤外線を送信し反射する赤外線を検出することで障害物か存在するかを確認することができるセンサです。
(本センサは赤外線障害物センサ個別の電子工作学習用です。sLab-Remo2ではリモコンと合わせた電子工作として利用する手順は用意しておりません。)
赤外線障害物センサの外観を以下に示します。
赤外線障害物センサには3つの端子がありますので以下の通り配線し利用して下さい。配線はオス-メスのジャンパー線を利用し配線して下さい。
【注意】
回路図にはありませんがESP32開発ボードにソフトを書き込む場合はEN端子を0.1μFのコンデンサでGNDへ配線して下さい。ESP32開発ボード(30pin)固有の利用方法なので回路図は省略させて頂きます。
スケッチ(制御ソフトウェア)
GPIO15で赤外線信号を読み取り障害物を検出しシリアル通信でパソコンに表示させるスケッチを以下に示します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
// IoT電子工作キット sLab-Remo2 // 2-2-2.赤外線障害物センサ // ①利用ピンの設定 const byte IR_O_PIN = 15; // ②起動時、最初に実行される処理 void setup() { Serial.begin(115200); // シリアルモニタ設定(115200bps) Serial.println(); // (見やすくするために改行) // ③IO15に出力設定 pinMode(IR_O_PIN, INPUT); } // ④setup完了後、電源OFFまで繰り返し処理 void loop() { // ⑤LEDを点灯する if(digitalRead(IR_O_PIN) == HIGH) { Serial.println("No Detect"); } else { Serial.println("Detect Obstacle"); } // ⑥3秒間間隔を空けて測定 delay(3000); } |
赤外線送信は常に送信されているので、受信センサの検出を「digitalRead(IR_O_PIN)」で確認することで障害物を検出できます。
HIGH時に障害物がない状態ですのでシリアルモニタに「”No Detect”」を表示し検出した場合に「”Detect Obstacle”」を表示しています。