Réponse temporelle d'un filtre de Butterworth

Forum pour toutes vos questions de maths, de physique, de physique du semi-conducteur ou sur le traitement du signal.

Modérateur : Modérateur

le fur
NOUVEAU
NOUVEAU
Messages : 1
Inscription : 07 sept. 2007 12:02

Réponse temporelle d'un filtre de Butterworth

Message par le fur »

Bonjour,

Je cherche à calculer la réponse temporelle d'un filtre de
Butterworth. Je connaîs l'expression de la fonction de transfert :
H(p) = 1/(1+(P/omega_0)^4n) mais je ne sais pas comment s'en servir
pour construire les valeurs y(n) de la sortie temporelle à partir des
valeurs d'entrée x(n). J'hésite entre les deux possibilités
suivantes :


1. Partir d'une équation différentielle de la forme : u'(t) = Au(t)
+x(t), u(0)=u0, v(t)=Bu(t) puis écrire cette équation sous la forme
d'un produit de convolution : y(t) = h * x(t)
2. Utiliser la transformée en Z associée à la fonction de transfert du
filtre pour écrire directement le produit de convolution discret y(n)
= h * x(n), mais je vois pas comment obtenir la transformée en Z.


Quelqu'un aurait-il une idée sur la façon de résoudre ce pb ?
Merci d'avance.

maoussecostaud
NOUVEAU
NOUVEAU
Messages : 3
Inscription : 16 oct. 2007 14:27

Message par maoussecostaud »

Salut,

Personnellement j’opterai pour la 2eme méthode

En fait quand tu as H(p) tu « remplaces » p par une fonction dépendant de z.
Pour cela il y a plusieurs méthodes (rectangle ou euler, trapèze ou tustin).

La plus utilisée est la transformée de tustin :
Tu remplaces p par (2/Te)*(z-1)/(z+1)

Avec Te période d’échantillonnage.

Tu obtiens donc une fonction de transfert en z que tu peux toujours mettre sous la forme :

H(z) = (a0* z^2+a1*z+a2) / (z^2+b1*z+b2)

Puis tu multiplies le tout par z^-2 et ça donne :

H(z) = (a0+a1*z^-1+a2*z^-2) / (1+b1*z^-1+b2*z^-2) = S(z)/E(z)

Avec S la sortie et E l’entrée.

Tu as donc :

S(z)*( 1+b1*z^-1+b2*z^-2) = E(z)*(a0+a1*z^-1+a2*z^-2)

Soit :

S(z) = (b1*z^-1+b2*z^-2)*S(z) + E(z)*(a0+a1*z^-1+a2*z^-2)

Et en repassant dans le domaine temporel ça donne finalement l’équation de récurrence suivante :

s(n) = b1*s(n-1) + b2*s(n-2) + a0*e(n) + a1*e(n-1) + a2*e(n-2)


Par contre la formule du filtre de Butterworth que tu évoques ne me dit rien. Un Butterworth, ce n'est pas

H(p) = 1/ (1 + (2*epsilon/w0)*p + (p/w0)² )² ???
Il n'y a pas de choses urgentes, il n'y a que des gens pressés

Répondre