Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Mohammedia
Année Universitaire : 2020-2021
Objectifs :
- Etudier les représentations de quelques signaux numériques
- Analyser les performances des systèmes linéaires invariants discrets.
- Aborder les réponses temporelles des différents systèmes discrets
Travail demandé :
Un compte-rendu est à remettre à la fin des activités demandées. Dans ce compte-rendu, vous devez :
- Développer succinctement votre réflexion.
- Commenter votre code Matlab.
- Interpréter les résultats obtenus.
- Traiter les exercices non réalisés au laboratoire.
I. Signaux discrets
Définition :
Un signal discret est défini par des valeurs mesurées au moment de temps discret.
Exemples :
Impulsion unitaire: δ(n) = 1; pour n=0 ; δ(n) = 0 ailleurs
Echelon unitaire: u(n) = 1 ; pour n0 ; u(n) = 0 ailleurs
Exercices :
1- Ecrire et Exécuter les programmes suivants puis commenter les résultats obtenus :
2- En se basant sur les résultats obtenus, représenter graphiquement les signaux suivants :
a. x[n]=0,8 δ[n − 333] pour 300 n 350
b. y[n]= δ[n] − 0,5δ[n − 1] + δ[n − 2] − 2δ[n + 1] pour -10 n 10
c. z[n]= u[n]
d. v[n]= u[n-2]
e. w[n]=0,7(u[n+2]-u[n-3]) ; pour -5 n 10
Num=[0.25 0.25] ;
Den=[1 0] ; ( ou tout simplement Den=1)
2. Réponses temporelles
L’analyse d’un système peut être effectuée à partir de ses réponses temporelles et fréquentielles. Les divers
modes de représentation sont complémentaires et traduisent de manière différente les caractéristiques d’un
système.
2.1. Réponse impulsionnelle :
Elle peut être tracée directement avec la commande impz :
Impz(Num,Den)
f0=1000/(2*pi);
T0=1/f0;
duree=2*T0;
t=0:T0/100:duree;
u=sin(2*pi*f0*t);
y=filter(num,den,u); % y = sortie du système pour l'entrée u
stem(t,u) % tracé de l’entrée et de la sortie en fonction du temps sur une même figure
hold on
stem(t,y)
[y,t]=impz(num,den,N);
stem(t,y)
title('Réponse impulsionnelle')
Sauvegarder ce fichier (Menu File+ Save as) sous le nom repimpz.m sous votre répertoire. Dans la fenêtre
command, exécuter les lignes suivantes :
»N=10
»num=[0.25 0.25];
»den=[1 0];
»repimpz
Vérifier que la réponse impulsionnelle est finie.
1. Etude théorique :
1 1
Système N°1 : s𝑛 = 2 e𝑛 + 2 e𝑛−1
1 1
Système N°2 : s𝑛 = − 2 e𝑛 + 2 e𝑛−1
1 1
Système N°3 : s𝑛 = − e𝑛 + e𝑛−2
2 2
1 1
Système N°4 : s𝑛 = 2 e𝑛 + 2 e𝑛−2
1 1
Système N°5 : s𝑛 = − 2 e𝑛 + 2 e𝑛−4
1 1 1
Système N°6 : s𝑛 = 4 e𝑛 + 2 e𝑛−1 + 4 e𝑛−2
Pour chacun des systèmes étudiés dans la partie étude théorique, vérifier la réponse impulsionnelle à l’aide de
votre fichier repimpz créé plus haut. Tracer les allures des réponses obtenues.
Soit un signal e(n) contenant 5 échantillons e=[0 1 1 0 1 0 ]. Nous allons traiter ce signal par le système défini par
1 1
l’équation n°1: sn = en + en−1
2 2
Sous Simulink, il est possible de créer des signaux discrets (càd. numériques) en utilisant les générateurs de la
librairie simulink/sources et en fixant leur paramètre "sample time" à la période d'échantillonnage souhaitée.
Attention, il convient de ne pas confondre cette fréquence d'échantillonnage avec le pas de traitement de
l'algorithme de simulation : ceux-ci peuvent être complètement différents ! D'autre part, lorsque les signaux sont
discrets, il convient d'utiliser l'algorithme itératif de type "discrete" du Menu Simulation>configuration
parameters.
1.1. Réaliser une sinusoïde d'amplitude=2, de pulsation=1 rad/s, de phase nulle et de période
d'échantillonnage=0.5 secondes.
1.2. Visualiser cette sinusoïde sous Simulink en utilisant un pas de simulation fixe égal à la période
d'échantillonnage, et reporter ses valeurs dans la fenêtre de travail Matlab.
1.3. Relancer ensuite la simulation avec un pas de simulation fixe de 0.0001s.
1.4. Quelles sont vos conclusions au point de vue de l’allure du signal observé, de la taille des vecteurs renvoyés
et du temps de simulation ?
Pour obtenir un signal discret, il est également possible d'effectuer un échantillonnage d’un signal continu. Cet
échantillonnage peut être réalisé à l’aide d’un bloc zero-orderHold de la librairie Simulink/ Discrete:
2.1. A l’aide de ce bloc zero-orderHold, échantillonner une sinusoïde continue d'amplitude=2, de pulsation=1
rad/s et de phase nulle, avec une période d'échantillonnage de 0.5s.
2.2. Lancer la simulation avec un pas de traitement variable valant au maximum 0.01s et visualiser les deux
signaux (continu et échantillonné) sur un même graphe à l'aide d'un bloc mux de la librairie simulink/signal
routing.
2.3. Reporter ensuite les valeurs de ces signaux (continu et échantillonné) dans Matlab et comparer les tailles
des vecteurs obtenus.
1. Présentation du système :
Soit l’équation de récurrence suivante :
𝑦[𝑛] = 0,1𝑥[𝑛] + 1,3𝑦[𝑛 − 1] − 0,9𝑦[𝑛 − 2]
1.1. Exprimer la fonction de transfert H(z) de ce système
1.2. Etudier la stabilité de ce système
1.3. Donner l’expression de sa réponse impulsionnelle h(n)
2. Réalisation du système
2.1. Réaliser ce système sous Simulink à l’aide des blocs : Gains, Additionneurs et Retards.
2.2. En lançant une simulation de 50 secondes, examiner sa réponse impulsionnelle. (Utiliser pour cela une
impulsion générée au moyen du bloc discrete impulse de la librairie Signal Processing Blockset > Sources
2.3. Réaliser ce système à l'aide du bloc Discrete Filter de la librairie Simulink>Discrete et vérifier que sa réponse
impulsionnelle est bien identique à celle du point b.
3. Application du système
- Appliquer un signal de forme x(t)=sin(2..f0.t) avec f0=20Hz.
- Visualiser l’entrée et la sortie du système, avec une durée de simulation de 50S
- Analyser l’effet du système sur le signal x(t). Conclure