基于iBeacon的商场室内定位及导航系统设计与实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于iBeacon的商场室内定位及导航系统设计与实现
前晋;陈淑荣
【摘要】基于蓝牙iBeacon设计C/S架构的商场室内手机定位及导航系统.手机接收蓝牙信号并上传至服务器,后台从蓝牙信号强度根据iBeacon距离-RSSI损耗模型计算出手机至iBeacon的距离,再采用三边质心法确定手机位置坐标,并标示在手机端商场地图上;另外,按照手机端输入的目的地信息,服务器运行引入回退机制的A*算法,规划出最优可行路径,实现手机端的商场导航.实验数据表明最大定位误差在3米以内,导航路径精准.
【期刊名称】《微型电脑应用》
【年(卷),期】2019(035)001
【总页数】4页(P76-79)
【关键词】iBeacon;室内定位及导航;三边质心法;A*算法
【作者】前晋;陈淑荣
【作者单位】上海海事大学信息工程学院,上海201306;上海海事大学信息工程学院,上海201306
【正文语种】中文
【中图分类】TN925
0 引言
随着商场、地下停车场、机场等大型室内场馆的兴建,手机室内定位及导航需求日
趋强烈,如商场中基于位置信息给予用户手机特定的商品消息推送,地下停车场智能寻车,机场室内位置导航等。目前手机室内定位技术主要通过蓝牙iBeacon和Wi-Fi来实现,文献[1][2]使用Wi-Fi指纹定位算法,将接收Wi-Fi信号的RSSI值与已建立的指纹数据库进行对比实现定位;文献[3][4]使用iBeacon定位技术,首先建立iBeacon信号强度与距离之间的关系,再通过三边定位算法实现定位。以
上两种定位技术均能满足商场室内定位精度需求,但商场人流较大,商铺位置易变动,导致Wi-Fi指纹库需要时常更新维护,人工成本较大,相比之下iBeacon技
术更适用于商场环境。
导航是手机位置信息服务的一种,可转化为找寻定位点与目的地之间的最短可行路径。常用的路径规划算法包括Dijkstra算法、A*搜索算法、蚁群算法等。文献[5]指出Dijstra算法搜索全局空间,难以满足快速规划路径的需求,而通过改进A*算法建立平滑的A*模型,其性能优于蚁群算法,且能处理障碍物随机分布的复杂环境下的路径规划问题。可见A*算法更适用于障碍物较多的室内环境。
本文利用蓝牙iBeacon技术实现手机室内定位及导航功能,首先在室内部署ibeacon设备,测量室内环境中各点的RSSI值,得出信号强度与距离之间的关系,建立iBeacon距离-RSSI损耗模型;其次手机接收iBeacon的RSSI值,上传至服务器,利用上述模型和三边质心法计算手机位置坐标;服务器端按照用户输入的目的地,采用引入回退机制的A*算法计算最优路径,并在手机端自制的商场地图上
标示最优导航路径。
1 系统概述
系统主要由3个部分组成:iBeacon设备、Android智能手机、服务器,如图1
所示。
多个已知位置坐标的iBeacon部署在室内空间中,周期性地向外界广播信号。
手机应用由Android Studio开发环境搭建而成,其功能包括接收iBeacon信号
并上传iBeacon的Major值及对应RSSI值至服务器;上传用户输入的目的地;接受返回信息并在室内地图标示当前位置;显示服务器返回的最优导航路径。
图1 系统结构
服务器由MyEclipse结合Apache Tomcat搭建而成,内部存储了iBeacon信息和地图信息,采用基于HTTP协议的doPost方式与手机端进行数据交互,功能包括接收手机端上传的RSSI值,运行iBeacon距离-RSSI损耗模型确定手机与iBeacon的距离;利用三边质心法计算手机位置坐标;接收输入的目的地信息,并运行引入回退机制的A*算法规划最优导航路径。
2 系统实现的关键技术
2.1 iBeacon室内定位
采用iBecaon进行室内定位,需先建立iBeacon距离-RSSI损耗模型,获取手机与最近的3个iBeacon之间的距离,再通过三边质心法计算手机位置坐标,实现定位。算法步骤如下:
第一步:RSSI值采集预处理。部署iBeacon应选取周围无遮挡物的位置降低信号损耗,在信号稳定后采集RSSI值以防其它信号干扰,减少环境误差;在同一地点采集多个RSSI值采用均值滤波预处理,以减少测量误差,如式(1)。
(1)
第二步:建立iBeacon距离-RSSI损耗模型。已有实验数据表明无线信号强度与距离存在对数关系[3-6],如式(2)。
(2)
其中,PL(d)、PL(d0)分别表示无线信号在d和d0米处的信号强度损耗,n为环境变量因子,Xσ是方差为σ的正态随机分布,单位为dB。设d0=1 m, (2)式变
为式(3)。
Rssi(d)=R1+10nlg(d)+Xσ
(3)
式中,Rssi(d)表示d米处的无线信号强度值,R1表示iBeacon与手机相距1 m 时的无线信号强度值。距离d和信号强度Rssi(d)由实际测量得到,n和R1为模型的待定参数。
第三步:参数R1和n的最优估计。采用最小二乘法[7],利用最小化误差的平方和寻找数据的最佳匹配函数,从而确定最优参数值。误差函数如式(4)。
(4)
其中Rssi(di)表示di米处RSSI实际测量值,表示根据式(3)求得的RSSI估计值。R1和n根据初值不断循环优化,如式(5)。
(5)
其中α为梯度因子,取α=0.02,使J(R1,n)达到最小即可求得所需的R1和n。根据最优参数建立的iBeacon距离-RSSI损耗模型如式(6)。
(6)
将手机端接收的RSSI值代入式(6)即可得出手机与iBeacon的距离d。
第四步:获取手机位置坐标。采用三边质心法[6],如图2所示。
图2 三边质心法计算手机坐标示意图
其中,A、B、C三点代表iBeacon设备位置,r1、r2、r3表示通过式(6)模型求得手机与离其最近的三个iBeacon设备的距离d。阴影三角形的三个顶点坐标分别为D(xd,yd)、E(xe,ye)、f(xf,yf),三角形的质心坐标P(x,y)即为确定的手机位置坐