Wi-Fi Tag定位原理描述
基本概念
如图19-1所示,Wi-Fi Tag定位系统主要包括一个或多个Wi-Fi Tag、多个AP(至少3个)、一个或多个AC、一个定位服务器。各部分在定位系统中的作用分别为:
- Wi-Fi Tag:Tag厂商生产出来的无线定位系统的信号发生源。例如AeroScout公司生产的Tag(使用时通常放置或粘贴在需要定位的物体上)。它是需要定位的源设备,会定时向周围发送射频信号。
- AP:接收Wi-Fi Tag发送的定位信息,并将信息转发给AC或直接将信息转发给定位服务器。
- AC:转发定位服务器的配置指令给AP。也可以作为一个中转站,使AP可以先将接收的定位信息上报给AC,再由AC转发给定位服务器。
- 定位服务器:定位服务器收到定位信息后运行定位算法(如三点定位法)计算Wi-Fi Tag的位置,并将计算后的数据提供给用户系统,包括系统管理软件和图形软件等。
实现原理
如图19-2,Wi-Fi Tag定位原理如下:
Wi-Fi Tag发送Tag信息
Wi-Fi Tag不需要接入WLAN网络,只负责定时发送802.11帧。
为了保证Tag能被更多的AP检测到,一般设置Tag使用多信道发送Tag信息。不同厂家的Tag,Tag信息的帧格式有所不同,但一般都会包含配套的定位服务器进行定位所必须的信息。
AP接收Tag信息并转发给定位服务器
- 当AP接收到Tag信息帧信息后,会记录每个收到帧的RSSI(信号强度)、时间戳、速率、信道等定位信息。其中最重要的信息是RSSI,是定位服务器用于判断Tag距离AP远近的关键数据。为了尽可能确保RSSI的准确性,AP需要过滤掉从邻频信道收到的Tag信息,例如AP当前工作在1信道,有可能会收到Tag在2信道发送的帧,由于AP和Tag不在一个信道,所以收到帧的RSSI会明显偏低,使定位服务器误认为Tag离AP很远。所以这种邻频信道收到的Tag信息需要过滤掉。
- AP将收到的所有Tag信息帧的定位信息打包成UDP包(Tag Report),发送给定位服务器或通过AC中转给定位服务器。
各个厂家的定位服务器需要的定位信息和上报方式会略有不同,例如Ekahau定位服务器需要的定位信息包括Tag信息帧的内容,AeroScout定位服务器则不需要Tag信息帧的内容;Ekahau定位服务器需要AP每收到一个Tag信息帧就即时上报,AeroScout定位服务器允许AP周期性上报,一次上报多个Tag信息帧的定位信息。
Tag Report包的目的IP和目的端口是由AC配置的,如果目的IP配置为定位服务器,则Tag Report会直接发送给定位服务器。如果目的IP是AC,则Tag Report会先发送给AC,再由AC发送给定位服务器,这种方式一般应用在AP不能直接和定位服务器互通的组网场景下。
定位服务器进行定位计算
为了尽可能精确的确认Tag的位置,对于每个Tag,定位服务器需要至少接收到3个AP上传的定位信息。定位服务器收到定位信息后,根据用户事先导入的地图信息和标示的AP的位置,按照Tag厂商内置的定位算法通过对报文中的RSSI、SNR(信噪比)、射频模式等信息进行计算,计算出Tag所在的位置并发送给第三方设备的图形界面上,展示给用户。