From 44e7a872184bed23f87f1bb773b509bc6c96650a Mon Sep 17 00:00:00 2001 From: Marie Brunetto Date: Tue, 21 Mar 2023 16:00:50 +0100 Subject: [PATCH] ajout matlab rapport --- signal/matlab/Matlab rapport/Lasers.m | 49 +++++++++++++++++++++ signal/matlab/Matlab rapport/ScriptDFT.m | 30 +++++++++++++ signal/matlab/Matlab rapport/SimuliDFT.slx | Bin 0 -> 25029 bytes signal/matlab/Matlab rapport/valeurs.m | 21 +++++++++ 4 files changed, 100 insertions(+) create mode 100644 signal/matlab/Matlab rapport/Lasers.m create mode 100644 signal/matlab/Matlab rapport/ScriptDFT.m create mode 100644 signal/matlab/Matlab rapport/SimuliDFT.slx create mode 100644 signal/matlab/Matlab rapport/valeurs.m diff --git a/signal/matlab/Matlab rapport/Lasers.m b/signal/matlab/Matlab rapport/Lasers.m new file mode 100644 index 0000000..fbca359 --- /dev/null +++ b/signal/matlab/Matlab rapport/Lasers.m @@ -0,0 +1,49 @@ +close all; +Flasers = [85.005E3,90E3,95E3,100E3,115E3,120E3]; +Fsin = Flasers; +deltaF = 5E3; +T = 1/deltaF; +Fe = 320E3;%kHz +Te = 1/Fe; +M= Fe*T; +Tsim = T-Te; +frequence = deltaF*(0:1:M-1); + + +Res=sim('SimuliDFT'); + + + +figure +plot(Res.temps,Res.Sinus_Continu); +hold on; +plot(Res.temps_Echanti,Res.Sinus_Echanti, 'o'); +sig= Res.Sinus_Echanti; +%sig(1:20,4)=0; +echantFft = fft(sig,M); + + +figure +stem(frequence,abs(echantFft)/M); + + +%carreeee----------------------- + +% figure(1) +% plot(Res.temps,Res.Carre_Continu1); +% hold on; +% plot(Res.temps,Res.Sinus_Carre_Continu); +% hold on; +% plot(Res.temps_Echanti,Res.Sinus_Carre_Echanti, 'o'); +% echantFft_Carre = fft(Res.Sinus_Carre_Echanti,M); +% +% +% +% figure(2) +% stem(frequence,abs(echantFft_Carre)/M); +% +% Fp = tf(1,[1.7483*10^(-23), 7.6663*10^(-18), 1.162*10^(-11), 3.0332*10^(-6),1]); +% figure(3) +% bode(Fp); + + diff --git a/signal/matlab/Matlab rapport/ScriptDFT.m b/signal/matlab/Matlab rapport/ScriptDFT.m new file mode 100644 index 0000000..dde5aef --- /dev/null +++ b/signal/matlab/Matlab rapport/ScriptDFT.m @@ -0,0 +1,30 @@ +close all; +clear all; +Fsin = 14; % pour une fréquence de 4Hz +T = (1/Fsin);%0.25 +M=32; +Te = T/M; +Tsim = T-Te; + + +Res=sim('SimuliDFT'); + +%Res.Sinus_Continu=Res.Sinus_Continu/100 + +X1=linspace(0,Tsim,M); +figure +plot(Res.temps,Res.Sinus_Continu); +hold on; % permet de superposer la courbe à suivre +plot(X1,Res.Sinus_Echanti, 'o'); + +echantFft = fft(Res.Sinus_Echanti,M); + +X2=linspace(0,M-1,M); + +%figure +%plot(X2,abs(echantFft)/M,'o'); + +X3=X2/T; + +figure +stem(X3,abs(echantFft)/M); \ No newline at end of file diff --git a/signal/matlab/Matlab rapport/SimuliDFT.slx b/signal/matlab/Matlab rapport/SimuliDFT.slx new file mode 100644 index 0000000000000000000000000000000000000000..b1ccc9e5bbd2b2f93664898051251beedbf059a1 GIT binary patch literal 25029 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 u3C~i$qVyj&;y@a3Nq$Ki2VJ277U*h