LabVIEWForum.de
Schwellenwert, Wert "halten" - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Schwellenwert, Wert "halten" (/Thread-Schwellenwert-Wert-halten)



Schwellenwert, Wert "halten" - Hattorii - 01.05.2014 17:19

Hallo zusammen!

Folgende Problemstellung:

Ich erfasse ein Signal und wenn dieses Signal einen Schwellenwert überschreitet (in diesem Fall 4,5, s. Bild) möchte ich dass die Boolean Variable "MV1" für 2 Sekunden den Wert "True" zugewiesen bekommt. Ich habe es mal versucht so umzusetzen wie es auf dem Bild zu sehen ist.
Habe aber eine Befürchtung: "MV1" soll 2 Sekunden lang "True" sein (Flat-Sequence). Während diesen 2 Sekunden wird aber evtl. der Wert von 4,5 wieder unterschritten. Wird in diesem Falle die Case-Struktur auf "False" gestellt bevor die Flat Sequence, welches unter - "True-Case" steht - durchlaufen wird? Oder wird in jedem Falle beim Überschreiten des Schwellenwertes die Sequenz einmal komplett durchlaufen?

Grüße,
Hattorii


RE: Schwellenwert, Wert "halten" - Trinitatis - 01.05.2014 17:54

Hallo Hattorii,

dein Reset ist etwas "gurkig" programmiert, da du nach dem Setzen der Var. bedingungslos wartest und in diesem Fall im betreffenden Datenflusszweig nix weiter gemacht wird, also der Prüfwert auch nicht abgeprüft wird. Im schlimmsten Fall liegt in diesem Zweig auch noch die Datenerfassung, die dann auch blockiert würde. Sollte die Wartezeit später mal auf mehrere Sekunden hochgesetzt werden, ist die Blockade umso gravierender.
Du hast dir allerdings auch den für dich positiven Nebeneffekt geschaffen, dass deine Befürchtung unberechtigt ist.

Cleverer wäre es, die Variable über eine Casestruktur bei Überschreitung zu setzen (bei nachfolgender Unterschreitung würde in dieses Case nicht reingesprungen werden) und die Prüfung der Leuchtdauer parallel zu machen und damit von dem Rest zu entkoppeln.

Zudem solltest du dir nochmal das Datenflussprinzip von LabView verinnerlichen - hättest du das getan, hättest du dir deine Frage nämlich selbst beantworten könnenBig Grin


Gruß, Marko


RE: Schwellenwert, Wert "halten" - Lucki - 01.05.2014 18:08

Dier Verwendung der Wait-Funktion müsste man mit parallelen Scheifen arbeiten, damit das HauptVI nicht andauernd blockiert wird. Besser, und außerdem so gut wie maßgeschneidert für das Problem, ist das VI "verstrichene Zeit"
[attachment=49551]
Halten, mit Wartefunktion realisiert, wäre auch nicht ohne Weiteres "Retriggerabel". Soll heißen: Wenn es während des Haltens zur erneuten Wertüberschreitung kommt, beginnt die Wartezeit nicht von Neuem. So wie bei manchen Hauslichtautomaten: Wenn man das Haus betritt und das Licht brennt schon, dann nützt es wenig, den Taster noch mal zu drücken. Es passiert dann trotzdem, dass man 10 sec später im Dunkeln steht.


RE: Schwellenwert, Wert "halten" - Hattorii - 18.05.2014 12:23

Hi!

Danke für eure Antworten!

Während dieser kurzen Wartezeit kommt es definitv nicht zur erneuten Überschreitung des Schwellenwertes. Daher denke ich sollte eine parallele Schleife Abhilfe schaffen.

Vielen Dank!!!