API-Demo-Manager
Der Manager ist ein Beispiel dafür, wie Sie einen einfachen API-Manager schreiben. Ein API-Manager kann zum Beispiel dazu dienen Regelalgorithmen in C++ statt in CTRL zu implementieren oder mit einfacher Hardware zu kommunizieren. Im Gegensatz zu Treibern kann das API keine Adresskonfigs verwenden.
Dieser Beispielmanager zeigt wie die Verbindung zu Data- und Event-Manager hergestellt wird. Weiters verbindet er sich auf einen Datenpunkt und kopiert jedes Mal einen neu gesetzten Wert auf einen andern Datenpunkt. Die Namen der zwei Datenpunkte werden in der Config-Datei definiert.
Windows API-Manager vorbereiten
-
Zuerst muss ein neues API-Manager Projekt mit dem Skript
newWCCILManager.cmd
angelegt werden. Das kopiert die Sourcevorlage in welcher der Demomanager enthalten ist. -
Kompilieren Sie das Projekt und starten es.
-
Falls Sie ihn aus der Console heraus starten wollen, müssen Sie ihn umbenennen (etwa WCCOAdemo.exe) und in das <proj_path>/bin Verzeichnis des Projektes kopieren.
Linux API-Manager vorbereiten
-
Setzen Sie Ihre Umgebungsvariablen für das API wie unter Installation/Linux beschrieben.
-
Legen Sie mit dem
$API_ROOT/newWCCILManager.sh
Skript ein neues Projekt an. -
Geben Sie im vorher angelegten Projektverzeichnis folgendes ein, um den API Manager zu übersetzen:
make .
Diese Eingabe muss in dem Verzeichnis erfolgen, in dem die Makefile.api
für
den Treiber zu finden ist. Dies ist in der Regel das Verzeichnis, in dem sich die Quellen
befinden (z.B. $API_ROOT/SampleDriver).
Die ausführbare Datei des generierten Managers wird DemoManager genannt.
Config-Einstellungen
Die Abschnitte, die der Manager liest, heißen [demo] und [demo_<num>], z.B. wenn der Manager mit -num 1 startet [demo] und [demo_1].
[demo_1]
dpNameConnect = "ExampleDP_Arg2.:_online.._value"
dpNameSet = "ExampleDP_Arg1.:_original.._value"
Im oberen Eintrag geben Sie Datenpunkt, Config und Attribut an, zu dem sich der Manager verbinden soll. Als Standard ist "ExampleDP_Arg2.:_online .._value" gesetzt.
Darunter geben Sie den Datenpunkt, Config und Attribut an, auf den die Werte kopiert werden. Verwenden Sie die gleichen Datentypen, da es keiner automatische Umrechnung gibt. Als Standard ist "ExampleDP_Arg1.:_original.._value" gesetzt.