当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]与依赖数英里外卫星的GPS不同,超宽带只是测量无线电脉冲在设备之间传播所需的时间。DWM3000可以测量精确到纳秒的时间,换算成厘米级的精度。这就是知道某人在房间里和确切知道他们在哪张桌子前的区别。

如果你试过追踪大楼里的东西,你就会知道GPS很难用。这就是超宽带(UWB)的用武之地;它可以精确定位到大约10厘米的位置。是的,厘米。漂亮的野生。

我一直在摆弄Qorvo DWM3000 UWB模块与ESP32板配对,老实说,它比我预期的要好。在这个ESP32项目中,我们将建立一个室内定位系统,它可以实时跟踪运动。

为什么超宽频?

与依赖数英里外卫星的GPS不同,超宽带只是测量无线电脉冲在设备之间传播所需的时间。DWM3000可以测量精确到纳秒的时间,换算成厘米级的精度。这就是知道某人在房间里和确切知道他们在哪张桌子前的区别。

快速室内跟踪对比:

•超宽带:~10cm,可达200m

•蓝牙:1 - 3米,可以用于“附近”,但不精确

•Wi-Fi: 5 - 15米,基本是房间级别

•室内GPS: 5 - 10米,如果能工作的话

硬件设置

以下是你需要的:

•4个DWM3000模块(1个吊牌+ 3个锚)

•4× ESP32-WROOM板

•Micro-USB电缆用于电源/编程

•面包板或自定义pcb安装一切

DWM3000超级棒,因为它是一个完整的模块——天线、射频组件、晶体、电源管理——集于一体。不需要成为射频专家。只要通过SPI连接到ESP32,你就完成了大部分工作。

引脚连接:

•DWM3000 → ESP32

•VCC → 3.3V (not 5V!)

•GND → GND

•SCK → GPIO18

•MOSI → GPIO23

•MISO → GPIO19

•CS → GPIO4

•RST → GPIO27

•IRQ → GPIO34(可选但方便)

它是如何工作的

从概念上讲,它比听起来简单。在已知位置放置三个锚点,然后标签使用双面双向测距(DS-TWR)与每个锚点通信:

•标记ping锚1

•Anchor 1 responds

•标签发送另一条消息

•Anchor replies with timing

•重复锚2和锚3

每个交换以纳秒的精度测量往返时间。有了三个点之间的距离,你可以用三边测量法来计算位置,基本上就是圆相交。

DS-TWR还补偿了设备之间的时钟差异,这就是为什么它比简单的方法更准确。

我把三个锚定在一个三角形上:

•锚1:左下(15.5)厘米

•锚2:右下(290,5)厘米

•锚3:顶部中心(165,625)厘米

这些坐标很重要,它们需要与Python可视化使用的坐标相匹配。每个锚运行相同的固件,但获得唯一的ID(1,2,3)。代码基本上是一个状态机:等待请求,以精确的时间响应。简单、坚固、可靠。

标签的固件

标签完成了有趣的部分。它连续地在三个锚点之间循环:

我使用中值滤波,因为原始UWB数据可能有噪声。最后50个测量值的滚动缓冲,中值消除了异常值,但保持了响应。一旦标签有了所有锚点的新距离,它就会将所有内容打包成JSON并通过WiFi发送。距离,信号强度,定时,时钟偏移,都在里面调试。

可视化

在PC端,Python处理它:

•TCP服务器接收标签数据

•通过scipy的三边数学

•在平面图上实时标记地块

平面图是背景,锚是三角形,标签是一个移动的红点,信号强度漂浮在每个锚的上方。看着它移动和实时更新是非常令人满意的。

使其运行

1. Flash ESP32s:

•三个锚(id 1-3)

•一个标签,更新WiFi证书

2. 定位硬件:

•在选定坐标安装锚

•一切通电,标签开始自动定位

3. 启动Python脚本:

•安装依赖项:matplotlib, scipy, numpy

•更新IP,将平面图放入文件夹,运行脚本

4. 移动标签:

•更新~每100毫秒

•蓝色的痕迹显示历史

•RSSI表示信号质量

真实的表现

精度:在良好条件下始终保持10-15cm。

好设置:

•视线清晰

•稳定的锚

适当的天线延迟校准(16350适用于我)

坏的设置:

•吊牌和锚之间的金属物体

•移动的锚

•电源噪声

•天线失调

超宽带处理多径比大多数要好,但大型金属表面偶尔仍会干扰读数。

改进空间

•为可靠性/ 3D增加第4个锚

•为多个标签实现TDoA

•Web界面而不是matplotlib

•使用RSSI检测NLOS

•优化电池使用功率

DWM3000可以处理所有这些,它主要是固件工作。

麻烦吗?

•天线延迟校准:耗时太长。16350适合我;测试你的。

•WiFi干扰:流量过大会减慢更新速度。把测距和网络分开。

•电源:使用干净的3.3V与去耦帽。

•坐标系统:Python脚本和锚点位置必须匹配。我花了一个小时翻转Y坐标。

为什么超宽带很酷?

•低功耗:电池休眠模式

•安全:内置防欺骗

•Fast:以毫秒为单位

•可伸缩:如果是mac管理,则有许多标签

•不完美:需要视线,校准,比蓝牙更贵。但在精确的室内定位方面,无人能敌。

最终的想法

说实话,这比我想象的要简单。DWM3000是一个完整的模块是一个救星。最难的部分是计算时间和奇怪的WiFi问题。

如果你尝试,建议:

•从基本的测距示例开始

•先用一个锚钉定位

•调试时记录所有内容

•在移动到真实空间之前,在一个开放的区域进行测试

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭