你的位置:首頁 > 傳感技術(shù) > 正文

機器人坐標(biāo)系用法和算法原理

發(fā)布時間:2023-10-16 責(zé)任編輯:wenwei

【導(dǎo)讀】一般都會定義機器人第一軸的旋轉(zhuǎn)軸為基坐標(biāo)系Z軸,旋轉(zhuǎn)中心即是坐標(biāo)系原點,X和Y的方向是的電機零點確定,所以只要你不更換電機的零點和機械結(jié)構(gòu),單個機器人里這個基坐標(biāo)系是永遠不會變的!


10.jpg


機器人坐標(biāo)系


基坐標(biāo)系


機器人都有一個不會變的坐標(biāo)系,叫基坐標(biāo)系或世界坐標(biāo)系(每家叫法不同,原理一樣)。


基坐標(biāo)系是怎么來的呢?


拿6軸機器人舉例:


11.jpg


第一軸的旋轉(zhuǎn)軸


一般都會定義機器人第一軸的旋轉(zhuǎn)軸為基坐標(biāo)系Z軸,旋轉(zhuǎn)中心即是坐標(biāo)系原點,X和Y的方向是的電機零點確定,所以只要你不更換電機的零點和機械結(jié)構(gòu),單個機器人里這個基坐標(biāo)系是永遠不會變的!


12.jpg


機器人外部軸


有一種情況會重新設(shè)定新(基)坐標(biāo)系,新坐標(biāo)系為世界坐標(biāo)系(每家不同的叫法,你可以認(rèn)為就是一個基坐標(biāo)系),那就是機器人加外部行走軸,或外部旋轉(zhuǎn)軸,用行走軸舉例,這種情況會把基坐標(biāo)設(shè)在行走軸的零點位置,如果有多個行走軸,那就把基坐標(biāo)設(shè)定到最底層那根軸的零點處,所以機器人配置外部軸的原理就是測量一些機械參數(shù),把機器人1軸上的基坐標(biāo)系變換到外部行走軸上,這種變換也叫D-H變換,下面講工具坐標(biāo)系時候詳細說明。


用戶坐標(biāo)系


上面內(nèi)容確定了一個(基)坐標(biāo)系,就可以通過齊次變換推算出工具坐標(biāo)系和用戶坐標(biāo)系了!


13.jpg


用戶坐標(biāo)系


先說用戶坐標(biāo)系,用戶坐標(biāo)系的本質(zhì)是把(基)坐標(biāo)系旋轉(zhuǎn)偏移到工件上,是為了方便編程,讓機器人的移動方向和工件表面的方向一致!例如,有個傾斜45度的工件表面,如果你用基坐標(biāo)系,機器人就是沿著基座系方向行走,橫平豎直的,很難沿著45度的表面行走,對編程來說難操作。所以就通過齊次變換偏移旋轉(zhuǎn)(基)坐標(biāo)系,得到新的用戶坐標(biāo)系!


14.jpg


其次變換旋轉(zhuǎn)算法


15.jpg


齊次變換平移加旋轉(zhuǎn)算法


16.jpg


齊次變換后得到新的用戶坐標(biāo)系


工具坐標(biāo)系


工具坐標(biāo)系又叫TCP,機器人的精度和這個關(guān)系很大。它是在機器人末端執(zhí)行器,也就是抓手或焊槍上的。這個坐標(biāo)系是相對于六軸不動,但是實際機器人六軸會不停動作,這個坐標(biāo)系也就跟隨6軸實時變換!


17.jpg


工具坐標(biāo)系


我們常說的機器人在什么位置,坐標(biāo)數(shù)據(jù)是多少?實際就是工具坐標(biāo)系(TCP)原點在基坐標(biāo)系或者用戶坐標(biāo)系下的X、Y、Z、A、B、C的數(shù)值,X、Y、Z就是坐標(biāo)系的三個坐標(biāo)軸,A、B、C是以工具坐標(biāo)系原點(TCP)為旋轉(zhuǎn)中心,繞坐標(biāo)系X,繞Y,繞Z旋轉(zhuǎn)的角度數(shù)據(jù)(有的機器人,比如KUKA旋轉(zhuǎn)是A、B、C對應(yīng)繞Z,繞Y,繞X;標(biāo)準(zhǔn)歐拉角也是ZYX這樣旋轉(zhuǎn)的。),這里注意這個旋轉(zhuǎn)中心,機器人都用歐拉角,它的旋轉(zhuǎn)中心是TCP,不是繞著基坐標(biāo)或者用戶坐標(biāo)的軸旋轉(zhuǎn),這里說的繞X旋轉(zhuǎn),其實是把坐標(biāo)系平移到TCP位置,再繞坐標(biāo)系X旋轉(zhuǎn)!懂向量的就很容易理解為什么這樣了,因為轉(zhuǎn)換計算都是單位向量矩陣的形式!


怎么得到TCP的呢?其實也和不會變的基坐標(biāo)有很大關(guān)系,確定了基坐標(biāo),基坐標(biāo)的Z軸可以想象成一軸電機的旋轉(zhuǎn)軸,一軸電機的零點就可以確定X和Y方向,這樣就把一軸的關(guān)節(jié)坐標(biāo)數(shù)據(jù)轉(zhuǎn)換成笛卡爾XYZ坐標(biāo)系的形式!同樣的道理,二軸的電機相對于一軸機械位置和零點也是固定的,通過機械參數(shù)就可以把二軸的關(guān)節(jié)也轉(zhuǎn)換成坐標(biāo)系形式,三軸相對于二軸,四軸相對于三軸,五軸相對于四軸,六軸相對于五軸,都是有相對位置和零點固定不變的情況,這個就是6軸串聯(lián)機器人,這樣一軸一軸轉(zhuǎn)換到六軸,六軸再轉(zhuǎn)換到工具(焊槍或抓手)上,得出的坐標(biāo)系就是相對于六軸固定不變的工具坐標(biāo)系也就是TCP,如下圖。


18.jpg


TCP計算圖示


關(guān)節(jié)坐標(biāo)系


19.jpg


關(guān)節(jié)坐標(biāo)系


這個坐標(biāo)系 很簡單,就是六個電機的旋轉(zhuǎn)角度!在關(guān)節(jié)坐標(biāo)下,我們通過改變六個電機的數(shù)據(jù),單獨動作每個關(guān)節(jié)!實際它的最大用處是逆運算,也就是我們用用戶坐標(biāo)系或者基坐標(biāo)系加TCP運動機器人的時候,機器人內(nèi)部要把坐標(biāo)系的數(shù)據(jù),反推成六個關(guān)節(jié)電機的數(shù)據(jù),這個非常復(fù)雜,而且解還不是唯一的(我上一篇里講的機器人姿態(tài)參數(shù)),這里就不細說了,以后有空單獨講!


所以說,機器人最重要的坐標(biāo)系其實就是(基)坐標(biāo)系。


機器人還有一些坐標(biāo)系相關(guān)的延伸應(yīng)用


例如,外部TCP,連續(xù)軌跡,圓滑過渡這些!


我講個外部TCP的程序原理,其它的應(yīng)用多數(shù)是標(biāo)準(zhǔn)應(yīng)用,不需要更改啥,但是外部TCP用的比較多,有的需要在標(biāo)準(zhǔn)外部TCP的程序基礎(chǔ)上做些改進,以滿足現(xiàn)場需求!


啥是外部TCP呢?我們前面所說的TCP(工具坐標(biāo)系),可以理解成機器人的旋轉(zhuǎn)中心,你拿著焊槍的時候,把TCP定義在槍尖,機器人旋轉(zhuǎn)就會繞著槍尖轉(zhuǎn),機器人角度動作而槍尖位置不動,這樣對于焊接需要拐彎的時候特別有用,焊槍拐彎了,但是焊絲還在焊接位置,不會跑偏!


外部TCP正好是和TCP相反的操作,如果焊槍沒有裝在機器人上,機器人是拿著工件去焊接的,那你把機器人的旋轉(zhuǎn)中心定義在哪里好呢,定義在哪里都不行,如果定義了機器人只能繞著定義那個TCP位置旋轉(zhuǎn),但是焊接軌跡是移動的,移動到其它位置你再旋轉(zhuǎn),機器人固定的焊槍就不在焊接軌跡上了,嚴(yán)重的會碰撞!


外部TCP的算法原理是這樣的:


比如我知道第一個焊接點位,根據(jù)點位的坐標(biāo)齊次變換算出一個TCP,TCP和這個焊接點位重合。


焊接移動過程中的下一個點位坐標(biāo)換算出新的TCP,和當(dāng)前點位重合。這樣每個點位自動生成一個TCP,比如焊接100mm長的焊縫,機器人內(nèi)部算法把這100mm,分割成10000份,每份都有個TCP,這樣就實現(xiàn)了TCP的動態(tài)賦值,也就是外部TCP的原理了!


總結(jié)一下:


基座標(biāo)是固定不動的,可以換算出用戶坐標(biāo)和工具坐標(biāo);其它的外部TCP屬于擴展應(yīng)用,離不開前面三種坐標(biāo)系!



免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請聯(lián)系小編進行處理。


推薦閱讀:


高能效、小外形的240W電源適配器參考設(shè)計

高功率降壓轉(zhuǎn)換的散熱評估測試原理概述

電源模塊輸出為何振蕩?

應(yīng)對汽車ADAS電源管理設(shè)計挑戰(zhàn),誰是你心儀的“芯”方案?

ADI助力變送器從傳統(tǒng)環(huán)路供電到工業(yè)4.0智能化轉(zhuǎn)變

特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉