├ťbertragungsfunktion aus realen Signalen / Matlab / Octave ?

Hallo,
irgendwann holt einen die Systemtheorie wieder ein....
Mein Problem: gegeben sei: - ein Einganssignal (E(t_i)) (abgetastet im Zeitbereich) , Typ
sinus sweep, konstante Amplitude, Frequenz 0..x Hz. - ein Ausgangssignal als Antwort auf das Eingangssignal. Das System sei zeitinvariant. (A(t_i))
gesucht: Real- und Imagin├Ąrteil der ├ťbertragungsfunktion S(f)
was ich wei├č:
S(f) = Wirkung / Ursache = A(f) / E(f)
was ich nicht wei├č : wie man S(f) oder S(f_i) also diskret numerisch am geschicktesten berechnet.
Ich hab mal naiv in Octave (Matlab clone)
fft(Ai)./fft(Ei)
gerechnet, aber ich glaub nicht das das stimmt.
Es geht hier nicht um eine Theorie oder Hausaufgabe sondern um praktische Messtechnik. Diverse Fundstellen im web scheinen alle immer nur die Theorie voneinander abzuschreiben. Als Literatur hab ich mal R.Unbehauen, Marko und Stearns konsultiert. Das sind aber alles eher B├╝cher aus meiner eher vordigitalen (Studien)-Zeit (ich bin nicht mehr der J├╝ngste :-) )
Irgendwelche Hinweise oder wenigsten treffende Literaturhinweise ??
Danke und Gr├╝├če
Markus Greim
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hallo, Markus,
Du (greim) meintest am 17.07.08:

Also musst Du zuerst (z.B. mit Hilfe der Fourier-Transformation) aus dem Datenhaufen so etwas wie ein B├╝ndel von sinusf├Ârmigen Schwingungen machen.
Wenn ich die Kurzbeschreibung richtig verstanden habe: das Eingangssignal ist (pro Messung) monofrequent und stabil ("reiner Sinus")?

Wie w├Ąre es, wenn Du zuerst nur die Fouriertransformation machst und Dir die dort angebotenen Ergebnisse anschaust?
Da solltest Du zuerst pr├╝fen, ob das B├╝ndel von Frequenzen "sinnvoll" aussieht und welche Frequenzen Du getrost weglassen kannst (nennt sich "Tiefpass").
Viele Gruesse! Helmut
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

E(s) = 1 Einheitssprung S(s) = A(s) Sprungantwort (├ťbertragungsfunktion)
Siehe Approximation Seite 5
http://home.arcor.de/janch/janch/_control/20071104-pd5 (pid)z1z2/
--
Regards/Gr├╝├če http://home.arcor.de/janch/janch/menue.htm
Jan C. Hoffmann eMail aktuell: snipped-for-privacy@nospam.arcornews.de
  Click to see the full signature.
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
JCH schrieb:

jou, so weit war ich schon. Aber bitte siehe unter "gegeben": Ich kann auf das (mechanische) System keinen Sprung aufbringen, das Sinus Signal ist zwingend!
Markus
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

O.g. 'Beispiel' zeigt eine Approximation f├╝r Dfgl 5. Ordnung mit starker D├Ąmpfung.
Ein mechanisches Beispiel k├Ânnte z.B. ein Pendel mit D├Ąmpfung sein:
T^2*s^2 + 2*d*T*s + 1 = C
d << 1 (d = 0 w├Ąre ein theoretisches Konstrukt)
oder ├Ąquivalent
A2*y'' + A1*y' + A0*y = C
<http://de.wikipedia.org/wiki/%C3%9Cbertragungsfunktion Die ├ťbertragungsfunktion ist f├╝r ein System immer dieselbe ┬ľ unabh├Ąngig von der Wahl eines speziellen Ein/Ausgangssignalpaares. Deshalb beschreibt sie das gesamte m├Âgliche Verhalten des Systems. </>
2. Beispiel wie oben erw├Ąhnt:
Siehe http://home.arcor.de/janch/janch/_news/20080719-markus /
Das IST die ├ťbertragungsfunktion f├╝r die gemessenen Datenpunkte und ist f├╝r beliebige St├Ârfunktionen (z.B. C=1, C=sin(w*t), C=t*cos(w*t), etc.) g├╝ltig!
--
Regards/Gr├╝├če http://home.arcor.de/janch/janch/menue.htm
Jan C. Hoffmann eMail aktuell: snipped-for-privacy@nospam.arcornews.de
  Click to see the full signature.
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hallo JCH ,

das ist mir klar, wenn ich die ├â┬ťfkt. denn h├â┬Ątte!

wenn ich deine Ausführungen richtig interpretiere empfiehlst du mir für die Strecke ein Modell aufzustellen, und dann die Parameter dieses Modelles zu approximieren ??
Gr├â┬╝├â┬če Markus
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

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?
--
Regards/Gr├╝├če http://home.arcor.de/janch/janch/menue.htm
Jan C. Hoffmann eMail aktuell: snipped-for-privacy@nospam.arcornews.de
  Click to see the full signature.
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Markus Greim schrieb:

Das ist die klassische Verwendung eines Vektor-Netzwerkanalysators.
Du bekommst f├╝r jede Frequenz Amplitude und Phase, was beliebig in Real- und Imagin├Ąrteil umgerechnet werden kann.
Unter der Voraussetzung, dass die Sweepgeschwindigkeit angemessen ist, kannst Du das Eingangssignal auf Nullstellen untersuchen, somit eine ganze Periode auffinden. Das Ergebnis ist bei einer linearen ├ťbertragungsfunktion ebenfalls eine Sinuswelle, deren Amplitude und Phase zu in Bezug auf das Eingangssignal setzen kannst. Eine FFT ist hier eigentlich nicht angebracht oder besser gesagt erh├Ąltst Du ohnehin unter den o.a. Voraussetzungen nur den Gleichspannungsanteil und die Grundwelle.
Gruss Udo
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hallo,

Das w├Ąre nat├╝rlich ideal, aber Hardware kann ich hier nicht einsetzen. Ich muss die beiden Datens├Ątze E_i und A_I softwarem├Ą├čig auf einem Linux Rechner verarbeiten
Gr├╝├če
Markus
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Markus Greim schrieb:

Daran hindert Dich niemand. Aber eine FFT ├╝ber einen beliebigen Sweep laufen zu lassen, ist ung├╝nstig, vor allem wenn Du doch schon weisst, dass es ein Sinussignal ist und Du die Frequenz ermitteln kannst.
Ich meinte schon, dass Du das numerisch l├Âsen wirst. Du kannst beispielsweise die den Momentanwert der Frequenz aus deinem Datensatzermitteln und hast somit eine volle Periode, die Du analysieren kannst. Du hast somit den station├Ąren Zustand bei einer Frequenz und kannst Amplitude und Phase bestimmen. Per Euler l├Ąsst sich das in Re und Im umrechnen.. fertig.
Und das machst Du jetzt f├╝r jede Periode oder mit entsprechender Reduktion nur ├╝ber jede n-te Periode und bekommst somit den frequenzabh├Ąngigen Verlauf der gesuchten Gr├Âssen, also den Frequenzgang.
-Udo
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Moin,
Markus Greim schrub:

Du musst dir mal ansehen, wie Octave das Ergebnis der FFT im Ergebnisvektor ├╝berhaupt ablegt. Das muss nicht unbedingt auf naheliegende Weise passieren. An sonsten sollte es richtig sein. Allerdings: Der Weg mit der FFT geht davon aus, dass es sich um ein zyklisches Signal handelt. Durch diese Annahme k├Ânnen Schmutzeffekte entstehen. Am besten: Starte die Messung bei ausgeschalteter Maschine und beende sie auch bei ausgeschalteter Maschine. Zwischendurch einschalten und den Sweep machen. Also kurz gesagt eine _lange_ Messreihe aufnehmen im Vergleich zu den zu beobachtenden Frequenzen.
Was nat├╝rlich noch die Sache st├Âren kann: Dein System k├Ânnte nichtlinear sein. In dem Fall wirst du sicher sehr komische Ergebnisse bekommen. Praktisch ist jedes mechanische System nichtlinear. Deswegen solltest du das etwas in Hinterkopf haben, wenn du das Ergebnis betrachtest: Tritt z.B. bei 50Hz ein starker Durchgriff (gro├čes Ausgangssignal) auf und ebenso bei 100Hz, 150Hz,... dann haben die Werte bei 100Hz,... eventuell nicht viel zu bedeuten, es sind nur Artefakte aus der Nichtlinearit├Ąt bei der 50Hz-Schwingung.
CU Rollo
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hallo, Markus,
Du (greim) meintest am 18.07.08:

In aller Unkenntnis der speziellen Daten: FFT sollte eine Summe von Daten liefern (f├╝r diverse Frequenzen), und Summen bei Br├╝chen sind Teufelszeug.

Da w├╝rde ich gern nachfragen - bei Deiner Vermutung ergibt sich ja kein kontinuierliches Spektrum, sondern ein diskretes (okay - die Frequenzen sollten ganzzahlig sein).
Ist "sweep" das, was fr├╝her mal "wobbeln" war? Alle Frequenzen von 1 Hz bis 1 GHz kontinuierlich anlegen?
Viele Gruesse! Helmut
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hallo Helmut,

genau, hier liegt glaube ich das Problem, wie dividiert man diese beiden Summen numerisch am geschicktesten ????

ja, ja ich hab nur gedacht so altmodische Begriffe verwendet man nicht mehr ;-) Da wir es mit einem mechanischen System zu tun haben ist der Frequenzbereich eher 0..20Hz
Gr├╝├če
Markus
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hallo, Markus,
Du (greim) meintest am 18.07.08:

Zerlege es in Teilschritte:
Anrege-Frequenz 5 Hz, Ergebnisdaten Anrege-Frequenz 10 Hz, Ergebnisdaten usw.
Dann ist einer der beiden Teile des Bruches keine Summe mehr.

Also diskretisieren. Und dann schaust Du Dir die Ergebnisse der einzelnen Anrege-Frequenzen an und versuchst sie zu vereinfachen.
Viele Gruesse! Helmut
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Helmut Hullen schrieb:

Das will er offenbar nicht, sucht m├Âglichgerweise eine fertige Funktion in der Bibliothek... Habe ihm auch schon vorgeschlagen, periodenweise und dn sinnvollen Abschnitten diskret zu rechnen...na denn
Gruss Udo
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hallo Udo, Hallo Helmut,

darauf wird es wohl hinauslaufen. Ich dachte nur es g├Ąbe irgendeine elegantere Technik
Gr├╝├če
Markus
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Markus Greim schrieb:

So etwas selber zu programmieren ist anstruchsvoll, erfreut aber das Gem├╝t wenn es dann funktioniert und das auch noch elegant.
Gruss Udo
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hallo Udo,

das W├Ârtchen "wenn" wenn nicht w├Ąre...
Markus
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
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
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
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
Add pictures here
Ôťľ
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.