西華師范大學 楊曉可
LED彩燈串在封裝成品投入市場前需要對其基本發(fā)光性能進行檢測,該工序的主要目的是剔除LED彩燈串中不發(fā)光和發(fā)光顏色不符合定制要求的LED燈,以提高產(chǎn)品的質(zhì)量。目前,絕大部分生產(chǎn)商采用的檢測方式為:在LED彩燈串通電的情況下以人眼對其基本發(fā)光性能的好壞進行判別。該方式不僅有一定的安全隱患,而且存在檢測速度慢、效果不理想、成本高等問題。本產(chǎn)品通過openMV色彩識別模塊對LED彩燈串發(fā)光情況進行逐一檢測,協(xié)同其他系統(tǒng)模塊共同實現(xiàn)了對LED彩燈串的自動化檢測,有效的解決了傳統(tǒng)檢測方式中存在的問題,極大程度上提高了LED彩燈串檢測的效率。
(1)本產(chǎn)品通過openMV實現(xiàn)對LED彩燈串的檢測,相對于傳統(tǒng)檢測方式檢測效果更好,檢測速率可調(diào)。
(2)只需5V直流電源即可驅(qū)動整個系統(tǒng),安全可靠,且能長時間持續(xù)工作。
(3)以STM32F407為主控芯片,各模塊具有良好的協(xié)調(diào)性,且成本較低。
LED彩燈串基本發(fā)光性能自動檢測器包含openMV色彩識別模塊、主控模塊、電源模塊、動力模塊、制動模塊5個基本模塊,另外還有兩個暗箱,用以防止檢測時外界光的干擾。兩暗箱分別記為暗箱A與暗箱B,暗箱A中內(nèi)置有openMV模塊,暗箱B內(nèi)置有制動模塊。工作時,兩電機在STM32F407核心板的控制下牽引LED彩燈串上的LED燈逐一通過暗箱A,最終實現(xiàn)檢測LED彩燈串的目的。當檢測出異常LED燈時,制動模塊自動斷開動力模塊的電源,停止檢測,進而定位出異常LED燈在整個彩燈串中的具體位置。系統(tǒng)整體結(jié)構(gòu)圖如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)框圖
openMV是一個非常易用,開源且低價的機器視覺開發(fā)組件。本產(chǎn)品采用的openMV4以O(shè)V7725為感光元件,STM32F4H7處理器為內(nèi)核,內(nèi)置Micro Python解釋器,且擁有IO,SPI,IIC,DAC/ADC,UART等眾多外設(shè)資源,能夠高效的實現(xiàn)對LED彩燈串基本發(fā)光性能的檢測。
使用杜邦線在openMV的引腳上外接一個LED燈,用以在openMV檢測出異常LED燈時發(fā)出警報。以檢測紅、藍、黃三色LED彩燈串為例,當LED彩燈串中有不著或是發(fā)光顏色不符的LED燈出現(xiàn)時,openMV將無法識別,外接的LED燈將被點亮。openMV擁有完整的底層圖像處理算法,可在Python環(huán)境下直接調(diào)用其機器視覺模塊。首先需要對感光元件OV7725、時鐘、LED燈等進行初始化,然后設(shè)定紅、藍、黃三種顏色的閾值,最后調(diào)用openMV的image.find_blobs()函數(shù)將像素點與設(shè)定的閾值進行比較,若相符,則繼續(xù)識別下一個LED燈,否則發(fā)出脈沖并通過延時函數(shù)使得外接的LED燈持續(xù)點亮示警。
LED彩燈串基本發(fā)光性能自動檢測器并未采用openMV自帶STM32F4H7處理器為主控芯片,原因是STM3274H7外設(shè)引腳不多,且openMV要置于暗箱A中,不便于系統(tǒng)電路的連接。因此整個系統(tǒng)以STM32F407作為微控制單元(MCU)。STM32F407采用Cortex M4內(nèi)核,資源充足,接口豐富,主頻達到168MHz,能夠很好的與其他模塊進行交互。
主控模塊的工作在于控制動力模塊的兩個步進電機并為其供電。對于步進電機的控制,主要是通過控制輸人的PWM波的方法來完成的。由于步進電機轉(zhuǎn)子的速度和角位移量與輸入脈沖的頻率和數(shù)量成正比且步進電機的旋轉(zhuǎn)方向取決于通電電流的方向,則可以通過控制輸入的PWM波的數(shù)目、頻率及電動機繞組的順序來控制步進電機轉(zhuǎn)角、轉(zhuǎn)速及轉(zhuǎn)向。再通過STM32F407上的按鍵實現(xiàn)人機的交互。首先需要完成一系列的初始化操作,包括時鐘、GPIO及按鍵IO口的使能,GPIO引腳、速度、模式的配置等,再通過調(diào)用步進電機驅(qū)動器,最后使用定時器產(chǎn)生PWM波即可控制動力模塊的步進電機。主控模塊控制步進電機的結(jié)構(gòu)框圖如圖2所示。
圖2 步進電機控制結(jié)構(gòu)框圖
電源模塊直接為主控板、openMV供電,間接為制動系統(tǒng)及動力系統(tǒng)供電,為保證輸出電壓可調(diào),本產(chǎn)品采用以穩(wěn)壓芯片CW317與CW337為核心,自主設(shè)計的直流穩(wěn)壓電源作為系統(tǒng)的電源模塊。該電源能夠?qū)崿F(xiàn)0~12V的直流電壓可調(diào),在保證系統(tǒng)電路安全的同時也避免了因電壓不足而無法驅(qū)動各模塊的問題。
動力模塊主要由兩個改造后的28BYJ-48單極性步進電機構(gòu)成。這兩個電機與普通電機的不同之處在于輸出軸上都焊接了一根15厘米的空心不銹鋼鋼管,從而在不過多加重電機負載的同時延長了其輸出軸。兩個電機均由主控模塊直接供電與控制,能夠?qū)崿F(xiàn)正轉(zhuǎn)、翻轉(zhuǎn)、調(diào)速與暫停。當整個系統(tǒng)運作時,將一卷中間鏤空的LED彩燈串插于暗箱A入口處電機的輸出軸上,另一電機置于暗箱A的出口處,主控板控制兩電機同向同速轉(zhuǎn)動,即可牽引待測LED彩燈串上的LED燈逐一通過暗箱A,并由其中的openMV完成檢測,檢測完成的LED彩燈串將纏繞于暗箱A出口處電機的輸出軸上。
制動模塊主要由openMV上引出的LED燈及光控繼電器組成,為防止外界光干擾,二者均置于暗箱B內(nèi)。制動模塊位于主控模塊和動力模塊之間,由主控模塊直接供電,其主要作用在于控制STM32F407核心板向步進電機供電線路的通斷,當openMV檢測出異常LED燈,其自帶的STM32F4H7芯片將控制外接的LED燈持續(xù)點亮,與此同時,光敏繼電器則會切斷動力系統(tǒng)的供電。LED彩燈串基本發(fā)光性能自動檢測器沒有使用以openMV自帶芯片STM32F4H7向核心板STM32F407發(fā)送中斷信號進而切斷步進電機電源的方式來顯示檢測出異常LED燈,一方面是因為暗箱A內(nèi)的STM32F4H7不便于過多電路的連接,另一方面,當整個系統(tǒng)停止運行時,制動模塊中LED燈是否持續(xù)點亮可以將系統(tǒng)電路故障與檢測出異常LED燈這兩種情況區(qū)分開來。
實際測試中,以含有發(fā)紅、藍、黃三種顏色光的LED彩燈串檢測為例,檢測彩燈串長20m共220燈,設(shè)置發(fā)白光、綠光、和不發(fā)光的LED燈各兩只。檢測結(jié)果為:凈檢測時長3分21秒,6只異常的LED燈都被檢測出來。部分測試效果展示如圖3所示。
圖3 測試效果展示圖
通過測試結(jié)果和工廠調(diào)研結(jié)果對比發(fā)現(xiàn),本文涉及產(chǎn)品對LED彩燈串基本發(fā)光性能的檢測效果和速度都優(yōu)于傳統(tǒng)的人工檢測,達到了預期的目標,在篩選LED彩燈串中殘次品領(lǐng)域有廣闊應用場景,值得推廣。
結(jié)束語:本文針對LED彩燈串中殘次品篩選的問題,設(shè)計了基于openMV的LED彩燈串基本發(fā)光性能自動檢測器。該設(shè)計由五個基本硬件模塊及軟件部分組成,具有電路簡單、安全可靠、成本低效果好等眾多優(yōu)點,在實踐生產(chǎn)中能產(chǎn)生良好的效益。