日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

ABB機(jī)器人自制單軸偏移函數(shù)

 新用戶59353308 2021-11-19

ABB機(jī)器人自帶有Offs函數(shù),可以使用該函數(shù)在基于robtarget類型的點(diǎn)位基礎(chǔ)上在x,y,z方向上加上偏移值,生成一個(gè)新的位置。這使得我們?cè)诰帉懹幸?guī)律的運(yùn)動(dòng)路徑時(shí)十分的方便。

但是有時(shí)我們想讓機(jī)器人基于一個(gè)已知的位置對(duì)某個(gè)軸進(jìn)行偏移,卻發(fā)現(xiàn)ABB機(jī)器人系統(tǒng)中并沒有類似功能的函數(shù),那么這一次我們就仿照offs函數(shù)的功能自己編寫一個(gè)ABB機(jī)器人的單軸偏移函數(shù)。

首先要新建一個(gè)例行程序,例行程序的名稱可以自定義,例行程序的名稱就是我們制作好的函數(shù)的名稱。這里以AbsOffs為例。例行程序的類型要選擇“功能”。數(shù)據(jù)類型選擇jointtarget,即該函數(shù)返回的數(shù)據(jù)類型為jointtarget,在程序中函數(shù)返回值可作為一個(gè)jointtarget數(shù)據(jù)來使用。

然后選擇參數(shù)選項(xiàng),為其添加參數(shù),添加一個(gè)名為“Point”數(shù)據(jù)類型為“jointtarget”的參數(shù)(參數(shù)的名稱可以在定義,這里以“Point”為例),模式為“IN”,也就是輸入?yún)?shù)。這個(gè)參數(shù)用來接收偏移計(jì)算時(shí)的基準(zhǔn)點(diǎn)。

然后再添加6個(gè)數(shù)據(jù)類型為num型參數(shù),參數(shù)模式也為“IN”每個(gè)參數(shù)對(duì)應(yīng)一個(gè)軸,用于接收我們手動(dòng)輸入的軸的偏移值。這里的6個(gè)參數(shù)以offset1~offset6為例。

然后我們?cè)凇俺绦驍?shù)據(jù)”的“jointtarget”數(shù)據(jù)類型中新建一個(gè)jointtarget類型數(shù)據(jù),名稱可以自定義,這里以jposTemp為例。存儲(chǔ)類型選擇“變量”,模塊選擇我們所新建的函數(shù)所在的模塊,例行程序選擇我們所建的函數(shù)。這樣這個(gè)變量就只會(huì)在咱們新建的這個(gè)函數(shù)中可以被調(diào)用,其它例行程序無法調(diào)用。

然后添加jposTemp := Point;語句,把以后函數(shù)所接受的偏移基準(zhǔn)位置的值賦值給jposTemp。函數(shù)參數(shù)Point可能在添加過程中的數(shù)據(jù)中不顯示,可以采用手動(dòng)輸入的方式。

然后添加6個(gè)軸的偏移賦值語句。

利用“RETURN”指令將偏移后的“jposTemp”值作為函數(shù)的返回值。

到這里,ABB機(jī)器人的軸偏移函數(shù)就制作完成了。

下面來看一下使用。

在程序編輯器中添加“MoveAbsJ”指令;

在選擇位置數(shù)據(jù)時(shí),我們就可以在“功能”分類中看到我們自己創(chuàng)建的單軸偏移函數(shù)了。

選擇要偏移的基準(zhǔn)點(diǎn):

手動(dòng)輸入每個(gè)軸要偏移的角度。這里以1軸偏移沿正向偏移30度,其它軸不偏移為例。

執(zhí)行這條指令后,就可以使機(jī)器人基于Phome位置1軸單獨(dú)偏移30度。

完整Rapid代碼:

代碼復(fù)制到rapid編輯器中可以直接使用奧~。

  1. FUNC jointtarget AbsOffs(jointtarget Point,num offset1,num offset2,num offset3,num offset4,num offset5,num offset6)
  2. VAR jointtarget jposTemp:=[[0,-0.000117,49.9999,0,90.0002,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
  3. jposTemp:=Point;
  4. jposTemp.robax.rax_1:=jposTemp.robax.rax_1+offset1;
  5. jposTemp.robax.rax_2:=jposTemp.robax.rax_2+offset2;
  6. jposTemp.robax.rax_3:=jposTemp.robax.rax_3+offset3;
  7. jposTemp.robax.rax_4:=jposTemp.robax.rax_4+offset4;
  8. jposTemp.robax.rax_5:=jposTemp.robax.rax_5+offset5;
  9. jposTemp.robax.rax_6:=jposTemp.robax.rax_6+offset6;
  10. RETURN jposTemp;
  11. ENDFUNC

文章首發(fā)自動(dòng)化生產(chǎn)之家

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多