本發(fā)明屬于軌跡跟蹤控制領(lǐng)域,尤其涉及一種具有初態(tài)學(xué)習(xí)的機(jī)械臂分?jǐn)?shù)階迭代學(xué)習(xí)控制方法及系統(tǒng)。
背景技術(shù):
隨著科學(xué)技術(shù)發(fā)展,機(jī)器人已經(jīng)廣泛應(yīng)用到航天、醫(yī)療和軍事,甚至日常生活及娛樂(lè)教育等各個(gè)領(lǐng)域。制造機(jī)器人初期的目的是把它當(dāng)作一種自動(dòng)化裝置,服務(wù)于制造業(yè)。隨著理論和技術(shù)的日益成熟,人們對(duì)機(jī)器人提出了越來(lái)越多的要求。
機(jī)器人系統(tǒng)是一個(gè)典型的高度非線性、強(qiáng)耦合的動(dòng)力學(xué)系統(tǒng),其高精度控制問(wèn)題一直是工業(yè)自動(dòng)化領(lǐng)域研究的熱點(diǎn)。目前,機(jī)器人機(jī)械臂的精確控制方法有:變結(jié)構(gòu)控制、滑模控制、魯棒控制和學(xué)習(xí)控制等;然而前幾種控制方法均為有模型控制,機(jī)械臂實(shí)際運(yùn)行過(guò)程中存在的摩擦、高頻特性、載荷變化以及其它不確定干擾因素勢(shì)必會(huì)對(duì)控制品質(zhì)造成影響。受人類(lèi)智能行為啟發(fā),學(xué)習(xí)控制以非常簡(jiǎn)單的方式和需要較少的先驗(yàn)知識(shí)處理不確定程度相當(dāng)高的動(dòng)態(tài)系統(tǒng),因此得到了廣泛的研究和應(yīng)用。
軌跡跟蹤學(xué)習(xí)控制方法可以實(shí)現(xiàn)對(duì)期望軌跡的完全跟蹤,然而現(xiàn)有的方法均要求系統(tǒng)滿足嚴(yán)格重置條件,即每次迭代時(shí)的系統(tǒng)初態(tài)與期望軌跡初態(tài)保持一致,在實(shí)際跟蹤控制嘗試時(shí),因?yàn)橹貜?fù)定位精度的限制,機(jī)器人初態(tài)容易產(chǎn)生初始定位誤差。因?yàn)闄C(jī)器人控制系統(tǒng)的輸出軌跡關(guān)于初值具有連續(xù)依賴性,初始定位誤差的累加會(huì)導(dǎo)致跟蹤軌跡與期望軌跡誤差大,降低了跟蹤的準(zhǔn)確性。
技術(shù)實(shí)現(xiàn)要素:
為了解決現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的第一目的是提供一種具有初態(tài)學(xué)習(xí)的機(jī)械臂分?jǐn)?shù)階迭代學(xué)習(xí)控制方法。
本發(fā)明的一種具有初態(tài)學(xué)習(xí)的機(jī)械臂分?jǐn)?shù)階迭代學(xué)習(xí)控制方法,包括:
步驟1:建立機(jī)械臂系統(tǒng)的動(dòng)力學(xué)模型,預(yù)設(shè)機(jī)械臂系統(tǒng)的期望運(yùn)動(dòng)軌跡;
步驟2:初始化機(jī)械臂系統(tǒng)的狀態(tài)量的初態(tài)以及系統(tǒng)輸入,根據(jù)機(jī)械臂系統(tǒng)的動(dòng)力學(xué)模型,求取機(jī)械臂系統(tǒng)的實(shí)際運(yùn)動(dòng)軌跡;
步驟3:計(jì)算并判斷實(shí)際運(yùn)動(dòng)軌跡與期望運(yùn)動(dòng)軌跡兩者的跟蹤誤差是否為零,若跟蹤誤差為零,則實(shí)際運(yùn)動(dòng)軌跡與期望運(yùn)動(dòng)軌跡重合,結(jié)束;否則,進(jìn)入下一步;
步驟4:根據(jù)跟蹤誤差的初態(tài)及設(shè)定的初態(tài)學(xué)習(xí)增益來(lái)修正機(jī)械臂系統(tǒng)的狀態(tài)量的初態(tài),根據(jù)跟蹤誤差以及設(shè)定的輸入學(xué)習(xí)增益和分?jǐn)?shù)階數(shù)來(lái)修正機(jī)械臂系統(tǒng)的系統(tǒng)輸入,進(jìn)而求取機(jī)械臂系統(tǒng)的實(shí)際運(yùn)動(dòng)軌跡,返回步驟3。
進(jìn)一步地,在所述步驟4中,利用具有初態(tài)學(xué)習(xí)的閉環(huán)分?jǐn)?shù)階Dα型迭代學(xué)習(xí)控制算法來(lái)修正機(jī)械臂系統(tǒng)的狀態(tài)量的初態(tài)以及系統(tǒng)輸入,其中,α∈(0,1)為分?jǐn)?shù)階的階數(shù)。
進(jìn)一步地,在步驟1中,建立機(jī)械臂系統(tǒng)的動(dòng)力學(xué)模型之前,確定機(jī)械臂系統(tǒng)的自由度,根據(jù)拉格朗日-歐拉法,得到相應(yīng)自由度的機(jī)械臂系統(tǒng)的動(dòng)力學(xué)模型。
本發(fā)明利用分?jǐn)?shù)階迭代學(xué)習(xí)控制機(jī)械臂系統(tǒng),不需要機(jī)械臂系統(tǒng)的精確描述,能夠根據(jù)以前操作數(shù)據(jù),自動(dòng)地調(diào)節(jié)不理想的輸入信號(hào)來(lái)控制機(jī)械臂系統(tǒng),從而使得機(jī)械臂系統(tǒng)的性能得以提高;而且本發(fā)明在控制效果上具有更快的收斂速度和更好的魯棒性,最終使得機(jī)械臂快速準(zhǔn)確地實(shí)現(xiàn)跟蹤任務(wù)。
本發(fā)明的控制方法利用了初態(tài)學(xué)習(xí)律有效地解決了迭代學(xué)習(xí)控制要求初態(tài)嚴(yán)格重復(fù)的局限性,即不需要每次跟蹤學(xué)習(xí)過(guò)程中系統(tǒng)的初態(tài)狀態(tài)和期望跟蹤軌跡的初始狀態(tài)都相等,使得控制方法更適用于實(shí)際系統(tǒng)控制環(huán)境。
本發(fā)明的第二目的是提供一種機(jī)械臂控制系統(tǒng)。
本發(fā)明的機(jī)械臂控制系統(tǒng),包括:
控制器,其應(yīng)用如上述所述的具有初態(tài)學(xué)習(xí)的機(jī)械臂分?jǐn)?shù)階迭代學(xué)習(xí)控制方法來(lái)控制機(jī)械臂驅(qū)動(dòng)機(jī)構(gòu)運(yùn)動(dòng);
所述機(jī)械臂驅(qū)動(dòng)機(jī)構(gòu)與機(jī)械臂系統(tǒng)相連,機(jī)械臂驅(qū)動(dòng)機(jī)構(gòu)用于在控制器的控制下來(lái)驅(qū)動(dòng)機(jī)械臂系統(tǒng)運(yùn)動(dòng)。
進(jìn)一步地,所述機(jī)械臂驅(qū)動(dòng)機(jī)構(gòu)為驅(qū)動(dòng)電機(jī)。
進(jìn)一步地,所述機(jī)械臂系統(tǒng)包括機(jī)械臂,所述機(jī)械臂與關(guān)節(jié)相連,所述機(jī)械臂與機(jī)械臂驅(qū)動(dòng)機(jī)構(gòu)相連,在控制器的作用下繞關(guān)節(jié)運(yùn)動(dòng)。
進(jìn)一步地,所述機(jī)械臂系統(tǒng)為n自由度機(jī)械臂系統(tǒng),其中,n為正整數(shù)。
本發(fā)明的該機(jī)械臂控制系統(tǒng)利用分?jǐn)?shù)階迭代學(xué)習(xí)控制機(jī)械臂系統(tǒng),不需要機(jī)械臂系統(tǒng)的精確描述,能夠根據(jù)以前操作數(shù)據(jù),自動(dòng)地調(diào)節(jié)不理想的輸入信號(hào)來(lái)控制機(jī)械臂系統(tǒng),從而使得機(jī)械臂系統(tǒng)的性能得以提高;而且本發(fā)明在控制效果上具有更快的收斂速度和更好的魯棒性,最終使得機(jī)械臂快速準(zhǔn)確地實(shí)現(xiàn)跟蹤任務(wù)。
本發(fā)明的第三目的是提供一種機(jī)器人。
本發(fā)明的機(jī)器人,包括機(jī)器人本體以及機(jī)械臂系統(tǒng),所述機(jī)械臂系統(tǒng)與如上述所述的機(jī)械臂控制系統(tǒng)相連。
本發(fā)明的機(jī)器人利用分?jǐn)?shù)階迭代學(xué)習(xí)控制機(jī)械臂系統(tǒng),不需要機(jī)械臂系統(tǒng)的精確描述,能夠根據(jù)以前操作數(shù)據(jù),自動(dòng)地調(diào)節(jié)不理想的輸入信號(hào)來(lái)控制機(jī)械臂系統(tǒng),從而使得機(jī)械臂系統(tǒng)的性能得以提高;而且本發(fā)明在控制效果上具有更快的收斂速度和更好的魯棒性,最終使得機(jī)械臂快速準(zhǔn)確地實(shí)現(xiàn)跟蹤任務(wù)。
本發(fā)明的有益效果為:
(1)本發(fā)明利用分?jǐn)?shù)階迭代學(xué)習(xí)控制機(jī)械臂系統(tǒng),不需要機(jī)械臂系統(tǒng)的精確描述,能夠根據(jù)以前操作數(shù)據(jù),自動(dòng)地調(diào)節(jié)不理想的輸入信號(hào)來(lái)控制機(jī)械臂系統(tǒng),從而使得機(jī)械臂系統(tǒng)的性能得以提高;而且本發(fā)明在控制效果上具有更快的收斂速度和更好的魯棒性,最終使得機(jī)械臂快速準(zhǔn)確地實(shí)現(xiàn)跟蹤任務(wù)。
(2)本發(fā)明的控制方法利用了初態(tài)學(xué)習(xí)律有效地解決了迭代學(xué)習(xí)控制要求初態(tài)嚴(yán)格重復(fù)的局限性,即不需要每次跟蹤學(xué)習(xí)過(guò)程中系統(tǒng)的初態(tài)狀態(tài)和期望跟蹤軌跡的初始狀態(tài)都相等,使得控制方法更適用于實(shí)際系統(tǒng)控制環(huán)境。
附圖說(shuō)明
圖1是本發(fā)明的具有初態(tài)學(xué)習(xí)的機(jī)械臂系統(tǒng)分?jǐn)?shù)階迭代學(xué)習(xí)控制原理圖;
圖2是本發(fā)明的具有初態(tài)學(xué)習(xí)的機(jī)械臂系統(tǒng)分?jǐn)?shù)階迭代學(xué)習(xí)控制方法流程圖;
圖3是兩關(guān)節(jié)機(jī)械臂示意圖;
圖4是隨著迭代次數(shù)的增加,機(jī)械臂各關(guān)節(jié)跟蹤誤差曲線圖;
圖5(a)是迭代30次時(shí)的機(jī)械臂的第一關(guān)節(jié)跟蹤結(jié)果;
圖5(b)是迭代30次時(shí)的機(jī)械臂的第二關(guān)節(jié)跟蹤結(jié)果。
具體實(shí)施方式
下面結(jié)合附圖與實(shí)施例對(duì)本發(fā)明做進(jìn)一步說(shuō)明:
實(shí)施例1
如圖1和圖2所示,本發(fā)明的具有初態(tài)學(xué)習(xí)的機(jī)械臂分?jǐn)?shù)階迭代學(xué)習(xí)控制方法,包括:
步驟1:建立機(jī)械臂系統(tǒng)的動(dòng)力學(xué)模型,預(yù)設(shè)機(jī)械臂系統(tǒng)的期望運(yùn)動(dòng)軌跡;
步驟2:初始化機(jī)械臂系統(tǒng)的狀態(tài)量的初態(tài)以及系統(tǒng)輸入,根據(jù)機(jī)械臂系統(tǒng)的動(dòng)力學(xué)模型,求取機(jī)械臂系統(tǒng)的實(shí)際運(yùn)動(dòng)軌跡;
步驟3:計(jì)算并判斷實(shí)際運(yùn)動(dòng)軌跡與期望運(yùn)動(dòng)軌跡兩者的跟蹤誤差是否為零,若跟蹤誤差為零,則實(shí)際運(yùn)動(dòng)軌跡與期望運(yùn)動(dòng)軌跡重合,結(jié)束;否則,進(jìn)入下一步;
步驟4:根據(jù)跟蹤誤差的初態(tài)及設(shè)定的初態(tài)學(xué)習(xí)增益來(lái)修正機(jī)械臂系統(tǒng)的狀態(tài)量的初態(tài),根據(jù)跟蹤誤差以及設(shè)定的輸入學(xué)習(xí)增益和分?jǐn)?shù)階數(shù)來(lái)修正機(jī)械臂系統(tǒng)的系統(tǒng)輸入,進(jìn)而求取機(jī)械臂系統(tǒng)的實(shí)際運(yùn)動(dòng)軌跡,返回步驟3。
在步驟4中,利用具有初態(tài)學(xué)習(xí)的閉環(huán)分?jǐn)?shù)階Dα型迭代學(xué)習(xí)控制算法來(lái)修正機(jī)械臂系統(tǒng)的狀態(tài)量的初態(tài)以及系統(tǒng)輸入,其中,α∈(0,1)為分?jǐn)?shù)階的階數(shù)。
在步驟1中,建立機(jī)械臂系統(tǒng)的動(dòng)力學(xué)模型之前,確定機(jī)械臂系統(tǒng)的自由度,根據(jù)拉格朗日-歐拉法,得到相應(yīng)自由度的機(jī)械臂系統(tǒng)的動(dòng)力學(xué)模型。
本實(shí)施例以包含n個(gè)剛性連桿和n個(gè)旋轉(zhuǎn)關(guān)節(jié)的機(jī)械臂系統(tǒng)為例,n為正整數(shù):
由拉格朗日-歐拉法得,到該n自由度的機(jī)械臂系統(tǒng)的動(dòng)力學(xué)模型為:
式中:θ,分別表示機(jī)械臂關(guān)節(jié)位置、速度和加速度向量;τ表示作用在關(guān)節(jié)上的廣義力矩向量;D(θ)∈Rn×n為慣性矩陣;表示非線性哥氏力和向心力矢量;g(θ)∈Rn為重力項(xiàng)。
設(shè)機(jī)械臂系統(tǒng)(1)在有限時(shí)間區(qū)間[0,T]上重復(fù)運(yùn)行以實(shí)現(xiàn)期望運(yùn)動(dòng)θd(t)的跟蹤,則第k次迭代運(yùn)行系統(tǒng)(1)的動(dòng)力學(xué)方程可表示為:
對(duì)系統(tǒng)(1)考慮如下反饋-前饋控制方法:
其中:用于消除重力項(xiàng);位置反饋增益kρ和速度反饋增益kv是常量矩陣;選取合適的反饋增益時(shí),機(jī)械臂通常僅能跟蹤期望運(yùn)動(dòng)軌跡的附近;k為下標(biāo),表示第k次運(yùn)行系統(tǒng),也就是迭代次數(shù),且k正整數(shù);含有下標(biāo)d的參數(shù)表示期望軌跡的相應(yīng)參數(shù)。因此,增加采用學(xué)習(xí)方法的輸入項(xiàng)uk以減少系統(tǒng)的響應(yīng)與期望運(yùn)動(dòng)間存在的偏差。
將式(3)代入式(2)有:
化簡(jiǎn)整理,得到:
其中,xk(t)=θk(t)-θd(t);
R(t)=D(θd);
g1(t)=-R-1(t)h(t);
其中,n1,n2,n3分別是關(guān)于的高階項(xiàng);下標(biāo)k表示第k次迭代,含有下標(biāo)d的參數(shù)表示期望軌跡的相應(yīng)參數(shù);R(t)總是正定的。
為實(shí)現(xiàn)機(jī)械臂對(duì)期望軌跡的跟蹤,定義系統(tǒng)輸出為如下形式:
其中:In表示n*n的單位矩陣,n是機(jī)械臂自由度數(shù)。
其中,本發(fā)明的具有初態(tài)學(xué)習(xí)的閉環(huán)分?jǐn)?shù)階Dα型迭代學(xué)習(xí)控制算法為:
其中:α∈(0,1)為分?jǐn)?shù)階的階數(shù);ek(t)=y(tǒng)d(t)-yk(t)表示第k次迭代機(jī)械臂系統(tǒng)的跟蹤誤差;yd(t)表示期望軌跡;yk(t)表示第k次迭代運(yùn)行時(shí)機(jī)械臂系統(tǒng)的輸出軌跡;L和η是待定的初態(tài)學(xué)習(xí)增益和輸入學(xué)習(xí)增益;ek(0)表示第k次迭代運(yùn)行時(shí)機(jī)械臂系統(tǒng)的跟蹤誤差的初態(tài);xk(0)為第k次迭代運(yùn)行時(shí)機(jī)械臂系統(tǒng)的狀態(tài)量的初態(tài);xk+1(0)為第k+1次迭代運(yùn)行時(shí)機(jī)械臂系統(tǒng)的狀態(tài)量的初態(tài);uk(t)為第k次迭代運(yùn)行時(shí)機(jī)械臂系統(tǒng)的系統(tǒng)輸入;uk+1(t)為第k+1次迭代運(yùn)行時(shí)機(jī)械臂系統(tǒng)的系統(tǒng)輸入。
仿真驗(yàn)證:
如圖3所示,二自由度旋轉(zhuǎn)關(guān)節(jié)機(jī)械臂進(jìn)行仿真實(shí)驗(yàn)該機(jī)械臂以平面運(yùn)動(dòng)為例,因此忽略重力項(xiàng),對(duì)應(yīng)系統(tǒng)(1)的系數(shù)矩陣分別為:
其中,
mi,liIi分別表示第i個(gè)連桿的質(zhì)量,長(zhǎng)度和轉(zhuǎn)動(dòng)慣量;i=1,2。
仿真時(shí)?。簃1=m2=4kg,l1=2m,l2=1m,I1=I2=1kg·m2,
τ=[τ1,τ2,τ3]T=[21,4,2]T。
機(jī)械臂期望的運(yùn)動(dòng)軌跡θ1和θ2分別選為時(shí)間區(qū)間[0,1]s上的q1,d(t)=sint和q2,d(t)=cos t,設(shè)系統(tǒng)的初始誤差為xk(0)=θk-θd=[0.1,0.1]T。根據(jù)算法收斂條件,分別選取學(xué)習(xí)控制算法中的學(xué)習(xí)增益為η=20;α=0.95;L=0.95。從圖中可以看到隨著迭代次數(shù)的增加,機(jī)械臂不斷趨向于期望軌跡。圖4是位置跟蹤誤差,圖5(a)和圖5(b)分別是第一關(guān)節(jié)和第二關(guān)節(jié)迭代第30次的跟蹤效果圖,從圖中可以看出,本發(fā)明提出的機(jī)械臂軌跡跟蹤控制方法具有較好的控制性能。
實(shí)施例2
本發(fā)明還提供了一種機(jī)械臂控制系統(tǒng),該機(jī)械臂控制系統(tǒng)包括:控制器,其應(yīng)用如圖2所示的具有初態(tài)學(xué)習(xí)的機(jī)械臂分?jǐn)?shù)階迭代學(xué)習(xí)控制方法來(lái)控制機(jī)械臂驅(qū)動(dòng)機(jī)構(gòu)運(yùn)動(dòng);
機(jī)械臂驅(qū)動(dòng)機(jī)構(gòu)與機(jī)械臂系統(tǒng)相連,機(jī)械臂驅(qū)動(dòng)機(jī)構(gòu)用于在控制器的控制下來(lái)驅(qū)動(dòng)機(jī)械臂系統(tǒng)運(yùn)動(dòng)。
其中,機(jī)械臂驅(qū)動(dòng)機(jī)構(gòu)為驅(qū)動(dòng)電機(jī)。
機(jī)械臂系統(tǒng)包括機(jī)械臂,所述機(jī)械臂與關(guān)節(jié)相連,所述機(jī)械臂與機(jī)械臂驅(qū)動(dòng)機(jī)構(gòu)相連,在控制器的作用下繞關(guān)節(jié)運(yùn)動(dòng)。
機(jī)械臂系統(tǒng)為n自由度機(jī)械臂系統(tǒng),其中,n為正整數(shù)。
本實(shí)施例的該機(jī)械臂控制系統(tǒng)利用分?jǐn)?shù)階迭代學(xué)習(xí)控制機(jī)械臂系統(tǒng),不需要機(jī)械臂系統(tǒng)的精確描述,能夠根據(jù)以前操作數(shù)據(jù),自動(dòng)地調(diào)節(jié)不理想的輸入信號(hào)來(lái)控制機(jī)械臂系統(tǒng),從而使得機(jī)械臂系統(tǒng)的性能得以提高;而且本發(fā)明在控制效果上具有更快的收斂速度和更好的魯棒性,最終使得機(jī)械臂快速準(zhǔn)確地實(shí)現(xiàn)跟蹤任務(wù)。
實(shí)施例3
本發(fā)明還提供了一種機(jī)器人,該機(jī)器人包括機(jī)器人本體以及機(jī)械臂系統(tǒng),所述機(jī)械臂系統(tǒng)與如實(shí)施例2所示的機(jī)械臂控制系統(tǒng)相連。
機(jī)器人本體以及機(jī)械臂系統(tǒng)均是現(xiàn)有結(jié)構(gòu),此處將不再累述。
本實(shí)施例的該機(jī)器人利用分?jǐn)?shù)階迭代學(xué)習(xí)控制機(jī)械臂系統(tǒng),不需要機(jī)械臂系統(tǒng)的精確描述,能夠根據(jù)以前操作數(shù)據(jù),自動(dòng)地調(diào)節(jié)不理想的輸入信號(hào)來(lái)控制機(jī)械臂系統(tǒng),從而使得機(jī)械臂系統(tǒng)的性能得以提高;而且本發(fā)明在控制效果上具有更快的收斂速度和更好的魯棒性,最終使得機(jī)械臂快速準(zhǔn)確地實(shí)現(xiàn)跟蹤任務(wù)。
上述雖然結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式進(jìn)行了描述,但并非對(duì)本發(fā)明保護(hù)范圍的限制,所屬領(lǐng)域技術(shù)人員應(yīng)該明白,在本發(fā)明的技術(shù)方案的基礎(chǔ)上,本領(lǐng)域技術(shù)人員不需要付出創(chuàng)造性勞動(dòng)即可做出的各種修改或變形仍在本發(fā)明的保護(hù)范圍以內(nèi)。