摘 要: 在探討了航標功能需求的基礎上,給出了有效的航標遙控遙測終端軟硬件設計方案,著重闡述了SIM548C模塊與LPC2136的硬件連接及GPRS連接過程和GPS信息采集的軟件實現。結合GPS定位、GPRS通信及微控制器技術,能夠實時、準確地檢測航標及終端狀態信息,并能遠程設置航標燈及終端的工作參數。
關鍵詞: 航標遙控遙測終端;GPS;GPRS;LPC2136
我國航道眾多,水運發達,保證航運安全的工作至關重要。航標作為為水上活動提供安全信息的設施,是保證航運安全的重要裝置。對航標狀態進行有效控制和準確檢測,不僅能保證航標裝置的正常工作,更能減少航運事故發生率,確保航運安全。
國內外已經對航標遙控遙測系統進行了多年的研究[1-3],也獲得了諸多成果,但是由于航標工作環境的特殊性(潮濕、受撞擊率高、易受電磁干擾等),在系統穩定性和定位精度等方面仍無法完全滿足實際需求[4-5]。本文通過分析航標遙控遙測終端裝置的功能需求,給出了基于GPS、GPRS技術及LPC2136微控制器的終端設計方案,旨在設計出一個穩定可靠的終端裝置,提升航標遙控遙測系統的整體性能。實驗證明,該終端裝置能穩定可靠地運行,具有重要的現實意義和可觀的市場價值。
1 終端功能
航標包括岸標和水上浮標。岸標由于位置固定而不需要進行GPS定位,而浮標則需要進行GPS定位以測量其地理位置。本文針對浮標的特點和功能,對其進行設計,實現的主要功能如下:
(1)航標位置檢測。通過GPS模塊實現,確保航標沒有偏離規定區域,以防引發安全事故。
(2)電流檢測。蓄電池充放電電流以及LED燈工作電流的檢測。
(3)電壓檢測。蓄電池充放電電壓、工作電壓及航標燈工作電壓的檢測。
(4)撞擊檢測。通過加速度計實現撞擊量的檢測。航標受到船只猛烈撞擊后,可能導致航標及終端工作失常,應及時報警,以便檢查維護。
(5)終端與燈器的通信。實現終端對燈器燈質的控制和狀態采集。
(6)終端與服務器的通信。依據既定通信規約,當服務器查詢到本地終端并要求其提供相應狀態信息時,終端及時準確地完成服務器要求。服務器未要求本地終端進行相關操作時,本地終端應能定時發送心跳信息,以告知服務器其在線狀態。
2 終端硬件設計
依據航標遙控遙測終端裝置的功能需求,設計的終端硬件如圖1所示。系統以LPC2136為主控制器,主要占用資源包括I2C接口、A/D轉換接口、UART接口、復位電路接口及部分GPIO口[6]。I2C接口掛接LIS302DL加速度計及FM24L256鐵電存儲芯片,分別用來采集終端撞擊數據和終端數據存儲。A/D轉換接口上包含專用電流檢測芯片MAX4071及分壓電阻。GPS、GPRS功能模塊SIM548C和RS485模塊MAX3072通過串口與微控制器相連,以進行相關數據通信。
整個系統由12 V蓄電池供電。除外接航標燈器由12 V蓄電池直接供電外,終端上還需要4.5 V和3.3 V電源,本設計選用了LM2575和LM1117兩款降壓穩壓芯片以滿足系統不同電壓需求。終端復位電路選用了MAX708S電源監控芯片。系統電源電壓下降到一定值并達一定時間時,向單片機復位引腳發送復位信號,使得終端復位。
當服務器通過GPRS方式向終端發送遙控遙測命令時,終端將依據接收到的命令類型采集各類狀態信息或者設定工作模式,并將結果通過GPRS方式反饋到服務器端。整個終端裝置要實現的主要功能是終端與服務器的GPRS通信以及終端的GPS精確定位。
選用GPS和GPRS二合一模塊SIM548C[7],通過串口與LPC2136進行通信。終端利用該模塊實現定位數據的采集及GPRS數據的通信。該模塊的GPS定位精度為10 m,若刷入支持DGPS的固件,精度能達到1~5 m,支持NMEA-0813協議;GPRS部分內置TCP協議棧,降低了開發難度。模塊整體結構設計緊湊,便于布板和安裝。
由于SIM548C模塊的GPRS部分含有1個正常工作用串口及1個調試用串口,并且GPS部分含有2個適合不同協議的串口,共4個串口,再加上與燈器連接的RS485接口也需占用1個串口資源,因此需要對微控制器的串口進行擴展。本系統中選用CD4052雙四選一多路選擇開關對LPC2136的串口1進行擴展。串口1正常情況下與SIM548C模塊支NMEA-0813協議[8]的串口相連,以便實時讀取GPS數據。微控制器的串口0直接與GPRS正常工作的串口相連,隨時偵聽來自服務器端的遙控遙測命令。若偵聽到燈器設定命令時,通過CD4052可將UART1口切換到RS485接口,實現終端與燈器的通信。如果是狀態信息采集命令,則直接進行相應狀態信息的采集,將采集數據打包并通過GPRS方式發送到服務器。SIM548C硬件連接電路如圖2所示。
其中,阿拉伯數字依次代表UTC時間、定位狀態、緯度、緯度半球、經度、經度半球、地面速率、地面航向、UTC日期、磁偏角、磁偏角方向和模式指示等信息。各信息之間由逗號符分隔,并將逗號符作為標識符,通過依次統計語句中的逗號符,可以提取到所需的時間和經緯度信息。
服務器與終端以及終端與燈器之間的通信包括命令解析及數據打包,完全依據既定的航標遙控系統通信規約。該規約規定了航標遙測遙控系統中,航標燈器(帶有標準RS485串口的智能燈器)與航標遙控遙測終端RTU設備之間、終端與監控中心計算機(服務器)之間的數據傳輸幀格式、數據編碼及傳輸規則。
例如,終端裝置接收到一組GPS語句為:
“$GPGGA,042824.000,3150.3194,N,11722.3232,E,1,04,1.4,-56.2,M,0.7,M,,0000*71
$GPGSA,A,3,08,20,17,01,,,,,,,,,1.7,1.4,1.0*3D
$GPGSV,3,1,10,28,65,326,,01,55,038,22,20,41,120,42,11,36,047,*7A
$GPGSV,3,2,10,17,36,297,12,08,36,215,43,07,17,191,,19,06,077,18*76
$GPGSV,3,3,10,32,31,084,25,04,13,227,24*77
$GPRMC,042824.000,A,3150.3194,N,11722.3232,E,0.60,343.50,221011,,,A*6F
$GPVTG,343.50,T,,M,0.60,N,1.1,K,A*0A”
首先將刪選出所需要的“$GPRMC,042824.000,A,3150.3194,N,11722.3232,E,0.60,343.50,221011,,,A*6F”這條語句。依據通信規約,這段數據將被打包成“042824N31503194E1172232322210111210”,除最后4位表示終端ID號外,其余均是從GPRMC語句中提取出來的時間及經緯度信息。然后,通過GPRS方式將這段數據發送到服務器端,服務器端將發送應答幀到終端以表明數據是否發送成功。
航標遙控遙測終端裝置集GPRS、GPS技術于一身,能夠實現對航標狀態的實時監測,減少了人力物力的重復投資,有效提高了航標管理水平。本文簡要闡述了航標遙控遙測終端的功能需求,并提出了一種航標遙控遙測終端硬軟件設計方案,著重對GPS和GPRS功能的實現進行了介紹。終端實驗板在實驗室與遠程服務器連接正常,通信穩定,能夠實現基本的遙控遙測功能,證明了本方案的可行性。
后期的主要工作是進一步提高終端工作穩定性及定位精確度。例如可以在終端上加入光線傳感器,提升判別白天夜晚的靈敏度和準確度;定位精確度雖然受到選取模塊精度的影響,但也可以通過提高終端后臺數據處理能力及改善終端工作方式加以提高。
參考文獻
[1] EL-MEDANY W M, ALOMARY A, AL-HAKIM R, et al. Implementation of GPRS-based positioning system using PIC microcontroller[C]. 2010 Second International Conference on Computational Intelligence, Communication Systems and Networks(CICSYN),2010:365-368.
[2] 鄭佳春.基于嵌入式LINUX的航標遙測遙控終端的開發[J].計算機應用與軟件,2009(10):98-100.
[3] 吳允平,蔡聲鎮,李汪彪,等.基于單片機的航標終端系統[J].電子測量技術,2006(8):70-72,79.
[4] 李木.淺談航標遙測系統存在的問題[J].航測技術,2009(3):12-14.
[5] 李鵬宇.淺議航標遙測遙控現狀與發展[J].航測技術,2009(4):24-26.
[6] 周立功,張華.深入淺出ARM7[M].北京:北京航空航天大學出版社,2005.
[7] Shanghai SIMCOM Wireless Solutions Ltd. SIM548C hardware design V1.01[Z]. 2008.
[8] National Marine Electronics Association. http://www.nmea.org[2012-01-09].
[9] Shanghai SIMCOM Wireless Solutions Ltd. SIM548C AT commands set[Z]. 2008.