本篇將會對四足機器人的俯仰角進行數學建模,求解器正逆運動學解,包含詳細公式推導與計算
一、數學建模
1、幾何模型
假設俯仰角爲λ,對於座標系A足端位置PA[x,y],我們求出其在B座標系下的位置PB=[x′,y′],然後通過逆運動學求解關節角度θ1,θ2即可。假定機器人半身長爲L,腿長分別爲L1, L2
2、座標變換
前腿
a、座標系A-O變換矩陣:
T1=⎣⎡100010L01⎦⎤
b、座標系O-B變換矩陣:
T2=⎣⎡cosλsinλ0−sinλcosλ0−L01⎦⎤
根據變換矩陣,我們可以求出PB座標:
PB=T2T1PA
即:
⎣⎡x′y′1⎦⎤=⎣⎡cosλsinλ0−sinλcosλ0−L01⎦⎤⎣⎡100010L01⎦⎤⎣⎡xy1⎦⎤
化簡之後:
⎣⎡x′y′1⎦⎤=⎣⎡cosλsinλ0−sinλcosλ0Lcosλ−LLsinλ1⎦⎤⎣⎡xy1⎦⎤
後腿
對於後腿實際上只是L取反即可:
⎣⎡x′y′1⎦⎤=⎣⎡cosλsinλ0−sinλcosλ0−Lcosλ+L−Lsinλ1⎦⎤⎣⎡xy1⎦⎤
3、逆運動學求解
根據離地高度確定初始位置P0,再根據變換矩陣將其轉換致參考系B中得到PB,通過逆運動學求解兩個關節角度,公式如下:
cosβ=2l1l2−l12−l22+x2+y2sinβ=1−cos2ββ=atan2(sinβ,cosβ)α=atan2(y,x)−atan2(l2s2,l1+l2c2)
4、最大俯仰角
對於給定離地高度h,俯仰角存在一個最大值,在實際控制時,我們需要保證俯仰角在允許範圍內。
如上圖,當L1, L1共線時,俯仰角最大,此時有以下關係:
cos(r+φ)=2L(L2+h2)L2+(h2+L2)−(L1+L2)2
其中φ=atan2(h,L),因此我們可以解出此時的r
如果覺得ok,點個贊,點個關注,也歡迎給個打賞支持一下編者的工作