Turinys:
- 1 žingsnis: ambicingas? Gal būt
- 2 žingsnis: parašykite valdymo bloko kodą
- 3 žingsnis: NRF24L01 „Breakout Board“mod
- 4 žingsnis: šviesoforo įtaisai
- 5 žingsnis: šviesoforai ir bandymai
- 6 žingsnis: sankryža
- 7 žingsnis: viskas padaryta
Video: 4 krypčių šviesoforo sistema, naudojant 5 „Arduinos“ir 5 belaidžius NRF24L01 modulius: 7 žingsniai (su nuotraukomis)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:49
Prieš kurį laiką sukūriau „Instructable“, kuriame išsamiai aprašyta viena šviesoforo pora ant duonos lentos.
Taip pat sukūriau kitą „Instructable“, kuriame parodyta pagrindinė NRF24L01 belaidžio modulio naudojimo sistema.
Tai privertė mane susimąstyti!
Visame pasaulyje yra gana daug mėgėjų, kurie kuria pavyzdinius miestelius ir geležinkelius ir beveik visada turi tam tikro apibūdinimo šviesoforus.
Kai kurie yra veikiantys modeliai, o kiti - tik estetiniais tikslais.
Ar galėčiau sukurti veikiantį keturių krypčių šviesoforų sistemos modelį ir prijungti juos belaidžiu ryšiu?
Atsisėdau ir pagalvojau apie galimų reikalavimų sąrašą. Kuris vyko šiek tiek taip.
Valdykite 4 eismo kryptis, pavyzdžiui, sankryžos sankryžą.
Kiekviena kryptis turi du žibintus; ir kiekviena pora gauna instrukcijas belaidžiu būdu iš tam tikro valdymo bloko.
Gebėti apibrėžti ir keisti žibintų veikimo seką,
- 1, 2, 3, 4 - pagal laikrodžio rodyklę
- 1, 3, 4, 2
- 1, 4, 2, 3
- 1, 4, 3, 2-prieš laikrodžio rodyklę
- 1, 2, 4, 3
- 1, 3, 2, 4
- 1 + 3, 2 + 4 - 2 išjungus 2
- 1 + 3, 2, 4
- 1, 3, 2 + 4
Visas sekas reikia valdyti vienu valdymo bloku, o priėmimo įrenginiai tik įjungia ir išjungia šviesas.
Kai sakiau, kad sukurkite modelį, turėjau omenyje, kad sukurkite tikrą modelį, nieko per daug įmantraus, bet kažką, kas iš tikrųjų atrodytų panašiai į tikrąjį, galbūt, galbūt išraiškingą.
1 žingsnis: ambicingas? Gal būt
Pagrindiniai dalių reikalavimai:
Valdymo blokas ir keturi žibintų rinkiniai = penki „Arduinos“ir penki belaidžiai moduliai. „AliExpress“į pagalbą (vėl).
Aštuoni šviesoforų stendai. Aš blogai imituoju 3D spausdintuvą, kuris paprastai tiekia daugiau šiukšlių dėžių nei tinkami naudoti produktai, tačiau maniau, kad vis tiek pabandysiu. Radau keletą „Thingiverse“, www.thingiverse.com/thing:2157324
Šis modelis atrodė mažiausiai sudėtingas mano spausdintuvui. Aš norėjau aštuonių, todėl vis dar stumdavau laimę. Kaip paaiškėjo, sužinojau, kad po poros nesėkmingų bandymų, jei nukreipiau modelį tam tikra kryptimi (iš priekio į galą), gavau pagrįstų rezultatų. Iš viso atspausdinau trylika ir gavau aštuonis naudingus.
Tai buvo surūšiuotas pagrindinių dalių sąrašas. Likusias dalis jau turėjau.
Visas dalių sąrašas yra
- 5 x „Arduino“UNO
- 5 x NRF24L01 belaidės plokštės
- 5 x YL-105 (arba panašios) pertraukimo plokštės, skirtos NRF24L0
- 8 x raudoni šviesos diodai
- 8 x geltoni šviesos diodai (neturiu oranžinių šviesos diodų)
- 8 x žalios šviesos diodai
- 4 x RGB šviesos diodai
- 28 x 220 omų rezistoriai
- Duonos lentos / PCB ??
- 8 x modelio šviesoforai
- 6 x 8 ilgų kaiščių antraštės (šeštoji buvo skirta atstumui valdymo lentoje, žr. Vaizdo įrašą)
- Susitraukiantis vamzdelis
- Jumperio laidai
- Medienos plaušų plokštės gabalas ar kažkas plokščio
- Kiti medžio gabalai ??
- Dažyti ??
- Karšti klijai
- Laikas, kantrybė ir pasirinktas alkoholis
2 žingsnis: parašykite valdymo bloko kodą
Tai buvo dalis, kurią turėjau padaryti pirmiausia, tik tuo atveju, jei iš tikrųjų negalėčiau to valdyti, o tai būtų buvusi demonstracija.
Tai buvo pati sudėtingiausia projekto dalis, bet ir pati įdomiausia.
Turėjau atsisėsti ir apibrėžti visus galimus šviesos pokyčių derinius ir kaip jie sinchroniškai veiks kartu.
Kaip ir visas geras dizainas, jis prasidėjo popieriuje su labai ilgu skaičių sąrašu ir kadangi norėjau turėti kelias galimas operacijų sekas, sąrašas dar labiau pailgėjo.
Tačiau kartą apsidžiaugiau, kad turiu viską, ko maniau, kad reikia, ir kurį laiką spoksojus į skaičių puslapius prasidėjo mano OKS ir aš pradėjau matyti modelius.
Organizuodamas modelius, man pavyko suskirstyti visą seką į vieną 3 matmenų masyvą ir du 2 matmenų masyvus.
Viskas, ką turėjau padaryti dabar, buvo rasti būdą, kaip manipuliuoti tomis masyvomis, kad būtų sukurtas teisingas sekos ir šviesos žingsnis.
Tai užtruko, bet man pavyko tai pasiekti per mažiau nei penkiasdešimt kodo eilučių, įskaitant komentarus ir pan.
Šis kodas nėra skirtas silpnapročiams, bet jei suprantate daugialypius matricas, tai neturėtų būti labai sunku sekti. Arba mokymosi kreivė likusiems.
Esmė ta, kad aš tikiu, kad tai veikia ir jokiu būdu nereikėtų keisti. Bet …………
3 žingsnis: NRF24L01 „Breakout Board“mod
Deja, NRF24L01 modulis ir „YL-105“pertraukimo plokštė nėra labai draugiški duonai.
Pertraukimo lenta iš dalies padeda išspręsti problemą ir dar svarbiau, kad ji būtų tolerantiška 5 V įtampai, tačiau ji vis dar nėra tinkama duonai.
Taigi gavau šiek tiek išradingumo.
Savo „daiktų“kolekcijoje turiu 6 kaiščių antraštes su ilgais kaiščiais. Rūšis, reikalinga „Arduino Shields“gamybai.
Aš paėmiau vieną iš jų ir sulenkiau kaiščius 90 laipsnių kampu.
Nuėmiau vieną maitinimo bėgelį iš duonos lentos ir prijungiau antraštę prie duonos lentos krašto.
Tai paliko maitinimo kaiščius pertraukimo lentoje. Dabar jie yra kelyje.
Taigi aš juos pašalinau ir padėjau kitoje pertraukimo lentos pusėje, kad jie dabar išsikištų iš lentos galo.
Šios instrukcijos tikslais man reikia penkių NRF24L01 modulių, todėl juos sumontavau išilgai duonos lentos ir tada pritvirtinau maitinimo bėgelį išilgai visų maitinimo kaiščių, esančių pertraukimo plokštėje.
Jis atrodė gana tvarkingas, kol prijungiau „Arduinos“ir jis buvo šiek tiek perkrautas.
Be to, tai yra labai svarbu, kai prijungtas maitinimo šaltinis, visi „Arduinos“bus prijungti prie to paties šaltinio, ir to aš bandžiau išvengti, todėl didžiąją dalį vėl išardžiau.
Ateityje laikysiu plokštę su pora NRF24L01 modulių, skirtų prototipams kurti, taigi tai nėra visiškas laiko švaistymas.
4 žingsnis: šviesoforo įtaisai
Radau keletą mažų 170 kaklaraiščių lentų. Jie neturi maitinimo bėgelio, todėl mano modifikuota pertraukimo plokštė vis tiek tiktų. Nors ir nedideliu kampu dėl pertraukimo lentos aukščio.
Aš pastatiau tuos pačius keturių šviesoforų valdiklius, tos pačios spalvos laidus, padėties nustatymą ir tt. Dabar jie tikrai atskiri.
Valdymo blokui aš įdėjau NRF24L01 modulį ant PCB su RGB šviesos diodais. Aš naudoju RGB, nes, nors man nereikėjo matyti visų šviesų, tik raudonos ir žalios, jos užima mažiau vietos.
Prijungė šviesos diodus prie „Arduino“įprastu būdu ir pridėjo šiek tiek kodo, kad būtų rodoma raudona arba žalia kiekvieno šviesoforo komplekto būsena.
Stengiausi atitikti savo laidų spalvas, kad galėčiau lengvai pamatyti, ar vienoje iš lentų padariau kažką kitaip.
Turiu keletą trumpų „Dupont“laidų rinkinių, ir kadangi laidai yra įstrigę, tai padarė šią dalį gana lengvą.
NRF24L01:
- „CE Orange“į „Arduino“kaištį 10 (apibrėžta kode)
- CSN geltonas į „Arduino“kaištį 9 (apibrėžtas kode)
- „SCK Green“į „Arduino“kaištį 13 (privaloma)
- „MOSI Blue“į „Arduino“kaištį 11 (privaloma)
- „MISO Purple to Arduino 12“(privalomas)
- Vcc raudona iki 5v. Jei nenaudojate pertraukimo plokščių, tai turi būti 3.3v.
- GND Brown į Arduino GND
Šviesos blokai ir „Arduino“kaiščiai prie šviesos diodų:
- Raudona - raudonas šviesos diodas
- Oranžinis geltonas šviesos diodas (neturiu oranžinių šviesos diodų)
- Žalia, skirta žaliam šviesos diodui
- Juoda GND
Vienintelis mano nukrypimas buvo tai, kai prijungiau „Control Arduino“prie RGB šviesos diodų. Naudojau baltus ir pilkus laidus, nes baigėsi raudoni.
5 žingsnis: šviesoforai ir bandymai
Tai kodas baigtas ir kiekvienas atskiras valdymas taip pat baigtas. Dabar man reikia tik pačių šviesoforų.
Kaip jau sakiau anksčiau, „Thingiverse“radau nesudėtingą modelį ir sugebėjau atspausdinti aštuonis, kurie neatrodė labai prastai.
Aš sumontavau šviesos diodus su reikiamu 200 omų rezistoriumi ir jungtimi bei įžeminimo laidu.
Susitraukite laidus vamzdeliais ir karštai priklijuokite viską.
Nusprendžiau juos nudažyti juodai, kai buvo sumontuoti visi šviesos diodai. Bloga mintis, pirmiausia turėjau tai padaryti.
Viską išbandžiau prieš pradėdamas toliau.
6 žingsnis: sankryža
Aš nusprendžiau juos visus sumontuoti ant lentos, todėl dabar turėjau sukurti panašias sankryžas.
Aš gyvenu Jungtinėje Karalystėje, todėl čia važiuojame ne ta kelio puse, todėl savo sankryžą padariau draugišką JK, kiek tai leistų mano menki įgūdžiai.
Tai buvo gana paprasta, tik daug laiko; ir esu įsitikinęs, kad nėra sankryžų, kurios iš tikrųjų atrodo taip, bet mano nėra duobių.
Nenorėjau visam laikui paaukoti savo „Arduinos“šiam projektui, todėl padariau kompromisą, užpildydamas kiekvieną iš jų 10 mm atotrūkiais ir karštai priklijavau prie plokštės pagrindo.
Ką aš padariau, tai karštai priklijuoti mini duonos lentą prie „Arduino“šono.
Pirma, jis laikė NRF24L01 ir pertraukimo lentą nuo sankryžos pagrindo, ir, antra, aš retai naudoju „Arduino“be tam tikros rūšies kepimo lentos, todėl jie vis tiek bus tokie naudingi.
7 žingsnis: viskas padaryta
Įtraukti visi kodo failai.
Aš čia neperžiūrėjau kodo, nes šis „Instructable“yra pakankamai ilgas be jo.
Tikiuosi, kad tai buvo naudinga instrukcija, net jei ji tik parodo, kaip belaidžiu būdu valdyti daugybę kitų „Arduino“plokščių naudojant labai priimtiną kainą NRF24L01.
Jei turite klausimų, nedvejodami rašykite komentarą ir aš padarysiu viską, kad padėtume.
Rekomenduojamas:
Itin paprastas būdas pradėti namų automatizavimą naudojant „pasidaryk pats“modulius: 6 žingsniai
Itin paprastas būdas pradėti naudotis namų automatizavimu naudojant „pasidaryk pats“modulius: buvau maloniai nustebintas, kai nusprendžiau prie namų asistento pridėti keletą „pasidaryk pats“jutiklių. Naudoti „ESPHome“yra labai paprasta ir šiame įraše sužinosime, kaip valdyti GPIO kaištį, taip pat gauti temperatūrą & drėgmės duomenys iš belaidžio tinklo
Belaidis nuotolinis valdymas naudojant 2,4 GHz NRF24L01 modulį su „Arduino“- Nrf24l01 4 kanalų / 6 kanalų siųstuvo imtuvas keturkopteriui - Rc sraigtasparnis - Rc lėktuvas naudojant „Arduino“: 5 žingsniai (su nuotraukomis)
Belaidis nuotolinis valdymas naudojant 2,4 GHz NRF24L01 modulį su „Arduino“| Nrf24l01 4 kanalų / 6 kanalų siųstuvo imtuvas keturkopteriui | Rc sraigtasparnis | Rc lėktuvas naudojant „Arduino“: valdyti Rc automobilį | Kvadopteris | Dronas | RC plokštuma | RC valtis, mums visada reikia imtuvo ir siųstuvo, tarkime, kad RC QUADCOPTER mums reikia 6 kanalų siųstuvo ir imtuvo, o tokio tipo TX ir RX yra per brangus, todėl mes jį pagaminsime savo
Civilinės infrastruktūros struktūrinis sveikatos stebėjimas naudojant belaidžius vibracijos jutiklius: 8 žingsniai
Civilinės infrastruktūros struktūrinis sveikatos stebėjimas naudojant belaidžius vibracijos jutiklius: seno pastato ir civilinės infrastruktūros būklės pablogėjimas gali sukelti mirtiną ir pavojingą situaciją. Privalomas nuolatinis šių struktūrų stebėjimas. Struktūrinė sveikatos stebėsena yra labai svarbi metodika vertinant
Belaidis ryšys naudojant pigius 433 MHz RF modulius ir „Pic“mikrovaldiklius. 2 dalis: 4 žingsniai (su nuotraukomis)
Belaidis ryšys naudojant pigius 433 MHz RF modulius ir „Pic“mikrovaldiklius. 2 dalis. Pirmoje šios instrukcijos dalyje parodžiau, kaip užprogramuoti PIC12F1822 naudojant MPLAB IDE ir XC8 kompiliatorių, kad būtų galima siųsti paprastą eilutę belaidžiu būdu, naudojant pigius TX/RX 433 MHz modulius. Imtuvo modulis buvo prijungtas per USB prie UART TTL kabelinė reklama
Automobilinė stereofoninė ATX sistema ir 3 krypčių garsiakalbiai (skirti naudoti namuose): 10 žingsnių (su nuotraukomis)
Automobilinė stereofoninė garso sistema su ATX ir 3 krypčių garsiakalbiai (skirti naudoti namuose): Jau seniai tyrinėjau, kaip įjungti automobilinę stereofoninę sistemą be 12 voltų baterijos, kurią vėliau tikrai turėsiu įkrauti. Kodėl? na …. nes turiu sony mp3 cd usb aux ipod-cable unit, 4x52w watt w/sub-out, kas dar