Turinys:

„Pasidaryk pats“išmanusis šviesos diodų reguliatorius, valdomas per „Bluetooth“: 7 žingsniai
„Pasidaryk pats“išmanusis šviesos diodų reguliatorius, valdomas per „Bluetooth“: 7 žingsniai

Video: „Pasidaryk pats“išmanusis šviesos diodų reguliatorius, valdomas per „Bluetooth“: 7 žingsniai

Video: „Pasidaryk pats“išmanusis šviesos diodų reguliatorius, valdomas per „Bluetooth“: 7 žingsniai
Video: Prijunkite lemputę prie nuotolinio valdymo įtaiso 2024, Liepa
Anonim
„Pasidaryk pats“išmanusis šviesos diodų reguliatorius, valdomas per „Bluetooth“
„Pasidaryk pats“išmanusis šviesos diodų reguliatorius, valdomas per „Bluetooth“

Šioje instrukcijoje aprašoma, kaip sukurti išmanųjį skaitmeninį reguliatorių. Šviesos reguliatorius yra įprastas šviesos jungiklis, naudojamas namuose, viešbučiuose ir daugelyje kitų pastatų. Senesnės apšvietimo jungiklių versijos buvo rankinės ir paprastai turėjo sukamąjį jungiklį (potenciometrą) arba mygtukus, skirtus šviesos lygiui valdyti. Šioje instrukcijoje aprašoma, kaip sukurti skaitmeninį reguliatorių, kuris turi du šviesos intensyvumo valdymo būdus; išmanusis telefonas ir fiziniai mygtukai. Abu režimai gali sklandžiai veikti kartu, kad vartotojas galėtų padidinti arba sumažinti ryškumą tiek mygtuku, tiek išmaniuoju telefonu. Projektas įgyvendinamas naudojant SLG46620V CMIC, HC-06 „Bluetooth“modulį, mygtukus ir šviesos diodus.

Mes naudosime SLG46620V CMIC, nes tai padeda sumažinti atskirus projekto komponentus. „GreenPAK ™“IC yra maži ir turi daugkartinio naudojimo komponentus, todėl dizaineris gali sumažinti komponentų skaičių ir pridėti naujų funkcijų. Be to, projekto kaina vėliau sumažinama.

SLG46620V taip pat turi SPI ryšio sąsają, PWM blokus, FSM ir daug naudingų papildomų blokų viename mažame luste. Šie komponentai leidžia vartotojui sukurti praktišką išmanųjį pritemdiklį, kurį galima valdyti naudojant „Bluetooth“įrenginį arba sieninius mygtukus, palaiko ilgesnį pritemdymą ir papildomas pasirenkamas funkcijas, nenaudojant mikrovaldiklio ar brangių komponentų.

Žemiau aprašėme veiksmus, kurių reikia norint suprasti, kaip sprendimas buvo užprogramuotas sukurti išmanųjį šviesos diodų reguliatorių, valdomą per „Bluetooth“. Tačiau, jei norite gauti programavimo rezultatą, atsisiųskite „GreenPAK“programinę įrangą, kad peržiūrėtumėte jau užpildytą „GreenPAK“dizaino failą. Prijunkite „GreenPAK Development Kit“prie kompiuterio ir paspauskite programą, kad sukurtumėte išmanųjį šviesos diodų reguliatorių, valdomą per „Bluetooth“.

1 žingsnis: projekto ypatybės ir sąsaja

Projekto savybės ir sąsaja
Projekto savybės ir sąsaja

Projekto ypatybės:

1. Du kontrolės būdai; programėlė mobiliesiems ir tikri mygtukai.

2. Sklandus šviesos įjungimo ir išjungimo perėjimas. Tai yra sveikiau vartotojo akims. Tai taip pat suteikia prabangesnį jausmą, kuris patrauklus viešbučiams ir kitoms paslaugų pramonės šakoms.

3. Miego režimo funkcija. Tai bus papildoma šios programos vertė. Kai vartotojas įjungia šį režimą, šviesos ryškumas palaipsniui mažėja per 10 minučių. Tai padeda žmonėms, kenčiantiems nuo nemigos. Tai taip pat naudinga vaikų miegamuosiuose ir mažmeninės prekybos parduotuvėse (uždarymo laikas).

Projekto sąsaja

Projekto sąsaja turi keturis mygtukus, kurie naudojami kaip „GreenPAK“įėjimai:

ĮJUNGTI / IŠJUNGTI: įjungti šviesą ĮJUNGTI / IŠJUNGTI (minkštas paleidimas / sustabdymas).

AUKŠTYN: padidinkite šviesos lygį.

Žemyn: sumažinkite šviesos lygį.

Miego režimas: įjungus miego režimą, šviesos ryškumas palaipsniui mažėja per 10 minučių. Tai suteikia vartotojui laiko prieš miegą ir garantuoja, kad šviesa neužsidegs visą naktį.

Sistema išves PWM signalą, kuris bus perduotas išoriniam šviesos diodui ir miego režimo LED indikatoriui.

„GreenPAK“dizainą sudaro 4 pagrindiniai blokai. Pirmasis yra UART imtuvas, kuris gauna duomenis iš „Bluetooth“modulio, išskiria užsakymus ir siunčia juos į valdymo bloką. Antrasis blokas yra valdymo blokas, priimantis užsakymus iš UART imtuvo arba iš išorinių mygtukų. Valdymo blokas nusprendžia, kokių veiksmų reikia imtis (ĮJUNGTI/IŠJUNGTI, Padidinti, sumažinti, įjungti miego režimą). Šis įrenginys įgyvendinamas naudojant LUT.

Trečias blokas tiekia CLK generatorius. Šiame projekte PWM valdymui naudojamas FSM skaitiklis. MFV vertė keisis (aukštyn, žemyn) pagal 3 dažnių nurodymus (aukštas, vidutinis ir žemas). Šiame skyriuje bus sugeneruoti trys dažniai ir reikalaujama CLK perduodama FSM pagal reikiamą tvarką; Įjungimo/išjungimo režimu aukštas dažnis pereina į FSM, kad būtų švelniai paleistas/sustabdytas. Tamsinimo metu vidutinis dažnis praeina. Žemas dažnis praeina miego režimu, kad lėčiau sumažėtų FSM vertė. Tada šviesos ryškumas taip pat lėtai mažėja. Ketvirtasis blokas yra PWM blokas, generuojantis impulsus į išorinius šviesos diodus.

2 žingsnis: „GreenPAK“dizainas

Geriausias būdas sukurti apšvietimo reguliatorių naudojant „GreenPAK“yra naudoti 8 bitų FSM ir PWM. SLG46620 FSM1 yra 8 bitai ir gali būti naudojamas su PWM1 ir PWM2. „Bluetooth“modulis turi būti prijungtas, o tai reiškia, kad reikia naudoti lygiagrečią SPI išvestį. SPI lygiagrečios išvesties bitai nuo 0 iki 7 jungčių yra sujungtos su DCMP1, DMCP2 ir LF OSC CLK, OUT1, OUT0 OSC išėjimais. PWM0 išvestį gauna iš FSM0 (16 bitų). FSM0 nesustoja ties 255; jis padidėja iki 16383. Norėdami apriboti skaitiklio vertę 8 bitais, pridedama kita FSM; FSM1 naudojamas kaip rodyklė žinoti, kada skaitiklis pasiekia 0 arba 255. FSM0 buvo naudojamas PWM impulsui generuoti. Kadangi dviejų MFV reikšmės turi būti keičiamos tuo pačiu metu, kad būtų ta pati vertė, dizainas tampa šiek tiek sudėtingas, kai abiejuose MFV yra iš anksto nustatytas, ribotas, pasirenkamas CLK. CNT1 ir CNT3 yra naudojami kaip tarpininkai perduoti CLK abiem FMV.

Dizainas susideda iš šių skyrių:

- UART imtuvas

- Valdymo blokas

- CLK generatoriai ir multiplekseris

- PWM

3 žingsnis: UART imtuvas

UART imtuvas
UART imtuvas

Pirmiausia turime nustatyti „Bluetooth“modulį HC06. HC06 bendravimui naudoja UART protokolą. UART reiškia universalų asinchroninį imtuvą / siųstuvą. UART gali konvertuoti duomenis pirmyn ir atgal tarp lygiagrečių ir nuoseklių formatų. Jame yra nuoseklusis lygiagretus imtuvas ir lygiagretus keitiklis, kurie abu laikrodžiai rodomi atskirai. HC06 gauti duomenys bus persiųsti į mūsų „GreenPAK“įrenginį. 10 kaiščio laukimo būsena yra HIGH. Kiekvienas siunčiamas simbolis prasideda loginiu LOW pradžios bitu, po kurio eina konfigūruojamas duomenų bitų skaičius ir vienas ar keli loginiai HIGH stop bitai.

HC06 siunčia 1 START bitą, 8 duomenų bitus ir vieną STOP bitą. Numatytoji duomenų perdavimo sparta yra 9600. Duomenų baitą iš HC06 išsiųsime į „GreenPAK SLG46620V“SPI bloką.

Kadangi SPI bloke nėra START arba STOP bitų valdymo, šie bitai naudojami SPI laikrodžio signalui (SCLK) įjungti ir išjungti. Kai 10 kaištis nusileidžia žemai, IC gavo START bitą, todėl mes naudojame PDLY krintančio krašto detektorių ryšio pradžiai nustatyti. Šis krintančio krašto detektorius sukasi DFF0, o tai leidžia SCLK signalui stebėti SPI bloką.

Mūsų duomenų perdavimo sparta yra 9600 bitų per sekundę, todėl mūsų SCLK periodas turi būti 1/9600 = 104 µs. Todėl mes nustatėme OSC dažnį į 2 MHz ir kaip dažnio daliklį naudojome CNT0.

2 MHz - 1 = 0,5 µs

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

Todėl norime, kad CNT0 skaitiklio vertė būtų 207. Siekiant užtikrinti, kad duomenys nebūtų praleisti, SPI laikrodyje pridedamas pusės laikrodžio ciklo uždelsimas, kad SPI blokas būtų rodomas tinkamu laiku. Tai pasiekiama naudojant CNT6, 2 bitų LUT1 ir OSC bloko išorinį laikrodį. CNT6 išvestis neviršija 52 sekundžių po DFF0 laikrodžio rodymo, o tai yra lygiai pusė mūsų SCLK laikotarpio - 104 µs. Kai jis pakyla aukštai, 2 bitų LUT1 IR vartai leidžia 2 MHz OSC signalui patekti į EXT. CLK0 įvestis, kurios išvestis prijungta prie CNT0.

4 žingsnis: valdymo blokas

Valdymo blokas
Valdymo blokas

Šiame skyriuje komandos bus vykdomos pagal gautą baitą iš UART imtuvo arba pagal signalus iš išorinių mygtukų. 12, 13, 14, 15 kaiščiai inicijuojami kaip įėjimai ir yra prijungti prie išorinių mygtukų.

Kiekvienas kaištis yra iš vidaus prijungtas prie ARBA vartų įvesties, o antrasis vartų įėjimas yra prijungtas prie atitinkamo signalo, kuris ateina iš išmaniojo telefono per „Bluetooth“ir kuris bus rodomas lygiagrečioje SPI išvestyje.

DFF6 naudojamas suaktyvinti miego režimą, kai jo išvestis pasikeičia į aukštą, kai pakilimo briauna gaunama iš 2 bitų LUT4, o DFF10 naudojamas apšvietimo būsenai palaikyti, o jo išvestis keičiasi nuo žemo iki aukšto ir atvirkščiai, kai ateina kiekvienas kylantysis kraštas iš 3 bitų LUT10 išvesties.

FSM1 yra 8 bitų skaitiklis; jis duoda didelį impulsą savo išėjimui, kai jo vertė pasiekia 0 arba 255. Todėl jis naudojamas siekiant užkirsti kelią FSM0 (16 bitų) viršyti vertę 255, nes jo išvestis atkuria DFF ir pakeičia DFF10 būseną iš įjungta ir išjungta. atvirkščiai, jei apšvietimą valdo mygtukai +, - ir pasiektas maksimalus/minimalus lygis.

Signalai, prijungti prie FSM1 įėjimų, išlieka, aukštyn pasieks FSM0 per P11 ir P12, kad sinchronizuotų ir išlaikytų tą pačią vertę abiejuose skaitikliuose.

5 žingsnis: CLK generatoriai ir multiplekseris

CLK generatoriai ir multiplekseris
CLK generatoriai ir multiplekseris

Šiame skyriuje bus sugeneruoti trys dažniai, tačiau tik vienas vienu metu stebės FSM. Pirmasis dažnis yra RC OSC, gaunamas iš matricos nuo 0 iki P0. Antrasis dažnis yra LF OSC, kuris taip pat gaunamas iš matricos 0 - P1; trečiasis dažnis yra CNT7 išėjimas.

3 bitų LUT9 ir 3 bitų LUT11 leidžia perduoti vieną dažnį pagal 3 bitų LUT14 išvestį. Po to pasirinktas laikrodis perduoda FSM0 ir FSM1 per CNT1 ir CNT3.

6 žingsnis: PWM

PWM
PWM

Galiausiai FSM0 reikšmė virsta PWM signalu, kad būtų rodomas per 20 kaištį, kuris inicijuojamas kaip išėjimas ir prijungtas prie išorinių šviesos diodų.

7 žingsnis: „Android“programa

„Android“programa
„Android“programa
„Android“programa
„Android“programa
„Android“programa
„Android“programa

„Android“programoje yra virtuali valdymo sąsaja, panaši į tikrąją sąsają. Jame yra penki mygtukai; ĮJUNGIMAS / IŠJUNGIMAS, AUKŠTYN, AUKŠTYN, miego režimas ir „Connect“. Ši „Android“programa galės paversti mygtukų paspaudimus į komandas ir nusiųs komandas į „Bluetooth“modulį, kurį reikia atlikti.

Ši programa buvo sukurta naudojant „MIT App Inventor“, kuriai nereikia jokios programavimo patirties. „App Inventor“leidžia kūrėjui sukurti programą, skirtą „Android“OS įrenginiams, naudojant žiniatinklio naršyklę, prijungus programavimo blokus. Galite importuoti mūsų programą į „MIT App Inventor“spustelėję „Projects -> Import project“(.aia) iš savo kompiuterio ir pasirinkę.aia failą, įtrauktą į šią programos pastabą.

Norėdami sukurti „Android“programą, turite pradėti naują projektą. Reikalingi penki mygtukai: vienas yra „Bluetooth“įrenginių sąrašo parinkiklis, o kiti - valdymo mygtukai. Taip pat turime pridėti „Bluetooth“klientą. 6 paveiksle yra mūsų „Android“programos vartotojo sąsajos ekrano vaizdas.

Pridėję mygtukus, kiekvienam mygtukui priskirsime programinės įrangos funkciją. Mes naudosime 4 bitus, kad parodytume mygtukų būseną. Po vieną bitą kiekvienam mygtukui, todėl paspaudus mygtuką, „Bluetooth“ryšiu į fizinę grandinę bus išsiųstas konkretus numeris.

Šie skaičiai pateikti 1 lentelėje.

Išvada

Šioje instrukcijoje aprašomas išmanusis reguliatorius, kurį galima valdyti dviem būdais; „Android“programa ir tikri mygtukai. „GreenPAK SLG46620V“yra išdėstyti keturi atskiri blokai, kurie kontroliuoja proceso srautą, kad padidintų ar sumažintų šviesos PWM. Be to, pateikiama miego režimo funkcija, kaip papildomos programai pritaikomos moduliacijos pavyzdys. Pateiktas pavyzdys yra žemos įtampos, tačiau gali būti modifikuotas aukštesnės įtampos įgyvendinimui.

Rekomenduojamas: