基于Solidworks的工業(yè)機器人離線編程系統(tǒng)

2014-11-19 宋鵬飛 山東輕工業(yè)學(xué)院

  應(yīng)用Solidworks API二次開發(fā)函數(shù)及VC++編程語言,開發(fā)了Solidworks環(huán)境下運行的工業(yè)機器人離線編程系統(tǒng),實現(xiàn)了FANUC M-900iA/350型工業(yè)機器人位姿坐標(biāo)計算、機器人逆運算及作業(yè)程序自動生成等功能。經(jīng)過與Roboguide仿真結(jié)果對比證明,該離線編程系統(tǒng)穩(wěn)定可靠。

  引言

  工業(yè)自動化水平的高低在很大程度上受工業(yè)機器人發(fā)展水平的制約。隨著現(xiàn)今工業(yè)領(lǐng)域產(chǎn)品的小批量多樣化以及專業(yè)化趨勢,使得工業(yè)機器人應(yīng)用范圍持續(xù)擴大的同時工作復(fù)雜程度也不斷增加。工業(yè)機器人是一個可編程的機械裝置,其功能的靈活性和智能性很大程度取決于機器人的編程能力。

1、機器人離線編程發(fā)展現(xiàn)狀

  目前,機器人編程主要有在線示教編程和離線編程兩種方式,在線示教編程為絕大多數(shù)工業(yè)機器人所采用。在線示教編程要求機器人執(zhí)行新的作業(yè)任務(wù)時需停機示教,造成現(xiàn)場生產(chǎn)線停工的同時還可能使編程人員身處危險的現(xiàn)場壞境中。離線編程方式可以實現(xiàn)在遠(yuǎn)離工作現(xiàn)場的情況下完成機器人編程作業(yè),實現(xiàn)運動仿真等一系列功能,大幅提高編程工作效率。國內(nèi)外研究人員在離線編程方面做了大量研究。其中Kuka,ABB,F(xiàn)ANUC等知名專業(yè)機器人生產(chǎn)廠家都有自己的一套成熟的仿真軟件,可離線編程。奇瑞公司機器人項目組也在離線編程方面取得一定進(jìn)展,可對機器人生產(chǎn)過程仿真。陳煥明等完成了基于VC++的弧焊機器人離線編程系統(tǒng)的設(shè)計,可讀出任務(wù)曲線作業(yè)點并生成程序。J.Swider等完成了基于DXF文件的機器人離線編程系統(tǒng),實現(xiàn)了工業(yè)機器人對二維圖形的離線編程仿真功能。

  絕大多數(shù)的離線編程模式都不能將可視化三維仿真環(huán)境與精確地編程方式相結(jié)合。隨著三維繪圖軟件功能日趨強大,完全可以勝任創(chuàng)建工業(yè)機器人及其工作環(huán)境模型的任務(wù),在三維軟件環(huán)境下完成機器人的離線編程仿真將是實現(xiàn)可視化離線編程簡捷有效的途徑。

  本文在Solidworks環(huán)境下對工業(yè)機器人及其工作環(huán)境進(jìn)行三維實體建模,利用Solidworks提供的VC++二次開發(fā)向?qū)wizard.swx,完成機器人離線編程系統(tǒng)的開發(fā)。

2、離線編程系統(tǒng)的工作模式及組成

  完成機器人離線編程作業(yè)包括三個方面的內(nèi)容:

  1)三維建模。在Solidworks環(huán)境下建立機器人及其工作環(huán)境三維仿真模型。

  2)任務(wù)點選取。根據(jù)實際任務(wù)軌跡要求選取機器人任務(wù)點(可由鼠標(biāo)拖動機器人J6軸到達(dá)任務(wù)點)。

  3)調(diào)用離線編程系統(tǒng)。由菜單欄調(diào)用此系統(tǒng),通過位姿計算模塊及逆運動學(xué)計算模塊完成任務(wù)點的位姿計算及各軸輸入角度的計算。

  4)生成作業(yè)程序及離線仿真。

離線編程系統(tǒng)的工作流程及組成

圖1 離線編程系統(tǒng)的工作流程及組成

6、結(jié)束語

  本文利用SolidworksAPI二次開發(fā)函數(shù)及VC++編程語言,在Solidworks環(huán)境下實現(xiàn)了工業(yè)機器人離線編程仿真系統(tǒng)的設(shè)計。本系統(tǒng)實現(xiàn)了工業(yè)機器人位姿坐標(biāo)的精確計算,機器人逆運算及作業(yè)程序自動生成三大功能的系統(tǒng)集成,并對計算結(jié)果進(jìn)行了運動仿真,通過與FANUC Roboguide仿真軟件仿真結(jié)果比較證明:本離線編程系統(tǒng)正確率,可靠性均可以達(dá)到到實際生產(chǎn)要求。為今后實現(xiàn)功能更全面的離線編程仿真系統(tǒng)打下良好的基礎(chǔ),為我國工業(yè)自動化水平的進(jìn)一步提高提供支持和幫助。