《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 嵌入式和碼分多址實(shí)現(xiàn)遠(yuǎn)程視頻監(jiān)控系統(tǒng)
嵌入式和碼分多址實(shí)現(xiàn)遠(yuǎn)程視頻監(jiān)控系統(tǒng)
摘要: 嵌入式和碼分多址實(shí)現(xiàn)遠(yuǎn)程視頻監(jiān)控系統(tǒng),引言嵌入式遠(yuǎn)程視頻監(jiān)控系統(tǒng)就是充分利用CDMA無線網(wǎng)絡(luò)技術(shù)和嵌入式系統(tǒng)的特點(diǎn)而搭建的數(shù)據(jù)傳輸系統(tǒng),,例如車載視頻監(jiān)控系統(tǒng),、交通路口(車牌實(shí)時監(jiān)視)及城市路燈的監(jiān)控等,。1嵌入式Linux系統(tǒng)嵌入式系統(tǒng)
Abstract:
Key words :

       引言

  嵌入式遠(yuǎn)程視頻監(jiān)控系統(tǒng)就是充分利用CDMA無線網(wǎng)絡(luò)技術(shù)和嵌入式系統(tǒng)的特點(diǎn)而搭建的數(shù)據(jù)傳輸系統(tǒng),例如車載視頻監(jiān)控系統(tǒng),、交通路口(車牌實(shí)時監(jiān)視)及城市路燈的監(jiān)控等,。
 

  1 嵌入式Linux系統(tǒng)

  嵌入式系統(tǒng)是以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ),、軟件硬件可裁剪,、適應(yīng)對功能、可靠性,、成本,、體積、功耗要求嚴(yán)格的專用計(jì)算機(jī)系統(tǒng),,目前嵌入式系統(tǒng)已經(jīng)無處不在,,從汽車、家用微波爐,、PDA(個人數(shù)字助理),、電視機(jī)、到工控生產(chǎn)現(xiàn)場,、通信,、儀器,、儀表、汽車,、船舶,、航空、航天,、軍事裝備、消費(fèi)類產(chǎn)品方面,,都能發(fā)現(xiàn)嵌入式系統(tǒng)的蹤影,。

  Linux本身作為一個桌面系統(tǒng),其最大的特點(diǎn)是操作系統(tǒng)源代碼公開并且遵循GPL協(xié)議,,其內(nèi)核采用模塊化的設(shè)計(jì),,易于裁減,特別適合嵌入式系統(tǒng)的小型化要求,,在嵌入式系統(tǒng)中占據(jù)了半壁江山,。

  本監(jiān)控系統(tǒng)選用的處理器是SAMSUNG公司的一款中高端ARM9內(nèi)核的CPU-S3C2410,其內(nèi)建有MMU(內(nèi)存管理單元),,主頻可達(dá)到 203MHz,,運(yùn)行嵌入式Linux2.4系統(tǒng)正好如魚得水,不但保持了嵌入式系統(tǒng)小型化,、低功耗,、易攜帶的特點(diǎn),又充分利用了Linux系統(tǒng)的內(nèi)存,、文件,、線程管理功能,大大方便了程序的開發(fā)和程序中多任務(wù)功能的實(shí)現(xiàn),。

  2 監(jiān)控系統(tǒng)結(jié)構(gòu)

  監(jiān)控系統(tǒng)一般可分為實(shí)時監(jiān)控和觸發(fā)模式監(jiān)控兩種,,可以根據(jù)具體的情況設(shè)計(jì)合適的監(jiān)控方式,如果采用實(shí)時監(jiān)控,,將占用較多網(wǎng)絡(luò)資源,,成本相對較高,采用觸發(fā)模式的運(yùn)行成本較低,,這里采用觸發(fā)模式,,監(jiān)控系統(tǒng)結(jié)構(gòu)見圖1。

嵌入式遠(yuǎn)程視頻監(jiān)控系統(tǒng)圖

   當(dāng)遇異常情況后,,觸發(fā)監(jiān)控終端拍攝圖片,,同時其內(nèi)部的嵌入式控制模塊和 CDMA模塊協(xié)同運(yùn)作,完成Internet的接入(包括撥號,、PPP和 CTP/IP協(xié)議的處理等),,并把拍攝到的圖片數(shù)據(jù)經(jīng)打包后發(fā)送給控制中心主機(jī),,或發(fā)送給指定的E-mail地址,控制中心主機(jī)登錄到Internet上后運(yùn)行服務(wù)器端軟件就可以瀏覽由監(jiān)控點(diǎn)發(fā)來的圖片,。

  3 硬件系統(tǒng)設(shè)計(jì)

  要能夠正確運(yùn)行一個操作系統(tǒng),,硬件方面至少應(yīng)該包括CPU、內(nèi)存和固態(tài)存儲器,、系統(tǒng)內(nèi)部總線以及外設(shè)接口,,具體硬件系統(tǒng)結(jié)構(gòu)見圖2。

  SAMSUNG公司的S3C2410 CPU具有3個UART,、1個RTC和觸摸屏接口,,還具有I2C總線、USB Host,、USB Device等接口,,充分滿足了系統(tǒng)的需要,而且性價比極高,,是一個很不錯的選擇,。

  由于剪裁后的Linux系統(tǒng)所占得存儲空間非常小(只有幾MB),我們選擇Nor Flash作為固體存儲器,,型號是E28F128J3A150,,容量為16MB,通過16位數(shù)據(jù)總線與CPU交換數(shù)據(jù),,并利用其上端8MB空間(00800000H-00ffffffH)開辟了一個jffs2文件存儲系統(tǒng),,存儲系統(tǒng)的配置文件。

  64MB的SDRAM為2片K4S561632C,,通過32位數(shù)據(jù)總線與CPU交換數(shù)據(jù),。

  通過MAX3232C電平轉(zhuǎn)換芯片和RTL8019網(wǎng)絡(luò)芯片轉(zhuǎn)換成一個RS-232接口和一個以太網(wǎng)接口,用串口線和以太網(wǎng)網(wǎng)線與PC機(jī)相連,,組成可以交叉編譯的開發(fā)環(huán)境,。

  通過CPU上集成的USB Host接口直接與USB攝像頭連接,考慮到監(jiān)控與控制模塊接口的要求,,選用USB1.1接口的紅外線攝像頭,。

  通過CPU上集成的UART接口直接與CDMA Modem模塊相連接,選用價格適中的AnyData公司的DTGS-800 CDMA模塊,。4 軟件系統(tǒng)設(shè)計(jì)

  4.1 控制終端程序設(shè)計(jì)

  控制終端軟件的核心是嵌入式Linux操作系統(tǒng),,一切功能的實(shí)現(xiàn)都基于 Linux操作系統(tǒng)完成,Linux本身作為一個桌面系統(tǒng),,進(jìn)入嵌入式操作系統(tǒng)領(lǐng)域時,,需要解決的問題主要包括硬件支持、提供二次開發(fā)的環(huán)境以及小型化(裁減內(nèi)核)等,小型化的目的是在滿足操作系統(tǒng)基本功能和用戶特定需要的情況下,,使內(nèi)核盡可能小,,作為一個操作系統(tǒng),Linux內(nèi)核主要負(fù)責(zé)程序的管理與調(diào)度,、內(nèi)存的管理及對外設(shè)的驅(qū)動和管理等,,由于Linux內(nèi)核采用模塊化的設(shè)計(jì),很多模塊可以獨(dú)立地加載或卸載,,所以小型化就是對Linux內(nèi)核重新編譯,,在編譯時仔細(xì)地選擇嵌入式設(shè)備所需要的功能模塊,同時刪除不需要的功能,,這里只需要串口驅(qū)動,、USB攝像頭接口驅(qū)動(包含USB Host,USB Core和USB Device)還有撥號網(wǎng)絡(luò)應(yīng)用,,還要支持PPP、TCP/IP網(wǎng)絡(luò)協(xié)議,,其他都可以刪除掉,,使系統(tǒng)運(yùn)行所需要的內(nèi)核顯著減小至1Mb以內(nèi)。

  具體程序設(shè)計(jì)包括Bootloader啟動代碼,、設(shè)備驅(qū)動程序(USB攝像頭接口驅(qū)動程序,、串口驅(qū)動程序)、撥號,、PPP及TCP/IP協(xié)議處理,,監(jiān)控接收轉(zhuǎn)發(fā)控制程序等??刂屏鞒倘鐖D3所示,。

  

視頻控制終端程序圖

   a)系統(tǒng)加電后復(fù)位。

  b)Bootloader初始化CPU,、SDRAM,、分配地址空間等。

  c) Bootloader把Linux內(nèi)核的壓縮文件解壓到SDRAM中,,同時把控制權(quán)從Bootloader移交到Linux,。Linux的內(nèi)核有兩種運(yùn)行方式可供選擇??梢栽贔lash存儲器上直接運(yùn)行,,也可以加載到內(nèi)存中運(yùn)行。Flash存儲器運(yùn)行方式就是把內(nèi)核的可執(zhí)行映像燒寫到Flash存儲器上,,系統(tǒng)啟動時從Flash存儲器的某個地址開始運(yùn)行內(nèi)核,,進(jìn)入SDRAM繼續(xù)運(yùn)行,這種做法能減少內(nèi)存需要,實(shí)際上很多嵌入式系統(tǒng)都采用這種方法,,內(nèi)存加載方式把內(nèi)核的壓縮文件存放在Flash存儲器上,,系統(tǒng)啟動時自動讀取壓縮文件并在內(nèi)存中解壓,然后開始執(zhí)行,,這種方式相對較復(fù)雜,,但運(yùn)行速度更快,我們采用的就是這種方式,。

  d)開始執(zhí)行SDRAM中的代碼,,Linux內(nèi)核初始化,完成堆棧,,中斷的分配等,。

  e)加載串口驅(qū)動模塊和USB攝像頭驅(qū)動模塊,完成串口和USB口的初始化,。

  f)運(yùn)行PPP撥號程序,,通過CDMA網(wǎng)絡(luò)與Internet進(jìn)行連接,在Linux下的PPP包是專門為解決Modem撥號上網(wǎng)問題而編寫的,,并且是公開源代碼的,,PPP撥號腳本程序主要是通過調(diào)用pppd和chat這兩個應(yīng)用程序,并通過AT指令實(shí)現(xiàn)對Modem的操作,。

  至此,,已經(jīng)建立了從圖像采集到圖像傳輸?shù)耐暾那度胧奖O(jiān)控系統(tǒng),但是,,作為一個嵌入式操作系統(tǒng),,他是為某一專門的用途而設(shè)計(jì)的。運(yùn)行不同的用戶應(yīng)用程序,,就可以實(shí)現(xiàn)用戶要求的不同功能,,生動地體現(xiàn)了嵌入式系統(tǒng)的靈活性。

  我們運(yùn)行的用戶程序是一個無限循環(huán)的過程,,控制終端在不斷等待拍照請求,,通過比較識別認(rèn)為有請求后,CPU通過USB攝像頭驅(qū)動控制攝像頭拍照,,同時接收圖片并發(fā)送控制中心,,或通過SMTP協(xié)議,發(fā)送到指定的Email地址,,完成一次請求,。

  4.2 控制中心服務(wù)器程序設(shè)計(jì)

  服務(wù)器端軟件實(shí)現(xiàn)的主要功能是接收、保存和重顯由嵌入式終端發(fā)送過來的監(jiān)控圖片,,控制中心主機(jī)通過撥號,、帶寬上網(wǎng)等方式登錄到Internet上,,注意必須申請一個靜態(tài)IP地址,使主機(jī)每次登錄到Internet所獲得的IP地址(互聯(lián)網(wǎng)IP地址)不變,,主機(jī)登錄Internet后,,即可運(yùn)行服務(wù)器端軟件,服務(wù)器端程序設(shè)計(jì)主要包括網(wǎng)絡(luò)通信,、接收圖片,、保存圖片、即時重顯圖片和察看圖片,,用戶通過此軟件可以方便地瀏覽由控制終端發(fā)來的圖片,。

  另一種方案是不設(shè)置控制中心服務(wù)器,控制終端抓怕到的圖片直接發(fā)送到指定的Email地址,,這種方案容易管理,,只需定期查收Email,清除Email存儲空間即可,,運(yùn)行成本很低,,但可靠性差。

  5 結(jié)束語

  利用無線網(wǎng)絡(luò)與IT技術(shù)對傳統(tǒng)監(jiān)控領(lǐng)域進(jìn)行革新,,是市場的需要,,在這個過程中,嵌入式系統(tǒng)因其體積小,、處理能力強(qiáng)、支持網(wǎng)絡(luò)服務(wù)等功能,,無疑扮演了重要角色,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。