閱讀 | 訂閱
閱讀 | 訂閱
激光檢測(cè)

基于DSP視頻檢測(cè)和遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)

星之球激光 來源:電子技術(shù)應(yīng)用2011-11-30 我要評(píng)論(0 )   

隨著計(jì)算機(jī)視覺技術(shù)以及圖像處理技術(shù)的不斷發(fā)展,計(jì)算機(jī)視覺和 視頻檢測(cè) 技術(shù)已經(jīng)廣泛應(yīng)用于工業(yè)控制、智能交通、設(shè)備制造等很多領(lǐng)域。傳統(tǒng)的視頻檢測(cè)往往采用工控機(jī)作...

隨著計(jì)算機(jī)視覺技術(shù)以及圖像處理技術(shù)的不斷發(fā)展,計(jì)算機(jī)視覺和視頻檢測(cè)技術(shù)已經(jīng)廣泛應(yīng)用于工業(yè)控制、智能交通、設(shè)備制造等很多領(lǐng)域。傳統(tǒng)的視頻檢測(cè)往往采用工控機(jī)作為其視頻處理器來實(shí)現(xiàn)其功能。這種方法往往由于工控機(jī)處理速度的問題,無法實(shí)現(xiàn)對(duì)各個(gè)不同方向同時(shí)進(jìn)行視頻檢測(cè),而且由于視頻檢測(cè)處理過程需要占用大量的處理時(shí)間,因而無法實(shí)現(xiàn)實(shí)時(shí)的遠(yuǎn)程控制功能。

  目前在遠(yuǎn)程控制和通信方面,基于DOS和Windows操作系統(tǒng)的通信平臺(tái)得到普遍的引用,但是DOS操作系統(tǒng)作為單任務(wù)操作系統(tǒng),無法實(shí)現(xiàn)多任務(wù)功能和實(shí)時(shí)處理的要求;而Windows操作系統(tǒng)作為視窗操作系統(tǒng),其系統(tǒng)的穩(wěn)定性和實(shí)時(shí)性也無法與實(shí)時(shí)多任務(wù)嵌入式操作相比擬。 本文提出一種以DSP作為視頻檢測(cè)處理芯片,以Linux為操作系統(tǒng)的嵌入式系統(tǒng)設(shè)計(jì)方法。
1 系統(tǒng)結(jié)構(gòu)
  本系統(tǒng)的開發(fā)主要包括視頻檢測(cè)卡和x86通信平臺(tái)的設(shè)計(jì)2個(gè)部分。視頻檢測(cè)卡主要包括模擬圖像采集、轉(zhuǎn)換、DSP視頻檢測(cè)3個(gè)部分,每塊交換參數(shù)檢測(cè)卡擴(kuò)充PCI總線接口,插在通信開發(fā)平臺(tái)的PCI總線插口上,通過PCI總線同通信平臺(tái)交換數(shù)據(jù)。通信平臺(tái)處理多塊交通參數(shù)檢測(cè)卡的通信問題,將視頻檢測(cè)卡通過PCI總線傳送過來的視頻檢測(cè)數(shù)據(jù)實(shí)時(shí)通過網(wǎng)絡(luò)傳送給控制中心。系統(tǒng)的功能方框圖如圖1所示。

 

 

  

根據(jù)系統(tǒng)設(shè)計(jì)要求,視頻檢測(cè)卡功能主要分為:模擬圖像采集、模擬圖像A/D轉(zhuǎn)換、數(shù)據(jù)緩存以及DSP視頻檢測(cè)5個(gè)部分。視頻檢測(cè)卡流程如圖2所示。
  本系統(tǒng)采用PhilIPs公司的SAA7111A來實(shí)現(xiàn)模擬圖像A/D轉(zhuǎn)換。該芯片可實(shí)現(xiàn)多路選通、鎖相與時(shí)序、時(shí)鐘產(chǎn)生與測(cè)試、ADC、亮色分離等功能。其輸出可以具有如下格式:YUV 4:1:1(12bit)、YUV 4:2:2(16bit)、YUV 4:2:2(CCIR-656)(8bit)等。由于DSP處理芯片和SA7111A的時(shí)序不同,可以通過CPLD進(jìn)行邏輯控制FIFO來完成數(shù)據(jù)緩存的功能。
  DSP是實(shí)時(shí)信號(hào)處理的核心。本系統(tǒng)采用TI公司DSP芯片——TMS320C6211。該芯片屬C6000的定點(diǎn)系列,C6211在這個(gè)系列中是性價(jià)比最高的一種。C6211處理器由3個(gè)主要部分組成:CPU內(nèi)核、存儲(chǔ)器和外設(shè)。集成外設(shè)包括EDMA控制器、外存儲(chǔ)器接口(EMIF)、主機(jī)口(HPI)、多通道緩沖接口(McBSP)、定時(shí)器、中斷選擇子、JTAG接口、PowerDown邏輯以及PLL時(shí)鐘發(fā)生器。通過EMIF接口擴(kuò)充 SDRAM,而PCI總線控制芯片的擴(kuò)展通過HPI接口。
  PCI總線的接口芯片PCI9050,主要包括PCI總線信號(hào)接口和本地總線(LOCAL BUS)信號(hào)。在硬件設(shè)計(jì)時(shí),只需將本地總線信號(hào)的接口通過電平轉(zhuǎn)換連接到DSP的HPI接口,同時(shí)擴(kuò)展PCI接口就可以完成其硬件電路設(shè)計(jì)。

 

 

2 通信開發(fā)平臺(tái)的嵌入式系統(tǒng)設(shè)計(jì)
  通信開發(fā)平臺(tái)以x86為核心器件,擴(kuò)充PCI總線,通過Modem撥號(hào),實(shí)現(xiàn)x86與Internet的連接。
2.1 PCI總線設(shè)備驅(qū)動(dòng)
  PCI設(shè)備有3種物理空間:配置空間、存儲(chǔ)器空間和I/O空間。配置空間是長(zhǎng)度為256字節(jié)的一段連接空間,空間的定義如圖3所示。在配置空間中只讀空間有設(shè)備標(biāo)識(shí)、供應(yīng)商代碼、修改版本、分類代碼以及頭標(biāo)類型。其中供應(yīng)商代碼用來標(biāo)識(shí)設(shè)備供應(yīng)商的代碼;設(shè)備標(biāo)識(shí)用來標(biāo)識(shí)某一特殊的設(shè)備;修改版本標(biāo)識(shí)設(shè)備的版本號(hào);分類代碼用來標(biāo)識(shí)設(shè)備的種類;頭標(biāo)類型用來標(biāo)識(shí)頭類型以及是否為多功能設(shè)備。除供應(yīng)商代碼之外,其它字段的值由供應(yīng)商分配。
  命令字段寄存器用來提供設(shè)備響應(yīng)的控制命令字;狀態(tài)字段用來記錄PCI總線相關(guān)事件(詳細(xì)的命令控制和狀態(tài)讀取方法見參考文獻(xiàn)4)。
  基地址寄存器最重要的功能是分配PCI設(shè)備的系統(tǒng)地址空間。在基地址寄存器中,bit0用來標(biāo)識(shí)是存儲(chǔ)器空間還是I/O地址空間?;刂芳拇嫫饔成涞酱鎯?chǔ)器空間時(shí)bit0為“0”,映射到I/O地址空間時(shí)bit0為“1”。基地址空間中其它一些內(nèi)容用來表示PCI設(shè)備地址空間映射到系統(tǒng)空間的起始物理地址。地址空間大小通過向基地址寄存器寫全“1”,然后讀取其基地址的值來得到。
PCI設(shè)備的驅(qū)動(dòng)過程主要包括下面幾個(gè)步驟。
  首先,PCI設(shè)備的查找。在嵌入式操作系統(tǒng)中一般提供相應(yīng)的API函數(shù),在Linux操作系統(tǒng)中通過函數(shù) pcibios_find_device(PCI_VENDOR_ID,PCI_DEVICE,index,&bus,&devfn)可以找到供應(yīng)商代碼為PCI-ID,設(shè)備標(biāo)識(shí)為PCI-DEVICE的第n(index+1)個(gè)設(shè)備,并且返回總線號(hào)和功能號(hào),分別保存于bus和 devfn中。
  第2步,PCI設(shè)備的配置。通過操作系統(tǒng)提供的API函數(shù)訪問PCI設(shè)備的配置空間,配置PCI設(shè)備基址寄存器的配置、中斷配置、ROM基地址寄存器的配置等,這樣可以得到PCI的存儲(chǔ)器空間和I/O地址空閑映射,設(shè)備的中斷號(hào)等。在Linux操作系統(tǒng)中,訪問PCI設(shè)備配置空間的API函數(shù)有 pcibios_write_config_byte、pcibios_read_config_byte等,它們分別完成對(duì)PCI設(shè)備配置空間的讀寫操作。
  第3步,根據(jù)PCI設(shè)備的配置參數(shù),對(duì)不同的設(shè)備編寫初始化程序、中斷服務(wù)程序以及對(duì)PCI設(shè)備存儲(chǔ)空間的訪問程序。

 


2.2 遠(yuǎn)程控制與通信鏈路的建立
  與Internet連接的數(shù)據(jù)鏈路方式主要有Ethernet方式和串行通信方式。Ethernet連接方式是一種局域網(wǎng)的連接方式,廣泛應(yīng)用于本地計(jì)算機(jī)的連接。通過Modem進(jìn)行撥號(hào)連接的串行通信方式,可以實(shí)現(xiàn)遠(yuǎn)距離的數(shù)據(jù)通信,下面詳細(xì)介紹串行通信接口協(xié)議方式。
  串行通信協(xié)議有SLIP、CSLIP以及PPP通信協(xié)議。SLIP和CSLIP提供一種簡(jiǎn)單的通過串行通信實(shí)現(xiàn)IP數(shù)據(jù)報(bào)封裝方式,通過RS232串行接口和調(diào)試解調(diào)器接入Internet。但是這種簡(jiǎn)單的連接方式有很多缺陷,如每一端無法知道對(duì)方IP地址;數(shù)據(jù)幀中沒有類型字段,也就是1條串行線路用于SLIP就不能同時(shí)使用其它協(xié)議;SLIP沒有在數(shù)據(jù)幀中加上檢驗(yàn)和,當(dāng)SLIP傳輸?shù)膱?bào)文被線路噪聲影響發(fā)生錯(cuò)誤時(shí),無法在數(shù)據(jù)鏈路層檢測(cè)出來,只能通過上層協(xié)議發(fā)現(xiàn)。 #p#分頁(yè)標(biāo)題#e#
  PPP(Point to Point Protocal,點(diǎn)對(duì)點(diǎn)協(xié)議)修改了SLIP協(xié)議中的缺陷。PPP中包含3個(gè)部分:在串行鏈路上封裝IP數(shù)據(jù)報(bào)的方法;建立、配置及測(cè)試數(shù)據(jù)鏈路的鏈路控制協(xié)議(LCP);不同網(wǎng)絡(luò)層協(xié)議的網(wǎng)絡(luò)控制協(xié)議(NCP)。PPP相對(duì)于SLIP來說具有很多優(yōu)勢(shì);支持循環(huán)冗余檢測(cè)、支持通信雙方進(jìn)行IP地址動(dòng)態(tài)協(xié)商、對(duì)TCP和IP報(bào)文進(jìn)行壓縮、認(rèn)證協(xié)議支持(CHAP和PAP)等。圖4為PPP數(shù)據(jù)幀的格式。
  PPP的實(shí)現(xiàn)可以通過2個(gè)后臺(tái)任務(wù)來完成。協(xié)議控制任務(wù)和寫任務(wù)。協(xié)議控制任務(wù)控制各種PPP的控制協(xié)議,包括LCP、NCP、CHAP和PAP。它用來處理連接的建立、連接方式的協(xié)商、連接用戶的認(rèn)證以及連接中止。寫任務(wù)用來控制PPP設(shè)備的數(shù)據(jù)發(fā)送。數(shù)據(jù)報(bào)的發(fā)送過程,就是通過寫任務(wù)往串行接口設(shè)備寫數(shù)據(jù)的過程,當(dāng)有數(shù)據(jù)報(bào)準(zhǔn)備就緒,PPP驅(qū)動(dòng)通過信號(hào)燈激活寫任務(wù),使之完成對(duì)串行接口設(shè)備的數(shù)據(jù)發(fā)送過程。PPP接收端程序通過在串行通信設(shè)備驅(qū)動(dòng)中加入“hook”程序來實(shí)現(xiàn)。在串行通信設(shè)備接收到1個(gè)數(shù)據(jù)之后,中行設(shè)備的中斷服務(wù)程序(ISR)調(diào)用PPP的ISR。當(dāng)1個(gè)正確的PPP數(shù)據(jù)幀接收之后,PPP的ISR通過調(diào)度程序調(diào)用PPP輸入程序,然后PPP輸入程序從串行設(shè)備的數(shù)據(jù)緩存中將整個(gè)PPP數(shù)據(jù)幀讀出,根據(jù)PPP的數(shù)據(jù)幀規(guī)則進(jìn)行處理,也就是分別放入IP輸入隊(duì)列或者協(xié)議控制任務(wù)的輸入隊(duì)列。
  PPP現(xiàn)在已經(jīng)廣泛為各種ISP(Internet Sever Provider)接受,而Linux操作系統(tǒng)下完全支持PPP協(xié)議。在Linux 下網(wǎng)絡(luò)配置過程中,通過1個(gè)Modem建立與ISP的物理上的連接,然后tion。在接口(Interface)里面加入PPP設(shè)備,填入ISP電話號(hào)碼、用戶以及密碼,同時(shí)將本地IP和遠(yuǎn)端IP設(shè)置為0.0.0.0,修改/ETC/PPP/OPTION,加上DEFAULTROUE,由ISP提供缺省路由,這樣就完成了設(shè)備的PPP數(shù)據(jù)鏈路設(shè)置過程,可以通過Internet實(shí)現(xiàn)遠(yuǎn)程控制。

 

 

結(jié)束語(yǔ)
  該設(shè)計(jì)方法已成功應(yīng)用于智能交換系統(tǒng)的交通參數(shù)檢測(cè)系統(tǒng)中。在該系統(tǒng)中,采用4塊DSP視頻檢測(cè)卡實(shí)現(xiàn)4個(gè)不同路面區(qū)域的交通參數(shù)檢測(cè),同時(shí)采用Linux作為通信平臺(tái)的操作系統(tǒng);通過PPP協(xié)議建立與監(jiān)控中心的連接,實(shí)現(xiàn)監(jiān)控中心對(duì)各個(gè)視頻檢測(cè)卡的遠(yuǎn)程控制。
  本文提出的視頻檢測(cè)和遠(yuǎn)程控制的嵌入式系統(tǒng);通過PPP協(xié)議建立與監(jiān)測(cè)中心的連接,實(shí)現(xiàn)監(jiān)控中心對(duì)各個(gè)視頻檢測(cè)卡的遠(yuǎn)程控制。
  本文提出的視頻檢測(cè)和遠(yuǎn)程控制的嵌入式系統(tǒng)設(shè)計(jì)方案,充分利用了DSP的高性能的數(shù)據(jù)處理功能和嵌入系統(tǒng)操作系統(tǒng)的實(shí)時(shí)穩(wěn)定的特點(diǎn),采用PPP協(xié)議建立與Internet的連接,實(shí)現(xiàn)視頻檢測(cè)的遠(yuǎn)程控制。這種DSP信號(hào)處理與嵌入式系統(tǒng)相結(jié)合的模式,可以廣泛應(yīng)用于工業(yè)控制、產(chǎn)品制造、智能交通等的視頻檢測(cè)領(lǐng)域,具有廣泛的應(yīng)用前景。

 

轉(zhuǎn)載請(qǐng)注明出處。

暫無關(guān)鍵詞
免責(zé)聲明

① 凡本網(wǎng)未注明其他出處的作品,版權(quán)均屬于激光制造網(wǎng),未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、摘編或利用其它方式使用。獲本網(wǎng)授權(quán)使用作品的,應(yīng)在授權(quán)范圍內(nèi)使 用,并注明"來源:激光制造網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其相關(guān)責(zé)任。
② 凡本網(wǎng)注明其他來源的作品及圖片,均轉(zhuǎn)載自其它媒體,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本媒贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé),版權(quán)歸原作者所有,如有侵權(quán)請(qǐng)聯(lián)系我們刪除。
③ 任何單位或個(gè)人認(rèn)為本網(wǎng)內(nèi)容可能涉嫌侵犯其合法權(quán)益,請(qǐng)及時(shí)向本網(wǎng)提出書面權(quán)利通知,并提供身份證明、權(quán)屬證明、具體鏈接(URL)及詳細(xì)侵權(quán)情況證明。本網(wǎng)在收到上述法律文件后,將會(huì)依法盡快移除相關(guān)涉嫌侵權(quán)的內(nèi)容。

網(wǎng)友點(diǎn)評(píng)
0相關(guān)評(píng)論
精彩導(dǎo)讀