Cours:Elen4 TNS TP Implementations : Différence entre versions
(→Implémentation en ligne) |
|||
| Ligne 7 : | Ligne 7 : | ||
Le travail de ce TP va consister à filtrer des signaux numériques avec divers filtres (RIF puis RII), en exploitant trois implémentations différentes à partir du produit de convolution, de la reponse fréquentielle et de l'équation aux différences. | Le travail de ce TP va consister à filtrer des signaux numériques avec divers filtres (RIF puis RII), en exploitant trois implémentations différentes à partir du produit de convolution, de la reponse fréquentielle et de l'équation aux différences. | ||
| − | == Implémentation hors-ligne == | + | <accesscontrol>Acces:Prof</accesscontrol> |
| + | |||
| + | == Implémentation d'un filtre RII == | ||
| + | |||
| + | L'objectif est de filtrer le signal | ||
| + | <center> | ||
| + | x<sub>1</sub>(n) = sin(n/10) + b(t) | ||
| + | </center> | ||
| + | ''b(t)'' étant du bruit ... | ||
| + | |||
| + | |||
| + | Le filtre sera défini par sa fonction de transfert | ||
| + | {{FxT | H(z) | | ||
| + | 1 + 2z<sup>-1</sup> + z<sup>-2</sup> | ||
| + | | | ||
| + | 4}} | ||
| + | |||
| + | === Implémentation hors-ligne === | ||
Sous '''Matlab''', Vous travaillerez avec le signal ''x<sub>1</sub>'' crée par le code suivant : | Sous '''Matlab''', Vous travaillerez avec le signal ''x<sub>1</sub>'' crée par le code suivant : | ||
| Ligne 51 : | Ligne 68 : | ||
b) ainsi qu'une vérification quantifiée en calculant une norme entre les deux signaux ''y''. | b) ainsi qu'une vérification quantifiée en calculant une norme entre les deux signaux ''y''. | ||
| − | == Implémentation en ligne == | + | === Implémentation en ligne === |
* à partir du schéma-bloc | * à partir du schéma-bloc | ||
* en écrivant du code | * en écrivant du code | ||
Version du 27 février 2023 à 12:17
TP3 : Implémentation des filtres numériques
Le travail de ce TP va consister à filtrer des signaux numériques avec divers filtres (RIF puis RII), en exploitant trois implémentations différentes à partir du produit de convolution, de la reponse fréquentielle et de l'équation aux différences.
Il s’agit d’une page protégée.
Sommaire
Implémentation d'un filtre RII
L'objectif est de filtrer le signal
x1(n) = sin(n/10) + b(t)
b(t) étant du bruit ...
Le filtre sera défini par sa fonction de transfert
| H(z) = |
1 + 2z-1 + z-2 |
| | |
|
4 |
Implémentation hors-ligne
Sous Matlab, Vous travaillerez avec le signal x1 crée par le code suivant :
N=1:200;
X1 = sin(N/10) + rand(size(N))/3;
Avec le produit de convolution
Avec le produit de convolution, Il s'agit d'une implémentation hors-ligne dans le domaine temporel.
a) Appliquez à x1 le filtre RIF dont la fonction de transfert est
H(z) = (1 + 2z-1 + z-2)/4
par un produit de convolution (fonction conv) avec la réponse impusionnelle h du filtre :
yc = x1 * h.
b) Tracer le graphe de l'entrée x1 et de la sortie obtenue :
figure(1)
subplot(211); plot(X1); xlabel(’n’); ylabel(’x1[n]’);
subplot(212); plot(Yc); xlabel(’n’); ylabel(’yc[n] avec conv’);
Avec la réponse fréquentielle
Avec la réponse fréquentielle, il s'agit d'une implémentation hors-ligne dans le domaine fréquentiel.
a) Tracer le spectre d’amplitude de x1, la réponse fréquentielle de H et le spectre d’amplitude de y.
b) En exploitant le théorème de la convolution (le produit de convolution se transforme en produit simple fréquences à fréquences), filtrer le signal x1.
Comparaison des implémentations
Vérifier que le filtrage dans le domaine fréquentiel fourni une sortie identique à celle obtenue avec le produit de convolution. Vous pourrez faire
a) une vérification graphique en affichant les signaux y
b) ainsi qu'une vérification quantifiée en calculant une norme entre les deux signaux y.
Implémentation en ligne
- à partir du schéma-bloc
- en écrivant du code