Obsah:

Hudební digitální rozhraní: 6 kroků (s obrázky)
Hudební digitální rozhraní: 6 kroků (s obrázky)

Video: Hudební digitální rozhraní: 6 kroků (s obrázky)

Video: Hudební digitální rozhraní: 6 kroků (s obrázky)
Video: 95,6% Neuhodne co to je za Filmovou Postavu 2024, Listopad
Anonim
Hudební digitální rozhraní
Hudební digitální rozhraní

Vítejte všichni, Rád bych vám ukázal své vlastní hudební digitální rozhraní. Dokázal jsem to během studia technického zvuku, toto jsou mé výzkumné práce. Nejprve jsem se zeptal, jak mohu skládat hudbu bez DAW, s recyklovanými zásobami a možností samostatného přehrávání.

V tomto pokynu vás naučím, jak používat sériovou komunikaci k odesílání/přijímání informací o senzorech (analogových a digitálních) z Arduina do Raspberry pi směrem k softwarovému puredata pro spuštění zvuku.

Požadované materiály jsou:

x1 Malina PI3

x1 Ochranný kryt PI3

x1 Micro SD (32G)

x1 Arduino UNO

x1 Senzor IR Sharp GP2Y0E02B

x1 Breadbord

x1 Testovací měřidlo desky (0,2)

x28 Odpor 10MΩ

x2 Odpor 1,8 kΩ

x1 Odpor 10 kΩ

x20 koncová oka Muž/Žena

x1 Nosič pájky

x1 cínová cívka (1 metr)

x1 Páječka

x25 Ohebné popruhy Muž/Muž

Krok 1: Senzory

Senzory
Senzory
Senzory
Senzory
Senzory
Senzory

Použil jsem 4 piezoelektrika pocházející z dálkového ovladače „Guitar Hero“Harmonix XBOX 360. Použil jsem tlačítko zapnout/vypnout, protože magnetický spínač jazýčkového spínače ručního pedálu byl vypnutý.

Použil jsem IR senzor Sharp GP2Y0E02B. U všech těchto senzorů jsem provedl vytahovací sestavu pro efektivní provoz…

Takže jsem empiricky našel hodnotu odporu pro senzor tlačítka a IR senzor. Nicméně jsem testoval piezoelektrikum, abych poznal jeho plný rozsah a požadovanou hodnotu pevného odporu a aplikoval na 4 analogové senzory.

Krok 2: Pull-up Montage

Pull-up montáž
Pull-up montáž
Pull-up montáž
Pull-up montáž
Pull-up montáž
Pull-up montáž
Pull-up montáž
Pull-up montáž

Po testování piezoelektrika s napěťovým generátorem jsem nastavil hodnotu odporu na 7MΩ.

Vytáhnutí sestavy odporu tlačítka bylo 10 kΩ.

Pro infračervený senzor jsem použil dva odpory 1, 8 kΩ mezi příslušným napájecím napětím a SDA (data) a SCL (hodiny).

Buďte opatrní, protože tyto hodnoty odporu platí pro RTX Arduino UNO; něco, co byste měli vědět o impedančním vstupu Arduino: 10MΩ.

Pull-up sestřih můžete vidět na posledním obrázku tohoto kroku; Opravil jsem piezoelektrické popruhy v 0 1 2 3 piny na UNO, popruh na knoflíky ve 2 digitálních pinech, ale sdělil hodnotu na 6 pinech na UNO a IR senzoru v 4 pinech na UNO, všechny analogové vstupy Arduino Uno.

Krok 3: Kódujte Arduino

Aby byla zajištěna účinnost operace, testoval jsem odesílání/přijímání informací o čidlech do Arduina.

Soubory jsem vložil do popisu, ale najdete je v sekci příkladů programování Arduino Genuino, kromě infračerveného senzoru, protože není kompletní, změnil jsem několik informací v sekci „definovat“jako „posun“a změnil jsem výpočet měření tak, aby byl pravidelný ve vzdálenostních variacích. V kódu IR senzoru jste pravděpodobně viděli „Wire“. Skutečně jsem ke komunikaci použil protokol I2C. Zvu vás na protokol I2C, velmi zajímavé, můžete použít tento k přenosu v reálném čase všech digitálních senzorů, které chcete.

Krok 4: Oba Arduino Raspberry Serial Communication

Sériová komunikace Arduino Raspberry
Sériová komunikace Arduino Raspberry
Sériová komunikace Arduino Raspberry
Sériová komunikace Arduino Raspberry

Ano: D

Jak vidíte na prvním obrázku, odkaz Arduino-Raspberry je USB konektor.

Našel jsem způsob, jak přijímat informace ze senzorů přímo pomocí PureData Extented, který je nainstalován v Raspberry PI. Proč PureData Extended? Protože verze Vanilla nepoužívá stejnou knihovnu než aplikace v prostředí Raspbian.

Takže spusťte StandardFirmata v Arduino Genuino, abyste opravili I/O a cenové variace správným způsobem!

Chcete -li získat zpět informace o hodnotě v Raspberry PI, existují 2 protokoly: Firmata a Msg.

Firmatu jsem si vybral z jednoho důvodu, bylo jednodušší získat informace v PureData přes patch Pduino, jedno prostředí.

Zvu vás k objevení zprávy, pokud používáte protokol OSC.

Krok 5: Byla přijata oprava PureData

Byla přijata oprava PureData
Byla přijata oprava PureData

Po několika týdnech kódování na Genuinu se mi skutečně podařilo získat všechny informace o mém senzoru na jedné stránce, což díky Pduino, opravě v Puredata, extra librairies navíc, umožnilo vidět variace v reálném čase.

Od tohoto kroku se již nedotýkáme kódu Arduino. Informace o hodnotě jsou čitelné.

Jak jsem si všiml v kroku 3, obdržel jsem informace z digitálního tlačítka v 6pólovém analogu, bylo snadné vidět efektivní fungování komunikace. Vše v jednom řádku.

Krok 6: Vývoj PureData

Vývoj PureData
Vývoj PureData
Vývoj PureData
Vývoj PureData
Vývoj PureData
Vývoj PureData
Vývoj PureData
Vývoj PureData

PureData je specifický jazyk a musíte trávit svůj volný čas, abyste uspěli v pěkném patchworku.

Některé opravy PureData budou k dispozici na GitHubu.

Doufám, že to, co jsem zde napsal, vám pomohlo začít s vlastním projektem, který je mi blízký.

Doporučuje: