Budiž MIDI světlo aneb… - V hlavní roli USB
Vítám vás u dalšího „midisvětelného“ dílu. Jen pro úplnost dodám, že první díl vyšel již v červnovém Muzikusu. Vlivem toho si o mně můžete myslet, co chcete.
Jak jsem slíbil, budeme pokračovat trochou teoretického povídání o propojení jednotlivých světelných součástí, ze kterých se skládá naše světelná MIDI sestava. Abychom v tom měli nějaký pořádek, začneme u počítače a postupně se propracujeme až ke světlům. Dnes tedy popíšeme cestu signálu z PC, tedy příslušné softwarové aplikace, která generuje MIDI zprávy k našemu „světelnému“ zařízení. Světelným zařízením mám na mysli jednoprocesorový počítač s příslušenstvím, o kterém jsem se bavil v závěru minulého dílu a který je nutný pro zpracování MIDI zprávy jako vstupního signálu na příslušnou napěťovou úroveň, která je pak signálem výstupním.
Jelikož jako hlavní hudební softwarovou aplikaci používám Cubase SX, budu se nadále bavit jen v rámci Cubase. Pro testování světel přes další hudební software jsem bohužel neměl příslušný časoprostor, takže jsem se ani nepokoušel zpracovávat rozdíly mezi těmito aplikacemi, co se týče potřebných nastavení.
A nyní již... začněme od konce, aby to bylo srozumitelnější. Myšleno ze strany počítače, protože to je první, co uživatel určitě má, pokud ho tato problematika zaujala. V počítači je Cubase a ten zcela automaticky detekuje a načítá do svých registrů vše, co audiem respektive MIDI jen trošku zavání. Naše zařízení díky tomu rozpozná okamžitě. Otázka tedy zní, jak to, že je naše zařízení tak snadno k poznání.
USB protokol
Odpovědí je tento „maličký“ zázrak mezi protokoly. V našem případě se jedná o jeho dvě „odnože“. Odnoží budeme mít na mysli jednotlivé specifikace pro různé druhy (typy) zařízení, která komunikují pomocí USB protokolu.
... poněkud obecněji
Základem pro naši MIDI specifikaci v rámci USB propojení je samozřejmě obecná norma USB verze 2.0, na kterou navazuje norma USB Audio pro audio zařízení a z ní po té vychází samotná USB MIDI norma. Tato je v současnosti hojně využívána, protože přenos MIDI informací přes USB je efektivnější, než přenos MIDI informací pomocí klasických konektorů DIN. DIN zabírají příliš mnoho místa jak na skříních PC, tak na externích zvukových kartách, které se využívají nejčastěji v kombinaci s notebooky. Umístnění DIN konektorů na notebooky je kvůli velikosti zcela vyloučeno.
USB (Universal Serial Bus) má hvězdicovou charakteristiku o maximálně sedmi úrovních. Základem komunikace je kořenový (root) USB uzel (hub), který vyzývá všechny kolem sebe ke komunikaci. Může být připojeno maximálně sto dvacet sedm zařízení v sedmi úrovních. Na root USB hub můžou být připojeny další huby anebo samotná zařízení, která se ovšem v anglosaské terminologii ve většině případů označují jako functions. Předcházející věta je pouze informací pro ty, kteří hodlají studovat USB normu v anglickém originále, aby neměli problémy s příslušnou terminologií.
V rámci USB propojení jsou definovány tzv. endpoints - koncové body, které mají v každém USB zařízení svou funkčnost. Celkový maximální počet endpointů - koncových bodů - je patnáct. Veškerá komunikace na USB sběrnici je v rámci reálného času seřazena do tzv. rámců (frames) dlouhých jednu milisekundu. Každý rámec může obsahovat mnoho transakcí různých zařízení a různých endpointů (koncových bodů) daných zařízení.
Napájení připojených zařízení je možné přímo ze samotné USB sběrnice. USB specifikace přesně stanovuje maximální možný odběr proudu zařízením na 100 mA. Energeticky náročnější zařízení musí používat externí zdroj napájení.
Ve chvíli, kdy je zařízení připojeno ke sběrnici, USB host (počítač) zahájí proces zvaný enumerace (identifikace). Během tohoto procesu host identifikuje zařízení, získá potřebné konfigurační informace a nakonec nastaví požadovanou konfiguraci zařízení.
Zařízení připojená ke sběrnici mohou být zcela specifická a vyžadující specifické ovladače, nebo mohou patřit do skupin USB zařízení, jako například USB myši nebo USB externí disky, nebo dokonce v našem případě velmi důležité externí zvukové karty připojované přes USB. Tyto třídy definují některé vlastnosti a chování zařízení, takže pro různá zařízení hlásící se ke stejné skupině zařízení, může systém použít stejný ovladač.
USB standard pro audio zařízení
Jak vyplývá ze zvolené tématiky, je USB svou přenosovou kapacitou zcela dostačující i pro přenos audio dat, potažmo MIDI informací. Audio zařízení mají v rámci protokolu USB svou vlastní specifikaci požadovanou pro přenos audio dat. Ve většině případů jsou jednou ze specifikací daného zařízení, protože jsou vždy kombinovány se zařízeními jiného než audio USB standardu. Mezi taková zařízení patří například ovladač pro externí CD/DVD mechaniku, kdy je nutno popsat toto zařízení pomocí audio a video USB standardu a také jako velkokapacitní datové úložiště. Tedy v tomto případě, jako ve většině takových specifikací pro dané zařízení, je audio USB standard pouze jednou ze součástí daného zařízení. Poněkud jiná situace je v případě MIDI zařízení. MIDI USB standard je rozšířením USB Audio standardu.
USB standard pro MIDI zařízení
USB popis třídy pro MIDI zařízení je jednou ze součástí USB Audio normy. Děje se tak, pokud je USB zařízení schopno přijímat respektive odesílat MIDI zprávy. Jak již bylo zmíněno výše v kapitole, je nutno specifikovat rozhraní na interface úrovni daného zařízení. USB MIDI zařízení bude mít tedy dvě rozhraní (interface). Jedním rozhraním je audio, druhým pak MIDI. Toto je samozřejmě nutno popsat, tak aby se zařízení bez problémů identifikovalo do systému a především bylo viditelné pro aplikace, které jsou schopny komunikovat přes MIDI protokol. V našem případě se jedná o aplikaci Cubase SX 2. Znalost všech těchto informací nám dovoluje na závěr konstatovat, že naše zařízení se právě identifikovalo do systému, jmenuje se USB MIDI Lights Device a náš počítač jej vidí jako USB Audio MIDI zařízení. V Cubase pak můžeme bez problémů na požadovaném MIDI kanálu namapovat toto zařízení jako výstupní pro přehrávání MIDI událostí daného kanálu.
Vše, co jsem zde nastínil, je možno si samozřejmě podrobně prostudovat na oficiálním webu USB normy a takto vzdělaný jedinec pak může z původně zcela „čistého“ jednočipového počítače vytvořit USB MIDI Lights Device, o kterém si budeme vyprávět v dalším díle věnovaném právě tomuto zařízení. A také se podíváme na transformační článek, který nám ze vstupního TTL napětí vytvoří klasické síťové napětí s hodnotou 220 voltů.
USB a FireWire tak hojně používané v komerční sféře jako standardy pro propojení různých digitálních zařízení jsou pro využití v průmyslu zcela nevhodné. Jsou totiž pro tyto účely nestabilní a poruchové.
TTL = tranzistor to tranzistor logic. Tranzistorově-tranzistorová logika. Tedy polopaticky - výpočetní obvody v počítači tvořené z převážné většiny tranzistory. Pracovní napětí těchto obvodů (mikroprocesorů) je v rozsahu 0-5 voltů.
Víte, že už je na světě USB 3.0? Jeho teoretická přenosová rychlost je 5 Gbit/s. Místo dvou datových vodičů jsou čtyři a celkový počet vodičů v kabelu normy USB 3.0 se tak zdvojnásobil ze čtyř na osm. S USB 2.0 by mělo být samozřejmě kompatibilní. Bohužel, kvůli počtu vodičů, budou jiné konektory. Takže uvidíme, jaká bude skutečná zpětná kompatibilita.