周宇生 文相容 王在華
(貴州大學(xué)數(shù)學(xué)與統(tǒng)計學(xué)院,貴陽 550025)
(解放軍陸軍工程大學(xué)基礎(chǔ)部,南京 211101)
輪式移動結(jié)構(gòu)是一種通過驅(qū)動輪子轉(zhuǎn)動來實現(xiàn)運動功能的經(jīng)典機械模型,具有能耗小和操作方便等優(yōu)點.尤其是獨輪和兩輪移動結(jié)構(gòu)占地小且運動靈活,能夠?qū)崿F(xiàn)很多復(fù)雜的運動功能.因此在很多機械結(jié)構(gòu)中需要加入輪式滾動接觸機構(gòu),尤其在機器人、航空航天和機械制造等領(lǐng)域應(yīng)用十分廣泛.目前在商業(yè)領(lǐng)域中有獨輪結(jié)構(gòu)Unicycle,兩輪結(jié)構(gòu)Segway PT,三輪結(jié)構(gòu)摩托車,四輪結(jié)構(gòu)汽車和更多輪的拖--掛車.輪式機器人在近二十年是一個非常熱門的研究領(lǐng)域,相關(guān)的建模、路徑規(guī)劃和控制設(shè)計研究很多[1-3].而在工業(yè)領(lǐng)域,很多公司研制了自己特色的輪式移動機器人[4].2002 年,Grasser 等[5]研制了兩輪式移動機器人Joe,通過解耦分別驅(qū)動控制兩輪轉(zhuǎn)速,使得機器人的靈活性達到前所未有的水平.2007 年,德國Fraunhofer 等研制出一款貨物搬運機器人,該機器人配備了紅外線傳感器,能到達指定地點搬運貨物.2017 年,谷歌母公司Alphabet 發(fā)布了一款集輪子和腿為一體的機器人Handle,能夠俯身跳躍和貨物搬運,具有非常優(yōu)秀的平衡能力.雖然工業(yè)界研發(fā)的輪式機器人功能越來越強大,但這一切在很大程度上應(yīng)歸功于發(fā)達的測量技術(shù)和強大的數(shù)據(jù)處理能力.從理論上來說,只要能夠測量足夠多的精確數(shù)據(jù),并能很好地處理這些數(shù)據(jù),就可以不需要實際模型,而直接基于數(shù)據(jù)驅(qū)動設(shè)計軌跡跟蹤控制器[6].但毫無疑問,這樣做的成本是高昂的,因為實際模型本身就是一種已知信息,放棄這么重要的信息無疑是一種巨大的浪費.正確的做法應(yīng)該是盡量利用實際模型和觀測信息,結(jié)合現(xiàn)代控制理論設(shè)計精確高效的低成本控制器.
具有滾動接觸的結(jié)構(gòu)在運動時會受到非完整約束[7],它是對系統(tǒng)運動速度的限制,并且不可積.與完整約束限制系統(tǒng)的位形不同,非完整約束是系統(tǒng)狀態(tài)空間上的約束,主要是對系統(tǒng)運動速度的限制.在無任何約束的控制作用下,非完整移動結(jié)構(gòu)可以在整個位形空間內(nèi)運動.因此,一般來說非完整約束的強度要比完整約束要弱,文獻[8]指出,在計算非完整約束力學(xué)系統(tǒng)的自由度時,每一個非完整約束可以使得系統(tǒng)減少0.5 個自由度.由于非完整約束結(jié)構(gòu)本質(zhì)上還是欠驅(qū)動的,導(dǎo)致其路徑規(guī)劃和跟蹤控制設(shè)計都比較困難[9-10].文獻[11]基于幾何觀點在拉格朗日和哈密頓框架下建立非完整約束力學(xué)系統(tǒng)的動力學(xué)方程,并討論了在非完整約束下力學(xué)系統(tǒng)的可控性和控制器設(shè)計問題.文獻[12]提出采用Pontryagin 極大值原理的Hamel 形式來解決移動機器人在球面上受非完整約束下的最優(yōu)控制問題.
要想精確控制輪式移動結(jié)構(gòu)的運動,必須同時清楚其運動學(xué)方程和動力學(xué)方程,而其動力學(xué)方程又需要利用運動學(xué)方程結(jié)合Euler-Lagrange 方程推導(dǎo)出來.目前很多研究僅僅針對其運動學(xué)方程,將約束方程轉(zhuǎn)化為標(biāo)準(zhǔn)鏈?zhǔn)较到y(tǒng)的形式[13],然后利用相關(guān)鏈?zhǔn)交騼缡较到y(tǒng)的控制理論設(shè)計速度控制器[14-15].但在實際問題中,實現(xiàn)運動任務(wù)所需要的速度是通過力或力矩來實現(xiàn)的,應(yīng)該設(shè)計力或力矩控制器.另外一些研究僅僅針對其動力學(xué)方程,考慮跟蹤給定的前向速度和偏航轉(zhuǎn)速目標(biāo),設(shè)計自適應(yīng)模糊或神經(jīng)網(wǎng)絡(luò)控制實現(xiàn)給定跟蹤任務(wù)[16-17].但所給定的前向速度和偏航轉(zhuǎn)速目標(biāo)所對應(yīng)的幾何軌跡是什么并不清楚.而實際問題需要設(shè)計跟蹤控制使得輪式移動結(jié)構(gòu)能夠精確地沿著給定的目標(biāo)軌跡曲線運動.因此,必須同時考慮其運動學(xué)方程和動力學(xué)方程,設(shè)計力或力矩控制器使機器人實現(xiàn)給定的運動任務(wù).但是,目前已有的文獻對輪式非完整約束的運動規(guī)律理解還不深入,很多研究成果側(cè)重于從控制理論的角度進行控制設(shè)計與分析,很少有研究能將輪式非完整約束下的運動規(guī)律與機器人運動控制設(shè)計有機結(jié)合起來.如文獻[18-19]中,將前向速度和偏航轉(zhuǎn)速同時看成是運動方程的控制輸入變量和動力學(xué)方程的狀態(tài)輸出變量,基于中間變量來設(shè)計自適應(yīng)模糊跟蹤控制器.文獻[20]中利用兩個高增益觀測器來估計兩輪式移動結(jié)構(gòu)的前向速度和偏航轉(zhuǎn)速,然后在此基礎(chǔ)上設(shè)計自適應(yīng)反饋控制器來實現(xiàn)圓周運動.文獻[21]采用保辛算法將多體系統(tǒng)連續(xù)時間域內(nèi)的動力學(xué)方程進行離散化,再用瞬時最優(yōu)控制保辛方法實現(xiàn)對目標(biāo)軌跡的高精度跟蹤.
為了設(shè)計控制器使輪式移動結(jié)構(gòu)能精確地沿著給定目標(biāo)軌跡曲線運動,首先應(yīng)分析清楚輪式移動結(jié)構(gòu)的非完整約束本質(zhì),以及機械結(jié)構(gòu)在輪式非完整約束下的運動規(guī)律.然后將得到的運動規(guī)律與動力學(xué)方程有機結(jié)合起來,再利用現(xiàn)代控制理論設(shè)計合適的軌跡跟蹤控制器.本文工作從質(zhì)點連續(xù)光滑運動出發(fā),認清輪式非完整約束的本質(zhì)及理清各類輪式移動結(jié)構(gòu)的運動學(xué)方程,并在此基礎(chǔ)上給出求解動力學(xué)方程的一般方法.另一方面,利用平面曲線基本理論分析輪式移動結(jié)構(gòu)在非完整約束下的運動規(guī)律,然后通過引入相對曲率為任務(wù)目標(biāo)曲線設(shè)計動態(tài)軌跡跟蹤目標(biāo).基于該動態(tài)軌跡跟蹤目標(biāo),可以將實際問題中的目標(biāo)軌跡曲線、運動學(xué)方程和動力學(xué)方程有機結(jié)合起來,為輪式移動結(jié)構(gòu)設(shè)計精確高效的軌跡跟蹤控制器以實現(xiàn)給定的運動任務(wù).
如圖1 所示,一個質(zhì)量為m的帶電質(zhì)點,在電場的作用下在平面上做光滑曲線運動.若要使該質(zhì)點沿給定的光滑曲線運動,該如何控制電場力才能精確地實現(xiàn)運動任務(wù)?這是一個簡單的軌跡跟蹤控制問題,該質(zhì)點好像沒有受到任何約束作用,我們直接利用牛頓第二定律就可以得到其動力學(xué)方程
其中,Tx,Ty分別是沿坐標(biāo)方向的電場控制力.
假設(shè)給定的光滑曲線是平面上的一個軌道槽,質(zhì)點在該曲線槽里運動,那么該質(zhì)點是否受到了約束作用呢?答案是肯定的.此時該約束是完整約束還是非完整約束呢?注意到質(zhì)點沿該曲線運動時,其沿與切向垂直的橫向方向的速度為0,即
圖1 帶電質(zhì)點在平面電場中運動簡圖Fig.1 Motion schematic diagram of a charged particle in a plane with electric field
其中,θ 為運動曲線的切向量與x軸的夾角,可以理解為質(zhì)點運動的偏航轉(zhuǎn)速.事實上,質(zhì)點在光滑曲線槽中運動時,受到槽對它的約束作用,使其速度滿足約束方程(2),因此質(zhì)點受到槽對它的非完整約束力.但如果沒有軌道槽,質(zhì)點在平面上做光滑曲線運動時,其運動速度也必須滿足方程(2).若某時刻質(zhì)點突然有一個不為零的橫向速度,就會導(dǎo)致質(zhì)點的運動軌跡出現(xiàn)一個尖點,不是光滑曲線.
假設(shè)質(zhì)點在平面運動時坐標(biāo)表示為光滑曲線r=(x(t);y(t)),令該運動軌跡曲線切向量長度為
結(jié)合式(2)和式(3),可以得到
方程(4)表明了質(zhì)點沿光滑軌跡曲線運動的主要特征:沿與切向垂直的橫向速度為零,軌跡曲線的切向量就是質(zhì)點沿該曲線運動的前向速度.
方程(4)其實可以等價于
方程(2)是質(zhì)點運動軌跡是光滑曲線的必要條件.當(dāng)質(zhì)點運動滿足方程(4)時,可以推出其前向速度和偏航轉(zhuǎn)速與實際運動軌跡曲線之間的關(guān)系.
對式(6)關(guān)于t求導(dǎo)得
將式(6)和(7)交叉相乘并相減得
因此,質(zhì)點運動速度與運動軌跡曲線之間的關(guān)系為
從式(9)可以看出,給定一個運動軌跡曲線可以確定質(zhì)點運動的前向速度和偏航轉(zhuǎn)速;反之,根據(jù)式(6),給定質(zhì)點運動的前向速度和偏航轉(zhuǎn)速,可以確定質(zhì)點運動軌跡的參數(shù)方程.因此,利用式(9),可以將參數(shù)曲線表示成速度形式.
事實上,對于一般的機械力學(xué)系統(tǒng),利用Euler-Lagrange 方程建模得到的動力學(xué)方程基本上都是關(guān)于速度的,所以將目標(biāo)軌跡曲線轉(zhuǎn)化為速度目標(biāo)后,能非常方便地設(shè)計力或力矩控制器.
如圖2 所示,假設(shè)獨輪足夠?qū)捛覠o側(cè)翻和側(cè)滑,則獨輪的中心O在平面上做連續(xù)光滑運動.假設(shè)該中心坐標(biāo)為(x(t);y(t)),故其運動需滿足方程(2).在這個實際問題中,要使得中心O的運動滿足方程(2),整個力學(xué)系統(tǒng)要受到非完整約束力的作用才能實現(xiàn).因此,約束方程(2)是獨輪運動受到的非完整約束.考慮到獨輪的運動是通過驅(qū)動輪子轉(zhuǎn)動來實現(xiàn)的,所以必須引入輪子轉(zhuǎn)速這個變量.假設(shè)輪子不打滑和不空轉(zhuǎn),則獨輪還受到如下完整約束
其中,r是獨輪半徑,是獨輪轉(zhuǎn)速.
圖2 獨輪運動結(jié)構(gòu)簡圖Fig.2 Motion schematic diagram of the single-wheel
因此,獨輪總共受到兩個約束作用,式(10)是一個完整約束,而式(2)是獨輪受到的非完整約束.
獨輪運動的動力學(xué)方程為
要使中心點O沿給定軌跡曲線運動,該如何設(shè)計控制力矩呢?由于中心O的運動滿足方程(2),由式(9)可將目標(biāo)曲線轉(zhuǎn)化為速度目標(biāo),將式(10)代入式(11),動力學(xué)方程轉(zhuǎn)化為
這樣就將原問題轉(zhuǎn)化為線性系統(tǒng)(12)關(guān)于速度目標(biāo)(9)的一般軌跡跟蹤控制問題.
兩輪式倒立擺是一類經(jīng)典欠驅(qū)動的非完整系統(tǒng),在實際中應(yīng)用廣泛,相應(yīng)的運動規(guī)劃和控制研究非常多[1;22].如圖3 所示,假設(shè)兩輪無側(cè)滑無空轉(zhuǎn),左右兩輪各安裝一個驅(qū)動馬達,通過驅(qū)動左右兩輪轉(zhuǎn)動來實現(xiàn)兩輪式倒立擺的運動和擺桿平衡.
圖3 兩輪式倒立擺結(jié)構(gòu)簡圖Fig.3 Schematic diagram of the two-wheeled inverted pendulum
設(shè)中心O坐標(biāo)為(x(t);y(t)),當(dāng)兩輪式倒立擺在平面上無側(cè)滑時,O在平面上沿光滑曲線運動,故其運動必須滿足約束方程(2).另外,當(dāng)兩輪不打滑不空轉(zhuǎn)時,有如下速度關(guān)系式
因此,兩輪移動結(jié)構(gòu)在運動時總共受到一個非完整約束(2)和兩個完整約束(13).從方程(13)中將反解出來,并結(jié)合方程(5),則可將兩輪式移動結(jié)構(gòu)運動時所受約束方程總結(jié)為
實際上兩輪式移動結(jié)構(gòu)只受到3 個約束作用,式(14)中其實包含了一個賦值關(guān)系式(3).
兩輪式倒立擺的擺桿穩(wěn)定是通過整個結(jié)構(gòu)前后運動的耦合作用來實現(xiàn)的,這里面受力分析比較復(fù)雜.目前求解其動力學(xué)方程的方法主要有Newton 法[23]、Kane 法[24]和Euler-Lagrange 方法.相對來說,Newton 法和Kane 法都比較繁瑣.這里我們采用Euler-Lagrange 方程來建立其動力學(xué)方程[22].
將式(4)的第二式代入式(14)的第三、四式,并結(jié)合式(2),得到兩輪結(jié)構(gòu)運動約束的另一種形式
令q=是兩輪式倒立擺的廣義坐標(biāo),則運動約束方程(15)可以寫成矩陣形式,其中
另一方面,令V=,約束(14)寫成矩陣形式
采用Euler-Lagrange 方程來求解兩輪式倒立擺的動力學(xué)方程[22].假設(shè)和M分別是輪子和中間體質(zhì)量,分別是輪子繞輪軸方向和z軸方向的轉(zhuǎn)動慣量,IB和Iz分別是中間體繞輪軸方向和z軸方向的轉(zhuǎn)動慣量.
兩輪的前向動能和轉(zhuǎn)動動能之和為
中間體的前向動能和轉(zhuǎn)動動能分別為
轉(zhuǎn)動慣量Iz是和擺角相關(guān)的,在擺角較小的情況下,Iz近似一個常量.兩輪式倒立擺重力勢能為
因此,Lagrange 函數(shù)為
利用非完整力學(xué)系統(tǒng)的Euler-Lagrange 方程
其中,λ 是Lagrange 乘子,T是輸入力矩向量,E(q)是輸入匹配矩陣
計算式(18)并按照狀態(tài)變量的各階導(dǎo)數(shù)整理成為了消去式(19)中的Lagrange 乘子,將式(16)的左右兩端分別對t求導(dǎo)并代入式(19)得
對式(20)左右兩邊同時左乘ST(q),并利用式(17)將Lagrange 乘子消去得
將式(22)展開,并改寫成狀態(tài)方程的形式
其中
要使兩輪式倒立擺的中心點O沿給定的軌跡曲線運動,并且整個運動過程中擺角始終保持足夠小,該如何設(shè)計控制器(u1;u2)呢?利用式(9)將目標(biāo)軌跡曲線轉(zhuǎn)化為速度目標(biāo)的形式,結(jié)合式(23)的后兩式可將原問題轉(zhuǎn)化為一般的軌跡跟蹤控制問題.另外,動力學(xué)方程(23)可以解耦成兩個控制子系統(tǒng),可以分別設(shè)計控制器u2和u1.在文獻[25]中,通過引入關(guān)于擺角的大權(quán)重性能指標(biāo),對擺角進行線性化后將得到的線性系統(tǒng)看成標(biāo)稱系統(tǒng),然后設(shè)計關(guān)于性能指標(biāo)的最優(yōu)積分滑模控制器以實現(xiàn)兩輪式倒立擺的往返運動.
如圖4 和圖5 所示三輪和四輪移動結(jié)構(gòu),假設(shè)驅(qū)動馬達都安裝在后兩輪上,前輪可以通過控制方向盤進行轉(zhuǎn)向.后兩輪所受到的約束和兩輪式倒立擺是一樣的,都可以用式(14)表示.
對于前輪所受約束,考慮中間桿的前端點P(xP;yP)的運動.注意到P點有兩重身份,首先作為前輪的中心點,它的運動滿足橫向速度為零
另一方面,P作為中間桿前端點,它的運動速度如圖6 所示,結(jié)合式(24)有如下關(guān)系
圖4 三輪移動結(jié)構(gòu)簡圖Fig.4 Schematic diagram of the three-wheeled mobile structure
圖5 四輪移動結(jié)構(gòu)簡圖Fig.5 Schematic diagram of the four-wheeled mobile structure
圖6 P 點速度示意圖Fig.6 Schematic diagram of the velocity of P
將式(25)改寫為
方程(26)是一個非完整約束,它刻畫了前輪轉(zhuǎn)向角與中心點O的速度之間的關(guān)系.若將=vcos θ 代入式(26),還可以將該非完整約束改寫為
由于圖4 和圖5 中三、四輪結(jié)構(gòu)所受的約束方程完全相同,因此利用方程(18)求解動力學(xué)方程的過程完全一樣.僅以三輪為例,是通過方向盤人為進行控制的,所以將看成控制變量.結(jié)合式(14)和式(26),三輪移動結(jié)構(gòu)所受到的所有運動約束為
令q=(x;y;θ;θl;θr)T,V=,將約束方程(27)寫成矩陣形式
從式(27)來看,三輪移動結(jié)構(gòu)似乎一共受到四個約束作用,但其實不然,約束方程(26)和(13)的第二式并不是相互獨立的,而是互相影響的.在兩輪式移動結(jié)構(gòu)的情形中,兩輪式的三個約束分別是橫向速度為零,兩輪轉(zhuǎn)速之和決定前向速度,兩輪轉(zhuǎn)速之差決定偏航轉(zhuǎn)速.而在本文的三輪移動結(jié)構(gòu)中,3 個約束作用實際上分別是橫向速度為零,兩輪轉(zhuǎn)速之和決定前向速度,前向速度v和決定偏航轉(zhuǎn)速,此時對應(yīng)的就是確定的了.因此,我們將這兩個約束整合在一起,將三輪移動結(jié)構(gòu)受到的約束作用總結(jié)成如下形式
將其寫成矩陣形式
注意到,F(xiàn)(q);S(q)滿足如下關(guān)系
為了利用Euler-Lagrange 方程來計算三輪移動結(jié)構(gòu)的動力學(xué)方程,首先需要分別計算各個部分的動能.如圖6 所示,可以得到如下位置關(guān)系
因此,兩后輪的前向動能和轉(zhuǎn)動動能之和為
中間桿和前輪的前向動能和轉(zhuǎn)動動能之和分別為
其中,MB是中間桿的質(zhì)量,IB是中間桿繞O點在x?y平面上的轉(zhuǎn)動慣量.
將Lagrange 函數(shù)L=+TB+Tf代入式(18),此時輸入力矩向量T和匹配矩陣E(q)分別為
計算式(18),并按狀態(tài)變量的各階導(dǎo)數(shù)進行整理得
對式(28)關(guān)于t求導(dǎo),然后代入式(30)得
對式(31)左右兩邊同時左乘ST(q),并利用式(29)將Lagrange 乘子消去得三輪移動結(jié)構(gòu)動力學(xué)方程為
動力學(xué)方程(32)可以寫成狀態(tài)方程形式
利用式(9)將目標(biāo)軌跡曲線轉(zhuǎn)化成速度形式,結(jié)合控制系統(tǒng)(33)得到一般的軌跡跟蹤控制問題.注意這里u1是中間控制變量,而最終需要設(shè)計的控制變量是和u2.由于方程(33)是解耦的,因此可先根據(jù)第二個方程設(shè)計u1,然后結(jié)合方程(26)得
方程(34)給出了控制變量u1和的關(guān)系.將得到的控制變量代入式(33)的第一式,再設(shè)計控制變量u2完成最終的軌跡跟蹤控制設(shè)計任務(wù).
前面幾節(jié)內(nèi)容已經(jīng)系統(tǒng)地分析了各類輪式移動結(jié)構(gòu)的約束方程及其動力學(xué)方程.實際上約束方程(2)是所有輪式移動結(jié)構(gòu)在無橫向滑動時必須滿足的非完整約束.通過分析該約束條件,我們可以利用式(9)將輪式移動結(jié)構(gòu)的任務(wù)軌跡曲線轉(zhuǎn)化為成速度目標(biāo)的形式,然后結(jié)合其動力學(xué)方程將原運動任務(wù)轉(zhuǎn)化為一般的軌跡跟蹤控制問題.如文獻[26]在考慮輪式倒立擺的避障運動控制時,就將設(shè)計好的分段多項式軌跡曲線轉(zhuǎn)化成近似的速度目標(biāo)形式,然后結(jié)合動力學(xué)方程設(shè)計軌跡跟蹤控制器.文獻[27-29]在考慮拖--掛車的軌跡曲線跟蹤和避障運動時,就是先將目標(biāo)軌跡曲線轉(zhuǎn)化為式(9)這樣的速度目標(biāo),然后采用模型預(yù)測等控制方法實現(xiàn)給定的運動任務(wù).但從這些論文的仿真結(jié)果來看,不管采用多么先進的控制設(shè)計方法,實際運動軌跡總是會有一些偏離目標(biāo)軌跡曲線,尤其是在最初始的一段時間內(nèi).出現(xiàn)這樣的結(jié)果主要原因之一在于所采用的速度目標(biāo)(9)在初始時刻和實際速度相比具有比較大的差值,這個速度誤差會累計成很大的位置誤差.另外,如果采用靜態(tài)速度目標(biāo)(9),當(dāng)前向速度誤差控制系統(tǒng)受到未知擾動影響時,會導(dǎo)致實際前向速度偏離給定的前向速度目標(biāo),而此時偏航轉(zhuǎn)速目標(biāo)不能時時地進行調(diào)整,這就會導(dǎo)致輪式移動結(jié)構(gòu)偏離目標(biāo)軌跡曲線.為了同時解決這兩個問題,使輪式移動結(jié)構(gòu)能精確地沿著給定目標(biāo)軌跡曲線運動,我們將靜態(tài)速度目標(biāo)(9)改進為動態(tài)跟蹤目標(biāo).
其中k(s(t))=是目標(biāo)曲線的相對曲率.
事實上,曲率函數(shù)k(s(t))是曲線的核心特征.當(dāng)參數(shù)t=s是弧長參數(shù)時,前向速度目標(biāo)是單位速度,此時曲率函數(shù)k(s)在平面上唯一確定一條光滑曲線.當(dāng)t不是弧長參數(shù)時,由前向速度和曲率函數(shù)k(t)=k(s(t))可以在平面上唯一確定一條光滑曲線.對曲線引入新的時間變量η,它由t=φ(η)確定,其中φ 是一一對應(yīng)的光滑函數(shù),則可將原參數(shù)曲線轉(zhuǎn)化為=.由復(fù)合函數(shù)求導(dǎo)關(guān)系
從上式可看出,方程(35)中的前向速度目標(biāo)是可以通過參數(shù)變換進行調(diào)整的.因此方程(35)中涉及到曲線曲率的第二式才是軌跡曲線的本質(zhì)刻畫.
在實際跟蹤過程中,如果我們只需要輪式移動結(jié)構(gòu)精確沿給定軌跡曲線運動,而并不在乎整個過程中運動速度的快慢,那么可以放棄對前向速度目標(biāo)的精確跟蹤,集中精力跟蹤方程(35)的第二式.此時可以將跟蹤目標(biāo)(35)改進為動態(tài)跟蹤目標(biāo)
一般來說,φ(t)可設(shè)計為
這里l是目標(biāo)軌跡曲線的長度,此時
在實際應(yīng)用中,由于初始時刻輪式移動結(jié)構(gòu)都是靜止的,利用前向速度目標(biāo)(37)可以使得跟蹤控制問題的初始速度誤差為零,并可以根據(jù)實際需要調(diào)節(jié)參數(shù)β 使得整個過程跟蹤控制的效果最好.
與靜態(tài)速度目標(biāo)(9)相比,采用動態(tài)跟蹤目標(biāo)(36)具有兩個明顯的優(yōu)點:
(1)速度誤差(尤其初始速度誤差)不會累積成越來越大的位置誤差.由于動態(tài)跟蹤目標(biāo)直接指向目標(biāo)曲線的本質(zhì)-曲率,當(dāng)實際前向速度偏大時,方程(36)第二式所給的偏航轉(zhuǎn)速目標(biāo)也變得更大,只要控制過程中的偏航轉(zhuǎn)速誤差足夠小,也即曲率跟蹤誤差足夠小,就能保證輪式移動結(jié)構(gòu)不偏離給定軌道向外偏轉(zhuǎn).反之,若實際前向速度偏小,那么方程(36)第二式所給出的偏航轉(zhuǎn)速目標(biāo)也會相應(yīng)變小,只要曲率跟蹤誤差小就能保證輪式移動結(jié)構(gòu)不偏離給定軌道向內(nèi)偏轉(zhuǎn).因此,盡管在整個運動過程中存在很大的前向速度誤差,但采用動態(tài)跟蹤目標(biāo)能夠保證輪式移動結(jié)構(gòu)始終在給定軌道上運動.
(2)前向速度目標(biāo)可以根據(jù)實際需要進行設(shè)計,這在實際應(yīng)用中非常重要.由于對前向速度目標(biāo)無限制要求,而采用不同的前向速度目標(biāo),所導(dǎo)致的結(jié)果僅僅是整個運動過程中輪式移動結(jié)構(gòu)運動快慢不同而已.另外,考慮到輪胎最大靜摩擦力是有限的,因此實際控制力矩最好不要超過該最大靜摩擦力.這里我們可以通過設(shè)計小一些的前向速度目標(biāo),使得實際需要的控制力矩盡量小于輪胎的最大靜摩擦力,以免輪胎打滑嚴(yán)重影響跟蹤控制效果.
以單位圓為目標(biāo)軌跡曲線為例,由于目標(biāo)曲線的相對曲率是常數(shù)1,文獻[30]中將偏航轉(zhuǎn)速目標(biāo)設(shè)計為實際的前向速度,這樣設(shè)計的動態(tài)跟蹤目標(biāo)恰好是式(36)的特殊情形.由于兩輪式倒立擺的動力學(xué)方程是非線性的,原問題轉(zhuǎn)化為非線性系統(tǒng)的軌跡跟蹤控制問題.為此,我們先利用反饋線性化方法將系統(tǒng)轉(zhuǎn)化為線性系統(tǒng),然后基于線性系統(tǒng)利用預(yù)測反饋處理輸入時滯的影響.而線性化誤差和外部有界擾動整體打包后利用積分滑??刂苼硖幚?由于所設(shè)計的積分滑模面就是兩輪式倒立擺需要完成的運動任務(wù)對應(yīng)的狀態(tài),因此最終設(shè)計的積分滑??刂撇坏苁箖奢喪降沽[在保持?jǐn)[桿穩(wěn)定下很好地完成給定的運動任務(wù),整個運動過程還具有很強的魯棒性.如圖7 所示,實際運動軌跡幾乎和單位圓是重合的,而采用靜態(tài)速度目標(biāo)(9)時,實際運動軌跡和目標(biāo)曲線會有很大的偏差.
圖7 兩輪式倒立擺在平面上實際運動軌跡Fig.7 Actual motion trajectory of the two-wheeled inverted pendulum in a plane
文獻[30]中給定的目標(biāo)軌跡曲線是單位圓,是具有常數(shù)曲率的特殊曲線.為了更好地說明采用動態(tài)跟蹤目標(biāo)的控制效果,我們考慮獨輪沿一個非常數(shù)曲率的光滑曲線運動.假設(shè)初始時刻獨輪是靜止的,需要完成的運動任務(wù)軌跡曲線是擺線
由曲線基本理論可計算出該軌跡曲線的曲率為
注意到該曲線在端點處的曲率趨于無窮,在應(yīng)用動態(tài)跟蹤目標(biāo)(36)進行控制時,會出現(xiàn)極大的數(shù)值計算誤差.因此我們選取擺線中不包含上述端點的一段曲線作為目標(biāo)軌跡曲線
此時,上述目標(biāo)軌跡曲線的曲率可以表示為
另外,曲線的弧長函數(shù)為
根據(jù)式(36)設(shè)計動態(tài)跟蹤目標(biāo)
令X=[x1;x2]T=[s;v]T,前向速度控制方程改寫為二階狀態(tài)方程
再將控制方程(42)轉(zhuǎn)化成誤差系統(tǒng),令
則前向速度誤差系統(tǒng)為
要使得整個運動過程中前向速度誤差一直保持足夠小,可以采用文獻[22]中的思想,利用線性二次型最優(yōu)控制的權(quán)重來調(diào)節(jié).由于式(40)中前向速度目標(biāo)?v是逐漸趨近于零的,且其無窮積分是收斂.因此可以引入一個無限時域線性二次型性能指標(biāo)
該性能指標(biāo)中關(guān)于前向速度誤差的權(quán)重取足夠大,這樣所設(shè)計的最優(yōu)控制能使前向速度誤差盡量小.利用線性二次型最優(yōu)控制理論,u1設(shè)計為
針對偏航轉(zhuǎn)速控制系統(tǒng),可以采用文獻[25]中的積分滑模思想設(shè)計積分滑模控制器.令,則系統(tǒng)(41)的第二式可轉(zhuǎn)化為誤差控制系統(tǒng)
其中k是控制增益參數(shù)(后面所有仿真中k=40).然后將動態(tài)跟蹤目標(biāo)設(shè)計為積分滑模面,其中G>0 是合適的常數(shù)
這樣,切換控制設(shè)計為
其中μ是滑模控制參數(shù),D是外部擾動的最大振幅.最終u2設(shè)計為
這樣設(shè)計的積分滑??刂?45)具有很強的魯棒性.
若采用靜態(tài)速度目標(biāo)(9)的形式,即
若同樣采用式(44)和式(45)作為控制器,由于?v不是逐漸趨于零的,從文獻[22]的分析可知,此時不能采用無限時域的性能指標(biāo),而必須采用有限時域性能指標(biāo),導(dǎo)致對應(yīng)的黎卡提微分方程很難求解,控制器設(shè)計變得困難.而采用動態(tài)目標(biāo)(40)時,只需求解代數(shù)黎卡提方程,控制器設(shè)計變得簡單.
一般來說,采用靜態(tài)目標(biāo)(46)時,會使得誤差系統(tǒng)的初始值不為零.而采用動態(tài)目標(biāo)(40)時,可以根據(jù)實際需要設(shè)計合適的前向速度目標(biāo),使得初始速度誤差為零.如圖8 和圖9 所示,明顯采用靜態(tài)跟蹤目標(biāo)時的速度累積誤差會遠遠大于采用動態(tài)跟蹤目標(biāo)時.而累積速度誤差大自然會導(dǎo)致累積位置誤差也很大,使最終得到的實際軌跡曲線嚴(yán)重偏離目標(biāo)曲線.如圖10 所示,采用動態(tài)跟蹤目標(biāo)(40)時,實際軌跡偏差非常小,而采用靜態(tài)跟蹤目標(biāo)(46)時,實際軌跡嚴(yán)重偏離目標(biāo)曲線.另外,圖8 和圖9 中紅色的線在大概一半的時間時就結(jié)束了,這是因為采用靜態(tài)目標(biāo)(46)時的實際平均速度要比采用動態(tài)目標(biāo)(40)時更快,提前完成了運動任務(wù).
圖8 獨輪的前向速度誤差Fig.8 Forward speed error of the single-wheel
圖9 獨輪的偏航轉(zhuǎn)速誤差Fig.9 Yaw rotation speed error of the single-wheel
圖10 獨輪在平面上實際運動軌跡Fig.10 Actual motion trajectory of the single-wheel
實事上,在采用動態(tài)跟蹤目標(biāo)(40)時,由于偏航轉(zhuǎn)速目標(biāo)是根據(jù)實際前向速度時時調(diào)整的,能夠極大地減少累積位置誤差.即使前向速度誤差非常大甚至誤差系統(tǒng)不穩(wěn)定,只要偏航轉(zhuǎn)速目標(biāo)能被精確跟蹤,就能保證獨輪沿著給定的目標(biāo)軌跡曲線運動.考慮誤差系統(tǒng)(43)受到未知擾動d(t)影響的情形
當(dāng)d(t)=[5y1;10:5y2]T時,若在d(t)的影響下繼續(xù)采用控制器(44)和(45),則此時誤差系統(tǒng)(47)會變得不穩(wěn)定,其前向速度誤差如圖11 所示.但從圖12 可以看出,雖然前向速度誤差很大,但由于采用了動態(tài)跟蹤目標(biāo)(40),其實際運動軌跡依然和目標(biāo)曲線非常接近,實現(xiàn)了任務(wù)目標(biāo)精確跟蹤的目的.
圖11 d(t)影響下獨輪的前向速度誤差Fig.11 Forward speed error of the single-wheel under the effect of d(t)
圖12 d(t)影響下獨輪在平面上實際運動軌跡Fig.12 Actual motion trajectory of the single-wheel under the effect of d(t)
不同類型輪式移動結(jié)構(gòu)在平面上不發(fā)生橫向滑動時都會受到一個共同的非完整約束,該非完整約束本質(zhì)上就是質(zhì)點沿平面光滑曲線運動時沿與切向垂直的橫向方向的速度為零.本文理清了各輪式移動結(jié)構(gòu)的所有約束方程,在此基礎(chǔ)上,給出了基于Euler-Lagrange 方程建立不同輪式移動結(jié)構(gòu)動力學(xué)方程的一般方法.另外,基于該非完整約束,我們可以將目標(biāo)軌跡曲線轉(zhuǎn)化為速度目標(biāo)的形式,然后引入相對曲率設(shè)計動態(tài)跟蹤目標(biāo).仿真結(jié)果顯示,即使前向速度跟蹤誤差非常大,甚至前向速度誤差系統(tǒng)不穩(wěn)定,采用動態(tài)跟蹤目標(biāo)都能保證輪式移動結(jié)構(gòu)不偏離給定目標(biāo)軌跡曲線.還可以通過設(shè)計合適的前向速度目標(biāo)使得跟蹤的效果達到最好.
本文所提出的動態(tài)跟蹤目標(biāo)方法從根本上解決了軌跡曲線精確跟蹤的問題,其他任何先進控制設(shè)計方法僅僅從控制設(shè)計的角度是達不到這樣的精確效果的.實事上,受到該非完整約束的各類型機械結(jié)構(gòu)的精確運動控制問題都可以采用動態(tài)跟蹤目標(biāo)方法.甚至只要是需要精確跟蹤給定光滑軌跡曲線的控制問題,都可以采用該方法,達到精確跟蹤的目的.進一步地,后續(xù)工作還可以引入撓率,將動態(tài)跟蹤目標(biāo)方法推廣到空間軌跡曲線的情形,這將大大擴展動態(tài)跟蹤目標(biāo)思想的應(yīng)用范圍.
致謝衷心地感謝審稿人認真審閱我們的論文,給出的寶貴意見使論文得到極大的改進.