□ 胡 輝 □ 譚小群
西北工業(yè)大學(xué) 機電學(xué)院 西安 710072
隨著機器人技術(shù)的迅猛發(fā)展和計算視覺技術(shù)的日益普及,機器人視覺系統(tǒng)在各行各業(yè)的應(yīng)用越來越廣泛。
在電測技術(shù)中,應(yīng)變片黏貼質(zhì)量的優(yōu)劣對測量的可靠性影響很大,是一個非常關(guān)鍵的環(huán)節(jié),必須予以注意。由于構(gòu)件在受力后各處的應(yīng)變不同,有時位置的微小變化也會造成測出的應(yīng)變偏差較大。因此,為提高電測結(jié)果的準(zhǔn)確性,在將應(yīng)變片貼在被測定物上的過程中,必須精確檢測出應(yīng)變片的位置特征點,并提高應(yīng)變片黏貼位置的精度。機器人視覺技術(shù)能很好地解決這一問題,由于對生產(chǎn)質(zhì)量要求,本系統(tǒng)需要對應(yīng)變片進行兩次視覺檢測以提高檢測精度。
本文分別從系統(tǒng)功能和結(jié)構(gòu)、控制系統(tǒng)設(shè)計、軟件設(shè)計、系統(tǒng)運行及測試4方面對機器人自動貼片系統(tǒng)進行論述和分析。
機器人自動貼片系統(tǒng)能夠完成各種電阻應(yīng)變片的自動貼片,并且貼片精度能達到±0.1 mm。該系統(tǒng)主要由機器人系統(tǒng)模塊、PLC控制模塊、視覺檢測模塊和上位機模塊4部分組成,圖1為機器人自動貼片系統(tǒng)結(jié)構(gòu)圖。機器人系統(tǒng)模塊的主要作用是根據(jù)貼片要求,移動吸取應(yīng)變片的吸頭到目標(biāo)位置,主要由機器人本體以及機器人控制系統(tǒng)組成;PLC控制模塊直接控制工件的翻轉(zhuǎn)、機器人的外部自動運行以及按鈕和燈的運行,主要由PLC控制系統(tǒng)組成;視覺檢測模塊主要向上位機和機器人控制系統(tǒng)提供應(yīng)變片貼片位置的偏移信息,主要由工業(yè)相機本體以及IN-SIGHT軟件系統(tǒng)組成;上位機模塊主要用于在軟件層控制系統(tǒng)的啟動/停止、應(yīng)變片參數(shù)設(shè)置及選擇、系統(tǒng)用戶管理以及各個設(shè)備運行狀態(tài)的監(jiān)控。
圖1 機器人自動貼片系統(tǒng)結(jié)構(gòu)
控制系統(tǒng)從上至下分為3層:上位機軟件層、設(shè)備驅(qū)動層和底層硬件平臺,如圖2所示,設(shè)備驅(qū)動負責(zé)連接上位機軟件和底層硬件。
圖2 機器人自動貼片系統(tǒng)層次結(jié)構(gòu)圖
本系統(tǒng)的上位機軟件構(gòu)架在Windows XP操作系統(tǒng)上,采用Visual C#.NET工具進行開發(fā),上位機軟件主要分為6個模塊:數(shù)據(jù)傳送模塊、數(shù)據(jù)處理模塊、圖形顯示模塊、數(shù)據(jù)監(jiān)控模塊、數(shù)據(jù)保存模塊和參數(shù)設(shè)置模塊。軟件主框架主要負責(zé)把上述6個模塊聯(lián)系起來,并提供多線程支持。系統(tǒng)采用面向?qū)ο蠹夹g(shù)和基于組件的設(shè)計思想進行設(shè)計,因此本系統(tǒng)可以方便地擴展現(xiàn)有代碼,提高編碼效率,也減低了出錯概率,降低軟件維護的難度。
設(shè)備驅(qū)動負責(zé)連接上位機軟件和底層硬件。OPC是一套基于Windows操作平臺,為工業(yè)應(yīng)用程序之間提供高效的信息集成和多功能的組件對象模型接口標(biāo)準(zhǔn),它以微軟的組件對象模型COM/DCOM/COM+技術(shù)為基礎(chǔ),采用客戶/服務(wù)器模式(C/S),OPCDAAuto.dll是其中的一種COM組件。WinAPI是Windows應(yīng)用程序編程接口,可以用來完成各種各樣的功能,包括窗口管理、圖形設(shè)備接口、內(nèi)存管理、媒體控制和系統(tǒng)擴展等。
硬件平臺以研華工控機、KUKA機器人、康耐視工業(yè)相機和三菱PLC為核心。KUKA機器人與工控機通過網(wǎng)線進行連接,三菱PLC與工控機通過RS232接口進行連接,康耐視工業(yè)相機和工控機通過網(wǎng)線進行連接。本系統(tǒng)的元件主要采用PLC控制,主要控制元件有電磁閥、指示燈、接近開關(guān)、繼電器等。
2.4.1 控制系統(tǒng)結(jié)構(gòu)及控制方式
PLC系統(tǒng)構(gòu)成靈活、擴展容易,通用性、適應(yīng)性、抗干擾能力強,使用方便,編程簡單,并能與上位機構(gòu)成復(fù)雜的控制系統(tǒng),實現(xiàn)生產(chǎn)過程的綜合自動化,因此,本系統(tǒng)采用基于上位機和PLC的控制方式。機器人采用KUKA KR 5 sixx R650本身的KR C2控制系統(tǒng),該控制系統(tǒng)為多處理器系統(tǒng),并且通過I/O端口控制響應(yīng)外圍設(shè)備的輸入信號以及輸出信號。機器人自動貼片系統(tǒng)的啟動及停止、應(yīng)變片參數(shù)設(shè)置及選擇、貼片狀態(tài)監(jiān)測等任務(wù)主要由上位PC機完成。PLC的控制程序采用三菱PLC編程軟件進行編寫,機器人運動程序采用KUKA機器人的KRL語言在機器人示教盒中進行編寫。在貼片過程中,機器人控制系統(tǒng)與上位PC機采用以太網(wǎng)的方式進行通信,PLC控制系統(tǒng)與上位PC機采用串口方式進行通信。
2.4.2 視覺檢測系統(tǒng)
視覺檢測系統(tǒng)包括硬件模塊和軟件模塊。硬件主要包括工業(yè)相機、鏡頭和光源。本系統(tǒng)采用的是康耐視In-Sight1403視覺檢測軟件,每次對同一個應(yīng)變片進行兩次視覺處理,軟件根據(jù)不同應(yīng)變片的不同特性來檢測其相應(yīng)的偏移量。In-Sight1403功能強大,能及時分辨出有瑕疵的應(yīng)變片,并把相應(yīng)的信息發(fā)送給主控系統(tǒng),把不良品剔除。
本系統(tǒng)的相機固定在工作臺上,從下往上對應(yīng)變片進行檢測,即檢測應(yīng)變片的反面。本系統(tǒng)采用康耐視In-Sight1403視覺檢測方法,檢測出應(yīng)變片特征中心點在圖像像素坐標(biāo)系O-UV的u、v坐標(biāo)值和實際應(yīng)變片相對于標(biāo)準(zhǔn)模板應(yīng)變片的偏移角度,根據(jù)標(biāo)定方法將圖像像素坐標(biāo)值轉(zhuǎn)換成機器人工件坐標(biāo)系下的x、y值。工件坐標(biāo)系是根據(jù)翻轉(zhuǎn)機構(gòu)平面建立的一個坐標(biāo)系,各個坐標(biāo)軸與圖像像素坐標(biāo)系的各個軸平行。機器人的工件坐標(biāo)系與相機圖像像素坐標(biāo)系的關(guān)系如圖3所示。
圖3 圖像像素坐標(biāo)系與工件坐標(biāo)系示意圖
在機器人自動貼片工作中,機器人在工件坐標(biāo)系下工作,工件坐標(biāo)系與全局坐標(biāo)系的位姿關(guān)系可以通過KUKA機器人的工件標(biāo)定功能得到。在本系統(tǒng)中,應(yīng)變片到相機的工作距離是固定的,這可以由機器人TCP到工作臺平面的距離來保證。被貼物體的目標(biāo)點的補償值是根據(jù)視覺檢測所得的3個值來求得,并通過上位機算法對貼片位置進行實時精度補償。
軟件設(shè)計是整個系統(tǒng)的核心部分,本系統(tǒng)的軟件部分為上位機軟件程序和下位機軟件程序,上位機軟件程序包括系統(tǒng)的啟動/停止控制程序、應(yīng)變片參數(shù)設(shè)置及選擇程序、貼片狀態(tài)監(jiān)測程序、視覺檢測數(shù)據(jù)算法程序,下位機的集成程序以及人機界面程序,下位機軟件程序包括PLC控制程序和機器人控制程序。整個系統(tǒng)的流程如圖4所示。
圖4 系統(tǒng)程序流程
3.2.1 數(shù)據(jù)傳送模塊
該模塊主要負責(zé)機器人運動控制指令和PLC控制指令的傳送、機器人狀態(tài)參數(shù)和PLC狀態(tài)參數(shù)的讀取以及視覺檢測數(shù)據(jù)的傳送。上位機和機器人使用OPC通信方式,主要使用的 COM組件為 OPCDAAuto.dll、opccomn_ps.dll、opc_aeps.dll、opchda_ps.dll和 opcproxy.dll,其中主要包括數(shù)據(jù)訪問類IOPCCommon、同步讀寫數(shù)據(jù)類IOPCSyncIO和異步讀寫數(shù)據(jù)類IOPCASyncIO2等,通過實例化這些類,供數(shù)據(jù)傳送模塊使用。上位機和PLC使用串口通信,通過實例化類SerialPort來設(shè)置串口通信參數(shù)。視覺檢測數(shù)據(jù)的傳送使用COM組件通信,這是由于廠家康耐視提供的驅(qū)動是Cognex.InSight.dll組件和Cognex.InSight.Controls.Display.dll組件,通過實例化這些組件中的類即可進行數(shù)據(jù)傳送。
3.2.2 數(shù)據(jù)處理模塊
該模塊主要是實現(xiàn)機器人貼片位置的實時補償,系統(tǒng)通過使用空間坐標(biāo)轉(zhuǎn)換的辦法和軟件算法來實現(xiàn)機器人自動貼片精度的提高。軟件實時補償后,機器人的貼片精度達到預(yù)期要求的±0.1 mm。
3.2.3 參數(shù)設(shè)置模塊
該模塊主要是由系統(tǒng)管理人員進行設(shè)置,主要設(shè)置的參數(shù)包括應(yīng)變片的型號、彈性體的型號、光視job的設(shè)置以及貼片數(shù)目等,結(jié)合本系統(tǒng)的軟件控制程序,選擇完這些參數(shù)后即可啟動貼片任務(wù)。
針對梅特勒-托利多公司提供的某種型號的應(yīng)變片進行測試,系統(tǒng)運行界面如圖5所示,圖中顯示應(yīng)變片進行視覺檢測后的特征區(qū)域,并在右側(cè)數(shù)據(jù)顯示欄中顯示了視覺檢測后的應(yīng)變片特征區(qū)域中心點在機器人工件坐標(biāo)系下的坐標(biāo)值。使用精密放大儀進行檢測,本系統(tǒng)的應(yīng)變片貼片精度達到±0.1 mm。
圖5 系統(tǒng)運行界面
機器人自動貼片系統(tǒng)設(shè)計完成后,經(jīng)過安裝與調(diào)試,系統(tǒng)運行良好,各項功能都達到了預(yù)先設(shè)計的指標(biāo)。機器人自動貼片系統(tǒng)的重復(fù)定位精度為±0.02 mm,定位精度達到了預(yù)先設(shè)計的指標(biāo),即±0.1 mm,極大地提高了應(yīng)變片貼片的效率以及質(zhì)量,現(xiàn)已投入生產(chǎn)使用。
[1] 杜寶瑞,馮子明,姚艷彬,等.用于飛機部件自動制孔的機器人制孔系統(tǒng)[J].航空制造技術(shù),2010(2):47-50.
[2] 戴娟,汪大鵬,陳蕾,等.電測應(yīng)力實驗中應(yīng)變片的黏貼技巧[J].湖南工程學(xué)院學(xué)報,2003,13(3):55-57.
[3] 鄒益仁,馬增良.現(xiàn)場總線控制系統(tǒng)的設(shè)計和開發(fā)[M].北京:國防工業(yè)出版社,2003.
[4] 高曉丁,胥光申,王錦.電阻應(yīng)變片貼裝方位偏差對測量結(jié)果的影響[J].西安石油學(xué)院學(xué)報(自然科學(xué)版),2001,16(6):41-43.