定位基站的固件设计

定位基站使用RTOS,因为程序比较复杂,如果不使用OS,各功能间的协调比较困难。

定位基站与标签、定位基站与定位基站之间的UWB通讯,我们定义了几种数据包。主要有时钟同步包(用于基站之间的时钟同步)、基础定位包(只包含最基础的定位功能)、扩展定位数据包(包含电池电压、按钮信息、三维加速度计信息等)。后期我们还增加了TOF辅助定位数据包等等。

与定位引擎之间的通讯,我们也定义了几种数据包。基本上,基站就只是把收到的UWB数据转发给定位引擎。当然,需要做一些必要的数据转换,例如使用标准时间戳等。理论上,时钟同步数据包是没有必要发送到定位引擎的,我们也支持把时钟同步包发送到定位引擎,这有助于对时钟同步情况进行监控。

定位基站有一个重要的功能是时钟同步。至少要保证一个“定位区域”内的几个基站之间有统一的时钟。并且,因为各个DW1000芯片使用的晶振的频率会有细微的差异,所以时钟同步工作需要经常性的进行,否则时钟的差异会积累得越来越大。

DW1000芯片可以配置一些参数,以适应不同的使用环境。我们开发了一个基站配置程序对基站进行配置。例如对基站的一些功能、使用的UWB频道、基站的IP地址、网关等等参数进行设置。基站配置程序使用Delphi7开发的,与基站之间使用网络进行通讯。

基站配置程序还内置了新版的基站固件,可以对基站对固件进行升级。

版权所有

本站文章均为原创,版权属 Zhang Xiaolong 所有。

所有人可以转载,但必须注明出处以及作者信息。