Mes visi žinome apie „Arduino“. Tai yra viena iš populiariausių atvirojo kodo mikrovaldiklių plokštių, kuri yra labai naudinga atliekant „pasidaryk pats“ projektus. Šis „ Arduino“ pagrįstas 3 krypčių šviesoforų valdiklis yra paprastas „Arduino“ pasidaryk pats projektas, naudingas norint suprasti, kaip veikia šviesoforai, kuriuos matome aplink save. Šioje šviesoforų grandinėje aptarėme paprastesnę šviesoforų versiją. Čia tai pademonstravote 3 pusėmis ar būdais. Dabar leiskimės į projektą…
Būtini komponentai:
- 3 * raudonos šviesos diodai
- 3 * žalios spalvos LED lemputės
- 3 * geltoni LED žibintai
- 3 * 220ohm rezistoriai
- Bandomoji Lenta
- Jungtys nuo vyro iki vyro
- „Arduino Uno“ su „Ide“ kabeliu
Grandinės paaiškinimas:
Žemiau pateikiama „ Arduino“ šviesoforų valdiklio projekto schema:
Tai gana paprasta ir galima lengvai pastatyti ant duonos lentos, kaip paaiškinta toliau pateiktuose žingsniuose:
- Prijunkite šviesos diodus tokia tvarka kaip raudona, žalia ir geltona skydinėje.
- Įdėkite neigiamą šviesos diodų gnybtą į bendrą ir nuosekliai prijunkite 220ohm rezistorių.
- Atitinkamai prijunkite jungties laidus.
- Prijunkite kitą laido galą prie „Arduino Uno“ iš eilės kaiščių (2,3,4… 10)
- Įjunkite duoną naudodami „Arduino 5v“ ir „GND“ kaištį.
Programos ir darbo paaiškinimas:
Šio „ Arduino“ šviesoforų valdiklio projekto kodas yra paprastas ir lengvai suprantamas. Čia mes pademonstravome 3 krypčių kelio šviesoforus, o kodas šviečia šviesos diodais iš visų trijų pusių tam tikra seka, kurioje veikia tikrieji šviesoforai. Kaip ir tuo metu, bet kurioje iš dviejų pusių bus du raudoni signalai, o kitoje - viena žalia šviesa. Taip pat geltona šviesa švytės kiekvieną kartą po 1 sekundę, tarp perėjimo nuo raudonos iki žalios, tai reiškia, kad pirmiausia raudona šviesa šviečia 5 sekundes, po to geltona šviesa šviečia 1 sekundę, o galiausiai bus įjungta žalia šviesa.
Programoje pirmiausia mes paskelbėme kaiščius (2,3… 10) kaip išvestį tuščioje sąrankoje () 9 šviesos diodams (po tris kiekvienoje pusėje, ty priekyje, dešinėje ir kairėje pusėje).
void setup () {// konfigūruoti išvesties kaiščius pinMode (2, OUTPUT); pinMode (3, OUTPUT); pinMode (4, OUTPUT); pinMode (5, OUTPUT); pinMode (6, OUTPUT); pinMode (7, OUTPUT); pinMode (8, OUTPUT); pinMode (9, OUTPUT); pinMode (10, OUTPUT); }
Tada funkcijoje void loop () mes parašėme šviesoforų įjungimo ir išjungimo kodą, kaip nurodyta aukščiau.
void loop () {digitalWrite (2,1); // įgalina pirmąjį signalų rinkinį digitalWrite (7,1); „digitalWrite“ (10,1); „digitalWrite“ (4,0); „digitalWrite“ (3,0); „digitalWrite“ (6,0); „digitalWrite“ (8,0); „digitalWrite“ (9,0); „digitalWrite“ (5,0); vėlavimas (5000);………………
Šis procesas yra gerai parodytas žemiau esančiame vaizdo įraše. Pirmiausia viršutinė / priekinė pusė yra atidaryta (žalia), o kitos dvi pusės (ty kairė ir dešinė pusės) lieka uždarytos raudonu signalu su 5 sekundžių vėlavimu. Tada geltona lemputė įsijungia dešinėje pusėje 1 sek., O po to - žalia lemputė, paliekant kitas dvi puses (ty aukštyn ir kairę pusę raudona) uždaro raudona šviesa ir 5 sekundės vėluoja. Tada geltona kairėje pusėje šviečia 1 sek., Po to - žalia, paliekant aukštyn ir dešinę raudoną pusę su 5 sekundžių vėlavimu. Šis procesas yra susietas su „ void loop“ () funkcija, skirta nuolatiniam procesui. Čia mes galime pakeisti vėlavimą, kai raudona, geltona ir žalia lemputės lieka įjungtos ir išjungtos.
Visas „ Arduino“ šviesoforų projekto „Arduino“ kodas ir vaizdo įrašas pateikiami žemiau.