Kuidas automatiseerida tänavavalgustusid väljaspool kodu?

Meie kodudest väljaspool, rõdudel või aedades on tänavavalgustid, mis tuleb käsitsi sisse või välja lülitada. Saame luua süsteemi, kasutades Arduino ja LDR-i, mis lülitavad need tuled öösel sisse ja lülitavad päeval automaatselt välja, ilma et oleks vaja kedagi õue minema ja neid käsitsi sisse või välja lülitama.



Üleminek LDR abil

Kuidas kasutada Arduino valguste automatiseerimiseks?

Alustame nüüd projekti kohta teabe kogumist ja alustame tööd.



1. samm: komponentide kogumine

Enne projekti kallale asumist koostame loetelu komponentidest, mida kasutame, ja uurime nende komponentide tööd.



  • Arduino UNO
  • Relee moodul
  • Breadboard / Veroboard
  • Mees / naine hüppaja juhtmed

2. samm: komponentide uurimine

Arduino Uno on mikrokontrolleriplaat, mis juhib erinevaid ahelaid. Me ütleme talle, mida teha, kirjutades sellel plaadil C-koodi Arduino IDE kaudu. Kui Arduino UNO pole saadaval, saate selle asemel kasutada Arduino NANO-d.



LDR on valgust sõltuv takisti, mis muudab oma takistust valguse intensiivsusega. LDR-moodulil võib olla analoogväljundnõel, digitaalväljundnõel või mõlemad. LDR takistus on pöördvõrdeline valguse intensiivsusega, mis tähendab suuremat valguse intensiivsust, madalamat LDR takistust. LDR-mooduli tundlikkust saab muuta moodulil oleva potentsiomeetri nupu abil.

Relee moodul on seade, mida kasutatakse vooluringis lülitamise eesmärgil. See töötab kahel režiimil, Tavaliselt avatud (EI) ja Tavaliselt suletud (NC). NO-režiimis kasutamisel on vooluring esialgu katki ja NC-režiimis kasutamisel on vooluring esialgu suletud.

3. samm: vooluringi tegemine

Nüüd, kui teame piisavalt komponentide kohta, mida oma projektis kasutame, alustame vooluringi, nagu allpool näidatud.



Vooluringi skeem

Selles vooluringis on LDR-mooduli A0-tihvt ühendatud Arduino A0-tihvtiga ja relee Arduino tihvtiga 7. Kui valgus langeb LDR-ile, muutub selle takistus ja see saadab Arduinole mõned analoogväärtused. Siis töötleb Arduino neid väärtusi ja saadab releele signaali ning käsib tal sisse või välja lülitada. Nii relee- kui ka LDR-moodulit toidab Arduino 5V tihvt. Ma olen teinud vooluringi leivaplaadil, kuid saate selle teha ka Veroboardil. Verboardil veenduge, et teete jootetugedes tihedad ühendused. Pärast jootmist ärge unustage läbi viia järjepidevuse test.

4. samm: Arduinoga alustamine

Kui te pole Arduino IDE-ga varem tuttav, ärge muretsege, sest allpool näete Arduino IDE abil mikrokontrolleriplaadil koodi põletamise selgeid samme. Laadige uusim versioon välja paaritu Arduino IDE-st Arduino ja järgige alltoodud samme.

  1. Kui Arduino tahvel on arvutiga ühendatud, avage juhtpaneel ja klõpsake nuppu „Riistvara ja heli”. Seejärel klõpsake nuppu „Seadmed ja printerid”. Leidke selle sadama nimi, millega teie Arduino tahvel on ühendatud. Minu puhul on see COM14, kuid see võib teie arvutis olla erinev.

    Leidke Port

  2. Nüüd avage Arduino IDE. Tööriistadest seadke Arduino tahvel olekuks Arduino / Genuino UNO.

    Laua määramine

  3. Valige samas menüüs Tööriist pordi number, mida nägite juhtpaneelil.

    Pordi seadistamine

  4. Kopeerige kood ekraanile ja laadige see oma Arduino tahvlile üles.

    Laadi üles

5. samm: kood

Laadige kood alla aadressilt Siin

Kood on väga lihtne ja iseenesestmõistetav, kuid mõned üldised selgitused koodile on toodud allpool.

1). Kõigepealt lähtestatakse PIN-koodid, mida koodis kasutatakse.

const int R1 = 7; // Relee const int ldrPin = A0; // LDR tihvt

2). kehtetu seadistamine () on funktsioon, mida tihvtideks kasutatakse väljundi või sisendina. See määrab ka mikrokontrolleri plaadi ülekandekiiruse. Baudi kiirus on Arduino suhtlemise kiirus.

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

3). void loop () on funktsioon, mis töötab ikka ja jälle silmusena. Siin loeb see LDR moodulilt analoogväärtuse ja kontrollib, kas valgust sisse või välja lülitada.

void loop () {int ldrStatus = analogRead (ldrPin); kui (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); } }

Nüüd, kui teate, kuidas vooluring töötab, ja saate ka koodist aru. Nüüd saate alustada oma vooluringi loomist ja automatiseerida tuled, mis asuvad teie tänaval, rõdul või isegi aias.