导航技术解决方案
1概述
1.1项目背景
GPS卫星定位和导航功能在现在的智能手机上几乎成为了标准配笠,不过GPS导航仍有一个尚未解决的难题,就是室内导航。因为GPS卫星信号无法穿透太厚的墙壁,导航设备在大型建筑、地下建筑、高层楼房中会彻底找不到卫星信号而无法定位。在手机上实现会场位置导航和附近好友位呈显示的功能。预计可以用于大型展览活动、大型商场、博物管、大型会议,等提供导航服务。借助室内导航技术找到不同的展区路线和使用同一软件的朋友,同时有助于会议组织者的信息采集和会议现场维护。
1.2目标
充分利用移动设备的优势,填补GPS定位和导航功能的不足。利用wifi技术实现室内定位、导航、拓扑路线显示功能。目标精确度2米内。
1.3建设原则
安全性
安全性包括软硬件系统安全、应用安全和网络通讯安全。保证数据不被非法入侵者破坏和盗用,并保证数据的一致性;对欺诈或攻击行为采取多种检查和处理手段。
系统安全、稳定、可靠的运行,首先取决于系统的整体设计、网络结构、平台的选择以及应用程序的质量;其次,必须考虑到各种特殊情况下的恢复机制和备份机制,以保证数据的一致性、完整性以及灾难恢复;此外,完整的权限控制机制,考虑充分的系统保密措施是保证安全的重要因素。
简单易用性
快速部署:可以在较短的时间里,进行结构和功能的定义。
系统的各种管理都有相应的可视化的操作界面,简单易用。
先进成熟性
先进性一方面体现在技术上和设计理念上,不仅满足现有需求,还要符合未来的发展方向。
在项目中采用先进的设计模型、系统架构、核心算法、行业流行和先进的技术,例如数据库设计、体系架构等,先进的技术保证系统的稳定性,并可根据系统发展,按需扩展。
在系统设计过程中,考虑采用成熟的产品进行系统建设,这样,能够在最大限度上保证核心系统的成熟度,同时,一些个性化的应用也将采用成熟的技术进行开发和功能扩展。
规范性
系统的软、硬件均符合相关的国际、国内和行业标准,采用统一衡量标准。同时,根据业务发展的实际,结合计算机技术发展的潮流,整个系统从网络设计、应用设计到业务流程设计都符合统一规范的原则,以明确系统总体设计思路。
2总体设计
2.1总体逻辑架构
⏹用户通过GPS/AGPS,自动定位城市或手动设置默认城市,可搜索附近的建筑;
⏹用户选择下载一个或多个城市的建筑地图;
⏹采集发射器的数据,得出精确的定位坐标;
⏹店铺查找,及店铺与店铺之间的导航;
⏹后台数据管理各个城市的地图包并及时更新。
2.2总体功能设计
⏹地图解析系统负责地图的解析,地图在手机端的展示,店铺与店铺之间的导航(店铺之间的拓扑点),各个公用设置的展示(比如电梯、卫生间、收银台等);
⏹发射器采集系统负责查找是哪个发射源传过来的数据,及对数据的分析计算;
⏹地图管理负责管理建筑楼层矢量图,发射源在建筑中每层的位置信息,及系统日志的记录。
2.3安全设计
系统设计到的敏感数据包括矢量地图包、建筑发射器摆放位置等,采用加密方式传输,客户端解密后再进行解析。
2.4性能设计
射频识别技术利用社评方式进行非接触式双向通信交换数据以达到识别和定位的目的。该技术作用距离短,一般最长为几十米。但可以在几毫秒内得到厘米级定位精度的信息,切传输范围很大,成本较低。同时由于其非接触和非视距等优点。已经成为优选的室内定位技术。
2.5数据接口
客户端与服务器获取地图包的接口;发射器与客户端数据采集的接口;
3系统功能
3.1地图解析系统
3.1.1店铺信息
店铺信息包括店铺名称,店铺编号,店铺坐标点,店铺出入口、公共设施等。
⏹店铺名称:如 Only、肯德基;
⏹店铺编号:如 A1006;
⏹店铺坐标:矢量图定义坐标,包含了起点坐标及各个形状的坐标;
⏹店铺出入口:店铺的入口和出口,方便店铺与店铺之间的导航;
⏹公共设施:卫生间、收银台、电梯、手扶梯、导购处、安全出口等。
3.1.2店铺展示
店铺展示即把某城市某建筑的某层,用矢量图的形式展示在手机客户端中。
解析地图结构,用绘图的方式展示矢量图形。
3.1.3拓扑图展示
矢量地图中主要点的标记,如某店铺的中心点等,都需要记录下来,以便在点击某区域时,在正确的位置显示店铺名称。
拓扑图主要是完成店铺与店铺之间的导航,如A与B之间的最短路径,用图展示出来,供用户查看。
3.2 wifi定位
3.2.1三角定位
基于三角形算法的WiFi定位可分成两个阶段:测距
与定位。
测距阶段
待测点首先接收来自三个不同已知位置AP的RSS,
然后依照无线信号的传输损耗模型将其转换成待测目标
到相应AP的距离。无线信号在传输过程中通常会受路
径损耗、阴影衰落等的影响,接收信号功率随距离的变
化关系可由信号传输损耗模型给出。在城市、郊区等环
境,传输损耗模型通常采用如下简化模型[3]:
P r (d )=K -10ε lg(d )(dBm) (1)
其中,d 代表接收机和发射机之间的距离,ε 代表非
自由空间的损耗系数,K 是如下常数:
Pr ( d0 ) | |||
K =10lg | + 20 lg( d0 ) | (2) | |
0.001W |
通过三角形算法计算待测点位置,即分别以已知位
置的三个AP为圆心,以其各自到待测点的距离为半径做
圆,所得三个圆的交点,如图1所示:
设未知节点D的坐标为(x ,y ),已知A、B、C
三个点的坐标分别为(x 1,y 1)、(x 2,y 2)、(x 3,
y 3),它们到D的距离分别为d 1、d 2、d 3,则D的位置可
由下列方程中的任意两个求得[4]:
( x − x ) 2 | + ( y − y )2 | = d 2 | (3) | ||
1 | 1 | 1 | |||
( x − x ) 2 | + ( y − y | )2 | = d | 2 | (4) |
2 | 2 | 2 | |||
( x − x ) 2 | + ( y − y )2 | = d | 2 | (5) | |
3 | 3 | 3 |
交于一点的情况未必出现,以致方程组(3)、(4)、
(5)无解。在三圆两两相交的情况下,有图2、3两种典
型的无解情况:
在这两种情况下,D点的求解方法如下[4]:
(1)根据方程(3)、(4)、(5)分别求解圆A
与圆B的交点(X ab1,Y ab1)、(X ab2,Y ab2),圆A与圆C
的交点(X ac1,Y ac1)、(X ac2,Y ac2),及圆B与圆C的交
点(X bc1,Y bc1)、(X bc2,Y bc2)。
(2)将圆A与圆C的交点代入[(x - x 2)2+(y - y 2)2],
找出距B圆圆心较近的点,设为(X ac,Y ac)。同理,求
解(X ab,Y ab)、(X bc,Y bc)。
(3)近似计算待测点位置:
X | ab | + X | ac | + X | bc | Y + Y +Y | ||||
( x , y) = | , | abac | bc | |||||||
3 | 3 | |||||||||
(6) |
程度上依赖于确知的AP位置信息及准确的信号传输损耗
模型。然而,由于涉及个人隐私等原因,获知所有AP
的位置信息并不现实。此外,由于影响信号传输的因素
很多,不同环境下的信号传输损耗模型大不相同,建立
一个准确的、适合实际应用的损耗模型存在着很大的困
难。因此,基于三角形算法的无线定位在具体实施中困
难重重。
3.2.2位置指纹识别算法
与通常意义上的指纹识别类似,位置指纹识别依靠
表征目标特征的数据库进行识别。其定位过程主要分为
训练与定位两个阶段[5],如图4所示:
训练阶段
其目标在于建立一个位置指纹识别数据库。首先,
选择合理的参考点分布,确保能为定位阶段的准确位置
估计提供足够的信息。接着依次在各个参考点上测量来
自不同AP的RSS值,将相应的MAC地址与参考点的位置
信息记录在数据库中,直至遍历关注区域内所有的参考
点。由于受环境影响,无线信号强度并不稳定,为了克
服RSS不稳定对定位的影响,通常在每个参考点上多次
测量取平均。
定位阶段
给定数据库后,依据一定的匹配算法将待测点上接
收的AP RSS与数据库中的已有数据进行比较,计算位置
估计值。常用的匹配算法有最近邻法(NN)、KNN、
神经网络等,本文采用简单的NN算法。假定待测点接收
的RSS观测值为s =[ss 1,ss 2,…,ss n ],数据库中的已有记
录为S i =[SS 1,SS 2,…,SS Ni ],其中n 代表待测点上检测到
的不同AP数;i ∈[1,N T ],N T 为数据库中的记录数;N i 代
表第i 条记录中存储的不同AP数,则NN算法可以表示成
下述形式[3]:
L =argmini∈[1,NT ]||s -Si|| (7)
其中,||s -Si||代表s 和Si之间的欧式距离。
3.3地图管理系统
3.3.1矢量图信息
矢量图包含平面图形 点阵坐标,区域点击坐标,区域编号等一系列相关坐标系,通过数学算法绘制图形。
点阵坐标:店铺区域的起点坐标,各个不规则形状的坐标;
区域点击坐标:点击地图某部位时,及时相应的区域坐标点;
区域编号:用来区分区域的唯一标识。
3.3.2系统日志
记录用户下载的地图包信息。
4技术实现途径
操作系统: ios3.0以上
数据库: Oracle/SQL server
开发环境:ios:mac+xcode;
调试环境:iphone
开发语言:objective-c;
5实现难点
1,wifi热点搜索和信号强度的api为私有api,程序无法再在appstore通过审核。
2,采用指纹定位算法所需要的服务器要求较高。
6初步预算
200W人民币。