Mundarija:

Retro LED chiziqli audio vizualizator: 4 qadam (rasmlar bilan)
Retro LED chiziqli audio vizualizator: 4 qadam (rasmlar bilan)

Video: Retro LED chiziqli audio vizualizator: 4 qadam (rasmlar bilan)

Video: Retro LED chiziqli audio vizualizator: 4 qadam (rasmlar bilan)
Video: “Ksenon” hamda “Led” chiroqlari “Gentra” yoki “Cobalt” avtomobillariga oʻrnatilishi mumkinmi? 2024, Noyabr
Anonim
Image
Image
Qismlar ro'yxati
Qismlar ro'yxati

Musiqachi va elektrotexnika talabasi sifatida men bu ikki sohani kesib o'tgan har qanday loyihani yaxshi ko'raman. Men bir nechta DIY audio vizualizatorlarini ko'rdim (bu erda, bu erda, bu erda va bu erda), lekin ularning har biri men qo'ygan ikkita maqsadning kamida bittasini o'tkazib yuborgan: professional qurilish sifati va nisbatan katta displey (8*8 -chi) LED matritsasi bu erda etarli bo'lmaydi!). Bir oz vintage qobiliyati bilan va 40 "x 20" da o'tirgan holda, bu audiovizualizator ikkala maqsadga ham erishadi.

Vertikal rasmlar uchun oldindan uzr. Ularning aksariyati ijtimoiy tarmoqlar uchun olingan.

1 -qadam: qismlar ro'yxati

Menda bu qismlarning bir nechtasi allaqachon yotardi. Havolalar faqat ma'lumot uchun. Iltimos, keraksiz qimmat komponentlarni sotib olmang.

Elektronika

  1. WS2811 60LEDS/m @ 5m, IP30 (Suv o'tkazmaydigan), Manzilga ega - Ular o'sha paytdagi WS2812 -dan arzonroq edi. Bu erda sizda bo'sh joy bor, lekin o'lchovlar to'g'ri ekanligiga va LEDlar bilan gaplashishingizga ishonch hosil qiling. Shuni ham unutmangki, WS2811 - 12 V, WS2812 - 5 V.
  2. 9 x 3-pinli JST ulagichlari + rozetkalar
  3. DC 12V 20A (240 Vt) quvvat manbai-Men dastlab 2 ta LED tasmasini yasashni rejalashtirgandim va uyga qulab tushadigan karnaylar to'plamini xohladim. Har bir yorug'lik chizig'i 90 Vt eng yomon stsenariyda (men tasdiqlash uchun o'lchaganim yo'q), bu meni ma'ruzachilar va kuchaytirgichlar uchun ~ 60 Vt qoldirdi. 15A varianti atigi 4 dollar kamroq edi.
  4. Quvvat kabeli (3 tishli)
  5. Arduino Uno - Menda R3 bor edi, shuning uchun men uni ishlatardim. Siz nokautlardan yoki boshqa sotuvchilardan arzonroq variantni topishingiz mumkin.
  6. TRRS Breakout - yordamchi kirish uchun
  7. L7805 5V regulyatori - 12V kirishni qabul qiladigan har qanday 5V regulyator ishlaydi.
  8. 330 nF, 100 nF kondansatörler - L7805 ma'lumotlar jadvaliga
  9. 2 x 10kR, 2 x 1kR, 2 x 100 nF kondansatkichlar - ovozli kirishni aniqlash uchun
  10. Stereo qabul qilgich - har qanday vintage stereo qabul qilgich, aux kirish (3,5 mm yoki RCA) bo'lsa, ishlaydi. Men Panasonic RA6600 craigslist -ni 15 dollarga oldim. Men shunga o'xshash Goodwill, craigslist va boshqa tejamkor do'konlarni tekshirishni maslahat beraman.
  11. Dinamiklar - BT dinamiklari emas. Faqat dinamiklar to'plami. Qabul qilgich bilan qanday impedans mos kelishiga e'tibor bering. Goodwill -da 6 dollarlik 3 ta 20 Vt (= baland ovozli) dinamiklar to'plamini topdim va u "markaz" va ikkita "old" karnay bilan birga keldi.
  12. Logitech BT Audio Adapter - bu qurilma ovozni stereo karnaylarga va sizning davrangizga uzatishi mumkin
  13. RCA erkak - RCA erkak kabeli
  14. Yordamchi sim

Uskuna

  1. 2x6 (8 fut) - bosim bilan ishlov berilmagan. HD yoki Lowe -da ~ $ 6 yoki undan kam bo'lishi kerak
  2. 40% yorug'lik o'tkazuvchan akril - men 18 dyuymli x 24 dyuymli x 1/8 dyuym hajmiga buyurtma berdim, va u texnik jihatdan 17,75 dyuymli 23,5 dyuymli edi. Lazer bilan kesishga o'tsangiz, uni o'rashda saqlang.
  3. Yog'ochdan yasalgan dog ' - sizga faqat kichik banka kerak. Men Minwax qizil maunidan foydalandim va juda chiroyli chiqdi. Men, albatta, qorong'i ohangni tavsiya qilaman. Men dastlab viloyatni sinab ko'rdim va bu unchalik yaxshi ko'rinmadi.
  4. Lak - Birinchidan, Stiv Remsi tomonidan tayyorlangan ushbu videoni ko'rib chiqing va qaysi biri yaxshiroq ishlashini o'zingiz hal qiling. Menda yarim porloq (buzadigan amallar bo'lmagan) buzadigan amallar idishi bor edi va rostini aytsam, bu unchalik emas edi. Lekin men ham vaqt cheklanganligi uchun bitta palto qildim.
  5. 40 x 1/2 dyuymli yog'och vintlardek - menda dumaloq bosh bor edi, lekin iloji bo'lsa, tekis tepadan foydalanishni maslahat beraman. Bu qurilish sifatiga xalaqit bermaydi deb o'ylayman, lekin avval yog'ochdan ishlov berish bilan tanish bo'lgan odamlardan so'rang.
  6. Yog'och, goril elim, issiq elim, lehim, sim va buyruq chiziqlari (velkro uslubi, 20 ta o'rta yoki 10 ta katta)

* Men bu loyihani butunlay "noldan" qilish uchun ovoz paneli yaratishni rejalashtirmoqdaman, u yuqoridagi 9-13 o'rnini bosadi. Umid qilamanki, yoz oxirigacha bu ko'rsatmalarni yangilayman.

2 -qadam: prototip yaratish

Prototip yaratish
Prototip yaratish

Bu bo'lim siz to'ldirishingiz kerak bo'lgan narsa emas, lekin men loyiha qanday o'tganini ko'rsatmoqchiman.

Bu erda men LEDlarni ilon chizig'iga yozib qo'ydim va uning ustiga qatlamli axlat sumkasi orqali yorug'lik tarqatish tajribasini o'tkazdim (agar siz xarajatlarni kamaytirishga harakat qilsangiz, men akrilga muqobil sifatida tavsiya qilaman. uni boshqa yo'l bilan bog'lang).

Men uchun 10x10 sozlash ishladi, lekin siz 8x12 yoki 7x14 ni afzal ko'rishingiz mumkin. Bemalol tajriba o'tkazing. Menga stereo eshitilishidan oldin, men kuchaytirgichni topdim va uni taxtamga uladim, bundan oldin men audio tahlil qilish uchun noutbukimdan audio eshittirdim va bir vaqtning o'zida telefonimga "ijro etish" tugmasini bosdim.

Men ikki marta o'lchaganimda, bir marta kesganimda juda ishonaman. Shunday qilib, nima qilsangiz ham, ko'rsatmalarga amal qiling, shunda siz tayyor bo'lasiz.

3 -qadam: O'chirish + kod

O'chirish + kod
O'chirish + kod
O'chirish + kod
O'chirish + kod
O'chirish + kod
O'chirish + kod

Kod GitHub -da mavjud.

Non paneli, perforatorga lehimlang yoki o'zingizning tenglikni dizaynini yarating. Bu erda sizga eng mos keladigan narsa, buni bajaring. Bu erda mening demo dasturim taxtada ishlaydi, lekin men ovoz panelini qurganimda hamma narsani PCBga o'tkazaman. Adapterdan quvvat olish uchun ayol uchini kesib, qora izolyatsiyani olib tashlang. Haqiqiy kabellarni adapter terminallariga mahkamlash uchun etarlicha torting. AC bilan ishlashda har doim ehtiyot bo'ling! Bundan tashqari, bu erda bir nechta narsalarni ta'kidlash kerak.

  1. Yana bir narsa - er yo'llarining yaxshi ekanligiga ishonch hosil qilish. Adapterdan Arduino -ga aux kirish uchun topraklama kerak, u ham Logitech BT qabul qilgichidagi erga va u erdan stereoga ulanadi. Agar ulardan bittasi uzilgan yoki yomon aloqa bo'lsa, siz juda shovqinli ovozli kirishni olasiz va shuning uchun juda shovqinli displeyga ega bo'lasiz.
  2. Audio Input BiasingAudio telefon yoki noutbukdan yoki boshqa joyda -2,2 dan +2,2 V gacha aux kabeli orqali o'ynaydi. Arduino faqat 0 dan +5 V gacha o'qishga qodir, shuning uchun siz ovozli kirishni bir yoqlama qilishingiz kerak. Buni op -amper yordamida samarali bajarish mumkin, lekin agar energiya iste'moli muammo bo'lmasa (ehtimol siz 240 Vt quvvat manbasini sotib olgan bo'lsangiz?), Buni rezistorlar va kondansatkichlar yordamida ham amalga oshirish mumkin. Men tanlagan qiymatlar boshqacha edi, chunki qo'limda 10uF kondansatör yo'q edi. Siz simulyator bilan o'ynab, tanlaganingiz ishlaydimi yoki yo'qligini bilib olishingiz mumkin.
  3. Fourier transformatsiyalaridan foydalanadigan har qanday loyihada ularni muhokama qiladigan asosiy bo'lim bo'ladi. Agar siz allaqachon tajribaga ega bo'lsangiz, ajoyib! Agar yo'q bo'lsa, shuni tushunishingiz kerakki, ular signalning suratini olishadi va o'sha paytda bu signalda qanday chastotalar borligi haqidagi ma'lumotlarni qaytarishadi. Agar siz gunohning Furye konvertatsiyasini qabul qilsangiz (440 (2*pi*t)), bu sizning signalingizda 440Hz chastotasi mavjudligini bildiradi. Agar siz 7*sin (440 (2*pi*t)) + 5*sin (2000 (2*pi*t)) Fourier konvertatsiyasini olgan bo'lsangiz, bu sizga 440 Gts va 2000 Gts signallari mavjudligini aytadi. ular mavjud bo'lgan nisbiy darajalar. Bu har qanday miqdordagi komponentli funktsiyali har qanday signal uchun bajarishi mumkin. Hamma audio faqat sinusoidlarning yig'indisi bo'lgani uchun, biz Fourier -ning bir nechta suratlarini o'zgartiramiz va nima bo'layotganini ko'ramiz. aylantirmoq. Bu haqda ko'proq ma'lumotni bu erda topishingiz mumkin, lekin qisqacha tushuntirish shundaki, biz signalni o'zgartirishni tugatamiz va derazalar bizni tuzatadi. Agar siz ularni ishlatmasangiz, sizning kodingiz buzilmaydi, lekin displey toza ko'rinmaydi. Yaxshi algoritmlar bo'lishi mumkin (masalan, YAAPT), lekin KISS tamoyillariga amal qilib, men nimani ishlatishni tanladim. allaqachon mavjud edi, bu Fast Fourier Transform yoki FFT uchun bir nechta yaxshi yozilgan Arduino kutubxonalari.
  4. Haqiqiy vaqtda hamma narsani qayta ishlash mumkinmi? Hamma narsa real vaqtda paydo bo'lishi uchun Arduino 128 ta namunani olishi, FFT bilan ishlashi, displey qiymatlarini boshqarishi va displeyni tezda yangilashi kerak. Agar siz soatiga 150 -daqiqada (16 -chi notaning aniqligini xohlasangiz (aksariyat pop qo'shiqlarining yuqori tezligiga yaqin)), siz hamma narsani 100 soniyada bajarishingiz kerak bo'ladi. Bundan tashqari, inson ko'zi 30 kadr tezlikda ko'rishi mumkin, bu esa 30ms sekund uzunligiga to'g'ri keladi. Bu blog yozuvi menga katta ishonch bag'ishlamadi, lekin men Arduino o'zini tuta oladimi yoki yo'qligini o'z ko'zlarim bilan ko'rishga qaror qildim. Hisoblash bosqichi cheklovchi omil edi, lekin men UINT16 -larning 128 FFT -ni atigi 70 soniyada qayta ishlashga muvaffaq bo'ldim. Bu audio toleranslar ichida edi, lekin vizual cheklovdan ikki baravar ko'p. Keyingi tadqiqotlarda men FFT simmetriyasidan foydalanadigan va faqat haqiqiy qiymatlarni hisoblaydigan Arduino FHT ni topdim. Boshqacha aytganda, bu taxminan 2 barobar tezroq. Va, albatta, u butun aylanish tezligini ~ 30 msnga etkazdi, bu erda ekran o'lchamlari haqida boshqa bir eslatma. Fs Hz da tanlangan N FFT uzunligi N qutichalarni qaytaradi, bu erda kth bin k * Fs/N Hz ga to'g'ri keladi. Ovozli kirishni o'qiyotgan va namuna oladigan Arduino ADC odatda ~ 9,6 kHz da ishlaydi. Biroq, FFT faqat 1/2 * F gacha bo'lgan chastotalar haqidagi ma'lumotlarni qaytarishi mumkin. Odamlar 20 kHz gacha eshitadilar, shuning uchun biz> 40 kHz chastotada namuna olishni xohlaymiz. ADC -ni biroz tezroq ishlatish uchun buzish mumkin, lekin u erda hech qanday joy yo'q. Barqarorlikni yo'qotmasdan ko'rgan eng yaxshi natija 14 kHz chastotali ADCda edi. Bundan tashqari, real vaqt effektini olish uchun men qila oladigan eng katta FFT N = 128 edi. Bu shuni anglatadiki, har bir quti ~ 109 Gts ni tashkil qiladi, bu yuqori chastotalarda yaxshi, lekin past uchida yomon. Yaxshi vizualizator har bir satr uchun [16.35, 32.70, 65.41, 130.81, 261.63, 523.25, 1046.50, 2093.00, 4186.01] Gts chastotalaridagi ajratishlarga mos keladigan oktavani zaxiralashga harakat qiladi. 109 Gts degani, birinchi 2,5 oktavaning barchasi bitta qutida. Men hali ham yaxshi vizual effektga ega bo'ldim, qisman har bir chelakning o'rtacha qiymatini olsam, bu erda chelak - bu ikki chegara orasidagi qutilar. Umid qilamanki, bu chalkash emas va kodning o'zi nima bo'layotganini aniqlab berishi kerak, lekin mantiqiy bo'lmasa, quyida so'rang.

4 -qadam: yig'ish

O'rnatish
O'rnatish
O'rnatish
O'rnatish
O'rnatish
O'rnatish

Yuqorida aytib o'tganimdek, men professional qurilish sifatiga ega bo'lgan narsani xohlardim. Dastlab men yog'och panjaralarni bir -biriga yopishtirishni boshladim, lekin do'stim (va malakali muhandis) boshqa yondashuvni taklif qildi. E'tibor bering, 2x6 chindan ham 1,5 "x 5". Va iltimos, quyida keltirilgan har qanday mexanizm bilan ishlashda ehtiyot bo'ling.

  1. Agar kerak bo'lsa, 2x6x8 va qumni oling. Uni 2 "x 6" x 22 "bo'laklarga bo'ling. Agar chalkashtirib yuborsangiz," yondirish "uchun ikkita lamel beradi.
  2. Har bir 22 dyuymli bo'lakni oling va uni 1,5 dyuymli x ~ 1,6 dyuymli 22 sm uzunlikdagi stol arra bo'ylab o'tkazing. Oxirgi uchdan birini stol arra ustida kesish qiyin bo'lishi mumkin, shuning uchun siz tarmoqli arra bilan almashishingiz mumkin. Hamma narsa iloji boricha to'g'ri ekanligiga ishonch hosil qiling. Bundan tashqari, 1,6 dyuym - bu yo'riqnoma va 1,75 dyuymgacha ko'tarilishi mumkin. Mening asarlarim shunday edi, lekin ularning barchasi bir -biriga teng ekan, bu juda muhim emas. Cheklovchi omil - akril 18 ".
  3. Parchalarning oxirida, har ikki tomonning 1/8 dyuymli va 3/4 chuqurligidan biroz kattaroq U-shaklini belgilang. QAYD: Agar siz boshqa akril ishlatsangiz, chuqurlik o'zgaradi. <3/4 "da mening akril nurni umuman tarqatmaydi. Biroz ko'proq, u butunlay tarqaladi. Siz har qanday" beadiness "dan saqlanishni xohlaysiz. Men bu Hackaday postini yaxshi havola deb topdim, lekin mukammal diffuziya olish - bu juda qiyin!
  4. Stol usti yo'riqchisining o'rtasini U lamel bo'ylab pastga kesib tashlang. 22 dyuym sizga kerak bo'lganidan uzunroq, shuning uchun uchlarini kesishdan xavotir olmang. Routerlar murakkab bo'lishi mumkin, lekin U kengligining yarmidan biroz kengroq bo'lsin va ehtiyot bo'ling 1/ Bir vaqtning o'zida 8 dyuymli material. Takrorlang: hammasini 2 yo'lda bajarishga urinmang. Siz yog'ochga zarar etkazasiz va o'zingizga zarar etkazasiz. Routerning aylanishi bilan 1-4 kesimlarda ishlang va 5-8 da unga qarshi ishlang. Bu yo'riqnoma aylanish momentini eng yaxshi nazorat qilishingizga kafolat beradi.
  5. LED chizig'ini 30 LEDli bo'laklarga bo'ling (faqat 3 ta LEDning har bir to'plami manzilli). Ehtimol, siz bir nechta ulanishlarni o'chirishingiz kerak bo'ladi. Bu chiziqlarni yo'llar bo'ylab yotqiz. Bir tomoni tekis o'tirishi kerak, ikkinchisida esa JSTni qabul qiladigan kichik joy bo'lishi kerak. Afsuski, men bu rasmni olmadim, lekin biriktirilgan diagramaga qarang. Bu erda uzunlikni belgilang, lekin hali hech narsani kesmang.
  6. Har bir chiziqning kengligini o'lchang. Bu va 7 -qadamdagi uzunlik yordamida lazer akrilni 10 ta kerakli to'rtburchakka kesib tashladi. Qisqa emas, biroz uzunroq bo'lish yaxshiroqdir. Agar kuygan bo'lsa, uni izopropil bilan artib oling.
  7. Har bir akril lamel 5 -qadamda ko'rsatilgan uzunlikda o'tirganligini tasdiqlang, shundan keyin lamelni shu uzunlikka kesib oling.
  8. Endi akrilni yopishtirish uchun sizga ikkita ko'prik bo'lagi kerak bo'ladi. Bu, agar biror narsa paydo bo'lsa, engil chiziqlarni oson parvarish qilish imkonini beradi. Bu qismlar taxminan [kengligingiz] - 2 * 1/8 dyuym uzunlikdagi 1/2 dyuymli bo'lishi kerak, lekin ular biroz mahkam o'rnashishi kerak. Bu qismlar mahkam o'rnashib, lamellarning old yuzasi bilan yuvilib, har bir ko'prikning o'rtasidan lamellarning tashqi tomondan burg'ulash kerak. Har bir matkapni tekis qilish uchun qo'lingizdan kelganini qiling. Ko'priklarni burama qilib qo'ymang, lekin ular bo'lishi mumkinligiga ishonch hosil qiling. Ehtiyotkorlik bilan vintni pastga tushirmang va o'tinni ikkiga bo'ling.
  9. Bu vaqtda lamellarni bo'yab, har qanday qoplamani qo'llang.
  10. Endi ko'priklarni burab qo'ying. Ular tekis o'tirganiga ishonch hosil qiling! Agar yo'q bo'lsa, siz qandaydir shim kiyishingiz kerak bo'ladi. Ko'priklarga goril yopishtiruvchi (afzal qilingan) yoki issiq yopishtiruvchi qo'lqop surting (u ikki barobar ko'payishi mumkin). Lamelning o'zi bo'ylab hech qanday yopishtiruvchi surtmang.
  11. LST lehimli JST idishlari bir tomondan, faqat bitta LED tasmasidan. Belgilangan o'qlar bilan aytilganidek, barchasini bir chetiga qo'ying. JST simlarini boshqa uchlariga lehimlang. Har bir ulagichga ko'proq sim ajratish kerak bo'lishi mumkin. Tarmoqqa ulanganda ulanishlar to'g'ri ekanligiga ishonch hosil qiling! LEDlarning orqa qismidagi yopishtiruvchi dahshatli, shuning uchun unga ishonmang. LEDlarni markaziy chiziqqa qo'ying va chiziqlardagi ko'rsatilgan yo'nalishga e'tibor berib, ularni gorilla elim bilan yopishtiring. Esda tutingki, siz hamma narsani ilon qilyapsiz.
  12. Birinchi panjara, adapterdan quvvat va + Arduino signalini olish uchun etarlicha uzun simlarni lehimlang.
  13. Chiziqlar va ko'priklarni orqaga burang. Buyruq chiziqlarini orqa tomonga mahkamlang (velkro uslubi, tepada va pastda 2 ta o'rta yoki o'rtada 1 ta katta). Barcha kerakli ulanishlarni o'rnatib, ~ 3 dyuym masofada devorga osib qo'ying. Mehnat mevalaridan zavqlaning.

Tavsiya: