Sinusfilter für abgetastetes Signal

Gast #6845197
Lesenswert?
• ▲
▼
Hallo zusammen,

ich habe mit einem Oszi eine Spannung aufgenommen (siehe Foto, nicht von 
Skala links irritieren lassen, hatte mich nur verschriebem. Das W soll 
ein V sein). Die Werte habe ich entsprechend in einer .csv Datei 
vorliegen.

Wie man auf dem Bild sehen kann, ist der Sinus zwar zu erkennen, 
allerdings gibt es doch ziemlich viele Störungen und Ausreißer.
Ich würde daher gerne einen Sinus Filter drüber legen, um die 
Grundschwingung zu erhalten.
Ich hatte ursprünglich überlegt, in Simulink ein LC-Filter zu 
implementieren. Ich bin dort allerdings stecken geblieben, weil ich 
nicht wusste, wie ich die diskreten Daten als Quelle in die Simulation 
geben kann.

Falls jemand eine Idee hat, gerne auch in eine andere Richtung als 
Simulink, wäre ich sehr dankbar!

Gruß,
Max
Angehängte Dateien:
#6845229
Lesenswert?
• ▲
▼
A. Z. schrieb:
> Simulink hat einen FromWorkspace Block.
> Damit kann man so ziemlich am einfachsten jedes x-beliebige Signal in
> die Simulation einspeisen.

Den FromWorkspace Block kenne ich, allerdings kann ich diesen nicht 
direkt mit dem LC-Glied verbinden. Ich benutze die L und C Glieder aus 
der Simscape/ Electrical-Bib. Der FromWorkspace Block ist ja aus der 
regulären Simulink-Bib und die lassen sich nicht direkt verbinden. Ich 
müsste dieses Signal noch über eine Spannungsquelle oder so laufen 
lassen.
Ich muss zugeben, dass ich kein großer Experte in Simulink bin, deshalb 
übersehe ich vielleicht auch was...
#6845243
Lesenswert?
• ▲
▼
Du könntest auch einfach in Simulink einen "Transfer Fcn" Block oder 
einen "Discrete Transfer Fcn" Block verwenden. Dann musst du nicht den 
Umweg über Simscape machen.

Du könntest aber auch einfach in Matlab die Funktion "filter" verwenden.

Die Koeffizienten b und a müsstest du dir in beiden Fällen entweder von 
Hand oder zum Beispiel mit der Funktion "butter" (erfordert Signal 
Processing Toolbox) berechnen.

Kleines Beispiel:
1
x=1:0.01:10;
2
y=sin(4*x)+rand(size(x));
3

4
[b,a]=butter(2,0.05);
5
y_filt=filter(b,a,y);
6

7
plot(x,y);
8
hold on;
9
plot(x,y_filt);
#6845341
Lesenswert?
• ▲
▼
Max schrieb:
> ich habe mit einem Oszi eine Spannung aufgenommen (siehe Foto, nicht von
> Skala links irritieren lassen, hatte mich nur verschriebem. Das W soll
> ein V sein). Die Werte habe ich entsprechend in einer .csv Datei
> vorliegen.
>
> Wie man auf dem Bild sehen kann, ist der Sinus zwar zu erkennen,
> allerdings gibt es doch ziemlich viele Störungen und Ausreißer.
> Ich würde daher gerne einen Sinus Filter drüber legen, um die
> Grundschwingung zu erhalten.

Die Grundschwingung liefert auch Dein Oszi mit einer FFT.
mfg Klaus

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 5 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.