[IDLE] LabVIEW User Group Stuttgart

cancel
Showing results for 
Search instead for 
Did you mean: 

Fragen eines LabView-Anfängers

Liebes Forum,

ich selbst bin seit 4 Wochen dabei, LabView mehr oder weniger erfolgreich anzuwenden und scheitere an der ein oder anderen Kleinigkeit. Vielleicht wird sich finden es die erfahrereren Kollegen etwas amüsant. Ich kam über Herr Jacky auf dem LabView-Grundlagen Seminar zu diesem Forum und hoffe auf eure Unterstützung.

Ich möchte einen Sitz testen und bestimmte Funktionen überprüfen. Für diese Test gibt es verschiedene Stationen, die eigentlich nacheinander kommen, manchmal soll aber auch zwischen den Stationn gesprungen werden können. Ich habe Bilder angefügt, damit es bisschen verständlicher ist. Der Hauptbildschirm zeigt die bisherigen Stationen. Vom Hauptbildschirm möchte ich in die jeweiligen Reiter springen, sobald auf die Butttons gedrückt wird. Wie könnte ich das machen?

Desweiteren möchte ich im Reiter Initialisieren Werte eingeben, die im späteren Verlauf des Programms immer wieder aufgerufen werden. Wobei es davon abgängt (Enum "Betriebtemperatur"), welche Betriebstemperatur ausgewählt wurde. Wie könnte ich das machen? Die Werte abspeichern? Oder lokale Variablen verwenden?

VIelen Dank schon mal für eure Hilfe.

JaGenau

Download All
0 Kudos
Message 1 of 10
(10,011 Views)

Hallo "JaGenau",

einfach im Netz mal ausführlich nach dem Architekturmuster "labview state machine" oder "labview event driven state machine" suchen bzw. zum Einstieg in LV (ab 2012) ein neues Projekt anlegen und die Template "Simple State Machine" verwenden.

Gruß

Markus

0 Kudos
Message 2 of 10
(5,756 Views)

Hallo Markus,

Regsisterkarte und Schieberegister habe ich soweit ausprobiert und ich kann zwischen den Registern springen und dies auch gezielt steuern. Aber die Umschaltung läuft nur im Blockdiagramm und nicht im Frontpanel. Wie funktioniert das Umschalten zwischen den Reitérn im Frontpanel?

Grüße

Siegfried

0 Kudos
Message 3 of 10
(5,756 Views)

Panel mit Reitern rechtsklicken und einen Eigenschaftsknoten für den "Wert" erzeugen. Diesen auf "Alle in Schreiben ändern" setzen und dann per Rechtsklick auf den Konnektor eine Konstante erzeugen und auf den Namen des Reiters setzen den Du gerade brauchst. Achtung: wenn Du nachträglich Reiternamen änderst oder hinzufügst dann musst Du die Konstante neu erzeugen...aber das ist eine andere Geschichte   ...nämlich die von den kleinen Type Definitions.

Viel Erfolg

Markus

0 Kudos
Message 4 of 10
(5,756 Views)

Hi Markus,

das mit dem automatischen Weiterleiten in den Reitern hat problem geklappt. Danke für die Hilfe.

Jetzt bleibt aber immer noch die Frage, wie ich die Initialisierung in meinem Programm löse. Ich habe Screenshots vom Frontpanel und Blockdiagramm oben geändert. Ich möchte Werte links eingeben und rechts anzeigen lassen. Diese Werte brauche ich später im Programm noch. Soll ich diese Werte abspeichern und später wieder einlesen oder kann ich diese zwischen den Registern durchschieben? Wichtig dabei ist, dass die Werte von der Betriebtemperatur abghängig sind, d.h. je nach Betriebstemperatur sind es andere Werte, die auch später im Programm unterschieden werden.

Gruß

Siegfried

0 Kudos
Message 5 of 10
(5,756 Views)

Zunächsteinmal würde ich recherchieren wie man mit Config File VIs (Englische LV-Version) .ini-Dateien einliest und schreibt. Dein Ansatz frustriert Dich sonst spätestens wenn Du zum zweiten Mal von Hand die Parameter eingeben musst, weil Du das Programm neu gestartet hast. Außerdem solltest Du Dir auch überlegen ob Du die Temperatur evtl. in den Parametersatz mit hineinnimmst.

0 Kudos
Message 6 of 10
(5,756 Views)

Hi Siegfried,

wenn Du Daten zwischen den einzelnen States übergeben willst geht das mit einem Schieberegister. Erzeug einfach ein Cluster in dem Du alle relevanten Daten einfügst und hol Dir in den einzelnen States die benötigten Werte mit der Funktion Unbundle by name.

Wenn Du von dem Cluster eine Typdefinition erstellst kannst Du auch nachträglich noch Daten hinzufügen oder wegnehmen ohne gleich den ganzen Code überarbeiten zu müssen. Wie Markus schon vorgeschlagen hat, schau Dir mal das Statemachine Template an, des zeigts ganz gut und ist auch gut beschrieben in den Dokufiles.

Viele Grüße

Carsten

0 Kudos
Message 7 of 10
(5,756 Views)

Hallo Siegfried,

was sags Du über NI LabVIEW Basic 1 und 2 kurs zu besuchen??|No free ride.

Certified LabVIEW Architect
Certified TestStand Architect
0 Kudos
Message 8 of 10
(5,756 Views)

Mir hat das Seminar sehr viel gebracht. Ich habe in kurzer Zeit gelernt, wie ich mit LabView umgehen soll. Vor allem die Systematik ist dabei sehr wichtig. Programmieren kann jeder, aber etwas übersichtlich und kompakt zu programmieren ist die Kunst. Und das hat das Seminar vermittelt. Ich bin sehr froh es gemacht zu haben und kann es sehr gut umsetzen. Leider habe ich konnte ich auch noch Basic 2 besuchen, aber die Grundlagen sind auf jeden Fall da.

Also ich kann es nur empfehlen. Es ist für Diplomanden und Bacheloranden usw. sehr günstig. Für 1500€ hätte ich den Kurs sehr wahrscheinlich nicht bezahlt bekommen.

Grüße

Siegfried

0 Kudos
Message 9 of 10
(5,756 Views)

Hallo Markus und Carsten,

nachdem ich nun einiges ausprobiert habe, habe ich mich für das Schieberegister entschieden. Soweit funktioniert das Initialisieren auch sehr gut. Danke Carsten für den Typ mit der Typdefinition, habe ich natürlich gemacht. Damit bleibt mir mich nochmal bei allen zu bedanken und alles Gute zu wünschen.

Gruß

Siegfried

0 Kudos
Message 10 of 10
(5,756 Views)