資源簡介
本段代碼針對單基地MIMO雷達的經典MUSIC算法做了詳細仿真,并且運用了虛擬陣元的生成方法提高了算法的角度測量精度

代碼片段和文件信息
clc
clear?all
close?all
j=sqrt(-1);
M=4;
lambda=0.0081;
transmit_dis=[0:MM+(M+1):M+1:2*M+1+(M+1)*(M-2)].‘*lambda/2;%定義發射陣列間距【0?1?2?3?4?9?14?19】*lambda/2
transmit_array_num=length(transmit_dis);%發射陣元個數
receieve_dis=[0:M].‘*lambda/2;????????%定義接收陣列間距【0?1?2?3?4】*lambda/2?????
receieve_array_num=length(receieve_dis);
virtual_array_num=transmit_array_num*receieve_array_num;
DOA=[45?46];
target_num=length(DOA);
transmit_steer=exp(j*pi*2*transmit_dis/lambda*sind(DOA));
receieve_steer=exp(j*pi*2*receieve_dis/lambda*sind(DOA));
for?k=1:target_num
????steer_total(:k)=kron(transmit_steer(:k)receieve_steer(:k));
end
snap_num=100;
SNR=10;
Y=10^(SNR/20)*steer_total*(randn(target_numsnap_num)+j*randn(target_numsnap_num))/sqrt(2)+...
????(randn(virtual_array_numsnap_num)+j*randn(virtual_array_numsnap_num))/sqrt(2);
f1=eye(M+1M*(M+2));
F1=[];
for?k=1:M+1
????F1=[F1;f1];
????f1=[f1(:end)f1(:1:end-1)];
end
f2=[zeros(M+12*M+1)eye(M+1)zeros(M+1(M-2)*(M+1))];
F2=[];
for?k=1:M-1
????F2=[F2;f2];
????f2=[f2(:end-M:end)f2(:1:end-M-1)];
end
F=[F1;F2];
D=F*(F‘*F)^(-1/2);
Y_trans=D‘*Y;
R=Y_trans*Y_trans‘/snap_num;
%Traditional?ESPRIT
[USV]=svd(R);
E=U(:1:target_num);
E1=E(1:end-1:);
E2=E(2:end:);
phi=E1\E2;
phase?=?angle(eig(phi));??????%求得特征值的相位角
direction?=?asind(phase/pi);??%求得相位角對應的反正弦角度
DOA_est_ESPRIT?=?sort(direction)??%對角度升序排列
?%?酉ESPRIT算法
?effective_aperture?=?M*(M+2);
Y_Unitary?=?(F‘*F)^(-1/2)*Y_trans;
if?mod(effective_aperture2)?==?0
?????Q_N?=?[eye(effective_aperture/2)j*eye(effective_aperture/2);fliplr(eye(effective_aperture/2))-j*fliplr(eye(effective_aperture/2))]/sqrt(2);
???????????%翻轉矩陣
?????Q_N_1?=?[eye((effective_aperture-2)/2)zeros((effective_aperture-2)/21)j*eye((effective_aperture-2)/2);...
?????????zeros(1(effective_aperture-2)/2)sqrt(2)zeros(1(effective_aperture-2)/2);...
?????????fliplr(eye((effective_aperture-2)/2))zeros((effective_aperture-2)/21)-j*fliplr(eye((effective_aperture-2)/2))]/sqrt(2);
else
????Q_N_1?=?[eye((effective_aperture-1)/2)j*eye((effective_aperture-1)/2);fliplr(eye((effective_aperture-1)/2))-j*fliplr(eye((effective_aperture-1)/2))]/sqrt(2);
????Q_N?=?[eye((effective_aperture-1)/2)zeros((effective_aperture-1)/21)j*eye((effective_aperture-1)/2);...
????????zeros(1(effective_aperture-1)/2)sqrt(2)zeros(1(effective_aperture-1)/2);...
????????fliplr(eye((effective_aperture-1)/2))zeros((effective_aperture-1)/21)-j*fliplr(eye((effective_aperture-1)/2))]/sqrt(2);
end????????????????????%構造需要的酋矩陣
J1?=?[eye(effective_aperture-1)zeros(effective_aperture-11)];
J2?=?[zeros(effective_aperture-11)eye(effective_aperture-1)];????%構造中心復共軛對稱矩陣
Y_Unitary_trans?=?Q_N‘*Y_Unitary;??????????????????????????????????%構造后信號表達
[USV]?=?svd([real(Y_Unitary_trans)imag(Y_Unitary_trans)]);????
Es?=?U(:1:target_num);
K1?=?real(Q_N_1‘*J2*Q_N);
K2?=?imag(Q_N_1‘*J2*Q_N);?????????
phi?=?(K1*Es)\(K2*Es);
D?=?eig(phi);
D
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????3133??2018-10-31?14:30??danjidiMIMOradar.m
-----------?---------??----------?-----??----
?????????????????3133????????????????????1
評論
共有 條評論