王海明,張欣剛,姚文莉
(青島理工大學 理學院,山東 青島 266520)
針對輪式移動機器人的研究通常是以機器人系統正常行駛在結構化環境中為前提[1-2]。建模時假定車輪與地面之間緊密貼合,車輪純滾動無側滑,在運動學分析時添加非完整約束,并根據牛頓歐拉法[3]或者拉格朗日法[4]建立輪式機器人系統的動力學方程。但是隨著移動機器人技術的發展,輪式移動機器人的應用場景和范圍不斷擴大,逐漸應用于動態、未知的非結構化環境中[5],車輪與地面之間無法始終維持緊密貼合,致使非完整約束遭到破壞。原有的建模方法無法反映系統在非結構化環境中失去非完整約束時可能發生的滑移和側滑等現象,對輪式機器人系統的軌跡跟蹤與控制也可能會存在精度不足的問題。
劉延柱[6]采用動量定理和動量矩定理詳述了兩輪自平衡車的運動原理并進行動力學分析,解釋了兩輪自平衡車利用兩個獨立的驅動輪控制系統加減速和左右轉彎的力學原理。針對非完整約束可能失效的情況,徐梓堯等[7]考慮了飛機在地面滑行時前起落架輪的側向滑移,采用經典庫侖摩擦模型描述前起落架的輪-地摩擦力,利用Routh方程導出飛機降落滑跑過程的動力學模型,并通過數值仿真分析其動力學行為。但是由于經典庫侖摩擦模型在相對速度零點處為集值函數,通常需要采用試算法判斷動/靜摩擦狀態的切換,同時也需要開發復雜的偵測器監測粘滯-滑移狀態轉換,這些工作都給數值仿真帶來了較大困難[8]。各類修正的庫侖摩擦模型雖然通過光滑化方法解決了數值求解困難的問題,但普遍在零點處存在蠕動[9],不能反映動/靜切換時的“開關效應”。
綜上所述,對于在非結構化環境中運行的輪式機器人,在非完整約束失效時準確描述系統可能發生的粘滯-滑移運動狀態、獲得輪-地間摩擦力成為軌跡控制的關鍵。本研究以兩輪自平衡車為研究對象,引入LuGre模型[10]反映輪-地相對滑移過程中的粘滯-滑移現象,通過虛功原理建立系統動力學方程。數值仿真分析捕捉到了輪-地粘滑狀態,驗證了所建模型的準確性。
將兩輪自平衡車抽象為車身踏板和左、右驅動輪三個剛體組成的多體系統,如圖1所示。設兩輪自平衡車的總體基固連在地面,連體基原點位于車身踏板質心處,選取8個廣義坐標描述系統在空間中的運動:

圖1 平衡車模型
q=[x,y,z,α,β,γ,φ1,φ2]T。
(1)
式中:[x,y,z]T表示車身踏板的空間位置坐標;[α,β,γ]T為歐拉角,表示車身踏板連體基的姿態,[φ1,φ2]T表示左、右兩個車輪相對于車身踏板的轉角。
LuGre模型在豬鬃模型的基礎上引入了鬃毛平均變形概念,t時刻鬃毛的平均變形可以用狀態變量z表示:
(2)
式中,vr為兩接觸物體間相對速度大小,g(vr)的計算式為:
(3)
該函數描述了靜/動摩擦狀態切換時的Stribeck效應,即在相對速度較低的范圍內,摩擦力隨相對速度的增加而減小的現象。其中,vs為Stribeck速度,μs、μk分別為靜摩擦系數和動摩擦系數。
利用LuGre模型可將摩擦力fd表示為法向約束力fn的連續函數,
(4)
式中:σ0為豬鬃平均變形剛度,σ1為平均阻尼系數,σ2為粘性阻尼系數。
LuGre模型可以準確刻畫摩擦過程中的粘滯滑移、Stribeck效應以及摩擦滯后等現象,在控制領域受到廣泛關注。但實際使用時動態摩擦參數的選擇以及積分步長對數值仿真的結果影響較大,在選取動態參數以及積分器時應注意如下幾點。
1) 豬鬃平均變形剛度σ0應足夠大,否則在靜摩擦狀態下將產生較大的相對位移。

3) 采用剛性積分器,例如matlab ode15s或ode23tb可有效濾除LuGre模型中的高頻震蕩,從而在放松步長要求時仍能保證數值解的穩定性,提高求解效率。若系統頻繁在粘滯-滑移狀態之間切換,則積分器精度應適當增大,避免過早跳出靜摩擦狀態。
4) 動態摩擦參數對數值解影響較大,需要準確辨識。文獻[11]將數值仿真結果與利用庫侖摩擦模型的結果進行對比,得到了吻合較好的參數,本研究選擇文獻[11]得到的參數值。
在LuGre模型的基礎上,依據虛功率原理,現推導包含摩擦力的兩輪自平衡車的動力學方程。與結構化環境不同,非結構化環境中平衡車輪-地接觸力實時變化,為此引入線性互補理論推導輪-地間動態接觸力線性互補方程[12]。
兩輪自平衡車系統輪地間所受接觸力的虛功率可表示為:
(5)

Fi=fni+fdi,
(6)
(7)
式中:fni為接觸點法向接觸力,fni表示法向接觸力的值,en為法向單位向量,ed為切向單位向量。因此輪地間接觸力的合力可以表示為:
(8)
將式(8)代入式(5)中,得到
(9)

將考慮摩擦力的兩輪自平衡車系統的動力學方程表示為[13]:
(10)
式中:M為廣義質量陣,F為廣義力陣,Fs為輪-地接觸力和摩擦力對廣義力的貢獻。
Fs=Kffn。
(11)
式中:Kf=(Kf1,Kf2),fn=(fn1,fn2)T。
由于所選取的廣義坐標相互獨立,式(10)可簡化為:
(12)
直接引入接觸力模型計算非結構化環境下的輪-地接觸力,相當于在LuGre模型的基礎上再引入一層本構關系,積分步長必須極小才能夠避免產生由虛假侵入所造成的虛高接觸力。為克服該問題,一種可行的解決方式是將輪-地接觸力視為輪-地單邊約束提供的約束反力[14],引入互補理論描述法向接觸力fn與輪地之間的縫隙函數δ之間的關系:
fn≥0,δ≥0,fn·δ=0。
(13)
式中:法向接觸力fn和輪地之間的縫隙函數δ均恒大于等于零,且當縫隙函數不為0,即輪地相互分離時,法向接觸力必定為0;當法向約束力不為0,即輪地相互接觸時,縫隙函數必為0。
對式(13)求兩次時間導數,可得加速度層面的互補關系
(14)
兩輪自平衡車在通常情況下其車輪與地面都是緊密貼合的狀態,即處于平順接觸,此時縫隙函數與其一階導數為0,即
(15)
將式(15)代入到式(14)中,得到平順接觸時法向接觸力與縫隙函數的二階導數之間的互補關系
(16)
與式(16)等價的非線性方程組可表示為:
(17)
在非結構化環境中,輪-地間緊密貼合的假設可能被破壞,式(17)所表述的平順接觸時加速度層面的線性互補關系也不復存在。因此該模型不適用于對兩輪自平衡車在非結構化環境中的運動進行全過程仿真。一種可行的思路是引入時均縫隙函數代替時變縫隙函數建立線性互補關系[15],即
(18)

(19)
由于縫隙函數的二階導數總可以由系統廣義加速度表示:
(20)
式中:Aai為縫隙函數的二階導數與廣義加速度之間的變換陣,bai為加速度余項,可表示為:
bai=ωi×(ωi×ri)。
(21)
式中:ωi為兩輪自平衡車的角速度矢量,ri為兩輪自平衡車質心到接觸點的矢徑。
因此,時均縫隙函數可進一步表示為:
(22)
由式(12),廣義加速度也可由接觸力所提供的廣義力線性表示為:
(23)
聯立式(22)、式(23),可將時均縫隙函數與接觸力之間的線性關系寫為:
(24)
或改寫為緊湊形式:
(25)


(26)


1) 令k1=max(bc),則:
(27)
2) 令k2=max(k1),則:
(28)


對兩輪自平衡車系統施加不同的驅動力矩并考慮不同的工況,分析兩輪自平衡車運動狀態的變化。建立兩輪自平衡車系統動力學模型,模型參數設置為:車身踏板質量m0=10 kg,單個驅動輪質量mi=2 kg,驅動輪半徑r=0.13 m,車身踏板寬0.26 m,車身踏板長0.54 m。LuGre模型參數取值為:σ0=106N/m,σ1=350 N·s/m,σ2=0,vs=8×10-4m/s,驅動輪與地面之間的靜摩擦系數μs=0.3,動摩擦系數μk=0.2。
圖2給出了系統受兩組不同驅動力矩時運動狀態的對比。圖2(a)~2(c)為兩個驅動輪受相同驅動力矩M1為1 N·m時車身y方向位移以及兩個驅動輪的轉動角度的曲線,圖2(d)~2(f)為其速度和轉動角速度曲線。圖2(g)~2(l)是兩驅動輪受驅動力矩M2為3.5sin(3t) N·m的作用時車身y方向位移和車輪轉動角度以及速度和角速度的變化曲線。結果表明,兩輪自平衡車在兩個相同驅動力矩的作用下保持直線運動,由圖2(a)~2(c)、2(d)~2(f)不難看出,車身y方向位移與驅動輪轉動角度之間以及車身速度與驅動輪轉動角速度之間存在明顯定量關系:

圖2 系統運動狀態
(29)
然而系統在驅動力矩M2的作用下,車身運動的位移和驅動輪轉動角度以及車身速度和驅動輪角速度之間不再滿足式(29)的關系。
圖3為車身運動位移與驅動輪轉動距離之間差值的曲線,直線為M1的作用,虛線為M2的作用,可以看出,系統在驅動力矩M2的作用下輪地間會產生相對運動,意味著此時兩輪自平衡車已經發生相對滑移,系統非完整約束遭到破壞。

圖3 相對位移
基于LuGre摩擦模型,圖4為系統在驅動力矩M2的作用下驅動輪與地面之間摩擦力的變化。圖4表明,LuGre摩擦模型能夠反映輪地之間的粘滯-滑移行為,并且可以看出在相對運動發生時,摩擦力產生由最大靜摩擦力到滑動摩擦力的突變。

圖4 驅動輪所受摩擦力
兩輪自平衡車在運動過程中,車輪與地面之間還會因為制動、轉向以及受到擾動(如路面不平或積水積雪等導致的摩擦系數降低)而發生橫向側滑。

圖5為兩個驅動輪受相同驅動力矩M3時車身y方向位移、兩個驅動輪的轉動角度以及車身整體位移和轉動角度,圖6為左驅動輪在運動過程中所受到的來自x軸與y軸方向的摩擦力。可以看出,由于摩擦系數的改變,2 s后左驅動輪在驅動力矩的作用下處于一種近乎不受約束的狀態,轉動角度不斷增大,遠遠超過兩輪自平衡車整體運動軌跡;通過圖5(d)、5(e)可以看出,兩輪自平衡車在運行2 s后偏移初始的期望軌跡,出現橫向位移,并且車身不斷來回擺動,說明此時兩輪自平衡車輪地間產生橫向側滑,已經無法對兩輪自平衡車進行準確地控制。

圖5 考慮側滑時運動狀態

圖6 左驅動輪所受摩擦力
本研究基于LuGre模型建立了考慮粘滑摩擦的兩輪自平衡車動力學模型,分析了不同工況下兩輪自平衡車可能發生的縱向和側向滑移情況,得出以下結論。
1) 兩輪自平衡車在非結構化環境中運行時若非完整約束被破環,會導致原有的模型失效。本研究將兩輪自平衡車視為多剛體系統拓撲結構,基于虛功率原理,引入考慮粘滯-滑移效應的摩擦力模型分析輪-地間摩擦過程中的粘滯-滑移行為,引入線性互補理論描述輪-地動態接觸力,建立了新的動力學模型,并引入規范化方法和變步長策略,提高了求解效率。該建模過程邏輯清晰,易于編程,仿真結果與實際相符,驗證了所建模型的正確性。
2) 兩輪自平衡車驅動力矩過大時將會發生滑移。本研究建立的考慮粘滯-滑移摩擦的動力學模型能夠對運動過程中存在的粘滯-滑移現象進行準確偵測跟蹤,并就數值求解過程中求解器選擇、求解精度控制以及積分器步長選擇對數值結果的影響進行分析,為軌跡跟蹤控制提供理論牽引。
3) 路面摩擦系數的突然改變會引起兩輪自平衡車所受摩擦力發生變化,導致車輪發生空轉,車輪轉動角度與車身位移之間的關系被破壞,車體偏離期望軌跡并發生劇烈的擺動產生縱向以及側向滑移。如何在失控后重新對兩輪自平衡車進行軌跡控制是后續研究需要解決的問題。