基于ZigBee的盲人室内定位导航及远程监控系统
2016-12-29余凯,赵峰
余 凯,赵 峰
(1.桂林电子科技大学 信息与通信学院,广西 桂林 541004;2.桂林电子科技大学 计算机与信息安全学院,广西 桂林 541004)
基于ZigBee的盲人室内定位导航及远程监控系统
余 凯1,赵 峰2
(1.桂林电子科技大学 信息与通信学院,广西 桂林 541004;2.桂林电子科技大学 计算机与信息安全学院,广西 桂林 541004)
针对盲人行动不便和行动范围受限的问题,设计一种基于ZigBee的盲人室内定位导航及远程监控系统。利用超声波技术、热释电红外技术和语音合成技术,设计出便携装置;通过研究质心定位算法,设计出RBIWCL算法;利用GSM/GPRS技术,设计出与智能终端进行远程通信的方法。结果表明,便携装置能有效检测障碍物并及时提醒盲人,RBIWCL算法提高了定位精度,远程智能终端能实时准确地监控盲人的位置和行动轨迹。
障碍物检测;ZigBee;RBIWCL算法;GSM/GPRS
中国是世界上盲人最多的国家,且每年新增约45万人[1]。由于生理上的缺陷,盲人无法通过视觉直观地获取外界信息,使得他们在学习、生活和工作等方面有着诸多不便,行动能力和行动范围受限,且行动安全无保障。现实生活中,大多数盲人使用普通的盲杖来辅助行走,缺点是只能探测局部障碍物,目的位置和可行路径信息需要事先记忆,耗费体力和脑力。少数盲人使用导盲犬引导行动,缺点是训练周期和适应期长、成本高,易受外界干扰且交流困难,无法广泛使用。为了解决这些问题,开始出现了智能电子导盲技术的研究。使用智能电子导盲系统,盲人可以实时获取行进方向障碍物信息、目的地位置信息和可行路径信息,还可进行人机交互,减少盲人行动负担,提高盲人行动的自主性和准确性。
在获取障碍物信息方面,现有的激光、雷达、微波等技术虽然测量精度较高,但价格昂贵、实现复杂,不适合应用于低成本场合,而超声波测障装置开发成本低、体积小、结构简单且使用灵活。早期的超声波测障装置设计成手仗形式[2],需要握持,不够人性化,改进为穿戴式则更方便[3]。鉴于此,将导盲设备设计成穿戴式,并使用超声波技术和热释电红外技术相结合的障碍物检测方法,满足盲人行动测障场合的需求。在定位和导航方面,现有的系统多使用GPS技术,但GPS设备价格昂贵、特定区域信号差和室内无法接收信号。本设计的应用场合相对封闭和独立,可以使用近距离无线通信技术,而近距离无线通信技术中最常用的ZigBee技术具有通信距离远、成本低、功耗低、节点容量高和网络自组织等优点,因此本系统选用ZigBee技术进行定位导航。在远程监控方面,使用最为普及的GSM/GPRS技术,通过智能终端实时监控盲人位置和行动轨迹。
1 系统总体结构
本系统由便携装置、ZigBee自组网和智能终端3个部分组成。系统总体结构如图1所示。其中便携装置包括ZigBee模块、测障模块、GSM/GPRS模块和语音模块。ZigBee模块的CC2530作为便携装置的主控制器,控制测障模块实现障碍物检测;控制语音模块实现障碍物及路径指引提示;控制GSM/GPRS模块实现与智能终端通信。ZigBee自组网由多个ZigBee模块组成,按照一定的规律和现场需要分散布局在大型室内场所形成自组织网络。当盲人进入该大型室内场所时,自动加入该网络,并实现定位和导航。智能终端可采用电脑、平板和手机等智能电子设备。以手机为例,开发一款APP,下载该大型室内场所的地图后,实时将收到的短信信息转换为坐标位置信息并标记在该地图上,实现远程监控。
图1 系统总体结构Fig.1 The overall structure of system
2 便携装置
便携装置由盲人佩戴于胸前,安装3组超声波收发模块,各模块间成一定角度,用以检测前方2 m内障碍物;热释人体红外模块用以检测前方行人;语音模块使用语音合成(text to speech,简称TTS)技术,将障碍物、目标位置和可行路径信息通过语音方式输出提示盲人;GSM/GPRS模块用于远程通信。便携装置结构如图2所示。
图2 便携装置结构Fig.2 The structure of portable device
2.1 测障方法
超声波测障具体过程为:CC2530产生40 kHz方波信号,经发射驱动模块放大,激励超声波发射探头产生40 kHz正弦超声波信号向空间发射,开启超时定时器和超声波信号收发时间计数器;若超声波信号在2 m范围内未遇到障碍物,超时定时器超时,则判定前方无障碍物;若超声波信号在2 m范围内遇到障碍物,则接收探头将接收到反射回来的超声波信号,并激励超声波接收探头产生40 kHz方波信号,经超声波接收检测模块输出脉冲信号至CC2530,停止超时定时器和超声波信号收发时间计数器,计算超声波信号收发时间;再通过测温模块实时采集环境温度值,最后计算障碍物距离:
(1)
其中:S为障碍物距离;V0为环境温度为0 ℃时超声波在空中的传播速度,经验值为332 m/s;k为温度系数,经验值为0.607 m/(s·℃);T为环境温度;t为超声波信号收发时间。
2.2 语音提示
TTS模块采用中文TTS芯片SYN6658,通过串口与CC2530连接。CC2530根据表1所示的命令帧格式,将待发送文本信息封装成帧发送给SYN6658,SYN6658收到后将文本信息转换成语音信号,接耳机或音频功率放大器PAM8303后驱动喇叭,输出语音以提示盲人。SYN6658支持GB2312、GBK、BIG5和Unicode四种文本编码格式,支持男音、女音、童音和效果音4种音效选择,支持10级音量、语速和语调调节,支持77首提示音、14首和弦音乐和自定义提示音选择。SYN6658内置字库,无需录音自动合成语音,使用方便,音质优美。
表1 SYN6658命令帧格式
当测障模块检测到障碍物时,语音模块提示盲人障碍物距离;当热释电红外模块接收到信号时,语音模块提示前方行人距离;当盲人进入布设有ZigBee自组织网络的室内场所时,语音模块提示目的位置及路径导航信息,盲人根据语音提示作出行动决策。
2.3 远程通信
GSM/GPRS模块采用SIM900A,通过串口与CC2530连接。CC2530定时或收到监护人命令请求时,通过AT命令控制GSM/GPRS模块将包含特殊的短信识别码、室内地图名称和自身坐标信息的短信发送给监护人。SIM900A支持存入多个监护人手机号到电话簿,将接收到的命令短信手机号与电话簿对比验证监护人身份,验证通过才会发送自身ID和自身位置信息,以免信息泄露。
3 ZigBee自组网
ZigBee模块采用TI公司的CC2530芯片,在Z-stack协议栈基础上进行算法的软件开发,实现盲人自身位置定位与目标位置导航。首先在大型室内场所布局大量ZigBee节点,考虑到成本及实际效果,采用任意相邻的3个参考节点形成等边三角形的方式布局,三角形边长为a,且必须使节点无线覆盖范围大于a,a的取值需要综合考虑成本、定位精度和环境对信号衰减程度等因素,通常可取值10~50 m。
无线定位算法一般分为与距离无关的定位算法和基于距离的定位算法[4]。与距离无关的定位算法利用无线节点间的连通性、相对位置关系或特定的协议估计距离来计算盲节点位置。基于距离的定位算法通过测量盲节点与相邻参考节点间的实际距离或方位信息,使用三边测量法、三角测量法和极大似然估计法来计算盲节点位置。测量节点距离和方位的方法有到达时间法、到达时间差法、到达角度法和接收信号强度指示(received signal strength indication,简称RSSI)法等[5],但前3种方法对硬件要求高,因此在低成本场合常用RSSI法。
3.1 与距离无关的质心定位算法
与距离无关的质心定位(range-free centroid localization,简称RFCL)算法是仅基于连接性的,不考虑参考节点与盲节点间的距离信息[6]。若盲节点接收到3个参考节点的信息,则以其组成的三角形的质心坐标作为盲节点的估计坐标[7]。盲节点估计坐标可表示为:
(2)
RFCL算法原理如图3所示。
图3 RFCL算法原理Fig.3 Theory of RFCL algorithm
RFCL算法误差较大,不能满足本场景的要求。为了提高定位精度,本系统采用基于距离的定位算法进行盲人位置定位。
3.2 根据RSSI值计算距离值
基于距离的定位算法需要先将接收RSSI值转化为距离值。高频无线电磁波在室内传播时,受到建筑物墙体、家具等障碍物的影响,造成信号的反射、散射和衰减。传播模型可表示为:
PR(d)=PT+GT+GR-PL(d)。
(3)
其中:PR(d)为与发射端距离为d时的接收功率,即RSSI值;PT为发射功率;GT为发射端天线增益;GR为接收端天线增益;PL(d)为发射信号经过距离d后的路径损耗。
常用的传播路径损耗模型有自由空间传播模型、对数距离路径损耗模型、对数常态分布模型等。本系统环境为大型室内场所,考虑到相同的收发端距离情况下,不同位置环境差异的损耗随机效应,选用对数距离路径损耗模型[8]。可表示为:
(4)
其中:d为发射端与接收端之间的距离;PL(d0)为自由空间发射信号经过距离d0后的路径损耗;d0为单位距离,经验取值为1 m;n为电磁波信号衰减因子,表示路径损耗随距离增加而增大的快慢程度,与环境有关,经验取值为2~5;X0为背景噪声,满足均值为μ、标准差为σ的高斯正态随机分布,μ的经验值为0,σ的经验取值为2~3,σ越大表示模型的不确定性越大。
电磁波自由空间路径损耗模型可表示为:
(5)
其中:f为电磁波频率;c为光速。将式(5)变换为对数形式:
(6)
联合式(3)、(4)、(6),令d0=1 m,c=3×108m/s,f=2.4 GHz,GT=GR=0 dB,则可得发射功率、距离和接收功率的关系式:
PR(d)=PT-40.046-10nlgd+X0。
(7)
其中衰减因子n和背景噪声X0可根据仿真或实际测量结果确定。在确定发射功率后,即可由式(7)根据接收信号强度计算收发端距离。
3.3 基于距离的质心定位算法
(8)
(9)
(10)
图4 基于距离的质心定位算法Fig.4 Range-based centroid localization algorithm
由于RSSI值受噪声影响,根据RSSI值计算的参考节点与盲节点间的距离大于其真实距离[9],因此联立式(8)、(9)可得交点A、A′的坐标,分别计算A、A′到参考节点O3的距离。由于盲节点必然处于三角形内部,距离小的则为三角形O1O2O3内的点A(xA,yA)。同理分别联立式(9)、(10)和式(8)、(10)可得点B(xB,yB)和C(xC,yC)。
3.3.1 基于距离的无加权质心定位算法
基于距离的无加权质心定位(range-based non-weighted centroid localization,简称RBNWCL)算法是以三角形ABC的顶点为参考计算其质心作为盲节点的估计位置,则盲节点坐标为:
(11)
3.3.2 基于距离的加权质心定位算法
基于距离的加权质心定位(range-based weighted centroid localization,简称RBWCL)算法的加权因子为1/(di+dj),体现了参考节点坐标对盲节点坐标的决定性作用随距离减小而增大的特点,可以提高定位精度[4]。盲节点坐标为:
(12)
3.3.3 基于距离的改进加权质心定位算法
(13)
其中k为加权因子调节指数,通过仿真可取值1~10。
3.4 算法仿真与分析
设参考节点等边三角形边长a=20 m,电磁波信号衰减因子n=3,高斯随机背景噪声的均值μ=0、标准差σ=2,根据式(13)计算基于距离的改进加权质心定位算法循环1000次的平均误差随k的变化值。仿真结果如图5所示,加权因子调节指数k=2时,RBIWCL算法的平均误差eI最小。
图5 RBIWCL算法的eI随k的变化Fig.5 eI of RBIWCL algorithm with the change of k
设参考节点等边三角形边长a=20 m,电磁信号衰减因子n=3,高斯随机背景噪声的均值μ=0、标准差σ=2,加权因子调节指数k=2,根据公式(2)、(11)、(12)和(13)分别计算4种定位算法循环500次的盲节点估计位置坐标和平均误差。仿真结果如图6~10所示。从图6~10可见:RFCL算法的平均误差eF最大,且总平均误差为5.299 1 m;RBNWCL算法的平均误差eN有明显减小,且总平均误差为0.827 2 m,比RFCL算法降低84.39%;RBWCL算法的平均误差eW更小,且总平均误差为0.776 4 m,比RFCL算法降低85.35%;RBIWCL算法的平均误差eI进一步减小,总平均误差为0.707 6 m,比RFCL算法降低86.65%。因此RBIWCL算法的平均误差最小、定位精度最高。
设电磁信号衰减因子n=3,高斯随机背景噪声的均值μ=0、标准差σ=2,加权因子调节指数k=2,根据式(13)计算RBIWCL算法循环500次的平均误差eI随a的变化值。仿真结果如图11所示。从图11可见,参考节点等边三角形边长a≤43 m时,eI小于2 m,a≤22 m时,eI小于1 m,可根据实际需求选择合适的a值。
图6 4种算法的盲节点坐标Fig.6 Blind node coordinates of 4 algorithms
图7 RFCL算法的盲节点平均误差Fig.7 Blind node average error of RFCL algorithm
图8 RBNWCL算法的盲节点平均误差Fig.8 Blind node average error of RBNWCL algorithm
图9 RBWCL算法的盲节点平均误差Fig.9 Blind node average error of RBWCL algorithm
图10 RBIWCL算法的盲节点平均误差Fig.10 Blind node average error of RBIWCL algorithm
图11 RBIWCL算法的eI随a的变化Fig.11 eI of RBIWCL algorithm with the change of a
3.5 目标位置导航
盲节点在获得自身位置后,ZigBee网络会向其推送消息,例如在机场时推送可供选择服务台、安检口、餐厅和洗手间等目标位置,如盲人通过便携装置上的按键选择洗手间后,ZigBee网络选出带有洗手间属性的参考节点,根据它们与盲节点相对位置选出最近的洗手间,并计算最短可行路径,然后通过语音提示洗手间的方位、距离和实时行动指引,最终到达洗手间。
4 智能终端
为了可以实时监控盲人当前位置,需要通过远程方法进行定位。鉴于当前电脑、平板和手机等智能终端相当普及,可开发一套软件,如手机APP,实现盲人远程监控功能。具体工作流程如下:便携装置通过GSM/GPRS模块定时接收监护人命令后以短信方式向监护人手机发送信息,信息内容包括特殊的短信识别码、室内地图名称和自身坐标信息;监护人打开APP后,APP根据特殊的短信识别码自动加载接收到的信息;然后根据室内地图名称,加载已有的地图或提示下载地图,地图上详细标有参考节点位置、可选目标位置和固定障碍物等信息;最后自动将盲人位置信息标注在室内地图上,并形成行动轨迹。
5 结束语
针对盲人行动不便和行动范围受限的问题,设计了一套室内定位导航及远程监控系统。仿真结果表明,RBIWCL算法与RFCL算法相比,定位误差大大减小;与RBNWCL算法和RBWCL算法相比,定位精度也有所提高。该算法实现简单、定位速度快、定位精度高。通过检测现场无线信道参数,设置最佳的加权因子调节指数k和节点三角形边长a,可以进一步提高定位精度。
[1] 梁源,朱武,王宏亮,等.基于超声波测距的盲人导航器设计[J].上海电力学院学报,2010,26(6):601-604.
[2] MANOUFALI M,ALADWANI A,ALSERAIDY S,et al.Smart guide for blind people[C]//2011 International Conference and Workshop Current Trends in Information Technology,2011:61-63.
[3] LEE J K,KIM K,LEE S C,et al.Smart backpack for visually impaired person[C]//2013 International Conference ICT for Smart Society,2013:1-4.
[4] 郜丽鹏,朱梅冬,杨丹.基于ZigBee的加权质心定位算法的仿真与实现[J].传感技术学报,2010,23(1):149-152.
[5] 于明.基于WIFI无线局域网定位算法的研究[D].兰州:兰州理工大学,2013:13-16.
[6] 于慧霞.WSN中基于RSSI的加权质心定位算法的改进[J].电子测试,2012,1:28-32.
[7] CHENG H Q,WANG H,WANG H K.An improved centroid localization algorithm based on weighted average in WSN[C]//2011 3rd International Conference Electronics Computer Technology,2011:258-262.
[8] 张正华,戴磊,黎家文,等.基于RSSI的优化加权质心定位算法研究[J].电子设计工程,2013,21(7):171-173.
[9] 吕振,谭鹏立.一种基于RSSI校正的三角形质心定位算法[J].传感器与微系统,2010,29(5):122-124.
编辑:张所滨
A blind indoor location, navigation and remote monitoring system based on ZigBee
YU Kai1, ZHAO Feng2
(1.School of Information and Communication Engineering, Guilin University of Electronic Technology, Guilin 541004, China;2.School of Computer Science and Information Security, Guilin University of Electronic Technology, Guilin 541004, China)
For the problem of walking inconvenience and limited walking range, a blind indoor location, navigation and remote monitoring system is designed based on ZigBee. A portable device is designed by ultrasonic technology, passive infrared technology and text to speech technology. Range-based improved weighted centroid localization (RBIWCL) algorithm is designed by studying the centroid localization algorithm. The method of communicating with the remote intelligent terminal is designed by GSM/GPRS technology. The results show that the portable device can detect an obstacle effectively and remind the blind timely. RBIWCL algorithm improves the locating accuracy. The remote intelligent terminal can accurately monitor the position and action track of the blind in real time.
obstacle detection; ZigBee; RBIWCL algorithm; GSM/GPRS
2016-01-08
国家自然科学基金(61471135)
赵峰(1974-),男,山东日照人,研究员,博士,研究方向为无线通信理论及信息处理技术。E-mail:zhaofeng@guet.edu.cn
余凯,赵峰.基于ZigBee的盲人室内定位导航及远程监控系统[J].桂林电子科技大学学报,2016,36(6):431-436.
TN99
A
1673-808X(2016)06-0431-06