技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 機(jī)器人控制系統(tǒng)運(yùn)動學(xué)方程

機(jī)器人控制系統(tǒng)運(yùn)動學(xué)方程

時間:2012-07-18 10:34:57來源:zhangting

導(dǎo)語:?控制機(jī)器人系統(tǒng)的運(yùn)動通常要求了解終端受動物體的方位與物理控制的用于操作終端受動物體的執(zhí)行器或者電機(jī)方位之間的關(guān)系。

      控制機(jī)器人系統(tǒng)的運(yùn)動通常要求了解終端受動物體的方位(通常指工具提示或者受控參照系或者受控坐標(biāo)系統(tǒng))與物理控制的用于操作終端受動物體的執(zhí)行器或者電機(jī)方位(通常指受控參照系或者受控坐標(biāo)系統(tǒng))之間的關(guān)系。這些知識可以大體表征機(jī)器人系統(tǒng)的運(yùn)動學(xué)結(jié)構(gòu),通常用運(yùn)動學(xué)方程表示。一些高性能運(yùn)動控制器具有整理這些方程并得到相對運(yùn)動軌跡的能力,確保機(jī)器人系統(tǒng)的實(shí)時位置控制。本文中,將介紹2種特定機(jī)器人系統(tǒng)的運(yùn)動學(xué)方程。

為什么使用運(yùn)動學(xué)?3自由度起重機(jī)

      3自由度(DOF)起重機(jī)是一個相對簡單的機(jī)器人系統(tǒng),用戶可以控制起重距離、起重機(jī)回轉(zhuǎn)角度和起重機(jī)的傾角(見圖1)。通常一臺起重機(jī)還有第四個自由度——起重物體的懸掛高度,這里不考慮此自由度的作用,并不會影響分析結(jié)果的普適性。

 

工業(yè)機(jī)械手

 

圖1  一臺如圖所示的三自由度起重機(jī),允許用戶控制起重距離、回轉(zhuǎn)角和傾斜角,但是不允許起重機(jī)的工作端作直線運(yùn)動。資料來源:www.rki-us.com

      通常,起重機(jī)的起重臂旋轉(zhuǎn)路徑就像一個圓弧,而且,如果起重臂傾斜角增加,終端受動物體(起重機(jī)末端的起重物)就會沿著圓弧路徑向上。這些自然形成的軌跡對于某些環(huán)境是可以接受的,然而,一旦用戶希望起重物體的運(yùn)動路徑是由很多線段組成的話,該怎么辦?或者是在任意三個方向上的隨意形狀,又該如何?例如起重物體是某些測量設(shè)備或者圖像采集系統(tǒng)。簡單的例子是將起重物體沿著方形軌跡移動,這對于一些系統(tǒng)是很有用的。

      那些學(xué)習(xí)過坐標(biāo)幾何學(xué)的人應(yīng)該對起重機(jī)的受控坐標(biāo)系統(tǒng)很熟悉——通常就是球坐標(biāo)系。空間中的一個點(diǎn)可以用球坐標(biāo)系中的三個參數(shù)來表征:距離原點(diǎn)的距離、x-y平面上距離x軸的方位角θ(0 – 2π區(qū)間)和與z周的夾角θ(0 – π區(qū)間)。球坐標(biāo)系的圖例如圖2所示。

圖2  那些學(xué)習(xí)過坐標(biāo)幾何學(xué)的人應(yīng)該對起重機(jī)的受控坐標(biāo)系統(tǒng)很熟悉,通常就是球坐標(biāo)系。

圖2  那些學(xué)習(xí)過坐標(biāo)幾何學(xué)的人應(yīng)該對起重機(jī)的受控坐標(biāo)系統(tǒng)很熟悉,通常就是球坐標(biāo)系。

      沿著線段作移動,我們希望在標(biāo)準(zhǔn)3D笛卡爾坐標(biāo)系中工作。笛卡爾坐標(biāo)系中的一個點(diǎn)由(x, y, z)表征,從直觀上說,這個坐標(biāo)系更便于進(jìn)行線段位移控制。例如,方形的運(yùn)動軌跡由4條線段組成,線段運(yùn)動就是笛卡爾坐標(biāo)系中最基本的運(yùn)動模式。問題轉(zhuǎn)化為:我們?nèi)绾卧谶@兩種坐標(biāo)系統(tǒng)進(jìn)行轉(zhuǎn)換。答案是運(yùn)動方程。運(yùn)動方程可以將笛卡爾坐標(biāo)系(x, y, z)與起重機(jī)球坐標(biāo)系(r, θ, Φ)聯(lián)系在一起。

      在進(jìn)一步探討之前,讓我們快速地判斷一下,為什么這些方程是必要的。如果用戶想要在笛卡爾坐標(biāo)系下控制運(yùn)動路徑,他/她就需要確定一條由一系列(x, y, z) 坐標(biāo)位置組成的軌跡。當(dāng)使用運(yùn)動控制器時,對于很多種類的運(yùn)動,明確地指明運(yùn)動軌跡是沒有必要的。運(yùn)動控制通常產(chǎn)生一個運(yùn)動輪廓(一系列(x, y, z)坐標(biāo)位置)用于控制運(yùn)動,例如點(diǎn)到點(diǎn)運(yùn)動就意味著笛卡爾坐標(biāo)系下的直線運(yùn)動。如果我們知道受動物體的目標(biāo)(x, y, z)位置,然后就可以反推運(yùn)動方程,運(yùn)動控制器就可以計(jì)算出如何控制實(shí)際的起重機(jī)(包括起重臂長度、傾斜角和回轉(zhuǎn)角——(r, θ, Φ))

      前向運(yùn)動方程更多地用于初次校準(zhǔn)。他們可以用于測量反饋位置,并將 (r, θ, Φ) 結(jié)果轉(zhuǎn)換為用戶更加關(guān)心的(x, y, z)坐標(biāo)。這個過程也可以用于確定安裝位置,和用于將任意位置的起重機(jī)坐標(biāo)初始化為相對的(x, y, z)坐標(biāo)。

      由此可見運(yùn)動方程的必要性,現(xiàn)在就該討論如何解運(yùn)動方程了。先從反推運(yùn)動學(xué)方程開始,我們希望得到起重機(jī)的(r, θ, Φ)坐標(biāo):

      實(shí)際上依靠對球坐標(biāo)系/笛卡爾坐標(biāo)系的觀察就可以解這個等式,使用一些三角公式,可以得到如下等式:

      觀察上面第三個等式,Φ是由關(guān)于r的等式表述的,而r又可由第一個等式中的(x, y, z)解出。前向運(yùn)動方程的形式類似:

       通過觀察,這幾個方程同樣可以輕松解出:

      更復(fù)雜的例子——6自由度Stewart六腳平臺

      Stewart六腳平臺在很多場合都有應(yīng)用,包括自動檢測、機(jī)器人手術(shù)、人造衛(wèi)星和望遠(yuǎn)鏡定位以及機(jī)械仿真等等。六腳包括6個獨(dú)立的受控執(zhí)行器(長度),在一端匯聚到一個固定的基座,另一端與一平面平臺連接,允許6個自由度,(α (roll),  (pitch), γ (yaw), x, y, z)。幾何學(xué)實(shí)例如圖3所示。

圖3  Stewart六軸平臺在很多場合都有應(yīng)用,包括自動檢測、機(jī)器人手術(shù)、人造衛(wèi)星和望遠(yuǎn)鏡定位以及機(jī)械仿真等等。來源: ACS Motion Control

      對于此系統(tǒng),反推運(yùn)動學(xué)方程可以告訴我們:對于給定的(α, , γ, x, y, z),可以知道執(zhí)行器的長度(l1, l2, l3, l4, l5, l6)是多少,還可以知道姿態(tài)(P)。前向方程用于計(jì)算姿態(tài)P,用執(zhí)行器的腳長度I表示。前向運(yùn)動方程是封閉的方程組,傳統(tǒng)計(jì)算方法是不可解的。但是,可以通過使用牛頓迭代法來解此前向方程,下文將作討論。

      為了解此系統(tǒng)的反向運(yùn)動方程,必須確定平臺種類以及執(zhí)行器匯聚點(diǎn)的位置,因?yàn)槟_長就是點(diǎn)與點(diǎn)之間的距離。平臺執(zhí)行器所處位置用基點(diǎn)坐標(biāo)系表示如下:

 

      上述等式的下標(biāo)表明了向量的參考坐標(biāo)系。這里,點(diǎn)的位置實(shí)際上是齊次坐標(biāo),以(x, y, z, w) 或者 (x/w, y/w, z/w)的形式表述,為了簡化討論,這里的w我們可以令其等于1。R是變換矩陣,可以將平臺點(diǎn)(Ppi)也就是平臺系數(shù)轉(zhuǎn)換成(Bpi),也就是基座系數(shù)。R是3×4的矩陣,包括3×3的旋轉(zhuǎn)矩陣和3×1的平移矩陣。

      在R等式中,“s”代表正弦函數(shù);“c”代表余弦函數(shù)。上述等式中的旋轉(zhuǎn)矩陣是單位矩陣,用來變換roll、pitch和yaw三個向量的方向。平移矩陣就是一個簡單的向量。由于(Bbi)的值是已知的,所以一旦知道了(Bpi)的值,就可以通過計(jì)算兩點(diǎn)的距離得到腳的長度。

      上面的等式實(shí)際上很簡單,但是由于引入了矩陣?yán)碚?,所以有很多?xiàng)。下面是最終的反向運(yùn)動方程(對于腳“i”)。

      此系統(tǒng)的前向運(yùn)動學(xué)方程相對復(fù)雜一些,由于處理上的要求,前向方程也不容易解。這里,比直接解方程更好的方法是使用迭代法,初始估計(jì)值代入方程、更新,然后重復(fù),直到估計(jì)值的誤差小于某一限定值。具體的計(jì)算方法在此就不再贅述,此方法對于以下的過程都可以通用。此方法是前文提及的牛頓迭代法的推廣。關(guān)于此方法有很多相關(guān)文章,本文在此著重討論前向運(yùn)動方程的應(yīng)用。第一步是估計(jì)初始姿態(tài)K,或者換種說法,估計(jì)(α , , γ, x, y, z)的值。對于一個運(yùn)動控制器,初始估計(jì)值通常是(α , , γ, x, y, z)的受控位置。從此估計(jì)值,反推運(yùn)動學(xué)方程,可以計(jì)算出執(zhí)行器的長度,稱之為 (g1, g2, g3, g4, g5, g6) ,或者以向量的形式寫成g.,數(shù)學(xué)表達(dá)式如下:g = I(k)。

      然后,基于估計(jì)值算出的長度與來自反饋設(shè)備的實(shí)際長度I相比較,得到“估值誤差”e,可以寫成e = g – l。

      如果估值誤差小于某一個限定值,那么此過程就此結(jié)束。如果估值誤差不小于這個限定值,那么,就需要一個更好的估計(jì)值。這個過程一直重復(fù),直到估計(jì)值足夠完美(此時,這個估計(jì)值就被作為方程的解!)為了理解如何從數(shù)學(xué)上確定一個“更好的估計(jì)值”,首先考慮下面這個簡單的微積分學(xué)例子。假設(shè)我們有一個通用函數(shù)y = f(x),f是非線性的。如果我們要計(jì)算由x的變化所導(dǎo)致的y的變化,下面的等式有效:

      現(xiàn)在,如果我們考察一小段f(x)的變化區(qū)間,我們可以將這個區(qū)間近似成線性關(guān)系,有如下等式:

      上面的等式在基礎(chǔ)微積分學(xué)通常被稱為斜率局部逼近,可以寫成下面的形式:

      如果前面的表達(dá)式再重寫一次,我們可以得到以x變化量為參數(shù)的等式:

      現(xiàn)在,讓我們將同樣的思想,應(yīng)用到這個等式上??紤]到我們有一個非線性函數(shù)g=I(k),用于確定基于估計(jì)方位(k)和 估計(jì)腳長度(g)。從設(shè)備反饋,我們也知道腳的實(shí)際長度(I)。我們的估值誤差就是e=g-l,,目標(biāo)是如果估值誤差不符合要求就為方位(k*)從新確定一個估計(jì)值。然后重復(fù)使用上面的方法:

      上面的等式看起來很熟悉,它基本上就是我們在之前的簡單微積分例子中展示的方程。我們可以簡單地再一次重寫這個方程,以得到方位 (k*)的新估值表達(dá)式:

      矩陣dI(k)/dk就是我們所說的Jacobian矩陣。在將Jacobian矩陣應(yīng)用于我們的上述等式之前必須先將其翻轉(zhuǎn),對于六階矩陣就需要6×6求逆矩陣,這是一個復(fù)雜的數(shù)學(xué)推導(dǎo)。一旦姿態(tài)的新估計(jì)值計(jì)算出來,這個過程就可以再次重復(fù),直到誤差(e = g – l) 小于某個可以接受的級別。

如果反向運(yùn)動方程已知,如下就是通用前向運(yùn)動方程的推導(dǎo)步驟:
1.估計(jì)平臺的初始姿態(tài)(k)。對于運(yùn)動控制器,這通常就是初始受控姿態(tài)。
2.基于估計(jì)值,計(jì)算腳長度,使用反向運(yùn)動方程(g=I(k))。
3.通過將此腳長度與從編碼器獲得的當(dāng)前實(shí)際腳長度進(jìn)行比較得到(e = g – l),如果誤差大小小于某個限制,此算法就將當(dāng)前值收斂于k,并且跳到第6步,如果誤差超過此限制,繼續(xù)第4步。
4.使用反向Jacobian矩陣產(chǎn)生新的估計(jì)值 (k*=k-inv(dI(k)/dk)*e)。
5.用第4步的結(jié)果更新估計(jì)值。
6.從第2步重新開始迭代。這個算法并不僅僅適用于六自由度系統(tǒng),只要反向運(yùn)動方程已知,它就可以用于推導(dǎo)任何系統(tǒng)的前向方程(有收斂解的系統(tǒng))。

總結(jié) 

      一個強(qiáng)壯的控制機(jī)器人系統(tǒng)的方法的關(guān)鍵就是運(yùn)動方程,這些方程不僅僅描述了系統(tǒng)的幾何結(jié)構(gòu),他們也使得具有足夠處理能力和速度的現(xiàn)代運(yùn)動控制器,能夠完成必要的計(jì)算,以提供對系統(tǒng)的平滑運(yùn)動控制。運(yùn)動方程通常在實(shí)時領(lǐng)域可以直接求解,然而,對于一些復(fù)雜系統(tǒng),直接求解無法實(shí)現(xiàn),可以采用一些算法,進(jìn)行求解。高性能的現(xiàn)代控制器提供了特定的結(jié)構(gòu),可以在控制系統(tǒng)內(nèi)固化這些等式,為很多領(lǐng)域提供了開發(fā)機(jī)器人系統(tǒng)的可能性。

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:基于精確反饋線性化的Buck開...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡介|會員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號