基于CPLD的線(xiàn)陣CCD數據采集系統技術(shù)研究
線(xiàn)陣CCD(Charge Coupled Device)越來(lái)越廣泛地被應用到工業(yè)、軍事、民用行業(yè)。采用CCD數據采集卡和微機相結合,對被測圖像信息進(jìn)行快速采樣、存儲及數據處理,是線(xiàn)陣CCD數據采集發(fā)展的新方向。配以適當的光學(xué)系統,可以實(shí)現光-機-電-算一體化設計。
時(shí)序發(fā)生器(用于產(chǎn)生CCD驅動(dòng)時(shí)序和視頻信號處理控制時(shí)序及I/O接口工作控制時(shí)序)的設計,是CCD數據采集電路設計的關(guān)鍵,也是CCD應用的關(guān)鍵。隨著(zhù)CCD的飛速發(fā)展,傳統的時(shí)序發(fā)生器實(shí)現方法(如小規模集成電路實(shí)現、用EPROM實(shí)現、基于單片機實(shí)現等)已經(jīng)不能夠很好地滿(mǎn)足CCD應用向高速、小型化、智能化發(fā)展的需要。同時(shí),簡(jiǎn)單的二值化數據處理方法更無(wú)法滿(mǎn)足CCD數據采集系統所需要的高精度、高分辨率的要求。因此,結合實(shí)際應用需要,設計了基于復雜可編程邏輯器件(CPLD)的線(xiàn)陣CCD數據采集系統。該系統采用高速半閃速結構A/D轉換器對視頻信號進(jìn)行硬件處理;在此基礎上,將數據采集卡與PC機相結合,把數據采集卡采集到的數據經(jīng)計算機并口送至PC機;并采用直線(xiàn)擬合最小二乘法對采集到的圖像信息進(jìn)行高精度處理,實(shí)現最終的設計目的。本設計被用于卷煙煙支長(cháng)度、直徑智能在線(xiàn)檢測儀中。
1 數據采集系統的特點(diǎn)
本數據采集系統的特點(diǎn)主要有:
(1)采用高集成度的EPM7064SLC44產(chǎn)生系統所需的驅動(dòng)和控制時(shí)序邏輯;
(2)由外部PC機控制CCD積分時(shí)間的大小及數據采集卡的工作過(guò)程,實(shí)現智能化控制;
(3)應用了內帶采樣保持的8位高速并行輸出A/D芯片(TLC5510);
(4)通過(guò)計算機并口高速傳輸數據信息;
(5)采用直線(xiàn)擬合最小二乘法高精度定位CCD圖像的邊緣點(diǎn)。
2 數據采集系統的硬件電路設計
在本系統中,選定TCD142D線(xiàn)陣CCD作為圖像傳感器。本系統硬件電路主要由四部分構成:①時(shí)序發(fā)生器;②CCD驅動(dòng)電路;③CCD視頻信號處理;④I/O接口。在此設計中,TCD142D的工作頻率為1MHz。
2.1系統時(shí)序發(fā)生器的設計1~2
時(shí)序發(fā)生器主要產(chǎn)生驅動(dòng)CCD工作的各驅動(dòng)時(shí)序及CCD視頻信號處理所需的控制時(shí)序。
TCD142D的工作時(shí)序如圖1所示[1]。
在本設計中,時(shí)序發(fā)生器產(chǎn)生的所有驅動(dòng)和控制時(shí)序信號都是在MAX+PLUSⅡ開(kāi)發(fā)環(huán)境下設計完成并經(jīng)編譯、校驗后在線(xiàn)下載到CPLD器件內部的。合適的CPLD是根據實(shí)際需要在實(shí)驗過(guò)程中選定的。在該數據采集卡的設計中,選用一片MAX7000S系列芯片EPM7064SLC44來(lái)實(shí)現時(shí)序發(fā)生器的功能。該系列芯片是ALTERA公司典型的可通過(guò)JTAG在線(xiàn)編程的CPLD器件?;贓PM7064SLC44的時(shí)序發(fā)生器的工作原理框圖如圖2所示。外部時(shí)鐘信號作為CPLD時(shí)序發(fā)生器的基準信號,所有時(shí)序信號的產(chǎn)生都是以此為基礎的。EPM7064SLC44芯片內部分為兩部分:一部分是視頻信號處理控制時(shí)序發(fā)生器,它為CCD視頻信號處理(如A/D轉換、數字信號存取等)提供各種同步控制時(shí)序;另一部分是CCD驅動(dòng)時(shí)序發(fā)生器,它根據TCD142D的具體驅動(dòng)時(shí)序邏輯的要求,產(chǎn)生CCD工作所需的四路驅動(dòng)信號(RS、SH、φ1、φ2),并通過(guò)積分控制信號設定不同的CCD積分周期(積分周期可變范圍為4ms~64ms,變化步長(cháng)為4ms;或2ms~32ms,變化步長(cháng)為2ms),同時(shí)它還為視頻信號處理控制時(shí)序的產(chǎn)生提供時(shí)鐘控制信號。圖中操作控制命令主要用來(lái)控制數據采集系統的工作過(guò)程,該數據采集系統有三種工作狀態(tài):①數據采集系統初始化;②數據采集過(guò)程;③PC機讀取視頻信號過(guò)程。
由圖2可以看出,一片CPLD可以替代原來(lái)的幾十個(gè)分立元件來(lái)實(shí)現CCD數據采集系統中各種驅動(dòng)和控制時(shí)序邏輯,而且CPLD還允許設計編程保密位。采用CPLD有利于減小系統電路板的面積、提高系統的安全保密性、降低系統功耗和保證產(chǎn)品的質(zhì)量[2]??傊?,時(shí)序發(fā)生器的可編程特性使其能夠最大程度地滿(mǎn)足用戶(hù)的不同要求。
2.2 TCD142D驅動(dòng)電路的設計
從EPM7064SLC44輸出的脈沖波形RS、SH、φ1和φ2是由基本TTL電路產(chǎn)生的,正邏輯為5V,負邏輯為0V,而TCD142D要求上述信號高電平為10~12V,低電平為0V;此外,CCD為電容性負載,工作頻率高時(shí)有一定的功耗,因此需對RS、SH、φ1和φ2進(jìn)行電平轉換和驅動(dòng)放大。在從CPLD的輸出引腳獲得上述邏輯時(shí)序后,通過(guò)集成驅動(dòng)芯片DS0026將RS、SH、φ1、φ1這四路驅動(dòng)脈沖驅動(dòng)放大送至TCD142D的相應輸入端以驅動(dòng)CCD工作。這樣,在CCD的輸出端將得到與入射光強相對應的模擬視頻信號,并且視頻信號的輸出得到了相應的補償。
2.3 TCD142D視頻信號處理電路的設計
視頻信號處理電路的結構框圖如圖3所示。
由TCD142D輸出端OS輸出的視頻信號有以下特點(diǎn):
*負極性信號
*包含有周期性的復位脈沖串擾
*有效信號幅值較小,約為500mV
CCD輸出視頻信號的上述特點(diǎn)決定了它不能夠直接送入PC機進(jìn)行軟件處理,必須先從硬件上對其進(jìn)行量化處理。模擬視頻信號在進(jìn)行A/D轉換之前先要進(jìn)行一系列的預處理,消除視頻信號中的驅動(dòng)脈沖(主要是復位脈沖)及噪聲等所造成的干擾,將微弱的負極性視頻信號反向、放大。在電路設計中,選用了一片AD8031運算放大器,將視頻信號及其補償輸出分別送至差動(dòng)放大器的反相和同相輸出端,在進(jìn)行視頻信號放大的同時(shí)消除復位脈沖所造成的干擾,并將負極性視頻信號轉換成正極性。在A(yíng)D8031的輸出端接一級RC濾波器,進(jìn)一步濾除噪聲。經(jīng)過(guò)上述處理后的視頻信號被送入A/D轉換器進(jìn)行量化。在該數據采集卡的設計中,選用8位、高速、并行、半閃速結構ADC-TLC5510芯片完成A/D轉換工作,其內部自帶采樣保持電路,這在一定程度上簡(jiǎn)化了外圍電路的設計。只要設計合理,TLC5510的轉換速率(最小為20MHz)完全可以滿(mǎn)足CCD(1MHz)的工作要求。利用A/D轉換技術(shù)將視頻信號轉換成與之對應的、能夠反映圖像灰度變化的數字量,提高了測量精度和分辨率;當TLC5510的輸出使能有效時(shí),就可以將A/D轉換結果送至8位數據線(xiàn)上。在數據存儲器(CY6264)寫(xiě)允許及地址有效的前提下,將8位A/D轉換結果實(shí)時(shí)地存入數據存儲器中。
2.4 I/O接口電路的設計
I/O接口電路的主要功能就是將數據采集卡與PC機有機地統一起來(lái)。在本系統中,采用16腳的插座作為兩者之間的接口。兩者的通訊主要包括:接收PC機發(fā)送的各種控制命令;發(fā)送數據采集卡的各種狀態(tài)信號給PC機;接收PC機發(fā)送的數據采集卡積分時(shí)間設定命令;傳輸數據給PC機等。
3 數據采集系統軟件的設計
數據采集系統的軟件主要完成的功能有:①PC機與數據采集卡之間的通訊驅動(dòng);②CCD圖像處理,實(shí)現最終的設計目的。
3.1 通訊驅動(dòng)軟件的設計[3]
數據采集卡的I/O接口與PC機的打印機并口相連接,通過(guò)通訊驅動(dòng)軟件的驅動(dòng),基于CPLD的線(xiàn)陣CCD數據采集卡可以直接接收來(lái)自PC機的控制命令,或將數據(或狀態(tài))經(jīng)并口傳入PC機,不需外加其它輔助電路。
該數據采集系統的通訊驅動(dòng)軟件是用C語(yǔ)言設計完成的,調用基本的并行接口操作函數。用戶(hù)可以通過(guò)PC機并口完成如下工作:(1)將PC機發(fā)出的控制字寫(xiě)入可編程邏輯器件,控制CCD數據采集卡的工作狀態(tài);(2)將數據采集卡當前的狀態(tài)字讀入PC機;(3)判斷數據采集卡工作狀態(tài)位,在允許PC機讀取數據的前提下讀取外部數據存儲器中的數據。因采用標準并行打印機適配器,所以一個(gè)字節的數據要分兩次進(jìn)行讀取,先讀低4位,再讀高4位,然后將兩部分合并,所得結果存入數據文件。通過(guò)I/O驅動(dòng)軟件控制,PC機可以改變和設定CCD當前的積分時(shí)間及CCD當前所處狀態(tài)。
3.2數據處理軟件的設計[4]
數據處理軟件的主要目的就是設計恰當的算法,對圖像信息進(jìn)行處理,提取圖像的邊緣特征并以此為基礎進(jìn)行高層次的處理,如:特征描述、識別和理解。圖像的邊緣特征是圖像信息最重要的特征,在對CCD圖像進(jìn)行處理時(shí),首先要解決好圖像的邊緣問(wèn)題。邊緣定位精度將直接影響測量結果的精度。
傳統的邊緣檢測算法是考察圖像的每個(gè)象素在某個(gè)鄰域內灰度的變化,利用邊緣鄰近一階或二階導數的變化規律來(lái)檢測邊緣。但利用這種方法進(jìn)行數據處理時(shí)由于受到CCD自身的制造工藝和工作原理的影響其分辨率只能達到一個(gè)光敏元大小。故為了進(jìn)一步提高CCD的測量精度和分辨率,選用了直線(xiàn)擬合最小二乘法來(lái)確定圖像的邊緣點(diǎn)。以圖像邊緣斜坡段梯度最大點(diǎn)為中心,對稱(chēng)地選取斜坡段的2n+1個(gè)點(diǎn)進(jìn)行直線(xiàn)擬合,以此來(lái)提高整個(gè)CCD數據采集系統的測量精度。采用空間擬合法確定圖像邊緣點(diǎn)對于減小隨機性測量誤差是非常有利的。
4 數據采集系統的性能評價(jià)
在對數據采集系統軟硬件設計和測試成功后,將該數據采集系統配以合適的光學(xué)成像系統,以直徑為8.00mm(由千分尺測得)的卷煙標準棒為被測物,調整合適的積分時(shí)間和光照強度,對卷煙標準棒的直徑進(jìn)行了驗證性測量。在同一段時(shí)間內對同一被測物進(jìn)行了10次測量,其實(shí)驗結果如圖4所示。
實(shí)驗結果表明,該數據采集系統的測量精度在0.05mm之內,變異系數不超過(guò)1%,說(shuō)明該數據采集系統的測量精度高、重復性好。
CCD采集系統
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
評論