SYSTEMES LINEAIRES CONTINUS
DM1 : manipulation et étude temporelle et spectrale de signaux à l’aide de Matlab
Ce DM sera traité en binôme
L’ensemble des programmes que vous avez réalisé sera regroupé, ainsi que les calculs
théoriques, dans un dossier («DM_NOMNOM.zip») et sera remis sur la plateforme campus à
titre de compte rendu avant le vendredi 23 février minuit.
Il est tout de même conseiller de le finir avant le 1er DS du 19 fevrier
La qualité de la rédaction des programmes (indication, commentaires…) et de la
présentation/commentaires des figures sera prise en compte dans l’évaluation du travail fourni.
Le plagiat et la recopie seront donc sanctionnés de même que le retard.
Partie 1 : Analyse de signaux
Exercice 1 : parité d’un signal.
Ecrire un programme qui permet de trouver les parties paire et impaire du signal suivant:
𝑥(𝑡) = 𝑒 2𝑡
Votre programme devra :
1
- Tracer le signal 𝑥(𝑡)
- Tracer le signal 𝑥(−𝑡)
- Tracer le signal 𝑥𝑝 (𝑡)
- Tracer le signal 𝑥𝑖 (𝑡)
Il devra, en plus de tracé, afficher si le signal est pair, impaire, ou s’il possède une symétrie
demi-onde. Utiliser la commande « disp »
Exercice 2 : Puissance et énergie.
Ecrire un programme qui permet de calculer :
- L’énergie et la puissance
- La valeur efficace
- La valeur moyenne
du signal représenter sur la figure suivante:
A partir de votre programme, créer une fonction Matlab qui permet de trouver les éléments cités
sur un signal quelconque. Il devra, afficher si le signal est un signal énergétique ou un signal de
puissance.
2
Exercice 3 : Manipulation de signal.
Soit le signal représenté sur la figure suivante :
Ecrire un programme qui permet de calculer et d’afficher :
a. Modification de l’amplitude par un facteur A>1 et A<1
b. Un changement d’échelle pour a>1 et a<1
c. Un décalage dans le temps à droite et à gauche
Pour chaque point a, b et c, vous tracerez sur la même figure (à l’aide de subplot) le signal 𝑥(𝑡)
et les 2 opérations réalisées.
Elément de réponse : vous devrez créer une fonction Matlab pour définir un signal 𝑦(𝑡) à partir
de 𝑥(𝑡), function x=y(t)
3
Exercice 4 multiplication et addition.
Soit les signaux suivants :
Ecrire un programme qui permet de calculer et afficher les signaux suivants :
𝑥𝑎𝑑𝑑 = 𝑥𝑎 + 𝑥𝑏
𝑥𝑚𝑢𝑙 = 𝑥𝑎 . 𝑥𝑏
𝑥𝑑𝑖𝑣 = 𝑥𝑎 /𝑥𝑏
Exercice 5 : Convolution et déconvolution.
Soit les signaux suivants :
𝑥1(𝑡) = 𝑒 −0.7𝑡 𝑝𝑜𝑢𝑟 0 < 𝑡 < 1
𝑥2(𝑡) = 1 𝑝𝑜𝑢𝑟 0 < 𝑡 < 2
Ecrire un programme, en utilisant les fonction « conv » et « deconv » pour calculer et afficher :
- Les signaux x1 et x2
- Le produit de convolution 𝑋𝑐𝑜𝑛𝑣 = 𝑥1 ∗ 𝑥1
- Le signal 𝑋𝑑𝑐𝑜𝑛𝑣1 issu de la déconvolution de 𝑋𝑐𝑜𝑛𝑣 par 𝑥2
- Le signal 𝑋𝑑𝑐𝑜𝑛𝑣2 issu de la déconvolution de 𝑋𝑐𝑜𝑛𝑣 par 𝑥1
4
Partie 2 : Analyse de Fourier
Un dispositif électronique reçoit en entrée le signal sinusoïdal 𝑒(𝑡) = 𝑠𝑖𝑛( 𝜋𝑡) et délivre en
sortie le signal « redressé » 𝑠𝑟 (𝑡) = | 𝑠𝑖𝑛( 𝜋𝑡)| (lire valeur absolue de 𝑠𝑖𝑛( 𝜋𝑡)) représenté sur
la figure ci-dessous. Une fonction électronique de ce dispositif écrête le signal redressé 𝑠𝑟 (𝑡)
par saturation et fournit le signal 𝑠(𝑡). Cette saturation se produit dès lors que 𝑎𝑇 < 𝑡 < (1 −
𝑎)𝑇.
Le début du programme Matlab réalisé se trouve ci-dessous :
clear all; clc; clf; close all;
NbHarm=10 ; T=1; F=1/T; dt=0.001; a=0.4;
% % Calcul de s(t)
% --------------
[sr,t] = signal_P1718(T, 0.5, dt); % Signal dent de scie
[s,t] = signal_P1718(T, a, dt); % Signal tronqué
%
figure(1);
subplot(1,2,1); plot(t,sr,'r','linewidth',2);grid;
title('\fontsize{12}\bfFig.1 : Signal redressé sr(t)');
xlabel('\fontsize{12}\bfTemps (s)'); ylabel('\fontsize{12}\bfAmplitude');
subplot(1,2,2); plot(t,sr,':r',t,s,'linewidth',2);grid;
title(['\fontsize{12}\bfFig.2 : Signal écrété s(t) pour a = ',num2str(a)]);
xlabel('\fontsize{12}\bfTemps (s)'); ylabel('\fontsize{12}\bfAmplitude');
5
function [s,t] = signal_P1718(T,a,dt)
%
t=0:dt:T;
e=sin(pi/T*t);
for k=1:length(t);
if (0<=t(k) & t(k)<=a*T); s(k)=e(k);
elseif (a*T<=t(k) & t(k)<=(1-a)*T); s(k)=sin(pi*a);
else s(k)=e(k);
end
end
t=[t T+t]; s=[s s];
end
%
1. Quelle est la période 𝑇 des signaux 𝑠𝑟 (𝑡) 𝑒𝑡 𝑠(𝑡) ?
Le signal 𝑠(𝑡) est tel que pour 0 ≤ 𝑡 ≤ 𝑇
𝑠(𝑡) = 𝑠𝑟(𝑡) pour 0 ≤ 𝑡 ≤ 𝑎𝑇 et (1 − 𝑎)𝑇 ≤ 𝑡 ≤ 𝑇
{
𝑠(𝑡) = 𝑠𝑟(𝑎𝑇) pour 𝑎𝑇 ≤ 𝑡 ≤ (1 − 𝑎)𝑇
On s’intéressera au développement en séries de Fourier du signal s(t). On rappelle que :
1
𝑠(𝑡) = ∑+∞
𝑛=−∞ 𝑆𝑛 𝑒𝑥𝑝( 2𝜋𝑗𝑛𝐹𝑡) avec 𝑆𝑛 = 𝑇 ∫𝑇 𝑠(𝑡) 𝑒𝑥𝑝( − 2𝜋𝑗𝑛𝐹𝑡)𝑑𝑡
2. Calculez la valeur moyenne 𝑠𝑚 𝑑𝑒 𝑠(𝑡) en fonction de a. A.N : a = 0,2
3. Calculez la puissance moyenne 𝑃𝑚 𝑑𝑒 𝑠(𝑡) en fonction de a. A.N : a = 0,2
4. Compléter le programme pour tracez, en fonction de 𝒂, les courbes de 𝑠𝑚 (𝑎) et de la
puissance moyenne 𝑃𝑚 (𝑎) du signal 𝑠(𝑡). Indication : servez-vous du programme du
CM 1.3
5. Tracer le spectre du signal s(t) sur une figure (3) ainsi que le spectre en puissance sur
une figure (4) pour a=0.2 et un nombre d’harmonique 20.
6. Commentez les figures 3 et 4 obtenues.
7. A partir des éléments fournis par les figures 3 et 4, vérifiez le théorème de Parseval
8. A partir des harmoniques, reconstituer les signal s(t). Combien faut-il d’harmoniques
au minimum pour avoir une bonne reconstitution ?
9. Faire les mêmes calculs et analyses que précédemment avec d’autres valeurs de 𝑎 et
conclure.