Index of /~heha/basteln/PC/DMX-Steuerung

Icon  Name                    Last modified      Size  Description
[   ] dmx00.zip 2013-11-13 15:19 11K Windows-Testprogramm (16/32 bit) [   ] dmx64ch2.asm 2002-01-13 17:33 5.6K Quelltext für PIC-Mikrocontroller 16F84 [   ] dmx_pic.doc.gz 2002-01-13 17:50 6.4K Doku und Schaltplan [   ] dmx_pic.psz 2002-01-13 17:50 9.5K Als PDF [IMG] donglepi.jpg 2001-05-28 22:56 15K Abbildung (Foto) [DIR] ezusb/ 2004-09-16 20:23 - [DIR] uDMX/ 2012-02-20 17:04 - Meine Version von uDMX: miniaturisiert mit ATmega88-20MU
Nachtrag: Der Nachbau dieses Gerätes ist so nicht 100%ig empfehlenswert, weil es keine direkte Softwareunterstützung gibt. Der Schaltplan ist OK, zur Mikrocontroller-Software (Firmware) siehe unten.

Hintergrund: Ich habe das Gerät für jemand anderes aufgebaut und wusste nichts von der Existenz von DMX-Steuerprogrammen, wie DMXControl und FreeStyler. Ich habe auf diese Weise ein eigenes LPT-Protokoll „erfunden“, welches möglicherweise nicht zum verbreiteten DMX-Dongle kompatibel ist. Der Vorzug, aus dem PIC-EEPROM die letzten Einstellwerte auslesen zu können ist damit praktisch null und nichtig. Das angegebene Pascal-Programm ist auf diese Firmware zugeschnitten, es lohnt sich aber angesichts hochentwickelter und kostenloser DMX-Steuerprogramme nicht, da weiterzuprogrammieren.
Der angegebene Schaltplan ist zum DMX-Dongle 100 % abwärtskompatibel, so dass in der angegebenen Schaltung auch die DMX-Dongle-Firmware läuft. Der Resetknopf ist unwichtig. Zur Programmierung der PIC muss man einen PIC-Brenner haben oder basteln.

Für die oben genannten DMX-Programme zur selbst geschriebenen Firmware passende DLLs zu schreiben ist mir nicht möglich, weil ich weder die selbst aufgebaute DMX-Steuerung noch irgendein DMX-Gerät besitze! Ich konnte nicht einmal ein Foto von meinem Gerät machen, es sieht aber etwa so aus wie der oben genannte DMX-Dongle. Möglicherweise läuft meine Firmware mit dem einen oder anderen DMX-Programm ohne Änderung, aber genau das kann ich nicht testen! Deshalb sicherheitshalber die Firmware vom DMX-Dongle benutzen.

Änderungsvorschlag: Aus heutiger Sicht würde ich das Gerät mit einer etwas billigeren PIC (PIC16F627, Reichelt 3,30 €) und ohne Quarz (interner RC-Oszillator) aufbauen. Mit dieser neuen PIC sind außerdem 224 Kanäle steuerbar (statt wie bisher 64). Es kann sein, dass die Firmware auch ohne Schaltungsänderung etwas angepasst werden muss. Zur Stromversorgung kann man die 5 V aus einer USB-Buchse beziehen.

Zur Perfektion ist der Transceiver 75176 (Reichelt 1,10 €) oder MAX485 (als Muster vom Hersteller Maxim kostenlos) mit einem schnellen Optokoppler sowie DC/DC-Wandler galvanisch vom Computer zu trennen. DC/DC-Wandler gewinnt man von alten Netzwerkkarten.

Viel besser:

Mit neuer Firmware und 100%iger DMX-Dongle-Kompatibilität würde ich eher zum ATmega8 (Reichelt 2,75 €, mit 512 Kanälen) tendieren, weil man so die Programmierschnittstelle mit dem Parallelport mechanisch vereinen kann und kein(!) Programmiergerät braucht. (Auf diesen Trick ist man beim AVR DMX-512 Dongle leider nicht gekommen.) Mit seiner richtigen seriellen Schnittstelle sowie der vorhandenen RAM-Kapazität lässt es sich auch gleichzeitig im Horch-Modus betreiben (Bus-Analyse; Slave-PC-Steuerung).

Noch besser:

Wirklich „perfekt“ sind DMX-Umsetzer am USB! Wegen Wegfall der Stromversorgung und Verfügbarkeit der Schnittstelle. Mit Low-Speed ohne weitere Hardware direkt am ATmega8 machbar, sozusagen als Dual-Interface, sowohl parallel als auch USB! (Der ATmega8 hat genug Beine für beide Interfaces. Allerdings ist es nicht(?) möglich, gleichzeitig USB und DMX zu bedienen; das betrifft nur den optionalen Horch-Modus.)

Die Schnittstelle ließe sich zu USBDMX kompatibel halten, weil diese hier sehr schön dokumentiert sowie für Low-Speed geeignet ist.

Wenn jemand Interesse hat, bei Chemnitz wohnt, ein DMX-Gerät hat und ein solches Gerät bauen und ausprogrammieren will, bitte bei mir melden!
Zudem gibt es eine Reihe kommerzieller Produkte, wie bspw. USDMXGEN oder JPK-USB.