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 

Wertänderung in bestimmtem Bereich detektieren...



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!

01.07.2010, 12:14
Beitrag #1

Yantit Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 160
Registriert seit: Jun 2010

8.2.1
2010
de

63xxx
Deutschland
Wertänderung in bestimmtem Bereich detektieren...
Hallo!

Ich bin momentan auf der Suche nach folgender Funktionalität:

Ich werte den Minimalwert eines Arrays aus. Sollte dieser sich innerhalb eines bestimmten Bereiches bewegen (bspw. +- 3), kann das Programm normal weiterlaufen.
Verlässt der Wert dieses "Fenster", so soll ein Sub-VI aufgerufen werden, dass verschiedene Parameter ändert.

Leider weiß ich noch nicht, wie ich das lösen soll.

Gruß
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
01.07.2010, 12:20
Beitrag #2

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
Wertänderung in bestimmtem Bereich detektieren...
In Range and Coerce Function

Vergleichspalette.

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.07.2010, 12:32
Beitrag #3

Yantit Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 160
Registriert seit: Jun 2010

8.2.1
2010
de

63xxx
Deutschland
Wertänderung in bestimmtem Bereich detektieren...
' schrieb:In Range and Coerce Function

Vergleichspalette.

Danke! Warum ich das nicht selbst gesehen habe? Huh
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.07.2010, 14:28
Beitrag #4

Yantit Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 160
Registriert seit: Jun 2010

8.2.1
2010
de

63xxx
Deutschland
Wertänderung in bestimmtem Bereich detektieren...
Ok, soweit so gut.

Die Funktionalität leuchtet mir ein. Ich habe auch erste Versuche vorgenommen, die Sache zu implementieren. Dabei wollte ich mittels eines Schieberegisters den "neuen" Maximalwert (vom letzten Auslesezyklus) mit den beiden "Grenzwerten" vom davorgehenden Zyklus vergleichen. Leider bekomme ich zwischendurch immer wieder eine Null als Grenzwert (bzw. mit meiner Ergänzung + und -3) raus. Dadurch funktioniert mein VI leider nicht mehr so wie geplant.

Wie kann ich da Abhilfe schaffen?

Danke & Gruß

Lv09_img2


Sonstige .zip  LV09_FSM.zip (Größe: 305,74 KB / Downloads: 218)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.07.2010, 16:06 (Dieser Beitrag wurde zuletzt bearbeitet: 01.07.2010 16:06 von GerdW.)
Beitrag #5

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
Wertänderung in bestimmtem Bereich detektieren...
Hallo Yantit,

darf ich dich mal wieder an den Aufräumknopf erinnern?

"Leider bekomme ich zwischendurch immer wieder eine Null als Grenzwert"
Schon mal geguckt, wo die herkommt? Vielleicht mit einer Probe oder gar einer "conditional probe"?
Meine Vermutung:
Dein DequeueElement läuft in den TimeOut, gibt ein leeres Array aus - und das Maximum davon ist die Null... Bisher überprüfst du nicht den ErrorOut der Queue-Funktion!

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.07.2010, 18:24
Beitrag #6

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
Wertänderung in bestimmtem Bereich detektieren...
' schrieb:Meine Vermutung:
Dein DequeueElement läuft in den TimeOut, gibt ein leeres Array aus - und das Maximum davon ist die Null... Bisher überprüfst du nicht den ErrorOut der Queue-Funktion!
Gute Idee, aber bei einem TimeOut kommt doch kein Fehler im ErrorCluster. Meine Empfehlung: Werte den Ausgang "timed out?" aus:
   
Nur wenn der "False" ist, enthält der Ausgang "Element" was Sinnvolles. Zusätzlich könnte man noch die Länge des Strings überprüfen. z.B. so:
   
Wenn die Oder-Verknüpfung "True" ergibt, dann machst du nichts, und nur bei False suchst du nach dem Maximum.

Gruß, Jens

P.S.: Die Aufräumfunktion von LabVIEW ist zwar nett, dein Haupt-VI zeigt aber, dass sie bei so einem großen BD auch keinen übersichtlichen Code erzeugen kann. Ich empfehle dir dringend, hier von Hand nachzuarbeiten.

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
Anzeige
02.07.2010, 06:54
Beitrag #7

Yantit Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 160
Registriert seit: Jun 2010

8.2.1
2010
de

63xxx
Deutschland
Wertänderung in bestimmtem Bereich detektieren...
' schrieb:Gute Idee, aber bei einem TimeOut kommt doch kein Fehler im ErrorCluster. Meine Empfehlung: Werte den Ausgang "timed out?" aus:
[attachment=56255:Image01.png]
Nur wenn der "False" ist, enthält der Ausgang "Element" was Sinnvolles. Zusätzlich könnte man noch die Länge des Strings überprüfen. z.B. so:
[attachment=56256:Image02.png]
Wenn die Oder-Verknüpfung "True" ergibt, dann machst du nichts, und nur bei False suchst du nach dem Maximum.

Gruß, Jens

P.S.: Die Aufräumfunktion von LabVIEW ist zwar nett, dein Haupt-VI zeigt aber, dass sie bei so einem großen BD auch keinen übersichtlichen Code erzeugen kann. Ich empfehle dir dringend, hier von Hand nachzuarbeiten.

Danke!

Ich werde die Tipps mal probieren. Die Aufräumfunktion hatte ich tatsächlich benutzt, allerdings, wie schon erwähnt, hilft die auch nicht weiter. Ich werde die Sache händisch bereinigen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  DBL Datentypen auch im minus Bereich anzeigen handsch21 3 4.054 11.06.2018 06:46
Letzter Beitrag: GerdW
  Eventzähler bei Wertänderung 1990 8 6.289 22.05.2017 16:08
Letzter Beitrag: Freddy
  Listbox Selektierter Bereich ausgeben Nobby 5 5.236 22.12.2016 15:09
Letzter Beitrag: Tomtom89
Question Mit Wertänderung eine Case-Struktur ansteuern ChrisR_ 9 7.447 05.09.2016 11:21
Letzter Beitrag: TSC
  Ereignis "Wertänderung" verzögern aw 3 4.901 11.08.2016 16:08
Letzter Beitrag: Trinitatis
  Schieberegler Wertänderung Hydrogencarbonat 37 20.545 12.11.2015 19:14
Letzter Beitrag: Lucki

Gehe zu: