王 鹏,方 震,夏 攀,陈贤祥,杜利东,赵荣建
(1.中国科学院空天信息创新研究院 北京 100190;2.中国科学院大学 北京 100049)
移动健康监护系统在医院或养老院等场景中具有很广阔的应用前景[1-3]。在医院中,有些病人的病情需要被长期监测,传统的方法是医疗监护人员依靠病房内固定的医疗设备定时监测,这种方法对病人的行动能力有一定限制。在养老院中,也有同样的问题,随着年龄的增长,大多数老年人都有一些典型的老年病,其中有一些慢性病需要被长期监测[1]。但是在一些特殊的环境中,如需要对患有视力障碍病人的病情进行监护而不想限制其行动能力时,不仅需要对其身体状态进行监测,也需要进行实时辅助定位与导航[4]。或针对一些大型建筑物、仓库、大型舰艇内部的突发情况,如火灾、地震等,消防员进入现场进行救援,其身体状况和具体位置也需要被实时监测,以便更好地保障消防员安全,指挥救援工作[5]。
很多研究机构对基于无线传感器网络的移动健康监护系统进行了研究:文献[6-7]在2004 年,设计并实现了“CodeBlue”无线健康监护系统,可以实现对用户的心电图(electrocardiogram, ECG)、心率、血氧的远程监测;文献[8]在2006 年,针对家庭环境设计了基于成熟 MICAz 传感器网络的“ALARM-NET”系统,用以监测居住环境中人员的身体状况;文献[9]于2010 年设计了1 种无线临床监护系统,并进行了长期临床测试,结果表明无线传感网络对于病人病情的持续监测具有可行性;文献[10]于2012 年针对老年人健康问题,提出了“ViCare”系统,用以持续监测老年人的生理参数及活动状况;文献[11]于 2015 年,提出了1 种基于轻量级路由算法的无线健康监护网络系统,支持移动状态下生理参数测量。
以上健康监护系统都可以覆盖大面积建筑物,但是都没有提及室内定位功能;然而针对一些具体应用场景,如大型仓库或舰艇中的突发事故、养老院中老人的紧急护理等,需要及时获知受困人员或病人的位置及身体状况。文献[2]通过调研发现,室内定位系统在上述场景中的应用仍是1 个未被完全探索的领域;但随着可穿戴健康技术及室内定位技术的发展,这一问题有望得到解决。室内定位应用到上述场景中时,也需要达到一些具体的限制条件,文献[1]通过调研,提出了定位精度、覆盖面积和更新频率等具体要求。有很多无线技术可用于室内定位,如无线保真(wireless fidelity, WiFi)、蓝牙(blue tooth, BT)、紫蜂(zigbee, ZB)等;而超宽带(ultra wide band,UWB)技术,由于其高频段宽带宽的优异特性,对室内多径干扰具有很好的抑制能力,故被很多研究者用于室内定位场景中[12-14]。然而这些系统进行实验的场景都比较有限,通常是在1 个小空间内进行实验的,并不具有实用意义[15-16],而且将UWB 定位技术应用到健康监护应用场景的研究也很少。
针对上述问题,本文提出1 种用于移动健康监护的超宽带室内定位系统设计方法,该系统由固定在墙壁上的多个定位锚节点和佩戴在被监护者身上的可穿戴监护设备组成。将全球卫星导航系统(global navigation satellite system, GNSS)中的几何精度衰减因子(geometric dilution of precision,GDOP)引入室内定位系统中,通过GDOP 的仿真结果,选择定位锚节点最佳安装位置,随后定位锚节点自主连接组成多簇树状网络,该网络兼具室内定位和数据传输功能。通过分析定位过程,将传统的对称双边双向测距法(symmetrical doublesided two-way-ranging method, SDS-TWR)及扩展卡尔曼滤波法(extended Kalman filtering, EKF)简化为双边双向测距法(double-sided two-wayranging method, DS-TWR)及线性卡尔曼滤波法(Kalman filtering, KF),使其更适合集成在弱算力的嵌入式系统中。
该系统结合UWB 室内定位技术和生命体征监测技术,为覆盖大面积楼宇区域,整体设计如图1 所示。
将大空间分割为多个定位簇空间,在单个定位簇空间内,利用GDOP 仿真结果合理分布4 个定位锚节点,锚节点固定在墙壁或天花板上。该空间内待定位的目标节点佩戴在使用者身上,定时测量与4 个锚节点的距离信息,同时测量人体生命体征信息。通过选择1 个位置最佳的锚节点作为路由锚节点,同时作为簇头,与其他簇空间的簇头相连接,所有的簇头都通过交换机连接在协调器上,最终形成1 种多簇树状网络,将定位信息及生理参数信息传输至监控终端,以供监护人员查看。
图1 室内定位与健康监护系统示意图
图2 硬件系统
该系统的硬件整体设计如图2(a)所示,包括通信与定位设备和生命体征监测与定位设备2 部分;图2(b)为实验原型设备。由于通信与定位锚节点固定在建筑物的墙壁或天花板上,只需要具有通信、定位、报警功能即可,所以其结构可简化,而生命体征监测与定位设备,不仅需要包含通信与定位设备的所有功能,而且需要集成各种生物传感器,功能复杂。因此将通信与定位信标设备设计为底座,将生命体征监测与定位设备设计为扩展板,通过串口与底座相连接,扩展板采集传感器数据,通过串口将数据传输给底板,底板负责数据处理和无线通信。UWB 定位锚节点和目标节点选用达卡韦弗(Dacawave)公司的DWM1000 UWB定位模块,该模块兼容IEEE 802.15.4-2011 标准,工作频段覆盖3.5~6.5 GHz,对室内多径干扰具有较好的抑制作用,生物传感器选择SHF7072 和AFE4490,可以测量人体 ECG、光电容积描记(photoplethysmography, PPG)信号,并进一步解析出呼吸、脉率、血氧饱和度等生理参数。所设计的实验原型设备如图2(b)所示。
基于UWB 的室内定位方案,须在室内部署一定数量的固定的锚节点,定位锚节点须固定在室内的墙壁或天花板上,锚节点的数量和分布位置对定位精度有很大影响。从GNSS 的研究结果来看,不同的卫星分布结构对地面用户的定位精度影响可以用GDOP 来表示[17-18]。GDOP 与定位误差正相关,等级划分如表1 所示[18]。因此,将这一概念引入室内定位场景中以确定锚节点的数量和安装位置。
表1 GDOP 等级划分表[18]
由于室内环境的多径干扰,待定位目标节点和N个锚节点之间的距离的测量值中包含误差,这时目标节点和锚节点之间的距离为
式中:ri为目标节点与第i 个锚节点之间的真实距离;Di为测量距离;C 为电磁波在空气中传播的速度;∅为时间误差;(xi,yi),i =1,2,…,N为第 i 个锚节点坐标;目标节点的坐标设为(x,y)。2 维空间内的定位误差设为Δri,可以分解为2 个坐标轴上的坐标误差(Δx,Δy),将式(1)进行泰勒展开,只保留1 阶项可得
将式(2)表示为矩阵形式,即
求解定位坐标误差δ,由最小二乘法得
设
则由文献[18]中GDOP 的概念得
基于以上室内环境下GDOP 公式的推导,利用软件分别仿真不同形状的室内环境下,不同锚节点布局方案的GDOP 值,比较不同的方案,为实际布局提供理论基础。考虑实际定位环境及设备成本,分别在10 m×10 m 正方形区域和10 m×5 m 长方形区域内,仿真3 锚节点对角安装、4 锚节点对角安装、4 锚节点对面安装方案,仿真结果如图3、图4 所示。由仿真结果可知,4 锚节点对角安装方案的平均GDOP 值在2 种定位区域中都是最小的,因此在实际实验时选择此方案布局锚节点。
图3 10 m×10 m 正方形区域仿真结果
图4 10 m×5 m 长方形区域仿真结果
锚节点部署完成后,目标节点进行室内定位时,首先需测量与各个锚节点之间的距离。传统的测距方法为基于到达时间(time of arrival, TOA)法的对称双边双向测距法(SDS-TWR)[19-20],如图5所示。目标节点发起测距请求后,转换为接收状态,处于接收状态的锚节点接收请求并返回应答,随后向目标节点发送新的测距请求,目标节点接收到请求后返回应答。整个过程在2 个节点之间共发送5 次数据包,共进行了4 次测距,产生4 个时间间隔即T1、T2、T3及T4,测距结果表示为
式中D 为目标节点与锚节点之间的距离。采用平均测距结果,可以减小由于某次测距误差过大对实际测量结果造成的影响。本系统中对SDS-TWR方法进行改进,将锚节点的返回应答和测距请求信息合并为同一组信息,将整个测距过程发送的数据包数量减少为4 次,改进后的DS-TWR 测距方法如图6 所示。这样处理的好处在于可以缩短1 次测距的时间,增加单位时间内的测距频次,同时节省锚节点的能量,满足低复杂度要求。
图5 对称双边双向测距法(SDS-TWR)
图6 双边双向测距法(DS-TWR)
在视距环境下的UWB 测距,其测距精度主要受限于UWB 芯片所使用的晶振精度。因此引入时间测量误差,假设目标节点和锚节点的时钟偏移量分别为eA和eB,时钟漂移量为1×10-6,同时将式(8)经过变换后可表示为
则测距误差可表示为
由式(10)可知,测距误差与设备的时钟偏移量有关。假设设备使用的晶振的时钟偏移为20×10-6,目标节点与锚节点相距100 m,则到达时间约为333 ns,到达时间误差约为6.7 ps,产生的测距误差约为2.2 mm,误差达到毫米级。因此通过选择精度高的晶振,可使得DS-TWR 具有很小的视距测距误差。本文使用的实验设备所采用的晶振的时钟偏移为20×10-6。
将单个簇空间内的室内定位系统简化为如图7 所示的数学模型,设4 个锚节点的坐标分别为(x1,y1)、 (x2,y2)、 (x3,y3)、 (x4,y4),为方便表示,统一表示为(xi,yi),i =1,2,3,4。目标节点的坐标未知,设为(x,y)。这样,标签节点到第i 个锚节点的距离可以表示为
为解算出目标节点的坐标,通常采用最小二乘法[19-21]。最小二乘法以最小化误差平方和为原则进行方程求解,但最小二乘法只能解决线性问题,所以需将式(11)线性化。线性化之后得到
式中:
利用最小二乘法解算得到目标节点的坐标为
图7 定位系统数学模型
UWB 定位数据会受到室内环境的影响,比如多径干扰、人员走动干扰、门窗关闭干扰等,因此需要对得到的数据进行滤波处理。卡尔曼滤波(Kalman filtering, KF)算法是在最小均方误差的准则下,将估计值与测量值进行最佳拟合,是1 种最优线性状态估计方法。传统的室内定位方法中,处理定位数据均采用扩展卡尔曼滤波[22-23]法,原因是将观测方程作为非线性方程处理;但是本文在处理过程中发现,观测方程可以通过适当的变换,变为线性方程,因此本文仍采用线性卡尔曼滤波法处理定位数据。
UWB 室内定位系统的状态转移方程和观测方程为:
将式(16)表示为
通过对比式(14)和式(17),可以得到:
在1.4 节中将式(11)进行变换,可以得出线性的观测方程式(12),观测矩阵H表示为
接下来利用线性卡尔曼滤波处理视距环境下的定位数据,避免了使用扩展卡尔曼滤波需要计算状态转移方程和观测方程的雅可比矩阵的复杂问题,满足低复杂度需求。
由于室内环境比较复杂,而且面积较大,布置少量的锚节点并不能很有效地进行室内定位,某些区域不能测量到锚节点的信号,因此需要根据室内环境布置较多的锚节点,并且尽量布置在视距范围内,以最大限度地覆盖整个室内区域。如图8 所示,本文提出1 种树状分簇网络,将1 个较大的室内环境分割为众多小区域,每1 个小区域作为1 个基本簇单元,包含4 个锚节点(其中1 个是兼具路由功能的锚节点)和若干个待定位节点。4 个锚节点中选择位置最佳的1 个(通常靠近门口)作为路由锚节点,负责下发测距命令,上传数据到计算机,并广播消息,为待定位节点分配时隙,同时作为基本簇单元的簇头,剩余3 个锚节点作为1 级簇成员,接收路由锚节点的命令,对待定位节点发起测距请求。待定位节点作为2 级簇成员,应答普通锚节点的测距请求,并监测佩戴者的生理参数,向主锚节点传输位置信息和生理参数信息。整体无线定位网络由若干基本簇单元组成,可扩展性强,可覆盖大面积楼宇区域。
图8 树状分簇网络结构
为使运动过程中整个数据传输网络不丢失数据,本文设计了“Poll-Ack 消息应答机制”。1 次测距过程完成之后,待定位节点将定位数据和生理参数数据发送给路由锚节点,路由锚节点转发给协调器,协调器收到消息之后,将消息传输给上位机,同时返回应答信号给路由锚节点,路由锚节点再将应答信号返回给目标节点,完成消息发送过程。如果目标节点超过一定时间没有接收到应答信号,则重新发送本次数据,直到发送完成。这样可以保证数据的正确传输,减少丢包率。经测试,1 次测距完成需5 ms,发送完成1 次“测距数据”需8 ms,1 次定位过程包含4 次测距过程,因此,定位频率约为35 次/s,满足实时性需求。
本系统在科电大厦11 层进行实际部署,部署方案如图9 所示,在实验室内及楼道采用GDOP值最小的“4 锚节点对角安装”方案部署8 个锚节点。分别完成2 个实验:实验①,实验人员佩戴“生命体征监测与定位节点”,在区域1 内进行静止状态下的定位误差实验,分别选择72 个待定位点进行测试,每2 个待定位点间距0.8 m;实验②,实验人员在区域1 及区域2 内,按照设定路径以正常速度走动,测试定位系统在运动状态下的定位误差。实验中对锚节点的坐标进行手动量取与设定,采用激光测距仪进行测量,其测距量程为120 m,精度为0.001 m,设定的锚节点坐标如表2 所示。
图9 实验环境部署
表2 锚节点坐标
参考轨迹也利用此设备进行测量,根据实际实验环境设定路径的关键点,测量其坐标,再将关键点依次连接形成参考轨迹,并在地面的参考路径上粘贴黑色胶带,实验者按照此路径行走进行动态定位实验。
静止状态定位实验在图9 中的区域1 中进行,结果如图10(a)所示,定位误差如图10(b)所示。UWB 定位系统在人员静止状态下定位误差最大为0.32 m,平均定位误差为0.16 m。静止状态定位误差累积分布如图12(a)所示。从图12(a)可以看出,其90%的定位误差为0.2 m。实验环境中心误差小、边缘误差大,这是因为边缘更易受墙壁等影响,其结果与GDOP 仿真结果一致。运动状态下人员行走轨迹如图11 所示,其定位误差累积分布函数(cumulative distribution function, CDF)如图12 所示,从图12 可以看出,采用原始UWB数据进行定位,误差较大,其最大误差为1.2 m。将原始数据经过卡尔曼滤波后,可以消除一些误差比较大的定位点,在区域2 中的效果更加明显,定位轨迹更接近原始轨迹,定位误差也减小到0.6 m,已经可以满足移动健康监护对于室内定位系统的精度要求。
图10 静止状态定位误差实验
图11 运动轨迹
图12 定位误差累积分布
本文针对传统移动健康监护系统缺少室内定位的问题,提出1 种用于移动健康监护的超宽带室内定位系统设计方法,在实际环境中,依据GDOP的仿真结果部署并测试了本系统。在理论推导过程中,对传统的SDS-TWR 测距方法进行简化,提出DS-TWR 测距方法,减少了测距过程中消息发送的次数,提高了定位频率,同时也减小了由于系统硬件造成的测距误差,提高了测距精度。采用线性卡尔曼滤波器处理UWB 原始数据,可以有效地减小定位误差。实验结果表明:该系统可以实时检测实验者在室内的位置,定位频率可达35 次/s;在室内静止状态下定位误差最大为0.32 m,行走状态下的UWB 数据经过卡尔曼滤波器后,运动轨迹更接近真实轨迹;动态定位误差最大为0.6 m,相比于原始UWB 数据误差减小50%。在实际楼宇环境中的测试结果表明,该系统可实现较大空间的室内定位功能,可为需要进行室内定位的场景提供参考。