Unterstützung bei der Programmierung

Der Kunde kann eigene Anwenderprogramme schreiben oder so anpassen, dass sich jeder PI Controller nahtlos in seine Applikation integriert. Dazu stehen verschiedene Bibliotheken und Treiber zur Verfügung, die den Zugriff auf den Controller in Form von gekapselten Funktionsaufrufen erlauben. Mit wenig Aufwand kann eine Verbindung aufgebaut und mit dem PI Controller kommuniziert werden, unabhängig von der Kommunikations-Schnittstelle des Controllers. 

Bibliotheken und Treiber für verbreitete Programmiersprachen sind im umfangreichen Softwarepaket der PI Controller enthalten, z. B.

  • C, C++, C#, VB.NET
  • Python
  • MATLAB
  • NI LabVIEW

Für weniger verbreitete Programmiersprachen, wie z. B. Visual Basic (VB) oder Delphi, können bei PI schnell und unkompliziert kundenspezifische Lösungen angefragt werden.

Nicht jede Funktionalität steht für alle Controller zur Verfügung. Details finden Sie in den jeweiligen Produktdatenblättern.

C, C++, C#, VB.NET

Für textbasierte Sprachen wie C, C++, C# und VB.NET steht eine API zur Verfügung, um PI Controller aus selbstentwickelten Programmen direkt anzusteuern. Diese API ist als dynamische Bibliothek für die folgenden Betriebssysteme verfügbar: Windows, Linux, OS X; mit jeweils 32/64 Bit. Sie ermöglicht eine einfache Anbindung an die entsprechende Entwicklungsumgebung.

Für alle unterstützten Programmiersprachen werden fertige Beispiele („Samples“) mitgeliefert, mit denen der Kunde sofort eine funktionsfähige Applikation zusammenstellen kann. Die Samples beinhalten erste Schritte wie den Verbindungsaufbau und die grundlegende Kommunikation mit dem Controller ebenso wie umfangreichere Funktionalitäten mit verschiedenen Achsen. Beispiele hierfür sind die Verwendung des Funktionsgenerators und des Datenrekorders. Auf Wunsch können auch Samples für kundenspezifische Problemstellungen oder bislang nicht unterstützte Programmiersprachen implementiert werden.

Python

Für komplexere Aufgaben, die der Controller selbstständig, ohne Anbindung an den PC, durchführen soll, hat der Anwender die Möglichkeit, Skripte auf Python-Basis zu verwenden. Hierzu stellt PI mit PIPython eine Sammlung von Python-Modulen zur Verfügung, mit denen PI Controller direkt über Python gesteuert werden können. Dadurch verbindet sich die Mächtigkeit dieser Programmiersprache mit der Flexibilität der PI-eigenen GCS-Kommandos. Darüber hinaus bietet PIPython zahlreiche nützliche Hilfsfunktionen.

PIPython kann ab den Versionen Python 2.7 bzw. Python 3.4 verwendet werden und läuft auf allen Plattformen, die Python unterstützen. Einige Zusatzfunktionen sind auf die Standard-Betriebssysteme Windows, Linux und OS X beschränkt.

Beispiel für Kommandierung in Python

from pipython import GCSDevice
pi_device = GCSDevice ()
# PI Python Bibliotheken laden
pi_device.ConnectUSB ('123456789') # Via USB mit dem Controller verbinden
pi_device.SVO ('A', 1) # Regelung von Achse "A" einschalten
pi_device.MOV ('A', 3.142) # Achse "A" auf Position 3.142 kommandieren
position = pi_device.qPOS ('A')# Momentane Position von Achse "A" abfragen

MATLAB

Mit dem PI MATLAB Treiber können PI Controller direkt in MATLAB angesteuert werden. Dafür werden keinerlei zusätzliche MATLAB Toolboxen benötigt. Ein Windows-Installer erleichtert den Einstieg, ein Linux-Installer ist auf Anfrage erhältlich. PI ist Connections Partner von The Mathworks und bietet somit MATLAB Anwendern eine hochwertige Einbindung von PI Produkten in die MATLAB Umgebung.

NI LabVIEW

Der PI GCS NI LabVIEW Treibersatz bietet die vollständige Unterstützung von NI LabVIEW als Programmiersprache für kundenspezifische Applikationen. Er beinhaltet neben praxisnahen Beispielen ein vollständiges Treiberpaket, einschließlich eines komfortablen Konfigurations-VI.

Da beinahe der gesamte Treibersatz auf reinem NI LabVIEW-Code und NI-VISA-Kommunikation basiert, ist er plattformunabhängig und unterstützt alle Controller von PI, unabhängig vom angeschlossenen Positioniertisch. Mit Ausnahme der Konfiguration sind alle VIs quelloffen und beinhalten eine umfangreiche Online-Hilfe. Durch die weitreichende Abwärtskompatibilität des Treibersatzes wird die Nachhaltigkeit der Kunden-Applikation gesichert.

PI ist Product Alliance Partner von National Instruments, was sicherstellt, dass die Lösungen qualitativ hochwertig sind und das Wissen der PI Entwickler stets auf dem neuesten Stand ist.

Möglichkeit zum Debugging

Für das Debugging von Makros, Skripten und Programmen werden Tools mitgeliefert, die den Programmierer bei der Fehlersuche unterstützen. Die PI PC-Software PIMikroMove® unterstützt das Debuggen von GCS-Makros. Das Makro läuft dabei auf dem PC und die enthaltenen Kommandos werden einzeln zum Controller übertragen. Damit lassen sich z. B. Variablennamen auslesen, der logische Verlauf testen und vieles mehr.

Einige Controller können über Python-Skripte angesprochen werden, die direkt auf dem Controller laufen. Hier ist sogar ein Cross-Debugging möglich, d. h. das Skript läuft auf dem Controller, während der Entwickler am PC arbeiten und den Debugger von dort aus bedienen kann.

Sämtliche PI Anwenderprogramme sowie Bibliotheken und Treiber für Programmiersprachen verfügen außerdem über präzise Logging-Mechanismen. Die Kommunikation mit dem Controller wird mit Zeitstempel aufgezeichnet und ermöglicht so die Analyse des Zeitverhaltens.