李曉理, 張超, 趙艷領(lǐng), 朱曉慶, 薛艾琳
(1. 北京工業(yè)大學(xué) 信息學(xué)部,北京 100124; 2.計算智能與智能系統(tǒng)北京市重點實驗室,北京 100124; 3. 數(shù)字社區(qū)教育部工程研究中心,北京 100124; 4. 北京未來網(wǎng)絡(luò)科技高精尖創(chuàng)新中心, 北京 100124;5. 機械工業(yè)儀器儀表綜合技術(shù)經(jīng)濟(jì)研究所,北京 100055)
如今機器人的需求以及應(yīng)用場景的多樣化逐步加深,對非結(jié)構(gòu)化地形的良好適應(yīng)性往往是戶外工作機器人設(shè)計中必須考慮的一項. 機器人種類繁多,從其運動方式上來說大致分為足式、輪式、履帶式. 足式步行機器人研究目前較為熱門,基于離散的運行步態(tài),足式機器人可以選擇最優(yōu)的落地點,增加穩(wěn)定性. 典型的雙足機器人具有控制自由度少、能耗低的優(yōu)點,通過微小的能量輸入,可以實現(xiàn)擬人的自然步態(tài),將運動過程中的動能和勢能合理轉(zhuǎn)換成等效的驅(qū)動能量,實現(xiàn)動態(tài)雙足機器人多工況、多任務(wù)的穩(wěn)定型周期運動[1],但是不可否認(rèn)的是目前雙足機器人由于其結(jié)構(gòu)的復(fù)雜性,在實際應(yīng)用中還存在著較大的限制,且其運行效率相對較低[2]. 履帶式機器人與輪式機器人在運行速度方面占優(yōu)勢,但其環(huán)境適應(yīng)性較差,在復(fù)雜多變的地形中運動容易受限[3]. 在自治式移動機器人的研究中,以仿生的思想設(shè)計機器人,是當(dāng)前該類機器人的一個大的研究方向,楊貴志等[4]描述了類似蛇形結(jié)構(gòu)的移動機器人,Chen 等[5]研究了模仿毛蟲的運動形態(tài)的機器人,并給出了其運行姿態(tài). 此類機器人模仿自然界生物的機體結(jié)構(gòu)和與之相適應(yīng)的運動模式,在越障方面取得了良好的效果. 馬宗利等[6]研究了仿獵豹四足機器人. 西南大學(xué)的譚興軍等[7]研制了一種以蟑螂為原型設(shè)計的偏心輪式的六足機器人,本文在其基礎(chǔ)上對機器人進(jìn)行進(jìn)一步封裝與升級,將電池與無線模塊部分封裝進(jìn)機器人實體中,使其能夠真正地在室外運行. 在控制器設(shè)計上也采用了更為先進(jìn)的仿生CPG控制方法[8],偏心輪足材料使用了韌性更好的彈簧鋼.
移動式機器人在進(jìn)行工作時首先要保證自身的穩(wěn)定性,即不翻倒、不摔跤. 對于機器人運行穩(wěn)定性的分析,Mcghee等[9]最早提出了一種靜態(tài)穩(wěn)定裕度(static stability margin,SSM)方法,該方法定義質(zhì)心在水平方向上的投影與支撐邊的最短連線作為穩(wěn)定性的衡量標(biāo)準(zhǔn),但是這種方法不能適用于非平坦地形的環(huán)境中. Messuri等[10]介紹了能量穩(wěn)定裕度方法,將使機器人傾翻的最小能量值定義為穩(wěn)定裕度,該方法后來被進(jìn)行了拓展,能夠反映機器人內(nèi)外部負(fù)載對穩(wěn)定性的影響[11]. Papadopoulos等[12]介紹了一種力角穩(wěn)定性方法分析機器人的動態(tài)穩(wěn)定性. 上述方法均對機器人在運行過程中的穩(wěn)定性進(jìn)行了研究. 偏心輪六足機器人機械結(jié)構(gòu)較為特殊,使用特定的爬坡步態(tài)時,其重心位置會持續(xù)發(fā)生移動,通過穩(wěn)定錐方法[13-15]結(jié)合力角穩(wěn)定性方法進(jìn)行該偏心輪六足機器人爬坡穩(wěn)定性的分析.
本文主要提出一種與偏心輪六足機器人機械結(jié)構(gòu)相適應(yīng)的爬坡步態(tài)規(guī)劃,并對其在爬坡過程中的穩(wěn)定性的進(jìn)行了分析,最后通過仿真和物理實驗進(jìn)行該步態(tài)穩(wěn)定爬坡的可行性驗證與說明.
針對機器人爬坡過程中不傾倒的問題,本文采用穩(wěn)定錐方法和力角穩(wěn)定性方法進(jìn)行穩(wěn)定性分析. 為了簡化問題,設(shè)機器人重心位置Pc是穩(wěn)定錐的錐點,并以Pc為原點建立坐標(biāo)系,如圖4所示. 對于機器人所有可能觸地的點或面來說,只需考慮最外側(cè)的觸地點或者面,一般而言觸地點或者觸地面在水平面的投影構(gòu)成一個凸多邊形. 如圖1所示,F(xiàn)r是除向上的支持力外包含重力的外力之和. 對于需要考慮的機器人最外側(cè)著地點Pi(i=1,2,…n),將其相對于Pc的矢量按順時針方向定義為Pi(i=1,2,…,n).
(1)
將各著地點按順時針方向連接起來,定義為傾翻邊線ai(i=1,2,…,n).
ai=Pi+1-Pi(i=1,2,…,n-1),
(2)
an=P1-Pn.
(3)
將穿過機器人重心Pc且垂直于傾翻邊線ai的向量定義為該傾翻邊線法向量li(i=1,2,…,n)為
(4)
式中:
(5)
I為3×3的單位矩陣. 定義Fr和li的夾角為傾翻邊線的穩(wěn)定角θi.
對機器人的受力情況進(jìn)行分析,由牛頓力學(xué)得出以下力學(xué)方程:
∑fin=∑(fg+fm+fs+fd).
(6)
式中:fin為機器人的慣性力;fg為機器人受到的重力;fm為系統(tǒng)受到的載荷力;fs為系統(tǒng)各支撐部件受到的支持力,為方便分析,忽略機體運行時的慣性,認(rèn)為此時的支持力就等于地面對機體的反作用力;fd為其他直接作用在機體上的外部擾動力;Fr為作用在重心上并可能會引起機器人傾覆的合外力,由式(7)得出
Fr=∑(fg+fm+fd-fin)=-∑fs.
(7)
同理,作用在重心處的合力矩τr可以通過下式得出
τr=∑(τg+τm+τd-τin)=-∑τs.
(8)
當(dāng)系統(tǒng)處于靜態(tài)時,系統(tǒng)只受重力∑mgi,此時作用在重心處的合力Fr與合力矩τr為
Fr=∑fg=∑mgi,
(9)
τr=∑τg.
(10)
由穩(wěn)定錐幾何關(guān)系可得,F(xiàn)r作用在傾翻邊線ai上的力Fri為
(11)
τr作用在傾翻邊線ai上的力矩τri為
(12)
(13)
其中:
(14)
使用穩(wěn)定錐方法,評判穩(wěn)定性的指標(biāo)為如下兩個夾角.
(15)
可得
(16)
θi的范圍為
-π≤θi≤π.
(17)
(18)
可得
(19)
(20)
(21)
考慮系統(tǒng)的全局穩(wěn)定性,取
εi=min(θi,βi,β′i).
整個系統(tǒng)的最小穩(wěn)定角εmin為
εmin=min(εi)(i=1,2,…,n).
(22)
當(dāng)εmin為正值時,機器人處于穩(wěn)定狀態(tài). 當(dāng)εmin為負(fù)值時,表明質(zhì)心所受的向下的等效力的方向在傾翻邊線之外,這樣的系統(tǒng)是不穩(wěn)定的,會發(fā)生傾翻. 當(dāng)εmin為0時,系統(tǒng)處在臨界穩(wěn)定狀態(tài).
機器人在不翻倒的前提下能夠持續(xù)地爬坡,整個系統(tǒng)所受的驅(qū)動力是由偏心輪足與坡面間的摩擦力提供的. 在持續(xù)爬坡的過程中機器人系統(tǒng)始終與地面接觸,因此可以將機器人看作一個實體. 作機器人在爬坡過程中的受力分析,如圖2所示,為保證機器人能夠持續(xù)爬坡,由幾何關(guān)系可得
(23)
即
α≤arctanμ.
(24)
式中:α為坡面夾角;μ為機器人與地面的摩擦因數(shù);m為機器人質(zhì)量.
由于本文所研究的機器人足結(jié)構(gòu)為偏心輪構(gòu)造,各足運動的角度不同,必然會導(dǎo)致著地點的坐標(biāo)發(fā)生變化. 所以,在討論機器人爬坡的穩(wěn)定性之前先介紹本六足機器人爬坡所采用的步態(tài). 如圖3所示,本六足機器人在爬坡過程中采用類似于波浪形態(tài)的步態(tài)模式. 在準(zhǔn)備階段,6只足均呈相同的姿態(tài)著地,在機器人準(zhǔn)備上坡之前,各足姿態(tài)必須先調(diào)整為此模式,如圖3中的第一個狀態(tài)所示. 隨后的7個狀態(tài)展現(xiàn)了機器人以此種步態(tài)爬坡時的整個運動周期. 采用這種步態(tài)時,機器人的六只足被分成前中后3組,在運動過程中交替變化,波浪步態(tài)因此得名.
6只足平均分布于機體的外側(cè),如果提供的支持力大小不一致,則機器人在運動過程中相應(yīng)的幾個支點受力不均衡,即在本該保持平衡的方向上產(chǎn)生多余的分力致使機體在運行過程中會發(fā)生扭斜造成姿態(tài)紊亂,因此六只足高度的協(xié)調(diào)性是波浪步態(tài)的前提. 為保證偏心輪足的運動同步性,在電機的控制器設(shè)計中,采用了經(jīng)典的基于位置、速度、電流三閉環(huán)控制系統(tǒng),通過這3個量的實時反饋,控制系統(tǒng)能極大限度地減小由偏心輪足觸地產(chǎn)生的瞬時擾動對系統(tǒng)的干擾,保證電機能夠維持一定的運行速度,達(dá)到由CPG產(chǎn)生的目標(biāo)位置值. 以豎直向下為初始位置(下文角度數(shù)均相對于此初始位置,順時針旋轉(zhuǎn)為正方向),如圖3所示,第2階段時,前一組足先逆時針運行至-180°處,機體依靠后兩組足著地支撐. 第3個階段順時針運行至325°處,在第4個階段所有的足均運行至87°. 其中階段3到階段4的過程中,機器人會穩(wěn)步前進(jìn). 在第5個階段,后一組足順時針運行至180°處,通過之后的3個階段的運動,完成整個周期的運動變換,再次進(jìn)入第2階段,進(jìn)行新一輪的爬坡運動. 類似于自然界中的爬行動物,機器人的足在懸空階段時運行速度較快,觸地階段時速度較慢.
整個爬坡過程中,除著地點位置會發(fā)生變化外,其重心位置亦會發(fā)生上下移動. 通過階段2的分析,在機器人穩(wěn)定性判定中,需要考慮著地點、傾翻邊線的法線與機體所受合力方向的夾角. 在爬坡過程中機體與地面應(yīng)始終保持一定的距離,防止當(dāng)遇到崎嶇的坡面時機體底部與坡面觸碰,從而發(fā)生一定程度的傾斜或側(cè)移.
系統(tǒng)的穩(wěn)定性保證了機器人在爬坡過程中不會傾倒. 另外,需要滿足機器人能夠持續(xù)爬坡的要求,保證機器人在爬坡過程中有足夠的牽引力,才不至于沿坡面下滑. 經(jīng)實驗測得纏上橡膠的足與實驗地面間的摩擦因數(shù)μ的范圍在0.5~0.7之間,取μ=0.65,根據(jù)階段3中的分析,由式(24)得出該機器人能夠持續(xù)爬坡能適應(yīng)的最大坡度為
α≤arctanμ= 33.02°.
(25)
從圖3所示的步態(tài)示意圖可以發(fā)現(xiàn),在機器人的爬坡運動過程中,階段2和階段5機器人容易發(fā)生傾翻,而其他幾個階段均能保持重力矢量的方向位于各著地點形成的多邊形內(nèi)部,滿足穩(wěn)定錐給定的穩(wěn)定條件,系統(tǒng)是穩(wěn)定的. 其中階段2易前傾,階段5易后仰. 針對這兩個臨界的狀態(tài)進(jìn)機器人穩(wěn)定性分析.
為了方便分析,給出六足機器人運行至階段2時的俯視圖和側(cè)視圖,如圖4和圖5所示,并以此建立穩(wěn)定錐模型. 由圖4可知,機器人運行至此階段時,中、后四只足支撐坡面,等待前兩只足落下,4個著地點次序連接在坡面形成一個四邊形. 對最外側(cè)機器人所有可能的著地點Pi(i=1,2,…,6) 按順時針方向進(jìn)行編號,并將所有的著地點連接起來,相鄰的著地點間構(gòu)成的連線作為傾翻邊線. 以機器人重心pc所在位置建立直角坐標(biāo)系,并過pc分別做6個傾翻邊線ai(i=1,2,…,4)的法線li(i=1,2,…,4). 在爬坡過程中,根據(jù)穩(wěn)定錐模型分析,機器人著地和傾翻邊線的法線li相對于機體重心處所受等效合力的夾角決定機器人在坡面上的穩(wěn)定程度. 此時機器人易以中間一組足為支點向前傾倒,最可能發(fā)生傾翻的著地點是P3,最危險的傾翻邊線是a3. 機器人殼體部分為對稱結(jié)構(gòu),其質(zhì)心位置在機體的中央位置,P2,P3與坐標(biāo)軸原點的相對關(guān)系是相同的. 如圖5所示,以質(zhì)心pc為原點建立空間直角坐標(biāo)系x,y軸平行于水平面,x方向水平向左,y方向垂直紙面向外,z軸豎直向上.
將pc處的坐標(biāo)原點在xoz方向的機體最外側(cè)所處的的平面的投影o′(如圖4中側(cè)視圖所示,o′處于機器人外側(cè)中間輪與機體的連接處)與P4的連線同水平方向構(gòu)成的夾角γ作為衡量機器人以此種波浪形爬坡步態(tài)運行時相對于坡面的角度. 設(shè)機體底部與坡面的距離為H0,其輪足的直徑為R,傾翻軸a2,a4的法線向量l2、l4在xoz平面上投影l(fā)′2、l′4,θi(i=1~4)為機器人爬坡時重力矢量與各傾翻軸法線向量li(i=1~4)在xo′z平面上的夾角,α為當(dāng)前時刻的斜坡坡度. 則由幾何關(guān)系可知
H0<‖l′2‖≤R.
(26)
由圖3所示的步態(tài)示意圖可知,階段2和階段5時機體距離坡面最近. 為保證機體在運行過程中不與地面觸碰,機體底部與坡面的距離h的最小值H0應(yīng)為正值,本文提出的這種步態(tài)適用于一般常見坡面,在尺寸方面作如下設(shè)計:H0=5 cm,R=12 cm,W=11.3 cm,W是機體寬度的1/2. 機器人為對稱結(jié)構(gòu),在坡面上一般不會產(chǎn)生左右翻轉(zhuǎn)運動,本文主要分析其因俯仰運動而使機身產(chǎn)生不穩(wěn)定運動的情況,且雙側(cè)的角度關(guān)系是一樣的,因此只需用分析單側(cè)的角度關(guān)系,由圖4,圖5得各著地點坐標(biāo)如下:
P1=[‖l′4‖sinθ1-W-‖l′4‖cosθ1]T,
(27)
P2=[-‖l′2‖sinθ2-W-‖l′2‖cosθ2]T.
(28)
P3=[-‖l′2‖sinθ2W-‖l′2‖cosθ2]T.
(29)
P4=[‖l′4‖sinθ1W-‖l′4‖cosθ1]T.
(30)
根據(jù)圖5,由幾何關(guān)系可知:
(31)
(32)
將式(31)代入式(26)可得
α-θ<0.
(33)
系統(tǒng)穩(wěn)定的前提是臨界穩(wěn)定性指標(biāo)應(yīng)εmin為正值,即質(zhì)心受力方向與傾翻邊線的法線以及對應(yīng)的著地點間的角度均為正值. 在實際的應(yīng)用中,為了保證機器人在爬坡過程中具有較好的穩(wěn)定性,該階段設(shè)置其臨界穩(wěn)定性指標(biāo)εmin中的θ1為35°,即
min(θ1,θ2)≥35°.
(34)
分別對偏心輪足著地點的位置矢量P1,P2,P3,P4進(jìn)行標(biāo)準(zhǔn)化處理:
(35)
(36)
(37)
(38)
機器人爬坡運動時,在豎直向下的方向上只受到重力.M為機器人質(zhì)量,g為重力加速度,其重力矢量表示如下:
Fr=[0 0 -Mg]T.
(39)
足著地點P1,P2之間連線構(gòu)成的傾翻邊線a1、a4由下式表示出來:
a2=P3-P2,
(40)
a4=P1-P4.
(41)
將點P1,P2的位置矢量帶入式(40)(41)得
a2=[0 2W0]T.
(42)
a4=[0 -2W0]T.
(43)
由式(2)(4)(42)(43)得其過原點的傾翻邊線a2、a4的法線l2、l4分別為
l2=[‖l′2‖sinθ20 -‖l′2‖cosθ2]T.
(44)
l4=[-‖l′4‖sinθ10 -‖l′4‖cosθ1]T.
(45)
θ1=35°.
(46)
β1=β4=51.32°.
(47)
β2=β3=70.609°.
(48)
參照圖3的機器人運動步態(tài)可知,在之后的階段3及階段4,6只偏心輪足同步順時針轉(zhuǎn)動,支撐機體在坡面向上、向前移動. 在這兩個階段中,機器人6只足均著地,其重心向量必定位于各足著地點次序相連所形成的凸平面中,因此整個系統(tǒng)在這個過程中是穩(wěn)定的.
當(dāng)機器人運行至階段5時,該姿態(tài)具有一定的不穩(wěn)定性. 采用與階段2同樣的分析方法. 該階段機器人穩(wěn)定錐模型如圖6、圖7所示. 此時機器人4只足的著地點分別為P′1、P′2、P′3、P′4,最危險的傾翻邊線為a′4,它的法線為l′4在xoz平面的投影為l″4,α′為當(dāng)前時刻的斜坡坡度. 如圖6所示,在此階段機器人姿態(tài)示意圖中可以看出θ′2明顯大于θ′1,因此機器人只可能發(fā)生后仰運動. 分析同上,為了保持穩(wěn)定性,在該階段下通過設(shè)置其臨界穩(wěn)定性指標(biāo)εmin中的θ′1為20°,即
min(θ′1,θ′2) =θ1≥ 20°.
(49)
P′1=[‖l″4‖sinθ′1-W-‖l″4‖cosθ′1]T.
(50)
P′4=[‖l′4‖sinθ′1W-‖l′4‖cosθ′1]T.
(51)
(52)
將P′1、P′4標(biāo)準(zhǔn)化處理
(54)
傾翻邊線a′4表示如下:
a′4=[0 -2W0]T.
(55)
a′4的過pc的法線l′4為
l′4=[-‖l″4‖sinθ′10 -‖l″4‖cosθ′1]T.
(56)
(57)
綜上所述,在保證機器人系統(tǒng)能夠持續(xù)爬坡的前提下(機器人系統(tǒng)在摩擦力的作用下不下滑),結(jié)合多次實驗得出其能最大攀越坡度為33°左右. 在此基礎(chǔ)上針對爬坡過程中易發(fā)生傾翻的階段2與階段5分別設(shè)置了穩(wěn)定性指標(biāo)中的參數(shù)θ的值,并以此為根據(jù)對機器人主要尺寸進(jìn)行設(shè)計,保證機器人在行進(jìn)中不會沿傾翻邊線翻倒,并求出機器人重力矢量與各著地點的夾角,即穩(wěn)定性指標(biāo)中的β角均為正值,機器人亦不會于各著地點發(fā)生傾翻,滿足穩(wěn)定錐的穩(wěn)定條件,系統(tǒng)狀態(tài)穩(wěn)定. 在其他狀態(tài)中,機器人始終處在穩(wěn)定的狀態(tài),表明該六足機器人使用波浪爬坡步態(tài)爬坡有較大的穩(wěn)定裕度.
在進(jìn)行物理樣機爬坡實驗之前先在機器人物理仿真平臺V-REP中建立機器人模型,其中各主要參數(shù)的選取參照2.2. 在仿真環(huán)境中使用Lua腳本程序設(shè)計控制器,約束各個電機的扭矩、額定轉(zhuǎn)速,設(shè)置機體所使用的材料與實際物理平臺一致以保證慣量的相同. 與土堆相接觸的偏心輪足材料的摩擦系數(shù)設(shè)定為0.65. 圖8是截取自仿真軟件運行時的視頻截圖. 實驗環(huán)境中土坡坡度為33°,該仿真實驗完整展現(xiàn)了2.1中給出的一個周期的運動. 圖中豎直方向上的白線表示重力矢量的方向,整個運動過程中,均處于支撐點所形成的多邊形內(nèi)部,機器人未發(fā)生傾翻,證明了該波浪爬坡步態(tài)的可行性.
六足機器人在爬坡的過程中,離散步態(tài)與連續(xù)步態(tài)相結(jié)合. 偏心輪足離散地選擇落腳點,爬坡時連續(xù)地提供向上向前的驅(qū)動力. 在之前的步態(tài)、機械結(jié)構(gòu)設(shè)計中,為防止機體底部觸地,設(shè)定了一個離地臨界值H0,在遇到崎嶇坡面時,實驗表明只要坡面的障礙物高度小于5 cm,本機均能克服. 如圖9所示,在仿真環(huán)境中機器人爬上較為崎嶇的坡面.
圖10展現(xiàn)了實物機器人利用波浪形步態(tài)爬坡的過程,圖片截取于行進(jìn)過程中的視頻截圖. 實驗所用的物理樣機的重心在機體的幾何中心,在測試中,使用波浪步態(tài),機器人能平穩(wěn)地爬上斜坡,試驗中坡面的角度在28°左右. 爬坡過程中使用的步態(tài)
與圖6呈現(xiàn)的一致. 在運動的過程中機體也未與坡面發(fā)生碰觸. 在第5階段至第8階段,機器人先后運動后、中、前三組足恢復(fù)到階段一,進(jìn)入下一個爬坡周期,在整個過程中,足懸空時運動速度較快,觸地時運動速度較慢.
實物爬坡實驗演示視頻地址:https://v.youku.com/v_show/id_XNDE0MDkwMDM3Mg==.html?spm=a2h3j.8428770.3416059.1.
本文介紹了一種偏心輪式的六足機器人和與之相適應(yīng)的波浪模式的爬坡步態(tài),采用穩(wěn)定錐的模型進(jìn)行了機器人爬坡穩(wěn)定性分析. 在之后的爬坡實驗中,實驗表明該六足機器人采用波浪爬坡步態(tài),能夠有效地應(yīng)對常見的坡面地形,并且能夠克服一定程度的崎嶇坡面. 對于電機系統(tǒng)來說,本機采用直流有刷電機,噪音較大,在后期可以將其替換為直流無刷電機以獲得穩(wěn)定的控制.