zeitgesteuerte Messwertaufnahme - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +--- Thema: zeitgesteuerte Messwertaufnahme (/Thread-zeitgesteuerte-Messwertaufnahme) |
zeitgesteuerte Messwertaufnahme - Thomas D. - 01.04.2006 12:19 Mahlzeit ... Ich arbeite gerade an einer Softwäre für ein Messerfassungssystem. Über die USB-Schnittstelle werden Daten von einem Versuchstand übertragen. Die Daten stehen in einem Array. Jede Zeile entspricht einem Kanal. Jeder der insgesamt 16 Kanäle soll einzeln überwacht werden. Die Bedingung ist: sobald Werte >0 durchs Array kommen [eine Triggerbedingung wurde erfüllt... A/D Aufnahme wird gestartet} soll eine Aufnahme des jewiligen Kanals für einen vorher festgelegten Zeitraum stattfinden [die Daten werden in ein TDM-File geschaufelt] ! Das Problem an dem ich festhänge: Die Aufnahme des überwachten Kanals liegt in einem Case. Wie kann ich es realisieren (mit geringem Aufwand) das ein Schalter oder so, sobald Daten fließen, für einen durch den Benutzer eingegebenen Zeitraum (z.B. 10 sec) das Case aktiviert. Die Daten werden dann für diese Zeit ins TDM - File geschrieben. Wenn die Zeit abgelaufen ist, geht der Schalter sofort wieder auf False und die Aufnahme ist beendet (jedenfalls für diesen Kanal) !!!! ???? Kurz: Der Schalter soll also für den jeweils vorgegebenen Zeitraum [eingegeben durch den Benutzer] (sobald Werte durchs Array kommen = Startbedingung) True sein und dann auf False gehen. Wenn irgend jemand evtl. eine Idee hat wie ich das so schlank wie möglich realisieren könnte wäre das echt supi zeitgesteuerte Messwertaufnahme - Lucki - 01.04.2006 23:20 Du brauchts dazu ein vi, welches man, wenn es sich um eine Hardware-Schaltung handeln würde, als "Monoflop" bezeichen würde. Im allereinfachsten Fall hat man nur einen Eingang und einen Ausgang. Mit dem Eingang wird getriggert, und der Ausgang bleibt darufhin bis zum Ende der Ablaufzeit auf High. Man unterscheidet einfache und retriggerable Monoflops. Bei den einfachen Monoflops endet die Ablaufzeit unabhängig davon was am Eingang weiterhin passiert. Bei einem retriggerablem Monoflop wird die Ablaufzeit bei jedem weiteren Triggerimpuls wieder auf den vollen Anfangswert gesetzt. Eigentlich müßte das Express VI "Verstrichene Zeit" bzw. "Timer" so eine Funktion leisten, ich bin mir aber da nicht sicher. Auf alle Fälle habe ich mal ein ganz einfaches Monoflop gemacht. Das Kernstück ist dabei ein nichtinitialisiertes Schieberegister, welches sich Werte zwischen zwei Aufrufen merken kann. Dieses VI läßt sich nur testen, indem man es von einem Hauptprogramm aus aufruft. Deshalb poste ich 2 Programme. Also: Haupt-Prog starten, Triggerschalter betätigen und sehen was passiert. Ludwig Editiert: Jetzt abgespeichert als V 7.1 zeitgesteuerte Messwertaufnahme - Lucki - 02.04.2006 19:04 Zitate aus Deiner PM: Zitat:Problem ist nur die Abfrage zu realisieren (True sobald im Array ein Wert größer 0) !!!siehe Start Massung.png [quote]Ein weiters Problem ist, dass man beim Beispielprogramm den Trigger nach Ablauf nochmal drücken kann und die Prozedur läuft wieder ab. WIE kann man es denn zeitgesteuerte Messwertaufnahme - Thomas D. - 03.04.2006 09:41 Supi und Danke ... jetzt funzt die ganze Sache zeitgesteuerte Messwertaufnahme - PowerMicha - 16.08.2006 14:09 Hallo, gibt es auch eine Möglichkeit dieses Monoflop (das erste) durch eine Boolsche 1 (Ausgang einer & Verknüpfung) zu starten welche länger anliegt? (eventuell Flankengesteuert) Bei der hier vorliegenden Schaltervariante wird es erst gestartet wenn man den Schalter wieder los lässt! Gruß Micha |