LabVIEWForum.de - 3 oder mehr Ereignisse

LabVIEWForum.de

Normale Version: 3 oder mehr Ereignisse
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Guten Morgen LabVIEWer,

hab gerade ein kleines Problem und komm nicht so recht auf einen Lösungsansatz.

Ich habe einen Array bei dem ich den letzten Wert auslesen muss und dann Vergleichen. Jetzt habe ich da folgende 3 Möglichkeiten:
1. Eingabewert ist größer als letzter Arraywert, 2. Eingabewert ist kleiner als letzter Arraywert und 3. Eingabewert = Letzter Arraywert.
Dem entsprechend sollen auch immer andere Ereignisse eintreten. Bei nur zwei Möglichkeiten käme ich mit einer Case Struktur aus, aber bei mehr nicht. Auch über eine Event-Struktur habe ich schon nachgedacht, aber da geht das glaub ich erst ab Version 8.0, dass ein Event bei einem vorgegebenen Wert eintritt.
Mit geschachtelter Case-Struktur bin ich auch nicht recht weit gekommen.
Wie könnte man das denn lösen?

Gruß
Georg

PS: Arbeite mit Version 7.2 auf BS WindowsXP
Hallo,

verstehe ich nicht,

kannst Du das Beispiel hochladen? Case Structures können auch mehr als 2 Fälle :-)

Gottfried
z.B. so wie im Anhang.

Gruß Markus
Danke für die schnellen Antworten! Hab grade herausgefunden, wie man in einer Case-Struktur mehrere Fälle erstellt. Bisher habe ich die Struktur nur mit Boolean verwendet, aber das geht ja auch mit Zahlen und Strings Rolleyes
Sorry, bin halt immer noch ein blutiger Anfänger Hmm
' schrieb:z.B. so wie im Anhang.

Gruß Markus

Die Lösung ist an sich richtig. Du hast nur vergessen das man DBLs nicht direkt auf absolute Gleichheit vergleichen kann. Bei Doubles/Floats muss man immer mit einen +/- Bereich (-0,00001 und 0,00001) um den Vergleichswert vergleichen.

VDB
Wegen Rundungs"problemen"? Stimmt's? Oder wieso sonst?
Aber wie sieht das dann in der Praxis aus?

Gruß Markus

' schrieb:Die Lösung ist an sich richtig. Du hast nur vergessen das man DBLs nicht direkt auf absolute Gleichheit vergleichen kann. Bei Doubles/Floats muss man immer mit einen +/- Bereich (-0,00001 und 0,00001) um den Vergleichswert vergleichen.

VDB
Na man vergleicht einfach "größer/gleich X+n%", "kleiner/gleich X-n%" , am besten nimmst du dafür das VI "InRange and Coerce" auf der Palette Comparison!

A.
Und was ist für den Bereich dazwischen? Wenn ich z.B. größer/gleich 3,01 und kleiner/gleich 2,99 vergleiche, dann fehlt mir doch 3,00.

Gruß Markus

' schrieb:Na man vergleicht einfach "größer/gleich X+n%", "kleiner/gleich X-n%" , am besten nimmst du dafür das VI "InRange and Coerce" auf der Palette Comparison!

A.
' schrieb:Und was ist für den Bereich dazwischen? Wenn ich z.B. größer/gleich 3,01 und kleiner/gleich 2,99 vergleiche, dann fehlt mir doch 3,00.

Gruß Markus

Fast richtig:

größer/gleich 2,99 und kleiner/gleich 3.01

VDB
' schrieb:Na man vergleicht einfach "größer/gleich X+n%", "kleiner/gleich X-n%" , am besten nimmst du dafür das VI "InRange and Coerce" auf der Palette Comparison!

Für diese Aufgabe ist wohl eher die Signum-Funktion das Optimale:

[attachment=7187]

Edit: Sehe gerade, ihr habt hier Rundungsprobleme mit ins Spiel gebracht, da ist mein Vorschlag natürlich nicht so gut.
Seiten: 1 2
Referenz-URLs