%% Simulation / Modélisation d'un système de photodétection % Module : Ingénierie Electronique % pour le Traitement de l'Information %-------------------------------------------------------------- % TD_10 : Photodétection - Modélisation %-------------------------------------------------------------- % Auteur : Julien VILLEMEJANE % Date : 11/12/2020 %-------------------------------------------------------------- clear all; close all; size_m = 10001; f = logspace(2,8,size_m); w = 2*pi.*f; %% Constantes RT = 1e5; Cphd = [1e-12 10e-12 30e-12 100e-12 1e-9]; num_c = max(size(Cphd)); % Ampli Opérationnel / ALI A0 = 1e5; % Amplification différentielle A funitaire = 1e7; % Bande-passante unitaire f0 = funitaire/A0; % Fréquence de coupure en boucle ouverte %% Comparaison % Création des N systèmes TF_trans = tf(zeros(1,1,num_c)); wtrans = zeros(1,num_c); Qtrans = zeros(1,num_c); for i = 1:num_c wc = 1/(RT*Cphd(i)); fc = wc/(2*pi); %% Modèle équivalent simplifié wtrans(i) = sqrt(wc*2*pi*funitaire); Qtrans(i) = sqrt(funitaire/fc); num_trans = [RT*A0/(1+A0)]; a2 = 1/(wtrans(i)*wtrans(i)); a1 = 1/(wtrans(i)*Qtrans(i)); den_trans = [a2 a1 1]; TF_trans(:,:,i) = tf(num_trans, den_trans); end clear num_trans den_trans a1 a2 % Calcul des N réponses en fréquence for i = 1:num_c [mag, phase, w_Iphd] = bode(TF_trans(:,:,i), w); mag = squeeze(mag); phase = squeeze(phase); phase_trans(:,i) = phase(:); mag_trans(:,i) = mag(:); end clear mag phase w_Iphd; %% Affichage des N diagrammes de Bode str_titre = 'Transimpedance__A0_'+string(A0/1000)+'k__RT_'+string(RT/1e6)+'M'; figure('Name', str_titre, 'NumberTitle','off'); subplot(2,1,1); for i = 1:num_c str(i) = 'C = '+string(Cphd(i)); semilogx(f, 20*log10(mag_trans(:,i))); legend(str); hold on; end xlabel('Frequence (Hz)'); ylabel('gain (dB)'); grid on; subplot(2,1,2); for i = 1:num_c str2(i) = 'Q = '+string(Qtrans(i)) + ' / fc = ' + string(floor(wtrans(i)/(2*pi*1000))) + 'kHz'; semilogx(f, phase_trans(:,i)); legend(str2); hold on; end ylabel('Phase (deg)'); grid on; clear i num_c clear mag_trans phase_trans