ABB工業(yè)機(jī)器人應(yīng)用技術(shù) 課件 模塊3 工業(yè)機(jī)器人現(xiàn)場(chǎng)編程_第1頁(yè)
ABB工業(yè)機(jī)器人應(yīng)用技術(shù) 課件 模塊3 工業(yè)機(jī)器人現(xiàn)場(chǎng)編程_第2頁(yè)
ABB工業(yè)機(jī)器人應(yīng)用技術(shù) 課件 模塊3 工業(yè)機(jī)器人現(xiàn)場(chǎng)編程_第3頁(yè)
ABB工業(yè)機(jī)器人應(yīng)用技術(shù) 課件 模塊3 工業(yè)機(jī)器人現(xiàn)場(chǎng)編程_第4頁(yè)
ABB工業(yè)機(jī)器人應(yīng)用技術(shù) 課件 模塊3 工業(yè)機(jī)器人現(xiàn)場(chǎng)編程_第5頁(yè)
已閱讀5頁(yè),還剩270頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第1章ABB機(jī)器人的程序數(shù)據(jù)

1.1程序數(shù)據(jù)程序數(shù)據(jù)是在程序模塊或系統(tǒng)模塊中設(shè)定的值和定義的一些環(huán)境數(shù)據(jù)。創(chuàng)建好的程序數(shù)據(jù)可通過(guò)同一個(gè)模塊或其他模塊中的指令進(jìn)行引用。如圖所示為常用的直線運(yùn)動(dòng)指令,在該行程序中調(diào)用了四個(gè)常用的程序數(shù)據(jù)。程序數(shù)據(jù)詳細(xì)表程序數(shù)據(jù)數(shù)據(jù)類型說(shuō)明程序數(shù)據(jù)數(shù)據(jù)類型p10robtarget機(jī)器人運(yùn)動(dòng)目標(biāo)位置數(shù)據(jù)p10robtargetV150speeddata機(jī)器人運(yùn)動(dòng)速度數(shù)據(jù)V150speeddataZ50zonedata機(jī)器人運(yùn)動(dòng)轉(zhuǎn)彎數(shù)據(jù)Z50zonedataTool0tooldata機(jī)器人工作數(shù)據(jù)TCPTool0tooldata

建立程序數(shù)據(jù)的操作1.2建立程序數(shù)據(jù)的操作在ABB工業(yè)機(jī)器人系統(tǒng)中,可以通過(guò)以下兩種方式建立程序數(shù)據(jù):1)直接在示教器中的程序數(shù)據(jù)界面中建立程序數(shù)據(jù)。2)在建立程序指令時(shí),同時(shí)自動(dòng)生成對(duì)應(yīng)的程序數(shù)據(jù)詳見(jiàn)程序指令。1.2.1建立程序數(shù)據(jù)bool1.在主菜單中單擊“程序數(shù)據(jù)”。2.單擊屏幕右下角“視圖”,打開(kāi)“全部數(shù)據(jù)類型”。3.選擇所要建立的“bool”數(shù)據(jù)類型后,單擊屏幕右下角“顯示數(shù)據(jù)”4.在屏幕下方單擊“新建...”。5.設(shè)定數(shù)據(jù)名稱,參數(shù)。單擊下拉菜單選擇對(duì)應(yīng)的參數(shù)。設(shè)定完成后單擊“確定”。1.2.2建立程序數(shù)據(jù)num1.在主菜單中單擊“程序數(shù)據(jù)”。2.單擊屏幕右下角“視圖”,打開(kāi)“全部數(shù)據(jù)類型”。3.選擇所要建立的“num”數(shù)據(jù)類型后,單擊屏幕右下角“顯示數(shù)據(jù)”。4.在屏幕下方單擊“新建...”5.設(shè)定數(shù)據(jù)名稱,參數(shù)。單擊下拉菜單選擇對(duì)應(yīng)的參數(shù)。設(shè)定完成后單擊“確定”。程序數(shù)據(jù)類型與分類

1.3程序數(shù)據(jù)類型與分類1.3.1程序數(shù)據(jù)類型與分類ABB工業(yè)機(jī)器人的程序數(shù)據(jù)共有76個(gè),程序數(shù)據(jù)可以根據(jù)實(shí)際情況進(jìn)行創(chuàng)建,為ABB工業(yè)機(jī)器人程序設(shè)計(jì)提供了良好的數(shù)據(jù)支撐。數(shù)據(jù)類型可以利用示教器的“程序數(shù)據(jù)”窗口進(jìn)行查看,如圖,用戶可根據(jù)需要進(jìn)行選擇,并創(chuàng)建程序數(shù)據(jù)。1.3.2程序數(shù)據(jù)的存儲(chǔ)類型(1)變量VAR變量型數(shù)據(jù)在程序執(zhí)行的過(guò)程中和停止時(shí)會(huì)保持當(dāng)前的值。一旦程序指針被移到主程序后,當(dāng)前數(shù)值會(huì)丟失。變量型數(shù)據(jù)在程序編輯窗口中的顯示如圖所示。VARnumlengh:=0;名稱為length的數(shù)字?jǐn)?shù)據(jù)。VARstringname:=”Rose”;名稱為name的字符數(shù)據(jù)。VARboolflag:=FALSE;名稱為flag的布爾量數(shù)據(jù)。其中,VIR表示存儲(chǔ)類型為變量,num表示程序數(shù)據(jù)類型。在定義數(shù)據(jù)時(shí),可以定義變量數(shù)據(jù)的初始值。如length的初始值為0,name的初始值為john,flag的初始值為以FALSE。在ABB工業(yè)機(jī)器人執(zhí)行的RAPID程序中也可以對(duì)變量存儲(chǔ)類型程序數(shù)據(jù)進(jìn)行賦值操作,如圖所示。在執(zhí)行程序時(shí),變量數(shù)據(jù)為程序中的賦值,在指針復(fù)位后將恢復(fù)為初值。(2)可變量PERS可變量最大的特點(diǎn)是,無(wú)論程序的指針如何,都會(huì)保持最后賦予的值。可變量型數(shù)據(jù)在程序編輯窗口中的顯示如圖所示。PERSnumabc:=2;名稱為abc的數(shù)字?jǐn)?shù)據(jù)。PERSstringtexe:=”Hi”;名稱為text的字符數(shù)據(jù)。在機(jī)器人執(zhí)行的RAPID程序中也可以對(duì)可變量型數(shù)據(jù)進(jìn)行賦值操作,PERS表示存儲(chǔ)類型為可變量。在程序執(zhí)行以后,賦值的結(jié)果會(huì)一直保持,直到對(duì)其進(jìn)行重新賦值。(3)常量CONST常量在定義時(shí)已被賦予了數(shù)值。存儲(chǔ)類型為常量的程序數(shù)據(jù),不允許在程序中進(jìn)行賦值操作;需要修改時(shí),必須手動(dòng)進(jìn)行修改。常量型數(shù)據(jù)在程序編輯窗口中的顯示如圖所示。CONSTnumgracity:=9.8;名稱為gravity的數(shù)字?jǐn)?shù)據(jù)。CONSTsteinggreeting:=”Hi”;名稱為greeting的字符數(shù)據(jù)。1.3.3常用的程序數(shù)據(jù)程序數(shù)據(jù)說(shuō)明程序數(shù)據(jù)說(shuō)明bool布爾量pos位置數(shù)據(jù)(只有xyz參數(shù))byte整數(shù)數(shù)據(jù)0-255pose坐標(biāo)轉(zhuǎn)換clock計(jì)時(shí)數(shù)據(jù)robjoint機(jī)器人軸角度數(shù)據(jù)dionum數(shù)字輸入/輸出信號(hào)robtarget機(jī)器人與外軸的位置數(shù)據(jù)extjoint外軸位置數(shù)據(jù)speeddata機(jī)器人與外軸的速度數(shù)據(jù)intnum中斷標(biāo)志符string字符串jointtarget關(guān)節(jié)位置數(shù)據(jù)tooldata工具數(shù)據(jù)loaddata負(fù)荷數(shù)據(jù)trapdata中斷數(shù)據(jù)mecunit機(jī)械裝置數(shù)據(jù)wobjdata工件數(shù)據(jù)num數(shù)值數(shù)據(jù)zonedataTCP轉(zhuǎn)彎半徑數(shù)據(jù)oriemt姿態(tài)數(shù)據(jù)

三個(gè)關(guān)鍵程序數(shù)據(jù)的設(shè)定

1.1三個(gè)關(guān)鍵程序數(shù)據(jù)的設(shè)定1.4.1工具數(shù)據(jù)tooldata的設(shè)定工具數(shù)據(jù)tooldata用于描述安裝在機(jī)器人第六軸上的工具的TCP(ToolCenterPoint,工具中心點(diǎn))、質(zhì)量、重心等參數(shù)數(shù)據(jù)。一般不同的機(jī)器人應(yīng)配置不同的工具,如弧焊的機(jī)器人使用弧焊槍作為工具,如圖。而用于搬運(yùn)板材的機(jī)器人就會(huì)使用吸盤(pán)式的夾具作為工具。

默認(rèn)工具中心點(diǎn)位于工業(yè)機(jī)器人法蘭盤(pán)中心。如圖所示為工業(yè)機(jī)器人原始的TCP。工業(yè)機(jī)器人的TCP數(shù)據(jù)設(shè)定方法:1)首先在工業(yè)機(jī)器人工作范圍內(nèi)找一個(gè)非常精確的固定點(diǎn)作為參考點(diǎn)。2)然后在工業(yè)機(jī)器人已安裝的工具上確定一個(gè)參考點(diǎn)(最好是工具的中心點(diǎn))。3)用手動(dòng)操縱工業(yè)機(jī)器人的方法移動(dòng)工具上的參考點(diǎn),以四種以上不同的機(jī)器人姿態(tài)盡可能與固定點(diǎn)剛好碰上。為了獲得更準(zhǔn)確的TCP,使用六點(diǎn)法進(jìn)行操作,第四點(diǎn)是用工具的參考點(diǎn)垂直于固定點(diǎn),第五點(diǎn)是工具參考點(diǎn)從固定點(diǎn)向?qū)⒁O(shè)定為T(mén)CP的X方向移動(dòng).第六點(diǎn)是工具參考點(diǎn)從固定點(diǎn)向?qū)⒁O(shè)定為T(mén)CP的Z方向移動(dòng)。4)機(jī)器人通過(guò)上述各點(diǎn)的位置數(shù)據(jù)計(jì)算求得TCP的數(shù)據(jù),然后TCP的數(shù)據(jù)保存在tooldata這個(gè)程序數(shù)據(jù)中,可被程序調(diào)用。執(zhí)行程序時(shí),工業(yè)機(jī)器人將TCP移至編程位置。如果要更改工具以及工具坐標(biāo),工業(yè)機(jī)器人的移動(dòng)將隨之更改,以便新的TCP到達(dá)目標(biāo)。所有機(jī)器人在手腕處都有一個(gè)預(yù)定義工具坐標(biāo),該坐標(biāo)被稱為tool0??蓪⒁粋€(gè)或多個(gè)新工具坐標(biāo)定義為too10的偏移值。工業(yè)機(jī)器人的tooldata可以通過(guò)三個(gè)方式建立,分別是四點(diǎn)法、五點(diǎn)法、六點(diǎn)法。四點(diǎn)法不改變tool0的坐標(biāo)方向.五點(diǎn)法改變tool0的Z方向,六點(diǎn)法改變tool0的X和Z方向(在焊接方面鹹為常用)。在獲取前三個(gè)點(diǎn)的姿態(tài)位置時(shí).其姿態(tài)位置相差越大,最終獲取的TCP精度越高。下面以四點(diǎn)法為例,介紹tooldata數(shù)據(jù)的建立步驟(業(yè)機(jī)器人的工作模式必須為手動(dòng)模式)。1.在主菜單中單擊“手動(dòng)操縱”。2.在手動(dòng)操縱界面內(nèi),單擊“工具坐標(biāo)”3.單擊右下角“新建...”。4.工具坐標(biāo)數(shù)據(jù)屬性進(jìn)行設(shè)定,然后單擊“確定”5.選中新建的“tool1”,單擊“編輯”菜單中的“定義...”選項(xiàng)。6.選擇“TPC(默認(rèn)方向)”,使用四點(diǎn)法設(shè)定TCP。7.選擇合適的手動(dòng)操縱模式。用操縱桿使工業(yè)機(jī)器人工具參考點(diǎn)靠上固定點(diǎn),作為第一個(gè)點(diǎn)。8.選擇“點(diǎn)1”,單擊“修改位置”將點(diǎn)1位置記錄為當(dāng)前點(diǎn)位置。9.改變工具參考點(diǎn)姿態(tài)靠近固定點(diǎn)。10.工具點(diǎn)位置確定好后,換到工具坐標(biāo)定義界面,單擊“修改位置”,將點(diǎn)2位置記錄下來(lái)。

11.下兩點(diǎn)設(shè)置方式步驟一樣。12.點(diǎn)位置設(shè)置完成后點(diǎn)擊“確定”。13.選中tool1.然后在“編輯”菜單中“更改值”。14.根據(jù)實(shí)際情況設(shè)定工具的質(zhì)量mass(單位為kg)和重心位置數(shù)據(jù)(工具重心基于tool0的偏移值,單位為mm),然后單擊“確定”。15.選中tool1.單擊“確定”。16.動(dòng)作模式選定為“重定位”。坐標(biāo)系統(tǒng)選定為“工具”。工具坐標(biāo)選定為“tool1。17.單擊“確定”,然后進(jìn)行調(diào)試。1.4.2工件坐標(biāo)wobidata的設(shè)定1.在手動(dòng)操縱界面中,選擇“工件坐標(biāo)”(工具坐標(biāo)需要選擇當(dāng)前使用工具的坐標(biāo)系)。2.單擊右下角“新建...”。3.對(duì)工件坐標(biāo)數(shù)據(jù)屬性設(shè)定,然后單擊“確定”。4.在“編輯”菜單中選擇“定義...”。5.將“用戶方法”設(shè)定為“3點(diǎn)”。6.手動(dòng)操縱機(jī)器人的工具參考點(diǎn),靠近定義工件坐標(biāo)的X1點(diǎn)。7.單擊“修改位置”,將X1點(diǎn)記錄下來(lái)。8.手動(dòng)操縱機(jī)器人的工具參考點(diǎn),靠近定義工件坐標(biāo)的X2點(diǎn)。9.單擊“修改位置”,將X2點(diǎn)記錄下來(lái)10.手動(dòng)操縱機(jī)器人的工具參考點(diǎn),靠近定義工件坐標(biāo)的Y1點(diǎn)。11.單擊“修改位置”,將Y2點(diǎn)記錄下來(lái),單擊“確定”。12.對(duì)自動(dòng)生成的工件坐標(biāo)數(shù)據(jù)進(jìn)行確認(rèn),然后單擊“確定”。13.選中“wobj1”后,單擊“確定”。1.4.3有效載荷loaddata的設(shè)定1.在“手動(dòng)操縱”界面中選擇“有效載荷”。2.單擊左下角的“新建...”。3.對(duì)有效載荷數(shù)據(jù)屬性進(jìn)行設(shè)定。單擊“初始值”4.根據(jù)實(shí)際情況對(duì)有效載荷數(shù)據(jù)進(jìn)行設(shè)定。.第二章工業(yè)機(jī)器人的程序編程1.RAPID程序中包含了一連串控制機(jī)器人的指令,執(zhí)行這些指令可以實(shí)現(xiàn)對(duì)ABB二業(yè)機(jī)人的控制。

應(yīng)用程序是使用RPID編程語(yǔ)言的特定詞匯和語(yǔ)法編寫(xiě)而成的。

2.RAPID是一種英文編程語(yǔ)言,所包含的指令可以移動(dòng)機(jī)器人、設(shè)置輸出、讀取輸入,還能實(shí)現(xiàn)決策、重復(fù)其他指令、構(gòu)造程序與系統(tǒng)操作員交流等功能。RAPID程序及指令RAPID程序的基本架構(gòu)表

.程序模塊1程序模塊2…程序模塊n程序數(shù)據(jù)

主程序main程序數(shù)據(jù)…程序數(shù)據(jù)例行程序例行程序…例行程序中斷程序中斷程序…中斷程序功能功能…功能RAPID程序的架構(gòu)說(shuō)明如下:

1.在菜單中單擊“程序編輯器”,建立RAPID程序.1)在菜單中單擊“程序編輯器”,建立RAPID程序

在菜單中單擊“程序編輯器”,建立RAPID程序2.單擊“新建”按鈕,按鈕新建程序或單擊“加載”按鈕加載已有程序。.3.單擊“例行程序”,查看例行程序。4.單擊“后退”或“模塊”查看模.在“模塊”和“例行程序”界面中,單擊“文件”,新建模塊或例行程序。.

2.3常用RAPID程序指令

(1)在主菜單中單擊“程序編輯器”在主菜單中單擊“程序編輯器”。選中要插入的程序位置,單擊“添加指令”選擇需要的指令。單擊“Common”可切換其他分類的指令列表2.3.1賦值指令賦值指令用于對(duì)程序數(shù)據(jù)進(jìn)行賦值,符號(hào)為“:=”,賦值對(duì)象是常M或數(shù)學(xué)表達(dá)式常量賦值:regl:=17;數(shù)學(xué)表達(dá)式賦值:reg2:=regl+8;添加常量賦值指令的操作步驟如下:1.在例行程序中選擇“:=”。2.單擊“更改數(shù)據(jù)類型…”。3.選擇“num”數(shù)據(jù)類型,單擊“確定”4.選中所要賦值的數(shù)據(jù),如reg1。5.選中“<EXP>”,打開(kāi)“編輯”菜單,選擇“僅限選定內(nèi)容”。6.通過(guò)數(shù)字鍵輸入“17”然后確定。7.然后再點(diǎn)擊“確定”。8.最終顯示為。帶數(shù)字表達(dá)式的賦值指令操作1.在指令表中選擇“:=”。2.選中所要賦值的數(shù)據(jù),如reg2。3.選中“<EXP>”和“reg1”。4.單擊“+”按鈕。5.選中“<EXP>”,打開(kāi)“編輯”菜單,選擇“僅限選定內(nèi)容”。6.確認(rèn)數(shù)據(jù)正確后,單擊確定。7.單擊“下方”按鈕,添加指令成功。2.3.2機(jī)器人運(yùn)動(dòng)指令工業(yè)機(jī)器人在空間中主要有關(guān)節(jié)運(yùn)動(dòng)(MoveJ),線性運(yùn)動(dòng)(MoveL),圓弧運(yùn)動(dòng)(MoveC)和絕對(duì)位置運(yùn)動(dòng)(MoveAbsJ)四種方式。1.絕對(duì)位置運(yùn)動(dòng)指令:其使用六個(gè)內(nèi)軸和外軸的角度值來(lái)定義機(jī)器人的目標(biāo)位置數(shù)據(jù)。添加絕對(duì)位置運(yùn)動(dòng)指令操作步驟如下:1.進(jìn)入“手動(dòng)操縱”界面,確認(rèn)已選定的工具坐標(biāo)與工件坐標(biāo)(在添加或修改機(jī)器人的運(yùn)動(dòng)指令之前,一定要確認(rèn)所使用的工具坐標(biāo)與工件坐標(biāo))2.進(jìn)入程序編輯器,選中添加指令位置。3.打開(kāi)“添加指令”菜單,選擇“MoveAbsJ”指令。4.選擇“*”并單擊。5.單擊“新建”按鈕,為選中的標(biāo)點(diǎn)命名后,單擊“確定”6.單擊“新建”按鈕,為選中的標(biāo)點(diǎn)命名后,單擊“確定”。.7.單擊“調(diào)試”按鈕,選擇“查看值”8.根據(jù)實(shí)際情況,設(shè)定工業(yè)機(jī)器人各軸的數(shù)據(jù)后點(diǎn)擊“確定”。9.選中“MoveAbsJ”這一行程序,點(diǎn)擊“調(diào)試”中“PP移至光標(biāo)”運(yùn)行程序2.關(guān)節(jié)運(yùn)動(dòng)指令關(guān)節(jié)運(yùn)動(dòng)指令用于在對(duì)路徑精度要求不高的情況下,定義工業(yè)機(jī)器人的TCP 點(diǎn)從一個(gè)位置移動(dòng)到另一個(gè)位置的運(yùn)動(dòng),兩個(gè)位置之間的路徑不一定是直線。1.進(jìn)入程序編輯器,選中添加指令位置。2.選擇“*”并單擊.3.單擊“新建”按鈕,為選中的標(biāo)點(diǎn)命名后,單擊“確定”。.4.選中“MoveJ”這一行程序,點(diǎn)擊“調(diào)試”中“PP移至光標(biāo)”運(yùn)行程序。..線性運(yùn)動(dòng)指令先行運(yùn)動(dòng)是機(jī)器人的TCP從起點(diǎn)到終點(diǎn)之間的路徑始終保持為直線。一般在焊接,涂膠等對(duì)路徑要求較高的場(chǎng)合常使用線性運(yùn)動(dòng)指令MoneL。1.進(jìn)入程序編輯器,選中添加指令位置。2.選擇“*”并單擊。單擊“新建”按鈕,為選中的標(biāo)點(diǎn)命名后,單擊“確定”。.4.選中“MoveL”這一行程序,點(diǎn)擊“調(diào)試”中“PP移至光標(biāo)”運(yùn)行程序。.4.圓弧運(yùn)動(dòng)指令圓弧運(yùn)動(dòng)指令在機(jī)器人可達(dá)的控制范圍內(nèi)定義三個(gè)點(diǎn),第一個(gè)點(diǎn)是圓弧的起點(diǎn),第二個(gè)點(diǎn)用于定義圓弧的曲率,第三個(gè)點(diǎn)是圓弧的終點(diǎn)。進(jìn)入程序編輯器,選中添加指令位置。3.選擇“*”并單擊。3.單擊“新建”按鈕,為選中的標(biāo)點(diǎn)命名后,單擊“確定”。選中“MoveJ”這一行程序,點(diǎn)擊“調(diào)試”中“PP移至光標(biāo)”運(yùn)行程序。2.3.3I/O控制指令.I/O控制指令用于控制I/O信號(hào),以達(dá)到與機(jī)器人周邊設(shè)備進(jìn)行通信的目的。

1.Set數(shù)字信號(hào)置位指令

Set數(shù)字信號(hào)置位指令用于將數(shù)字輸出(DigitalOutput)置位為“1”。例如,do1為數(shù)字輸信號(hào),相應(yīng)指令格式為

Setdo1;

..2.Reset數(shù)字信號(hào)復(fù)位指令Reset數(shù)字信號(hào)復(fù)位指令用于將數(shù)字輸出(DigitalOutput)置位為“0”。如果在Set,Reset指令前有運(yùn)動(dòng)指令MoveJ、MoveL、MoveC、MoveAbsJ的轉(zhuǎn)彎區(qū)數(shù)據(jù),必須使用fine才可以準(zhǔn)確地輸出I/O信號(hào)狀態(tài)的變化。指令格式為Resetdo1;.3.WaitDI數(shù)字輸入信號(hào)判斷指令WaitDI數(shù)字輸入信號(hào)判斷指令用于判斷數(shù)字輸人信號(hào)的值是否與目標(biāo)一致。例如,di1為數(shù)字輸人信號(hào),相應(yīng)指令格式為WaitDIdi1,1;執(zhí)行此指令時(shí),等待di1的值為1。如果di1為1,則程序繼續(xù)往下執(zhí)行;如果到達(dá)最大等待時(shí)間(如300s,此時(shí)間可根據(jù)實(shí)際進(jìn)行設(shè)定)以后,di1的值還不為1,則機(jī)器人報(bào)警或進(jìn)入出錯(cuò)處理程序。.4.WaitDO數(shù)字輸出信號(hào)判斷指令WaitDO數(shù)字輸出信號(hào)判斷指令用于判斷數(shù)字輸出信號(hào)的值是否與目標(biāo)一致。指令格式為WaitDOdOl,1;執(zhí)行此指令時(shí),等待do1的值為1。如果doI為1,則程序繼續(xù)往下執(zhí)行;如果到達(dá)最大等待時(shí)間(如300S,此時(shí)間可根據(jù)實(shí)際進(jìn)行設(shè)定)以后,dol的值還不為,則機(jī)器人報(bào)警或進(jìn)入出錯(cuò)處理程序。5.WaitUntil信號(hào)判斷指令WaitUntil信號(hào)判斷指令可用于布爾量、數(shù)字量和I/O信號(hào)值的判斷。如果條件到達(dá)指令中的設(shè)定值,程序繼續(xù)往下執(zhí)行;否則就一直等待,除非設(shè)定了最大等待時(shí)間。例如flag1為布爾量型數(shù)據(jù),numl為數(shù)字型數(shù)據(jù),相應(yīng)指令格式為WaitUntildi1=1;WaitUntildOl=0;WaitUntilflag=TURE;WaitUntilnum1=8;.2.3.4條件邏輯判斷指令條件邏輯判斷指令用于對(duì)條件進(jìn)行判斷后,執(zhí)行相應(yīng)的操作。該指令是RAPID程序中的重要組成部分。1.CompactIF緊湊型條件判斷指令CompactIF緊湊型條件判斷指令用于當(dāng)一個(gè)條件滿足了以后,就執(zhí)行一句指令。指令格式IFflag=TRUESetdol;如果flag1的狀態(tài)為T(mén)RUE,則do11被置位為1。2.IF條件判斷指令I(lǐng)F條件判斷指令用于根據(jù)不同的條件執(zhí)行不同的指令。示例程序如下IFnum1=1THENFlag:=TURE;ELSEIFnum1=2THENFlag1:=FALSE;ELSESetdo1;ENDIF.指令解析:如果num為l,則flagl會(huì)賦值為T(mén)RUE。如果numl為2,則flag會(huì)賦值為FALSE。除了以上兩種條件之外,則執(zhí)行dol置位為l。判定的條件數(shù)量可以根據(jù)實(shí)際情況進(jìn)行增加與減少。3.FOR重復(fù)執(zhí)行判斷指令FOR重復(fù)執(zhí)行判斷指令適用于一個(gè)或多個(gè)指令需要重復(fù)執(zhí)行數(shù)次的情況。示例程序如下:FORiFROM1TO6DORoutinelENDFOR例行程序Routinetl將重復(fù)執(zhí)行6次。4.WHILE條件判斷指令WHILE條件判斷指令用于在給定條件滿足的情況下,一直重復(fù)執(zhí)行對(duì)應(yīng)的指令。示例程序如下WHlLEnum1>num2DOnum1:=num1-1ENDWHILE在nun1>num2條件滿足的情況下,一直執(zhí)行num1:=num1-1的操作。其他常用指令1.ProcCall調(diào)用例行程序指令通過(guò)使用此指令可在指定的位置調(diào)用例行程序,見(jiàn)表。1.選中“<SMT>”為要調(diào)用的例行程序,添加指令的列表中選擇“ProcCall”指令。.2.選中需要調(diào)用的例行程序Routine1,然后單擊“確定”3.調(diào)用結(jié)果如下。2.RETURN返回例行程序指令RETURN為返回例行程序指令,當(dāng)此指令被執(zhí)行時(shí),則馬上結(jié)束本例行程序的執(zhí)行,程序指針將返問(wèn)到調(diào)用此例行程序的位置、示例程序如下:.PROCRoutine1()MoveLp10,v200.tool1\Wobj:=wobj1;Routine2;Setdo1PROCRoutine2()IFdi1=1THENRETUREELSEStop;ENDIFENDPROC.當(dāng)di1=l時(shí),執(zhí)行RETURE指令,程序指針?lè)祷氐秸{(diào)用Routine2的位置并繼續(xù)向下執(zhí)行Setdo1這個(gè)指令3.WatTime時(shí)間等待指令WaitTime時(shí)間等待指令用于程序在等待一個(gè)指定的時(shí)間以后,再繼續(xù)向下執(zhí)行。示例程序如下:WaitTime4;Resetdo1;等待4s后.程序向下執(zhí)行Resetdo1指令2.3.6定義模擬輸出信號(hào)aol在此輸入您的封面副標(biāo)題..參數(shù)名稱設(shè)定值說(shuō)明Nameao1設(shè)定模擬輸出信號(hào)的名字TypeofSignalAnalogOutput設(shè)定信號(hào)的類型AssignedtoUnitboard10設(shè)定信號(hào)所在的IO模塊UnitMapping0-15設(shè)定信號(hào)所占用的地址AnalogEncodingTypeUnsigned設(shè)定模擬信號(hào)屬性MaximumLogicalValue10設(shè)定最大邏輯值MaximumPhysicalValue10設(shè)定最大物理值(V)MaximumBitValue65535設(shè)定最大位值.具體步驟如下:在“控制面板”-“配置-I/OSystem”畫(huà)面中,雙擊“Signal”。單擊“添加”。對(duì)于不同類型的信號(hào),對(duì)信號(hào)的參數(shù)進(jìn)行填寫(xiě),填寫(xiě)完成后,點(diǎn)擊“確定”,重啟后完成設(shè)定。2.4建立一個(gè)可以運(yùn)行的基本RAPID程序在此輸入您的封面副標(biāo)題2.4.1建立RAPID程序?qū)嵗?.確定工作要求。機(jī)器人空閑時(shí),在位置點(diǎn)pHome等待。當(dāng)外部信號(hào)di1輸入為1時(shí),機(jī)器人沿著物體的一條邊從p10點(diǎn)到p20點(diǎn)走一條直線,結(jié)束以后回到pHome點(diǎn)。2.在ABB主菜單中,選擇“程序編輯器”。3.如果系統(tǒng)中不存在程序,會(huì)出現(xiàn)左圖所示對(duì)話框。單擊“取消”按鈕。4.打開(kāi)“文件”菜單,選擇“新建模塊…”。本例比較簡(jiǎn)單,所以只需新建一個(gè)程序模塊就足夠了。5.單擊“是”按鈕。6.定義程序模塊的名稱,然后單擊“確定”

程序模塊的名稱可以根據(jù)需要自行定義,以方便管理。7.選“Module1”,

單擊“顯示模塊”。8.單擊“例行程序”。9.打開(kāi)“文件”菜單,單擊“新建例行程序…”。10.首先建立一個(gè)主程序main,然后單擊“確定”,根據(jù)第9、10步建立相關(guān)的例行程序。rHome程序用于機(jī)器人回等待位。rlnitAll程序用于初始化。rMoveRoutine程序用于存放直線運(yùn)動(dòng)路徑。11.選擇“rHome”,然后單擊“顯示例行程序”。12.切換到“手動(dòng)操縱”界面內(nèi),確認(rèn)已選中要使用的工具坐標(biāo)與工件坐標(biāo)。13.回到程序編輯器,單擊“添加指令”,打開(kāi)指令列表。選中“<SMT>”為插入指令的位置,在指令列表中選擇“MoveJ”。14.雙擊“*”號(hào),進(jìn)入指令參數(shù)修改界面。15.通過(guò)新建或選擇對(duì)應(yīng)的參數(shù)數(shù)據(jù),設(shè)定為左圖所示的值。16.選擇合適的動(dòng)作模式,使用操縱桿將機(jī)器人運(yùn)動(dòng)到左圖所示的位置,作為機(jī)器人的空閑等待點(diǎn)。17.選中"pHome"目標(biāo)點(diǎn),單擊“修改位置”,將機(jī)器人的當(dāng)前位置數(shù)據(jù)記錄下來(lái)。18.單擊“例行程序”標(biāo)簽。選中"rlnitAll"例行程序。19.在此例行程序中,加入在程序正式運(yùn)行前,需要做初始化的內(nèi)容,如速度限定、夾具復(fù)位等,具體根據(jù)實(shí)際需要添加。這里,在例行程序rlnitAll中增加了兩條速度控制指令(在添加指令列表的Setting類別中),并調(diào)用了回等待位的例行程序rHome。20.單擊“例行程序”,選擇"rMoveRoutine"例行程序,然后單擊“顯示例行程序”。21.添加MoveJ指令,并將參數(shù)設(shè)定為如左圖所示。22.選擇合適的動(dòng)作模式,使用操縱桿將機(jī)器人運(yùn)動(dòng)到左圖所示的位置,作為機(jī)器人的p10點(diǎn)。

23.選中"p10”點(diǎn),單擊“修改位置”,將機(jī)器人的當(dāng)前位置記錄到p10中。24.添加Movel指令,并將參數(shù)設(shè)置為如左圖所示。.25.選擇合適的動(dòng)作模式,使用操縱桿將機(jī)器人運(yùn)動(dòng)到左圖所示的位置,作為機(jī)器人的p20點(diǎn)。26.選中“p20”點(diǎn),單擊“修改位置”,將機(jī)器人的當(dāng)前位重記錄到p20中。單擊“例行程序”。27.選中“main”主程序,進(jìn)行程序執(zhí)行主體架構(gòu)的設(shè)定。28.選擇“ProcCall”指令調(diào)用初始化例行程序。29.添加“WHILE”指令,條件設(shè)定為“true”。30.添加"IF”指令到左圖所示位置。使用WHILE指令構(gòu)建一個(gè)死循環(huán)的目的在于將初始化程序與正常運(yùn)行的路徑程序隔離開(kāi)。初始化程序只在一開(kāi)始時(shí)執(zhí)行一次,然后就根據(jù)條件循環(huán)執(zhí)行路徑運(yùn)動(dòng)。31.打開(kāi)“調(diào)試”菜單。單擊“檢查程序”,對(duì)程序的語(yǔ)法進(jìn)行檢查。32.單擊“確定”按鈕,完成程序檢查。如果有錯(cuò),系統(tǒng)會(huì)提示出錯(cuò)的具體位置與操作建議。2.4.3RAPID程序自動(dòng)運(yùn)行的操作.1.將狀態(tài)鑰匙旋至左側(cè)的自動(dòng)狀態(tài)。

單擊“確定”按鈕,確認(rèn)狀態(tài)的切換。..2.單擊“PP移至Main”,將程序指針向主程序的第一句指令。3.單擊“是”按鈕4.按下“通電/復(fù)位”按鈕,開(kāi)啟電機(jī)。按下程序啟動(dòng)按鈕。5.觀察程序自動(dòng)運(yùn)行過(guò)程。6.單擊快捷菜單按鈕單擊速度按鈕(第五個(gè)),可以在此設(shè)定機(jī)器人的運(yùn)動(dòng)速度。2.4.4RAPID程序模塊的保存.1.進(jìn)入程序編輯器,單擊“模塊”。選中需要保存的程序模塊。2.打開(kāi)“文件”菜單,選擇“另存模塊為…”,將程序模塊保存到機(jī)器人的硬盤(pán)或U盤(pán)中?!皠h除模塊…”用于將模塊從程序運(yùn)行內(nèi)存中關(guān)閉。3.選擇指定的文件夾后單擊“確定”。2.5功能的使用介紹..ABB機(jī)器人RAPID編程中的功能(FUNCTION)相似于指令并且在執(zhí)行完了以后可以返回一個(gè)數(shù)值。使用功能可以有效地提高編程和程序執(zhí)行的效率。1、功能簡(jiǎn)介(1)功能Abs作用:Abs求絕對(duì)值,即數(shù)值數(shù)據(jù)的正值。實(shí)例:reg1:=Abs(reg5);功能“Abs”是對(duì)操作數(shù)reg5進(jìn)行取絕對(duì)值的操作,然后將其結(jié)果賦值予reg1。(2)功能Offs作用:Offs用于在物體坐標(biāo)系中向機(jī)器人位置添加偏移量。實(shí)例:p20:=offs(p10,100,200,300);功能“Offs”的作用是基于位置目標(biāo)點(diǎn)p10在X方向偏移100mm,Y方向偏移200mm,Z方向偏移300mm。.、添加功能Abs、Offs的操作方法(1)功能AbsA、打開(kāi)RobotStudio軟件,新建程序,點(diǎn)擊添加指令,選擇賦值指令,如上圖所示。B、點(diǎn)擊更改數(shù)據(jù)類型,選擇“num”數(shù)據(jù)類型,再選擇“reg1”,如上圖所示。C、點(diǎn)擊等號(hào)右方<EXP>,點(diǎn)擊功能,再點(diǎn)擊Abs(),如上圖所示。D、點(diǎn)擊更改數(shù)據(jù)類型,選擇“num”數(shù)據(jù)類型,再選擇“reg5”,最后點(diǎn)擊確定完成操作,如上圖所示。(2)功能OffsA、點(diǎn)擊添加指令,選擇賦值指令,如上圖所示B、點(diǎn)擊更改數(shù)據(jù)類型,選擇“robtarget”數(shù)據(jù)類型,再選擇變量點(diǎn)位“p20”,最后點(diǎn)擊確定完成操作,如上圖所示。C、點(diǎn)擊等號(hào)右方<EXP>,點(diǎn)擊功能,再點(diǎn)擊Offs(),如上圖所示。D、8為目標(biāo)點(diǎn)位,9為X軸偏移量,10為Y軸偏移量,11為Z軸偏移量。E、首先選擇目標(biāo)點(diǎn)位p10,再點(diǎn)擊編輯,接著點(diǎn)擊僅限選定內(nèi)容,修改X軸的偏移量,然后依次修改Y、Z軸的偏移量,最后點(diǎn)擊確定完成操作。2.6RAPID程序指令與功能ABB機(jī)器人提供了豐富的RAPID程序指令,方便了大家對(duì)程序的編制,同時(shí)也為復(fù)雜應(yīng)用的實(shí)現(xiàn)提供了可能。以下就按照RAPID程序指令、功能的用途進(jìn)行了一個(gè)詳細(xì)的分類,并對(duì)各個(gè)指令的功能作一個(gè)說(shuō)明。2.6.1程序執(zhí)行的控制表2-11、程序的調(diào)用,詳見(jiàn)表2-1。指令說(shuō)明ProcCall調(diào)用例行程序CallByVar通過(guò)帶變量的例行程序名稱調(diào)用例行程序RETURN返回原例行程序2、例行程序內(nèi)的邏輯控制,詳見(jiàn)表2-2。表2-2指令說(shuō)明CompactIF若果條件滿足,就執(zhí)行一條指令I(lǐng)F當(dāng)滿足不同條件時(shí),執(zhí)行對(duì)應(yīng)程序FOR根據(jù)指定的次數(shù),重復(fù)執(zhí)行對(duì)應(yīng)程序WHILE如果條件滿足,重復(fù)執(zhí)行對(duì)應(yīng)程序TEST對(duì)一個(gè)變量進(jìn)行判斷,從而執(zhí)行不同的程序GOTO跳轉(zhuǎn)到例行程序內(nèi)標(biāo)簽的位置Label跳轉(zhuǎn)標(biāo)簽3、停止程序執(zhí)行,詳見(jiàn)表2-3.表2-3指令說(shuō)明Stop停止程序執(zhí)行EXIT停止程序執(zhí)行并禁止在停止處再開(kāi)始執(zhí)行Break臨時(shí)停止程序的執(zhí)行,用于手動(dòng)調(diào)試SystemStopAction停止程序執(zhí)行與機(jī)器人運(yùn)動(dòng)ExitCycle中止當(dāng)前程序的運(yùn)行并將程序指針PP復(fù)位到主程序第一條指令。如果選擇了程序連續(xù)運(yùn)行模式,程序?qū)闹鞒绦虻谝痪渲匦聢?zhí)行2.6.2變量指令.變量指令主要用于以下的方面:1)對(duì)數(shù)值進(jìn)行賦值。2)等待指令。3)注釋指令。程序模塊控制指令1、賦值指令,詳見(jiàn)表2-4。.表2-4指令說(shuō)明:=對(duì)程序數(shù)據(jù)進(jìn)行賦值2、等待指令,詳見(jiàn)表2-5。表2-5指令說(shuō)明WaitTime等待一個(gè)指定時(shí)間,程序再繼續(xù)執(zhí)行WaitUntil等待一個(gè)條件滿足后,程序再繼續(xù)執(zhí)行WaitDI等待一個(gè)輸入信號(hào)狀態(tài)為設(shè)定值,程序再繼續(xù)執(zhí)行WaitDO等待一個(gè)輸出信號(hào)狀態(tài)為設(shè)定值,程序再繼續(xù)執(zhí)行3、程序注釋,詳見(jiàn)表2-6。表2-6指令說(shuō)明Comment對(duì)程序進(jìn)行注釋4、程序模塊加載,詳見(jiàn)表2-7。表2-7指令說(shuō)明Load從機(jī)器人硬盤(pán)加載一個(gè)程序模塊到運(yùn)行內(nèi)存UnLoad從運(yùn)行內(nèi)存中卸載一個(gè)程序模塊StartLoad在程序執(zhí)行的過(guò)程中,加載一個(gè)程序到運(yùn)行內(nèi)存中WaitLoad當(dāng)StartLoad使用后,使用此指令將程序模塊連接到任務(wù)中使用CancelLoad取消加載程序模塊CheckProgRef檢察程序引用Save保存程序模塊EraseModule從運(yùn)行內(nèi)存刪除程序模塊5、變量功能,詳見(jiàn)表2-8,表2-9。

表2-8,2-9指令說(shuō)明TryInt判斷數(shù)據(jù)是否是有效整數(shù)功能說(shuō)明OpMode讀取當(dāng)前機(jī)器人操作模式RunMode讀取當(dāng)前機(jī)器人程序運(yùn)行模式NonMotionMode讀取程序任務(wù)當(dāng)前是否無(wú)運(yùn)動(dòng)的執(zhí)行模式Dim獲取一個(gè)數(shù)組的維數(shù)Present讀取帶參數(shù)例行程序的可選參數(shù)值IsPers判斷一個(gè)參數(shù)是否為可變量IsVar判斷一個(gè)參數(shù)是否為變量6、轉(zhuǎn)換功能,詳見(jiàn)表2-10。表2-10指令說(shuō)明StrToByte將字符串轉(zhuǎn)換為指定格式的字節(jié)數(shù)據(jù)ByteToStr將字節(jié)數(shù)據(jù)裝換為字符串2.6.3運(yùn)動(dòng)設(shè)定1、速度設(shè)定,詳見(jiàn)表2-11,2-12。表2-11功能說(shuō)明MaxRobSpeed獲取當(dāng)前型號(hào)機(jī)器人可實(shí)現(xiàn)的最大TCP速度

表2-12.指令說(shuō)明VelSet設(shè)定最大的速度與倍率SpeedRefresh更新當(dāng)前運(yùn)動(dòng)的速度與倍率AccSet定義機(jī)器人的加速度WorldAccLim設(shè)定大地坐標(biāo)中工具與載荷的加速度PathAccLim設(shè)定運(yùn)動(dòng)路徑中TCP的加速度2、軸配置管理,詳見(jiàn)表2-13。表2-13指令說(shuō)明ConfJ關(guān)節(jié)運(yùn)動(dòng)的軸配置控制ConfL線性運(yùn)動(dòng)的軸配置控制3、奇異點(diǎn)的管理,詳見(jiàn)表2-14。表2-14指令說(shuō)明SingArea設(shè)定機(jī)器人運(yùn)動(dòng)時(shí),在奇異點(diǎn)的插補(bǔ)方式4、位置偏職功能,詳見(jiàn)表2-14。表2-14指令說(shuō)明PDispOn激活位置偏置PDispSet激活指定數(shù)值的位置偏置PDispOff關(guān)閉位置偏置EOffsOn激活外軸偏置EOffsSey激活指定數(shù)值的外軸偏置EOffsOff關(guān)閉外軸偏置5、軟伺服功能,詳見(jiàn)表2-17表2-17指令說(shuō)明SoftAct激活一個(gè)或多個(gè)軸的軟伺服功能SoftDeact關(guān)閉軟伺服功能6、機(jī)器人參數(shù)調(diào)整功能,詳見(jiàn)表2-18表2-18指令說(shuō)明TuneServo伺服調(diào)整TuneReset伺服調(diào)整復(fù)位PathReset幾何路徑精度調(diào)整CirPathMode圓弧插補(bǔ)運(yùn)動(dòng)時(shí),工具姿態(tài)的變換方式

7、空間監(jiān)控管理,詳見(jiàn)表2-19。表2-19指令說(shuō)明WZBBoxDef定義一個(gè)方形監(jiān)控空間WZCyIDef定義一個(gè)圓柱形監(jiān)控空間WZSphDef定義一個(gè)球形監(jiān)控空間WZHomeJointDef定義一個(gè)關(guān)節(jié)軸坐標(biāo)監(jiān)控空間WZLimJointDef定義一個(gè)限定為不可進(jìn)入的關(guān)節(jié)軸坐標(biāo)監(jiān)控空間WZLimSup激活一個(gè)監(jiān)控空間并限定為不可進(jìn)入WZDOSet激活一個(gè)監(jiān)控空間并與一個(gè)輸出信號(hào)關(guān)聯(lián)WZEnable激活一個(gè)臨時(shí)監(jiān)控空間WZFree關(guān)閉一個(gè)臨時(shí)監(jiān)控空間注:這些功能需要選項(xiàng)“Worldzones”配合。2.6.4運(yùn)動(dòng)控制、機(jī)器人運(yùn)動(dòng)控制,詳見(jiàn)表2-20。表2-20指令說(shuō)明MoveCTCP圓弧運(yùn)動(dòng)MoveJ關(guān)節(jié)運(yùn)動(dòng)MoveLTCP線性運(yùn)動(dòng)MoveAbsJ軸絕對(duì)角度位置運(yùn)動(dòng)MoveExtJ外部直線軸和旋轉(zhuǎn)軸運(yùn)動(dòng)MoveCDOTCP圓弧運(yùn)動(dòng)的同時(shí)觸發(fā)一個(gè)輸出信號(hào)MoveJDO關(guān)節(jié)運(yùn)動(dòng)的同時(shí)觸發(fā)一個(gè)輸出信號(hào)MoveLDOTCP線性運(yùn)動(dòng)的同時(shí)觸發(fā)一個(gè)輸出信號(hào)MoveCSyncTCP圓弧運(yùn)動(dòng)的同時(shí)執(zhí)行一個(gè)例行程序MoveJync關(guān)節(jié)運(yùn)動(dòng)的同時(shí)執(zhí)行一個(gè)例行程序MoveLSyncTCP線性運(yùn)動(dòng)的同時(shí)執(zhí)行一個(gè)例行程序2、搜索功能,詳見(jiàn)表2-21表2-21指令說(shuō)明SearchCTCP圓弧搜索運(yùn)動(dòng)SearchLTCP線性搜索運(yùn)動(dòng)SearchExtJ外軸搜索運(yùn)動(dòng)

3、指定位置觸發(fā)信號(hào)與中斷功能,詳見(jiàn)表2-22表2-22指令說(shuō)明-TriggIO定義觸發(fā)條件在一個(gè)指定的位置觸發(fā)輸出信號(hào)TriggInt定義觸發(fā)條件在一個(gè)指定的位置觸發(fā)中斷程序TriggCheckIO定義一個(gè)指定的位置進(jìn)行I/O狀態(tài)的檢查T(mén)riggEquip定義觸發(fā)條件在一個(gè)指定的位置觸發(fā)輸出信號(hào),并對(duì)信號(hào)相應(yīng)的延遲進(jìn)行補(bǔ)償設(shè)定TriggRampAO定義觸發(fā)條件在一個(gè)指定的位置觸發(fā)模擬輸出信號(hào),并對(duì)信號(hào)相應(yīng)的延遲進(jìn)行補(bǔ)償設(shè)定TriggC帶出發(fā)事件的圓弧運(yùn)動(dòng)..TriggJ帶觸發(fā)事件的關(guān)節(jié)運(yùn)動(dòng)TriggL帶觸發(fā)事件的圓弧運(yùn)動(dòng)TriggLIOs在一個(gè)指定位置觸發(fā)輸出信號(hào)的線性運(yùn)動(dòng)StepBwdPath在RESTART的事件程序中進(jìn)行路徑的返回TriggStopProc在系統(tǒng)中創(chuàng)建一個(gè)監(jiān)控處理,用于在STOP和QSTOP中需要信號(hào)復(fù)位和程序數(shù)據(jù)復(fù)位的操作TriggSpeed定義模擬信號(hào)與實(shí)際TCP速度之間的配合4、出錯(cuò)或中斷時(shí)的運(yùn)動(dòng)控制,詳見(jiàn)表2-23,表5-24表2-231這些功能需要“Pathrecovery”配合指令說(shuō)明StopMove停止機(jī)器人運(yùn)動(dòng)StartMove重新啟動(dòng)機(jī)器人運(yùn)動(dòng)StartMoveRetry重啟機(jī)器人運(yùn)動(dòng)及相關(guān)參數(shù)設(shè)定StopMoveReset對(duì)停止運(yùn)動(dòng)狀態(tài)復(fù)位,但不重啟機(jī)器人運(yùn)動(dòng)StorePath1儲(chǔ)存已生成的最近路徑RestoPath1重生成之前儲(chǔ)存的路徑ClearPath在當(dāng)前路徑的運(yùn)動(dòng)級(jí)別中,清空整個(gè)運(yùn)動(dòng)路徑PathLevel獲取當(dāng)前路徑級(jí)別SyncMoveSuspend1在StorePath的路徑級(jí)別中暫停同步坐標(biāo)的運(yùn)動(dòng)SyncMoveResume1在StorePath的路徑級(jí)別中重返同步坐標(biāo)的運(yùn)動(dòng).表2-24功能說(shuō)明IsStopMoveAct獲取當(dāng)前停止運(yùn)動(dòng)標(biāo)識(shí)符5、外軸的控制,表2-25,表2-26。表2-25表2-26指令說(shuō)明DeactUnit關(guān)閉一個(gè)外軸單元ActUnit激活一個(gè)外軸單元MechUnitLoad定義外軸單元的有效載荷功能說(shuō)明GetNextMechUnit檢索外住單元在機(jī)器人系統(tǒng)里的名字IsMechUnitActive檢查一個(gè)外軸單元是關(guān)閉/激活6、獨(dú)立軸控制,詳見(jiàn)表2-27,2-28。表2-27注:這些功能需要選項(xiàng)“Independentmovement”配合。指令說(shuō)明IndAMove將一個(gè)軸設(shè)定為獨(dú)立模式并進(jìn)行絕對(duì)位置方式運(yùn)動(dòng)IndCMove將一個(gè)軸設(shè)定為獨(dú)立模式并進(jìn)行連續(xù)方式運(yùn)動(dòng)IndDMove將一個(gè)軸設(shè)定為獨(dú)立模式并進(jìn)行角度方式運(yùn)動(dòng)IndRMove將一個(gè)軸設(shè)定為獨(dú)立模式并進(jìn)行相對(duì)位置方式運(yùn)動(dòng)IndReset取消獨(dú)立軸模式.表2-28注:這些功能需要選項(xiàng)“Independentmovement”配合。功能說(shuō)明IndInpos檢查獨(dú)立軸是否已到達(dá)指定位置IndSpeed檢查獨(dú)立軸是否已到達(dá)指定速度7、路徑修正功能,詳見(jiàn)表2-29。表2-29注:這些功能需要選項(xiàng)“PathoffsetorRobotWare-Actsensor”配合。指令說(shuō)明CorrCon連接一個(gè)路徑修正生成器CorrWrite將路徑坐標(biāo)系統(tǒng)中的修正值寫(xiě)到修正生成器CorrDiscon斷開(kāi)一個(gè)已連接的路徑修正生成器CorrClear取消所有已連接的路徑修正生成器.表2-30注:這些功能需要選項(xiàng)“PathoffsetorRobotWare-Actsensor”配合。功能說(shuō)明CorrRead讀取所有已連接的路徑修正生成器的總修正值8、路徑記錄功能,詳見(jiàn)表2-31,2-32表2-31注:這些功能需要選項(xiàng)“Pathrecovery”配合。指令說(shuō)明PathRecStart開(kāi)始記錄機(jī)器人路徑PathRecStop停止記錄機(jī)器人路徑PathRecMoveBwd機(jī)器人根據(jù)記錄的路徑作后退運(yùn)動(dòng)PathRecMoveFwd機(jī)器人運(yùn)動(dòng)到執(zhí)行PathRecMoveBwd這個(gè)指令的位置上.表2-32注:這些功能需要選項(xiàng)“Pathrecovery”配合功能說(shuō)明PathRecValidBwd檢查是否已激活路徑記錄和是否有可后退路徑PathRecValidFwd檢查是否有可向前記錄路徑9、輸送鏈跟蹤功能,詳見(jiàn)表2-33表2-33注:這些功能需要選項(xiàng)“Conveyortyackting”配合指令說(shuō)明WaitWObj等待輸送鏈上的工件坐標(biāo)DropWObj放棄輸送鏈上的工件坐標(biāo)10、傳感器同步功能,詳見(jiàn)表2-34。表2-34注:這些功能需要選項(xiàng)“Sensorsynchronization”配合。指令說(shuō)明WaitSensor將一個(gè)在開(kāi)始窗口的對(duì)象與傳感器設(shè)備關(guān)聯(lián)起來(lái)SyncToSensor開(kāi)始/停止機(jī)器人與傳感器設(shè)備的運(yùn)動(dòng)同步DropSensor斷開(kāi)當(dāng)前對(duì)象的連接11、有效載荷與碰撞檢測(cè),詳見(jiàn)表2-35。表2-35此功能需要選項(xiàng)“Collisiondetection”指令說(shuō)明MotionSup1激活/關(guān)閉運(yùn)動(dòng)監(jiān)控LoadID工具或有效載荷的識(shí)別ManLoadID外軸有效載荷的識(shí)別12、關(guān)于位置的功能,詳見(jiàn)表2-36。表2-36功能說(shuō)明Offs對(duì)機(jī)器人位置進(jìn)行偏移RelTool對(duì)工具的位置和姿態(tài)進(jìn)行偏移ClacRobT從jointtarget計(jì)算出robtargetCPos讀取機(jī)器人當(dāng)前的X、Y、ZCRobT讀取機(jī)器人當(dāng)前的robtargetCJointT讀取機(jī)器人當(dāng)前關(guān)節(jié)軸角度ReadMotor讀取軸電動(dòng)機(jī)當(dāng)前角度CTool讀取工具坐標(biāo)當(dāng)前數(shù)據(jù)CWObj讀取工件坐標(biāo)當(dāng)前數(shù)據(jù)MirPos鏡像一個(gè)位置CalcJointT從robtarget計(jì)算出jointtargetDistance計(jì)算兩個(gè)位置的距離PFRestart檢查當(dāng)路徑因電源關(guān)閉而中斷的時(shí)候CSpeedOverride讀取當(dāng)前速的使用倍率2.6.5輸入/輸出信號(hào)的處理機(jī)器人可以在程序中對(duì)輸入/輸出信號(hào)進(jìn)行讀取與賦值,以實(shí)現(xiàn)程序控制的需要1、對(duì)輸入/輸出信號(hào)的值進(jìn)行設(shè)定,詳見(jiàn)表2-37。表2-37指令說(shuō)明InvertDO對(duì)一個(gè)數(shù)字輸出信號(hào)置反PulseDO對(duì)數(shù)字信號(hào)進(jìn)行脈沖輸出Rest將數(shù)字輸出信號(hào)置為0Set將數(shù)字輸出信號(hào)置為1SetAO設(shè)定模擬輸出信號(hào)的值SetDO設(shè)定數(shù)字輸出信號(hào)的值SetGO設(shè)定組輸出信號(hào)的值

2、讀取輸入/輸出信號(hào)的值,詳見(jiàn)表2-38,2-39。表2-38功能說(shuō)明AOutput讀取模擬輸出信號(hào)當(dāng)前值DOutput讀取數(shù)字輸出信號(hào)當(dāng)前值GOutput讀取組信號(hào)輸出當(dāng)前值TestDI檢查一個(gè)數(shù)字輸入信號(hào)已置1ValidIO檢查I/O信號(hào)是否有效.表2-39指令說(shuō)明WaitDI等待一個(gè)數(shù)字輸入信號(hào)的指定狀態(tài)WaitDO等待一個(gè)數(shù)字輸出信號(hào)的指定狀態(tài)WaitGI等待一個(gè)組輸入信號(hào)的指定狀態(tài)WaitGO等待一個(gè)組輸出信號(hào)的指定狀態(tài)WaitAI等待一個(gè)模擬輸入信號(hào)的指定狀態(tài)WaitAO等待一個(gè)模擬輸出信號(hào)的指定狀態(tài)

3、IO模塊控制,詳見(jiàn)表2-40。表2-40指令說(shuō)明IODisable關(guān)閉一個(gè)I/O模塊IOEnable開(kāi)啟一個(gè)I/O模塊2.6.6通信功能1、示教器上人機(jī)界面的功能,詳見(jiàn)表2-41。指令說(shuō)明TPErase清屏TPWrite在示教器界面上寫(xiě)信息ErrWrite在示教器事件日志中寫(xiě)報(bào)警信息并儲(chǔ)存TPReadFK互動(dòng)的功能鍵操作TPReadNum互動(dòng)的數(shù)字鍵操作TPShow通過(guò)RAPID程序打開(kāi)指定窗口

2、通過(guò)串口進(jìn)行讀寫(xiě),詳見(jiàn)表2-42、2-43表2-42指令說(shuō)明Open打開(kāi)串口Write對(duì)串口進(jìn)行文本操作Close關(guān)閉串口WriteBin寫(xiě)一個(gè)二進(jìn)制數(shù)的操作WriteAnyBin寫(xiě)任意二進(jìn)制數(shù)的操作WriteStrBin寫(xiě)字符操作Rewind設(shè)定文件開(kāi)始位置ClearOBuff清空串口輸入緩沖ReadAnyBin從串口讀取任意的二進(jìn)制數(shù).表2-43功能說(shuō)明ReadNum讀取數(shù)字量ReadStr讀取字符串ReadBin從二進(jìn)制串口讀取數(shù)據(jù)ReadStrBin從二進(jìn)制串口讀取字符串3、Sockets通信,詳見(jiàn)表2-44、2-45表2-24表2-45指令說(shuō)明SocketCreate創(chuàng)建新的SocketSocket

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論