リードスイッチを使用してArduinoでリレーとAC/DC負荷を制御する

リードスイッチを使用してArduinoでリレーとAC/DC負荷を制御する

このチュートリアルでは、リードスイッチをArduinoと組み合わせて使用し、ACおよびDCの負荷の両方を制御できるリレーを操作する方法を説明します。リードスイッチは磁気センサとして機能し、磁石の近接に応じてリレーを作動させることができます。この構成は、アラームや自動点灯など、磁場の有無に基づいて機器を制御したい用途に最適です。結果として、リードスイッチの状態に応じてライトやアラームをオン/オフできる、完全に動作する回路が得られます。

Reed Switch Schematic
Reed Switch module

このプロジェクトを構築するにあたり、リードスイッチ、リレー、Arduino を含む主要なコンポーネントについて説明します。リードスイッチには3本のピンがあり、VCC(電源)、GND(グランド)、OUTPUT(信号)です。磁石が近づくとスイッチが閉じ、信号ピンがHIGHになり、それによってリレーを動作させることができます。リレーはより高電圧の負荷を切り替えるスイッチとして機能するため、ランプやアラームのような機器の制御に適しています。

視覚的なデモンストレーションとさらなる説明のために、関連するビデオの00:00を必ずご確認ください。

Reed Switch module to view

ハードウェアの解説

このプロジェクトの主な構成要素はリードスイッチ、リレーモジュール、Arduinoボードです。リードスイッチは磁石が近づくと接点が閉じ、OUTPUTピンを通じて電流が流れる磁気センサーです。このピンはリレーに信号を送り、リレーは高電圧機器を安全に制御できます。

リレーモジュールは大きな負荷を制御するために設計されています。主な接続端子は三つあり、Common(COM)、Normally Open(NO)、Normally Closed(NC)です。Arduinoによってリレーが作動すると、COM端子がNO端子に接続され、接続された機器に電流が流れるようになります。この構成により、Arduinoを高電圧に直接接続することなく、さまざまな電気機器を柔軟に制御できます。リードスイッチ信号を増幅するための主な増幅器はLM393オペアンプです。

モジュールのデータシート

製造元不明
ロジック/入出力電圧3.3V〜5V
電源電圧5 V
出力電流(チャンネルごと)最大10A
ピーク電流(チャンネルあたり)最大16 A
PWM周波数に関するガイダンス該当なし
入力論理閾値2.5 V以上(HIGH)
電圧降下 / Rドレイン・ソース(オン)/ 彩度0.1 V(典型値)
熱制限最大85°C
パッケージPCBマウント

配線手順

Arduino wiring for Reed switch module
Arduino wiring for Reed switch module

システムの配線を行うには、まずリードスイッチを接続します。リードスイッチのVCCピンをArduinoの5V出力に接続し、GNDピンをArduinoのグランド(GND)ピンのいずれかに接続します。リードスイッチのOUTPUTピンはデジタルピンに接続してください2Arduino上で。これによりArduinoはリードスイッチの状態を読み取ることができます。

次に、リレーモジュールを配線します。リレーのVCCピンをArduinoの5V出力に、GNDピンをグラウンドに接続してください。リレーの入力ピンはリレーの動作を制御するもので、デジタルピンに接続する必要があります。10Arduino上で。最後に、負荷(例えば電球)をリレーの共通(Common)端子と常時開(Normally Open)端子に接続し、負荷がリレーの仕様に適合していることを確認してください。

コード例とウォークスルー

以下のコードスニペットはピンを初期化し、デバッグ用のシリアル通信を設定します。リードスイッチはピンに接続されています2、リレーはピン経由で制御される10


int LD = 200; // time in milliseconds to wait before making another reading.

void setup() {
    Serial.begin(9600);
    pinMode(10, OUTPUT); // connected to relay
    pinMode(2, INPUT); // reed switch input pin 2  
    Serial.println("Robojax Test: Reed switch");
}

ループ関数内ではリードスイッチの状態が継続的に監視されます。スイッチが閉じている場合(磁石が存在することを示す)、リレーはオンになります。スイッチが開いている場合は、無効化する前に猶予期間を設けるために5秒の遅延の後にリレーがオフになります。


void loop() {
    if(digitalRead(2)){
      Serial.println("Switch ON "); 
      digitalWrite(10, LOW); // Turn the relay ON    
      delay(LD); 
    }else{
      delay(5000); // wait 5 seconds before turning the alarm off
      digitalWrite(10, HIGH); // Turn the relay OFF
    }
}

このコードは、リードスイッチの状態に応じてリレーを柔軟に制御できるようにします。遅延値やスイッチ入力に基づくリレーの制御方法を変更することで、タイミングや動作を調整できます。

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

セットアップが完了すると、リードスイッチに磁石を近づけることでリレーが作動し、接続された照明やアラームが点灯または作動します。磁石を外すと、照明は指定した遅延時間の間点灯したままになり、その後消灯してユーザーに猶予時間を与えます。リレーが期待どおりに動作し、リードスイッチに正しく反応することを確認するために、システムを必ずテストしてください。

動画のタイムスタンプ

  • 00:00- プロジェクトの紹介
  • 02:15- ハードウェアの説明
  • 05:30- 配線の実演
  • 08:45- コードウォークスルー
  • 12:00- 期待される結果とトラブルシューティングのヒント

画像

Reed Switch module top view
Reed Switch module top view
Reed Switch Schematic
Reed Switch Schematic
reed_switch-4
reed_switch-4
Reed Switch module
Reed Switch module
Reed Switch module to view
Reed Switch module top view
Reed Switch module
Reed Switch module
Arduino wiring for Reed switch module
Arduino wiring for Reed switch module
22-Reed Magnetic Switch Arduino with Relay code
言語: C++
コピーしました!

リソースと参考文献

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

ファイル📁

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