基于超宽带技术的室内无线定位系统设计

2020-10-27 06:10胡天宇胡新宇
湖北工业大学学报 2020年5期
关键词:定位精度字节基站

许 万,涂 拓,胡天宇,胡新宇

(湖北工业大学机械工程学院,湖北 武汉 430068)

室内无线定位技术主要有WIFI、ZigBee、蓝牙[1]、射频识别(Radio Frequency Identification)、超声波、超宽带(Ultra-wideband,WB)等技术[2]。其中:WiFi技术[3]信号实时性差,定位精度不高,抗干扰能力不强,周边的其他信号容易对其造成干扰;Zigbee技术[4]定位精度不高,一般在5 m左右,数据堵塞现象严重,对于系统正常运行影响大;射频识别技术[5]抗干扰能力差,设施设备施工难度较大,维护成本高,系统不稳定;超声波技术[6]采用的是反射式测距,信号衰减严重,以致严重影响定位的范围;UWB技术[7]通过在很宽的频谱范围上传输一连串极窄且能量很低的脉冲信号,实现低功耗信号传输,其产生的干扰较小,而且可检测的概率很低,具有极强的抗多径衰落能力[8-9],有利于在室内复杂多径环境中进行实时定位和动态数据收集,是目前室内定位的研究热点[10]。UWB技术多种定位方式,如利用信号接收器到周围信号发射器的信号强度来判断标签的位置[11],和采用信号到达时间来确定目标节点位置坐标[12],但这些方式均存在定位精度较低的问题。因此,本文针对室内复杂的定位环境,基于三边定位算法的相交质心定位算法建立UWB室内无线定位系统。

1 系统整体设计及定位原理

1.1 整体系统设计

UWB无线定位系统分为三个部分:定位基站、定位标签和上位机软件。定位系统的整体结构如图1所示。

图1 UWB无线定位系统

图1中,基站和标签的硬件部分为一体化硬件板,通过使用拨码开关的方式实现基站和标签模块之间的切换。主基站将带有时间戳和帧序号等信息数据包发送给上位机,上位机软件接收数据包,通过解析接收到的信息进行算法处理,得到基站和标签的位置坐标,并将基站和标签坐标可视化显示出来。

1.2 定位原理

信号达到时间 (TOA)定位算法是一种基于信号达到时间的测量距离的定位方式,具有实现简单、定位精度高而且不需要基站与标签之间时钟严格同步等特点,是通过测得信号在标签与基站之间的飞行时间得到标签与基站之间的距离(图2)。

图2 三边测量定位方法

图2中,A0(x0,y0),A1(x1,y1),A2(x2,y2)分别为3个基站的坐标位置,T(x,y)是标签的坐标位置,R0,R1,R2分别为标签T到3个基站的距离。以A0,A1,A2为圆心,以R0,R1,R2为半径值作圆,理想状态下以A0,A1,A2为圆心的圆会相交于一点,这个点的坐标即标签位置坐标。根据圆的相交关系,建立非线性方程:

式中,x0,x1,x2,y0,y1,y2,R0,R1,R2,都是已知值,仅有x,y是未知值,因此,可使用最小二乘法对标签位置T(x,y)进行求解。

首先假设有n个基站,基站的坐标为(xi,yi) (i=1,2,…,n),标签坐标为(x,y),各基站与标签的测距值为Ri(i=1,2,…,n)。依据三边测量定位算法对于标签位置进行求解,建立方程:

将所有方程与最后一个方程相减,得到一个新的方程组:

AX=b

其中:

引入测距误差N,可得

AX+N=b

式中,N表示n-1维随机误差向量。

使用最小二乘法估计式:

XLS=(ATA)-1ATb

在实际的定位过程中,考虑到环境噪声、人工测量等因素引起的测距误差,有必要将每个基站的测量值指定一个权值,以此来提高定位的准确性。引入一个加权矩阵

可以得到加权后的最小二乘估计式:

XLS=(ATWA)-1ATWb

当测距误差与测量距离之比符合独立分布的高斯随机变量条件(即W=R-1)时,XWLS的均方差误差值最小,其中R表示测距误差的方差矩阵。

上文使用三边测量定位均假设在理想状态,此时以基站A0,A1,A2为圆心,以R0,R1,R2为半径值作的圆交于一点,在实际测量的情况下存在多径效应以及非视距等,往往会使测量的距离值比实际距离值要大,此时以A0,A1,A2为圆心,以R0,R1,R2为半径值作的圆并不会恰好相交于一个点,而是会交于一个区域(图3)。

图3 三圆相交情况

为了让测量标签位置坐标与实际的标签位置更加接近,使用基于三边测量定位的加权相交质心定位算法,即由3个基站为圆心,以3个基站到标签的距离为半径值作的圆相交区域的质心位置坐标,就是标签的位置坐标。

根据3个圆相交情况,对于图3中F点可得

同理,通过解方程组,可以解出另外两个相交点D,E的坐标。

在几何学中,多边形顶点位置坐标的平均值被视为质心的位置坐标。前文分别以3个基站为圆心,以基站到标签的距离为半径值作的圆,相交于3个点。以这3个点作为三角形的3个顶点,将三角形的质心坐标作为标签的位置估计值,则标签坐标(x,y)可表示为:

基站距离标签的位置越远,其测距误差会越大,对标签坐标的精度会有较大的影响,也就是说,距离标签越近的基站,其测量值应在计算(x,y)时占据更大的权重,从而进一步提高质心估计值的准确性。

2 硬件系统

2.1 硬件模块

本文设计的硬件模块由微控制器模块、UWB无线收发模块、电源模块、LED指示模块、拨码开关和复位电路等5个部分组成。微控制器采用基于ARM Cortex-M 内核STM32系列的32位的微控制器STM32C8T6芯片,UWB无线收发模块采用爱尔兰公司Deca-wave公司的DWM1000芯片。硬件组成如图4所示。

图4 硬件系统组成

微控制器STM32芯片与UWB模块通过SPI通讯,实现对UWB模块的控制和状态读取,完成测距信息的采集和传输;UWB模块负责无线信号的收发;晶振电路产生原始的时钟频率为主控芯片提供时钟信号;拨码开关用来切换基站标签模式;复位电路控制主控芯片在上电或复位过程中的复位状态;电源为主控芯片以及UWB收发模块持续提供电流。

2.2 UWB无线收发模块设计

本文采用的无线收发模块DWM1000是由Deca-wave公司生产的芯片,物理层协议为IEEE 802.15.4。该芯片具有高数据传输率、低功耗、抗干扰能力强、隐蔽性好、安全性高等特点。DWM1000与主控芯片的连接方式如图5所示。

图5 DWM1000连接方式

DWM1000与MCU通过SPI协议进行通讯,并通过SPI接口对DWM1000进行UWB信号收发和工作模式的控制,所以DWM1000与MCU的连接只包括用于中断请求的IRQ和与SPI接口相关的SPICLK、SPIMISO、SPIMOSI、SPICsn。

3 软件设计

UWB无线系统的软件模块主要分为测距并上传数据和接收数据并处理数据。前者通过DWM1000的API函数接口,编写微控制器的程序,实现对UWB信号的接收和发送,根据接收到的时间戳信息,计算出基站到标签之间的距离,最后是用串口将距离上传给上位机,后者可视化显示标签和基站位置及坐标。通信帧流程如图6所示。

图6 通信帧流程

3.1 通讯帧格式

UWB通信是基于发送和接收的通信帧,其物理层协议为IEEE 802.15.4,通信帧格式如图7所示。

图7 通讯帧格式

通讯帧分为Preamble,SFD,PHR和Data四个部分,而按照协议的构成,又可以分为PHY层和MAC层,PHY层包括Preamble,SFD以及PHR。MAC层中的协议数据单元包括5个部分:帧控制域、数据序号、地址信息、帧有效载荷、帧校验序列。

Preamble(前导码),也叫帧引导序列,是发送有用信息前的一串信号,可以将其理解为消息帧的防伪标识。它将提示接受芯片,随后发送的是有用信息,以免接受时丢失信号,一般用四个字节的常量0X00。SFD(start of frame delimiter,帧开始定界符),用于说明前导码部分已经结束,开始发送有效信息,一般为一个字节的常量0XA7。PHR(PHY header ,物理头),在使用有效信息之前,定义一帧数据的长度,记录的值不包含该值本身的字节长度,但包含MAC协议数据单元中的帧校验序列的字节,开始此部分的发送时,DWM1000将会开始记录该时刻的时间戳。

(4)Data(数据单元),存放通信中的有效信息,包括时间戳、距离值等数据,可以携带127个字节的信息。

3.2 数据帧格式

数据帧中包含时间戳、距离、帧序号等信息,上位机通过对这些信息的解析和处理得到标签的位置坐标。数据帧的具体格式以及IEEE 802.15.4 标准编码方式如图8、图9所示。

图8 数据帧格式

图9 IEEE 802.15.4 标准编码

数据帧由7部分组成:1)第0、1字节,框架控制字节(Frame Control),用于定义数据帧的一些基本配置,例如地址长度、格式等,通常是用常量填充;2)第2字节,序列号(Sequence Number),相当于数据帧的编号,它会随着发送的帧数递增;3)第3、4字节,PAN ID,是基于应用定义的常量,其值为0XDECA;4)第5、6字节,目标地址(Destination Address),其值是唯一的,在程序代码中指定数据帧要发送的目标地址;5)第7、8字节,源地址(Source Address),同目标地址一样,可以在代码中指定接受的数据帧的源地址;6)从9字节开始,测距信息(Ranging Message),字节长度可以自由定义,用于存放测距值;7)最后两个字节,前面数据都存放完后,帧校验序列由DWM1000的硬件自动计算并添加。

3.3 通信流程

本文使用三基站一标签的定位系统,通信流程包括:1)标签向基站发送POLL数据帧,并记录发送的时间T1,基站负责接收POLL数据帧,并记录接收时间T2;2)基站延迟发送Response数据帧,并记录发送时间T3,标签负责接收Response数据帧,并记录接收时间T4;3)标签发送Final数据帧,并记录发送时间T5,基站负责接收发送Final数据帧并记录接收时间T6。

通过处理标签和基站的发送时间和接收时间,可以得出信号在标签和基站之间的传输时间,并将这个传输时间乘以传输速度,就可以得到标签分别与3个基站之间的距离值。传输流程如图10所示。

图10 传输流程

图10中:

4 实验与讨论

4.1 实验器材及环境

测试环境选取4.8 m×6 m的室内环境,实验的硬件(图11)包括4个定位模块:用于供电的电源模块,USB-type-A转micio-USB模块,以及TTL转USB模块。其中电源模块通过USB-type-A转micio-USB给定位模块定位,TTL转USB模块将数据上传给上位机。

图11 硬件设备

搭建的室内定位环境(图12)。3个基站分别布置在4.8 m×6 m区域的四周,每个基站之间的距离在1 m以上,标签距离每个基站的距离也在0.5 m以上[12],基站A0通过USB线与电脑的虚拟串口连接。

图12 测试环境

4.2 静态试验

测试静态环境下UWB无线室内定位系统的定位精度。将标签分别放置在20个不同测量点,进行视距(LOS)环境和非视距(NLOS)环境下的测试。测量点分别为:三基站组成的三角形内部、三基站组成的三角形边上、三基站组成的三角形外部(图13)。

图13 测量点分布

为了模拟NLOS环境,使用长方形箱体进行遮挡(图14),这种严重信号干扰的NLOS环境,对测量精度有较大影响。

图14 NLOS环境

每个测量点的定位数据是由上位机获取的,取一个时间段中的测量值,将这个时间段中的测量值取平均值作为测量点的定位坐标,记录所有点的坐标,并分析静态环境下的定位精度。测量的定位坐标点分布如图15所示。

图15 测量的定位坐标点分布

实验结果表明:LOS环境下,测量精度较高,测量误差可达到8 cm左右,即达到厘米级别定位精度;在NLOS环境下,测量精度较低,测量误差在35 cm左右。

标签定位精度在上位机中显示对比如图16所示。

图16 标签定位精度在上位机中的显示

结果表明:在LOS环境下,上位机中标签位置点的坐标比较准确,标签重复定位误差可以达到5 cm左右;在NLOS环境下,上位机中标签位置的误差会较大,标签重复定位误差可以达到30 cm左右。

表1 静态定位误差分析 m

4.3 动态试验

使用如图17所示的全自动小车作为定位目标,将标签固定在小车车身上,通过控制小车的运动来测试UWB在动态环境下的定位精度。

图17 全移动小车

控制小车以2 m/s的速度在室内环境下匀速直线行驶。由于小车车身上较多的零部件会对定位造成干扰,因此可认为是NLOS环境。让小车分别沿x轴方向和y轴方向行驶,其行驶轨迹在上位机上显示见图18。

图18 小车行驶轨迹

小车初始位置由人工摆放,会有一定的误差,所以小车的真实行驶轨迹不完全平行于坐标轴,而是与坐标轴有一定偏角。

对小车的行驶轨迹和定位误差分析如图19所示。

图19 小车的行驶轨迹和定位误差

图19表明:小车沿X轴方向运动时,轨迹误差最大值小于30 cm,平均误差在15 cm左右;沿Y轴运动时,轨迹误差最大值小于12 cm,平均误差在10 cm左右。小车在运动时,人工校直、路面情况、环境噪声等因素都会对小车行走产生影响,导致额外的定位误差。以上因素对动态定位的影响大约在5 cm左右,因此,定位系统的直线动态定位误差在10 cm左右。

5 结论

本文从定位原理、硬件模块、软件模块这三个方面进行研究,搭建基于UWB的室内无线定位系统。以STM32芯片作为主控芯片,DWM100作为无线收发模块;基于三边定位算法,运用相交质心定位算法,设计了定位软件,并在上位机上可视化显示出标签和基站的位置坐标。实验结果表明:在LOS环境下,静态定位精度可达到8 cm,动态定位精度可达到10 cm左右,相较于文献[16]的室内无线定位系统所获取的目标节点坐标与实际坐标误差,本文的定位精度提升了33.3%~46.7%。此外,本文还在NLOS环境下进行了实验,NLOS环境下定位平均误差在35 cm以内。

猜你喜欢
定位精度字节基站
北方海区北斗地基增强系统基站自定位精度研究
小米8手机在城市环境下的单点定位精度研究
基于NETMAX的基站网络优化
No.8 字节跳动将推出独立出口电商APP
Galileo中断服务前后SPP的精度对比分析
5G基站辐射对人体有害?
5G基站辐射对人体有害?
No.10 “字节跳动手机”要来了?
GPS定位精度研究
GPS定位精度研究