随笔分类 - DWM1000 Official
DWM1000 Official source code
摘要:背景: 在前面两个博文中已经提及到,我们打算做一个UWB 结合运动传感器 融合定位,这篇博文实现上位机代码,上位机使用我们之前开源Python版本TWR上位机,代码可以在末尾论坛链接下载 我们的上位机实现基础是之前的《[开源项目] 蓝点无限 UWB Python版本上位机》,参考链接 https:/
阅读全文
摘要:在前面两个博文中已经提及到,我们打算做一个UWB 结合运动传感器 融合定位,这篇博文实现固件代码,代码git 链接参见本文末尾。 我们的固件实现基础是之前的《TWR算法-多基站多标签固件》,参考链接 https://www.cnblogs.com/tuzhuke/p/15170219.html 再此
阅读全文
摘要:接上一篇https://www.cnblogs.com/tuzhuke/p/15196091.html,继续分享MPU9250 一个运动检测功能。 如果没有阅读上篇,建议从上篇开始。 使用MPU9250 通常会读取9轴数据,或者DMP 四元数据,而我们这里使用的是一个运动检测功能, Wake-on-
阅读全文
摘要:UWB定位,不论是TWR 还是TDOA,实质都是基于电磁信号空中飞行时间(TOF),然后换算成距离,通过软件算法获取被定位坐标。 电磁信号,收到干扰和遮挡等会出现定位误差再说难免。 而结合运动传感器进行数据融合则是对UWB定位误差的一个动态补偿。 目前运动传感器封装小,易于集成,已经很多实际项目采用
阅读全文
摘要:BP30 是我们推出的一款高性价比UWB开发板。目前有测距和定位两套代码。 BP30 测距代码是基于我们自己开发的代码框架完成的,近期对代码重新整理,添加详细的中文注释,除去多余无用代码。 准备在此记录一些,分享给准备学习UWB的新手小白。 代码开发环境:MDK5, 主控单片机:STM32F401
阅读全文
摘要:最近使用我们的多基站多标签框架发现某些标签的距离信息在上位机显示有问题。 实际有3个基站,Anc 0 和 Anc3 的距离信息应该一样。目前Anc 0 和 Anc 1 距离信息明显有问题。 固件代码配置: //#define RX_NODE #define TX_NODE #ifdef RX_NOD
阅读全文
摘要:随着UWB越来越热,越来越多小白加入到这个队伍里,我们录制了一个小视频,总结常见几个小白问题,供初学者扫盲视频链接:https://v.youku.com/v_show/id_XNDU4ODAyMjc0MA
阅读全文
摘要:在之前的分析过一种快速测距方法原理:https://www.cnblogs.com/tuzhuke/p/12359038.html 这里做代码实现。 测距分为设备A 和 设备B,与原理部分NodeA NodeB对应。 代码中,设备B,也就是NodeB,启动发送。 NodeB:将之前的两个时间戳加载到
阅读全文
摘要:UWB测距官方提供的方法是通过三条信息获得两个模块距离,这里介绍一种简单的,快速测距方法。 这种测距方法适合少量节点,连续测距。使用该方法,STM32F103C8T6 最大实现测距频率超过1Khz 测距原理: 1 节点A 和节点B连续通信 2 在某一个时间,节点A能够知道之前信息的发送和接收时间,例
阅读全文
摘要:在之前博文开源一套uwb 框架,后面几篇博文会基于这个开源框架进行简单开发。 让uwb使用者更清楚了解基于这个basecode 开发工作。 信号强度指示RSSI,在zigbee中可以用来实现定位,虽然在UWB不需要RSSI来定位,但是可以通过这个指标判断信号的质量。 常用引用场景: 多基站定位中根据
阅读全文
摘要:在之前博文开源一套uwb 框架,后面几篇博文会基于这个开源框架进行简单开发。 让uwb使用者更清楚了解基于这个basecode 开发工作。 这里所做内容是,采集dwm1000 温度,并发送到另一个节点,另一个节点通过串口打印,也就是这里是一个远程采集温度的工程。当然可以使用主控stm32 采集任何传
阅读全文
摘要:UWB 目前比较火热,不论国内还是国外目前都掀起一股热潮。 但是实际工程代码很少,开源代码更少。 目前代码主要有 1 DecaWave Release的定位源码,代码基于TWR,一个非常大的状态机。 之前在博客进行过分析,对于初学者来说门槛太高。 2 淘宝商家Release的定位源码,大多基于官方基
阅读全文
摘要:许久没有更新TDOA了,近期断断续续编写学习,开始测试TDOA数据。记录如下 1 测试场地,如下所示,4个基站摆放位置是一个正方形,变成为1.6m,被测试标签放置正中心。 2 获得原始数据 将原始数据通过python 进行处理,处理结果如下 时钟误差从-28 到25,+-大约40ps,从数据结果直观
阅读全文
摘要:这里指的TDOA算法,实际是解两个双曲线方程,由于两个二次方程设计东西较多,如果强解,计算量很大,从网上参考了如下链接: 算法推到:https://blog.csdn.net/lpsl1882/article/details/51519303 Matlab实现:https://blog.csdn.n
阅读全文
摘要:在前一篇博文里描述了基站的逻辑部分,这里贴出来具体代码实现。https://www.cnblogs.com/tuzhuke/p/11689881.html 1 Sync 信息部分 2 TAG信息部分
阅读全文
摘要:基站主要 接收同步节点发来的同步信号,代码里定义为S信息。 以及标签节点发来的定位信号,代码中定义为T信号。 代码中使用中断以及帧过滤功能,对模块只接收自己关心设定好的信息,通过中断告知上层,而不是长时间轮训方式。 帧过滤参考博文:https://www.cnblogs.com/tuzhuke/p/
阅读全文
摘要:在博文:https://www.cnblogs.com/tuzhuke/p/11638221.html 中描述了delayed tx实现方法,这里贴出全部delayed tx 代码以及对应验证代码 1 delayed tx 代码 2 delayed tx验证方法 验证方法是把delayed tx t
阅读全文
摘要:TDOA 和 TWR相比,标签可以用最少的信息来定位,但是对于基站要求很高,需要“时间同步”。 这也是TDOA算法的核心部分,很多套件对此讳莫如深,希望能沟通过本文使读者能对TODA同步有一定初步了解。 TDOA实现目的相同,但是实现方法每家各不相同,这里介绍一种简单的时间同步原理。 定位系统中有标
阅读全文
摘要:TDOA 的算法基础就是时间差,根据时间差换算出距离差,后面的数学理论知识就是双曲线交点问题。 双曲线方程是2次方程,解算曲线交点也就是两个2次方程求解。 首先看双曲线定义(百度百科): 双曲线(Hyperbola)是指与平面上到两个定点的距离之差的绝对值为定值的点的轨迹,也可以定义为到定点与定直线
阅读全文
摘要:不论是在TWR 还是TDOA定位算法中,delayed tx 都会用到,这篇博文主要解析delayed tx 实现。 何为delayed tx? delayed tx 是延时发送,为何要延时?因为这个延时可以控制,设定好延时后,可以把延时信息放到数据包中,接收者收到信息后,除了知道接收时间还能知道发
阅读全文

浙公网安备 33010602011771号