基于嵌入式Web的電子交警系統(tǒng)
闖紅燈是造成交通事故的主要原因之一。本電子交警系統(tǒng)的主要功能就是抓拍、處理機(jī)動(dòng)車闖紅燈現(xiàn)象,這是現(xiàn)代城市交通監(jiān)控系統(tǒng)的重要組成部分。目前,由于機(jī)動(dòng)車闖紅燈的相關(guān)信息還沒有實(shí)時(shí)地接入網(wǎng)絡(luò),違章車輛的受理、罰款、辦結(jié)等后期管理存在著很大的滯后性。因此,本系統(tǒng)采用了基于嵌入式web的方案,保證了系統(tǒng)的實(shí)時(shí)性,高精度數(shù)碼相機(jī)的使用彌補(bǔ)了CCD攝像機(jī)清晰度不足的缺陷。取得了較好的應(yīng)用效果。
1 設(shè)計(jì)方案
圖1為系統(tǒng)總體設(shè)計(jì)方案。
1.1 硬件部分
硬件部分的結(jié)構(gòu)如圖2所示。
ARM(Adranted RISC Machine s)是微處理器行業(yè)的世界知名企業(yè),設(shè)計(jì)了大量高性能、低能耗、廉價(jià)的RISC處理器及相關(guān)軟件。從性價(jià)比、實(shí)用性等角度出發(fā),本系統(tǒng)使用了Samsung公司基于ARM7內(nèi)核的嵌入式處理器S3C4510B.外加存儲(chǔ)器芯片、主USB接口、以太網(wǎng)芯片、串并口等構(gòu)建的開發(fā)板系統(tǒng)作為整個(gè)系統(tǒng)的硬件開發(fā)平臺(tái)。根據(jù)實(shí)際需要在接口邏輯電路中設(shè)置不同的參數(shù),并設(shè)置恰當(dāng)?shù)幕刂泛椭袛嗵?hào),以免發(fā)譬沖突。同時(shí)按照開發(fā)板的說明書對(duì)引腳進(jìn)行分配。
1.2 嵌入式系統(tǒng)軟件結(jié)構(gòu)
本系統(tǒng)采用μCLinux操作系統(tǒng)。
目前源碼公開的嵌入式操作系統(tǒng)有μC/OS和μCLinux,它們各有特點(diǎn)。μC/OS占用空間少,實(shí)時(shí)性能優(yōu)良。μCLinux雖然占用空間相對(duì)較大,實(shí)時(shí)性能一般,但是具有對(duì)多種文件系統(tǒng)的支持能力,內(nèi)嵌了TCP/IP協(xié)議,可以借鑒Linux豐富的資源,適用于較復(fù)雜的系統(tǒng)。鑒于本系統(tǒng)需要面向以太網(wǎng),且較為復(fù)雜,所以選用μCLinux作為操作系統(tǒng)。μCLinux是Linux的一個(gè)變種,主要區(qū)別在于兩者的內(nèi)存管理機(jī)制和進(jìn)程調(diào)度管理機(jī)制。同時(shí)為了適應(yīng)嵌入式應(yīng)用的需求,μCLinux采用了romfs文件系統(tǒng),并簡(jiǎn)化了Linux上的c語(yǔ)言庫(kù)glibc。
本系統(tǒng)的軟件設(shè)計(jì)包括;μCLinux操作系統(tǒng)的平臺(tái)移植、嵌入式操作系統(tǒng)μCLinux的裁減、硬件驅(qū)動(dòng)程序、應(yīng)用程序、人機(jī)界面等。
(1)在ARM平臺(tái)上移植μCLinux,并在PC機(jī)上建立μCLinux的開發(fā)環(huán)境。ARM開發(fā)板用于運(yùn)行操作系統(tǒng)和應(yīng)用軟件,PC機(jī)則完成目標(biāo)板所用到的操作系統(tǒng)的內(nèi)核編譯及應(yīng)用程序的開發(fā)和調(diào)試。兩者之間一般通過串口、并口或以太網(wǎng)接口建立連接關(guān)系。
(2)對(duì)系統(tǒng)內(nèi)核進(jìn)行裁減,在保證功能的前提下使其所占資源最少。
(3)硬件驅(qū)動(dòng)程序包括USB驅(qū)動(dòng)程序、USB控制器驅(qū)動(dòng)程序、以太網(wǎng)控制器驅(qū)動(dòng)程序等。
(4)應(yīng)用程序主要負(fù)責(zé)將USB和串口上傳的數(shù)據(jù)傳輸?shù)揭蕴W(wǎng)。
(5)人機(jī)界面包括本地界面和遠(yuǎn)程界面。遠(yuǎn)程界面主要存放在嵌入式服務(wù)器中的動(dòng)態(tài)網(wǎng)頁(yè),用于管理和查詢。
2 系統(tǒng)的組成
本系統(tǒng)由前端車輛拍照控制子系統(tǒng)、信息傳輸子系統(tǒng)和信息查詢管理子系統(tǒng)組成。組成結(jié)構(gòu)如圖3。
2.1 車輛拍照控制子系統(tǒng)
前端車輛拍‘照控制系統(tǒng)由嵌入式系統(tǒng)、微電腦芯片地感線圈檢測(cè)裝置、高精度數(shù)碼相機(jī)、相關(guān)通信及傳輸附件組成。違章車輛聞紅燈的瞬間,微電腦芯片根據(jù)檢測(cè)地感線圈的信號(hào)變化,及時(shí)準(zhǔn)確地發(fā)出車輛違章信號(hào)。前端嵌入式控制主機(jī)收到檢測(cè)信號(hào)后(闖紅燈、逆行等),對(duì)數(shù)碼相機(jī)快門進(jìn)行控制,并隨時(shí)判斷周圍環(huán)境的光亮度決定是否開啟閃光燈。數(shù)碼相機(jī)接到閃光燈和拍照信號(hào)后進(jìn)行拍照。所拍攝信息首先被存儲(chǔ)在相機(jī)的8M卡(Smart Media Card)中。
2.2 信息傳輸子系統(tǒng)
信息通過網(wǎng)絡(luò)進(jìn)行傳輸。目前嵌入式系統(tǒng)接入Intcnlet的方法大致有三種:一是通過專用的web服務(wù)器:二是通過專用的嵌入式網(wǎng)關(guān);三是把標(biāo)準(zhǔn)網(wǎng)絡(luò)技術(shù)(TCP/IP)擴(kuò)展到嵌入式設(shè)備,由嵌入式系統(tǒng)自身實(shí)現(xiàn)Web服務(wù)器功能。本文采用第三種方法,只需編寫動(dòng)態(tài)網(wǎng)頁(yè)便可以通過Web瀏覽器方便地管理和查詢相關(guān)信息。
信息傳輸子系統(tǒng)由兩部分組成:一是照片等相關(guān)信息通過數(shù)碼相機(jī)USB口到以太網(wǎng)控制器的傳輸過程;二是信息從以太網(wǎng)控制器到以太網(wǎng)的傳輸過程。
2.2.1 從數(shù)碼相機(jī)到以太阿控制器的信息傳輸
路口綠燈亮后,嵌入式系統(tǒng)中的照片處理任務(wù)判斷相機(jī)內(nèi)是否有照片存儲(chǔ)。若有,則通過數(shù)碼相機(jī)的USB接口將照片轉(zhuǎn)存到以太阿控制器內(nèi),保證數(shù)碼相機(jī)隨時(shí)有足夠的空間進(jìn)行違章拍攝。同時(shí)將違章時(shí)間、地點(diǎn)、違章現(xiàn)場(chǎng)數(shù)據(jù)保存在照片中,便于事后對(duì)照片進(jìn)行處理。
數(shù)碼相機(jī)與以太網(wǎng)控制器通過主USB口進(jìn)行信息傳輸。該系統(tǒng)所用主uSB芯片是Cypress公司的SL811HS。該芯片是專門為嵌入式系統(tǒng)開發(fā)的,其價(jià)格低廉,符合USBl.1規(guī)范。
2.2.2 從以太網(wǎng)控制器到以太網(wǎng)的信息傳輸
將以太網(wǎng)控制器接入以太網(wǎng),把拍
2.3 基于B/S結(jié)構(gòu)的信息管理查詢子系統(tǒng)
車輛的違章照片是交管部門對(duì)違章司機(jī)進(jìn)行處理的依據(jù),因此前端傳回的照片還需要管理。監(jiān)控中心建立一個(gè)計(jì)算機(jī)局域網(wǎng)系統(tǒng),設(shè)置多臺(tái)工作站對(duì)照片進(jìn)行資料的錄入、審核、受理、送達(dá),告知、封鎖檔案、復(fù)考通知、罰款、解封檔案、辦結(jié)等工作。
系統(tǒng)既要與機(jī)動(dòng)車、駕駛員等基礎(chǔ)數(shù)據(jù)庫(kù)互聯(lián).進(jìn)行嚴(yán)格的查找、比對(duì)、轉(zhuǎn)遞、封檔,又要與外部多個(gè)系統(tǒng)互聯(lián)進(jìn)行交通違法告知、跟蹤罰款執(zhí)行情況等。其中所涉及的外部系統(tǒng)主要有郵局投遞系統(tǒng)、銀行收款系統(tǒng)、機(jī)動(dòng)車與駕駛員查詢數(shù)據(jù)庫(kù)、交通違法數(shù)據(jù)庫(kù)。
3 設(shè)計(jì)中的關(guān)鍵問題
3.1 實(shí)現(xiàn)基于嵌入式Web的以太網(wǎng)接入
該系統(tǒng)用S3C4510B嵌入式處理器及以太網(wǎng)接口芯片RTL8201BL組成以太網(wǎng)測(cè)控網(wǎng)關(guān)。RTL8201BL通過總線與S3C4510B處理器相連接,中斷也通過S3C4510B的外部中斷接管。
網(wǎng)絡(luò)層主要完成以太網(wǎng)TCP/IP協(xié)議和違章現(xiàn)場(chǎng)總線RS-232等協(xié)議的轉(zhuǎn)換,完成以太網(wǎng)與現(xiàn)場(chǎng)總線網(wǎng)絡(luò)間的互聯(lián),實(shí)現(xiàn)不同以太網(wǎng)與現(xiàn)場(chǎng)總線網(wǎng)絡(luò)之間的數(shù)據(jù)交換。
數(shù)據(jù)的流向:請(qǐng)求信息從以太網(wǎng)來,通過RJ45接口到RTL820BL,IP包送到S3C4510B,進(jìn)行拆包,取出數(shù)據(jù),再按RS-232等現(xiàn)場(chǎng)總線通信協(xié)議重新組成幀;或者將前端拍照系統(tǒng)發(fā)送來的數(shù)據(jù)幀重新打成IP包,向以太網(wǎng)發(fā)送。
網(wǎng)絡(luò)傳輸?shù)年P(guān)鍵是開發(fā)負(fù)責(zé)數(shù)據(jù)傳輸和遠(yuǎn)端命令處理的TCP/IP協(xié)議棧。首先選擇網(wǎng)絡(luò)協(xié)議的種類。由于照片需要傳輸?shù)臄?shù)據(jù)量不大,但可靠性要求較高,因此在傳輸層選用可靠數(shù)據(jù)傳輸控制協(xié)議TCP,在網(wǎng)絡(luò)層選用基本數(shù)據(jù)傳輸協(xié)議IP。
3.2 在嵌入式系統(tǒng)μClinux中編寫硬件驅(qū)動(dòng)程序
硬件驅(qū)動(dòng)程序包括USB驅(qū)動(dòng)程序、USB控制器驅(qū)動(dòng)程序、以太網(wǎng)控制器驅(qū)動(dòng)程序等。在Linux中,驅(qū)動(dòng)程序可以按照兩種方式編譯,一種是靜態(tài)編譯進(jìn)內(nèi)核,另一種是編譯成模塊以供動(dòng)態(tài)加載。由于μCLinux不支持模塊動(dòng)態(tài)加載,因此這里選用將設(shè)備驅(qū)動(dòng)程序靜態(tài)編譯到μCLinux內(nèi)核的方式。
Linux內(nèi)核啟動(dòng)時(shí)會(huì)調(diào)用設(shè)備驅(qū)動(dòng)程序的初始化函數(shù)對(duì)設(shè)備進(jìn)行初始化。需要為該設(shè)備分配一個(gè)主設(shè)備號(hào)和從設(shè)備號(hào),不能與已有的設(shè)備號(hào)重復(fù),然后新建一個(gè)設(shè)備文件。在相應(yīng)的目錄下添加設(shè)備驅(qū)動(dòng)文件,修改相應(yīng)的Config.ini和Makefde文件,在內(nèi)核編譯時(shí)加載相應(yīng)的設(shè)備驅(qū)動(dòng)程序,生成的μCLinux二進(jìn)制文件燒寫進(jìn)閃存,然后,可以使用各種外部設(shè)備。驅(qū)動(dòng)程序中的中斷處理采用上半部和下半部的處理方法,上半部完成中斷注冊(cè)、中斷原因的標(biāo)定、調(diào)度下半部,然后退出。下半部則在相對(duì)安全時(shí)執(zhí)行數(shù)據(jù)處理工作,這樣可以使下半部在工作期間,上半部能繼續(xù)為其他中斷服務(wù)。
該電子交警系統(tǒng)運(yùn)用了嵌入式Web、數(shù)字通信等高科技手段,把違章車輛信息實(shí)時(shí)傳輸?shù)揭蕴W(wǎng)上。監(jiān)控中心可以方便地對(duì)信息進(jìn)行管理,用戶可以隨時(shí)通過Web瀏覽器進(jìn)行查詢?,F(xiàn)在數(shù)碼相機(jī)技術(shù)日新月異,一般數(shù)碼相機(jī)的快門速度可達(dá)到1/1 000s,支持多張連拍,完全可以滿足高精度和三要素的要求。
嵌入式Web的使用加強(qiáng)了系統(tǒng)的實(shí)時(shí)性和可靠性,大大減少了違章、繳費(fèi)以及數(shù)據(jù)庫(kù)的更新等一系列流程的延遲時(shí)間,它以微控制器和以太網(wǎng)接口芯片取代PC機(jī)進(jìn)行現(xiàn)場(chǎng)控制,只需幾臺(tái)網(wǎng)絡(luò)計(jì)算機(jī)進(jìn)行監(jiān)控,大大降低了成本。利用數(shù)碼相機(jī)和以太網(wǎng)的豐富資源組建該控制系統(tǒng)是一種實(shí)時(shí)、低成本、高可靠的技術(shù)方案。這一系統(tǒng)的建立有效地提高了對(duì)闖紅燈車輛的記錄和后期管理的效率,提高了交通管理水平,有較好的經(jīng)濟(jì)效益和廣闊的應(yīng)用前景。
評(píng)論