Projektparameter

Für bauähnliche Prüflinge unterscheiden sich Prüfabläufe meistens nur in wenigen Details, wie zum Beispiel Toleranzgrenzen oder Art der Stromversorgung. Um Mehraufwand bei Entwicklung und Pflege solcher Testfälle zu vermeiden, können sogenannte Projektparameter verwendet werden. Projektparameter werden in einer Tabelle gespeichert und anhand einer Produkt-ID identifiziert. Dazu wird beim Start des Prüfprogrammes der gewünschte Datensatz aus der Tabelle gelesen. Die Felder des Datensatzes können dann im weiteren Programmablauf in Ausdrücken verwendet werden. Im Folgenden wird anhand eines Beispiels die Verwendung der Projektparameter erläutert.

Wir möchten einen Prüfablauf entwickeln mit dem wir verschiedene baugleiche Relais testen können. In unserem Beispiel möchten wir drei verschiedene Relaistypen namens Rel5, Rel12 und Rel24 mit Nennspannungen von 5V, 12V und 24V prüfen. Dabei sind die Anschlüsse der Relaisspule mit der Stromversorgung (PSU1) verbunden. Die Messkanäle 1 und 2 sind verbunden mit den Kontakten des Relais, so dass wir durch eine Widerstandsmessung an diesen Kanälen feststellen können, ob das Relais geschlossen ist.

Wir entwerfen zuerst einen statischen Prüfablauf. Wir beginnen damit das Netzteil einzuschalten und die Messkanäle zu verbinden. Danach messen wir den Widerstand auf dem Relaiskontakt und werten diesen aus. Zuletzt wird die Stromversorgung abgeschaltet.

// Netzteil einschalten
PowerSupply(PowerOn:True, Nr:1, AC:False, Current:0.1, Voltage:0);

// Messkanäle 1 und 2 schalten
MSU(DiPol:True, IdA:1, IdB:2, Supply:[]);

// Widerstandsmessung
ADX(Time:20, Detect:False, Type:3, Range:1, ADXMode:1);

// Auswertung
Ergebnis(Max:150, Value:Messwert, Unit:"Ohm", Text:"Relaiskontakt geschlossen", Min:0);

// Netzteil abschalten
PowerSupply(PowerOn:False, Nr:1, AC:False, Current:0, Voltage:0);

Wir wollen jetzt das Programm so anpassen, dass die anzulegende Spannung aus der Projektparametertabelle gelesen wird. Dazu öffnen wir zuerst den Einstellungsdialog für Projektoptionen: Optionen/Einstellungen/Aktuelles Projekt. Hier finden sich die Einstellungen zu den Projektparametern.

Zuerst müssen wir den Pfad zur Parametertabelle angeben. Geben wir eine Datei an, die noch nicht existiert, so wird eine neue Tabelle angelegt. Die Tabelle wird im CSV-Format gespeichert und kann mit einem beliebigen Texteditor eingesehen werden. Um Änderungen an der Tabelle über einen Texteditor zu verhindern kann ausserdem der Schalter Schütze Einträge gegen manuelle Änderung gesetzt werden. Wir legen eine neue Tabelle namens Projektparameter an.

Wurde für das Projekt eine Tabelle definiert, können wir diese über den integrierten Tabelleneditor editieren. Dieser kann über den Menüpunkt Bearbeiten/Prüfparametertabelle geöffnet werden. Eine neue Tabelle wird immer mit den vordefinierten Feldern ID, Version, Datum, Benutzer und Kommentar erstellt. Das Feld ID enthält eine eindeutige Bezeichnung (zum Beispiel Artikelnummer) des Datensatzes. Sie wird einmalig beim Erstellen eines neuen Eintrages abgefragt. Die Felder Datum und Benutzer geben an, durch welchen Benutzer der Eintrag wann zuletzt geändert wurde. Die Versionsnummer wird bei jeder Änderung um eins erhöht. Das Feld Kommentar kann beliebig gefüllt werden und sollte eine kurze Beschreibung des Datensatzes enthalten. Bis auf das Feld Kommentar kann keines dieser Felder vom Benutzer verändert werden.

Durch Neuer Parameter kann zu den bestehenden Feldern ein neues Feld hinzugefügt werden. Dazu ist die Eingabe eines Feldnamens nötig. Alle Feldnamen müssen eindeutig sein. Wurde der Feldname vergeben, wird eine neue Spalte in der Tabelle angelegt. Diese kann später vom Programm aus abgefragt werden. Wir legen eine Spalte mit der Bezeichnung Nennspannung an.

Nun legen wir für jeden unserer Prüflinge einen neuen Datensatz an. Um einen Datensatz anzulegen klicken wir auf Neue ID. Ein Dialog fragt nach der ID für den neuen Datensatz. Hier geben wir Rel5 für das erste Relais ein.

Die Felder Kommentar und Nennspannung können durch anklicken editiert werden. Hier tragen wir einen sinnvollen Kommentar und die Nennspannung ein. Wir wiederholen diese Schritte für die beiden anderen Relaistypen, diesmal mit anderer ID und Nennspannung. Zum Schluss sollte die Tabelle so aussehen:

ID

Version

Datum

Benutzer

Kommentar

Nennspannung

Rel5

1

12.12.2022 16:09:05

GTS

Relais mit 5V Nennspannung

5

Rel12

1

12.12.2022 16:10:16

GTS

Relais mit 12V Nennspannung

12

Rel24

1

12.12.2022 16:10:23

GTS

Relais mit 24V Nennspannung

24

Beim Start des Prüfprogramms müssen wir den aktuellen Datensatz auswählen. Dazu verwenden wir die Funktion SelectParamDataSet, der wir die ID als String übergeben. Wird eine nicht vorhandene ID übergeben erhalten wir eine Fehlermeldung. Wir erfragen die ID beim Benutzer durch ein Eingabefeld und speichern das Ergebnis in der Variablen RXDString. Danach rufen wir die Funktion SelectParamDataSet auf und übergeben als Parameter die eingelesene ID.

// Abfrage der Datensatz-ID
repeat
    EingabeBox(Prompt:"Rel5, Rel12 oder Rel24", Variable:RXDSTRING, Caption:"Relaistyp");
until SelectParamDataSet(RXDSTRING)

Zuletzt müssen wir den Wert der Spannung aus der Tabelle lesen. Dazu stehen uns zwei Funktionen GetStrParam und GetRealParam zur Verfügung, wobei GetStrParam den Wert des Feldes direkt zurückgibt, während GetRealParam versucht, aus dem Feldinhalt eine Zahl auszulesen. Wir verwenden diese um die Spannung für das Netzteil anzugeben:

// Netzteil einschalten
PowerSupply(PowerOn:True, Nr:1, AC:False, Current:0.1, Voltage:GetRealParam("Nennspannung"));

Führen wir das Programm aus, wird das Netzteil abhängig von der Relais-ID beschaltet. Die Tabelle kann beliebig viele Felder verwalten.