LabVIEWForum.de - Welchen Filter eignet sich am besten?

LabVIEWForum.de

Normale Version: Welchen Filter eignet sich am besten?
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo Leute,

Ich habe einige Probleme mein Signal schön zu filtern. Ich hoffe ihr könnt mir dabei helfen.

Zur Hardware:
Ich bekomme von 2 Hallsensor einen (0-5V) Sinus pro Sensor. Da in der Nähe der Sensoren ein Motor ist, ist das Signal von den Störfrequenzen (Spitzen) des Motors überlagert.

Um die Spitzen des Motors herauszufiltern, habe ich einen Median Filter benutzt, weil dieser in einigen Forenbeiträgen empfohlen wird bei Spannungsspitzen.

Den Medianfilter habe ich mit dem rechten Rang -4 und Linken Rang 4 eingestellt. Ehrlich gesagt aber ohne wirklich zu wissen was ich überhaupt einstelle. Blush

Der hat schon sehr viel gebracht. Aber leider habe ich immer noch 1-2 Peaks drin die mir das Messresultat verfälschen.
Um noch mehr herauszufiltern, habe ich das Express VI Filtern verwendet. Mit folgenden Einstellungen:

Filtering Type: Smoothing
Moving average- rectangular
Half-width of moving average:20

Das verbessert zwar ein wenig aber das ist sehr wahrscheinlich die falsche Lösung.

Ahja beim ersten Bild (ohne Filter) ist der Sinus so wie er gemessen wird. Der wird aber noch verschoben so das er beim 0Punkt beginnt (wie in den unteren Graphen mit Filter). Die Peaks werden Polynomial gefiltert das funktioniert perfekt.

Was noch interesannt ist die grossen Peaks sind immer an der selben stelle.
Vor 2000 und am Schluss. Ich habe mir noch überlegt das man diesen Bereich aus dem Array ausschneiden könnte und den Teil Speziell filtert. Müsste es nicht mit einem Tieffpass möglich sein?

Wie Ihr sicher schon bemerkt habt ist mein Wissen über Filter noch nicht gross. Darum wäre ich sehr dankbar über einige Tipps oder Lösungsansätze. Meine Labview Version ist 2012 SP1.

Danke Viel mal!

Gruss Gaussometer
Es handelt sich bei deinen Versuchen ja um Software-mäßige Filterung...da ist das Kind aber eigentlich schon in den Brunnen gefallen! Du solltest lieber einen externen Filter (Tiefpass) einbauen, um dir den ganzen Mist gar nicht erst in den Rechner zu holen!

Außerdem solltest du geschirrmte Messleitungen nehmen, am besten sogar Koax-Kabel! Das bringt am allermeisten...und natürlich wenn möglich ein "großer" Abstand zum Antrieb bzw. zu dessen Regler (FU)...und dieser am besten in einen Stahlschrank. Also erst mal präventiv tätig werden, bevor an den Symptomen herumgedoktort wird!

Gruß
Achim
(20.06.2013 11:38 )Achim schrieb: [ -> ]Es handelt sich bei deinen Versuchen ja um Software-mäßige Filterung...da ist das Kind aber eigentlich schon in den Brunnen gefallen! Du solltest lieber einen externen Filter (Tiefpass) einbauen, um dir den ganzen Mist gar nicht erst in den Rechner zu holen!

Außerdem solltest du geschirrmte Messleitungen nehmen, am besten sogar Koax-Kabel! Das bringt am allermeisten...und natürlich wenn möglich ein "großer" Abstand zum Antrieb bzw. zu dessen Regler (FU)...und dieser am besten in einen Stahlschrank. Also erst mal präventiv tätig werden, bevor an den Symptomen herumgedoktort wird!

Gruß
Achim

Prinzipiell hast du sicher recht aber in dem speziellen Fall ist der Signal-Rausch-Abstand doch in Ordnung. Eigentlich muss man hier nur die Störungen z.b. mit einem Passband-Filter wegfiltern. Bei dem guten Signal müsste man das sogar adaptiv gestalten können.
Ich habe gerade mal mit Kollegen deine Screenshots angeschaut...ist dir eigentlich aufgefallen, dass dein Sinussignal in die Sättigung läuft? Die Kuppen sind ja ganz flach, und deine Ausreisser/Peaks haben auch keinen höheren Spitzenpegel.

Insgesamt solltest du also auf jeden Fall mal den Messaufbau optimieren!

A.



EDIT: Post #4000
Hallo Achim und Holy

Sorry wegen der späten Antwort. Ich hatte erst heute wieder Zeit dafür.

Also der Sinus ist eigentlich ganz gut. Es sieht nur aus, als seien die Kuppen abgeflacht, weil der Graph so in die breite gezogen wurde. Ich habe noch ein Bild heraufgeladen, bei dem der graph eher in die höhe gezogen wurde.


Wird mein Signal nicht kleiner wenn ich einen externen R-C Tiefpass Filter benutze? Den Abstand zum Motor kann ich leider nicht gross verändern. Aber ich werde mal versuchen geschirmte Messleitungen zu verwenden.

Danke für den Tipp.

Wie müsste ich den Bandpass den einstellen ? Mein Signal ist 4096 Werte lang. Im Plot steht dan unter Time 4096.
Dann wäre meine Signal frequenz 1/ 4096 = 244.14 mikro Hz und alles was eine höhere Hertz zahl had müsste weggefiltert werden?
(24.06.2013 06:53 )Gaussometer schrieb: [ -> ]Also der Sinus ist eigentlich ganz gut. Es sieht nur aus, als seien die Kuppen abgeflacht, weil der Graph so in die breite gezogen wurde.

Dein Signal wird definitiv irgendwie "verfälscht"...ich habe mal im LabVIEW mit nem Signalgenerator einen idealen Sinus erzeugt und deinem Signal gegenüber gestellt...schau dir's an:

[attachment=45093]

Gruß
Achim
(24.06.2013 07:47 )Achim schrieb: [ -> ]
(24.06.2013 06:53 )Gaussometer schrieb: [ -> ]Also der Sinus ist eigentlich ganz gut. Es sieht nur aus, als seien die Kuppen abgeflacht, weil der Graph so in die breite gezogen wurde.

Dein Signal wird definitiv irgendwie "verfälscht"...ich habe mal im LabVIEW mit nem Signalgenerator einen idealen Sinus erzeugt und deinem Signal gegenüber gestellt...schau dir's an:



Gruß
Achim

Okay, aber ich messe Magnete mit Hall Sensoren. Die Kurve kann irgendwie aussehen. In der Theorie ist es ein perfekter Sinus. In der Realität aber nicht.
(24.06.2013 08:57 )Gaussometer schrieb: [ -> ]Okay, aber ich messe Magnete mit Hall Sensoren. Die Kurve kann irgendwie aussehen. In der Theorie ist es ein perfekter Sinus. In der Realität aber nicht.

Die Aussage ist nicht falsch, die Diskussion ist auch am eigentlichen am Thema vorbei, darum jetzt nur noch mal so viel: Wenn du dir deinen ersten Shot anschaust, siehst du, dass die Störpeaks beim gleichen Pegel aufhören wie dein Nutzsignal. Das heißt, der Wandler kann nicht "mehr". Folglich hast du einen Informationsverlust, weil dein gewandeltes Signal nicht mehr den ganzen möglichen Bereich abdecken kann. Evtl. könntest du das beheben, wenn du den Sensor ein klein wenig weiter von der Messstelle entfernst.

Gruß
Achim
(24.06.2013 09:26 )Achim schrieb: [ -> ]
(24.06.2013 08:57 )Gaussometer schrieb: [ -> ]Okay, aber ich messe Magnete mit Hall Sensoren. Die Kurve kann irgendwie aussehen. In der Theorie ist es ein perfekter Sinus. In der Realität aber nicht.

Die Aussage ist nicht falsch, die Diskussion ist auch am eigentlichen am Thema vorbei, darum jetzt nur noch mal so viel: Wenn du dir deinen ersten Shot anschaust, siehst du, dass die Störpeaks beim gleichen Pegel aufhören wie dein Nutzsignal. Das heißt, der Wandler kann nicht "mehr". Folglich hast du einen Informationsverlust, weil dein gewandeltes Signal nicht mehr den ganzen möglichen Bereich abdecken kann. Evtl. könntest du das beheben, wenn du den Sensor ein klein wenig weiter von der Messstelle entfernst.

Gruß
Achim

Ja das sieht so aus aber es ist nicht so Smile Der Sensor geht bis 5V = 192mTesla und die Peaks der Magnete sind mit dem jetzigen Abstand bei ca. 160 mT. Ich habe es auch nochmals mit einem Messgerät geprüft. ich war nie über 4.6V.

Nachdem ich Die Kiste mit den Sensoren und dem Motor nochmals geöffnet und geschlossen habe ist mein Signal nicht mehr so schlimm(siehe Bild). Sehr wahrscheinlich erreiche ich durch die Schirmung des Kabels schon eine starke verbesserung. Jetzt mess ich manchmal mit mehr oder weniger störungen je nachdem wo das Kabel liegt.
(24.06.2013 06:53 )Gaussometer schrieb: [ -> ]Hallo Achim und Holy

Sorry wegen der späten Antwort. Ich hatte erst heute wieder Zeit dafür.

Also der Sinus ist eigentlich ganz gut. Es sieht nur aus, als seien die Kuppen abgeflacht, weil der Graph so in die breite gezogen wurde. Ich habe noch ein Bild heraufgeladen, bei dem der graph eher in die höhe gezogen wurde.


Wird mein Signal nicht kleiner wenn ich einen externen R-C Tiefpass Filter benutze? Den Abstand zum Motor kann ich leider nicht gross verändern. Aber ich werde mal versuchen geschirmte Messleitungen zu verwenden.

Danke für den Tipp.

Wie müsste ich den Bandpass den einstellen ? Mein Signal ist 4096 Werte lang. Im Plot steht dan unter Time 4096.
Dann wäre meine Signal frequenz 1/ 4096 = 244.14 mikro Hz und alles was eine höhere Hertz zahl had müsste weggefiltert werden?

Meiner Meinung nach bringt ein externer R-C Tiefpass nichts was du nicht auch in Software lösen kannst. In Software hast sogar denn Vorteil das du ggf. sogar noch ungefilterte Werte zur Verfügung hast. Wichtiger sind da eher die anderen Maßnahmen wie Anschaltung prüfen, auf besser geschirmte Kabel zurückgreifen und und und. Hardwarefilter sind nicht annähernd so flexibel wie Softwarefilter und machen letztendlich das selbe.

Ein Bandpass definierst du über eine obere und untere Grenzfrequenz. Hierbei umschließen die beiden Grenzfrequenzen den Bereich der durchgelassen wird. D.h. alle Frequenzen unterhalb der unteren Grenzfrequenz sowie alle oberhalb der oberen Grenzfrequenz werden weggefiltert.
Die Frequenz die du sehen willst ist, wenn ich deine Beschreibung richtig sehe, die Umdrehungsgeschwindigkeit deines Motors. Dieser ergibt das "Sinussignal" aus den oberen Bildern.
Seiten: 1 2
Referenz-URLs