Funpack4-1 - 用两个DWM3001CDK完成测距并显示
该项目使用了ARUINO,实现了两个DWM3001CDK测距并显示的设计,它的主要功能为:基于dToF进行UWB测距显示。
标签
嵌入式系统
Funpack活动
显示
开发板
starry-m
更新2025-04-08
13

项目介绍

本项目为Funpack4-1,DWM3001CDK——超宽带 (UWB) 模块开发套件活动。要求实践时的要求如下:

  • 使用两块板卡的UWB通信获得他们之间的相对距离
  • 根据距离和角度改变板子上RGB LED灯的颜色和亮度
  • 使用屏幕显示相对距离

硬件说明

Qorvo 的 DWM3001CDK是基于DWM3001C模块所做的评估套件。而DWM3001C模块内部是Nordic nRF52833 MCU通过SPI控制UWB芯片DW3110。
UWB(Ultra-Wideband,超宽带)是一种 短距离、高带宽、低功耗 的无线通信技术,它通过 超宽的频谱范围(通常大于 500 MHz)发送极短的脉冲信号,用于高精度定位、测距和高速数据传输。由于 UWB 信号的脉冲时间极短,其多径效应(Multipath Effect)影响较小,因此在复杂环境(如室内)中仍能保持高精度定位。
该芯片能够通过双向飞行时间较为精确的得出两个设备之间的距离,以及到达角度(Angle of Arrival, AoA)技术测量设备的方向,主要依靠相位差(Phase Difference of Arrival, PDoA) 进行计算。

但是这个模组上面只接了一根UWB天线,因此是没法进行角度测量的。

方案说明

大致流程为:将一个DWM3001CDK作为initiator广播信号,另一个作为responder。responder收到信号时返回给initiator,其再进行ToF计算,算出两点距离来,再将结果显示在OLED屏幕上面。

环境部署

使用Arduino作为开发平台,参考自Work-on-DWM3001CDK
主要步骤为:

  • DWM3001CDK烧录bootloader,创建arduino环境
  • Arduino中安装Adafruit_nRF52_Arduino
  • 增加DW3110外设支持

软件说明

主要部署步骤

这个库UWB-DW3000-NRF52中的example下ex_06b_ss_twr_responder直接烧录到一个板子上,ex_06a_ss_twr_initiator下增加对0.96 OLED的显示支持(Adafruit_SSD1306库),并对RGB灯根据距离做一个映射。这样就最低限度的完成任务要求了。

框架分析

初始化阶段(setup()):

    • 配置LED、串口和OLED显示。
    • 初始化DW3000模块,并进行参数配置。


主循环(loop()):

    • 发送TWR(双向测距)请求。
    • 等待响应,若超时则重新发送。
    • 解析收到的响应,计算时间差(ToF)。
    • 计算距离,并更新LED显示状态。
    • 继续循环,进行下一次测距。

效果展示与遇到的问题

效果展示

初始化,等待连接

短距离时只有红灯微亮

长距离时绿灯亮起

两块板子合照

遇到的问题

  • 第一次安装Arduino后,包管理器安装DWM时一直报错,百度搜了一圈都说是网络代理问题,但是我本地设置这边是有做代理的,还是一直装不上,玄学。遂放在那里,过几天后再进包管理器后又能正常安装了,难道是我那天正好代理有问题?还是没法定位原因,但已经装好包了,先不管了。
  • 把卡上电启动后需要很长时间(大概几十秒)才会显示连接上,难道是UWB驱动问题?
  • Qorvo的free rtos版SDK和示例没看明白,一堆指针函数,半天找不到,遂转到Arduino。

心得体会

虽然通过Arduino简单的驱动起来了UWB,知道大概的流程,也拿到了距离。但是,底层数据怎么传的,怎么校验,我脑子里还是空的,再加上拿到板子这么久都没怎么摸索,好像我已经失去了参加活动的意义。
感觉我好像没有以前那种参加硬禾活动积极探索的精神状态了,自己每天脑子空空的,已经没有以前那种拿到新玩具的快乐了。现在想起大二开学时从材料毅然转到电子专业,每天课余时间抱着51开发板跟着教程学,那是的我一定是很开心的吧,对未来充满了希望。但现在的我又算什么呢。
最近因为找实习的事情压力比较大,一度怀疑自己是不是还适合做嵌入式这个行业,自己是不是这块料,是不是应该换个行业。所以说的有点多,总的来说还是很感谢硬禾的活动扩宽了我的视野,增长了我的见识。
最后祝硬禾越来越好,我也应该好好调整下自己。

附件下载
dwm3001cdk_uwb.ino
arduino项目文件
团队介绍
评论
0 / 100
查看更多
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号