问题:怎样把随机信号替换成射频信号,然后进行仿真?
问题描述:
对局部放电源产生的超声波信号,可以采用雷达和医学中常用的射频信号来仿真,如下式:
选用接受超声波的中心频率取150KHz,等值波速为1500/ms。
程序中是用的随机信号
clear all
close all
clc
twpi=2*pi;
rad=pi/180;
deg=180/pi;
kelm=8;%X轴Y轴各自的阵列数量
snr=10;%信噪比
iwave=3;%目标数
theta=[10 30 50];
fe=[15 25 25];
n=100;%快拍数
dd=0.5;%均匀阵列阵元间隔
d=0:dd:(kelm-1)*dd;%X轴阵元分布
d1=dd:dd:(kelm-1)*dd;%Y轴阵元分布
Ax=exp(-j*twpi*d.'*(sin(theta*rad).*cos(fe*rad)));%X轴上阵元对应的方向矩阵
Ay=exp(-j*twpi*d1.'*(sin(theta*rad).*sin(fe*rad)));%Y轴上阵元对应的方向矩阵
A=[Ax;Ay];
S=randn(iwave,n);
X=A*S;%接收信号
X1=awgn(X,snr,'measured');%加入高斯白噪声
Rxx=X1*X1'/n;%自相关函数
[EV,D]=eig(Rxx);%求矩阵的特征向量和特征值
[EVA,I]=sort(diag(D).');%特征值按升序排列
EV=fliplr(EV(:,I));%左右翻转,特征值按降序排列
Un=EV(:,iwave+1:end);%噪声子空间
%按照方位角,仰角在0度~89度范围内(取步长为1)构造空间谱函数
for ang1=1:90
for ang2=1:90
thet(ang1)=ang1-1;
phim1=thet(ang1)*rad;
f(ang2)=ang2-1;
phim2=f(ang2)*rad;
a1=exp(-j*twpi*d.'*sin(phim1)*cos(phim2));
a2=exp(-j*twpi*d1.'*sin(phim1)*sin(phim2));
a=[a1;a2];
SP(ang1,ang2)=1/(a'*Un*Un'*a);
end
end
SP=abs(SP);
SPmax=max(max(SP));
SP=SP/SPmax;
figure(1)
h=mesh(thet,f,SP);%绘制空间谱函数图
set(h,'Linewidth',2)
xlabel('elevation(degree)')
ylabel('azimuth(degree)')
zlabel('magnitude(dB)')
figure(2)
h=mesh(thet,f,SP);%绘制空间谱函数图
set(h,'Linewidth',2)
xlabel('elevation(degree)')
ylabel('azimuth(degree)')
zlabel('magnitude(dB)')
view(0,90)
colorbar
colormap(jet)