Filtre passe bas numérique...

Fermé
Messages postés
31
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
29 mai 2009
-
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
-
Bonjour,
je récupère en tant réel un débit d'une pompe toutes les 32ms, ce débit est composé d'une composante continue et d'une composante sinusoïdale.
D = Dc + Dm cos (wt+phi)

j'aurais besoin de récupérer la composante continue, comment je peux faire, sachant que je programme en C C++.

Merci pour vos réponses.

7 réponses

Bonjour

Une FFT pour obtenir une valeur moyenne... et un TGV pour aller de ta chaise à la porte de ton bureau ? Pas étonnant qu'aujourd'hui on ait besoin de Mégaoctets là où des kilooctets suffisaient il y a encore peu de temps !

Un simple filtrage passe bas, par exemple du second ordre : S(n)=aE+bS(n-1)+cS(n-2), E étant le signal d'entrée, S(n) la sortie, S(n-1) et S(n-2) les sorties aux deux tops précédents. a,b, et c à déterminer selon le gain, la bande passante et le facteur de qualité désirés
En C++, ça ne devrait pas dépasser 3 lignes.
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 331
Oups, j'ai mal lu.
j'ai cru qu'il voulait récupérer la composante sinusoïdale, cause filtre.
C'est sur que la composante continue, rien de plus simple, il suffit de faire une moyenne : c'est vraiment pas un souci.
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 331
Tu est obliger d'utiliser un tampon déjà, et ensuite, sur celui ci tu applique une transformée de Fourier classique:
C(w)=FFT(D-mean(D));
tu peux trouver ce genre de fonction dans les librairies mathématique genre GSL.
Messages postés
31
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
29 mai 2009

je te remercie de m'avoir répondu
qu'est ce qu'un tampon ?
une fois que j'ai la transformé de fourrier, comment je fait pour ne garder qu'un dirac ?
il ne me restera plus qu'a faire la transformée de fourrer inverse de ma composante coninue ? cest bien ca ?
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 331
Un tampon, c'est une variable mémoire qui sert à stoker des données temporaires.
une fois que tu as la fft, pourquoi conservé un dirac ? tu regarde la valeur la plus élevé, ça correspond à la fréquence.
Pourquoi faie une transposé inverse ?
Que veux tu faire avec cette partie oscillante ?
Manu demande la composante continue, pas la pulsation...
Messages postés
31
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
29 mai 2009

le probleme c que la composante continue peut changer au court du temps... enfin remarque ca peut le faire quand meme
merci a tous
Bonsoir les amis du reseau d'entraide!

Au fait en utilisant un filtre comme le propose toto, dans le cas du systeme avec lequel je travail (Beaucoup de buit......) le regime transitoire est tres lent qui va jusqu'a 50s. OUillllle!!!!

Mon signal a clairement une composante continue. Mais lorsque j'effectue la FFT, il n'ya pas d'amplitude associee a la frequence 0Hz. Le signal a 2^10 pour la FFT et un temps d'echantillonge de 0.1Hz alors selon moi la FFT est bien effectuee.

S'il vous plait dites moi selon vous pourquoi je n'ai pa sla composante conntinue sur la representation spectrale et comment je pourrais le faire.

merci et au Plaisir de vous lire,
Phronesis
Messages postés
1
Date d'inscription
vendredi 11 mars 2011
Statut
Membre
Dernière intervention
11 mars 2011

Salut mes amis du reseau d'entraide,


Avec la methode de filtrage passe bas , J'ai une transition tres lente qui va jusqu'a 50s dans le cas du systeme actuel ( beaucoup de bruit....).

le signal temporel presente clairement une composante continue mais en effectuant une FFT , il n'ya pas de d'amplitude associee a la frequence 0Hz.

les parametres de la FFT sont correcte ( 2^10 points pour le signal et 0.1Hz pour la frequence d'echantillonage).

S'il vous plait dites moi ce que vous pensez de la situation et comment je pourrais obtenir cette composante continue dans le domaine frequentiel.

Merci Beaucoup et au plaisir de vous lire,
Phronesis89
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 331
une FFT ne détecte pas une coposante continue.