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