二、实时处理
2.1 硬件需求
1.SD卡
2.读卡器
2.2 前置环境
1.mmWave_DFP
2.PROCESSOR_SDK_RADAR
3.Windows bash工具(如git bash)
4.串口同通信工具(如xshell、putty)
5.A15 Compiler, Linker 下载地址为4.9-2015-q3-update : GNU Arm Embedded Toolchain
需安装至<install dir>/ti_components/cg_tools/windows/gcc-arm-none-eabi-4_9-2015q3
将该目录设置在环境变量PATH下
同时将<install dir>\ti_components\os_tools\windows\xdctools_3_32_01_22_core也设置在环境变量PATH下。
(安装目录不要更改名字,否则后续编译过程会报错)
2.3 编译
1.编辑<path>\PROCESSOR_SDK_RADAR\vision_sdk\build目录下的Rules.make
2.设置
MAKEAPPNAME=apps
MAKECONFIG=tda2xx_cascade_bios_radar
3.按照code_changes.7z压缩包(下载地址https://download.csdn.net/download/shadowam/14504464)中的Readme.txt进行代码替换,因为TI官方没有为AWR2243提供PROCESSOR_SDK_RADAR的支持,目前官方版本支持AWR1243,因此需要对部分代码进行修改,使该环境支持AWR2243。代码主要修改为调整若干参数,使其适配AWR2243、使RTOS支持静态IP。
4.代码修改完成之后,在build目录下打开git bash(不要使用Windows 自带的Power shell,会报一些莫名其妙的错误)依次执行完成以下命令(必须确保每一步命令执行成功):
gmake -s -j depend
gmake -s -j
gmake -s sbl
gmake -s appimage
编译成功后,可以在<path>\PROCESSOR_SDK_RADAR\vision_sdk\binaries\apps\tda2xx_cascade_bios_radar\sbl\sd\opp_nom\tda2xx-cascade-radar文件夹下找到MLO导引文件;在<path>\PROCESSOR_SDK_RADAR\vision_sdk\binaries\apps\tda2xx_cascade_bios_radar\vision_sdk\bin\tda2xx-evm\sbl_boot文件夹下找到AppImage RTOS文件。
找到该编译文件说明编译成功。
2.4 运行流程
1.准备一张格式化的fat32格式的SD卡,设置名称为SD_BOOT,利用读卡器将上述编译完成的MLO、AppImage文件拷入sd卡中,更换评估版上默认插入的SD卡。
TF卡格式化步骤如下:
(1)下载如http://www.pcdisk.com/download.html所示链接工具进行,使用该工具使SD卡分区处于活动状态。
(2)在cmd中打开该工具diskpart.exe。
(3)依次输入以下命令:
list disk
此时查看tf卡编号,我的为1,因此下一步输入
select disk 1
clean
create partition primary
list partition
select partition 1
list volume
此时查看tf卡分区编号,我的为3,因此下一步输入
select volume 3
format quick fs=fat32 unit=4096 label=SD_BOOT
active
exit
2.RTOS静态IP默认为192.168.1.200,需要将上位机配置在与评估版同一网段(如192.168.1.30)。
3.串口配置与1.2部分相同,配置成功之后,即可接通网线、串口最后连接电源。
4.进入界面之后,即可进行功能的选择,接下来以MIMO Object Detection为例进行说明。
5.按照界面的按键提示依次选择usecase->mimo_ohject_detection->dsp->TFDTP。注意后续使用MATLAB查看输出时必须选择TFDTP作为传输方式,据官方文档的说明,目前MATLAB仅支持TFDTP协议。设置完成后,串口输出可以看到如图4所示的界面。
图4 MATLAB串口输出界面图
6.打开MATLAB,进入<path>\PROCESSOR_SDK_RADAR_03_08_00_00\vision_sdk\apps\src\rtos\radar\src\usecases\cascade_radar_object_detect目录,编写MATLAB脚本调用radar_cascade_demo()函数,以下给出一个示例:
RangeDepthInMeters=15;
tgt_ip_addr='192.168.1.200';
host_ip_addr='192.168.1.30';
host_mac_address='C8-5B-76-2C-62-0F';
platform='TI';
range_depth=RangeDepthInMeters;
profileNum='1';%MIMO
radar_cascade_demo(tgt_ip_addr, host_ip_addr, host_mac_address, platform, range_depth, profileNum);
运行之后可以看到如图5所示界面。
图5 MATLAB串口输出界面图
7.E:\ti\PROCESSOR_SDK_RADAR_03_08_00_00\vision_sdk\apps\src\rtos\radar\src\common中有各个usecase的配置文件(如chains_common_cascade_ar12xx_config_mimo.c),对其进行修改后重新进行编译可对雷达的各个参数进行调整。
8.另外,此时的显示应该为静态,需要校正程序运行生成一个校正文件复制到SD卡中才可动态显示,上次写这些时间过得比较久了,校正过程可能以后有时间再补充,这里先提供一个我以前的校正文件供使用 https://download.csdn.net/download/shadowam/89077715
注:该部分参考自<path>/PROCESSOR_SDK_RADAR/vision_sdk/docs/Radar/ProcessorSDKRadar_UserGuide.pdf与<path>/PROCESSOR_SDK_RADAR/vision_sdk/docs/UserGuides/VisionSDK_UserGuide_TDA2xx.pdf。为了使用户更快的运行Demo省略了大量细节,要了解更多详细过程可参考官方文档(其中包含更多的配置细节与更多的usecase),遇到问题或发现文档错误可联系邮箱shadowam@bupt.edu.cn
参考资料
- PROCESSOR_SDK_RADAR/vision_sdk/docs/Radar/ProcessorSDKRadar_UserGuide.pdf
- PROCESSOR_SDK_RADAR/vision_sdk/docs/UserGuides/VisionSDK_UserGuide_TDA2xx.pdf
- 使用什么软件能够利用RF(AWR2243P)_evm+DSP-evm联合板子进行实时物体跟踪与检测? - 其它模拟产品 (Read-Only) - 存档论坛 - E2E™ 设计支持
- https://e2e.ti.com/support/sensors/f/1023/t/882929#pi320995=2
- AWR1243: Cascade EVM TCP/IP configuration - Sensors forum - Sensors - TI E2E support forums
- TDA2SX: azimuth results for "AWR1243 Capture + Radar Object Detect..." EVM demo use case - Processors forum - Processors - TI E2E support forums
- https://www.ti.com/lit/ug/spruis6/spruis6.pdf?ts=1608632409235&ref_url=https%253A%252F%252Fwww.ti.com%252Ftool%252FMMWCAS-DSP-EVM
- MMWCAS-RF-EVM: Radar object detect use case clipping maximum range at around 15 meters irrespective of settings. - Sensors forum - Sensors - TI E2E support forums