République Algérienne Démocratique et Populaire Ministère de l’Enseignement Sup

République Algérienne Démocratique et Populaire Ministère de l’Enseignement Supérieur et de la Recherche Scientifique Université de Khemis Miliana djilali bounaama Faculté des Sciences et de la Technologie Département de la Technologie MASTER 01 ASP Module : traitement numérique de signal • AIT AMRANE Nabil Pour : M. Benrebaya Année Universitaire 2014/2015 1/ partie théorique: 1.1/ But de TP: L’objectif de ce TP est de: calculer la réponse d’un système discret, son équation aux différences, ses poêles et zéros… 1.2/ Introduction : Un système LIT à temps discret est caractériser par : sa réponse impulsionnelle, son équation aux différences ou par sa fonction de transfert. 1.2.1/ Les systèmes Définition : un système à un signal en entrée et un signal en sortie qui est relié au signal d’entrée par la transformation que lui a apporté le système. Système continu : traite des entrées continues et produit des sorties continues. .. x(t) → y(t) 1.3/ système a temp discret : Un système a temps discret répond à la définition générale des systèmes : ensemble qui introduit une relation entre ses signaux d’entrée et signaux de sortie. Ici, tous ces signaux sont discrets. L'une des méthodes d'étude de l'action des systèmes discrets étant l'approche fréquentielle (utilisation de la Convolution) nous parlons alors de filtrage. Ainsi, nous utiliserons indifféremment de manière équivalente le terme de système discret ou celui de filtre discret. 1.3.1/ Systèmes linéaires et invariants dans le temps (LIT) : Beaucoup de dispositifs peuvent être modélisés comme des systèmes linéaires et invariants dans le temps (LIT). Ces systèmes cumulent les trois propriétés vues ci-dessus, additivité, homogénéité et invariance temporelle. La combinaison de ces trois propriétés permet de spécifier la relation entre la sortie et l’entrée du système comme le résultat d’un produit de convolution entre l’entrée et la réponse impulsionnelle caractérisant le système. Nous allons maintenant dériver le produit convolution dans le cas discret. Si on appelle la h[n] la réponse d’un système discret à une entrée impulsionnelle (Kronecker) δ[n] : δ[n] → h[n], du fait de la propriété d’invariance temporelle on a : δ[n − k] → h[n − k] ∀k ∈ IN. La propriété d’additivité des systèmes linéaires nous permet aussi d’écrire : Soit une suite discrète x[n] = · · · , x[ −2], x[ −1], x[0], x[1], x[2], · · · . On peut représenter cette séquence comme étant la somme d’une suite d’impulsions de Kronecker décalée dans le temps pondérée par les valeurs de x[n] à chacun de ces instants : x[n] = · · · + x[ −2] δ [n + 2] + x[ −1] δ [n + 1] + x[0] δ [n] + x[1] δ [n − 1] + x[2] δ [n − 2] + · · · ce que l’on peut écrire de façon plus compacte : En utilisant les développements précédents et la propriété d’homogénéité, on obtient l’expression de la sortie associée à cette entrée : c’est le produit de convolution que l’on note aussi : y[n] = x[k] ∗ y[k]. On peut obtenir la formulation alternative suivante du produit de convolution en effectuant le changement de variable m = n − k : Dans le cas continu une démarche analogue nous amène à la formulation du produit de convolution continu : 1.4/ Equation aux différences : La forme générale d’une équation aux différences d’un système s’écrit comme suit : any[k+n]+an-1y[k+n-1]+... +a0y[k]=bmx[k+m]+bm-1x[k+m-1]+...+b0x[k] , avec les conditions initiales y[-1],y[-2],…,y[-n] données. Pour résoudre cette équation sous Matlab (c.à.d. détermination de la sortie y[k] du système), on utilise la commande « filter » : [y]=filter (B, A, X, Zi). Avec A= [an,an-1,...,a0] et B= [bm,bm-1,...,b0] et" Zi" les conditions initiales : Zi= filter (B, A, [y [-1], y [-2],…, y [-n]]). Pour calculer la réponse impultionelle de ce système, on utilise la commande : h=impz (B, A). Les deux commandes : [z, p]=tf2zp (B, A), zplane (B, A) servent respectivement à calculer et tracer les pôles et les zéros. 1.5/ Réponse impulsionelle h[k] : Un système caractérisé pas sa réponse impulsionnelle h[k], sa sortie s’écrit y[k]=x[k]*h[k], sous matlab : y= conv(x, h). 2/ partie pratique: Exercice 01 : Soit x[k]= 2ku[k] le signal d’entrée et l’équation aux différences y [k+1]-0.4y[k]=x[k] avec la condition initiale y [-1]=4. • La sortie de ce système pour 0≤k≤50 • 1.1 clc; 0 5 1 0 1 5 2 0 2 5 3 0 3 5 4 0 4 5 5 0 0 2 0 4 0 6 0 8 0 1 0 0 close all; clear all; k=0:50; B=[0 1]; A=[1 -0.4]; x=2*k; Zi=filtic(B,A,4); y=filter(B,A,x,Zi); h=impz(B,A); subplot 211 stem(k,x); • 1.2/ clc; close all; clear all; k=0:50; X=2*k; B=[0,1]; A=[1,-0.4]; Zi=filter(B,A,4); [y]=filter(B,A,X,Zi); subplot 211 stem (k,y); • Les pôles et les zéros : clc; close all; clear all; k=0:50; X=2*k; B=[0,1]; A=[1,-0.4]; Zi=filter(B,A,4); [y]=filter(B,A,X,Zi); subplot 211 stem (k,y); zplane(B,A) • La réponse impulsionelle h[k] : clc; close all; clear all; k=0:50; X=2*k; B=[0,1]; A=[1,-0.4]; Zi=filter(B,A,4); [y]=filter(B,A,X,Zi); subplot 211 stem (k,y); zplane(B,A) h=impZ(B,A); stem(h); • tracer sur le même graphe : clc; close all; clear all; k=0:50; B=[0 1]; A=[1 -0.4]; x=2*k; Zi=filtic(B,A,4); y=filter(B,A,x,Zi); h=impz(B,A); subplot 411 stem(k,x); subplot 412 stem(k,y); zplane(B,A) [z,p]=tf2zp(B,A); subplot 413 stem(k,y); subplot 414 stem(h); figure m=zplane(B,A); 0 5 1 0 1 5 2 0 2 5 3 0 3 5 4 0 4 5 5 0 0 5 0 1 0 0 - 6 - 4 - 2 0 2 4 6 - 1 0 1 R e a l P a r t I m a g i n a r y P a r t 0 5 1 0 1 5 2 0 2 5 3 0 3 5 4 0 4 5 5 0 0 1 0 0 2 0 0 1 2 3 4 5 6 7 8 9 1 0 1 1 0 0 . 5 1 stem(k,m); Exercice 02 : Soit x[k]=0.5k u[k] le signal d’entrée . Et l’équation aux différences y [k+2] + y [k+1] +0.25 y[k]=x [k+2] Avec la condition initiale y [-1]= 1, y [-2]= -2. • La sortie de ce système pour 0≤k≤50 clc; close all; clear all; K=0:50; X=0.5.^K; B=[1,0,0]; A=[1,1,0.25]; Zi=filter(B,A,[1,-2]); [Y]=filter(B,A,X,Zi); subplot 211 stem (K,Y); • Les pôles et les zéros : clc; close all; clear all; K=0:50; X=0.5.^K; B=[1,0,0]; A=[1,1,0.25]; Zi=filter(B,A,[1,-2]); [Y]=filter(B,A,X,Zi); subplot 211 stem (K,Y); Zplane(B,A) • La réponse impulsionnelle h[k] : clc; close all; clea r all; K=0:50; X=0.5.^K; B=[1,0,0]; A=[1,1,0.25]; Zi=filter(B,A,[1,-2]); [Y]=filter(B,A,X,Zi); subplot 311 stem (K,Y); Zplane(B,A) stem (K,Y); h=impZ(B,A); stem (h); • tracer sur le même graphe : clc; close all; clear all; K=0:50; X=0.5.^K; B=[1,0,0]; A=[1,1,0.25]; Zi=filter(B,A,[1,-2]); [Y]=filter(B,A,X,Zi); subplot 311 stem (K,Y); subplot 312 Zplane(B,A) subplot 313 stem (K,Y); h=impZ(B,A); stem (h); Exercice 03 : Soit le signal à temps discret suivant : x[k]=u[k]-u[k-5) et h[k]=k(u[k]-u[k-5] avec u[k] l’échelon unité • T racer les deux signaux. • Calculer la convolution : y[k]=x[k]*h[k] clc; close all; clear all; Kx=[0 1 2 3 4]; x=[1 1 1 1 1 ]; Kh=[1 2 3 4 5 6]; %Kx=0:4; h=[1 2 3 4 5 6]; %h=1:6 ; y=conv(x,h) Ky=Kx(1)+Kh(1):Kx(length(Kx))+Kh(length(Kh)); subplot 311 stem(Kx,x); subplot 312 stem(Kh,h); subplot 313 stem(Ky,y); 3/ conclusion Le produit de convolution est utilisé dans le traitement du signal, lorsque l'on utilise des filtres (passe-bas ,passe-haut ,passe-bande).Si l'on a un signal entrant e(t) et un élément filtrant ayant une fonction de transfert h(t) alors le signal de sortie s(t) sera la convolution de ces deux fonctions : s(t)=e(t)*h(t) (produit de convolution) et ( produit simple de deux fonctions ) des fonctions du temps e(t), s(t) et h(t). Pourquoi le discrétiser le temps ? Contrôle numérique : • Correcteurs à temps discret : présence d’une horloge de synchronisation. • Facilement programmable : très flexible, facilement portable. uploads/Industriel/ tp-n-2-systemes-a-temps-discret-sous-matlab.pdf

  • 32
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager