LabVIEWForum.de
Ratlos! - Programmablauf mittels externer Datei steuern - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Ratlos! - Programmablauf mittels externer Datei steuern (/Thread-Ratlos-Programmablauf-mittels-externer-Datei-steuern)



Ratlos! - Programmablauf mittels externer Datei steuern - Sebby2008 - 12.08.2008 10:12

Hallo zusammen!

Als LabVIEW-Einsteiger habe ich folgendes Problem:
Mittels einer externen Datei (ein Skript-File im .txt Format) sollen in LV bestimmte
Routinen aufgerufen werden.
Den Syntax des Skript-Files kann ich frei definieren.
Wie kann ich denn nun mit dieser externen Datei in LV arbeiten?
Das Einlesen einer Datei ist mir bekannt, aber ich wie bringe ich LV dazu die Befehle
aus der externen Datei so zu bearbeiten wie es gewollt ist???

Das Skript-File soll einen automatisierten Test steuern und alle Testbefehle enthalten.

Das Skript-File sollte folgendermaßen aufgebaut sein:
Als Beispiel der Power Supply Test

*Power Supply Test*
TEST_PS (Name der Routine in LV)
Zeit=10 (Parameter für die LV-Routine)
Spannung=5 (Parameter für die LV-Routine)

LabVIEW soll nun beim Einlesen der Datei erkennen, dass es die Power Supply Test-Routine
aufrufen soll, welche ein externes Gerät ansteuert, und dieses somit für 10 Sekunden
auf 5 Volt einstellt.

Über Hilfe und Vorschläge würde ich mich SEHR freuen!!!
Danke schon mal im voraus.

Viele Grüße,
Sebby


Ratlos! - Programmablauf mittels externer Datei steuern - Y-P - 12.08.2008 10:29

So wie Du das aufbauen möchtest, könntest Du das auch in einer INI-Datei machen.

Wenn nicht, dann kannst Du eine Textdatei (String) ja nach einem Muster (Pattern) durchsuchen. Die Werte kannst Du dann auch mit den String-Funktionen herausbekommen.
Spannung, Dauer,... kannst Du in einem Case ausführen. Die Befehle zu Deinem Gerät stehen ja im Handbuch.

Gruß Markus


Ratlos! - Programmablauf mittels externer Datei steuern - Sebby2008 - 12.08.2008 11:08

Schon mal vielen Dank, Markus!

d.h. wenn ich eine INI-Datei verwende, erspare ich mir das Suchen innerhalb der Datei?
Kann LV eine INI-Datei direkt verarbeiten?
Noch ne Frage als Neuling:
Wie erstelle ich eine INI-Datei, welche Vorteile bietet dieses Format und wie binde ich eine INI-Datei
ins LV ein? :-)

Wenn ich eine .txt Datei verwende, müsste ich den Befehl "In String suchen..." verwenden?


Ratlos! - Programmablauf mittels externer Datei steuern - Y-P - 12.08.2008 11:17

Schau' Dir mal hier das Bsp. "Parametermaske" an.
Wenn Du die Textdatei verwendest, dann kannst Du auch "Match Pattern" usw. verwenden. Schau' Dir einfach mal die String-Funktionen an.

Gruß Markus

' schrieb:Schon mal vielen Dank, Markus!

d.h. wenn ich eine INI-Datei verwende, erspare ich mir das Suchen innerhalb der Datei?
Kann LV eine INI-Datei direkt verarbeiten?
Noch ne Frage als Neuling:
Wie erstelle ich eine INI-Datei, welche Vorteile bietet dieses Format und wie binde ich eine INI-Datei
ins LV ein? :-)

Wenn ich eine .txt Datei verwende, müsste ich den Befehl "In String suchen..." verwenden?



Ratlos! - Programmablauf mittels externer Datei steuern - Sebby2008 - 15.08.2008 10:06

Hallo zusammen!

Habe 2 Wochen LV-Erfahrung und stehe nun vor folgender großer Aufgabe:

Um ein LV-Programm, das einen Test steuern soll, automatisiert ablaufen lassen zu können,
soll eine externe Datei im .txt Format mit den Routinennamen und den dazu gehörigen Parametern
eingelesen werden und das eigentliche LV-Programm steuern.
In LV sollen alle Routinen (z.B. 15 an der Zahl), die dann im eigentlichen Test abgearbeitet werden können,
implementiert werden.
Der Anwender soll dann mittels der Textdatei (Script) bestimmen können, welche einzelnen Routinen der insgesamt 15 Routinen durchgeführt werden.
Zusätzlich soll die Textdatei Parameter und Sollwerte an die Routinen in LV übergeben.

Um das ganze zu verdeutlichen, ein Beispiel für die Textdatei:

#Power Supply Test# (auskommentiert)
CMD TEST_PS; PAR t=10 U=5; Soll U=5

#Test Current#
CMD TEST_I; PAR t=5; Soll I=0,025

CMD steht dabei für eine Routine (z.B. TEST_PS), PAR sind die an die LV-Routinen zu übergebenen Paramter (z.B. t=10),
Soll steht für die Sollwerte (z.B. U=5V)

D.h. im Power Supply Test soll für 10 Sekunden eine Spannung von 5 Volt an das Gerät angelegt, und der tatsächliche Wert mit dem Sollwert (5V) verglichen werden.

Das Problem besteht nun darin die Textdatei in LV zu verarbeiten!!!
LV soll erkennen, dass nach CMD ein Routinenname folgt, PAR die Parameter für die Routine sind und Soll die Sollwerte
für den Vergleich mit den Istwerten sind, die am Gerät gemessen werden.
LV muss nach dem Einlesen der Datei erkennen, dass es z.B. die Routine TEST_PS mit den Parametern Zeit (t=10s) und Spannung (U=5V) aufrufen und ausführen soll!
Die Routinen selber werden in LV geschrieben.

Habe schon mit den String-Funktionen versucht was zu schaffen, aber ich komme damit nicht weiter!

Daher würde ich mich über Hilfe hier im Forum SEHR freuen!!!

Schon mal danke im Voraus.

Viele Grüße,
LabVIEW-Anfänger Sebby


Ratlos! - Programmablauf mittels externer Datei steuern - Y-P - 15.08.2008 10:09

Hallo Sebby,

bitte keine Doppelpostings! Grrr
Ich habe die Themen verbunden, falls Du Dich wunderst.

Gruß Markus


Ratlos! - Programmablauf mittels externer Datei steuern - Y-P - 15.08.2008 10:11

.... nun zu Deinem Problem. An was hängst Du denn? Lade doch mal Dein VI hoch.

Gruß Markus

' schrieb:Hallo Sebby,

bitte keine Doppelpostings! Grrr
Ich habe die Themen verbunden, falls Du Dich wunderst.

Gruß Markus



Ratlos! - Programmablauf mittels externer Datei steuern - Sebby2008 - 15.08.2008 10:26

Hi Markus,

sorry wegen dem Doppelposting!

Bisher lese ich nur die Datei ein und überprüfe, ob eine bestimmte Routine ausgeführt werden soll.

Mein Problem ist dann das übergeben der Werte an LV!!!!
Habe folgende idee:
Bis zu jedem CMD nach dem Routinennamen suchen, wenn gefunden, die folgenden Paramter unter PAR mitübergeben und die Sollwerte unter Soll mitübergeben.
Dann nach dem nächsten CMD suchen usw.

Aber habe leider keine Ahnung wie ich das im LV implementieren soll!!!

Gruß,
Sebby
Lv85_img[attachment=13980]
[attachment=13981]


Ratlos! - Programmablauf mittels externer Datei steuern - Tobias.Raeuchle - 29.08.2008 13:38

Hi,

schau dir das angehängte File mal an, so haben wir uns eine Art ScriptProgrammierung geschaffen....Können ein paar Fehler kommen zwecks fehlenden SubVis etc.

Solltest du dazu Fragen haben nur zu...

Lv82_img


Ratlos! - Programmablauf mittels externer Datei steuern - MikeS81 - 30.08.2008 16:00

Hallo Sebby,
das klingt als wolltest du eine Art TestSequenzer schreiben. Hier gibt es ein Beispiel dazu.
http://forums.ni.com/ni/board/message?boar...=251805#M251805

Vielleicht hilft es ja. Mellow
Mike