基于gprMax以及Matlab仿真的SFCW雷达信号处理笔记
本人为初学者,且不常使用优快云,如遇到问题可发送邮件至2538703415@qq.com讨论,这样我能及时看见,但不一定能帮你解决……
当前使用gprMax进行探地雷达仿真主要存在以下两个问题,它们分别是:
gprMax无法直接对一段完整的SFCW信号进行仿真,若要通过gprMax直接实现SFCW信号的回波仿真,则要将一段完整的SFCW信号拆分成若干段频率单一的余弦信号分别进行仿真,对于拥有上百个频点的SFCW信号而言,需要进行上百次单独的仿真。- 使用自定义波形或gprMax内置波形进行仿真时,
仿真速度偏低且灵活性差,每次在用户需要更改波形时,都要重新开始仿真。
对于提到的这些问题,包括gprMax开发团队在内的很多研究团体都得出了一些解决方案,这份readme文档将对这些解决方案进行归纳总结。这一仓库中的代码最终实现如下结果:

图一:gprMax模型

图二:Matlab仿真结果
| 根目录文件 | 文件作用 |
|---|---|
| main.m | 运行此文件,执行matlab仿真 |
| simu_single_step.m | 运行此文件,执行matlab仿真(无图) |
| result.mat | 对应bscan_impulse_merged.out的仿真结果 |
| result_10m.mat | 对应bscan_impulse_merged_10m.out的仿真结果 |
| impulse_lib文件夹 | 文件作用 |
|---|---|
| bscan_impulse_10m_merged.out | 对应bscan_impulse_10m.in的bscan冲激响应输出结果 |
| bscan_impulse_merged.out | 对应bscan_impulse.in的bscan冲激响应输出结果 |
| gprMax_source文件夹 | 文件作用 |
|---|---|
| sfcw_impulse.in | 模型1的输入文件,可用于生成vti,对应bscan子文件夹中的bscan_impulse.in |
| sfcw_impulse_10m.in | 模型2的输入文件,可用于生成vti,对应bscan子文件夹中的bscan_impulse_10m.in |
| impulse_response_10m.vti | 模型2(对应图一)的vti文件 |
冲激响应法求解回波模型
为了解决gprMax仿真灵活性差,耗时长的问题,可以采用信号与系统中的基础知识,通过将模拟场景视为一个线性时不变系统(LTI system),将输入信号(也就是用户自定义的发射信号)与这一LTI系统的冲激响应h(t)相卷积,从而得到对应于输入信号的模拟场景回波信号。

图三:冲激响应计算y(t)
在通过一次仿真求得系统的冲激响应之后,用户只需要在matlab中将输入信号与此冲激响应相卷积,就可以得到对应的回波模型。gprMax提供了冲激信号波形(impulse),但是没有在对应的参考文献中列出,此波形可以直接使用,在使用时,其他波形对应的中心频率项对impulse波形不再生效(毕竟冲激信号只有tn=0时有值)。
具体的操作方法不在此处详细列出,对应的生成系统冲激响应的文件在github中可以查看。
这一部分的具体操作可参考:
- https://blog.youkuaiyun.com/l_jsaphsj/article/details/127530336?spm=1001.2014.3001.5501
- https://www.youtube.com/watch?v=_FWNeqTr9nc&t=1387s (gprMax官方)
SFCW信号回波的仿真(gprMax & Matlab)
SFCW雷达每次发射和接收的信号为单频连续波信号,其频率变化可表示为:
f n = f 0 + ( n − 1 ) Δ f f_n = f_0 + (n-1)\Delta f fn=f0+(n−1)Δf
其中 f n f_n fn 是当前(第n个)频率, f 0 f_0 f0 是起始频率, Δ f \Delta f Δf 为频率步长。
发射信号可以被表示为:
T x ( n ) = s i n ( 2 π f n t ) T_x(n) = sin(2\pi f_nt) Tx(n)=sin(2πfnt)
其中n为第n个频点。
假设信号在均匀介质中的传播速度为 v v v ,则一个距离目标为 R R R 的物体所反射的回波信号可以表示为:
R x ( n ) = A n s i n [ 2 π f n ( t − 2 R v ) ] R_x(n) = A_nsin[2\pi f_n(t - \frac{2R}{v})] Rx(n)=Ansin[2πfn(t−v2R)]
其中 A n A_n

该文介绍了一种针对gprMax在SFCW雷达信号仿真中限制的解决方案,利用冲激响应法提高仿真效率。通过将SFCW信号分解为多个单频信号,在gprMax中仿真每个频率的冲激响应,然后在Matlab中进行卷积计算得到回波模型。文章详细阐述了SFCW信号的数学表示,以及如何通过I和Q分量提取距离信息。此外,还讨论了gprMax的参数设置和波形配置,以减少噪声并优化仿真效果。
最低0.47元/天 解锁文章

1万+

被折叠的 条评论
为什么被折叠?



