Lektion 20 Tut3

Aus Deutsches DMXC-Wiki
Zur Navigation springen Zur Suche springen
Im-aim.png Erste Schritte: Lektion 20 Tut3
Arrow back.png Lektion 19
Lektion 21 Arrow forw.png
Inhaltsverzeichnis

Überblick

In dieser Lektion lernst Du, wie das Erstellen und Hinzufügen neuer Gerätedefinitionen funktioniert. Du musst diese Aktion nur anwenden, wenn Dein Gerät noch nicht als Standardgerät von DMXControl 3 definiert ist.

Lektion 20: Neue Gerätedefinitionen erstellen

Eine Gerätedefinitionsdatei (kurz: DDF) wird verwendet, um DMXControl über die Eigenschaften eines Gerätes zu informieren. Ein DDF ist in XML-Sprache geschrieben und die Datei befindet sich im Ordner "<DMXControl program path>\kernel\devices". Um DDFs für DMXControl 3 zu erstellen, gibt es zwei Wege. Entweder, Du schreibst die DDFs in einem Texteditor, oder Du nutzt den DDFCreator 3. Mit letzterem kannst Du dir die DDFs mit Hilfe einer grafischen Oberfläche zusammenstellen. Auf der Wiki-Seite des DDFCreators wird beschrieben, wie man ihn bedient und damit DDFs erstellt.
Im Folgenden konzentrieren wir uns auf die Erstellung eines DDFs im Texteditor. Wenn Du mit DDFs von DMXControl 2 vertraut bist, dann kannst Du einige wichtige Unterschiede feststellen:

  • Es gibt keine grafische Oberfläche (GUI), da DMXControl 3 kein Gerätekontextmenü unterstützt
  • Einige Syntaxelemente sind sehr ähnlich (speziell im Informations-Teil), d.h. Du kannst die bestehenden DDFs wiederverwenden.
  • Der Funktionsteil ist viel abstrakter: Du machst die Definition vor allem durch die Eigenschaften und nicht durch die DMX-Kanäle


Als erstes schauen wir uns ein sehr einfaches DDF an ("Generic RGB Par"):


 01 <?xml version="1.0" encoding="utf-8" ?>
 02 <device image="bild" type="DMXDevice" dmxaddresscount="3" dmxcversion="3" ddfversion="1.0">
 03  <information>
 04    <modell>Generic RGB PAR</modell>
 05    <vendor>Generic</vendor>
 06    <author>Arne Luedtke</author>
 07    <comment>KLEINER TEXT</comment>
 08  </information>
 09  <functions>
 10    <rgb>
 11      <red dmxchannel="0" />
 12      <green dmxchannel="1" />
 13      <blue dmxchannel="2" />
 14    </rgb>
 15  </functions>
 16 </device>


DeviceManegerInfoBox.jpg


Zeile 01 ist zwingend notwendig für die Beschreibung der XML-Version. Zeile 02 ("bild" kann ersetzt werden durch z.B. "Light.gif" oder "Light.png") und Zeile 15 bilden den Rahmen für die Geräte-Definition, die aus zwei Teilen besteht:

  • Informationsbereich (Zeile 03 bis 08), keine weitere Erklärung notwendig.
  • Funktionsbereich (Zeile 09 bis 14)

Das Gerät in unserem Beispiel hat eine Eigenschaft RGB color Modus. Die Zuordnung der DMX Kanäle wird in den Zeilen 11 bis 13 beschrieben.

Das ist alles!

Folgende Tabelle zeigt die vorhandenen Eigenschaften

Property Beschreibung Kommentar
switch Fixture hat einen Switch-Kanal.
<switch dmxchannel="0" />
dimmer Fixture hat einen Dimmer-Kanal.
<dimmer dmxchannel="0" />
matrix Fixture ist ein Matrix-Gerät.
<matrix rows="2" columns="3"> 
  <rgb>
    <red dmxchannel="2" />
    <green dmxchannel="2" />
    <blue dmxchannel="2" />
  </rgb>
  <rgb>
    <red dmxchannel="2" />
    <green dmxchannel="2" />
    <blue dmxchannel="2" />
  </rgb>
  <rgb>
    <red dmxchannel="2" />
    <green dmxchannel="2" />
    <blue dmxchannel="2" />
  </rgb>
  <rgb>
    <red dmxchannel="2" />
    <green dmxchannel="2" />
    <blue dmxchannel="2" />
  </rgb>
  <rgb>
    <red dmxchannel="2" />
    <green dmxchannel="2" />
    <blue dmxchannel="2" />
  </rgb>
  <rgb>
    <red dmxchannel="2" />
    <green dmxchannel="2" />
    <blue dmxchannel="2" />
  </rgb>
</matrix>
fog Nebel-Kanal
<fog dmxchannel="0" />
shutter Fixture hat einen Shutter.
<shutter dmxchannel="0" />
strobe Fixture hat einen Strobe-Kanal.
<strobe dmxchannel="0" />
iris
Fixture hat einen Iris-Kanal.
<iris dmxchannel="0"/>
focus
Fixture hat einen Fokus-Kanal.
<focus dmxchannel="0"/>
zoom
Fixture hat einen Zoom-Kanal.
<zoom dmxchannel="0"/>
rgb Fixture hat die RGB-Funktion.
<rgb>
  <red dmxchannel="0" />
  <green dmxchannel="1" />
  <blue dmxchannel="2" />
</rgb>
cmy
Fixture hat die CMY-Funktion.
<cmy>
  <cyan dmxchannel="0"/>
  <magenta dmxchannel="1"/>
  <yellow dmxchannel="2"/>
</cmy>
position Fixture hat Pan und/ oder Tilt.
<position>
  <pan dmxchannel="0">
    <range range="540" />
  </pan>
  <tilt dmxchannel="1">
    <range range="246" />
  </tilt>
</position>
color wheel Fixture mit Farbrad.
<colorwheel dmxchannel="0">
   <step type="color" val="#ffffff" caption="Weiß" mindmx="0" maxdmx="0" />
   <step type="color" val="#00bd52" caption="Grün 203" mindmx="32" maxdmx="32" />
   <step type="color" val="#080094" caption="Blau 108" mindmx="64" maxdmx="64" />
   <step type="color" val="#8e10bc" caption="UV" mindmx="96" maxdmx="96" />
   <step type="color" val="#eedefe" caption="1/2 Minus Green" mindmx="128" maxdmx="128" />
   <step type="color" val="#ffffff" caption="Weiß" mindmx="160" maxdmx="160" />
</colorwheel>
gobo wheel Fixture mit Goborad.


Goborotation

<gobowheel dmxchannel="0">
  <goborotation dmxchannel="12" finedmxchannel="13">
    <step type="stop" mindmx="0" maxdmx="2" />
    <step type="stop" mindmx="253" maxdmx="255" />
    <range type="cw" mindmx="3" maxdmx="127" minval="0,1" maxval="8" />
    <range type="ccw" mindmx="252" maxdmx="128" minval="0,1" maxval="8" />
  </goborotation>
  <goboindex dmxchannel="8" finedmxchannel="9">
    <range mindmx="0" maxdmx="255" range="395" />
  </goboindex>
  <goboshake dmxchannel="7" />
    <step type="open" caption="Open" mindmx="0" maxdmx="11" />
    <step type="gobo" caption="Gobo 1" mindmx="12" maxdmx="15" val="gobo1.png">
      <step for="goborotation" mindmx="36" maxdmx="39" />
      <range handler="shake" mindmx="60" maxdmx="71" minval="0,1" maxval="3" />
    </step>
  ...
</gobowheel>

Goboposition

Rotation Gobo 1

Shake Gobo 1

rawstep
Fixture hat undefinierte Funktionen.
<rawstep dmxchannel="0" name="Macros">
<step caption="MACRO 15" mindmx="0" maxdmx="1" />
...
</rawstep>
const
Fixture hat einen mit einem konstanten Wert belegten Kanal.
<const dmxchannel="1" val="0" name="Macro"/>

Wenn das Fixture über ein Farb/Goborad verfügt, das sich kontinuierlich drehen kann, dann schreibt man das so:

<gobowheel dmxchannel="0">
  <step type="open" caption="Open" mindmx="0" maxdmx="0" />
  <step type="gobo" caption="Gobo 1" mindmx="11" maxdmx="11" />
  ...
  <wheelrotation>
    <range type="cw" mindmx="221" maxdmx="203" minval="0,1" maxval="2" />
    <range type="ccw" mindmx="222" maxdmx="240" minval="0,1" maxval="2" />
  </wheelrotation>
</gobowheel>


Wenn das Fixture über ein Farb/Goborad verfügt, das sich auf zufällige Positionen drehen kann, dann schreibt man das so:

<gobowheel dmxchannel="0">
  <step type="open" caption="Open" mindmx="0" maxdmx="0" />
  ...
  <random>
    <step type="fast" mindmx="241" maxdmx="245" />
    <step type="medium" mindmx="246" maxdmx="250" />
    <step type="slow" mindmx="251" maxdmx="255" />
  </random>
</gobowheel>


Wenn ein Gerät über feine Kanäle für z.B Zoom verfügt, dann schreibt man das so:

<zoom dmxchannel="0" finedmxchannel="1"/>

Das funktioniert bei jedem Property.
Die verschiedenen Intervalle in einem DMX-Kanal werden von der „Step“ Variablen definiert:

 <step val="0" mindmx="0" maxdmx="127" />
 <step val="100" mindmx="128" maxdmx="255" />

oder:

 <step type="color" val="#FFFFFF" caption="Weiß" mindmx="0" maxdmx="31" />
 <step type="color" val="#FF0000" caption="Rot" mindmx="32" maxdmx="63" />

Procedures

Gerätekanäle für Reset, Lampe an/aus oder sonstige Gerätesystemfunktionen können über Proceduren abgebildet werden. Hierbei wird auf diese Funktionen nicht über das Property Grid, sondern im Stage View über das Kontexmenü des jeweiligen Geräts, über das Untermenü Procedures zugegriffen. Es gibt drei standard Proceduren: Reset, LampOn und LampOff, alle weiteren Funktionen, die durch Proceduren abgebildet werden sollen, können wie in Zeile 02 bis 06 erzeugt werden.

01  <procedures>
02    <procedure name="P/T-Reset">
03      <set dmxchannel="9" value="200" />
04      <hold value="6000" />                                  //Haltezeit in ms!!!
05      <restore dmxchannel="10" />
06    </procedure>
07    <reset>
08      <set dmxchannel="9" value="255" />
09      <hold value="6000" />                                  //Haltezeit in ms!!!
10      <restore dmxchannel="10" />
11    </reset>
12    <lamp_on>
13      <set dmxchannel="9" value="210" />
14      <hold value="6000" />                                  //Haltezeit in ms!!!
15      <restore dmxchannel="10" />
16    </lamp_on>
17    <lamp_off>
18      <set dmxchannel="9" value="220" />
19      <hold value="6000" />                                  //Haltezeit in ms!!!               
20      <restore dmxchannel="10" />
21    </lamp_off>
22  </procedures>


Folgende Proceduren sind zur Zeit in DMXControl 3 verfügbar. (Stand: Januar 2014)

Procedur-Name Beschreibung Bemerkung
lamp_on Schaltet die Lampe des entsprechenden Geräts ein.
lamp_off Schaltet die Lampe des entsprechenden Geräts aus.
reset Löst am entsprechenden Gerät einen Reset aus.
reset_pan_tilt Löst am entsprechenden Gerät einen Reset der Pan & Tilt Motoren aus. Das Gerät fährt mit Pan & Tilt seine Referenzpunkte an.
reset_pan Löst am entsprechenden Gerät einen Reset des Pan Motors aus. Das Gerät fährt mit Pan seine Referenzpunkte an.
reset_tilt Löst am entsprechenden Gerät einen Reset des Tilt Motors aus. Das Gerät fährt mit Tilt seine Referenzpunkte an.
reset_gobo Löst am entsprechenden Gerät einen Reset des Gobo Motors aus. Das Gobo-Wheel fährt seine Referenzpunkte an.
reset_gobo2 Löst am entsprechenden Gerät einen Reset des Gobo2 Motors aus. Das Gobo2-Wheel fährt seine Referenzpunkte an.
reset_color Löst am entsprechenden Gerät einen Reset des Color Motors aus. Das Color-Wheel fährt seine Referenzpunkte an.
reset_color2 Löst am entsprechenden Gerät einen Reset des Color2 Motors aus. Das Color2-Wheel fährt seine Referenzpunkte an.
reset_effects Löst am entsprechenden Gerät das Zurücksetzen der eingebauten Effekte aus.
reset_zoom Löst am entsprechenden Gerät den Reset der Zoom-Funktion aus.
reset_shutter Löst am entsprechenden Gerät den Reset des Shutters aus.
reset_iris Löst am entsprechenden Gerät den Reset der Iris-Blende aus.
reset_focus Löst am entsprechenden Gerät den Reset der Fokusfunktion aus.
reset_prism Löst am entsprechenden Gerät einen Reset des Prismarades aus.
pan_invert_on Am entsprechenden Gerät wird der Pan-Kanal invertiert.
pan_invert_off Am entsprechenden Gerät wird die Invertierung des Pan-Kanals aufgehoben.
tilt_invert_on Am entsprechenden Gerät wird der Tilt-Kanal invertiert.
tilt_invert_off Am entsprechenden Gerät wird die Invertierung des Tilt-Kanals aufgehoben.
pan_tilt_swap_on Am entsprechenden Gerät werden Pan und Tilt vertauscht.
pan_tilt_swap_off Die Vertauschung von Pan und Tilt wird deaktiviert.
display_on Das Display des entsprechenden Gerätes wird aktiviert.
display_off Das Display des entsprechenden Gerätes wird deaktiviert.

Übung

1) Wirf einen Blick in einige Definitionen von Geräten, bevor Du eigene DDFs erstellst (siehe obiges Verzeichnis).
2) Öffne das DDF für den TS255. Trenne die unterschiedlichen Eigenschaften durch Leerzeilen, um es besser zu verstehen.
3) Erstelle ein DDF für Dein eigenes Gerät.

Arrow back.png Lektion 19
Lektion 21 Arrow forw.png
Inhaltsverzeichnis