Kontinuierliches Signal in Matlab filtern

OP (Firma: abaxor engineering) #1047024
Lesenswert?

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
OP (Firma: abaxor engineering) #1047108
Lesenswert?

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
Gast #1047177
Lesenswert?

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?
OP (Firma: abaxor engineering) #1047249
Lesenswert?

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.
Gast #1047813
Lesenswert?

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

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