Mundarija:

Mini RGB Light Cube!: 8 qadam
Mini RGB Light Cube!: 8 qadam

Video: Mini RGB Light Cube!: 8 qadam

Video: Mini RGB Light Cube!: 8 qadam
Video: Introducing the Lume Cube Tube Light Mini and XL 2024, Iyul
Anonim
Mini RGB Light Cube!
Mini RGB Light Cube!

Bu, asosan, Hypnocube -ni taqillatishi, 64 ta LED bo'lishi o'rniga, shuning uchun ishlab chiqarish uchun kamida 150 dollar turadi, men 8 LEDning kichikroq versiyasini 30 dollarga sotdim. Natijada 2x2x2 hajmli kub olinadi, bu erda har bir yorug'lik mustaqil ravishda boshqariladi. Ishonchim komil emas, siz har bir yorug'likdan qancha rang olishingiz mumkin, lekin men rangni "tebranishlarsiz" 64 -ni yaxshi qila olardim.

1 -qadam: materiallar

Materiallar
Materiallar

Ha, siz aslida narsalar bilan qurishingiz kerak. Siz uchun juda yangi bo'lgani uchun men sizga kerak bo'lgan hamma narsani aytib berdim.*Uskuna*Lehimlash temir (nozik uchi kerak)*Lehim*Tel kesgichlar/Stripers*Legos (Yon tomonida teshiklari bor texnik turdagi)*AVR Dasturchi (Pastga qarang)*Uzluksizlikni tekshiruvchi*Qismlar*8 RGB LED*1 Atiny2313*Rezistorlar*Tel*Qattiq sim (Plastik burmalar)*5v bilan ta'minlash usuli (devor simi, batareyalar, regulyator va boshqalar)*Ixtiyoriy*Protoboard/ PCB*Breadboard*Oq shaffof bo'yoq*Dasturchi*Parallel port (Erkak, 20-pinli)*20-pinli DIP soket*Protoboard yoki 20-pinli DIP kesish taxtasi Ha, sizga Legos kerak. Ular bu loyiha uchun eng zo'r. Agar siz ularni sotib ololmasangiz, siz 2x4 o'lchamdagi o'yinchoq yasashingiz kerak bo'ladi, men AVR dasturchisini Ghetto dasturlashda ko'rsatilgandek o'rgatib qo'ydim, faqat men bosh pimlarini qoldirib, simlarni to'g'ridan -to'g'ri pimga uladim. izlar. Buni tushunib, kompyuter bilan ishlash uchun uning ko'rsatmasiga tashrif buyuring. Mening ba'zi rasmlarimda siz asosiy shtamp taxtasini ko'rishingiz mumkin, lekin men uni faqat 5V quvvat manbai va uning taxtasi uchun ishlatyapman. Men barcha qismlarimni sotib oldim. SparkFun Electronics -da va men bundan juda mamnun bo'ldim.

2 -qadam: Rejalashtirish

Rejalashtirish
Rejalashtirish
Rejalashtirish
Rejalashtirish
Rejalashtirish
Rejalashtirish

Men buni siz uchun qilganim uchun, aslida bu qadamni qilishingiz shart emas! Bu faqat unga kiritilgan ba'zi dastlabki fikrlar.

Mening RGB LED -larim muzlamaganligi va ranglari "alohida" bo'lgani uchun, men ularni odatda mat qoplamasi uchun ishlatiladigan akril bo'yoq bilan bo'yashga qaror qildim. Men uni boshqa bo'yoq bilan ingichka qilib quritdim, shaffof edi, lekin uning jilosi kichik edi. Birinchi rasmlar bilan ko'rib turganingizdek, natija juda yoqimli edi, men uni qurishdan oldin, men yonimda turgan oddiy LEDlar yordamida uning prototipini yaratdim. Rasmlarning ikkinchi "guruhida" ko'rib turganingizdek. Birinchisi, mening Lego Jig -dagi 4 ta LED. Asosan, u oltita uzunlikdagi, balandligi 3 ta g'isht va 2 ta plastinka bo'lishi kerak va u kvadratga juda yaqin. (Uning 0,07 pog'onasi o'chadi, siz g'alati odamsiz) Men anodlarni (qisqaroqlarini) bukib qo'ydim va keyin ularni keyingi egilgan anodga lehimladim. Siz katodga tegolmaysiz! Agar siz uni lehimlashga urinib ko'rsangiz va bu qiyin deb o'ylasangiz, u endi boshlandi! Bu bajarilgandan so'ng, keyingi LEDlar to'plami bilan takrorlang, keyin 6 -rasmda bo'lgani kabi, katod pimlarining uchlarini ichkariga bir oz eging. Anod "halqasiga" tegmasdan, ularni katodlarning pastki qismiga lehimlang. Nihoyat, har bir anod halqasidan pastgacha 2 ta qattiq sim va lehim ulanishlarini oling, pastdan jami 6 ta ulanish. LEDlar endi multipleksatsiyalanadi. LEDni yoqish uchun sath va ustunni tanlang. Bu ishladi va men haqiqiy narsaga o'tishga tayyor edim. Kechirasiz, Marko rejimidan kam bo'lmagan kameram. Men ko'rinmas tafsilotlarni Photonotes yordamida tushuntirishga harakat qilaman. (Ular 3,1 megapikselli tasvir bo'lishi kerak, shuning uchun agar siz buni qilishga qaror qilsangiz, ehtimol siz uni kattalashtirishingiz mumkin)

3 -qadam: Yaxshi

Yaxshi
Yaxshi
Yaxshi
Yaxshi
Yaxshi
Yaxshi
Yaxshi
Yaxshi

Hypnocube -ning ko'rsatmalariga muvofiq, men xuddi shu nom bilan 3 ta bo'lim yaratdim: Yaxshi, Yomon va, albatta, Yomon, Siz o'ylashingiz mumkin, bu kichik laqabli, lekin jiddiy. "Ugly" ni o'qish uchun sizga bir daqiqa vaqt kerak bo'lsa -da, men birinchi marta o'qishim uchun 2 soat vaqt kerak bo'ldi. Siz LEDlarni qanday burish kerakligini ko'rib boshlashingiz mumkin. Meniki RCBGga ketdi, sizniki boshqacha bo'lishi mumkin, shuning uchun tekshiring! Keyin, barcha 4 LEDni qurilmangizga joylashtiring. Shunday qilib, simlar diagonal ravishda ichkariga, eng yaqin qizil, katodga ishora qiladi. Qizilni egganda, ular tegishi kerak, agar oxirgi qizil rangdan biroz oshmasa. Keyin ko'klarni qarama -qarshi tomonga, so'ngra ko'katlarni qizil rang bilan bir xil qilib katlayın. Ko'klar deyarli 1 mm masofada bo'lishi kerak, lekin ko'katlarning uzunligi 1 sm dan oshadi, men katodni qizillardan bir oz egib, menga bir oz lehimlash xonasini berdim, keyin hamma qizillarni lehimladim. Qizil uzukni tugatgandan so'ng, uzuk bo'ylab uzluksizligini tekshirish kerak. Agar siz katodga yaqinlashsangiz, uni lehimlamaganingizga ishonch hosil qilish uchun uzluksizlikni tekshiring. Agar siz shunday qilgan bo'lsangiz … uni chiqarishga harakat qiling. Bu eng oson qadam edi! VAJJAJ!

4 -qadam: Yomon

Yomon
Yomon

Shunday qilib, endi siz qizilni lehimlagan bo'lsangiz, yashil va ko'k rangga o'tish vaqti keldi. Ko'k uchini iloji boricha yaqinroq joylashtiring. Ehtimol, u 1 mm bo'shliqqa ega bo'ladi. Yaxshiyamki, lehim bu borada juda yaxshi. (Ogohlantirish! Agar sizda dazmol juda qizib ketgan bo'lsa, siz bo'shliqni to'ldirishingiz mumkin, qo'yib yuboring va qo'rg'oshin orqaga burilib, issiq lehim tashlab yuboradi!) Qizil rangda, siz ishlatmoqchi edingiz. iloji boricha kamroq lehim. Bu erda men kattaroq globusdan foydalandim. Juda ko'p ishlatmang, aks holda siz boshqa simga lehim qilasiz. (Agar shunday bo'lsa, 5 -qadamni tekshiring.) 4 marta takrorlang, endi sizda ko'k uzuk bor! Vajjaj! Davomiylikni tekshirishga ishonch hosil qiling;-) Yomonlik unchalik yomon emas edi, to'g'rimi?

5 -qadam: Yomon - 2 -qism

Yomon - 2 -qism
Yomon - 2 -qism
Yomon - 2 -qism
Yomon - 2 -qism

Nihoyat, siz yashil rangni qilishingiz kerak bo'ladi.

Buning uchun sizga yoqilgan LED yoki yoqmagan eski rezistor kerak bo'ladi. (Bizga sim kerak) Menga har bir qo'rg'oshinga atigi 8 mm kerak edi, 1 zaxira sariq LED bu hiylani qildi. Donor qismini yashil qo'rg'oshin oxirigacha lehimlang, so'ng donor qo'rg'oshining 1/2 qismini ishlatib kesib oling. Yashil rang keyingi nuqtaga yetadigan darajada uzun bo'lishi kerak, biz buni o'z manfaatlarimiz uchun ishlata olamiz. Qolgan to'rttasi uchun takrorlang. Biz uni to'g'ri egishimiz mumkin edi, lekin agar biz uni egib qo'ysak, bu osonroq bo'ladi. Qisqichbaqalar yordamida simni taglikka yaqin ushlang va 20 gradus ichkariga burang (160 graduslik burchak). Keyin oxirigacha takrorlang. Agar siz buni to'g'ri qilsangiz, bu keyingi simga o'tishi kerak. Orqaga qayting va bo'lmasa, uni o'zgartiring. Keyin yana 4 marta takrorlang. (Agar donor qo'rg'oshin sovuq payvand choki yoki biror narsa tufayli uzilib qolsa, uni qayta lehimlashga to'g'ri keladi.)

6 -qadam: Yomon

Yomon
Yomon

Haha! Endi "chirkin"! Endi uning lehim vaqti! Yashilni keyingi yashilga lehimlang. Buning o'z qadamiga loyiq bo'lishining sababi oddiy - bu juda qiyin. Bu erda ba'zi maslahatlar:*Moviy uchiga tegmang. To'g'ridan -to'g'ri pastga "tashqi chetidan" lehim qilish yaxshidir.*Dazmolingizni juda qizib ketishiga yo'l qo'ymang yoki uni uzoq vaqt qoldiring. Aks holda, donor qo'rg'oshining chiqib ketishiga olib kelishi mumkin.*Ko'p lehim ishlatmang. 5 mm etarli. *Agar qo'rg'oshin lehim nuqtasi ustida "suzayotgan" bo'lsa va siz uni itara olmasangiz, lehimlantiruvchi temirni ishlatishdan ko'ra, asbob ushlagichini yoki uni ushlab turish uchun biror narsa qo'ying. Bu juda qiyin. Agar siz nihoyat ko'k rangga lehim qilsangiz, mana men undan qanday qutuldim. (Menda payvand chig'anog'i yo'q, va boshqa qirib tashlash asboblarim yordam bermagan). Ularning orasidagi aloqani iloji boricha yupqa qilib qo'ying*Shunda siz sim kesgichlar bilan u erga kirib, ko'prikni kesib olishingiz mumkin. YoKI*Lehimni zaxira simga ko'tarib ko'ring, masalan, boshqa o'lik LED. Yashil halqani to'ldirgandan so'ng, uzluksizligini tekshiring. Biroq, hali nishonlamang! Orqaga qayting va bu qismni o'tkazib yuborib, yana 3-6-bosqichlarni bajaring. Sizga har bir sath uchun bittadan 4 ta LEDning 2 to'plami kerak;-)

7 -qadam: Yomon - 2 -qism

Yomon - 2 -qism
Yomon - 2 -qism
Yomon - 2 -qism
Yomon - 2 -qism

Endi ikki qavatni bir-biriga lehimlash vaqti keldi! Rasmda hamma narsa ko'rsatilgan. Yuqori qavatda 7-9 mm kenglikdagi uchlarini tashqariga egib, so'ngra butun qo'rg'oshini ichkariga burab qo'ying. Men ularni jigga joylashtirdim, men esa tepani joyida ushlab, unga lehimlab berdim. 3 qo'li bo'lmaganlarning hiylasi - 2 ballni lehimlash, keyin u o'z -o'zidan turishi kerak, va siz boshqasini olishingiz mumkin. Uzluksizligini tekshiring va davom eting. Keyingi qism uchun sizga qattiq sim kerak bo'ladi. Agar sizda bunday maslahat bo'lmasa, quyidagilarga amal qiling:

Bu o'ralgan narsalarda biz ishlatadigan simli yadro bor. (Ogohlantirish: Qog'ozga o'ralganlarni lehimlab bo'lmaydi, chunki ularning ustiga yopishtiruvchi bor.) Men yaxshi ishlagan plastmassadan yasalgan narsalarni topdim. (Birida hatto mis ham bor edi!) Chiqarish uchun, men rasmni ko'rib turganingizdek, ikki chetidan ushladim va tortdim, endi uning uzunligini har bir rangdan tortib non taxtasiga qo'shishimiz kerak. Yuqori darajadan boshlang va LEDni tanlang. O'ng tomonda, qizil, keyin yashil rangdagi lehim. (Bu tartibda!) Bular osonlikcha ketadi. Lehimlash temirining juda qizib ketmasligiga ishonch hosil qiling, aks holda u bo'g'inni bo'shatib qo'yishi mumkin, keyin chap tomonda, ko'k rangda lehim. Bu cheklangan maydonda qiyin. Pastki qavat uchun takrorlang, lekin boshqa LEDni tanlang. Hamma narsani uzluksizligini sinab ko'ring va uzluksiz bo'lmagan narsani tuzating. Siz qiyin ishni tugatdingiz! (Agar siz LEDlarni bo'yashni rejalashtirmoqchi bo'lsangiz, endi buni qilish vaqti keldi;-))

8 -qadam: Puf! Dasturlash

Puf! Dasturlash!
Puf! Dasturlash!
Puf! Dasturlash!
Puf! Dasturlash!
Puf! Dasturlash!
Puf! Dasturlash!

Mana, bu yanada yumshoq qadam: dasturlash. Men o'zimni non taxtasida ishlatardim, chunki menda mikrokontrollerni doimiy ravishda almashtirish uchun qo'shimcha DIP uyasi yo'q, men Amtel Atiny 2313 dan foydalanardim. Siz hech bo'lmaganda 10 I/ Pimlarni rasmga muvofiq ulang. ("v" pastki darajani bildiradi,"yuqori qavatni anglatadi. "D5" va bu I/O'ning nomlari)Buni dasturlash aslida juda oson! Men hamma uchun oson bo'lishi uchun ramka yozdim! Mana bu fayl

#include #define F_CPU 100000UL // Kechiktirish uchun standart tezlikni o'rnatadi.h #o'z ichiga oladi // Birinchi harf yuqori yoki pastki // Ikkinchi harf rang (R/G/B) // Uchinchi harf Yoqilgan/O'chirilgan // TRN = Top Red On #deFine TRN PORTD = _BV (PD0);#TRF PORTD & = ~ _BV (PD0);#TGN PORTD = _BV (PD2);#TGF PORTD & = ~ _BV (PD2) ni belgilang;# TBN PORTD ni aniqlang = _BV (PD4);#TBF PORTD ni belgilang & = ~ _BV (PD4);#BRN PORTD ni belgilang = _BV (PD1);#BRF PORTD ni aniqla & = ~ _BV (PD1);#BGN PORTD = _BV ni aniqla (PD3);#BGF PORTD & = ~ _BV (PD3);#BBN PORTD = _BV (PD5);#BBF PORTD & = ~ _BV (PD5);#Birinchi harf ustunli harf (A/B/C) /D) // Ikkinchi harf Yoqilgan/O'chirilgan // AN - A ustuni degan ma'noni anglatadi#AN PORTBni belgilang & = ~ _BV (PB7);#BN PORTBni belgilang & = ~ _BV (PB6);#CN PORTBni belgilang & = ~ _BV (PB5);#DN PORTB & = ~ _BV (PB4);#AF PORTB = _BV (PB7);#BF PORTB = _BV (PB6);#CF PORTB = _BV (PB5);#DF PORTB ni aniqla = _BV (PB4); // Rangni modulyatsiya qilish uchun ozgina vaqt kutish uchun "WO" dan foydalaning // LED rangini "tebranmasdan" saqlash uchun sozlang #define WO _delay_ms (15); // 1 soniya kutish uchun "WL" dan foydalaning#WL _delay_ms (1000) ni belgilang; int main () {// I/U portlarini sozlash: DDRD = _BV (PD4) ni tahrir qilmang; DDRD = _BV (PD2); DDRD = _BV (PD3); DDRD = _BV (PD0); DDRD = _BV (PD1); DDRD = _BV (PD5); DDRB = _BV (PB7); DDRB = _BV (PB6); DDRB = _BV (PB5); DDRB = _BV (PB4); // Ustunlar uchun standart holat AF; BF; CF; DF; // END DEFINES while (1) {// Bu erda hamma narsa abadiy aylanadi // Kodingizni shu erga kiriting} return (0);}Men buni siz uchun sharhladim va ularni o'qish tushuntirishi kerak. Asosan, siz rang va balandlikni tanlash uchun ta'riflarning birinchi "to'plamidan" foydalanishingiz mumkin. Keyin ustunni tanlash uchun siz ikkinchi "to'siq" dan foydalanasiz. Agar siz kodga quyidagilarni qo'ysangiz, "// o'z kodingizni shu erga kiriting" dan so'ng, u eng yaxshi 4 LEDni ko'k rangda yondiradi

BGN; AN; WO; AF; BN; WO; BF; CN; WO; CF; DN; WO; DF; BGF;Birinchi satr Yashil rangni pastki qavatga aylantiradi, qolgan chiziqlar esa ustunlar bo'ylab aylanadi. Biroq, bu kod LED yoritgichini oq rangga aylantiradi

AN; TBO; WO; TBF; TGO; WO; TGF; TRO; WO; TRF; AF;Ranglarni juda tez aylanib o'tib, ular birlashadi. Agar siz ilgari hech qachon nurni aralashtirmagan bo'lsangiz, u asosan shunday ishlaydi:*R+G = Sariq*R+B = Qizil (pushti-binafsha)*B+G = Ko'k (och ko'k) Agar siz boshqa ranglarni xohlasangiz, siz har bir rang uchun bir vaqtning o'zida har xil nisbatlarda tajriba o'tkazishi mumkin, qoida tariqasida: hech qachon bir vaqtning o'zida 1 ta LEDdan ortiq rangni yoqmang, aks holda ular yonmasligi mumkin. Agar siz bir vaqtning o'zida 8-ni yoqmoqchi bo'lsangiz, rangni sodda saqlashga harakat qiling, umid qilamanki, siz o'zingizning mini-gipnozingizda qiziqarli dizayn va animatsiyalarni yaratishingiz mumkin. Bu loyiha, siz ko'rib turganingizdek, lehim bilan o'qish loyihasi emas va men buni amalga oshirishdan oldin ko'proq tajribaga ega bo'lishni xohlardim.

Tavsiya: