INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Datenspeichern wenn Knopf gedrückt



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

25.05.2009, 14:08
Beitrag #1

chaos2009 Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: May 2009

LV 8.6
-
en

86733
Deutschland
Datenspeichern wenn Knopf gedrückt
Hallo leute

ich komm gerade nicht weiter hab durch das Forum schon viele hilfreich Tipps und Anregungen für mein Programm bekommen.

Meine Programm soll die Daten von den Messkarten speichern das hat alles auch soweit funktioniert.
Da das Programm in dem Modus bis jetzt Daten ohne Ende produziert wollte ich mittels einem schalter (toggle switch) das speichern ein und ausschalten. Die Daten sollen in eine Binary file geschrieben werden.
Hab auch schon mehrere Strukturen (case, event, flat sequence) probiert. Meiner Meinung sollte es mit einer event schon klappen aber es geht gar nicht in die Schleife die ich im Anhang angefügt habe hinein, sondern sobald ich den Schalter betätige geht nichts mehr. Ich kann es nur noch über den roten Ausknopf abbrechen.
Meine Frage ist kann mir jemand helfen dies umzusetzen oder mal nen Blick auf meine Idee werfen.

Für Anregungen und Kritik bin ich sehr dankbar

Danke schon mal

gruß chaos2009


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
25.05.2009, 15:57
Beitrag #2

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Datenspeichern wenn Knopf gedrückt
Da wäre der Rest von Deinem VI auch interessant, um Dir helfen zu können.

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.05.2009, 16:29
Beitrag #3

chaos2009 Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: May 2009

LV 8.6
-
en

86733
Deutschland
Datenspeichern wenn Knopf gedrückt
Okay da geb ich dir vollkommen recht.
Nur ich weiß nicht ob du mit dem vi was anfangen kannst da es nur ein subvi ist und von den anderen Beiden gesteuert wird.
Welche ich ungern öffentlich stellen will.
Ich hab mal meinen jetztigen speicher versuch hochgeladen es ist in LV 8.6 geschrieben worden.
Danke nochmals für den Hinweiß mit dem komplett VI

gruß chaos2009


Angehängte Datei(en)
Sonstige .vi  Versuch5.vi (Größe: 38,29 KB / Downloads: 186)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.05.2009, 19:38
Beitrag #4

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
Datenspeichern wenn Knopf gedrückt
Dein VI zeugt davon, dass du die Grundprinzipien von LabVIEW offenbar noch nicht richtig verstanden hast.
Dies betrifft zuerst einmal das Datenflussprinzip!
1. Das Setzen von lokalen Variablen ohne Datenflussabhängigkeit im BD ist extrem gefährlich. Du weisst nicht, wann dieses Stück Code wirklich ausgeführt wird. LabVIEW kann so einen Code parallel abarbeiten, und wann dies geschieht, dass weisst du nicht.
   
2. Eine Struktur (wie z.B. eine While-Schleife) wird erst ausgeführt, wenn alle Eingänge anliegen.
Dies hat in deinem VI zur Folge: Deine While-Loop, in die du sehr blauäuigig eine Event-Struktur platziert hast, wird erst ausgeführt, wenn du die Datenerfassungs-Loop UND die "Consumer-Loop" per Stop-Button beendet hast. Somit kannst du maximal den letzten per Queue übertragenen Datensatz speichern.
   
3. Auch bei der Behandlung von Events gehst du komplett falsch vor. Eine While Loop, die du auch noch über ein User-Event abbrechen willst, gehört nie und nimmer in einen Event-Case hinein. Du erzeugst dir selber deinen Lock-Up hierüber:
   
Die Event-Struktur reagiert auf das Value-Change Event des Buttons "Speichern". Dann ist aber das FP gesperrt, und zwar solange, bis der Event-Case abgearbeitet ist. Das geht aber nicht, weil du über den Button "Speichern" auch wieder die While-Schleife abbrechen willst.

Mein Tipp: Mache dich erst einmal an Hand der Beispiele im NI-Examplefinder mit der Event-Struktur viel vertrauter. Da lernst du sicher eine ganze Menge dabei. Und wenn du das dann kapiert hast, dann kriegst du selber das mit dem Speichern hin.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.05.2009, 07:25
Beitrag #5

chaos2009 Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: May 2009

LV 8.6
-
en

86733
Deutschland
Datenspeichern wenn Knopf gedrückt
Hallo Jens

vielen dank für deine konstrucktive Kritik und die Hinweise wie ich es zum laufen bringen kann.
Ja du hast recht so ganz hab ich das noch nicht mit dem Fluss in LabVIEW verstanden.
Werd mich jetzt nochmal an den Exampel finder machen und hoffentlich kann ich da meine Probleme lösen.

vielen dank nochmal

gruß chaos2009
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Gehe zu: