noisefm.m
来自「产生噪声调频干扰信号」· M 代码 · 共 32 行
M
32 行
%噪声调频干扰
function y=noiseFM(uj,mf,wpp);
%mf>>1时:功率等于载波功率uj^2/2; 干扰带宽(半功率带宽)与调制噪声的带宽无关,正比于调制噪声的功率和调谐率
fj=35e6;
bj=10e6; %干扰带宽
Tr=520e-6;
fs=4*fj;
t1=0:1/fs:3*Tr-1/fs; N=length(t1);
if nargin==0
uj=1; mf=0.6; %调频指数
wpp=6;
end
df1=fs/N;n=0:N/2;f=n*df1;
u=wgn(1,N,wpp); %产生高斯白噪声%
wp=10e6; %调制噪声带宽10M
ws=13e6;
rp=1; rs=60;
[Nn,wn]=buttord(wp/(30e6/2),ws/(30e6/2),rp,rs);
[b,a]=butter(Nn,wn); %fvtool(b,a);
u=filter(b,a,u); % 生成带限高斯白噪声 p=2.7917w
%j2=fft(u); figure,subplot(2,1,1),plot(t1,u),title('高斯带限噪声');subplot(2,1,2), plot(f,10*log10(abs(j2(n+1)*2/N))),title('功率谱');
ss(1)=0; % 积分初值 %phi=2*pi*junyun(length(t1)); % 均匀分布
for i=1:N-1 %对u进行离散积分
ss(i+1)=u(i)+ss(i);
end
%i=1:N-1;ss=sum(u(i));
ss=ss*Tr/N; %ss=ss;%*2*pi/N; jss=fft(ss);plot(f,10*log10(abs(jss(n+1)*2/N)))
y=uj*cos(2*pi*fj*t1+2*pi*mf*bj*ss+100); %功率:p=(1/N)*sum(y.^2) =0.5w 即载波的功率
%J=fft(y); figure, subplot(121), plot(t1,y),title('噪声调频干扰时域波形'),xlabel('t(单位:s)'),ylabel('幅度/v)');
%subplot(122), plot(f,(abs(J(n+1)))),title('功率谱'),xlabel('t(单位:Hz)'),ylabel('功率/dB)');
clc;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?