曹杰昌,張立中,2,白楊楊,2
(1.長春理工大學 機電工程學院,長春 130022;2.長春理工大學 空地激光通信國防重點學科實驗室,長春 130022)
基于ADAMS和MATLAB的兩足機器人的步態(tài)聯(lián)合仿真
曹杰昌1,張立中1,2,白楊楊1,2
(1.長春理工大學 機電工程學院,長春 130022;2.長春理工大學 空地激光通信國防重點學科實驗室,長春 130022)
為提高兩足機器人的設計效率,降低設計成本,驗證步態(tài)規(guī)劃的正確性,在研制兩足機器人物理樣機前,應對其進行虛擬樣機仿真。首先在ADAMS環(huán)境中建立簡化的兩足機器人動力學模型,然后在Matlab/Simulink中建立控制系統(tǒng),最后利用二者之間的接口實現(xiàn)基于ADAMS和MATLAB的兩足機器人的步態(tài)聯(lián)合仿真,在仿真過程中觀察兩足機器人的行走過程,驗證設計方案的正確性,為其物理樣機的研制提供依據(jù)。
兩足機器人;ADAMS;MATLAB;步態(tài)聯(lián)合仿真
隨著兩足機器人的不斷發(fā)展,其物理樣機的投入成本以及機構設計的復雜性也不斷增加,所以有必要對兩足機器人進行虛擬樣機仿真,以確定兩足機器人的步態(tài)規(guī)劃和步態(tài)控制算法的可行性,并可以對設計方法進行優(yōu)化,還可能發(fā)現(xiàn)在物理樣機研制中出現(xiàn)的問題,減少研發(fā)周期。ADAMS可以對運動模型在各種虛擬環(huán)境中進行真實的模擬,并進行分析,而MATLAB可以為運動模型提供控制系統(tǒng),通過兩者的聯(lián)合仿真可以方便而真實的仿真兩足機器人,為之后的物理樣機研制提供數(shù)據(jù)依據(jù)[1]。
1.1 建立簡化模型
按照兩足機器人模型,每條腿配置6個自由度,包括:踝關節(jié)俯仰及滾動自由度;膝關節(jié)的俯仰自由度;髖關節(jié)的俯仰、滾動及偏轉自由度[2](由于本文只研究了兩足機器人的直線行走步態(tài)規(guī)劃,所以髖關節(jié)的偏轉自由度在下文中忽略不提)。由于在一些軟件中建立的三維模型導入ADAMS中后可能出現(xiàn)數(shù)據(jù)丟失和參數(shù)修改不方便等問題,本文在ADAMS/View中直接建立簡易的兩足機器人下肢虛擬樣機模型,其各零部件的質量、質心位置、轉動慣量等物理參數(shù)可以根據(jù)實際參數(shù)進行相應設置[3],模型建立結果如圖1所示,圖中質量塊用來調整兩足機器人模型的質心位置,使模型在仿真過程中更加平穩(wěn)。
圖1 虛擬樣機模型
1.2 動力學建模
在建好的模型中相應的十個關節(jié)處建立轉動副,為了使控制仿真的時候更加容易,給每個轉動副添加摩擦力。在各個約束上添加驅動,并修改驅動類型為角位移,將MATLAB中生成的各關節(jié)角位移作為模型的輸入狀態(tài)變量,并通過函數(shù)變量與這些驅動相連接,控制機器人的各關節(jié)角位移,同時設定兩足機器人輸出狀態(tài)變量為各關節(jié)角位移。利用ADAMS中的control模塊生成與MATLAB聯(lián)合仿真的接口文件。
在機器人兩腳與地面建立接觸力,并設置存在摩擦力,接觸參數(shù)[4]如表1??梢酝ㄟ^調節(jié)接觸力的各參數(shù)來仿真不同環(huán)境的運動。
表1 接觸參數(shù)表
本文采用運動學逆解的方法來規(guī)劃兩足機器人的步態(tài)。首先規(guī)劃雙足機器人向前行走時質心的軌跡,為了使機器人能夠穩(wěn)定前行,需始終保持機器人的零力矩點(簡稱ZMP,是兩足機器人所受重力、慣性力和地面反力三者合力矢的延長線與地面的交點)終位于由支撐腳掌所形成的凸形有效支撐區(qū)域內(nèi)[5],所以將其質心的運動規(guī)劃為倒立擺的運動;其次利用樣條插值的方法規(guī)劃腳踝關節(jié)的運動軌跡;最后結合質心的軌跡以及踝關節(jié)的軌跡,采用幾何方法反解出兩足機器人各個關節(jié)隨時間轉過的角度。
兩足機器人在行走過程中需要規(guī)劃從靜態(tài)到平穩(wěn)行走的起步步態(tài),該步態(tài)結束時須確保機器人各關節(jié)角位移、角速度等與平穩(wěn)步態(tài)開始時的相同。在兩足機器人平穩(wěn)行走后,每個步態(tài)周期分為兩個單步周期,即左右腿各擺動一次,在每個單步周期中,分別規(guī)劃支撐腿和擺動腿的步態(tài),計算各關節(jié)的角位移,而且兩足機器人的質心向支撐腿側向移動半個周期。在下一個單步中,兩足機器人的支撐腿和擺動腿與上個單步正好相反,而步態(tài)規(guī)律與上一個單步相同,機器人的質心同樣向支撐腿側向移動半個周期,而與上一個單步運動的方向相反。
3.1 將接口文件導入MATLAB
將上文中生成的ADAMS和MATLAB的接口文件復制到MATLAB的工作路徑,在MATLAB中運行接口文件,在窗口下輸入adams_sys,得到在ADAMS中建立的兩足機器人動力學模型的非線性系統(tǒng)。[6]
3.2 搭建控制系統(tǒng)
兩足機器人各個關節(jié)采用單獨控制。打開MATLAB中的Simulink模塊,從工具庫中挑選所需的模塊,構建如圖2所示的控制系統(tǒng),控制系統(tǒng)中平穩(wěn)行走時的仿真信號如圖3。
圖2 控制系統(tǒng)
圖3 平穩(wěn)行走時的仿真信號
編寫S-function來生成各個關節(jié)角度為ADAMS模塊提供輸入。雙擊控制系統(tǒng)中adams_sub模塊,在Animation mode選項下選擇interactive,方便在聯(lián)合仿真時,進入ADAMS環(huán)境中實時觀察兩足機器人的運動情況。
仿真結束后可以在Matlab/Simulink中觀察仿真結果曲線,也可以在ADAMS后處理模塊(postprocess)觀看仿真動畫,并且可以計算出仿真過程中質心運動軌跡,各關節(jié)角位移等數(shù)據(jù)曲線。其中幾個步態(tài)關鍵幀如圖4所示。
圖4 步態(tài)關鍵幀
4.1 質心軌跡
從圖5可以看出在機器人在運動過程中質心在側向方向作單擺運動,其平衡位置在0.11m處,即為兩足機器人兩腳之間的中點處,當機器人一只腳開始離地后稱為擺動腳,質心逐漸向另一側支撐腳方向擺動,當擺動腳抬高到最大距離后,質心剛好擺動到支撐腳的正上方,使ZMP位于支撐腳所形成的有效支撐區(qū)域內(nèi)的中心,確保兩足機器人在行走時不會發(fā)生繞支撐腳邊緣傾覆的現(xiàn)象。
圖5 質心在y軸方向的位移
圖6 質心在z軸方向的位移
從圖6可以看出兩足機器人在開始運動時質心高度為1.12m,由于在運動過程中支撐腿發(fā)生彎曲,形成支撐腿屈服0.12m長度的現(xiàn)象,所以在兩足機器人穩(wěn)定運行后質心最大高度下降到1m。同時可以看出質心在上下方向也作單擺運動,而且在每個單步中擺動一個周期。
4.2 各關節(jié)角位移
通過聯(lián)合仿真觀察ADAMS環(huán)境中兩足機器人運動情況以及MATLAB中各關節(jié)的角位移,驗證了步態(tài)規(guī)劃的合理性。本文列出兩足機器人其中一條腿主要關節(jié)在俯仰方向的角位移變化曲線,即踝關節(jié)俯仰角位移如圖7,膝關節(jié)俯仰角位移如圖8,髖關節(jié)俯仰角位移如圖9。
圖7 踝關節(jié)俯仰角位移
圖8 膝關節(jié)俯仰角位移
圖9 髖關節(jié)俯仰角位移
從三幅關節(jié)位移圖可以看出各關節(jié)角位移從0開始經(jīng)過起步后平穩(wěn)過渡到穩(wěn)定行走過程。在穩(wěn)定行走過程中各關節(jié)角位移的和為零,保證了機器人在行走過程中上身保持直立,從而驗證了步態(tài)規(guī)劃的正確性。
本文通過在ADAMS中建立兩足機器人的虛擬樣機,定義各個部件的材料和質量使其能夠滿足物理樣機模型的參數(shù),然后定義各種約束副、運動副,施加重力和接觸力,用來模擬物理樣機運動的真實環(huán)境,再建立與MATLAB聯(lián)合仿真的接口。在MATLAB中建立控制系統(tǒng),然后實現(xiàn)ADAMS與MATLAB的聯(lián)合仿真,通過觀察兩足機器人虛擬樣機的運動情況以及對各數(shù)據(jù)的分析驗證步態(tài)規(guī)劃的正確性,為物理樣機的研制提供寶貴的理論依據(jù)。
[1] 史耀強,厲明勇,頓向明等.雙足機器人基于ADAMS與MATLAB的聯(lián)合仿真[J].機械與電子,2007(1): 45-47.
[2] 李敬,黃強,余張國等.人體步行規(guī)律與仿人機器人步態(tài)規(guī)劃[J].中國科學,2012(9):42-9.
[3] 底劍豪.基于ADAMS的雙足機器人運動仿真研究[D].保定:華北電力大學,2012.
[4] 安志亮,李衛(wèi)國,王利利,蔡長亮等.基于ADAMS的仿人機器人步態(tài)仿真與分析[J].機械工程師,2015(4): 57-59.
[5] 柯顯信.仿人形機器人雙足動態(tài)步態(tài)研究[D].上海:上海大學,2005.
[6] 鄭建榮ADAMS虛擬樣機技術入門與提高[M].北京:機械工業(yè)出版社,2002.
Co-simulation of Gait for Biped Robot Based on ADAMS and MATLAB
CAO Jiechang1,ZHANG Lizhong1,2,BAI Yangyang1,2
(1.Institute of Mechatronical Engineering,Changchun University of Science and Technology,Changchun 130022;2.Fundamental Science on Space-Ground Laser Communication Technology Laboratory,Changchun University of Science and Technology,Changchun 130022)
In order to improve the efficiency,reduce the cost of biped robot design and verify the correctness of gait programming,virtual prototype simulation system has been built before developed the physical prototype of biped robot.First,the mechanical dynamic model of biped robot was built simplify in ADAMS.Second,the control systems ware built in Matlab/Simulink.Last,using the interface between them,we can realized the coordinated simulation of gait for biped robot based on ADAMS and MATLAB.Observed the walking of biped robot in the simulation process,verify the accuracy of the design,provide evidence for the development.
biped robot;ADAMS;MATLAB;co-simulation of gait
TP391.7
A
1672-9870(2016)05-0081-04
2016-05-04
曹杰昌(1990-),男,碩士研究生,E-mail:476818095@qq.com
張立中(1968-),男,教授,博士生導師,E-mail:zlzcust@126.com