LabVIEWForum.de - Wert in VI speichern (dynamisch)

LabVIEWForum.de

Normale Version: Wert in VI speichern (dynamisch)
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Guten Tag,

ich hab folgende Aufgabe: Ich möchte eine VI schreiben die, jedesmal wenn man sie startet ein Wert ausgibt, der um eins höher ist als der Wert den sie beim vorherigen start ausgegeben hat. Somit muss ich ja irgendwie den letzen ausgegebenen Wert in der Vi speichern. Die frage ist wie das geht. Es soll vorallem ohne irgendwelche zusätzlichen Dateien fkt.. Der Wert soll schon in der VI abgelegt sein.

Vielen Dank für eure Hilfe

warn-two
Falls das Labview nicht beendet wird kannst du das mit Shiftregistern realisieren, ansonsten musst du auf Dateien zum Zwischenspeichern zurückgreifen.

Wäre noch wichtig für die weitere Lösungsfindung, ob mit Starten einen Aufruf (Labview ruft das VI auf und Labview wird NICHT beendet) oder um wirklich jedes Mal um einen Neustart von Labview handelt.

Gruss Marc
Es ist alles möglich: es kann sein das Labview komplett neu gestartet wird und es kann sein das die VI in einem Programm öfters mal hintereinander aufgerufen wird. Die Lösung mit der zusätzlichen Datei zum zwischenspeichern ist eine Lösung, doch das gefällt mir nicht. Ich möchte nach Möglichkeit direkt in der VI speichern und mir somit die zusätzliche Datei sparen.
Dateien sind dazu gemacht die verschiedenen Werte zu speichern wenn ein Programm beendet wird, alles andere ist entweder unsauber oder eine Bastellösung. Tu dir und deinem Nachfolger einen Gefallen und verwende eine Datei zum Zwischenspeichern. So sehe ich das. Falls du Probleme mit Datei auslesen/schreiben oder Fragen zum besten Format hast kannst du diese gerne stellenWink


Wenn du lieber etwas basteln willst kannst du versuchen den geänderten Wert als DefaultValue zu speichern und beim Start den Wert auf den Defaultvalue zu setzen.

Quasi: DefaultValue auslesen -> Wert +1 -> Defaultvalue=Wert

Entscheide für dich selbst, was die Lösung ist die dir besser zusagt. Jedoch ist die Lösung über die Datei programmiertechnisch wesentlich sauberer.

Gruss Marc
Hallo


Hier mal einen Ansatz, ist das was du etwa suchst?

Lv86_img


lg
@Martin Heller

Neben Shiftregistern und FGV auch eine gute Möglichkeit um Werte zwischen zu speichern, jedoch gilt wie bei den beiden anderen Methoden: Wenn du Labview beendest sind deine Werte weg Dry

Sobald man ein Programm beendet sollte man mMn die Daten in einer Datei speichern, vorrausgesetzt natürlich man braucht sie nochWink

' schrieb:Es ist alles möglich: es kann sein das Labview komplett neu gestartet wird und es kann sein das die VI in einem Programm öfters mal hintereinander aufgerufen wird. Die Lösung mit der zusätzlichen Datei zum zwischenspeichern ist eine Lösung, doch das gefällt mir nicht. Ich möchte nach Möglichkeit direkt in der VI speichern und mir somit die zusätzliche Datei sparen.

Gruss Marc
' schrieb:Sobald man ein Programm beendet sollte man mMn die Daten in einer Datei speichern, vorrausgesetzt natürlich man braucht sie nochWink
Gruss Marc

Man kann auch einen Schlüssel in der Registrierung ablegen... und wieder auslesen. Da braucht man keine extra Datei. Man muss halt das entsprechende Recht dafür haben und sich nicht davor scheuen im Rückgrat von Windoof rumzupfuschen.

Gruß SeBa
' schrieb:Man kann auch einen Schlüssel in der Registrierung ablegen... und wieder auslesen. Da braucht man keine extra Datei. Man muss halt das entsprechende Recht dafür haben und sich nicht davor scheuen im Rückgrat von Windoof rumzupfuschen.

Gruß SeBa


Okay diese Möglichkeit habe ich nicht bedacht :oDanke für den HinweisDais
Also dann formuliere ich mich halt mal um: Wenn man Daten von einem Programm speichern will über die Lebenszeit des Programmes hinaus, muss man sie irgendwo ablegen. Entweder in einer Datei oder in der Registry. Aber sicher nicht im VI selbst Dry

Gruss Marc
Vielen Dank, für diese interessante Disskussion.

Ich werde die Sache mit den Default-werten einmal ausprobieren. Ansonsten ist der Vorschlag mit der Registry auch nicht schlecht.
Das Problem ist anscheinend allen klar.

Ich werde hier demnächst wieder berrichten.
Ich bin mir nicht sicher... aber das mit den Defaultwerten setzten klappt glaub ich nur in der IDE nicht zur Runtime.

Irgendeiner ders weiß wird das hier lesen und und am Wissen teilhaben lassen.


Gruß SeBa


EDIT:
Ach ja... für ein paar Werte mag die Registrierung ja noch herhalten... aber man sollte es nicht übertreiben.
Seiten: 1 2
Referenz-URLs