董伯麟,楊瑞偉
(合肥工業(yè)大學(xué)機(jī)械工程學(xué)院,安徽 合肥 230009)
在傳統(tǒng)工業(yè)機(jī)器人領(lǐng)域,絕大部分機(jī)器人要求具有高速和高精度的性能,因此其關(guān)節(jié)要求設(shè)計(jì)成高阻抗的剛性結(jié)構(gòu)[1]。這種帶有高剛度驅(qū)動(dòng)關(guān)節(jié)的機(jī)器人在與外界環(huán)境發(fā)生碰撞時(shí),容易給周圍的人、環(huán)境甚至是機(jī)器人本身造成無(wú)法挽回的損失[2]。為了讓機(jī)器人能夠應(yīng)對(duì)工作環(huán)境的動(dòng)態(tài)變化以及人機(jī)交互的不確定性,機(jī)器人的關(guān)節(jié)必須具有一定的柔順性和安全人機(jī)交互的能力。為此,國(guó)內(nèi)外學(xué)者對(duì)機(jī)器人關(guān)節(jié)的柔順性展開大量的研究[3]。在機(jī)器人的柔順性的研究中,最為典型的結(jié)構(gòu)就是串聯(lián)彈性驅(qū)動(dòng)器(Series Elastic Actuator)[4],即通過(guò)在機(jī)器人關(guān)節(jié)上加入彈性元件,將電機(jī)端與負(fù)載端之間的沖擊載荷隔離,讓機(jī)器人關(guān)節(jié)本身具有一定的物理柔順性。目前,串聯(lián)彈性驅(qū)動(dòng)器(SEA)廣泛運(yùn)用于康復(fù)機(jī)器人[5]、仿人型機(jī)器人[6]、機(jī)械外骨骼[7]等應(yīng)用中。
在SEA力矩控制策略上,文獻(xiàn)[4]等提出了基于電流環(huán)的PID結(jié)合前饋補(bǔ)償?shù)牧乜刂撇呗?。之后文獻(xiàn)[7]將阻抗控制算法運(yùn)用到SEA的力矩控制中,提出基于力矩外環(huán)的級(jí)聯(lián)PID控制策略,進(jìn)一步優(yōu)化了SEA 驅(qū)動(dòng)控制系統(tǒng)中人機(jī)交互的動(dòng)態(tài)性能。文獻(xiàn)[8]指出基于電流環(huán)的力矩控制器存在采樣微分誤差較大、系統(tǒng)穩(wěn)定性差等缺陷,并提出了用電機(jī)速度環(huán)代替電流環(huán)的力矩控制算法。文獻(xiàn)[9]在研究機(jī)械外骨骼時(shí),在級(jí)聯(lián)PID控制結(jié)構(gòu)的基礎(chǔ)上,提出了基于線性擾動(dòng)觀測(cè)器(Linear Disturbance Observer,LDOB)的控制方法,排除了SEA運(yùn)動(dòng)模型中時(shí)變參數(shù)的影響,進(jìn)一步提高了控制系統(tǒng)的魯棒性。在上述控制方案中,基于成熟和完善的動(dòng)力學(xué)模型控制方案能在特定應(yīng)用場(chǎng)景中表現(xiàn)出良好的性能。但是,隨著機(jī)器人技術(shù)的發(fā)展,為了追求人機(jī)交互場(chǎng)景中更好的仿生特性,機(jī)器人的機(jī)械結(jié)構(gòu)也變得越來(lái)越復(fù)雜。導(dǎo)致了精確建立控制系統(tǒng)的動(dòng)力學(xué)模型及系統(tǒng)參數(shù)確定變得極其困難[10]。另外,上述控制方法在SEA力矩控制器設(shè)計(jì)時(shí),大多未考慮系統(tǒng)本身存在的各種外界干擾,而擾動(dòng)問(wèn)題在實(shí)際運(yùn)用中卻是不可回避的。針對(duì)上述問(wèn)題,對(duì)串聯(lián)彈性驅(qū)動(dòng)器的結(jié)構(gòu)進(jìn)行了改進(jìn),極大的提高了SEA驅(qū)動(dòng)器中力矩輸出與彈性體形變量之間的線性關(guān)系,并以此為基礎(chǔ)建立了動(dòng)力學(xué)模型。在力矩控制器的設(shè)計(jì)過(guò)程中,提出了基于數(shù)據(jù)驅(qū)動(dòng)控制的無(wú)模型自適應(yīng)控制方法[11],既簡(jiǎn)化了控制器的設(shè)計(jì),又提高了控制系統(tǒng)抗外界干擾的能力。最后在MATLAB/Simulink 平臺(tái)上進(jìn)行了仿真分析,驗(yàn)證了數(shù)據(jù)驅(qū)動(dòng)控制器設(shè)計(jì)的正確性。
串聯(lián)彈性驅(qū)動(dòng)器和傳統(tǒng)剛性驅(qū)動(dòng)器相比,最大的特點(diǎn)就是在諧波減速器輸出端和負(fù)載端串聯(lián)了一個(gè)彈性元件[4],通過(guò)編碼器測(cè)量出彈性體的形變量,以此計(jì)算出SEA驅(qū)動(dòng)器所受負(fù)載端傳遞的扭矩。這使得驅(qū)動(dòng)器力矩控制問(wèn)題轉(zhuǎn)化為彈性體形變量控制問(wèn)題。對(duì)于改進(jìn)的SEA 驅(qū)動(dòng)器結(jié)構(gòu)示意圖,如圖1 所示。該SEA驅(qū)動(dòng)器主要由無(wú)框力矩電機(jī)、電磁制動(dòng)器、諧波減速器、彈性體、編碼器、輸入輸出軸以及外殼構(gòu)成。
圖1 SEA驅(qū)動(dòng)器結(jié)構(gòu)示意圖Fig.1 Schematic Diagram of SEA
該驅(qū)動(dòng)器主要有兩大作用,一是能夠?qū)ν饨绛h(huán)境的沖擊起到一定的緩沖作用,避免SEA本身受到損傷;二是通過(guò)彈性體兩端的位置差與彈性體材料系數(shù)的乘積,反饋輸出驅(qū)動(dòng)器所受的力矩,讓機(jī)器人具備一定的人機(jī)交互能力。改進(jìn)的彈性驅(qū)動(dòng)器,結(jié)構(gòu)簡(jiǎn)單緊湊,極大地降低了各零部件的安裝難度。同時(shí)采用空心圓軸式的設(shè)計(jì)既可以實(shí)現(xiàn)較大的剛度,又可以實(shí)現(xiàn)驅(qū)動(dòng)器中心走線的布置。
將設(shè)計(jì)的新型SEA驅(qū)動(dòng)器應(yīng)用于機(jī)器人系統(tǒng),SEA驅(qū)動(dòng)器工作原理圖,如圖2所示。
圖2 SEA工作原理圖Fig.2 SEA Working Principle Diagram
SEA驅(qū)動(dòng)器的動(dòng)力學(xué)方程可描述如下:
式中:fl—SEA輸出的;Ks—彈性體的剛度;JM—電機(jī)(將減速器和電機(jī)組成的驅(qū)動(dòng)源稱為電機(jī))的轉(zhuǎn)動(dòng)慣量;fM-電機(jī)輸出力;xM-電機(jī)端輸出位置;xl-負(fù)載端輸出位置;△x-彈性體的形變量。
式(1)經(jīng)過(guò)Laplace變換后得:
根據(jù)式(2)得SEA驅(qū)動(dòng)器的控制框圖,如圖3所示。
圖3 SEA控制框圖Fig.3 SEA Control Block Diagram
根據(jù)上圖可知,控制系統(tǒng)在末端固定(Xl=0 )時(shí),系統(tǒng)輸入為FM,并且系統(tǒng)輸出為F(l彈性體輸出力),因此控制下系統(tǒng)傳遞函數(shù)為:
在傳統(tǒng)SEA力矩控制策略研究中,人機(jī)交互的不確定性以及環(huán)境中未建模動(dòng)態(tài)的變化一直都是控制器設(shè)計(jì)中無(wú)法回避的問(wèn)題。因此,在力矩控制中需要實(shí)現(xiàn)如下兩個(gè)指標(biāo):(1)SEA驅(qū)動(dòng)器的力矩輸出需要能夠快速、精確地跟蹤期望力矩輸入;(2)SEA驅(qū)動(dòng)系統(tǒng)在應(yīng)對(duì)未知的環(huán)境參數(shù)和未建模的動(dòng)態(tài)變化時(shí),需要保證其魯棒性。為了滿足以上要求,根據(jù)式(3)以及在文獻(xiàn)8]等設(shè)計(jì)的基于速度內(nèi)環(huán)力矩控制的基礎(chǔ)上,提出了一種基于數(shù)據(jù)驅(qū)動(dòng)控制的無(wú)模型自適應(yīng)力矩控制方法。SEA力矩控制框圖,如圖4所示。其中速度內(nèi)環(huán)的PI控制器由驅(qū)動(dòng)器的內(nèi)部參數(shù)確定。
圖4 SEA力矩控制框圖Fig.4 Block Diagram of SEA Torque Control
無(wú)模型自適應(yīng)控制的基本思路是在控制系統(tǒng)附近通過(guò)一系列動(dòng)態(tài)線性時(shí)變模型來(lái)替代非線性系統(tǒng),利用系統(tǒng)輸入輸出數(shù)據(jù)在線估計(jì)系統(tǒng)的偽偏導(dǎo)數(shù)參數(shù),然后設(shè)計(jì)加權(quán)一步向前的力矩控制器[11]。從而消除了未建模動(dòng)態(tài)和環(huán)境參數(shù)對(duì)控制系統(tǒng)的影響,保證了控制系統(tǒng)的魯棒性。在SEA驅(qū)動(dòng)器控制系統(tǒng)中,控制目標(biāo)是讓SEA驅(qū)動(dòng)器的輸出力矩能夠達(dá)到期望的軌跡。
為此設(shè)計(jì)的無(wú)模型自適應(yīng)控制器輸入為期望的輸出力矩y=Td,輸出為SEA驅(qū)動(dòng)器的實(shí)際輸出力矩u=Tl,考慮SISO離散時(shí)間非線性系統(tǒng)如下:
式中:y(k)∈R、u(k)∈R—系統(tǒng)在k時(shí)刻的輸出和輸入;f( · )-未知的非線性函數(shù);nu,ny—兩個(gè)未知的正整數(shù)。
那么當(dāng)△u(k)≠0時(shí),一定存在一個(gè)偽偏導(dǎo)數(shù)(Pseudo-partial-derivative,PDD)的量?(k),可得:
并且|?(k) |≤b,且b是一個(gè)正常數(shù);在考慮如下控制輸入準(zhǔn)則函數(shù):
式中:λ>0是一個(gè)懲罰因子,用于控制輸入量的變化。將式(5)代入到式(6)中,對(duì)u(k)求導(dǎo),并令其等于零,得到無(wú)模型自適應(yīng)控制律如下:
式中:ρ—步長(zhǎng)因子,ρ∈(0,1]。
在控制律算法中偽偏導(dǎo)數(shù)量?(k)是一個(gè)時(shí)變參數(shù),在基于模型的控制系統(tǒng)框架下難以求解。因此設(shè)計(jì)利用受控系統(tǒng)輸入輸出數(shù)據(jù)來(lái)估計(jì)?(k)的值??紤]如下PDD估計(jì)準(zhǔn)則函數(shù):
式中:μ—權(quán)重因子,μ>0。
對(duì)式(8)中的?(k)求極值,可以得到PDD的估計(jì)算法可得:
式中:η—步長(zhǎng)序列;μ—權(quán)重因子。
根據(jù)式(8)、式(9)可得無(wú)模型自適應(yīng)控制框圖,如5圖所示。
圖5 無(wú)模型自適應(yīng)力矩控制器框圖Fig.5 Block Diagram of Model-Free Adaptive Torque Controller
無(wú)模型自適應(yīng)控制算法存在兩個(gè)關(guān)鍵參數(shù)(懲罰因子λ、學(xué)習(xí)步長(zhǎng)ρ),只有選取合適的參數(shù)值才能夠保證控制系統(tǒng)的穩(wěn)定,以及在系統(tǒng)響應(yīng)的快速性和超調(diào)量之間達(dá)到平衡。為此,利用BP神經(jīng)網(wǎng)絡(luò)強(qiáng)大的非線性映射能力實(shí)現(xiàn)MFAC算法中懲罰因子和學(xué)習(xí)步長(zhǎng)的在線自整定。SEA系統(tǒng)無(wú)模型自適應(yīng)力矩控制器的參數(shù)整定結(jié)構(gòu)框圖,如圖6 所示。BP 神經(jīng)網(wǎng)絡(luò)以y(k),y*(k+1),△y(k),u(k)四個(gè)已知量為輸入層,兩個(gè)待整定的參數(shù)λ,ρ為輸出層,隱含層為單層結(jié)構(gòu)。
圖6 SEA系統(tǒng)無(wú)模型自適應(yīng)力矩控制器的參數(shù)整定結(jié)構(gòu)框圖Fig.6 Block Diagram of Parameter Tuning Structure of Model-Free Adaptive Torque Controller
(1)BP神經(jīng)網(wǎng)絡(luò)正向傳播過(guò)程如下:
①輸入層節(jié)點(diǎn)的輸出為:
式中:xi—第i個(gè)輸入。
②隱含層的輸入輸出為:
式中:hxj(k)—第j個(gè)隱含層的輸入;hωji—第i個(gè)輸入層到第j個(gè)隱含層的權(quán)值;hyj(k)—第j個(gè)隱含層的輸出;f1(·)—隱含層的激活函數(shù)。
③輸出層的輸入輸出為:
式中:oxk—第k個(gè)輸出層的輸出值;oωkj—第j個(gè)隱含層到第k個(gè)輸出層的權(quán)值;oyk(k)—第k個(gè)輸出層的輸出;f2(·)—輸出層的激活函數(shù)。
參數(shù)整定模塊中可考慮其性能函數(shù):
(2)BP神經(jīng)網(wǎng)絡(luò)反向傳播過(guò)程中權(quán)值系數(shù)更新如下:
①輸出層到隱含層權(quán)值更新
式中:η(k)—第k次迭代的學(xué)習(xí)速率;α—慣性系數(shù)。
②隱含層到輸入層權(quán)值更新
根據(jù)式(14)、式(15)可分別計(jì)算出第k+1次權(quán)值的變化量,即實(shí)現(xiàn)了各層權(quán)值的更新。通過(guò)BP神經(jīng)網(wǎng)絡(luò)的迭代學(xué)習(xí),實(shí)現(xiàn)了MFAC控制算法的參數(shù)在線自整定功能。
為了進(jìn)一步驗(yàn)證數(shù)據(jù)驅(qū)動(dòng)控制算法的正確性,下面通過(guò)MATLAB/Simulink仿真實(shí)驗(yàn)平臺(tái)對(duì)SEA驅(qū)動(dòng)器進(jìn)行數(shù)值仿真分析。SEA驅(qū)動(dòng)器中電機(jī)的轉(zhuǎn)動(dòng)慣量JM=14.4×10-5kg·m2,諧波減速器的減速比i=50,彈性體剛度Ks=4500N·m/rad?;谒俣葍?nèi)環(huán)的PI控制器控制參數(shù)為Kp=0.14,Ki=7。在機(jī)器人的人機(jī)交互過(guò)程中,力矩控制最為主要的目標(biāo)是實(shí)現(xiàn)碰撞過(guò)程中的力矩柔順性。為了仿真測(cè)試機(jī)器人與外界環(huán)境發(fā)生碰撞的場(chǎng)景,讓負(fù)載端始終處于固定狀態(tài)(負(fù)載端的位置量xl=0),SEA驅(qū)動(dòng)器期望輸入力矩值保持為Td=15N·m,在5s時(shí)加入一個(gè)階躍信號(hào)T=2N·m,表示外負(fù)載的突然變化。觀察SEA 輸出力矩對(duì)于期望輸入力矩的跟隨情況。對(duì)于SEA驅(qū)動(dòng)關(guān)節(jié)分別采用級(jí)聯(lián)PID力矩控制[12]、固定參數(shù)的MFAC力矩控制、基于BP神經(jīng)網(wǎng)絡(luò)參數(shù)在線自整定的MFAC力矩控制三種控制方法進(jìn)行對(duì)比仿真分析。級(jí)聯(lián)PID控制參數(shù)調(diào)整為Kop=10,Koi=3,Kod=0.5。
固定參數(shù)的MFAC 力矩控制參數(shù)為λ=4,ρ=0.3。三種控制方案的仿真結(jié)果,如圖7所示?;贐P神經(jīng)網(wǎng)絡(luò)參數(shù)在線自整定MFAC力矩控制的整定參數(shù)結(jié)果,如圖8所示。
圖7 SEA驅(qū)動(dòng)器力矩控制仿真結(jié)果Fig.7 Simulation Results of SEA Drive Torque Tontrol
圖8 BP神經(jīng)網(wǎng)絡(luò)參數(shù)整定結(jié)果Fig.8 Parameter Tuning Results of BP Neural Network
從仿真結(jié)果中可以看出,當(dāng)機(jī)器人與外界環(huán)境發(fā)生碰撞時(shí),級(jí)聯(lián)PID力矩控制方法、固定參數(shù)的MFAC力矩控制方法和基于BP 神經(jīng)網(wǎng)絡(luò)參數(shù)在線自整定的MFAC 力矩控制方法都能夠使SEA輸出力矩收斂于期望值。從穩(wěn)定性上看,在上述三種控制方法中,級(jí)聯(lián)PID力矩控制和固定參數(shù)的MFAC力矩控制都存在超調(diào)量,而基于BP神經(jīng)網(wǎng)絡(luò)參數(shù)在線自整定的MFAC力矩控制方法沒(méi)有明顯的超調(diào)量,控制效果最好。從快速性上看,固定參數(shù)的MFAC力矩控制和基于BP神經(jīng)網(wǎng)絡(luò)的MFAC力矩控制都能在2.5s以內(nèi)達(dá)到穩(wěn)定狀態(tài),而級(jí)聯(lián)PID力矩控制需要3.5s后才能達(dá)到穩(wěn)定狀態(tài)。綜上所述,所設(shè)計(jì)的基于BP神經(jīng)網(wǎng)絡(luò)參數(shù)在線自整定的MFAC力矩控制方法在暫態(tài)響應(yīng)和魯棒性上具有明顯的優(yōu)勢(shì)。
為了實(shí)現(xiàn)機(jī)器人在人機(jī)交互過(guò)程中的力矩柔順性,根據(jù)SEA工作原理對(duì)串聯(lián)彈性驅(qū)動(dòng)器進(jìn)行了改進(jìn)設(shè)計(jì),不僅讓機(jī)器人關(guān)節(jié)的結(jié)構(gòu)更加簡(jiǎn)單和緊湊,而且極大地改善了SEA輸出力矩與彈性體形變量間的線性關(guān)系。另外,在此基礎(chǔ)上設(shè)計(jì)了基于數(shù)據(jù)驅(qū)動(dòng)控制的MFAC力矩控制器,并采用改進(jìn)的BP神經(jīng)網(wǎng)絡(luò)算法實(shí)現(xiàn)了MFAC力矩控制器參數(shù)的在線自整定。采用該種控制算法僅僅需要利用SEA 控制系統(tǒng)I/O 的數(shù)據(jù)即可實(shí)現(xiàn)力矩控制器的設(shè)計(jì),解決了機(jī)器人難以精確建立受控系統(tǒng)動(dòng)力學(xué)模型以及參數(shù)調(diào)整困難的問(wèn)題。最后通過(guò)仿真分析驗(yàn)證了所設(shè)計(jì)控制方法的有效性。在接下來(lái)的工作中,我們將結(jié)合具體的應(yīng)用場(chǎng)景對(duì)SEA力矩控制問(wèn)題做更深入的研究。