基于ARM和FPGA的線陣CCD測(cè)徑系統(tǒng)的設(shè)計(jì)
2.3 A/D轉(zhuǎn)換電路設(shè)計(jì)
CCD圖像傳感器完成光電信號(hào)的轉(zhuǎn)換后,為了存儲(chǔ)和處理所采集的信號(hào),需要將它們變成相應(yīng)的數(shù)字信號(hào),這就需要對(duì)CCD的輸出信號(hào)進(jìn)行A/D轉(zhuǎn)換。由于TCD1501D的視頻信號(hào)的輸出頻率為1 MHz,一般的A/D轉(zhuǎn)換器的速度達(dá)不到此要求,必須采用高速A/D轉(zhuǎn)換器。AD9243是美國(guó)ADI公司生產(chǎn)的完全14位高性能模數(shù)轉(zhuǎn)換器。在單一+5 V電源下,它的功耗僅有110 mW,信噪比為±79 dB。且具有信號(hào)溢出指示位,并可直接以二進(jìn)制形式輸出數(shù)據(jù),它的數(shù)據(jù)輸出端口可以配置為3 V或者5 V CMOS電平,方便和各種處理器接口[4]。
AD9243的作用是將線陣CCD傳感器采集到的模擬視頻信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)送到ARM微處理器進(jìn)行線纜直徑的計(jì)算和存儲(chǔ)。在A/D轉(zhuǎn)換電路的設(shè)計(jì)中需要特別注意的是AD9243可以在內(nèi)部參考與外部參考方式下采用不同的電路設(shè)計(jì)來(lái)獲取靈活的模擬輸入范圍[4]。本設(shè)計(jì)采用了外部2.5 V參考輸入方式,如圖4所示。
本系統(tǒng)采用高精度2.5 V基準(zhǔn)源作為穩(wěn)定的外部參考源。當(dāng)使用外部參考方式時(shí),還應(yīng)當(dāng)在CAPT與CAPB之間加一個(gè)電容去耦網(wǎng)絡(luò)。
2.4 人機(jī)界面模塊
為了便于用戶(hù)管理和操作,增加了一個(gè)線纜直徑測(cè)量控制的參數(shù)顯示和設(shè)定模塊,ARM微處理器LPC2214通過(guò)并口連接到液晶顯示模塊LM057QC1T01上,通過(guò)LPC2214自帶的SPI串行接口與觸摸屏模塊(控制器為ADS7843)進(jìn)行通信。通過(guò)觸摸屏可以設(shè)置的參數(shù)包括:直徑的標(biāo)稱(chēng)值、上公差、下公差、PID參數(shù)等。按工藝要求正確設(shè)置好線纜直徑的標(biāo)稱(chēng)值可以實(shí)現(xiàn)對(duì)線纜直徑的自動(dòng)反饋控制和超差報(bào)警,當(dāng)系統(tǒng)出現(xiàn)故障時(shí),液晶顯示器上可及時(shí)顯示系統(tǒng)的故障,方便用戶(hù)及時(shí)排除,提高了對(duì)生產(chǎn)設(shè)備的管理和操作的效率。
3 軟件設(shè)計(jì)
微處理器LPC2214中的數(shù)據(jù)采集和數(shù)據(jù)處理程序是整個(gè)系統(tǒng)的關(guān)鍵部分。系統(tǒng)的初始化工作完成之后,CPU開(kāi)始進(jìn)行運(yùn)算處理。設(shè)計(jì)中以幀為單位進(jìn)行數(shù)據(jù)采集和處理。單幀讀入識(shí)別過(guò)程如下:
(1) LPC2214發(fā)送幀啟動(dòng)脈沖ena給FPGA。
(2) FPGA接收到ena信號(hào),產(chǎn)生CCD驅(qū)動(dòng)信號(hào)和A/D轉(zhuǎn)換器的采樣信號(hào),使CCD與A/D轉(zhuǎn)換器開(kāi)始工作。
(3) 將采樣得到的數(shù)字信號(hào)存入SRAM中。
(4) 一幀數(shù)據(jù)采集完畢時(shí),發(fā)送INT信號(hào)給ARM LPC2214,ARM讀取SRAM,處理數(shù)據(jù)。一幀數(shù)據(jù)的采集和處理過(guò)程完畢,若有新的數(shù)據(jù)繼續(xù)處理。圖5是數(shù)據(jù)處理軟件流程圖。
在數(shù)據(jù)處理的程序中,當(dāng)A/D轉(zhuǎn)換結(jié)束后,LPC2214從SRAM中讀取圖像數(shù)據(jù)存儲(chǔ)在片內(nèi)數(shù)據(jù)存儲(chǔ)空間。首先對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,也就是濾掉波形中的毛刺,剔除實(shí)際應(yīng)用中不可能出現(xiàn)的數(shù)值。然后對(duì)預(yù)處理過(guò)的數(shù)據(jù)與事先確定好的閾值進(jìn)行比較,若高于閾值則高位寄存器內(nèi)的值加1,否則低位寄存器內(nèi)的值加1。將5 000個(gè)數(shù)值都比較完畢,然后對(duì)低位寄存器內(nèi)的數(shù)值采用直線擬合[5]的方法計(jì)算出精確的線陣CCD被遮擋而未能感光的像敏單元數(shù),根據(jù)公式(1)即可求出被測(cè)線纜直徑的實(shí)際尺寸。
本系統(tǒng)以高速ARM微處理器代替?zhèn)鹘y(tǒng)的單片機(jī),且充分發(fā)揮FPGA的時(shí)序優(yōu)勢(shì),使得系統(tǒng)硬件結(jié)構(gòu)更為簡(jiǎn)單、可靠,軟件調(diào)試更為方便。與以往的采集系統(tǒng)相比,在速度和精度上有了大幅的提高,完全滿(mǎn)足系統(tǒng)設(shè)計(jì)的要求。本系統(tǒng)是在線測(cè)量線纜的直徑,但同樣適用于測(cè)量工件的長(zhǎng)度、測(cè)距等很多方面,有很廣闊的應(yīng)用前景。
評(píng)論