siemens x
傳感器

基于高級(jí)建模系統(tǒng)的機(jī)器人弧焊離線編程系統(tǒng)的開(kāi)發(fā)

2025China.cn   2008年07月08日

前言
   隨著微機(jī)性能的不斷提高,許多大型的CAD設(shè)計(jì)軟件紛紛推出其微機(jī)版本,并且出現(xiàn)了直接運(yùn)行在微機(jī)上的SolidWorks等軟件。在機(jī)器人領(lǐng)域,以往運(yùn)行在高檔圖形工作站上的離線編程軟件,如ROBCAD、IGRIP、WORKSPACE等,紛紛推出了基于Windows的離線編程系統(tǒng)。這些軟件都是通用的離線編程軟件,尚缺乏對(duì)弧焊特殊應(yīng)用的支持,如WORKSPACE更注重標(biāo)定功能的開(kāi)發(fā)[1>。用戶在編程程序時(shí),很多時(shí)候還必須通過(guò)圖形示教方式建立機(jī)器人運(yùn)動(dòng)路徑,這對(duì)于大型工件或復(fù)雜路徑的編程,工作量是相當(dāng)大的。從發(fā)展方向上看,離線編程系統(tǒng)正朝著智能化方向發(fā)展,用戶編程越來(lái)越簡(jiǎn)單方便,自動(dòng)編程技術(shù)成為人們追求的目標(biāo)。
   哈爾濱工業(yè)大學(xué)焊接實(shí)驗(yàn)室開(kāi)發(fā)的離線編程系統(tǒng)平臺(tái)AutoCAD2000,實(shí)踐證明,由于該軟件開(kāi)發(fā)中的自身原因,使的該軟件存在一些的不足之處,三維設(shè)計(jì)中的實(shí)體造型能力不足,系統(tǒng)無(wú)法支撐較復(fù)雜工作單元的建模,無(wú)法實(shí)用化。目前具有一定自主規(guī)劃能力的離線編程系統(tǒng)將極大減少用戶的工作量,工件CAD信息的獲取成為后續(xù)規(guī)劃的數(shù)據(jù)輸入,這要求離線編程系統(tǒng)的平臺(tái)有較強(qiáng)的建模功能,能對(duì)各種焊接任務(wù)中的焊接工件進(jìn)行建模。由于AutoCAD本身三維建模功能很弱,采用其他建模工具導(dǎo)入的模型,AutoCAD將無(wú)法得到足夠的工件建模信息,無(wú)法實(shí)現(xiàn)后續(xù)的自動(dòng)規(guī)劃功能。
   開(kāi)發(fā)適合中國(guó)企業(yè)的、廉價(jià)且專業(yè)的弧焊離線編程系統(tǒng),對(duì)于推廣離線編程的實(shí)際應(yīng)用具有重要意義。

1 系統(tǒng)開(kāi)發(fā)環(huán)境

   SolidWorks由于價(jià)格便宜、具有一般用戶所需的功能,已成為全球3D主流設(shè)計(jì)市場(chǎng)用戶數(shù)最多、用戶滿意度最高、銷售額第一的軟件產(chǎn)品,在全球擁有超過(guò)325,000名用戶。并且它的二次開(kāi)發(fā)功能很強(qiáng)大,能夠開(kāi)發(fā)出弧焊離線編程系統(tǒng)。開(kāi)發(fā)出的離線編程系統(tǒng)將具有較強(qiáng)的建模能力,從而具有較強(qiáng)的獲取工件和焊縫信息的能力,最大程度完成自動(dòng)編程任務(wù)。這樣的弧焊離線編程系統(tǒng)很容易被中小企業(yè)接受。
   本文應(yīng)用COM技術(shù)的編程方法,以SolidWorks的API二次開(kāi)發(fā)接口和VC++ 6.0、ATL作為開(kāi)發(fā)工具,在SolidWorks平臺(tái)進(jìn)行弧焊離線編程系統(tǒng)的開(kāi)發(fā)。
   SolidWorks API提供了大量的COM對(duì)象用于二次開(kāi)發(fā)[2],這些COM對(duì)象涵蓋了全部的SolidWorks的數(shù)據(jù)模型,通過(guò)對(duì)SolidWorks的COM對(duì)象的調(diào)用,用戶可以在自己開(kāi)發(fā)的系統(tǒng)中實(shí)現(xiàn)與SolidWorks相同的功能。圖1為主要的SolidWorks API對(duì)象模型。

                                                                    圖3-7 SolidWorks API對(duì)象模型[2]

2 機(jī)器人弧焊離線編程系統(tǒng)的對(duì)象建模

   對(duì)象模型表示靜態(tài)的、結(jié)構(gòu)化的系統(tǒng)“數(shù)據(jù)”性質(zhì)。它是對(duì)模擬客觀世界實(shí)體的對(duì)象以及對(duì)象彼此間的關(guān)系的映射,描述了系統(tǒng)的靜態(tài)模型。類-&-對(duì)象間的關(guān)系可以概括為歸納關(guān)系、組合關(guān)系及關(guān)聯(lián)關(guān)系。
   本文給出了三層的機(jī)器人工作單元中主要的數(shù)據(jù)結(jié)構(gòu):工作單元類,描述機(jī)器人等客觀對(duì)象的組合以及這些對(duì)象間的各種聯(lián)系和相互作用;設(shè)備類和關(guān)節(jié)類。
   為了在圖形環(huán)境中可視地表征焊槍的運(yùn)動(dòng)過(guò)程,定義了路徑對(duì)象,路徑對(duì)象中有多個(gè)標(biāo)簽點(diǎn)對(duì)象,一個(gè)路徑對(duì)象與一個(gè)部件對(duì)象之間存在受限關(guān)聯(lián)。根據(jù)以上分析,建立了離線編程與仿真系統(tǒng)的對(duì)象模型,如圖2所示。

                                                                               圖2 系統(tǒng)對(duì)象模型

3 系統(tǒng)結(jié)構(gòu)

   從功能上講,機(jī)器人弧焊離線編程系統(tǒng)較一般的離線編程系統(tǒng),增加了弧焊方面的功能。所以從功能上既包含了一般離線編程系統(tǒng)的功能,同時(shí)也突出了對(duì)弧焊的支持。本文對(duì)各功能模塊功能都做了改進(jìn)。
   機(jī)器人執(zhí)行級(jí)弧焊離線編程系統(tǒng)的總體結(jié)構(gòu)如圖3所示。

                                                                                  圖3 功能模塊劃分

下面對(duì)各模塊功能進(jìn)行概括性介紹。
1)設(shè)備建模
   該模塊用于定義機(jī)器人、焊接工件、變位機(jī)等周邊設(shè)備:將SolidWorks創(chuàng)建的裝配體定義為各種設(shè)備,定義設(shè)備的關(guān)節(jié)運(yùn)動(dòng)類型、定義設(shè)備工具參數(shù)、設(shè)定設(shè)備的運(yùn)動(dòng)學(xué)參數(shù)等。創(chuàng)建機(jī)器人設(shè)備庫(kù)、變位機(jī)等周邊設(shè)備庫(kù)。
2)工作單元布局
   系統(tǒng)應(yīng)提供建立多設(shè)備組成的工作單元的能力,即工作單元布局功能。在該模塊中提供了調(diào)用已有設(shè)備、定義設(shè)備間位姿關(guān)系、組建協(xié)調(diào)運(yùn)動(dòng)設(shè)備的功能。創(chuàng)建工作單元庫(kù)。圖4給出了一個(gè)搭建的工作單元示例。

                                                                            圖4 工作單元仿真示例圖

3)運(yùn)動(dòng)仿真
   該模塊主要提供以下功能:各種設(shè)備的關(guān)節(jié)運(yùn)動(dòng)、回到零位運(yùn)動(dòng);單機(jī)器人設(shè)備和協(xié)調(diào)運(yùn)動(dòng)設(shè)備的目標(biāo)點(diǎn)運(yùn)動(dòng)、圓弧運(yùn)動(dòng)、沿路徑移動(dòng);路徑運(yùn)動(dòng)運(yùn)動(dòng)方式和仿真步長(zhǎng)設(shè)定等。
4)路徑
   路徑功能是離線編程的一大特點(diǎn),使得機(jī)器人工具的運(yùn)動(dòng)過(guò)程能可視的記錄下來(lái),以便于用戶的編輯。對(duì)于焊接任務(wù),本文實(shí)現(xiàn)了利用路徑記錄現(xiàn)場(chǎng)信息的功能,包括各路徑點(diǎn)處機(jī)器人輔助軸關(guān)節(jié)角值、機(jī)器人基坐標(biāo)意義下的TCP位姿,焊接參數(shù)等。
5)編程
   本文根據(jù)已有編程語(yǔ)言結(jié)合焊接應(yīng)用,提供了一種弧焊離線編程語(yǔ)言(OLPWL),用戶可利用此語(yǔ)言進(jìn)行離線編程工作。該語(yǔ)言的特點(diǎn)接近實(shí)際弧焊機(jī)器人的編程語(yǔ)言,即方便熟悉機(jī)器人操作的編程人員使用,又可對(duì)編程人員進(jìn)行訓(xùn)練。該模塊為集成編輯、調(diào)試和仿真功能于一體的離線編程器。
6)數(shù)據(jù)轉(zhuǎn)換
   一般離線編程系統(tǒng)提供了同實(shí)際機(jī)器人程序進(jìn)行轉(zhuǎn)換的模塊,即程序轉(zhuǎn)換模塊。但目前由于不同機(jī)器人廠商采用了不同的編程語(yǔ)言,最大的困難在于機(jī)器人運(yùn)動(dòng)數(shù)據(jù)的轉(zhuǎn)換,即運(yùn)動(dòng)路徑點(diǎn)數(shù)據(jù)轉(zhuǎn)換為實(shí)際機(jī)器人程序使用的路徑點(diǎn)(或關(guān)節(jié)角)數(shù)據(jù),由于不同機(jī)器人廠商采用不同的描述方法和存儲(chǔ)格式,可能無(wú)法破譯這部分信息。IGRIP軟件也只提供了同IGM和MotoMan機(jī)器人的直接程序轉(zhuǎn)換。本文提出了一種將運(yùn)動(dòng)路徑點(diǎn)數(shù)據(jù)轉(zhuǎn)換為各機(jī)器人編程人員都易理解的數(shù)據(jù)格式,實(shí)際機(jī)器人程序根據(jù)此數(shù)據(jù)單獨(dú)生成的方法。本文規(guī)定了通用的路徑數(shù)據(jù)描述方法。
7)數(shù)據(jù)上載
   離線編程系統(tǒng)也應(yīng)能根據(jù)示教得到的機(jī)器人程序轉(zhuǎn)變成仿真工作單元中的路徑,同樣基于上述原因,本文提出了數(shù)據(jù)上載功能,將本文規(guī)定的通用的路徑數(shù)據(jù)上載到離線編程系統(tǒng)中,生成路徑。
8)狀態(tài)監(jiān)測(cè)
   該模塊包括了關(guān)節(jié)超限檢查、關(guān)節(jié)運(yùn)動(dòng)速度和加速度超限檢查、碰撞檢測(cè)。以往的離線編程系統(tǒng)通過(guò)預(yù)檢查的方法對(duì)關(guān)節(jié)角是否超限進(jìn)行檢測(cè),這種方法用戶不能形成對(duì)機(jī)器人整條路徑運(yùn)動(dòng)關(guān)節(jié)角變化過(guò)程的直觀感覺(jué)。對(duì)關(guān)節(jié)超限處路徑點(diǎn)位姿調(diào)整沒(méi)有幫助。本文采取了在動(dòng)態(tài)運(yùn)動(dòng)過(guò)程中,監(jiān)測(cè)機(jī)器人狀態(tài)變化的方法。給出提示信息,不終止機(jī)器人的運(yùn)動(dòng)過(guò)程。
9)標(biāo)定
   為了保證圖形工作單元模型與實(shí)際工作單元模型的一致性,需要進(jìn)行實(shí)際工作單元的標(biāo)定工作。
10)輔助模塊
   針對(duì)弧焊的特殊應(yīng)用,本文開(kāi)發(fā)了弧焊參數(shù)數(shù)據(jù)庫(kù)管理功能。

4 結(jié)論

   本文開(kāi)發(fā)了運(yùn)行在SolidWorks平臺(tái)上的廉價(jià)且專業(yè)的弧焊離線編程系統(tǒng)。該系統(tǒng)具有較強(qiáng)的建模能力,解決了以往系統(tǒng)因建模能力不足,只能對(duì)部分簡(jiǎn)單工件提取工件幾何信息的問(wèn)題。采用面向?qū)ο蠹夹g(shù),建立了機(jī)器人弧焊離線編程與仿真系統(tǒng)的對(duì)象模型,開(kāi)發(fā)了功能較全的機(jī)器人弧焊離線編程與仿真系統(tǒng)。
 
 

(轉(zhuǎn)載)

標(biāo)簽:高級(jí)建模 機(jī)器人 弧焊離線 編程系統(tǒng) 開(kāi)發(fā) 我要反饋 
2024世界人工智能大會(huì)專題
即刻點(diǎn)擊并下載ABB資料,好禮贏不停~
優(yōu)傲機(jī)器人下載中心
西克
2024全景工博會(huì)
專題報(bào)道