Sisukord:
- Tarvikud
- Samm: mõistke süsteemi
- 2. samm: WebSocketServeri kirjutamine
- 3. samm: looge jadakäskude protokoll
Video: Anna mulle tuld! reaalajas ristplatvormitud LED-riba juhtimine: 5 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:46
Anna mulle tuld! on süsteem, mille leiutasin RGB LED-riba reaalajas juhtimiseks, hoides samal ajal kulud madalad ja jõudluse kõrge.
Server on kirjutatud Node.js ja seetõttu platvormidevaheline.
Minu näites kasutan Raspberry Pi 3B -d pikaajaliseks kasutamiseks, kuid oma Windowsi arvutit demonstreerimise ja silumise huvides.
4-pin riba juhib Arduino Nano tüüpi plaat, mis täidab järjestikku antud käske PWM-signaalide saatmiseks kolmele transistorile, mis lülitavad +12 V alalisvoolu riba vastavasse värvi-tihvti.
LightMeUp! süsteem kontrollib ka enda temperatuuri, kui see on üle 60 ° C (140 ° F), lülitab see sisse kaks korpusesse ehitatud 12 V alalisvoolu arvuti ventilaatorit, et jahutada, et parandada vooluahela eluiga.
Veel üks LightMeUpi funktsioon! on valgustada Bombay-Sapphire Gin pudelit, kuid see ei ole selle juhendi keskmes.
Nautige lugemist:)
Tarvikud
- Arduino Nano (või mõni muu ATmega328 / kõrgema kvaliteediga mikrokontroller)
- Raspberry Pi 3 mudel B, millele on installitud Node.js (või mõni muu arvuti)
- 12V RGB 4-pin LED-riba
- 12V 3A toide
- Jumperkaablid (muidugi mees-mees, kui kasutate leivaplaati)
- Leivalaud (valikuline)
- 2 12V alalisvoolu arvuti ventilaatorit (valikuline)
- 3x TIP120 Darlingtoni transistor koos jahutiga (4, kui soovite lisada jahutusventilaatoreid)
- 2 oleku LED -i punane ja roheline (valikuline)
- 6, 7K NTC temperatuuripõhine takisti + 6, 7K takisti (valikuline)
- USB-Mini-USB 2.0 andmekaabel (Raspberry Pi jaoks Arduinoga suhtlemiseks)
- Välise toitega USB-jaotur (valikuline, ainult Raspberry Pi jaoks)
Samm: mõistke süsteemi
Anna mulle tuld! põhineb väga lihtsal elektroonilisel vooluringil.
Meil on mingi arvuti (antud juhul Raspberry Pi), mis suhtleb järjestikku meie mikrokontrolleri plaadiga. See plaat täidab seejärel konkreetseid jadakäske nagu "RGB (255, 255, 255)", mis muudaksid meie LED-riba valgeks.
Kui oleme saanud oma 4-pin LED-riba jaoks vajalikud kolm punast, rohelist ja sinist väärtust, käivitame analogWrite (tihvt, väärtus), et anda meie TIP120 transistorile PWM-signaal.
See PWM -signaal võimaldab transistoril lülitada vastava värvi tihvti, millega kollektor on maandusega ühendatud, teatud määral või täielikult sisse / välja. Jah, palju "to":)
Segades kolm transistori väljundit LED -ribade värvipulkadega, saame luua põhimõtteliselt mis tahes värvi!
Nüüd saame selle arusaamaga rünnata selle projekti suurimat väljakutset, veebipõhist serverit ja selle jadaühendust meie Arduinoga.
2. samm: WebSocketServeri kirjutamine
Nüüd peame looma spetsiifilise veebiserveri, mis võimaldab meil reaalajas LED -riba juhtimise saavutamiseks andmeid edasi -tagasi üle kanda ilma värskendamata.
Pange tähele, et reaalajas suhtlemine on muidugi võimatu, sellega kaasneb alati vähemalt paar millisekundit viivitust, kuid inimsilma jaoks on see reaalajas märkimisväärne.
Seda saab hõlpsasti saavutada, kasutades teeki socket.io, kui kasutate Node.js -i nagu mina. Loomulikult võite alati jääda oma lemmikprogrammeerimiskeele juurde.
Tegeleme veebipistikühendusega, mis võimaldab meil edastada sisendandmeid, näiteks millisele värvile soovite LED-riba määrata, või olekuandmeid, nagu "LED ON", kahesuunaliselt ilma värskendamiseta.
Teine väga oluline funktsioon, mis serveril peaks olema, kuid ei pea seda tegema, on lihtne sisselogimine. Ma lähtusin oma sisselogimisest lihtsa kasutajanime ja parooli väljalt. Need andmed postitatakse seejärel serveri /sisselogimisteele, mis seejärel võrdleb kasutajanime kasutajate loendiga (.txt-fail) ja sellele vastava parooliga SHA256-krüptitud kujul. Te ei taha, et teie naabrid teie LED -ribaga segi ajaksid, kui naudite oma lemmikjooki oma kõige mugavamal istmel, eks?
Nüüd tuleb serveri süda, jadaühendus.
Teie server peab suutma suhelda järjestikku - Node.js -s on seda võimalik saavutada, avades pordi, kasutades "jadaporti". Kuid kõigepealt määrake oma arduino pordi nimi arvutis, mis serverit majutab. Sõltuvalt teie operatsioonisüsteemist on pordidel erinevad nimed, nt. Windowsis on nende portide nimi "COMx", linuxis aga "/dev/ttyUSBx", kus x on USB -pordi number.
3. samm: looge jadakäskude protokoll
Ülaltoodud pildil näete tegelikku Arduino IDE koodi, mis vastutab RGB juhtimise eest. Selle sammu eesmärk on panna teie ise kirjutatud server ja Arduino plaat üksteisega edukalt rääkima.
Kui olete oma jadaporti edukalt avanud, peate suutma saata käske tahvlile, mis hoolitseb teie soovide eest. Näiteks kui tõmbame sõrme HTML -i veebilehel värvivalija kohale, tuleks RGB -kood saata serverisse, mis seejärel saadab selle teie Arduinole, et see töötleks määratud väärtusi.
Ma kasutasin jscolori, neil on suurepärane kvaliteetse värvivaliku elemendi juurutus, millele kuulub sündmus nimega "onFineChange", mis võimaldab teie värvianduri protsessiandmeid kohe, kui selle väärtused muutuvad.
Soovitan:
"Alexa, saada mulle sõnad _____": 9 sammu (koos piltidega)
"Alexa, saada mulle sõnad _____": Kuulate lugu, millega soovite koos laulda? Tavaliselt peaksite läbima raske ülesande, kirjutades laulu nime google'i, millele järgneb sõna "lyrics". Tavaliselt teeksite ka palju kirjavigu, valesti klõpsamist
Reaalajas Covid19 jälgija, kasutades ESP8266 ja OLED - Reaalajas Covid19 armatuurlaud: 4 sammu
Reaalajas Covid19 jälgija, kasutades ESP8266 ja OLED | Reaalajas Covid19 armatuurlaud: külastage Techtronic Harshi veebisaiti: http: //techtronicharsh.com Kõikjal, kus esineb tohutu uudse koroonaviiruse (COVID19) puhang. Vajalik oli jälgida praegust COVID-19 stsenaariumi maailmas. Niisiis oli see kodus olles
Tuleta mulle meelde, et võtaksin ravimimasinat: 5 sammu
Tuleta mulle meelde, et võtaksite meditsiinimasinat: see on masin, mis võib teile meelde tuletada ravimi võtmist. Inimesed unustavad sageli ravimit võtta, kas enne väljaminekut või enne magamaminekut. Masinast möödudes tilgutab see ravimit, nii et pange see sinna, kust regulaarselt möödute, näiteks voodi äärde
Edison teeb mulle kohvi (kood): 3 sammu
Edison teeb mulle kohvi (kood): see projekt võimaldab teil käivitada toimingu (nt kohvi serveerimine), kui WiFi -võrk tuvastab WiFi -kliendi (näiteks teie või teie töötajad teie kontorisse jõudes)
IDC2018IOT Öelge mulle, millal vahelduvvool välja lülitada: 7 sammu
IDC2018IOT Öelge mulle, millal vahelduvvool välja lülitada: Paljud meist, eriti suvel, kasutavad vahelduvvoolu peaaegu vahetpidamata, kuigi tegelikult saame teatud kellaaegadel lihtsalt akna avada ja mõnusat tuult nautida. Samuti märkasime isiklikult, et mõnikord isegi unustame vahelduvvoolu välja lülitada, kui