Mundarija:

O'zingizning shaxsiy qurilmangizni yarating (arzon!) Ko'p funktsiyali simsiz kamera boshqaruvchisi: 22 qadam (rasmlar bilan)
O'zingizning shaxsiy qurilmangizni yarating (arzon!) Ko'p funktsiyali simsiz kamera boshqaruvchisi: 22 qadam (rasmlar bilan)

Video: O'zingizning shaxsiy qurilmangizni yarating (arzon!) Ko'p funktsiyali simsiz kamera boshqaruvchisi: 22 qadam (rasmlar bilan)

Video: O'zingizning shaxsiy qurilmangizni yarating (arzon!) Ko'p funktsiyali simsiz kamera boshqaruvchisi: 22 qadam (rasmlar bilan)
Video: Siberian Wellness orqali o'zingizning xalqaro daromadli biznesingizni oching! 2024, Iyul
Anonim
O'zingizning shaxsiy qurilmangizni yarating (arzon!) Ko'p funktsiyali simsiz kamera boshqaruvi
O'zingizning shaxsiy qurilmangizni yarating (arzon!) Ko'p funktsiyali simsiz kamera boshqaruvi
O'zingizning shaxsiy qurilmangizni yarating (arzon!) Ko'p funktsiyali simsiz kamera boshqaruvi
O'zingizning shaxsiy qurilmangizni yarating (arzon!) Ko'p funktsiyali simsiz kamera boshqaruvi
O'zingizning shaxsiy qurilmangizni yarating (arzon!) Ko'p funktsiyali simsiz kamera boshqaruvi
O'zingizning shaxsiy qurilmangizni yarating (arzon!) Ko'p funktsiyali simsiz kamera boshqaruvi

Kirish O'zingizning kamera boshqaruvchingizni qurishni hech o'ylab ko'rganmisiz? Sxema to'g'ri, lekin komponentlar ro'yxati noto'g'ri edi - yangilandi. Bu raqamli kunlar tanloviga kirish, shuning uchun agar siz uni foydali deb bilsangiz, iltimos, ijobiy baho bering/ovoz bering/sharhlang! Agar sizga haqiqatan ham yoqsa va qoqilib ketayotgan bo'lsangiz, "menga yoqdi!":) Yangilash: hackaday -da namoyish etilgan! hackaday.com/2009/10/13/a-differ-breed-of-camera-controllers/ Yangilash: lazer tetikining yangi suratlari amalda! Yangilash: Birinchi mukofot = D, ovoz berish va/yoki reyting uchun rahmat! Bu ko'rsatma asosan SLR foydalanuvchilari uchun kameralaridan biroz ko'proq masofani bosib o'tishni xohlaydi, ammo agar biron bir nuqta va IQ interfeysli suratlar bo'lsa, bu sizga qiziq bo'lishi mumkin. Albatta, bu kamera qisqichlari bilan ishlaydi (biroz o'zgartirish bilan), siz mantiqiy chiqishni kamera tetik terminallariga ulashingiz mumkin. Bu to'liq darslik sifatida boshlandi, lekin keyinchalik men duch kelgan ba'zi kutilmagan cheklovlar tufayli, bu har xil ishlarni bajarish bo'yicha ko'proq ko'rsatma bo'lishi mumkin - men sizga tez -tez qanday qilish kerakligini tanlash imkoniyatini qoldiraman. Menimcha, ko'r -ko'rona "buni qilish kerak" deb aytishdan ko'ra, ishni qilishning eng yaxshi usuli. Buni kamera boshqaruvchisi dizaynidagi dars deb o'ylang. Men sxemalar va to'liq kodni taqdim qildim, shuning uchun uni har doim nusxa ko'chirishingiz mumkin. Dizaynni lenta taxtasiga o'tkazish va ko'pchilik odamlar uchun LCD qo'shishning oddiy holati bo'ladi. Men buni qanday qilib taxtadan o'tkazishni o'rgandim, chunki bu jarayon juda o'xshash va siz dizaynni doimiy qilishdan oldin xatolarni tuzatishga imkon beradi! Xususiyatlar: Bir martalik tortishish rejimi Interval (vaqt oralig'i) rejimi Triggered shot (tashqi sensordan tetik) rejimi Sensorli dizaynlar - yorug'lik, tovush (yana ko'plari mumkin!) Umumiy narxi - 25 funtdan past (asboblar bundan mustasno) Sozlamalarni oson o'zgartirish uchun LCD displey Nikon/Canon bilan mos keladi (kodlangan), Olympus/Pentax uchun potentsial qo'llab -quvvatlash (sinovdan o'tkazilmagan) Dasturiy ta'minot yo'q o'zgartirish kerak IQ -ni ishlatadi, shuning uchun ham simsiz va kamerangizga zarar etkazmaydi Men sovuqda o'tirganimdan so'ng, masofadan boshqarish pultimni bir necha soat bosganimdan keyin shunday fikrga keldim. Taxminan 1000 ta zarba uchun men 8 sekundlik interval bilan shug'ullanardim. Men o'yladim, ha, bu faqat IQ LED, shunday emasmi? Nega men uni takrorlay olmayman va o'z masofadan boshqarish pultini kechiktirilgan holda qura olmayman? Keyin bildim (biroz sharmandali, chunki menda katta miya to'lqini bor edi deb o'ylagandim), bu amalga oshirildi va hatto mavzu bo'yicha bir nechta ko'rsatmalari bor. Mening amalga oshirishim ko'p intervalli o'lchagichlar va masofadan boshqarish pultlaridan farqli o'laroq, bu juda ko'p sozlash va modullik imkonini beradi, Nikon/Canon (va keyinroq boshqalar) bilan mos keladi va ma'lum bir tetikda suratga olish qobiliyatini birlashtiradi. Fikr oddiy. Siz juda tez biror narsani suratga olishni xohlaysiz (hozircha sizning pardangizdagi kechikish bilan cheklangan, men uchun 6ms). Buning uchun turli xil usullar mavjud: 1. Sinov va xato, siz rasmni kerakli vaqtda olishga harakat qilasiz. 2. Yaxshilangan sinov va xato, siz xonani qorong'ulashingiz, kamerangizni lampochkaga qo'yishingiz (deklanşör ochiq) va chirog'ni yoqishingiz mumkin. kerakli vaqtda 3. Rasmga tushirish uchun qandaydir audio/yorug'lik sensori bo'lgan maxsus tetik nazoratini sotib oling. 4. O'zingiz yarating! OK, 1 va 2 chalkashlik uchun juda yaxshi va juda yaxshi rasmlarni berishi mumkin. Lekin men sizga ko'rsatmoqchimanki, sizga har doim izchil natijalar beradigan sxemani tuzish mumkin. Eng muhimi, hozirgi tang vaqtda, xarajatlar muqobil modellarga qaraganda pastroq (ba'zi odamlar bunday ishlarni bajaradigan to'plamlar ishlab chiqarishgan, lekin ularning narxi katta, havolalarni ko'ring). Dizaynning ko'p qirraliligi shundan iboratki: agar sensori 0 dan 5V gacha kuchlanish hosil qilsa, siz undan kamerangizni ishga tushirish uchun foydalanishingiz mumkin! Tashqi tomondan, bu zerikarli bayonot, lekin siz uning oqibatlarini tushuna boshlaganingizda, bu juda kuchli bo'ladi. Faqat kuchlanish darajasini kuzatib, sizning tetikingiz yorug'lik (LDR), tovushga asoslangan (mikrofon yoki ultratovush), haroratga asoslangan (termistor) yoki hatto oddiy potentsiometr bo'lishi mumkin. Aslida, deyarli hamma narsa. Siz hatto kontaktni boshqa tekshirgichga ulashingiz mumkin va agar u sizga mantiqiy chiqishni bersa, siz uni ishga tushirishingiz mumkin. Hozirgi vaqtda dizaynning yagona asosiy cheklovi shundaki, u faqat IQ interfeyslari bilan ishlaydi, dasturiy ta'minot va uskunalarni mini-USB orqali chiqarish yoki har qanday interfeys zarur bo'lganda o'zgartirish juda oddiy bo'ladi. Eslatma: Manba kodi: Men 13 -qadamda ba'zi ilovalarni taqdim qildim. Hozircha men boshqaruvchimda ishlaydigan kod, hex faylda, asosiy c fayli va unga bog'liqliklar bilan birga. Agar kompilyatsiya haqida ishonchingiz komil bo'lmasa, siz mening kodimni ishga tushirishingiz mumkin. Men, shuningdek, siz turli bosqichlarda ishlatishingiz mumkin bo'lgan namuna kodlarini ham qo'shganman (ular, masalan, remote_test, intervalometr testi va adc testi kabi nomlangan. Agar men kodni bir qadamda nazarda tutsam, ehtimol bu erda). EDIT: Yangilanish haqida havo sharlari portlashi - menimcha, agar siz osonlik bilan havo sharlarini suratga olishingiz mumkin deganimda, men juda qisqa ko'rgandek bo'ldim. Ma'lum bo'lishicha, o'rtacha havo sharining terisi shunchalik tez yuradiki, u sizning kamerangiz yoqilguncha butunlay yorilib ketadi. Bu ko'pchilik kameralar bilan bog'liq muammo, nazoratchi emas (ADCni 120 kGts tezlikda sezadi). Buning yo'li - agar siz qo'shimcha sim va boshqa kichik zanjirni qo'shsangiz, ishga tushadigan chirog'ni ishlatishdir. Siz aytganingizdek, siz nazariy jihatdan uni ochish va kechikish bilan o'ynash uchun (yoki hatto kechikish kodini mikrosaniyalarni o'z ichiga olgan holda o'zgartirish uchun) boshqa narsadan foydalanishingiz mumkin. Qurolni shunchaki siljitish bir necha mikrosaniyalarni kechiktirishga olib keladi s. Shunga qaramay, kechirim so'rayman, agar men havo sharlarini ushlab olsam, bugun kechqurun o'ynayman, lekin hali ham ovozli tetikni ishlatishda, masalan, fişəngda! Men bu ishlayotganini ko'rsatish uchun quyida tez va iflos vaqtni qo'ydim:) O'qishni, baho berishni va/yoki ovoz berishni unutmang! Salom, JoshDisclaimer Agar biror narsa dahshatli tarzda noto'g'ri ketayotgan bo'lsa yoki siz qandaydir tarzda kamerangizni g'ishtlab qo'ysangiz/mushukingizni qirib tashlasangiz, men hech narsa uchun javobgar emasman. Agar siz ushbu ko'rsatmaga asoslangan loyihani boshlasangiz, siz buni o'zingiz qabul qilasiz va o'z tavakkalingiz ostida davom etasiz. Agar siz ulardan birini qilsangiz yoki sizga yordam berish uchun mening yo'riqnomamdan foydalansangiz - iltimos, menga havola/rasm yuboring, shunda men uni shu erga qo'sha olaman! Javob hozirgacha juda katta edi (hech bo'lmaganda mening standartlarim bo'yicha), shuning uchun odamlar buni qanday talqin qilayotganini ko'rish ajoyib bo'lardi. Men 2 -versiya ustida ishlayapman;)

1 -qadam: Ba'zi dastlabki fikrlar …

Xo'sh, biz bu narsani qanday quramiz? Mikrokontroller Bu loyihaning yuragi va ruhi - AVR ATMega8. Bu aslida Arduino ishlatadigan ATMega168 chipining biroz kesilgan versiyasidir. U C yoki Assambleyada dasturlashtirilishi mumkin va biz o'z foydamiz uchun ishlatadigan turli xil foydali xususiyatlarga ega. "28 pinli, ularning aksariyati kirish/chiqish (i/o)" Bortli analogdan raqamli konvertorga "kam quvvat sarfi "3 ta bort taymerlari" Ichki yoki tashqi soat manbai "Ko'p kodli kutubxonalar va Internetda namunalar Ko'p pimlarga ega bo'lish yaxshi. Biz LCD displey bilan aloqa qila olamiz, 6 tugmachali kirishga ega bo'lamiz va hali ham LED yoritgichlari va ba'zi LED holatlari uchun etarli. Atmel AVR protsessorlari Internetda juda ko'p qo'llab -quvvatlanadi va ko'plab darsliklar mavjud. boshlandi (men bu haqda qisqacha to'xtalib o'taman, lekin yaxshiroq maxsus darsliklar bor) va kodlar to'plami va hal qilinishi mumkin. Malumot uchun men bu loyihani AVR-LibC kutubxonasidan foydalanib C formatida kodlashim kerak edi, men buni PIC bilan osonlik bilan bajarishim mumkin edi, lekin AVR yaxshi qo'llab-quvvatlanadi va men masofadan boshqarish pultlari uchun topgan barcha misollar AVR-ga asoslangan! displeyning ikkita asosiy turi, grafik va alfasayısal. Grafik displeylarning o'lchamlari bor va siz piksellarni xohlagan joyingizga qo'yishingiz mumkin. Salbiy tomoni shundaki, ularni kodlash qiyinroq (kutubxonalar mavjud bo'lsa ham). Alfasayısal raqamli displeylar bir yoki bir nechta qatorli belgilar bo'lib, LCD displeyda asosiy belgilar (masalan, alifbo, ba'zi raqamlar va belgilar) saqlanadi va satrlarni chiqarish osonroq va hokazo. Kamchiliklari shundaki, ular unchalik moslashuvchan emas va grafikani ko'rsatish deyarli mumkin emas, lekin bu bizning maqsadimizga mos keladi. Ular ham arzonroq! Alfasayısal raqamlar qator va ustunlar soniga ko'ra tasniflanadi. 2x16 juda keng tarqalgan bo'lib, ikkita qator 16 belgidan iborat bo'lib, har bir belgi 5x8 matritsa. Siz ham 2x20 s olishingiz mumkin, lekin men bunga ehtiyoj sezmayapman. O'zingizga qulay bo'lgan narsani sotib oling, men qizil yoritilgan LCD displeydan foydalanishni tanladim (men buni astrofotografiya uchun ishlatmoqchiman va qizil yorug'lik tunda ko'rish uchun yaxshiroqdir). Siz orqa yorug'liksiz borishingiz mumkin - bu sizning tanlovingiz. Agar siz yoritilmaydigan yo'lni tanlasangiz, siz kuch va pulni tejaysiz, lekin zulmatda mash'ala kerak bo'lishi mumkin. LCD qidirayotganingizda, uning HD44780 tomonidan boshqarilishini ta'minlashingiz kerak. Bu Hitachi tomonidan ishlab chiqilgan sanoat standart protokoli va biz ma'lumotlarni chiqarish uchun foydalanishimiz mumkin bo'lgan juda yaxshi kutubxonalar mavjud. Men sotib olgan model eBay -dan JHD162A edi. InputInput tugmalar yordamida amalga oshiriladi (oddiy!). Men 6 ta rejimni tanladim, ok/otish va 4 ta yo'nalish. Yiqilish paytida mikrofonni qayta o'rnatish uchun yana bir kichik tugmachani olish kerak. Triggerni kiritishga kelsak, ba'zi asosiy g'oyalar nurga qarshilik yoki elektret mikrofonidir. Bu erda siz byudjetingizga qarab ijodiy yoki baxillik qilishingiz mumkin. Ultratovushli datchiklar biroz qimmatga tushadi va qo'shimcha dasturlarni talab qiladi, lekin siz ular bilan chindan ham toza narsalarni qilishingiz mumkin, ko'pchilik mikrofondan (ehtimol, eng foydali umumiy sensor) xursand bo'ladi va elektrlar juda arzon. Shuni bilingki, uni ham kuchaytirish kerak (lekin buni keyinroq ko'rib chiqaman). Chiqish - Status Bizga kerak bo'lgan yagona haqiqiy chiqish - bu holat (displeydan tashqari), shuning uchun bu erda ikkita LED yaxshi ishlaydi. Chiqish - Rasmga olish rasmlar, biz kamera bilan bog'lanishimiz kerak va buning uchun infraqizil nurlanishni chiqaradigan yorug'lik manbai kerak. Yaxshiyamki, buni amalga oshiradigan ko'plab LEDlar mavjud va siz yuqori quvvatli chiroqni olishga harakat qilishingiz kerak. Men tanlagan qurilmaning maksimal quvvati 100mA (ko'pchilik LEDlar 30mA atrofida), shuningdek to'lqin uzunligi chiqishiga e'tibor berish kerak. Infraqizil nur EM spektrining uzunroq to'lqin uzunligida joylashgan va siz 850-950nm atrofida qiymatni qidirishingiz kerak. Ko'pgina IQ -LEDlar 950 -chi tomonga to'g'ri keladi va u yoqilganda siz qizil chiroqni ko'rishingiz mumkin, bu muammo emas, lekin u isrof qilingan spektr, shuning uchun iloji bo'lsa 850 ga yaqinlashishga harakat qiling. bu? Xo'sh, u portativ bo'ladi, shuning uchun batareyalar! Men 5 A kuchlanishli 2 ta AA batareyasini tanladim. Keyingi bir necha bo'limlarda men buning asosini ko'rib chiqaman. "Qoplama va qurilish" Buni qanday qilish sizga to'liq bog'liq. Men prototiplashdan keyin sxemada lenta taxtasidan foydalanishga qaror qildim, chunki u arzon va moslashuvchan va shaxsiy PCB dizaynini tejaydi. Men sxemalarni taqdim qildim, shuning uchun siz o'zingizning shaxsiy PCB sxemangizni tuzishingiz mumkin - garchi, agar shunday bo'lsa, men uning nusxasini olganimdan minnatdor bo'lardim! Yana ish sizning ixtiyoringizda, u ekranga, tugmalarga mos bo'lishi kerak (iloji bo'lsa, juda intuitiv tartibda) va batareyalar. Elektr platalari ketganda, bu unchalik murakkab emas, ko'p ulanishlar faqat tugmalar/LCD kabi narsalarga bog'liq.

2 -qadam: quvvatni boshqarish

Quvvatni boshqarish
Quvvatni boshqarish

Quvvat menejmenti Bunday loyihada portativlik asosiy jihat bo'lishi kerakligi aniq. Batareyalar - bu mantiqiy tanlov! Endi, ko'chma qurilmalar uchun, siz zaryadlanuvchi yoki oson mavjud bo'lgan batareya manbasini tanlashingiz juda muhim. Ikkita asosiy variant - 9V PP3 yoki AA batareyalar. Ishonchim komilki, ba'zi odamlar 9V batareyani eng yaxshi variant deb bilishadi, chunki 9V 3dan yaxshiroq, to'g'rimi? 9V kuchlanishli batareyalar juda foydali bo'lsa -da, o'z kuchini batareyaning ishlash muddati hisobiga ishlab chiqaradi. MAh (milliamper soat) bilan o'lchanadigan ushbu reyting sizga nazariy jihatdan batareyaning 1mA soat ichida qancha ishlashini aytadi (garchi uni bir chimdik tuz bilan iste'mol qilsangiz ham, ular odatda ideal, past yuk sharoitida bo'ladi). Reyting qanchalik baland bo'lsa, batareya qancha uzoq davom etadi. 9V batareya quvvati 1000 mA / soatgacha. Boshqa tomondan, gidroksidi AA 2900 mA / soat tezlikda deyarli uch baravar ko'p. NiMH qayta zaryadlanuvchi qurilmalari bunga erishishi mumkin, lekin 2500 mA / soat - bu o'rtacha miqdor (zaryadlanuvchi batareyalar 1,2 V da 1,5 emas, balki ishlaydi!). LCD displey uchun 5 V kuchlanishli (10%) va AVR (mikrokontroller) taxminan bir xil (past chastotali soat tezligi uchun 2,7 ga tushishi mumkin). Bundan tashqari, biz juda barqaror voltajga muhtojmiz, agar u o'zgarib tursa, mikrokontroller bilan bog'liq muammolarga olib kelishi mumkin, buning uchun biz voltaj regulyatoridan foydalanamiz, hozir narx va samaradorlik bo'yicha tanlov qilish kerak. Sizda LM7805 (78 seriyali, +5 voltsli chiqish) kabi oddiy 3-pinli voltaj regulyatoridan yoki kichik integratsiyali sxemadan foydalanish imkoniyati bor. Oddiy regulyatordan foydalanish. bir nechta fikrlar. Birinchidan, uchta pinli regulyator deyarli har doim ularning chiqishidan yuqori bo'lgan kirishga muhtoj. Keyin ular kuchlanishni kerakli qiymatga tushiradilar. Salbiy tomoni shundaki, ular dahshatli samaradorlikka ega (50-60% yaxshi). Ularning afzalligi shundaki, ular arzon va 9V batareya bilan ishlaydi, siz Buyuk Britaniyada 20 pens uchun asosiy modelni tanlashingiz mumkin. Shuni ham yodda tutish kerakki, regulyatorlarning chiqish voltaji bor - kirish va chiqish orasidagi minimal bo'shliq. Taxminan 50 mV (boshqa dizayndagi 1-2V bilan taqqoslaganda) tushadigan maxsus LDO (Low DropOut) regulyatorlarini sotib olishingiz mumkin. Boshqacha qilib aytganda, +5V kuchlanishli LDO -larga e'tibor bering. Integral sxemadan foydalanishning ideal usuli - bu kommutator regulyatori. Bu, bizning maqsadimiz uchun, odatda, 8 pinli paketlar bo'lib, ular kuchlanishni oladi va bizga yuqori mahsuldorlik bilan tartibga solingan chiqishni beradi - ba'zi hollarda deyarli 90%. Siz kiritmoqchi bo'lgan narsangizga qarab konvertorlarni ko'tarishingiz yoki pasaytirishingiz mumkin (mos ravishda ko'tarish/tushirish), aks holda siz kerakli chiqimdan yuqori yoki pastroq bo'lgan regulyatorlarni sotib olishingiz mumkin. MAX619+. Bu 5 V kuchlanishli regulyator bo'lib, u ikkita AAni oladi (kirish diapazoni 2V-3.3V) va doimiy 5V kuchlanish beradi. Ishlash uchun unga faqat to'rtta kondansatör kerak va bu joyni tejaydi. Narxi -.003.00 qopqoq bilan. Batareyalaringizdan biroz ko'proq foydalanish uchun, shubhasiz, sarflashga arziydi. Yagona kamchilik shundaki, u qisqa tutashuvdan himoyalanmagan, shuning uchun agar oqim kuchayib ketsa, ogohlantiring! O'chirish qo'shilishi bilan tuzatish juda oddiy, ammo yana bir foydali chip dizayni - LT1307. Shunga qaramay, 5V regulyator, lekin u har xil kirishni olishi mumkin va batareyani kam aniqlash kabi foydali narsalarga ega. Bu indüktorlar, katta kondansatkichlar va rezistorlar bilan qariyb ~ 5 da ancha qimmat turadi. Voltaj relslari Biz ikkita asosiy kuchlanishli relsdan (umumiy erdan tashqari) foydalanmoqchimiz. Birinchisi batareyadan 3V bo'ladi, bu LEDlarni va boshqa nisbatan yuqori quvvatli komponentlarni quvvatlantirish uchun ishlatiladi. Mening MAX619 faqat 60mA gacha (mutlaq maksimal 120mA), shuning uchun har qanday LEDni boshqarish uchun mikrokontrollerni MOSFETga ulash osonroq. MOSFET deyarli hech qanday tok olmaydi va darvoza kirishi 3V atrofida bo'lganda, kontaktlarning zanglashiga olib keladi. Agar mikrokontroler pin ustida mantiqiy 1 uzatsa, kuchlanish 5V bo'ladi va FET yoqiladi, faqat qisqa tutashuv (masalan, sim bo'lagi) vazifasini bajaradi. Quvvat iste'moli Agar har xil ma'lumotlar varaqlariga qarasak, AVR maksimal yuklanishida 15-20mA dan oshmasligini ta'kidlaymiz. LCD displeyning ishlashi uchun atigi 1 mA kerak bo'ladi (hech bo'lmaganda men sinovdan o'tkazganimda, 2 uchun byudjet). Orqa nuri yoqilgan bo'lsa, bu sizning qaroringizga bog'liq. Uni 5V temir yo'lga to'g'ri ulash (men sinab ko'rdim) yaxshi, lekin buni amalga oshirishdan oldin uning bortida qarshilik borligiga ishonch hosil qiling (tenglikni izlarini kuzatib boring). U 30 mA kuchini tortdi - dahshatli! 3.3k rezistor bilan uni hali ham ko'rish mumkin (astro -suratga olish uchun juda mos keladi) va faqat 1mA chizadi. Siz hali ham 1k yoki boshqa usulda yaxshi yorqinlikni olishingiz mumkin. Men 2mAdan pastda chizilgan rasmni yaxshi ko'raman, orqa nuri yoqilgan! Agar xohlasangiz, 10k potensiometr yordamida yorqinlik tugmachasini qo'shish juda muhim emas. IQ LED maksimal 100mA ni olishi mumkin, lekin menda 60mA bilan yaxshi natijalarga erishdim (tajriba!). Siz bu oqimni ikki baravar kamaytirishingiz mumkin, chunki siz 50% ish tsiklida samarali ishlayapsiz (LED modulyatsiya qilinganida). Baribir, bu faqat bir soniya ichida yonadi, shuning uchun biz bundan xavotirlanmasligimiz kerak, boshqa LEDlar bilan o'ynashingiz kerak, siz yaxshi yorqinlikni berish uchun faqat 10 mA oqim etarli ekanligini ko'rishingiz mumkin. kam quvvatli LEDlar uchun (IQni hisobga olmaganda), siz mash'ala yaratmaysiz! Men zanjirimga quvvat indikatorini qo'shmaslikni tanladim, chunki bu juda ko'p ishlatilmaydigan oqim. Yoqilganligini tekshirish uchun yoqish/o'chirish tugmasidan foydalaning! Umuman olganda, siz bir vaqtning o'zida 30mA dan ortiq ishlamasligingiz kerak va nazariy ta'minot 2500 atrofida (o'zgarishga imkon beradigan) mAh, bu sizga 80 soatdan ko'proq vaqt berishi kerak. hamma narsa bilan to'g'ridan -to'g'ri. Ko'pincha protsessor ishlamay qolganda, bu kamida ikki baravar ko'payadi, shuning uchun batareyani tez -tez almashtirishga to'g'ri kelmaydi. Siz 9V batareya va LDO regulyatori bilan arzon va quvnoq bo'lishingiz mumkin, yoki biroz ko'proq to'lashingiz va buning uchun maxsus ICdan foydalanishingiz mumkin. Mening byudjetim hali ham IC bilan 20 darajadan past edi, shuning uchun agar kerak bo'lsa, uni yanada tushirib qo'yishingiz mumkin.

3 -qadam: ATmega8 -ga yaqinroq qarang

ATmega8 ga yaqinroq qarang
ATmega8 ga yaqinroq qarang

PinsImage 1 - ATMega8 uchun aniq diagramma (aynan 168/48/88 bilan bir xil, bortdagi xotira va uzilish variantlarining farqi). mantiqiy 1). Agar erga ulangan bo'lsa, qurilma 2 -pin - D porti, umumiy kirish/chiqish pin 7 - VCC, besleme zo'riqishi (biz uchun+5V) 8 -pin - GroundPin 9, 10 - XTAL, tashqi soat kirishlari (B portining bir qismi)) Pin 11 - 13 port D, umumiy kirish/chiqish pin 14 - 19 port B, umumiy kirish/chiqish pin 20 - AVCC, analog besleme zo'riqishida (VCC bilan bir xil) pin 21 - AREF, analog kuchlanish mos yozuvlari pin 22 - tuproqli pin 23-28 port C, Umumiy kirish/chiqish Foydalanish mumkin bo'lgan kirish -chiqish portlari: D = 8, C = 6, B = 6A jami 20 ta foydalanish mumkin bo'lgan port ajoyib, soddalik uchun siz chiqishlarni portlarga (masalan, D chiqish portiga) yoki bortdagi guruhlar - siz simlarni shu burchakda tartibli ushlab turish uchun LCD Port C dan ishlashini xohlashingiz mumkin. Dasturlash uchun uchta qo'shimcha pin kerak. Bular MISO (18), MOSI (17) va SCK (19). Agar kerak bo'lsa, ular xursandchilik bilan i/o pinlari vazifasini bajaradi, biz kameraga yuboradigan signal aniq vaqtni (mikrosaniyagacha) aniq bo'lishi kerak, shuning uchun biz yaxshi soat manbasini tanlashimiz muhim. Barcha AVR -larda ichki osilator mavjud, u chip soatni olishi mumkin. Buning salbiy tomoni shundaki, ular harorat/bosim/namlik ta'sirida 10% atrofida o'zgarishi mumkin. Bunga qarshi kurashish uchun nima qilishimiz mumkin - tashqi kvarts kristalidan foydalanish. Ular 32768 kHz dan (soatgacha) 20 MGts gacha bo'lgan hamma narsada mavjud. Men 4 MGtsli kristallni ishlatishni tanladim, chunki u yaxshi tezlikni ta'minlaydi, lekin 8 MGts+ga qaraganda ancha konservativ quvvatga ega. Bort quvvatini boshqarish Men o'z kodimdagi uyqu rejimidan foydalanishni juda xohlardim. Haqiqatan ham, men vaqt o'tishi bilan protsessorni bo'sh qoldirishga tayanish uchun birinchi versiyani yozdim. Vaqt cheklanganligi sababli, men soatni tashqaridan ishlatish va taymerlardan foydalanishni to'xtatish bilan bog'liq muammolarga duch keldim. Aslida men uyg'onmasdan boshqaruvchi bilan shug'ullanish uchun kodni qayta yozishim kerak edi - buni qila olardim, lekin vaqt menga qarshi. Shunday qilib, qurilma atigi 20 mA quvvatga ega, shuning uchun siz undan qutulishingiz mumkin. Agar siz haqiqatan ham bunga tayyor bo'lsangiz, unda kodni skripka qilish uchun siz faqat ichki soatni, so'ngra aniqroq kechikish uchun 4 MGts kristalli taymer 2 ni asenkron rejimda ishga tushirishingiz kifoya. ADC AVR asboblar to'plamidagi Shveytsariya armiyasi pichog'ini "Analog to Digital Converter" degan ma'noni anglatadi. Bu qanday ishlaydi, tashqi tomondan nisbatan oddiy. Pimdagi kuchlanish namuna olinadi (ba'zi sensorlar yoki boshqa kirishlar), kuchlanish 0 dan 1024 gacha raqamli qiymatga aylanadi. Kirish voltaji ADC mos yozuvlar kuchlanishiga teng bo'lganda, 1024 qiymati kuzatiladi. Agar biz o'z ma'lumotimizni VCC (+5V) deb belgilasak, har bir bo'linma 5/1024 V yoki 5 mV atrofida bo'ladi. Shunday qilib, pinning 5mV ga oshishi ADC qiymatini 1 ga oshiradi. Biz ADC chiqish qiymatini o'zgarmaydigan qilib olamiz, keyin u bilan skripka qila olamiz, koddagi narsalar bilan solishtiramiz va hokazo. ADC - bu nihoyatda foydali funksiya va sizga AVRni osiloskopga aylantirish kabi ko'plab ajoyib ishlarni bajarishga imkon beradi. Namuna olish chastotasi 125 kHz atrofida va uni soatning asosiy chastotasiga mutanosib ravishda o'rnatish kerak. Registr - bu oddiy AVR xotirasidagi manzillar (joylar) yig'indisi. Registrlar bit o'lchamlari bo'yicha tasniflanadi. 7 bitli registrda 8 ta joy mavjud, chunki biz 0 dan boshlaymiz. Deyarli hamma narsa uchun registrlar bor va biz ularni keyinroq batafsil ko'rib chiqamiz. Ba'zi misollar, pin baland yoki past o'rnatilganligini nazorat qiluvchi va kirish uchun qarshilik rezistorlarini o'rnatadigan PORTx registrlarini o'z ichiga oladi (bu erda x - B, C yoki D) va pin - chiqish yoki kirishni belgilaydigan DDRx registrlari. Ma'lumotlar varag'i - og'irligi taxminan 400 bet bo'lgan adabiyotning behemoti; AVR ma'lumotlar jadvallari sizning protsessoringiz uchun bebaho ma'lumotdir. Ularda har bir registr, har bir pin, taymerlar qanday ishlashi, qanday sigortalar nimalarga o'rnatilishi va boshqa ko'p narsalar bor. Ular bepul va sizga ertami -kechmi kerak bo'ladi, shuning uchun uning nusxasini yuklab oling! Www.atmel.com/dyn/resources/prod_documents/doc2486.pdf

4 -qadam: pinlarni ajratish

Pinlarni ajratish
Pinlarni ajratish

Men allaqachon kerakli kirish va chiqishlarni aytib o'tgan edim, shuning uchun ularga pin ajratish kerak! Endi, PORT D -da 8 ta pin bor, bu bizning chiqish portimiz vazifasini bajaradi. LCD displeyda ishlash uchun 7 ta pin kerak - 4 ta ma'lumotlar pimi va 3 ta boshqaruv pimi. IR LED faqat bitta pinni talab qiladi, shuning uchun bizning 8. PORTB tugma portimiz bo'ladi, u 6 ta kirishga ega, lekin bizga faqat 5 kerak bo'ladi. Bu rejim va yo'nalishli tugmalar bo'ladi. maxsus, bu ADC porti. Triggerni kiritish uchun bizga faqat bitta pin kerak va uni PC0 ga qo'yish mantiqan to'g'ri keladi (bu holda port pinlarining umumiy qisqartmasi Port C, Pin 0). Bizda holat LEDlari uchun bir nechta pin bor (biri ADC qiymati ba'zi holatlardan yuqori bo'lganda yonadi, ikkinchisi ba'zi holatlardan pastda yonadi). Bu erda biz o'q/otish tugmachasini kiritamiz, bu aniq bo'ladi. Bularning barchasidan keyin biz portlarning ko'p qismini ishlatib qo'yganmiz, lekin agar siz loyihani kengaytirishni xohlasangiz, bizda hali ham oz qolgan. - Ehtimol, bir nechta tetiklar?

5 -qadam: kamera bilan aloqa

Kamera bilan aloqa
Kamera bilan aloqa
Kamera bilan aloqa
Kamera bilan aloqa

Raqamli kunlar foto tanlovining birinchi sovrini

Tavsiya: