Návod na stavbu Interface USB - DMX512
 

6.1           Rozhraní USB – DMX512

Pro komunikaci s USB lze využít již hotových obvodů např. od firem Future Technology Device Inc. (FTDI) Steer, W., A. [18], Prolific Technology Inc. (Prolific),  SigmaTel, Texas Instruments, Kawasaki a Semtech. Některé tyto obvody jsou již pro komunikaci s USB připraveny a jsou dostupné i jejich ovladače pro operační systém. Pro jejich použití tak není vyžadována znalost poměrně složitého USB komunikačního protokolu. Z celé řady těchto obvodů se nám nejvíce nabízí obvody FTDI, které jsou na našem trhu běžně dostupné a zřejmě i nejznámější také díky masivní kampani ASIX s.r.o.[19], která obvody v ČR distribuuje. Pro jejich volbu jsem se rozhodl také kvůli hojně dostupné dokumentaci jak na internetu, tak v knižní podobě [21]. Obvod, který bude potřeba, je typ FT232BM [21]. Jde o konvertor USB – UART s přenosovou rychlostí 300 Bit/s až 3 MBit/s a s dvouportovou vyrovnávací pamětí o velikosti 128 bajtů ve směru od PC k aplikaci a 384 bajtů směrem opačným. K dispozici je i plně hardwarové řízení přenosu - signály RTS, CTS, DTR, DSR, DCD a RI, a navíc signál TXDEN k řízení směru komunikace při spolupráci s konvertory úrovní EIA485.

 

6.1.1      Rozhraní USB – DMX512 s modulem UMS2

            Zapojení rozhraní USB-DMX512 vychází z doporučeného zapojení obvodu FT232BM doplněného o obvod SN75176 zajištující správné napěťové úrovně pro standard EIA485 a je uvedeno na obrázku 6.1. Při konstrukci prototypu bylo využito hotového modulu UMS2 (U2) [22] od firmy ASIX s.r.o. Tento modul představuje doporučené zapojení obvodu FT232BM zapájeného do patice DIL 28. Tím se složitost celého zapojení velice zjednodušila a nebylo potřeba složitě pájet součástky SMD. Odpory R2,R3,R4 jsou připojeny pro ochranu obvodu. Zařízení však pro zkušební účely pracuje i bez těchto odporů a výstup z obvodu SN75176 (U1) je také odolný proti zkratu. Odpor R5 zajišťuje impedanční přizpůsobení sběrnice na straně vysílače. Dioda D1 signalizuje blikáním vysílání nebo příjem obvodu FT232BM s frekvencí závislou na frekvenci posílaných paketů.

Obrázek 6.1 – Rozhraní USB-DMX512 s modulem UMS2

Pro řízení směru komunikace v obvodu SN75176 jsem volil záměrně vývod RTS místo TXDEN z důvodu zpětné kompatibility s otevřeným projektem ENTTEC [23], a tím i možnosti využívat nemalou škálu programů vytvářených k tomuto projektu. Rozpis součástek pro rozhraní USB – DMX512 s modulem UMS2 je v tabulce 6.1. Schéma a popis modulu UMS2 je v příloze B.

Značení

Hodnota

U1

SN75176

U2

modul UMS2

D1

LED

R1

390 R

R2

10 R

R3

10 R

R4

10 R

R5

120 R

J1

konektor USB typ B

J2

konektor XLR zásuvka

Tabulka  6.1 - Rozpis součástek

 

 

6.1.1      Rozhraní USB – DMX512 jako samostatný modul

Na obrázku 6.2 je schéma celého v naší práci nepostradatelného rozhraní USB – DMX512, navrženého pokud možno s SMD součástkami. Je zde navíc kondenzátor C5 a tlumivka FB1 pro filtraci napájecího napětí. Mezi hostitelským a klientským rozhraním se může indukovat šum, na který je USB kontrolér citlivý. Proto je zde možnost připájet k datové cestě dva filtrační kondenzátory C10 a C11, které zlepšují šumovou imunitu. Plošný spoj tohoto rozhraní je uveden v příloze D. Důležitá je ještě práce s pamětí EEPROM. Obvod sice funguje i bez této paměti, ale nelze pak upravit identifikační údaje zařízení. Paměť EEPROM musí mít organizaci 16 bitů a před osazením je vhodné ji přemazat. Nepřemazaná paměť může zapříčinit, že se celé zařízení nebude v OS Windows XP detekovat, a nepůjde tedy ani použít konfigurátor paměti EEPROM. V tomto případě, pokud je již EEPROM zapájená pevně v modulu, se naskýtá ještě jedna trochu násilnější možnost, jak donutit obvod ke komunikaci. Je potřeba při připojování na chvíli podržet (např. pinzetou) piny 1 a 2 (CS a SK) na vývodech EEPROM (U2) ve zkratu. Tyto vývody jsou v klidovém stavu v úrovní L. Obvod se tak přihlásí v defaultním režimu a pak lze již paměť EEPROM konfigurovat. K načtení a nastavení identifikačních údajů lze využít program MProg 2.8a - EEPROM Programming Utility[24] od FTDI, nebo EFSProg [20].

 

Obrázek  62 – Rozhraní USB – DMX512

 

6.1.2      Softwarové ovladače

Komunikace mezi aplikací a hardwarem může být zajišťována buď Virtual COM Port (VCP) ovladači [21], nebo přímými WDM ovladači (D2XX)  REF _Ref136262896 \h [21]. Aplikace využívající přímé ovladače používá knihovní funkce FTD2XX.DLL, pomocí kterých přistupuje přímo k obvodům FTDI232/245. Pouze při použití přímých ovladačů je možné programovat externí paměť EEPROM, ve které jsou uloženy některé důležité inicializační informace obvodu FTDI. Tyto WDM ovladače jsou použity pro rozhraní USB-DMX512 a jejich architektura je na následujícím obrázku 6.3 převzatém z publikace [20].

 

Obrázek  6.3 – Ovladače obvodů FTDI

 

V rámci projektu Enttec Open DMX USB Interface [23] byly vytvořeny také ovladače pro Linux [24] a Mac OS [25]. Seznam součástek pro rozhraní USB – DMX512 s označením jejich pouzder je uveden v tabulce 3.1 a schéma plošného spoje je uvedeno v příloze D.

 

Značení

Hodnota

Pouzdro

 

Značení

Hodnota

Pouzdro

C1

100 nF

SMD 1206

 

R1

10k

SMD 1206

C2

100 nF

SMD 1206

 

R2

2k2

SMD 1206

C3

10 uF / elektrolit

4 x 5, RM=1,5

 

R3

470 R

SMD 1206

C4

33 nF

SMD 1206

 

R4

27 R

SMD 1206

C5

10 nF

SMD 1206

 

R5

27 R

SMD 1206

C6

100 nF

SMD 1206

 

R6

1k5

SMD 1206

C7

100 nF

SMD 1206

 

R8

10 R

SMD 1206

C8

27 pF

SMD 1206

 

R9

10 R

SMD 1206

C9

27 pF

SMD 1206

 

R10

10 R

SMD 1206

C10

47 pF

SMD 1206

 

R11

120 R

SMD 1206

C11

47 pF

SMD 1206

 

FB1

100 uH

0312

U1

FT232BM

LQFP-32

 

J1

konektor XLR

XLR-508/JP

U2

93C46

SO-8

 

CN1

konektor USB-B

USB-1X90B PCB1

U3

SN75176B

SO-8

 

 

 

 

 Tabulka  6.2 – Seznam součástek pro rozhraní USB - DMX512

 

Pro připojení modulu je použit standardní USB propojovací kabel, kde je na jedné straně kabelový konektor typu A určený pro připojení k počítači a na straně druhé je kabelový konektor typu B určený pro připojení modulu. Pohled na zapojení těchto konektorů je na obrázku 6.4.

 

1

USB +5V

2

USB data -

3

USB data +

4

USB GND

 

Obrázek  6.4 – Zapojení USB konektorů

 

Dodatek: rozhraní u PC vhodné pro DMX512

Na PC lze  běžně využít rozhraní, jakými jsou paralelní port (LPT) , sériový port (COM popř. ttyS), MIDI, USB, Ethernet. Jelikož jde o sériový přenos, jeví se jako nejvhodnější sériový port nebo MIDI, bohužel však nedosahují potřebné rychlosti 250 kBit/s. Přesto však tyto převodníky existují. Využívají mikroprocesoru, který vícekrát za sebou posílá stejná data nebo posílá pouze menší datovou část paketu. Paralelní port je již  svojí rychlostí dostatečný, ale pouze za předpokladu, že se bude využívat více než jeden datový výstup, a proto i zde je potřeba další obvod pro převod z paralelně posílaných na sériově posílaná data. Navíc toto počítačové rozhraní je již na ústupu a ne vždy ho nalezneme např. na noteboocích. Také fakt, že běžně nebývá toto rozhraní přítomno více než jedenkrát, by mohl omezovat  používání jiného zařízení či více těchto modulů současně. Dalším v této oblasti důležitým rozhraním  je Ethernet, kterým se někdy přímo nahrazuje protokol DMX512, neboť umožňuje obousměrnou komunikaci, má zabezpečení proti rušení a dosahuje daleko vyšší rychlosti. Přesto se však stále nejvíce používá protokol DMX512, a technika s ním pracující je i cenově dostupnější. Převodník mezi Ethernetem a protokolem DMX512 by byl jistě zajímavý, avšak není tak častým rozhraním, jako je dnes USB, a pro účel vizualizace hudby v reálném čase by Ethernet nic víc nepřinesl.

 

Seznam použité literatury

[1] WWW stránky institutu USITT: http://www.usitt.org
[2] WWW stránky firmy Texas Instruments, Inc.: http://www.ti.com
[3] WWW stránky firmy Maxim Integrated Products, Inc.: http://www.maxim-ic.com
[4]  WWW stránky firmy Texas Instruments, Inc.: http://www.burr-brown.com
[5] WWW stránka věnovaná EIA485: http://www.maxim-ic.com/appnotes.cfm?appnote_number=763&CMP=WP-1
[6] WWW stránky firmy American DJ Supply, Inc.: http://www.americandj.com 
[7] Časopis Amatérské Radio 11/2005, nebo WWW stránky ChaN: http://elm-chan.org
[8] Matoušek, R.: Analýza hudby - diplomová práce, ČVUT FEL v Praze, 2000
[9] Duška, S.: Vizualizace Hudby - diplomová práce, ČVUT FEL v Praze, 2002
[10] Šnorek, M.: Analogové a číslicové systémy,  Vydavatelství ČVUT, Praha 1999
[11] WWW stránky firmy Firelight Technologies, Pty, Ltd.: http://www.fmod.org
[12] WWW stránky firmy Reliable Software, LLC.: http://www.relisoft.com
[13] WWW stránka o zpracování FFT: http://www.codeproject.com/audio/waveInFFT.asp
[14] WWW stránky firmy Un4seen developments: http://www.un4seen.com
[15] WWW stránky projektu kX: http://kxproject.lugosoft.com
[16] WWW stránky YOV408 Programming Resources: http://www.yov408.com , http://www.yov408.com/html/codespot.php?gg=36
[17] Steer, W., A.: WWW stránka o Wave I/O in Windows, http://www.techmind.org/wave/
[18] WWW stránky firmy Future Technology Devices International Ltd.: http://www.ftdichip.com
[19] WWW stránky firmy ASIX, s.r.o.:  http://www.asix.cz
[20] Matoušek, D.: USB prakticky s obvody FTDI – 1. díl, nakladatelství BEN, Praha 2003
[21] WWW stránky firmy Future Technology Devices International Ltd.: http://www.ftdichip.com/Products/FT232BM.htm
[22] WWW stránky firmy ASIX, s.r.o.: http://www.asix.cz/a6ums2.htm
[23] WWW stránky firmy ENTTEC Pty. Ltd.:http://www.enttec.com
[24] WWW stránka, Erwin Rol, ovladač FTDI pro Linux http://www.erwinrol.de/index.php?opensource/dmxusb.php
[25] WWW stránka s ovladačem FTDI pro MAC OS: http://www.akustische-kunst.org/maxmsp/download/dmxusb-1.0test2.sit
[26] WWW stránky firmy Atmel Corp.: http://www.atmel.com
[27] WWW stránka s programátorem SP12: http://www.xs4all.nl/~sbolt/e-spider_prog.html
[28] WWW stránky s programátorem AVRDUDE: http://www.bsdhome.com/avrdude
[29] WWW stránka, Ústav radioelektroniky, FEKT VUT v Brně: http://www.urel.feec.vutbr.cz/EncyklopedieEMC/index.php?soubor=4.3.1.htm
[30] WWW stránky VUT, UREL: http://www.urel.feec.vutbr.cz
[31] WWW stránky firmy Almeto, s.r.o.: http://www.intermix.cz/almeto
[32] WWW stránky firmy GoldWave Inc.: http://www.goldwave.com
[33] WWW stránky firmy Soundlight, The DMX Company: http://www.soundlight.de/techtips/dmx512/dmx512.htm
[34] Vlachý, V.: Praxe zvukové techniky, Vydavatelství Muzikus, Praha 1995
[35] Corera A., Fraser, S., McLean, S., Kumar, N., Robinson, S., Sarang, G., Ventile, S.: Visual C++ .NET, Computer Press, a.s., Brno 2003
[36] Chalupa, R.: 1001 tipů a triků pro Visual C++, Computer Press, a.s., Brno 2003
[37] Katalog firmy GM electronic, s.r.o., Praha 2006
[38] Katalog firmy GES electronic, s.r.o., Praha 2003
[39] Vladimír, V.: Mikrokontroléry ATMEL AVR - popis procesorů a instrukční soubor, nakladatelství BEN, Praha 2003