基于DSP和CPLD的智能相機(jī)系統(tǒng)設(shè)計(jì)與研制
摘要:嵌入式實(shí)時(shí)圖像處理技術(shù)是目前結(jié)合圖像處理、模式識(shí)別、傳感器以及微電子等多學(xué)科門類的一門前沿技術(shù)。在電子技術(shù)迅猛發(fā)展的推動(dòng)下,嵌入式實(shí)時(shí)圖像處理也成為可能。在目前的電子技術(shù)條件下,作者結(jié)合DSP技術(shù)、CPLD/FPGA技術(shù),以及圖像處理技術(shù)、傳感器技術(shù)等,開發(fā)設(shè)計(jì)出一種實(shí)用的嵌入式實(shí)時(shí)圖像處理系統(tǒng)――工業(yè)用智能相機(jī),實(shí)現(xiàn)了產(chǎn)品質(zhì)量的自動(dòng)檢測(cè)和分類。
關(guān)鍵詞:DSPCPLD/FPGA圖像處理智能相機(jī)
0、 引言:
在工業(yè)生產(chǎn)中,生產(chǎn)設(shè)備的自動(dòng)化程度在很大程度上決定著生產(chǎn)的效率。同時(shí),高技術(shù)高科技的生產(chǎn)設(shè)備,對(duì)提高產(chǎn)品的檔次也有很大的作用。在工業(yè)生產(chǎn)現(xiàn)場(chǎng),有許多工作是重復(fù)簡(jiǎn)單的勞動(dòng),或工作環(huán)境是不適合人進(jìn)行處理的。這時(shí),可以設(shè)計(jì)一種智能儀器,代替人進(jìn)行這種簡(jiǎn)單重復(fù)的工作或在惡劣的工作環(huán)境下進(jìn)行工作。智能相機(jī)系統(tǒng)就是這樣的一種自動(dòng)化儀器。它以其工作效率高、性能穩(wěn)定、能適合復(fù)雜和惡劣的工作環(huán)境而越來(lái)越受到工業(yè)生產(chǎn)的重視。本文將介紹一款用于工業(yè)生產(chǎn)現(xiàn)場(chǎng)產(chǎn)品質(zhì)量控制的智能相機(jī)的設(shè)計(jì)方案,并給出該相機(jī)的實(shí)際工作情況。
1、系統(tǒng)整體設(shè)計(jì):
進(jìn)行相機(jī)系統(tǒng)設(shè)計(jì),首要考慮的問(wèn)題是工業(yè)現(xiàn)場(chǎng)生產(chǎn)速度和相機(jī)處理速度的匹配問(wèn)題。系統(tǒng)的整體設(shè)計(jì)必須以需要處理的數(shù)據(jù)量為基礎(chǔ)來(lái)選擇需要的處理器類型、外圍接口元器件工作速度、以及選擇傳感器的型號(hào)和參數(shù)等 。工業(yè)生產(chǎn)速度一般以每分鐘多少個(gè)產(chǎn)品來(lái)計(jì)算,必須將其換算為以秒為單位。綜合各方面的因素,在本智能相機(jī)系統(tǒng)設(shè)計(jì)中,圖像傳感器采用美國(guó)國(guó)家半導(dǎo)體公司(National Semiconductor)生產(chǎn)的CMOS單色VGA格式圖像傳感器LM9617 ,系統(tǒng)的邏輯控制和地址發(fā)生器則采用LATTICE公司生產(chǎn)的CPLD ispLSI1048C ,中央處理器采用美國(guó)德州儀器(TI)公司的高速數(shù)字信號(hào)處理器TMS320VC5402 ,顯示器件則采用臺(tái)灣元太公司生產(chǎn)的液晶顯示屏PD064VT5 。在傳感器和圖像緩存間采用LVDS電平轉(zhuǎn)換以提高長(zhǎng)距離傳輸時(shí)的傳輸能力和抗干擾能力。在選定系統(tǒng)各部分的工作器件后,對(duì)系統(tǒng)的整體結(jié)構(gòu)設(shè)計(jì)如圖1所示。
圖1 系統(tǒng)整體結(jié)構(gòu)簡(jiǎn)圖
由傳感器輸出的圖像數(shù)據(jù)和對(duì)傳感器的控制信號(hào),經(jīng)過(guò)LVDS電平轉(zhuǎn)換后,分別送入到CPLD邏輯緩存控制單元和傳感器。CPLD在DSP的控制下,完成對(duì)圖像的緩存和傳輸以及傳感器的配置。中央處理器DSP對(duì)緩存圖像進(jìn)行處理,完成后,將處理結(jié)果圖像寫入到顯示緩存中。當(dāng)處理結(jié)果寫入完畢后,由顯示驅(qū)動(dòng)控制器完成處理結(jié)果圖像的顯示。
2、系統(tǒng)各部分及功能描述:
(一)、圖像傳感器單元:
圖像傳感器主要完成光信息信號(hào)向電信號(hào)轉(zhuǎn)換,從而獲得圖像信息??紤]到普通的工業(yè)生產(chǎn)線的工作情況,在本系統(tǒng)中,圖像傳感器采用美國(guó)國(guó)家半導(dǎo)體公司(National Semiconductor)生產(chǎn)的CMOS單色VGA格式圖像傳感器LM9617,其工作電壓為3.3V,有效像元為648×488,像素尺寸可 。在時(shí)鐘頻率為48MHz時(shí),輸出圖像為30FPS。由于采用了CMOS工藝,傳感器的輸出直接是圖像的數(shù)字信號(hào),輸出的圖像數(shù)據(jù)可以是8位、10位或12位。其控制和工作方式配置是在DSP的控制下,通過(guò)CPLD和傳感器的I2C總線來(lái)完成。該CMOS圖像傳感器采用PLCC48封裝 ,其管腳定義和典型應(yīng)用電路如圖2所示:
圖2 LM9617引腳和典型應(yīng)用電路
從典型應(yīng)用電路圖可以看出,該傳感器外圍電路簡(jiǎn)單,只需少量的阻容元件就可以完成傳感器電路的設(shè)計(jì)。其控制和寄存器的配置通過(guò)傳感器的相機(jī)控制引腳和串行總線(I C)控制引腳進(jìn)行,也顯得簡(jiǎn)單方便。
(二)、邏輯和控制單元:
由于傳感器產(chǎn)生的圖像數(shù)據(jù)量很大,每秒產(chǎn)生的數(shù)據(jù)量為648×488×30Byte,在考慮中央處理器DSPVC5402的處理速度的情況下,決定對(duì)圖像采取雙路緩存,分路處理技術(shù)。進(jìn)行圖像緩存時(shí),采用CPLD來(lái)實(shí)現(xiàn)地址發(fā)生器和邏輯控制功能。在本系統(tǒng)中,地址發(fā)生器和邏輯控制單元采用LATTICE公司生產(chǎn)的大規(guī)模復(fù)雜可編程邏輯器件ispLSI1048C來(lái)完成。ispLSI1048C是具有8000邏輯門,96個(gè)I/O口,12個(gè)專用輸入口,四個(gè)時(shí)鐘輸入口,內(nèi)部具有288個(gè)寄存器和48個(gè)GLB單元,其工作時(shí)鐘可達(dá)50MHz 。緩存時(shí),存儲(chǔ)器的地址和數(shù)據(jù)隔離均由1048C來(lái)實(shí)現(xiàn)。同時(shí),當(dāng)DSP從緩存中讀取數(shù)據(jù)時(shí),數(shù)據(jù)信號(hào)和地址信號(hào)的隔離也由1048C來(lái)實(shí)現(xiàn)。另外,緩存通道的讀寫控制邏輯是在DSP的主控下,由1048C來(lái)完成,并實(shí)現(xiàn)和DSP進(jìn)行數(shù)據(jù)緩存的通信。該部分的設(shè)計(jì)如圖3所示:
圖3 邏輯控制單元結(jié)構(gòu)簡(jiǎn)圖
系統(tǒng)上電初始化后,由DSP向1048C發(fā)出寫圖像命令,1048C接到命令后,先根據(jù)場(chǎng)信號(hào)判斷是否為一幀圖像到來(lái),然后根據(jù)像素時(shí)鐘和行信號(hào)產(chǎn)生地址,對(duì)圖像進(jìn)行緩存。當(dāng)一幅圖像緩存完畢后,向DSP發(fā)出圖像緩存完畢信號(hào)。DSP在接到圖像緩存完畢后,一方面,控制1048C繼續(xù)對(duì)下一幀圖像進(jìn)行緩存,另一方面,對(duì)緩存完畢后的圖像進(jìn)行檢測(cè)。
(三)、中央處理單元:
中央處理單元是系統(tǒng)的核心部分,它涉及到系統(tǒng)工作效率、穩(wěn)定性等問(wèn)題。在綜合考慮系統(tǒng)的處理速度、數(shù)據(jù)量、控制復(fù)雜度、系統(tǒng)設(shè)計(jì)復(fù)雜性、算法復(fù)雜性以及系統(tǒng)成本等因素后,本文選用美國(guó)德州儀器公司(TI)生產(chǎn)的高速數(shù)字信號(hào)處理器TMS320VC5402作為中央處理器,其工作頻率可以達(dá)到100MHz,指令運(yùn)行可達(dá)100MIPS ,能滿足通常數(shù)字信號(hào)處理的需要。
圖4 中央處理單元結(jié)構(gòu)簡(jiǎn)圖
在系統(tǒng)設(shè)計(jì)時(shí),對(duì)DSP程序進(jìn)行了優(yōu)化設(shè)計(jì),其程序儲(chǔ)存器采用Atmel 公司生產(chǎn)的FLASH AT29LV020 ,其大小為256K×8Bit,在運(yùn)行時(shí)采用8Bit并行加載模式進(jìn)行加載。同時(shí)考慮到要對(duì)處理結(jié)果進(jìn)行實(shí)時(shí)顯示,并考慮到顯示過(guò)程,系統(tǒng)設(shè)計(jì)時(shí)采用了1M×8Bit的顯示緩存。并將該緩存作為了系統(tǒng)的數(shù)據(jù)緩存器,在設(shè)計(jì)時(shí)將該部分緩存加在了顯示控制部分,中央處理單元部分的結(jié)構(gòu)如圖4所示。
(四)、顯示控制單元:
圖像顯示部分采用液晶顯示屏來(lái)完成。液晶顯示具有穩(wěn)定可靠、功耗小、結(jié)構(gòu)緊湊、顯示內(nèi)容豐富的特點(diǎn),在嵌入式系統(tǒng)的開發(fā)設(shè)計(jì)中常用來(lái)作為人機(jī)界面并獲得了廣泛的應(yīng)用。
在本系統(tǒng)中,要顯示的是灰度位圖,根據(jù)實(shí)際情況,圖像的灰度級(jí)控制為256級(jí),即8Bit。由于目前市場(chǎng)上沒(méi)有能顯示256灰度級(jí)的液晶屏,在系統(tǒng)設(shè)計(jì)時(shí),采用了臺(tái)灣元太公司生產(chǎn)的6.4’真彩色液晶屏PD064VT5,分辨率為640×480,刷新率為60Hz,其顯示可達(dá)256K 色。在設(shè)計(jì)時(shí),根據(jù)RGB到Y(jié)UV的轉(zhuǎn)換,將液晶屏的G通道和B通道并行接到了R通道上,實(shí)現(xiàn)了顯示64級(jí)灰度圖。驅(qū)動(dòng)控制器由作者自行開發(fā),其結(jié)構(gòu)如圖5所示。
圖5 顯示驅(qū)動(dòng)控制單元
設(shè)計(jì)顯示驅(qū)動(dòng)控制電路時(shí),控制和邏輯發(fā)生器、地址發(fā)生器單元仍采用1048C來(lái)實(shí)現(xiàn),幀緩存器I和II的容量均為512K×8Bit。在顯示時(shí)幀緩存器I和II是作為顯示緩存來(lái)使用,在進(jìn)行算法處理時(shí),幀緩存器I和II則是作為數(shù)據(jù)緩存來(lái)使用。其邏輯控制均采用1048C來(lái)完成。
電源部分是系統(tǒng)中較重要的部分。整個(gè)系統(tǒng)采用線性電源供電。其中,傳感器采用3.3V供電,CPLD1048C采用5V供電,DSP采用電源模塊TPS767D301供電,液晶顯示屏則采用5V和12V混合供電。這里不再詳述。
3、系統(tǒng)實(shí)現(xiàn):
在完成整個(gè)系統(tǒng)的設(shè)計(jì)后,我們對(duì)系統(tǒng)進(jìn)行了實(shí)現(xiàn),并將該智能相機(jī)系統(tǒng)應(yīng)用在了紙品質(zhì)量監(jiān)測(cè)線上,主要完成紙品中瑕疵點(diǎn)或污漬點(diǎn)的檢測(cè)。如發(fā)現(xiàn)紙品表面存在瑕疵,則給出紙品不合格信號(hào)。在圖像處理算法并不復(fù)雜時(shí),系統(tǒng)可以做到實(shí)時(shí)工作,到達(dá)30FPS。在添加一些較復(fù)雜的處理算法后,系統(tǒng)可以工作在15FPS,換算到工業(yè)生產(chǎn)速度為900個(gè)產(chǎn)品每分鐘。這在一般的工業(yè)生產(chǎn)中,已經(jīng)完全能滿足生產(chǎn)需要了。圖6給出了應(yīng)用在檢測(cè)線上后,檢測(cè)出不合格紙品的一個(gè)典型例子:
(a)原始污漬圖像 (b)檢測(cè)算法處理結(jié)果
圖6 檢測(cè)結(jié)果
在檢測(cè)結(jié)果中,給出了瑕疵或污漬點(diǎn)的大小和位置信息,并根據(jù)實(shí)際要求,給出該單個(gè)產(chǎn)品是否合格的信號(hào)。
4、結(jié)論:
智能相機(jī)是國(guó)內(nèi)一門新興的實(shí)時(shí)圖像研究處理方向,它結(jié)合實(shí)時(shí)圖像處理、微電子技術(shù)、傳感器理論等多門學(xué)科,其設(shè)計(jì)和應(yīng)用具有一定的難度和復(fù)雜性。但由于其具有廣闊的應(yīng)用前景,必將越來(lái)越受到人們的重視。
本文給出了一種較通用的智能相機(jī)的設(shè)計(jì)方案并實(shí)現(xiàn)了整個(gè)系統(tǒng)的硬件和軟件設(shè)計(jì),實(shí)踐證明,該方案切實(shí)可行,按照該方案研制的相機(jī)系統(tǒng)工作速度快,性能穩(wěn)定可靠,并已取得了實(shí)際應(yīng)用。
參考文獻(xiàn):
[1] Data Sheet of: LM9617 Monochrome CMOS Image Sensor VGA 30 FPS. NationalSemiconductor Corporation. March, 2001.
[2] Data Sheet of: Specifications for ispLSI 1048C. Lattice Semiconductor Corporation. August2000.a
[3] Data Sheet of: TMS320C54XDSP Cpu Peripherals. TI. April, 1999.
[4] Data Sheet of: 2-Megabit 3-volt Only Flash Memory AT29LV020. Atmel Corporation.May, 2002
[5] Data Sheet of: Technical Specification Model NO.: PD064VT5. PRIME VIEWINTERNATIONAL CO.,LTD. May,2004.
[6] 李剛.數(shù)字信號(hào)處理器的原理及其開發(fā)應(yīng)用.天津:天津大學(xué)出版社.2000.4。
[7] 王沛,李玉山,林裕倫.IEEE1394視覺(jué)系統(tǒng)中DSP控制處理器的軟硬件設(shè)計(jì).電子技術(shù)應(yīng)用.2004.12.
評(píng)論