(北京聯(lián)合大學 北京市智能機械創(chuàng)新設計服務工程技術研究中心,北京 100020)
隨著計算機技術的不斷進步,機器視覺的應用也越來越廣泛[1]。目前,將機器視覺應用至各種檢測場合已成發(fā)展趨勢。應用機器視覺實現(xiàn)物品檢測,通常會針對該物品設計專門的檢測裝置[2-5]。但設計專用裝置需要較長的周期,并且在設計裝置之前,還需要根據(jù)被測對象的特點來確定具體檢測方案及算法。因此,各高等院校和科研院所進行機器視覺研究之前,通常使用市場上銷售的手動調(diào)節(jié)裝置或使用攝像用的三腳架來采集圖像進行算法研究。而這些裝置調(diào)節(jié)起來很麻煩,且僅能在單個方向進行調(diào)節(jié)。本文提出一種裝置,攝像頭可根據(jù)待測物品的尺寸在高度和水平面方向均能實現(xiàn)自動調(diào)節(jié),操作方便,調(diào)節(jié)精度高。目前,該裝置被聯(lián)合大學機電學院研制并處于試驗階段。
機械結(jié)構(gòu)需要將所固定的攝像頭實現(xiàn)三維內(nèi)的移動,從而實現(xiàn)清晰采集物體圖像的目的。攝像頭位置調(diào)節(jié)設有自動調(diào)節(jié)和手動調(diào)節(jié)2種方式。自動調(diào)節(jié)方式是通過上位監(jiān)控設備控制攝像頭在區(qū)域范圍內(nèi)運行到指定的三維位置。手動調(diào)節(jié)方式是對攝像頭在各個軸向進行點動調(diào)節(jié)位置。
本設計從運動平穩(wěn)性、傳動精度和經(jīng)濟成本考慮,選擇3組滾珠絲杠(X軸、Y軸、Z軸)作為機械裝置的傳動機構(gòu),分別由步進電機對滾珠絲杠進行驅(qū)動。攝像頭安裝在Z軸(上下運動)滾珠絲桿的滑塊上,Z軸底座安裝在X軸(左右運動)的滑塊上,而X軸橫跨在Y軸(前后運動)和一滑動導軌上?;瑒訉к壟cY軸滾珠絲杠互相平行,Y軸的運動以滾珠絲杠為主運動,平行于Y軸絲桿的光滑導軌為從動運動。該裝置的支架使用輕巧的鋁型材,支架底部放置控制系統(tǒng),中部安裝檢測平臺。所設計的機械結(jié)構(gòu)的三維造型如圖1所示。其中,檢測平臺為300 mm×380 mm,X軸的滾珠絲杠行程為200 mm,Y軸的滾珠絲杠為300 mm,Z軸的滾珠絲杠的行程選200 mm。控制系統(tǒng)控制器使用西門子小型S7-1200 PLC,上位監(jiān)控及操作使用上海繁易公司的F007電容觸摸屏,同時也配置了一個可進行簡單操作的手持面板。
三組滾珠絲杠(X軸、Y軸、Z軸)均由步進電機進行控制。由于滾珠絲杠的主要負載為攝像頭及滾珠絲杠的自重,負載不大,故本裝置使用3個2相直流步進電機實現(xiàn)3個方向的位置調(diào)節(jié),步進電機驅(qū)動器選擇TB6600。
本裝置上使用6個行程開關進行3個方向的限位,使用3路高速脈沖及3路方向信號對步進電機進行位置控制。使用手持式面板進行模式選擇和對攝像頭位置進行點動調(diào)節(jié)。手持式面板上安裝2個撥動開關,一個用于手動和自動模式的選擇,一個用于手持式面板和上位控制的選擇。手持式面板上還安裝6個點動按鈕用于攝像頭位置在各個方向的點動調(diào)節(jié)控制,安裝1個復位按鈕用于攝像頭位置復位,安裝1個停止按鈕用于停止當前運動。因此,數(shù)字量輸入信號有16點,數(shù)字量輸出信號有6點。
圖1 機械結(jié)構(gòu)三維造型Fig.1 Mechanical design
圖2 CPU1214C接線原理Fig.2 Wiring schematic of CPU1214C
本裝置中I/O點數(shù)較少,故控制器選擇具有3路以上高速脈沖輸出的西門子S7-1200 PLC。CPU型號為支持4路高速脈沖輸出CPU1214C DC/DC/DC。為滿足任務需求,同時考慮以后的項目擴展需求,本設計擴展一個具有16DI/16DO的模塊SM1223DC/RLY。
根據(jù)本項目的控制要求,有16點數(shù)字量輸入信號,有6點數(shù)字量輸出信號。對3個步進電機進行編號,定義1號電機為Z軸軸向電機 (上下運動),2號電機為Y軸軸向電機 (前后運動),3號電機為X軸軸向電機(左右運動)。對所有數(shù)字量輸入和輸出進行I/O地址分配,將所有使用到的電器元件進行接線,其硬件接線原理如圖2和圖3所示。
圖3 SM1223接線原理Fig.3 Wiring schematic of SM1223
對于PLC的程序設計,根據(jù)控制任務要求,程序主要分為主程序、初始化程序、復位程序、手動運行程序、自動運行程序和急停程序。
初始化程序OB100主要是實現(xiàn)對設備參數(shù)及上位設置參數(shù)進行初始化賦值。設備參數(shù)主要包括絲杠的導程、步進電機的步距角和細分數(shù)、輸出脈沖的周期和攝像頭的默認位置。上位設置參數(shù)主要包括自動模式下攝像頭在X、Y、Z軸方向上需要移動的相對距離。
主程序OB1主要是判斷各種工作狀態(tài)并實現(xiàn)子程序的調(diào)用。OB1通過調(diào)用復位程序,急停程序,手動程序和自動程序,實現(xiàn)“HMI控制”與“手持控制”的切換,以及實現(xiàn)“手動模式”與"自動模式的切換。主程序OB1的流程如圖4所示。
圖4 主程序OB1流程Fig.4 Flow chart of the main program OB1
復位程序主要實現(xiàn)攝像頭回初始位置。在復位程序中,需要定義步進電機的方向,并使用CTRL_PWM指令實現(xiàn)對步進電機的控制。本項目定義攝像頭在X軸的左限位、Y軸的后限位以及Z軸的上限位為攝像頭的初始位置。按下復位按鈕,各軸將同時向初始位置移動,直到到達初始位置才停止。
手動運行程序?qū)崿F(xiàn)在手動/自動模式選擇開關切換至手動模式后通過手持面板進行手動操作實現(xiàn)攝像頭點動上行、點動下行、點動向前、點動向后、點動向左、點動向右的三維運動。在該程序中,同樣需要定義步進電機方向和控制脈沖輸出。
自動運行程序?qū)崿F(xiàn)當手動/自動模式選擇開關切換至自動模式,并且將手持面板/HMI模式選擇開關切換至在HMI模式下時,通過HMI設備直接設定攝像頭位置,點擊確認按鈕,則裝置直接將攝像頭自動移動到該位置。
自動運行程序中,需要讀取HMI設定的位置參數(shù),然后通過計算,轉(zhuǎn)換成時間信息,實現(xiàn)對步進電機的運行控制,從而實現(xiàn)對攝像頭位置的自動定位功能。
首先按式 (1)計算步進絲杠滑臺每移動1 mm所使用的時間t(ms)。
式中:a為步距角 (°);n為細分數(shù);T為脈沖周期(ms);s為絲杠導程(mm)。
再根據(jù)式(2)~式(4)來計算攝像頭在X,Y,Z方向需要移動指定距離所用的時間。
式中:dx,dy,dz分別為攝像頭在X、Y、Z方向上需要移動的距離;tx,ty,tz分別為攝像頭在X,Y,Z方向移動所用時間。
在程序中實現(xiàn)當按下上位確認按鈕時,控制步進電機轉(zhuǎn)動相應的時間。其中,在上位對各軸方向的相對位置進行設定時,定義遠離初始位置為坐標正方向,否則為負方向,設置正方向移動時輸入正數(shù),設置負方向移動時輸入負數(shù)。在程序中還需要考慮限位保護。
在自動模式中,還需要計算攝像頭當前的實際位置,在步進電機運動過程中能實時更新。要實現(xiàn)該功能,需要計算單位時間(ms)內(nèi)步進電機移動的距離D,該距離D與步進絲杠滑臺每移動1 mm所使用的時間t(ms)正好是倒數(shù)關系,故D可根據(jù)式
(5)計算。
當前實際坐標位置用X1,Y1,Z1(mm)表示,則X1,Y1,Z1的值可根據(jù)式(6)~式(8)進行計算。
式中:TDx,TDy,TDz表示當前X,Y,Z軸方向已經(jīng)移動的相對時間(ms);X0,Y0,Z0表示按下上位確認按鈕前的實際坐標位置(mm);±運算符需要根據(jù)位置移動方向進行確定,往坐標正方向移動時取“+”運算,往坐標負方向移動時取“-”運算。
在本設計中,為提高人機界面的友好性,增加了HMI上位機控制。從性能和成本等角度考慮,采用繁易小型電容觸摸屏F007作為上位機HMI設備,其上位組態(tài)軟件為FStudio。本項目使用Ethernet網(wǎng)絡通訊模式實現(xiàn)繁易F007屏與PLC的通信。其中,觸摸屏項目中添加通信設備如圖5所示,在PLC的CPU模塊屬性的“保護”標簽頁中訪問權限設置為“完全訪問權限(無任何保護)”,并且勾選“允許從遠程伙伴(PLC、HMI、OPC、…)進行PUT/GET通信訪問”選項。
圖5 添加通信設備Fig.5 Add communication device
上位組態(tài)畫面需要實現(xiàn)上位手動控制、上位自動控制、復位操作和手動/自動模式選擇,同時需要顯示當前裝置的狀態(tài)。具體上位組態(tài)畫面運行如圖6所示。其中,左上角的區(qū)域為手動點動控制,執(zhí)行復位和選擇手動/自動模式,以文字形式進行狀態(tài)顯示;右側(cè)上方使用箭頭顯示各軸的運行方向;左側(cè)下方用來設置自動模式下各軸運動的相對位置,按下“確認”按鈕后,右側(cè)下方顯示攝像頭的實際位置。
圖6 上位運行畫面Fig.6 Run the monitor screen
本自動檢測裝置實物如圖7所示。
圖7 中小物品自動檢測裝置實物Fig.7 Experimental device
試驗時,將PLC與觸摸屏使用以太網(wǎng)線進行連接,并通電。運行PLC程序,將手持面板上“手持/ HMI”開關SA2斷開,則可以使用手持面板上的按鈕對攝像頭的空間位置進行點動調(diào)節(jié),但不能進行位置顯示。接通手持面板上的“手持/HMI”開關SA2,則切換至觸摸屏操作。使用觸摸屏不僅可以對攝像頭的位置進行點動調(diào)節(jié),還可以進行位置自動定位,同時可以顯示攝像頭的當前位置。為測試所設計的自動檢測裝置的使用效果,本項目連接大恒HV1351攝像頭進行測試,使用大恒公司提供的測試軟件Daheng Imavision USB Performance進行圖像采集。本裝置可以選擇在試驗測試過程中,攝像頭位置調(diào)節(jié)穩(wěn)定可靠,位置精度為0.003 mm。
本文設計了機器視覺檢測裝置,實現(xiàn)攝像頭位置在高度和水平面方向的自動調(diào)節(jié),為后續(xù)的圖像處理提供便利。攝像頭的移動空間范圍為200 mm× 200 mm×300 mm,適應中小物品的機器視覺檢測。攝像頭位置調(diào)節(jié)可采用成本低廉的手持面板操作,也可使用操作方便、可實現(xiàn)精確位置控制的觸摸屏操作。該裝置為科研院所及高校的研究人員大大縮短了機器視覺檢測研究的周期,提高了研究的效率,應用前景廣泛。
[1] 胥磊.機器視覺技術的發(fā)展現(xiàn)狀與展望[J].設備管理與維修,2016(9):7-8.
[2] 吳房勝,余華益,張翔,等.電機轉(zhuǎn)速傳感器高精度檢測裝置的研究[J].制造業(yè)自動化,2012,34(4):43-44.
[3] 凌云,王一鳴,孫明,等.基于機器視覺的大米外觀品質(zhì)檢測裝置[J].農(nóng)業(yè)機械學報,2005,36(9):89-92.
[4] 王僑,陳兵旗,楊曦,等.用于定向播種的玉米種穗圖像精選方法[J].農(nóng)業(yè)工程學報,2015,31(1):170-177.
[5] 王亮,郁志宏,溫鹿,等.雞蛋自動檢測分級與包裝裝置的設計[J].農(nóng)機化研究,2013(3):117-120.
[6] 伍濟鋼,賓鴻贊.機器視覺的薄片零件尺寸檢測系統(tǒng)[J].光學精密工程,2007,15(1):124-130.