Obsah:
- Krok 1: Standardní ladění ukelele
- Krok 2: Vytvoření čistě digitálního teoretického modelu
- Krok 3: Další, analogový obvod
- Krok 4: Čtení analogových signálů pomocí DAQ Assistant
- Krok 5: Závěr
Video: Ukelele tuner pomocí LabView a NI USB-6008: 5 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:22
Jako učební projekt založený na problémech pro můj kurz LabVIEW & Instrumentation na Humber College (Electronics Engineering Technology) jsem vytvořil tuner ukulele, který by převzal analogový vstup (tón řetězce ukulele), našel základní frekvenci a rozhodl, o jakou notu se pokouší naladit a sdělit uživateli, zda je třeba řetězec naladit nahoru nebo dolů. Zařízení, které jsem použil k převodu analogového vstupu na digitální vstup, bylo National Instruments USB-6008 DAQ (zařízení pro sběr dat) a uživatelské rozhraní bylo implementováno pomocí LabVIEW.
Krok 1: Standardní ladění ukelele
Prvním krokem bylo zjištění základních frekvencí hudebních not a toho, v jakém rozsahu jsou struny ukulele obvykle naladěny. Použil jsem tyto dva grafy a rozhodl jsem se, že svůj rozsah tónů nastavím mezi 262 Hz (C) a 494 Hz (High B). Cokoli menší než 252 Hz by bylo považováno za příliš nízké na to, aby program rozluštil notu, kterou se pokoušel zahrát, a cokoli většího než 500 Hz by bylo považováno za příliš vysoké. Program však uživateli stále říká, kolik Hz jsou mimo nejbližší dešifrovatelnou notu, a pokud by měl být řetězec naladěn nahoru (příliš nízká nota) nebo dolů (příliš vysoká nota), aby dosáhl dostupné noty.
Navíc jsem pro každou notu vytvořil rozsahy, nikoli jen jednu frekvenci, aby bylo pro program jednodušší najít, která nota se hraje. Program by například sdělil uživateli, že se hraje C, pokud by nota měla základní frekvenci mezi 252 Hz (na půli cesty k B) a 269 Hz (na půli cesty k C#), ale aby se rozhodl, zda je třeba ji vyladit nebo dolů, stále by to srovnávalo přehrávanou notu se základní frekvencí C, která je 262 Hz.
Krok 2: Vytvoření čistě digitálního teoretického modelu
Než se ponořím do analogové stránky projektu, chtěl jsem zjistit, zda bych mohl vytvořit program LabVIEW, který by přinejmenším provedl hlavní zpracování zvukové ukázky, jako je čtení zvukové ukázky.wav, nalezení základní frekvence a vytvoření požadovaná srovnání s frekvenčním grafem, aby se zjistilo, zda má být zvuk naladěn nahoru nebo dolů.
Použil jsem SoundFileSimpleRead. VI dostupný v LabVIEW ke čtení souboru.wav z cesty, kterou jsem určil, vložil signál do indexovaného pole a přivedl tento signál do HarmonicDistortionAnalyzer. VI, abych našel základní frekvenci. Také jsem vzal signál z SoundFileSimpleRead. VI a připojil jej přímo k indikátoru křivky grafu, aby uživatel viděl průběh souboru na předním panelu.
Vytvořil jsem 2 případové struktury: jednu analyzovat, jaká nota se hraje, a druhou, abych určil, zda je třeba strunu otočit nahoru nebo dolů. V prvním případě jsem pro každou notu vytvořil rozsahy a pokud by byl základní frekvenční signál z HarmonicDistortionAnalyzer. VI v tomto rozsahu, řekl by uživateli, jaká nota se hraje. Jakmile byla nota určena, byla hodnota odehrané noty odečtena skutečnou základní frekvencí noty a poté byl výsledek přesunut do druhého případu, který určoval následující: pokud je výsledek nad nulou, pak je třeba strunu doladit; pokud je výsledek nepravdivý (ne nad nulou), pak případ zkontroluje, zda je hodnota rovna nule, a pokud je pravdivý, pak program upozorní uživatele, že nota je v souladu; pokud se hodnota nerovná nule, pak to znamená, že musí být menší než nula a že řetězec je třeba vyladit. Vzal jsem absolutní hodnotu výsledku, abych uživateli ukázal, kolik Hz jsou mimo skutečnou notu.
Rozhodl jsem se, že indikátor metru bude nejlepší k tomu, aby uživateli vizuálně ukázal, co je třeba udělat, aby byla poznámka v souladu.
Krok 3: Další, analogový obvod
Mikrofon, který jsem pro tento projekt použil, je kondenzátorový elektretový mikrofon CMA-6542PF. Datasheet k tomuto mikrofonu je níže. Na rozdíl od většiny kondenzátorových mikrofonů tohoto typu jsem se nemusel starat o polaritu. Datový list ukazuje, že provozní napětí pro tento mikrofon je 4,5 - 10 V, ale doporučuje se 4,5 V a jeho proudová spotřeba je max. 0,5 mA, na což je třeba při návrhu obvodu předzesilovače dávat pozor. Pracovní frekvence je 20 Hz až 20 kHz, což je ideální pro zvuk.
Implementoval jsem jednoduchý návrh obvodu předzesilovače na prkénko a upravil vstupní napětí, přičemž jsem se ujistil, že přes mikrofon není více než 0,5 mA. Kondenzátor se používá k filtrování stejnosměrného šumu, který může být spojen s elektrickými signály (výstup), a kondenzátor má polaritu, takže nezapomeňte připojit kladný konec k výstupnímu kolíku mikrofonu.
Poté, co byl obvod dokončen, připojil jsem výstup obvodu k prvnímu analogovému vstupnímu pinu (AI0, pin 2) USB-6008 a připojil jsem uzemnění nepájivého pole k analogovému zemnicímu pinu (GND, pin 1). Připojil jsem USB-6008 k počítači pomocí USB a bylo na čase provést úpravy programu LabVIEW tak, aby přijímal skutečný analogový signál.
Krok 4: Čtení analogových signálů pomocí DAQ Assistant
Místo toho, abych použil SoundFileSimpleRead. VI a HarmonicDistortionAnalyzer. VI, použil jsem DAQ Assistant. VI a ToneMeasurements. VI k řešení analogového vstupu. Nastavení DAQ Assistant je poměrně jednoduché a VI vás provede jednotlivými kroky. ToneMeasurements. VI má na výběr mnoho výstupů (amplituda, frekvence, fáze), takže jsem použil frekvenční výstup, který udává základní frekvenci vstupního tónu (z DAQ Assistant. VI). Výstup ToneMeasurements. VI musel být převeden a vložen do pole, než mohl být použit ve strukturách případu, ale zbytek programování/indikátorů LabVIEW zůstal stejný.
Krok 5: Závěr
Projekt byl úspěšný, ale rozhodně zde bylo mnoho nedostatků. Když jsem provozoval tuner v hlučné třídě, bylo pro program velmi těžké určit, co je hluk a jaký tón se hraje. To je pravděpodobně způsobeno tím, že obvod předzesilovače je velmi základní a mikrofon je velmi levný. Když bylo ticho, program pracoval s dobrou spolehlivostí, aby určil notu, která se pokoušela hrát. Kvůli časové tísni jsem neprováděl žádné další změny, ale kdybych měl projekt opakovat, koupil bych si lepší mikrofon a strávil bych více času na obvodu předzesilovače.
Doporučuje:
DIY -- Jak vyrobit robot Spider, který lze ovládat pomocí smartphonu pomocí Arduino Uno: 6 kroků
DIY || Jak vyrobit robota Spider, který lze ovládat pomocí smartphonu pomocí Arduino Uno: Při výrobě robota Spider se člověk může naučit tolik věcí o robotice. Stejně jako vytváření robotů je zábavné a náročné. V tomto videu vám ukážeme, jak vyrobit robota Spider, kterého můžeme ovládat pomocí smartphonu (Androi
Ovládejte domácí osvětlení pomocí Google Assistant pomocí Arduina: 7 kroků
Ovládejte světla domu pomocí Google Assistant pomocí Arduina: (Aktualizace od 22. srpna 2020: Tento návod je starý 2 roky a spoléhá na některé aplikace třetích stran. Jakákoli změna na jejich straně může způsobit, že tento projekt nebude fungovat. Může, ale také nemusí. nyní pracuje, ale můžete jej sledovat jako referenci a upravovat podle
Přepínání světel ovládané pomocí mrknutí očí pomocí brýlí na hlavu Shota Aizawa (My Hero Academia): 8 kroků (s obrázky)
Přepínání světel ovládané pomocí Eye-Blink pomocí gumových hlavic Shota Aizawa (My Hero Academia): Pokud čtete manga mé hrdiny akademie nebo sledujete anime mého hrdiny, musíte znát postavu jménem shota aizawa. Shota Aizawa, také známá jako Eraser Head, je profesionální hrdina a učitelka homeroom třídy U-Class 1-A. Shota's Quirk mu dává ab
Ovládejte Arduino pomocí chytrého telefonu přes USB pomocí aplikace Blynk: 7 kroků (s obrázky)
Ovládejte Arduino pomocí smartphonu přes USB pomocí aplikace Blynk: V tomto tutoriálu se naučíme, jak používat aplikaci Blynk a Arduino k ovládání lampy, kombinace bude prostřednictvím sériového portu USB. Účelem tohoto pokynu je ukázat nejjednodušší řešení vzdáleného ovládání vašeho Arduina nebo
DIY EKG pomocí Analog Discovery 2 a LabVIEW: 8 kroků
DIY EKG pomocí Analog Discovery 2 a LabVIEW: V tomto Instructable vám ukážu, jak si vyrobit domácí elektrokardiograf (EKG). Cílem tohoto stroje je zesílení, měření a záznam přirozeného elektrického potenciálu vytvářeného srdcem. EKG může odhalit velké množství informací o