matlab中间歇控制,如何用matlab产生有间断的信号

03eb3fef48dbf7c85a6d00c4550f5d69.png

也就是说,噪声调频信号具有如下的瞬时频率:

f(t)=f0+kfm*u(t)

% 摘自《信息时代的电子战》(29所)

% 1。产生高斯噪声电压

% 2。用6极点椭圆滤波器形成噪声带宽

% 3。将滤波器输出送到一压控震荡器,输出即为调频噪声干扰信号

clf;

clc;

close all;

clear all;

n = 4096;

tmax = 1/2;

t = 2*tmax*(-n/2:n/2-1)/n;

fs= n/2/tmax;

n = rand(1,n);

subplot(2,2,1);plot(t,n);grid;

xlabel('time');ylabel('noise voltage');

title(['gaussian noise voltage']);

y = erf(n);

[b,a] = ellip(6,.5,.5,.005);

v = filter(b,a,n);

verf = filter(b,a,y);

f0 = 0;k = 50; j=sqrt(-1);

f= f0 + k*v;

f1 = f0 + k*verf;

x = cos(2*pi*f.*t) + j*sin(2*pi*f.*t);

xerf = cos(2*pi*f1.*t) + j*sin(2*pi*f1.*t);

v = fft(v);

pv = v.*conj(v);

pv = fftshift(pv);

x = fft(x);xe = fft(xerf);

px = x.*conj(x);

pxe = xe.*conj(xe);

px = fftshift(px);

pxe = fftshift(pxe);

px = px/max(px);pv = pv/max(pv);pxe = pxe/max(pxe);

pxdbm = 30 + 10*log10(px+1e-6);

pvdbm = 30 + 10*log10(pv+1e-6);

pxedbm = 30 + 10*log10(pxe+1e-6);

fsam = fs*(-n/2:n/2-1)/n;

subplot(2,2,2);

plot(fsam,pvdbm);grid;

subplot(2,2,3);

plot(fsam,pxdbm);grid;

subplot(2,2,4);

plot(fsam,pxedbm);grid;

◆◆

评论读取中....

请登录后再发表评论!

◆◆

修改失败,请稍后尝试

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值