Mundarija:
- 1 -qadam: materiallar
- 2 -qadam: Elektronni yig'ing
- 3 -qadam: Tensegrity haykali
- 4 -qadam: Strukturani yig'ish
- 5 -qadam: kodlash
- 6 -qadam: To'liq
Video: LED chiroqni o'chirish: 6 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Siz magnit bilan o'ynadingizmi va ularni ko'tarishga harakat qildingizmi? Ishonchim komilki, ko'pchiligimiz bunga ishonamiz va garchi bu juda ehtiyotkorlik bilan joylashtirilsa, bir muncha vaqt o'tgach, buni amalga oshirish mumkin emasligini tushunasiz. Bunga Ernshou teoremasi sabab bo'lgan, u faqat ferromagnit materiallar bilan ob'ektni ko'tarish mumkin emasligini isbotlaydi. Biroq, bizda vaqtinchalik echim bor. Magnitni ishlatishning o'rniga, biz chiroqni tensegrity deb nomlangan illyuziya yordamida ko'taramiz, xuddi chiroqni suzayotganga o'xshatamiz!
1 -qadam: materiallar
Bunday chiroqni tayyorlash uchun sizga turli xil materiallar kerak bo'ladi:
Elektronika:
- Arduino Nano kartasi
- Jumper simlari
- 24 LED halqa
- 9V batareya
- 9V batareya ulagichi
Dekorativ materiallar:
- Karton (yoki yog'och, agar lazer bilan kesilgan bo'lsa)
- Baliq ovlash liniyasi (har kim ishlashi kerak va iloji boricha shaffofini tanlashga harakat qiling)
Boshqalar:
- Rezinali bog'ich
- Issiq yopishtiruvchi qurol
- Issiq yopishtiruvchi tayoqlar
- Lehimlash uskunalari
- Velcro
2 -qadam: Elektronni yig'ing
Avval elektron qismlarni yig'ishimiz kerak. Bu oddiy va uni bir necha qadamda bajarish mumkin:
- 9V batareya ulagichini Arduino Nano kartasiga lehimlang. Bu biroz qiyin bo'lishi mumkin, lekin bu loyihaning muvaffaqiyatining muhim qismidir, chunki boshqaruv kengashiga etarli quvvat berilmasligi uning to'g'ri ishlamasligiga olib keladi. Qizil simni VIN piniga, qora simni bortdagi GND pinlaridan biriga ulang.
- Pimlarni LED halqasining orqa tomoniga lehimlang. Ushbu 24 ta LED halqalarda, odatda, lehim uchun 4 ta joy bor, lekin bu loyihada biz faqat 3 dan foydalanamiz: DI, VCC va GND. DO qismi bu loyihada ishlatilmaydi. Uni halqaga ishora qiluvchi sim bilan lehimlang, chunki halqaning tashqi tomoni qog'oz orqasida yashiringan bo'ladi, lekin agar o'tish simlari noto'g'ri tomonga lehimlangan bo'lsa, u chiroqdan chiqib ketadi.
- Simlarni Nano -ga ulang. DI mos ravishda LED halqasida va Arduino Nanoda D5 piniga, VCC 5V ga va GND GND ga ulangan bo'lishi kerak.
Va siz elektronikani tugatdingiz!
3 -qadam: Tensegrity haykali
Ushbu loyiha uchun biz tensegrity -dan foydalanmoqdamiz, bu narsa biror narsani joyida ushlab turish uchun kuchlanishni ishlatish harakatini tasvirlash uchun ishlatiladi. Agar siz shunchaki haykal yasashni xohlasangiz, lazerli kesish uchun yaratilgan Adobe Illustrator faylini yuklab olishingiz yoki rasmga qarab, kartondan o'zingiz kesib olishingiz mumkin.
Agar siz bu qanday ishlashini bilmoqchi bo'lsangiz, quyida o'qishni davom ettiring!
Ushbu zo'ravonlik haykali baliq ovlash chizig'idan foydalanib, uni havodor narsaga o'xshatadi. Izohli fotosuratda 6 ta satrning har birining o'rni alohida ranglarda ajratilgan. Uzunroq qizil ranglar tepalikni yiqilishdan saqlaydi. Keling, ularni "tizimli chiziqlar" deb ataymiz. Keyin bizda ko'k chiziqlar bor, ular qizil chiziqlarga qaraganda ancha qisqaroq bo'lib, yuqori qismini ushlab turadi. Keling, ularni "levitatsion chiziqlar" deb ataymiz.
Bizning tensegrity haykalimizda, levitatsiya chiziqlari strukturani ushlab turadi. Gravitatsiya tufayli yuqori qism pastga siljishni xohlagani uchun, levitatsiya chiziqlari strukturani yuqoriga ko'tarishi kerak. Ularni biriktirganda, ular juda zo'riqib, strukturaning yuqori qismini ushlab turadilar. Haykalning to'rt tomonining ikkitasida ulardan bittasi bor, garchi nazariy jihatdan bitta tuzilmani ushlab turish uchun etarli.
Ammo, agar siz levitatsiya chizig'ini biriktirishga harakat qilgan bo'lsangiz, u osongina yiqilib tushishini sezasiz. Buning sababi shundaki, tepa faqat ikkita nuqta bilan biriktirilgan, bu esa barqaror strukturani ta'minlash uchun etarli emas. Arralashni tasavvur qiling. U bitta chiziq bilan biriktirilgan bo'lib, uning erkin harakatlanishiga imkon beradi. Bizning holatda, bizda yuqori qism ikkita nuqta bilan biriktirilgan va ikkita nuqta chiziq hosil qiladi, shuning uchun bizning tanglik haykalimizning tepasi faqat levitatsiya chiziqlari bilan, faqat arra.
Bu erda strukturaviy chiziqlar o'ynaydi. Bu chiziqlar ham keskin va ular strukturani joyida ushlab turadi. Agar strukturaning ustki qismi istalgan tomonga egilsa, boshqa yo'nalishdagi strukturaviy chiziqlar strukturani ushlab turadi, bu esa strukturaning barqaror bo'lishiga olib keladi.
Garchi bu sehrga o'xshasa -da, aslida butun haykalning ortida juda ko'p sabablar bor!
4 -qadam: Strukturani yig'ish
Endi chiroqni ulash uchun strukturani yig'ish vaqti keldi. Bu qism nisbatan oson:
- Asosiy qismlarni toping. Ular har doim eng katta kvadrat.
- "Qo'l" qismlarini qo'ying. Yon tomondan qaralganda, ularning hammasi bir tomonga qaraganligiga ishonch hosil qiling. Bu zo'riqish strukturasini maqsadga muvofiq yig'ilishini ta'minlaydi.
- Yon qismlardan birini qo'ying. Bu biz bilaguzukni yopishtirganda, uning ichkariga kirmasligiga ishonch hosil qilishimizga imkon beradi va strukturaning butun poydevorini bir -biriga moslashtirishga imkon beradi.
- Qolgan tuzilmani yig'ing. Bo'laklar aniq joyiga tushishi kerak va bir oz yopishtirilsa, siz yuqorida ko'rsatilgan narsaga ega bo'lasiz.
Shundan so'ng, baliq ovlash liniyalarini tuzilmalarga ulash vaqti keldi.
- Issiq elim yordamida tuzilish qismlarining har bir burchagiga to'rtta baliq ovlash chizig'ini yopishtiring. Ularning barchasi bir xil uzunlikda ekanligiga ishonch hosil qiling.
- Baliq chizig'ini boshqa tuzilishga mos burchaklarga yopishtiring. Agar men butun konstruktsiyani yotqizgan bo'lsam, yopishtirish osonroq edi, shuning uchun uni qo'llarim bilan ushlab turishim shart emas edi.
- "Levitatsiya chiziqlarini" joyiga yopishtiring. Yuqori va pastki qismlarni iloji boricha uzoqroqqa surib qo'ying, elim soviganidan so'ng va strukturaning qo'llarini bog'lab, oxirgi ikkita baliq ovlash chizig'ini orasiga yopishtiring.
Agar siz shu vaqtgacha erishgan bo'lsangiz, unda yaxshi ish! Siz allaqachon ko'p ishlarni bajargansiz:)
Endi biz chiroqni yig'ishimiz kerak. Bu qism juda oson:
- LED halqasini dumaloq "g'ildirak" bo'lagiga yopishtiring, o'rtada ikkita teshik bor. O'tkazgich simlari uchun plastik tayanch to'liq tashqi doiraning ichida ekanligiga ishonch hosil qiling.
- Ikki dumaloq bo'lakni bir -biriga yopishtiring. Birinchi "g'ildirak" qismini to'liq aylana bilan, o'rtada ikkita teshik bilan yopishtiring. Bular bizning yorituvchi chiroqimizning yuqori qismini tashkil qiladi.
- Batareyani oxirgi to'rtburchaklar bo'lagiga ulang. Bu bo'lakda 9V batareya uchun teshik bor va uni Arduino Nano taxtasi bilan birga rezina bantlar bilan bog'lab qo'ying. Bu erda elim ishlatmaslikni unutmang: batareya oxir -oqibat o'ladi va sizda hech narsa bo'lmaydi!
- B5 qog'ozini oling va uni chiroq chetiga yopishtiring. Bu chiroq soyasi kabi ishlaydi, shuningdek, tomoshabinlarga chiroq va taxtani ko'rishga to'sqinlik qiladi.
- Chiroqning pastki qismidan osilgan narsaga ega bo'lishingiz mumkin. Bir nechta fotosuratlarimda qandil effektini yaratish uchun qisqa, kesilgan somon bo'laklarini ishlatishga harakat qildim, lekin keyinchalik men olib tashladim, chunki bu mening rasmlarimga to'sqinlik qildi. Siz bu erga qo'ygan narsangiz bilan ijodiy bo'lishingiz mumkin!
- Chiroqning yuqori qismini oxirgi g'ildirak qismiga yopishtiring. Shunga qaramay, baliq ovlash chizig'ining barcha qismlari bir xil uzunlikda ekanligiga ishonch hosil qiling.
- Velcro -ni ikkinchi g'ildirakning yuqori qismiga va strukturaning yuqori qismining pastki qismiga yopishtiring. Bu chiroqni ko'tarilish vaqtida ushlab turadi. Velcro -dan foydalanish sizga uni tushirishga va kerak bo'lganda yangi batareyani berishga imkon beradi.
5 -qadam: kodlash
Endi bu erda qiziqarli qism: chiroq qanday ko'rinishini xohlasangiz, kodlash! Men bu erda aylanadigan RGB chiroqni ishlatganman, lekin xohlagan narsangizni yaratib, ijodkor bo'ling!
Bilaman, men kodning har bir qismini mustaqil ravishda oxirgi ko'rsatmamda tushuntirdim, lekin bu safar men koddagi izohlarga barcha tushuntirishlarni kiritdim. Kodni o'rganayotganda, men yaratgan narsalarni yodda tuting: aylanadigan kamalak chirog'i. Agar bu tushuntirish etarlicha yaxshi bo'lmasa (buni qanday tushuntirishni bilmayman), siz har doim boshidagi videoni orqaga qarab ko'rishingiz mumkin. Siz kodni quyida ko'rishingiz yoki uni Arduino Create veb -saytidagi havoladan yuklab olishingiz mumkin!
Arduino havola yaratish
(Bundan tashqari, agar etarli odamlar kodni batafsil tushuntirishimni so'rashsa, ehtimol men bu haqda biror narsa qilaman …)
Levitating_Lamp.ino
#qo'shing |
#definePIN5 // LED halqasi ulangan pin |
#defineNumPixels24 // halqadagi piksellar soni. 8 ta svetodiodli halqalar bor yoki siz neopikselli LED tasmasini ishlatishingiz mumkin. Sizda qancha LED borligini aniqlashni unutmang! |
Adafruit_NeoPixel piksellari (NumPixels, PIN, NEO_GRB + NEO_KHZ800); // piksel deb nomlangan yorug'lik ob'ektini e'lon qiling. Kod shu tarzda LED halqasini bildiradi. |
#defineDELAYVAL20 // bu chiroqlar burilishidan oldin taxta qancha vaqt kutishi kerakligini hal qiladi. Agar siz buni kichikroq qilsangiz, kamalak ranglari tezroq aylanadi. |
int r [NumPixels]; // bu barcha LEDlar uchun qizil qiymat |
int g [NumPixels]; // bu barcha LEDlar uchun yashil qiymat |
int b [NumPixels]; // bu barcha LEDlar uchun ko'k qiymat |
constint = 31; // bu nashrida qiymatini belgilaydi. Maksimal raqam 31, lekin 0 <x <32 bo'lgan har qanday x soni ishlaydi. |
//////// Chiroqlarning boshlang'ich pozitsiyasini o'rnating //////// |
voidsetLights () { |
int R = 8*farq, G = 0, B = 0; // barcha LEDlarning boshlang'ich pozitsiyasi |
uchun (int i = 0; i <8; i ++, R- = farq, G+= farq) { |
r = R; |
g = G; |
b = 0; |
} |
uchun (int i = 0; i <8; i ++, G- = farq, B+= farq) { |
g [i+8] = G; |
b [i+8] = B; |
r [i+8] = 0; |
} |
uchun (int i = 0; i <8; i ++, B- = farq, R+= farq) { |
r [i+16] = R; |
b [i+16] = B; |
g [i+16] = 0; |
} |
} |
/////// LEDlarning boshlang'ich pozitsiyasini o'rnatishni tugating //////// |
voidsetup () { |
piksel.begin (); // piksel ob'ektini yoqing |
setLights (); // LEDlarning dastlabki holatini o'rnating |
} |
int idx = 0; // LED aylanishining dastlabki holatini o'rnating |
voidloop () { |
/////// har bir LEDning rangini belgilang //////// |
uchun (int i = 0; i <raqamlar; i ++) = "" { |
piksel.setPixelColor (i, piksellar. Color (r [(i+idx)%24], g [(i+idx)%24], b [(i+idx)%24])); |
piksel.show (); |
} |
/////// LEDlarning rangini sozlashni tugating //////// |
kechikish (DELAYVAL); // DELAYVAL millisekundni kuting |
idx ++; // LEDlarning aylanishini bittaga siljiting |
idx%= 24; // 24 qiymatini mod. Bu idx qiymatini 0 dan 23 gacha cheklaydi |
} |
rawLevitating_Lamp.ino -ni GitHub tomonidan ❤ bilan boshqaring
6 -qadam: To'liq
Endi chiroqni yoqish, velkroni konstruktsiyaga yopishtirish va chiroqlarni o'chirish vaqti keldi: bu shou vaqti. O'zingiz xohlagan o'zgarishlarni amalga oshiring va ushbu loyiha yordamida dunyo bilan baham ko'ring!
Omad tilaymiz va o'rganishda davom eting!
Tavsiya:
O'chirish va o'chirish sxemasini qanday qilish kerak: 8 qadam
O'chirish va o'chirish sxemasini qanday qilish kerak: Salom do'stim, bugun men LM555 IC yordamida Touch ON va OFF sxemasini qilmoqchiman, biz bir tomondan simlarga tegsak, LED yonadi va biz boshqa simlarga tegsa. yon tomondan LED o'chadi va aksincha
RaspberryPi: LEDni o'chirish va o'chirish: 4 qadam (rasmlar bilan)
RaspberryPi: LEDni o'chirish va o'chirish: Quyidagi bosqichlar LEDlarning ishlashini ko'rsatish uchun tajribalardir. Ular LEDni qanday tezlikda o'chirish va uni qanday o'chirish va o'chirishni ko'rsatadi. Sizga kerak bo'ladi: RaspberryPi (men eski Pi-dan foydalanganman, mening Pi-3 ishlatilgan, lekin har qanday Pi ishlaydi)
LEDni o'chirish va o'chirish: 3 qadam
LEDni o'chirish va o'chirish: Quyidagi qadamlar LEDlarning qanday ishlashini ko'rsatadigan tajribalardir. Ular LEDni qanday tezlikda kamaytirish va uni qanday o'chirish va o'chirishni tasvirlab berishadi. Sizga kerak bo'ladi: Arduino (men duet ishlatardim) Breadboard 5 mm qizil LED 330 Ω Qarshilik
Mosfet yordamida tungi chiroqni avtomatik o'chirish sxemasini yarating: 6 qadam (rasmlar bilan)
Salom, do'stlar, bu loyihada Mosfet yordamida tungi chiroqni avtomatik o'chirish moslamasini qanday qilish kerak? qutqarish
Ko'rsatmani qanday ko'chirish va o'chirish kerak: 3 qadam
Ko'rsatmani qanday ko'chirish va o'chirish kerak: Siz yuborgan joyingiz noto'g'ri ekanligini va boshqa joyga ko'chirilishi kerakligini aniqladingizmi? Buni ko'chirish va noto'g'ri joylashtirilgan narsalarni o'chirishning bir usuli