隨著(zhù)信息技術(shù)的發(fā)展,數字化越來(lái)越多的代替了傳統的模擬系統,數字化使得遠程視頻監控系統不需要專(zhuān)門(mén)架設線(xiàn)路,應用現有通訊線(xiàn)路就可以實(shí)現低成本的信息傳遞,與傳統的模擬監控系統相比,它的組網(wǎng)成本大大降低、系統體積重量大大減小、運行維護更容易。 所使用的通信線(xiàn)路有很多種,如:以太網(wǎng)、ISDN、xDSL、公共電話(huà)網(wǎng)、無(wú)線(xiàn)電話(huà)網(wǎng)等,根據線(xiàn)路的帶寬不同,遠程視頻監控系統的圖像質(zhì)量也有很大不同。 本文針對低設備成本、低運行成本和超遠距離的視頻監控系統應用提出了解決方案,使用ARM嵌入式處理器和Linux操作系統構建嵌入式系統,開(kāi)發(fā)出可實(shí)際應用的遠程視頻監控系統,適用于低分辨率、低成本、長(cháng)距離的監控應用。 它的特點(diǎn)有: ·構建了ARM嵌入式處理器開(kāi)發(fā)平臺,提出了嵌入式系統的低成本開(kāi)發(fā)流程; ·前端使用便宜的一體化高集成數字化視頻采集模塊,簡(jiǎn)化了系統前端的設計,大大降低了前端成本; ·編寫(xiě)簡(jiǎn)單的嵌入式操作系統程序,動(dòng)態(tài)加載應用程序,加快其執行速度; ·信號處理使用由高速、高性能的ARM處理器構建的嵌入式系統,通過(guò)軟件來(lái)實(shí)現圖像壓縮。 ARM視頻監控系統平臺 本課題要求建立低成本的圖像數據采集、實(shí)時(shí)壓縮與遠程傳送系統,而且要求容易進(jìn)行實(shí)驗室環(huán)境下的開(kāi)發(fā)與調試;另外考慮到以后的擴展要求,還需要具備內存管理單元(MMU)與音頻接口。 CirrusLogic公司的EP7312正適合要求。它是基于A(yíng)RM720T內核的嵌入式微處理器,運行于74MHz時(shí)其性能與100MHz的IntelPentium芯片基本相當,且功耗很低,在74MHz工作頻率下,功耗90mW,具有MMU、音頻接口及LCD控制器。 圖1是視頻監控應用系統的開(kāi)發(fā)平臺。ARM的系統擴展槽和設備擴展槽,用于為ARM系統添加如以太網(wǎng)接口、海量數據存儲接口和PCMCIA等接口或者用于與其他功能開(kāi)發(fā)板,為ARM系統擴展了CMOS圖像獲取功能和VGA顯示功能。其中,VGA接口是通過(guò)電阻網(wǎng)絡(luò )實(shí)現320×240×12bits,即4096色彩色顯示。與SRAM訪(fǎng)問(wèn)相關(guān)的寄存器有:SRAM控制寄存器、讀地址低16位、讀地址高16位、讀出數據寄存器、寫(xiě)地址低16位、寫(xiě)地址高16位、寫(xiě)入數據寄存器;與CMOS圖像采集有關(guān)的寄存器有CMOS采集控制寄存器、CMOS采集狀態(tài)寄存器;與VGA顯示有關(guān)的是VGA顯示控制寄存器。 圖1 ARM視頻監控開(kāi)發(fā)平臺 ARM控制CMOS圖像采集,然后ARM從圖像緩沖SRAM中讀取圖像數據到ARM內部的LCD顯示存儲區,顯示到LCD屏上。這也就打通了整個(gè)數據前向通道,ARM獲取了圖像后就可以進(jìn)一步做壓縮處理和傳輸。ARM程序開(kāi)發(fā) ARM視頻監控系統配備512KB的FLASHROM,用于程序存儲器,所以應用程序與原始數據的總和必須小于512KB。以下是ARM程序開(kāi)發(fā)流程: 軟件的編寫(xiě)與調試 針對應用編寫(xiě)所需的各種程序,使用ADS(ARMDeveloperSuite)建立工程文件,把編寫(xiě)好的匯編程序*.s文件、C語(yǔ)言程序*.c文件、*.h文件加入到工程中。然后對編譯參數進(jìn)行相應設置,編譯工程文件,編譯通過(guò)后生成可執行二進(jìn)制代碼。使用ADW調試已編譯工程,軟件調試只能調試ARM指令,無(wú)法仿真外圍設備;調試通過(guò)后,準備下載可執行二進(jìn)制代碼,進(jìn)行硬件測試。 程序下載的實(shí)現 通過(guò)bootloader程序來(lái)實(shí)現對FLASH程序存儲器的編程,bootloader程序是自己編寫(xiě)的基于內啟動(dòng)方式下的小程序。 (1)首先讓EP7312以?xún)葐?dòng)方式運行,PC通過(guò)串口1(9600bps)接收到"<"標志, (2)然后PC從串口發(fā)送2KB的bootloader程序到EP7312。 (3)這時(shí)bootloader程序開(kāi)始運行,PC通過(guò)串口1(115200bps)發(fā)送"0x79"與EP7312再次建立連接,隨后PC發(fā)送"0xFF0xFA"命令,EP7312返回"Len:",PC再發(fā)送四字節的要下載的文件長(cháng)度數據。接著(zhù)PC繼續發(fā)送整個(gè)要下載的程序,發(fā)送完成后將接收到"Ok!",然后編程結束后將接收到"Done!"表明下載編程操作成功完成。 (4)此時(shí)重新以外啟動(dòng)方式啟動(dòng)EP7312就可以運行剛下載的程序。 以上是以工程方式來(lái)進(jìn)行ARM應用程序開(kāi)發(fā)的基本流程,在實(shí)際使用過(guò)程中如果應用到新器件還需要一個(gè)硬件調試階段,在硬件調試通過(guò)以后才可以進(jìn)一步開(kāi)發(fā)應用程序。 有關(guān)硬件調試的軟件方法 在沒(méi)有硬件開(kāi)發(fā)工具的情況下,可以通過(guò)串口來(lái)進(jìn)行硬件的調試,EP7312與外圍硬件的連接基本上有三種方式:直接總線(xiàn)連接、與EP7312的片內外設專(zhuān)用引腳連接、連接EP7312的通用I/O引腳。 以總線(xiàn)方式連接的外設可以通過(guò)總線(xiàn)讀寫(xiě)來(lái)訪(fǎng)問(wèn);專(zhuān)用外設可以通過(guò)內部專(zhuān)門(mén)的控制寄存器來(lái)訪(fǎng)問(wèn);經(jīng)通用I/O擴展的外設則可以通過(guò)對內部通用I/O設置寄存器的控制來(lái)訪(fǎng)問(wèn)。由于內部專(zhuān)用寄存器都對應固定的總線(xiàn)地址,所以這三種方式都可以通過(guò)ARM的總線(xiàn)操作對指定地址的訪(fǎng)問(wèn)來(lái)實(shí)現調試。 軟件設計 在A(yíng)RM處理器硬件復位以后,需要運行匯編啟動(dòng)代碼完成系統初始化,主要包括:中斷向量設置、各種處理器模式下的堆棧設置、系統寄存器設置、SDRAM、LCD等外圍部件的設置。以下是其部分程序代碼: ldrr1,=DRAMControlvalue;設置SDRAM參數 ldrr12,=rSDCONF;rSDCONF= 0x8000.2300 strr1,[r12] ldrr12,=rSYSCON2 strr0,[r12];rSYSCON2= 0x8000.1100 ldrr1,=DRAMConfigvalue;設置SDRAM刷新速度 ldrr12,=rSDRFPR strr1,[r12];rSDRFPR= 0x8000.2340 ;------------------------------------------------ ldrr1,=0x06;設置系統時(shí)鐘為74MHz ldrr12,=rSYSCON3 strr1,[r12];rSYSCON3= 0x8000.2200 ;----------------------------------------------- MemConfig1valueEQU0x0202023c;nCS0 = NOR FLASH, 8-bit, 0 wait states MemConfig2valueEQU0x0000023f;nCS4 = for FPGA, 16-bit, 0 wait states ldrr1,=MemConfig1value;配置存儲器位寬格式與等待狀態(tài) ldrr12,=rMEMCFG1 strr1,[r12];MEMCFG1= 0x8000.0180 ldrr1,=MemConfig2value ldrr12,=rMEMCFG2 strr1,[r12];MEMCFG2= 0x8000.01c0 ;----------------------------------------------- ldrsp,=SVCStack;設置堆棧 圖2是ARM主程序流程圖。ARM處理器從獲取圖像信息,執行壓縮程序,壓縮后的文件通過(guò)公共電話(huà)線(xiàn)路傳遞到監控主機端。由于系統采用相同的圖像分辨率和常量表,所以文件頭都相同,為了減少傳輸數據量,不傳送文件頭,文件頭在監控主機端由軟件自動(dòng)添加。 圖2 ARM主程序流程圖 本系統還使用調制解調器通過(guò)公共電話(huà)網(wǎng)來(lái)建立遠程數據連接,在遠程圖像監控終端處的調制解調器處于待命狀態(tài),它使用"ATS0=3&D0W&W1"命令設置為自動(dòng)應答方式,在3次振鈴后自動(dòng)摘機,經(jīng)歷"數據風(fēng)暴"以后與主叫方建立連接。監控中心的調制解調器由監控軟件控制撥號建立連接或者掛斷連接。數據聯(lián)接建立好ARM會(huì )接收到“CONNECT”字符串表明通訊線(xiàn)路連接成功,此時(shí)就可以像使用普通串口一樣使用調制解調器建立的遠程數據連接。ARM接收到從監控中心發(fā)來(lái)的采集命令后,依次完成圖像采集、壓縮處理,然后通過(guò)串口以ASC碼形式直接發(fā)送圖像數據到監控中心,完成一次操作后等待下一個(gè)采集命令。 結語(yǔ) 本文是完全針對低設備成本、低運行成本和超遠距離的圖像監控系統應用提出的解決方案,前端使用便宜的一體化高集成數字化視頻采集模塊,簡(jiǎn)化了系統前端的設計,大大降低了前端成本;信號處理使用由高速、高性能的ARM處理器與FPGA芯片構建的嵌入式系統,通過(guò)軟件來(lái)實(shí)現圖像壓縮;最后經(jīng)由公共電話(huà)網(wǎng)來(lái)實(shí)現同城范圍內的全數字化遠程圖像監控。在降低系統成本的同時(shí),提高了系統的靈活性。 |