馬 帥,鮑愛達,馬游春,朱志斌
(1.中北大學 電子測試技術國家重點實驗室,太原 030051;2.中北大學 儀器科學與動態(tài)測試教育部重點實驗室,太原 030051)
在叢林、沙漠、戈壁等處往往荒無人煙,這些地區(qū)一般沒有網絡信號或者信號很差。而野外工作人員一旦在上述地區(qū)迷失了方向很容易陷入危險之中,這時如果沒有移動通信網絡信號就會使搜尋救援工作變的異常困難。同時,由于沒有信號,救援隊往往會采取大量人員地毯式搜尋或者直升機上肉眼定位的方式對遇險人員進行搜救,這樣的搜救方式效率較低,不能在第一時間確定遇險人員的位置,從而貽誤救援時間。
衛(wèi)星定位系統(tǒng)可以用于荒野等環(huán)境惡劣條件下工作人員的遇險定位。ATK-S1216F8-BD GPS/北斗模塊自身性能非常優(yōu)異,該雙模定位模塊兼具GPS模塊和北斗模塊的優(yōu)點。使用該模塊可以將定位信息實現(xiàn)GPS系統(tǒng)和北斗系統(tǒng)的完美融合,不但提高了定位的精準度,同時還使定位的可靠性得到了加強,這樣就具有了獨特的定位優(yōu)勢[1]。
本文基于GPS/北斗雙模定位系統(tǒng)和數(shù)據(jù)無線傳輸技術,設計了一款適合于荒野等環(huán)境惡劣條件下外出工作人員的小型報警定位裝置,該裝置體積小,便于攜帶,同時,改變基站上接收天線的增益和無線傳輸裝置的空中速率的大小,可有效改變報警信息的傳輸距離,這為野外工作人員的安全提供了強有力的救助保障。
下面介紹GPS/北斗雙模定位導航系統(tǒng)的定位原理與用戶位置的解算過程。
設用戶空間為(xu,yu,zu),用戶時鐘同系統(tǒng)時鐘偏差的未知量為tu,將單一的偽距方程表示為:
f(xu,yu,zu,tu)
(1)
式(1)中,ρj是偽距觀測值,j=1,2,3,4。將式(1)進行展開并化簡掉不需要的高次項[2],可以得到方程組如下:
(2)
方程組(2)中的axi,ayi,azi表示由近似位置指向第i顆衛(wèi)星的單位矢量的方向余弦,其中i=1,2,3,4。
可以解得:
Δx=H-1Δρ
(3)
由式(1)~(3)可得:
y=Hx+ε
(4)
y表示(m×1)維的向量,H表示觀測矩陣,ε表示測量的誤差向量,x表示用戶此時的狀態(tài)向量。由此可以寫出GPS/北斗系統(tǒng)的觀測方程:
yBD=HBDxBD+εBD
(5)
yGPS=HGPSxGPS+εGPS
(6)
整理后可得:
(7)
得到解為:
Δx=(HTH)-1HTΔρ
(8)
要獲得更高精度的解,需要用加權最小二乘法對上述數(shù)據(jù)進行處理,故增加一個正定對稱矩陣W,此為權系矩陣[3],將式(8)整理后可以得到:
Δx=(HTWH)-1HTWΔρ
(9)
此時,式(9)得到的Δx便為GPS/北斗雙模導航定位系統(tǒng)得到的最終定位結果。
報警終端主要完成工作人員定位信息監(jiān)測、無線數(shù)據(jù)傳輸、遇險報警、定時傳輸數(shù)據(jù)等功能。手持終端設置了紅色報警按鈕和綠色平安按鈕,一旦遇到野外危險,或者遭遇了走失情況,荒野工作人員可以迅速按下紅色報警按鈕,此時GPS/北斗雙模定位模塊開始定位,并將定位信息通過LoRa無線傳輸模塊將信息發(fā)送至附近的基站或者基站車上,基站的工作人員便可以通過手持終端發(fā)送的定位信息準確定位荒野遇險人員的位置信息,從而能迅速啟動救援措施,保障荒野工作人員的生命安全。
同時,手持終端還設置了定時數(shù)據(jù)傳輸功能,具體實現(xiàn)步驟為預先啟動數(shù)據(jù)無線傳輸模塊的定時功能,將時間設置為半小時或者一小時等合適時間,荒野工作人員如果在設置時間到達時因為遭遇了瞬時的緊急情況沒有及時按下綠色平安按鈕,定位模塊會迅速的自啟動,完成信息的定位并通過LoRa模塊發(fā)送至附近的基站或者基站車上,基站的工作人員同樣會啟動救援措施,這樣更加可靠地保障了荒野工作人員的生命安全。
報警終端在硬件結構上主要由STM32F407、LoRa無線傳輸模塊、GPS/北斗雙模定位模塊、LED(Light Emitting Diode)狀態(tài)指示燈模塊、功率放大器模塊以及電源模塊等重要模塊[4]組成,整個系統(tǒng)如圖1所示。
圖1 報警終端原理圖
報警終端的主控制器核心是STM32F407。STM32F407本身采用的先進的Cortex-M4內核具有超強的浮點運算能力,其單精度浮點運算單元兼容IEEE754標準。同時,Cortex-M4內核的DSP(Digital Signal Processing)處理指令進一步增強,對于16位DSP功能:相對CM3(Cortex-M3),CM4(Cortex-M4)只需30%~70%的指令周期;對于32位DSP功能:相對CM3,CM4只需25%~60%的指令周期。STM32F407具有196K字節(jié)的內嵌SRAM(Static Random Access Memory)的優(yōu)點[5],同時它還有靈活的外部存儲器借口:FSMC(Flexible Static Memory Controller)。FSMC連接到D-Bus,可以快速的獲取數(shù)據(jù)。而連接到I-Bus,可以快速獲取指令。當FSMC連接到S-Bus時,STM32F407可以同時訪問三條總線,顯著提高了總線訪問的性能。
STM32F407具有極致的運行速度,它以168 MHz高速運行時可達到210DMIPS(Dhrystone Million Instructions executed Per Second)的處理能力。STM32F407具有更高級的外設,它新增了USB(Universal Serial BUS)高速OTG(On-The-Go)接口,并增強了通信接口速率,具備了更高的采樣率[6]。
單片機和GPS/北斗雙模定位模塊、LoRa無線傳輸模塊的連接如圖2所示。
圖2 單片機與各模塊連接圖
ATK-S1216F8-BD GPS/北斗模塊本身性能非常優(yōu)異,它不但體積小巧,便于攜帶,同時該模塊的定位精度很高,而且我們還可以通過串口對該模塊進行實驗參數(shù)的設置便于進行不同參數(shù)的對比實驗,使用起來很方便[7]。
雙模定位模塊相比于單模定位模塊,其優(yōu)點在于將兩個系統(tǒng)精妙地融合了起來,它可以利用衛(wèi)星之間的冗余信息,對兩個系統(tǒng)的算法進一步改進。一方面它的精度高、容錯性能更好。另一方面定位位置信息的可用性、可靠性都得到顯著提升,所以選用ATK-S1216F8-BD GPS/北斗模塊比之于選用單一的GPS模塊或者北斗模塊能更好地滿足本文設計的報警終端的定位要求。
使用時,將GPS/北斗模塊的串口連接在STM32F407開發(fā)板的串口3上面,此時需要用跳線帽短接P10的PB11(RX)和GBC_TX以及PB10(TX)和GBC_RX,并且GPS的PPS信號接在GBC_KEY信號上面。同時,我們可以通過USMART工具,設置GPS/北斗模塊的刷新速率(最大支持20 Hz刷新)和時鐘脈沖寬度的配置。
E22-230T30S是全新一代的LoRa無線模塊,基于SEMTECH公司SX1262射頻芯片的無線串口模塊(UART),具有多種傳輸方式,工作在(220.125~236.125 MHz)頻段(默認230.125 MHz),LoRa擴頻技術,TTL電平輸出,兼容3.3 V與5 V的I/O口電壓。LoRa無線模塊的抗干擾能力強,功耗更低。同時LoRa無線模塊工作參數(shù)可根據(jù)環(huán)境需要進行自主設置,滿足了不同條件下的傳輸需求。
該模塊開發(fā)了全新的LoRa擴頻調制技術,帶來了更遠的通訊距離,一般情況下有效距離可達5 km以上,比典型的射頻傳輸模塊CC1101的有效傳輸距離多了幾倍甚至于十幾倍,模塊支持230 MHz電力頻段,穿透繞射能力強于433 MHz,并且還支持自動中繼組網功能,多級中繼適用于超遠距離通信,這為進一步擴大模塊傳輸距離提供了思路[8]。所以選用LoRa無線傳輸模塊比之于之前的射頻傳輸模塊能更好地滿足本文設計的報警終端對傳輸距離的要求。除此之外,無線模塊本身具有高效的看門狗設計,一旦發(fā)生異常,模塊將自動重啟,且能繼續(xù)按照先前的參數(shù)設置繼續(xù)工作。LoRa無線模塊的電路原理如圖3所示。
圖3 LoRa無線模塊的電路原理圖
在無線通信中,功率放大器的作用非常重要,提高了功率放大器件的輸出功率與效率,才能保證穩(wěn)定高效地輸出無線信號。
本文設計的報警終端選用Toshiba公司的2SK3078A功率晶體管作為無線傳輸模塊的功率放大器芯片[9],在調制器產生無線信號后,接下來就由功率放大器將信號放大到足夠功率,經過匹配網絡,再由LoRa無線傳輸模塊將信號發(fā)射出去。功率放大器電路如圖4所示。
圖4 基于2SK3078A的功率放大器電路
軟件是整個系統(tǒng)極其重要的組成部分。設計手持終端和基站以及基站車上接收部分的硬件結構后,就要根據(jù)系統(tǒng)的功能進行相應的軟件部分的設計。編寫程序時主要根據(jù)C語言進行編寫,C語言容易閱讀并且和頁面的交互性較強,故程序語言選擇C語言。
野外的工作人員在迷失方向等危險情況下可以按下按鍵報警,或者遇到緊急情況由無線模塊的定時功能自啟動報警,在上述情況下電源開始供電,GPS/北斗雙模定位模塊、STM32F407、LoRa無線模塊、功率放大模塊同時開始工作,GPS/北斗雙模定位模塊迅速定位工作人員的位置信息,在STM32F407的控制下將定位信息通過LoRa無線模塊傳輸?shù)交净蛘呋拒嚿稀;净蛘呋拒嚿系娜藛T通過大功率的接收天線接收報警終端的位置信息,并在上位機上用串口助手解析出來,顯示在屏幕上。用C語言將上述功能進行細分,并逐步地編寫每一條指令,手持終端軟件工作流程如圖5所示。
圖5 手持終端軟件工作流程
編寫GPS/北斗雙模定位模塊內部代碼是軟件設計部分的核心,而實現(xiàn)上述代碼的關鍵是用C語言實現(xiàn)SkyTraF8-BD模組常用的3個配置:串口波特率配置、PPS輸出脈沖寬度設置、輸出頻率設置。串口波特率設置,通過函數(shù)SkyTra_Cfg_Prt實現(xiàn),該函數(shù)可以設置模塊的波特率。PPS輸出脈沖寬度設置,通過函數(shù)SkyTra_Cfg_Tp實現(xiàn),可以設置脈沖寬度(1 μs~100 ms)。輸出頻率設置,通過函數(shù)SkyTraq_Cfg_Rate實現(xiàn),該函數(shù)可以設置模塊的測量輸出頻率,最快可以達到20 Hz的測量輸出頻率。最后SkyTraq_Send_Date函數(shù),用于發(fā)送一批設置好的數(shù)據(jù)給串口3,完成對GPS模塊的配置。
將這3個函數(shù)都加入USMART控制,方便開發(fā)和測試。需要注意的是,main函數(shù)初始化硬件之后,通過SkyTraq_Cfg_Rate函數(shù)判斷模塊是否在位,如果不在位,就要嘗試去設置合適的模塊波特率,直到檢測到模塊在位為止[10]。最后,等待串口3接收GPS/北斗數(shù)據(jù)。每次接收到GPS/北斗模塊發(fā)送過來的數(shù)據(jù),就將數(shù)據(jù)通過串口1發(fā)送給LoRa無線模塊。至此,手持終端軟件設計部分的GPS/北斗雙模定位模塊內部代碼的編寫原則和設計流程介紹完畢。
手持報警終端的硬件和軟件程序配置完成后,就需要實地驗證其功能。為了更貼近荒野工作的環(huán)境,我們安排兩名測試人員拿著手持終端在中北大學二龍山里面進行走動,同時,再安排兩名測試人員駕駛基站車行駛在中北大學到太原南站的公路上。
基站車上的接收天線有兩根,一根為全向玻璃鋼天線,其增益為8.5 dBi;另一根為定向天線,其增益為15.5 dBi。圖6和圖7分別為組裝好的全向玻璃鋼天線和定向天線。
圖6 全向玻璃鋼天線 圖7 定向天線
設置LoRa無線模塊不同的空中速率,可以取6個空中速率,分別為15.6 kbps、9.6 kbps、4.8 kbps、2.4 kbps、1.2 kbps和0.3 kbps。在無線模塊不同空中速率的情況下,基站車上的兩根天線接收手持終端報警信息的距離如表1所示。
表1 不同空中速率下兩根天線的接收距離
由表1可知,在無線模塊的空中速率一定的情況下,增益較大的定向天線接收報警信息的距離要比全向天線的要遠。而在無線模塊的空中速率由大變小的過程中,不論是全向天線還是定向天線,它們接收報警信息的距離均逐漸變遠。雖然需要更遠的接收距離,但是LoRa無線模塊空中速率的大小與報警信息的時間延遲成反比,也就是說空中速率越大,基站車天線接收報警信息的距離越近,它接收信息的時間延遲越?。欢罩兴俾试叫?,基站車天線接收報警信息的距離越遠,它接收信息的時間延遲則越大。所以工作人員在荒野進行作業(yè)的情況下,需要根據(jù)實際情況來設置LoRa無線模塊的空中速率,以及選擇合適增益的接收天線,從而確保手持終端和基站或者基站車之間的精準通信。
通過測試可得手持終端工作電壓是3.3~5.0 V,可工作于-40~+85℃,LoRa無線模塊收發(fā)頻段是220.125/236.125 MHz,首次定位時間溫啟動下是27 s,熱啟動是1 s,冷啟動則是29 s,定位精度小于2.5米,導航數(shù)據(jù)格式是NMEA0183。
山林中的測試人員發(fā)出報警信息后,基站車上的測試人員接收到的報警信息包含了人員位置信息,需要對GPS/北斗雙模系統(tǒng)中的衛(wèi)星消息進行解析。以“GNGGA,095528.000,2318.1133,N,11319.7210,E”消息為例,可以知道野外遇險人員,地理位置為“北緯23.181133°東經113.197210°”,UTC(universal time coordinated)時間為9時55分28秒,如要換算成北京時間需加8小時。中北大學二龍山測試人員位置信息解析后的結果顯示如圖8所示。
圖8 手持終端定位結果
利用GPS/北斗雙模定位模塊、LoRa無線模塊和STM32F407,設計了一種實用性強、可靠性高的荒野工作人員遇險報警系統(tǒng),并設計了手持終端和基站或者基站車上的天線接收系統(tǒng),當荒野工作人員在野外迷失或者遇險時,利用手持終端能夠及時通知基站或者基站車上的搜救人員,搜救人員依靠上位機顯示的定位信息迅速作出響應,能夠立刻對荒野工作人員進行救援。
測試結果表明,該系統(tǒng)設計合理、定位精準、操作方便,同時,還可以通過改變手持終端的無線模塊上空中速率的大小,以及選擇不同增益的接收天線,可以有效改變報警信息到基站或者基站車上的距離??傊?,本文設計的荒野工作人員遇險報警系統(tǒng)能夠有效降低野外工作人員的失蹤風險,確保一定距離內荒野工作人員的生命財產安全。