報名人數(shù)298782
資訊中心 > 課程相關(guān)資訊 > 機器人培訓(xùn) > 機器人培訓(xùn) >?跟著智通培訓(xùn)黃老師一起探索ABB機器人數(shù)據(jù)類型的秘密!

跟著智通培訓(xùn)黃老師一起探索ABB機器人數(shù)據(jù)類型的秘密!

時間:2020-12-02 16:23 來源:

? ?智通機器人培訓(xùn)黃老師最近收到一條留言,說ABB機器人數(shù)據(jù)類型就好像“一條運動指令引發(fā)的血案”,因為完全沒想到一條簡單的運動指令背后居然隱藏著這么多值得思考的問題,“劇情”撲簌迷離、跌宕起伏。既然如此,那我們就跟著黃老師回到案發(fā)現(xiàn)場,探索蛛絲馬跡吧!



首先我們先來解答以下問題:

(**)對于下圖中機器人所示姿態(tài),cfx的值應(yīng)該是多少?



這個問題需要結(jié)合關(guān)于cfx值的說明的表格來回答。


在上圖中,機器人的腕中心,相對于軸1的軸線,是在前方的位置;腕中心相對于下臂軸線,是在前方的位置;而軸5處于負(fù)數(shù)角度范圍。將機器人腕中心相對位置與表中所述情況對比,可知上圖所示機器人姿態(tài),其cfx值應(yīng)為1。


以下給出了cfx為不同值時的機器人姿態(tài)示意:






接下來再解答以下問題:

(4)為什么在【程序數(shù)據(jù)】頁面里對P10進行了【修改位置】操作,執(zhí)行指令語句時機器人卻無法運動到示教的目標(biāo)位置呢?


大家都知道,當(dāng)手動操縱頁面當(dāng)前所選擇的工具坐標(biāo)系、工件坐標(biāo)系與程序編輯器頁面中運動指令語句中所指定的工具坐標(biāo)系、工件坐標(biāo)系不完全相同時,是無法在程序編輯器頁面對運動指令的目標(biāo)點位進行【修改位置】操作的,否則系統(tǒng)會提示下圖所示的的錯誤。


但是當(dāng)你在程序數(shù)據(jù)頁面中對位置數(shù)據(jù)進行【修改位置】操作時則沒有這樣的限制,因為程序數(shù)據(jù)頁面中沒有指定該位置數(shù)據(jù)的參考坐標(biāo)系。當(dāng)你在程序數(shù)據(jù)頁面中對位置數(shù)據(jù)進行【修改位置】操作時,實際上是告訴機器人控制系統(tǒng),重新計算手動操作頁面所選擇的工具的TCP在所選擇的參考工件坐標(biāo)系下的組件值,并將結(jié)果存入位置數(shù)據(jù)中。計算坐標(biāo)值、工具姿態(tài)時所使用的參考坐標(biāo)系,與運動指令語句中指定的參考坐標(biāo)系不一致,往往會導(dǎo)致機器人運動到非你所期望的空間位置上去。


接下來智通培訓(xùn)黃老師再為您解答如下問題:

(5)位置數(shù)據(jù)P10是以坐標(biāo)值的形式來描述目標(biāo)位置的,那它是以什么坐標(biāo)系為參考坐標(biāo)系的呢?



我們知道,robotarget數(shù)據(jù)類型由:trans、rot、robconf、extax四個組件構(gòu)成的,它們分別存儲的是笛卡爾空間坐標(biāo)值、工具姿態(tài)、軸配置、外軸位置,并沒有哪一個組件記錄了參考坐標(biāo)系。所以本題的正確答案是:robotarget型數(shù)據(jù)P10,其本身并不指定參考坐標(biāo)系,當(dāng)對它進行【修改位置】操作時,以手動操作頁面所選擇的工具坐標(biāo)系和工件坐標(biāo)系為參考坐標(biāo)系,當(dāng)它被放在運動指令語句中作為運動指令的目標(biāo)點位時,以運動指令所指定工具坐標(biāo)系工件坐標(biāo)系為參考坐標(biāo)系。當(dāng)運動指令語句中沒有顯式指定工件坐標(biāo)系時,是默認(rèn)以wobj0為編程工件坐標(biāo)系,如果需要指定其它工件坐標(biāo)系為指令語句的編程坐標(biāo)系,則需啟用運動指令的[\wobjdata]可選變元。


wobj0的數(shù)據(jù)類型是wobjdata(工件數(shù)據(jù)),它由robhold、ufprog、ufmec、uframe、oframe共5個組件構(gòu)成,其各個組件的作用如下:

(1)robhold組件? 表明機器人工作時工件是否是被機器人末端所夾持,true值表示機器人夾持工件,false值表示機器人夾持工具。


(2)ufprog組件? 表明該工件坐標(biāo)系是否會隨著其它聯(lián)動機械單元而移動,true值表示該工件坐標(biāo)系將不會伴隨其它機械單元聯(lián)動,false值表示該工件坐標(biāo)系將會伴隨其它機械單元聯(lián)動。


(3)ufmec組件? 當(dāng)ufprog組件值為true時,該組件值不起作用;當(dāng)ufprog組件值為falses時,該組件值指明工件坐標(biāo)系將伴隨聯(lián)動的機械單元的名稱。


(4)uframe組件? ABB機器人的工件坐標(biāo)系其實是由用戶坐標(biāo)系和目標(biāo)坐標(biāo)系耦合之后的結(jié)果,uframe組件記錄了用戶坐標(biāo)與wobjo坐標(biāo)系的相對位置關(guān)系。使用目標(biāo)方法定義工件坐標(biāo)系時,該組件的值將會被重新計算。



(5)oframe組件 ABB機器人的工件坐標(biāo)系其實是由用戶坐標(biāo)系和目標(biāo)坐標(biāo)系耦合之后的結(jié)果,uframe組件記錄了目標(biāo)坐標(biāo)系與用戶坐標(biāo)系的相對位置關(guān)系。使用目標(biāo)方法定義工件坐標(biāo)系時,該組件的值將會被重新計算。



最后解答下面的問題:

(6)指令語句中的tool0起到什么作用呢?

在指令語句中tool0,一方面是提供了目標(biāo)點位的工具參考坐標(biāo)系,讓運動指令語句中位置數(shù)據(jù)的參考坐標(biāo)系明確;另一方面是向機器人控制系統(tǒng)提供了工具的重量、重心、慣性矩等物理屬性,讓機器人控制系統(tǒng)能夠精確的計算機器人伺服電機的工作電流和需要輸出的力矩。
我們假設(shè)運動指令語句中的P10的聲明語句如下所示,并以此來說明tooldata在運動指令語句中的作用。


運動指令語句中的tool0,表明P10聲明語句中的笛卡爾坐標(biāo)值[500,0,800]描述的是執(zhí)行完成該運動指令時,工具tool0的tcp在參考工件坐標(biāo)系下的空間坐標(biāo)值;也表明P10聲明語句中四元數(shù)[1,0,0,0]描述的是完成運動指令時tool0工具坐標(biāo)系的軸方位。四元素用于描述坐標(biāo)系的姿態(tài),不易直觀感受到一組四元數(shù)值表達了怎樣的姿態(tài),可以通過RAPID編程語言所提供的EulerZYX函數(shù)將四元數(shù)轉(zhuǎn)變?yōu)闅W拉角旋轉(zhuǎn)角度,在示教器手動操縱頁面也可以選擇以何種方式來顯示工具坐標(biāo)系的姿態(tài)。


tool0的數(shù)據(jù)類型是tooldata(工具數(shù)據(jù)),它由robhold、tframe、tload共3個組件構(gòu)成,其各個組件的作用如下:

(1)robhold組件? 表明機器人工作時工具是否被機器人末端所夾持,ture值表示機器人夾持工具,false值表示機器人不夾持工具。

(2)tframe組件? 記錄該工具的工件坐標(biāo)系屬性,表明了該工具坐標(biāo)系與tool0的相對位置關(guān)系。

(3)tload組件? ?記錄該工具的重量、重心位置,力矩慣性矩軸方位以及圍繞力矩慣性軸的慣性矩。


?本篇文章就到這里了更多資訊:智通教育(www.bjguangxin.cn)致力于工業(yè)機器人培訓(xùn)、PLC培訓(xùn)、電工培訓(xùn)等行業(yè)課程,詳情聯(lián)系:0769-8707-8535.