Analoges Signal über Zeit erfassen - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ) +---- Thema: Analoges Signal über Zeit erfassen (/Thread-Analoges-Signal-ueber-Zeit-erfassen) Seiten: 1 2 |
Analoges Signal über Zeit erfassen - GerdW - 14.10.2010 16:23 Hallo Dave, probier das VI mal aus Analoges Signal über Zeit erfassen - AlphaDave - 15.10.2010 15:51 Es hat mich Zeit und Nerven gekostet, aber kurz vor Feierabend hab ich es endlich geschafft! Danke Gerd, ohne deine Denkanstösse wäre ich völligst entnervt ins Wochenende gegangen. Dein Vi hat im Endeffekt genau das getan was ich brauchte, allerdings wurde der Versuch immer zu früh abgebrochen. Habe jetzt die ganze Sache ma so umgschrieben das es passt, ist in den Augen eines Profis wahrscheinlich unnötig verkompliziert Zum krönenden Abschluss würde jetzt noch das automatische zurücksetzen des Start-Boolesch die Sache abrunden, so dass man quasi nix mehr machen muss ausser den Startpfeil zu betätigen. Hat jemand eine Idee? Über die mechanischen Einstellungen der Boolisch hab ich es schon versucht, leider mit wenig erfolg. Danke. David [attachment=29982] LabVIEW 2009 [attachment=29981] Analoges Signal über Zeit erfassen - AnR - 15.10.2010 16:08 [edit: da war jemand schneller] Also, du packst immer zwei Sachen in deine Schleife, dabei brauchst du nur eins. Mir scheint du hast das Konzept noch nicht gar durchdrungen: Entweder du prüfst kontinuierlich (z.B. alle 10ms) ob deine Zeit-Differenz >7000 ist, dann brauchst du das Warten-VI nicht. Oder du Wartest 7s, dann brauchst du die Differenz nicht... [/edit] In deinem Fall würde vielleicht eine Sequenz besser passen, siehe Bild. Task starten/beenden in einer Schleife.... uhhhh, das graut. sollte man wenn möglich vermeiden! Lieber um die Sequenz eine Schleife mit Start-Knopf und Case Block bauen. Damit nur wenn nötig geschrieben wird... [edit2] Klar muss bei meinem Bild noch der Task zurückgesetzt werden... Analoges Signal über Zeit erfassen - AlphaDave - 15.10.2010 16:28 Hey AnR! ' schrieb:Also, du packst immer zwei Sachen in deine Schleife, dabei brauchst du nur eins. Mir scheint du hast das Konzept noch nicht gar durchdrungen Bin noch ziemlich neu in der Materie, wirst also so ziemlich recht haben. Ich werde jetzt einfach deine Version nehmen weil die einfach mal völlig entrümpelt aussieht. Vielen Dank! Zwar ist meine Version damit hinfällig aber wenigstens hab ich was dabei gelernt. Angenehmes Wochenende, ich geh nach Hause! David Analoges Signal über Zeit erfassen - GerdW - 16.10.2010 10:47 Hallo Dave, deine Version hat typische Anfängerfehler, deshalb würde ich nicht von "etwas gelernt" reden! - Wozu packst du eine While-Schleife um deine FOR-Loop? - Wozu weiterhin diese FormatDateTimeString-Funktionen, deren Ergebnis du nicht benutzt? - Wozu die Case-Struktur um die DO-Funktion? Die beiden Cases unterscheiden sich einzig in der boolschen Konstanten - und die wiederum hat den gleichen Wert wie der Case-Selektor! Du könntest also "Start" direkt mit den DOs verbinden und bräuchtest die Case-Struktur nicht... - Eine klassischen Race-Condition durch die lokale Variable "Start". Was wird wohl zuerst passieren: die lokale Variable wird auf FALSE gesetzt oder es wird aus dem Terminal gelesen? Wird es jedesmal in der gleichen Reihenfolge passieren? Who knows... - Das Vergleichen des Timestamps der Wait-Funktion mit der Differenz zweier Timestamps ist kompletter Blödsinn. Schau dir mal die aktuellen Werte per Highlighting an... - Wozu dieser blödsinnige Vergleich, wenn du eh eine feste Wartezeit programmiert hast? - Wie schon vorher bemängelt: Create/Clear-Funktionen immer außerhalb von Schleifen! (Egal ob DAQmx, Dateioperationen, Melder/Warteschlangen...) Was genau war an meiner Version nicht in Ordnung? "allerdings wurde der Versuch immer zu früh abgebrochen" ist wenig aussagekräftig, es wurden doch die von dir gewünschten 7s gewartet... Analoges Signal über Zeit erfassen - AlphaDave - 20.10.2010 10:43 Hey Gerd, danke für deine zahlreichen Anregungen! Meine VI ist eher durch Patchwork, statt überlegtem programmieren entstanden. Hatte eben solange rumprobiert bis der Versuchsstand lief. Deine VI war selbstverständlich auch in Ordnung und der Abbruch des Versuchs hatte dann eher mechanische Gründe durch den Versuchsstand selbst. King regards, David |