楊彩云
(國家鐵路局規劃與標準研究院,北京 100055)
隨著社會快速發展,定位系統越來越成熟,使用也越來越廣泛,而基于北斗和GPS的定位系統也在諸多領域有著廣泛應用,在工業環境惡劣的地理區域內,無線傳輸系統在GPS和北斗數據的傳輸中起了至關重要的作用,本文將闡述基于北斗和GPS雙重定位的無線網絡遠程車載監測系統,系統主要用于鐵路貨運槽罐車內部儲液溫度、壓力和地理位置信息的遠程監測;其目的在于保障鐵路液體貨物運輸安全,防止儲罐因溫度超限、壓力加大等可能引發危險,系統起到預警作用,確保鐵路儲罐運輸的安全。本文主要從系統構成、軟件實現和無線網絡遠程數據傳輸方法的軟件實現來介紹。
系統主要由感知層、網絡層和應用層組成。感知層主要包括溫度傳感器、壓力傳感器、液位計、北斗/GPS定位設備和車載監測單元;網絡層主要是指:車載監測單元的GPRS無線網絡系統;應用層主要是指:車載監測系統的中心控制平臺。如圖1所示。

圖1 系統框圖Fig.1 System diagram
車載監測單元的核心是STM32L152超低功耗32位CORTEX M3 控制器,車載監測單元的總體需求及設備端口資源需求歸納如下。
溫度、壓力:兩路模擬量輸入,分別實現油罐車罐體內壓力、溫度的采樣。信號輸入類型是4~20 mA模擬電流信號,另外有兩路預留。
閥門狀態監測:兩路數字量輸入信號,同時兩路預留。
車輛定位:一路GPS定位模塊通訊端口,一路北斗定位模塊通信端口。
無線傳輸:一路GPRS模塊通訊端口。
供電:采用電池供電,一次充電周期的使用時間為半年。
有3個串口,串口1與GPRS無線發射模塊連接,串口2和串口3與GPS和北斗衛星定位模塊連接。
通過客戶需求的詳細分析,制定了車載監測單元的軟件設計框圖,如圖2所示。

圖2 監測單元軟件模塊Fig.2 Software module of monitoring unit
定時中斷處理單元主要由采集、電源控制、數據處理和通信等模塊組成。
采集模塊主要是對溫度和壓力信息進行采集處理,采集電流量為4~20 mA,采集節點通過電壓量轉換成的電流量,經過計算公式,A= (25 ×D/ 4 096 - 4 )×(M-N)/ 16 +N,其中D為AD采集數字量,M為量程最大值,N為量程最小值,STM32中AD為12位,因此量化值為4 096。模擬量濾波方法采用的是截尾均值法:采集n組數據,去掉最大值和最小值,n-2組數據再做平均,通過此種方法能有效的控制由硬件電路產生的擾動。
電源控制模塊是對電源電量進行智能控制,當電量低時首先進行電量低報警,當電量過低時,自動停止所有運行。
數據處理模塊主要處理采集的模擬量、電量和開關量等信息。
通信模塊對數據處理模塊的輸出數據以GPRS無線傳輸模塊傳給平臺系統。
對于嵌入式系統,在處理器和操作系統被選定后,也就基本確定了系統框架。而在功率消耗上處理器是比重最大的一個部分,對于不帶顯示屏的嵌入式設備,微處理器的功率消耗幾乎是整個系統功耗的一半,甚至更多。因此在選擇處理器時,除了要注意其性能的優劣及所提供的接口和功能外,也不能夠忽視其功耗特性。
綜合考慮各方面因素,系統使用的是STM32L152芯片。在運行模式下芯片功耗低至185 μA/MHz,在休眠待機狀態下為0.29 μA/MHz,從休眠待機模式切換到運行模式僅需8 μs。當沒有中斷時,通過配置控制狀態使監測單元將進入低功耗模式。STM32L152有5種低功耗模式:低功耗運行模式、低功耗睡眠模式、睡眠模式、待機模式和停止模式。采用低功耗睡眠模式時,系統內核停止運行、外設保持運行。
1)低功耗睡眠模式的基本設置
設置LPSDSR位,使內部電源變換器在低功耗模式下工作,執行WFI/WFE指令。
設置SLEEP_PD位,使Flash模塊進入低功耗模式,保持系統時鐘設置在128 kHz以下。
內核供電VCORE配置供電電壓為1.5 V。
配置SLEEPONEXIT位,進入低功耗睡眠模式,選擇SLEEP NOW/SLEEP ON EXIT。
2)低功耗睡眠模式增強設置
設置寄存器RCC_AHBLPENR和RCC_APBxLPENR,使系統在進入睡眠模式時自動關閉不適用的外設和GPIO口的時鐘。
外部中斷處理單元主要用于監測閥門狀態,有兩路數字量輸入信號,且有兩路預留。系統監測主要是進行閥門監測,罐車閥門的開關狀態是非常關鍵的信息,通過雙重保險機制確保采樣的準確性,一是通過外部中斷產生“沿”的變化來觸發中斷;然后利用高低電平得出閥門狀態;二是通過定時讀取引腳的電平值,確定閥門狀態,從而達到雙重保障。
設備的衛星定位采用了GPS和北斗兩種定位模塊,實現了惡劣環境下定位信息的互相補充。北斗定位使用的是ublox的NEO-M8芯片;利用已配置好的芯片上傳頻率,通過串口智能上傳數據,通過協議中指定的位置,判斷數據是否為有效數據。GPS定位使用的是中興二合一模塊MG2639_V2,首先芯片初始化設置,然后按照配置信息利用串口定時上傳數據,利用有效位置來判斷數據的有效性,從而進行數據接收。GPS和北斗的定位模塊的通用協議如下:
美元符號“$”是語句起始標志;
半角逗號“,”是參數分隔符;
星號“*”是校驗碼識別符;
其后面的兩位數為校驗碼。
校驗碼是“$”和“*”之間所有字符進行異或和;
GPRS模塊采用的是中興MG2639_V2二合一模塊,MG2639_V2是中興通訊研制的 GSM850/EGSM900/DCS1800/PCS1900 四頻工業模塊,支持多種無線網絡。
系統利用向控制串口發送一系列“AT指令”實現GPRS模塊建立網絡連接和數據的遠程發送,常用指令包括初始化命令、短信命令、GPRS命令和網絡命令。
車載監測單元的開發環境是Keil uVision4,開發語言是C,在系統運行調試時,車載監測單元的運行模式通過手機短消息進行配置,監測單元的主要告警信息以及全部模擬數字量信息的查看,采用專用網絡調試工具,具體物理連接如圖3所示。

圖3 系統物理連接圖Fig.3 Physical connection diagram of system
本系統是針對鐵路車載監控需求展開研究工作,隨著國內北斗衛星定位系統組網規模的逐步擴大,各行各業都在進行相關試驗項目,本項目研制的技術方案及形成的成果,能夠打造一套北斗衛星定位終端的公共硬件平臺,以該技術方案為依托,針對具體行業項目進行個性化優化調整,將能支撐幾乎所有行業基本應用需求,有廣闊的開發空間和應用前景。