王險峰,趙杰
(1哈爾濱工業(yè)大學(xué) 機器人研究所, 黑龍江 哈爾濱 150001; 2. 東北石油大學(xué) 計算機與信息技術(shù)學(xué)院, 黑龍江 大慶 163318)
模糊CMAC網(wǎng)絡(luò)的雙足機器人跑步軌跡規(guī)劃
王險峰1,2,趙杰1
(1哈爾濱工業(yè)大學(xué) 機器人研究所, 黑龍江 哈爾濱 150001; 2. 東北石油大學(xué) 計算機與信息技術(shù)學(xué)院, 黑龍江 大慶 163318)
為了研究雙足機器人在單腿支撐階段和飛行階段質(zhì)心軌跡和雙足軌跡,采用模糊CMAC(fuzzy cerebellar model articulation controller,F(xiàn)CMAC)神經(jīng)網(wǎng)絡(luò)規(guī)劃雙足機器人跑步時質(zhì)心和雙足的方法。通過FCMAC神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)生成跑步軌跡,仿真實驗結(jié)果表明:雙足機器人跑步時各關(guān)節(jié)角度和關(guān)節(jié)驅(qū)動力矩變化穩(wěn)定,能夠?qū)崿F(xiàn)穩(wěn)定的跑步,驗證了方法的有效性。
雙足機器人;零力矩點(ZMP);機器人跑步;模糊CMAC
雙足機器人的研究是近年來機器人領(lǐng)域的研究熱點之一。Raibert及其同事成功研制了能夠跑步的雙足機器人Planar Biped[1], Fumiya Iida等[3]提出順從腿模型來作為一種雙足機器人跑步控制,Pratt等[2]設(shè)計的虛擬模型控制的策略用于將高層的任務(wù)級指令解析成底層的可執(zhí)行控制命令,各部件需要的力矩由對應(yīng)的虛擬單元產(chǎn)生,這一控制策略被運用到機器人Spring Turkey 和Spring Flamingo上,機器人的步態(tài)自然、穩(wěn)定。為了提高雙足機器人的技術(shù),日本索尼公司推出的QRIO機器人,采用基于ZMP穩(wěn)定性理論的控制算法實現(xiàn)了穩(wěn)定的行走,在此基礎(chǔ)上增加了可即時控制機器人的跳躍方向以及在空中保持平衡狀態(tài)姿勢控制算法,從而實現(xiàn)了跑步。日本本田公司研制的機器人ASIMO[4],通過其自身建立的動力學(xué)模型,在規(guī)劃跑步運動軌跡的基礎(chǔ)上,分別采用相軌跡和關(guān)節(jié)軌跡跟蹤控制的方法來實現(xiàn)跑步。
陳懇等[5-6]設(shè)計制造的THR-1機器人,采用界面映射穩(wěn)定性判據(jù)作為機器人穩(wěn)定跑步的依據(jù),實現(xiàn)了初步的跑步運動。黃強等[8]規(guī)劃仿人機器人跑步穩(wěn)定性步態(tài)模型,以ZMP為穩(wěn)定性依據(jù),同時考慮到上身翻轉(zhuǎn)問題,通過滿足質(zhì)心角動量來研究跑步的穩(wěn)定性步態(tài)模式。洪炳镕等[7]通過虛擬現(xiàn)實環(huán)境創(chuàng)建了虛擬人,并對虛擬人跑步的基本運動模型和控制方法進行規(guī)劃。雷旭升等[9]規(guī)劃跑步運動各關(guān)節(jié)軌跡,利用最小能量方程為優(yōu)化工具,采用遺傳算法獲得了跑步運動軌跡。
早在1975年,Albus[11]根據(jù)神經(jīng)生理學(xué)小腦皮層結(jié)構(gòu)特點,提出了一種小腦模型關(guān)聯(lián)控制器(cerebellar model articulation controller),即CMAC神經(jīng)網(wǎng)絡(luò)。它類似于Perceptron網(wǎng),能學(xué)習(xí)任意多維非線性映射,已廣泛應(yīng)用于函數(shù)逼近、模式識別和機器人控制等許多領(lǐng)域。由于這種網(wǎng)絡(luò)具有在線學(xué)習(xí)自適應(yīng)能力,且算法簡單,學(xué)習(xí)速度快,因此特別適合機器人的實時學(xué)習(xí)控制。從某種意義上說,CMAC神經(jīng)網(wǎng)絡(luò)與模糊邏輯不但能相互補充,而且是相通的、可以有機的結(jié)合。將模糊理論引入CMAC,對輸入空間進行劃分和激活聯(lián)想強度進行了模糊處理,并且在模糊化處理時采用了連續(xù)可微分的高斯基函數(shù),對輸入劃分方式以及輸入狀態(tài)激活聯(lián)想強度的活性是可以在線調(diào)整的,具有較強的自學(xué)習(xí)能力,能夠很好地應(yīng)用于要求精度高且不確定性嚴(yán)重的場合[12-13]。由于雙足機器人跑步模型的不確定性、非線性嚴(yán)重,本文采用模糊CMAC神經(jīng)網(wǎng)絡(luò)對雙足機器人進行跑步控制。
雙足機器人的結(jié)構(gòu)采用七連桿模型,包括軀干、兩條腿和兩只腳,如圖1所示。假定雙足機器人的質(zhì)量集中于其質(zhì)心位置,其運動局限于由鉛垂軸和跑步方向的縱向軸所決定的二維平面內(nèi),即髖關(guān)節(jié)、膝關(guān)節(jié)和踝關(guān)節(jié)只能在矢狀面內(nèi)旋轉(zhuǎn)。
圖1 雙足機器人結(jié)構(gòu)圖Fig.1 Structure of biped robot
雙足機器人跑步過程分為兩個階段:單腿支撐階段和飛行階段。在單腿支撐階段,雙足機器人跑步滿足ZMP準(zhǔn)則;在飛行階段,雙足機器人雙腳離地,腳部受到地面的作用力為零,不滿足ZMP準(zhǔn)則。
1.1 單腿支撐階段
采用圖1模型,建立雙足機器人系統(tǒng)動能和勢能,通過拉格朗日方程求解,得到雙足機器人跑步過程中動力學(xué)模型表示為
(1)
1.2 飛行階段
雙足機器人在飛行過程中,雙足均離開地面,不會受到地面的作用力,同時雙腿向前有交叉動作,為了不使雙足機器人有翻轉(zhuǎn)動作,要求整個系統(tǒng)動能轉(zhuǎn)化為勢能,可視雙足機器人運動為拋物線運動,在此過程中不能應(yīng)用ZMP準(zhǔn)則。雙足機器人的質(zhì)心分解為在水平方向上的勻速直線運行和豎直方向上的自由落體運動。其質(zhì)心的水平速度為
(2)
式中:xCoMi-1和xCoMi+1分別為i-1和i+1時刻的質(zhì)心在水平方向坐標(biāo)。
1.3 質(zhì)心軌跡規(guī)劃
雙足機器人在滿足動力學(xué)和運行學(xué)的條件下進行跑步運動,主要是規(guī)劃質(zhì)心和雙足的軌跡,通過建立質(zhì)心和単足作為支撐點時,兩者之間滿足ZMP方程的條件下規(guī)劃質(zhì)心軌跡,根據(jù)圖2模型,小車在桌面上的運行軌跡看作是質(zhì)心軌跡。運用五次多項式插值函數(shù)得到質(zhì)心軌跡方程:
r(t)=a1t5+a2t4+a3t3+a4t2+a5t+a6
(3)
式中:r(t)為質(zhì)心軌跡函數(shù),t時間變量,ai(i=1,2,…,6)為五次多項式系數(shù)。
雙足同時離地過程中,質(zhì)心軌跡規(guī)劃為:在水平方向作勻速直線運行和在豎直方向上作自由落體運動,水平方向質(zhì)心軌跡:
(4)
豎直方向質(zhì)心軌跡:
(5)
式中:zs為起跳時質(zhì)心高度,vs起跳時質(zhì)心速度。
圖2 小車-桌子模型Fig.2 Cart-table model
1.4 雙足的軌跡規(guī)劃
雙足機器人在跑步時,左足作為支撐點,右足騰空,接著雙足同時騰空,雙足交替與地面接觸,雙足運動軌跡相同,時間上相差一個步長時間。由圖3可知,步長時間t1+Ts+2Tf取決于起跳角度θs和落地角度θt,兩個角度過大將會增加步長時間,同時會使支撐腿的膝關(guān)節(jié)在起跳和落地時力矩增大,導(dǎo)致雙足機器人起跳時動力不足,或者落地時穩(wěn)定性差。以左足為列,在t4時刻足底中心點離地面的高度為H,每時刻左足高度H不同,通過三次差值函數(shù)得到左足運行軌跡:
H(t)=b1t3+b2t2+b3t+b4
(6)
其中,t為時間變量,bi(i=1,2,3,4)為三次多項式系數(shù)。
圖3 雙足機器人跑步過程Fig.3 Biped robot running process
構(gòu)建五層模糊CMAC神經(jīng)網(wǎng)絡(luò)模型,如圖4所示,即輸入層、模糊化層、模糊相聯(lián)層、模糊后相聯(lián)層和輸出層。模糊CMAC神經(jīng)網(wǎng)絡(luò)訓(xùn)練的權(quán)值包括聯(lián)想強度、高斯隸屬函數(shù)的中心值和寬度,采用BP算法進行學(xué)習(xí)并對各權(quán)值修正。
為了使雙足機器人的運動軌跡達(dá)到預(yù)期設(shè)計的軌跡,采用如圖5所示模糊CMAC神經(jīng)網(wǎng)絡(luò)的控制系統(tǒng),對圖1所示雙足機器人進行跑步控制,Θ=(θ1,θ2,θ3,θ4,θ5)T為輸入向量,T=(τ1,τ2,τ3,τ4,τ5)T為輸出向量。通過式(1)規(guī)劃質(zhì)心軌跡,在系統(tǒng)的每個控制周期,將離線預(yù)規(guī)劃好的質(zhì)心軌跡根據(jù)逆運動模塊求出腿部各關(guān)節(jié)的角度,加上雙足軌跡函數(shù)以及雙足機器人實際跑步時各關(guān)節(jié)反饋的角度值作為輸入向量輸入到模糊CMAC神經(jīng)網(wǎng)絡(luò)產(chǎn)生力矩控制仿人機器人步行,系統(tǒng)開始運行時,存儲器中的權(quán)值為零,在下一個控制周期,根據(jù)系統(tǒng)的實際輸出,模糊CMAC網(wǎng)絡(luò)通過學(xué)習(xí)進行權(quán)值調(diào)整,調(diào)整后的權(quán)值存入存儲器中,經(jīng)過幾次訓(xùn)練后,仿人機器人各關(guān)節(jié)的運動很快與要求的軌跡相一致。通過模糊CMAC神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)得到滿足雙足機器人跑步各關(guān)節(jié)的力矩,對雙足機器人進行穩(wěn)定跑步控制。
圖4 模糊CMAC網(wǎng)絡(luò)結(jié)構(gòu)Fig.4 Network structure of fuzzy CMAC
圖5 雙足機器人模糊CMAC神經(jīng)網(wǎng)絡(luò)控制系統(tǒng)Fig.5 Control system of fuzzy CMAC neural network for biped robot
跑步運動步態(tài)生成算法描述:
2)設(shè)i=0。
3)將狀態(tài)Xi輸入到模糊CMAC神經(jīng)網(wǎng)絡(luò)控制器中,從網(wǎng)絡(luò)輸出中獲得Ti。
5)若i≤k,i=i+1,轉(zhuǎn)到3)。
6)在單足落地時,判斷腳是否接觸地面,若腳底受力fz>0,轉(zhuǎn)到3)。
9)修正權(quán)值ωlk(i+1)=ωlk(i)+Δωlk(i),σlk(i+1)=σlk(i)+Δσlk(i),υlk(i+1)=υlk(i)+Δυlk(i) 轉(zhuǎn)到2)。
為了驗證方法的有效性,雙足機器人跑步過程的仿真采用Matlab仿真軟件對圖1所示的雙足機器人七連桿模型進行仿真,在Matlab/Simulink環(huán)境里求解雙足機器人的動力學(xué)方程,積分算法采用4次龍格-庫塔方法,固定步長時間設(shè)為0.000 1s。仿真用的雙足機器人參數(shù)如表1所示。雙足機器人的初始位姿為雙足并齊站立,關(guān)節(jié)初始角度為
表1 雙足機器人參數(shù)
圖6 雙足機器人跑步仿真圖Fig.6 Simulation of running for biped robot
圖7為雙足機器人跑步時右腿踝關(guān)節(jié)θ1、膝關(guān)節(jié)θ2和髖關(guān)節(jié)θ3的力矩隨時間的變化曲線。圖8和圖9表示在0.5 s的時間內(nèi),右腿各關(guān)節(jié)的角位置和角速度的曲線圖。飛行時間為0.17~0.31 s,碰撞發(fā)生在0.31~0.34 s,在碰撞后,速度變化迅速。平板腳落地后在0.01~0.03 s關(guān)節(jié)速度改變快。
圖7 右腿各關(guān)節(jié)力矩Fig.7 The joint torques on the right leg
圖8 右腿各關(guān)節(jié)角度Fig.8 The joint angular positions on the right leg
圖9 右腿各關(guān)節(jié)角速度Fig.9 The joint angular velocities on the right leg
為驗證模糊CMAC神經(jīng)網(wǎng)絡(luò)對仿人機器人各關(guān)節(jié)軌跡跟蹤的有效性,在Matlab環(huán)境中對圖1模型的踝關(guān)節(jié)和膝關(guān)節(jié)進行了仿真實驗,初始條件為
期望軌跡為
高斯隸屬函數(shù)的參數(shù)初值為kσi1(0)=-0.4,kσi2(0)=0.4,kυi1(0)=0.35,kυi2(0)=0.35(k=1,2;i=1,2)其中,k=1,k=2分別表示踝關(guān)節(jié)和膝關(guān)節(jié),聯(lián)想強度初值為[-1,1]的隨機數(shù)。圖10、圖11分別為踝關(guān)節(jié)和膝關(guān)節(jié)的軌跡跟蹤曲線,可以看出經(jīng)過學(xué)習(xí)后的模糊CMAC神經(jīng)網(wǎng)絡(luò)具有精確的跟蹤特性和更強的魯棒性。
圖10 踝關(guān)節(jié)軌跡跟蹤曲線Fig.10 Trajectory tracking curves of ankle
圖11 膝關(guān)節(jié)軌跡跟蹤曲線Fig.11 Trajectory tracking curves of knee
本文采用小車-桌子模型,提出了一種基于模糊CMAC神經(jīng)網(wǎng)絡(luò)的雙足機器人跑步軌跡規(guī)劃的方法。
通過分析腳與地面的約束關(guān)系,規(guī)劃雙足機器人質(zhì)心和雙腳的運動軌跡,通過模糊CMAC神經(jīng)網(wǎng)絡(luò)控制實現(xiàn)跑步運動,由以上內(nèi)容可得到如下結(jié)論:
1)考慮到腳與地面的碰撞力,為減弱來自地面的反作用力,采用收縮腿的長度,上身控制采用踝關(guān)節(jié)力矩控制及目標(biāo)ZMP控制。
2)經(jīng)過模糊CMAC神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)得到各關(guān)節(jié)的關(guān)節(jié)力矩,使得關(guān)節(jié)角度連續(xù)變化,并且角度變化平穩(wěn),因此跑步過程比較平穩(wěn)。
3)改變起跳和落地的角度能夠產(chǎn)生不同的跑步速度。在控制方面,雙腳離地高度不同的設(shè)置影響機器人的穩(wěn)定性。
4)質(zhì)心高度不同的設(shè)置,雙腳受到地面的反作用力將有所變化。質(zhì)心高度設(shè)置較高,雙腳落地時的地面反作用力較大,對膝關(guān)節(jié)的沖擊較大;質(zhì)心高度設(shè)置得較低,那么腳底受到地面反作用力較小,而質(zhì)心降低將增大膝關(guān)節(jié)的力矩。質(zhì)心高度設(shè)置得太低反而不能實現(xiàn)跑步動作。
[1]RAIBERT M H. Legged robots that balance[M]. Cambridge: Massachusetts Institute of Technology, 1986.
[2]PRATT J E. Exploiting inherent robustness and natural dynamics in the control of bipedal walking robots[D]. Cambridge, MA: Massachusetts Institute of Technology, 2000.
[3]IIDA F, RUMMEL J, SEYFARTH A. Bipedal walking and running with compliant legs[C]//Proceedings of IEEE International Conference on Robotics and Automation. Roma, Italy: IEEE, 2007: 3970-3975.
[4]Honda Motor Co., Ltd. NewASIMO[EB/OL]. [2015-06-21].http://world.honda.com/HDTV/ASIMO/New-ASIMO-run-6kmh-slomo/index.html.
[5]FU Chenglong, CHEN Ken. Section-map stability criterion for biped robots Part I: theory[C]//Proceedings of International Conference on Mechatronics and Automation. Harbin:IEEE, 2007: 1529-1534.
[6]FU Chenglong, WANG Jianmei, HUANG Yuanlin, et al. Section-map stability criterion for biped robots part II: applications and experiments[C]//Proceedings of International Conference on Mechatronics and Automation. Harbin: IEEE, 2007: 1535-1540.
[7]洪炳熔, 賀懷清. 虛擬人的步行和跑步運動控制方法的研究[J]. 高技術(shù)通訊, 11(3): 91-95. HONG Bingrong, HE Huaiqing. Research of walking and running locomotion control methods for virtual humans[J]. High technology letters, 2001, 11(3): 91-95.
[8]LI Zhaohui, HUANG Qiang, LI Kejie, et al. Stability criterion and pattern planning for humanoid running[C]//Proceedings of IEEE International Conference on Robotics and Automation. New Orleans, LA, USA: IEEE, 2004: 1059-1064.
[9]LEI Xusheng, SU Jianbo. Running trajectory generation for humanoid robot[C]//Proceedings of International Conference on Machine Learning and Cybernetics. Shanghai: IEEE, 2004: 1002-1007.
[10]梶田秀司. 仿人機器人[M]. 管貽生譯. 北京: 清華大學(xué)出版社, 2007. KAJITA S. Humanoid robots[M]. GUAN Yisheng, trans. Beijing: Tsinghua University Press, 2007.
[11]ALBUS J S. A new approach to manipulator control: the cerebellar model articulation controller (CMAC)[J]. Journal of dynamic systems, measurement, and control, 1975, 97(3): 220-227.
[12]CHIANG T S, CHIU C S. Adaptive Tanaka-Sugeno fuzzy cerebellar model articulation controller for output tracking control[C]//Proceedings of 2005 IEEE International Joint Conference on Neural Networks. Montreal: IEEE, 2005: 2284-2289.
[13]LIN Chengjian, CHEN H J, LEE C Y. A self-organizing recurrent fuzzy CMAC model for dynamic system identification[C]//Proceedings of 2004 IEEE International Conference on Fuzzy Systems. Budapest, Hungary: IEEE, 2004, 2: 697-702.
Running trajectory planning for a biped robot based on FCMAC
WANG Xianfeng1,2, ZHAO Jie1
(1.Robot Research Institute,Harbin Institute of Technology, Harbin 150001,China; 2. School of Computer and Information Technology, Northeast Petroleum University, Daqing 163318,China)
To study the center of mass trajectories and the feet of a biped robot in single-leg support and flight phases, a fuzzy cerebellar model articulation controller (FCMAC) neural network was applied to program the center of mass and the feet of the biped robot while running. A running trajectory for the biped robot was generated by FCMAC neural network learning. The simulation shows that the angle values and joint torque values for each joint change smoothly; the biped robot was able to stably run; and the effectiveness of the method was verified satisfactorily.
biped robot;zero moment point(ZMP);running robot;FCMAC
2015-09-24.
日期:2016-11-16.
國家自然科學(xué)基金項目(61375081).
王險峰(1973-),男,副教授.
王險峰,E-mail:199773@sina.com.
10.11990/jheu.201509073
http://www.cnki.net/kcms/detail/23.1390.u.20161114.1036.024.html
TP242.6
A
1006-7043(2017)02-0253-06
王險峰,趙杰. 模糊CMAC網(wǎng)絡(luò)的雙足機器人跑步軌跡規(guī)劃[J]. 哈爾濱工程大學(xué)學(xué)報, 2017, 38(2): 253-257. WANG Xianfeng, ZHAO Jie. Running trajectory planning for a biped robot based on FCMAC[J]. Journal of Harbin Engineering University, 2017, 38(2): 253-257.