LabVIEWForum.de - DI mit DAQmx - Störspitzen filtern

LabVIEWForum.de

Normale Version: DI mit DAQmx - Störspitzen filtern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,
ich bekomme über einen DAQmx Task Signale von einer DI-Karte.
Wie kann ich am elegantesten verhindern, dass Störspitzen für ein High des Eingangs gehalten werden.
Ich möchte Spitzen von der Dauer 250ms bzw. 50 While-Zyklen nicht als High auffassen.
Gibt es da bereits fertige Filter o.ä.
Oder muss ich mir da was mit Schieberegister oder so selber bauen?
Vielen Dank für eure Hilfe!
DrBigred
Keine Ahnung, ob es funktioniert, aber was hältst du von dieser PropertyNode:
[attachment=46047]
Gruß, Jens
Hi,

1. Leider gibts bei mit diese Funktion nicht. Hast du eine andere LV Version oder ein Zusatzpaket?
2. Wenn ich das richtig verstehe, gilt diese Einstellung dann für alle Eingänge dieses Kanals.
Vermutlich muss ich um das auf einzelne Eingänge herunter zu brechen einfach mehrere Kanäle erzeugen oder hast du noch ne andere Idee?
Bisher: Vielen Dank!
Bigred
(28.08.2013 08:10 )Bigred schrieb: [ -> ]1. Leider gibts bei mit diese Funktion nicht. Hast du eine andere LV Version oder ein Zusatzpaket?
Ja, habe LV 2012. Damit hängt es aber nicht zusammen, sondern mit der DAQmx-Version. Ich habe aktuell 9.6.2 installiert.
(28.08.2013 08:10 )Bigred schrieb: [ -> ]2. Wenn ich das richtig verstehe, gilt diese Einstellung dann für alle Eingänge dieses Kanals.
Vermutlich muss ich um das auf einzelne Eingänge herunter zu brechen einfach mehrere Kanäle erzeugen oder hast du noch ne andere Idee?
Keine Ahnung, ich habe nur beim Suchen in den Channel-Properties diese Einstellung gefunden.

Gruß, Jens
(27.08.2013 14:39 )Bigred schrieb: [ -> ]Gibt es da bereits fertige Filter o.ä.
Oder muss ich mir da was mit Schieberegister oder so selber bauen?
Die Aufgabe ist einfacher als Du denkst. Schieberegister brauchst Du dazu nicht, und die fertigen Funktionen gibt es zumindest fast.
Rückwärtszähler verwenden, der bei "Low" immer rückgesetzt wird. Wenn er mal Null erreicht, hat die eingestellte Anzahl von hintereianderkommenden "High" stattgefunden.
Wenn Du nicht die Anzahl von Zyklen zugrundelegen willst, sondern direkt die Zeit, dann kann man das ganz ähnlich wie im Beispiel mit der Funktion "verstrichene Zeit" machen.
[attachment=46062]
Referenz-URLs