39 lines
1.5 KiB
Matlab
Executable File
39 lines
1.5 KiB
Matlab
Executable File
% https://blog.csdn.net/Xiao_Jie123/article/details/115296169
|
|
|
|
%% 超参数
|
|
c = 3e8; %光速
|
|
f_c = 76.5e9; %发射信号载频 中心频率
|
|
B = 500e6; %发射信号带宽
|
|
T_r = 10e-6; %扫频时间 也就是周期
|
|
N = 256; %采样点
|
|
F_s = 25.6e6; %采样率
|
|
M = 256; %chirp的数目
|
|
k = B/T_r; %chirp斜率
|
|
index = 1:1:N; %产生点向量
|
|
IF_mat = zeros(M,N); %存储带有噪声的中频信号
|
|
%% 发射信号参数
|
|
AT = 10; %发射信号增益
|
|
t = 0:1/F_s:T_r-1/F_s; %时间向量 确定256个点在一个Tr中的每个时刻
|
|
t = t - T_r/2; %将fc作为中心频率
|
|
|
|
%% 回波信号参数
|
|
distance = 50; %目标距离雷达50m的距离
|
|
t_d = 2 * distance / c; %目标距离雷达的延迟
|
|
velocity = -20; %目标距雷达的相对速度为30m/s
|
|
f_d = 2 * (f_c - B/2) * velocity / c; %多普勒频移
|
|
AR = 0.8; %回波信号衰减的比例值
|
|
|
|
%% 生成数据
|
|
for i = 1:1:M %chirp的循环
|
|
s_T = AT*exp((1i*2*pi)*(f_c*(t+i*T_r)+k/2*t.^2)); %发射信号
|
|
s_R = AR*AT*exp((1i*2*pi)*((f_c-f_d)*(t-t_d+i*T_r)+k/2*(t-t_d).^2)); %回波信号
|
|
%% 求回波信号的共轭
|
|
s_R_conj = conj(s_R); %求回波信号的共轭
|
|
%% 求中频信号
|
|
IF = s_T .* s_R_conj; %求中频信号
|
|
SNR = 10; %信噪比
|
|
IF_with_Noise = awgn(IF,SNR,'measured'); %给中频信号加高斯白噪声,在添加噪声的时候,要进行能量的测量
|
|
IF_mat(i,:) = IF_with_Noise; %将带有噪声的中频信号保存
|
|
end
|
|
save('Ego_vehicle.mat', 'IF_mat'); %进行数据的保存
|