Bandpass digitalisieren

Gast #4181409
Lesenswert?

Hallo,

ich möchte zu Lehrzwecken einen Bandpass-Filter 2. Ordnung 
digitalisieren.
Zunächst habe ich aus der Schaltung das Strukturbild gezeichnet und 
daraus die Übertragungsfunktion raus gelesen. Diese ging Konform mit der 
Übertragungsfunktion in Wikipedia für den Bandpass. Hier habe ich 
lediglich mit w^2 erweitert, damit ich nun meine 
Beobachtbarkeitsnormalform aufstellen kann.

Kommen wir zu der DGL:

u := Eingang
v := Ausgang

x1' = -w^2 * x1
x2' = x1 - 2Dw * x2 + 2Dw*u

v = x2

Quellcode vom Euler (C - Arduino):
--------------------------------------

  x_raw = analogRead(eingang);
  u = (3.30*x_raw)/ 1023; //Umrechnung in Volt 10 Bit -> 3.3v = 1024

    /* BEOBACHTBARKEITS NORMAL FORM UND EULER*/
    x1_neu = x1_alt + dt * (-(w * w) * x2_alt);
  x2_neu = x2_alt + dt * (x1_alt - 2  D  w  x2_alt  k + 2  D  w * 
u);
  y = x2_alt;
  /* BEOBACHTBARKEITS NORMAL FORM UND EULER*/

  x1_alt = x1_neu;
  x2_alt = x2_neu;

  Serial.println(y);


Diese habe ich nun mit dem Euler-Polygonzug programmiert (Arduino)
und fange nun ein Signal an einem der Analogpins ein.

Auch habe ich parallel in Matlab das System nachgebildet.

Jetzt ergibt sich folgendes Problem:

Beim EulerPolygon schwingt sich der Ausgang V auf.
Sowohl in Matlab als auch bei Arduino und geht die Amplitude -> oo

Erst bei Runge-Kutta passiert das nicht. Da wird dann tatsächlich
die Kreisfrequenz w rausgefiltert nach einem kurzen Einschwingvorgang.
Die Periode bleibt stabil für alle Zeiten.

1) Nun ist meine Frage: Warum ist das so?
Warum eignet sich Euler hier nicht?

2) Wie würde mein Beispiel in C mit Runge Kutta aussehen?

Ich weiß, dass Frage zwei eigentlich aus Eigenbemühungen zu beantworten 
ist.
Allerdings würde mir die Lösung zu meinem Beispiel einiges an Zeit 
ersparen was das Verständnis dessen angeht (Die Theorie dahinter kenne 
ich bereits im Grundzug - Mir fehlt nur das konkrete Beispiel)
Gast #4198601
Lesenswert?

Bei einer kleineren Schrittweite bleibt der Ausgang y stabil.
Jedoch steigt dessen Amplitude mit Erhöhung der Grenzfrequenz.
Zu erwarten wäre allerdings bei 50 Hz ein Maximum und für alle anderen 
Frequenzen wäre der Ausgang y minimal. Das ist leider nicht der Fall.

Bandpaß Übertragungsfunktion, siehe Anhang!
Sollte aber bekannt sein...
Angehängte Dateien:
Gast #4210519
Lesenswert?

Hab ich irgendwas falsch gemacht, was meine Kommunikation bzw. den 
Informationsaustausch mit euch betrifft?

Ich denke Filter zu digitalisieren ist kein Hexenwerk und ein jeder 
hier, wird damit schon ordentlich Erfahrung gesammelt haben. Deswegen 
ist es mir schleierhaft, wieso niemand so recht Antworten möchte. Daher 
gehe ich davon aus, dass der Fehler irgendwo bei meinem Umgang mit euch 
liegen muss.

Ich habe leider noch nicht die Erfahrung in diesem Themengebiet und es 
gibt manchmal Sachverhalte, da muss man sich zwangsläufig helfen lassen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren