232DMX 50

 

Beschreibung

232DMX ist ein RS232(V.24) nach DMX  Konverter auf Basis des  ATMEL AVR Controllers AT90S2313. Er ist in der Lage mit Pufferung der Daten 50 DMX Kanäle zu senden. 232DMX ist so konfiguriert das er  ca. 40 DMX Rahmen /Sekunde sendet. Weiterhin ermöglicht er eine einfache  Programmierung über eine serielle Programmierschnittstelle, deren Hardware schon komplett in die Schaltung integriert ist.     

 

 

 

Kurze Übersicht der Eigenschaften

 -  50 Kanäle voll gepuffert

 -  Anschluss über RS232 mit  DTR/DSR Flusskontrolle  Geschwindigkeit 115200 Baud

 -  Programmierbarkeit über  COM Port (mittels PONYPROG)

 -  DLL zum einfachen Einbinden von  232DMX in  Programme

 - simples Befehlsformat

 - interne Funktionen arbeiten  nach einem  festen Zeitregime

 - Treiber für DMXControl

 

 

Die Funktionsweise

Die Übertragung der Daten zwischen PC und 232DMX erfolgt asynchron mit einer Baudrate von 115200 Baud  mit  DTR/DSR Quittierung. Die Verwendung der Quittierung  hat folgenden Grund. Der Konverter enthält im RAM einen Ausgabepuffer der die gespeicherten Daten für den DMX Ausgang enthält. Dieser Buffer wird  alle 25ms als DMX Paket gesendet. Während dieser Zeit wird dem PC mittels Quittierung angezeigt, das der Konverter nicht in der Lage ist eingehende Daten zu verarbeiten. Somit wird einerseits  Datenverlust vermieden und andererseits kann die Sendung des DMX Pakets  immer mit einem konstanten Timing erfolgen. Für die eingehenden Daten wiederum existiert ein separater Puffer der erst nachdem er komplett  gefüllt ist in den Ausgabebuffer umkopiert wird.

Nach dem Anschalten des Konverters  blinkt die LED und zeigt somit an das 232DMX bereit ist Daten vom PC zu empfangen. 232DMX befindet sich jetzt im Stoppmodus d.h. erst nach Senden des Startkommandos beginnt er mit der Sendung von DMX - Rahmen. Bis zum ersten kompletten Datenpaket vom PC sendet der 232DMX für alle 50 DMX Kanäle  den Wert 0x0. Wenn das Datenpaket vom PC komplett ist, sendet der  Umsetzter  den Werte 0xAA zum PC als Quittierung. Ist eine DMX Übertragung beendet sendet 232DMX den Wert 0x55 zum PC. 

 

Ansteuerung von 232DMX

1. direkte Ansteuerung

Um Daten zwischen PC und 232DMX übertragen zu können, muss der COM Port mit folgenden Parametern initialisiert werden.

115200 Baud , 8 Daten 1 Stoppbit keine Parität,  DTR/DSR Fußkontrolle , 100ms Timeout

232DMX besitzt ein simples Befehlssystem bestehend aus grundsätzlich 3  1 Byte Befehlen, DMX_ON, DMX_OFF, DATA. Die Übertragung der Datenbytes geht recht einfach von statten. Es wird der Befehl Daten gesendet danach folgen ganz einfach Byte für Byte die einzelnen Werte für die Kanäle bis alle Kanäle übertragen sind.  Der Vorteil dieser Herangehensweise ist, das letztendlich bis auf den Startcode keine weiteren Daten außer  wirklich nur die reinen Nutzdaten zwischen PC und 232DMX laufen. Zu beachten ist aber, das nach dem Befehl Daten unbedingt alle 50 Kanalwerte gesendet werden müssen. Jede abgeschlossene Datenübertragung wird mit dem Wert 0xAA vom 232DMX quittiert.   

Befehle:

   0F0H   =  DMX_ON

   0F1H   =  DMX_OFF

   0FFH   =  DATA (es müssen Befehl + 50 Bytes Daten  gesendet werden)  

  

2.  Ansteuerung über die Bibliothek if32.dll

Die Bibliothek if32.dll vereinfacht die Ansteuerung von  232DMXs erheblich, so das er leicht in eigene Programme eingebunden werden kann. Die Bibliothek kontrolliert die komplette Datenübertragung zwischen PC und 232DMX selbständig. Sie enthält folgende Routinen, die leicht  in eigene Programme eingebunden werden  können.

BOOL Start();

BOOL Halt();

BOOL SendToBuffer( int  Channel, int Value);

BOOL Setup();

Verwenden von 232DMX unter DMXControl

Um 232DMX mit DMXControl verwenden zu können  müssen  die Dateien  if32plugin.out.dll und if32.dll  in das Programmverzeichnis von DMXControl kopiert werden. Nach aufrufen des Programms sollte jetzt unter Konfiguration Ausgabepluginverwaltung ein Eintrag mit 232-DMX  zu finden sein.

 

Programmierung bzw.  Update von 232DMX

Um das Programmieren und Updaten des Controllers einfach zu gestalten ist in die Schaltung ein serielles Programmierinterface integriert, das mit PONYPROG  kompatibel ist. Die nach-folgende Abbildung zeigt den notwendigen Programmieradapter  zum Anschluss am  COM Port des PC. Dieser Adapter wird  einfach mit der Steckerleiste SL1 von  232DMXs  verbunden. Das  Bild stellt den Programmieradapter zur Verwendung eines ungekreuzten  9 pol.  Kabels  mit dem PC dar. Als 5 pol. Platinenstecker wird der Steckverbinder PS 25/5G BR (Reichelt) verwendet.     

  

Das folgende Bild zeigt wie das Programmierinterface von PONYPROG konfiguriert werden muss. Der COM Port ist natürlich von der jeweiligen Konfiguration abhängig.

.

 Die Firmware dmx232.hex kann  in den Controller geschrieben werden.

Anschlussschema von 232DMX

 

 

 

Der Schaltplan und Board erstellt mit CAD Soft EAGLE 4.13 als  JPG Dateien.

Schaltplan

 

Platine

 

Download

 

Schaltplan als Eagle Dateien : 232DMX_50.sch

Board als Eagle Datei: 232DMX_50.brd

Firmware als Intel Hex File: 232DMX_50.hex

Dokumentation als PDF  Datei: 232DMX_50.pdf

Ansteuer DLL: if32.dll

Plugin für DMXControl: if32plugin.out.dll

 

Tratek  2004