UWB IMU融合定位说明
超宽带(Ultra-Wideband, UWB)惯性测量单元(IMU)融合定位是一种将UWB技术和惯性测量单元结合起来,以提供更准确、可靠的位置信息的技术。这种融合定位系统通常用于室内定位、室外定位和混合定位场景,其中传统的全球定位系统(如GPS)可能受到限制或无法提供足够的准确性。
UWB IMU融合定位系统具有实时性和稳定性。IMU提供了设备的实时运动信息,与UWB的距离测量相结合,系统能够追踪物体的运动轨迹,适用于对时间敏感的应用,如工业自动化和虚拟现实。
融合定位在室内导航、人员追踪、仓储管理等领域展现了卓越的适应性。在这些场景中,UWB IMU融合定位系统不受GPS信号覆盖范围限制,保证了定位服务的可用性和稳定性,提高了定位的覆盖率和精度。
另外UWB IMU融合定位系统具备较低的功耗和成本。相较于其他定位技术,它能够在保持高精度的同时降低能耗,适应各种电池供电设备。此外,UWB技术的逐渐成熟和设备的规模化生产也使得整体系统的成本相对较低,为广泛应用奠定了基础。这一系列优势使得UWB IMU融合定位技术成为当今多个领域中理想的位置解决方案。
蓝点UWB IMU融合方案介绍
蓝点UWB IMU融合定位方案通过综合运用先进的UWB技术和9轴运动传感器,以及采用运动检测模式的开源方案,为用户提供了一个可靠、灵活且易于定制的定位解决方案,适用于多种应用场景。蓝点UWB IMU融合定位方案以DW1000 UWB芯片和MPU250 9轴运动传感器为核心,结合运动检测模式,具有以下特点:
1. DW1000 UWB芯片:
DW1000是DecaWave推出的一款高性能UWB通信芯片,具有出色的测距精度和多路径抑制能力。该芯片支持宽带频率,可提供高精度的室内和室外定位服务。其强大的通信能力为定位系统提供了可靠的基础。
2. MPU250 9轴运动传感器:
MPU250整合了加速度计、陀螺仪和磁力计等多种传感器,提供了全面的运动信息。这使得系统能够更准确地追踪设备的姿态和运动状态,为融合定位算法提供了更多的数据支持。
3. 运动检测模式:
运动检测模式有助于优化系统性能,降低功耗,并简化开发难度。通过在设备静止时降低采样频率或进入低功耗模式,系统能够更有效地利用资源,延长电池寿命,并提高系统的整体稳定性。
4. 固件和上位机开源:
开源的固件和上位机使得开发者能够灵活定制系统,满足特定需求。同时,开源社区的参与也促进了技术的迭代和改进。这种开放性有助于推动蓝点UWB IMU融合定位方案的广泛应用和发展。
a. 固件代码,基于STM32,使用MDK开发环境:
在STM32平台上,我们采用MDK(Microcontroller Development Kit)开发环境进行固件代码的编写。MDK提供了一套强大的工具,包括集成开发环境(IDE)、编译器、调试器等,使得在STM32微控制器上进行软件开发更加高效。通过这一开发环境,我们能够充分利用STM32的性能和功能,实现稳健、高效的固件,为UWB IMU融合定位系统提供可靠的底层支持。
b. 上位机代码,使用PyQt开发,可以轻松在多个系统兼容:
上位机的界面采用PyQt进行开发,这是一套强大而灵活的Python库,专为创建图形用户界面而设计。PyQt的优势之一在于其跨平台性,使得上位机代码能够轻松在多个操作系统上运行,无论是Windows、Linux还是macOS。这种兼容性为用户提供了更大的灵活性和便利性,确保在不同环境下都能顺畅运行UWB IMU融合定位系统的上位机界面。
蓝点UWB IMU融合方案测试
1. 使用蓝点官方提供的测试HEX测试
在STM32上使用已经编译好的HEX文件进行快速功能测试是一种高效验证嵌入式系统功能的方法。通过烧录预编译的HEX文件到STM32芯片,开发者可以迅速验证硬件和软件的协同工作。这种测试方法特别适用于迭代开发过程中,能够迅速评估新功能的正确性和性能。
蓝点无线提供测试HEX,可以让用户专注于UWB定位和IMU融合,为开发者提供了便捷而高效的测试解决方案。这些测试HEX文件旨在简化UWB定位和IMU融合功能的验证过程,使开发人员能够快速评估其在不同场景下的性能。
测试步骤:
1. HEX下载
使用ST官方工具ST utility 工具,分别给基站和标签下载测试HEX,定位系统中基站有4个,对应地址分别为0x0001至0x0004,标签有一个,地址为0x0005,标签上有IMU传感器MPU9250.
2. 串口原始数据检查
step1. 使用串口线连接基站0x0001,打开电脑端串口工具。
step2. 给4个基站和1个标签全部供电
step3. 检查电脑端串口工具是否收到有效数据,数据格式如下:
3. 布设基站
根据场地大小,将4个基站放置在场地上,组成一个矩形,矩形长宽比尽量保持1:1,不要非常长条状的定位区域。保持基站0x0001 使用串口连接到电脑上。
4. 标签放置
将标签于4个基站组成的区域内,标签的定位区域为基站组成区域内,边界或者区域外都可能无法准确定位或者无法成功定位。
5. 启动上位机
将蓝点UWB配套的上位机在电脑端打开,提前关闭电脑端串口工具。
首先根据实际基站放置的位置,配置上位机的坐标,坐标为相对坐标,但是基站之间的位置比较准确,基站实际距离需要借助米尺或者激光测距仪先获得距离。
然后在蓝点UWB定位软件选择对应的串口号,然后点击打开按钮即可定位。
2. 使用蓝点官方提供的源码自行编译下载测试
1. 文件组织结构
固件有三个文件夹
BP-UWB_LIB ---> 公共库文件
STM32F1_UWB ---> 基站工程文件
STM32F4_UWB_PA ---> 标签工程文件
2. 基站编译
a. 使用MDK 交叉编译工具打开"STM32F1_UWB\MDK-ARM"目录下51UWB_F1.uvprojx
b. 在bphero_uwb.h 头文件配置基站信息,将#define RX_NODE前的注释去掉,然后配置SHORT_ADDR,以此配置0x0001到0x0004,完成4个基站的编译
3. 标签编译
a. 使用MDK 交叉编译工具打开"STM32F1_UWB\MDK-ARM"目录下51UWB_F1.uvprojx
b. 在bphero_uwb.h 头文件配置基站信息,将#define TX_NODE前的注释去掉,然后配置SHORT_ADDR,以此配置0x0005,完成标签的编译,另外注意由于使用IMU融合定位。
需要将IMU_ENABLE前的注释去掉,而且由于标签没有液晶接口,需要注释掉
其他测试步骤与用HEX下载方式一致,请参考上面的描述。
蓝点UWB IMU融合方案视频演示
UWB 和 运动传感器 数据融合定位软件实现以及室内测试_哔哩哔哩_bilibili