三軸影像測量儀的開發(fā)制造
一、 圖像采集卡的選擇
儀表板外形尺寸為220mm×82mm,要求測量精度不小于0.13mm。綜合檢測精度、檢測速度和成本要求影像測量儀,系統(tǒng)選用NI 1394圖像采集卡,搭配SONY 1394 CCD彩色攝像頭(分辨率為1024×768),因此視覺系統(tǒng)視野FOV=118mm×8< @8.5mm,像素精度=118÷1024=0.1152mm/pixel,完全滿足系統(tǒng)測量的尺寸精度要求。
二、 掃描區(qū)域劃分
根據(jù)儀表板的大小、目標(biāo)特征的相關(guān)性和視覺系統(tǒng)的FOV范圍,儀表板分為左、中、右三個檢測區(qū)域。除了起始位置,還有4個位置。相機在X/Z軸上移動,被測儀表盤在Y軸上移動,X/Y軸的移動完成鏡頭對準(zhǔn)目標(biāo),Z軸的移動完成對焦目標(biāo)。在每個檢測位置采集的圖像以中間LED窗口的中心,即AUTO LED、OFF LED和Defrost LED作為圖像的坐標(biāo)原點。
三、 系統(tǒng)總體結(jié)構(gòu)設(shè)計
上位機系統(tǒng)完成圖像采集、處理、判斷、文件I/O和用戶界面,同時與上位機通過串口控制PLC;PLC系統(tǒng)完成運動控制和I/O控制。計算機系統(tǒng)框圖如下:
上聯(lián)參數(shù)設(shè)置:波特率:115200;7 個數(shù)據(jù)位;偶數(shù);2 個停止位。
PLC的系統(tǒng)框圖如下:
通過計算機系統(tǒng)和PLC系統(tǒng)的協(xié)同工作,各司其職,發(fā)揮各自的優(yōu)勢,使系統(tǒng)的性能得到優(yōu)化。
四、 圖片獲取
NI提供了兩個標(biāo)準(zhǔn)的圖像采集vi程序,用戶可以直接調(diào)用:

1、單幀圖像采集1394-snap-acquire:即每次只采集一幀圖像。在本系統(tǒng)的自動測量過程中,需要測量三個區(qū)域,每個區(qū)域具有三種照明模式,因此總共需要運行9個單幀圖像采集程序。
2、連續(xù)圖像采集1394-grab-acquire:即連續(xù)實時采集圖像。在本系統(tǒng)的運動位置設(shè)置模塊中,需要實時觀察鏡頭與被測目標(biāo)的相對位置和焦距,然后保存各個位置,因此采用連續(xù)圖像采集方式。
五、 圖像處理
如上所述,在自動測量過程中,一共采集了9幀圖像,每幅圖像對應(yīng)一個圖像處理程序,完成目標(biāo)特征的測量和判斷。進行如下操作:
1.打開圖片緩沖區(qū)
在圖像處理中,圖像需要經(jīng)過多次變換,因此需要打開多個圖像緩沖區(qū)來存儲圖像數(shù)據(jù)。本系統(tǒng)共設(shè)置了100個圖像緩沖區(qū),分別為image buffer0~buffer99,其中buffer0為系統(tǒng)的實時圖像緩沖區(qū);buffer1~buffer51分別存放彩色原圖、Intensity層、Red層、Green層、Blue層、Mask層、Overlay層等作為歷史圖像數(shù)據(jù),可與測量結(jié)果數(shù)據(jù)進行對比;其余的是臨時圖像緩沖區(qū)。為了避免與歷史圖像緩沖區(qū)沖突,從buffer99向下使用。本系統(tǒng)只使用了12個臨時緩沖區(qū),即buffer99~buffer88,buffer52~buffer87沒有使用。
2. 定位原點,建立坐標(biāo)系
選擇圖像上沒有變化的特征影像測量儀,使用匹配模式或檢測對象來定位原點并建立坐標(biāo)系。對于三個檢測區(qū)域,中間的 LED 窗口的中心,即 AUTO LED、OFF LED 和除霜 LED,是圖像的坐標(biāo)原點。
3. 定義ROI區(qū)域
根據(jù)被測目標(biāo)的不同形狀,可以使用不同的ROI模型,包括圓形、環(huán)形、扇形、矩形、旋轉(zhuǎn)矩形、任意多邊形等。所有的ROI區(qū)域都是基于坐標(biāo)原點的。
4. 測量
通過提取彩色圖像(均為8位深度的圖像)的強度平面、紅色平面、綠色平面和藍色平面,分別測量強度分量Intensity、顏色分量R/G/B和激光雕刻圖案模式目標(biāo) ROI 區(qū)域。比賽得分、位置坐標(biāo)等。

光強/R/G/B范圍為0~255,共256級灰度。
模式匹配滿分為1000分,分?jǐn)?shù)的大小表示目標(biāo)與標(biāo)準(zhǔn)模型的匹配程度。除了對三組字符進行模式匹配測量外,還要進行OCR字符識別,即需要分別識別AUTO、ECON、OFF。
需要將位置坐標(biāo)轉(zhuǎn)換為坐標(biāo)系。對于一幅圖像,默認(rèn)坐標(biāo)原點位于圖像的左上角,測量的直接位置數(shù)據(jù)是相對于該原點,不同于步驟2.中定義的原點,坐標(biāo)系方向也不同。參考下圖:
變換后的坐標(biāo)還是以像素為單位,需要乘以像素精度,再換算成mm單位,這樣對產(chǎn)品檢測才有意義。
5. 結(jié)果輸出接口
測量結(jié)果包括圖像和數(shù)據(jù),放置在一個 Table 容器中。表的第一頁用于存儲圖像。該圖像以二維數(shù)組為容器,分為9行5列,存儲45幅圖像,其中采集的圖像9幅,提取的成分層36幅。Table的2~11共10頁用于存儲測量數(shù)據(jù),分別以10張表格的形式輸出,對應(yīng)9幅采集圖像的測量數(shù)據(jù)和重要特征的全局對比。每個Page上都有一個布爾顯示控件,用于表示當(dāng)前頁面的綜合判斷結(jié)果。
圖 2 中間區(qū)域功能 LED 模式圖像
以下僅給出中心檢查圖像和數(shù)據(jù),請參考圖2至圖7
圖3 中間區(qū)域功能模式測量數(shù)據(jù)

圖 4 中間區(qū)域夜間模式圖像
圖5 中區(qū)夜間模式測量數(shù)據(jù)
圖 6 中區(qū) Day 模式測量數(shù)據(jù)
6、任務(wù)序列優(yōu)化設(shè)計
兩個相鄰的圖像采集之間需要完成幾個任務(wù),包括圖像處理、寫入全局變量、圖像輸出、測量結(jié)果輸出、光源切換、位置移動等,這些任務(wù)的執(zhí)行時間是不同的。優(yōu)化這些任務(wù)的順序可以顯著提高程序的執(zhí)行速度。
在拍攝圖像之前,所有的運動都需要靜止不動,光源要穩(wěn)定發(fā)光。計算機向PLC發(fā)送的運動觸發(fā)信號和光源切換觸發(fā)信號的指令完成時間在10ms左右,圖像
處理、圖像輸出、測量結(jié)果輸出、全局變量寫入的完成時間在100ms左右。運動是否完成可以通過讀取PLC中的標(biāo)志位來確定,但光源是否穩(wěn)定發(fā)光只能依靠上電后的延時時間。我們的經(jīng)驗是LED光源從通電到穩(wěn)定發(fā)光至少需要500ms的延遲。在測試一個產(chǎn)品時,需要9個光源開關(guān)和4個位置移動。如果采用延遲方式,檢測速度會大大降低。因此,我們不會在圖像采集后立即處理圖像,而是先為下一次圖像采集做光源切換或運動觸發(fā),然后對這次采集的圖像進行相對耗時的圖像處理,這相當(dāng)于切換光源或運動觸發(fā)有延遲處理,但不會占用額外的時間開銷。參考以下流程圖:
7. 疊加投遞

Overlay是疊加在圖像上的特殊圖層,用于顯示ROI定義范圍、坐標(biāo)系定義和部分圖像處理信息。在該系統(tǒng)中,在同一位置不同光源下采集的3幅圖像具有相同的坐標(biāo)系和像素精度。不必每次都做同樣的處理,只需將第一張圖像上的Overlay轉(zhuǎn)移到其他兩張即可。圖像很好。使用我們寫的Overlay傳遞vi,可以提取任意圖像緩沖區(qū)的Overlay,傳遞給指定的圖像緩沖區(qū)。參考圖2、 圖4、 圖6,
8. ROI和Mask的組合應(yīng)用
用ROI定義感興趣的區(qū)域,用Mask屏蔽掉不感興趣或已經(jīng)測量過的區(qū)域,將ROI和Mask結(jié)合起來,讓一些復(fù)雜的測量變得簡單高效。在圖6中,需要測量產(chǎn)品的外露表面是否有劃痕。ROI和Mask結(jié)合后,只需兩步即可完成。參考圖8、 圖9。
圖 8 中間區(qū)域 Day 模式 mask1
圖 9 中間區(qū)域 Day 模式 mask2
9.全局特征對比
9個圖像處理子程序中,部分測量數(shù)據(jù)需要全局比對,對產(chǎn)品進行評估
整個區(qū)域的發(fā)光亮度是一致的,所以需要在每個圖像處理子程序中將感興趣的數(shù)據(jù)寫入全局變量中,最后在主程序中處理這些全局變量,請參考圖10。

圖 10 全局比較參數(shù)
六、文件輸入/輸出
包括公差設(shè)置、讀數(shù)、測量數(shù)據(jù)存儲,數(shù)據(jù)較多,因此采用表格文件的方式,以二維數(shù)組的形式訪問數(shù)據(jù)分類。在圖像處理程序中判斷測量數(shù)據(jù)時,只需讀取與容差設(shè)置相關(guān)的子陣列即可。時間字符(精確到秒)被插入到測量數(shù)據(jù)的文件名中,以避免文件名重復(fù)。
七、上行鏈路和串行通信
在進行上位鏈路通訊時,計算機和PLC使用命令(command)和響應(yīng)(response)來發(fā)送和接收。在一次通信中發(fā)送的一組數(shù)據(jù)稱為幀,發(fā)送幀的權(quán)利稱為發(fā)送權(quán)。上位機擁有發(fā)送權(quán)。命令發(fā)出后,PLC自動返回響應(yīng)。由于 PLC 的響應(yīng)需要時間,因此必須在兩個命令之間插入延遲。幀格式如下:
@|機器編號|機頭代碼|文本|FCS|終端
FCS全稱為幀校驗序列,將幀開頭的8位數(shù)據(jù)轉(zhuǎn)換成FCS前面的數(shù)據(jù)為2個字符的ASCII碼,主要用于校驗數(shù)據(jù)錯誤。FCS的計算采用筆者之前在VB中開發(fā)的程序,使用LabVIEW中的Instrument I/O助手將命令的傳輸直接發(fā)送到串口,非常簡單。儀器 I/O 助手提供三種類型的命令,包括寫入、查詢和解析、讀取和解析。
八、 開放性和可擴展性
該系統(tǒng)是為帕薩特和速騰兩款車型的溫控儀表盤目視檢查而開發(fā)的。但在軟硬件設(shè)計中充分考慮了系統(tǒng)的開放性和可擴展性,只需更換圖像處理子程序和子程序即可。設(shè)置每個區(qū)域的位置,即可以查看任意二維平面上的圖像信息。同時可在Z軸上安裝接觸式探頭或非接觸式激光測距傳感器,完成Z軸方向的尺寸測量。三軸行程X、Y、Z為:200mm×200mm×150mm。
所選PLC上有4個脈沖輸出,所選光學(xué)鏡頭可連續(xù)變焦。這樣可以在Zoom中加入步進電機和傳動機構(gòu),實現(xiàn)變倍檢測,對尺寸精度和圖像質(zhì)量要求高??梢杂酶弑堵蕼y量該區(qū)域。
同時,系統(tǒng)還具有4路AD輸入和2路DA輸出,為更復(fù)雜靈活的系統(tǒng)擴展提供了必要的硬件資源。
九、 結(jié)論
這個項目的軟件預(yù)計需要三個月的時間開發(fā),實際不到兩個月就完成了。目前機器運行非常穩(wěn)定高效,得到了客戶的一致好評。NI Vision 豐富的圖像處理功能和LabVIEW 靈活易用的編程環(huán)境是我們成功的主要原因之一。
作者過去使用VB和C++進行程序開發(fā)。這是我第二次在項目中使用LabVIEW。相比之下,LabVIEW圖形化編程語言讓程序員不必過多關(guān)注代碼和函數(shù)格式,而是專注于功能設(shè)計和結(jié)構(gòu)設(shè)計,從而節(jié)省寶貴的開發(fā)時間。另外,LabVIEW的幫助功能和大量的示例程序,非常方便程序員學(xué)習(xí)和提高自己。簡而言之,我們認(rèn)為LabVIEW作為測試測量領(lǐng)域的首選開發(fā)平臺當(dāng)之無愧。