何建方 席濤 黃果 李萍
1. 韶關(guān)東陽光自動化設(shè)備有限公司 廣東 韶關(guān) 512721;2. 海南軟件職業(yè)技術(shù)學(xué)院 海南 瓊海 571400
工業(yè)生產(chǎn)過程中,需要對生產(chǎn)產(chǎn)品進行檢測,若人為去檢測,必然會導(dǎo)致檢測效率低、檢測時間長、檢測準(zhǔn)確性跟人的經(jīng)驗有很大的關(guān)聯(lián)度[1-3]。隨著智能制造的發(fā)展,視覺檢測開始應(yīng)用于工業(yè)生產(chǎn)中的產(chǎn)品檢測,可進行產(chǎn)品的外觀檢測、缺陷檢測等,可以實現(xiàn)生產(chǎn)全機械化,減少人力資源成本[4-6]。
視覺檢測主要流程為攝像機對檢測物品進行拍照,對照片進行處理,得到檢測結(jié)果,其照片質(zhì)量優(yōu)為關(guān)鍵,照片的質(zhì)量很大程度決定于拍照光源的控制,通常采用光源控制器來對光源進行調(diào)整[7]。本文根據(jù)生產(chǎn)現(xiàn)場的實際需求,設(shè)計了一種可以匹配多種外部觸發(fā)信號電壓輸入、可以控制多個相機和多個光源、可以結(jié)合當(dāng)前環(huán)境光來自適應(yīng)達(dá)到所需的光源亮度的光源控制器,匹配多種光源輸入適用于多個應(yīng)用場景,可以控制多個相機和多個光源可得到物品多個角度的結(jié)果,提高檢測精確度,自適應(yīng)環(huán)境光,在不同的環(huán)境光種都能保證檢測圖片質(zhì)量,提高整個檢測過程的可靠性。
本文為適應(yīng)實際生產(chǎn)需求,研究了一種新型的光源控制器,通過核心控制器芯片來接收PC端發(fā)來的命令,經(jīng)過處理后通過驅(qū)動電路發(fā)送到光源端實現(xiàn)調(diào)光。總體設(shè)計框架如圖1所示,光源控制器的設(shè)計分為六大模塊:①主控模塊:采用ARM內(nèi)核處理器,負(fù)責(zé)和上位機進行數(shù)據(jù)交互,以及外設(shè)的控制。具體為,檢測光電傳感器的信號,環(huán)境光亮度值,進行處理后,通過脈沖寬度調(diào)制技術(shù)調(diào)節(jié)光源的亮度以及開關(guān)方式。②環(huán)境光采集模塊:通過光敏電阻采集當(dāng)前環(huán)境光的亮度,經(jīng)過中值平均濾波算法處理后,和PC端需要的光源亮度進行比對,進而得到控制光源的發(fā)光亮度。③電壓轉(zhuǎn)換模塊:通過DCDC電路對輸入電源電壓進行降壓處理,可適應(yīng)7~24V大范圍的輸入電源電壓。④光源驅(qū)動模塊:利用脈沖寬度調(diào)制技術(shù)可對光源亮度進行無極調(diào)光。⑤多路光源及相機信號光耦觸發(fā)模塊:a.物品的拍照可有多個角度多個相機拍攝,需要開啟不同方向的光源,一個光源開啟對應(yīng)一個相機的拍攝,可進行多個光源和多個相機協(xié)同拍照。b.恒流二極管的使用,可適應(yīng)3.3V~24V寬范圍的外部觸發(fā)電壓信號,完美解決不同器件之間電壓不匹配的問題。⑥人機交互界面及顯示界面:可顯示當(dāng)前工作狀態(tài),并可進行手動調(diào)節(jié)。
圖1 總體設(shè)計框架
控制器采用Cortex-M3內(nèi)核的STM32微控制器為主體[8],設(shè)計以下硬件設(shè)施來實現(xiàn)所設(shè)計的功能。
在光源控制器中加入光敏電阻作為環(huán)境光強檢測,通過光敏電阻隨著光亮度變化阻值變化的特性來感應(yīng)光強度,加入AD采集電路將模擬信號轉(zhuǎn)換為數(shù)字信號,將采集的光強度信號傳輸給主控模塊進行處理。
在物品四周布四個光電傳感器,光源和相機,進行多角度拍攝。當(dāng)某一個光電傳感器被觸發(fā)后,將發(fā)出某一個相機的觸發(fā)信號,觸發(fā)該相機的拍照模式,直至完成四個方位的拍照。另外,恒流二極管的使用,可適應(yīng)3.3V~24V寬范圍的外部觸發(fā)電壓信號,完美解決不同器件之間電壓不匹配的問題。
主控采用STM32微控制器作為數(shù)據(jù)處理中樞[9-10],通過串口通信方式和PC端通信,使用脈沖寬度調(diào)制方式進行光源控制。使用中值平均濾波算法對環(huán)境光和PC端所需的光源亮度進行處理,得到控制光源的實際發(fā)光亮度。
本設(shè)計光源控制器可適應(yīng)7V至24V輸入電壓,通過DCDC和LDO的聯(lián)用,設(shè)計如下圖2所示電路對電壓進行轉(zhuǎn)換,保證光源控制器有一個穩(wěn)壓的所需電壓輸出。
圖2 電壓轉(zhuǎn)換模塊
光源控制器需要長時間工作,發(fā)熱大,驅(qū)動電路采用低內(nèi)阻的場效應(yīng)管來實現(xiàn)器件的長時間穩(wěn)定輸出,如下圖3所示。光源的亮度調(diào)節(jié)采用脈沖寬度調(diào)制方式控制,占空比和燈的亮度成比例關(guān)系。
圖3 光源驅(qū)動模塊
板載三個按鍵和一個四位顯示的數(shù)碼管[11],既可以實現(xiàn)光源亮度的手動調(diào)節(jié)和工作模式的切換,也可以實時顯示當(dāng)前通道光源的亮度值。
本設(shè)計中使用Keil公司針對ARM硬件平臺推出的RealView MDK對STM32進行軟件開發(fā)[12]。
在整個系統(tǒng)的軟件設(shè)計過程中,軟件需要協(xié)調(diào)多個模塊進行運作,數(shù)據(jù)在多個模塊之間進行傳輸轉(zhuǎn)換,整個系統(tǒng)的流程圖如圖4所示,通過各個模塊的驅(qū)動函數(shù)調(diào)用,最終實現(xiàn)多個光源自動調(diào)節(jié)和多個相機協(xié)調(diào)拍照。
圖4 系統(tǒng)總體流程圖
下圖5為環(huán)境光檢測及光電傳感器觸發(fā)流程。
圖5 環(huán)境光檢測及光電傳感器觸發(fā)流程
通過光敏電阻檢測環(huán)境光輸入到ARM控制板,和電腦端傳輸?shù)乃韫庠戳炼茸鲇嬎?,得到光源最終亮度;
通過光電傳感器時刻檢測外部觸發(fā)信號的有無,并將其觸發(fā)信號傳輸給ARM控制板,控制光源亮度;同時也傳輸給PC,用于觸發(fā)相機進行拍照。
在本設(shè)計中,我們使用中值平均濾波算法來對環(huán)境光采集到的信號進行處理,首先對環(huán)境光進行連續(xù)采樣N次,然后把N次采樣的值進行冒泡從小到大排序,丟棄極值后,對剩下值進行求平均作為本次采樣的環(huán)境光值。由該環(huán)境光值和電腦端所需的亮度值,我們可得到實際光源所需的亮度值。根據(jù)此方法,可以兼容不同亮度的環(huán)境光,適用于各種場合。
算法的程序代碼如下:
本文研究的新型光源控制器已大規(guī)模應(yīng)用于各類產(chǎn)品視覺缺陷檢測,如圖6所示為使用本設(shè)計光源控制器的視覺檢測設(shè)備,極大提升了產(chǎn)品缺陷檢測效率和準(zhǔn)確度,降低用工成本。一臺設(shè)備可代替5人,檢測準(zhǔn)確度達(dá)97%以上,圖7所示為最終檢測結(jié)果。此設(shè)備在工廠投入使用后,創(chuàng)造了很好的經(jīng)濟效益。
圖6 視覺檢測設(shè)備
圖7 檢測結(jié)果