Mundarija:
- 1 -qadam: qismlar
- 2 -qadam: taxtalarni tayyorlang
- 3 -qadam: Rezistorlar qo'shing
- 4 -qadam: Yuqori qismni torting
- 5 -qadam: Pastki qismini to'ldiring
- 6 -qadam: pastki qismini sim bilan bog'lang
- 7 -qadam: Flex sensorlar va akselerometr
- 8 -qadam: IC va birinchi dasturni qo'shish
- 9 -qadam: O'z qo'lingizni qo'lqopga mahkamlang
- 10 -qadam: Haqiqiy kod
Video: Velosiped qo'l signal nuri: 10 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:29
Ushbu loyihaning maqsadi - velosiped qo'lqopiga mos keladigan yorug'lik yaratish va belgilangan burilish yo'nalishini ko'rsatish, tunda ko'rinishni kuchaytirish. U yengil, ishlatish uchun qulay va signal berish uchun mavjud harakatlar bilan birlashtirilgan bo'lishi kerak (signal usulining minimal o'zgarishi (tugmani bosishning hojati yo'q, u signal berganingizda ketadi)). Bu ajoyib bayram sovg'asi bo'ladi.
Eslatma: Buning uchun lehimlash bo'yicha avvalgi bilim kerak va AVR -ni qanday dasturlash kerakligi - bu katta afzallik. Shuni inobatga olgan holda, zavqlaning, sabrli bo'ling va o'z mahsulotingizning rasmlarini quyida joylashtiring! Mana video: Mana mening rasmim:
1 -qadam: qismlar
x1 ATmega 32L 8PU (www.digikey.com) x1 40 pinli DIP soket (www.digikey.com) x1 8x8 LED massivi (www.sparkfun.com) x1 74138 De-multipleksor (www.digikey.com) x2 Flex sensorlar (www.sparkfun.com) x (ko'p) rezistorlar 180 ohm va 10k ohm x2 kompyuter platasi (www.sparkfun.com) x6 to'xtashlar (www.sparkfun.com) va vintlardek (Mahalliy apparat do'koni) www.sparkfun.com) x2 sarlavhalari - erkak (www.sparkfun.com), ayol (www.sparkfun.com) va to'g'ri burchak (www.sparkfun.com) x1 LM7805 (www.digikey.com) x2 8 pinli rozetkalar (Radio Shackda meniki bor) x1 9v batareyali x1 oyoqli tayoqchali velcrox1 To'liq barmoqli velosiped qo'lqopi1 rulonli polyester threadx1 Dasturchi (menda bor) x1 Tel-strip va clipx1 Multimetr Ba'zi qismlar:
2 -qadam: taxtalarni tayyorlang
Birinchidan, qarama -qarshiliklarni qo'shing. To'g'ri balandlikka erishish uchun siz ikkalasini bir -biriga bog'lab qo'yishingiz kerak. Qarama -qarshiliklar SQUARE prokladkalari bilan yon tomondan tushayotganiga ishonch hosil qiling. Shunday qilib, siz tagliklarni pastki qismidagi lehim bilan ko'prik qilishingiz mumkin va erga ulanish uchun tepadagi umumiy yostiq bilan ko'prik qilishingiz mumkin. Keyin LED massivini qo'shing va uni lehimlang. YS qarama -qarshi tomonga qaraganidek, taxtaning chetiga qadar ikkita stanof bo'lishi kerak. Pastki chapdagi pin 1 -pin. (Rasmda ham ko'rsatilgan.) Keyin 8 pinli ikkita rozetkani bir -birining ustiga qo'ying, shunda 16 pinli rozetka hosil bo'ladi. Chapda bitta bo'sh joy borligiga ishonch hosil qiling, so'ngra uni lehimlang. Keyin erkak va ayol sarlavhalarini 10 va 11 pinli bo'laklarga bo'ling. Sizga ikki baravar ko'p ayol sarlavhalar kerak bo'ladi. Rasmda ko'rinib turganidek, ularni lehimlang. Erkaklar sarlavhalariga kelsak, siz pinni plastikning har ikki tomoniga teng qilib siljitishingiz kerak, nima demoqchi ekanimni tushunish uchun rasmga qarang, shuning uchun #6 ga qarang. Men qisqichlardan foydalandim va u juda yaxshi ishladi. Agar siz erkak sarlavhalarini olib, ularni 2 ta ayol sarlavhasi orasiga qo'yib qo'ysangiz, ular yuqori va pastki taxtani bir -biriga ulash uchun to'g'ri o'lchamda ekanligini ko'rasiz.
3 -qadam: Rezistorlar qo'shing
Bu rezistorlar qatorni himoya qilish uchun LED massivi va 74138 (Ground) o'rtasida o'tadi. Rezistorning bir uchini yuqoridan katlayın, shunda ikkita sim parallel bo'ladi. Ularni 7, 9, 10, 11, 12, 13, 14 va 15 -pinlarga va lehimga mahkamlang. Agar siz rezistorning yo'nalishini ikkinchi va uchinchi rasmlarda ko'rib turganingizdek almashtirsangiz, eng yaxshi ishlashini topdim.
4 -qadam: Yuqori qismni torting
Bu loyihaning eng uzoq bosqichi, shuning uchun umid qilamanki, sizga lehim yoqadi! Quyidagi sxemaga amal qiling va multimetr bilan uzluksizligini tekshiring. Agar men bizga qanday kelganimni bilishni istasangiz, qator va 74138 ma'lumotlar jadvaliga qarang.
5 -qadam: Pastki qismini to'ldiring
Endi asosiy komponentlarimizni pastki taxtaga joylashtirish vaqti keldi. Birinchidan, biz 40 pinli DIP soketini qilamiz, u chap tomonga iloji boricha yaqinroq, chap tomonda bir qator bo'sh joy qoldiradi. (1 -rasmga qarang.) Lehimlang, so'ngra sarlavhalarni joylashtiring. Buning eng oson yo'li - o'zgartirilgan erkak sarlavhalar yordamida tepada joylashganlarni pastki qismga ulash. Agar siz hamma narsani to'g'ri bajargan bo'lsangiz, rozetkaning pastki o'ng burchagining yonidagi chap sarlavhadagi uchta yuqori uchta pin bilan tugashingiz kerak. Bu yaxshi. Biz faqat o'ngdagi eng pastki pimni ishlatamiz va siz ko'rib turganingizdek, biz boshqa tomondan aniq zarbaga egamiz. Endi rasmda ko'rsatilgandek voltaj regulyatorini qo'shing. Men o'zimni vint va yong'oq bilan metall isitgichning teshigidan mahkamladim. Issiqlik moslamasi - chipni erga ulashning yana bir usuli va uni taxtaga mahkamlash umumiy aloqa bilan mustahkam aloqani ta'minlaydi. Bu pastki va yuqoriga ulanadi, chunki ikkalasi ham metall uzilishlar bilan bog'langan. Ammo, agar siz erga ulash uchun umumiy ulanishni ishlatmasangiz, issiqlik qabul qilgichni taxtaga mahkamlamang, chunki issiqlik qabul qilgich erga xizmat qiladi va siz nimadir qisqa tutashuvga duch kelasiz. Batareya qisqichidagi keyingi sim. Qizil rang chap tarafdagi pimga o'tadi (issiqlik cho'ktirgichi yuqoriga va pinlar pastga), o'rtada qora va o'ng pin +5v ishlab chiqaradi. Endi siz quvvatni yuqoriga ulashingiz mumkin (2 -rasmga qarang). Endi dasturchi ulagichi uchun. Menda dasturchi uchun men ishlab chiqargan adapter bor, lekin siz dizaynga 6 pinli (3x2) sarlavhani kiritishni xohlaysiz. Ammo, agar sizda men kabi adapter bo'lsa, mana men shunday qildim. Men to'g'ri burchakli va ayol boshini oldim va ularni bir -biriga lehimladim (3 -rasm). Keyin men uni 6 -pinga ulangan birinchi pim bilan taxtaga biriktirdim. Endi siz resetni yuqori tortish uchun chipni rezistorga ulashingiz kerak. Men 9 -pindan 10 -pingacha 10k rezistorni ishlatdim va keyin 10 -pinni +5v ga uladim. Keyingi pin (11) umumiy ulanishga (Ground) o'tadi. Nihoyat, bu bosqichni yakunlash uchun 4 -rasmga qarang (bu o'z -o'zidan tushunarli).
6 -qadam: pastki qismini sim bilan bog'lang
Esda tutingki, LED massivining ishlashi uchun 30 dan ortiq simni ishlatish kerak. Endi siz buni yana qilishingiz kerak! Pastda!. Bu biroz tezroq, lekin unchalik emas. Yana bir bor, sxemaga qarang va multimetr bilan barcha ulanishlaringizni tekshiring. Xavotir olmang, bu loyihaning oxirgi katta lehim qismi va siz deyarli tayyor.
7 -qadam: Flex sensorlar va akselerometr
Biz birinchi navbatda egiluvchan datchiklar bilan shug'ullanamiz, lekin siz uy jihozlari darajasida. O'ylaymanki, quyidagi rasmlar nima qilishni tushuntiradi. Bir pinni +5v ga, ikkinchisini AVRning o'ng tomonidagi yuqoridan uchinchi yoki to'rtinchi pinga ulang (bu loyihaning markazida joylashgan mikrokontroler). Men buni birinchi marta qo'shganimda, men buni qilishim kerak, deb o'yladim, lekin ma'lum bo'lishicha, AVR egiluvchan sensorlarni o'qishi uchun siz AVRga ketadigan sensordagi pimdan rezistor qo'yishingiz kerak. 10 va 11). Men 10k dan foydalandim. Bu AVR ga bo'ladigan kuchlanishni taqsimlaydi, bu esa sensorning sezgirligini deyarli ikki baravar oshiradi. Endi akselerometr uchun. Chunki akselerometr ikki taxta orasidagi bo'shliqdan balandroq va biz uni bir kun almashtirishni xohlaganimiz uchun men uni taxtadan chiqarib olish va ulash uchun sarlavhalardan foydalanishga qaror qildim. To'siq taxtasidagi 6 ta pinni ulash uchun to'g'ri burchakli sarlavhadan foydalaning. Endi boshqa o'ng burchakli sarlavhani oling va ayol boshini qisqa qisqichlarga lehimlang, so'ngra uni taxtaning chap pastki qismiga lehimlang. U mos kelishiga ishonch hosil qilish uchun akselerometrni ulang, ajratib oling va keyin mos keladigan pinlarni Vcc (+5v) va Gnd ga ulang. Keyin X chiqadigan pinni 40 -pinli va Y -ni 39 -pinli ulang. Endi siz IC -ni (integral mikrosxemalar) qo'shib, uni yoqishingiz kerak.
2009 yil 26 -dekabr: Men ko'rsatkich barmog'ining egiluvchan sensori qanday o'rnatilishi sensorni pim bilan bog'laydigan materialning buzilishiga olib kelganini aniqladim. O'shandan beri men sensorni sotib oldim va bu sohaning egilishining asosiy qismi bo'lishining oldini olish uchun sensorga ingichka plastmassani issiq qilib yopishtirdim. Quyidagi fotosuratda joyni belgilab qo'ydim.
8 -qadam: IC va birinchi dasturni qo'shish
Bu, ehtimol, butun jarayonning eng oson bosqichidir. Yana rasm yordam beradi. 3 -rasmda tasvirlanganidek, sizda chiplar to'g'ri o'rnatilganligiga ishonch hosil qiling. Men avval kuchni hech narsa ulanmagan holda ulashim va voltaj regulyatoridagi issiqlik qabul qilgichga tegishim kerak edi. Agar u issiq bo'lsa, nimadir etishmayapti va siz orqaga qaytib, ulanishni tekshirishingiz kerak. Shu tarzda davom eting, bir vaqtning o'zida bitta chip qo'shib, issiqlikni his eting va hamma narsa joyida bo'lgach, pastki taxtadagi yong'oqlarni mahkamlang, shunda ikkita taxta bir -biriga mahkam bog'lanadi. Keyin siz AVR dasturini o'rnatasiz. Agar siz ilgari hech qachon bunday qilmagan bo'lsangiz, google -da tezkor qidiruv juda ko'p natijalarni beradi. Agar men sizning o'rningizda bo'lsam, men AVR -ni taxtaga qo'yardim va siz o'zingizning mashaqqatli ishingizga urinishdan oldin u erda dastur o'rnatardim. Men moslashuvchan sensorlardan olingan ma'lumotlarni LED qatoriga chiqarish uchun oddiy dastur yozdim. Bu sizning elektron tizimingizda nima bor va nima ishlamayotgani haqida asosiy tasavvurni berishi kerak. Mana bu kodning amaldagi videosi …… va mana kod: #define F_CPU 800000UL #include #include #include void ADCINIT () { ADMUX = 0b01100000; ADCSRA = 0b10000000;} int main () {int a; a = 0; int b; b = 0; DDRD = 0xFF; DDRB = 0xFF; DDRA = 0b11100000; ADCINIT (); while (1) {ADMUX = 0b01100011; ADCSRA | = 0b01000000; while (bit_is_clear (ADCSRA, ADIF)); PORTA = 0b00000000; PORTD = ADCH; _delay_ms (1); PORTD = 0x00; ADMUX = 0b01100010; ADCSRA | = 0b01000000; while (bit_is_clear (ADCSRA, ADIF)); PORTA = 0b11100000; PORTB = ADCH; _delay_ms (1); PORTB = 0x00; }}
9 -qadam: O'z qo'lingizni qo'lqopga mahkamlang
O'ylaymanki, sizning davrangizni qo'lingizga ulashning ko'p usullari bor va men buni o'quvchiga qoldiraman deb o'ylagandim, lekin bu yopilmaguncha ko'rsatma to'liq bo'lmaydi deb qaror qildim. Men mahalliy velosiped do'koniga bordim va men topa oladigan eng arzon to'liq barmoqli qo'lqopni oldim. To'liq barmoq kerak, chunki aks holda siz datchiklarni yaxshi bog'lay olmaysiz. Keyin mato do'koniga bordim va poliester ip va yopishtirilgan velkro oldim. Men qo'lqopni kiydim va sxemani qo'limga qo'ydim. Joylashuvning bir qismi - bu qulaylik, lekin boshqa qismi - moslashuvchan sensorlar. Ular ikki barmoqning o'rtasidan pastga tushishi kerak. Men asosiy taxtani ushlab turish uchun uchta tayanch atrofida ilmoqlar tikdim (2 -rasmga qarang), so'ngra har bir egiluvchi sensor barmog'ining 3/4 qismigacha bo'shashgan halqalarni qildim (№3 va 4). Qo'lqopingizni yopiq holda tikmasligingizga ishonch hosil qiling. Keyin batareykani ushlab turish uchun bosh barmog'imning chetiga bir parcha velkro yopishtirdim. Tekshiruvdan so'ng shuni payqadimki, uni tikish haqiqatan ham foyda keltiradi, chunki tayoq uzoq davom etmaydi. Keyin 9v atrofida velkro halqasini qo'ydim (5 -rasm). Bu sozlash juda yaxshi ishlayotganga o'xshaydi. Birinchi va oxirgi slaydlardagi rasmlarda ko'rib turganingizdek, men hozirda egiluvchan sensorlar uchun qisma qo'shdim, lekin agar vaqtingiz bo'lmasa, pastadir yaxshi bo'lishi kerak. Loyihangizni tugatganingizdan so'ng, tayyor mahsulotingizning rasmlarini joylashtiring. pastda Men sxemani biriktirish uchun nimani o'ylab topganingizni ko'rishni istardim!
10 -qadam: Haqiqiy kod
Hozirgacha men bilan bo'lganingiz uchun tashakkur. Iltimos, mening kodim mukammal emasligini unutmang. Men signalning to'g'ri ishlashini o'rganish uchun ozgina o'rganish kerakligini aniqladim. Men o'z tizimimni takomillashtirishga harakat qilaman va bu sahifani yozganimdan so'ng uni yangi kod bilan yangilab turaman. 2009 yil 26 -dekabr: YANGI KOD! Eski kod qaerda bo'lsa, o'sha erda yozilgan. Yoqubga soddalashtirish uchun katta rahmat. Bu, albatta, yaxshi ishlaydi. Mana. O'qiganingiz uchun tashakkur va ovoz berishni unutmang! #include #include #include // bitlarni registrlarga o'rnatadi yoki tozalaydi #setBit (sfr, bit) ni belgilang (sfr | = (1 << bit)) #define clearBit (sfr, bit) (sfr & = ~ (1 <<) bit)) #define flipBit (sfr, bit) (sfr ^= (1 << bit)) #define FALSE 0 #define TRUE 1 #define matrixX (x) (PORTA = (x - 1) << 5) #define matrixGY (y) (PORTD = y) #matrixRY (y) (PORTB = y) bekor kechikish (imzosiz int kechikish) {unsigned int x = 0; while (x <kechikish) {x ++; }} bekor qilingan initMatrix () {DDRD = 0xFF; // Yashil boshqaruv DDRB = 0xFF; // Qizil boshqaruv DDRA = 0xE0; // Yerdan boshqarish} bo'sh matrixRowDraw (char greenmask, char redmask, char ustun) {matrixX (ustun); int i = 0; uchun (i = 0; i <8; i ++) {matrixGY (greenmask & (1 << i)); matrixRY (qizil niqob & (1 << i)); _delay_us (150); } matrixGY (0x00); matrixRY (0x00); } bo'sh matrixLeft () {matrixRowDraw (0x10, 0, 1); matrixRowDraw (0x20, 0, 2); matrixRowDraw (0x40, 0, 3); matrixRowDraw (0xFF, 0, 4); matrixRowDraw (0xFF, 0, 5); matrixRowDraw (0x40, 0, 6); matrixRowDraw (0x20, 0, 7); matrixRowDraw (0x10, 0, 8); } bo'sh matrixRight () {matrixRowDraw (0x18, 0, 1); matrixRowDraw (0x18, 0, 2); matrixRowDraw (0x18, 0, 3); matrixRowDraw (0x18, 0, 4); matrixRowDraw (0x99, 0, 5); matrixRowDraw (0x5A, 0, 6); matrixRowDraw (0x3C, 0, 7); matrixRowDraw (0x18, 0, 8); } bekor qilingan adcInit () {ADMUX = 0x60; ADCSRA = 0x80; } char adcGet (char chan) {ADMUX = 0x60 | chan; ADCSRA | = 0x40; while (bit_is_clear (ADCSRA, ADIF)); ADCHni qaytarish; } char adcAvg (char chan, char avgnum) // Faqat 256 ta namunaga qadar o'rtacha {int i = 0; imzosiz int total = 0; for (i = 0; i <avgnum; i ++) {total+= adcGet (chan); } qaytish total/avgnum; } int main () {initMatrix (); adcInit (); while (1) {while (adcAvg (3, 50)> 0x45 & adcAvg (2, 50)> 0x70) // Moslashuvchan sensorlarning sezgirligini aniqlash uchun bu yerdagi olti burchakli qiymatlar foydalanuvchi sozlamalariga qarab o'zgartirilishi kerak. {if (adcAvg (1, 50)> 0x4F) {matrixRight (); } if (adcAvg (1, 100) <0x4F) {matrixLeft (50); }}} qaytarish 0; } Yordam bergan palataliklarga, ota -onam va do'stlarimga alohida rahmat.
Uyda o'tkazilgan bayramlar tanlovining finalchisi
Tavsiya:
Maxsus yorug'lik paneli tenglikni yordamida juda yorqin velosiped nuri: 8 qadam (rasmlar bilan)
Maxsus yorug'lik panelli tenglikni ishlatadigan juda yorqin velosiped nuri: Agar sizda velosiped bo'lsa, shinalaringizda va tanangizda qanday yoqimsiz teshiklar bo'lishi mumkinligini bilasiz. Men shinamni puflab yubordim, shuning uchun men o'zimning old panelimni velosiped nuri sifatida ishlatishga qaror qildim. E bo'lishga qaratilgan biri
Qiz uchun eng yaxshi velosiped orqa nuri: 12 qadam (rasmlar bilan)
Qizlar uchun eng yaxshi velosiped orqa nuri: Bu yurak shaklidagi batareyadan ishlaydigan orqa yorug'lik haqida. Xavfsizlik nuqtai nazaridan, bola velosipedi uchun yaxshi orqa yorug'lik muhim ahamiyatga ega. Bolalar haqiqatan ham ishonchli bo'lishi kerak, odatda, bolalar velosiped haydashda orqa chiroqni yoqishni unutishadi. Shunday qilib, yo'q
Stol nuri bezaklari va eshik nuri belgisi: 8 qadam (rasmlar bilan)
Stol nuri bezaklari va eshik nuri belgisi: Bu darslik sizga stol usti bezaklarini qanday dasturlash va yasashni ko'rsatib beradi. Bu chiroqlar bir soat ichida rangini o'zgartiradi. Shuningdek, siz yonib turgan eshik belgisini dasturlashni va qurishni o'rganasiz. Siz eshikdan foydalanishingiz mumkin
Intim video nuri/ portativ fotografiya nuri: 7 qadam (rasmlar bilan)
Samimiy video nuri/ portativ fotografiya nuri: Men nima o'ylayotganingizni bilaman. By " samimiy " Men qiyin yorug'lik sharoitida yaqin yoritishni nazarda tutgan edim-bu " yaqin vaziyatlar " uchun emas. (Ammo, buning uchun ham foydalanish mumkin …) Nyu-Yorkdagi videograf sifatida-yoki
700 Lumenli LED velosiped nuri: 8 qadam (rasmlar bilan)
700 Lumenli LED velosiped nuri: 70 vattli halogen lampochkaning ekvivalent yorug'lik chiqishi, lekin faqat 12 vatt quvvat sarflaydi. Beam tortishishida, bu LED velosiped nuri bilan yoritilgan, 100 fut narida joylashgan bino ko'rsatilgan. Tafsilotlar va ehtiyot qismlar ro'yxati 8 -qadam oxirida berilgan