肖 樂,殷晨波,謝從華
(1.常熟理工學(xué)院 計算機科學(xué)與工程學(xué)院,江蘇 常熟 215500;2.南京工業(yè)大學(xué) 機械與動力工程學(xué)院,江蘇 南京 210009)
與其他機器人相比,擬人機器人具有更好的行動力,尤其是在不平整地面、斜坡、樓梯等復(fù)雜地面上行走時,擬人機器人具有無法比擬的優(yōu)勢.以往研究穩(wěn)定行走的方法多是采用離線方式規(guī)劃出滿足特定要求的運動軌跡,直接將步態(tài)軌跡規(guī)劃的理論用于步行實驗[1-2],這樣做的問題主要有三個方面:一是擬人機器人樣機與機構(gòu)設(shè)計結(jié)構(gòu)總是有一定的誤差,無法精確描述;二是機器人控制驅(qū)動系統(tǒng)在復(fù)現(xiàn)步態(tài)規(guī)劃的理論結(jié)果時,總有一定的誤差;三是機器人所在的環(huán)境,跟步態(tài)規(guī)劃中的環(huán)境模型存在一定的偏差.也有機構(gòu)采用各種在線修正算法來實現(xiàn)針對實際行走環(huán)境的穩(wěn)定持續(xù)行走,步態(tài)通過上身位置與時間的對應(yīng)關(guān)系進(jìn)行調(diào)整,通過計算實際值與規(guī)劃值之間的差值,所得誤差經(jīng)過簡單快速處理后得出控制關(guān)節(jié)所需的扭矩,送回控制系統(tǒng)進(jìn)行在線步態(tài)調(diào)節(jié)控制[3-7],但是由于地面條件與理想不符、系統(tǒng)模型不準(zhǔn)確、運動學(xué)上未考慮的某些非線性因素、動力學(xué)方程中各矩陣的計算誤差等原因,很難取得理想的步行控制效果,傳統(tǒng)的維持機器人穩(wěn)定控制技術(shù)大多是基于模型的控制方法,無法得到滿意的軌跡跟蹤效果,導(dǎo)致機器人不能按預(yù)先規(guī)劃的姿態(tài)行走而摔倒[8].本文研究了機器人如何在未知環(huán)境下實時調(diào)整姿態(tài),包括著地時間控制、落地位置控制和減振控制等方法,很好地控制了機器人的整個行走過程,使機器人時刻保持良好的穩(wěn)定性.
在機器人的行走過程中,擺動腿的落地時間是在步態(tài)規(guī)劃時所設(shè)置的.但是步態(tài)規(guī)劃是在假定地面絕對水平的前提下進(jìn)行的,它并不是機器人在真實行走中的落地時間.因此,有必要對落地時間進(jìn)行補償.傳統(tǒng)的落地時間控制僅僅是在擺動腿根據(jù)步態(tài)規(guī)劃的著地時間還沒有和地面接觸時,延緩行走步態(tài)流程.這種落地時間的滯后是由于地面的局部傾斜使得機器人向外傾斜所致.相反,如果機器人向內(nèi)傾斜,它將在預(yù)期時間之前著地來防止跌倒,如圖1所示.
在機器人向外傾斜的情況下,如果機器人不跌倒,那么只須延緩步態(tài)流程直到檢測到擺動腳底的地面反作用力為止.然而,如果機器人是向內(nèi)傾斜,就必須被提前檢測到.在左右髖關(guān)節(jié)各裝一個x方向的陀螺儀,可以通過角速度補償落地時間.x方向的角速度由陀螺儀測得,左腿支撐期由左髖關(guān)節(jié)的陀螺儀測得,右腿支撐期由右髖關(guān)節(jié)的陀螺儀測得.
當(dāng)角速度由正變負(fù)或由負(fù)變正時,往往發(fā)生在擺腿擺到最高點的時候.如圖2所示,x軸代表時間,y軸代表陀螺儀的轉(zhuǎn)速或擺動腿的擺動高度.為了方便起見,角速度用直線表示(見圖3).在通常情況下,機器人身體側(cè)向擺動的角速度會在A和B之間穿過x軸,因為骨盆側(cè)向位移方向的改變與擺動腿達(dá)到最高點會有一個時間的滯后.如果機器人向內(nèi)傾斜,則髖關(guān)節(jié)的角速度會在A點之前穿過x軸.這時,就需要提前降低擺動腿.其原理闡述如下:1.在步行周期的第一或第三個階段,通過測量x方向的角速度得到角速度曲線穿過x軸的點.2.如果這個點在A和B之間,說明機器人不會提前著地.機器人可以規(guī)劃的軌跡正常行走.3.如果這個點發(fā)生在比A點早△t的時間點,就使擺動腿提前△t的時間著地.
用這種方法能夠優(yōu)化機器人的著地時間,使機器人每一步的落地時間都是最佳時間,機器人就能穩(wěn)定行走.
圖1 機器人傾斜情況
圖2 髖關(guān)節(jié)角速度和擺動腿軌跡
圖3 落地時間控制
和落地時間相似,落地時間補償也很重要.機器人的落地時間和落地位置在機器人的行走過程中是很重要的兩個因素,因為機器人行走最終實現(xiàn)的就是這兩個因素.首先考慮人類的行走,落腳點是連續(xù)變化的.這一現(xiàn)象表明人們通過使用前庭器官來產(chǎn)生到達(dá)期望落地點所需的角動量.例如,如果落地角速度太大,那么我們會把步子跨大點,使落地點遠(yuǎn)離身體重心來減小著地時的角速度.同樣的,擬人機器人也需要通過傳感器的反饋控制對預(yù)期著地點進(jìn)行調(diào)整,優(yōu)化實際的落地位置.我們可以通過角動量在落地前補償著地位置,使得機器人的擺動腿在合適的位置著地.
圖4是機器人在著地前和著地后的狀態(tài).公式(1)用沖擊模式來表示機器人的落地模式.
其中,ωBL是落地前瞬時的角速度,ωAL是落地后瞬時的角速度,I是相對于支撐點的慣性矩,M是擺動腿開始著地時作用于踝關(guān)節(jié)的力矩,Δt是M的作用時間,IωAL是落地后瞬時的期望角動量,IωBL是落地前瞬時測得的角動量.因此,有必要用 MΔt對IωAL進(jìn)行調(diào)節(jié),因為IωBL是隨著機器人的行走而變化的.公式(1)可以寫成如下形式:
其中,Ma是擺動腳剛開始落地時由地面反作用力作用在踝關(guān)節(jié)的力矩,mgd由重力作用在踝關(guān)節(jié)的力矩.因此,落地點d,也就是距離身體中心的距離可由下式得到:
圖4 落地位置控制
然而,實際上d是由步態(tài)規(guī)劃所決定的.如果我們把預(yù)期的落地點記為dpre,那落地點的補償量就可由d和dpre之差乘上一個比例增益kp得到.最終的落腳點dfinal就可以由dpre加上這個補償量得到.
當(dāng)機器人行走的時候,擺動腿會有一定的振動.這是由于腿和盆骨之間的框架會有一定的偏斜,而且減速齒輪存在很小的齒側(cè)間隙.這個振動量并不大,但會影響到落腳點精度的控制.如果落地點控制的精度超出了±3 mm的范圍,落地點控制器將不能很好地發(fā)揮作用.因此對落地點位置控制來講,減振是必需的.
圖5是擺動腿的數(shù)學(xué)模型,u是輸入的髖關(guān)節(jié)角度,θ是實際髖關(guān)節(jié)角度,m是腳的質(zhì)點,l是從質(zhì)點到髖關(guān)節(jié)的距離,k是彈簧的扭轉(zhuǎn)剛度.系統(tǒng)的運動方程可以表示為
圖5 擺動腿數(shù)學(xué)模型
傳遞函數(shù)可以表示為
以上的傳遞函數(shù)是一個在拉普拉斯域的虛軸上有兩個極點的邊界穩(wěn)定系統(tǒng).通過靜態(tài)單腳支撐期的擺動腿的三個實驗可以求得振動周期,從而得到k/ml2.
圖6 減振控制框圖
圖7 擺動腿的自由振動響應(yīng)
本文對擬人機器人雙足穩(wěn)定行走控制方法進(jìn)行了深入研究,提出擬人機器人在復(fù)雜環(huán)境中如何通過落地時間控制、落地位置控制和減振控制等方法,使機器人獲得新的支撐區(qū)域,恢復(fù)穩(wěn)定,提高穩(wěn)定行走能力,為實現(xiàn)擬人機器人實時控制奠定了基礎(chǔ).
[1]Harada K,Kajita S.Real-Time Planning of Humanoid Ro?bot's Gait for Force Controlled Manipulation[C].New Or?leans:Proceedings of the 2004 IEEE International Confer?ence on Robotics and Automation,2004:616-622.
[2]Eaton M,Thomas J,Davitt.Evolutionary Control of Bipedal Locomotion in High Degree-of-freedom Humanoid Robot:First Steps[J].Artificial Life and Robotics,2007 11(1):112-115.
[3]付根平,楊宜民,陳建平,等.基于ZMP誤差校正的擬人機器人步行控制[J].機器人,2013,35(1):39-44.
[4]J H Kim,J H Oh.Walking Control of the Humanoid Platform KHR-1 based on Torque Feedback Control[C].New Orleans:Proceed?ings of the 2004 IEEE International Conference on Robotics and Automation,2004:623-628.
[5]陳磊,張國良,張維平,等.基于模糊控制的擬人機器人零力矩點在線調(diào)整[J].計算機應(yīng)用,2013,33(SI):298-300.
[6]Napoleon,Nakaura S,Sampei M.Balance Control Analysis of Humanoid Robot based on ZMP Feedback Control[C].Lausanne:Pro?ceedings of the 2002 IEEE/RSJ International Conference on Intelligent Robots and System,2002:2437-2442.
[7]肖樂,常晉義,殷晨波.仿人機器人穩(wěn)定性分析[J].常熟理工學(xué)院學(xué)報,2011,25(2):109-112.
[8]胡凌云,孫增圻.擬人機器人步態(tài)控制研究方法綜述[J].計算機研究與發(fā)展,2005,42(5):728-733.