Bonjour a tous,
Je suis étudiant ingénieur en stage actuellement et je dois designer un model simple de PLL pour etudier le verrouillage de la boucle.
j'ai fais un code matlab mais j'ai un petit probleme, c'est que la boucle ne se déverrouille jamais quelque soit la fréquence d'entrée de du signal.
Le 2e probleme est que si je mets pas de filtre, la PLL track un signal d'entrée avec un accélération de fréquence ce qui n'est pas normale pour une PLL d'ordre 1.
clear all
close all
clc
fvco= 1000; %Vco frequency
fs=10000; %Sample frequency
N=5000;%Number of samples
t=0:1/fs:0.5-1/fs;
length(t)
%f1=1000;%Modulating frequency
%Signal =(exp(j*(2*pi*f1*t)));
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%
%PLL Design
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Initilize PLL Loop
phi_hat(1)=30;
e(1)=0;
phd_output(1)=0;
vco(1)=0;
%Define Loop Filter parameters(Sets damping)
kp=.15; %Proportional constant
ki=0.1; %Integrator constant
%PLL implementation
for n=2:length(Signal)
vco(n)=conj(exp(j*(2*pi*n*fvco/fs+phi_hat(n-1)))); %Compute VCO
phd_output(n)=imag(Signal(n)*v co(n)); %Complex multiply VCO x Signal input
e(n)=e(n-1)+(ki+kp)*phd_output(n)-ki*phd_output(n-1); %Filter integrator
phi_hat(n)=phi_hat(n-1)+e(n); %Update VCO
end;
Si quelqu'un a une idée; je prends volontier car je suis perdu et surtout mon stage n'avance pas.
-----