clear
clc
close all
%==========================系统参数设置=====================================
c=3e8; %光速,m/s
fs=40e6; %采样频率,Hz
tau=0.02; %信号时宽,s
T=400e-6; %信号周期,s
fc=0; %基波频率,Hz
f0=10e6; %正交调制解调频率,Hz
B=4e6; %信号带宽,Hz
N=T*fs; %采样点数
t=linspace(-T/2,T/2,N);
G=80; %接收机增益
lamda=c/f0; %波长
GLNR=60; %LNA及前端增益
Nf=10; %噪声系数
SNR=-10; %信噪比,dB
%==========================目标参数设置=====================================
RCS=1; %目标雷达截面积,m^2
dis=2000; %距离,m
Pt=100; %发射能量
v=20; %目标径向速率
fd=2*v/lamda; %多普勒频移
k=1.37e-23; %波尔兹曼常数
temp=290; %开耳文常数
delay=2*dis/c;
%==========================线性调频信号信号=================================
Amp=sqrt(Pt);
sig=Amp*exp(j*2*pi*t*fc+j*pi*B/T*(t.^2));
sig_fft=fft(sig);
sig_i_channel=real(sig);
sig_q_channel=imag(sig);
figure(1)
subplot(2,1,1)
plot(t*1e6,real(sig));
xlabel('t(单位:秒)'),
ylabel('y(单位:伏)'),
title('线性调频信号 ');
subplot(2,1,2)
plot((-0.5*fs:fs/N:0.5*fs-fs/N),abs(fftshift(sig_fft(:)))),
xlabel('频率f(单位:Hz)'),title('线性调频信号 频谱');
%==========================IQ正交调制===============================
n=0:N-1;
local_oscillator_i=cos(2*pi*f0*n/fs);
local_oscillator_q=-sin(2*pi*f0*n/fs);
sig_i_mod=sig_i_channel.*local_oscillator_i;
sig_q_mod=sig_q_channel.*local_oscillator_q;
IQMod_out=sig_i_mod+sig_q_mod;
figure(2)
subplot(2,1,1)
plot(t,IQMod_out),xlabel('时间/s'),ylabel('幅值'),title('正交调制器输出信号时域波形');
subplot(2,1,2)
IQMod_fft_result=fft(IQMod_out);;
plot((-0.5*fs:fs/N:0.5*fs-fs/N),abs(fftshift(IQMod_fft_result(:)))),
xlabel('频率/Hz'),title('正交调制器输出信号的频谱');
%==========================接收机接收信号===============================
Amp=sqrt(Pt/(4*pi)^3)*G*lamda*sqrt(RCS*GLNR)/(dis)^2; %接受信号幅度
sigre=Amp*exp(j*2*pi*t*fc+j*pi*B/T*(t.^2)+j*2*pi*fd*t);
sigre_i_channel=real(sigre); %I channel received signal
sigre_q_channel=imag(sigre); %Q channel received signal
figure(3)
subplot(2,1,1)
plot(t,sigre_i_channel),xlabel('时间/s'),ylabel('幅值'),title('正交解调器器输出信号时域波形');
sigre_fft=fft(sigre);
subplot(2,1,2)
plot((-0.5*fs:fs/N:0.5*fs-fs/N),abs(fftshift(sigre_fft(:))))
xlabel('频率/H)'),title('正交解调器器输出信号的频谱');
%==========================加入内部噪声和外部噪声===============================
Pn_external=k*temp*B; %外部噪声
Pn_internal=Pn_external*GLNR*Nf-Pn_external*GLNR; %内部噪声
noise_external=sqrt(Pn_external)*randn(1,N);
noise_internal=sqrt(Pn_internal)*randn(1,N);
figure(4)
subplot(2,1,1)
plot(t,noise_external), xlabel('时间/s'),ylabel('幅值'),title('外部噪声时域波形');
subplot(2,1,2)
plot(t,noise_internal), xlabel('时间/s'),ylabel('幅值'),title('内部噪声时域波形');
complex_signal=sigre+noise_external+noise_internal;
%==========================加入噪声后的接收信号===============================
figure(5)
plot(t,abs(complex_signal)), xlabel('时间/s'),ylabel('幅值'),title('加入噪声后的接收信号');
%==========================脉冲压缩后的信号===============================
MF=conj(fliplr(complex_signal));
SR_MF=conv(MF,complex_signal); %完整周期回波信号脉冲压缩
figure(6)
t0=linspace(1,length(SR_MF),length(SR_MF))/8;
plot(t0,abs(SR_MF)),xlabel('距离/m'),ylabel('幅值'),title('经过脉冲压缩之后的信号');