Chirp 信号
一、什么是 Chirp 信号?
Chirp 是一种频率随时间连续变化的信号。
普通单频信号的频率始终不变,例如:
1000 Hz→1000 Hz→1000 Hz 1000\ \mathrm{Hz}\rightarrow1000\ \mathrm{Hz}\rightarrow1000\ \mathrm{Hz} 1000 Hz→1000 Hz→1000 Hz
而一个从 18 kHz18\ \mathrm{kHz}18 kHz 扫描到 22 kHz22\ \mathrm{kHz}22 kHz 的 Chirp 信号,其频率变化为:
18 kHz→19 kHz→20 kHz→21 kHz→22 kHz 18\ \mathrm{kHz}\rightarrow19\ \mathrm{kHz}\rightarrow20\ \mathrm{kHz} \rightarrow21\ \mathrm{kHz}\rightarrow22\ \mathrm{kHz} 18 kHz→19 kHz→20 kHz→21 kHz→22 kHz
Chirp 也常被称为:
- 啁啾信号;
- 扫频信号;
- 线性调频信号;
- Linear Frequency Modulated Signal,简称 LFM 信号。
"啁啾"这个名称来自鸟叫,因为鸟叫的音调经常会由低到高或由高到低变化。
二、先复习什么是频率
频率表示信号在一秒内完成振动的次数,单位是赫兹(Hz)。
例如:
f=1000 Hz f=1000\ \mathrm{Hz} f=1000 Hz
表示信号每秒完成 100010001000 次振动。
一个频率固定的余弦信号可以写成:
x(t)=Acos(2πft+φ) x(t)=A\cos(2\pi ft+\varphi) x(t)=Acos(2πft+φ)
其中:
| 符号 | 含义 |
|---|---|
| AAA | 振幅,表示信号强弱 |
| fff | 频率,单位为 Hz |
| ttt | 时间,单位为 s |
| φ\varphiφ | 初始相位 |
| 2πft+φ2\pi ft+\varphi2πft+φ | 信号在 ttt 时刻的相位 |
例如:
x(t)=cos(2π×1000t) x(t)=\cos(2\pi\times1000t) x(t)=cos(2π×1000t)
表示一个频率始终为 1000 Hz1000\ \mathrm{Hz}1000 Hz 的信号。
三、Chirp 的核心:频率随时间变化
最常见的是线性 Chirp,其瞬时频率为:
f(t)=f0+kt \boxed{f(t)=f_0+kt} f(t)=f0+kt
其中:
| 符号 | 含义 | 单位 |
|---|---|---|
| f(t)f(t)f(t) | ttt 时刻的瞬时频率 | Hz |
| f0f_0f0 | Chirp 的起始频率 | Hz |
| kkk | 扫频速率,也称 Chirp slope | Hz/s |
| ttt | 从 Chirp 开始计算的时间 | s |
扫频速率 kkk 为:
k=BT=f1−f0T \boxed{k=\frac{B}{T}=\frac{f_1-f_0}{T}} k=TB=Tf1−f0
其中:
- f0f_0f0:起始频率;
- f1f_1f1:结束频率;
- B=f1−f0B=f_1-f_0B=f1−f0:带宽;
- TTT:一个 Chirp 的持续时间。
示例
假设手机播放一个 Chirp:
- 起始频率:18 kHz18\ \mathrm{kHz}18 kHz;
- 结束频率:22 kHz22\ \mathrm{kHz}22 kHz;
- 持续时间:40 ms40\ \mathrm{ms}40 ms。
带宽为:
B=22000−18000=4000 Hz B=22000-18000=4000\ \mathrm{Hz} B=22000−18000=4000 Hz
因为:
40 ms=0.04 s 40\ \mathrm{ms}=0.04\ \mathrm{s} 40 ms=0.04 s
所以扫频速率为:
k=40000.04=100000 Hz/s k=\frac{4000}{0.04}=100000\ \mathrm{Hz/s} k=0.044000=100000 Hz/s
该 Chirp 的瞬时频率为:
f(t)=18000+100000t f(t)=18000+100000t f(t)=18000+100000t
| 时间 | 瞬时频率 |
|---|---|
| t=0t=0t=0 | 18 kHz18\ \mathrm{kHz}18 kHz |
| t=0.01 st=0.01\ \mathrm{s}t=0.01 s | 19 kHz19\ \mathrm{kHz}19 kHz |
| t=0.02 st=0.02\ \mathrm{s}t=0.02 s | 20 kHz20\ \mathrm{kHz}20 kHz |
| t=0.03 st=0.03\ \mathrm{s}t=0.03 s | 21 kHz21\ \mathrm{kHz}21 kHz |
| t=0.04 st=0.04\ \mathrm{s}t=0.04 s | 22 kHz22\ \mathrm{kHz}22 kHz |
因此,它在 40 ms40\ \mathrm{ms}40 ms 内均匀地从 18 kHz18\ \mathrm{kHz}18 kHz 扫描到了 22 kHz22\ \mathrm{kHz}22 kHz。
四、线性 Chirp 的完整波形公式
这是一个非常容易写错的地方。
已知 Chirp 的瞬时频率为:
f(t)=f0+kt f(t)=f_0+kt f(t)=f0+kt
但不能简单地把它代入 2πft2\pi ft2πft,写成:
cos(2π(f0+kt)t) \cos\left(2\pi(f_0+kt)t\right) cos(2π(f0+kt)t)
因为频率在不断变化,相位应当通过对频率积分得到:
ϕ(t)=2π∫0tf(τ) dτ+ϕ0 \phi(t)=2\pi\int_0^t f(\tau)\,\mathrm{d}\tau+\phi_0 ϕ(t)=2π∫0tf(τ)dτ+ϕ0
代入 f(τ)=f0+kτf(\tau)=f_0+k\tauf(τ)=f0+kτ:
ϕ(t)=2π∫0t(f0+kτ) dτ+ϕ0=2π(f0t+12kt2)+ϕ0 \begin{aligned} \phi(t) &=2\pi\int_0^t(f_0+k\tau)\,\mathrm{d}\tau+\phi_0\\ &=2\pi\left(f_0t+\frac{1}{2}kt^2\right)+\phi_0 \end{aligned} ϕ(t)=2π∫0t(f0+kτ)dτ+ϕ0=2π(f0t+21kt2)+ϕ0
因此,线性 Chirp 的完整波形为:
x(t)=Acos2π(f0t+12kt2)+ϕ0 \boxed{ x(t)=A\cos\left2\\pi\\left(f_0t+\\frac{1}{2}kt\^2\\right)+\\phi_0\\right } x(t)=Acos2π(f0t+21kt2)+ϕ0
现阶段只需要记住:
频率是相位随时间的变化速度。
两者的数学关系为:
f(t)=12πdϕ(t)dt \boxed{f(t)=\frac{1}{2\pi}\frac{\mathrm{d}\phi(t)}{\mathrm{d}t}} f(t)=2π1dtdϕ(t)
五、上扫频与下扫频
1. 上扫频 Chirp
频率由低到高,例如:
18 kHz→22 kHz 18\ \mathrm{kHz}\rightarrow22\ \mathrm{kHz} 18 kHz→22 kHz
此时:
k>0 k>0 k>0
2. 下扫频 Chirp
频率由高到低,例如:
22 kHz→18 kHz 22\ \mathrm{kHz}\rightarrow18\ \mathrm{kHz} 22 kHz→18 kHz
此时:
k<0 k<0 k<0
在时频图中:
- 上扫频通常表现为一条向右上方延伸的斜线;
- 下扫频通常表现为一条向右下方延伸的斜线。
六、Chirp 为什么能够用于声学感知?
声学感知的基本过程是:
- 扬声器发射 Chirp;
- 声波传播到人体或物体;
- 人体或物体反射声波;
- 麦克风接收回波;
- 系统从回波中估计目标距离和运动。
假设发射信号为 s(t)s(t)s(t),目标距离为 RRR。声波经历的往返路程是 2R2R2R,因此传播延迟为:
τ=2Rc \boxed{\tau=\frac{2R}{c}} τ=c2R
其中 ccc 是声速,在常温空气中近似为:
c≈343 m/s c\approx343\ \mathrm{m/s} c≈343 m/s
接收的回波可以简化为:
r(t)=αs(t−τ) r(t)=\alpha s(t-\tau) r(t)=αs(t−τ)
其中:
- τ\tauτ:回波的传播延迟;
- α\alphaα:信号经过传播和反射后的衰减系数。
只要能够估计出 τ\tauτ,就可以计算目标距离:
R=cτ2 \boxed{R=\frac{c\tau}{2}} R=2cτ
之所以除以 222,是因为声波经历了"去"和"回"两段路程。
七、Chirp 如何把传播延迟转化为拍频?
这是 Chirp 测距的核心原理。
发射信号的瞬时频率不断升高:
ftx(t)=f0+kt f_{\mathrm{tx}}(t)=f_0+kt ftx(t)=f0+kt
回波延迟了 τ\tauτ,因此接收信号对应的是更早时刻发出的频率:
frx(t)=f0+k(t−τ) f_{\mathrm{rx}}(t)=f_0+k(t-\tau) frx(t)=f0+k(t−τ)
将发射信号和接收信号进行混频,可以得到两者的频率差:
fb=ftx−frx f_b=f_{\mathrm{tx}}-f_{\mathrm{rx}} fb=ftx−frx
代入后得到:
fb=(f0+kt)−f0+k(t−τ)=kτ \begin{aligned} f_b &=(f_0+kt)-\leftf_0+k(t-\\tau)\\right\\ &=k\tau \end{aligned} fb=(f0+kt)−f0+k(t−τ)=kτ
因此:
fb=kτ \boxed{f_b=k\tau} fb=kτ
fbf_bfb 称为:
- Beat frequency;
- 拍频;
- 差频。
由此可得:
τ=fbk \tau=\frac{f_b}{k} τ=kfb
再结合 R=cτ/2R=c\tau/2R=cτ/2,得到:
R=cfb2k \boxed{R=\frac{cf_b}{2k}} R=2kcfb
示例
假设:
k=100000 Hz/s k=100000\ \mathrm{Hz/s} k=100000 Hz/s
经过混频后测得拍频为:
fb=100 Hz f_b=100\ \mathrm{Hz} fb=100 Hz
传播延迟为:
τ=fbk=100100000=0.001 s \tau=\frac{f_b}{k}=\frac{100}{100000}=0.001\ \mathrm{s} τ=kfb=100000100=0.001 s
目标距离为:
R=343×0.0012=0.1715 m R=\frac{343\times0.001}{2}=0.1715\ \mathrm{m} R=2343×0.001=0.1715 m
即:
R≈17.15 cm \boxed{R\approx17.15\ \mathrm{cm}} R≈17.15 cm
因此,系统不一定需要直接测量极短的传播时间,而可以通过测量拍频间接估计距离。
**说明:**上述拍频公式基于理想静止目标和线性扫频模型。目标运动、多径传播以及收发不同步等因素,会使实际信号更加复杂。
八、Chirp 相比单频信号有什么优势?
假设只播放一个 20 kHz20\ \mathrm{kHz}20 kHz 的单频信号:
x(t)=cos(2π×20000t) x(t)=\cos(2\pi\times20000t) x(t)=cos(2π×20000t)
反射回来的信号仍然是 20 kHz20\ \mathrm{kHz}20 kHz,只是到达时间更晚、振幅更小,并且相位发生变化。
单频信号可以非常灵敏地测量相位变化,因此适合检测呼吸、振动等微小位移;但是,仅根据一个频率通常很难明确判断回波来自哪个距离。
Chirp 覆盖一段频率范围,例如:
18 kHz∼22 kHz 18\ \mathrm{kHz}\sim22\ \mathrm{kHz} 18 kHz∼22 kHz
经过匹配滤波、相关运算或解调后,可以将不同传播延迟映射到不同的距离位置。
| 对比维度 | 单频信号 | Chirp 信号 |
|---|---|---|
| 频率 | 固定 | 随时间变化 |
| 占用带宽 | 很窄 | 较宽 |
| 距离分辨能力 | 较弱 | 较强 |
| 微小相位变化检测 | 很灵敏 | 同样可以利用 |
| 区分不同距离目标 | 比较困难 | 更容易 |
| 抗噪能力 | 能量集中在单个频率 | 可通过相关处理积累能量 |
可以简单记成:
单频信号擅长感受"有没有微小变化",Chirp 更擅长判断"变化发生在哪个距离"。
九、带宽与距离分辨率的关系
在理想宽带测距模型下,Chirp 的距离分辨率近似为:
ΔR≈c2B \boxed{\Delta R\approx\frac{c}{2B}} ΔR≈2Bc
其中:
- ΔR\Delta RΔR:距离分辨率;
- ccc:声速;
- BBB:Chirp 的有效带宽。
假设:
B=4000 Hz B=4000\ \mathrm{Hz} B=4000 Hz
则:
ΔR≈3432×4000≈0.0429 m \Delta R\approx\frac{343}{2\times4000}\approx0.0429\ \mathrm{m} ΔR≈2×4000343≈0.0429 m
即:
ΔR≈4.29 cm \boxed{\Delta R\approx4.29\ \mathrm{cm}} ΔR≈4.29 cm
如果带宽增加到 8000 Hz8000\ \mathrm{Hz}8000 Hz:
ΔR≈3432×8000≈2.14 cm \Delta R\approx\frac{343}{2\times8000}\approx2.14\ \mathrm{cm} ΔR≈2×8000343≈2.14 cm
因此:
带宽越大,距离分辨能力通常越强。 \boxed{\text{带宽越大,距离分辨能力通常越强。}} 带宽越大,距离分辨能力通常越强。
需要注意,"分辨率越高"意味着 ΔR\Delta RΔR 的数值越小。例如,2 cm2\ \mathrm{cm}2 cm 的距离分辨率优于 5 cm5\ \mathrm{cm}5 cm,因为它更有能力区分距离相近的反射目标。
十、Chirp 在研究路线中的作用
计划中的声学感知流程为:
Chirp→胸腔反射→Range--Time Map→静态分量去除→Transformer/Mamba→呼吸与心跳 \text{Chirp} \rightarrow\text{胸腔反射} \rightarrow\text{Range--Time Map} \rightarrow\text{静态分量去除} \rightarrow\text{Transformer/Mamba} \rightarrow\text{呼吸与心跳} Chirp→胸腔反射→Range--Time Map→静态分量去除→Transformer/Mamba→呼吸与心跳
在这个流程中,Chirp 主要负责三件事:
1. 主动探测
扬声器主动发射已知信号,不需要人体自己发出声音。
2. 距离定位
根据回波的传播延迟或拍频,判断反射来自哪个距离。
3. 捕捉胸腔运动
胸腔的呼吸和心跳会引起反射路径长度变化,进而造成回波的距离、相位或幅度变化。
连续发射多个 Chirp 后,每个 Chirp 都可以产生一条距离剖面(Range Profile):
Chirp1→Range Profile1 \mathrm{Chirp}_1\rightarrow\mathrm{Range\ Profile}_1 Chirp1→Range Profile1
Chirp2→Range Profile2 \mathrm{Chirp}_2\rightarrow\mathrm{Range\ Profile}_2 Chirp2→Range Profile2
Chirp3→Range Profile3 \mathrm{Chirp}_3\rightarrow\mathrm{Range\ Profile}_3 Chirp3→Range Profile3
将这些距离剖面按照采集时间排列,就形成 Range--Time Map:
- 横轴:采集时间,也称慢时间;
- 纵轴:距离;
- 像素强度:相应距离位置的反射强度或其他回波特征。
Range--Time Map 的形式很像一幅二维图像,因此后续可以结合已有的计算机视觉经验,使用 CNN、Transformer 或 Mamba 提取其中的时空特征。
十一、本节必须记住的五句话
-
Chirp 是频率随时间连续变化的信号。
-
线性 Chirp 的瞬时频率为:
f(t)=f0+kt f(t)=f_0+kt f(t)=f0+kt
-
扫频速率为:
k=BT k=\frac{B}{T} k=TB
-
在理想线性扫频模型中,传播延迟可以转化为拍频:
fb=kτ f_b=k\tau fb=kτ
-
带宽越大,理论距离分辨能力通常越强:
ΔR≈c2B \Delta R\approx\frac{c}{2B} ΔR≈2Bc