基于matlab的信号与系统实验指导电子书_低成本FMCW雷达的详细实验,我也想尝试亲手组装一部...

需要本文英文原文的请给“雷达通信电子战”微信公众号发送“190809”,会有英文原文下载链接的自动回复,资料仅供学习参考。

文末还有一个对可能困扰你的问题的回答,去看看!

1实验目标

本实验演示了调频连续波(FMCW)雷达的基本操作,能够进行距离和速度测量。完成本实验后,你将会:

•了解FMCW雷达如何通过现成的商用组件进行组装,并集成在树莓派平台上

•了解使用I/Q信号识别运动方向

•运用傅里叶分析和了解雷达信号多普勒处理的基础知识

•了解带宽和离散化对分辨率的影响

•能够了解到实验室系统中的瓶颈

2实验设备

本实验中使用的设备如图1所示。它由商用雷达模块,Innosent GmbH的IVS-162组成,控制单元由树莓派和英国电子公司生产的AD/DA扩展卡ADC DAC Pi Zero组成,还有基于LM358运算放大器的调谐电压的非反相放大器。该设备的基本原理图如图2所示。

如果你想自己搭建系统,总成本约为1000瑞典克朗(七百多元人民币),并且可以在课程网站上找到组装指导。

e6eaf2b1c7a6635ce7327643f5fd0013.png

图1:FMCW雷达的设备

a8cbe71412190f3c60b0be89c11a424a.png

图2:雷达系统简图

2.1雷达模块

该系统的核心是雷达模块。根据制造商网站的信息,推荐应用于开门器和工业应用,其主要功能有:

•VCO收发器的中心频率为24GHz

•FMCW/FSK能力;因此可以测量距离和识别静止物体(取决于调制方式)

•发送和接收路径分离以获得最大增益

•用于识别运动方向的立体声(双通道)操作

•IF前置放大器,限制带宽以实现最低噪声性能

•外形尺寸紧凑

9977b0567fd2937d116b1476c1d4a883.png

图3:雷达传感器的工作原理。虚线部分的工作载波为24GHz,放大器包含低通滤波

图3给出了系统简图。传感器的工作频率由调谐电压决定。其中电压[0 10V]对应于频率[24.0GHz, 24.6GHz],接收信号与发送信号混合,经过低通和放大,并出现在I(同相)的输出端。接收信号还与90°反相发送信号混合,经过低通和放大,并出现在Q(正交)的输出端。更多数据可在数据表中找到。

2.2 运算放大器

使用ADC DAC Pi Zero卡扩展的树莓派可以提供可变电压,最高可达2.048V。

为了更好利用雷达模块的带宽,可以用基于LM358运算放大器的非反相放大器电路来提升此电压。该放大器由9 V电池驱动,允许调谐电压在0到7V之间变化(OP的最大输出总是略低于驱动电压)。

通过这样设置,雷达模块的工作频率从f1=24.0GHz变为f2=24.425 GHz,相应的AD/DA卡的输出电压从0变为2.048V.

2.3 模数转换卡

ADC DAC Pi Zero卡有两个输出和两个输入。

输出O1用于控制雷达模块的调谐电压,输出O2用作开关信号(处于低电平时,雷达模块启用)。输入IN1和IN2用于采样雷达模块的I和Q输出。

2.4 树莓派

系统的最后一部分是树莓派单元,它是一台安装了linux操作系统的完整计算机。它可以用任何语言编程,然而,我们仍坚持使用python语言,这是一种非常类似于matlab的脚本语言。

为了演示使用编译语言实现加速,我们还有一种版本是C语言的控制程序,但不需要编码。

该单元由插入迷你USB连接器的USB电缆供电。

01连接树莓派

实验室中有专用的键盘和带有USB连接器的鼠标。还有用于连接显示器的HDMI电缆,通过其micro-USB端口为树莓派供电的USB电缆。

•将键盘,鼠标和显示器连接到树莓派。

•只有在完成上述操作后,才能将micro-USB连接到固定计算机上的常规USB端口(仅供电)。树莓派会根据连接的显示器选择正确的屏幕分辨率。

•你应该可以在屏幕上看到启动过程。结束的时候会显示关于标准密码未更改的警告消息,单击此窗口。

•打开命令窗口(ctrl-alt-T或顶行的图标)。这是我们要进行操作的地方。

•如果您需要在树莓派中保存一些数据,如保存的图形等,你可以使用U盘。

02启动树莓派

启动树莓派后,你将看到图4中的警告消息。警告消息可以忽略,因为它只是通知用户更改树莓派的默认密码。

6a24f246153bc458f1fb84302f0b52e8.png

图4:初始警告消息

更改屏幕分辨率

树莓派通常会检测连接显示器的最佳分辨率。但是,在某些情况下,它的效果并不好,应手动设置屏幕分辨率。要手动设置分辨率,请打开终端并键入:

sudo raspi -config

打开配置菜单后,转到高级选项>分辨率并设置屏幕分辨率。然后,将设备重新启动。

03命令行处理的基础知识

你不需要了解很多linux命令行来使用树莓派。这里总结了一些基础知识,你可以在实验期间充分使用谷歌搜索进行辅助。

ls:列出当前文件夹中的文件。

pwd:列出当前文件夹的名称。

cd:更改文件夹:cd 移动到新文件夹,

cd ..移动到上一级文件夹。文件夹名称由斜杠来分隔/

home / pi / myfiles。

nano:一个简单的文本编辑器。在命令窗口中运行,底部显示一个命令菜单。

leafpad:具有简单GUI的文本编辑器。

python3:(第3版)python语言。写入python3 doppler.py来运行脚本doppler.py。Python是开源社区中的一种流行语言,具有类似于matlab的计算能力。与matlab的一个重要区别是没有必要使用尾随分号。

04保存Python数据

在整个实验过程和报告中,你需要保存测量数据。通过单击“保存”按钮然后指定文件路径,可以保存图5中所示的Python图形。外部USB存储器可以在路径下找到

/ media / pi / USB NAME

其中USB NAME是U盘的名称。

4351a3e28250662c15f170be5d94a9a6.png

图5:Python图形,保存按钮位于下方红圈的位置

实验1:连续波多普勒雷达

在我们的第一个实验中,我们将使用固定频率并仅研究多普勒频移。这是雷达模块的最基本操作,目的是为了进行运动检测。

为了检测运动方向,我们使用I和Q信号。

3.1 脚本

控制雷达模块的代码是:

• doppler.py (located in /home/pi/myfiles/radar/)

该脚本包括一个无限循环,该循环不断读取雷达模块的I和Q引脚上的模拟电压,并将它们组合成复杂的数值。该脚本需要经过N次连续测量,并构建分析信号。

de7df2c54672ef98e18e9a2297ab424e.png

由于采样信号加载在约2 V的直流电压上,因此首先减去平均值,然后应用傅里叶变换(快速傅里叶变换,FFT)

a32a956a5972ecf676313ea67c5dfb67.png

A中峰值的位置对应于多普勒主频率。正频率意味着物体朝向雷达方向运动,负频率表示物体远离雷达方向运动。

该脚本以纯文本形式输出多普勒主频率,并更新整个频谱的图形。为了从下面的测量中获得结果,您需要在文本编辑器(nano或leafpad)中打开脚本,并进行适当的更改。例如,关于输出不同的结果,在脚本中查找变量PlotMode。

一定要保留原始脚本的副本,防止由于意外更改无法修正的内容。

3.2测量

为了获得便于观察的明确信号,可以在雷达模块前面放一个小风扇。风扇叶片的周期性运动产生许多尖峰,并且尖峰之间的间隔与风扇旋转频率成比例。

•根据数据表中的参数,使用雷达距离方程估算雷达模块的SNR,作为距离的函数。选定一个目标,其雷达散射截面,噪声系数。的最大范围是多少?

(提示:数据表以等效各向同性辐射功率表示输出功率。接收增益可以根据方位角和仰角的波束宽度估算。噪声带宽没有明确规定,但制造商提到对于没有频率调制的类似模块,噪声带宽至少100MHz。你可以使用500MHz。)

•捕获并保存原始时域数据的图形,包括直流电平。

•捕获并保存已去除直流电平的时域数据图。

•捕获并保存频域数据图。估算SNR。计算风扇的旋转频率。

•在代码中插入时序控件,并测量以下时间

- 循环运行时间

- 使用FFT进行信号处理。

- 输出部分,包括将写入文本和绘图。尝试使用图形绘图,只显示文本输出。

在实验报告中的数据应当包含三个不同N值。

•取下风扇,并尝试检测手在朝向或远离雷达时的移

动。能否看到多普勒频移的不同表现?

•能否提出改进系统的方法,例如提高SNR或多普勒频移分辨率?

实验2:调频连续波雷达

在本实验中,我们用调谐电压来控制雷达模块的工作频率。由于AD / DA的速率有限,结果将是频率步进调制,其中每个步骤都与实验1中的情况类似。在这种情况下将体现出不同操作频率之间的相位变化。这样不仅可以得到速度,还可以确定距离。

4.1 脚本

启用频率调制的脚本是:

• fmcw.py (located in /home/pi/myfiles/radar/)

这个与前一个实验中的多普勒脚本有些类似,但不是所有测量的频率都相同,而是从24.00 GHz到大约24.425 GHz。频率可以从低到高(向上调频)或从高到低(向下调频)步进。该脚本执行一次向上调频和一次向下调频,并保存相应的分析信号(I和Q)

4af7e7110891a5aa6d445eb708fb0c7f.png
d44d8814404b60a8dcff2c09f2777904.png

每个信号都加载在直流电平和对应于调谐电压的斜坡函数上,需要减去该调谐电压。这是在函数EstimateAmplitudeOffset()中实现的,具体细节不再说明。

一旦分离了直流电平和斜坡,脚本就会计算两个信号的傅里叶变换,并提取每个信号中的主频率Δf1和Δf2,然后根据下列公式可以计算距离和速度。

0d1bf32b09267eded11832d41dd6381a.png
ef31e9785f07367337f9701557608d46.png

其中B = 425 MHz是系统的带宽。

4.2 测量

将雷达模块指向天花板。当雷达探测路径中没有物体移动时,输出信号应该是稳定的。

•捕获并保存时域原始数据的图形,包括直流电平和斜坡。

•捕获并保存已分离直流和斜坡的时域数据图。

•捕获并保存频域数据图。尝试估算SNR和天花板的距离是多少?

•在代码中插入时序控制,并测量以下时间:

- 频率上升信号和频率下降信号扫描的时间。

- 使用斜坡提取和FFT进行信号处理。

- 输出部分,包括写入文本和绘图。尝试使用图形绘

图,只显示文本输出。

在实验报告中的数据应当包含三个不同N值。

•引入一些速度分量,比如挥动手掌。对频率升降信号的对称性有什么影响?

•能否估算分辨率范围?可以使用零填充数据来改进吗?制作并保存适用于实验报告的插图。

亲手组装一部廉价的FMCW雷达

需要本文的英文原文的请给“雷达通信电子战”微信公众号发送“190809”,会有下载链接的自动回复,资料仅供参考。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值