KKeine Bearbeitungszusammenfassung |
Jkuehn (Diskussion | Beiträge) |
||
Zeile 68: | Zeile 68: | ||
Dieses DDF beginnt standardmäßig wieder mit den folgenden Zeilen: | Dieses DDF beginnt standardmäßig wieder mit den folgenden Zeilen: | ||
< | <syntaxhighlight lang="xml" highlight="1" start='1' line> | ||
<?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="utf-8"?> | ||
</ | </syntaxhighlight> | ||
Im Basisteil geben wir dieses Mal auch an, dass das DDF für die Programmversion <code>3.1.2</code> erstellt ist und auf Grund von mehreren Anpassungen im Vorfeld bei der Version <code>1.2</code> steht. | Im Basisteil geben wir dieses Mal auch an, dass das DDF für die Programmversion <code>3.1.2</code> erstellt ist und auf Grund von mehreren Anpassungen im Vorfeld bei der Version <code>1.2</code> steht. |
Version vom 27. März 2019, 22:11 Uhr
DDF-Tutorial Moving Head DMXC3 | Artikel beschreibt DMXControl 3.1.2 |
Inhaltsverzeichnis | ||||||
---|---|---|---|---|---|---|
| ||||||
| ||||||
| ||||||
|
Dieses dritte Beispiel zeigt euch nun, wie ihr das DDF für einen einfachen Moving Head erstellt. Als Vorlage dient hier der Showtec Indigo 150 LED, der teilweise auch unter anderen Marken vertrieben wurde. Von den Funktionen her ist dieser Moving Head relativ unspektakulär, aber dafür umso besser geeignet, euch einen guten Einstieg zu vermitteln. Denn dieser Funktionsumfang ist bei vielen Einsteigergeräten zu finden, sodass sich dieses Tutorial recht schnell von euch auf ähnliche Geräte adaptieren lässt.
Bitte bedenkt aber, dass gerade Moving Heads und Scanner zu den komplexesten Geräten gehören, die auch viele Informationen im DDF für eine ordnungsgemäße Ansteuerung benötigen. Wenn ihr also ein entsprechendes Gerät mit vielen Funktionen vor euch habt, schaut am besten in die Beschreibung der einzelnen Funktionen mit der zugehörigen Syntax.
Ausgangsdaten: die Bedienungsanleitung
Kanalbelegung
Bei jedem Gerät sieht die Bedienungsanleitung jedes Mal anders aus. Für den Showtec Indigo 150 LED ist die Kanalbelegung diesmal eine Grafik, in der alle Funktionen aufgeführt sind. Diese Darstellung erinnert euch bestimmt an ein DMX-Pult und zeigt die Belegung für den 12-Kanal-Modus. Den kleineren 9-Kanal-Modus werden wir an dieser Stelle nicht weiter besprechen.
Technische Daten
Neben der Kanalbelegung findet ihr in dem Handbuch folgende technische Daten zu diesem Moving Head.
Allgemeine Angaben
- Modell: Showtec Indigo 150 LED
- Eingangsspannung: 240V, 50 Hz (CE)
- Leistungsaufnahme: 20W
- Sicherung: T1,5A / 250V
- Abmessungen 210x245x370mm (LxBxH)
- Gewicht: 6,3kg
Bedienung und Steuerung
- Ausgangsbelegung: Pin 1 Erde, Pin 2 (-), Pin 3 (+)
- Geräteeinstellung und -adressierung: LED Display
- DMX-Kanäle: 9 oder 12
- Signaleingang: XLR-Stecker, 3-polig
- Signalausgang: XLR-Buchse, 3-polig
Elektro-mechanische Effekte
- Automatische Pan- / Tilt-Korrektur
- Musiksteuerung
- Goborad mit sieben rotierenden Gobos und offen
- Goboshake-Funktion
- Farbrad mit neun dichroitischen Farben plus weiß
- Manueller Fokus
- Lüftergekühlt
- Abstrahlwinkel: 16°
- Gobodurchmesser: 26mm
- Bildurchmesser: 20mm
- Shutter: 0 bis 15Hz
- Dimmer: elektronischer Dimmer
- Pan: 0° bis 530°
- Tilt: 0° bis 270°
- Bewegungsauflösung: 8bit oder 16bit
- Steuerungsmöglichkeiten: DMX-512, Master / Slave, Sound-to-light
- DMX-Modes: Basic (9 Kanäle) oder Erweitert (12 Kanäle)
- Helles LCD-Display
Gobos
- Farbrad: hitzebeständiges und verstärktes Glas, dichroitische Glasbeschichtung
- Maximaltemperaturen: maximale Umgebungstemperatur 40°C, maximale Gehäusetemperatur 80°C
- Kühlung: ein Lüfter im Gerät
- Motoren: hochwertige Mikrokontroller-gesteuerte Stepper-Motoren
Programmierung: der XML-Code für den 12-Kanal-Modus
Wir beginnen wieder mit einer leeren XML-Datei in dem Texteditor eures Vertrauens. Auch in diesem Beispiel gilt, dass hier nur die Dinge ausführlicher erläutert werden, die in den vorherigen Beispielen nicht enthalten sind.
Basisteil
Dieses DDF beginnt standardmäßig wieder mit den folgenden Zeilen:
<?xml version="1.0" encoding="utf-8"?>
Im Basisteil geben wir dieses Mal auch an, dass das DDF für die Programmversion 3.1.2
erstellt ist und auf Grund von mehreren Anpassungen im Vorfeld bei der Version 1.2
steht.
<device image="Showtec Indigo 150.png" type="DMXDevice" dmxcversion="3.1.2" ddfversion="1.2">
Informationsteil
Die Angaben im Informationsteil werden wie gehabt hinterlegt. Hier ist es aber sinnvoll, dass du das mode
-Element trotzdem ausfüllst, selbst wenn wir hier das DDF nur für den 12-Kanal-Modus programmieren. Sollte später jemand anderes noch das DDF für den 9-Kanal-Modus, lassen sich später beide DDFs einfacher auseinanderhalten.
<information>
<model>Indigo 150 LED</model>
<vendor>Showtec</vendor>
<author>Stefan Kistner</author>
<mode>12 Channel</mode>
</information>
Funktionsteil
Pan- und Tilt-Kanäle
Die Kanäle für die Pan- und Tilt-Bewegung werden allesamt in dem position
-Element zusammengefasst. Die Angabe der DMX-Kanäle erfolgt aber erst in den untergeordneten pan
- bzw. tilt
-Elementen. Da der Moving Head bei beiden Bewegungsachsen mit 16 bit auflöst, was auch gerne als Pan fine und Tilt fine bezeichnet wird, definieren wir den zusätzlichen DMX-Kanal für den 16-bit-Anteil der Bewegung mit dem zusätzlichen Attribut finedmxchannel
, welches dem bereits bekannten Attribut dmxchannel
folgt. Neben der Angabe der DMX-Kanäle müssen bei dem position
-Element auch die jeweiligen Schwenkbereiche von 540
bzw. 270
Grad für beide Bewegungsachsen hinterlegt werden. Ohne diese Angaben kann die HAL mit dem Moving Head nicht arbeiten.
<functions>
<position>
<pan dmxchannel="0" finedmxchannel="1">
<range range="540" />
</pan>
<tilt dmxchannel="2" finedmxchannel="3">
<range range="270" />
</tilt>
</position>
Bewegungsgeschwindigkeit für Pan und Tilt
Um die Bewegungsgeschwindigkeit für die Pan- und Tilt-Bewegung im DDF zu hinterlegen, musst du nur darauf achten, bei welchem DMX-Wert der Moving Head die schnellste Bewegungsgeschwindigkeit besitzt und welcher DMX-Wert für die langsamste Bewegungsgeschwindigkeit eingestellt werden muss. DMXControl setzt diesen Wert standardmäßig auf 100%, sodass der zugehörige Wert für maxval=“100“
bei diesem Moving Head maxdmx=“0“
lautet. Daraus leiten sich die Werte für minval
und mindmx
ab.
<ptspeed dmxchannel="4">
<range type="linear" mindmx="255" maxdmx="0" minval="0" maxval="100" />
</ptspeed>
Farbrad
Das Programmieren des Farbrads teilen wir an dieser Stelle in zwei Teile auf. Im ersten Teil hinterlegen wir im DDF die Farben, welches in der Regel Fleißarbeit ist. Das Schema ist bei allen step
aber das gleiche: jedem DMX-Wertebereich ordnest du jeweils im Attribut val
den zugehörigen Farbewert im HEX-Wert zu und gibt im Attribut caption
ein möglichst passenden Namen in englischer Sprache an. Solltest du nicht sicher sein, wie der HEX-Wert für die verschiedenen Farben lautet, suche im Internet am besten unter dem Stichwort „RGB zu HEX“ nach entsprechenden Tools. Bei vielen Tools ist auch ein Farbkreis mit von der Partie, sodass du die Farbe hier live auswählen kannst.
<colorwheel dmxchannel="5">
<step type="color" val="#FFFFFF" mindmx="0" maxdmx="14" caption="White" />
<step type="color" val="#FF0000" mindmx="15" maxdmx="29" caption="Red" />
<step type="color" val="#FFFF00" mindmx="30" maxdmx="44" caption="Yellow" />
<step type="color" val="#00FF00" mindmx="45" maxdmx="59" caption="Green" />
<step type="color" val="#FF00FF" mindmx="60" maxdmx="74" caption="Pink" />
<step type="color" val="#0000FF" mindmx="75" maxdmx="89" caption="Blue" />
<step type="color" val="#FF7F00" mindmx="90" maxdmx="104" caption="Orange" />
<step type="color" val="#B200CC" mindmx="105" maxdmx="119" caption="Purple" />
<step type="color" val="#3399FF" mindmx="120" maxdmx="134" caption="Light Blue" />
<step type="color" val="#99FF66" mindmx="135" maxdmx="149" caption="Light Green" />
Im zweiten Teil widmen wir uns der kontinuierlichen Drehung des Farbrads. Nachdem alle Farben eingefügt sind, erstellst das untergeordnete Element wheelrotation
. Dort gibst du unter type
mit dem Wert cw
an, dass sich das Farbrad dreht in diesem Fall im Uhrzeigersinn dreht und definierst die zugehörigen Werte den DMX-Wert für die minimale Drehzahl sowie den DMX-Wert für die maximale Drehzahl. Da dieser Moving Head nur eine Richtung für die kontinuierliche Drehung des Farbrads unterstützt, folgen in dem Element wheelrotation
keine weiteren Angaben.
<wheelrotation>
<range type="cw" mindmx="150" maxdmx="255" minval="0.1" maxval="8" />
</wheelrotation>
</colorwheel>
Goborad
Das Goborad lässt sich auf ähnliche Weise programmieren, wie das Farbrad zuvor. Allerdings musst du hier genau drauf achten, welche Funktionen du bei deinem Moving Head bei den Gobos hast und wie du die einstellen musst. Beim „wie einstellen“ gibt es nämlich verschiedene Varianten. Folgende Varianten werden von DMXControl 3 aktuell nativ unterstützt, sodass du diese direkt und auf einheitliche Weise über die GUI ansprechen bzw. aufrufen kannst. Die Auflistung bezieht sich dabei aus Übersichtsgründen nur auf die Goborotation, für Goboshake und Goboindizierung gilt dies gleichermaßen. Die detaillierte Beschreibung aller Varianten findest du in der Funktionsbeschreibung für Gobo.
- Drehgeschwindigkeit und -richtung auf gleichem DMX-Kanal mit entsprechender Unterteilung der einzelnen Wertebereiche der Gobos.
- Zusätzlicher DMX-Kanal für Drehgeschwindigkeit und -richtung.
- Auswahl des Gobos auf einem ersten DMX-Kanal, Festlegung der Drehrichtung auf einem zweiten DMX-Kanal und Einstellen der Drehgeschwindigkeit auf einem dritten DMX-Kanal.
Aus der Kanalbelegung entnimmst du, dass du die Drehgeschwindigkeit und -drehrichtung über einen separaten DMX-Kanal festlegst, während die Frequenz für die Goboshake-Funktion auf demselben DMX-Kanal liegt wie die Auswahl der Gobos selbst.
Beginnen wir also mit der Programmierung des DMX-Kanals für die Drehgeschwindigkeit und -drehrichtung. Dieser Teil ist eines von mehreren untergeordneten Elementen des gobo
-Elements. Für die Drehung gibt es in DMXControl 3 das Element goborotation
, dem du direkt auch einen dmxchannel
zuordnest.
<gobowheel dmxchannel="6">
<goborotation dmxchannel="7">
Die folgenden drei Einträge definieren dann die jeweilige Drehrichtung und die zugehörige Geschwindigkeit sowie den DMX-Wertebereich, bei dem die Goborotation gestoppt wird. Wie du siehst, hinterlegst du die Angaben genauso wie für die kontinuierliche Drehung des Farbrads. Der Wert ccw
steht hierbei für Drehung entgegen dem Uhrzeigersinn. Bei der Angabe für das Stoppen der Goborotation genügt nur eine einzige Angabe. Bei diesem Moving Head verwenden wir für den step mit dem stop
-Wert den DMX-Wertebereich 0
bis 2
.
<step type="stop" mindmx="0" maxdmx="2" />
<range type="cw" mindmx="3" maxdmx="128" minval="0.1" maxval="8" />
<range type="ccw" mindmx="133" maxdmx="255" minval="0.1" maxval="8" />
</goborotation>
Da die Frequenz für die Goboshake-Funktion auf dem gleichen DMX-Kanal liegt, wie das eigentliche Goborad selbst, musst du hier keine weiteren Angaben machen. Stattdessen fügst du dem XML-Code einfach die folgende Zeile hinzu. Damit weiß die HAL, dass die Goboshake-Funktion ebenfalls auf dem DMX-Kanal 6 liegt.
<goboshake />
Mit den folgenden Schritten hinterlegst du die verfügbaren Gobos in dem Moving Head. Neben den step
-Elementen, wo der DMX-Wertebereiche für das entsprechende Gobo definiert, mit dem Attribut val
das Icon verlinkt und beim Attribut caption eine beliebige Beschreibung des Gobos angeben ist, folgt in dem untergeordneten rang
e-Element die Definition der Goboshake-Frequenz. Der wesentliche Unterschied zu den bisherigen Geschwindigkeitsangaben ist, dass du hier zusätzlich das Attribut handler
mit dem Wert goboshake
einfügen musst. Wie hier andere Konstellationen umgesetzt werden, findest du im Artikel Grundaufbau der DDFs bzw. in der vollständigen Erläuterung der Syntax für das Gobo. Die eingetragenen Werte bei minval
und maxval
für die minimale und maximale Goboshake-Frequenz sind hier im übrigen Schätzwerte, da diese nicht in der Kanalbelegung oder an anderer Stelle in der Bedienungsanleitung angegeben sind.
<step type="open" mindmx="0" maxdmx="9" caption="Open" />
<step type="gobo" mindmx="10" maxdmx="19" val="Showtec Indigo 150 Gobo 1.png" caption="Splash">
<range handler="goboshake" mindmx="200" maxdmx="219" minval="0.1" maxval="3" />
</step>
<step type="gobo" mindmx="20" maxdmx="29" val="Showtec Indigo 150 Gobo 2.png" caption="Sun">
<range handler="goboshake" mindmx="180" maxdmx="199" minval="0.1" maxval="3" />
</step>
<step type="gobo" mindmx="30" maxdmx="39" val="Showtec Indigo 150 Gobo 3.png" caption="Star">
<range handler="goboshake" mindmx="160" maxdmx="179" minval="0.1" maxval="3" />
</step>
<step type="gobo" mindmx="40" maxdmx="49" val="Showtec Indigo 150 Gobo 4.png" caption="Quadrangle">
<range handler="goboshake" mindmx="140" maxdmx="159" minval="0.1" maxval="3" />
</step>
<step type="gobo" mindmx="50" maxdmx="59" val="Showtec Indigo 150 Gobo 5.png" caption="Line">
<range handler="goboshake" mindmx="120" maxdmx="139" minval="0.1" maxval="3" />
</step>
<step type="gobo" mindmx="60" maxdmx="69" val="Showtec Indigo 150 Gobo 6.png" caption="Glass 1">
<range handler="goboshake" mindmx="100" maxdmx="119" minval="0.1" maxval="3" />
</step>
<step type="gobo" mindmx="70" maxdmx="79" val="Showtec Indigo 150 Gobo 7.png" caption="Glass 2">
<range handler="goboshake" mindmx="80" maxdmx="99" minval="0.1" maxval="3" />
</step>
Die kontinuierliche Drehung des Goborads definierst du auf die gleiche Weise, wie du es bereits beim Farbrad gemacht hast.
<wheelrotation>
<range type="cw" mindmx="220" maxdmx="255" minval="0.1" maxval="2" />
</wheelrotation>
</gobowheel>
Prisma
Das Prisma auf DMX-Kanal 9 lässt sich nach dem umfangreichen DMX-Kanal für Goborad und Goborotation mit sehr wenigen Zeilen in den XML-Code aufnehmen. Du musst hier nur zwei Zustände definieren: den Zustand ohne Prisma mit dem Wert open und den Zustand mit dem eingefahrenen Prisma mit dem Wert prism
für das Attribut type
. Auch hier kannst du beim Attribut caption
eine kurze Beschreibung eintragen.
<prism dmxchannel="8">
<step type="open" mindmx="0" maxdmx="127" caption="open" />
<step type="prism" mindmx="128" maxdmx="255" caption="3-fach Primsa" />
</prism>
Dimmer
Der Moving Head verfügt über einen Dimmerkanal ohne weitere Zusatzfunktionen, sodass du hier keine weiteren Angaben im DDF hinterlegen musst und auf die Standardwerte der HAL zurückgreifen kannst.
<dimmer dmxchannel="9" />
Shutter
In der Kanalbelegung findest du auf dem DMX-Kanal 11 sowohl die Strobefunktion als auch den Shutter. Dieser ist trotz der verbauten LED dem ursprünglich mechanisch arbeitendem Shutter nachempfunden, der für Moving Heads mit Entladungslampe benötigt wird. Im DDF musst du nur zwei der aufgeführten Zustände aufnehmen, damit die HAL die Funktion ordnungsgemäß umsetzen kann. Üblicherweise reicht es aus, wenn du für den Zustand open
den niedrigsten der aufgeführten DMX-Wertebereiche übernimmst. Genauso verfährst du mit dem Zustand closed
, sofern dieser mehrfach auf dem DMX-Kanal enthalten ist. Für beide Zustände gibt du dann nur über minval
und maxval
die DMX-Werte für den jeweiligen Zustand an.
<shutter dmxchannel="10">
<step type="closed" mindmx="0" maxdmx="31" />
<step type="open" mindmx="32" maxdmx="63" />
</shutter>
Strobe
Wie bei der Funktion Shutter erwähnt, teilen sich der Shutter und die Strobe-Funktion meistens einen DMX-Kanal. Die HAL kann mit dieser Situation entsprechend umgehen, sodass du hier für zwei Funktionen bei dmxchannel die gleichen DMX-Kanäle einträgst.
Du musst du neben den drei verschiedenen Strobe-Funktionen linear
, pulse
und random
noch den Bereich angeben, in dem die Strobe-Funktion deaktiviert ist. Hier empfiehlt es sich, dass du einfach den gesamten DMX-Wertebereich für Shutter closed
und open
übernimmt. In diesem Fall ist es so, dass der Shutter ab DMX-Wert 0
geschlossen und bis DMX-Wert 63
offen ist.
Die Angaben für die minimale und maximale Strobe-Frequenz ergeben sich übrigens wieder aus den technischen Daten zu diesem Moving Head. Diese Werte musst du auch zwingend eintragen, da sonst das DDF deinem Projekt nicht hinzugefügt werden kann.
<strobe dmxchannel="10">
<step type="open" mindmx="0" maxdmx="63" />
<range type="linear" mindmx="64" maxdmx="95" minval="0.5" maxval="15" />
<range type="pulse" mindmx="128" maxdmx="159" minval="0.5" maxval="15" />
<range type="random" mindmx="192" maxdmx="223" minval="0.5" maxval="15" />
</strobe>
Kanal für allgemeine Gerätefunktionen
Von dem DMX-Kanal 12 übernehmen wir nur Teile in ein rawstep
-Element, um beim Auswählen des Moving Heads in der Stage View eine Auswahlliste zu erhalten, die sich später dann in einer Cue abspeichern lässt. Das Unterscheidungskriterium war hier, dass alle folgenden Einstellungen dauerhaft an den Moving Head gesendet, während Funktionen für den Reset nur kurzzeitig aufgerufen werden müssen. Für diese Funktionen erstellen wir im nächsten Abschnitt passende Procedures.
<rawstep dmxchannel="11" name="Control">
<step caption="No function" mindmx="0" maxdmx="19" />
<step caption="Auto 1" mindmx="60" maxdmx="79" />
<step caption="Auto 2" mindmx="80" maxdmx="99" />
<step caption="Sound 1" mindmx="100" maxdmx="119" />
<step caption="Sound 2" mindmx="120" maxdmx="139" />
</rawstep>
</functions>
Procedures
In diesem Beispiel haben wir es nun erstmals mit Procedures zu tun. Procedures setzt du immer dann ein, wenn du Funktionen deiner Geräte schnell ansteuern möchtest, die du für den Live-Betrieb (also die Lichtshow) am Ende nicht brauchst und deswegen auch in keiner Cuelist abspeicherst. Für diesen Moving Head richten wir vier verschiedene Procedures ein:
- Procedure 1 zum Resetten des Moving Heads
- Procedure 2 für das Starten des automatischen Testprogramms
- Procedure 3 zum Aktivieren des Blackouts während der Pan- und Tilt-Bewegung
- Procedure 4 zum Deaktivieren des Pan-Tilt-Blackouts
Das Angelegen der Procedures geht in DMXControl 3 auch um ein Vielfaches schnell und ist dabei auch weniger komplex, wenn du noch Procedures von DDFs für DMXControl 2 vor Augen hast. Bei DMXControl 3 besteht ein Standard-Procedure neben dem einrahmenden Element in der Regel nur aus drei weiteren Codezeilen. In diesen drei Codezeilen wird bestimmt,
- welcher DMX-Kanal auf welchen DMX-Wert gesetzt,
- wie lange der zuvor gesetzt DMX-Wert ausgegeben und
- ob der DMX-Wert des zugehörigen DMX-Kanals wieder zurückgesetzt werden soll.
DMXControl 3 arbeitet die Befehle grundsätzlich in der Reihenfolge ab, wie sie im DDF hinterlegt sind. Somit ist es auch möglich, innerhalb eines Procedures weitere DMX-Kanäle anzusprechen und hier ebenfalls bestimmte DMX-Werte zu setzen. Dieser Punkt sei an dieser Stelle nur der Vollständigkeit erwähnt. Des Weiteren gibt es in DMXControl 3 Procedures für Standard-Funktionen, wie beispielsweise den Reset eines Geräts. Das erkennst du immer direkt an der Tag-Bezeichnung. Bei diesen Procedure ist die Beschreibung einheitlich hinterlegt und der Eintrag im Kontextmenü in der Stage View größtenteils auch mit einem Icon versehen. Du kannst dir aber auch eigene Procedures mit eigenen Namen anlegen. Wie du später sehen wirst, gibt es hier nur marginale Unterschiede du den Procedures für die Standard-Funktionen.
Geräte-Reset
Für den Geräte-Reset verwenden wir ein Standard-Procedure von DMXControl 3. Dieses Element trägt die Bezeichnung reset
. Der eigentliche Programmablauf beginnt dann in der folgenden Zeile, in der beim Attribut dmxchannel
der DMX-Kanal 11
ausgewählt und mit value
auf den Wert 200
gesetzt wird.
<procedures>
<reset>
<set dmxchannel="11" value="200" />
Die zweite Zeile in diesem Procedure sagt aus, wie lange der DMX-Wert 200
gehalten werden soll. Hier tragen wir für das Attribut value
den Wert 6000
ein. 6000
steht hier für 6000 Millisekunden, also 6 Sekunden.
<hold value="6000" />
In der letzten Zeile wird der DMX-Kanal 11 wieder auf den Ausgangswert zurückgesetzt, wie er durch andere Funktionen in diesem DDF gesetzt wird. Mit </reset>
wird das Procedure geschlossen und damit funktionsfähig.
<restore dmxchannel="11" />
</reset>
Testprogramm
Um ein eigenes Procedure zu erstellen, musst du nur zu Beginn etwas anders starten. Die Elemente deiner eigenem Procedures tragen allesamt den Namen procedure
. Um auch in der GUI einen Namen für dein eigenes Procedure zu sehen, trägst du in dem Attribut name
eine entsprechende Bezeichnung ein. In diesem Fall lautet der Name dieses Procedure Test
.
<procedure name="Test">
Alle folgenden Einträge erstellst analog zum ersten Procedure. Wir sprechen den DMX-Kanal 11 an und setzen für 20 Sekunden den DMX-Wert auf 160. Nach Ablauf dieser Zeit springt der DMX-Wert wieder auf den Ausgang-Wert zurück. Mit </procedure>
wird dein eigenes Procedure geschlossen.
<set dmxchannel="11" value="160" />
<hold value="20000" />
<restore dmxchannel="11" />
</procedure>
Pan-Tilt-Blackout
Zum Aktivieren und Deaktivieren des Blackouts bei der Pan-Tilt-Bewegung erstellen wir insgesamt zwei Procedures. Nach dem zweiten Procedure schließt du nicht nur das Procedure selbst, sondern mit </procedures>
im Anschluss auch den gesamten Procedures-Teil im DDF. Die letzte Zeile ist dann wie üblich </device>
.
<procedure name="Pan-Tilt blackout on">
<set dmxchannel="11" value="20" />
<hold value="4500" />
<restore dmxchannel="11" />
</procedure>
<procedure name="Pan-Tilt blackout off">
<set dmxchannel="11" value="40" />
<hold value="4500" />
<restore dmxchannel="11" />
</procedure>
</procedures>
</device>
Ergebnis: das fertige DDF
Das komplette DDF für den Showtec Indigo 150 sieht wie folgt aus:
<?xml version="1.0" encoding="utf-8"?>
<device image="Showtec Indigo 150 V2.png" type="DMXDevice" dmxcversion="3.1.2" ddfversion="1.2">
<information>
<model>Indigo 150 V2</model>
<vendor>Showtec</vendor>
<author>Stefan Kistner</author>
<mode>12 channel</mode>
</information>
<functions>
<position>
<pan dmxchannel="0" finedmxchannel="1">
<range range="540" />
</pan>
<tilt dmxchannel="2" finedmxchannel="3">
<range range="270" />
</tilt>
</position>
<ptspeed dmxchannel="4">
<range type="linear" mindmx="255" maxdmx="0" minval="0" maxval="100" />
</ptspeed>
<colorwheel dmxchannel="5">
<step type="color" val="#FFFFFF" mindmx="0" maxdmx="14" caption="White" />
<step type="color" val="#FF0000" mindmx="15" maxdmx="29" caption="Red" />
<step type="color" val="#FFFF00" mindmx="30" maxdmx="44" caption="Yellow" />
<step type="color" val="#00FF00" mindmx="45" maxdmx="59" caption="Green" />
<step type="color" val="#FF00FF" mindmx="60" maxdmx="74" caption="Pink" />
<step type="color" val="#0000FF" mindmx="75" maxdmx="89" caption="Blue" />
<step type="color" val="#FF7F00" mindmx="90" maxdmx="104" caption="Orange" />
<step type="color" val="#B200CC" mindmx="105" maxdmx="119" caption="Purple" />
<step type="color" val="#3399FF" mindmx="120" maxdmx="134" caption="Light Blue" />
<step type="color" val="#99FF66" mindmx="135" maxdmx="149" caption="Light Green" />
<wheelrotation>
<range type="cw" mindmx="150" maxdmx="255" minval="0.1" maxval="8" />
</wheelrotation>
</colorwheel>
<gobowheel dmxchannel="6">
<goborotation dmxchannel="7">
<step type="stop" mindmx="0" maxdmx="2" />
<range type="cw" mindmx="3" maxdmx="128" minval="0.1" maxval="8" />
<range type="ccw" mindmx="133" maxdmx="255" minval="0.1" maxval="8" />
</goborotation>
<goboshake />
<step type="open" mindmx="0" maxdmx="9" caption="Open" />
<step type="gobo" mindmx="10" maxdmx="19" val="Showtec Indigo 150 Gobo 1.png" caption="Splash">
<range handler="goboshake" mindmx="200" maxdmx="219" minval="0.1" maxval="3" />
</step>
<step type="gobo" mindmx="20" maxdmx="29" val="Showtec Indigo 150 Gobo 2.png" caption="Sun">
<range handler="goboshake" mindmx="180" maxdmx="199" minval="0.1" maxval="3" />
</step>
<step type="gobo" mindmx="30" maxdmx="39" val="Showtec Indigo 150 Gobo 3.png" caption="Star">
<range handler="goboshake" mindmx="160" maxdmx="179" minval="0.1" maxval="3" />
</step>
<step type="gobo" mindmx="40" maxdmx="49" val="Showtec Indigo 150 Gobo 4.png" caption="Quadrangle">
<range handler="goboshake" mindmx="140" maxdmx="159" minval="0.1" maxval="3" />
</step>
<step type="gobo" mindmx="50" maxdmx="59" val="Showtec Indigo 150 Gobo 5.png" caption="Line">
<range handler="goboshake" mindmx="120" maxdmx="139" minval="0.1" maxval="3" />
</step>
<step type="gobo" mindmx="60" maxdmx="69" val="Showtec Indigo 150 Gobo 6.png" caption="Glass 1">
<range handler="goboshake" mindmx="100" maxdmx="119" minval="0.1" maxval="3" />
</step>
<step type="gobo" mindmx="70" maxdmx="79" val="Showtec Indigo 150 Gobo 7.png" caption="Glass 2">
<range handler="goboshake" mindmx="80" maxdmx="99" minval="0.1" maxval="3" />
</step>
<wheelrotation>
<range type="cw" mindmx="220" maxdmx="255" minval="0.1" maxval="2" />
</wheelrotation>
</gobowheel>
<prism dmxchannel="8">
<step type="open" mindmx="0" maxdmx="127" caption="open" />
<step type="prism" mindmx="128" maxdmx="255" caption="3-fach Primsa" />
</prism>
<dimmer dmxchannel="9" />
<shutter dmxchannel="10">
<step type="closed" mindmx="0" maxdmx="31" />
<step type="open" mindmx="32" maxdmx="63" />
</shutter>
<strobe dmxchannel="10">
<step type="open" mindmx="0" maxdmx="63" />
<range type="linear" mindmx="64" maxdmx="95" minval="0.5" maxval="15" />
<range type="pulse" mindmx="128" maxdmx="159" minval="0.5" maxval="15" />
<range type="random" mindmx="192" maxdmx="223" minval="0.5" maxval="15" />
</strobe>
<rawstep dmxchannel="11" name="Control">
<step caption="No function" mindmx="0" maxdmx="19" />
<step caption="Auto 1" mindmx="60" maxdmx="79" />
<step caption="Auto 2" mindmx="80" maxdmx="99" />
<step caption="Sound 1" mindmx="100" maxdmx="119" />
<step caption="Sound 2" mindmx="120" maxdmx="139" />
</rawstep>
</functions>
<procedures>
<reset>
<set dmxchannel="11" value="200" />
<hold value="6000" />
<restore dmxchannel="11" />
</reset>
<procedure name="Test">
<set dmxchannel="11" value="160" />
<hold value="20000" />
<restore dmxchannel="11" />
</procedure>
<procedure name="Pan-Tilt blackout on">
<set dmxchannel="11" value="20" />
<hold value="4500" />
<restore dmxchannel="11" />
</procedure>
<procedure name="Pan-Tilt blackout off">
<set dmxchannel="11" value="40" />
<hold value="4500" />
<restore dmxchannel="11" />
</procedure>
</procedures>
</device>