Serie LabVIEW in der Praxis Messdaten automatisch auswerten und Reports generieren

Autor / Redakteur: Jürgen Martini, Martin Hessing und Andreas Reiff* / Dipl.-Ing. (FH) Hendrik Härter

Um Messabläufe zu steuern und Analysen sowie Berichte zu erstellen, wurde in die Messdatenauswerte-Software „Saturn Studio II“ ein programmierbarer Sequenzer integriert. Mit diesem ist es möglich, beliebige DIAdem-Operationen in den Messablauf einzubinden. Eigene Auswert-Routinen lassen sich in den Messablauf integrieren. Am Beispiel von Programmauszügen erläutern wir die praktische Umsetzung der Schnittstelle.

Firmen zum Thema

Bild 1: Saturn Mess-System mit Lichtwellenleiter
Bild 1: Saturn Mess-System mit Lichtwellenleiter
( Archiv: Vogel Business Media )

Der Transientenrekorder „Saturn“ ermöglicht individuell konfigurierbare Abtastraten bis 100 MSample/s und erfasst an mehreren hundert Kanälen parallel mit einer Speichertiefe von bis zu 512 Mio. Messdaten.

Einzelne Kanäle lassen sich netzunabhängig mit Akku und via Lichtwellenleiter anschließen. Und das mit einer Entfernung bis 15 km vom Hauptsystem. Die Synchronität zwischen den einzelnen Kanälen liegt bei einer zeitlichen Auflösung von ±10 ns. Sowohl die potenzialgetrennte Signalabtastung als auch die variabel konfigurierbaren Eingangsspannungen bis 200 Vpp ermöglichen den Einsatz des Systems im Hoch- und Mittelspannungsprüffeld.

Messdaten interaktiv auswerten

(Archiv: Vogel Business Media)

Messdaten werden zunehmend interaktiv auf dem Messsystem ausgewertet. Mit Saturn Studio II lassen sich Messgeräte konfigurieren, Daten erfassen und visualisieren und anschließend auswerten. Über das TCP/IP-Protokoll kann über einen zentralen Kontrollplatz die Software gesteuert werden. Das ist vor allem in größeren Messlaboratorien mit dezentralen Messaufnehmern von Vorteil.

Programmierbarer Sequenzer für Messablauf

Bild 3: Sequenz mit FFT-Aufruf und anschließender Peak-Detektion zum Analysieren der Grundfrequenz (Archiv: Vogel Business Media)

Die graphische Benutzeroberfläche wurde unter LabVIEW und die Systemansteuerung in C++ programmiert. Für die automatisierten Analysen und zum Erstellen der einzelnen Reports wurde auf DIAdem von National Instruments zurückgegriffen. Um die vordefinierten Analysen in den automatisierten Messablauf zu erstellen und zu integrieren, wurde ein programmierbarer Sequenzer integriert. Er lässt sich neben vordefinierten Funktionen mit selbst entwickelten Analysen und Reports erweitern.

Anwenderfreundlicher Editor für Ablaufsequenzen

Der integrierte Sequenzer verfügt über einen anwenderfreundlichen Editor. Es lassen sich einfache und komplexe Ablaufsequenzen für verschiedene Aufgaben erstellen. Auf der linken Seite des Fensters befinden sich die Funktionen, die durch Drag&Drop der Sequenzliste im Zentrum des Fensters hinzugefügt werden können.

Die Übergabeparameter der jeweiligen Funktionen können direkt in den beiden Listen „Input List“ und „Output List“ bearbeitet und vordefinierten Variablen zugewiesen werden. Ist eine Sequenz fertig gestellt, kann diese einzelnen System-Events zugeordnet werden.

Mess-System individuell anpassen

Bild 4: Cursor-Variablen werden zugeordnet (Archiv: Vogel Business Media)

Zur Auswahl stehende Events sind beispielsweise: Beenden einer Messung, dedizierte Cursorbewegungen in den Darstellungsfenstern oder Speichern der Daten oder Anlegen eines neuen Projektes. Der Anwender hat damit eine flexible Möglichkeit, das Mess-System den eigenen Bedürfnissen und Auswerteanforderungen anzupassen.

Werden die Variablen der Analysefunktionen zu denen in den Signal-Darstellungsfenstern verwendeten Cursors zugeordnet, können diese automatisch die Ergebnisse kennzeichnen. Ebenso lassen sich die Cursorpositionen zum Parametrieren der Algorithmen nutzen.

Dem Anwender stehen in der Funktionsliste des Sequenzers vordefinierte Elemente zur Visualisierung, Ablaufsteuerung, Eingabefelder, Ausgabetabellen und Algorithmen zur Signalanalyse und Reportgenerierung zur Verfügung. Über die definierte Programmierschnittstelle kann diese Liste mit selbst erstellten DIAdem-Reports und Scripts erweitert werden.

DIAdem Funktionen erstellen und integrieren

Die Kommunikation zwischen Saturn Studio II und DIAdem erfolgt über Funktionen des LabVIEW<->DIAdem Connectivity VI Kits. Um das ansonsten automatische Generieren und Einbinden von „user variable definition files“ (.vas) unter DIAdem zu umgehen, werden die gewünschten Parameter über eigens angelegte Gruppen ausgetauscht.

Hin- und Rückgabeparameter übergeben

Der Programmierer kann mit den Daten einfach und übersichtlich arbeiten. In den Gruppen „Variables“ und „Results“ werden die Hin- und Rückgabeparameter übergeben. In der folgenden Beispielapplikation wird auf den Daten eines gespeicherten Messkanals eine FFT ausgeführt und unter dem in „RESULTS/FFT_OUT“ übergebenen Dateinamen gespeichert.

Übergabeparameter berücksichtigen

Die neu definierte Funktion zur FFT-Analyse wird in Saturn Studio II über einen Eintrag in einer ASCII-Definitionsdatei implementiert. Dabei müssen die entsprechenden Übergabeparameter berücksichtigt werden. Sie müssen den Definitionen der Parameter in dem erstellten vbs-Script entsprechen.

Selbst generierte Funktion verwenden

Saturn Studio II lädt nach dem Programmstart die in dieser Datei aufgeführten Definitionen und erweitert die im Sequenzer zur Auswahl angebotene Funktionsliste entsprechend. Der Anwender kann die neu definierte Funktion nun in eigenen Sequenzen verwenden.

Funktionsaufrufe innerhalb einer Sequenz

Bild 6: Interne Struktur zum Aufruf von DIAdem vbs-Scripts (Archiv: Vogel Business Media)

Wird eine entsprechend definierte Funktion innerhalb einer Sequenz aufgerufen, werden innerhalb des Saturn Studio II folgende Aktionen durchgeführt.

  • Starten von DIAdem, falls noch nicht gestartet
  • Anlegen der Gruppen „Variables“ und „Result“
  • Übergabe aller Parameter an die Gruppen „Variables“ und „Result“
  • Ausführen der entsprechenden vbs-Datei unter DIAdem
  • Auslesen der Parameter aus der Gruppe „Result“ (Rückgabewerte)

Selbstdefinierte Routine einbinden

Sind die vbs-Routinen und Reports in den Messablauf integriert, können in den Sequenzen auch selbst definierte LabVIEW-Routinen und DLL-Funktionen eingebunden werden. Damit lässt sich eine anwendungsbezogene Programmierung des Saturn Studio II erreichen. Und das bis zum Gestalten eigener grafischer Oberflächen.

Sequenzen und Zuordnungen werden beim Systemstart automatisch geladen, so dass für den Endanwender eine in sich geschlossene und optimierte RunTime-Applikation bereit steht.

Austausch beliebiger Parameter

Damit mit den Übergabeparametern flexibel gearbeitet werden kann, wird an einer DLL gearbeitet, die den Austausch beliebiger Parameter durch Einsatz von VARIANTs applikationsübergreifend zwischen LabVIEW, DIAdem und eigenen Programmen ermöglicht.

*Jürgen Martini, Martin Hessing und Andreas Reiff arbeiten bei der Gesellschaft für Angewandte Mikro- und Optoelektronik AMO in Aachen.

Artikelfiles und Artikellinks

(ID:268797)