Hallo, ich will ein Signal in Matlab zeit-kontinuierlich filtern. Den Filter habe ich als Übertragungsfunktion in s vorliegen. Für diskrete Systeme gibt es die Funktion "filter", so etwas brauche ich für kontinuierliche Systeme. Eine Überführung des Filters von s nach z ist bei der dann notwendigen Samplingfrequenz nicht möglich. Tom
Was soll denn dabei rauskommen? Matlab (und Spice) Ergebnisse sind immer zeitdiskret. Cheers Detlef
Detlef _a wrote: > Was soll denn dabei rauskommen? Ein gefiltertes Signal. Sorry, ich verstehe die Frage nicht. > Matlab (und Spice) Ergebnisse sind immer zeitdiskret. Alles was ein digitaler Computer ausrechnet ist zeitdiskret, nur nicht immer äquidistant. Das ist bei mir jedoch auch der Fall. Nur kann ich die bilineare Transformation (von s nach z) für den Filter nicht bei der notwendigen Samplingfrequenz nicht anwenden. Tom
Kann man davon ausgehen, dass dein Signal auch nicht diskret ist, also in Form einer Gleichung vorliegt (keine Samplereihe)? Wenn du das Problem "kontinuierlich" lösen möchtest musst du: f(t) => f(s) Dein Signal Laplace-transformieren. Dann: f'(s) = G(s) * f(s) Dann den Kram wieder rückwärts: f'(s) => f'(t) Ist ist das, was du machen möchtest?
Guckst du in der Simulink Library nach "Transfer" Function.
Alex wrote: > Kann man davon ausgehen, dass dein Signal auch nicht diskret ist, also > in Form einer Gleichung vorliegt (keine Samplereihe)? > > Wenn du das Problem "kontinuierlich" lösen möchtest musst du: > > f(t) => f(s) > Dein Signal Laplace-transformieren. > > Dann: > f'(s) = G(s) * f(s) > > Dann den Kram wieder rückwärts: > f'(s) => f'(t) > > Ist ist das, was du machen möchtest? Prinzipiell ja. In Simulink kann man eine Übertragungsfunktion in s auch auf ein "kontinuierliches" Signal anwenden, daraus schließe ich, dass es in Matlab ähnlich gehen muss.
Max wrote:
> Guckst du in der Simulink Library nach "Transfer" Function.
Ich will es aber nicht in Simulink machen.
Sorry Thomas, auch Simulink rechnet nur wertdiskret, d.h. die Differentiale in deinem G(s) werden diskretisiert. Nicht umsonst ist für jedes Modell in Simulink eine Cycle-Time sowie ein Solver vorzugeben. Wenn du in Simulink einen Sinusblock verwendest dann liefert dieser KEIN zeitkontinuierliches Signal sondern auch nur eine Treppenfunktion, welche abhängig von der Abtastrate einen realen Sinus mehr oder minder gut annähert. Schau dir mal folgende zwei Matlab Befehle näher an: tf lsim Damit solltest du denke ich weiterkommen. Gruß, Alex
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.