Arduinoコード、ビデオ送信機、レーザーセンサー

Arduinoコード、ビデオ送信機、レーザーセンサー

このチュートリアルでは、レーザー送信機と受信機を使ってレーザービームを検出し、ブザーやその他の動作をトリガーする方法を学びます。この構成は自動化やロボット工学を含むさまざまな用途で利用できます。チュートリアルが終わる頃には、部品の配線方法と、すべてをスムーズに動作させるためのArduinoコードの書き方がわかるようになります。

Laster RX or receiver module
Laster TX or transmitter module

チュートリアル全体を通して、このプロジェクトに関係する主要なコンポーネントについて、それらを正しく配線する方法やコードの動作について説明します。詳細な解説はビデオ(02:00)をご覧ください。

ハードウェアの解説

このプロジェクトの主な構成要素は、レーザー送信機、レーザー受信機、そしてブザーです。レーザー送信機は光のビームを発し、受信機はそのビームを検出します。ビームが遮られると、受信機はArduinoに信号を送り、Arduinoはブザーを鳴らすか別の動作を行うことができます。

送信モジュールは5ボルトで動作し、電流を制限する抵抗が含まれています。受信モジュールは設置場所の柔軟性を高めるために外部配線に接続できます。ブザーも5ボルトで給電され、ピンは2本あり、1つはプラス、もう1つはグランドです。

データシートの詳細

製造元不明
部品番号レーザー送受信モジュール
動作電圧5V
現在の消費量典型値 5 mA
出力タイプデジタル信号
検出範囲環境によって異なる
サイズ送信機: 14.8 mm x 18.8 mm, 受信機: 15.4 mm x 23.4 mm

  • 損傷を防ぐために、適切な電圧供給を確保してください。
  • 信号損失を最小限にするため、短い配線を使用してください。
  • 確実な検出のために、受信機を送信機と位置を合わせてください。
  • 異なる照明条件でセットアップをテストしてください。
  • 誤検知を引き起こす可能性がある反射には注意してください。

配線手順

Arduion wiring laser Transmitter and receiver
Arduion wiring laser Transmitter and receiver

レーザー送信機を配線するには、そのグランド端子をArduinoのGNDに、電源端子をArduinoの5Vに接続します。送信機の中央の端子は使用しません。レーザー受信機は、グランド端子をGNDに、電源端子を5Vに、出力端子をArduinoのピンに接続します2. この出力ピンはレーザー受信機からの信号を読み取ります。

次に、ブザーを接続します:長いピン(プラス)はArduinoのピンに接続してください8一方、短いピン(グラウンド)はGNDに接続します。動作中に断続的な問題が発生しないよう、すべての接続が確実に固定されていることを確認してください。

コード例と解説

Arduinoのコードは、識別子を使ってレーザーセンサーと動作(ブザー)のピンを定義することから始まります。DETECTそしてACTIONこのコードはデバッグ用にシリアル通信を初期化し、ピンのモードを設定します。setup()機能。

#define DETECT 2 // pin 2 for sensor
#define ACTION 8 // pin 8 for action to do something

void setup() {
  Serial.begin(9600);
  pinMode(DETECT, INPUT); // define detect input pin
  pinMode(ACTION, OUTPUT); // define ACTION output pin
}

このスニペットは、セットアップの機能にとって重要なピンの入力および出力の設定方法を示しています。そのSerial.begin(9600)このコマンドによりシリアルモニタと通信でき、デバッグメッセージを確認できます。

その中でloop()この関数では、コードがレーザーセンサーの状態を継続的にチェックします。レーザービームが検出されると、ブザーを作動させ、シリアルモニタに「検出!」と表示します。

void loop() {
  int detected = digitalRead(DETECT); // read Laser sensor
  if(detected == HIGH) {
    digitalWrite(ACTION, HIGH); // set the buzzer ON
    Serial.println("Detected!");
  } else {
    digitalWrite(ACTION, LOW); // Set the buzzer OFF
    Serial.println("No laser");
  }
  delay(200); // wait 200 milliseconds
}

この抜粋はプログラムのコアロジックを示しています。変数detected〜の出力を格納するdigitalRead()レーザービームが存在するかをチェックする関数です。状態に応じてブザーがオンまたはオフになります。

デモンストレーション/何を期待できるか

セットアップが正しく配線され、コードがアップロードされると、システムは期待どおりに動作するはずです。レーザー光線が受信機に当たるとシリアルモニタに Detected! と表示され、ブザーが鳴ります。光線が遮られるか検出されない場合は No laser と表示され、ブザーは停止します。

信頼性の高い動作のためには、レーザービームが受信機に正しく整列していることを確認することが不可欠です。ビデオ(08:00)で説明されているように、誤検知を引き起こす可能性のある反射に注意してください。

動画のタイムスタンプ

  • 00:00- はじめに
  • 02:00- ハードウェアの説明
  • 午前04:30- 配線手順
  • 06:15- コードの説明
  • 08:00- デモンストレーション

画像

Laster RX or receiver module
Laster RX or receiver module
Laster RX or receiver module
Laster RX or receiver module
Laster TX or transmitter module
Laster TX or transmitter module
Laster TX or transmitter module
Laster TX or transmitter module
Laster TX or transmitter module
Laster TX or transmitter module
Arduion wiring laser Transmitter and receiver
Arduion wiring laser Transmitter and receiver
67-This is the Arduino code and video for a laser sensor module.
言語: C++
コピーしました!

必要かもしれないもの

リソースと参考文献

まだリソースはありません。

ファイル📁

ファイルは利用できません。