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

下載本文檔

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

文檔簡介

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

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

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

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

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

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

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

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

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

2.RAPID是一種英文編程語言,所包含的指令可以移動機器人、設(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)說明如下:

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

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

2.3常用RAPID程序指令

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

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

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

Setdo1;

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

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

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

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

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

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

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

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

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

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

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

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

溫馨提示

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

最新文檔

評論

0/150

提交評論