丁祺遠
(華北計算機系統工程研究所,北京 100083)
近年來RFID 技術以其讀取速率高、傳輸范圍廣、成本低、功耗小等優點,被廣泛應用于定位領域,幫助人們快速獲取位置信息的同時,提高日常生產生活效率。 RFID(Radio Frequency Identification)定位技術按照環境參照物存在與否可以分為絕對定位技術和相對定位技術。
RFID 絕對定位技術包括利用目標和參考標簽間的接收信號強度(Received Signal Strength Indicator, RSSI)相似性定位的LANDMARC 改進方法,利用相位差構建虛擬觸摸屏的RF-IDraw 方法以及利用到達角進行標簽方位感知等方法。
RFID 絕對定位技術在實際生活有很多應用,例如與人臉識別技術結合實現及早記錄人物特征并預判移動方向,與無線通信技術相結合實現倉儲智能管理,以及在室內定位和行為分析等方面的應用。絕對定位技術中具有較高精度的絕對物體定位方案PinIt在90%準確率下僅實現了16 cm 的精度,因此RFID 絕對定位技術顯然難以應用到精度要求較高的應用中。
在RFID 相對定位方面,較為突出的相對定位解決方案是被2015年NSDI 的一篇論文提出的,利用時空相位(Spatial-Temporal Phase Profiling, STPP)分析來定位二維空間中的對象。而在論文中作者通過實驗發現,當標簽足夠靠近閱讀器時,閱讀器讀取接收率會達到一個臨界值。作者通過計算閱讀器接收到的時間和RSSI 信息確定標簽的相對順序。RF-Scanner則通過對時間相位信息應用不同數據處理方法,實現標簽定位排序功能。
由于RFID 定位技術易受到信號波動、多徑效應等因素影響,相較于RFID 絕對定位技術,RFID 相對定位技術通常具有更高的精度和更好的發展方向。因此相對定位技術更適合高動態和時間敏感的應用,例如圖書管理、航空行李分揀、工廠裝配流水線以及車輛精準停車制動。
本文設計并實現一套基于RFID 的圖書館書籍排列檢測系統。該系統主要包括兩個技術創新:一是通過改進RFScanner 方法,更有效利用核心V 區域實現相對定位;二是實現標簽信息數據存儲及標簽位置信息的動態和靜態顯示。
利用時間相位計算相對位置的方法大多是基于一個既定事實:平行于標簽平面的天線勻速掃過標簽,在以時間信息為X 軸、以讀取到的相位信息為Y 軸構成的笛卡爾坐標系中相位信息模式如下:天線與標簽距離最短點的左側相位值在周期內遞減,右側相位值在周期內遞增,距離最短點為周期內相位值極點。天線與標簽距離最短點就是用來確定標簽相對位置的參考點。
天線與標簽距離最短點附近相位數值呈先減小后增大的趨勢(形似“V”型故稱V 域),稱為核心V 區域,如圖1所示,閱讀器讀取單個標簽的時間相位信息。基于這一事實,目前主要有兩種通過時間相位信息對標簽進行排序定位的方法,它們分別是STPP 和RF-Scanner。

圖1 相位呈周期性跳變核心V 區域擬合曲線示意圖
STPP通過動態時間規整(Dynamic Time Warping,DTW)方法將采集的時間相位信息與事先計算好的DTW 模板進行匹配,計算得到核心V 區,再通過二次函數擬合計算最低點的數據作為位置的判別信息。
此方法在實際應用中缺陷在于不同標簽的數據量在核心V 區兩邊分布不均以及不同標簽密度下每個標簽計算后的數據特征也不相同,因此很難通過通用的DTW 模板進行匹配求解核心V 區。而天線與標簽距離選取不當會導致V 區域數據過少,不足以進行位置判別。
RF-Scanner認為核心V 區數據對提高準確度必不可少,將數據在周期跳變點進行移動拼接成大“V”形數據,然后進行二次擬合求解最低點值作為標簽的位置信息。
通過實驗發現,一些不可控因素如標簽密度增加、多徑干擾、天線運動中的輕微抖動或位置偏移等情況,會導致接收到的時間相位信息出現部分缺失或異常現象,這對數據拼接是一個巨大挑戰。如圖2圖3所示,數據缺失極易導致拼接失敗進而影響擬合效果,干擾標簽位置判定。

圖2 RF-Scanner 讀取的原始相位數據

圖3 擬合曲線錯誤的示意圖
此外STPP 和RF-Scanner 兩種方法在時效性方面性能較差,都需要接收標簽完整的相位信息后才能確定標簽位置。相位信息接收完畢,成功識別該標簽位置時,天線已距離此標簽水平1 m 以上的距離。這種缺陷嚴重束縛了兩種方法在實際場景中的應用,例如圖書館管理員只能等掃描完全結束才能發現書籍位置擺放錯誤。因此實際場景中定位方法需要在準確度極高的情況下花費盡量短的定位時間實現書籍定位。
注意到核心V 區域外的數據易導致拼接失敗或圖形扭曲,且使用這部分數據進行定位會帶來額外的時間開銷,因此去除失效數據可以有效提高定位的準確度和節約定位時間。如圖4所示,去除失效數據后再進行數據拼接、二次曲線擬合,曲線擬合效果明顯優于圖3。數據拼接完成后,對拼接失敗的數據進行裁剪并盡量平衡“V”區域兩邊數據量再進行擬合判斷。通過大量實驗求證,改進后的RF-Scanner 方法在準確度上提升非常大,并且不使用核心V 區外拼接失敗的數據節約了大量時間開銷。說明了并非所有的數據都對標簽定位有益,核心V 區域的數據足以實現高精度的標簽相對定位。

圖4 RF-Scanner 改進拼接后示意圖
書籍排列檢測系統主要包含實時定位和存儲顯示兩種功能模塊。
以圖書館場景為例,用搭載閱讀器和天線的小車模擬檢測設備。檢測設備開始運行后,小車水平掃描過書籍標簽排列,天線覆蓋范圍內的書籍標簽被閱讀器不斷激活詢問,讀取到的相位值會隨著小車移動而變化。
排列檢測系統每接收到標簽信息,判別該標簽相對位置是否已確定。如果該標簽相對位置已確定則僅作數據收集;若相對位置沒有確定,回溯收集的該標簽相位信息以判斷核心V 區域是否可以計算確定。核心V 區一旦確定就進行相對位置判別,否則就繼續收集數據等待下一條信息,實時定位模塊流程如圖5所示。

圖5 實時定位模塊流程設計
在圖書館場景下,閱讀器讀取到的標簽原始數據信息(未處理過的相位信息)、計算后的擬合曲線、標簽書籍相對順序以及書籍正確順序構成了圖書館書籍排列檢測系統顯示模塊的主要顯示內容。構建時間相位笛卡爾坐標系,用來顯示讀取到標簽相位信息及擬合后曲線信息。
圖書管理員可能在使用系統掃描過程中或掃描完畢后更換錯誤書籍位置,因此系統需要同時具備動態和靜態顯示兩種功能。靜態顯示將已掃描過的標簽順序顯示在屏幕上,因此原始數據信息、曲線信息、標簽號以及標簽書籍信息等數據都需要存儲在數據庫中。而動態顯示則是在掃描過程中逐步顯示當前獲取到的標簽曲線信息以及位置信息。模塊功能設計如圖6所示。

圖6 存儲顯示模塊功能設計
在RFID 系統中,射頻信號的相位值表示接收信號與發送信號間的偏移程度,范圍為0 到2π。如果閱讀器天線到標簽的距離為,通過電磁反向散射耦合的方式,超高頻閱讀器與被動標簽間通信信號通信距離為2,閱讀器實際讀取到的相位值可表示為:


許多現代商用超高頻RFID 閱讀器,例如IMPINJ R2000,可以檢測發送和接收信號間的相位差。相位周期性使得標簽相位值表現距離變化的同時呈周期性變化,例如圖1中左側靠近標簽相位值呈周期遞減,右側原理標簽相位值呈周期遞增。此外,超高頻RFID 閱讀器采樣頻率高,可以精準采樣獲取標簽時間相位信息變化規律,滿足圖書排列檢測系統對于書籍的及時準確定位需求。
圖書館場景下的小車和閱讀器開始運行后,天線功率覆蓋范圍內的標簽會被不斷讀取。對于每個標簽,閱讀器會接收到標簽數量不等的時間相位信息。將閱讀器接收到該標簽時間相位信息表示為:

其中表示閱讀器接收到到此時刻該標簽相位值的時間,表示此時刻讀取到的該標簽的相位值。
由于書籍排列檢測系統在保證精度情況下更注重時效性,如圖5所示,獲取到新的標簽數據就立即判斷標簽位置是否已經確定,未確定則進行核心V 區域數據查找。
為保證相對定位準確度,需要挑選出較為完整可靠的核心V 區域數據進行位置判定。核心V 區域的查找過程主要包括四個部分:起始點查找、數據平滑處理、跨斷點數據處理和形狀檢測。
(1)起始點查找。起始點查找是數據回溯的過程,首先從觸發查找點(本次采集到標簽相位的時間點)向前回溯若干個數據點,計算這些相位數據方差判斷是否在設置的閾值以內,然后計算線性擬合直線趨勢判斷是否相位值處于遞增狀態(即核心V 區左側遞增區域)。若方差或擬合直線不滿足條件則認為這是一次錯誤的觸發查找,不進行起始點查找,僅做收集數據。若滿足上述兩項條件,方法回溯收集的數據以找到核心V 區域的起始點。
起始點是舊周期遞減趨勢結束新周期遞減開始的數據點(即核心V 區左側相位值遞減起點),與上周期趨勢結束點的相位差值會略小于2π。利用周期性變化特征來對起始點進行判別。
判別完成后,結束點即為后續節點中該周期內相位值遞增過程結束點,核心V 區域大致范圍就已確定。
(2)數據平滑處理。在確定核心V 區大致范圍后,為提高二次擬合曲線準確度對數據進行平滑處理,主要解決由于數據缺失而在核心V 區域之外的數據粘連問題。
采用均值替換法,某個相位值采樣點與同周期變化的附近幾個采樣點均值的絕對差過大(超過設定閾值),根據周圍采樣點平均值來填充替換掉這個采樣點。均值替換完畢后,再次對核心V 區域進行回溯查找,并為防止單側數據過多干擾,平衡核心V 區左右兩側數據量。
(3)跨斷點數據處理。在回溯檢測核心V 區過程中,相位數據的少量缺失可能由于環境因素導致,也可能是部分數據相位值發生π 左右的相位翻轉造成的(例如,理論相位值為π,而實際測量值約為2π 或者0)。數據缺失會嚴重影響擬合曲線計算和定位準確度。
采用設置數據窗口處理跨斷點,實驗表明設置為5 的窗口能夠有效解決跨斷點帶來的數據錯誤。計算窗口內的五個數據采樣點平均值,然后將采樣點相位數據與均值進行比較。如果對比結果超過設定閾值,則根據核心V 區域數據量情況使用平均值代替或者刪除這個采樣點。當窗口內部的數據點處理完畢后,判斷窗口中沒有其他跨斷點,可以繼續移動窗口來處理后續數據采樣點。
(4)形狀檢測。數據平滑處理結束后,對核心V 區域數據圖像形狀以及數據量進行檢測,防止由于核心V 區數據形狀不合適或數據量不足導致的二次擬合曲線不準確。
若核心V 區數據量少于期望值時則表示該標簽查找失敗。若數據量足夠,計算核心V 區左右兩端方差和擬合直線進行判別,方差應在設定的閾值范圍內,且左右兩側擬合直線趨勢應分別為線性遞減和線性遞增。只有滿足所有條件,才開始計算核心V 區域擬合曲線及標簽位置,否則判定本次觸發點查找核心V 區失敗繼續作數據收集,如圖5所示。
核心V 區的最低點位于天線到標簽距離最短點,在此點左邊每相位周期內的具有單調遞減的趨勢,右邊每相位周期內的具有單調遞增的趨勢。這是由于小車搭載的天線處于從開始檢測到某標簽到最終此標簽遠離天線覆蓋范圍的移動過程中,天線到標簽的直線距離是先遞減到遞增的過程。在此過程中,相位值會反應距離的變化趨勢并且根據相位周期性出現分段的現象,所以標簽的時間相位數據會出現如圖1所示的分周期遞增遞減現象。根據1.2 的分析,相對定位的關鍵是找出核心V 區的理論最低點。
既然核心V 區域的最低點對應著標簽的相對位置,那么通過直接讀取核心V 區相位值最小采樣點是否能夠找到最低點呢?答案是否定的。
由于無法避免信號波動等誤差的影響,閱讀器讀取到的相位數據值會存在數據波動,并且由于讀取標簽信息的過程是數據離散采樣過程,所以閱讀器讀取到的最小值點不代表實際相位最小值點。因此計算標簽核心V 區二次擬合曲線的相位最低點來作為標簽位置,二次函數方程可表示為:

其中表示為常量值,表示時間變量。
通過大量實驗,現階段方法相較于1.2 節中改進的RFscanner 方法實現更快更精準定位,但部分標簽由于數據不足不能通過3.1 節的形狀檢測進行定位。
小車沿標簽排列方向運動,閱讀器讀取的標簽時間相位數據呈周期性變化,天線與標簽距離變化表現為相位數據圖像分段遞減遞增趨勢。而當改變小車與標簽排列距離,即改變天線平面與標簽平面的距離,則標簽相位數據會在周期分段遞增遞減的同時在0 ~2π 內上下平移。因此小車與標簽平面距離選取不當,即天線與標簽距離選取不當會導致核心V 區域數據太少,無法正確判定相對位置進而擬合計算失敗。如圖7所示。

圖7 距離選取不合適示意圖
為保證核心V 區域的數據量,根據小車不同的運行速度應設置不同的判斷閾值。當數據量不足時,降低原始數據的核心V 區域,即降低相位值并將其與核心V 區最新數據拼接,以確保數據充足。盡管會降低3.1形狀判斷的處理效果,但是可以有效減少定位錯誤情況發生。
由于閱讀器的采樣頻率是固定的,因此標簽密度增加或者小車速度增加時,閱讀器讀取的標簽數據量會減少。讀取到的離散標簽相位點過少,二次擬合計算出的曲線方程準確度有限,無法準確計算得到的曲線最低點位置,嚴重干擾相對定位準確度。
降低標簽密度或掃描速度可以有效增加核心V 區域數據的采樣密度,但在實際應用中是不可行的。擺放的書較薄時,書脊上標簽的密度就不可避免增加。而在圖書管理過程中,小車的行進速度直接影響工作效率。
考慮到計算該方法只需要核心V 區域以及其周圍的數據,將有效數據讀取集中到核心V 區域是最佳解決方案。
因為閱讀器頻率固定且標簽天線間距保持不變,天線覆蓋范圍內標簽數量越少,閱讀器對每個標簽采樣率越高,讀取到的有效數據就集中在標簽響應更快的核心V 區。因此減小天線覆蓋范圍即減小功率,可以減少環境中距離過近的標簽的干擾,提高系統的處理效率。而增大處理功率則可以增加單位時間內獲取數據量,解決小車速度過快帶來讀取時間減少的問題。
通過功率調節,選擇合適的功率,控制天線覆蓋范圍,在保證核心V 區域數據量同時,增加核心V 區數據密度。
圖書排列檢測系統將會運行在圖書館這類物品分布較為密集且單個物品體積較小識別實時性要求高的應用場景下。系統要求每個書籍貼附一個超高頻標簽,每個標簽擁有各自的ID,ID 是圖書的唯一標識,ID 及圖書標簽相關信息提前存儲在數據庫中。在圖書館檢測場景中,標簽附在書脊上(或書籍最外層),閱讀器和天線搭載在移動小車上,使閱讀器和天線勻速直線運動掃過標簽書架。
硬件:系統包括電腦、ImpinJR420商用閱讀器、定向天線、可調節移動速度的小車和一組UHF 超高頻被動標簽。將天線和閱讀器固定在小車上,使小車沿標簽排列平面勻速直線運動,模擬圖書掃描過程。
軟件:基于JDBC 的顯示界面程序,MySQL 存儲書籍標簽相關信息。實時定位界面程序通過電腦以太網連接到RFID 閱讀器,來得到每個標簽應答的信號相位信息。
采用標準肯得爾距離評估定位精度,該距離可衡量兩個序列間的偏差,當序列完全相同時相似度為1,當序列完全顛倒時相似度為0,定位精度直接取決于距離數據大小。假設序列為標簽實際排序,序列為方法測量序列。計算出的肯德爾距離為:

其中為標簽總個數,為肯得爾函數。
此外進行絕對定位準確度評估,以第一個標簽為起點,累計(-1)組標簽寬度和實驗安排的標簽間距計算求得第個標簽的實際位置l,根據小車速度、擬合曲線最低點的值(小車到對應位置的時間值)計算得到的第個標簽位置測量值l,絕對平均誤差計算為:

4.3.1 界面運行情況
連接電腦、讀寫器和天線,在排列好的標簽隊列上平行移動天線。擬合后曲線依次從左往右動態實時顯示(曲線最低點代表各個標簽的相對位置),標簽序列在下方實時顯示(10XX 代表讀取到的標簽相對順序,20XX 代表標簽序號順序)。而不同于動態打印,靜態打印直接顯示標簽序列位置信息,可選擇是否打印擬合后曲線信息或原始數據信息。擬合曲線(不同標簽顏色不同)及標簽順序打印效果如圖8所示。

圖8 部分動態靜態顯示效果
4.3.2 準確度實時性對比
在此部分中,通過重復多組實驗評估了我們方法的表現。對標簽陣列進行實驗,此場景下標簽間距分別為0.7 cm、 1 cm、2 cm、,小車速度從0.1 m/s 到0.3 m/s,每次增加5 cm/s,標簽數量為100 個,閱讀器天線到標簽平面的直線距離為45 cm。部分測試結果對比如表1、表2和表3所示。

表1 0.7 cm 標簽間距,0.1 m/s 小車速度,不同方法對比

表2 1 cm 標簽間距,0.1 m/s 小車速度,不同方法對比

表3 2 cm 標簽間距,0.1 m/s 小車速度,不同方法對比
經過實驗證明,RF-Scanner 明顯準確度偏低,正如在1.2節分析的,多徑干擾、天線運動中輕微抖動或位置偏移等情況非常容易使讀取的數據缺失或者發生錯誤,而改進后的RF-Scanner 明顯彌補了其中的很多缺陷。我們的方法基于改進后的RF-Scanner,通過核心V 區平滑處理、二次擬合和周期性處理等方法使得所獲得的核心V 區數值更加精準易算,進一步提高了準確性和實時性。
基于RFID 的圖書館書籍排列檢測系統在實時定位方面,實現了一種有效利用核心V 區域相位信息的方法,該方法相較于現有的RF-Scanner 方法在更短的時間內更有效地確定標簽的位置,且通過數據平滑處理等方式排除天線標簽抖動、數據波動等情況影響,因此排列檢測系統可以有效實現書籍定位節約圖書檢測的人力物力。
在實現標簽信息的數據存儲顯示方面,將書籍信息、標簽信息及擬合曲線等信息存儲在數據庫中,將讀取到的原始數據、擬合曲線以及書籍排序可供選擇動態或靜態在界面上顯示。可選擇動態或靜態顯示書籍排序情況使得系統使用更人性化,圖書管理員可以更加簡便直觀的在排列檢測系統上了解書架書籍的排序情況。