蘇文友,陳 安,胡躍明
(華南理工大學(xué) 精密電子制造裝備教育部工程研究中心,廣州 510640)
近幾年,在科技部、信息產(chǎn)業(yè)部等的大力引導(dǎo)下,半導(dǎo)體照明產(chǎn)業(yè)人氣鼎盛,其中LED封裝業(yè)由于進(jìn)入門檻相對較低,吸引了大批資金,取得了可喜成績,新型LED器件不斷涌現(xiàn),大功率LED器件封裝水平接近國際先進(jìn)水平并可量產(chǎn)。但一個不爭的事實是我國LED封裝業(yè)裝備依賴進(jìn)口,企業(yè)規(guī)模不夠大,封裝工藝研究投入不足,工藝水平總體不高。這種狀況嚴(yán)重制約了產(chǎn)業(yè)的發(fā)展[1]。
目前,Luxeon支架式封裝作為大功率LED的基本封裝形式被廣泛采用,這種技術(shù)采用表面貼裝技術(shù)。在Luxeon式封裝中,芯片一般通過合金焊料固晶鍵合在金屬熱沉上,芯片的陽極和陰極通過金線鍵合到獨立的引線框架上。利用聚碳酸酯(Polycarbonate PC)制成的光學(xué)透鏡扣在LED框架頂部,在光學(xué)透鏡和LED框架之間用柔軟的硅膠材料進(jìn)行填充。這里需要解決的關(guān)鍵問題是,由于此處的光學(xué)透鏡外邊緣有注膠孔位和排氣孔位,需要將光學(xué)透鏡精確地扣在LED框架的對應(yīng)位置上。目前國內(nèi)大都利用人工或非視覺機械方式完成,效率低,精度不高。本文正是針對此情況進(jìn)行了光學(xué)透鏡扣帽機的飛行視覺系統(tǒng)設(shè)計,提高生產(chǎn)效率。光學(xué)透鏡及其安裝方式如圖1所示。
圖1 光學(xué)透鏡及其安裝方式
光學(xué)透鏡扣帽機的工作原理是吸嘴吸取振動盤送來的光學(xué)透鏡,然后送到視覺系統(tǒng)對吸取的光學(xué)透鏡底部掃描成像。由于使用合適的吸嘴保證了吸取的光學(xué)透鏡縱向傾斜角度α為0,所以只需考慮橫向旋轉(zhuǎn)角度β。視覺系統(tǒng)計算出光學(xué)透鏡橫向旋轉(zhuǎn)角度后向執(zhí)行機構(gòu)發(fā)出旋轉(zhuǎn)指令信號,執(zhí)行機構(gòu)最后將光學(xué)透鏡精確扣在LED框架的對應(yīng)位置上,完成扣帽工作。
本文針對當(dāng)前國內(nèi)LED封裝生產(chǎn)設(shè)備中對大功率LED光學(xué)透鏡的自動安裝需求,應(yīng)用高性價比的Blackfin DSP處理器設(shè)計了一套嵌入式高速高精度圖像處理系統(tǒng)。本系統(tǒng)摒棄了傳統(tǒng)的PC視覺系統(tǒng)方案,應(yīng)用嵌入式技術(shù)單機實現(xiàn)了高速圖像采集和處理,多任務(wù)執(zhí)行和簡易人機交互的操作功能。
系統(tǒng)主要由ADSP-BF533處理器,線陣CCD傳感器TCD1209D及相應(yīng)的驅(qū)動IC(如CPLD和CSP),SDRAM,F(xiàn)LASH,鍵盤串口通信,VGA控制器和DM9000A以太網(wǎng)控制器構(gòu)成,系統(tǒng)總體硬件結(jié)構(gòu)如圖2所示。
圖2 系統(tǒng)總體硬件結(jié)構(gòu)框圖
該系統(tǒng)采用了ADI公司Blackfin系列的ADSPBF533作為圖像采集和系統(tǒng)控制的主處理器。Blackfin系列處理器采用基于Intel和ADI聯(lián)合開發(fā)的微架構(gòu)(MSA),一種集成了微控制器(MCU)和DSP功能的高性能器件,兼?zhèn)湟粋€32位RISC型指令集和雙16位乘法累加器,使其集強大的信號處理性能和易用性于一身。BF533處理內(nèi)核能以最高600MHz的指令執(zhí)行速率運行,使系統(tǒng)具有1200MMAC的運算能力;還具有并行外設(shè)接口PPI,支持ITU-R 656 視頻數(shù)據(jù)格式,易于圖像數(shù)據(jù)的接收。
系統(tǒng)擴(kuò)展了一片16M×16Bit共32MB的PC133 SDRAM,保證系統(tǒng)的內(nèi)存使用要求。同時,系統(tǒng)采用8引腳SPI工作方式的FLASH用于程序存儲,比一般的NORFLASH體積小,以精簡電路設(shè)計。此外,系統(tǒng)還擴(kuò)展了一片NAND FLASH,可實現(xiàn)大容量任務(wù)信息記錄功能。
系統(tǒng)采用了THOSIBA公司的高速線陣CCD傳感器TCD1209D,其具有2048個有效像素單元,行掃描頻率可到10000Hz。本方案采用ALTERA公司的CPLD產(chǎn)生線陣CCD的驅(qū)動時序。同時,采用TI公司高性能的CSP(CCD Signal Processor,CCD信號處理器)芯片VSP1021對CCD信號進(jìn)行采樣。CSP包括三個主要模塊:相關(guān)雙采樣(CDS),可編程增益放大器(PGA)和高性能ADC。
相關(guān)雙采樣是根據(jù)CCD輸出信號和噪聲信號的特點而設(shè)計,它能消除復(fù)位噪聲的干擾,可以顯著改善信噪比,提高信號檢測精度。所采用的CSP提供了一個分辨率為10位、增益范圍為0dB-36dB的可編程增益放大器,增益系數(shù)可通過串口配置CSP相應(yīng)寄存器設(shè)置。同時,CSP內(nèi)含一個高速,低功耗的ADC,實現(xiàn)CCD模擬信號采樣。
這里CPLD同時完成線陣CCD的驅(qū)動時序和CSP的采樣時序,最后圖像數(shù)據(jù)通過BF533視頻接口接收。
1.2.1 CCD驅(qū)動程序設(shè)計
采用的線陣CCD需要6路驅(qū)動信號才能正常工作,分別是兩互為反相的時鐘信號CR1和CR2、信號輸出時鐘信號φ2B與CR2同頻、像元復(fù)位信號RS、像元鉗位信號CP和行轉(zhuǎn)移同步信號SH。各個驅(qū)動信號必須嚴(yán)格按照CCD相位時序要求,才能保證CCD的正常工作。CPLD通過計數(shù)分頻的方式可以方便的得出CCD的驅(qū)動信號。為提高信號輸出驅(qū)動,這些信號事先反相后再經(jīng)過反相器輸出。
同時CSP需要一些驅(qū)動信號,主要包括像素時鐘信號ADCCLK,相關(guān)雙采樣信號SR、SV,光學(xué)暗電平校正信號OBCLP,鉗位控制信號CLAMP。這些信號由同一片CPLD提供,按照時序要求和CCD的模擬輸入信號的有效信號(2048個像素)的時間段給出CSP的驅(qū)動信號,最后直接轉(zhuǎn)換為CCD有效數(shù)字信號。
得出的CCD有效數(shù)字信號送回CPLD,再由CPLD輸出行同步HSYNC,場同步VSYNC,像素時鐘PCLK和像素數(shù)據(jù)D7-D0,最后通過BF533的視頻接口PPI接收并以DMA的方式存儲在BF533的SDRAM中完成圖像采集。CCD和CSP的驅(qū)動時序如圖3所示。
1.2.2 CCD圖像采集參數(shù)設(shè)置
實際應(yīng)用中需要根據(jù)檢測要求調(diào)整CCD的行頻率,可通過增加光積分時間實現(xiàn),即增加CCD輸出啞像元的個數(shù)。
圖3 CCD和CSP驅(qū)動時序圖
系統(tǒng)設(shè)置兩種方式調(diào)整CCD的行頻率。一種是內(nèi)觸發(fā)方式,通過寫入CPLD內(nèi)部相應(yīng)寄存器的值以調(diào)整光積分時間,調(diào)整范圍可達(dá)1K~10K。另一種是外觸發(fā)方式,可根據(jù)生產(chǎn)線中給出的速度同步信號進(jìn)行行頻率的自動調(diào)整,速度同步信號頻率不一定適合CCD行頻率,此時可對速度同步信號分頻以降低行頻率,分頻比的設(shè)置與設(shè)置光積分時間同理。
系統(tǒng)通過設(shè)置CSP的增益系數(shù)可調(diào)整CCD的曝光增益。所有參數(shù)設(shè)置采用模擬SPI的方式,利用DSP的三根IO線,分別用于時鐘線SCK、數(shù)據(jù)線SDA和片選線CE,通過發(fā)送地址 + 數(shù)據(jù)的形式,可分別對CPLD和CSP內(nèi)部寄存器的值進(jìn)行設(shè)定。當(dāng)CE為高時,設(shè)置CPLD;CE為低時,設(shè)置CSP。只用三根IO線即可分別對兩片IC進(jìn)行參數(shù)設(shè)置,減少了處理器IO資源的利用。
本視覺系統(tǒng)設(shè)計了一個簡單的人機交互界面,具有VGA輸出顯示和以太網(wǎng)通信功能,操作人員可以根據(jù)外接顯示器觀察拍攝的圖像效果并利用鍵盤與DSP串口通信進(jìn)行參數(shù)設(shè)置,或通過網(wǎng)絡(luò)連接方式遠(yuǎn)程監(jiān)控和設(shè)置系統(tǒng)。
構(gòu)建的VGA控制器結(jié)構(gòu)框圖如圖4所示,利用成本低的CPLD+SRAM+DAC的方案實現(xiàn)。該控制器具有標(biāo)準(zhǔn)的16bit 8080總線接口,DSP通過異步總線接口EBIU與VGA控制器鏈接。VGA控制器占用異步總線的一個片選單元,并映射到固定的一段內(nèi)存區(qū)域。DSP把要顯示的內(nèi)容寫入這段內(nèi)存區(qū)域,等到要顯示內(nèi)容的時候通過Memory DMA的方式把顯示數(shù)據(jù)發(fā)送到VGA控制器,由VGA控制器完成顯示器上界面的動態(tài)刷新。
系統(tǒng)以DM9000A作為以太網(wǎng)控制器。DM9000A單片集成了10/100M以太網(wǎng)MAC和PHY,帶硬件IP/TCP/UDP校驗和生成功能,具有較高的集成度和性能。通過網(wǎng)絡(luò)連接即可對系統(tǒng)進(jìn)行遠(yuǎn)程監(jiān)控和設(shè)置。由于其與DSP的鏈接方式與VGA控制器類似,這里不再詳細(xì)敘述。
由于采用了Memory DMA的方式發(fā)送數(shù)據(jù),保證顯示器界面更新的同時,也節(jié)省了大量的CPU時間。
圖4 VGA控制器結(jié)構(gòu)框圖
在嵌入式處理系統(tǒng)中,往往具有多個任務(wù)同時運行的情況,使用成熟的嵌入式操作系統(tǒng)管理各個任務(wù)有助于提高系統(tǒng)的穩(wěn)定性和實時性,還可降低開發(fā)難度。 由于Black fin處理器不帶內(nèi)存管理單元(MMU),不能運行像Linux之類的大型操作系統(tǒng),如uC/OS II、uCLinux就比較適合本系統(tǒng)的應(yīng)用。這里我們采用資源占用較少的uC/OS II系統(tǒng)。
uC/OS II操作系統(tǒng)的移值,一般是根據(jù)相應(yīng)處理器的硬件特性編寫os_cpu.h、os_cpu_c.c、os_cpu_a.asm這三個與CPU相關(guān)的文件,主要是改寫與硬件相關(guān)的任務(wù)堆棧操作、CPU中斷處理、任務(wù)切換等關(guān)鍵代碼。根據(jù)Micrium公司提供的參考移值例程,可以很方便地將uC/OS II操作系統(tǒng)移值到Blackfin BF533處理器中。這里采用較為成熟的2.86版本進(jìn)行開發(fā),并設(shè)置時間片(TICK)為1ms,以滿足實時處理要求。
uC/TCP-IP作為專門為嵌入式實時系統(tǒng)設(shè)計的TCP/IP協(xié)議棧,可與uC/OS II無縫結(jié)合,無需進(jìn)行移植即可使用,大大縮短了開發(fā)周期,在8bit/16bit/32bit處理器上都有較高的運行效率,并且與BSD協(xié)議兼容,易于移植已有的網(wǎng)絡(luò)應(yīng)用程序。
本視覺系統(tǒng)在軟件部分主要由圖像采集、圖像處理、串口通信、人機界面和以太網(wǎng)控制等五個任務(wù)構(gòu)成,以實現(xiàn)系統(tǒng)的控制和處理工作。各個任務(wù)由uC/OS II操作系統(tǒng)統(tǒng)一管理,按照設(shè)定的優(yōu)先級進(jìn)行任務(wù)調(diào)度。各任務(wù)之間可以并行運行,相互獨立。系統(tǒng)總體軟件架構(gòu)如圖5所示。
圖5 軟件總體架構(gòu)框圖
各個任務(wù)之間主要應(yīng)用uC/OS II系統(tǒng)的信號量通信機制進(jìn)行協(xié)調(diào)工作,能有效避免多個任務(wù)對同一段內(nèi)存區(qū)同時訪問,當(dāng)一個任務(wù)請求訪問內(nèi)存區(qū)而此內(nèi)存區(qū)被另一個任務(wù)占用時,則該任務(wù)將自動掛起,空出CPU運算資源以分給其他任務(wù)使用。
由于圖像采集和圖像處理需要頻繁訪問SDRAM的內(nèi)存數(shù)據(jù),將采集和處理的圖像數(shù)據(jù)分別設(shè)置存放在SDRAM上不同的內(nèi)存BANK中,以減少SDRAM的訪問延遲。系統(tǒng)在處理當(dāng)前幀的同時也開始采集下一幀圖像,人機交互界面也會實時顯示采集的圖像。與此同時,系統(tǒng)也會實時響應(yīng)以太網(wǎng)和串口數(shù)據(jù)通信。
光學(xué)透鏡旋轉(zhuǎn)角度識別的圖像處理算法步驟:
1)圖像分割,由于目標(biāo)與背景對比度高,故采用全局閾值分割算法即可,如圖6(b)所示。
2)邊界提取,采用八相鄰域邊界跟蹤算法,如圖6(c)所示。
3)對邊界信息利用平均值求取中心坐標(biāo)并得到平均半徑。
4)提取距離超過平均半徑的邊界點,即光學(xué)透鏡兩端圓弧邊界,如圖6(d)所示。
5)對圓弧邊界采用文獻(xiàn)[6]方法,為提高精度,利用多組數(shù)據(jù)求平均的方法得到兩圓弧的圓心坐標(biāo),如圖6(e)所示,其中位于中間十字為邊界的中心,長度為平均半徑,兩端十字為兩圓弧圓心位置。
6)根據(jù)兩圓心坐標(biāo)計算光學(xué)透鏡旋轉(zhuǎn)角度。
本算法利用邊界特征信息,對內(nèi)部光照不均、反光等非特征部分無關(guān),穩(wěn)定性好,且邊界數(shù)據(jù)信息少,速度快。
圖6 圖像處理結(jié)果
實驗時視覺系統(tǒng)對高速運動的LED光學(xué)透鏡底部進(jìn)行圖像采集。為測試角度測量精度,采用文獻(xiàn)[7]提出的邊界特征匹配算法與本文算法作了比較,得到部分試驗數(shù)據(jù)如表1所示,其中A代表基于邊界特征匹配算法,B代表本文利用圓弧圓心坐標(biāo)測量角度的識別算法。
由上表可以看出,采用基于邊界特征匹配算法對于LED光學(xué)透鏡的角度測量,測量精度不夠高,且不穩(wěn)定。而本文提出的角度識別算法精度穩(wěn)定在0.2°以內(nèi),已經(jīng)滿足了LED光學(xué)透鏡扣帽機對于角度測量的精度要求(0.2°),而且在速度和穩(wěn)定性方面比前者好。
表1 兩種算法的比較
本文針對當(dāng)前國內(nèi)LED封裝生產(chǎn)設(shè)備中對LED光學(xué)透鏡的自動安裝需求,應(yīng)用高性價比的Blackfin DSP處理器設(shè)計了一套嵌入式高速高精度圖像處理系統(tǒng)。本文通過精簡硬件結(jié)構(gòu)和合理的硬件選型以提高系統(tǒng)性能,并應(yīng)用嵌入式實時操作系統(tǒng)uC/OS II提高系統(tǒng)的實時性并實現(xiàn)多任務(wù)處理?,F(xiàn)場生產(chǎn)過程表明,本系統(tǒng)性能穩(wěn)定可靠,而且體積小,成本低,已經(jīng)滿足實際LED封裝生產(chǎn)設(shè)備對LED光學(xué)透鏡的自動安裝要求,同時也促進(jìn)了LED自動安裝設(shè)備的國產(chǎn)化,提高國內(nèi)LED封裝生產(chǎn)行業(yè)的自動化水平。
[1] 王垚浩.LED封裝必須重視設(shè)備和工藝研究[N].中國電子報,2005.
[2] 陳峰.基于Black fin DSP的數(shù)字圖像處理[M].北京:電子工業(yè)出版社,2009.
[3] 任哲.嵌入式實時操作系統(tǒng)uC/OS-II原理及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2005.
[4] ADSP-BF533 Black fin?Processor Hardware Reference [M].Analog Devices Inc,2009.
[5] 王慶有.圖像傳感器應(yīng)用技術(shù)[M].北京:電子工業(yè)出版社,2003.
[6] 段小武.巧求三點外接圓圓心[J].電腦開發(fā)與應(yīng)用.2002(08).
[7] 黃恢樂,胡躍明,袁鵬等.高速高精度全自動貼片機的元件角度識別算法[J].計算機工程與應(yīng)用.2005.