LabVIEWForum.de
Erste Flanke wird unzuverlässig erkannt - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: Erste Flanke wird unzuverlässig erkannt (/Thread-Erste-Flanke-wird-unzuverlaessig-erkannt)

Seiten: 1 2


RE: Erste Flanke wird unzuverlässig erkannt - djlunatic - 17.09.2014 07:48

Hallo Gerd,
ich habe versucht alle deine Tipps umzusetzen. Wieder was gelernt.
Die erste Flanke wird leider immernoch falsch erkannt. Dafür wird dann offenbar manchmal die zweite Flanke auch ignoriert.

Ich weis mittlerweile auch wieder warum ich einen Whileloop mit "komischen" Vergleichen hatte. Mein Gedanke war dabei das ich im Falle eines Timeouts die WhileSchleife einfach beenden kann. Die For-Schleife will ja zwangläufige die Iterationen durchführen die zuvor festgelegt wurden. Das heißt sollte aus welchen Gründen auch immer gar kein externer Trigger angeschlossen sein muss ich den Timeoutfehler durch die ganze For-Schleife wiederholen und abwarten. Die Whileschleife hat beim ersten Timeout gestoppt.


RE: Erste Flanke wird unzuverlässig erkannt - GerdW - 17.09.2014 08:02

Hallo dj,

Zitat:Die For-Schleife will ja zwangläufige die Iterationen durchführen die zuvor festgelegt wurden. Das heißt sollte aus welchen Gründen auch immer gar kein externer Trigger angeschlossen sein muss ich den Timeoutfehler durch die ganze For-Schleife wiederholen und abwarten.
Falsch. Einfach mal die Hilfe zur FOR-Loop durchlesen!
Auch eine FOR-Loop kann man vorzeitig abbrechen!

Weitere Anmerkungen:
- Wieso liest du deine Messdaten als Waveform, wenn du hinterher doch nur die reinen Samples als Array benötigst? Warum nicht gleich als 1D-Array lesen?
- Warum wandelst du die Waveform mit einem ExpressVI in ein Array um? Warum nicht mit einer simplen Waveform-Funktion?
- Styleguide: Vorzugsrichtung beim Verdrahten ist "von links nach rechts"…
- Ich bin mir ehrlich unsicher, ob diese ganzen "Ist die Messung schon fertig?"-Abfragen hilfreich sind…


RE: Erste Flanke wird unzuverlässig erkannt - jg - 17.09.2014 08:02

(17.09.2014 07:48 )djlunatic schrieb:  Ich weis mittlerweile auch wieder warum ich einen Whileloop mit "komischen" Vergleichen hatte.
Rechtsklick auf For-Schleife -> Haken bei Conditional Terminal! Und schon kannst du eine For-Schleife bei Bedarf stoppen.

Gruß, Jens

EDIT: Gerd war 10 Sekunden schneller. Smile


RE: Erste Flanke wird unzuverlässig erkannt - GerdW - 17.09.2014 08:09

Guten Morgen Jens,

da musst du wohl früher aufstehen! Big Grin

("Nur" 10s, weil ich vorher noch für unseren Prüfstand eine neue EXE kompilieren musste…)


RE: Erste Flanke wird unzuverlässig erkannt - djlunatic - 17.09.2014 08:31

Danke für den Tip mit dem conditional terminal. Das funktioniert super.
Das direkte Einlesen eines 1D Arrays funktioniert auch top, dadurch fällt ja nun auch das Express VI für die Umwandlung weg. Warum ich das vorher so gemacht habe? Weil es funktioniert hat.
Die Abfragen ob die Messungen fertig sind oder nicht habe ich testweise bis auf die benötigten entfernt.

Leider immernoch das gleiche Problem


RE: Erste Flanke wird unzuverlässig erkannt - djlunatic - 17.09.2014 09:08

Ich stelle mir immernoch die Frage warum das Problem gerade bei der ersten Flanke auftritt und danach nichtmehr.
Bei meinem Messablauf wird ja im Fall von mehreren Messungen die letzte steigende Flanke nichtmehr ausgewertet. Kann es esin das diese trotzdem irgendwo erfasst wird, gespeichert bleibt und sich so auf die folgende Messreihe auswirkt?