使用TI AWR1843 Boost EVM和 DCA1000 EVM 实时采集ADC数据并解析

  • 2021年6月11日 更新中... 先记录一些关键坑。有问题可以留言
  • 2021年9月26日 更新了matlab处理相关参考的文件路径
  • 2022年8月9日 更新 matlab 解析UDP 实现 streaming

硬件

TI AWR1843 Boost EVM ES2.0(AWR1642 ES2.0类似)

DCA1000 EVM

需要注意的几点

  • *先使用uniflash擦除1843中的flash
  • *SPI模式
  • *SOP设置

软件

  • TI的所有软件最好安装到默认的C:\ti盘下
  • 按照mmwave studio user guide 的教程安装对应的matlab runtime

matlab

  • mmwave studio 2最新版(注意版本,版本release中说支持的是1843是ES1.0的,实际上是个typo,居然至今没有修改过来。)
  • 使用matlab控制需要2个.m脚本(Init_RSTD_Connection.m和RSTD_Interface_Example.m,需要自己按需修改),参见 安装目录(比如mmwave_studio_02_01_01_00\docs)下的user guide的matlab控制一节:Controlling mmWaveStudio from Matlab。

流程 (使用mmwave studio GUI 和 LUA脚本)

使用LUA脚本

使用脚本很简单直接

使用GUI

mmwave studio 使能能三个发射

ref DCA1000EVM: AWR1642EVM mmWave studio TDM or BPM MIMO setting - Sensors forum - Sensors - TI E2E support forums

三个发射每一个都要配置一遍

Below are the steps for configuring TX TDM MIMO configuration. As you see I define 1 profile (Profile Id = 0). Then I define 2 chirps, 0 and 1. Chirp 0 enables TX0, Chirp 1 enables TX1.

Then in frame configuration, I enable Chirp 0 and Chirp1 and Loop them 32 times to create a frame of 64 chirps.

​编辑

​编辑

​编辑

​编辑

Regarding other comments,

TX3 is available in AWR1243 and AWR1443 which are different parts of the mmWave product family. AWR1642 has 2 TX.

Chip Manager, TX enable should be either 0 or 1.

数据解析

由bin文件解析出mat文件,size n_Tx*n_chirp_per_frame*n_Rx*n_sample

其实 mmwave studio已经自带了解析程序了(适用xwr1xxx所有型号)

单chip的话路径在mmWaveStudio\MatlabExamples\singlechip_raw_data_reader_example,自带的readme写得很清楚:This Matlab script is to post process a *.setup.json file generated from mmwave studio with captured bin files.
It generates mat files for raw ADC data and radar cube data.如果使用自带的matlab程序,需要使用studio导出json文件。json文件里记录了你设置的配置信息。

数据分析

由mat进行简单分析(rangefft cfar etc.)

使用matlab实现自动化采集与显示

  • 使用matlab控制studio执行LUA脚本
    • 使用matlab脚本来控制mmwave studio实现采集处理流程自动化
    • 使用 RSTD运行lua脚本并且将bin解析成mat。

控制DCA1000  无限上传

  • 使用matlab解析网口数据,实现数据流式的实时采集处理
    • 最近重新实现了通过matlab来抓去UDP数据并解析,中间有几点需要注意
      • 在frameconfig中将frame数设置成0,这样采集的frame数会是infinity
      • mmwave studio中的关于DCA1000的控制实际上是调用了DCA1000 control exe,可以参考dca1000 CLI control的文档
      • cli start record之后,会自己接收上传的数据,如果自己接收不到会触发一个time out中止 dca1000的采集和上传(非常坑啊,我之前总是采集2min之后就发现没有包上传了,明明dca1000设置的上限是1024M)
      • 经过一番trick,终于能通过matlab一直流式抓网口包+解析radar数据+实时显示了。目前我的破电脑只能实现15 frame/sec。。
      • 目前上传的数据量上限已经是既定的1024M了。大概100万个UDP包之后会停止。
  • udp格式参见相关文档。如果你能自己解析前一部分的bin了,并且能抓到UDP包,此处应该不复杂了,但是需要处理一些丢包和乱序,毕竟UDP是不能保证顺序并且容易丢包。

Contact Me

If you have any question, feel free to contact me via 1055970018 (Tencent numero). But be prepared to solved the question by yourself. I give instruction, not specification.

你可能感兴趣的:(仪器测试自动化,信号处理,毫米波雷达,AWR开发板)