新聞中心

EEPW首頁 > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 基于CPLD的線陣CCD數(shù)據(jù)采集系統(tǒng)技術(shù)研究

基于CPLD的線陣CCD數(shù)據(jù)采集系統(tǒng)技術(shù)研究

作者: 時(shí)間:2008-10-08 來源:網(wǎng)絡(luò) 收藏

線陣CCD(Charge Coupled Device)越來越廣泛地被應(yīng)用到工業(yè)、軍事、民用行業(yè)。采用CCD數(shù)據(jù)采集卡和微機(jī)相結(jié)合,對(duì)被測(cè)圖像信息進(jìn)行快速采樣、存儲(chǔ)及數(shù)據(jù)處理,是線陣CCD數(shù)據(jù)采集發(fā)展的新方向。配以適當(dāng)?shù)墓鈱W(xué)系統(tǒng),可以實(shí)現(xiàn)光-機(jī)-電-算一體化設(shè)計(jì)。

時(shí)序發(fā)生器(用于產(chǎn)生CCD驅(qū)動(dòng)時(shí)序和視頻信號(hào)處理控制時(shí)序及I/O接口工作控制時(shí)序)的設(shè)計(jì),是CCD數(shù)據(jù)采集電路設(shè)計(jì)的關(guān)鍵,也是CCD應(yīng)用的關(guān)鍵。隨著CCD的飛速發(fā)展,傳統(tǒng)的時(shí)序發(fā)生器實(shí)現(xiàn)方法(如小規(guī)模集成電路實(shí)現(xiàn)、用EPROM實(shí)現(xiàn)、基于單片機(jī)實(shí)現(xiàn)等)已經(jīng)不能夠很好地滿足CCD應(yīng)用向高速、小型化、智能化發(fā)展的需要。同時(shí),簡單的二值化數(shù)據(jù)處理方法更無法滿足CCD數(shù)據(jù)采集系統(tǒng)所需要的高精度、高分辨率的要求。因此,結(jié)合實(shí)際應(yīng)用需要,設(shè)計(jì)了基于復(fù)雜可編程邏輯器件(CPLD)的線陣CCD數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)采用高速半閃速結(jié)構(gòu)A/D轉(zhuǎn)換器對(duì)視頻信號(hào)進(jìn)行硬件處理;在此基礎(chǔ)上,將數(shù)據(jù)采集卡與PC機(jī)相結(jié)合,把數(shù)據(jù)采集卡采集到的數(shù)據(jù)經(jīng)計(jì)算機(jī)并口送至PC機(jī);并采用直線擬合最小二乘法對(duì)采集到的圖像信息進(jìn)行高精度處理,實(shí)現(xiàn)最終的設(shè)計(jì)目的。本設(shè)計(jì)被用于卷煙煙支長度、直徑智能在線檢測(cè)儀中。

1 數(shù)據(jù)采集系統(tǒng)的特點(diǎn)

本數(shù)據(jù)采集系統(tǒng)的特點(diǎn)主要有:
(1)采用高集成度的EPM7064SLC44產(chǎn)生系統(tǒng)所需的驅(qū)動(dòng)和控制時(shí)序邏輯;
(2)由外部PC機(jī)控制CCD積分時(shí)間的大小及數(shù)據(jù)采集卡的工作過程,實(shí)現(xiàn)智能化控制;
(3)應(yīng)用了內(nèi)帶采樣保持的8位高速并行輸出A/D芯片(TLC5510);
(4)通過計(jì)算機(jī)并口高速傳輸數(shù)據(jù)信息;
(5)采用直線擬合最小二乘法高精度定位CCD圖像的邊緣點(diǎn)。

2 數(shù)據(jù)采集系統(tǒng)的硬件電路設(shè)計(jì)

在本系統(tǒng)中,選定TCD142D線陣CCD作為圖像傳感器。本系統(tǒng)硬件電路主要由四部分構(gòu)成:①時(shí)序發(fā)生器;②CCD驅(qū)動(dòng)電路;③CCD視頻信號(hào)處理;④I/O接口。在此設(shè)計(jì)中,TCD142D的工作頻率為1MHz。

2.1系統(tǒng)時(shí)序發(fā)生器的設(shè)計(jì)1~2

時(shí)序發(fā)生器主要產(chǎn)生驅(qū)動(dòng)CCD工作的各驅(qū)動(dòng)時(shí)序及CCD視頻信號(hào)處理所需的控制時(shí)序。

TCD142D的工作時(shí)序如圖1所示[1]。

在本設(shè)計(jì)中,時(shí)序發(fā)生器產(chǎn)生的所有驅(qū)動(dòng)和控制時(shí)序信號(hào)都是在MAX+PLUSⅡ開發(fā)環(huán)境下設(shè)計(jì)完成并經(jīng)編譯、校驗(yàn)后在線下載到CPLD器件內(nèi)部的。合適的CPLD是根據(jù)實(shí)際需要在實(shí)驗(yàn)過程中選定的。在該數(shù)據(jù)采集卡的設(shè)計(jì)中,選用一片MAX7000S系列芯片EPM7064SLC44來實(shí)現(xiàn)時(shí)序發(fā)生器的功能。該系列芯片是ALTERA公司典型的可通過JTAG在線編程的CPLD器件。基于EPM7064SLC44的時(shí)序發(fā)生器的工作原理框圖如圖2所示。外部時(shí)鐘信號(hào)作為CPLD時(shí)序發(fā)生器的基準(zhǔn)信號(hào),所有時(shí)序信號(hào)的產(chǎn)生都是以此為基礎(chǔ)的。EPM7064SLC44芯片內(nèi)部分為兩部分:一部分是視頻信號(hào)處理控制時(shí)序發(fā)生器,它為CCD視頻信號(hào)處理(如A/D轉(zhuǎn)換、數(shù)字信號(hào)存取等)提供各種同步控制時(shí)序;另一部分是CCD驅(qū)動(dòng)時(shí)序發(fā)生器,它根據(jù)TCD142D的具體驅(qū)動(dòng)時(shí)序邏輯的要求,產(chǎn)生CCD工作所需的四路驅(qū)動(dòng)信號(hào)(RS、SH、φ1、φ2),并通過積分控制信號(hào)設(shè)定不同的CCD積分周期(積分周期可變范圍為4ms~64ms,變化步長為4ms;或2ms~32ms,變化步長為2ms),同時(shí)它還為視頻信號(hào)處理控制時(shí)序的產(chǎn)生提供時(shí)鐘控制信號(hào)。圖中操作控制命令主要用來控制數(shù)據(jù)采集系統(tǒng)的工作過程,該數(shù)據(jù)采集系統(tǒng)有三種工作狀態(tài):①數(shù)據(jù)采集系統(tǒng)初始化;②數(shù)據(jù)采集過程;③PC機(jī)讀取視頻信號(hào)過程。

由圖2可以看出,一片CPLD可以替代原來的幾十個(gè)分立元件來實(shí)現(xiàn)CCD數(shù)據(jù)采集系統(tǒng)中各種驅(qū)動(dòng)和控制時(shí)序邏輯,而且CPLD還允許設(shè)計(jì)編程保密位。采用CPLD有利于減小系統(tǒng)電路板的面積、提高系統(tǒng)的安全保密性、降低系統(tǒng)功耗和保證產(chǎn)品的質(zhì)量[2]??傊瑫r(shí)序發(fā)生器的可編程特性使其能夠最大程度地滿足用戶的不同要求。

2.2 TCD142D驅(qū)動(dòng)電路的設(shè)計(jì)

從EPM7064SLC44輸出的脈沖波形RS、SH、φ1和φ2是由基本TTL電路產(chǎn)生的,正邏輯為5V,負(fù)邏輯為0V,而TCD142D要求上述信號(hào)高電平為10~12V,低電平為0V;此外,CCD為電容性負(fù)載,工作頻率高時(shí)有一定的功耗,因此需對(duì)RS、SH、φ1和φ2進(jìn)行電平轉(zhuǎn)換和驅(qū)動(dòng)放大。在從CPLD的輸出引腳獲得上述邏輯時(shí)序后,通過集成驅(qū)動(dòng)芯片DS0026將RS、SH、φ1、φ1這四路驅(qū)動(dòng)脈沖驅(qū)動(dòng)放大送至TCD142D的相應(yīng)輸入端以驅(qū)動(dòng)CCD工作。這樣,在CCD的輸出端將得到與入射光強(qiáng)相對(duì)應(yīng)的模擬視頻信號(hào),并且視頻信號(hào)的輸出得到了相應(yīng)的補(bǔ)償。

2.3 TCD142D視頻信號(hào)處理電路的設(shè)計(jì)

視頻信號(hào)處理電路的結(jié)構(gòu)框圖如圖3所示。

由TCD142D輸出端OS輸出的視頻信號(hào)有以下特點(diǎn):
*負(fù)極性信號(hào)
*包含有周期性的復(fù)位脈沖串?dāng)_
*有效信號(hào)幅值較小,約為500mV

CCD輸出視頻信號(hào)的上述特點(diǎn)決定了它不能夠直接送入PC機(jī)進(jìn)行軟件處理,必須先從硬件上對(duì)其進(jìn)行量化處理。模擬視頻信號(hào)在進(jìn)行A/D轉(zhuǎn)換之前先要進(jìn)行一系列的預(yù)處理,消除視頻信號(hào)中的驅(qū)動(dòng)脈沖(主要是復(fù)位脈沖)及噪聲等所造成的干擾,將微弱的負(fù)極性視頻信號(hào)反向、放大。在電路設(shè)計(jì)中,選用了一片AD8031運(yùn)算放大器,將視頻信號(hào)及其補(bǔ)償輸出分別送至差動(dòng)放大器的反相和同相輸出端,在進(jìn)行視頻信號(hào)放大的同時(shí)消除復(fù)位脈沖所造成的干擾,并將負(fù)極性視頻信號(hào)轉(zhuǎn)換成正極性。在AD8031的輸出端接一級(jí)RC濾波器,進(jìn)一步濾除噪聲。經(jīng)過上述處理后的視頻信號(hào)被送入A/D轉(zhuǎn)換器進(jìn)行量化。在該數(shù)據(jù)采集卡的設(shè)計(jì)中,選用8位、高速、并行、半閃速結(jié)構(gòu)ADC-TLC5510芯片完成A/D轉(zhuǎn)換工作,其內(nèi)部自帶采樣保持電路,這在一定程度上簡化了外圍電路的設(shè)計(jì)。只要設(shè)計(jì)合理,TLC5510的轉(zhuǎn)換速率(最小為20MHz)完全可以滿足CCD(1MHz)的工作要求。利用A/D轉(zhuǎn)換技術(shù)將視頻信號(hào)轉(zhuǎn)換成與之對(duì)應(yīng)的、能夠反映圖像灰度變化的數(shù)字量,提高了測(cè)量精度和分辨率;當(dāng)TLC5510的輸出使能有效時(shí),就可以將A/D轉(zhuǎn)換結(jié)果送至8位數(shù)據(jù)線上。在數(shù)據(jù)存儲(chǔ)器(CY6264)寫允許及地址有效的前提下,將8位A/D轉(zhuǎn)換結(jié)果實(shí)時(shí)地存入數(shù)據(jù)存儲(chǔ)器中。

2.4 I/O接口電路的設(shè)計(jì)

I/O接口電路的主要功能就是將數(shù)據(jù)采集卡與PC機(jī)有機(jī)地統(tǒng)一起來。在本系統(tǒng)中,采用16腳的插座作為兩者之間的接口。兩者的通訊主要包括:接收PC機(jī)發(fā)送的各種控制命令;發(fā)送數(shù)據(jù)采集卡的各種狀態(tài)信號(hào)給PC機(jī);接收PC機(jī)發(fā)送的數(shù)據(jù)采集卡積分時(shí)間設(shè)定命令;傳輸數(shù)據(jù)給PC機(jī)等。

3 數(shù)據(jù)采集系統(tǒng)軟件的設(shè)計(jì)

數(shù)據(jù)采集系統(tǒng)的軟件主要完成的功能有:①PC機(jī)與數(shù)據(jù)采集卡之間的通訊驅(qū)動(dòng);②CCD圖像處理,實(shí)現(xiàn)最終的設(shè)計(jì)目的。

3.1 通訊驅(qū)動(dòng)軟件的設(shè)計(jì)[3]

數(shù)據(jù)采集卡的I/O接口與PC機(jī)的打印機(jī)并口相連接,通過通訊驅(qū)動(dòng)軟件的驅(qū)動(dòng),基于CPLD的線陣CCD數(shù)據(jù)采集卡可以直接接收來自PC機(jī)的控制命令,或?qū)?shù)據(jù)(或狀態(tài))經(jīng)并口傳入PC機(jī),不需外加其它輔助電路。

該數(shù)據(jù)采集系統(tǒng)的通訊驅(qū)動(dòng)軟件是用C語言設(shè)計(jì)完成的,調(diào)用基本的并行接口操作函數(shù)。用戶可以通過PC機(jī)并口完成如下工作:(1)將PC機(jī)發(fā)出的控制字寫入可編程邏輯器件,控制CCD數(shù)據(jù)采集卡的工作狀態(tài);(2)將數(shù)據(jù)采集卡當(dāng)前的狀態(tài)字讀入PC機(jī);(3)判斷數(shù)據(jù)采集卡工作狀態(tài)位,在允許PC機(jī)讀取數(shù)據(jù)的前提下讀取外部數(shù)據(jù)存儲(chǔ)器中的數(shù)據(jù)。因采用標(biāo)準(zhǔn)并行打印機(jī)適配器,所以一個(gè)字節(jié)的數(shù)據(jù)要分兩次進(jìn)行讀取,先讀低4位,再讀高4位,然后將兩部分合并,所得結(jié)果存入數(shù)據(jù)文件。通過I/O驅(qū)動(dòng)軟件控制,PC機(jī)可以改變和設(shè)定CCD當(dāng)前的積分時(shí)間及CCD當(dāng)前所處狀態(tài)。

3.2數(shù)據(jù)處理軟件的設(shè)計(jì)[4]

數(shù)據(jù)處理軟件的主要目的就是設(shè)計(jì)恰當(dāng)?shù)乃惴?,?duì)圖像信息進(jìn)行處理,提取圖像的邊緣特征并以此為基礎(chǔ)進(jìn)行高層次的處理,如:特征描述、識(shí)別和理解。圖像的邊緣特征是圖像信息最重要的特征,在對(duì)CCD圖像進(jìn)行處理時(shí),首先要解決好圖像的邊緣問題。邊緣定位精度將直接影響測(cè)量結(jié)果的精度。

傳統(tǒng)的邊緣檢測(cè)算法是考察圖像的每個(gè)象素在某個(gè)鄰域內(nèi)灰度的變化,利用邊緣鄰近一階或二階導(dǎo)數(shù)的變化規(guī)律來檢測(cè)邊緣。但利用這種方法進(jìn)行數(shù)據(jù)處理時(shí)由于受到CCD自身的制造工藝和工作原理的影響其分辨率只能達(dá)到一個(gè)光敏元大小。故為了進(jìn)一步提高CCD的測(cè)量精度和分辨率,選用了直線擬合最小二乘法來確定圖像的邊緣點(diǎn)。以圖像邊緣斜坡段梯度最大點(diǎn)為中心,對(duì)稱地選取斜坡段的2n+1個(gè)點(diǎn)進(jìn)行直線擬合,以此來提高整個(gè)CCD數(shù)據(jù)采集系統(tǒng)的測(cè)量精度。采用空間擬合法確定圖像邊緣點(diǎn)對(duì)于減小隨機(jī)性測(cè)量誤差是非常有利的。

4 數(shù)據(jù)采集系統(tǒng)的性能評(píng)價(jià)

在對(duì)數(shù)據(jù)采集系統(tǒng)軟硬件設(shè)計(jì)和測(cè)試成功后,將該數(shù)據(jù)采集系統(tǒng)配以合適的光學(xué)成像系統(tǒng),以直徑為8.00mm(由千分尺測(cè)得)的卷煙標(biāo)準(zhǔn)棒為被測(cè)物,調(diào)整合適的積分時(shí)間和光照強(qiáng)度,對(duì)卷煙標(biāo)準(zhǔn)棒的直徑進(jìn)行了驗(yàn)證性測(cè)量。在同一段時(shí)間內(nèi)對(duì)同一被測(cè)物進(jìn)行了10次測(cè)量,其實(shí)驗(yàn)結(jié)果如圖4所示。

實(shí)驗(yàn)結(jié)果表明,該數(shù)據(jù)采集系統(tǒng)的測(cè)量精度在0.05mm之內(nèi),變異系數(shù)不超過1%,說明該數(shù)據(jù)采集系統(tǒng)的測(cè)量精度高、重復(fù)性好。

CCD采集系統(tǒng)

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉