あなたの家の外の街灯を自動化する方法は?

家の外、バルコニー、または庭には、手動でオンまたはオフにする必要のある街灯があります。 ArduinoとLDRを使用して、夜間にこれらのライトをオンにし、日中に自動的にオフにするシステムを作成できます。人が外に出て手動でオンまたはオフにする必要はありません。



LDRを使用した切り替え

Arduinoを使用してライトを自動化する方法は?

それでは、プロジェクトに関する情報の収集を開始して、作業を開始しましょう。



ステップ1:コンポーネントの収集

プロジェクトの作業を開始する前に、使用するコンポーネントのリストを作成し、それらのコンポーネントの動作を調べましょう。



  • Arduino UNO
  • リレーモジュール
  • ブレッドボード/ベロボード
  • オス/メスジャンパーワイヤー

ステップ2:コンポーネントの調査

Arduino Unoは、さまざまな回路を制御するマイクロコントローラーボードです。 ArduinoIDEを介してこのボードにCコードを書き込むことで何をすべきかを説明します。 Arduino UNOが利用できない場合は、代わりにArduinoNANOを使用できます。



LDRは、光の強度に応じて抵抗が変化する光依存抵抗器です。 LDRモジュールは、アナログ出力ピン、デジタル出力ピン、またはその両方を持つことができます。 LDRの抵抗は光の強度に反比例します。つまり、光の強度が大きいほど、LDRの抵抗は低くなります。 LDRモジュールの感度は、モジュールのポテンショメータノブを使用して変更できます。

リレーモジュールは、スイッチングの目的で回路で使用されるデバイスです。 2つのモードで動作します。 ノーマルオープン(NO) そして ノーマルクローズ(NC)。 NOモードで使用すると、回路は最初に遮断され、NCモードで使用すると、回路は最初に閉じます。

ステップ3:回路を作る

これで、プロジェクトで使用するコンポーネントについて十分に理解できたので、以下に示すように回路の作成を開始しましょう。



回路図

この回路では、LDRモジュールのA0ピンがArduinoのA0ピンに接続され、リレーがArduinoのピン7に接続されています。ライトがLDRに当たると、抵抗が変化し、いくつかのアナログ値がArduinoに送信されます。次に、Arduinoはこれらの値を処理し、リレーに信号を送信して、オンまたはオフに切り替えるように指示します。リレーとLDRモジュールはどちらもArduinoの5Vピンから給電されます。ブレッドボードで回路を作成しましたが、Veroboardでもこの回路を作成できます。ベロボードでは、はんだを使用してしっかりと接続してください。はんだ付け後、導通テストを実行することを忘れないでください。

ステップ4:Arduino入門

以前にArduinoIDEに慣れていない場合でも、心配しないでください。以下では、ArduinoIDEを使用してマイクロコントローラーボードにコードを書き込む明確な手順を確認できます。から最新バージョンの奇妙なArduinoIDEをダウンロードする Arduino 以下の手順に従ってください。

  1. ArduinoボードがPCに接続されたら、「コントロールパネル」を開き、「ハードウェアとサウンド」をクリックします。次に、「デバイスとプリンター」をクリックします。 Arduinoボードが接続されているポートの名前を見つけます。私の場合は「COM14」ですが、パソコンによって異なる場合があります。

    ポートを探す

  2. 次に、ArduinoIDEを開きます。ツールから、Arduinoボードをに設定します Arduino / GenuinoUNO。

    セッティングボード

  3. 同じツールメニューから、コントロールパネルに表示されているポート番号を設定します。

    設定ポート

  4. ここにあるコードを画面にコピーして、Arduinoボードにアップロードします。

    アップロード

ステップ5:コード

からコードをダウンロードします ここに

コードは非常に単純で自明ですが、コードの一般的な説明を以下に示します。

1)。最初に、コードで使用されるピンが初期化されます。

const int R1 = 7; //リレーconstint ldrPin = A0; // LDRピン

2)。 void setup() ピンをOUTPUTまたはINPUTとして使用する機能です。また、マイクロコントローラボードのボーレートも設定します。ボーレートは、Arduinoが通信する速度です。

void setup(){Serial.begin(9600); pinMode(R1、OUTPUT); pinMode(ldrPin、INPUT); }

3)。 void loop() ループで何度も実行される関数です。ここでは、LDRモジュールからアナログ値を読み取り、ライトをオンにするかオフにするかを確認します。

void loop(){int ldrStatus = analogRead(ldrPin); if(ldrStatus<= 200) { digitalWrite(R1, HIGH); Serial.print('Its DARK, Turn on the LED : '); Serial.println(ldrStatus); } else { digitalWrite(R1, LOW); Serial.print('Its BRIGHT, Turn off the LED : '); Serial.println(ldrStatus); } }

これで、回路がどのように機能するかを理解し、コードも理解できました。これで、独自の回路の作成を開始し、通り、バルコニー、さらには庭にあるライトを自動化できます。