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