劉廣亮,肖永飛,趙永國,孫 潔
(齊魯工業(yè)大學(xué)(山東省科學(xué)院) 山東省科學(xué)院自動化研究所 山東省機器人與制造自動化技術(shù)重點實驗室,濟南 250014)
移動機器人驅(qū)動方式有多種形式,主要包括電機驅(qū)動,液壓驅(qū)動和氣壓驅(qū)動等。 其中液壓驅(qū)動方式具有動力大、力與慣量比大、快速響應(yīng)性高、易于實現(xiàn)直接驅(qū)動等特點,適用于承載能力大、高功率密度比、抗沖擊以及防爆工作環(huán)境。 與電機驅(qū)動和氣壓驅(qū)動相比, 液壓驅(qū)動具有更高的功率密度,能夠滿足機器人野外運輸所需的高負重及快速運動需求,同時液壓驅(qū)動系統(tǒng)可以采用內(nèi)燃機提供能源動力,通過添加燃料進行快速補給,具有長時間的續(xù)航能力, 比電能源機器人更適合從事野外作業(yè)。目前廣泛應(yīng)用于四足、六足、多足等腿足式機器人以及煤礦井下機器人[1-4]。
由于液壓系統(tǒng)具有時滯性、強非線性、時變負載性的特點,所以液壓機器人的速度控制精度一直是難點問題,在此方面研究人員開展了很多研究工作。文獻[5]提出基于RBF 神經(jīng)網(wǎng)絡(luò)的自適應(yīng)最優(yōu)控制系統(tǒng)。 文獻[6]提出采用非線性特性分段校正方法來提高機器人控制性能的方法。 文獻[7]研究了液壓負載補償與跟蹤誤差補償結(jié)合的力控制方法,將閥控系統(tǒng)與泵控系統(tǒng)結(jié)合成新型的泵閥復(fù)合驅(qū)動系統(tǒng),既降低系統(tǒng)的能量損耗,又保證了液壓驅(qū)動單元響應(yīng)速度和響應(yīng)精度。
本文主要針對移動機器人的液壓驅(qū)動啟動死區(qū)、各個比例閥不均衡等非線性與時變負載問題,對液壓驅(qū)動的機器人速度精確控制進行研究。 采用分段補償和分段線性校正方法,設(shè)計了兩輪速度同步補償算法,實現(xiàn)移動機器人兩輪液壓馬達的同步控制,經(jīng)驗證機器人精度控制性能得到很大改善,速度控制精度和控制響應(yīng)提升明顯。
獨立兩輪差速運動學(xué)模型如圖1 所示,全局坐標系{XOY},局部坐標系{X′O′Y′}。 局部坐標系Y′軸與兩輪的中軸線重合,方向從右輪指向左輪。 X′軸方向為機器人的正前方。 假設(shè)機器人質(zhì)心C 位于兩驅(qū)動輪軸線的中點,與坐標系原點O′重合。 局部坐標系相對于全局坐標系的旋轉(zhuǎn)角為θ, 為機器人的方向角。
圖1 兩輪差速運動學(xué)模型Fig.1 Kinematic model of two-wheel differential drive
局部坐標系到全局坐標系的映射正交旋轉(zhuǎn)矩陣為
假定兩驅(qū)動輪軸線的長度為l, 左右驅(qū)動輪半徑都為r,機器人的位姿向量為p=(x,y,θ)T。 兩輪差速驅(qū)動移動機器人的正運動學(xué)方程[8]為
式中:v 為機器人質(zhì)心C 處的線速度;w 為機器人的轉(zhuǎn)向角速度;vr,vl分別為機器人的左右驅(qū)動輪線速度。
在全局坐標系下,機器人的代表點C 的位置和姿態(tài)可以通過式(2)中的速度關(guān)系式積分求得:
在航跡演算中根據(jù)式(3)計算機器人姿態(tài)軌跡。
假設(shè)相鄰時間段內(nèi)機器人曲線航跡近似為直線,如圖2 所示[9]。 同時假設(shè)機器人不是全向移動,只是前進和旋轉(zhuǎn),不能縱向移動。 機器人兩個相鄰運動時刻在采樣周期內(nèi)運動距離短,可以將軌跡看作勻速直線運動,也就是說機器人在Δt 時間內(nèi)沿局部坐標系X′軸移動了vΔt, 在全局坐標系統(tǒng)中移動距離為
圖2 相鄰點軌跡的直線近似Fig.2 Linear approximation of adjacent trajectory points
那么,t+1 時刻機器人姿態(tài)為
根據(jù)式(1)可知機器人中心點線速度v 為
角速度w 為
若vr=vl,機器人軌跡為直線段;若vr≠vl,機器人軌跡為圓弧。
機器人的逆運動學(xué)可以根據(jù)正運動學(xué)式(1)、式(2)及式(6)、式(7)求得。
即:
通常給定機器人中心點的線速度和角速度,然后根據(jù)式(8)、式(9)推出左右兩個驅(qū)動輪的線速度,也是機器人的驅(qū)動電機線速度vr,vl與機器人線速度v 及和角速度w 間的關(guān)系。
在控制系統(tǒng)驅(qū)動電機時,需要將驅(qū)動電機線速度轉(zhuǎn)換為電機的轉(zhuǎn)速值。設(shè)電機的轉(zhuǎn)速為n,單位為r/min,線速度的單位為m/s,由于:
則有:
式中:nr,nl分別為差速運動時左右輪轉(zhuǎn)速值,單位為r/min。
為了實現(xiàn)液壓機器人平穩(wěn)精準的運動,需要對機器人速度和加速度進行規(guī)劃[10],確保機器人在運動過程中速度不突變,平穩(wěn)過渡,從而避免出現(xiàn)機器人機械沖擊和失步震蕩。 同時由于機器人本體機械性能限定了機器人的速度范圍,超出速度限制的指令將是無效的,因此需要通過速度最大值限制方式對機器人速度、加速度、加加速度進行加減速控制[11]。
差速運動控制系統(tǒng)中(如ROS 的差速運動控制器[12])需要配置速度的最大最小值vmax,vmin,最終速度值為
式中的vmax,vmin在實際應(yīng)用中分別包括左右輪各兩個速度:機器人線速度和角速度。 從式(8)可知線速度和角速度要轉(zhuǎn)化為兩輪的轉(zhuǎn)速n。 而對每個特定的驅(qū)動電機轉(zhuǎn)速是有限制的(假設(shè)為最大轉(zhuǎn)速為nmax),即線速度和角速度合并后的兩輪轉(zhuǎn)速n 不能大于兩輪的最大轉(zhuǎn)速nmax,所以在設(shè)定機器人本體的最大線速度和角速度的時候需要考慮與驅(qū)動電機最大轉(zhuǎn)速之間的匹配。給定一個機器人線速度v,那么在驅(qū)動輪最大轉(zhuǎn)速的限制下就會有一個wmax,如果角速度指令超出這個wmax值,機器人也只能按wmax執(zhí)行轉(zhuǎn)向,結(jié)果會造成機器人轉(zhuǎn)向不足。
假設(shè)驅(qū)動輪的最大轉(zhuǎn)速為nmax,那么根據(jù)式(11)得到兩輪最大線速度:
再根據(jù)式(6)、式(7)可知機器人的線速度和角速度最大為
但是這兩個最大值不可能同時達到,當轉(zhuǎn)向速度最大達到wmax時:
根據(jù)式(6),此時機器人線速度v=0。 而當線速度最大達到vmax時:
再根據(jù)式(7),此時機器人角速度w=0。
假設(shè)給定機器人額定線速度v~, 如果其中一個驅(qū)動輪(如右輪)達到最大轉(zhuǎn)速,則此時另一個驅(qū)動輪(左輪)速度為
此時機器人角速度w 為
因此在機器人驅(qū)動電機最大轉(zhuǎn)速限制下,機器人角速度與線速度存在制約關(guān)系,如圖3 所示,需要根據(jù)實際需要分別設(shè)置機器人移動的線速度和角速度,并保證線速度和角速度合并后不會超過驅(qū)動電機最大轉(zhuǎn)速限制。
圖3 角速度與線速度之間的制約關(guān)系Fig.3 Constraint relation between angular and linear velocity
在機器人加減速控制中可以根據(jù)S 曲線加減速法[13]進行配置。 假設(shè)差速運動控制器中配置加速度的最大最小值分比為amax,amin,vk,vk+1,時間差為Δt,那么Δt 時間內(nèi)對應(yīng)最大最小速度變化值分別為dvmax,dvmin,那么:
最后速度:
同理,假設(shè)差速運動控制器中配置加速度的最大最小值分別為jmax,jmin,vk,vk+1時間差為Δt,那么Δt 時間內(nèi)對應(yīng)最大最小加速度變化值分別為damax,damin,那么:
最后速度:
由于液壓系統(tǒng)的時滯性和時變負載性,造成液壓驅(qū)動與伺服電機驅(qū)動有很大不同,首先液壓馬達具有啟動閾值(死區(qū)),輸入值低于啟動閾值馬達不運轉(zhuǎn),其次移動機器人的兩個液壓馬達,存在流量分配不均勻的問題,即給兩個液壓馬達同樣的輸入指令值,左右液壓馬達運行速度快慢不一樣,并且在前進方向和后退方向也存在輸出比例不一致的問題。
如圖4 所示,對機器人左右輪前進與后退方向進行速度的測試,從得到測試數(shù)據(jù)分析可以看到左右輪輸入啟動閾值不同,前進方向左輪啟動閾值約385,右輪啟動閾值約357(注:液壓控制器輸入最大值1000)。輸入輸出比也不一致,同樣的輸入左輪慢右輪快。 并且左右輪在前進方向和后退方向,啟動閾值也不同,右輪在前進方向啟動閾值為357,后退方向啟動閾值都是385。 圖4 充分顯示了液壓系統(tǒng)的輸入輸出的非線性特點。
圖4 左右輪原始速度數(shù)據(jù)分析Fig.4 Analysis of two wheel original velocity data
在機器人自主控制時,必須保證驅(qū)動電機的線性輸出,即同樣輸入指令機器人的左右輪以及前進和后退都應(yīng)該是同樣的輸出,這樣才能保證液壓機器人平穩(wěn)準確運行,為此構(gòu)建基于分段線性擬合的液壓機器人輸入輸出模型如下:
式中:c 為啟動閾值;vin為輸入值;k 為系數(shù);下標r,l表示右輪和左輪; 下標b,f 表示前進和后退。 如kfr表示前進方向右輪系數(shù)。
將整個液壓系統(tǒng)劃分為左右輪和前進后退方向4 種情況分別進行分段數(shù)據(jù)線性擬合和分段線性校正,從而獲得擬合參數(shù),見表1。
表1 速度控制模型擬合參數(shù)表Tab.1 Parameters of velocity control model fit
然后在首次擬合的基礎(chǔ)上,進行多組機器人樣機試驗驗證分析,在同時兼顧左右輪和前后方向匹配,獲取最終的優(yōu)化參數(shù),見表2。
表2 速度控制模型優(yōu)化參數(shù)表Tab.2 Optimized parameters of velocity control model
液壓機器人樣機如圖5所示,為履帶式內(nèi)燃機驅(qū)動機器人。
圖5 液壓驅(qū)動機器人Fig.5 Hydraulically driven robot
液壓驅(qū)動部分采用EPEC 液壓控制器控制比例閥,完成對液壓馬達的轉(zhuǎn)速控制。 內(nèi)燃機的發(fā)動機為洋馬2TNV70-PYU,發(fā)動機功率7.3 kW,轉(zhuǎn)速2400 r·min-1,液壓系統(tǒng)采用力士樂,液壓流量20 L/min,液壓系統(tǒng)壓力25 MPa。 機器人驅(qū)動輪距0.8 m,驅(qū)動輪直徑0.285 m。
對采用優(yōu)化參數(shù)的液壓機器人樣機對進行了測試,結(jié)果如圖6 所示,實驗結(jié)果表明在相同輸入下左右輪、前進方向、后退方向速度輸出基本匹配一致,具有線性關(guān)系。
圖6 左右輪速度對比Fig.6 Comparison of left and right wheel velocity
液壓驅(qū)動機器人具有動力性能好,越野能力強的特點,特別適用于特種作業(yè)環(huán)境,但是液壓驅(qū)動控制模型復(fù)雜,精確控制難度大。 本文在分析了機器人差速運動控制理論模型和加減速控制基礎(chǔ)上,詳細研究了液壓驅(qū)動速度控制模型,采用分段數(shù)據(jù)線性擬合和校正的方法,對機器人速度控制參數(shù)進行了優(yōu)化,并應(yīng)用于內(nèi)燃機驅(qū)動液壓機器人,經(jīng)測試驗證機器人運行平穩(wěn)可靠。