作者:王益祥 , 段俊麗 , 聶懷云
近年來,我國水運事業取得了很快地發展,為國民經濟的增長提供了重要的支持和保障;然而,我國的水上安全基礎設施仍然很薄弱,管理尚不規范,水上交通安全面臨的形勢仍然不容樂觀。
違規違紀的現象也還非常嚴重,由于超載、搶道、冒霧航行等導致的翻船、沉船、撞船等交通事故頻頻發生,給國家造成了巨大的經濟損失,同時給人民生命財產安全帶來了嚴重危害。因此,相關部門正加大對水運船只的監管力度,各種輪船定位和導航服務隨之興起,各種船舶GPS監控系統逐漸被開發并應用于水路運輸的監控管理中。
本文利用GPRS無線數據傳輸技術,在μC/OS-II嵌入式實時操作系統環境下,實現了船載遠程監控系統中船載監控終端的設計,為實現對水路運輸船舶的遠程監控和管理提供了方便。該系統以GPS作為船舶定位手段,以GPRS作為數據傳輸方式,通過船載終端和監控中心的信息交互,實現對遠程作業船舶的有效監控,由此將大大提高水上作業船舶的安全性,減少水上交通事故的發生,保障人民生命財產安全。
1 系統實現原理與總體結構
通常,基于GPRS的船載終端遠程監控系統主要是用來對遠程作業的船舶進行實時監控。具體操作時,用戶可以通過GPRS模塊上網,將數據發送到Internet;服務器連接到Internet,通過Socket套接字編程接收船載終端發送到Internet的數據信息。系統主要由三部分組成:監控中心、數據傳輸網絡和船載終端。監控中心服務器必須可以連接到Internet,并具有固定的IP地址;數據傳輸網絡由GPRS網絡和Internet組成,是終端與監控中心之間的數據傳輸媒介;船載終端集成了GPRS通信模塊,具有接收和發送數據的功能,可以接收來自監控中心的數據信息,也可以向監控中心發送數據信息。系統總體架構如圖1所示。
在本系統的沒計中,采用GPRS和Internet作為數據傳輸中介,實現船載終端與監控中心之間的數據傳輸。GPRS的基礎是以IP包的形式進行數據傳輸的,GPRS終端通過PPP(Point-to-Point Protocol)協議獲得動態分配的IP地址。建立連接后,在PPP協議的基礎上通過數據傳輸協議(TCP、UDP)實現與Internet上計算機的數據通信。
2 船載終端硬件系統設計
從圖1可以看出,基于GPRS進行船舶的遠程監控,其能夠實現的關鍵是要能夠設計出可以實現數據通信、定位、顯示以及報警等功能的船舶監控終端,因此,在整個系統的設計中,船載終端的設計是基礎。根據船載終端所要實現的功能,設計圖2所示的硬件系統。整個硬件系統由中央處理器、存儲器、GPRS通信模塊、GPS定位模塊、JTAG接口、A/D、LCD、按鍵、電源管理等單元組成。其中核心的部分主要有中央處理器、GPS模塊和GPRS模塊三部分。
從圖2可以看出,中央控制器在船載終端中起著重要的作用,它對整個硬件系統進行控制,包括對下端傳感器的控制、傳感器信號的處理、接收GPS定位信息、數據打包以及與GPRS模塊通信等??紤]到系統對處理器性能的需求,選擇三星公司的S3C4480X作為船載終端的中央處理器。該芯片采用0.25 μm COMS工藝制造,主頻最高可達66 MHz,在ARM7TDMI內核基礎上擴展了一系列完整的通用邏輯單元,可以減少外圍器件,降低系統成本;同時它還提供了豐富的片上功能。本系統的GPRS模塊選擇了Motorola公司的G20作為船載終端的無線通信模塊;而GPS定位模塊則選用Motorola公司的M12作為GPS的接收模塊,它提供了串行接口與外部控制器通信,主要是將接收的GPS信息發送給外部處理器。
整個硬件平臺的設計以S3C44B0X為核心,選用閃速存儲器(Flash memory)SST39VF160作為處理器外擴ROM存儲器,用來保存掉電后仍需要保存的程序代碼和數據信息;同時選用Hynix Semiconductor SDRAM芯片HY57V281620HCT作為存儲器來擴展外部RAM,大大提高了系統的運行速度。電源管理模塊根據各單元模塊的電源需求,采用不同的電壓轉換芯片將9 V輸入電壓轉換為所需要的各種電壓值。船載終端采樣G20的串行口與處理器S3C44B0X的串行口UART0連接實現數據通信;同時,將M12的串行口與S3C44B0X的串行口UART1連接,M12將接收到的GPS信號通過串口發送到S3C44B0X進行解析得出經緯度數據。
3 船載終端軟件設計與實現
由于系統中應用程序較多、實時性要求較高,所以在軟件設計時選用了多任務嵌入式實時操作系統μC/OS-II。μC/OS-II是完全占先式的實時內核,支持多任務操作,可管理多達64個任務,并且每個任務都有自己單獨的堆??臻g;可以進行任務管理、時間管理、任務之間的通信與同步、中斷管理等,因此可以很好地滿足本系統的要求。
在進行終端系統所有程序的設計之前,必須先在S3C4480X上進行μC/OS-II移植。對μC/OS-II進行移植,主要是要對內核中與處理器和應用有關的文件進行改寫,其中與處理器有關的文件有3個,分別是OS_CPU.H、OS_CPU_A.S和OS_CPU_C.C;與應用有關的文件主要是OS_CFG.H和INCLUDES.H,前者主要是對μC/OS-II所提供的內核服務進行選擇性設置,后者主要對所需頭文件的包含。μC/OS-II在S3C44B0X上移植完成以后,終端應用程序的設計就可以方便地在該操作系統下完成了。
編程時,首先根據船載終端的功能要求,將整個系統劃分為幾個并行存在的任務,即GPRS部分、GPS部分、A/D、按鍵部分以及報警部分等。然后,進行船載終端與監控中心數據通信協議的設計,此外還必須編制相應的終端底層硬件驅動程序。船載終端的主程序執行流程如圖3所示。
在船載終端軟件設計時,首先對ARM微處理器的系統進行上電初始化,即BootLoader代碼。這里S3C4480X處理器的BootLoader代碼全部放在Init.s文件中,初始化過程主要按照各個任務進行編寫。其中在異常向量的實現中,復位異常ResetHandler的實現主要根據本系統實際情況,對存儲器、中斷、系統時鐘頻率、異常處理堆棧初始化、中斷服務IsrIRQ、C代碼運行環境等進行設置和初始化。在完成了BootLoader中所有必要的初始化以后,通過相應的跳轉指令進入C語言程序開始執行應用程序的主程序,對船載終端各個任務模塊的初始化、μC/OS-II的初始化、定時器啟動和μC/OS-II多任務系統啟動等。初始化程序如下:
初始化完成后進行任務創建,并啟動任務調度。整個終端的各個任務之間的調度關系如圖4所示。
系統監視任務優先權最高,最先進入運行態,其他任務處于就緒態。系統監視任務分別查詢每一個被監視的任務是否向其發送消息。如果沒有,則其進入掛起態。按優先權級別順序,按鍵響應任務將由就緒態轉為運行狀態。在該任務將要執行完畢時,向系統監視中心發送消息,然后執行延肘函數將自身轉為掛起狀態,交出CPU使用權讓其他任務得以執行。此時系統監視任務得到消息轉為運行狀態,繼續查詢其他被監視任務的運行消息。GPS數據接收任務和GPRS數據傳輸任務可以在按鍵任務延時時間間隔內執行。由于S3C44B0X處理器速度足夠快,所有任務得以在滿足時序的前提下順利執行。為了提高船載的安全保障系數,能及時向監控中心報警,設計了一個中斷服務子程序,專門用來分析和判斷船載的運行狀態是否正常。
在整個過程中,監控中心與船載終端之間的通信是通過建立TCP/IP連接來實現的。
4 實驗分析及結論
在完成了上述硬件和軟件設計的基礎上,首先通過船載終端硬件調試、船載終端軟件調試驗證了設計的硬件、軟件系統的可靠性,然后通過終端網絡通信實驗驗證了終端能夠實現與上位機進行網絡連接并能夠正常進行數據接收與發送。通過調試,基于GPRS的船載遠程監控系統數據的發送與接收實時性較好,數據處理速度較快,完全滿足監控系統實時處理和傳輸的要求,可以很好地應用于船舶遠程監控系統中。
本文研究了基于GPRS的船載遠程監控系統終端設計。主要完成了船載監控終端的總體結構設計,并以ARM處理器S3C44B0X為核心,在μC/OS-II嵌入式實時操作系統下,完成了系統的軟、硬件設計,實現了船載終端預期的功能,以及船載終端與監控中心的數據通信、GPS信息獲取、報警顯示等功能。利用該系統可以有效地對水上交通情況進行監控管理,并對水路運輸船舶進行合理調度、導航、緊急事故處理、危險報警以及防止違規作業等,為促進我國水上事業的發展提供了有力的保障。
責任編輯:gt
-
無線
+關注
關注
31文章
5455瀏覽量
173398 -
監控系統
+關注
關注
21文章
3920瀏覽量
175031 -
GPRS
+關注
關注
21文章
984瀏覽量
129473
發布評論請先 登錄
相關推薦
評論