《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 手動(dòng)PCB外觀檢查機(jī)的圖像采集與拼接
手動(dòng)PCB外觀檢查機(jī)的圖像采集與拼接
陳 瑜,葉玉堂,羅 穎,王旭東
摘要: 利用Matrox圖像采集卡,采用異步雙緩存方法滿足了PCB外觀檢查機(jī)圖像采集和實(shí)時(shí)處理的需要。并針對(duì)PCB外觀檢查機(jī)采集的圖像數(shù)據(jù)大精度高,需要實(shí)時(shí)拼接的特點(diǎn),提出了將GDI+圖形設(shè)備接口庫(kù)與ActiveMil庫(kù)采用結(jié)合應(yīng)用的圖像拼接方法。測(cè)試實(shí)例表明,圖像采集速度提高了30%,非常適合應(yīng)用在PCB外觀檢查機(jī)上,并且由于利用ActiveX組件縮短了開(kāi)發(fā)周期。
Abstract:
Key words :

摘要:利用Matrox圖像采集卡" title="采集卡">采集卡,采用異步雙緩存方法滿足了PCB外觀檢查機(jī)圖像采集和實(shí)時(shí)處理的需要。并針對(duì)PCB外觀檢查機(jī)采集的圖像數(shù)據(jù)大精度高,需要實(shí)時(shí)拼接的特點(diǎn),提出了將GDI+圖形設(shè)備接口庫(kù)與ActiveMil庫(kù)采用結(jié)合應(yīng)用的圖像拼接方法。測(cè)試實(shí)例表明,圖像采集速度提高了30%,非常適合應(yīng)用在PCB外觀檢查機(jī)上,并且由于利用ActiveX組件縮短了開(kāi)發(fā)周期。
關(guān)鍵詞:PCB檢測(cè);雙緩存異步采集系統(tǒng)" title="采集系統(tǒng)">采集系統(tǒng);ActiveMil組件;圖像拼接

    印制電路板外觀檢查機(jī)是PCB產(chǎn)品生產(chǎn)線上的重要質(zhì)檢設(shè)備,它基于光學(xué)圖像處理" title="圖像處理">圖像處理和計(jì)算機(jī)視覺(jué)識(shí)別技術(shù)原理,主要功能是對(duì)PCB組件生產(chǎn)過(guò)程中遇到的外觀缺陷進(jìn)行檢測(cè)。中國(guó)是世界PCB生產(chǎn)大國(guó),但不是強(qiáng)國(guó),PCB生產(chǎn)鏈中的重要環(huán)節(jié)——PCB設(shè)備儀器不強(qiáng)是形成這種狀況的重要原因之一,為推進(jìn)中國(guó)PCB產(chǎn)業(yè)的發(fā)展與進(jìn)步,研制了較自動(dòng)外觀檢查機(jī)操作簡(jiǎn)單、系統(tǒng)更加緊湊以及更高的性能價(jià)格比的手動(dòng)PCB外觀檢查機(jī)。手動(dòng)PCB外觀檢查機(jī)通過(guò)手動(dòng)放板后傳送裝置自動(dòng)傳送PCB,線陣CCD相機(jī)均勻掃描PCB板,獲得準(zhǔn)確圖像,再通過(guò)計(jì)算機(jī)對(duì)比處理已掃描的線路板并進(jìn)行判斷,然后分裝置根據(jù)計(jì)算機(jī)反饋的控制信號(hào)自動(dòng)分檢PCB(OK/NG)??蓪?duì)異物,露銅,補(bǔ)油,劃傷,鍍金不良,字符錯(cuò)誤,綠油不均,焊盤(pán)不均勻,殘銅,漏印,顯影等外觀方面的瑕疵進(jìn)行精確檢測(cè)。由于圖像采集和處理的速度和效果將直接影響到PCB板檢測(cè)的準(zhǔn)確性和有效性,為此針對(duì)手動(dòng)外觀檢查機(jī)的特點(diǎn)詳細(xì)研究了圖像采集系統(tǒng)" title="圖像采集系統(tǒng)">圖像采集系統(tǒng),采用C#在.net框架下對(duì)ActiveMil進(jìn)行二次開(kāi)發(fā)并用GDI+圖形接口庫(kù)實(shí)現(xiàn)了圖像采集軟件系統(tǒng)的開(kāi)發(fā)。

1 PCB外觀檢查機(jī)系統(tǒng)的總體結(jié)構(gòu)
    PCB在線檢測(cè)系統(tǒng)結(jié)構(gòu)復(fù)雜,其傳動(dòng)控制設(shè)備、電氣控制系統(tǒng)和攝像機(jī)必須在計(jì)算機(jī)的精確控制下,才能協(xié)調(diào)處理工作,完成復(fù)雜的檢測(cè)和分揀任務(wù)。基于機(jī)器視覺(jué)的PCB在線檢測(cè)設(shè)備的結(jié)構(gòu)如圖1所示。

a.JPG


    系統(tǒng)主要分為運(yùn)動(dòng)控制、圖像采集和圖像處理部分。圖像采集部分是整個(gè)系統(tǒng)的重要組成部分。攝像機(jī)和鏡頭在機(jī)器視覺(jué)中相當(dāng)于人的眼睛,負(fù)責(zé)拍攝對(duì)象的圖像。圖像采集部分是PCB檢測(cè)系統(tǒng)的重要環(huán)節(jié),也是檢測(cè)處理的基礎(chǔ)。PCB檢測(cè)系統(tǒng)強(qiáng)調(diào)檢測(cè)的速度和精度,所以需要圖像采集部分及時(shí)、準(zhǔn)確地提供清晰的圖像。

2 圖像采集系統(tǒng)的硬件結(jié)構(gòu)
    1)圖像采集系統(tǒng)工作原理
    當(dāng)系統(tǒng)上電后,MCU自動(dòng)檢測(cè)PCB載物臺(tái)是否復(fù)位到起點(diǎn)。此過(guò)程主要有兩個(gè)光纖傳感器和伺服電機(jī)完成。兩個(gè)傳感器分別安裝在四顧電機(jī)軌道的起點(diǎn),即復(fù)位點(diǎn)和軌道端點(diǎn)。起復(fù)位,停止和電機(jī)反轉(zhuǎn)的功能。上電后MCU檢測(cè)到sesorl(復(fù)位點(diǎn)或起點(diǎn)處)無(wú)效,則調(diào)用電機(jī)反轉(zhuǎn)程序,使PCB載物臺(tái)回到起點(diǎn)位置,同時(shí)串口" title="串口">串口向PC機(jī)發(fā)送彩圖無(wú)效信號(hào)。然后MCU繼續(xù)判斷是否有按鍵按下,如果有按鍵按下,電機(jī)開(kāi)始正轉(zhuǎn),同時(shí)串口向PC機(jī)發(fā)送彩圖有效信號(hào)。此過(guò)程也就是PCB線掃描過(guò)程,完成圖像的采集。此過(guò)程電機(jī)經(jīng)歷三個(gè)階段:加速階段,勻速彩圖階段和減速停止階段。在電機(jī)正轉(zhuǎn)過(guò)程中,從七點(diǎn)開(kāi)始,MCU通過(guò)特有的捕獲比較單元(CCU6)來(lái)對(duì)伺服電機(jī)編碼器反饋回來(lái)的脈沖計(jì)數(shù),但計(jì)數(shù)值達(dá)到采圖有效數(shù)值時(shí),串口向PC發(fā)送采圖開(kāi)始信號(hào),此時(shí)線陣CCD開(kāi)始對(duì)PCB進(jìn)行圖像采集。在電機(jī)減速正轉(zhuǎn)到軌道端點(diǎn)的傳感器senor2處時(shí),電機(jī)停止并馬上反轉(zhuǎn)回到起點(diǎn)處,此過(guò)程串口向PC機(jī)發(fā)送采圖無(wú)效信號(hào)。至此一個(gè)完整的檢測(cè)過(guò)程完整。MCU繼續(xù)檢測(cè)是否有按鍵按下來(lái)進(jìn)行下一次檢測(cè)。其中串口發(fā)送的采集有效和開(kāi)始信號(hào)可以有效地避免誤觸發(fā)。CCD采集到的圖像信號(hào)由Camrelink接口送至圖像采集卡再由PC做進(jìn)一步的圖像處理。

b.JPG


    2)傳感器與按鈕的接收與檢測(cè)
    采用光耦隔離技術(shù),可以實(shí)現(xiàn)電路間的光電隔離,即使輸入信號(hào)能無(wú)阻通過(guò),且防止輸出信號(hào)反饋到輸入端,有利地抑制尖峰脈沖和各種噪聲的干擾,工作穩(wěn)定,無(wú)觸點(diǎn),使用壽命長(zhǎng),傳輸效率高。為實(shí)時(shí)檢測(cè)到反饋的轉(zhuǎn)鏡轉(zhuǎn)速信號(hào),本設(shè)計(jì)中采用了高速光耦A(yù)CPL-072L,傳輸速率可高達(dá)25 MBd,并且外圍電路簡(jiǎn)單,如圖3所示。

c.JPG


    本設(shè)計(jì)利用XC164CS外設(shè)中含有捕獲/比較單元CC25端口,將光耦傳輸信號(hào)作為外部中斷信號(hào)來(lái)觸發(fā)XC164,實(shí)現(xiàn)高速精確地傳感定位與按鈕檢測(cè)。
    3)CCD攝像機(jī)系統(tǒng)
    該手動(dòng)PCB外觀檢查機(jī)圖像采集系統(tǒng)采用NED彩虹系列的3CCD彩色線掃描相機(jī)NUCLi7300。該相機(jī)應(yīng)用廣泛,可以進(jìn)行以前黑白相機(jī)無(wú)法進(jìn)行的顏色差異檢測(cè)。外部接口為高速串行接口(Camera Link),可以很方便的與采集卡連接,也可以很方便的設(shè)置增益和偏移量,并具有修正RGB線延遲的功能。像素?cái)?shù)為7 300x3 Line,像素大小為10x10 μm,數(shù)據(jù)速率60MHz,最短掃描速率7.6kHz。圖4為本系統(tǒng)所用的連續(xù)線掃描速率模型時(shí)序圖。

d.JPG


    系統(tǒng)中的圖像采集卡采用的是Matrox公司的SoliosXCL-SU74,該卡自帶處理器處理兩個(gè)獨(dú)立基模式或一個(gè)中模式Camera Link配置、66 MHz采集速率、64 MB緩沖器、可以采集面陣和線陣攝像頭,并具有多種采集模式。
    目前市面上的影像檢測(cè)系統(tǒng)大多采用面掃描(Areascan)的攝影機(jī)進(jìn)行影像的采集及分析,但是由于該P(yáng)CB外觀檢查機(jī)檢查的PCB產(chǎn)品尺寸范圍較大——50 mmx50mm~330mmx250 mm,精度的要求達(dá)亞像素級(jí),面掃描攝影機(jī)的分辨率及取像速度無(wú)法滿足這些要求,所以系統(tǒng)選取的是線掃描CCD。但是線掃描的檢測(cè)系統(tǒng)必須利用運(yùn)動(dòng)速度才能取得面積影相,即被測(cè)PCB運(yùn)動(dòng)到相機(jī)視場(chǎng)時(shí)同過(guò)硬件發(fā)送觸發(fā)信號(hào)給相機(jī)開(kāi)始采集,故將采集卡的采集模式設(shè)置為硬件觸發(fā)同步采集,并分配最大內(nèi)存64 M。CCD與采集卡連接示意圖如圖5所示。

e.JPG


3 軟件系統(tǒng)組成
    該圖像采集系統(tǒng)的軟件采用的開(kāi)發(fā)語(yǔ)言是C#,軟件開(kāi)發(fā)包是AetiveMil9.0組件。
     Matrox有著豐富的程序包-圖像處理和模式識(shí)別庫(kù)(MIL)和MIL的子庫(kù)MIL-LITE(基本圖像處理)。MIL是一個(gè)硬件獨(dú)立的32位圖像處理庫(kù),利用了Intel的MMX的多媒體圖形加速功能對(duì)圖像處理程序庫(kù)進(jìn)行了優(yōu)化,可以處理二進(jìn)制、灰度或彩色圖像,它是獨(dú)立于硬件平臺(tái)的。并且對(duì)于快速Windows應(yīng)用程序開(kāi)發(fā),MIL捆綁了ActiveMIL。AetiveMIL是一個(gè)管理圖像采集,處理,分析,顯示和存檔的動(dòng)態(tài)控件的集合。Aeti-veMIL完全集成到Microsoft Visual Basic、Visual C++和.net快速應(yīng)用程序開(kāi)發(fā)環(huán)境中。該圖像采集系統(tǒng)選用的是AetiveMil控件庫(kù),本控件庫(kù)可以實(shí)現(xiàn)所有MIL的所有功能,而且由于使用了ActiveX控件,所以很大程度上降低了程序設(shè)計(jì)的難度,縮短了軟件開(kāi)發(fā)周期,提高了應(yīng)用系統(tǒng)的穩(wěn)定性。
3.1 基于AclivrMil的圖像采集程序
    對(duì)Matrox圖像采集進(jìn)行圖像采集二次開(kāi)發(fā)的通用軟件結(jié)構(gòu)如圖6所示。

f.JPG


    圖像采集程序的基本思路是:
    1)打開(kāi)通信通道,即確定一個(gè)應(yīng)用對(duì)象(Application),并對(duì)每個(gè)應(yīng)用對(duì)象創(chuàng)建一個(gè)或多個(gè)系統(tǒng)對(duì)象(System)。
    2)初始化硬件資源,即為每個(gè)系統(tǒng)對(duì)象分配數(shù)據(jù)緩存(Data Buffer)、數(shù)據(jù)采集器(Digitizer)和數(shù)據(jù)顯示(Display)對(duì)象。
    3)啟動(dòng)采集過(guò)程,即將圖像讀入數(shù)據(jù)緩存,并將緩存賦值給數(shù)組,通過(guò)對(duì)數(shù)組的處理實(shí)現(xiàn)對(duì)圖像的處理,圖像數(shù)據(jù)與數(shù)據(jù)顯示相關(guān)聯(lián)后就可以通過(guò)顯示控件或窗體顯示預(yù)處理后的結(jié)果。
    AetiveMIL可以讓開(kāi)發(fā)者快速簡(jiǎn)單地將一個(gè)圖像應(yīng)用程序和Windows用戶界面結(jié)合起來(lái)。應(yīng)用程序開(kāi)發(fā)包含拖動(dòng)和滾動(dòng)工具放置以及加標(biāo)點(diǎn)和單擊配置,充分地減少代碼量。在.net framework3.0卡發(fā)環(huán)境下,安裝MIL開(kāi)發(fā)包并正確配置后,Application、System、Image、ImageProcess、Display等組件將自動(dòng)添加到工具欄。
    開(kāi)發(fā)者將所需用的控件拖拽到圖像采集窗體上,一個(gè)Application,對(duì)應(yīng)于單鏡頭手動(dòng)外觀機(jī),一個(gè)System,單窗體顯示——一個(gè)Disp-laly,為了提高CPU使用率應(yīng)啟用雙緩存異步采集——兩個(gè)ImageBuffer,及一個(gè)ImageProcess。
3.2 雙緩存異步采集思想
    Matrox MeteorII圖像采集卡支持同步和異步兩種采集方式。
    同步采集方式適用于連續(xù)采集顯示圖像而不做運(yùn)算處理的情況,這是因?yàn)橥讲杉绞较拢诿看尾杉瘓D像之前,CPU都向采集卡發(fā)送采集同步信號(hào),然后等待采集結(jié)束,所以在采集過(guò)程中CPU由于得不到圖像數(shù)據(jù)而只能處于等待狀態(tài)。由于CCD僅采集一幀圖像就需要40 ms左右,這與人的視覺(jué)滯留大致相當(dāng),所以在同步方式下無(wú)法保證采集和處理在40 ms內(nèi)完成,也就無(wú)法達(dá)到實(shí)時(shí)處理的要求。
    異步采集方式下,采集工作和計(jì)算機(jī)對(duì)圖像的處理工作可以同時(shí)進(jìn)行,即當(dāng)CPU處理當(dāng)前幀的圖像時(shí),CCD攝像機(jī)可以進(jìn)行下一幀的圖像采集。因此,在程序編制時(shí),需要一個(gè)緩存機(jī)制用來(lái)緩存當(dāng)前已采集完成的圖像和緩存CCD攝像機(jī)將要采集或正在采集的圖像,從而實(shí)現(xiàn)圖像采集與處理的并行工作。顯然,利用這種雙緩存采集方法既可以降低對(duì)硬件系統(tǒng)的要求,還可以大大提高系統(tǒng)的處理速度,滿足實(shí)時(shí)處理的要求。
3.3 圖像采集代碼實(shí)現(xiàn)
g.JPG
h.JPG


3.4用GDI+實(shí)現(xiàn)圖像拼接
i.JPG

4 圖像采集實(shí)例
    圖7是同步采集系統(tǒng)采集的PCB圖像,圖像寬為7 300,高為1 000,用時(shí)1.3 s,并且存在掉幀現(xiàn)象。圖8是雙緩存異步采集系統(tǒng)采集的PCB圖像,用時(shí)1.0 s,采集的圖像效果良好。

j.JPG


    結(jié)果表明,雙緩存異步采集系統(tǒng)的圖像采集速度顯著提高,并且由于利用ActiveX組件縮短了開(kāi)發(fā)周期,降低了開(kāi)發(fā)的人力成本。且提高了圖像采集的質(zhì)量。采集一幅7300x10000的圖像并實(shí)時(shí)拼接僅需1.3 s,不存在掉幀現(xiàn)象,無(wú)損拼接拼接。計(jì)算圖像緩存區(qū)大小的公式為MemSize=ImageWidthxlmageHeightxFrames,實(shí)驗(yàn)還表明,采用同步采集方式采集7 300x1 000,每像素8 bits的1幀圖像大致需要6Gb的緩存空間;采用異步雙緩存采集方式采集相同分辨率的圖像只需要不到32 mb的緩存就可以連續(xù)不問(wèn)斷地保存圖像。由此可見(jiàn),使用異步雙緩存采集方式不僅可以節(jié)約系統(tǒng)資源,而且可以獲得更高效更好的采集效果。

5 結(jié)論
    雙緩存技術(shù)近年在圖像顯示領(lǐng)域得到廣泛應(yīng)用,該設(shè)計(jì)首次將雙緩存技術(shù)與異步采集結(jié)合應(yīng)用在PCB手動(dòng)外觀檢查機(jī)的圖像采集系統(tǒng)中。利用Matrox公司的SoliosXCL-SU74,使用異步雙緩存采集方法可以實(shí)現(xiàn)PCB外觀機(jī)的實(shí)時(shí)連續(xù)采集(本實(shí)驗(yàn)設(shè)為每秒采集10幀圖像,每幀圖像寬為7 300,高為1 000)的要求,并利用GDI+庫(kù)實(shí)現(xiàn)圖像實(shí)時(shí)無(wú)損拼接,該方案較傳統(tǒng)的圖像采集效率更高,對(duì)硬件的要求更低,更適合PCB外觀機(jī)等大數(shù)據(jù)的圖像采集系統(tǒng)。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。