基于RSSI特征之方法,已经广泛应用于室内环境定位系统中。其基本观念很简单,若我们先在空间中预先布建数个已知位置的beacons,则在某一特定位置可接收到一组独特的beacons之无线信号强度指针(Radio Signal Strength Indicators;RSSI),而所接收到的RSSI值一般称之为RSSI特征值。RSSI特征定位系统通常有一个共同的问题,就是离测量RSSI特征的时间点越久,定位的精确度也随之降低。
为了解决这样的问题,近来有一些研究[1][2]专注于对RSSI特征的自动校准。然而我们想从不同观点来研究这个问题,与其试着让RSSI特征保持随时都是最新接收到的状态,为何不去探讨RSSI特征无法持续稳定的原因?为了探究这个问题,我们在一个12公尺乘50公尺的空间中建构一套RSSI特征定位系统,并进行一系列详细的测量,藉以对天线方向、障碍物、beacon分布密度对RSSI特征不稳定性的影响作探讨。
我们有以下四点发现:
- (1)天线方向对RSSI特征不稳定性的影响是非常显著的。随着天线的方向不同,定位误差也随着在1到3公尺之间变动,也就是说,接收时所用的tag,在接收讯号时,若是没有保持相同方向,其误差可能会有极大的不同;
- (2)背景环境障碍物,包含人体的移动、建筑物中的家具、以及使用中的电子装置所产生的噪声都可以被忽略;
- (3)然而前景(以天线方向来考虑)环境障碍物所造成的影响却非常重大。用户手持tag或走路经过tag旁所造成的平均误差可达1.22公尺到2.71公尺。此外,当接收用的tag持于用户手中或是放在椅子上,其平均误差甚至可以相差141%;
- (4)beacon分布密度的影响随着量测点的不同而有所不同。当某量测点附近有一定数量的beacon时,平均定位误差并不会随着整体密度降低而变差太多。
透过对此定位系统测试平台的微观检测,我们发现某些设计上的要素可以避免系统反复进行RSSI特征勘测及校准。首先,接收用tag的天线最好使用均匀辐射模式来隔绝天线方向所造成的影响。其次,在探勘RSSI特征时,使用与之后实地定位时相同的tag佩戴方式,可以使前景障碍物的影响降到最低。Beacon分布密度不会影响RSSI特征的长期正确性,然而却会影响定位的精确度。因此我们必须确定,测量点数目应多于beacon的数目,且必须均匀分布于测试空间中,以避免量测结果有所偏差。
在实际测试平台上进行如此详尽的检验,是系统达到预期的运作效能的必要步骤,也是是否能应用于日常生活的重要关键。我们在此呈现研究成果,期以激发更多后续相关实地测量的研究,达到抛砖引玉的目的。最后,希望能推动实际测试平台所得RSSI特征测量记录的分享,相信这不仅能促进对实验结果的交互检验,并提供无足够资源以设计实验平台的研究机构,一个研发其他较高阶算法的大好机会。
定位系统
为从事相关测量研究,我们特别建构了一个RSSI特征基础的定位系统。RSSI特征基础的概念是在找出tag的位置与其接收到来自beacon的RSSI的对应关系。这些接收到的RSSI可视为RSSI特征或一组向量。这个系统的使用可分为两个阶段:训练跟追踪。在训练阶段中,会在地图上每个特定位置的测试点接收RSSI特征,而这些由不同位置收集到的RSSI特征之集合,称之为radio map。有了在训练阶段中产生的radio map后,追踪阶段会比对接收模块收到的RSSI向量和radio map中的参考RSSI,并找出最有可能的地点。在定位系统中,使用K个最接近的邻近点(K-Nearest-Neighbor;KNN)来判断该点位置,首先由radio map中选择K个与接收到的RSSI向量最接近的对应位置,再依据与接收到的RSSI向量的差距,给予相对的权重,最后输出这K个位置的加权平均值。
Beacon每隔一段时间会发送带有自己编号(ID)的封包。在这个测试平台中,封包每隔200ms发送一次,无线传输的功率强度设为-7dBm。如此在测试环境中,任一位置皆大约只能接收到10个beacon送出的封包。由于需要经由这些beacon送出的封包来取得RSSI特征并推出位置,因此能正确收到这些封包对定位系统的正常运作至为重要。为了避免封包碰撞(collision),每个beacon皆采用DESYNC协议[3]。DESYNC能有效隔开每个邻近beacon的传送时间,因此能减少封包碰撞的机会。
在训练阶段中,首先要收集RSSI特征地图,我们将定位区域分割成小格子,每个格点之间的距离约为30公分,亦即大约是走一步路的长度。在勘测的阶段,研究人员会拿着一台计算机并接上接收模块走在走廊上,在每个格点会等8秒来接收40组RSSI特征,再求其平均值,以得到一个RSSI特征向量。
在追踪阶段中,接收模块每220ms会收集beacon送出的封包,并将RSSI向量送回定位系统。定位系统会将收到的向量跟特征地图做比对,并找出最有可能的位置。我们使用KNN的方式来找出前K个最有可能的特征,然后计算这K个的加权平均位置。在我们的实验中 K值为3。
测试平台
我们以测试平台作为测量研究的平台,在台湾大学的博理馆六楼布建了24个beacon节点,图一为博理馆六楼的平面图,其中,较小的房间如611到629为教师的办公室,而剩下的房间为研究助理的实验室。我们将这些类似Telos的beacon等距地布建在走廊上,为了方便进行测试平台的除错,测试平台上的beacon皆透过USB连接到两台计算机,而这两台计算机分别位于621和613,每台计算机分别连接12个beacon 节点。这两台计算机就像网关一样,让操作者很容易透过USB更新程序或是取得信息,由于这个测试平台使用外接电源,因此可省却更换电池的麻烦,并可长时间进行测量。
USB链接
标准USB接口的有效传输距离大约是5公尺,为了让节点之间有效距离可以离的更远,我们使用USB的延长器(USB Extender)。USB的延长器是使用可以延长有效传输距离到45公尺的市售现成产品。它里面的『local unit』将输入的讯号调变成可在任何CAT5e规格网络在线传输的讯号,另一边的『remote unit』则将讯号解调变成USB的格式。
为了避免布建起来会有太多冗长的线,我们采用一种链状(chain)的结构,如图二(a)所示,也就是将邻近的beacon 节点串在一起,在整个链状结构的一开始,先用一个4埠的USB集线器透过USB连到两台计算机中的其中一台,有三个beacon 节点会接在这个集线器上面,接下来会利用USB延长器与下一个USB集线器连接,以这种方式一直连接直到达到USB延长器的限制,也就是计算机和最后一个集线器的距离不能超过45公尺。这也是测试平台为什么需要用两台计算机来串接beacon 节点的原因。
电源供应
提供足够的电力给beacon 节点及USB的装置是另一个面临的挑战,根据测量,一个beacon 节点峰值电流大约是60毫安,USB集线器大约是5毫安,USB延长线大约是20毫安,因此,一条链状结构会消耗超过800毫安,从计算机的USB埠连接过来的电源,无法满足如此高的电流消耗需求。
于是我们使用可以外接电源的USB集线器,并使用一条可以连接链状结构上每个USB集线器的电源供应器,如图二(a)所示,此电源供应器最大可以提供3安培的电流。USB埠运作的额定电压为5伏特,由于这条链状结构很长也消耗了不少电流,在最后一个USB集线器大约会降1伏特,所以使用一般5伏特电源供应器可能会不足够,因此我们使用了6伏特的电源供应器。在测试平台里面的每个装置,包括beacon 节点、USB集线器、USB延长器都测试过可以承受6伏特的电压。最后一件要做的事就是剪断USB延长器中『remote unit』和USB集线器之间的供电接脚,如图二(b)所示,这是为了要确保USB集线器的供电来源完全是由外接电源所提供。
![《图二 测试平台配置:(a)链状链接、(b)移除电源(VCC)接脚》](/art/2009/04/021723422030/p2.gif)
《图二 测试平台配置:(a)链状链接、(b)移除电源(VCC)接脚》 |
|
数据收集
为了量化出不同因子在不同观测误差下所造成的影响,我们进行了一连串的实验。首先,在L型区域进行实地勘测(site survey),此区域是在图一的阴影部份,称为训练区域。在训练区域中,每隔30公分取得一组RSSI讯号,整个训练过程大约需40分钟。
接着,在追踪的阶段中,tag每隔220ms会将所有的RSSI 读值包装成一个封包,然后透过USB 接口传递给笔记本电脑,而笔记本电脑会将所记录的封包详细分析RSSI值与推导定位误差。
以下有10组不同的trace数据收集,是tags在不同的环境配置下所取得的traces。这些数据数据将公开于http://nslab.ee.ntu.edu.tw/bllive/ 以供进一步的学术研究。
实验说明
实验I
本实验使用如三(a)图中所示的三个具有不同天线方向的tag,此三组tag将被置于x2位置(图一)上的椅子。在实验I中,这三种不同天线方向的tag都分别会在10分钟中收集2727个位置估测。这三组traces分别被命名为I.a、I.b与I.c。
实验II
在x2位置上的一个tag,被置于椅子上或是在无人走动的环境里被一个操作人员拿在手中纪录RSSI。这两组所收集到的traces被取名为II.a与II.b。另外还有两组不同的traces,其一是当一个tag被置于椅子上且有人静止不动靠站在椅子旁时,此组trace是为II.c;其二为纪录有人在椅子旁来回走动状态下的RSSI数据,即为II.d。以上这些情况里, tag的状态是固定不动在相同的位子与方向上。针对实验II上述的四组trace数据,其每组tag将分别执行5分钟去收集1363个位置估测。本实验也在x1位置(图一)上重复一次,纪录tag拿在手上的RSSI数据,此组trace被记为II.e。
实验III
在实验III中,有两个tags被分别放置于x1与x2位置(图一)的椅子上。在x1位置(图一)的tag将执行18个小时纪录RSSI数据,此组RSSI trace记为III.a。另一组trace,被放置于x2位置(图一)的tag将执行15小时纪录trace是为III.b。
分析
在本节中,针对天线方向、障碍物与Beacon摆放密度这三项因素,对RSSI数据收集所带来之影响进行分析。
天线方向对RSSI之影响
为了了解天线的方向性对定位准确度的影响,我们针对三个不同方向的tag所做的实验数据(分别为I.a、I.b及I.c)进行分析。平均定位错误分别为0.88、2.05与3.17公尺 ,也就是说,一个方向的平均错误可以是另一个方向平均错误的三倍到四倍。图三(b)所显示的是从不同beacon点读进来的RSSI,共有三个群组:A、B及C,代表从tag A、tag B及tag C收集到的数据,如图三(a),每一条水平线代表从一个beacon点接收十分钟的RSSI值。
我们观察到,从某些beacon点收集到的RSSI变化不会太大,但是从有些beacon点收集到的RSSI则变化很明显;举例来说:在tag A读到RSSI为-84的beacon,在tag B跟tag C读到的RSSI分别为-70、-75,这样的差异对KNN的计算结果影响非常重大。
当收集RSSI的时间增加时,我们观察到,让定位准确度下降的最主要原因,是由于训练期间跟追踪期间的天线方向不一致。类似的现象也曾于另外一份研究探讨传输范围与RSSI关系的研究报告[4]中出现。
![《图三 天线方向的影响:(a) Tag的三个方向、(b)实验1中,三个不同方向的tag读进来的RSSI。每一个RSSI是由40个取样值做平均出来的数值。》](/art/2009/04/021723422030/p3.gif)
《图三 天线方向的影响:(a) Tag的三个方向、(b)实验1中,三个不同方向的tag读进来的RSSI。每一个RSSI是由40个取样值做平均出来的数值。》 |
|
障碍物对RSSI之影响
射频讯号的传输对于环境周遭的障碍物非常敏感。环境中存在许多其他的障碍物以及噪声,如建筑物结构,人的动作,以及电子设备的使用。建筑物结构的影响是隐性的,反映于RSSI特征上。障碍物影响RSSI强度可分为两种:实体障碍物、无形障碍物。
- (1) 实体障碍物:Tag天线信号传递对附近障碍物的影响是很敏感的。为了研究障碍物对定位准确度的影响,分析在四种不同状况下所测得的数据。(1)Tag放在椅子上;(2)手拿着Tag;(3)有人站在Tag旁边;(4)有人环绕着Tag。从图四(a)上可以看出,Tag放在椅子上比手拿着来的稳定。这很可能是因为手和身体影响了多方向信号传递的关系。
- (2) 无实体障碍物:我们分析了一个进行18小时的实验数据。从图五可以看到RSSI的信号在12:00AM到7:00AM之间保持的相当平稳,而在9:00AM到12:00AM之间震荡相当厉害。尽管RSSI变化量各不相同,但是定位误差还是保持相似,即午夜的1.58公尺和下午的1.52公尺。我们从结果观察到人类行为确实影响RSSI信号强弱,但是对平均定位误差影响不大。
![《图四 用户对RSSI的影响:(a)RSSI在4种状况下分布情形、(b)定位误差的CDF 》](/art/2009/04/021723422030/p4.gif)
《图四 用户对RSSI的影响:(a)RSSI在4种状况下分布情形、(b)定位误差的CDF 》 |
|
![《图五 背景障碍物的影响:长时间之RSSI读取值 Trace III.a》](/art/2009/04/021723422030/p5.gif)
《图五 背景障碍物的影响:长时间之RSSI读取值 Trace III.a》 |
|
Beacon摆放密度对RSSI之影响
针对beacon布建密度对定位准确度的影响,在实验室利用不同的beacon数目来进行tag拿在手上于x1以及x2不同位置之定位实验。每个beacon间距10公尺,选取的beacon均匀分布在实验环境中。图六(a)表示tag拿在手上于x2位置之定位误差的CDF图形。当beacon数目减少为原来一半,实验结果显示定位准确度降低。
接着进行tag拿在手上于x1以及x2不同位置在1/3 beacon数目之定位实验,我们预期准确度会降低得更明显。图六(a)及(b)显示,其中一组使用1/3 beacon数目的准确度结果却与使用所有beacon数目的结果近似。另外两组使用1/3 beacon数目则在超过4公尺有80%的准确度。造成准确度高的原因是因为测量的两个点位置靠近周围的beacon。准确度差的原因是因为测量点距离beacon比较远。定位点的位置对于准确度的影响是非常敏感的,如果定位点的位置非常靠近beacon,准确度就会提升。因此,beacon布建的密度越高将会提高量测点靠近beacon的机会,进而提供更强健并且误差变异性较低的定位系统。
![《图六 Beacon密度的影响:(a) tag拿在手上于x2位置在1/2 beacon密度下之定位误差的CDF图形。(b) tag拿在手上于x2位置在1/3beacon密度下之定位误差的CDF图形。(c) tag拿在手上于x1位置在1/3 beacon密度下之定位误差的CDF图形。》](/art/2009/04/021723422030/p6.gif)
《图六 Beacon密度的影响:(a) tag拿在手上于x2位置在1/2 beacon密度下之定位误差的CDF图形。(b) tag拿在手上于x2位置在1/3beacon密度下之定位误差的CDF图形。(c) tag拿在手上于x1位置在1/3 beacon密度下之定位误差的CDF图形。》 |
|
结语与未来发展方向
本文提供了详细的RSSI特征定位系统研究,研究发现,若能使用均匀性辐射传播的天线,且在实地勘测中,摆放接收讯号tag的方式,与之后在追踪时的摆放方式相似,则可以有效增加RSSI特征地图的强健度,并且可以得到更一致和可预期的定位错误。然而,我们的研究还不算十分完整,仍可更深入研究实体障碍物和beacon密度的影响,以找出它们与定位精准度的细部关连。
研究社群或许更为关切的是,定位系统中位置推导方法所带来的影响,我们知道目前存在其它比KNN更为复杂的技术,因此决定将这个实验所收集到的数据公开,别的团队便可以利用这些数据去比较KNN和其它技术的优缺点。相信分享从实际测试平台获得的数据,可让大家最终都从中获益,并在未来发展更好的效能评估方式及对定位系统有更深入的了解。
---作者萧俊杰为国立台湾大学电机工程研究所博士班学生,现任龙华科技大学助理教授;刘承荣为台大电机工程研究所博士班学生;陈冠名为台大网络多媒体研究所硕士班学生;林宗翰、吴意曦为台大电机工程研究所硕士班校友;黄宝仪为美国南加大信息工程博士,现任台大电机工程系副教授---
参考数据:
- ---作者萧俊杰为国立台湾大学电机工程研究所博士班学生,现任龙华科技大学助理教授;刘承荣为台大电机工程研究所博士班学生;陈冠名为台大网络多媒体研究所硕士班学生;林宗翰、吴意曦为台大电机工程研究所硕士班校友;黄宝仪为美国南加大信息工程博士,现任台大电机工程系副教授---
- [2] H. Lim, L. C. Kung, J. C. Hou, and H. Luo, “Zero configuration, robust indoor localization: theory and experimentation,” In Proceedings of IEEE INFOCOM 2006.
- [3] J. Degesys, I. Rose, A. Patel, and R. Nagpal, “DESYNC: self-organizing desynchronization and TDMA on wireless sensor networks,” In Proceedings of IPSN 2007
- [4] Dimitrios Lymberopoulos, Quentin Lindsey, and Andreas Savvides, “An Empirical Characterization of Radio Signal Strength Variability in 3-D IEEE 802.15.4 Networks Using Monopole Antennas,” In Proceedings of EWSN 2006.