Skripts erstellen

Allgemeine Informationen zum Erstellen eines Skripts finden Sie unter Schritt-für-Schritt > Projekt konfigurieren > Konfigurationsworkflows und -verfahren > Skripts konfigurieren.

Beispiel aus der Bibliothek kopieren

  • Die Erweiterung Scripts ist installiert.
  • Für berechnete Werte werden zwei virtuelle Datenpunkte erstellt (zum Beispiel: Mittelwert aus zwei OPC-Datenpunkten). Weitere Informationen finden Sie in der Beschreibung der Virtuellen Objekte.
  1. Wählen Sie im System Browser die Managementsicht.
  1. Wählen Sie Projekt > Systemeinstellungen > Bibliotheken > L1-Headquarters > BA > Software > Desigo Gateway Funktionalitätenscripts > Scripts.
  1. Wählen Sie das Register Script-Editor.
  • Es werden die Beispielskripte SXOpenMainScript, SXOpenFunction, SXOpenParser angezeigt.
  1. Wählen Sie das Skript SXOpenMainScript.
  1. Öffnen Sie den Expander Viewer.
  1. Wählen Sie das Register Script-Editor.
  1. Drücken Sie STRG+A, um den gesamten Inhalt zu markieren, und STRG+C, um ihn zu kopieren.

Skript erstellen und speichern

  • Es wird ein neuer Ordner zum Speichern des Gateway-Skripts erstellt.
  1. Wählen Sie im System Browser die Applikationssicht.
  1. Wählen Sie Applikationen > Logik > Scripts.
  1. Wählen Sie das Register Script-Editor.
  1. Öffnen Sie den Expander Editor.
  1. Löschen Sie die Standardeinträge.
  1. Drücken Sie STRG+V, um Inhalte einzufügen.
  1. Klicken Sie Speichern unter .
  1. Geben Sie im Dialogfeld Objekt speichern unter den Namen und die Beschreibung ein.
  1. Klicken Sie OK.

Wann muss der Skriptpfad geändert werden?

Der Skriptpfad muss geändert werden, wenn die Skripte SXOpenFunction und SXOpenParser für ein Projekt geändert werden. Die Variable ConsoleOutput=true zeigt die Ergebnisse im Expander Konsole an.

Skriptpfad

Funktion SXAdd mit COV anwenden

Die Beispiele in der Bibliothek wurden für die Kommunikation von OPC zu BACnet erstellt. Für die Kommunikation von BACnet zu OPC muss der Wert (3) in Present_Value geändert werden.

Funktion SXAdd ohne COV
  • Die OPC- und BACnet-Datenpunkte sind importiert.
  • Das Skript ist im Systemmanager im Expander Editor geöffnet.
  1. Wählen Sie im System Browser die Technische Sicht.
  1. Wählen Sie im Expander Editor die vordefinierte Funktion SXAvg und kopieren Sie die Vorlage in das Skript.

Konfiguration der Datenpunkte

  1. Geben Sie als Beschreibung eine eindeutige Abonnementnummer (1) ein.
  1. Ziehen Sie den OPC-Datenpunkt aus dem Systemmanager in das erste Abonnement (2).
  1. (Optional) Anstelle der Standardeigenschaft Value (3) kann eine andere Eigenschaft definiert werden.
  1. Geben Sie die Funktion mit der entsprechenden Beschreibungsnummer (4) ein. Diese Nummer muss im gesamten Skript eindeutig sein. Der Skript-Editor prüft die Zahlen nicht auf Eindeutigkeit.
  1. Ändern Sie nicht den Eintrag false (5).
  1. Ziehen Sie den BACnet-Datenpunkt aus dem Systemmanager in das erste Abonnement (6).
    Hinweis: Anstelle eines BACnet-Datenpunkts kann auch ein virtueller Datenpunkt zugewiesen werden.
  1. Geben Sie die Berechnungsfunktion (7) SXAdd ein.
  1. Geben Sie einen Offset (8) zum Datenpunktwert ein.

Zusätzliche Datenpunkte bearbeiten

  1. Erstellen Sie ein weiteres SXAdd-Abonnement oder wählen Sie eine neue Skriptfunktion.
  1. Wiederholen Sie die unter Datenpunkte konfigurieren beschriebenen Schritte.
  1. Löschen Sie unnötige Funktionen aus dem Skript.

Funktion SXAvg mit COV anwenden

Die Beschreibung basiert auf drei OPC-Datenpunkten.

Funktion SXAvg mit COV
  • Die Voraussetzungen sind in SXAdd beschrieben.
  1. Wählen Sie im Expander Editor die vordefinierte Funktion SXAvg und kopieren Sie die Vorlage in das Skript.
  1. Geben Sie als Beschreibung eine eindeutige Abonnementnummer (1) ein.
  1. Geben Sie eine eindeutige Funktionsnummer ein (2).
  1. Ziehen Sie den OPC-Datenpunkt aus dem Systemmanager in das erste Abonnement (3).
  1. (Optional) Anstelle der Standardeigenschaft Value (4) kann eine andere Eigenschaft definiert werden.
  1. Geben Sie die Funktion mit der entsprechenden Beschreibungsnummer (5) ein. Diese Nummer muss im gesamten Skript eindeutig sein. Der Skript-Editor prüft die Zahlen nicht auf Eindeutigkeit.
  1. Ändern Sie nicht den Eintrag false (6).
  1. Tragen Sie in Variable 1 den Parameter (7) für den Abonnementdatenpunkt (3) ein.
  1. Ziehen Sie den OPC-Datenpunkt aus dem Systemmanager in die zweite Variable (8).
  1. Ziehen Sie den OPC-Datenpunkt aus dem Systemmanager in die dritte Variable (9).
  1. Ziehen Sie den BACnet-Datenpunkt aus dem Systemmanager in das erste Abonnement (10).
    Hinweis: Anstelle eines BACnet-Datenpunkts kann auch ein virtueller Datenpunkt zugewiesen werden.
  1. Geben Sie die Berechnungsfunktion (11) SXAvg ein.
  1. Geben Sie die Anzahl (12) der zu berechnenden Datenpunktwerte ein.
  1. Die Anzahl der zugewiesenen Datenpunktvariablen (13) muss mit der Anzahl der Variablen (12) übereinstimmen. Die verbleibende Variable muss auf 0 gesetzt werden.

Hinweis:
Der Mittelwert wird nur berechnet, wenn sich der Wert des ersten Abonnements ändert. Verwenden Sie die Polling-Funktion, um eine kontinuierliche Mittelwertbildung durchzuführen.

Funktion SXBetween mit Polling anwenden

Die Beispiele in der Bibliothek wurden für die Kommunikation von OPC zu BACnet erstellt. Für die Kommunikation von BACnet zu OPC muss der Wert (4) in Present_Value geändert werden.

OPC-Abruf SXBetween
  • Die Voraussetzungen sind in SXAdd beschrieben.
  1. Wählen Sie im Expander Editor die vordefinierte Funktion SXBetween und kopieren Sie die Vorlage in das Skript.
  1. Geben Sie als Beschreibung einen eindeutigen Funktionsnamen (1) ein. Der Funktionsname muss im gesamten Skript eindeutig sein.
  1. Geben Sie die Abfragerate (2) in Millisekunden ein. Alle dieser Funktion zugeordneten Datenpunkte werden mit der gleichen Abfragerate abgefragt.
  1. Ziehen Sie den OPC-Datenpunkt aus dem Systemmanager in die erste Lesezeile (3).
  1. (Optional) Anstelle der Standardeigenschaft Value (4) kann eine andere Eigenschaft definiert werden.
  1. Ziehen Sie den BACnet-Datenpunkt aus dem Systemmanager in die erste Lesezeile (5).
  1. Geben Sie die Berechnungsfunktion (6) SXBetween ein.
  1. Geben Sie den minimalen und maximalen Grenzwert (7) des Datenpunktwerts zur Berechnung ein.
  1. Erstellen Sie in dieser Funktion zusätzliche Datenpunkte (Zeilen 2 bis 4) oder erstellen Sie eine neue Funktion mit einer anderen Abfragerate.