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