Satura rādītājs:
- Piegādes
- 1. darbība. Izprotiet sistēmu
- 2. darbība. WebSocketServer rakstīšana
- 3. darbība: izveidojiet sērijas komandu protokolu
Video: Apgaismo mani! reāllaika pārrobežu platformas LED sloksnes vadība: 5 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:53
Apgaismo mani! ir sistēma, kuru es izgudroju, lai reāllaikā kontrolētu RGB LED sloksni, vienlaikus saglabājot zemas izmaksas un augstu veiktspēju.
Serveris ir rakstīts Node.js, un tāpēc tas ir savstarpēji platformējams.
Manā piemērā es izmantoju Raspberry Pi 3B ilgstošai lietošanai, bet savu Windows datoru demonstrācijas un atkļūdošanas labad.
Četru kontaktu joslu kontrolē Arduino Nano tipa plāksne, kas izpilda sērijveidā dotas komandas, lai nosūtītu PWM signālus uz trim tranzistoriem, pārslēdzot +12VDC uz atbilstošo sloksnes krāsu tapu.
LightMeUp! sistēma arī pārbauda savu temperatūru, kad tā ir virs 60 ° C (140 ° F), tā ieslēdz divus korpusā iebūvētus 12 V līdzstrāvas datoru ventilatorus, lai atdzesētu, lai uzlabotu ķēdes kalpošanas laiku.
Vēl viena LightMeUp iezīme! ir izgaismot Bombay-Sapphire Gin pudeli, bet tas nav šīs pamācības uzmanības centrā.
Patīk lasīt:)
Piegādes
- Arduino Nano (vai jebkurš cits ATmega328 / augstāka līmeņa mikrokontrolleris)
- Raspberry Pi 3 modelis B ar instalētu Node.js (vai jebkuru citu datoru)
- 12V RGB 4-pin LED sloksne
- 12V 3A Barošanas avots
- Džempera kabeļi (protams, vīrietis-vīrietis, ja izmantojat maizes dēli)
- Maizes dēlis (pēc izvēles)
- 2 12 V līdzstrāvas datoru ventilatori (pēc izvēles)
- 3x TIP120 Darlington tranzistors ar radiatoru (4, ja vēlaties iekļaut dzesēšanas ventilatorus)
- 2 statusa gaismas diodes sarkanas un zaļas (pēc izvēles)
- 6, 7K NTC temperatūras rezistors + 6, 7K rezistors (pēc izvēles)
- USB-Mini līdz USB 2.0 datu kabelis (lai Raspberry Pi sazinātos ar Arduino)
- Ārēji darbināms USB centrmezgls (pēc izvēles, tikai Raspberry Pi)
1. darbība. Izprotiet sistēmu
Apgaismo mani! pamatā ir ļoti vienkārša elektroniskā shēma.
Mums ir sava veida dators (šajā gadījumā Raspberry Pi), kas sērijveidā sazinās ar mūsu mikrokontrollera plati. Pēc tam šī tāfele izpilda īpašas sērijas komandas, piemēram, "RGB (255, 255, 255)", kas mūsu LED sloksni padarītu baltu.
Tiklīdz esam ieguvuši trīs vērtības SARKANA, ZAĻA un ZILA, kas nepieciešamas mūsu 4-pin LED sloksnei, mēs izpildām analogWrite (tapu, vērtību), lai piegādātu mūsu TIP120 tranzistoru ar PWM signālu.
Šis PWM signāls ļauj tranzistoram noteiktā pakāpē vai pilnībā ieslēgt / izslēgt atbilstošo krāsu tapu, kurai kolektors ir pievienots. Jā, daudz "uz":)
Sajaucot trīs tranzistoru izejas ar LED sloksņu krāsu tapām, mēs varam izveidot būtībā jebkuru vēlamo krāsu!
Tagad ar šo izpratni mēs varam uzbrukt šī projekta lielākajam izaicinājumam - websocketserver un tā sērijas savienojumam ar mūsu Arduino.
2. darbība. WebSocketServer rakstīšana
Tagad mums ir jāizveido īpaša veida tīmekļa serveris, kas ļauj mums pārsūtīt datus uz priekšu un atpakaļ, vienreiz neatsvaidzinot, lai panāktu reāllaika LED sloksnes vadību.
Lūdzu, ņemiet vērā, ka reāllaika saziņa, protams, nav iespējama, vienmēr būs vismaz dažas milisekundes kavēšanās, bet cilvēka acīm tas ir ievērojams kā reālā laikā.
To var viegli sasniegt, izmantojot bibliotēku socket.io, ja izmantojat Node.js tāpat kā es. Tomēr, protams, jūs vienmēr varat pieturēties pie savas iecienītākās programmēšanas valodas.
Mēs strādāsim ar interneta kontaktligzdas savienojumu, kas ļauj mums pārsūtīt ievades datus, piemēram, to, kurai krāsai vēlaties iestatīt LED sloksni, vai statusa datus, piemēram, "LED IESLĒGTS" divvirzienu režīmā bez atsvaidzināšanas.
Vēl viena ļoti svarīga funkcija, kas serverim vajadzētu būt, bet tai nav nepieciešama, ir vienkārša pieteikšanās. Es pamatoju savu pieteikšanos, izmantojot vienkāršu lietotājvārda un paroles lauku. Pēc tam šī informācija tiek ievietota servera /pieteikšanās maršrutā, kas pēc tam salīdzina lietotājvārdu ar lietotāju sarakstu (.txt fails) un atbilstošo paroli SHA256 šifrētā formā. Jūs nevēlaties, lai jūsu kaimiņi sajauktos ar jūsu LED sloksni, kamēr jūs baudāt savu iecienītāko dzērienu uz visērtākā sēdekļa, vai ne?
Tagad nāk servera sirds, seriālā komunikācija.
Jūsu serverim jāspēj sazināties sērijveidā - vietnē Node.js to var panākt, atverot portu, izmantojot "serialport" bibliotēku. Bet vispirms nosakiet sava arduino porta nosaukumu datorā, kurā atrodas serveris. Atkarībā no jūsu operētājsistēmas portiem būs dažādi nosaukumi, t.i. operētājsistēmā Windows šie porti ir nosaukti par "COMx" portiem, savukārt Linux - ar nosaukumu "/dev/ttyUSBx", kur x ir USB porta numurs.
3. darbība: izveidojiet sērijas komandu protokolu
Augšējā attēlā redzat faktisko Arduino IDE kodu, kas ir atbildīgs par RGB vadību. Šī soļa mērķis ir panākt, lai jūsu pašrakstītais serveris un Arduino tāfele veiksmīgi sarunātos savā starpā.
Kad esat veiksmīgi atvēris seriālo portu, jums jāspēj nosūtīt komandas tāfelei, kas rūpējas par jūsu vēlmēm. Piemēram, ja mēs izvelkam pirkstu virs krāsu atlasītāja HTML lapā, RGB kods jānosūta uz serveri, kurš pēc tam nosūta to jūsu Arduino, lai tā apstrādā iestatītās vērtības.
Es izmantoju jscolor, tajos ir lieliski ieviests augstas kvalitātes krāsu atlases elements, kuram pieder notikums ar nosaukumu "onFineChange", kas ļauj apstrādāt datus no krāsu atlasītāja, tiklīdz mainās to vērtības.
Ieteicams:
RGB LED sloksnes Bluetooth kontrolieris V3 + mūzikas sinhronizācija + apkārtējās gaismas vadība: 6 soļi (ar attēliem)
RGB Led Strip Bluetooth kontrolieris V3 + mūzikas sinhronizācija + apkārtējās gaismas vadība: Šis projekts izmanto arduino, lai ar tālruni, izmantojot Bluetooth, kontrolētu RGB LED sloksni. Varat mainīt krāsu, padarīt gaismas sinhronizētas ar mūziku vai automātiski pielāgot apkārtējam apgaismojumam
Kā izveidot platformas veidotāju: 6 soļi (ar attēliem)
Kā izveidot platformas veidotāju nulles režīmā: Scratch ir vietne, kurā cilvēki veido spēles un citas programmas, izmantojot iepriekš sagatavotus blokus, kurus velciet un nometiet uz darba vietu. Šodien es jums parādīšu, kā izveidot platformas spēli no nulles
Vienkāršas LED sloksnes lampas (uzlabojiet savas LED sloksnes): 4 soļi (ar attēliem)
Vienkāršas LED sloksnes lampas (uzlabojiet savas LED sloksnes): Es jau ilgu laiku izmantoju LED sloksnes un vienmēr esmu mīlējis to vienkāršību. Jūs vienkārši nogriežat kādu lomu, pielodējat dažus vadus, pievienojat barošanas avotu un esat ieguvis gaismas avotu. Gadu gaitā esmu atradis c
IoT bāzes platforma ar RaspberryPi, WIZ850io: platformas ierīces draiveris: 5 soļi (ar attēliem)
IoT bāzes platforma ar RaspberryPi, WIZ850io: platformas ierīces draiveris: es zinu RaspberryPi platformu IoT. Nesen WIZnet paziņoja par WIZ850io. Tāpēc es ieviesu RaspberryPi lietojumprogrammu, izmantojot Ethernet SW modifikāciju, jo es varu viegli apstrādāt avota kodu. Jūs varat pārbaudīt platformas ierīces draiveri, izmantojot RaspberryPi
ESP8266 RGB LED STRIP WIFI vadība - NODEMCU kā IR tālvadības pults LED joslai, kas tiek kontrolēta, izmantojot Wifi - RGB LED STRIP viedtālruņa vadība: 4 soļi
ESP8266 RGB LED STRIP WIFI vadība | NODEMCU kā IR tālvadības pults LED joslai, kas tiek kontrolēta, izmantojot Wifi | RGB LED STRIP viedtālruņa vadība: Sveiki, puiši, šajā apmācībā mēs iemācīsimies izmantot nodemcu vai esp8266 kā IR tālvadības pulti, lai kontrolētu RGB LED sloksni, un Nodemcu vadīs ar viedtālruni, izmantojot wifi. Tātad būtībā jūs varat kontrolēt RGB LED STRIP ar savu viedtālruni