Sisällysluettelo:
- Vaihe 1: Projektin ominaisuudet ja käyttöliittymä
- Vaihe 2: GreenPAK -suunnittelu
- Vaihe 3: UART -vastaanotin
- Vaihe 4: Ohjausyksikkö
- Vaihe 5: CLK -generaattorit ja multiplekseri
- Vaihe 6: PWM
- Vaihe 7: Android -sovellus
Video: DIY Smart LED -himmennin Bluetoothin kautta: 7 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:00
Tässä ohjeessa kuvataan älykkään digitaalisen himmentimen rakentaminen. Himmennin on yleinen valokytkin, jota käytetään taloissa, hotelleissa ja monissa muissa rakennuksissa. Himmenninkytkimien vanhemmat versiot olivat manuaalisia, ja niissä oli tyypillisesti kiertokytkin (potentiometri) tai painikkeet valotason säätämiseksi. Tässä oppaassa kuvataan, kuinka rakentaa digitaalinen himmennin, jolla on kaksi tapaa valon voimakkuuden säätämiseen; älypuhelin ja fyysiset painikkeet. Molemmat tilat voivat toimia saumattomasti yhdessä, jotta käyttäjä voi lisätä tai vähentää kirkkautta sekä painikkeesta että älypuhelimesta. Projekti toteutetaan käyttämällä SLG46620V CMIC, HC-06 Bluetooth-moduulia, painikkeita ja LED-valoja.
Käytämme SLG46620V CMIC: tä, koska se auttaa minimoimaan projektin erilliset komponentit. GreenPAK ™ -piirit ovat pieniä ja niissä on monikäyttöisiä komponentteja, minkä ansiosta suunnittelija voi vähentää komponentteja ja lisätä uusia ominaisuuksia. Lisäksi projektin kustannuksia alennetaan myöhemmin.
SLG46620V sisältää myös SPI -liitäntärajapinnan, PWM -lohkot, FSM: n ja paljon hyödyllisiä lisälohkoja yhdessä pienessä sirussa. Näiden komponenttien avulla käyttäjä voi rakentaa käytännöllisen älykkään himmentimen, jota voidaan ohjata Bluetooth-laitteen tai seinäpainikkeiden avulla, tukea pitkäaikaista himmennystä ja lisättyä valittavia ominaisuuksia ilman mikro-ohjainta tai kalliita komponentteja.
Seuraavassa kuvataan vaiheet, joita tarvitaan ymmärtämään, miten ratkaisu on ohjelmoitu luomaan älykäs LED -himmennin Bluetoothin kautta. Jos haluat vain saada ohjelmoinnin tuloksen, lataa GreenPAK -ohjelmisto nähdäksesi jo valmistuneen GreenPAK -suunnittelutiedoston. Liitä GreenPAK -kehityssarja tietokoneeseesi ja paina ohjelmaa luodaksesi älykkään LED -himmentimen Bluetoothin kautta.
Vaihe 1: Projektin ominaisuudet ja käyttöliittymä
Projektin ominaisuudet:
1. Kaksi valvontamenetelmää; mobiilisovellus ja oikeat painikkeet.
2. Tasainen päälle / pois siirtyminen valolle. Tämä on terveellisempää kuluttajan silmille. Se antaa myös ylellisemmän tunteen, joka houkuttelee hotelleja ja muuta palvelualaa.
3. Lepotila. Tämä on lisäarvo tälle sovellukselle. Kun käyttäjä aktivoi tämän tilan, valon kirkkaus vähenee vähitellen 10 minuutissa. Tämä auttaa ihmisiä, jotka kärsivät unettomuudesta. Se on hyödyllinen myös lasten makuuhuoneissa ja vähittäiskaupoissa (sulkemisaika).
Projektin käyttöliittymä
Projektiliittymässä on neljä painiketta, joita käytetään GreenPAK -tuloina:
ON / OFF: kytke valo päälle / pois (pehmeäkäynnistys / pysäytys).
YLÖS: lisää valotasoa.
Alas: vähennä valotasoa.
Lepotila: aktivoimalla lepotilan, valon kirkkaus vähenee vähitellen 10 minuutin aikana. Tämä antaa käyttäjälle aikaa ennen nukkumista ja takaa, että valo ei pala koko yön.
Järjestelmä lähettää PWM -signaalin, joka välitetään ulkoiselle LED- ja lepotilan LED -ilmaisimelle.
GreenPAK -rakenne koostuu 4 päälohkosta. Ensimmäinen on UART -vastaanotin, joka vastaanottaa tietoja Bluetooth -moduulista, purkaa tilaukset ja lähettää ne ohjausyksikköön. Toinen lohko on ohjausyksikkö, joka vastaanottaa tilauksia UART -vastaanottimesta tai ulkoisista painikkeista. Ohjausyksikkö päättää tarvittavista toimenpiteistä (kytke päälle/pois, lisää, vähennä, ota lepotila käyttöön). Tämä yksikkö toteutetaan LUT: ien avulla.
Kolmas lohko toimittaa CLK -generaattorit. Tässä projektissa FSM -laskuria käytetään PWM: n ohjaamiseen. Mikronesian arvo muuttuu (ylös, alas) 3 taajuuden (korkea, keskitaso ja matala) antamien järjestysten mukaan. Tässä osassa luodaan kolme taajuutta ja vaadittu CLK siirtyy FSM: lle vaaditun järjestyksen mukaisesti; Päälle/pois -toiminnossa korkeataajuus siirtyy FSM: ään pehmeään käynnistykseen/pysäytykseen. Himmennyksen aikana keskitaajuus kulkee. Matala taajuus kulkee lepotilassa FSM -arvon pienentämiseksi hitaammin. Sitten myös valon kirkkaus pienenee hitaasti. Neljäs lohko on PWM -yksikkö, joka tuottaa pulsseja ulkoisille LEDeille.
Vaihe 2: GreenPAK -suunnittelu
Paras tapa rakentaa himmennin GreenPAK: n avulla on 8-bittinen FSM ja PWM. SLG46620: ssa FSM1 sisältää 8 bittiä ja sitä voidaan käyttää PWM1: n ja PWM2: n kanssa. Bluetooth -moduulin on oltava kytkettynä, mikä tarkoittaa, että SPI -rinnakkaislähtöä on käytettävä. SPI -rinnakkaislähtöbittejä 0-7 liitäntää ympäröivät DCMP1-, DMCP2- ja LF OSC CLK, OUT1, OUT0 OSC -lähdöt. PWM0 saa tehonsa FSM0: sta (16 bittiä). FSM0 ei pysähdy kohtaan 255; se kasvaa 16383: een. Laskurin arvon rajoittamiseksi 8 bittiin lisätään toinen FSM; FSM1: tä käytetään osoittimena, kun laskuri saavuttaa 0 tai 255. FSM0: ta käytettiin PWM -pulssin muodostamiseen. Koska kahden FSM: n arvoja on muutettava samanaikaisesti, jotta niillä on sama arvo, muotoilu muuttuu hieman monimutkaiseksi, jossa molemmissa FSM: issä on ennalta määritetty, rajoitettu, valittavissa oleva CLK. CNT1: tä ja CNT3: ta käytetään välittäjinä välittämään CLK molemmille Mikronesialle.
Suunnittelu koostuu seuraavista osista:
- UART -vastaanotin
- Ohjausyksikkö
- CLK -generaattorit ja multiplekseri
- PWM
Vaihe 3: UART -vastaanotin
Ensinnäkin meidän on asennettava HC06 -Bluetooth -moduuli. HC06 käyttää UART -protokollaa viestintään. UART tarkoittaa yleistä asynkronista vastaanotinta / lähetintä. UART voi muuntaa tietoja edestakaisin rinnakkais- ja sarjamuotojen välillä. Se sisältää sarja -rinnakkaisvastaanottimen ja rinnakkais -sarja -muuntimen, jotka molemmat kellotetaan erikseen. HC06: een vastaanotetut tiedot lähetetään GreenPAK -laitteeseemme. Nastan 10 valmiustila on KORKEA. Jokainen lähetetty merkki alkaa loogisella LOW -aloitusbitillä, jota seuraa konfiguroitava määrä databittejä ja yksi tai useampi logiikka HIGH -pysäytysbitti.
HC06 lähettää 1 START -bitin, 8 databittiä ja yhden STOP -bitin. Sen oletusnopeus on 9600. Lähetämme datatavun HC06: sta GreenPAK SLG46620V: n SPI -lohkoon.
Koska SPI -lohkossa ei ole START- tai STOP -bittiohjausta, niitä käytetään sen sijaan SPI -kellosignaalin (SCLK) ottamiseen käyttöön ja poistamiseksi käytöstä. Kun nasta 10 menee LOW -asentoon, IC on vastaanottanut START -bitin, joten käytämme PDLY -putoavan reunan ilmaisinta tiedonsiirron alkamisen tunnistamiseen. Tämä putoavan reunan ilmaisin kelloaa DFF0, mikä mahdollistaa SCLK -signaalin kelloamaan SPI -lohkon.
Siirtonopeutemme on 9600 bittiä sekunnissa, joten SCLK -jaksomme on oltava 1/9600 = 104 µs. Siksi asetimme OSC -taajuudeksi 2 MHz ja käytimme CNT0: ta taajuusjakajana.
2 MHz - 1 = 0,5 µs
(104 µs / 0,5 µs) - 1 = 207
Siksi haluamme, että CNT0 -laskurin arvo on 207. Varmistaaksemme, ettei tietoja menetetä, lisätään SPI -kellon puolikellosyklin viive, jotta SPI -lohko kellotetaan oikeaan aikaan. Tämä saavutetaan käyttämällä CNT6: ta, 2-bittistä LUT1: tä ja OSC-lohkon ulkoista kelloa. CNT6: n tuotos nousee korkealle vasta 52 µs DFF0: n kellon jälkeen, mikä on täsmälleen puolet 104 µs: n SCLK -jaksostamme. Kun se nousee korkealle, 2-bittinen LUT1 JA -portti sallii 2 MHz: n OSC-signaalin siirtyä ULK. CLK0 -tulo, jonka lähtö on kytketty CNT0: een.
Vaihe 4: Ohjausyksikkö
Tässä osassa komennot suoritetaan UART -vastaanottimesta vastaanotetun tavun tai ulkoisten painikkeiden signaalien mukaan. Nastat 12, 13, 14, 15 alustetaan tuloiksi ja liitetään ulkoisiin painikkeisiin.
Jokainen nasta on liitetty sisäisesti OR -porttituloon, kun taas portin toinen tulo on yhdistetty vastaavaan signaaliin, joka tulee älypuhelimesta Bluetoothin kautta ja joka tulee näkyviin SPI -rinnakkaislähtöön.
DFF6: ta käytetään lepotilan aktivoimiseen, kun sen lähtö muuttuu korkealle, kun nouseva reuna tulee 2-bittisestä LUT4: stä, kun taas DFF10: tä käytetään valaistuksen tilan ylläpitämiseen ja sen ulostulo muuttuu alhaisesta korkeaksi ja päinvastoin jokaisen nousevan reunan tullessa 3-bittisestä LUT10-lähdöstä.
FSM1 on 8-bittinen laskuri; se antaa suuren pulssin lähtöönsä, kun sen arvo saavuttaa 0 tai 255. Näin ollen sitä käytetään estämään FSM0 (16-bittinen) ylittämästä arvoa 255, koska sen lähtö nollaa DFF: t ja muuttaa DFF10-tilan päälle ja pois päältä ja päinvastoin, jos valaistusta ohjataan painikkeilla +, - ja maksimi-/minimitaso on saavutettu.
FSM1 -tuloihin kytketyt signaalit pysyvät, ylös nousevat FSM0: een P11: n ja P12: n välillä synkronoidakseen ja säilyttääkseen saman arvon molemmilla laskureilla.
Vaihe 5: CLK -generaattorit ja multiplekseri
Tässä osassa luodaan kolme taajuutta, mutta vain yksi kelloaa FSM: ää kerrallaan. Ensimmäinen taajuus on RC OSC, joka haetaan matriisista 0 - P0. Toinen taajuus on LF OSC, joka haetaan myös matriisista 0 - P1; kolmas taajuus on CNT7 -lähtö.
3-bittinen LUT9 ja 3-bittinen LUT11 antavat yhden taajuuden kulkea 3-bittisen LUT14-lähdön mukaan. Tämän jälkeen valittu kello lähettää FSM0: lle ja FSM1: lle CNT1: n ja CNT3: n kautta.
Vaihe 6: PWM
Lopuksi FSM0 -arvo muuttuu PWM -signaaliksi, jotta se ilmestyy nastan 20 kautta, joka alustetaan ulostulona ja liitetään ulkoisiin LEDeihin.
Vaihe 7: Android -sovellus
Android -sovelluksessa on todellinen käyttöliittymä. Siinä on viisi painiketta; PÄÄLLE / POIS, YLÖS, ALAS, Lepotila ja Yhdistä. Tämä Android -sovellus voi muuntaa painikkeen painallukset komentoksi ja lähettää komennot suoritettavaan Bluetooth -moduuliin.
Tämä sovellus on tehty MIT App Inventorilla, joka ei vaadi ohjelmointikokemusta. App Inventorin avulla kehittäjä voi luoda sovelluksen Android -käyttöjärjestelmää käyttäville laitteille verkkoselaimen avulla yhdistämällä ohjelmointilohkoja. Voit tuoda sovelluksemme MIT App Inventoriin napsauttamalla Projektit -> Tuo projekti (.aia) tietokoneeltani ja valitsemalla tämän sovellushuomautuksen sisältämä.aia -tiedosto.
Android -sovelluksen luomiseksi on aloitettava uusi projekti. Vaaditaan viisi painiketta: yksi on Bluetooth -laitteiden luettelonvalitsin ja muut ohjauspainikkeet. Meidän on myös lisättävä Bluetooth -asiakas. Kuva 6 on kuvakaappaus Android -sovelluksemme käyttöliittymästä.
Kun olemme lisänneet painikkeet, määritämme ohjelmistotoiminnon jokaiselle painikkeelle. Käytämme 4 bittiä painikkeiden tilan kuvaamiseen. Yksi bitti kutakin painiketta varten, joten kun painat painiketta, tietty numero lähetetään Bluetoothin kautta fyysiseen piiriin.
Nämä luvut on esitetty taulukossa 1.
Johtopäätös
Tässä ohjeessa kuvataan älykäs himmennin, jota voidaan ohjata kahdella tavalla; Android -sovellus ja oikeat painikkeet. GreenPAK SLG46620V sisältää neljä erillistä lohkoa, jotka ohjaavat prosessivirtaa valon PWM -arvon lisäämiseksi tai vähentämiseksi. Lisäksi lepotila-ominaisuus on kuvattu esimerkkinä sovelluksen lisämodulaatiosta. Esitetty esimerkki on pienjännite, mutta sitä voidaan muokata korkeamman jännitteen toteutuksiin.
Suositeltava:
Kirjoittaminen OLED -näyttöön Bluetoothin kautta: 6 vaihetta
Kirjoittaminen OLED -näyttöön Bluetoothin kautta: Tämä projekti on inspiroitu ja Arduino LCD -näytönohjaimen remix Bluetoothin kautta Johdanto: Tässä projektissa teemme "Bluetooth OLED" -laitteen. Tässä suunnittelussa yhdistämme Arduinon OLED- ja Bluetooth -moduuliin
HC-05-sarjan määritys Bluetoothin kautta: 10 vaihetta
HC-05-sarjamääritykset Bluetoothin kautta: Kun käytin Android-laitteita ja HC-05 Bluetooth SPP -moduuleja joissakin Arduino-projekteissa, halusin tarkistaa ja muuttaa HC-05-siirtonopeuksia ja muita parametreja kytkemättä tietokoneen USB-porttiin. Siitä tuli tämä. HC-05-moduulit yhdistävät sarja- ja Blu
Carro Robô Controlado Bluetoothin kautta: 10 vaihetta
Carro Robô Controlado Bluetoothin kautta: Um dos projetos mais ambiciosos para se fazer com Arduino on a buildção de um carro robô, para mim foi que me motivou a estudar more sobre o Arduino, and Internet and possibvel encontrar diversas form de constructionir um, seja um linjan sekoittaja
DIY -ohjaus RGB -LED -väri Bluetoothin kautta: 5 vaihetta
DIY -ohjaus RGB -LED -väri Bluetoothin kautta: Älylamppujen suosio on kasvanut viime aikoina, ja niistä on tulossa jatkuvasti keskeinen osa älykkään kodin työkalupakkia. Älykkäät lamput antavat käyttäjälle mahdollisuuden hallita valoaan käyttäjän älypuhelimessa olevan erikoissovelluksen kautta; lamppu voidaan kytkeä päälle
Ohjaa Ws2812 Neopixel LED STRIP -yhteyttä Bluetoothin kautta Arduino Unon avulla: 4 vaihetta
Ohjaa Ws2812 Neopixel LED STRIP -yhteyttä Bluetoothin kautta Arduino Unon avulla: Hei kaverit tässä ohjeessa opimme hallitsemaan neopixeliä arduinolla. Joten periaatteessa arduino yhdistetään Bluetoothin kautta hc05 Bluetooth -moduulin avulla älypuhelimeen ja älypuhelin lähettää komentoja vaihtaa neopixel -led -nauhan väriä