agentilo Geräte Editor Version Prozessinterface UDP Befehle Version 1 Inhalt: HAFTUNGSAUSSCHLUSS...1 FUNKTIONSWEISE...3 1. PARAMETRIEREN DES LOKALEN PORTS IM RESSOURCENORDNER...3 2. ERZEUGEN DER DATEN DER ZU STEUERNDEN GERÄTE...4 2.1. Datenpunktordner 'Gerät'...4 2.2. Erzeugen der gerätespezifischen Datenpunkte...4 2.2.1. Datenpunktordner 'Schaltbefehl'...5 2.2.2. Datenpunktordner 'Analogbefehl'...6 2.2.3. Datenpunktordner 'Datum/Uhrzeit'...7 2.2.5. Einstellen der Zugriffsrechte...8 3. AUSFÜHREN DES PROZESSANSCHLUSSES...9 3.1 Ausführung der Schreibbefehle...9 3.2 Ausführung der Lesebefehle...9 Haftungsausschluss Für die Fehlerfreiheit und die Funktionsfähigkeit des Prozessinterfaces wird keine Gewährleistung übernommen. Eine Haftung für Schäden oder Folgeschäden, die durch die Benutzung des Prozessinterfaces entstehen, wird ausgeschlossen. Dies gilt auch für die Programmbestandteile, die nicht vom Autor des Prozessinterfaces selbst stammen. Mit der Verwendung dieses Prozessinterfaces wird der Haftungsausschluss vom Benutzer anerkannt! Geräte Editor Prozessinterface UDP Befehle Seite 1/9
Ansprechpartner ESF Software GmbH Europaallee 14 + 16 D-67657 Kaiserslautern Telefon: +49 (0) 631 / 303200-0 Telefax: +49 (0) 631 / 303200 9 office@esf-software.com www.esf-software.com Copyright Copyright 2010 ESF Software GmbH Alle Rechte vorbehalten Warenzeichen EIB, KNX und ETS sind eingetragene Warenzeichen der KNX Association. LON ist ein eingetragenes Warenzeichen der Echelon Corporation registriert in den USA und anderen Ländern. OPC ist ein eingetragenes Warenzeichen der OPC Foundation. Sax Basic Engine ist ein eingetragenes Warenzeichen der Sax Software Corporation. Adobe Acrobat ist ein eingetragenes Warenzeichen der Adobe Systems Incorporated. Microsoft, ActiveX, DirectX, Windows, Windows NT, Excel, Visual Basic sind eingetragene Warenzeichen der Microsoft Corporation. Alle Handelsnamen, Firmennamen und Produktnamen sind Warenzeichen oder eingetragene Warenzeichen ihrer jeweiligen Besitzer. Geräte Editor Prozessinterface UDP Befehle Seite 2/9
Funktionsweise Das Prozessinterface 'UDP Befehle' ermöglicht das Senden von UDP Datenpaketen ('User Datagram Protocol') an ein Gerät, das über eine IP-Adresse erreichbar ist. UDP ist ein verbindungsloses Protokoll, mit dem Daten über ein Netzwerk gesendet werden können. Der Benutzer kann mit dem Prozessinterface 'UDP Befehle' für Schaltbefehle, Analogwerte oder Zeitinformationen Telegramme zusammenstellen, die dann vom Geräte Editor per UDP Protokoll über ein Netzwerk versendet werden. Dazu stellt das Prozessinterface zwei Typen von Ordnern zur Verfügung: Einen Ressourcenordner zur Eingabe der lokalen Portadresse und Datenpunktordner, die vom Benutzer erzeugt werden können. Im Ressourcenordner wird die Nummer des lokalen Kommunikationsport eingestellt, der zum Datenaustausch mit dem zu steuernden Gerät benötigt wird. Die Datenpunktordner erlauben das Erzeugen, Editieren und Löschen einer Menge von Datenpunkten, die ein zu steuerndes Gerät aus Sicht des Prozessinterfaces beschreiben. 1. Parametrieren des lokalen Ports im Ressourcenordner Zur Kommunikation mit einem UDP Gerät benötigt das Prozessinterface einen Port auf dem lokalen Rechner, über den die UDP Telegramme an die angeschlossenen Geräte gesendet werden können. Der Ressourcenordner kann durch Anklicken im Baum ausgewählt werden. Im zugehörigen Anzeigefenster auf der rechten Seite erscheint eine Tabelle mit der einzigen benötigten Ressource, einem freien Port, der zur Kommunikation benutzt werden kann. Ein Klick auf die Schaltfläche in der Spalte 'Edit' öffnet einen Dialog, der die Eingabe der Portadresse ermöglicht. Geräte Editor Prozessinterface UDP Befehle Seite 3/9
Nachdem das Prozessinterface gestartet wird, wird dieser Port zum Senden der UDP Telegramme geöffnet. Der Port bleibt offen, bis das Prozessinterface gestoppt wird. Bei laufendem Prozessinterface wird der aktuelle Zustand des Ports (offen/geschlossen) in der Spalte 'Wert' angezeigt. Der Name der Ressource kann nicht geändert werden. 2. Erzeugen der Daten der zu steuernden Geräte Nach dem Erzeugen des Prozessinterfaces wird im Baum ein Default-Datenpunktordner 'Gerät' angezeigt. Der Ordner 'Gerät' steht für eine Anlage, die eine IP-Adresse besitzt und die über UDP Telegramme steuerbar ist. 2.1. Datenpunktordner 'Gerät' Um mit der Anlage kommunizieren zu können, muss das Prozessinterface die IP-Adresse der Anlage kennen sowie die Nummer des Ports, an den die Telegramme zu senden sind. Der Datenpunktordner 'Gerät' enthält daher zwei Datenpunkte, 'IP Adresse' und 'Port', sowie mehrere Unterordner: 'Analogbefehl', 'Datum/Uhrzeit' und 'Schaltbefehl'. IP Adresse: Eingabe der IP-Adresse des zu steuernden Gerätes in Textform, z.b. 192.168.0.110. Port: Eingabe einer Portadresse auf dem zu steuernden Gerät als Zahl. Der Geräte Editor sendet die UDP Telegramme an diese Portadresse. Der Datenpunktordner 'Gerät' kann umbenannt werden um das angeschlossene Gerät sinnvoll zu benennen, z.b. 'Musikanlage', 'Fernbedienung',... Der Name des Ordners wirkt sich auf die Abarbeitung des Skripts nicht aus. Es können mehrere Geräte Ordner angelegt werden. 2.2. Erzeugen der gerätespezifischen Datenpunkte Nachdem der Geräteordner erzeugt wurde, können die Datenpunkte des Gerätes angelegt werden. Für jeden Datenpunkt muss dazu ein entsprechender Ordner angelegt werden, der den aktuellen Wert des Datenpunktes enthält sowie den Text der Telegramme, die zur Befehlsgabe per UDP zu senden sind. Geräte Editor Prozessinterface UDP Befehle Seite 4/9
Als Datenpunkt- bzw. Ordnertypen stehen 'Analogbefehl', 'Datum/Uhrzeit' und 'Schaltbefehl' zur Verfügung. Ein Ordner kann folgendermaßen erzeugt werden: Auswahl des Geräteordners in der Baumstruktur Rechtsklick auf den Gerätename in der Baumstruktur Auswahl des Befehls 'Datenpunktordner erzeugen' Auswahl des Ordnertyps im anschließenden Dialog und Klicken der Schaltfläche 'Erzeugen'. Alternativ kann die Funktion 'Datenpunktordner erzeugen' auch über Menü Bearbeiten -Datenpunkt erzeugen aufgerufen werden. Die Namen aller Datenpunkte und Datenpunktordner können geändert werden. Namensänderungen haben keine Auswirkung auf die Abarbeitung des Skripts. 2.2.1. Datenpunktordner 'Schaltbefehl' Der Datenpunktordner 'Schaltbefehl' enthält 3 Datenpunkte: Schaltbefehl Dieser Datenpunkt ist vom Typ 'Binär' und wird defaultmäßig an das Prozessmodell der Visualisierung exportiert. Er wird dort als normale binäre Prozessvariable verwendet. Wird von der Visualisierung dieser Datenpunkt ausgeschaltet, so sendet das Skript des Prozessinterfaces den Text, der als Wert unter 'Schaltbefehl AUS' eingetragen ist, als UDP Telegramm an die angeschlossene Anlage. Wird von der Visualisierung dieser Datenpunkt eingeschaltet, so sendet das Skript des Prozessinterfaces den Text, der als Wert unter 'Schaltbefehl EIN' eingetragen ist, als UDP Telegramm an die angeschlossene Anlage. Geräte Editor Prozessinterface UDP Befehle Seite 5/9
Schaltbefehl AUS Der Wert dieser Variablen ist der Text, der als AUS-Befehl an die angeschlossene Anlage gesendet wird. Wichtig: Das 'Speichern' Flag sollte immer gesetzt sein, sonst geht dieser Text nach dem Beenden des Geräte Editors verloren! Falls das Export-Flag gesetzt ist, wird auch dieser Datenpunkt an das Prozessmodell exportiert und dort als ganz normaler Datenpunkt behandelt. Das erlaubt es z.b. diesen Text sogar im Visualisierungs-Player zu editieren. Das Export Flag ist defaultmäßig nicht gesetzt. Schaltbefehl EIN Der Wert dieser Variablen ist der Text, der als EIN-Befehl an die angeschlossene Anlage gesendet wird. Wichtig: Das 'Speichern' Flag sollte immer gesetzt sein, sonst geht dieser Text nach dem Beenden des Geräte Editors verloren! Falls das Export-Flag gesetzt ist, wird auch dieser Datenpunkt an das Prozessmodell exportiert und dort als ganz normaler Datenpunkt behandelt. Das erlaubt es z.b. diesen Text sogar im Visualisierungs-Player zu editieren. Das Export Flag ist defaultmäßig nicht gesetzt. 2.2.2. Datenpunktordner 'Analogbefehl' Der Datenpunktordner 'Analogbefehl' enthält 2 Datenpunkte: Analogwert Dieser Datenpunkt ist vom Typ 'Analog' und wird defaultmäßig an das Prozessmodell der Visualisierung exportiert. Er wird dort als normale analoge Prozessvariable verwendet. Wird von der Visualisierung der Wert dieses Datenpunktes geändert, so sendet das Skript des Prozessinterfaces den Text, der als Wert unter 'Befehlstext an Gerät' eingetragen ist, als UDP Telegramm an die angeschlossene Anlage. Befehlstext an Gerät Der Wert dieser Variablen ist der Text, der an die angeschlossene Anlage gesendet wird, wenn der Wert der Variablen 'Analogwert' von der Visualisierung geändert wird. Auf den aktuellen Wert kann im Text mit %d zugegriffen werden. Das Skript ersetzt %d im Text mit dem aktuellen Wert der Variablen 'Analogwert'. Geräte Editor Prozessinterface UDP Befehle Seite 6/9
Wichtig: Das 'Speichern' Flag sollte immer gesetzt sein, sonst geht dieser Text nach dem Beenden des Geräte Editors verloren! Falls das Export-Flag gesetzt ist, wird auch dieser Datenpunkt an das Prozessmodell exportiert und dort als ganz normaler Datenpunkt behandelt. Das erlaubt es z.b. diesen Text sogar im Visualisierungs-Player zu editieren. Das Export Flag ist defaultmäßig nicht gesetzt. 2.2.3. Datenpunktordner 'Datum/Uhrzeit' Der Datenpunktordner 'Datum/Uhrzeit' enthält 2 Datenpunkte: Datum/Uhrzeit Dieser Datenpunkt ist vom Typ 'Datum/Uhrzeit' und wird defaultmäßig an das Prozessmodell der Visualisierung exportiert. Er wird dort als normale Zeit-Prozessvariable verwendet. Wird von der Visualisierung der Wert dieses Datenpunktes geändert, so sendet das Skript des Prozessinterfaces den Text, der als Wert unter 'Befehlstext an Gerät' eingetragen ist, als UDP Telegramm an die angeschlossene Anlage. Befehlstext an Gerät Der Wert dieser Variablen ist der Text, der an die angeschlossene Anlage gesendet wird, wenn der Wert der Variablen 'Datum/Uhrzeit' von der Visualisierung geändert wird. Auf den aktuellen Wert der Zeitvariablen kann im Text mit %s zugegriffen werden. Das Skript ersetzt %s im Text mit dem aktuellen Wert der Variablen 'Datum/Uhrzeit'. Wichtig: Das 'Speichern' Flag sollte immer gesetzt sein, sonst geht dieser Text nach dem Beenden des Geräte Editors verloren! Falls das Export-Flag gesetzt ist, wird auch dieser Datenpunkt an das Prozessmodell exportiert und dort als ganz normaler Datenpunkt behandelt. Das erlaubt es z.b. diesen Text sogar im Visualisierungs-Player zu editieren. Das Export Flag ist defaultmäßig nicht gesetzt. Geräte Editor Prozessinterface UDP Befehle Seite 7/9
2.2.4. Verwendung numerischer Werte in Befehlstexten In den Befehlstexten können über die Escape Sequenz \ddd... numerische Werte eingebettet werden, wobei ddd... eine Folge von Dezimalziffern ist. Das Befehlsskript berechnet den Dezimalwert (modulo 256) und setzt das Resultat anstelle der Escape Sequenz in den Befehlstext ein. So kodiert z.b. \10 einen Zeilenumbruch oder \64 das Zeichen @. Achtung: Der numerische Wert 0 schließt einen Befehlstext ab und kann daher nicht innerhalb eines Befehlstextes eingebettet werden! Soll der Text \ddd per UDP gesendet werden, so ist der \ zu verdoppeln. Um z.b. den Text \001 zu senden muss im Befehlstext \\001 eingegeben werden. 2.2.5. Einstellen der Zugriffsrechte Das Skript des Prozessinterfaces wertet die Einstellungen der Zugriffsrechte aus. UDP Telegramme werden nur dann gesendet, wenn die Zugriffsrechte auf 'Schreiben' oder 'Lesen/Schreiben' gesetzt sind. Geräte Editor Prozessinterface UDP Befehle Seite 8/9
3. Ausführen des Prozessanschlusses Über den Befehl 'Menü Optionen Prozessinterface starten' oder über den automatischen Start wird der Prozessanschluss vom Geräte Editor gestartet. Nach der Initialisierung und dem Öffnen des lokalen Ports werden Wertänderungen an den Prozessvariablen der Datenpunktordner vom Skript erkannt. Das Skript prüft die Zugriffsrechte und erstellt je nach Datenpunktwert das Telegramm, das per UDP an den Port und die IP Adresse des angeschlossenen Gerätes gesendet wird. Das Skript übergibt dem Geräte Editor das UDP Telegramm, der es über den eingestellten lokalen Port sendet. 3.1 Ausführung der Schreibbefehle Achtung: Sobald das Skript das Telegramm an den Geräte Editor übergeben konnte, wird der Befehl als ausgeführt betrachtet und dem Prozessmodell quittiert. Es erfolgt keine Überprüfung, ob die Daten tatsächlich an das angeschlossene Gerät gesendet werden konnten und dort empfangen wurden! Die Einstellung der Zugriffsrechte wird vom Skript ausgewertet. Ein Rückgabe des aktuellen Wertes erfolgt nur, wenn die Zugriffsrechte 'Schreiben' oder 'Lesen/Schreiben' eingestellt sind. 3.2 Ausführung der Lesebefehle Wird vom Prozessmodell oder manuell vom Benutzer der Befehl 'Wert lesen' ausgeführt, so wird kein UDP Telegramm an das angeschlossene Gerät gesendet. Der aktuelle Wert des Datenpunktes wird dem Prozessmodell als Ergebnis der Leseoperation zurück gesendet. Die Einstellung der Zugriffsrechte wird vom Skript ausgewertet. Ein Rückgabe des aktuellen Wertes erfolgt nur, wenn die Zugriffsrechte 'Lesen' oder 'Lesen/Schreiben' eingestellt sind. Geräte Editor Prozessinterface UDP Befehle Seite 9/9