孟 蕓,周福娜,盧志強,3,王培培
(1.河南大學民生學院,河南 開封 475004;2.河南大學計算與信息工程學院,河南 開封 475004;
3.西安科技大學電氣與控制工程學院,陜西 西安 710054)
雙足機器人具有類人的結(jié)構(gòu)和外觀,可以很好適應人類的生活環(huán)境,是替代人類從事危險性工作的理想機器人。自上世紀90年代以來,國內(nèi)外研究機構(gòu)與學者投入了持續(xù)的研究[1],文獻[2]可在崎嶇路面行走,文獻[3]的Atlas能適應坑洼、雪地等復雜路面。雙足智能機器人的理論研究進程相對滯后于原型機的開發(fā)研制,科研人員研究各種方法提高其運動的穩(wěn)定性。文獻[4]采集人體運動樣本,構(gòu)建機器人步行樣本庫,實現(xiàn)雙足機器人與人跟隨的步行。文獻[5]使用腳底壓力和腰部加速度作為中樞模式發(fā)生器(CPG Central Pattern Generator)的驅(qū)動,實現(xiàn)了NAO仿人機器人對不同地形的自適應行走。文獻[6]使用由連續(xù)多目標蟻群優(yōu)化的遞歸神經(jīng)網(wǎng)絡構(gòu)成CPG,解決NAO多目標步態(tài)的生成問題。近年來,運用動力學原理對雙足機器人動態(tài)建模,獲得較好的控制效果。文獻[7]分析雙足機器人單質(zhì)心的倒立擺模型,設計了應用于五連桿簡化模型的行走狀態(tài)機,實現(xiàn)了欠驅(qū)動雙足機器人的穩(wěn)定行走。文獻[8]基于前饋控制策略,控制質(zhì)心水平運動速度,實現(xiàn)了四連桿機器人步行的穩(wěn)定行走。文獻[9]將仿人機器人簡化成為一個不計質(zhì)量的桌子與全部質(zhì)量集中在一輛在桌面上行駛的小車構(gòu)成的桌子-小車模型,簡化了機器人的控制方法。文獻[10]結(jié)合零力矩點(zero moment point,ZMP)的預觀控制和分解動量控制,實現(xiàn)了雙足機器人的非平面運動。文獻[11]提出基于三質(zhì)心模型的預觀控制,獲得比基于單質(zhì)心模型控制高的ZMP循跡精度。文獻[12]在三質(zhì)心模型的基礎(chǔ)上,考慮了角動量,提高了ZMP跟蹤性能和步行穩(wěn)定性。
雙足機器人模型與真實系統(tǒng)的誤差,決定了步行控制系統(tǒng)的性能??紤]舵機驅(qū)動關(guān)節(jié)的平足機器人質(zhì)量分布,提出建立五質(zhì)心的雙足機器人模型,使模型更接近真實系統(tǒng)。雙足機器人行走中,對行走中產(chǎn)生的ZMP跟蹤誤差,使用模型預測控制(model predictive control,MPC)對強干擾進行補償,減小了ZMP跟蹤誤差,獲得了較好的步行穩(wěn)定性。
實驗雙足機器人的結(jié)構(gòu),如圖1(a)所示;其原形如圖1(b)所示。機器人高41cm,重1997g。機器人腿部有5個自由度(含:腳踝2個自由度,膝蓋1個自由度,髖2個自由度),臂有3個自由度(含:肩2自由度,腕1個自由度),每個腳底裝四片力傳感器,測量ZMP的位置。機器人前、側(cè)和垂直方向,分別被定義為X軸、Y軸和Z軸方向。當機器人保持站立時,世界坐標系的原點定位于機器人的腳中心。
圖1 實驗機器人的連桿結(jié)構(gòu)Fig.1 Link Structure of Experimental Robot
雙足機器人的完全動力學模型應該考慮前平面和失平面在運動中的耦合。許多成功雙足機器人證明利用干擾觀察器或補償器的解耦模型,可以忽略耦合的影響。使用動態(tài)控制器去補償雙足機器人行走期間耦合的影響,提出包括失平面和額狀面解耦運動的系統(tǒng)模型,如圖2所示。
圖2 雙足機器人的五質(zhì)心模型Fig.2 Five Centroid Model of Biped Robots
不失一般性,設當前運動為單支撐階段,支撐腿為右腿,擺動腿為左腿,前擺臂為右臂,后擺臂為左臂。運動中,保持腰部高度不變,身體角度與擺動腿運動角度按質(zhì)量比例平衡,前擺臂跟隨擺動腿變化,后擺臂跟隨支撐腿變化,且運動滿足如下幾何條件:
則可簡化失平面ZMP方程如(4)式所示,同理,可得前平面ZMP方程。
以采樣時間T s,可離散化(4)式所描述的失平面動態(tài)系統(tǒng),系統(tǒng)前平面具有類似的形式。設狀態(tài)變量為控制輸入為U(k)=x…w(k),輸出為P(k)=x z m p(k),系統(tǒng)的狀態(tài)空間方程為:
在雙足機器人運動中,預先設計運動的姿態(tài),即可計算E x、F x(k)、G x(k)。為簡化計算,定義一個新的變量P x(k)為:
系統(tǒng)輸出為:
在(5)、(8)式描述的動力學系統(tǒng)中,按照T s遞推,可得到MPC系統(tǒng)的標準形式為:
其中:
求解(11)式,可得最優(yōu)輸入為:
式中:I N—N×N單位矩陣。將*(k)代入(10)即得到(k),利用(6)式,可計算系統(tǒng)的ZMP輸出。
采用本文所述算法,分別通過Matlab仿真和圖1(b)所示實物驗證。在Matlab中,按照圖1(b)的實物結(jié)構(gòu),構(gòu)造了3D模型,并依據(jù)算法進行動態(tài)仿真,如圖3所示。圖中描述了機器人右腳移動的過程,為表達清楚,將機器人足部由長12cm寬6cm縮小為長3cm、寬1cm,并將每個動作的間距在x方向拉開4cm,即x軸標注“0”的五個坐標,在仿真中是同一位置。測試雙足機器人的基本參數(shù),如表1所示。
圖3 機器人步行的動態(tài)仿真Fig.3 Dynamic Simulation of Robot Walking
表1 雙足機器人的基本參數(shù)Tab.1 Basic Parameters of Biped Robot
測試步態(tài)周期為2s,單步距離為12cm的ZMP結(jié)果,如圖4所示。作為對比,圖中仿真1和實測1分別對應基于單質(zhì)心模型MPC算法的Matlab仿真和實物機器人運動分析的結(jié)果,仿真2和實測2對應于三質(zhì)心模型,仿真3和實測3對應于本文所述五質(zhì)心模型MPC算法。圖中畫出了設計的參考線和腳步區(qū)域的安全線。
圖4 ZMP數(shù)據(jù)分析圖Fig.4 Data Analysis Diagram of ZMP
步行的一個周期內(nèi),三種方法分別實測30個樣值,實測數(shù)據(jù)與參考值的前向誤差E x和縱向誤差E y為:
計算結(jié)果,如表2所示。從表中數(shù)據(jù)可見,這里提出的基于五質(zhì)心模型的MPC算法明顯優(yōu)于對比的算法。
表2 ZMP誤差分析Tab.2 Error Analysis of ZMP
運動控制系統(tǒng)是雙足機器人研究的核心部分,其建立模型的精度決定了控制性能的上界。考慮雙足機器人的全身結(jié)構(gòu),將按照運動中的質(zhì)量分布提出基于五質(zhì)心模型的MPC算法,比較精確的刻畫了雙足機器人的運動模型。對比單質(zhì)心和三質(zhì)心的MPC算法,這里方法減少了建模誤差,在ZMP軌跡跟蹤中,獲得了更高精度。應用的遞推公式,可以方便的規(guī)劃和在線修改步行軌跡,實現(xiàn)真實環(huán)境中的雙足步行。