Sadržaj:

Uradi sam pametan LED prigušivač, kontroliran putem Bluetootha: 7 koraka
Uradi sam pametan LED prigušivač, kontroliran putem Bluetootha: 7 koraka

Video: Uradi sam pametan LED prigušivač, kontroliran putem Bluetootha: 7 koraka

Video: Uradi sam pametan LED prigušivač, kontroliran putem Bluetootha: 7 koraka
Video: CS50 2014 – 9-я неделя 2024, Novembar
Anonim
DIY Smart LED zatamnjivač kontrolira se putem Bluetootha
DIY Smart LED zatamnjivač kontrolira se putem Bluetootha

Ovaj Instructable opisuje kako izgraditi pametni digitalni zatamnjivač. Zatamnjivač je uobičajeni prekidač za svjetlo koji se koristi u kućama, hotelima i mnogim drugim zgradama. Starije verzije prekidača za prigušivanje bile su ručne i obično su uključivale okretni prekidač (potenciometar) ili tipke za kontrolu razine svjetlosti. Ovaj Instructable opisuje kako izgraditi digitalni prigušivač koji ima dva načina kontrole intenziteta svjetlosti; pametni telefon i fizička dugmad. Dva načina rada mogu besprijekorno raditi zajedno, tako da korisnik može povećati ili smanjiti svjetlinu i s tipke i s pametnog telefona. Projekt se provodi pomoću SLG46620V CMIC, HC-06 Bluetooth modula, tipki i LED dioda.

Koristit ćemo SLG46620V CMIC jer pomaže u smanjivanju diskretnih komponenti projekta. GreenPAK ™ IC -ovi su mali i imaju višenamjenske komponente, što dizajneru omogućava smanjenje komponenti i dodavanje novih funkcija. Dodatno, troškovi projekta se naknadno smanjuju.

SLG46620V takođe sadrži SPI interfejs za povezivanje, PWM blokove, FSM i mnogo korisnih dodatnih blokova u jednom malom čipu. Ove komponente omogućuju korisniku da izgradi praktičan pametan zatamnjivač kojim se može upravljati putem Bluetooth uređaja ili zidnih tipki, podržava produženo zatamnjivanje i dodavanje funkcija koje se mogu odabrati bez upotrebe mikrokontrolera ili skupih komponenti.

U nastavku smo opisali korake potrebne za razumijevanje načina na koji je rješenje programirano za stvaranje pametnog LED zatamnjivača kojim se upravlja putem Bluetootha. Međutim, ako samo želite dobiti rezultat programiranja, preuzmite GreenPAK softver da biste vidjeli već završenu GreenPAK datoteku za dizajn. Priključite GreenPAK Development Kit na svoje računalo i hit program za stvaranje pametnog LED zatamnjivača kojim se upravlja putem Bluetootha.

Korak 1: Karakteristike projekta i sučelje

Karakteristike projekta i sučelje
Karakteristike projekta i sučelje

Karakteristike projekta:

1. Dva načina kontrole; mobilnu aplikaciju i prave tipke.

2. Lagani prelaz uključivanja i isključivanja svetla. Ovo je zdravije za oči potrošača. Daje i luksuzniji osjećaj koji je privlačan hotelima i drugim uslužnim djelatnostima.

3. Funkcija načina mirovanja. Ovo će biti dodatna vrijednost za ovu aplikaciju. Kada korisnik aktivira ovaj način rada, svjetlina svjetla postupno se smanjuje za 10 minuta. To pomaže ljudima koji pate od nesanice. Također je korisno za dječje spavaće sobe i trgovine (vrijeme zatvaranja).

Interfejs projekta

Sučelje projekta ima četiri tipke koje se koriste kao GreenPAK ulazi:

UKLJUČENO / ISKLJUČENO: uključite / isključite svjetlo (soft start / stop).

GORE: povećanje nivoa svetlosti.

Dole: smanjuje nivo svetlosti.

Način spavanja: aktiviranjem načina mirovanja, svjetlina svjetla postupno se smanjuje u razdoblju od 10 minuta. To daje korisniku vrijeme prije spavanja i jamči da svjetlo neće ostati upaljeno cijelu noć.

Sistem će emitirati PWM signal, koji će se proslijediti na vanjski LED i LED indikator načina mirovanja.

GreenPAK dizajn se sastoji od 4 glavna bloka. Prvi je UART prijemnik, koji prima podatke iz Bluetooth modula, izdvaja narudžbe i šalje ih u upravljačku jedinicu. Drugi blok je upravljačka jedinica koja prima narudžbe koje dolaze s UART prijemnika ili s vanjskih tipki. Upravljačka jedinica odlučuje o potrebnoj radnji (UKLJUČI/ISKLJUČI, Povećaj, smanji, omogući stanje mirovanja). Ova jedinica je implementirana pomoću LUT -ova.

Treći blok napaja CLK generatore. U ovom projektu, FSM brojač se koristi za kontrolu PWM -a. Vrijednost FSM -a će se mijenjati (gore, dolje) prema redoslijedu danom na 3 frekvencije (visoka, srednja i niska). U ovom odjeljku će se generirati tri frekvencije i potrebni CLK prelazi u FSM prema traženom redoslijedu; Prilikom uključivanja/isključivanja, visoka frekvencija prelazi u FSM na meki start/stop. Tokom zatamnjenja srednja frekvencija prolazi. Niska frekvencija prolazi u stanju mirovanja kako bi se vrijednost FSM smanjila sporije. Zatim se i svjetlina svjetla polako smanjuje. Četvrti blok je PWM jedinica, koja generira impulse prema vanjskim LED diodama.

Korak 2: GreenPAK dizajn

Najbolji način za izgradnju prigušivača pomoću GreenPAK-a je pomoću 8-bitnog FSM-a i PWM-a. U SLG46620, FSM1 sadrži 8 bitova i može se koristiti sa PWM1 i PWM2. Bluetooth modul mora biti povezan, što znači da se mora koristiti SPI paralelni izlaz. SPI paralelni izlazni bitovi od 0 do 7 veza su muksirani sa DCMP1, DMCP2 i LF OSC CLK, OUT1, OUT0 OSC izlazima. PWM0 prima izlaz iz FSM0 (16 bita). FSM0 se ne zaustavlja na 255; povećava se na 16383. Za ograničavanje vrijednosti brojača na 8 bita dodaje se još jedan FSM; FSM1 se koristi kao pokazivač da se zna kada brojač dosegne 0 ili 255. FSM0 je korišten za generiranje PWM impulsa. Kako se dvije vrijednosti FSM -a moraju promijeniti istovremeno kako bi imale istu vrijednost, dizajn postaje pomalo složen gdje u oba FSM -a postoji unaprijed definiran, ograničen, odabran CLK. CNT1 i CNT3 se koriste kao posrednici za prosljeđivanje CLK -a na oba FSM -a.

Dizajn se sastoji od sljedećih odjeljaka:

- UART prijemnik

- Kontrolna jedinica

- CLK generatori i multiplekser

- PWM

Korak 3: UART prijemnik

UART prijemnik
UART prijemnik

Prvo moramo postaviti HC06 Bluetooth modul. HC06 koristi UART protokol za komunikaciju. UART označava univerzalni asinhroni prijemnik / odašiljač. UART može pretvoriti podatke naprijed -natrag između paralelnog i serijskog formata. Uključuje serijski / paralelni prijemnik i paralelni serijski pretvarač, koji se rade odvojeno. Podaci primljeni u HC06 bit će preneseni na naš GreenPAK uređaj. Stanje mirovanja za Pin 10 je VISOKO. Svaki poslani znak počinje logičkim LOW početnim bitom, nakon čega slijedi konfigurirani broj bitova podataka i jedan ili više logičkih HIGH stop bitova.

HC06 šalje 1 START bit, 8 bitova podataka i jedan STOP bit. Zadana brzina prijenosa mu je 9600. Poslat ćemo bajt podataka s HC06 u SPI blok GreenPAK SLG46620V.

Budući da SPI blok nema kontrolu bitova START ili STOP, ti se bitovi umjesto toga koriste za omogućavanje i onemogućavanje signala takta SPI (SCLK). Kad pin 10 padne, IC je primio START bit, pa koristimo PDLY detektor padajuće ivice za identifikaciju početka komunikacije. Taj padajući ivični detektor radi na frekvenciji DFF0, koja omogućava signalu SCLK da taktira SPI blok.

Naša brzina prijenosa je 9600 bita u sekundi, pa naš SCLK period mora biti 1/9600 = 104 µs. Stoga smo postavili OSC frekvenciju na 2 MHz i koristili CNT0 kao razdjelnik frekvencije.

2 MHz - 1 = 0,5 µs

(104 µs / 0,5 µs) - 1 = 207

Stoga želimo da vrijednost brojača CNT0 bude 207. Kako bi se osiguralo da se podaci ne propuštaju, dodaje se kašnjenje polučasovnog ciklusa na SPI satu, tako da se SPI blok takira u odgovarajuće vrijeme. To se postiže korištenjem CNT6, 2-bitnog LUT1 i vanjskog sata OSC bloka. Izlaz CNT6 ne raste visoko do 52 µs nakon taktiranja DFF0, što je tačno polovina našeg SCLK perioda od 104 µs. Kad se podigne, 2-bitni LUT1 i gate omogućuju 2CHz OSC signal da prođe u EXT. CLK0 ulaz, čiji je izlaz povezan s CNT0.

Korak 4: Upravljačka jedinica

Kontrolna jedinica
Kontrolna jedinica

U ovom odjeljku naredbe će se izvršavati prema primljenom bajtu s UART prijemnika ili prema signalima iz vanjskih tipki. Igle 12, 13, 14, 15 su inicijalizirane kao ulazi i povezane su na vanjske tipke.

Svaki pin je interno povezan s ulazom ILI vrata, dok je drugi ulaz kapije povezan odgovarajućim signalom koji dolazi sa pametnog telefona putem Bluetootha, a koji će se pojaviti na SPI paralelnom izlazu.

DFF6 se koristi za aktiviranje načina mirovanja gdje se njegov izlaz mijenja na visoko s rastućom ivicom koja dolazi iz 2-bitnog LUT4, dok se DFF10 koristi za održavanje statusa osvjetljenja, a njegov izlaz se mijenja s niskog na visoko i obrnuto sa svakom nadolazećom ivicom koja dolazi sa 3-bitnog LUT10 izlaza.

FSM1 je 8-bitni brojač; daje visoki impuls na svom izlazu kada njegova vrijednost dosegne 0 ili 255. Slijedom toga, koristi se za sprječavanje FSM0 (16-bitni) da pređe vrijednost 255, jer njegov izlaz poništava DFF-ove i mijenja status DFF10 sa uključeno na isključeno i obrnuto, ako se osvjetljenjem upravlja tipkama +, - i postignut je maksimalni/minimalni nivo.

Signali spojeni na ulaze FSM1 zadržavaju se, gore će doseći FSM0 do P11 i P12 radi sinhronizacije i zadržavanja iste vrijednosti na oba brojača.

Korak 5: CLK generatori i multiplekser

Generatori CLK i multiplekser
Generatori CLK i multiplekser

U ovom odjeljku će se generirati tri frekvencije, ali samo jedna će u isto vrijeme okretati FSM -ove. Prva frekvencija je RC OSC, koja se preuzima iz matrice 0 do P0. Druga frekvencija je LF OSC koja se također preuzima iz matrice 0 do P1; treća frekvencija je izlaz CNT7.

3-bitni LUT9 i 3-bitni LUT11 dopuštaju prolaz jedne frekvencije, prema 3-bitnom izlazu LUT14. Nakon toga, odabrani sat prenosi na FSM0 i FSM1 putem CNT1 i CNT3.

Korak 6: PWM

PWM
PWM

Konačno, vrijednost FSM0 se pretvara u PWM signal kako bi se pojavio preko pina 20 koji je inicijaliziran kao izlaz i spojen je na vanjske LED diode.

Korak 7: Android aplikacija

Android aplikacija
Android aplikacija
Android aplikacija
Android aplikacija
Android aplikacija
Android aplikacija

Android aplikacija ima virtualno upravljačko sučelje slično stvarnom sučelju. Ima pet tastera; UKLJUČENO / ISKLJUČENO, GORE, DOLJE, Način spavanja i Povezivanje. Ova Android aplikacija će moći pretvoriti pritiske tipki u naredbu i slati naredbe Bluetooth modulu da se izvrši.

Ova je aplikacija napravljena s MIT App Inventor -om, koji ne zahtijeva nikakvo iskustvo u programiranju. App Inventor omogućava razvojnom programeru da kreira aplikaciju za Android OS uređaje koristeći web preglednik povezivanjem programskih blokova. Našu aplikaciju možete uvesti u MIT App Inventor klikom na Projekti -> Uvezi projekt (.aia) s računara i odabirom.aia datoteke uključene u ovu napomenu o aplikaciji.

Za kreiranje Android aplikacije mora se pokrenuti novi projekt. Potrebno je pet dugmadi: jedno je birač liste za Bluetooth uređaje, a drugo su kontrolni tasteri. Moramo dodati i Bluetooth klijent. Slika 6 prikazuje snimak ekrana korisničkog sučelja naše Android aplikacije.

Nakon što dodamo gumbe, dodijelit ćemo softversku funkciju svakom gumbu. Koristit ćemo 4 bita za prikaz statusa tipki. Jedan bit za svako dugme, stoga će, kada pritisnete dugme, određeni broj biti poslat putem Bluetootha u fizičko kolo.

Ovi brojevi prikazani su u Tabeli 1.

Zaključak

Ovaj Instructable opisuje pametan zatamnjivač kojim se može upravljati na dva načina; aplikaciju za Android i prave tipke. Četiri odvojena bloka su ocrtana unutar GreenPAK SLG46620V koji kontroliraju protok procesa za povećanje ili smanjenje PWM svjetla. Dodatno, funkcija Sleep-mode navedena je kao primjer dodatne modulacije dostupne za aplikaciju. Prikazani primjer je niskonaponski, ali se može promijeniti za implementacije višeg napona.

Preporučuje se: