Mündəricat:
- Addım 1: Standart Ukelele Tuning
- Addım 2: Tamamilə Rəqəmsal Nəzəri Model Yaratmaq
- Addım 3: Sonra, Analog Dövrə
- Addım 4: DAQ köməkçisi ilə analoq siqnalları oxuyun
- Addım 5: Nəticə
Video: LabView və NI USB-6008 istifadə edərək Ukelele Tuner: 5 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
Humber Kollecində (Elektronika Mühəndisliyi Texnologiyası) LabVIEW & Instrumentation kursum üçün problemə əsaslanan bir öyrənmə layihəsi olaraq, analoq girişi (ukulele simli tonu) götürəcək, əsas tezliyi tapacaq, hansı notun çalışdığına qərar verən bir ukulele tuner yaratdım. tənzimlənməlidir və istifadəçiyə simin yuxarı və ya aşağı tənzimlənməsinin lazım olub olmadığını bildirin. Analoq girişi rəqəmsal girişə çevirmək üçün istifadə etdiyim cihaz National Instruments USB-6008 DAQ (məlumat toplama cihazı) idi və istifadəçi interfeysi LabVIEW ilə həyata keçirildi.
Addım 1: Standart Ukelele Tuning
İlk addım, musiqi notlarının əsas tezliklərini və ukulele simlərinin ümumiyyətlə hansı aralığa uyğunlaşdırıldığını öyrənmək idi. Bu iki qrafikdən istifadə etdim və 262 Hz (C) ilə 494Hz (Yüksək B) arasında səs tonumu seçəcəyimə qərar verdim. Proqramın 252 Hz -dən az bir şeyin nə çalmağa çalışdığını deşifr etməsi üçün çox aşağı, 500 Hz -dən çox olan isə çox yüksək hesab ediləcək. Proqram, hələ də istifadəçiyə ən yaxın deşifr edilə bilən qeyddən neçə Hz məsafədə olduqlarını və mövcud bir nota çatmaq üçün sətrin yuxarı (aşağı çox qeyd) və ya aşağı (çox yüksək qeyd) tənzimlənməli olduğunu bildirir.
Əlavə olaraq, proqramın hansı notun çalındığını tapmasını asanlaşdırmaq üçün tək bir tezlikdən çox deyil, hər not üçün silsilələr yaratdım. Məsələn, proqram istifadəçiyə notun 252 Hz (B -nin yarısı) və 269Hz (C#-in yarısı) arasında bir əsas frekansa sahib olsaydı C -nin çalınacağını bildirərdi, ancaq bunun tənzimlənməsinin lazım olub -olmamasına qərar vermək üçün. və ya aşağı olsa da, çalınan notu C2 -nin əsas tezliyi olan 262Hz ilə müqayisə edərdi.
Addım 2: Tamamilə Rəqəmsal Nəzəri Model Yaratmaq
Layihənin analoji tərəfinə girməzdən əvvəl, ən azından səs.wav nümunəsi oxumaq, əsas tezliyi tapmaq və etmək kimi bir səs nümunəsinin əsas işlənməsini həyata keçirəcək bir LabVIEW proqramı yarada biləcəyimi görmək istədim. Səsin yuxarı və ya aşağı tənzimlənməli olub olmadığını öyrənmək üçün tezlik cədvəli ilə müqayisə etmək lazımdır.
Mən təyin etdiyim bir yoldan bir.wav faylını oxumaq, siqnalı indekslənmiş bir sıra daxil etmək və əsas tezliyi tapmaq üçün bu siqnalı HarmonicDistortionAnalyzer. VI -ə ötürmək üçün LabVIEW -də mövcud olan SoundFileSimpleRead. VI -dən istifadə etdim. Mən də SoundFileSimpleRead. VI -dən siqnalı götürdüm və istifadəçini ön paneldəki faylın dalğa formasını görə bilməsi üçün birbaşa dalğa şəkli göstəricisi ilə əlaqələndirdim.
2 hal quruluşu yaratdım: biri hansı notun çalındığını təhlil etmək üçün, digəri isə ipin yuxarı və ya aşağı çevrilməsinin lazım olub olmadığını müəyyən etmək üçün. Birinci halda, hər not üçün diapazonlar yaratdım və əgər HarmonicDistortionAnalyzer. VI -dən olan əsas tezlik siqnalı bu diapazonda olsaydı, istifadəçiyə hansı notun çalındığını bildirərdi. Qeyd müəyyən edildikdən sonra, çalınan notun dəyəri əskinasın əsl əsas tezliyi ilə çıxarıldı və sonra nəticə aşağıdakıları təyin edən ikinci vəziyyətə köçürüldü: nəticə sıfırın üstündədirsə, simin tənzimlənməsi lazımdır; nəticə yalan olarsa (sıfırdan yuxarı deyil), iş dəyərin sıfıra bərabər olub olmadığını yoxlayır və doğru olarsa, proqram istifadəçiyə qeydin uyğun olduğunu bildirir; dəyər sıfıra bərabər deyilsə, bu sıfırdan az olması və simin tənzimlənməsinin lazım olduğunu bildirir. İstifadəçiyə əsl qeyddən neçə Hz məsafədə olduqlarını göstərmək üçün nəticənin mütləq dəyərini götürdüm.
İstifadəçiyə notu uyğun etmək üçün nə edilməli olduğunu əyani şəkildə göstərmək üçün bir sayğac göstəricisinin ən yaxşı olacağına qərar verdim.
Addım 3: Sonra, Analog Dövrə
Bu layihə üçün istifadə etdiyim mikrofon CMA-6542PF kondensator elektret mikrofonudur. Bu mikrofon üçün məlumat cədvəli aşağıda verilmişdir. Bu tip kondensator mikrofonlarının əksəriyyətindən fərqli olaraq, polarite haqqında narahat olmaq lazım deyildi. Məlumat cədvəli göstərir ki, bu mikrofonun işləmə gərginliyi 4,5 - 10 V, lakin 4,5 V tövsiyə olunur və onun cari istehlakı maksimum 0,5 mA -dır, buna görə də preamp dövrə tərtib edərkən diqqətli olmaq lazımdır. Əməliyyat tezliyi 20Hz -dən 20kHz -ə qədərdir, bu da səs üçün idealdır.
Çörək taxtasında sadə bir preamp dövrə dizaynı tətbiq etdim və mikrofonda 0,5 mA -dan çox olmadığından əmin olaraq giriş gərginliyini tənzimlədim. Kondansatör, elektrik siqnalları (çıxışı) ilə birləşdirilə bilən DC səs -küyünü süzmək üçün istifadə olunur və kondansatörün polaritesi var, buna görə də müsbət ucunu mikrofon çıxış pininə bağladığınızdan əmin olun.
Dövrə tamamlandıqdan sonra, dövrənin çıxışını USB-6008-in ilk analoq giriş pininə (AI0, pin 2) bağladım və çörək taxtasının zəminini analog torpaq pininə (GND, pin 1) bağladım. USB-6008-i USB ilə PC-yə bağladım və həqiqi analoq siqnalı qəbul etmək üçün LabVIEW proqramına düzəlişlər etmək vaxtı gəldi.
Addım 4: DAQ köməkçisi ilə analoq siqnalları oxuyun
SoundFileSimpleRead. VI və HarmonicDistortionAnalyzer. VI istifadə etmək əvəzinə, analog girişlə məşğul olmaq üçün DAQ Assistant. VI və ToneMeasurements. VI istifadə etdim. DAQ köməkçisi quruluşu olduqca sadədir və VI özü sizi addımlardan keçir. ToneMeasurements. VI -nin (amplituda, tezlik, faza) seçmək üçün bir çox çıxışı var, buna görə giriş tonunun əsas tezliyini verən tezlik çıxışından istifadə etdim (DAQ Assistant. VI -dən). ToneMeasurements. VI çıxışı, konstruksiyalarda istifadə olunmazdan əvvəl çevrilməli və bir sıra halına salınmalı idi, lakin LabVIEW proqramlaşdırma/göstəricilərinin qalan hissəsi eyni qaldı.
Addım 5: Nəticə
Layihə uğurla başa çatdı, amma bir çox çatışmazlıqlar var idi. Tüneri səs -küylü bir sinifdə işlədərkən, proqramın nə səs -küy olduğunu və hansı tonda çalındığını təyin etmək çox çətin idi. Çox güman ki, preamp dövrəsinin çox sadə olması və mikrofonun çox ucuz olmasıdır. Səssiz olanda, proqram çalınmağa çalışılan notu müəyyən etmək üçün yaxşı etibarlılıqla çalışdı. Vaxt məhdudiyyətləri səbəbindən heç bir əlavə dəyişiklik etmədim, amma layihəni təkrarlasam daha yaxşı bir mikrofon alardım və preamp dövrəsinə daha çox vaxt sərf edərdim.
Tövsiyə:
Arduino istifadə edərək İnternetdən istifadə edərək bütün dünyanı idarə et: 4 addım
Arduino istifadə edərək İnternetdən istifadə edərək bütün dünyanı idarə et: Salam, mən Rithikəm. Telefonunuzdan istifadə edərək internetə nəzarət edən bir led quracağıq. Arduino IDE və Blynk kimi proqramlardan istifadə edəcəyik. Bu çox sadədir və uğur qazansanız istədiyiniz qədər elektron komponenti idarə edə bilərsiniz
Python istifadə edərək Raspberry Pi və AIS328DQTR istifadə edərək sürətlənməni izləyin: 6 addım
Python istifadə edərək Raspberry Pi və AIS328DQTR istifadə edərək Sürətləndirməni izləyin: Sürətləndirmə sonsuzdur, düşünürəm ki, Fizikanın bəzi qanunlarına görə. Sahilə çıxan ən sürətli məxluq, bir anda ən yüksək sürətindən istifadə edərək ovunu tutur
Arduino UNO istifadə edərək pilotsuz təyyarə necə etmək olar - Mikrokontrolördən istifadə edərək bir Quadcopter hazırlayın: 8 addım (şəkillərlə)
Arduino UNO istifadə edərək pilotsuz təyyarə necə etmək olar | Mikrokontrolördən istifadə edərək Quadcopter hazırlayın: Giriş Youtube Kanalımı Ziyarət Edin Drone almaq üçün çox bahalı bir gadget (məhsul) təşkil edir. Bu yazıda necə ucuz satacağımı müzakirə edəcəyəm? Ucuz qiymətə öz əlinizlə bunu necə edə bilərsiniz … Yaxşı Hindistanda bütün materiallar (mühərriklər, ESClər
Neopixel Ws2812 M5stick-C ilə Göy qurşağı LED Glow - Arduino IDE -dən istifadə edərək M5stack M5stick C -dən istifadə edərək Neopixel Ws2812 -də Göy qurşağının Çalışması: 5 addım
Neopixel Ws2812 M5stick-C ilə Göy qurşağı LED Glow | Arduino IDE istifadə edərək M5stack M5stick C istifadə edərək Neopixel Ws2812 üzərində Göy qurşağı çalıştırın: Salam uşaqlar bu təlimatlarda Arduino IDE ilə m5stack m5stick-C inkişaf lövhəsi ilə neopixel ws2812 LED və ya led şerit və ya led matris və ya led üzük istifadə etməyi öyrənəcəyik. onunla bir göy qurşağı nümunəsi
HT12D HT12E istifadə edərək RF 433MHZ Radio İdarəetmə - 433mhz ilə HT12E və HT12D istifadə edərək Rf Uzaqdan İdarəetmə edilməsi: 5 addım
HT12D HT12E istifadə edərək RF 433MHZ Radio İdarəetmə | HT12E və HT12D -dən 433mhz istifadə edərək Rf Uzaqdan İdarəetmə edilməsi: Bu təlimatda sizə HT12E kodlu 433mhz ötürücü qəbuledici modulu istifadə edərək RADIO uzaqdan idarə etməyi göstərəcəyəm. HT12D kod deşifratoru IC. Bu təlimatda çox ucuz komponentləri istifadə edərək məlumat göndərə və ala bilərsiniz: HT