1.实验目的
了解基于WiFi网络的物联网定位系统的工作原理,熟悉基于射频指纹匹配定位技术的工作过程以及实现方法。
2.实验设备
(1)硬件
● 低功耗WiFi实验硬件(IOT-WIFI)1~2个。
● 无线路由器6个左右。
● 推车(最好高架、非金属)1辆。
● 米尺1卷。
(2)软件
● WiMap定位平台软件1套。
3.实验原理
(1)定位算法及实现
目前,WiFi定位技术大都通过测量接入点(AccessPoint,AP)或定位标签(Tag)发射的射频信号强度(Received Signal Strength Indication,RSSI)方法进行定位。由于射频信号受环境变化、人员移动等因素影响较大,具有较强的时变特性和随机特性,因此,使用接收到的射频信号强度估计待定位目标与信标间的距离误差较大,因此现有的WiFi定位系统一般不采用基于RSSI测距的三边或多边定位方法,而是采用射频指纹匹配技术实现目标定位。基于射频指纹定位技术的基本原理是,由多个信标(即AP)发射的射频信号强度RSSI矢量构成一个射频指纹,目标区域中每个位置与在该位置上采集的射频指纹对应,在建立起射频指纹与位置的一一对应关系之后,便可以使用射频指纹来确定目标位置。基于射频指纹的节点定位过程分为离线训练和在线定位两个阶段。
离线训练阶段,系统需要在待定位区域的不同位置大量采集相应位置的射频指纹,并保存在指纹数据库中。射频指纹库反映了位置空间与信号空间的直接映射关系,可有效避免复杂室内环境下使用接收信号强度与距离的不精确映射关系引入的定位误差。在构建射频指纹库时,一般根据定位区域的地理分布特点,将定位空间分割为若干离散网格,每个网格与该位置的RSSI特征向量相关联(该特征向量由多个接收到的信号强度值构成)。
上述离线训练阶段采样射频指纹的过程代码如下:
在线定位阶段,定位标签实时测量由多个信标发射的射频信号(或者多个信标测量由标签发射的射频信号强度),构建射频指纹,并与训练阶段采集的射频指纹库进行匹配计算,选择相似度最大的位置作为待定位标签的最终位置估计。
根据RSSI特征的不同,基于射频指纹识别定位方法又进一步细分为确定型定位和基于概率定位两类。前者在构建射频指纹库时,每个网格位置仅记录接收到的对应信标(AP)信号强度均值,在线定位时一般采用最近邻等方法进行定位;后者在构建射频指纹库时,一般基于每个网格的信号分布先验假设(如高斯分布),计算该分布的统计特征(如均值和方差),在线定位时采用贝叶斯分类器等统计方法进行目标位置估计。本实验采用概率型定位算法,以获得较高的定位精度。
在线定位过程的主要代码如下:
其中,参数current_measurement为当前观测数据;priori_location为上一时刻定位结果。
在定位过程中,对于每一个位置,首先计算上一个位置与指纹库中的每一个指纹的先验概率,然后计算当前观测值与该预测位置对应指纹的似然概率,最后计算上一个位置与似然值的后验概率。计算完所有指纹库中的指纹的后验概率之后,将后验概率最大值对应的位置作为当前位置的估计值。基于概率定位方法把待定位目标所处位置看成一个分布,每一次定位时都使用上一时刻目标位置的概率发布(即先验概率),可有效避免由于较大观测噪声(影响似然函数)带来的定位风险,从而获得较高的定位精度。
定位过程使用了3个比较核心的函数,下面分别进行介绍。
priori_calculate函数根据历史位置计算当前位置的先验概率,两个参数currentLocation和prioriLocation分别为当前时刻的预测目标所在位置和前一时刻目标所在位置,其实现代码如下:
likelihood_calculate函数计算当前时刻观测值与指定射频指纹数据的似然概率,两个参数measure和fingerprint分别为当前时刻的观测值和待判定的射频指纹数据。相应的代码如下:
posteriori_calculate通过先验概率prior和似然概率likelihood计算后验概率。相关代码如下:
总的来讲,采用射频指纹定位方法比采用基于射频信号强度测距的定位方法可获得更高的定位精度,但由于射频信号动态变化较大,采用射频指纹定位方法能获得的定位精度仅在3m左右,难以满足高精度的定位应用需求。不过,通过增加接入点数目,以及对射频信号衰落进行补偿,一定程度上可提高WiFi定位技术精度。
(2)定位实验系统框架简介
本实验定位软件利用WLAN基础设施实现物联网环境的目标定位。
该实验系统主要提供以下功能。
● 定位系统创建,允许同时建立多个定位系统。
● 室内地图绘制,支持多楼宇、多楼层的三维定位。
● 训练数据采集及训练。
● 传感器目标位置监测,实时显示当前系统中所有传感器节点的位置,并提供轨迹监测和目标锁定功能。
● 环境中无线路由器信息查询和位置设定。(www.xing528.com)
● 支持多目标实时定位跟踪。
系统物理架构如图5-4定位实验系统架构示意图所示,整个框架包括定位系统、定位服务器和客户端3个部分。其中定位系统包括待定位的传感器节点,若干无线路由器,传感网节点接收无线路由器信号,并通过网络传送到定位服务器;定位服务器负责定位节点,同时与数据库连接,完成相关数据的记录;客户端则提供室内地图绘制,节点监测等功能。下面对各组件进行详细介绍。
图5-4 定位实验系统架构示意图
1)定位系统。实验所采用的WiFi传感器节点是基于GS1011芯片设计的,其主要功能是定时对环境中的无线路由器进行扫描,并测量无线路由器返回信号的信号强度,最后将各信号强度打包发送给服务器端已进行后续工作。传感器节点采用周期性工作方式,即节点定期启动,完成工作后立即进入休眠状态。此时,CPU和传感器皆停止工作,只有实时时钟(Real-Time Clock,RTC)处于工作状态。节点大部分时间处于休眠状态以达到满足低功耗的目的。
无线路由器在实验中的主要作用是当收到WiFi传感器节点的扫描信号后,为指纹识别定位提供所需的信号强度。其中一个指定的无线路由器作为网关,具有为节点动态分配IP地址以及将节点发送的数据转发给定位服务器的功能。
2)定位服务器。定位服务器包含了定位引擎、采样服务器、地图服务器以及数据库,这些组件可分别部署于不同的主机。在本实验中为了减少设备数目,将它们部署于同一主机。各组件功能如下:地图服务器提供地图数据管理,以支持客户端的地图绘制和管理功能;采样服务器负责从客户端接收训练数据并持久化到数据库;作为定位服务器最重要的构成部分,定位引擎并行处理多个客户端的定位请求,并向已订阅位置服务的客户端发布传感器节点的位置信息。
3)客户端。客户端直接与定位服务器联系,通过配置客户端可与不同的定位服务器相连。为了配置方便,采用图形界面,不仅可以直观地配置楼层、接入点(无线路由等),而且可实现地图编辑、显示,以及定位结果的可视化显示。楼宇配置可以添加、移除楼层,并设置楼层高度等参数,接入点配置以表格形式列出环境中的接入点信息,并支持对接入点位置等信息的编辑更新。地图编辑模块支持添加地图图片、设置比例尺、绘制网格等操作,并可通过显示选项卡配置显示模式,如是否以轨迹形式显示目标,或是否显示环境中的接入点等。
4.实验内容
了解基于射频指纹定位方法的预备知识,包括贝叶斯估计等概率统计理论、定位原理、传感器节点无线收发过程以及无线通信相关基础知识。掌握定位系统软件安装及硬件部署以及定位过程,包括采样、训练及定位等。
5.实验步骤
(1)启动WiMap
按照光盘提供的文档安装和配置MySQL和WiMap.rar,进入WiMap安装目录,双击WiMap.exe启动WiMap程序。
(2)项目创建或打开已有项目
如果需要创建项目,选择文件→新建→项目。
如果已经建有项目,可以通过“文件→打开”打开已有项目。在“选择楼宇”对话框中选择对应的项目即可。
(3)采样
建议采用分时多次的方式进行采样工作。
1)设置采样数。单击“定位”选项卡中的“采样”,在“采样参数配置”中设置每个网格的采样个数,如60。
2)放置传感器节点。启动传感器节点,将其置于待采样的网格处,在地图中单击该采样位置,此时该网格会改变颜色,当采样结束时颜色恢复。移动节点位置,单击对应地图网格继续采样,如此反复。注意:在节点处于采样位置后才可以单击待采样网格,开始该位置的训练数据收集。
(4)训练
单击“定位”选项卡中的“训练”。
(5)定位
1)单击“定位”选项卡中的“定位”,开启传感器节点。此时地图显示出定位结果。
2)显示轨迹。在“显示”选项卡中勾选“轨迹”复选框,此时会显示节点的轨迹。
6.思考题
1)为了提高定位精度,无线路由器部署应遵循什么策略?
2)请指出3个影响定位精度的系统或环境因素。
3)请给出您的采样方式,并说明这样做的理由。
7.补充阅读
[1]陈菁菁.Tomcat原理与JavaWeb系统开发[M].北京:清华大学出版社,2009.
[2]GS1011 Ultra Low-Power Wireless System-On-Chip Datasheet.Gain Span Corporation.2008.
[3]Youssef M,Agrawala A.The Horus Location Determination System[J].Wireless Networks,2008,14(3):357-374.
[4]BahlP,Padmanabhan VN.RADAR:An In-building RF-based User Location and Tracking System[A].Proc of the IEEE INFOCOM 2000.Tel Aviv,Israel,2000:775-784.
[5]林以明,罗海勇,李锦涛,赵方.基于动态RadioMap的粒子滤波室内无线定位算法[J].计算机研究与发展.2011,48(1):139-146.
[6]赵方,罗海勇,林权,马严.基于核函数法及马尔可夫链的节点定位技术[J].通信学报,2010,31(11):195-204.
[7]Wireless LAN Medium Access Control(MAC)and PhysicalLayer(PHY)Specifications:Higher-Speed Physical Layer Extension in the2.4GHz Band.IEEE Std 802.11b-1999.
[8]GS1011 Peripheral User Manual.GainSpan Corporation.2008.
[9]GainSpan Embedded Platform Software Application Programming Guide V2.0[R].GainSpan Corporation.2008.
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。