基于DM642的橋梁纜索表面缺陷圖像采集及傳輸系統設計
1 系統總體硬件設計及工作原理
德州儀器公司(TI)推出的TMS320DM642(簡(jiǎn)稱(chēng)DM642)是專(zhuān)門(mén)用于數字媒體應用的TMS320C6000家族中性能最高的定點(diǎn)DSP(最高工作頻率可達720 MHz,處理能力可達5 760 MIPS),具有極強的單核處理能力以及高度的靈活性和可編程性。該芯片除了極強的處理能力外,還具有兩級高速緩存L1 Cache和L2 Cache;64 bit的EDMA控制器,負責片內L2Cache與其他外設之間的數據傳輸; 64 bit EMIF(外部存儲器接口)可以方便地與SDRAM、FLASH和UART實(shí)現無(wú)縫連接;3個(gè)視頻專(zhuān)用端口(VP0、VP1、VP2),可分別配置為2路,最多可實(shí)現6路視頻采集;支持PCI、HPI、IIC和EMAC(以太網(wǎng)),通信便利。其視頻的編解碼均支持NTSC/PAL制式,適用于音視頻數據的采集和傳輸、圖像處理、機器視覺(jué)、多媒體通信應用等高速運算領(lǐng)域[1,2]。
基于DM642的橋梁纜索表面缺陷檢測系統主要由以下幾大模塊組成:圖像采集模塊、數據及程序存儲模塊、圖像處理模塊、圖像傳輸模塊、系統控制模塊以及接收模塊等。其主要硬件組成為:3路CCD攝像頭、3個(gè)圖像采集的A/D轉換芯片SAA7113、高速圖像采集及處理的DSP芯片DM642、圖像數據存儲器SDRAM、程序存儲器FLASH、系統控制模塊CPLD芯片EPM3128A、網(wǎng)絡(luò )化傳輸芯片LXT971A、地面接收機(PC)以及其他功能模塊等。其硬件框圖如圖1所示。
系統工作原理為:3路模擬視頻經(jīng)圖像傳感器(CCD)輸入,經(jīng)過(guò)3路A/D轉換芯片SAA7113轉換為數字信號,經(jīng)過(guò)核心芯片DM642的視頻輸入口(VP0、VP2)進(jìn)入DM642的FIFO(先入先出緩存器),再傳輸到DM642片外的同步動(dòng)態(tài)存儲器中;通過(guò)DM642的壓縮編碼經(jīng)以太網(wǎng)口(EMAC)以及物理層收發(fā)芯片LXT971A傳輸到地面服務(wù)器(PC)。PC機接收到圖像數據后,便進(jìn)行圖像的解碼,并在屏幕上顯示,通過(guò)圖像處理算法實(shí)現缺陷檢測。
本系統選用ALTERA公司MAX3000S系列中的CPLD芯片EPM3128A進(jìn)行控制。CPLD與DM642、SAA7113、LXT971A、SDRAM、FLASH之間均使用通用可編程的I/O口相連,進(jìn)行圖像采集控制、圖像數據的重抽樣、地址譯碼、圖像傳輸控制等,以滿(mǎn)足本系統時(shí)序復雜、邏輯控制精確、可靠采集和傳輸等要求。
1.1 圖像采集模塊
由于纜索表面近似為圓柱形,系統中沿纜索機器人均勻布置3個(gè)CCD(每個(gè)CCD之間的夾角為120°)采集同一時(shí)刻纜索表面一周的圖像。而DM642配置有3個(gè)專(zhuān)用的視頻端口,每個(gè)端口可分別配置為2個(gè)通道,最多可實(shí)現6路視頻的采集,故能滿(mǎn)足本系統的要求。
為了同時(shí)支持3路視頻信號的采集,本系統中DM642的視頻口0(VP0)分成A、B 2個(gè)通道,分別作為2個(gè)8 bit的視頻輸入接口;視頻口2(VP2)選用A通道作為8 bit的視頻輸入口,這樣便實(shí)現了3路視頻信號的采集。
系統的圖像采集模塊主要由:3路視頻輸入、3路視頻A/D轉換芯片SAA7113、視頻端口的FIFO、I2C總線(xiàn)、同步動(dòng)態(tài)存儲器組成。
經(jīng)攝像頭(CCD)輸出3路復合視頻信號(CVBS),采用SAA7113專(zhuān)用視頻解碼芯片完成視頻信號解碼和轉換功能[3,4]。在數字化過(guò)程中,由DM642的I2C總線(xiàn)進(jìn)行控制,其輸出格式可由I2C初始化其寄存器來(lái)設置。由于DM642的視頻輸入口只能接收標準的BT656-YUV4:2:2(8 bit)信號,故在I2C初始化時(shí)設置SAA7113的數字化輸出格式為BT656的格式,可通過(guò)寫(xiě)IIC的寄存器來(lái)實(shí)現。進(jìn)入視頻端口的數據通過(guò)CPLD進(jìn)行數據格式的轉換(Y:U:V 4:2:2轉換為4:2:0),當內部FIFO緩存器滿(mǎn)時(shí),產(chǎn)生中斷,DM642通知EDMA(增強直接存儲器存?。┛刂破魍ㄟ^(guò)EDMA方式將圖像數據存儲到SDRAM(同步動(dòng)態(tài)存儲器)中。
由于DM642的視頻口VP0分成2個(gè)8 bit的通道A、B,所以SAA7113和DM642的連接方式只能采用最簡(jiǎn)連線(xiàn)的BT656的方式,即不需要水平、垂直、場(chǎng)同步信號線(xiàn)。圖2所示為VP0端口的一路視頻輸入電路圖,其他2路與該路基本相同。
其中:輸入視頻經(jīng)過(guò)J5接口的信號線(xiàn)3、上拉電阻(18 Ω)以及電容(47 nF),與SAA7113的模擬輸入端AI22直接相連;VP0[0-7]為SAA7113的數據輸出管腳,與DM642視頻口0中的VP0D[2-9]管腳相連;時(shí)鐘同步信號LLC與DM642視頻口0的VP0CLK0相連;SCL和SDA作為I2C接口的時(shí)鐘線(xiàn)和數據線(xiàn),分別與DM642的I2C總線(xiàn)接口的時(shí)鐘和數據線(xiàn)SCL0、SDA0相連;TRST作為復位信號與DM642的復位信號RESET相連;XTAL與XTAL1的管腳間接24.576 MHz的晶振,在VDDA1管腳上提供+3.3 V的電壓供電,供芯片正常工作。
1.2 圖像存儲模塊
(1)SDRAM
DM642芯片內部只集成了256 KB的RAM,因此需要在外部存儲器接口(EMIF)上擴展存儲空間。DM642的EMIF為64 bit的數據總線(xiàn)接口,工作的最高頻率為133 MHz,分為4個(gè)存儲空間(CE0-CE3),每個(gè)有256 MB的尋址空間。它在CE0空間提供了64 bit的SDRAM接口總線(xiàn)(無(wú)縫連接),分配給外擴的SDRAM使用[5-6]。本系統采用了2片32 bit的HY57V283220T-7 SDRAM芯片(為了符合64 bit的接口,必須采用2片32 bit的SDRAM),在片外擴展32 MB的動(dòng)態(tài)存儲空間。
SDRAM在CE0空間的具體定位為:0X80000000-0X81FFFFFF。輸入模擬視頻經(jīng)數字化后進(jìn)入視頻端口的BT656(Y:U:V 4:2:2)數據流,以便于圖像的壓縮編碼。在CPLD控制下實(shí)現圖像數據的重抽樣,之后通過(guò)EDMA的方式存儲到SDRAM中。
(2)FLASH
本系統采用4 M×8 bit的AM29LV320D映射到CE1的低地址空間,用來(lái)存儲程序,實(shí)現系統的自啟動(dòng)。它在CE1空間的具體定位為:0X90000000-0X9007FFFF。DM642的CE1空間被配置成8 bit,以適應自啟動(dòng)要求。4 MB的存儲空間需要22根地址線(xiàn)來(lái)尋址,而DM642的EMIF口可用地址線(xiàn)只有20條。其中FLASH的最高2根地址線(xiàn)由DM642的GPIO中的GPIO1、GPIO2來(lái)模擬地址線(xiàn),從而實(shí)現FLASH的頁(yè)選。系統BOOT LOADING時(shí),先從第一頁(yè)拷貝1 K的啟動(dòng)代碼到DM642,完成芯片初始化,控制GPIO1、GPIO2口線(xiàn)的組合,完成余下代碼的導入。
1.3 圖像傳輸模塊
在所設計的系統中,3路CCD采集的纜索1周的圖像,經(jīng)數字化后同時(shí)送入DM642的視頻端口,并且隨著(zhù)纜索爬升裝置的爬升,不斷重復采集。采集的圖像數據量很大,持續時(shí)間較長(cháng)。如果DM642通過(guò)圖像處理算法,實(shí)時(shí)檢測圖像的缺陷,便要運行大量的算法程序,這就給DM642造成了很大的負擔,因此本系統DM642只是對采集的圖像數據進(jìn)行壓縮編碼,并實(shí)時(shí)傳輸到地面的服務(wù)器(PC),具體圖像識別算法在PC機上進(jìn)行,這就大大減輕了DM642的負擔,提高了DM642實(shí)時(shí)采集、傳輸的效率。
鑒于高速、大量圖像數據的采集,系統采用DM642的網(wǎng)絡(luò )接口實(shí)現傳輸。該系統中圖像分辨率為720×576,幀頻為25幀/s,采用H.263壓縮編碼算法,壓縮比可達100:1,即數據流可壓縮為:3×720×576×8×25÷100=2 488 340 b/s,約為2 500 kb/s??紤]到以太網(wǎng)傳輸,數據傳輸包頭、包尾等附加數據,系統最大數據流為3 000 kb/s=3 Mb/s,而選用的網(wǎng)絡(luò )接口芯片的傳輸速度為10 Mb/s,故可以實(shí)現圖像數據的實(shí)時(shí)處理與傳輸。
EMAC提供了數據鏈路層的功能[7],所以只需要利用一塊物理層的網(wǎng)絡(luò )芯片――以太網(wǎng)PHY收發(fā)器LXT971ALC轉換信號,經(jīng)網(wǎng)絡(luò )變壓器與Internet相連,從而把采集到的圖像數據發(fā)送到地面服務(wù)器(PC),硬件連接電路圖如圖3。其中:DM642的各信號線(xiàn)與PHY網(wǎng)絡(luò )收發(fā)器芯片LXT971ALC的對應信號線(xiàn)直接連接,輸出數據經(jīng)網(wǎng)絡(luò )變壓器13F-60LDNL以及RJ45接口連接到Internet上,從而發(fā)送到PC機。圖3中DM642的各信號線(xiàn)說(shuō)明如表1。
2 系統軟件設計
2.1 系統主程序設計
本系統的軟件是在TI公司提供的集成開(kāi)發(fā)環(huán)境CCS下開(kāi)發(fā)的。通過(guò)XDS510 USB2.0仿真器,將在PC上CCS環(huán)境下編寫(xiě)、調試完成的程序燒入DM642的FLASH中,便可以在DM642上電后自動(dòng)運行執行程序,實(shí)現圖像的采集、處理與傳輸,達到缺陷檢測的目的。
本系統的主程序完成各種寄存器的初始化工作、實(shí)時(shí)采集并存儲攝像機傳送來(lái)的視頻圖像,經(jīng)過(guò)DM642的壓縮編碼,通過(guò)網(wǎng)口發(fā)送采集的圖像數據,通知CPLD繼續下一次采集直至檢測結束。軟件設計流程如圖4所示。
具體工作過(guò)程為:上電后系統程序自動(dòng)從FLASH裝載到DSP的片內RAM中,裝載完畢,DM642自動(dòng)調用程序RAM中的代碼執行。首先通過(guò)I2C總線(xiàn)對A/D芯片SAA7113的工作參數進(jìn)行設置,在圖像采集控制電路(由CPLD實(shí)現)的作用下,SAA7113按設定的工作參數獲取圖像(本系統設定的數據輸出流為BT656格式即:Y:U:V 4:2:2),地址譯碼電路(由CPLD實(shí)現)將數字圖像數據重新抽樣后存儲在片外數據存儲器SDRAM中,經(jīng)DM642實(shí)時(shí)壓縮處理后,通過(guò)網(wǎng)絡(luò )芯片接口,TCP/IP協(xié)議傳輸到地面的服務(wù)器(PC機)。PC機收到圖像信號后進(jìn)行圖像解碼,在屏幕上顯示并將其保存以供后續的圖像處理使用。不斷重復上述操作,直至檢測完成,便可實(shí)現圖像的實(shí)時(shí)采集與傳輸。
2.2 圖像壓縮算法設計
視頻圖像只有通過(guò)壓縮后才能正確地通過(guò)網(wǎng)絡(luò )傳輸。本系統的圖像壓縮采用H.263數字圖像壓縮算法,由信號處理器DM642來(lái)完成。H.263壓縮以幀內變換與幀間預測相結合的混合編碼技術(shù)為核心,適合視頻流的實(shí)時(shí)網(wǎng)絡(luò )化傳輸,比H.264算法成熟、穩定,且實(shí)現簡(jiǎn)單。
由于H.263壓縮標準只需要CIF格式(Y:U:V 4∶2∶0)的視頻圖像,故需將數字化的720×576 4∶2∶2的圖像抽樣為352×288 4∶2∶0的視頻圖像,再寫(xiě)入SDRAM中。此工作由CPLD完成。重新抽樣完成后,再由DM642讀取SDRAM中的數據進(jìn)行壓縮編碼,輸出的視頻碼流經(jīng)網(wǎng)口傳輸到PC上。
本系統H.263壓縮編碼設計流程有:編碼參數設置,視頻數據輸入,幀內編碼,幀間編碼,熵編碼和碼流輸出。編碼流程圖如圖5所示。
3 系統測試及試驗結果
將檢測裝置裝在纜索機器人上,用交叉網(wǎng)線(xiàn)連接DM642以太網(wǎng)口與地面服務(wù)器(PC機),硬件連接完畢后,準備測試。系統上電,隨著(zhù)纜索機器人的爬升,3路CCD進(jìn)行圖像采集,經(jīng)DM642的壓縮處理后通過(guò)Internet傳輸到PC機上。PC機接收到圖像信號后,進(jìn)行圖像解碼,并在屏幕上顯示,完成一次圖像的壓縮與解壓縮過(guò)程。繼續采集下一次,直至完成檢測。
網(wǎng)絡(luò )上的用戶(hù)也可以直接在遠端用IE瀏覽器觀(guān)看Web服務(wù)器上的攝像機圖像,實(shí)現對遠程圖像的實(shí)時(shí)監控。
經(jīng)試驗證明,本文介紹的基于DM642的纜索缺陷圖像采集及傳輸系統可以很好地完成纜索表面圖像的采集和網(wǎng)絡(luò )化傳輸功能,并在PC機上顯示,以供圖像處理,達到了預期的目標。該系統具有一定的通用性和擴展性,可用作串口、HPI接口、無(wú)線(xiàn)傳輸等多種傳輸方式的擴展,同時(shí)也可用作其他目標對象的缺陷檢測。
評論