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