周志華,周楓林,聶宇峰,揚(yáng) 帆,王瑾元
(湖南工業(yè)大學(xué) 機(jī)械工程學(xué)院,湖南 株洲 412007)
近年來(lái),四足機(jī)器人日益頻繁地出現(xiàn)在日常生活中,在搶險(xiǎn)救災(zāi)、物資運(yùn)輸、火星探索等惡劣環(huán)境都能見(jiàn)到應(yīng)用實(shí)例,隨著美國(guó)波士頓的BigDog橫空出世,隨即也引發(fā)了國(guó)內(nèi)外關(guān)于四足機(jī)器人的研究熱潮。面對(duì)復(fù)雜地形,四足機(jī)器人相較于輪式、履帶式機(jī)器人具有更好的環(huán)境適應(yīng)能力,同時(shí),和雙足、六足機(jī)器人相比也都分別表現(xiàn)出更加優(yōu)秀的穩(wěn)定性和控制簡(jiǎn)易性。為提高四足機(jī)器人的環(huán)境適應(yīng)能力,國(guó)內(nèi)外學(xué)者針對(duì)其核心運(yùn)動(dòng)控制問(wèn)題,也相繼提出了多種有效的控制方法。目前常見(jiàn)的控制方法有基于仿生原理的中樞模式發(fā)生器(CPG)控制、彈簧負(fù)載倒立擺(SLIP)、零力矩點(diǎn)(ZMP)、模型預(yù)測(cè)控制(MPC)、虛擬模型控制(VMC)等的控制方法。其中,CPG屬于低級(jí)神經(jīng)中樞,即使無(wú)外界反饋或高級(jí)中樞信號(hào),也依然能夠產(chǎn)生穩(wěn)定的節(jié)律信號(hào)。
為了實(shí)現(xiàn)四足機(jī)器人在斜坡地形的穩(wěn)定行走,梁?jiǎn)⑿堑热嗽谀P皖A(yù)測(cè)控制基礎(chǔ)上進(jìn)行擴(kuò)展,設(shè)計(jì)四足機(jī)器人在斜坡上的足端位置調(diào)整與軀干姿態(tài)自適應(yīng)調(diào)整策略,通過(guò)設(shè)計(jì)的“虛擬斜坡”軀干姿態(tài)調(diào)整算法,實(shí)現(xiàn)機(jī)器人在上坡過(guò)程中軀干姿態(tài)的自適應(yīng)調(diào)整。葛卓等人為了提高四足機(jī)器人在包含坡面和障礙物等復(fù)雜地形中的運(yùn)動(dòng)能力與環(huán)境自適應(yīng)能力,搭建了前庭反射和屈肌反射數(shù)學(xué)模型,使四足機(jī)器人能夠流暢、平穩(wěn)地完成上下坡運(yùn)動(dòng),并具備自適應(yīng)越障運(yùn)動(dòng)能力。而為了實(shí)現(xiàn)四足機(jī)器人在坡面上的行走穩(wěn)定,文獻(xiàn)[14]又提出了基于帶反饋?lái)?xiàng)的中樞模式發(fā)生器的步態(tài)控制策略,可根據(jù)ZMP判據(jù)分析四足機(jī)器人在斜坡上的運(yùn)動(dòng)穩(wěn)定性,引入?yún)?shù)在線調(diào)節(jié)機(jī)制適應(yīng)外界環(huán)境變化,最終有效提高四足機(jī)器人在斜坡上行走的穩(wěn)定性。韓寶玲等人提出了一種四足機(jī)器人對(duì)腳小跑步態(tài)下的坡面運(yùn)動(dòng)姿態(tài)調(diào)整策略,能夠以機(jī)器人質(zhì)心在斜面上的落點(diǎn)到支撐線的距離為判據(jù)進(jìn)行四足機(jī)器人坡面運(yùn)動(dòng)穩(wěn)定性分析,得到其姿態(tài)調(diào)整的確定值,并最終提高四足機(jī)器人坡面運(yùn)動(dòng)穩(wěn)定性。Zhu等人提出了一種面向未知斜坡的四足機(jī)器人步態(tài)規(guī)劃算法框架,通過(guò)慣性測(cè)量單元測(cè)量的姿態(tài)信息來(lái)估計(jì)地形坡度,可采用爬行步態(tài),基于ZMP進(jìn)行重心軌跡規(guī)劃,并利用增強(qiáng)隨機(jī)搜索(ARS)算法對(duì)貝塞爾曲線的參數(shù)進(jìn)行調(diào)制,實(shí)現(xiàn)機(jī)器人足部軌跡的規(guī)劃,最終證明了該算法能夠在坡度未知時(shí)自適應(yīng)地調(diào)整機(jī)器人的姿態(tài),穩(wěn)定地通過(guò)坡度環(huán)境。Wang等人針對(duì)四足爬行機(jī)器人越過(guò)坡面凸起地形時(shí)后腿的地面反作用力較大的問(wèn)題,提出一種基于分層CPG步態(tài)生成方法的四足機(jī)器人坡三角步態(tài)行走策略,并通過(guò)仿真驗(yàn)證了算法的有效性。
本文采用CPG作為運(yùn)動(dòng)控制方法,針對(duì)四足機(jī)器人的坡面運(yùn)動(dòng),以CPG節(jié)律信號(hào)為基礎(chǔ),采用前庭生物反射進(jìn)行坡面自適應(yīng)姿態(tài)調(diào)節(jié),并在Matlab/Simulink中以Trot步態(tài)進(jìn)行上坡運(yùn)動(dòng),最終通過(guò)仿真驗(yàn)證了該控制方法的可靠性、正確性,實(shí)現(xiàn)了四足機(jī)器人的坡面自適應(yīng)性,使機(jī)器人在上坡時(shí)的運(yùn)動(dòng)穩(wěn)定性得到了有效的提高。
本文以YOBOGO四足機(jī)器人為研究對(duì)象,采用電驅(qū)動(dòng)方式、全肘式配置,每條腿有髖、膝、側(cè)擺三個(gè)關(guān)節(jié)。為驗(yàn)證控制算法的正確性,本文對(duì)此進(jìn)行二次開發(fā),圖1(a)為機(jī)器人的三維模型,圖1(b)為對(duì)應(yīng)的物理樣機(jī)。
圖1 YOBOGO四足機(jī)器人Fig.1 YOBOGO quadruped robot
振蕩器是CPG控制網(wǎng)絡(luò)的基本組成單元,常見(jiàn)的有神經(jīng)元振蕩器、非線性振蕩器兩種類型。神經(jīng)元振蕩器雖仿生意義明確,但動(dòng)態(tài)特性相對(duì)更為復(fù)雜,參數(shù)也較多。而非線性振蕩器,相對(duì)而言參數(shù)較少,模型更為成熟,故本文采用Hopf非線性振蕩器作為基本單元搭建CPG網(wǎng)絡(luò),Hopf振蕩器的數(shù)學(xué)模型如下:
其中,為振蕩器的頻率;決定振蕩器的幅值;為常數(shù),是用于振蕩器收斂到極限環(huán)的速度控制;、為狀態(tài)變量;由于穩(wěn)定的狀態(tài)極限環(huán)存在于Hopf振蕩器中,故能夠產(chǎn)生穩(wěn)定、抗干擾能力強(qiáng)的周期信號(hào),在CPG控制網(wǎng)絡(luò)中,振蕩器中的狀態(tài)變量能直接用于機(jī)器人的關(guān)節(jié)控制,周期信號(hào)的上升、下降段分別對(duì)應(yīng)機(jī)器人單腿運(yùn)動(dòng)的擺動(dòng)、支撐相。為實(shí)現(xiàn)對(duì)每相在周期內(nèi)所占比例的控制,對(duì)式(1)中的進(jìn)行改進(jìn),由此得到:
其中,ω、ω分別為支撐相與擺動(dòng)相頻率;正常數(shù)決定在ω和ω間的變化速度;為占空比(負(fù)載因子),推得的數(shù)學(xué)公式為:
其中,為步態(tài)周期,其他參數(shù)同式(2)。與ω又具有如下關(guān)系:
根據(jù)連接方式的不同,CPG控制網(wǎng)絡(luò)可以分為網(wǎng)式、鏈?zhǔn)絻煞N連接方式。CPG廣泛存在于生物運(yùn)動(dòng)中,如呼吸、行走、游泳等。針對(duì)坡面運(yùn)動(dòng),其涉及到四足機(jī)器人四條腿的髖、膝關(guān)節(jié),針對(duì)這8個(gè)主動(dòng)關(guān)節(jié)自由度,本文采用的控制網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖2所示。由圖2可見(jiàn),使用4個(gè)振蕩器,每個(gè)振蕩器輸出的狀態(tài)變量信號(hào)直接用于髖關(guān)節(jié)關(guān)節(jié)信號(hào)輸入,狀態(tài)變量經(jīng)過(guò)足內(nèi)耦合轉(zhuǎn)化為對(duì)應(yīng)腿膝關(guān)節(jié)關(guān)節(jié)控制信號(hào)。此網(wǎng)絡(luò)簡(jiǎn)單,且運(yùn)算時(shí)間少,利于增強(qiáng)系統(tǒng)實(shí)時(shí)性。
圖2 單層CPG控制網(wǎng)絡(luò)Fig.2 Single-layer CPG control network
2.2.1 CPG控制網(wǎng)絡(luò)
由4個(gè)振蕩器進(jìn)行相位耦合而構(gòu)成的CPG控制網(wǎng)絡(luò)數(shù)學(xué)模型如式(5)所示:
其中,為控制網(wǎng)絡(luò)的連接權(quán)重矩陣,可由式(8)表示為:
CPG控制網(wǎng)絡(luò)的輸出模式由決定,通過(guò)控制連接權(quán)重矩陣,最終能夠獲得四足機(jī)器人的不同步態(tài)。
2.2.2 足內(nèi)協(xié)調(diào)控制
以4個(gè)振蕩器組成的單層CPG控制網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),結(jié)構(gòu)中的單個(gè)振蕩器產(chǎn)生的狀態(tài)信號(hào)并不能直接作為機(jī)器人膝關(guān)節(jié)轉(zhuǎn)動(dòng)信號(hào),需進(jìn)行足內(nèi)協(xié)調(diào)轉(zhuǎn)化才可用于膝關(guān)節(jié)控制。四足機(jī)器人的單腿運(yùn)動(dòng)圖解如圖3所示,當(dāng)足端支撐在地時(shí),膝關(guān)節(jié)保持不變,支撐相結(jié)束步入擺動(dòng)相時(shí),膝關(guān)節(jié)抬腿擺動(dòng),由幾何關(guān)系可以得到式(9):
其中,為機(jī)器人運(yùn)動(dòng)速度;為單個(gè)運(yùn)動(dòng)周期;為腿節(jié)長(zhǎng)度;是足端與髖關(guān)節(jié)間的長(zhǎng)度;為機(jī)器人周期內(nèi)單腿行走步長(zhǎng);A為髖關(guān)節(jié)擺動(dòng)幅值。當(dāng)處于擺動(dòng)相中點(diǎn)時(shí),膝關(guān)節(jié)抬腿高度最高且等于,由圖3可得到:
圖3 單腿運(yùn)動(dòng)圖解Fig.3 Diagram of single-leg exercise
接下來(lái),可推得膝關(guān)節(jié)的擺動(dòng)幅值A為:
膝關(guān)節(jié)最終的足內(nèi)調(diào)節(jié)控制信號(hào)如式(12)所示:
2.2.3 trot步態(tài)生成
四足機(jī)器人具有多種典型步態(tài),如trot、pace、walk等,每種步態(tài)具有不同的特征,主要不同在于占空比、足間相位關(guān)系。其中,walk步態(tài)的占空比為0.75,相位差為0.25,pace、trot步態(tài)的相位差和占空比都為0.5。根據(jù)步態(tài)規(guī)律分析,可以知道相對(duì)相位可表示為占空比和右后腿相位的函數(shù),以左前腿為基準(zhǔn),令其相位φ=0,若φ≠0,則φ=β,φ=β-φ;若φ=0,則φ=φ,φ=φ。其中,、、、分別代表左前、左后、右前、右后腿。在本文的四足機(jī)器人坡面運(yùn)動(dòng)中,采用trot步態(tài)進(jìn)行爬坡仿真,其步態(tài)相對(duì)相位如圖4所示。
圖4 trot步態(tài)相對(duì)相位Fig.4 Relative phase of trot gait
前庭反射是動(dòng)物利用前庭器官去感知自身軀體姿態(tài),并通過(guò)調(diào)整肢體肌肉的松弛,維持運(yùn)動(dòng)過(guò)程中身體平衡的一種生物反射行為。面對(duì)自然界常見(jiàn)的斜坡地形,仿生四足機(jī)器人通過(guò)前庭反射控制算法能很好地根據(jù)上、下坡的不同情況調(diào)整自身姿態(tài),使機(jī)體重心更加穩(wěn)定。以本文中全肘式配置的YOBOGO四足機(jī)器人為例,當(dāng)機(jī)器人上坡運(yùn)動(dòng)時(shí),根據(jù)坡面信息,前腿髖關(guān)節(jié)后擺,其關(guān)節(jié)平衡位置減小,后腿髖關(guān)節(jié)前擺,膝關(guān)節(jié)的平衡位置與同腿髖關(guān)節(jié)做相反方向調(diào)整,最終機(jī)器人的軀體姿態(tài)呈現(xiàn)為前低后高。
進(jìn)行坡面運(yùn)動(dòng)時(shí),根據(jù)坡面信息反饋,四足機(jī)器人通過(guò)前庭反射調(diào)整腿部平衡位置,同時(shí),CPG控制網(wǎng)絡(luò)的輸出曲線也隨之變化,反饋?lái)?xiàng)是正值時(shí),CPG輸出曲線上移;反饋?lái)?xiàng)是負(fù)值時(shí),CPG的輸出曲線向下移動(dòng)。根據(jù)全肘式配置四足機(jī)器人模型,其斜坡運(yùn)動(dòng)關(guān)節(jié)平衡位置調(diào)整量見(jiàn)表1。根據(jù)表1分析可知,全肘式配置四足機(jī)器人的前、后腿在上坡或下坡時(shí)同一關(guān)節(jié)所產(chǎn)生的調(diào)整量恰好相反,以此實(shí)現(xiàn)前低后高或前高后低的姿態(tài),使其能夠適應(yīng)不同坡面條件。
表1 關(guān)節(jié)平衡位置調(diào)整Tab.1 Adjustment of joint balance position
根據(jù)傳感器能獲得坡度信號(hào),反饋?lái)?xiàng)如下式:
根據(jù)文獻(xiàn)[18],當(dāng)軀體姿態(tài)角度與坡面角度呈近似線性關(guān)系時(shí),是保持能耗最優(yōu)的必要條件,且有:
其中,為軀體姿態(tài)角;≈024;上、下坡時(shí),能夠分別檢測(cè)得到0、0。為進(jìn)一步得到每條腿的關(guān)節(jié)平衡位置改變量,根據(jù)其與軀體姿態(tài)角的幾何關(guān)系能得到式(15):
根據(jù)的調(diào)整范圍,由式(15)求解,二者為近似線性關(guān)系:
通過(guò)擬合得到≈226。最終得到的前庭反射數(shù)學(xué)模型如式(17)所示:
其中,為關(guān)節(jié)結(jié)構(gòu)信號(hào)標(biāo)志。當(dāng)1時(shí),表示膝式關(guān)節(jié);1時(shí),表示肘式關(guān)節(jié),其他參數(shù)同上。
本文在Simulink環(huán)境里搭建CPG控制器,將機(jī)器人模型導(dǎo)入Simulink,并進(jìn)行虛擬樣機(jī)的坡面運(yùn)動(dòng)仿真實(shí)驗(yàn)。
本文利用SW_URDF_Exporter插件,在三維建模軟件SolidWorks中,將四足機(jī)器人模型中無(wú)相對(duì)運(yùn)動(dòng)的零件整合,并按照軀體→側(cè)擺關(guān)節(jié)→大腿→小腿的順序進(jìn)行組裝,使用旋轉(zhuǎn)關(guān)節(jié)來(lái)連接各部位,最終以URDF(unified robot description format)格式導(dǎo)出,進(jìn)一步地,將生成的URDF文件導(dǎo)入Simulink,在Simulink中自動(dòng)生成對(duì)應(yīng)的關(guān)節(jié)類型、坐標(biāo)轉(zhuǎn)換模塊、軀干模型。
以該方法將模型導(dǎo)入后,繼續(xù)搭建四足機(jī)器人的CPG控制器。Simulink中具有豐富的模塊庫(kù),非常適用于搭建具有微分方程、多振蕩器耦合的復(fù)雜CPG控制網(wǎng)絡(luò)。將控制器搭建好后利用Simulink-PS模塊將輸入信號(hào)轉(zhuǎn)換為物理信號(hào),再輸入給模型關(guān)節(jié)。緊接著,進(jìn)行地面建模與機(jī)器人足端接觸設(shè)置,最終實(shí)現(xiàn)四足機(jī)器人Simulink環(huán)境下的CPG驅(qū)動(dòng)控制。
設(shè)置仿真求解器為ODE45,仿真時(shí)間為20 s,根據(jù)trot步態(tài)特征,設(shè)定CPG控制網(wǎng)絡(luò)中的參數(shù)見(jiàn)表2。
表2 CPG控制網(wǎng)絡(luò)參數(shù)Tab.2 CPG control network parameters
根據(jù)公式(4),計(jì)算出四足機(jī)器人的單腿周期為4 s,擺動(dòng)相、支撐相各占2 s。仿真得到的trot步態(tài)關(guān)節(jié)曲線如圖5所示,仿真結(jié)果與理論計(jì)算一致。
圖5 trot步態(tài)關(guān)節(jié)曲線Fig.5 Joint curve of trot gait
四足機(jī)器人以trot步態(tài)做平面運(yùn)動(dòng),坐標(biāo)系中機(jī)器人前進(jìn)方向?yàn)檩S方向,豎直方向?yàn)檩S方向,圖6為四足機(jī)器人平面運(yùn)動(dòng)仿真圖,圖7為機(jī)器人質(zhì)心位移曲線,圖8為歐拉角變化曲線。
圖6 平面運(yùn)動(dòng)仿真Fig.6 Plane motion simulation
圖7 機(jī)器人質(zhì)心位移曲線Fig.7 Displacement curve of the robot′s centroid
圖8 機(jī)器人歐拉角變化曲線Fig.8 The change curve of the Euler angle of the robot
由圖8中的仿真結(jié)果顯示,在20 s內(nèi),以單腿每2 s一個(gè)支撐、擺動(dòng)相的頻率運(yùn)動(dòng)了1.214 m,根據(jù)步長(zhǎng)245 mm計(jì)算,理論上應(yīng)該有1.225 m的運(yùn)動(dòng)距離,打滑量較小,符合預(yù)期。從圖9可以看出,俯仰角在3°范圍內(nèi)波動(dòng),偏航角在2°范圍內(nèi)波動(dòng),機(jī)體無(wú)明顯偏航,運(yùn)動(dòng)過(guò)程較為平穩(wěn)。
為實(shí)現(xiàn)四足機(jī)器人上坡時(shí)機(jī)身的穩(wěn)定性,降低運(yùn)動(dòng)過(guò)程中足端打滑程度,將前庭生物反射數(shù)學(xué)模型加入了CPG控制網(wǎng)絡(luò)中,通過(guò)獲取的坡面信息,進(jìn)行關(guān)節(jié)平衡位置調(diào)整。四足機(jī)器人進(jìn)行上坡運(yùn)動(dòng)的Simulink仿真過(guò)程如圖9所示。根據(jù)有、無(wú)前庭反射設(shè)置2組對(duì)比仿真實(shí)驗(yàn),以驗(yàn)證前庭反射對(duì)于坡面運(yùn)動(dòng)的穩(wěn)定性影響,四足機(jī)器人以trot步態(tài)進(jìn)行上坡運(yùn)動(dòng),坡面角度為10°。
圖9 上坡運(yùn)動(dòng)仿真Fig.9 Simulation of uphill motion
進(jìn)行上坡運(yùn)動(dòng)時(shí),四足機(jī)器人的關(guān)節(jié)運(yùn)動(dòng)曲線如圖10所示,運(yùn)動(dòng)過(guò)程中,根據(jù)有無(wú)前庭反射的歐拉角、軸質(zhì)心方向位移對(duì)比分別如圖11、圖12所示。
圖11 上坡運(yùn)動(dòng)中歐拉角穩(wěn)定對(duì)比曲線Fig.11 Euler angle stability comparison curve in uphill movement
圖12 上坡時(shí)Z軸向質(zhì)心位移曲線Fig.12 Z-axis centroid displacement curve in uphill movement
圖10中顯示,在前庭反射作用下,機(jī)器人進(jìn)行上坡運(yùn)動(dòng)時(shí),各個(gè)關(guān)節(jié)曲線要做一定程度調(diào)整。其中,左前腿和右前腿髖關(guān)節(jié)后擺,平衡位置減小,膝關(guān)節(jié)調(diào)整方向則與其相反。右后腿和左后腿髖關(guān)節(jié)前擺,平衡角度增大,最終機(jī)器人呈現(xiàn)前低后高的姿態(tài)以適應(yīng)于上坡地形。
圖10 上坡運(yùn)動(dòng)關(guān)節(jié)曲線Fig.10 Joint curve of uphill motion
由圖11(a)可知,仿真結(jié)果顯示無(wú)前庭反射的四足機(jī)器人在進(jìn)行上坡運(yùn)動(dòng)時(shí),偏航角明顯發(fā)生變化,俯仰、滾動(dòng)角曲線不平滑,抖動(dòng)較大,整體打滑嚴(yán)重。從圖11(b)可以看出,無(wú)前庭反射的四足機(jī)器人俯仰角度變化無(wú)規(guī)律,波動(dòng)幅度較大,而有前庭反射作用的情況中,機(jī)器人俯仰角度始終大于-10°,機(jī)體更加地接近于水平面,這種姿態(tài)利于機(jī)體的重心穩(wěn)定。由圖11(c)見(jiàn)到,無(wú)前庭反射的機(jī)器人滾動(dòng)角在第1.3 s左右時(shí)發(fā)生劇烈抖動(dòng),機(jī)器人打滑嚴(yán)重,第6 s時(shí),已經(jīng)超過(guò)了8°并逐漸增加,而有前庭反射作用的仿真實(shí)驗(yàn)中,機(jī)器人滾動(dòng)角度始終保持在一定范圍內(nèi)有規(guī)律的抖動(dòng)。從軸質(zhì)心位移曲線可以看出無(wú)前庭反射時(shí),機(jī)器人無(wú)法正常上坡,在第16 s時(shí)軸方向位移才達(dá)到0.313 m,而加入了前庭反射的四足機(jī)器人在第16 s時(shí)軸質(zhì)心方向位移已經(jīng)達(dá)到了0.895 m,這說(shuō)明其打滑量明顯減少,且在前庭反射的作用下能正常地上坡。
(1)在Matlab/Simulink中根據(jù)CPG數(shù)學(xué)模型搭建了四足機(jī)器人運(yùn)動(dòng)控制器,并實(shí)現(xiàn)了四足機(jī)器人trot步態(tài)生成,且以trot步態(tài)進(jìn)行了四足機(jī)器人的平面、上坡運(yùn)動(dòng)控制仿真實(shí)驗(yàn)。
(2)進(jìn)行坡面運(yùn)動(dòng)仿真實(shí)驗(yàn)時(shí),針對(duì)有、無(wú)前庭反射兩種情況進(jìn)行分析,最終的仿真結(jié)果表明前庭反射能有效地增強(qiáng)四足機(jī)器人坡面運(yùn)動(dòng)時(shí)重心的穩(wěn)定性,也能有效地抑制足端打滑。
(3)根據(jù)仿生原理,搭建了作為低級(jí)神經(jīng)中樞的CPG控制網(wǎng)絡(luò),并將前庭生物反射數(shù)學(xué)模型與其進(jìn)行有機(jī)融合,使四足機(jī)器人具備一定坡面自適應(yīng)能力,能有效地提高四足機(jī)器人進(jìn)行坡面運(yùn)動(dòng)時(shí)的穩(wěn)定性。