機械臂正逆運動學及軌跡規劃基礎

2022-08-18 09:45:09 字數 1598 閱讀 9684

目錄動力學(dynamics) :將所需的關節力和扭矩對映為它們的位置,速度和加速度

參考運動學(kinematics) :將機械人機械手的關節位置對映為感興趣的座標系的位置和方向(一般是末端)

如下圖所示,若已知各個關節的角度變數,則末端執行器的位姿是確定的,即(x,y). 但是若已知末端執行器的位姿,反求關節空間的解時,則會存在多組解的情況。如下圖中實線和虛線兩種情況。

正運動學求解

如上述,若已知,連桿的關節長度為\(l_1和l_2\),並且已知兩個關節的轉動角度分別為\(\theta_1和\theta_2\),那麼其末端執行器的位置\((x,y)\)可以由下式計算出來。

\[x=l_1cos(\theta_1)+l_2cos(\theta_1+\theta_2)\\

y=l_1sin(\theta_1)+l_2sin(\theta_1+\theta_2)

\]逆運動學求解

反之,若知末端執行器的位置,反求關節的轉動角度\((\theta_1和\theta_2)\),那麼就有下式:

其中關於\(\alpha_1和\alpha_2\)的計算如下:

路徑規劃/運動插補

對於直線軌跡規劃,一般是直接利用起始點和終點的位置和姿態通過直線插補的形式計算出中間點的位置。因為在直線運動過程中機械臂的姿態保持不變,所以直線運動不需要對機械臂的姿態進行插補。

直線運動插補:設機械臂末端執行器要從點\(p_1(x_1,y_1)\)直線運動到點\(p_2(x_2,y_2)\),則可以計算出兩點之間的距離為:

\[l=\sqrt

\]設機械臂末端執行器沿直線執行的速度為\(v\),方向通過向量來表示,即\(p_1到p_2\)的方向為:

\[p_=p_2-p_1=(x_2-x_1)i+(y_2-y_1)j

\]則該直線運動方向上的單位方向向量為:

\[n_=\frac}

\]則任意t時刻末端執行器的位置可以表示為:

\[p_t=p_1+n_vt,其中p_t和p_1均用向量表示,即p_1=x_1i+y_1j,p_t=x_ti+y_tj

\]設直線插補時間間隔為\(t_s\),則此段時間內末端執行器的運動距離為\(d=vt_s\),則從點\(p_1到點p_2\)距離為\(l\)的長度上共需要插補的步數為:

\[n=\frac

\]則各個軸的增量為:

\[\delta x=(x_2-x_1)/n\\

\delta y=(y_2-y_1)/n

\]則各個插補點的座標為:

\[x_=x_1+i\delta x\\

y_=y_1+i\delta y\\

\]動力學(dynamics) :將所需的關節力和扭矩對映為它們的位置,速度和加速度

參考matlab 中的機械臂演算法——運動學

邱詩元-基於腦機介面的機械臂遙操作控制

正運動學 機械臂運動學筆記(一)

link i 1兩端的關節 關節i 1繞axis i 1旋轉,關節i繞axis i旋轉。在三維空間中一定存在一條線與兩個轉軸 axis 所在的直線都垂直而且是唯一解 軸不平行時 連線兩條轉軸且與兩條轉軸都垂直的這條線段的長度被定義為link lengthai 1a ai 1 兩個轉軸之間的角度差定義...

UR機械人裝箱姿態 UR機械臂運動學正逆解方法

最近幾個月因為工作接觸到了機械臂的專案,突然對機械臂運動方法產生了興趣,也就是如何控制機械臂的位置和姿態。借用一張網上的,應該是ur5的尺寸。我用到的是ur3機械臂,除了尺寸不一樣,各關節結構和初始位置和ur5是一樣的。轉動關節 i是關節變數,連桿偏移di是常數。關節編號 繞x軸 a 沿x軸 繞z軸...

機械臂大臂小臂長度 3軸碼垛機械臂運動學模型求解

對於3軸碼垛機械臂控制最基本的是對其建立運動學模型,而對於3軸碼垛型別機械臂來說運動學模型,其本質就是給定空間3d座標,求解3個軸的旋轉角度。如上圖所示,左側為實物座標,右側圖為抽象到座標系的幾何表示,逆解過程就是知道末端座標,而求解各個軸的旋轉角度,進而轉換為步進電機的步進數,下面我們利用立體幾何...