Mundarija:

Interaktiv, ochiq manbali kayfiyat nuri: 9 qadam (rasmlar bilan)
Interaktiv, ochiq manbali kayfiyat nuri: 9 qadam (rasmlar bilan)

Video: Interaktiv, ochiq manbali kayfiyat nuri: 9 qadam (rasmlar bilan)

Video: Interaktiv, ochiq manbali kayfiyat nuri: 9 qadam (rasmlar bilan)
Video: 美国软件不授权制裁中国高校陷困境,专利世界第二不值钱明星越南抢订单 MATLAB does not authorize universities, patent second worthless. 2024, Iyul
Anonim
Interaktiv, ochiq manbali kayfiyat nuri
Interaktiv, ochiq manbali kayfiyat nuri

Bu ko'rsatma interaktiv, ko'p funktsiyali kayfiyatni qanday yoritishni o'rganadi. Ushbu loyihaning asosiy qismi BlinkM I2C RGB LED -dir. Bir kuni veb -sahifalarni ko'rib chiqayotganimda, BlinkM e'tiborimni tortdi va men buni o'tib ketishga juda zo'r deb o'yladim. Shunday qilib, bir necha oy o'tgach, men uning yordamida qandaydir kayfiyatni yoritishga qaror qildim. Va bu erda!

1 -qadam: Sizga nima kerak

Agar siz to'g'ri materiallardan foydalansangiz, bu loyiha juda arzon bo'lishi mumkin. Men uni arzonroq qilish uchun ishlatilishi mumkin bo'lgan boshqa qismlarni qayd etaman. Men biroz qimmatroq bo'lgan komponentlardan foydalanardim, chunki bu qurilish jarayonini biroz osonlashtiradi.

Nur manbai:

BlinkM RGB I2C tomonidan boshqariladigan LED

Nazoratchi:

Arduino mikrokontroller - Men "Arduino Nano" dan foydalandim, chunki menga hamma narsa joylashadigan "sensorli chiroq" ichidagi bo'sh joy tufayli juda kichik narsa kerak edi.

Uy -joy:

Men bu kayfiyat nuri uchun turli xil qo'shimchalarni ko'rib chiqdim va nihoyat, biz hammaga tanish bo'lgan narsaga to'xtadim: oq, oq, "sensorli gumbazli chiroqlar". Men atigi 4 dollar evaziga ikkita omborni topdim. Agar siz buni to'g'ri qilsangiz, bu chiroqlardagi bo'sh joy miqdori barcha komponentlarga mos keladi.

Quvvat/ulagichlar:

Avvaliga, batareya quvvatini o'chirish yaxshi bo'lardi deb o'yladim (chunki korpusda batareya bo'linmasi mavjud), lekin agar siz uni uzoq vaqt ishlatmoqchi bo'lsangiz, bu unchalik amaliy emas. Buning o'rniga, men yonimda 12V 150Ma bo'lgan transformatorli, radiochackdan 5,5 mm doimiy tok manbaidan foydalanardim. Arduino bortidagi regulyator 12 voltni tushiradi va 150Ma hamma narsani quvvatlantirish uchun juda ko'p oqim edi. Tel uchun men faqat bor narsamni ishlatardim. Qattiq yadroli simni ishlatganingizga ishonch hosil qiling.

Komponentlar:

Komponentlar kayfiyat nuri uchun uchta sensorni yaratish uchun ishlatiladi: tovush sensori, "teginish" va yorug'lik sensori. Ovoz sensori uchun sizga quyidagilar kerak bo'ladi:- LM741 Op-Amp- Elektret mikrofon (3-simli)- 2.2k rezistor- 100k rezistor- 200k rezistor- 0.47uf elektrolitik kondansatkich- 0.047uf keramik kondansatkich- 2x 10k rezistor- Diod uchun "tegish" sensori, sizga faqat kerak bo'ladi:- Piezo elementi (buni ma'lum elektron o'yinchoqlar, telefonlar va signal beruvchi boshqa elektron qurilmalardan qutqarish mumkin, yoki uni sichqoncha, radioshack va boshqalardan olish mumkin.)- 1M rezistor … Va yorug'lik sensori uchun sizga quyidagilar kerak bo'ladi:- CdS uyasi (LDR), tarjixon juda katta o'lchamli (ko'proq piksellar sonini).- 10K rezistor- 3-pinli sarlavha va burama ulagich simlari (ixtiyoriy)

Boshqa

Men non taxtasidan foydalandim, chunki men chindan ham ko'p lehim qilmoqchi emas edim. Bundan tashqari, men barcha ulanishlarni xavfsizroq qilish uchun juda ko'p siqilgan ulagich simlaridan foydalanardim, lekin ular ixtiyoriy. Shu bilan bir qatorda, siz ATmega168 mikrokompaniyasini qo'llab-quvvatlash uchun uy qurilishi ishlab chiqarish kartasidan foydalanishingiz mumkin va DIP uslubidagi ATmega168 dan foydalanishingiz mumkin (katta simli uzun). Bu qanchalik mos kelishini bilmayman, lekin sinab ko'rishga arziydi. Agar sizda non taxtasi uchun pul bo'lmasa, siz oddiy ATmega168 -ni PCB -ga lehimlab, regulyatorni, dasturiy ulanishlarni va boshqalarni qo'shishingiz mumkin.

2 -qadam: "sensorli yorug'lik" ni tayyorlang

"Sensorli yorug'lik" ni tayyorlang
"Sensorli yorug'lik" ni tayyorlang
"Sensorli yorug'lik" ni tayyorlang
"Sensorli yorug'lik" ni tayyorlang
"Sensorli yorug'lik" ni tayyorlang
"Sensorli yorug'lik" ni tayyorlang
"Sensorli yorug'lik" ni tayyorlang
"Sensorli yorug'lik" ni tayyorlang

Birinchidan, biz uyning omboridagi arzon "yorug'lik" ni kayfiyatni engil qilib qo'yishimiz kerak. Birinchidan, chiroqni teskari aylantiring va batareyaning qopqog'ini va vintlarini echib oling. Batareya bo'linmasida siz lampochka moslamasini ko'rasiz. Uni chiqarib oling, uni va lampochkani tashlang. Keyin, korpusni oching. Endi biz kuch bilan shug'ullanishimiz kerak. Batareya bo'linmasining markazidagi metall bo'lakni va uni batareyaning kontaktlaridan biriga ulaydigan simni olib tashlang. Lehim simlari batareyaning kontaktlariga ko'rsatilganidek. Agar sizda boshqa rangli simlar bo'lmasa, ularni belgilashingiz mumkin. Bundan tashqari, biz bu kayfiyatni devor rozetkasi transformatori orqali boshqaramiz. Quvvat manbai uyasi diametri bilan bir xil o'lchamdagi matkap yordamida teshik oching. Keyin uni korpus bilan bir tekis bo'lguncha vidalang. Bu erda biz qilishimiz kerak bo'lgan oxirgi o'zgartirish - bu piezo tegish sensorini qo'shish. Yaxshiroq sezuvchanlik uchun uni plastmassa chetiga o'rnatish yaxshidir. Men buni keyinroq ko'rsatma bergandim, bu boshqa yo'riqnomada, lekin buning sababi shundaki, men sinov paytida korpusni ochish va yopish kerak edi, shuning uchun simlar uzila boshladi. Uni plastmassaga issiq qilib yopishtiring, lekin u movabke gumbazidagi mexanik harakatga to'sqinlik qilmasligiga ishonch hosil qiling! (ya'ni, uni ortiqcha yopishishiga yo'l qo'ymang).

3 -qadam: Elektr zanjiri himoyasini qo'shing

Quvvat davri himoyasini qo'shing
Quvvat davri himoyasini qo'shing

Bu qism oddiy transformator bo'lib, u devor transformatorini/batareyalarini qizib ketishdan himoya qilish uchun diodlardan foydalanadi, agar sizda batareyalar o'rnatilgan bo'lsa, siz shahar quvvat manbaidan foydalanasiz. Har qanday blokirovka qiluvchi diodlardan foydalanishingiz mumkin, agar ular uchun maksimal kuchlanish darajasi devor transformatorining ko'rsatkichidan yuqori bo'lsa. Non panelidagi tartibga solinmagan elektr tasmasida "VIN" deb yozilgan qism (bu arduino -dagi VIN -ga to'g'ri keladi). "DCPower" deb nomlangan qism - bu shahar quvvat ulagichi. Ba'zi sabablarga ko'ra, men ushbu sxemani tuzgan dastur, albatta, etiketkalarni tanlashda juda qiyin bo'lgan, shuning uchun bu menga nom berishga imkon berdi. QAYD: Agar siz bunday sxemani qilmasangiz, siz batareyalarni batareyalar bo'linmasida ushlab tura olmaysiz, agar siz devor transformatoriga kayfiyat nuri ulangan bo'lsangiz, aks holda u shikastlanadi.

4 -qadam: Breadboard, Arduino va BlinkM -ni qo'shing

Breadboard, Arduino va BlinkM -ni qo'shing
Breadboard, Arduino va BlinkM -ni qo'shing

Non taxtasini qo'shishdan oldin, biz batareyaning kontaktlarini metall taxtaning tagidan izolyatsiya qilishimiz kerak (ya'ni, agar sizda plastinka sizning plastinkangizga yopishgan bo'lsa. Agar yo'q bo'lsa, bu bosqichni o'tkazib yuboring). Izolyatsiya qilinganligiga ishonch hosil qilish uchun barcha metall kontaktlarning ustiga bir nechta skotch yopishtiring. Biz ochiq simni xohlamaymiz. Endi batareya bo'linmasi ustidagi non taxtasini yopishtiring (men issiq elim ishlatardim). Yaxshiyamki, biz uchun bu juda mos keladi. Endi 2-qadamdagi musbat (+) va manfiy (-) simlarni non panelining musbat va manfiy tasmalaridan biriga ulang. Endi biz arduino va blinkmni bir -biriga ulashimiz mumkin. Bu erda pinli ulanishlar:

  • A5 - soat (BlinkM -da "c" belgisi)
  • A4 - Ma'lumotlar ("BlinkM" da "d" deb belgilangan)

Va siz shunday qilgan bo'lsangiz, tartibga solinmagan VCC (+) ni arduino -dagi 'VIN' piniga, va tartibga solingan VCC -ni BlinkM -dagi (+) piniga ulang. Keyin arduino -dagi GND -ni va BlinkM -ni quvvat tasmasidagi GND -ga ulang va GND -ning ikkala tasmasini bir -biriga ulang. E'tibor bering, bu aloqalarni aralashtirmang, aks holda siz BlinkM -ni qovurasiz.

5 -qadam: Sensorlar - tovush, teginish va yorug'lik

Sensorlar - tovush, yorug'lik va yorug'lik
Sensorlar - tovush, yorug'lik va yorug'lik
Sensorlar - tovush, yorug'lik va yorug'lik
Sensorlar - tovush, yorug'lik va yorug'lik
Sensorlar - tovush, yorug'lik va yorug'lik
Sensorlar - tovush, yorug'lik va yorug'lik

Keyingi qatorda sensorlar turadi. Yorug'lik sensori qurilishi eng sodda. O'ngga ketadigan sim arduino bilan bog'lanadi. Sensorlar ulanadigan pinlar haqida qo'shimcha ma'lumot keyingi bosqichda. Ovoz sensori biroz qiyinroq, lekin kulgili darajada murakkab emas. E'tibor bering: men bu erda kuchlanish bo'luvchi sxemasini ko'rsatmadim. Sxemadagi 2,5V kuchlanish "bo'linuvchi" deb nomlanishi kerak. Bu bir nechta qattiq rezistorlar yoki qozondan (potansiyometr) iborat juda oddiy sxemadir. Ushbu sxema uchun 50K qozondan foydalaning. Google "kuchlanish taqsimlagichi" va uni yaratish bo'yicha yordam uchun Vikipediya yozuviga qarang. 27/09/08 EDIT: Men bu ovoz sxemasidan voz kechdim va uning o'rniga ovoz bilan ishlaydigan yoritgichli kulondan qutqarilganini ishlatdim. Bu erda sxema yaxshi ishlamaydi; Men nima uchun ekanini bilmayman, lekin dizayn nuqsonli; nimadir noto'g'ri. Men marjonning sxemasi SMD LM386 op-amp ishlatishini payqadim. Men rezistorlar LED, VCC va GND ga o'tishdan oldin lehimladim. Keyin men qilishim kerak bo'lgan narsa bu dasturiy ta'minotdagi qiymatlarni biroz o'zgartirish va presto! yaxshi ishlaydigan ovozli kayfiyat chirog'i. Hozirgi vaqtda, musiqaning pulsatsiyalanuvchi nurining videosi - bu asl zanjir ishlatilgan payt. Balki men takomillashtirilgan dizaynni ko'rsatadigan boshqasini yuklayman (bu yangi davr tufayli musiqaga javob beradiganga o'xshaydi). Men piezo elementini qanday lehimlashni bilmasdim, shuning uchun men taxmin qildim va lehimlab ko'rsatilgandek. Bu ishlaydi. Piezoning qutblanishi muhim emas. Rezistor non panelida (ko'rsatilmagan) Yana bir MUHIM QAYD: Bu davrlarning qiymatlari siznikidan farq qiladi, shuning uchun siz kodni biroz o'zgartirishingiz kerak bo'ladi. Agar sizda bu qadriyatlar haqida savollaringiz bo'lsa, menga xabar bering.

6 -qadam: Sensorlar uchun joy toping va hammasini ulang

Sensorlar uchun joy toping va hammasini ulang
Sensorlar uchun joy toping va hammasini ulang
Sensorlar uchun joy toping va hammasini ulang
Sensorlar uchun joy toping va hammasini ulang

Bu qism juda qiyin bo'lmasligi kerak. "Sensorli yorug'lik" korpusida biz kerak bo'lgan hamma narsaga mos keladigan keng joy mavjud. Men datchiklarni qayerga to'g'ri kelsa, o'sha joyga qo'ydim. Barcha ulanishlar:

  • A6 pin: Ovoz sensori - QAYD: nano bo'lmagan arduino foydalanuvchilar uchun, boshqa arduinolarda 7 -analogli pin yo'q. Buni kodda o'zgartirishingiz kerak bo'ladi.
  • Pin A3: Piezo sensori (tegish sensori)
  • A0 pin: yorug'lik sensori

Datchiklarning (+) uchlarini tartibga solinmagan elektr tasmasiga tasodifan ulamasligingizga ishonch hosil qiling, aks holda siz ularni qovurasiz.

7 -qadam: Sinab ko'ring

Sinab ko'ring
Sinab ko'ring
Sinab ko'ring
Sinab ko'ring

Quvvat ulanishlari yaxshi ekanligiga ishonch hosil qiling; quvvat adapteridan foydalanib ulang va batareyalardan foydalanib ko'ring. Umumiy muammo - bu ijobiy va erga yomon aloqalar. QAYD: Men bilaman, rasmda yorug'lik sensori ko'rsatilmagan; Men bu qismni qo'shishdan oldin oldim.

8 -qadam: Dastur qiling, yoping va foydalaning

Uni dasturlang, yoping va foydalaning
Uni dasturlang, yoping va foydalaning
Uni dasturlang, yoping va foydalaning
Uni dasturlang, yoping va foydalaning
Uni dasturlang, yoping va foydalaning
Uni dasturlang, yoping va foydalaning

Men ishlatgan kod Tod E. Kurt (www.todbot.com/blog) va BlinkM (ThingM) ishlab chiqaruvchilari tomonidan yaratilgan kutubxonadan foydalanadi. Men tushunarli bo'lishi uchun kodga eslatmalarni qo'shishga harakat qilaman; Men hozir juda bandman. Kodni yuklashda siz arduino dasturida kodlar kutubxonasi ("BlinkM_funcs.h" deb nomlangan fayl) ochilgan bo'lishi kerak, aks holda u ishlamaydi. Agar siz kodni ko'rishni xohlasangiz, lekin arduino dasturiy ta'minoti bo'lmasa, uni so'zlarni qayta ishlash dasturi bilan ochishingiz mumkin (Windows foydalanuvchilari uchun so'zlar paneli). Yangi funktsiyalar uchun g'oyalar ma'qul. Iltimos, ularni joylashtiring; Men buni ochiq manba qilishni xohlayman. Kodni tuzishimning maqsadi shundaki, yangi funktsiyalarni osongina qo'shish mumkin. Ba'zi funktsiyalar ishlab chiqaruvchi (ThingM) tomonidan BlinkM -ga dasturlashtirilgan, lekin men ulardan ikkitasini yaratganman; "Ovozli yorug'lik" va "Mimik nur". Hozirda u quyidagilarga ega:

  • Mood Light - Sekin -asta tasodifiy ranglarga o'tadi
  • Sham - apelsin va sariq rangli sham kabi miltillaydi
  • Suvni aks ettirish - ko'k, turkuaz va ko'k rangdagi "shimmers"
  • Mavsumiy ranglar - mavsumiy ranglarni o'zgartiradi (menimcha, ular ko'k, yashil, binafsha va to'q sariq)
  • Momaqaldiroq - Vaqti -vaqti bilan chaqmoqni taqlid qilib yonadi
  • Yorug'likni to'xtating - qizildan sariqdan yashilga va yana orqaga qaytadi
  • Mimik yorug'lik - 50 ta yorug'lik yoqish/o'chirish davrining ketma -ketligini yozadi (siz chiroqni ishlatishingiz mumkin), yoqish/o'chirish vaqtlarini "eslab qoladi" va keyin ularni hech qachon tugamaydigan tsiklda o'ynaydi.
  • Ovozli yorug'lik - musiqa tovushida pulsatsiyalanadi

Istalgan vaqtda funktsiyalarni o'zgartirish uchun shaffof gumbazga ozgina teging. Bu qoidadan bitta istisno bor: "taqlid chiroq" funksiyasiga kirganingizda, u yashil rangda yonadi. Agar siz gumbaz yonib turganda tegib qo'ysangiz, u oxirgi funktsiyaga o'tadi ("ovozli yorug'lik"). Agar siz shunchaki kutsangiz, u "taqlidli yorug'lik" funktsiyasiga o'tadi. "Ovozli yorug'lik" funktsiyasiga kirganingizda, siz tovush sensorining o'qish uslubi tufayli funktsiyalarni o'zgartira olmaysiz va birinchisiga o'tolmaysiz. Endi qiyin qismi keladi. Yorug'lik muhofazasini yopish uchun siz bir necha ehtiyot choralarini ko'rishingiz kerak. Birinchidan, qo'llab -quvvatlovchi kamonlarni plastik gumbazdagi mayda tiqinlar bilan bir qatorga qo'yish kerak. DC quvvat ulagichi chekkada va simlar non taxtasiga ulanganligi sababli, siz plastmassa gumbazni bu simlar ustiga BIRINCHI siljitishingiz kerak, so'ngra plastik gumbaz ustidagi chiziqlar bilan tashqi chetining vint ustunlarini tekislang. Barcha yorliqlar qo'llab -quvvatlovchi kamonlarning joylashishi bilan mos kelishiga ishonch hosil qiling, ular jantdagi vintli ustunlar va taglik plastinkasidagi burg'ulash teshiklari bilan mos keladi. Keyin, hamma narsa to'g'ri ekanligiga ishonch hosil qilganingizda, tashqi chetini taglik plastinkasiga mahkamlang. Keyinchalik, buloqlarga hech qanday simlar tiqilib qolmaganiga yoki kelajakda bo'lishi mumkin bo'lgan joyga joylashtirilganligiga ishonch hosil qiling. Bu plastik gumbazning harakatlanishiga to'sqinlik qiladi. Nihoyat, vintlarni almashtiring va zavqlaning! Oxirgi eslatmalar: MUHIM: batareyalardan foydalanmang va bir vaqtning o'zida devor adapterini ulang. Men nima bo'lishini bilmayman, lekin ishonchim komilki, u kuch bilan bog'liq bo'lgan hamma narsani yo'q qiladi !!

9 -qadam: QO'ShIMChA

Bu erda ba'zi videolar: Bu BlinkM-ga o'rnatilgan 6 ta oldindan dasturlashtirilgan funktsiyalardan biri:… Bu men qo'shgan maxsus ovoz/musiqaga javob beruvchi kod (bu qanday qo'shiq ekanligini taxmin qila olasizmi? …:… Va nihoyat, lekin aniq emas) hech bo'lmaganda, eng zo'r (menimcha) va eng qiyin vazifa; "taqlid yorug'lik" funktsiyasi:

Tavsiya: