余晨雨 章 政 郭慶瑞 張艦棟 金 震
(*武漢科技大學(xué)機(jī)器人與智能系統(tǒng)研究院 武漢430081)
(**武漢科技大學(xué)冶金自動(dòng)化與檢測(cè)技術(shù)教育部工程研究中心 武漢430081)
(***武漢科技大學(xué)信息科學(xué)與工程學(xué)院 武漢430081)
球形機(jī)器人是一種具有封閉球形外殼、一體化機(jī)械結(jié)構(gòu)的移動(dòng)機(jī)器人,其驅(qū)動(dòng)方式主要有質(zhì)心偏移驅(qū)動(dòng)、動(dòng)量輪驅(qū)動(dòng)和電機(jī)直接驅(qū)動(dòng)等方式。相比于傳統(tǒng)的輪式、履帶式移動(dòng)機(jī)器人,球形機(jī)器人具有全封閉、運(yùn)動(dòng)靈活、平衡能力及自我恢復(fù)能力強(qiáng)等特點(diǎn),在星球探索、危險(xiǎn)環(huán)境探測(cè)等領(lǐng)域具有顯著優(yōu)勢(shì)和廣泛的應(yīng)用前景[1]。
球形機(jī)器人是一個(gè)典型的欠驅(qū)動(dòng)、非鏈?zhǔn)健?qiáng)耦合和非線性的復(fù)雜系統(tǒng),由于其獨(dú)特的機(jī)械結(jié)構(gòu)和行走方式,導(dǎo)致球形機(jī)器人的機(jī)理模型存在結(jié)構(gòu)復(fù)雜、參數(shù)不確定等問題,因此運(yùn)動(dòng)控制一直是球形機(jī)器人領(lǐng)域研究重點(diǎn)之一。文獻(xiàn)[2]在非完整約束的條件下,分別建立球形機(jī)器人的運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)模型,通過(guò)輸入變換將動(dòng)力學(xué)模型變換為一個(gè)兩輸入的二階系統(tǒng),并基于非線性滑??刂品椒ǚ謩e設(shè)計(jì)了橫向姿態(tài)控制器和縱向速度控制器,保證被控系統(tǒng)的運(yùn)動(dòng)狀態(tài)收斂到期望的鄰域。文獻(xiàn)[3]基于動(dòng)力學(xué)模型設(shè)計(jì)了一個(gè)狀態(tài)反饋控制器,利用李雅普諾夫定理驗(yàn)證了控制率的穩(wěn)定性,并通過(guò)外殼跟蹤預(yù)期角速度函數(shù)來(lái)使機(jī)器人完成預(yù)期運(yùn)動(dòng)。文獻(xiàn)[4]研究了球形機(jī)器人在坡面上的建模和運(yùn)動(dòng)控制問題,利用拉格朗日方程建立了系統(tǒng)的動(dòng)力學(xué)模型并通過(guò)比例積分微分(proportional-integral-derivative,PID)控制器實(shí)現(xiàn)了球形機(jī)器人在坡面上的穩(wěn)定控制。上述控制方式在一定程度上保證球形機(jī)器人穩(wěn)定控制。然而,由于球形機(jī)器人環(huán)境感知能力不足,易受外部和內(nèi)部的不確定性因素影響,導(dǎo)致球形機(jī)器人的運(yùn)動(dòng)參數(shù)變化大。因此,依賴準(zhǔn)確性模型進(jìn)行控制系統(tǒng)設(shè)計(jì)的方法存在一定的局限性,特別是當(dāng)系統(tǒng)受到較大的干擾時(shí),系統(tǒng)的控制效果將大大降低。
模型參考自適應(yīng)控制(model reference adaptive control,MRAC)能夠有效解決系統(tǒng)模型參數(shù)變化導(dǎo)致控制效果下降的問題,使系統(tǒng)獲得較好的控制性能[5]。本文以自主搭建的球形機(jī)器人為被控對(duì)象,設(shè)計(jì)并實(shí)現(xiàn)了一種基于MRAC 的球形機(jī)器人運(yùn)動(dòng)控制系統(tǒng)。首先,采用拉格朗日方程建立球形機(jī)器人的動(dòng)力學(xué)模型;然后,根據(jù)球形機(jī)器人的性能參數(shù)和運(yùn)動(dòng)過(guò)程信息,設(shè)計(jì)了模型參考自適應(yīng)控制系統(tǒng),按照李雅普諾夫穩(wěn)定性理論設(shè)計(jì)自適應(yīng)控制率,使系統(tǒng)的控制效果得到優(yōu)化;最后,實(shí)驗(yàn)驗(yàn)證了本文所設(shè)計(jì)的基于MRAC 的球形機(jī)器人系統(tǒng)的可行性和有效性。
本文搭建的球形機(jī)器人實(shí)驗(yàn)平臺(tái)由球形外殼、驅(qū)動(dòng)平臺(tái)和全向輪組成,外觀和驅(qū)動(dòng)平臺(tái)結(jié)構(gòu)如圖1所示。
圖1 球形機(jī)器人
圖1 中,球殼為亞克力透明球,球殼內(nèi)部是由三個(gè)互成120 °分布的全向輪和控制全向輪轉(zhuǎn)動(dòng)的驅(qū)動(dòng)平臺(tái)組成;全向輪采用直角電機(jī)驅(qū)動(dòng),其額定電壓為12 V,轉(zhuǎn)速為120 r/min;主控芯片采用的是RT1064;基于捷聯(lián)慣性測(cè)量單元(intertial measurement unit,IMU)設(shè)計(jì)了姿態(tài)檢測(cè)傳感器,其中磁力計(jì)采用IST8310 傳感器,加速度計(jì)和陀螺儀為MPU6050 整合性六軸姿態(tài)傳感器。
球形機(jī)器人主要硬件參數(shù)數(shù)據(jù)如表1 所示。
表1 主要硬件參數(shù)
為了便于進(jìn)行動(dòng)力學(xué)分析,本文對(duì)球形機(jī)器人進(jìn)行如下簡(jiǎn)化和假設(shè)。
(1) 由于球形機(jī)器人為軸對(duì)稱結(jié)構(gòu)且全向輪與球殼內(nèi)壁相切,在進(jìn)行直線運(yùn)動(dòng)時(shí),將3 個(gè)全向輪直接等效為1 個(gè)驅(qū)動(dòng)輪,驅(qū)動(dòng)輪質(zhì)量m2與全向輪質(zhì)量m的關(guān)系為m2=3m。
(2) 考慮到驅(qū)動(dòng)平臺(tái)質(zhì)量主要集中在電機(jī)和電池部分,在實(shí)際安裝過(guò)程中,電機(jī)和電池主要集中在全向輪中心附近,因此將驅(qū)動(dòng)輪半徑等效為(R -l)。
(3) 球形機(jī)器人所有運(yùn)動(dòng)部件均為剛體。球形機(jī)器人在運(yùn)動(dòng)中無(wú)滑動(dòng)摩擦,球殼與地面的滾動(dòng)摩擦可以忽略不計(jì)。
(4) 球形機(jī)器人外殼等效為一個(gè)半徑為R、質(zhì)量為M的薄壁球殼。
當(dāng)球形機(jī)器人沿直線運(yùn)動(dòng)時(shí),其簡(jiǎn)化模型如圖2所示。圖2 中,OXY為固連于球形機(jī)器人初始位置地面的正交坐標(biāo)系。設(shè)x為球形機(jī)器人球心位移,θ為內(nèi)部驅(qū)動(dòng)平臺(tái)擺角,τ為驅(qū)動(dòng)電機(jī)輸出力矩。
圖2 球形機(jī)器人簡(jiǎn)化模型
由于球形機(jī)器人球心位移x和內(nèi)部驅(qū)動(dòng)平臺(tái)擺角θ唯一確定,因此選取廣義坐標(biāo)變量為
球形機(jī)器人球殼、驅(qū)動(dòng)平臺(tái)和全向輪產(chǎn)生的動(dòng)能分別為
式中,J1為球殼轉(zhuǎn)動(dòng)慣量,;J2為驅(qū)動(dòng)平臺(tái)轉(zhuǎn)動(dòng)慣量,J2=ml2;J3為驅(qū)動(dòng)輪轉(zhuǎn)動(dòng)慣量,J3。
選取地面為零勢(shì)能點(diǎn),球殼、驅(qū)動(dòng)平臺(tái)和全向輪產(chǎn)生的勢(shì)能分別為
因此,球形機(jī)器人系統(tǒng)的拉格朗日函數(shù)L為
根據(jù)虛功原理,可得球形機(jī)器人系統(tǒng)所受的廣義力Q為
拉格朗日方程的一般形式為
式中,qk為廣義坐標(biāo)q的第k個(gè)分量,Qk表示廣義力Q的第k個(gè)分量。
將式(5)~式(9)代入式(10)得到球形機(jī)器人系統(tǒng)的動(dòng)力學(xué)方程:
當(dāng)球形機(jī)器人穩(wěn)定運(yùn)行時(shí),球形機(jī)器人運(yùn)動(dòng)加速度和驅(qū)動(dòng)平臺(tái)擺角變化均很小,即都很小,此時(shí)內(nèi)部驅(qū)動(dòng)平臺(tái)擺角θ滿足:
將式(13)表示為關(guān)于廣義坐標(biāo)q的二元二階方程形式,則球形機(jī)器人動(dòng)力學(xué)方程為
式中:
式中,A為系統(tǒng)矩陣,,B為輸入矩陣,B=[0b10b2]T,C為輸出矩陣,C=,[g1g2]T=-V-1N(q),[b1b2]T=V-1E。
由于球形機(jī)器人系統(tǒng)較為復(fù)雜,不能精確建立其系統(tǒng)模型,且在球形機(jī)器人運(yùn)動(dòng)過(guò)程中,系統(tǒng)模型參數(shù)可能發(fā)生變化,常規(guī)依賴于被控對(duì)象模型的控制算法將會(huì)產(chǎn)生誤差,控制效果不能達(dá)到預(yù)期[6-12]。因此本文采用模型參考自適應(yīng)控制算法對(duì)球形機(jī)器人系統(tǒng)進(jìn)行運(yùn)動(dòng)控制,以取得較好的控制效果[13-15]。
本文搭建的基于MRAC 的球形機(jī)器人控制系統(tǒng)框圖如圖3 所示。圖中,為參考模型,G和F分別為被控系統(tǒng)的前饋增益矩陣和反饋增益矩陣。當(dāng)球形機(jī)器人模型參數(shù)發(fā)生變化時(shí),系統(tǒng)輸出y與參考模型輸出ym之間會(huì)產(chǎn)生誤差e,自適應(yīng)機(jī)構(gòu)將利用誤差來(lái)對(duì)G和F進(jìn)行動(dòng)態(tài)調(diào)整,從而使被控系統(tǒng)能夠?qū)崟r(shí)跟隨參考模型。
圖3 基于MRAC 的球形機(jī)器人控制系統(tǒng)框圖
參考模型是系統(tǒng)期望的輸出響應(yīng),因此參考模型的選取影響著系統(tǒng)的動(dòng)態(tài)性能,本文采用極點(diǎn)配置的方式設(shè)計(jì)球形機(jī)器人的參考模型。根據(jù)式(15)所示的球形機(jī)器人狀態(tài)空間模型,設(shè)期望的極點(diǎn)為s1、s2、s3和s4,對(duì)應(yīng)系統(tǒng)模型的反饋向量為K,則球形機(jī)器人的參考模型為
在模型參考自適應(yīng)控制中,利用李雅普諾夫方法設(shè)計(jì)自適應(yīng)機(jī)構(gòu)能夠保證系統(tǒng)具有全局漸進(jìn)穩(wěn)定性,且該方法已經(jīng)得到廣泛使用[16]。本文基于李雅普諾夫方法設(shè)計(jì)球形機(jī)器人的自適應(yīng)機(jī)構(gòu)。
由圖3 可知,引入前饋增益G和反饋增益F后,球形機(jī)器人的狀態(tài)方程為
根據(jù)式(16)可知,被控系統(tǒng)和參考模型輸出矩陣為單位向量,因此:
那么廣義誤差的狀態(tài)方程為
設(shè)G和F的理想值分別為,則當(dāng)和時(shí),滿足:
則由式(19)可得:
在以廣義誤差e與可調(diào)參數(shù)誤差Φ和Ψ組成的增廣狀態(tài)空間中,定義李雅普諾夫函數(shù)為
式中,P、Γ1和Γ2均為正定矩陣。
由于:
則由式(22)可得:
因?yàn)锳m為穩(wěn)定矩陣,為了可以選定對(duì)稱矩陣Q使得對(duì)任意e成立,式(25)右側(cè)第2 項(xiàng)和第3 項(xiàng)必須恒為零,因此選
當(dāng)A和B為常值或變化緩慢時(shí):
由此可得:
由式(26)~式(28)可得,前饋增益G和反饋增益F的自適應(yīng)律為
式(29)確定的自適應(yīng)律就可以保證李雅普諾夫函數(shù)V正定和負(fù)定,此時(shí)對(duì)于任意分段連續(xù)輸入向量函數(shù)r都能夠保證模型參考自適應(yīng)控制系統(tǒng)是全局漸進(jìn)穩(wěn)定的,即limt→∞e(t)=0。
將表1 中的數(shù)值代入式(15)中,可得球形機(jī)器人系統(tǒng)的動(dòng)力學(xué)模型參數(shù)為
選取球形機(jī)器人系統(tǒng)的期望極點(diǎn)為-10,-10,,則其參考模型參數(shù)為,Bm=B。
由式(22)可知,式(29)中P、Γ1和Γ2均為正定矩陣。在實(shí)際應(yīng)用中,一般Γ1和Γ2取單位矩陣,P矩陣需要根據(jù)廣義誤差狀態(tài)方程取合適的矩陣,本文經(jīng)過(guò)反復(fù)仿真實(shí)驗(yàn),當(dāng)對(duì)稱矩陣,此時(shí)廣義誤差收斂效果最好,其響應(yīng)曲線圖如圖4所示,圖中e1、e2、e3和e4為廣義誤差向量e的4 個(gè)狀態(tài)分量。
圖4 廣義誤差
為驗(yàn)證控制器性能,將本文所設(shè)計(jì)的基于MRAC 的球形機(jī)器人控制系統(tǒng)與基于狀態(tài)反饋控制的球形機(jī)器人控制系統(tǒng)進(jìn)行對(duì)比。其中,狀態(tài)反饋控制器的期望極點(diǎn)與MRAC 控制器中參考模型期望極點(diǎn)相同。
圖5 和圖6 分別為球形機(jī)器人在階躍響應(yīng)下球心位置x和驅(qū)動(dòng)平臺(tái)擺角θ的變化曲線。
由圖5 和圖6 可知,本文算法與狀態(tài)反饋控制輸出基本相同,都能夠在3 s 左右快速達(dá)到指定位置并穩(wěn)定下來(lái)。由于狀態(tài)反饋控制的期望極點(diǎn)與MRAC 控制器中參考模型期望極點(diǎn)相同,且在MRAC 控制器中,系統(tǒng)輸出是利用參考模型與系統(tǒng)模型輸出之間的誤差,調(diào)節(jié)反饋增益和前饋增益,使系統(tǒng)模型能夠跟隨參考模型,因此該實(shí)驗(yàn)結(jié)果表明本文搭建的模型參考自適應(yīng)控制系統(tǒng)中系統(tǒng)模型輸出能夠很好地跟蹤參考模型輸出,具有較好的控制效果。
圖5 球心位移變化
圖6 驅(qū)動(dòng)平臺(tái)擺角變化
同時(shí),通過(guò)球形機(jī)器人球心位移曲線和驅(qū)動(dòng)平臺(tái)擺角曲線可知,在球形機(jī)器人運(yùn)動(dòng)過(guò)程中,驅(qū)動(dòng)平臺(tái)首先快速向前運(yùn)動(dòng)到最大擺角位置,使球形機(jī)器人重心前移,并開始加速向前運(yùn)動(dòng);當(dāng)即將到達(dá)給定位置時(shí),驅(qū)動(dòng)平臺(tái)擺角開始反向增大,使球形機(jī)器人開始減速,最終,通過(guò)內(nèi)部驅(qū)動(dòng)平臺(tái)的幾次調(diào)整,球形機(jī)器人速度為0,并達(dá)到給定位置。這與球形機(jī)器人實(shí)際運(yùn)動(dòng)情況相符合,也說(shuō)明了本文建立的動(dòng)力學(xué)模型的正確性。
為測(cè)試系統(tǒng)的抗擾動(dòng)能力,本文在仿真中第3 s時(shí)加入沖激信號(hào)。圖7 和圖8 分別為在有擾動(dòng)情況下球心位置x和驅(qū)動(dòng)平臺(tái)擺角θ的變化曲線。
由圖7 和圖8 可知,當(dāng)在第3 s 產(chǎn)生擾動(dòng)時(shí),雖然內(nèi)部驅(qū)動(dòng)平臺(tái)開始出現(xiàn)一定程度的擺動(dòng),但球形機(jī)器人幾乎沒有產(chǎn)生位移,并在經(jīng)過(guò)大約2 s 后,球形機(jī)器人系統(tǒng)就能夠完全恢復(fù)穩(wěn)定。由此可以得出,模型參考自適應(yīng)算法在擾動(dòng)作用下也能夠快速跟蹤參考模型,有效對(duì)抗擾動(dòng),在短時(shí)間內(nèi)就能恢復(fù)系統(tǒng)穩(wěn)定,具有與狀態(tài)反饋控制器相當(dāng)?shù)目垢蓴_能力。
圖7 球心位移抗擾動(dòng)實(shí)驗(yàn)
圖8 驅(qū)動(dòng)平臺(tái)擺角抗擾動(dòng)實(shí)驗(yàn)
考慮到在球形機(jī)器人運(yùn)動(dòng)過(guò)程中,系統(tǒng)參數(shù)可能產(chǎn)生變化,為模擬系統(tǒng)參數(shù)發(fā)生20%的變化情況,本文將表1 中各參數(shù)數(shù)值擴(kuò)大1.2 倍,控制器參數(shù)和結(jié)構(gòu)不變。圖9 和圖10 分別為參數(shù)不確定情況下使用本文算法和狀態(tài)反饋控制方法,球心位移和驅(qū)動(dòng)平臺(tái)擺角變化情況。
由圖9 和圖10 可以看出,當(dāng)系統(tǒng)受到一定程度的不確定參數(shù)的影響時(shí),模型參考自適應(yīng)控制算法仍然能夠具有較好的控制效果,球心位移和內(nèi)部驅(qū)動(dòng)平臺(tái)擺角雖然相對(duì)于參考模型產(chǎn)生了一定的誤差,但是仍然能夠大致跟蹤參考模型的輸出,并且能夠在3 s 左右恢復(fù)穩(wěn)定,并收斂至與參考模型相同的位置。但是狀態(tài)反饋控制在參數(shù)發(fā)生20%的變化時(shí)已經(jīng)開始產(chǎn)生震蕩,系統(tǒng)的穩(wěn)定性大大降低。因此,實(shí)驗(yàn)結(jié)果可以證明本文所設(shè)計(jì)的MRAC 控制器對(duì)于系統(tǒng)參數(shù)不確定性具有很強(qiáng)的魯棒性。
圖9 參數(shù)不確定下球心位移
圖10 參數(shù)不確定下驅(qū)動(dòng)平臺(tái)擺角
基于圖1 所搭建的球形機(jī)器人,本文分別進(jìn)行了直線軌跡跟蹤運(yùn)動(dòng)和圓形軌跡跟蹤運(yùn)動(dòng)實(shí)驗(yàn),并通過(guò)離線方式將運(yùn)動(dòng)曲線記錄下來(lái),驗(yàn)證所設(shè)計(jì)MRAC 的球形機(jī)器人控制系統(tǒng)的運(yùn)行效果。
圖11 和圖12 為球形機(jī)器人直線運(yùn)動(dòng)實(shí)驗(yàn),直線軌跡長(zhǎng)度為240 cm,球形機(jī)器人運(yùn)行時(shí)間為6 s。球形機(jī)器人的直線軌跡跟蹤結(jié)果如圖11 所示,圖中實(shí)線為預(yù)期軌跡、虛線為球形機(jī)器人的實(shí)際運(yùn)動(dòng)軌跡。圖12 為4 個(gè)不同時(shí)刻球形機(jī)器人的位置。由圖11和圖12 可以看出,在球形機(jī)器人啟動(dòng)時(shí),雖然由于滑動(dòng)摩擦以及自身慣性等影響產(chǎn)生了較小偏差,但是能夠較快調(diào)節(jié)到期望位置,在整個(gè)運(yùn)動(dòng)過(guò)程中,球形機(jī)器人能夠較為精確地按照預(yù)定軌跡滾動(dòng)。
圖11 直線運(yùn)動(dòng)軌跡
圖12 不同時(shí)刻球體位置
圖13 為球形機(jī)器人在圓周運(yùn)行軌跡,圖14 是在圓周運(yùn)動(dòng)中不同時(shí)刻相應(yīng)位置。圖中,圓環(huán)半徑為75 cm,實(shí)線為預(yù)期軌跡、虛線為球形機(jī)器人的實(shí)際運(yùn)動(dòng)軌跡,球形機(jī)器人整體運(yùn)行時(shí)間為30 s。在圓形軌跡運(yùn)動(dòng)過(guò)程中,由于軌跡較為復(fù)雜,內(nèi)部全向輪與球殼之間存在滑動(dòng)摩擦,因此在運(yùn)動(dòng)過(guò)程中出現(xiàn)了一定偏差,但是總體仍能夠按照預(yù)定軌跡運(yùn)行。因此,根據(jù)實(shí)驗(yàn)可知,模型參考自適應(yīng)控制算法能夠有效地應(yīng)用于球形機(jī)器人實(shí)際系統(tǒng)中。
圖13 圓形運(yùn)動(dòng)軌跡
圖14 圓周運(yùn)動(dòng)不同時(shí)刻位置
本文針對(duì)全向輪驅(qū)動(dòng)的球形機(jī)器人系統(tǒng),建立了其拉格朗日動(dòng)力學(xué)模型,并利用模型參考自適應(yīng)控制算法,設(shè)計(jì)了運(yùn)動(dòng)控制系統(tǒng)。實(shí)驗(yàn)表明,本文所采用的模型參考自適應(yīng)控制能夠有效應(yīng)用于球形機(jī)器人控制系統(tǒng),在有干擾的情況下能夠快速恢復(fù)穩(wěn)定,特別在球形機(jī)器人系統(tǒng)參數(shù)不確定的情況下,模型參考自適應(yīng)控制算法仍然能夠很好地對(duì)球形機(jī)器人進(jìn)行控制,達(dá)到了預(yù)期的效果。