Bionjour à tous,
Je suis actuellement en stage ingénieur en télécom, et je dois designer un simple model de PLL pour essayer de trouver des technique de verrouillage.
J'ai fais mon code matlab mais il ne fonctionne pas très bien; et je n'ai pas idées pour trouver comment résoudre le probleme, je bloque.
le probleme est que la PLL est tjs verrouillée quelque soit la fréquence du signal d'entrée, elle ne déccroche jamais. Et quand je mets un filtre du 1er ordre, pour une accélération de fréquence, la PLL track le signal.


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
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)*vco(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 aurait une idée cela me sauverai la vie car je suis vraiment perdu.

Merci par avance