機(jī)器人控制系統(tǒng)運(yùn)動(dòng)學(xué)方程
現(xiàn)在,如果我們考察一小段f(x)的變化區(qū)間,我們可以將這個(gè)區(qū)間近似成線性關(guān)系,有如下等式:
上面的等式在基礎(chǔ)微積分學(xué)通常被稱為斜率局部逼近,可以寫成下面的形式:
如果前面的表達(dá)式再重寫一次,我們可以得到以x變化量為參數(shù)的等式:
現(xiàn)在,讓我們將同樣的思想,應(yīng)用到這個(gè)等式上??紤]到我們有一個(gè)非線性函數(shù)g=I(k),用于確定基于估計(jì)方位(k)和 估計(jì)腳長(zhǎng)度(g)。從設(shè)備反饋,我們也知道腳的實(shí)際長(zhǎng)度(I)。我們的估值誤差就是e=g-l,,目標(biāo)是如果估值誤差不符合要求就為方位(k*)從新確定一個(gè)估計(jì)值。然后重復(fù)使用上面的方法:
上面的等式看起來很熟悉,它基本上就是我們?cè)谥暗暮?jiǎn)單微積分例子中展示的方程。我們可以簡(jiǎn)單地再一次重寫這個(gè)方程,以得到方位 (k*)的新估值表達(dá)式:
矩陣dI(k)/dk就是我們所說的Jacobian矩陣。在將Jacobian矩陣應(yīng)用于我們的上述等式之前必須先將其翻轉(zhuǎn),對(duì)于六階矩陣就需要6×6求逆矩陣,這是一個(gè)復(fù)雜的數(shù)學(xué)推導(dǎo)。一旦姿態(tài)的新估計(jì)值計(jì)算出來,這個(gè)過程就可以再次重復(fù),直到誤差(e = g – l) 小于某個(gè)可以接受的級(jí)別。
如果反向運(yùn)動(dòng)方程已知,如下就是通用前向運(yùn)動(dòng)方程的推導(dǎo)步驟:
1.估計(jì)平臺(tái)的初始姿態(tài)(k)。對(duì)于運(yùn)動(dòng)控制器,這通常就是初始受控姿態(tài)。
2.基于估計(jì)值,計(jì)算腳長(zhǎng)度,使用反向運(yùn)動(dòng)方程(g=I(k))。
3.通過將此腳長(zhǎng)度與從編碼器獲得的當(dāng)前實(shí)際腳長(zhǎng)度進(jìn)行比較得到(e = g – l),如果誤差大小小于某個(gè)限制,此算法就將當(dāng)前值收斂于k,并且跳到第6步,如果誤差超過此限制,繼續(xù)第4步。
4.使用反向Jacobian矩陣產(chǎn)生新的估計(jì)值 (k*=k-inv(dI(k)/dk)*e)。
5.用第4步的結(jié)果更新估計(jì)值。
6.從第2步重新開始迭代。這個(gè)算法并不僅僅適用于六自由度系統(tǒng),只要反向運(yùn)動(dòng)方程已知,它就可以用于推導(dǎo)任何系統(tǒng)的前向方程(有收斂解的系統(tǒng))。
總結(jié)
一個(gè)強(qiáng)壯的控制機(jī)器人系統(tǒng)的方法的關(guān)鍵就是運(yùn)動(dòng)方程,這些方程不僅僅描述了系統(tǒng)的幾何結(jié)構(gòu),他們也使得具有足夠處理能力和速度的現(xiàn)代運(yùn)動(dòng)控制器,能夠完成必要的計(jì)算,以提供對(duì)系統(tǒng)的平滑運(yùn)動(dòng)控制。運(yùn)動(dòng)方程通常在實(shí)時(shí)領(lǐng)域可以直接求解,然而,對(duì)于一些復(fù)雜系統(tǒng),直接求解無法實(shí)現(xiàn),可以采用一些算法,進(jìn)行求解。高性能的現(xiàn)代控制器提供了特定的結(jié)構(gòu),可以在控制系統(tǒng)內(nèi)固化這些等式,為很多領(lǐng)域提供了開發(fā)機(jī)器人系統(tǒng)的可能性。
陀螺儀相關(guān)文章:陀螺儀原理
評(píng)論