线性调频与脉冲压缩
1 线性调频信号
1.1 线性调频信号(时域)
1.1.1 线性调频信号模型
线性调频信号(Chirp, LFM) 是指瞬时频率随时间线性变化的信号。
(1)时域表达式
s
(
t
)
=
r
e
c
t
(
t
T
)
exp
(
j
π
K
t
2
)
s\left( t \right) = rect\left( {\frac{t}{T}} \right)\exp \left( {j\pi K{t^2}} \right)
s(t)=rect(Tt)exp(jπKt2)
其中,T 为时宽,K 为调频率,rect() 为矩形窗函数。
(2)相位
φ
(
t
)
=
π
K
t
2
\varphi \left( t \right) = \pi K{t^2}
φ(t)=πKt2
(3)瞬时频率
f
(
t
)
=
1
2
π
d
φ
(
t
)
d
t
=
1
2
π
d
(
π
K
t
2
)
d
t
=
K
t
f\left( t \right) = \frac{1}{{2\pi }}\frac{{d\varphi \left( t \right)}}{{dt}} = \frac{1}{{2\pi }}\frac{{d\left( {\pi K{t^2}} \right)}}{{dt}} = Kt
f(t)=2π1dtdφ(t)=2π1dtd(πKt2)=Kt
(4)信号带宽
B
W
=
∣
K
∣
T
BW = \left| K \right|T
BW=∣K∣T
(5)时间带宽积
T
B
P
=
∣
K
∣
T
2
TBP = \left| K \right|{T^2}
TBP=∣K∣T2
1.1.2 线性调频信号时域仿真
(1)信号参数
① 时宽 Tr = 1 us
② 带宽 Br = 100 MHz
③ 采样率 Fs = 4 * Br
(2)仿真结果
信号实部 | 信号虚部 | 信号频率 | 信号相位 |
---|---|---|---|
1.2 线性调频信号(频域)
1.2.1 驻定相位原理(POSP)
(1)基本原理
信号在相位驻留点邻域附近是缓变的,而在其他时间点_上是迅变的,相位迅变处由于相位周期的正负部分相互抵消,故其对积分的贡献几乎为零,对积分起主要作用的部分集中在相位驻留点附近。
因此,驻定相位原理适用于相位包含二次及高次项,且包络缓变的信号频谱求解;’
对于包络
w
(
t
)
w\left( t \right)
w(t) 缓变,且相位
ϕ
(
t
)
{\phi \left( t \right)}
ϕ(t) 包含高次项的信号
g
(
t
)
=
w
(
t
)
⋅
exp
{
j
⋅
ϕ
(
t
)
}
g\left( t \right) = w\left( t \right) \cdot \exp \left\{ {j \cdot \phi \left( t \right)} \right\}
g(t)=w(t)⋅exp{j⋅ϕ(t)}
根据POSP求解其频谱为:
G
(
f
)
=
∫
−
∞
+
∞
w
(
t
)
⋅
exp
{
j
⋅
ϕ
(
t
)
}
⋅
exp
(
−
j
2
π
f
t
)
d
t
=
∫
−
∞
+
∞
w
(
t
)
⋅
exp
{
j
⋅
[
ϕ
(
t
)
−
2
π
f
t
]
}
d
t
=
∫
−
∞
+
∞
w
(
t
)
⋅
exp
{
j
⋅
θ
(
t
)
}
d
t
≈
P
O
S
P
w
[
t
(
f
)
]
⋅
exp
{
j
⋅
θ
[
t
(
f
)
]
}
\begin{aligned} G\left( f \right) &= \int_{ - \infty }^{ + \infty } {w\left( t \right) \cdot \exp \left\{ {j \cdot \phi \left( t \right)} \right\}} \cdot \exp \left( { - j2\pi ft} \right)dt \\ &= \int_{ - \infty }^{ + \infty } {w\left( t \right) \cdot \exp \left\{ {j \cdot \left[ {\phi \left( t \right) - 2\pi ft} \right]} \right\}} dt \\ &= \int_{ - \infty }^{ + \infty } {w\left( t \right) \cdot \exp \left\{ {j \cdot \theta \left( t \right)} \right\}} dt \\ &\mathop \approx \limits^{POSP} w\left[ {t\left( f \right)} \right] \cdot \exp \left\{ {j \cdot \theta \left[ {t\left( f \right)} \right]} \right\} \end{aligned}
G(f)=∫−∞+∞w(t)⋅exp{j⋅ϕ(t)}⋅exp(−j2πft)dt=∫−∞+∞w(t)⋅exp{j⋅[ϕ(t)−2πft]}dt=∫−∞+∞w(t)⋅exp{j⋅θ(t)}dt≈POSPw[t(f)]⋅exp{j⋅θ[t(f)]}
(2)POSP求解步骤
① 待求解信号
g
(
t
)
=
w
(
t
)
⋅
exp
{
j
⋅
ϕ
(
t
)
}
g\left( t \right) = w\left( t \right) \cdot \exp \left\{ {j \cdot \phi \left( t \right)} \right\}
g(t)=w(t)⋅exp{j⋅ϕ(t)}
其中,包络
w
(
t
)
w\left( t \right)
w(t) 缓变,且相位
ϕ
(
t
)
{\phi \left( t \right)}
ϕ(t) 包含高次项。
② 相位函数
θ
(
t
)
=
ϕ
(
t
)
−
2
π
f
t
\theta \left( t \right) = \phi \left( t \right) - 2\pi ft
θ(t)=ϕ(t)−2πft
其中,t 为自变量,f 为参数。
③ 求解驻留点
令:
d
d
t
θ
(
t
)
=
d
d
t
[
ϕ
(
t
)
−
2
π
f
t
]
=
0
\frac{d}{{dt}}\theta \left( t \right) = \frac{d}{{dt}}\left[ {\phi \left( t \right) - 2\pi ft} \right] = 0
dtdθ(t)=dtd[ϕ(t)−2πft]=0
求解方程得到驻留点
t
(
f
)
t\left( f \right)
t(f)
④ 将驻留点代入频谱得解
G
(
f
)
≈
P
O
S
P
2
π
∣
ϕ
′
′
[
t
(
f
)
]
∣
⋅
w
[
t
(
f
)
]
⋅
exp
{
j
[
θ
(
t
(
f
)
)
+
π
4
]
}
≈
w
[
t
(
f
)
]
⋅
exp
{
j
⋅
θ
[
t
(
f
)
]
}
G\left( f \right)\mathop \approx \limits^{POSP} \sqrt {\frac{{2\pi }}{{\left| {\phi ''\left[ {t\left( f \right)} \right]} \right|}}} \cdot w\left[ {t\left( f \right)} \right] \cdot \exp \left\{ {j\left[ {\theta \left( {t\left( f \right)} \right) + \frac{\pi }{4}} \right]} \right\} \approx w\left[ {t\left( f \right)} \right]\cdot\exp \left\{ {j\cdot\theta \left[ {t\left( f \right)} \right]} \right\}
G(f)≈POSP∣ϕ′′[t(f)]∣2π⋅w[t(f)]⋅exp{j[θ(t(f))+4π]}≈w[t(f)]⋅exp{j⋅θ[t(f)]}
1.2.2 线性调频信号频谱
直接对线性调频信号求傅里叶变换:
S
(
f
)
=
∫
−
∞
+
∞
r
e
c
t
(
t
T
)
exp
(
j
π
K
t
2
)
exp
(
−
j
2
π
f
t
)
d
t
S\left( f \right) = \int_{ - \infty }^{ + \infty } {rect\left( {\frac{t}{T}} \right)\exp \left( {j\pi K{t^2}} \right)\exp \left( { - j2\pi ft} \right)dt}
S(f)=∫−∞+∞rect(Tt)exp(jπKt2)exp(−j2πft)dt
积分内存在指数上方的二次项积分,无法直接求解。故采用驻点相位定理求解如下:
令相位函数:
θ
(
t
)
=
π
K
t
2
−
2
π
f
t
\theta \left( t \right) = \pi K{t^2} - 2\pi ft
θ(t)=πKt2−2πft
求导等于0:
d
d
t
θ
(
t
)
=
d
d
t
(
π
K
t
2
−
2
π
f
t
)
=
2
π
K
t
−
2
π
f
=
0
\frac{d}{{dt}}\theta \left( t \right) = \frac{d}{{dt}}\left( {\pi K{t^2} - 2\pi ft} \right) = 2\pi Kt - 2\pi f = 0
dtdθ(t)=dtd(πKt2−2πft)=2πKt−2πf=0
得驻定相位点为:
t
(
f
)
=
f
K
t\left( f \right) = \frac{f}{K}
t(f)=Kf
因此:
w
[
t
(
f
)
]
=
r
e
c
t
(
t
(
f
)
T
)
=
r
e
c
t
(
f
K
T
)
w\left[ {t\left( f \right)} \right] = rect\left( {\frac{{t\left( f \right)}}{T}} \right) = rect\left( {\frac{f}{{KT}}} \right)
w[t(f)]=rect(Tt(f))=rect(KTf)
θ
[
t
(
f
)
]
=
π
K
t
2
(
f
)
−
2
π
f
t
(
f
)
=
π
K
(
f
K
)
2
−
2
π
f
(
f
K
)
=
−
π
f
2
K
\theta \left[ {t\left( f \right)} \right] = \pi K{t^2}\left( f \right) - 2\pi ft\left( f \right) = \pi K{\left( {\frac{f}{K}} \right)^2} - 2\pi f\left( {\frac{f}{K}} \right) = - \pi \frac{{{f^2}}}{K}
θ[t(f)]=πKt2(f)−2πft(f)=πK(Kf)2−2πf(Kf)=−πKf2
从而得到线性调频信号频谱为:
S
(
f
)
=
w
[
t
(
f
)
]
⋅
exp
{
j
⋅
θ
[
t
(
f
)
]
}
=
r
e
c
t
(
f
K
T
)
⋅
exp
{
−
j
π
f
2
K
}
S\left( f \right) = w\left[ {t\left( f \right)} \right] \cdot \exp \left\{ {j \cdot \theta \left[ {t\left( f \right)} \right]} \right\} = rect\left( {\frac{f}{{KT}}} \right) \cdot \exp \left\{ { - j\pi \frac{{{f^2}}}{K}} \right\}
S(f)=w[t(f)]⋅exp{j⋅θ[t(f)]}=rect(KTf)⋅exp{−jπKf2}
且TBP越大,POSP越准确(因为TBP越大,实际频谱越接近矩形窗)。
1.2.3 线性调频信号频谱仿真
幅度谱 | 相位谱 |
---|---|
2 脉冲压缩
2.1 匹配滤波器
匹配滤波器是线性系统的最大信噪比滤波器。信号和噪声叠加在一起,匹配滤波使信号成分在某一瞬时出现峰值,而噪声成分受到抑制,即使输出的信噪比最大。
2.1.1 匹配滤波器推导
设 t=tm 时刻输出信噪比最大,信噪比表示为:
ρ
=
s
o
2
(
t
m
)
n
o
2
(
t
m
)
\rho = \frac{{s_o^2\left( {{t_m}} \right)}}{{n_o^2\left( {{t_m}} \right)}}
ρ=no2(tm)so2(tm)
利用频域表达式可得输出信号为:
s
o
(
t
)
=
F
−
1
{
S
(
j
ω
)
H
(
j
ω
)
}
=
1
2
π
∫
−
∞
+
∞
S
(
j
ω
)
H
(
j
ω
)
exp
(
j
ω
t
)
d
ω
{s_o}\left( t \right) = {\mathscr{F}^{ - 1}}\left\{ {S\left( {j\omega } \right)H\left( {j\omega } \right)} \right\} = \frac{1}{{2\pi }}\int_{ - \infty }^{ + \infty } {S\left( {j\omega } \right)H\left( {j\omega } \right)\exp \left( {j\omega t} \right)d\omega }
so(t)=F−1{S(jω)H(jω)}=2π1∫−∞+∞S(jω)H(jω)exp(jωt)dω
白噪声平均功率为:
n
o
2
(
t
)
‾
=
1
2
π
∫
−
∞
+
∞
N
⋅
∣
H
(
j
ω
)
∣
2
d
ω
\overline {n_o^2\left( t \right)} = \frac{1}{{2\pi }}\int_{ - \infty }^{ + \infty } {N \cdot {{\left| {H\left( {j\omega } \right)} \right|}^2}d\omega }
no2(t)=2π1∫−∞+∞N⋅∣H(jω)∣2dω
则信噪比可表示为:
ρ
=
s
o
2
(
t
m
)
n
o
2
(
t
m
)
‾
=
∣
∫
−
∞
+
∞
S
(
j
ω
)
H
(
j
ω
)
exp
(
j
ω
t
m
)
d
ω
∣
2
2
π
N
⋅
∫
−
∞
+
∞
∣
H
(
j
ω
)
∣
2
d
ω
\rho = \frac{{s_o^2\left( {{t_m}} \right)}}{{\overline {n_o^2\left( {{t_m}} \right)} }} = \frac{{{{\left| {\int_{ - \infty }^{ + \infty } {S\left( {j\omega } \right)H\left( {j\omega } \right)\exp \left( {j\omega {t_m}} \right)d\omega } } \right|}^2}}}{{2\pi N \cdot \int_{ - \infty }^{ + \infty } {{{\left| {H\left( {j\omega } \right)} \right|}^2}d\omega } }}
ρ=no2(tm)so2(tm)=2πN⋅∫−∞+∞∣H(jω)∣2dω∣∣∣∫−∞+∞S(jω)H(jω)exp(jωtm)dω∣∣∣2
根据柯西不等式:
∣
∫
−
∞
+
∞
H
(
j
ω
)
S
(
j
ω
)
exp
(
j
ω
t
m
)
d
ω
∣
2
⩽
∫
−
∞
+
∞
∣
H
(
j
ω
)
∣
2
d
ω
⋅
∫
−
∞
+
∞
∣
S
(
j
ω
)
exp
(
j
ω
t
m
)
∣
2
d
ω
{\left| {\int_{ - \infty }^{ + \infty } {H\left( {j\omega } \right)S\left( {j\omega } \right)\exp \left( {j\omega {t_m}} \right)d\omega } } \right|^2} \leqslant \int_{ - \infty }^{ + \infty } {{{\left| {H\left( {j\omega } \right)} \right|}^2}d\omega } \cdot \int_{ - \infty }^{ + \infty } {{{\left| {S\left( {j\omega } \right)\exp \left( {j\omega {t_m}} \right)} \right|}^2}d\omega }
∣∣∣∣∫−∞+∞H(jω)S(jω)exp(jωtm)dω∣∣∣∣2⩽∫−∞+∞∣H(jω)∣2dω⋅∫−∞+∞∣S(jω)exp(jωtm)∣2dω
当且仅当
H
(
j
ω
)
=
k
[
S
(
j
ω
)
exp
(
j
ω
t
m
)
]
∗
H\left( {j\omega } \right) = k{\left[ {S\left( {j\omega } \right)\exp \left( {j\omega {t_m}} \right)} \right]^ * }
H(jω)=k[S(jω)exp(jωtm)]∗
时,等号成立,即信噪比取得最大值。
最终,得到匹配滤波器为
H
(
j
ω
)
=
k
⋅
S
(
−
j
ω
)
⋅
exp
(
−
j
ω
t
m
)
H\left( {j\omega } \right) = k \cdot S\left( { - j\omega } \right) \cdot \exp \left( { - j\omega {t_m}} \right)
H(jω)=k⋅S(−jω)⋅exp(−jωtm)
两端同取傅里叶逆变换,并根据傅里叶变换的频移性质可得:
h
(
t
)
=
k
⋅
s
(
t
m
−
t
)
‾
h\left( t \right) = k \cdot \overline {s\left( {{t_m} - t} \right)}
h(t)=k⋅s(tm−t)
一般地,取
k
=
1
,
t
m
=
0
k=1,t_m=0
k=1,tm=0
h
(
t
)
=
s
(
−
t
)
‾
h\left( t \right) = \overline {s\left( { - t} \right)}
h(t)=s(−t)
2.1.2 匹配滤波器理解
匹配滤波器系统输出为:
s
o
(
t
)
=
s
(
t
)
∗
h
(
t
)
=
∫
−
∞
+
∞
s
(
τ
)
h
(
t
−
τ
)
d
τ
{s_o}\left( t \right) = s\left( t \right) * h\left( t \right) = \int_{ - \infty }^{ + \infty } {s\left( \tau \right)h\left( {t - \tau } \right)d\tau }
so(t)=s(t)∗h(t)=∫−∞+∞s(τ)h(t−τ)dτ
由于
h
(
t
)
=
s
(
−
t
)
‾
h\left( t \right) = \overline {s\left( { - t} \right)}
h(t)=s(−t),因此输出也可写作
s
o
(
t
)
=
∫
−
∞
+
∞
s
(
τ
)
s
(
τ
−
t
)
‾
d
τ
{s_o}\left( t \right) = \int_{ - \infty }^{ + \infty } {s\left( \tau \right)\overline {s\left( {\tau - t} \right)} d\tau }
so(t)=∫−∞+∞s(τ)s(τ−t)dτ
可见,匹配滤波的过程可看作接收信号sr与系统冲激响应ht的卷积
so = conv( sr , ht) = conv( sr , conj(fliplr( si )) );
也可看作发射信号si与接收信号sr的相关。
so = xcorr( sr , si );
2.2 线性调频信号脉冲压缩的匹配滤波实现
对于线性调频信号,时域为:
s
(
t
)
=
r
e
c
t
(
t
T
)
exp
(
j
π
K
t
2
)
s\left( t \right) = rect\left( {\frac{t}{T}} \right)\exp \left( {j\pi K{t^2}} \right)
s(t)=rect(Tt)exp(jπKt2)
频谱为:
S
(
f
)
=
r
e
c
t
(
f
K
T
)
⋅
exp
{
−
j
π
f
2
K
}
S\left( f \right) = rect\left( {\frac{f}{{KT}}} \right)\cdot\exp \left\{ { - j\pi \frac{{{f^2}}}{K}} \right\}
S(f)=rect(KTf)⋅exp{−jπKf2}
2.2.1 时域匹配滤波
根据 h ( t ) = s ( − t ) ‾ h\left( t \right) = \overline {s\left( { - t} \right)} h(t)=s(−t) 可构造时域匹配滤波器为发射信号时间反褶再取共轭。再与发射信号进行线性卷积即可实现脉冲压缩:
s o ( t ) = s ( t ) ∗ s ( − t ) ‾ {s_o}\left( t \right) = s\left( t \right) * \overline {s\left( { - t} \right)} so(t)=s(t)∗s(−t)
2.2.2 频域匹配滤波
2.2.2.1 方法一
(1)原理
将发射信号时间反褶后取共轭,补零后计算FFT;再与信号补零后的FFT在频域相乘,最后IFFT。
s o ( t ) = I F F T { F F T [ s ( − t ) ‾ , N ] ⋅ F F T [ s ( t ) , N ] } {s_o}\left( t \right) = \mathscr{ IFFT}\left\{ {\mathscr{FFT}\left[ {\overline {s\left( { - t} \right)} ,N} \right] \cdot \mathscr{FFT}\left[ {s\left( t \right),N} \right]} \right\} so(t)=IFFT{FFT[s(−t),N]⋅FFT[s(t),N]}
(2)说明
-
为什么需要补零?
因为匹配滤波需要计算线性卷积,但 (DFT) FFT 计算的是循环卷积,所以需要对信号进行补零直到长度超过线性卷积的长度。对于点数分别为N1与N2的两信号,它们线性卷积的长度为 N1+N2-1;若循环卷积长度为N,则有如下关系:
① N < N1 + N2 - 1 时,循环卷积是线性卷积长度为 N 的混叠
② N = N1 + N2 - 1 时,循环卷积 = 线性卷积
③ N > N1 + N2 - 1 时,循环卷积 = 线性卷积末尾补 N-(N1+N2-1) 个 0 (弃置区) -
弃置区位置
由于发射是反褶后再补零,故最终得到IFFT结果后,弃置区位于信号前端。
(3)仿真
2.2.2.2 方法二
(1)原理
将发射脉冲补零后进行FFT,再取共轭(无需反褶),与信号补零FFT在频域相乘,最后IFFT。
s o ( t ) = I F F T { F F T [ s ( t ) , N ] ‾ ⋅ F F T [ s ( t ) , N ] } {s_o}\left( t \right) = \mathscr{IFFT}\left\{ {\overline {\mathscr{FFT}\left[ {s\left( t \right),N} \right]} \cdot \mathscr{FFT}\left[ {s\left( t \right),N} \right]} \right\} so(t)=IFFT{FFT[s(t),N]⋅FFT[s(t),N]}
(2)说明
-
方法二与方法一的关系:
根据傅里叶变换的性质,时域共轭+反褶 ↔ 频域共轭(方法一);因此,也可先变换到频域再取共轭(方法二)。但由于它们补零时存在是否反褶的差别,故最终结果的弃置区也存在反褶。 -
弃置区位置
由于发射是直接在末尾补零,故最终得到IFFT结果后,弃置区位于信号末端。
(3)仿真
2.2.2.3 方法三
(1)原理
直接在频域生成匹配滤波器
H ( f ) = r e c t { f ∣ K ∣ T } exp { j π f 2 K } H\left( f \right) = rect\left\{ {\frac{f}{{\left| K \right|T}}} \right\}\exp \left\{ {j\pi \frac{{{f^2}}}{K}} \right\} H(f)=rect{∣K∣Tf}exp{jπKf2}
与信号FFT在频域相乘,最后IFFT。
s o ( t ) = I F F T { F F T [ s ( t ) ] ⋅ H ( f ) } {s_o}\left( t \right) = \mathscr{IFFT}\left\{ {\mathscr{FFT}\left[ {s\left( t \right)} \right] \cdot H\left( f \right)} \right\} so(t)=IFFT{FFT[s(t)]⋅H(f)}
(2)仿真
2.3 加窗处理
2.3.1 性能指标
(1)冲激响应宽度(IRW),冲激响应的 3dB 宽度。
(2)峰值旁瓣比(PSLR),最大旁瓣与峰值的高度比。
(3)积分旁瓣比(ISLR),旁瓣能量与主瓣能量的比值。
2.3.2 各类窗效果对比
2.3.3 脉冲压缩加窗
窗名 | 频谱加窗 | 脉压结果 |
---|---|---|
矩形窗 | ||
三角窗 | ||
汉宁窗 | ||
汉明窗 | ||
布莱克曼窗 |
3 脉冲压缩测距仿真
3.1 实现流程
- 参数设置
信号时宽 T = 6 us 信号带宽 B = 400 MHz 目标距离 R = [ 995, 1000, 1001, 1005 ] m 后向散射 σ = [ 1, 1.5 , 2.25, 3.375]
- 系统参数导出
采样率 Fs = 5 * B 调频率 K = B / T 采样点数 N = round( T * Fs )
- 目标参数导出
目标个数 M = length( R ) 中心距离 R0 = mean( R ) 最大探测距离范围 Rwid = T * c / 2 最远探测距离 Rmax = floor( R0 + Rwid / 2 ) 最近探测距离 Rmax = floor( R0 - Rwid / 2 )
- 回波参数
发射时间序列 t = linspace( 2 * Rmin / c , 2 * Rmax / c , N ) 回波时间序列 td = t - 2 * R / c
- 回波信号
s r ( t ) = σ ⋅ r e c t ( t d T ) ⋅ exp ( j π K ⋅ t d 2 ) {s_r}\left( t \right) = \sigma \cdot rect\left( {\frac{{{t_d}}}{T}} \right) \cdot \exp \left( {j\pi K \cdot t_d^2} \right) sr(t)=σ⋅rect(Ttd)⋅exp(jπK⋅td2) - 脉冲压缩
方式2
s o ( t ) = I F F T { F F T [ s t ( t ) , N f f t ] ‾ ⋅ F F T [ s r ( t ) , N f f t ] } {s_o}\left( t \right) = \mathscr{IFFT}\left\{ {\overline {\mathscr{FFT}\left[ {s_t\left( t \right),N_{fft}} \right]} \cdot \mathscr{FFT}\left[ {s_r\left( t \right),N_{fft}} \right]} \right\} so(t)=IFFT{FFT[st(t),Nfft]⋅FFT[sr(t),Nfft]} - 弃置区处理
脉压信号起始点 N0 = ( Nfft - N ) / 2 脉压信号截取 so = so( N0 , N0 + N -1 )
- 绘图
3.2 仿真结果
回波信号 | 脉压测距结果 | 脉压测距结果(局部放大)/dB |
---|---|---|
附录:MATLAB程序
全部完整程序
部分测试程序
- 线性调频与脉冲压缩
%% 线性调频与脉冲压缩
clear,clc,close all
set(0,'defaultfigurecolor','w')
%% Chirp信号参数设置
Tr = 1e-6;%时宽
Br = 200e6;%带宽
Fs = 4*Br;%采样率
%% Chirp信号参数导出
Kr = Br/Tr;%调频率
N = round( Tr / (1/Fs) );%采样点数
t = linspace( -Tr/2 , Tr/2 , N);%在[-Tp/2,Tp/2]选取采样点
%% Chirp信号生成
st = ( abs(t) < Tr/2 ) .* exp( 1j * pi * Kr * t.^2 );
f_chirp= Kr * t; %信号频率
phase_chirp = pi * Kr * t.^2;%信号相位
%% 频谱
freq = linspace(-Fs/2,Fs/2,N);%频域采样
Sf = fftshift( fft(st) );
%% 时域匹配滤波
ht = conj( fliplr(st) ); %时域匹配滤波为发射信号时间反褶再取共轭
s1 = conv(st,ht); %线性调频信号经过匹配滤波器后的输出(时域卷积)
N1 = N+N-1 ;%线性卷积后信号长度变为 N1+N2-1
t1 = linspace( -Tr/2 , Tr/2 , N1);
%% 频域匹配滤波1 (复制发射脉冲进行时间反褶并取共轭,计算补零DFT)
N2 = 2*N; %循环卷积长度 (N2应当>=N+N-1,其中弃置区位于长度大于N+N-1的部分)
t2 = linspace( -Tr/2 , Tr/2 , N2);
Hf2 = fft(ht,N2); %频域匹配滤波器
Sf2 = fft(st,N2);%频域信号
S2 = Sf2 .* Hf2;%频域乘积
s2 = ifft(S2);
%% 绘图
% 时域
figure,plot( t*1e6, real(st) ),xlabel('t /us'),ylabel('幅度'),title('Chirp信号实部');
figure,plot( t*1e6, imag(st) ),xlabel('t /us'),ylabel('幅度'),title('Chirp信号虚部');
figure,plot( t*1e6, f_chirp/1e6 ),xlabel('t /us'),ylabel('频率 /MHz'),title('Chirp信号频率');
figure,plot( t*1e6, phase_chirp ),xlabel('t /us'),ylabel('相位 /rad'),title('Chirp信号相位');
% 频域
figure,plot( freq/1e6,abs(Sf) ),xlabel('f /MHz'),ylabel('幅度谱'),title('Chirp信号 幅度谱');
figure,plot( freq/1e6,-pi*freq.^2/Kr ),xlabel('f /MHz'),ylabel('相位谱'),title('Chirp信号 相位谱');
% 时域匹配滤波
figure,plot( t1*1e6 , abs(s1) ),xlabel('t /us'),ylabel('幅度谱'),title('时间反褶取共轭,时域卷积');
% 频域匹配滤波1
- 脉冲压缩测距
%线性调频脉冲压缩测距
clear,clc,close all
%% 参数设置
T = 6e-6;%信号持续时间(脉冲宽度6us)
B = 400e6;%信号调频带宽(40MHz)
Fs = 5*B;%采样率
R = [995,1000,1001,1005];%目标距离
RCS = [1 1.5 2.25 3.375];%目标有效面积
%% 导出参数
%系统参数
C = 3e8;
K = B/T;%调频率
Ts = 1/Fs; %时域采样间隔
N = round(T/Ts);%时域采样点数
%目标参数
M = length(R);%目标的个数
R0 = mean(R);%参考中心距离(用于保证目标在一个回波探测距离内)
Rwid = T * C/2;%能观察到的最大距离范围(最远距离-最近距离)
Rmax = floor( R0 + Rwid/2 );%观测目标距雷达的最远位置
Rmin = floor( R0 - Rwid/2 );%观测目标距雷达的最近位置
%回波参数
t = linspace(2*Rmin/C,2*Rmax/C,N);
td = ones(M,1)*t - 2 * R'/C * ones(1,N);
%% 回波信号
Srt = RCS * ( exp(1j*pi*K*td.^2) .* (abs(td)<T/2) );
%% 脉冲压缩
%复制发射信号
t0 = linspace(-T/2,T/2,N);
St = exp(1j*pi*K*t0.^2);%发射的LFM信号
%匹配滤波
Nfft = 2^nextpow2(N+N-1);
Srw = fft(Srt,Nfft);%对回波信号求FFT
Sw = conj( fft(St,Nfft) ); %方法二
Sot = fftshift(ifft(Srw.* Sw));
N0 = (Nfft-N)/2;
Z = abs( Sot( N0 : (N0+N-1)) );
% 归一化并取dB
Z = Z/max(Z);
ZdB = 10*log10(Z);
%% 绘图
figure,plot(t*1e6,real(Srt))
axis tight,xlabel('时间 / us');ylabel('幅度'),title('原始雷达回波');
figure,plot(t*C/2,Z)
xlabel('距离 / m'),ylabel('幅度'),title('脉冲压缩测距')
figure,plot(t*C/2,ZdB)
xlabel('距离 / m'),ylabel('幅度 / dB'),title('脉冲压缩测距(局部放大)')