夏俊輝,李 杰,羅飛舟,彭曉飛,常宏磊,于海波
(1.中北大學儀器與電子學院,山西 太原 030051;2.中北大學儀器科學與動態測試教育部重點實驗室,山西 太原 030051;3.中國運載火箭技術研究院宇航業務部,北京 100071)
隨著我國公路、鐵路、高鐵等交通方式的不斷發展擴建,隧道施工日益增多、建設范圍逐漸擴大,但是隧道施工存在很多安全隱患問題。由于實際情況中存在地下通信信號差,照明亮度不足,小半徑曲線視線不佳,能見度短,隧道內空間狹窄等問題,導致地下人員的定位精度低,生產過程中出現效率低、危險性高的情況。
針對上述問題,許多學者都致力于人員定位的研究,并提出了以下技術:紅外定位技術,但介于光的傳播特性使其不能通過障礙,紅外對其它光的擾動性大,并且其傳播距離短于藍牙技術;無線網絡技術,傳播距離可以達到100 m 并有效地解決無線網絡中的多徑干擾,但無線網絡定位會受到2.4 GHz 無線信號的干擾,導致定位精度急劇降低,從而影響定位系統的穩定性。超聲波定位系統中,由于聲波的傳播速率比電磁波的傳輸要慢得多,因而傳輸同樣的信息所需的時間也較多,從而降低了系統的傳輸能力。現階段市面上多數UWB 定位系統多是以STM32 單片機為主控芯片,當數據上傳速率快時,基站與標簽卡會存在上傳速度不匹配的問題[1-2],但是FPGA(Field-Programmable Gate Array)可并行處理各個模塊,使得信息流進行高速傳遞,可以很大程度地降低接收與發送數據所需時間,減少傳輸速度不匹配的問題發生。
針對以上不足,本文提出采用FPGA 作為主控芯片的隧道內UWB(Ultra-Wide Band,超寬帶)定位系統,在電腦端采用設計的上位機對隧道內人員實現實時精確定位、數據傳輸等功能,并采用效率較高的卡爾曼濾波算法對后端采集數據進行優化,達到提高系統定位精度、增強系統魯棒性的效果。
UWB 是一種利用納秒至微秒級的非正弦窄脈沖實現數據傳輸的無載波通信技術。
UWB 技術具有以下特點:
1)傳輸效率高、帶寬大。在UWB 技術中信號帶寬可達到1 GHz 甚至更高,并且其數據的傳輸速率最大可達到1 000 Mb/s。
2)功率低。UWB 極大的帶寬保證了較低的發射功率。因為這一特點,很大程度上延長了電池壽命,保證了較長的系統工作時間。可以長時間看到在隧道工作的工人的運動軌跡,在發生意外情況時對于救援工作有巨大的幫助。
3)精準度高。UWB 定位技術在測試人員無遮擋物的前提下,其精度可達到10 cm。
4)抗干擾能力強。由于UWB 的占空比一般為0.01~0.001,因此其具有較高的處理增益,抗干擾能力強。盡管超聲波、紅外線定位的精度也可以達到厘米級,但其抗干擾能力以及穩定性遠不如UWB 定位技術。
UWB 定位與傳統定位方式的差別在于不需要傳輸信息的載波,比如超聲波、激光等,而是利用電子標簽設備發送具有納秒級以下的非正弦窄脈沖來傳輸數據[3],固定基站接收到來自標簽傳輸的數據后再計算時間差進行UWB 定位。
UWB 定位基本原理基于三邊測量算法。基站A 的坐標定義為(x1,y1,z1),基站B 定義為(x2,y2,z2),基站C 定義為(x3,y3,z3),基站D 的坐標為(x4,y4,z4)。分別以A、B、C、D 為中心建立4 個半徑分別為R1、R2、R3、R4的不重合圓,4 個圓相較于標簽卡E,在此基礎上以4 個圓心為參考節點,E點為移動點,求解的標簽坐標E為(x,y,z),由最小二乘法列出公式進行計算[4]。
將這些式子展開得到:
將上述公式轉換為矩陣相乘的形式:
綜上所述,當知道A、B、C、D 的坐標以及到標簽的距離,根據以上推導公式即可得到標簽的坐標,從而定位到標簽的位置。
在UWB 定位中,主要計算方法有信號到達時間定位法,它通過測量UWB 信號在基站與標簽之間往返的飛行時間(Time of Flight, TOF)來計算距離。
信號到達時間定位法的優勢在于對硬件設備要求相對較低,通過計算兩個節點之間信號往返的時間實現測距,并且在測距計算過程中不依賴讀卡器與識別卡的時間同步,因此沒有時鐘同步偏差所產生的誤差[5]。
單邊雙向測距方法作為目前原理最簡單的測距方式,由于其飛行誤差會隨著延遲TREPLY 和時鐘偏移的增加而增加,會使得測距不準確,不符合實際工程使用要求。因此為減少其誤差,在使用UWB 測距時常常使用雙邊雙向測距,其原理圖如圖1 所示。

圖1 TOF 測距圖
基站A 主動發起第一次測距指令,當標簽卡收到指令后立即再向基站返回數據,而當基站收到來自標簽卡的數據時再次發送第二次測距指令。因此得到4 個時間差。
使用以下公式來計算生成的估計飛行時間:
以上測距機制是非對稱測距方法,因為其對于響應時間不要求相同。在實際工程中很難保證基站與標簽的時間延遲相等,因此有可能會導致誤差增大。
DS 時鐘輸入誤差如下:
在具有20 ppm(差)鐘精度裝置A 和B 中,KA和KB的值分別為0.999 98 和1.000 02。在這里KA和KB是裝置A 和B 的實際和期望頻率。假設裝置A 與B 之間的距離是300 m,則無線信號在空中的飛行時間大概為1 μs,其誤差為20×10-6×1×10-6=20×10-12=20 ps,換算距離為6 mm,與300 m 比較而言幾乎可以忽略不計,因此即使響應時間不相等,對最終結果的影響也是微乎其微的。所以,雙邊測距是最常見的測距方法。
采用主動掃描標記法進行設計。所有的工作都集中在主基站發送處理指令上,具有很強的機動性,所有的操作都只需要控制主基站的配置[6],如圖2 所示。

圖2 四基站一標簽通信圖解
四基站通過標簽的通信功能為基站與標簽之間進行測距,主基站向從基站下達測距命令,從基站則將測距信息傳達至主基站,主基站與電腦端上位機相連接對定位數據進行采集[7]。
本文設計的標簽卡主要由FPGA 主控模塊(XC6SLX9)、DW1000 星載陶瓷天線RF 模塊、電源管理模塊組成。它的主要功能是向基站發送輪詢信標開始定位,接收系統的初始定位數據。標簽卡系統結構如圖3 所示。
保證雞群都能定期喂料、飲水等,這些工作間隔的時間不能過長,避免雞感受到饑渴感,最好為雞提供充足的料槽和水槽等,使用的比例為1∶1,如果為1 000只雞,準備的水槽和料槽最好各10個。雞舍內要保證充足通風,保證有害氣體的排出;光照也要充足,夏季時,一定要避免強光直接照射雞舍。此外,還要保證墊料的充足性,保證飼料密度適宜,夏天少、冬天多,最好為每平方米5~10只。如果為不同類型的雞,要禁止混合養殖。夏季時,要加強防暑和降溫工作;冬季時,在雞舍內噴水,確保雞舍內的濕度適宜。針對產蛋雞,也要為其提供充足的產蛋箱,增加撿蛋的次數,發現破殼蛋要及時挑出。

圖3 標簽卡系統結構
在UWB 定位實際運用中,保持標簽卡持續工作最重要的環節之一就是供電。電源模塊的主要功能是為各個模塊供電并且保障各個模塊可以正常工作。根據各個模塊不同的工作電壓,選擇合適的電源芯片或是模塊尤為重要[8]。該硬件系統中主控模塊FPGA 的內核供電電壓為1.2 V,而其I/O 口、配置芯片以及晶振的工作電壓為3.3 V,DWM1000 的工作電壓在2.8~3.6 V 之間,由于在設計標簽卡時考慮其必須便于攜帶,所以供電電源為3.7 V、800 mA 的鋰電池。因此采用TPS73601DBVRE芯片,該芯片可以穩定地輸出1.2~5.5 V 電壓,外接1.7~5.5 V,完全可以滿足該硬件系統對電源模塊的需求。供電原理如圖4 所示。

圖4 電源穩壓模塊電路圖
FPGA 作為主控芯片可提供DW1000 工作時所需要的使能信號、數據收發模式、工作模式配置等。FPGA主控芯片通過SPI 總線與DW1000 相連接,并且通過SPI總線與DW1000 進行數據傳輸[9]。
該系統選擇主控FPGA 芯片為XILINX Spartan-Ⅵ系列的XC6SLX9 芯片,其具備功耗低、體積小、設計靈活等特點,其內置9 152 個邏輯單元、11 440 個寄存器、576 Kb 的BlockRAM,可供用戶自由配置的I/O 口共102 個,具有8 個低功耗3.2 GB/s 串行收發器,帶有集成內存控制其的800 Mb/s DDR3,可配置多種接口協議,休眠掉電模式可實現零功耗,完全滿足系統設計需求,目前是性價比較高的FPGA 芯片[10-11]。與傳統的單片機相比,FPGA 芯片具有穩定的控制,且更合適應用于通信領域。
本文設計的定位系統是由愛爾蘭DecaWave 公司研制的DW1000 芯片和基于此芯片的UWB 定位系統[12]。該系統可以設置為跟蹤、導航和監視三種方式,該系統使用IEEE 802.15.4—2011 標準的UWB 收發信機,在視距情況下的定位距離達到290 m,最大定位精度為10 cm,同時還具備兩種低功耗模式。在此芯片中,包含了收發器、模式轉換器、電源管理、狀態控制器、SPI 接口。它的工作頻帶范圍在3.1~6.5 GHz 之間,滿足IEEE 802.15.4—2011 的超寬帶標準,具有低功耗、低成本的特點。DW1000 由包含射頻和基帶的仿真前端和包含接收機和發射機的數字后端構成。數字后端負責模擬前端向主機處理器傳輸和接收數據,與主機處理器進行互動,并提供工業級SPI 數據接口,執行不同的控制策略來維持和優化收發信機的性能。DW1000 芯片外圍電路配置如圖5 所示。

圖5 DW1000 芯片外圍電路配置
系統以Visual studio 2022 為開發環境,采用C#語言進行隧道人員定位系統的開發,該系統實現了對隧道人員實施全方位監測,為隧道內人員的安全以及施工效率提供了保障。該系統基本滿足隧道管廊對施工人員管理的實際需求。
上位機整體的設計思路如流程圖6、圖7 所示。該系統上位機的設計包括:精確定位、測距、上位機界面的設計。該基地臺利用基地臺與標簽間的通信取得距離信息,再把距離信息傳給交換機,由交換機將各基地臺間的距離信息加入到服務器中。最后,通過主機端的上位機對目標節點進行定位,并將相關信息顯示在通信界面中。

圖6 標簽節點程序流程圖

圖7 基站節點程序流程圖
在實際測試過程中,測得信號存在一定的粗差和噪聲。因此,為了降低噪聲并且減少粗差,加入卡爾曼濾波,進一步提高測試的精度以及穩定性[13]。
用TOF 距離值和距離變化率作為系統狀態向量Xk,建立TOF 距離模型:
式中:xk為系統狀態矩陣;A為狀態轉移矩陣;B為控制輸入矩陣;w為過程噪聲;uk-1為控制輸入。因在此過程中值極低,可忽略不計,因此公式變為:
式中:zk表示實際的測量值;H為轉換矩陣;v為實測噪聲。
卡爾曼濾波增益矩陣為:
由式(9)可知:卡爾曼增益Kk隨著k時刻的觀察噪聲Rk的變化而變化,當增益減小時,新觀測值對系統的狀態和狀態協方差矩陣的影響也會隨之而降低,因此,可行的優化精度為預測xk、xk-1的值,并由此推斷出。由式(8)推算出,且v的協方差方程為,檢驗量為,設定給定閾值C,當檢驗量小于C時,認為新觀測值不含粗差[14]。
為了比較定位系統的定位精度,將模擬隧道施工部門施工人員坐標系的二維定位,定位系統在10 m×10 m的區域并設定一定障礙以制造復雜環境進行定位實驗。在定位區域分別設置3 個、4 個、5 個基站后,選取8 個點,每個點采取200 組數據,選取縱坐標進行比較。不同基站數量測距表如表1 所示。

表1 不同基站數量測距表 m
由表1可知,在相同環境下,基站越多定位精度越準確。由三基站提升至四基站后,測距誤差減少0.07 m,但由四基站提升至五基站發現測距精度僅減少0.012 5 m,雖有一定提升,但實際應用中定位精度提升不明顯。因此,在規模較小且復雜區域內選用四基站進行定位足以滿足實驗要求,后續實驗均以四基站為基礎展開。
設置實驗環境如圖8 所示。實驗人員手持標簽卡在設定區域運動,選取8 個點取200 組數據并取平均值與實際測量值進行比較,為方便比較,對每個點進行橫、縱坐標誤差分析。實驗結果如表2、表3 所示。

表2 原始數據靜態測距表 m

表3 優化后靜態測距表 m

圖8 實驗環境
由表2、表3 可知,在卡爾曼濾波后定位精度有所提升,且誤差均方根有大程度的降低。在加入卡爾曼濾波后靜態UWB 測距平均精度可達到0.1 m 以內,相比未加入濾波精度提高一倍以上,除此之外,在加入卡爾曼濾波后,各個點定位誤差浮動較穩定,由此可知使用卡爾曼濾波算法進行優化后,定位精度有所提升且定位結果更加穩定。
為了更加直觀地體現卡爾曼濾波效果,選取加入卡爾曼濾波前后誤差最為接近的一組數據進行比對,粗線表示原始數據,細線表示濾波處理后數據,如圖9 所示,加入卡爾曼濾波后200 組數據更為平滑,濾波后粗差得到了更好的抑制。

圖9 卡爾曼濾波效果
在測試環境中,被測試人員按照8 m×8 m 正方形軌跡,從A點出發按軌跡行走一周后至A點結束,如圖10所示。

圖10 動態測試路線
其中在運動過程中分別在A、B、C、D 四點處采集標簽卡動態運動測距數據,采集100 組數據,實驗結果如表4 所示。

表4 優化后動態測距數據 m
由表4 可知,當被測試人員處于動態時,測距精度較靜態略低,但仍可使得測距平均精度達到0.2 m 以內,最大誤差為0.25 m,其定位精度仍處于較高水平。
為模擬隧道人員施工現場環境,對定位系統進行測試。被定位人員在測試環境中以正方形為軌跡進行運動,并將實際值與被測值進行比較分析。在真實路徑中選取10個點進行誤差分析比對,實驗結果如圖11、圖12所示。

圖11 定位系統軌跡圖

圖12 軌跡對比誤差曲線
通過對標簽卡的定位與追蹤以及對誤差曲線的分析可知,經過卡爾曼濾波后定位軌跡更加精準,并且二者最大誤差達到0.22 m,僅有兩點誤差值小于0.05 m,由此可知經濾波優化后的定位精度更加準確,并且更穩定。通過該實驗表明本文系統能夠達到較高的定位精度,能夠滿足對隧道人員的定位要求。
本文介紹了一種基于FPGA 實現UWB 隧道人員定位的系統,并依次從總體方案設計、硬件平臺、軟件控制以及后端算法優化四方面對該系統進行描述。本文將UWB 技術與FPGA 相結合實現對隧道人員的實時定位與數據傳輸。通過實驗表明,該系統具有低功耗、高效率等特性,并可以將定位相關信息實時傳送回接收端,從而達到對隧道人員的精準實時定位,確保工作人員的生命安全。