Mundarija:

Bluetooth orqali boshqariladigan DIY Smart LED Dimmer: 7 qadam
Bluetooth orqali boshqariladigan DIY Smart LED Dimmer: 7 qadam

Video: Bluetooth orqali boshqariladigan DIY Smart LED Dimmer: 7 qadam

Video: Bluetooth orqali boshqariladigan DIY Smart LED Dimmer: 7 qadam
Video: Я превратил пульт дистанционного управления в контроллер лампочки | Проект самодельной электроники 2024, Iyul
Anonim
Bluetooth orqali boshqariladigan DIY Smart LED Dimmer
Bluetooth orqali boshqariladigan DIY Smart LED Dimmer

Bu ko'rsatma aqlli raqamli dimmerni qanday qurishni tasvirlaydi. Dimmer - bu uylarda, mehmonxonalarda va boshqa ko'plab binolarda ishlatiladigan oddiy yorug'lik tugmasi. Dimmer kalitlarining eski versiyalari qo'lda bo'lgan va odatda yorug'lik darajasini boshqarish uchun aylanadigan kalit (potansiyometr) yoki tugmachalarni o'z ichiga olgan. Bu yo'riqnomada yorug'lik qizg'inligini boshqarishning ikkita usuli bo'lgan raqamli dimmerni qanday qurish kerakligi tasvirlangan; smartfon va jismoniy tugmalar. Ikkala rejim ham uzluksiz ishlashi mumkin, shunda foydalanuvchi tugmachadan ham, smartfondan ham yorug'likni oshirishi yoki kamaytirishi mumkin. Loyiha SLG46620V CMIC, HC-06 Bluetooth moduli, tugmalar va LEDlar yordamida amalga oshiriladi.

Biz SLG46620V CMIC -dan foydalanmoqchimiz, chunki bu loyihaning alohida komponentlarini kamaytirishga yordam beradi. GreenPAK ™ IClari kichik va ko'p komponentli bo'lib, bu dizaynerga komponentlarni kamaytirishga va yangi xususiyatlarni qo'shishga imkon beradi. Bundan tashqari, keyinchalik loyiha qiymati kamayadi.

SLG46620V shuningdek, SPI ulanish interfeysi, PWM bloklari, FSM va bitta kichik chipda juda ko'p foydali qo'shimcha bloklarni o'z ichiga oladi. Bu komponentlar foydalanuvchiga Bluetooth qurilmasi yoki devor tugmalari orqali boshqariladigan, aqlli dimmerni qurishga, uzoq vaqt karartishni qo'llab-quvvatlashga va mikrokontroller yoki qimmat komponentlardan foydalanmasdan tanlanadigan xususiyatlarni qo'shishga imkon beradi.

Quyida biz Bluetooth orqali boshqariladigan aqlli LED -dimmerni yaratish uchun yechim qanday dasturlashtirilganligini tushunish uchun zarur bo'lgan qadamlarni tasvirlab berdik. Ammo, agar siz dasturlash natijasini olishni xohlasangiz, GreenPAK dasturini yuklab oling va tugallangan GreenPAK dizayn faylini ko'ring. GreenPAK Development Kit -ni kompyuteringizga ulang va Bluetooth orqali boshqariladigan aqlli LED -dimmerni yaratish uchun dasturni bosing.

1 -qadam: Loyihaning xususiyatlari va interfeysi

Loyihaning xususiyatlari va interfeysi
Loyihaning xususiyatlari va interfeysi

Loyihaning xususiyatlari:

1. Nazoratning ikkita usuli; mobil ilova va haqiqiy tugmalar.

2. Yorug'lik uchun silliq ochilish-o'tish. Bu iste'molchining ko'zlari uchun sog'lomroqdir. Bu mehmonxonalar va boshqa xizmat ko'rsatish sohalarini o'ziga jalb qiladigan yanada hashamatli tuyg'u beradi.

3. Kutish rejimi xususiyati. Bu dastur uchun qo'shimcha qiymat bo'ladi. Foydalanuvchi ushbu rejimni faollashtirganda yorug'lik yorqinligi 10 daqiqada asta -sekin kamayadi. Bu uyqusizlikdan aziyat chekadigan odamlarga yordam beradi. Bu bolalar yotoqxonalari va chakana savdo do'konlari uchun ham foydali (yopilish vaqti).

Loyiha interfeysi

Loyiha interfeysida GreenPAK kirish sifatida ishlatiladigan to'rtta tugma mavjud:

ON / OFF: chiroqni yoqish / o'chirish (yumshoq boshlash / to'xtatish).

YUQORI: yorug'lik darajasini oshirish.

Pastga: yorug'lik darajasini pasaytirish.

Kutish rejimi: uyqu rejimini faollashtirish orqali yorug'lik yorqinligi 10 minut davomida asta -sekin kamayadi. Bu foydalanuvchiga uxlashdan oldin vaqt beradi va yorug'lik butun kecha yoqilmasligini kafolatlaydi.

Tizim PWM signalini chiqaradi, u tashqi LED va uyqu rejimi LED indikatoriga o'tadi.

GreenPAK dizayni 4 ta asosiy blokdan iborat. Birinchisi, UART qabul qiluvchisi, u Bluetooth modulidan ma'lumotlarni oladi, buyurtmalarni chiqaradi va ularni boshqaruv blokiga yuboradi. Ikkinchi blok - bu boshqaruv bloki, UART qabul qiluvchisidan yoki tashqi tugmalardan keladigan buyurtmalarni oladi. Boshqaruv bloki kerakli harakatni hal qiladi (O'chirish/O'chirish, oshirish, kamaytirish, uyqu rejimini yoqish). Bu birlik LUT yordamida amalga oshiriladi.

Uchinchi blok CLK generatorlarini etkazib beradi. Ushbu loyihada PWMni boshqarish uchun FSM hisoblagichi ishlatiladi. FSM qiymati 3 chastota (yuqori, o'rta va past) tomonidan berilgan buyurtmalarga muvofiq o'zgaradi (yuqoriga, pastga). Bu bo'limda uchta chastota hosil bo'ladi va kerakli CLK kerakli tartibda FSMga o'tadi; Yoqish/o'chirishda yuqori chastota FSM -ga yumshoq ishga tushirish/to'xtatishga o'tadi. Karartma paytida o'rta chastota o'tadi. Kam chastota FSM qiymatini sekinroq kamaytirish uchun uyqu rejimida o'tadi. Keyin yorug'lik yorqinligi asta -sekin kamayadi. To'rtinchi blok - bu tashqi LEDlarga impulslar ishlab chiqaradigan PWM birligi.

2 -qadam: GreenPAK dizayni

GreenPAK yordamida dimmerni qurishning eng yaxshi usuli-bu 8 bitli FSM va PWM. SLG46620 -da FSM1 8 bitni o'z ichiga oladi va ularni PWM1 va PWM2 bilan ishlatish mumkin. Bluetooth moduli ulangan bo'lishi kerak, ya'ni SPI parallel chiqishidan foydalanish kerak. SPI parallel chiqish bitlari 0 dan 7 gacha ulanishlar DCMP1, DMCP2 va LF OSC CLK, OUT1, OUT0 OSC chiqishlari bilan birlashtirilgan. PWM0 o'z chiqishini FSM0 (16 bit) dan oladi. FSM0 255 da to'xtamaydi; Hisoblagich qiymatini 8 bitga cheklash uchun boshqa FSM qo'shiladi; Hisoblagich 0 yoki 255 ga yetganda FSM1 ko'rsatgich sifatida ishlatiladi. FSM0 PWM pulsini ishlab chiqarish uchun ishlatilgan. Bir xil qiymatga ega bo'lish uchun ikkita FSM qiymatlari bir vaqtning o'zida o'zgarishi kerakligi sababli, dizayn biroz murakkablashadi, bu erda ikkala FSMda ham oldindan belgilangan, cheklangan, tanlanadigan CLK mavjud. CNT1 va CNT3 CLKni ikkala FSMga o'tkazish uchun vositachi sifatida ishlatiladi.

Dizayn quyidagi bo'limlardan iborat:

- UART qabul qiluvchisi

- boshqaruv bloki

- CLK generatorlari va multipleksorlari

- PWM

3 -qadam: UART qabul qiluvchisi

UART qabul qiluvchisi
UART qabul qiluvchisi

Birinchidan, biz HC06 Bluetooth modulini sozlashimiz kerak. HC06 aloqa uchun UART protokolidan foydalanadi. UART universal asenkron qabul qiluvchi / uzatuvchi degan ma'noni anglatadi. UART ma'lumotlarni parallel va ketma -ket formatlar o'rtasida oldinga va orqaga o'zgartirishi mumkin. U ketma -ket parallel qabul qilgichni va ketma -ket konvertorni o'z ichiga oladi, ikkalasi ham alohida soatlanadi. HC06 -da olingan ma'lumotlar GreenPAK qurilmamizga uzatiladi. Pin 10 uchun ishlamaydigan holat YUQORI. Yuborilgan har bir belgi LOW past boshlang'ich bitidan boshlanadi, keyin konfiguratsiya qilinadigan ma'lumotlar bitlari soni va bir yoki bir nechta mantiqiy HIGH stop bitlari.

HC06 1 START bit, 8 ma'lumotlar biti va bitta STOP bitini yuboradi. Uning standart uzatish tezligi 9600. Biz HC06 dan ma'lumotlarni baytini GreenPAK SLG46620V ning SPI blokiga yuboramiz.

SPI blokida START yoki STOP bit boshqaruvi yo'qligi sababli, bu bitlar SPI soat signalini (SCLK) yoqish va o'chirish uchun ishlatiladi. Pin 10 past bo'lganda, IC boshlang'ich bitini oldi, shuning uchun biz aloqa boshlanishini aniqlash uchun PDLY tushayotgan chekka detektoridan foydalanamiz. Bu tushuvchi chekka detektori DFF0 soatiga to'g'ri keladi, bu esa SCLK signaliga SPI blokini kuzatishga imkon beradi.

Bizning tezligimiz sekundiga 9600 bitni tashkil qiladi, shuning uchun SCLK davri 1/9600 = 104 mikron bo'lishi kerak. Shuning uchun biz OSC chastotasini 2 MGts ga o'rnatdik va CNT0 ni chastota ajratuvchi sifatida ishlatdik.

2 MGts - 1 = 0,5 mikron

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

Shuning uchun biz CNT0 hisoblagichining qiymati 207 bo'lishini xohlaymiz. Ma'lumotni o'tkazib yubormaslik uchun SPI soatiga yarim soatlik kechikish qo'shiladi, shunda SPI bloki o'z vaqtida aniqlanadi. Bu CNT6, 2-bitli LUT1 va OSC blokining tashqi soati yordamida amalga oshiriladi. DFF0 soati o'rnatilgandan keyin 52 mktsgacha CNT6 chiqishi yuqori darajaga chiqmaydi, bu bizning SCLK davrining yarmi 104 mikron. Yuqori ko'tarilganda, 2-bitli LUT1 AND darvozasi 2 MGtsli OSC signalining EXTga o'tishiga imkon beradi. Chiqish CNT0 ga ulangan CLK0 usuli.

4 -qadam: boshqaruv bloki

Tekshirish birligi
Tekshirish birligi

Bu bo'limda buyruqlar UART qabul qiluvchidan olingan baytga yoki tashqi tugmalar signallariga muvofiq bajariladi. 12, 13, 14, 15 -pinlar kirish sifatida ishga tushiriladi va tashqi tugmalarga ulanadi.

Har bir pin ichki kirish eshiklari ulagichiga ulangan bo'lsa, ikkinchi kirish eshigi SPI parallel chiqishda paydo bo'ladigan Bluetooth orqali smartfondan keladigan signal bilan bog'liq.

DFF6 uyqu rejimini faollashtirish uchun ishlatiladi, bu erda uning chiqishi 2-bitli LUT4 dan ko'tarilish chegarasi bilan o'zgaradi, DFF10 yorug'lik holatini saqlash uchun ishlatiladi va uning chiqishi pastdan balandga o'zgaradi va har ko'tarilgan qirrasi kelganda. 3-bitli LUT10 chiqishidan.

FSM1-8 bitli hisoblagich; uning qiymati 0 yoki 255 ga yetganda uning chiqishiga yuqori impuls beradi. Binobarin, u FSM0 (16-bit) ning 255 qiymatidan oshib ketishining oldini olish uchun ishlatiladi, chunki uning chiqishi DFF-larni tiklaydi va DFF10 holatini yoqadi va o'chiradi. aksincha, yoritish +, - tugmalari bilan boshqarilsa va maksimal/minimal darajaga erishilgan bo'lsa.

FSM1 kirishiga ulangan signallar P11 va P12 orqali FSM0 ga etib boradi va ikkala hisoblagichda ham bir xil qiymatni saqlaydi.

5 -qadam: CLK generatorlari va multipleksor

CLK generatorlari va multipleksorlari
CLK generatorlari va multipleksorlari

Bu bo'limda uchta chastota hosil bo'ladi, lekin faqat bittasi FSM -ni bir vaqtning o'zida ishlaydi. Birinchi chastota RC OSC bo'lib, u 0 dan P0 gacha matritsadan olinadi. Ikkinchi chastota - LF OSC, u ham 0 dan P1 matritsasidan olinadi; uchinchi chastota - CNT7 chiqishi.

3-bitli LUT9 va 3-bitli LUT11 3-bitli LUT14 chiqishiga ko'ra bitta chastotani o'tkazishga imkon beradi. Shundan so'ng, tanlangan soat FSM0 va FSM1 ga CNT1 va CNT3 orqali uzatiladi.

6 -qadam: PWM

PWM
PWM

Nihoyat, FSM0 qiymati PWM signaliga aylanadi, u pin sifatida ishga tushiriladi va u tashqi LEDlarga ulanadi.

7 -qadam: Android ilovasi

Android ilovasi
Android ilovasi
Android ilovasi
Android ilovasi
Android ilovasi
Android ilovasi

Android ilovasida haqiqiy interfeysga o'xshash virtual boshqaruv interfeysi mavjud. Unda beshta tugma mavjud; ON / OFF, UP, DOWN, Kutish rejimi va Ulanish. Bu Android ilovasi tugmachalarni bosishni buyruqqa aylantira oladi va bajariladigan Bluetooth moduliga buyruqlarni yuboradi.

Bu ilova MIT App Inventor bilan yaratilgan bo'lib, u hech qanday dasturlash tajribasini talab qilmaydi. App Inventor ishlab chiquvchiga dastur bloklarini ulash orqali veb -brauzer yordamida Android OS qurilmalari uchun dastur yaratishga imkon beradi. Siz bizning ilovamizni MIT App Inventor -ga import qilishingiz mumkin, bu erda Loyihalar -> Import loyihasini (.aia) kompyuterimdan bosing va ushbu ilova eslatmasiga kiritilgan.aia faylini tanlang.

Android ilovasini yaratish uchun yangi loyihani ishga tushirish kerak. Besh tugma kerak: bittasi Bluetooth qurilmalari uchun ro'yxat tanlagich, qolganlari esa boshqaruv tugmalari. Biz ham Bluetooth mijozini qo'shishimiz kerak. 6 -rasm - bu Android ilovamizning foydalanuvchi interfeysi ekran tasviri.

Tugmalarni qo'shgandan so'ng, biz har bir tugma uchun dasturiy funktsiyani tayinlaymiz. Biz tugmalar holatini ko'rsatish uchun 4 bitdan foydalanamiz. Har bir tugma uchun bitta bit, shuning uchun tugmani bosganingizda, ma'lum bir raqam Bluetooth orqali jismoniy zanjirga yuboriladi.

Bu raqamlar 1 -jadvalda ko'rsatilgan.

Xulosa

Bu yo'riqnomada ikkita usulda boshqariladigan aqlli dimmer tasvirlangan; Android ilovasi va haqiqiy tugmalar. GreenPAK SLG46620V ichida to'rtta alohida blok tasvirlangan, ular yorug'lik PWMini oshirish yoki kamaytirish jarayonining oqimini boshqaradi. Bundan tashqari, uyqu rejimining xususiyati ilova uchun mavjud bo'lgan qo'shimcha modulyatsiyaga misol sifatida ko'rsatilgan. Ko'rsatilgan misol past kuchlanishdir, lekin yuqori voltli ilovalar uchun o'zgartirilishi mumkin.

Tavsiya: