Übertragungsfunktion aus realen Signalen / Matlab / Octave ?

Hallo Udo,

das Wörtchen "wenn" wenn nicht wäre...

Markus

Reply to
Markus Greim
Loading thread data ...

Hallo Marcel,

dass wäre mal einen Versuch wert..

soweit verstanden...

Die

Latenzen hab ich eher nicht (denk ich ;-)) Die Ermittlung der Gruppenlaufzeit erfordert alledings ein

gut

Danke für die vielen Tipps. Es scheint tatsächlich nichts "von der Stange" zu geben. Eigentlich unverständlich. Das sollte ja eigentlich eine elementare Ingenieursaufgabe sein, Das man da 60 Jahre nach Shannon noch bei Adam und Eva anfangen mus ist ziemlich frustrierend..

Grüße

Markus

Reply to
Markus Greim

"Markus Greim" schrieb im Newsbeitrag news:g5v06t$k1t$03$ snipped-for-privacy@news.t-online.com...

Bei einer (nur) Dfgl 2. Ordnung kannst Du mit (nur) 2 Parameter (Amplituden, Dämpfung) mit Hilfe z.B. einer Excel-Graphik und etwas VBA-Programmieren leicht durch Probieren ohne großen Aufwand das Modell mathematisch approximieren.

Was machst Du dann mit der gefundenen Übertragungsfunktion?

Reply to
JCH

Moin,

Udo Piechottka schrub:

Und was soll das bringen? Ich würde sagen nichts. Welche zusätzlich Information sollte ich denn gewinnen, wenn ich den Sweep von z.B. 60 Sekunden in 10 Stücke à 6 Sekunden zerhacke und die Stücke dann einzeln auswerte?

Wird jetzt hier darum gestritten, ob es besser ist, doch was bessers auszudenken als FFT auf alle Daten anzuwenden was ein paar Tage Diskussionszeit kostete, anstatt einfach die FFT zu machen, was vielleicht 5 Minuten Rechenzeit kostet?

CU Rollo

Reply to
Roland Damm

Roland Damm schrieb:

Wie willst Du bei einem Gesamtspektrum dann noch differenzieren, ob es sich bei einem "Ausschlag" um einen mechanischen Resonanzpunkt oder durch Nichtlinearitäten entstandene Oberwellen handelt?

Die Rede war auch nicht davon, das Signal "irgendwie zu zerhacken", sondern synchron zur anregenden Frequenz eine Vollperiode zu betrachten.

Nein, darum geht es nicht. Man sollte sich aber schon überlegen, mit welchen mathematischen Operationen man welche Ergebnisse produziert, wie man diese interpretieren muss und wie man sein Verfahren testet.

Übrigens: Wenn eine Diskussion mich nicht interessiert oder zu lange über Details diskutiert wird, finde ich häufig andere interessante Themen im Internet oder lese mal ein gutes Buch..

Gruss Udo

Reply to
Udo Piechottka

Hallo Markus,

Markus Greim schrieb:

als Alternative zu den anderen Vorschlägen hätte ich hier noch einen, der mir bei dem Thema Echokompensation aufgefallen ist, das mir gerade wieder über den Weg gelaufen ist. Dabei geht es um Freisprechen z.B. beim Telefon, um eine Rückkopplung des ankommenden Signals zu verhindern. Dazu wird ein adaptives Filter benötigt, das die Übertragungsfunktion des unerwünschten Pfades möglichst exakt nachbildet und die Rückkopplung unterdrückt:

formatting link
Was dort als adaptives Filter bezeichnet wird, ist mir in Form eines FIR-Filters bekannt, dessen Koeffizienten durch eine Rekursion, eben die least mean square-Methode, berechnet wird. Wenn man ein lineares System ohne interference betrachtet, so ist diese Rekursion recht einfach durchzuführen.

Damit sich die Koeffizienten richtig einstellen, muß wohl das Eingangssignal x(n) alle Spektralanteile enthalten denke ich, also käme ein Sinussweep in Frage. Gemessen würde y(n) werden, und zwar _zeitgleich_ zu x(n). Wie gut und schnell das konvergiert und ob es dafür brauchbar ist, kann ich allerdings nicht sagen.

Mal angenommen, es konvergiert gut, dann ist ein Koeffizientensatz des (möglichst langen) FIR-Filters bekannt, der ja nichts weiter als die diskrete Impulsantwort des unbekannten Systems darstellt. Eigentlich müßte IMHO die Fouriertransformierte der FIR-Koeffizienten dann die komplexe Übertragungsfunktion sein. Die Auflösung im Frequenzbereich entspräche dann der (aus Symmetriegründen halben?) Länge des FIR-Filters.

Ob das Verfahren so brauchbar ist, könnte man in Matlab oder jeder beliebigen Programmiersprache testen, vielleicht erstmal an einem ganz einfachen bekannten System. Man erzeugt einfach den Datensatz für x(n), y(n), der der Messung entspräche und läßt damit die Rekursion durchlaufen, evtl. mehrmals. Wenn das Fehlersignal e(n)=0 wird, sieht es gut aus, denn dann muß das Filter ja stimmen. So sieht der Koeffizientenupdate aus:

e(k)^2=[y(k)-ye(k)]^2 Definition des Fehlerquadrats

x(k)=gemessenes Eingangssignal zum Zeitpunkt k y(k)= gemessenes Ausganggsignal des unbekannten Systems ye(k)=Ausgangssignal des adaptiven Filters e(k)=y(k)-ye(k)= Fehlersignal

FIR Koeffizientenupdate: Ci(k+1)=Ci(k)+u(k)*e(k)*x(k-i) 0

Reply to
Winfried Salomon

Hallo Winfried,

ich denke das läuft so unter dem Oberbegriff Spektralschätzung.. Ich habe in den letzten Tagen noch etwas weiter recherchiert und bin auf eine schöne Veröffentlichung u. Software gestoßen die auch aus diesem Eck (Sprach Spektrogramme etc) kommt:

Time Frequency Toolbox for use with Matlab

von Auger, Flandrin, Goncalves u. Lemoine CNRS Frankreich u. Rice Univ. USA, 1995-1999

Das Tutorial findet man unter:

formatting link
und die Software und Homepage unter:
formatting link
Das ganze läuft unter dem Oberbegriff: "Analysis of non stationary signals using time frequency distributions"

weitere Stichworte sind: Wigner-Ville disribution, Short time fft, continous wavelet transformation...

Ich kann noch nicht endgültig sagen ob ich mit diesen Werkzeugen mein Problem lösen kann, es schaut aber bis jetzt sehr gut aus. Unabhängig davon ist das Tutorial unbedingt lesens- und und die Software (die auch unter Octave läuft) ausprobierenswert!

Danke soweit f. die vielen Anregungen.

Grüße

Markus Greim

Reply to
Markus Greim

Hallo Markus,

Markus Greim schrieb: [.....]

der Index i müßte IMHO bei 0 anfangen und bis zum letzten FIR-Koeffizienten gehen. Mir ist noch eingefallen, daß das FIR-Filter ja eine Laufzeit hat, die im unbekannten System nicht vorhanden sein muß, wenn es keine Strecke mit ausschließlichem Echo ist. Dazu müßte man wohl eine Laufzeit als Ausgleich zum FIR in die Strecke legen. Diese bekannte Laufzeit kann man dann hinterher wieder rausrechnen.

Bei uns wurde diese Echokompensation mal in der Praxis getestet, dabei konvergierte es bei Rauschen gut und bei Sprache weniger gut. Dabei ging es aber wirklich nur um Echos, ob das Ganze auch bei beliebigen Frequenzgängen konvergiert, kann ich nicht sagen, wäre zu testen. Von der Plausibilität her scheint mir der Laufzeitausgleich zwingend zu sein, da FIR-Filter immer laufzeitbehaftet sind im Vergleich zu IIR-Filtern. Der Vorteil dieses Verfahrens, wenn es funktioniert, wäre die extreme Einfachheit.

Ich habe es mir mal runtergeladen, vielen Dank. Mit der Thematik Wavelet habe ich mich noch nicht beschäftigt, sieht sehr theoretisch aus. Eigentlich müßten die Leute aus der Theorie der Regelungstechnik was dazu wissen, denn das müßte ja deren Job sein, also die Erkennung eines Systems.

Viel Erfolg! Vielleicht spiele ich auch mal damit herum, wenn ich Lust und Zeit habe.

mfg. Winfried

Reply to
Winfried Salomon

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.