LabVIEWForum.de
Joystick auslesen und Tiefpassfiltern - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Signaldarstellung (/Forum-Signaldarstellung)
+---- Thema: Joystick auslesen und Tiefpassfiltern (/Thread-Joystick-auslesen-und-Tiefpassfiltern)

Seiten: 1 2


Joystick auslesen und Tiefpassfiltern - mtec - 09.04.2014 11:06

Hallo,
ich habe eine Frage und zwar habe ich einen Beschleunigungssensor als Joystick an meinem Rechner. Diesen kann ich in Labview initialisieren und in einer While Schleife auslesen. Die Daten kann ich mir soweit auch anzeigen lassen.
Jetzt würde ich das Ausgangssignal gerne Tiefpassfiltern und bekomme dort eine Fehlermeldung. Aus dem Joystick selbst kommt ein Cluster. Dieses kann man dann in einzelne Longinteger trennen. Kann es sein, dass der Tiefpassfilter nicht mit Longinteger arbeiten kann? Wie muss ich das Signal vorher bearbeiten damit dies funktioniert?
Kann mir jemand weiterhelfen? Ich bin Neuling und versuche gerade die ersten Schritte in Labview.

Vielen Dank im Voraus.


RE: Joystick auslesen und Tiefpassfiltern - GerdW - 09.04.2014 11:45

Hallo mtec,

Zitat:Kann es sein, dass der Tiefpassfilter nicht mit Longinteger arbeiten kann? Wie muss ich das Signal vorher bearbeiten damit dies funktioniert?
Wenn du "der ..." schreibst, solltest du genau beschreiben, wer "der" ist. Am besten ist dazu natürlich, ein VI anzuhängen…


RE: Joystick auslesen und Tiefpassfiltern - mtec - 09.04.2014 11:58

Hallo GerdW,

vielen Dank für deine Antwort. Ich habe die VI mal angehängt. Wie gesagt ich fange gerade erst an mit Labview zu arbeiten.
Ich bekomme beim Filter immer die Meldung: Fehler -20023 ist bei Filter2 - Mögliche Gründe:

Analysis: Folgende Bedingungen müssen erfüllt sein: 0 < f_niedrig <= f_hoch <= fs/2.

Aber ich vermute, dass es evtl. am Eingangssignal des Filters liegt.


RE: Joystick auslesen und Tiefpassfiltern - GerdW - 09.04.2014 12:02

Hallo mtec,

Zitat:Aber ich vermute, dass es evtl. am Eingangssignal des Filters liegt.
Richtig vermutet!
Du gibst dem Filter einen skalaren Wert (aka Einzelwert), nämlich den aktuellen Z-Wert deines Joysticks. Was soll er daran filtern?

Du musst deine "Messwerte" in einem Array sammeln und kannst daran dann filtern.

Falls dein LV7.1 schon die Pt-By-Pt-Befehle in der Signalverarbeitungspalette kennt, solltest du dort mal nach passenden Filtern schauen. Diese Funktionen kommen nämlich mit Einzelwerten klar!

P.S.: Ergänze bitte dein Profil. Es gibt Unterschiede zwischen LV7 und LV7.1…


RE: Joystick auslesen und Tiefpassfiltern - mtec - 09.04.2014 13:08

Version habe ich angepasst.
Point by Point finde ich bei mir leider nicht.

Wie wäre denn das Vorgehen die Werte in das Array zu schreiben und dieses mit dem Filter wiederum richtig auszulesen? Habe es probiert aber bin bis jetzt nicht erfolgreich gewesen....


RE: Joystick auslesen und Tiefpassfiltern - GerdW - 09.04.2014 13:09

Hallo mtec,

dafür verwendet man Schieberegister und (im einfachsten Fall) BuildArray.

Wobei man bei deiner Schleife mit dt=1ms die Arraylänge begrenzen sollte…

Probiere das mal aus:
[attachment=49286]


RE: Joystick auslesen und Tiefpassfiltern - mtec - 09.04.2014 13:57

Hallo GerdW,
vielen Dank für deinen Vorschlag.
Es tut mir leid, dass ich nochmal fragen muss. Ich finde den Baustein nicht, in dem bzw. mit dem du das Array beschreibst. Erst erstellst du es, dann beschreibst du es und dann liest man ein Teil-Array aus, korrekt? Den Block zum beschreiben finde ich nicht....


RE: Joystick auslesen und Tiefpassfiltern - GerdW - 09.04.2014 14:48

Hallo mtec,

InitArray (vor der Schleife), dann BuildArray und ArraySubset.

Bist du wirklich auf LV7.1 festgenagelt? Das ist doch schon uralt - auch wenn es eine der besseren LV-Versionen ist… Big Grin


RE: Joystick auslesen und Tiefpassfiltern - mtec - 09.04.2014 16:55

Neuere Version ist in arbeit. Bis dahin leider 7.1.....

ich habe es jetzt mal so zusammen gebaut. funktioniert aber leider noch nicht so richtig.

Füllt der nicht bei jedem Schleifenumlauf nicht nur den ersten Platz im Array?


RE: Joystick auslesen und Tiefpassfiltern - jg - 09.04.2014 16:59

Du hast das Schieberegister vergessen! (vgl. Screenshot von Gerd)

Gruß, Jens