Cuprins:

Dimmer inteligent cu LED DIY controlat prin Bluetooth: 7 pași
Dimmer inteligent cu LED DIY controlat prin Bluetooth: 7 pași

Video: Dimmer inteligent cu LED DIY controlat prin Bluetooth: 7 pași

Video: Dimmer inteligent cu LED DIY controlat prin Bluetooth: 7 pași
Video: Prezentare kit Philips HUE becuri inteligente ZigBee + Hub, telecomanda hue dimmer, hue band LED V4 2024, Iulie
Anonim
Dimmer inteligent cu LED DIY controlat prin Bluetooth
Dimmer inteligent cu LED DIY controlat prin Bluetooth

Acest instructable descrie cum să construiți un dimmer digital inteligent. Un dimmer este un comutator de lumină obișnuit care este utilizat în case, hoteluri și multe alte clădiri. Versiunile mai vechi ale comutatoarelor variatoare erau manuale și ar încorpora de obicei un comutator rotativ (potențiometru) sau butoane pentru a controla nivelul de lumină. Acest instructabil descrie cum să construiți un regulator digital care are două moduri de a controla intensitatea luminii; un smartphone și butoane fizice. Cele două moduri pot funcționa perfect împreună, astfel încât utilizatorul să poată crește sau reduce luminozitatea atât de la un buton, cât și de la un smartphone. Proiectul este implementat folosind un SLG46620V CMIC, modul HC-06 Bluetooth, butoane și LED-uri.

Vom folosi SLG46620V CMIC, deoarece ajută la minimizarea componentelor discrete ale proiectului. IC-urile GreenPAK ™ sunt mici și au componente multifuncționale, ceea ce permite unui proiectant să reducă componentele și să adauge noi caracteristici. În plus, costul proiectului este redus ulterior.

SLG46620V conține, de asemenea, o interfață de conexiune SPI, blocuri PWM, FSM și o mulțime de blocuri suplimentare utile într-un cip mic. Aceste componente permit utilizatorului să construiască un dimmer inteligent practic care poate fi controlat prin intermediul unui dispozitiv Bluetooth sau butoane de perete, acceptă reglarea pe timp prelungit și adăugarea de caracteristici selectabile fără a utiliza un microcontroler sau componente scumpe.

Mai jos am descris pașii necesari pentru a înțelege cum a fost programată soluția pentru a crea un dimmer inteligent cu LED controlat prin Bluetooth. Cu toate acestea, dacă doriți doar să obțineți rezultatul programării, descărcați software-ul GreenPAK pentru a vizualiza fișierul de proiectare GreenPAK deja finalizat. Conectați kitul de dezvoltare GreenPAK la computer și apăsați programul pentru a crea dimmerul inteligent LED controlat prin Bluetooth.

Pasul 1: Caracteristicile proiectului și interfața

Caracteristicile și interfața proiectului
Caracteristicile și interfața proiectului

Caracteristicile proiectului:

1. Două metode de control; aplicație mobilă și butoane reale.

2. Tranziție on-off lină pentru lumină. Acest lucru este mai sănătos pentru ochii consumatorului. De asemenea, oferă un sentiment mai luxos, care este atrăgător pentru hoteluri și alte industrii de servicii.

3. Caracteristica modului de repaus. Aceasta va fi o valoare adăugată pentru această aplicație. Când utilizatorul activează acest mod, luminozitatea luminii scade treptat în 10 minute. Acest lucru ajută persoanele care suferă de insomnie. Este, de asemenea, util pentru dormitoare pentru copii și magazine cu amănuntul (ora închiderii).

Interfața proiectului

Interfața proiectului are patru butoane, care sunt utilizate ca intrări GreenPAK:

PORNIT / OPRIT: porniți lumina PORNIT / OPRIT (pornire soft / oprire).

SUS: crește nivelul de lumină.

Jos: scade nivelul luminii.

Modul Sleep: prin activarea modului Sleep, luminozitatea luminii scade treptat pe o perioadă de 10 minute. Acest lucru oferă utilizatorului timp înainte de a dormi și garantează că lumina nu va rămâne aprinsă toată noaptea.

Sistemul va emite un semnal PWM, care va fi transmis către un LED extern și un indicator LED pentru modul de repaus.

Designul GreenPAK este alcătuit din 4 blocuri principale. Primul este un receptor UART, care primește date de la modulul Bluetooth, extrage comenzi și le trimite către o unitate de control. Al doilea bloc este o unitate de control, care primește comenzi care vin de la receptorul UART sau de la butoanele externe. Unitatea de control decide acțiunea necesară (porniți / dezactivați, măriți, micșorați, activați modul de repaus). Această unitate este implementată folosind LUT-uri.

Al treilea bloc furnizează generatoarele CLK. În acest proiect, un contor FSM este utilizat pentru a controla PWM. Valoarea FSM se va schimba (sus, jos) în funcție de comenzile date de 3 frecvențe (înaltă, medie și joasă). În această secțiune vor fi generate cele trei frecvențe și CLK-ul necesar trece la FSM conform ordinii solicitate; La pornire / oprire, frecvența înaltă trece la FSM pentru pornire / oprire ușoară. În timpul estompării, frecvența medie trece. Frecvența joasă trece în modul de repaus pentru a reduce valoarea FSM mai încet. Apoi, luminozitatea luminii scade și încet. Al patrulea bloc este unitatea PWM, care generează impulsuri către LED-uri externe.

Pasul 2: Proiectare GreenPAK

Cel mai bun mod de a construi un dimmer folosind GreenPAK este folosind FSM pe 8 biți și un PWM. În SLG46620, FSM1 conține 8 biți și poate fi utilizat cu PWM1 și PWM2. Modulul Bluetooth trebuie să fie conectat, ceea ce înseamnă că trebuie utilizată ieșirea paralelă SPI. Bitele de ieșire paralele SPI de la 0 la 7 conexiuni sunt combinate cu ieșirile DCMP1, DMCP2 și LF OSC CLK, OUT1, OUT0 OSC. PWM0 își obține ieșirea de la FSM0 (16 biți). FSM0 nu se oprește la 255; crește până la 16383. Pentru a limita valoarea contorului la 8 biți se adaugă un alt FSM; FSM1 este folosit ca indicator pentru a ști când contorul ajunge la 0 sau 255. FSM0 a fost folosit pentru a genera pulsul PWM. Deoarece valorile celor două FSM trebuie schimbate în același timp pentru a avea aceeași valoare, designul devine un pic complex, în ambele FSM având un CLK predefinit, limitat, selectabil. CNT1 și CNT3 sunt utilizate ca mediatori pentru a transmite CLK ambelor FSM.

Proiectarea constă din următoarele secțiuni:

- Receptor UART

- Unitatea de comandă

- Generatoare CLK și multiplexor

- PWM

Pasul 3: receptor UART

Receptor UART
Receptor UART

Mai întâi, trebuie să configurăm modulul HC06 Bluetooth. HC06 utilizează protocolul UART pentru comunicare. UART înseamnă Receptor / Transmițător Universal Asincron. UART poate converti datele înainte și înapoi între formate paralele și seriale. Include un receptor de la serial la paralel și un convertor de la paralel la serial, ambele fiind tactate separat. Datele primite în HC06 vor fi transmise dispozitivului nostru GreenPAK. Starea de repaus pentru pinul 10 este HIGH. Fiecare caracter trimis începe cu un bit de pornire LOW logic, urmat de un număr configurabil de biți de date și de unul sau mai mulți biți de stop logici HIGH.

HC06 trimite 1 bit de START, 8 biți de date și un bit STOP. Rata sa de transmisie implicită este 9600. Vom trimite octetul de date de la HC06 la blocul SPI al GreenPAK SLG46620V.

Deoarece blocul SPI nu are control de biți START sau STOP, acești biți sunt folosiți în schimb pentru a activa și a dezactiva semnalul de ceas SPI (SCLK). Când pinul 10 scade, IC-ul a primit un bit START, așa că folosim detectorul PDLY pentru a identifica începutul comunicării. Detectorul de margine căzătoare ceasează DFF0, care permite semnalului SCLK să acționeze blocul SPI.

Rata noastră de transmisie este de 9600 biți pe secundă, deci perioada noastră SCLK trebuie să fie 1/9600 = 104 µs. Prin urmare, am setat frecvența OSC la 2 MHz și am folosit CNT0 ca divizor de frecvență.

2 MHz - 1 = 0,5 µs

(104 u / 0,5 u) - 1 = 207

Prin urmare, dorim ca valoarea contorului CNT0 să fie 207. Pentru a ne asigura că datele nu sunt ratate, se adaugă o întârziere de jumătate de ciclu de ceas pe ceasul SPI, astfel încât blocul SPI să fie tactat la momentul potrivit. Acest lucru se realizează utilizând CNT6, LUT1 pe 2 biți și ceasul extern al blocului OSC. Ieșirea CNT6 nu crește până la 52 µs după ce DFF0 este tactat, ceea ce reprezintă exact jumătate din perioada noastră SCLK de 104 µs. Când crește, poarta LUT1 AND pe 2 biți permite semnalului OSC de 2 MHz să treacă în EXT. Intrare CLK0, a cărei ieșire este conectată la CNT0.

Pasul 4: Unitate de control

Unitatea de comandă
Unitatea de comandă

În această secțiune, comenzile vor fi executate în funcție de octetul primit de la receptorul UART sau în funcție de semnalele de la butoanele externe. Pinii 12, 13, 14, 15 sunt inițializați ca intrări și sunt conectați la butoane externe.

Fiecare pin este conectat intern la o intrare de poartă SAU, în timp ce a doua intrare a porții este conectată cu semnalul corespunzător care vine de la smartphone prin Bluetooth, care va apărea pe ieșirea SPI Parallel.

DFF6 este utilizat pentru activarea modului de repaus, în cazul în care ieșirea sa se schimbă la mare, cu marginea ascendentă provenind de la 2-bit LUT4, în timp ce DFF10 este utilizat pentru a menține starea de iluminare, iar ieșirea sa se schimbă de la scăzut la înalt și invers, cu fiecare margine ascendentă de la ieșirea LUT10 pe 3 biți.

FSM1 este un contor pe 8 biți; dă un impuls ridicat la ieșire atunci când valoarea sa ajunge la 0 sau 255. În consecință, este folosit pentru a împiedica FSM0 (16 biți) să depășească valoarea 255, deoarece ieșirea sa resetează DFF-urile și schimbă starea DFF10 de la pornit la oprit și invers dacă iluminarea este controlată de butoanele +, - și nivelul maxim / minim a fost atins.

Semnalele conectate la intrările FSM1 se mențin, sus vor ajunge la FSM0 prin P11 și P12 pentru a sincroniza și a păstra aceeași valoare pe ambele contoare.

Pasul 5: Generatoare și multiplexor CLK

Generatoare și multiplexor CLK
Generatoare și multiplexor CLK

În această secțiune, vor fi generate trei frecvențe, dar numai una va urmări FSM-urile în același timp. Prima frecvență este RC OSC, care este preluată din matricea 0 până la P0. A doua frecvență este LF OSC care este preluată și din matricea 0 până la P1; a treia frecvență este ieșirea CNT7.

LUT9 pe 3 biți și LUT11 pe 3 biți permit trecerea unei frecvențe, conform ieșirii LUT14 pe 3 biți. După aceea, ceasul ales transmite către FSM0 și FSM1 prin CNT1 și CNT3.

Pasul 6: PWM

PWM
PWM

În cele din urmă, valoarea FSM0 se transformă în semnal PWM pentru a apărea prin pinul 20 care este inițializat ca o ieșire și este conectat la LED-urile externe.

Pasul 7: aplicația Android

Aplicația Android
Aplicația Android
Aplicația Android
Aplicația Android
Aplicația Android
Aplicația Android

Aplicația Android are o interfață de control virtuală similară cu interfața reală. Are cinci butoane; PORNIT / OPRIT, SUS, JOS, modul Repaus și Conectare. Această aplicație Android va putea converti apăsările de butoane într-o comandă și va trimite comenzile către modulul Bluetooth care urmează să fie efectuat.

Această aplicație a fost realizată cu MIT App Inventor, care nu necesită nicio experiență de programare. App Inventor permite dezvoltatorului să creeze o aplicație pentru dispozitivele cu sistem de operare Android utilizând un browser web prin conectarea blocurilor de programare. Puteți importa aplicația noastră în MIT App Inventor făcând clic pe Proiecte -> Importați proiectul (.aia) de pe computerul meu și selectând fișierul.aia inclus în această Notă a aplicației.

Pentru a crea aplicația Android, trebuie pornit un nou proiect. Sunt necesare cinci butoane: unul este un selector de liste pentru dispozitivele Bluetooth, iar celelalte sunt butoanele de control. Trebuie să adăugăm și un client Bluetooth. Figura 6 este o captură de ecran a interfeței de utilizare a aplicației noastre Android.

După ce adăugăm butoanele, vom atribui o funcție software pentru fiecare buton. Vom folosi 4 biți pentru a reprezenta starea butoanelor. Un bit pentru fiecare buton, prin urmare, când apăsați butonul, un număr specific va fi trimis prin Bluetooth către circuitul fizic.

Aceste numere sunt prezentate în Tabelul 1.

Concluzie

Acest instructabil descrie un variator inteligent care poate fi controlat în două moduri; o aplicație Android și butoane reale. Patru blocuri separate sunt conturate în cadrul GreenPAK SLG46620V care controlează fluxul procesului pentru creșterea sau scăderea PWM a unei lumini. În plus, o caracteristică în modul Repaus este prezentată ca un exemplu de modulație suplimentară disponibilă pentru aplicație. Exemplul prezentat este de joasă tensiune, dar poate fi modificat pentru implementări de tensiune mai mare.

Recomandat: