欢迎来到天天文库
浏览记录
ID:38398722
大小:43.00 KB
页数:10页
时间:2019-06-11
《科斯塔斯锁相环的matlab仿真程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、科斯塔斯锁相环的matlab仿真程序:clearall;closeall;fs=12e6;%采样频率ts=1/fs;num=2.5e6; %数据长度SNR=-15;real_fc=3563000;%实信号频率data=sin(2*pi*real_fc*(0:num-1)*ts+pi/4)+sqrt(10^(SNR/10))*randn(1,num);%科斯塔斯环的输入信号fc=3563010;%本地频率n=fs/1000;%累积时间为1msnn=[0:n-1];nf=floor(length(data)/n);%将输入数据分成1ms的多个数据块wfc=2*
2、pi*fc; %本地信号phi_prv=0;temp=0;frame=0;carrier_phase=0;phase=0;%环路滤波器的参数c1=153.7130;c2=6.1498;forframe=1:nf%产生本地的sin和cos函数expcol=exp(j*(wfc*ts*nn+phase));sine=imag(expcol); cosine=real(expcol);x=data((1:n)+((frame-1)*n));%将数据转换到基带x_sine=x.*sine;x_cosine=x.*cosine;Q=sum(x_sine);
3、%经过滤波器I=sum(x_cosine);phase_discri(frame)=atan(Q/I); %得到锁相环的输入%锁相环dfrq=c1*phase_discri(frame)+temp;%经过环路滤波器temp=temp+c2*phase_discri(frame);wfc=wfc-dfrq*2*pi; %改变本地频率dfrq_frame(frame)=wfc;phase=wfc*ts*n+phase; %得到不同块的相位endplot(dfrq_frame/(2*pi));holdonplot([1:length(dfrq_frame)]
4、,real_fc,'r');legend('锁相环跟踪','实际的载波频率');gridmean_freq=mean(dfrq_frame/2/pi)p=abs(real_fc-mean_freq)/real_fc%%%%%%%%%%%%%%%function[c1,c2]=calculatePLLCoef(zeta,bandwidth)%Calculatescoefficientsusedinthecarriertrackingloop(PLL)% zeta : tampingfactor% bandwidth:nosiebandwidthtUpd
5、=0.001; %integrationtime积分时间gain=0.0005; %gainwT=(2*bandwidth*zeta)/(zeta^2+0.25)*tUpd; %naturalfrequencyc1=(1/gain)*(8*zeta*wT)/(4+4*zeta*wT+wT^2);c2=(1/gain)*(4*wT^2)/(4+4*zeta*wT+wT^2);**************************华丽的分割线***********************
6、**************%**FLL********clearall;closeall;fs=5e6; %sampleratets=1/fs;T=1e-3; %timeofsignalN=fs*T;nn=(0:N-1);fc=0; %carrierfrequencydoppler_shift=500; %dopplerfrequencyshiftphi=pi/4;x=cos(2*pi*(fc+doppler_shift)*ts*nn+phi)+3*randn(1,N); %inputsignalfigur
7、e(1)plot(x(1:200));bandwidth=50; %equalbandwidthzeta=0.7; %dampfactortUpd=0.001; %integrationtimegain=0.0002; %gainwT=(2*bandwidth*zeta)/(zeta^2+0.25)*tUpd; %naturalfrequencyc1=(1/gain)*(8*zeta*wT)/(4+4*zeta*wT+wT
8、^2);c2=(1/gain)*(4*wT^2)/(
此文档下载收益归作者所有