Projekt Theremin
generátor a modulátor tónů pomocí infračervených čidel, vizualizace vzdálenosti od čidel led diodami – VRNI, LS 2015/2016
Obsah
Členové projektu
Daniel Sýkora, Studia nových médií, sykora.dan@gmail.com
Vladimír Anděl, Studia nových médií, va@vladimirandel.cz
Motivace vzniku projektu a jeho význam
Theremin je elektronický hudební nástroj, na který se hraje bez doteku. Namísto, abychom sestrojili technologicky podobný nástroj vytvářející elektrické kmity dvou nesynchronizovaných oscylátorů, jejichž sobě podobné tóny spolu interferují (viz zázněj), jsme se chopili využítí obdobného principu ovládání bezdotykově, ve zjednodušené formě.
Projekt jsme si zvolili pro jeho jednoduchou interpretaci fyzického pohybu v prostředí. Kolem nás se vyskytuje mnoho elektronických senzorů a čidel, které jsou nám mnohdy neviditelné, jejich funkčnost obdobně (využití infračerveného světla, které lidské oko není schopno vnímat). Zábavnou formou transformujeme pohyb lidského těla na zvukovou a vizuální složku. Uživatel našeho výstupu je schopný pomocí končetin zasahovat do zorného pole infračervených čidel a tím ovlivňovat funkčnost v reálném čase - ihned dochází ke zpětné vazbě na jeho pohyb.
Použitý materiál
- 1x Arduino UNO (+ propojovací USB A-B kabel)
- 2x Infračervené čidlo SHARP 2Y0A21
- 1x Breadboard (nepájivé pole)
- 1x Reproduktor
- 3x LED
- 1x Potenciometr
- Cca 25x propojovací kabel
- 1x Box z tvrdého kartonu
- 1x Powerbanka
Použitý software
- Arduino IDE 1.6.9
- Atom či jiný textový editor
== Odkazy na knihovnu arduina a vlastní zdrojový kód ==
- Zdrojový kód
* ve formátu ino * ve formátu rtf
== Popis vývoje a konečná verze vlastního produktu
==
Pro vstupy, které následně generují zvuk, jsme využili dva optické senzory Sharp IR, které jsou schopny detekovat vzdálenost přibližně jednoho metru od samotného senzoru. Každý senzor má přitom jinou funkci. Senzor na levé straně s přibývající vzdáleností ruky od senzoru plynule zvyšuje frekvenci zvuku, tedy jeho výšku, zatímco senzor na straně pravé reguluje rychlost opakování daného tónu. Zvukový výstup zajišťuje jednoduchý reproduktor, do kterého je vpouštěn mono signál. Intenzita zvuku je regulovatelná potenciometrem. Pro vizuální znázornění zvukového výstupu jsou vyvedeny tři led diody, které reflektují oba možné vstupy, tedy jak výšku tónu, kdy zelená dioda je tón nejnižší a s přibývajícími frekvencemi se přes diodu žlutou rozsvítí konečně i dioda červená, tak frekvenci opakování tónu, což je znázorněno blikáním diod. Tyto komponenty jsou skrz breadboard vedeny do Arduina UNO, které je naprogramováno výše zmíněným kódem. Veškeré prvky jsou umístěny v tmavém boxu z tvrdého kartonu. Napájení je zajištěno power bankou, takže zařízení je soběstačné a mobiní.
Zhodnocení
Při použití tohoto typu infračerveného čidla jsme nedbali na jeho zorné pole. Umístění do boxu ukázalo, že je problematické umístění zařízení - čidla snímají všechny objekty ve svém zorném poli, a to i plochu, na které zařízení stojí. Je tedy potřeba pozorně vybírat prostor umístění. Škála interpretovaných tónu je příliš široká a je velmi obtížné úmyslně zahrát konkrétní melodii. Další revize vyžaduje namapovat všechny vzdálenosti objektu od čidla a vytvořit přesně definovaná pole, konkrétní zvukové tóny, obsahující limitní vzdálenosti.
Bylo velmi přínosné pracovat v týmu na projektu, který zahrnuje open hardware. Mikrokontroléry jsou svou variabilitou a použitelností vhodným entry levelem pro práci s hardwarem. Zejména pak arduino, které integruje serial port pro komunikaci, GPIO sběrnici pro analogovou a digitální komunikaci s periferiemi a speciální IDE software s velmi jednoduchým a přehledným rozhraním. Open hardware je vázán i na početnou komunitu lidí, která je velmi vzručná v DIY a v programování. S těmito dispozicemi je pak jednoduché vstoupit do tohoto světa: S využitím již hotových knihoven a příkladů použití různých funkcí, zpracovaných problematik a kvalitní dokumentace (zejména na webu arduino.org a DIY platformě instructables.com) lze vytvořit mnoho kvalitních projektů, které mají reálné využití.