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