LabVIEWForum.de
Array zurücksetzen mittels Eigenschaftsknoten?! - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Array zurücksetzen mittels Eigenschaftsknoten?! (/Thread-Array-zuruecksetzen-mittels-Eigenschaftsknoten)



Array zurücksetzen mittels Eigenschaftsknoten?! - tommy111 - 18.08.2008 13:47

Hiho,

folgende Situation:

ich hab in meiner Programmschleife ein Schieberegister drin mit dem ich mir all meine Messdaten speichern kann (--> Array).
Drücke ich nun den "Stopp" Button und dann wieder "Start", so ist das Array (Schieberegister wieder auf Null gesetzt. Soweit so gut...

In meinem Programm befindet sich zusätzlich noch eine Case-Struktur (Fall 1 bis Fall 3) mit der ich meine Messdaten unterschiedlich weiterverarbeiten kann.

Meine Frage ist nun;
kann ich das Array (Schieberegister) auf Null setzen, ohne das Programm anhalten zu müssen?
Ich will also das Array auf Null setzen, sobald ich den Case wechsel (z.B.: Fall 1 auf Fall 3).
Ich wollte diese Problem über "Eigenschaftsknoten" der Falleingabe lösen, hab aber noch nicht die richtige Funktion dafür gefunden. Wall

Ich hab mal fix ein simples Beispiel erstellt, damit jeder weis was und worum es geht:

[attachment=14020]


Array zurücksetzen mittels Eigenschaftsknoten?! - Kvasir - 18.08.2008 14:18

Warum kompliziert, wenns doch auch einfach gehtWink

Zieh dein Array doch einfach durch die Casestruktur durch. Willst du es 0 setzen, dann benutze einfach eine 0 Konstante für den Ausgang aus der Casestruktur. Ansonsten wird es durchverbunden.


Array zurücksetzen mittels Eigenschaftsknoten?! - RoLe - 18.08.2008 14:20

' schrieb:Ich hab mal fix ein simples Beispiel erstellt, damit jeder weis was und worum es geht:

Bezogen auf dein Bsp. kannst du das z.Bsp so machen.
Aber ev. solltest du dich mal mit StateMachine und Events schlau machen.


Array zurücksetzen mittels Eigenschaftsknoten?! - tommy111 - 18.08.2008 15:48

Zitat:Bezogen auf dein Bsp. kannst du das z.Bsp so machen.

das bringt mir aber leider nicht das richtige Ergebnis. Huh

Ich will doch im Falle eines Case-Wechsels (z.B.: Fall 1 auf Fall 2) das Array nur kurz rücksetzen (so ne art reset), dann aber im gleichen fall sofort wieder das Array vollschreiben mit den neuen Daten.

..oder versteh ich dein Beispiel falsch @RoLe?? Was ist überhaupt in die Enum-Konstante reinzuschreiben??.. Sollen da die Cases in gleicher Zeichenfolge rein??KA


Array zurücksetzen mittels Eigenschaftsknoten?! - RoLe - 19.08.2008 07:45

' schrieb:das bringt mir aber leider nicht das richtige Ergebnis. Huh

Ich will doch im Falle eines Case-Wechsels (z.B.: Fall 1 auf Fall 2) das Array nur kurz rücksetzen (so ne art reset), dann aber im gleichen fall sofort wieder das Array vollschreiben mit den neuen Daten.

..oder versteh ich dein Beispiel falsch @RoLe?? Was ist überhaupt in die Enum-Konstante reinzuschreiben??.. Sollen da die Cases in gleicher Zeichenfolge rein??KA

Hmm, aus deiner Enum machst du eine "Strict Typ Definition" und danach machst du davon eine Konstante.
Somit sind nun deine Enum und alle davon erstellten Konstanten usw. immer gleich auch wenn du das Grundelement, deine TypDef Enum änderst.

Es war ja nur ein Bsp. das folgendes macht.
Bei einem wechsel der Typdef ist die Bedingung "true" da im SR der vorherige Wert drinn steht.
Damit wird, die leere Arraykonstante verwendet, wie wenn du das Vi zum erstenmal laufen lässt.

und noch was, Nein, mit Eigenschaftsknoten geht das nicht.


Array zurücksetzen mittels Eigenschaftsknoten?! - tommy111 - 19.08.2008 13:03

Zitat:Bei einem wechsel der Typdef ist die Bedingung "true" da im SR der vorherige Wert drinn steht.
Damit wird, die leere Arraykonstante verwendet, wie wenn du das Vi zum erstenmal laufen lässt.

..hmm, ok, muß ich mir nochmal durch en Kopf gehn lassen. Beim Programmstart ist ja alles noch normal, nur sobald ich den Case wechsle schreibt der kontinuierlich ne Null ins Array rein. Muß mir das nochmal auf em Blatt Papier zeichen. Wacko


Zitat:und noch was, Nein, mit Eigenschaftsknoten geht das nicht.

..schade, das wäre natürlich die einfachste Variante gewesen. Dachte ich kann das dann über ne Eigenschaft dort auswählen. ..so kenn ich's zumindest von anderen Progammen her (Delphi, C++..). Aber ich hab schon gemerkt, LV is da en bißchen eigen und oft auch mal zickig in gewissen Sachen. ..aber ich bin ja noch en Noob und werds noch lernen. Top1