Kaip automatizuoti gatvių žibintus už jūsų namų ribų?

Už mūsų namų, balkonuose ar soduose yra gatvių žibintai, kuriuos reikia įjungti arba išjungti rankiniu būdu. Mes galime sukurti sistemą naudodami „Arduino“ ir LDR, kurie šiuos žibintus įjungs naktį ir automatiškai išjungs dienos metu, nereikalaujant, kad žmogus eitų į lauką ir rankiniu būdu juos įjungtų ar išjungtų.



Perjungimas naudojant LDR

Kaip naudoti „Arduino“, kad automatizuotumėte žibintus?

Dabar pradėkime rinkti informaciją apie projektą ir pradėkime dirbti.



1 veiksmas: komponentų rinkimas

Prieš pradėdami dirbti prie projekto, sudarykime komponentų, kuriuos naudosime, sąrašą ir ištirkime šių komponentų veikimą.



  • „Arduino UNO“
  • Relės modulis
  • Breadboard / Veroboard
  • Vyrų / moterų džemperių laidai

2 žingsnis: komponentų studijavimas

„Arduino Uno“ yra mikrovaldiklio plokštė, valdanti įvairias grandines. Mes nurodome, ką daryti, įrašant C kodą šioje lentoje per „Arduino IDE“. Jei „Arduino UNO“ nėra, galite naudoti „Arduino NANO“.



LDR yra nuo šviesos priklausomas rezistorius, kurio atsparumas keičiasi atsižvelgiant į šviesos intensyvumą. LDR modulis gali turėti analoginį išvesties kaištį, skaitmeninį išvesties kaištį arba abu. LDR atsparumas yra atvirkščiai proporcingas šviesos intensyvumui, o tai reiškia didesnį šviesos intensyvumą, mažesnį LDR atsparumą. LDR modulio jautrumą galima pakeisti naudojant potenciometro rankenėlę modulyje.

Relės modulis yra įtaisas, naudojamas grandinėje perjungimo tikslais. Jis veikia dviem režimais, Paprastai atidarytas (NE) ir Paprastai uždarytas (NC). Naudojant NO režimu, grandinė iš pradžių nutrūksta, o naudojant NC režimu, grandinė iš pradžių uždaroma.

3 žingsnis: grandinės sudarymas

Dabar, kai pakankamai žinome apie komponentus, kuriuos ketiname naudoti savo projekte, pradėkime grandinę, kaip parodyta žemiau.



Grandinės schema

Šioje grandinėje LDR modulio A0 kaištis yra prijungtas prie „Arduino“ A0 kaiščio, o relė - prie „Arduino“ 7 kaiščio. Kai šviesa kris ant LDR, jos pasipriešinimas pasikeis ir ji nusiųs kai kurias analogiškas vertes „Arduino“. Tada „Arduino“ apdoros šias vertes ir siųs signalą į relę ir lieps jai įsijungti arba išjungti. Tiek relę, tiek LDR modulį maitina 5 V „Arduino“ kaištis. Aš padariau grandinę ant duonos lentos, bet jūs galite padaryti šią grandinę ir „Veroboard“. Verboje įsitikinkite, kad tvirtai sujungiate naudodami lydmetalį. Po litavimo nepamirškite atlikti tęstinumo testo.

4 žingsnis: darbo su „Arduino“ pradžia

Jei anksčiau nesate susipažinę su „Arduino IDE“, nesijaudinkite, nes žemiau galite pamatyti aiškius kodo deginimo veiksmus mikrovaldiklio plokštėje, naudodami „Arduino IDE“. Atsisiųskite naujausią „Arduino IDE“ versiją iš Arduino ir atlikite toliau nurodytus veiksmus.

  1. Kai „Arduino“ plokštė prijungta prie jūsų kompiuterio, atidarykite „Control panel“ ir spustelėkite „Hardware and Sound“. Tada spustelėkite „Įrenginiai ir spausdintuvai“. Raskite prievado, prie kurio prijungta jūsų „Arduino“ plokštė, pavadinimą. Mano atveju tai yra „COM14“, bet jūsų kompiuteryje jis gali skirtis.

    Raskite uostą

  2. Dabar atidarykite „Arduino IDE“. Iš įrankių nustatykite „Arduino“ lentą į „Arduino“ / „Genuino UNO“.

    Nustatymo lenta

  3. Tame pačiame meniu Įrankis nustatykite prievado numerį, kurį matėte valdymo skydelyje.

    Uosto nustatymas

  4. Nukopijuokite kodą čia ekrane ir įkelkite jį į savo „Arduino“ lentą.

    Įkelti

5 žingsnis: kodas

Atsisiųskite kodą iš Čia

Kodas yra labai paprastas ir savaime suprantamas, tačiau žemiau pateikiamas bendras kodas.

1). Pradžioje inicijuojami smeigtukai, kurie bus naudojami kode.

const int R1 = 7; // relė const int ldrPin = A0; // LDR kaištis

2). negaliojanti sąranka () yra funkcija, kurią smeigtukai turi naudoti kaip OUTPUT arba INPUT. Jis taip pat nustato mikrovaldiklio plokštės perdavimo greitį. „Baud rate“ yra „Arduino“ ryšio greitis.

negaliojanti sąranka () {Serial.begin (9600); pinMode (R1, OUTPUT); pinMode (ldrPin, INPUT); }

3). tuščia kilpa () yra funkcija, kuri veikia vėl ir vėl cikle. Čia jis nuskaito analoginę vertę iš LDR modulio ir patikrina, ar įjungti, ar išjungti šviesą.

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

Dabar, kai žinote, kaip veikia grandinė, taip pat suprantate kodą. Dabar galite pradėti kurti savo grandinę ir automatizuoti žibintus, esančius gatvėje, balkone ar net savo sode.