Übungsbeschreibung
 
            Command-Buttons             
            6m 50s             
          Sende mit Command-Buttons einfache unidirektionale Kommunikationszeichenfolgen an Drittanbietergeräte.
Video Transkript
 
            Command-Buttons             
            6m 50s             
          0:08
 Manchmal reicht es zur Steuerung von Drittanbietergeräten aus, einen Befehl an ein Gerät zu senden.
0:13
 Mehr nicht! Viele Geräte lassen sich extern steuern, beispielsweise Projektoren, Videoumschalter, 
0:19
 Lichtregler usw. Wenn einfach nur ein Befehl an das Gerät gesendet werden soll, von dem aber keine 
0:25
 Informationen benötigt werden, kannst du dafür die Command-Buttons verwenden.
0:29
 Diese dienen dazu, einfache einseitig gerichtete Befehlsstrings an ein vernetztes Gerät oder eine 
0:36
 serielle Schnittstelle zu senden. In den Eigenschaften der Command-Buttons kannst du die Anzahl der 
0:41
 benötigten Buttons festlegen. Jeder Button sendet eine bestimmte Zeichenfolge, und du kannst der 
0:47
 Komponente bis zu 64 Buttons hinzufügen. Außerdem kannst Du bestimmen, ob die Befehle über 
0:53
 TCP, UDP oder seriell gesendet werden. TCP- und UDP-
0:59
 Befehle werden ganz einfach in das Netzwerk geschickt, serielle Befehle jedoch an eine physisch 
1:05
 vorhandene serielle Verbindung. Wenn du „Serial“ auswählst, siehst du, dass der Komponente ein 
1:11
 trapezförmiger Pin hinzugefügt wird, der nur mit einem anderen seriellen Pin verschaltet werden 
1:16
 kann. Viele Q-SYS Geräte haben einen RS-232-Anschluss, der
1:22
 in Designer als „Inventory“-Komponente dargestellt wird, die mit dem Gerät verknüpft ist. Verbinde 
1:27
 diese Komponente einfach mit deinen Command-Buttons.
1:30
 Bei einer seriellen Verbindung solltest tatsächlich mal die übliche Regel vergessen, dass Pins auf der 
1:36
 linken Seite eines Objekts Eingänge und die auf der rechten Seite Ausgänge sind. Mache dir keine 
1:41
 Gedanken darüber, dass es so aussieht, als ob die Command-Buttons lediglich Befehle erhielten – in 
1:47
 diesem Fall funktioniert diese Einzelverbindung nämlich in beide Richtungen.
1:51
 Bedienfeld der Command-Buttons musst du einige Informationen zum Empfangsgerät konfigurieren. 
1:57
 Im seriellen Modus musst du die Baudrate, Bitzahl, Parität und Stoppbits eingeben. Für TCP- und 
2:05
 UDP-Befehle benötigst du die IP-Adresse und Kommunikationsschnittstelle des Geräts.
2:11
 Die IP-Adresse hast du möglicherweise selbst konfiguriert, die übrigen Informationen solltest du in 
2:17
 dem Benutzerhandbuch oder Dokumentation deines Geräts finden.
2:21
 Schieben wir nun unsere Designer-Datei auf den Core Prozessor.  Wenn alles läuft, schauen wir in den 
2:26
 Block „Serial Port“.  Wenn Du eine Nachricht sendest, zeigen dir die Zähler im Block, wie viele Daten-Bytes 
2:33
 über den seriellen Anschluss gesendet oder empfangen werden.
2:37
 Dies ist bei der Fehlersuche und Fehlerbehebung sehr hilfreich, wenn z. B. das RS-232-Kabel nicht 
2:43
 korrekt angeschlossen ist.
2:45
 Viel mehr ist nicht zu tun! Tippe hier die Befehlszeichenfolge ein. Wenn du dann den Trigger-Button 
2:51
 auf der linken Seite klickst, wird dieser Befehl an das Endgerät geschickt. Du kannst auch die 
2:56
 Steuerpins für jeden dieser Trigger öffnen und so ein anderes Element innerhalb von Q-SYS den 
3:01
 Befehl abschicken lassen.
3:03
 Du kannst diese Trigger auch – wie jedes andere Steuerelement – dem Behälter „Named Controls“ 
3:08
 hinzufügen. Das gibt dir die Möglichkeit, diese Trigger auch per Zeitplan aus dem Command 
3:13
 Scheduler im Q-SYS Administrator zu aktivieren.
3:17
 Wie gesagt, die Command-Buttons ermöglichen nur die Kommunikation in eine Richtung, d.h. du 
3:22
 bekommst vom Gerät keinerlei Rückmeldung darüber, ob es den Befehl empfangen oder die Aktion
3:27
 ausgeführt hat. Es gibt zwar eine Status-Anzeige, die Auskunft über die Verbindungsstärke gibt; sie 
3:33
 sagt allerdings nichts über die Aktivität des Geräts aus. Wenn du Command-Buttons verwendest, 
3:39
 benötigst du vermutlich sowieso keine Rückinformationen, bzw. sind diese für dich nicht von Belang. 
3:44
 Wenn du zum Beispiel siehst, dass sich die Beleuchtung ändert, dann weißt Du natürlich auch, dass 
3:49
 der Licht-Controller Deinen Befehl erhalten hat. 
3:52
 Nun kommt die letzte Frage, die leider auch die schwierigste ist: Woher weißt du, was du als Befehl 
3:56
 eingeben musst? Diese Befehle unterscheiden sich von Hersteller zu Hersteller oft drastisch, es ist 
4:02
 also eventuell etwas Sucherei nötig, um sie zu finden. Seriöse Anbieter stellen aber in der Regel eine 
4:08
 Liste der Befehle für ihr Gerät bereit – entweder in einer Bedienungsanleitung, einem technischen 
4:13
 Anhang oder auf Anfrage per E-Mail.  
4:16
 Weil es über 9 Trillionen verschiedene Hersteller von Drittanbieterprodukten gibt, können wir bei der 
4:22
 Suche nach diesen Befehlen nicht wirklich helfen. Wir können allerdings auf einen häufig gemachten 
4:27
 Fehler hinweisen.
4:29
 Bei vielen Herstellern muss am Ende eines Befehls ein Wagenrücklauf gesetzt werden, als Vermerk, 
4:36
 dass der Befehlsstring abgeschlossen ist. Diese Information kann auf unterschiedliche Weise 
4:41
 angezeigt werden – in diesem Handbuch z. B. mit . 
4:48
 Dazu ein bisschen Geschichte: „Wagenrücklauf“ ist ein veralteter Begriff aus einer Zeit, als wir noch 
4:52
 auf Schreibmaschinen schrieben und der Computer in weiter Ferne lag. Der „Wagen“ der 
4:57
 Schreibmaschine bewegte sich bei jedem Tippen auf eine Taste um ein Zeichen nach links, und wenn 
5:03
 das Ende der Zeile erreicht war, drückte man auf „Wagenrücklauf“, um ihn wieder nach rechts zu bringen.
5:09
 Der „Wagenrücklauf“ wurde durch die „Enter“-Taste abgelöst, die sich auf fast allen Tastaturen 
5:14
 findet, doch taucht die Terminologie nach wie vor im Zusammenhang mit auszuführenden Computer-Befehlen auf.
5:21
 Das Vertrackte an der Sache ist: „“ sollte nicht wortwörtlich so eingetippt werden. Ein „Carriage 
5:27
 Return“ wird in verschiedenen Programmiersprachen unterschiedlich dargestellt; das heißt, dass ein 
5:33
 Wagenrücklauf gemäß der verwendeten Sprache eingegeben werden soll.
5:37
 Da Q-SYS in Lua geschrieben ist, kannst du einen „Carriage Return“ mit „backslash-r.“ einfügen. Das 
5:44
 Backslash-Zeichen teilt in Lua dem Compiler mit, dass das folgende Zeichen nicht wörtlich verstanden 
5:49
 werden soll, sondern einen versteckten Code darstellt, um stattdessen irgendeine andere Funktion auszuführen.
5:56
 R steht für Return/Eingabe. Mit „backslash-n“ kannst du auch einen Befehl „Neue-Zeile“ ausführen, 
6:04
 den manche Handbücher verlangen. Oder du verwendest „backslash-x“: Dann werden die folgenden 
6:10
 beiden Zeichen als Hexadezimalwert interpretiert.
6:14
 Hoffentlich musst du bei der Nutzung von Command-Buttons nicht allzu tief in derartige 
6:18
 Umformungen einsteigen. Aber wichtig ist, dass in vielen Fällen eine Befehlszeichenfolge mit 
6:23
 „backslash-r“ abgeschlossen werden muss. Die gleichen Konzepte kommen wieder zum Tragen, wenn 
6:29
 du mit Lua oder dem Block Controller mit dem Codieren bidirektionaler Kommunikation beginnst. Das 
6:36
 sehen wir uns in späteren Videos an. Bis dahin haben wir für dich im Control-Training-Worksheet eine 
6:41
 Übungsaufgabe zu den Command-Buttons. Schau dir diese an, bevor du mit dem nächsten Video weitermachst.
Downloads & Links
 
            Command-Buttons             
            6m 50s             
                  
