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 + -
显示快捷键?