Mundarija:

Atmega328 bilan Rojdestvo chiroqlari: 6 qadam
Atmega328 bilan Rojdestvo chiroqlari: 6 qadam

Video: Atmega328 bilan Rojdestvo chiroqlari: 6 qadam

Video: Atmega328 bilan Rojdestvo chiroqlari: 6 qadam
Video: Большой Рождественский концерт (Рождество с Григорием Лепсом) 07.01.2020 2024, Noyabr
Anonim
Image
Image
Ulanish
Ulanish

Rojdestvo keladi va bu haqda biror narsa qilishni boshlash vaqti keldi. Mening vaziyatimda - nihoyat, Rojdestvo daraxti chiroqlari haqidagi ko'rsatmalarni tugatish.

Bu erda g'oya oddiy: bir nechta rangdagi LEDlarni ushlang, ularni parallel ravishda LED drayveriga ulang (har birini alohida boshqariladigan qilib), xursand bo'ling. Bu zarur bo'lgan barcha simlarni hisobga olgan holda g'alati tuyulishi mumkin, lekin amaliyot shuni ko'rsatadiki, bu sizning zaryadsiz simli rejimlari va sozlamalari bo'lmagan holda, sizning do'kondan tashqari chiroqlaringizga qaraganda ancha yaxshi ishlaydi. Simlar ko'rinmas, LEDlar archa ignalarida yashiringan, hamma narsa IR masofadan boshqarish pulti bilan boshqariladi, bolalar va kattalar baxtli.

Bu oson ko'rinadi, lekin men buni tugatib, haqiqiy daraxtda ishlashim uchun bir necha yil kerak bo'ldi. Men kutilmagan joylarda muammolarga duch keldim - masalan, simlar. Bu ko'rsatma bir necha oylik sinovlardan o'tmasdan, xuddi shu narsani qilishni istaganlarga, Internetda har xil narsalarni sotib olishga yordam berish uchun mo'ljallangan.

Loyiha tajribali odamlarga mo'ljallangan, chunki siz uni qurilmangizga moslashtirishingiz kerak bo'ladi. Men buning uchun maxsus taxta yasaganman, uni o'zingiz o'ylab topishingiz kerak bo'ladi. Yoki siz mendan birini olishingiz mumkin, lekin shunga qaramay, ba'zi lehimlash qobiliyatlari kerak bo'ladi.

Sizga nima kerak:

- boshqaruv paneli (Arduino yoki boshqa)

- LEDni boshqarish sxemasi. LED drayverlari tavsiya etiladi, lekin buni shift registrlari va ShiftPWM kutubxonasi yordamida amalga oshirish mumkin

- Har xil rangdagi kamida 48 ta LED

- 30AWG simli o'rash sim, undan kamida 100 metr

- Lehimlash va dasturlash qobiliyati

- Biroz vaqt va sabr

Men o'z eskizimni beraman, lekin siz uni qurilmangizga moslashtirishingiz kerak bo'ladi. APOLOGIYa: Rasm va videolarning sifati, shuningdek maqolaning o'zi uchun uzr so'rayman. Ular men xohlagandek silliq emas. Lekin oilada ish va sevimli mashg'ulotim orasida avvalgi ikkisini tanlashim kerak. Va men bu ko'rsatmalarni nashr etishim kerak edi.

1 -qadam: simlarni ulash

Image
Image
Ulanish
Ulanish

Simlar men uchun asosiy muammo edi. Asosiy Xitoy chiroqlari yordamida siz quyuq yashil simga ega bo'lasiz. Men Internetda bir xil simlarni topishga umid qilgandim - hech qanday foyda yo'q. Darhaqiqat, men bir yil davomida o'nlab turlarga buyurtma berib, sinab ko'rdim va nihoyat, ular muhim emasligini tushundim.

Gap shundaki, sizning asosiy ishlab chiqarilgan gulchambaringiz ketma -ket ulangan. Shundan kelib chiqib, ikkita muammo paydo bo'ladi:

a) Simlar juda qalin, chunki ular ketma -ket barcha LEDlarning quvvatini ko'tarishi kerak

b) Bu simlar Rojdestvo daraxti bir shoxidan boshqasiga aniq ko'rinishda, shoxlarga perpendikulyar o'tadi.

Bu ikkita muammo simlarning daraxt barglari (archa ignalari) bilan birlashishini talab qiladi. Va bu ishda muvaffaqiyat qozonishmaydi.

Men o'ylagan narsa bilan (ya'ni, har bir alohida LED o'z simlariga ega, parallel ulangan) narsalar o'zgaradi:

a) Siz chindan ham ingichka simlardan foydalanishingiz mumkin

b) Ular diodli LEDning shoxini daraxtning poyasiga kuzatib, tomoshabinlar nuqtai nazaridan uzoqlashadi, shuning uchun ular ko'rinmas bo'lib qoladi.

Bingo! Sizga quyuq yashil rang kerak emas, siz shoxlar bilan aralashtirish uchun jigarrang rangga ega bo'lishingiz mumkin, yoki hatto men kabi ko'k-ko'k rangga ega bo'lishingiz mumkin va u hali ham ko'rinmas bo'ladi.

Bu men gulchambar o'rnida turganida bilib olgan narsam. Ishlamoqda.

Shunday qilib, sizga 30AWG simini o'rash uchun yupqa (ko'k rangga o'xshash) yoki jigarrang sim kerak bo'ladi.

2 -qadam: LEDlar

Internetda "10 ta rangli LED" to'plami mavjud. Ranglar: qizil, to'q sariq, sariq, botqoq-yashil, yashil, ko'k, pushti, binafsha, sovuq oq va issiq oq. Oxirgi ikkisi qiziq, chunki siz ular bilan kumush/oltin effektlarini qilishingiz mumkin, lekin bu boshqa hikoya. Qolgan sakkiztasi yaxshi, va raqam juda qulay, LED drayverlari 16 ta chiqishga ega. Men 3 mm diametrli LEDlarni tavsiya qilaman: ular juda kichik, lekin ignalarda yashirish uchun etarli.

Mening shov-shuvlarimga ergashganlar, men spektrga juda qiziqib qolganimni bilishadi va siz ko'rasizki, ranglar to'plami spektrga mos kelmaydi. Eng ko'zga ko'ringan - yashil va ko'k ranglar orasidagi bo'shliq.

Xo'sh, birinchidan, inson ko'zlari bu ranglarni farqlashda unchalik yaxshi emas; bizda hech bo'lmaganda qizil zarracha bo'lgan narsadan yaxshiroqmiz. Ikkinchidan, bo'shliqni to'ldirish uchun LEDlar deyarli yo'q. To'g'ri, Aliexpress -da bitta ko'k rangli LED etkazib beruvchisi bor, lekin ular ancha qimmat (va men ularni juda kech topdim). Bundan tashqari, asosiy yashil LEDlarni "zumrad" sifatida sotadigan ko'plab firibgarlar bor; bunga tushmang. Men 10-rangli to'plam juda yaxshi ekanligini topdim; LEDlar har xil ranglarda ko'rinadi.

Agar siz bu ko'k rangli svetodiodli LEDlarni mos narxda topa olsangiz, binafsha ranglarini ular bilan almashtirishingizni maslahat beraman (ko'k va yashil rang oralig'ida). Binafsharanglar UV nuriga o'xshaydi, ular unchalik yorqin emas, lekin qorong'uda, agar biror narsa ularga yaqin bo'lsa, qiziqarli narsalarni qila oladi. Shunday qilib, siz sehr va sirni ta'minlash uchun gulchambaringizga alohida filial yasashingiz mumkin.

3 -qadam: yig'ish

O'rnatish
O'rnatish
O'rnatish
O'rnatish
O'rnatish
O'rnatish

LEDlarni simlarga lehimlash vaqt talab etadi; hatto 48-LEDli kichkina gulchambar uchun ham bir kun bo'shating. Sizga kerak bo'ladi (LED va simlardan tashqari):

- 1,5 mm issiqlik o'tkazmaydigan quvurlar;

- 2,5 mm issiqlik o'tkazmaydigan quvurlar;

- mayiz eritmasining ko'pligi;

va lehimli temir, aniq.

Telning uchini tozalang, uni LED oyog'iga o'rab oling, mayiz eritmasidan bir tomchi, lehim qo'llang. Ikkinchi oyoq uchun takrorlang. Birinchi lehim birikmasiga 1,5 mm trubkani suring va uni qisqartiring, ikkinchisida takrorlang. 2,5 mm trubkani ikkala oyog'iga suring va siqing. Qisqa ko'rinishning oldini olish uchun ichki qisqarish kerak. Hech qanday tutishning hojati yo'q, chunki hosil bo'lgan kontrast engil, archa ignalari uni yaxshi ushlab turadi. (Agar sizning daraxtingiz sun'iy bo'lsa, sizga LEDlarni yopishtirish uchun biror narsa kerak bo'lishi mumkin)

Oltita guruhda bajaring, spektrga rioya qiling, LEDning lehim paytida shikastlanishi mumkinligini tekshirishni unutmang va anod simini belgilashni unutmang.

Simlarning uzunligiga kelsak, men ularni 50 sm qilib qo'ydim, hatto menda bor bo'lgan kichkina daraxt uchun ham biroz qisqa. Men simlarni novdalarga o'rash o'rniga cho'zishim kerak edi. Kechirasiz, men 96-LEDli gulchambar yasashni niyat qilgan edim (hali ham btw) va bu uning yuqori yarmi edi. Qanday bo'lmasin, shuni o'ylab ko'ringki, siz simni dastani bo'ylab, keyin esa tarmoqdan boshqaruvchidan chiqib ketishini xohlaysiz va shunga qarab uzunlikni tanlaysiz.

4 -qadam: Tekshirgich ulanishi

Nazoratchi ulanishi
Nazoratchi ulanishi

Men UltiBlink SL kartamdan foydalandim, u asosan shu vazifani hisobga olgan holda ishlab chiqilgan. Agar sizda buyurtma bo'lmasa, uni o'zingiz qilishingiz kerak bo'ladi. Non paneli bu erda ishlamaydi, shuning uchun siz prototip taxtasida biror narsa o'ylab topishingiz va lehimlashingiz kerak bo'ladi. LED drayverlari smenali registrlarga qaraganda yaxshiroq (ShiftPWM kutubxonasi bilan), chunki haydovchilar har bir LED uchun qarshilik talab qilmaydi, shuning uchun bo'sh joy, teshiklar kamroq, lehim kamroq bo'ladi.

E'tibor bering, men UltiBlink kartamning kengaytma versiyasidan foydalandim, uning orqasida Arduino buyumlari bo'lmagan (mikrokontroller). Men kengaytmaga mikrokontroller kartasini (yumaloq BlinkeyCore) biriktirdim. Haqiqat shundaki, u dastlab mo'ljallanmagan; bu 48-LEDli gulchambar 96-LEDli gulchambarning yuqori qismi bo'lib xizmat qilishi kerak edi, pastki qismida esa bortida MC bor edi. Shunday bo'lsa -da, a) men taxtani to'g'ridan -to'g'ri daraxt poyasiga oddiy kauchuk bantlar bilan bog'lab qo'ydim va b) eskizni qayta yuklash uchun boshqaruv panelini osongina olib tashladim. Men Rojdestvo daraxti ostida daftar bilan o'tirishim shart emas edi. Shunday qilib, men sizga shunga o'xshash narsani qilishni taklif qilaman, ya'ni Arduino/MC taxtangizni kontseptsiyadan ajratib oling.

Men LEDlarni 48 ta chiqishga uladim, ularning har biri 8 ta LEDning 6 ta partiyasida: qizil, to'q sariq, sariq, botqoq-yashil, yashil, ko'k, binafsha, pushti; 5 marta takrorlang. Ya'ni, chiqish 0 = qizil, chiqish 1 = to'q sariq, chiqish 2 = sariq va hokazo. Quyidagi eskiz buyuk adolat uchun shu tartibga tayanadi. Ularni yuqoriga yoki pastga spiral bilan, xuddi shu tartibda daraxtga qo'yganingizga ishonch hosil qiling. Men bir xil rangli LEDlarni ko'p yoki kamroq vertikal chiziqlarga (bir-birining ustida yoki pastda) qo'yishni taklif qilaman-bularning barchasi effektlarni ancha yaxshi ko'rinishga olib keladi.

Oxir -oqibat, siz energiya sarfini hisobga olishingiz kerak. 48 ta LED 5V da 1A ga yaqin. Siz USB zaryadlovchisini ishlatishingiz mumkin, lekin u chindan ham yaxshi va sinovdan o'tgan bo'lishi kerak, eBay -dan arzon sharbat emas, balki etarli miqdorda sharbat berishi kerak (lekin mening fotosuratlarimdagi oq rangga o'xshab, keyinroq almashtirganman). 96 ta svetodiod bilan men hamma narsani o'z maqsadiga muvofiq ishlashiga ishonch hosil qilish uchun gulchambarning har bir qismi uchun ikkitadan foydalanmoqchiman. Bu muammoni hal qilishning yana bir yo'li - bu dasturiy ta'minot: agar siz har qanday vaqtda 25 dan ortiq LED yoqilmaganligiga ishonch hosil qilsangiz, siz uni har qanday USB zaryadlovchi qurilmasidan yoki hatto kompyuteringizning USB portidan ishlata olasiz. Mening pastdagi eskizim unday emas.

5 -qadam: IR nazorati

IQ sizning gulchambaringiz rejimlarini boshqarish uchun juda yaxshi va ajoyib. Yaxshiyamki, har qanday ehtiyojni qondiradigan ajoyib IRLib kutubxonasi mavjud. Bundan tashqari, IQ qabul qilgich juda oddiy ulanishga ega.

Arduino -da IR masofadan boshqarish pultidan foydalanish bo'yicha ko'plab ko'rsatmalar mavjud, shuning uchun men bu erda batafsil ma'lumot bermayman. Agar siz u bilan tanish bo'lmasangiz, buni amalga oshirish uchun kechqurun vaqt ajrating, bu raketa fani emas.

Ishni osonlashtirish uchun ba'zi eslatmalar kerak:

1 - IQ bilan aloqa qilishning turli xil protokollari mavjud, bunda Philips eng g'alati, Sony esa eng mantiqiy va dasturlash oson. Ko'p arzon pultlar minnatdorchilik bilan Sony -dan foydalanadi.

2 - Agar sizda garajda biron bir eski masofadan boshqarish pulti bo'lsa, ularni tekshiring, ehtimol ular yaxshi ishlaydi. Men televizordan masofadan boshqarish pultidan foydalanib, Rojdestvoga qarshi chiqishimdan birini boshqarardim, lekin bu eng yaxshi g'oya emas, chunki signal devorlardan aks etadi, shuning uchun siz gulchambaringizni boshqarayotganingizda televizoringizdagi kanallarni yoki biror narsani o'zgartirishi mumkin. Yaxshisi, bag'ishlangan bo'lsin.

3 - Mana mening eskizim, men Sony protokoli bilan ishlaydigan yangi masofadan boshqarish pultidagi tugmachalarni xaritaga solish uchun foydalanaman. U kodlarni ketma-ket monitorga tashlaydi, shunda siz ularni nusxa ko'chirasiz. Men ularni ushbu faylga nusxa ko'chiraman, u gulchambar uchun asosiy eskizga kiritilgan (pastda). Ehtimol, umumiy masofadan boshqarish pultining kodlari (shu jumladan "CarMP3" deb nomlanadi) u erda ham ishlaydi.

6 -qadam: eskiz

OK, bu eskiz mening dizaynim taxtasi bilan ishlaydi (48 LED). Bu juda tartibsiz, chunki men buni shoshgancha yozganman va uni tozalash/sharhlashga vaqtim bo'lmagan. Shunga qaramay, siz buni foydali deb topishingiz mumkin; Undan kerakli bo'laklarni oling va xohlagan narsani qiling. DMdriver kutubxonasi funktsiyalarining barcha misollarini sizniki bilan almashtirish eng oddiy usul bo'ladi. Hammasi uchta: test.setPoint (int x, int y) #x chiqishini Y ga o'rnatadi (Y-16 bitli raqam); test.clearAll () barcha chiqishlarni nolga o'rnatadi va test.sendAll () LED drayveridagi ma'lumotlarni yangilaydi (ma'lumotlarni bir vaqtning o'zida LED holatini o'zgartirib yuboradi). Pult bo'lmasa ham, u ishlaydi. Tugatgandan so'ng, ushbu ko'rsatmaning oldingi qismini tekshiring, masofadan boshqarish pultidagi tugmachalarni xaritaga kiriting va kodlarni qo'shish fayliga qo'ying.

Agar siz UltiBlink -ning mag'rur egasi bo'lsangiz, siz eskizni qutidan chiqarib yuborishingiz mumkin (sizda DMdriver kutubxonasi bor, to'g'rimi?); Agar biror narsa noto'g'ri bo'lsa, men bilan bog'laning, manzilni bilasiz.

Omad tilaymiz, zavqlaning, savollar bering - men ularga javob berishga harakat qilaman, yaqinlashib kelayotgan Rojdestvoni tabriklayman va umid qilamanki, tez orada yangi narsa yozaman!

Tavsiya: