【UGV】从单个麦轮受力到麦轮小车运动学分析
文章目錄
- 簡介
- 單個麥輪受力分析
- 單個麥輪速度分析
- 正運動學
- 逆運動學
- 附
- Ref:
簡介
移動機器人的運動學模型決定了如何將車輪速度映射到機器人的本體速度,而動力學模型則決定著如何將車輪扭矩映射到機器人的加速度。
運動學建模中的兩個重要問題:
首先熟悉一下麥輪的移動方式。如上圖所示,為麥輪常見的三種移動方式(向前,平行,斜向上)。
單個麥輪受力分析
首先說明一點,下圖為麥輪與地面接觸平面的截圖,而俯視圖中棍子方向剛好相差 90 度。如下圖與地面接觸時棍子為斜向左上,那么俯視圖中看到的則是棍子方向斜向右上。
當麥輪前向轉動時,棍子被動與地面接觸,而棍子與地面接觸可理想化視為點接觸,該接觸點在“碰到”地面瞬間會受到其運動方向相反的作用力(和普通輪胎分析相似),接觸點的“運動方向”為正向后,所以摩擦力方向為正向前 FdF_dFd?。
將摩擦力 FdF_dFd? 沿著垂直和平行于棍子軸線方向進行力分解,由于棍子是被動輪,因此會受到垂直于輪轂軸線的分力 FvF_vFv? 作用而發生被動轉動,也說明分力 FvF_vFv? 是滾動摩擦力,對棍子的磨損較大。而平行于輪轂軸線的分力 FpF_pFp? 也會迫使棍子運動,只不過是主動運動(棍子被軸線兩側輪轂機械限位),所以分力 FpF_pFp? 是靜摩擦。
總結下來,地面作用于棍子的摩擦力分解為滾動摩擦力和靜摩擦力,滾動摩擦力促使輥子轉動,屬于無效運動:靜摩擦力促使輥子相對地面運動(類似于普通橡膠輪胎運動情況),而銀子被輪教“卡住”因而帶動整個麥輪沿著輥子軸線運動。
進一步總結:電機輸入輪轂的扭矩,一部分被棍子自轉“浪費掉”,另一部分形成靜摩擦驅動麥輪整體運動。單個麥輪實際的(受力)運動方向為棍子軸向方向,因此改變棍子軸線與輪轂軸線的夾角,就可以改變麥輪實際的(受力)運動方向。不過常見的麥輪,棍子與輪轂軸線的夾角均為 45 度。
單個麥輪速度分析
接下來分析棍子外側與地面接觸點的線速度 VωV_\omegaVω? 和平行于棍子軸線的速度 VpV_pVp? 之間的關系。
需要理解的一個問題是:平行于棍子軸線的速度 VpV_pVp? 是怎么產生的?
由于麥輪是由電機驅動,假如麥輪懸空未與地面接觸(棍子未繞棍子軸線轉動),則棍子外側速度方向與麥輪平行,其大小為
Vω=ω?rV_\omega = \omega \cdot rVω?=ω?r
其中,ω\omegaω 表示電機轉動角速度,rrr 表示麥輪有效半徑。
但是當麥輪與地面接觸后,情況則會發生變化:摩擦力會使棍子繞軸線轉動,電機扭矩提供的主動力則會產生分解,而有效轉換的靜摩擦力是分力 FpF_pFp?,也就是分力 FpF_pFp? 是促使麥輪平臺有效運動的力,對應速度分解也是一個道理。可以理解為加入只有一個麥輪在地面運動,當電機以速度 VωV_\omegaVω? 轉動,那么麥輪將自動適應以某一速度 VpV_pVp? 繞自身軸線被動旋轉,所以平行于棍子軸線的分速度 VpV_pVp? 與電機轉速的關系可表示為
Vp=Vω?cos?(45°)=ω?r?cos?(45°)V_p = V_\omega \cdot \cos(45\degree) = \omega \cdot r \cdot \cos(45\degree)Vp?=Vω??cos(45°)=ω?r?cos(45°)
其中,45°45\degree45° 表示棍子軸線與輪轂軸線的夾角,可見改變該夾角便可改變上式的比例關系。
正運動學
針對麥輪建立機體坐標系 body coordinate SbS_bSb?。
正運動學模型(forward kinematic model)將得到一系列公式,讓我們可以通過四個輪子的速度,計算出底盤的運動狀態。
結合上述單個麥輪的分析可知,麥輪以 Vω1V_{\omega1}Vω1? 的線速度進行旋轉時,產生有效的分速度 Vp1V_{p1}Vp1? 方向為平行于棍子方向(上圖左圖)。分速度 Vp1V_{p1}Vp1? 針對坐標系 SbS_bSb? 進行正交分解(上圖右圖),可以分別產生在 XXX 軸和 YYY 軸的分速度 Vp1xV_{p1x}Vp1x? 和 Vp1yV_{p1y}Vp1y?。其他三個輪子也會產生同樣的分解。
首先針對 YYY 軸,我們不難得到
VYb=Vp1y+Vp2y+Vp3y+Vp4yV_{Yb} = V_{p1y} + V_{p2y} + V_{p3y} + V_{p4y}VYb?=Vp1y?+Vp2y?+Vp3y?+Vp4y?
再考慮 XXX 軸,我們可以得到
VXb=Vp1x?Vp2x+Vp3x?Vp4xV_{Xb} = V_{p1x} - V_{p2x} + V_{p3x} - V_{p4x}VXb?=Vp1x??Vp2x?+Vp3x??Vp4x?
關于 XXX 和 YYY 軸方向比較好理解,難得是麥輪移動對車身旋轉方向 ωb\omega_bωb? 的影響。接下來我們重點分析旋轉。
如上圖所示,這里做了簡化,假設車身機械中心到麥輪機械中心的距離為 a+ba+ba+b,麥輪在連線的垂線方向的線速度為 ω?r\omega \cdot rω?r(即藍線方向與車身與麥輪連線垂直),那么我們就有
ωb?(a+b)=ω?r\omega_b \cdot (a+b) = \omega \cdot rωb??(a+b)=ω?r
而其他三個輪子同樣具有此種關系,同時每個輪子對車身的影響具有可加性。因此我們可以得到
ωb?(a+b)=?ω1?r?ω2?r+ω3?r+ω4?r\omega_b \cdot (a+b) = -\omega_1 \cdot r - \omega_2 \cdot r + \omega_3 \cdot r + \omega_4 \cdot rωb??(a+b)=?ω1??r?ω2??r+ω3??r+ω4??r
綜上所述,假設四個輪子的角速度大小分別為 ωM1,ωM2,ωM3,ωM4\omega_{M1}, \omega_{M2}, \omega_{M3}, \omega_{M4}ωM1?,ωM2?,ωM3?,ωM4?,輪子半徑相等為 rrr,那么有各個輪子的線速度為 vM1=ωM1?rv_{M1} = \omega_{M1}*rvM1?=ωM1??r。
[vM1vM2vM3vM4]=[ωM1?rωM2?rωM3?rωM4?r]\left[\begin{matrix} v_{M1} \\ v_{M2} \\ v_{M3} \\ v_{M4} \\ \end{matrix}\right] = \left[\begin{matrix} \omega_{M1} \cdot r \\ \omega_{M2} \cdot r \\ \omega_{M3} \cdot r \\ \omega_{M4} \cdot r \\ \end{matrix}\right] ?????vM1?vM2?vM3?vM4???????=?????ωM1??rωM2??rωM3??rωM4??r??????
整理后,有如下正運動學模型(這是簡化后的):
[ωbzvbxvby]=[?1(a+b)?1(a+b)1(a+b)1(a+b)1?11?11111][ωM1?rωM2?rωM3?rωM4?r]\left[\begin{matrix} \omega_{bz} \\ v_{bx} \\ v_{by} \\ \end{matrix}\right] = \left[\begin{matrix} -\frac{1}{(a+b)} & -\frac{1}{(a+b)} & \frac{1}{(a+b)} & \frac{1}{(a+b)} \\ 1 & -1 & 1 & -1 \\ 1 & 1 & 1 & 1 \\ \end{matrix}\right] \left[\begin{matrix} \omega_{M1} \cdot r \\ \omega_{M2} \cdot r \\ \omega_{M3} \cdot r \\ \omega_{M4} \cdot r \\ \end{matrix}\right] ???ωbz?vbx?vby?????=????(a+b)1?11??(a+b)1??11?(a+b)1?11?(a+b)1??11?????????ωM1??rωM2??rωM3??rωM4??r??????
逆運動學
逆運動學模型(inverse kinematic model)得到的公式則是可以根據底盤的運動狀態解算出四個輪子的速度。
直接通過矩陣計算即可得到。
由 4 個麥克納姆輪組成的移動機器人的逆運動學模型為
[ωM1?rωM2?rωM3?rωM4?r]=[?a?b11?a?b?11a+b11a+b?11][ωbzvbxvby]\left[\begin{matrix} \omega_{M1} \cdot r \\ \omega_{M2} \cdot r \\ \omega_{M3} \cdot r \\ \omega_{M4} \cdot r \\ \end{matrix}\right]= \left[\begin{matrix} -a-b & 1 & 1 \\ -a-b & -1 & 1 \\ a+b & 1 & 1 \\ a+b & -1 & 1 \\ \end{matrix}\right] \left[\begin{matrix} \omega_{bz} \\ v_{bx} \\ v_{by} \\ \end{matrix}\right]?????ωM1??rωM2??rωM3??rωM4??r??????=??????a?b?a?ba+ba+b?1?11?1?1111?????????ωbz?vbx?vby?????
其中 ωMi,i=1,2,3,4\omega_{Mi}, i = 1,2,3,4ωMi?,i=1,2,3,4 為輪子的驅動角速度,rrr 為輪子半徑。
附
附一下自己在推導時所制作的示意圖
自己設計的麥輪小車
Ref:
總結
以上是生活随笔為你收集整理的【UGV】从单个麦轮受力到麦轮小车运动学分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【UAV】高度控制代码分析
- 下一篇: 【Paper】2016_A Learni