控制算法手記——腿足運動控制(1)
文:李磊2024年第三期
與其他地面移動機器人不同,腿足機器人依靠腿足交替與地面接觸,腿足機器人的運動特點給其運動控制帶來了巨大挑戰(zhàn),運動控制算法工程師必須小心規(guī)劃各個變量(步態(tài)、身體位姿、落腳點、交互力等),以保證機器人能夠穩(wěn)定運動,并在非規(guī)則地形上體現(xiàn)出優(yōu)勢。
文/李磊
1 腿足運動特點
與其他地面移動機器人不同,腿足機器人依靠腿足交替與地面接觸(一定的運動步態(tài)和相應的落腳點/接觸點),通過地面反作用力GRF(即Ground Reaction Force,包括法向力用以支撐身體維持在一定高度和平衡,和切向力即利用摩擦力推動身體前進)。由于單個腿足與地面間斷性地接觸,腿足機器人能夠自由選擇落腳點,以適應不連續(xù)的地形(如溝壑、樓梯),在不規(guī)則地形上(非鋪裝路面/不規(guī)則地形)體現(xiàn)出了良好的通用性和機動靈活性。
圖1 身體位姿與接觸點/落腳點位置及其受力狀況的動態(tài)聯(lián)系是腿足機器人運動的本質特征
腿足交替與地面接觸是為了推動身體能夠按照一定軌跡前進并保持平衡,其中身體位置變化可以使用質心CoM(Center of Mass)軌跡表征,而平衡情況則可以由身體姿態(tài)描述。如圖1所示,身體位姿(表征運動目標)與接觸點/落腳點(包括位置與接觸力,用以實現(xiàn)特定運動)之間的復雜動態(tài)聯(lián)系是腿足機器人運動的本質特征,也是腿足機器人運動控制(包含運動規(guī)劃、跟蹤控制與狀態(tài)估計)的核心問題。值得注意的是,腿足交替與地面接觸主要指單個腿足按照一定步態(tài)在擺動相(Swing Phase)與支撐相(Stance Phase)之間切換,對于整個機器人來說,在任意時刻可以都有腿足與地面接觸或者整體處于騰空階段。單個腿足的擺動是為了維持身體的運動,擺動至下一個合適的地點施加對應的接觸力,從而接替推動身體前進或者維持平衡。進一步地,腿足機器人(地面機器人,依靠地面交互力進行運動)的主要特點總結如下:
l 受力的位置不連續(xù):單個腿足間斷與地面接觸并施加力,無打滑情況下只能在接觸點/落腳點處施加力;
l 受力的方向和比例受限制:受力方向從地面指向外部,且切向力與法向力比例受摩擦錐限制(避免打滑);
l 動態(tài)耦合:質心-落腳點的相互位置決定了力臂和運動范圍限制。
腿足機器人上述特點給其運動控制帶來了巨大挑戰(zhàn),運動控制算法工程師必須小心規(guī)劃各個變量(步態(tài)、身體位姿、落腳點、交互力等),以保證機器人能夠穩(wěn)定運動,并在非規(guī)則地形上體現(xiàn)出優(yōu)勢。
2 如何讓機器人動起來
考慮到腿足機器人的本質特征(身體位姿-落腳點之間的復雜動態(tài)聯(lián)系)以及所需要的各種變量之前的協(xié)同變化和約束,腿足機器人一般采用優(yōu)化控制(Control as Optimization)的方式求解控制輸入,即根據(jù)腿足機器人的運動性能要求,確定相關目標函數(shù),求解出滿足各種物理約束條件下的控制/參考輸入,如圖2所示。
圖2 腿足機器人的優(yōu)化控制范式
在控制輸入方面,為使機器人能夠平穩(wěn)運動,需要確定步態(tài)(即落腳點相序、時間即步態(tài)類型、周期、占空比等)、落腳點位置、身體位姿(包括質心位置、身體姿態(tài)等)、足端接觸力和擺動軌跡,以及實現(xiàn)上述輸入所需要的關節(jié)力矩和運動軌跡(位置、速度、加速度等)。取決于應用場景、性能需求和優(yōu)化方法等,部分輸入可以由不同方法確定:
l 可以提前指定(如步態(tài))或者根據(jù)環(huán)境感知確定(如對于Perceptive Locomotion來說,需要深度相機或者激光雷達,并對得到的點云數(shù)據(jù)進行處理,以得到高程圖,從而選擇合適的落腳點),質心速度和轉彎速度則可以由手柄輸入;
l 一些控制量則可以根據(jù)已知的其他控制量確定(如對于采用倒立擺模型運動規(guī)劃,可以根據(jù)落腳點位置確定質心位置,或者相反),根據(jù)足端接觸力/擺動軌跡,確定關節(jié)力矩和軌跡軌跡等;
l 根據(jù)采用的優(yōu)化控制方法不同,部分控制量可以同時確定,如采用非線性優(yōu)化方法可以同時求解落腳點位置和質心位置,采用混合優(yōu)化方法,還可以優(yōu)化求解步態(tài)相關參數(shù)。
取決于采用的動力學模型(如果采用的模型沒有相關輸入,則無法考慮相關約束,如在準直驅關節(jié)模塊應用之前,無法對足端力進行低成本、高帶寬控制,機器人一般采用倒立擺模型,則無法在規(guī)劃中對足端接觸力進行約束,詳細參考下節(jié)動力學模型介紹),求解的控制輸入參數(shù)必須滿足相關的約束,如運動約束(關節(jié)力矩、關節(jié)運動范圍、質心與足端相對位置不能過遠)、動力學約束、接觸力約束(大小、方向、比例、動態(tài)等)、穩(wěn)定性約束(如采用倒立擺類模型相關的ZMP相關約束等)。物理約束、目標函數(shù)的確定和實際運動性能息息相關,也受優(yōu)化方法影響(如需要相關正則項,滿足特定的優(yōu)化問題形式)。
在運動規(guī)劃/控制方面,基于相關動力學模型,通常采用運動軌跡優(yōu)化、模型預測控制MPC(時域滾動優(yōu)化,抗干擾能力更強)、WBC或者上述方法的結合等。深度強化學習作為一種端到端的控制方法,近年來也得到應用,并且顯示出了泛化性和魯棒性,考慮到強化學習求解最優(yōu)策略的思路和動態(tài)規(guī)劃(Bellman方程,值迭代方法)以及變分法(HJB方程,策略迭代方法)的內在關聯(lián)性,仍屬于優(yōu)化控制的范疇,留待后續(xù)再進行詳細介紹。
3 腿足機器人動力學模型
如同在控制算法手記-先學習系統(tǒng)動力學建模和分析所述,為做好腿足機器人的運動控制,必須對其動力學行為本質特點以及相關模型有所了解。腿足機器人動力學模型決定了哪些輸入-輸出關系或者物理約束可以被近似描述(模型只是對物理過程的近似數(shù)學描述)。優(yōu)化控制采用的動力學模型不同,在優(yōu)化控制中所考慮/包含的物理過程不同,機器人實際所能處理的情況和運動性能表現(xiàn)自然也有所差別。對于動力學模型的選擇,需要以運動性能指標要求為依據(jù),結合運動控制框架綜合考慮運算性能(復雜模型會引入非線性、非凸性,使得優(yōu)化算法求解收斂難度增大,需要較好的初始條件或者迭代更新頻率降低)、部署實施方式和成本等各項因素。
圖3 腿足機器人動力學模型
圖3列出了幾種常見的腿足動力學模型及其相關的方程式(輸入-輸出關系),從左到右分別為全身動力學模型(Whole-Body Dynamics)、慣性中心動力學模型CD(Centroidal Dynamics)、單剛體動力學模型SRBD(Single Rigid Body Dynamics)和線性倒立擺模型LIP(Linear Inverted Pendulum),以上模型假設逐漸增多,模型也逐步簡化,具體介紹如下:
l 全身動力學模型,該模型將機器人視作各個剛體連接而成并表示在關節(jié)空間中(與機械臂動力學方程形式相同),其輸入即為腿足機器人的實際輸入(即關節(jié)力矩)。該式可以進一步分解成兩個式子,分別用以描述身體/浮動基動(Floating base)力學和腿足關節(jié)系統(tǒng)動力學,其中浮動基動力學部分表明其依靠接觸力間接控制的本質,腿足關節(jié)動力學系統(tǒng)部分則為一全驅動系統(tǒng)。全身動力學模型綜合考慮浮動基/身體和腿足之間的動力學耦合關系,一般多用于全身運動控制WBC(即接觸力參考、身體運動軌跡已知,求解關節(jié)速度/加速度和力矩的情況),進一步提升運動的機動性和柔順性;
l 慣性中心動力學模型將每個剛體的速度/動量映射/折算到一個以質心為坐標系原點的統(tǒng)一坐標系中,式中矩陣A為慣性中心動量矩陣(Centroidal Momentum Matrix),r(q)為質心位置,依賴關節(jié)角度,fi為處于位置pi(q)的第i個落腳點所受到的力(q表示上述變量對腿足關節(jié)構型的依賴)。慣性中心動力學模型將所有剛體映射到質心的平移動量和角動量變化直接與外界受力聯(lián)系起來(而不是關節(jié)力矩),更加接近腿足機器人通過接觸力間接控制的特點;
l 單剛體動力學模型假設(由關節(jié)速度產生的動量可以忽略,全身慣量近似保持不變-與關節(jié)標稱位置對應的慣量相等),消除了慣性中心動力學對關節(jié)角度的依賴,使得動力學模型近似正確。實際中,上述假設的有效性是通過輕量化設計的腿部設計保證(腿足慣量占到全身慣量的10%左右,如果腿部設計相對較重,則一般移動較慢,且不會偏離標稱位置過多,上述假設仍然近似成立)。通過單剛體動力學模型考慮了浮動基6個移動自由度以及施加上浮動基上力fi以及其相對質心的位置(r-pi),將關節(jié)變量完全從浮動基動力學中獨立出來,降低了運動規(guī)劃難度(在腿足運動中,通常不太關系腿足關節(jié)如何配置,只要末端足部在給定位置上);
l 線性倒立擺模型假設(質心高度保持不變,浮動基角速度和角加速度可以忽略,且落腳點高度恒定),消除了單剛體模型中的叉乘依然引入的非線性,使得模型整體可以進行解析求解,為步態(tài)規(guī)劃提供了極大的方便(參考 Introduction to Humanoid Robotics)。式中pc、x為壓力中心CoP(Center of Pressure,可以認為與零力矩點ZMP等效),可以通過第i個落腳位置以及垂直力進行調整,通過該模型描述了如何通過壓力中心影響水平方向的質心加速度。然而,由于過多的簡化,使得上述對于復雜場景體現(xiàn)出了諸多局限性(如身體轉向以達到特定落腳點、使用不同高度的落腳點以穿越非均勻地形)。該模型的輸入為壓力中心(由各個接觸力豎直分量組合決定),這種抽象喪失了關于每個落腳點豎直力具體分量以及相應的切向分量的信息,其穩(wěn)定性主要由ZMP相對支撐多邊性的位置關系間接保證。實際上,每個落腳點的3維接觸力對于浮動基移動以及實際物理限制(諸如摩擦錐限制)至關重要,將上述信息都折算到一個壓力中心使得難以對腿足機器人諸多特性進行準確分析。除了線性倒立擺模型,還有一系列其他的倒立擺模型(如彈簧倒立擺SLIP,變高度倒立擺等)以及相關引申出的概念(如動態(tài)發(fā)散分量DCM,捕獲點CP、VRP等)用于更復雜的步態(tài)生成或者簡化步態(tài)規(guī)劃,這里不再一一介紹了。
4 總結
得益于硬件平臺的逐步成熟和相關控制算法、工具的開源,腿足機器人在近些年得到了廣泛關注。一方面,由于其欠驅動、通過接觸力間接控制和混合系統(tǒng)的本質,使得其運動控制方法體系迥然不同于工業(yè)運動控制,控制由跟蹤控制(控制指令一般由工藝過程給定,相對較為明確)轉化為規(guī)劃-控制一體化趨勢(運動規(guī)劃與動力學行為息息相關),控制范式也主要轉為以優(yōu)化方法為基礎的軌跡優(yōu)化/模型預測等,相關運動控制經驗無法有效復用,對于具有機電背景進入這一領域的人來說,存在不小的挑戰(zhàn);另一方面,腿足控制領域相關模型/控制算法的成果層出不窮,如何正確理解其原理和發(fā)展脈絡,難度進一步加大。作為開始,本文針對上述問題,根據(jù)公開文獻,做了些初步梳理和嘗試。
中傳動網版權與免責聲明:
凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.wangxinlc.cn)獨家所有。如需轉載請與0755-82949061聯(lián)系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯(lián)網或業(yè)內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
如涉及作品內容、版權等問題,請在作品發(fā)表之日起一周內與本網聯(lián)系,否則視為放棄相關權利。

關注伺服與運動控制公眾號獲取更多資訊

關注直驅與傳動公眾號獲取更多資訊

關注中國傳動網公眾號獲取更多資訊
- 運動控制
- 伺服系統(tǒng)
- 機器視覺
- 機械傳動
- 編碼器
- 直驅系統(tǒng)
- 工業(yè)電源
- 電力電子
- 工業(yè)互聯(lián)
- 高壓變頻器
- 中低壓變頻器
- 傳感器
- 人機界面
- PLC
- 電氣聯(lián)接
- 工業(yè)機器人
- 低壓電器
- 機柜