潘若妍,李鎮(zhèn),朱霄,周振雄
(北華大學(xué)電氣與信息工程學(xué)院,吉林吉林 132013)
近年來,隨著移動(dòng)機(jī)器人學(xué)和相關(guān)技術(shù)的發(fā)展,移動(dòng)機(jī)器人在很多行業(yè)的應(yīng)用逐漸深入和拓寬。在平面上移動(dòng)的物體可實(shí)現(xiàn)前后、左右和自轉(zhuǎn) 3個(gè)自由度的運(yùn)動(dòng)則稱為全方位移動(dòng)機(jī)器人。在全方位輪的各種形式中,麥輪式機(jī)器人應(yīng)用最廣泛。麥輪式移動(dòng)機(jī)器人相對(duì)于傳統(tǒng)帶有轉(zhuǎn)向裝置的移動(dòng)平臺(tái)更加靈活,4個(gè)麥克納姆輪均由電機(jī)單獨(dú)控制,通過控制各個(gè)輪系的轉(zhuǎn)速和方向可以組合出任意方向的移動(dòng)。
為使平臺(tái)移動(dòng)快速穩(wěn)定,需要對(duì)直流電機(jī)的轉(zhuǎn)速和電流進(jìn)行精確控制。傳統(tǒng)PID控制的響應(yīng)速度與超調(diào)量無法同時(shí)兼顧、抗干擾能力差,無法完全滿足實(shí)際控制中的要求。自抗擾結(jié)構(gòu)因具有擾動(dòng)補(bǔ)償,抗干擾能力強(qiáng)而被廣泛使用于控制驅(qū)動(dòng)電機(jī)領(lǐng)域,但是自抗擾參數(shù)難調(diào)。針對(duì)此問題,文獻(xiàn)[10]提出改進(jìn)魚群粒子群混合算法,但參數(shù)過多,代碼復(fù)雜,可行性較低。文獻(xiàn)[11]提出的增強(qiáng)煙花算法——機(jī)器人魚路徑跟蹤的自抗擾控制算法,流程過多,效率較低,無法快速精準(zhǔn)地找出局部最優(yōu)解。文獻(xiàn)[12]提出混沌粒子群算法,但收斂過早,優(yōu)化精度較低。文獻(xiàn)[13]提出雙種群鯊魚優(yōu)化算法,該算法易陷入局部最優(yōu)且開發(fā)勘探能力不平衡。文獻(xiàn)[14]提出螢火蟲算法,但發(fā)現(xiàn)率低、求解精度不高、求解速度慢。針對(duì)其他算法準(zhǔn)確性較低、效率低、代碼復(fù)雜等問題,現(xiàn)提出采用定向蝙蝠算法(Directional Bat Algorithm,DBA)優(yōu)化自抗擾控制器參數(shù)的方法。與其他智能優(yōu)化算法相比,蝙蝠算法在準(zhǔn)確性和有效性方面遠(yuǎn)優(yōu)于其他算法,且沒有較多參數(shù)需要調(diào)整。為解決蝙蝠算法無法進(jìn)行高維計(jì)算的問題,將定向環(huán)節(jié)與蝙蝠算法結(jié)合,使它避免過早收斂,增強(qiáng)探索能力,可進(jìn)行高維計(jì)算,以更快搜索到全局最優(yōu)解。
麥克納姆輪是一種可以全方位運(yùn)動(dòng)的輪子,結(jié)構(gòu)堅(jiān)固,十分靈巧。輪子的中心有一圈緊湊獨(dú)立、傾斜45°的行星輪。它把麥克納姆輪的前進(jìn)速度分解成2個(gè)方向互相垂直的速度,從而實(shí)現(xiàn)縱向或橫向移動(dòng)。控制芯片是STM32系列的芯片,芯片產(chǎn)生PWM波發(fā)送給直流電機(jī),電機(jī)控制麥克納姆輪。配套電流表測量電機(jī)電流,AB相編碼器測速,其值返回到主控制器中,從而進(jìn)行控制,達(dá)到預(yù)期目標(biāo)。麥克納姆輪具體控制系統(tǒng)框圖如圖1所示。
圖1 麥克納姆輪控制框圖
直流電機(jī)的數(shù)學(xué)模型如圖2所示,電機(jī)的電壓公式和轉(zhuǎn)矩公式為
圖2 直流電機(jī)的數(shù)學(xué)模型
(1)
式中:為電機(jī)的角速度;為勵(lì)磁電流;為勵(lì)磁電樞互感;為最大轉(zhuǎn)矩;為電樞電阻;為每極磁通。
ASR(Automatic Speed Regulator,自動(dòng)轉(zhuǎn)速調(diào)節(jié)器)在雙閉環(huán)系統(tǒng)中的外環(huán),電流調(diào)節(jié)器在雙閉環(huán)系統(tǒng)中的內(nèi)環(huán)。ASR起主要調(diào)節(jié)作用,能對(duì)負(fù)載產(chǎn)生的干擾有抑制作用,從而使得輸出可以更快地跟蹤上給定信號(hào),響應(yīng)更快。ACR(Automatic Current Regulator,自動(dòng)電流調(diào)節(jié)器)跟隨ASR的變化而變化,其作用是減少啟動(dòng)時(shí)間、抑制電網(wǎng)電壓波動(dòng)。雙閉環(huán)控制系統(tǒng)原理如圖3所示,結(jié)構(gòu)如圖4所示。
圖3 雙閉環(huán)控制系統(tǒng)原理
圖4 雙閉環(huán)控制系統(tǒng)結(jié)構(gòu)框圖
自抗擾控制(Active Disturbance Rejection Control,ADRC)原理如圖5所示。類似階躍的突變信號(hào)很容易引起超調(diào),如果提前安排過渡過程,使給定信號(hào)緩慢變化,就能減小超調(diào)。PID中積分主要是用于消除擾動(dòng),但是作用時(shí)間慢,仍會(huì)引起超調(diào)。所以ADRC中的ESO(Extended State Observer,擴(kuò)張狀態(tài)觀測器)能彌補(bǔ)PID中積分的缺點(diǎn),在快速消除擾動(dòng)的同時(shí)不引起超調(diào)。傳統(tǒng)的線性加權(quán)方式在收斂速度以及抗擾動(dòng)能力上存在不足,NLSEF(Nonlinear Law State Error Feedback,非線性狀態(tài)誤差反饋控制律)能更快收斂,抗擾能力也明顯增強(qiáng)。圖中,表示目標(biāo)跟蹤信號(hào),表示經(jīng)過處理后的目標(biāo)跟蹤信號(hào),表示經(jīng)過處理后的目標(biāo)跟蹤信號(hào)的微分。
圖5 自抗擾結(jié)構(gòu)框圖
控制量的公式為
(2)
跟蹤微分器是一個(gè)單輸入雙輸出的模塊,作用有以下2個(gè):
(1)傳統(tǒng)的PID算法易引起超調(diào),因?yàn)槌跏颊`差很大,所以為了更合理地提取目標(biāo)跟蹤信號(hào)的一階導(dǎo),提取過程需要優(yōu)化,需要安排過渡過程,即對(duì)給定信號(hào)進(jìn)行平滑處理,避免出現(xiàn)突變。
(2)過濾高頻噪聲。傳統(tǒng)的PID都是由給定信號(hào)直接進(jìn)行計(jì)算,由此導(dǎo)致的誤差較大,控制精度不高、效果不好。尤其是給定信號(hào)中含有階躍信號(hào)或方波信號(hào)等頻率較高的信號(hào),誤差會(huì)更大,可能會(huì)引起超調(diào),不利于系統(tǒng)的精確控制。為使得系統(tǒng)的誤差減小,需對(duì)高頻信號(hào)進(jìn)行過濾。在TD(Tracking Differentiator,微分跟蹤器環(huán)節(jié))中安排的過渡過程,相當(dāng)于濾波器的作用。用過濾后的信號(hào)進(jìn)行計(jì)算可減小誤差和超調(diào),調(diào)節(jié)時(shí)間基本不變或減少,更有利于精確控制。
離散形式的非線性微分跟蹤器為
(3)
式中:為采樣周期;為決定跟蹤快慢的參數(shù),越大,過濾后的輸出越接近輸入fhan函數(shù)為最速控制綜合函數(shù)。
(4)
(5)
式中:
(6)
傳統(tǒng)的線性加權(quán)方式中并未解決收斂速度慢和抗干擾能力差這兩大難題,所以引入非線性組合,以改善傳統(tǒng)系統(tǒng)中所存在的問題。常見PD形式的非線性組合為
=fal(,,)+fal(,,)
(7)
(8)
式中:為線性段的區(qū)間長度。
在傳統(tǒng)的PID中,積分可以被看作是簡單的ESO,它的主要作用是消除擾動(dòng),但是效果并不顯著,需要一個(gè)緩慢的過程才能得到結(jié)果,而且還會(huì)引起超調(diào)。當(dāng)其值過大時(shí),超調(diào)也會(huì)過大,如果其值過小,可能會(huì)沒有超調(diào),但是收斂速度非常慢。所以在ADRC中沒有積分部分,而是使用ESO來觀測和補(bǔ)償總擾動(dòng),將系統(tǒng)補(bǔ)償成純積分鏈的形式。常見的ESO公式為
(9)
式中:為步長;為補(bǔ)償系數(shù)。
BA算法是模擬蝙蝠的行為從而創(chuàng)作出的一種算法。它能對(duì)對(duì)象進(jìn)行探測、定位,與目標(biāo)聯(lián)系在一起;能夠優(yōu)化參數(shù)的調(diào)整,更快捷地找出全局最優(yōu)解。BA算法比其他算法的準(zhǔn)確性更高,得到的參數(shù)的可使用性也更高,其運(yùn)行操作和調(diào)整參數(shù)也比其他算法有優(yōu)勢(shì)。
在模擬算法運(yùn)行的過程中,將其空間維度設(shè)置為維,則其公式為
(10)
式中:∈[0,1]為隨機(jī)變量;為當(dāng)前最佳位置解;為蝙蝠聲波頻率;為[-1,1]中的隨機(jī)數(shù);為平均響度;為聲波響度衰減系數(shù),0<<1;>0為脈沖頻度增強(qiáng)系數(shù)。當(dāng)位置出現(xiàn)變化時(shí),用式(11)對(duì)位置進(jìn)行更新:
=+
(11)
基本BA算法雖然有很多優(yōu)點(diǎn),但無法滿足參數(shù)過多時(shí)多維空間的要求。本文作者基于BA算法,提出DBA算法。在DBA算法中,蝙蝠在2個(gè)不同的方向產(chǎn)生聲音脈沖,一個(gè)方向是當(dāng)前群體中最好的,另一個(gè)方向是隨機(jī)的,通過個(gè)體的適應(yīng)性決定最佳可行對(duì)象的來源。
蝙蝠的運(yùn)動(dòng)公式為
(12)
其中:表示在個(gè)方向隨機(jī)選擇的蝙蝠;(·)表示適應(yīng)度函數(shù)。
脈沖的頻率公式為
(13)
該方法可以增強(qiáng)搜索能力,防止收斂過快。
使用式(14)更新蝙蝠的位置,其中為縮放參數(shù),用于調(diào)節(jié)搜索過程。
+1=+
(14)
(15)
∞=0100
(16)
(17)
其中:為縮放參數(shù),用于調(diào)節(jié)搜索過程;0和∞分別為縮放參數(shù)的初值和終值;為脈沖發(fā)射率;為聲波響度。
因自抗擾參數(shù)整定困難,采用定向蝙蝠算法來整定自抗擾參數(shù)。自抗擾中的參數(shù)有很多,但控制系統(tǒng)的主要參數(shù)只有6個(gè),分別為ESO中的、、和NLSEF中的、、。所以將BA的維度設(shè)置成6維,將目前參數(shù)的值輸入到公式中。在不同的、、波長下,每個(gè)蝙蝠的飛行速度都是隨機(jī)的,所以當(dāng)選擇最優(yōu)解時(shí),會(huì)優(yōu)選、、,直到滿足條件。
圖6 DBA-ADRC結(jié)構(gòu)框圖
仿真中使用的數(shù)據(jù)如下,直流電機(jī)參數(shù):=0.6 Ω,=240 Ω,=0.05 kg·m,=0.012 H,=120 H,=2,=320。ADRC的參數(shù):=100,=0.01,=100,=1 000,=10,=100,=200,=0.25,=0.5,=0.002 5;定向蝙蝠參數(shù):=0 ,=400,dim=6,=0.6,=0,=1。仿真波形如圖7—圖12所示。
圖7 PI控制外環(huán)轉(zhuǎn)速波形 圖8 DBA-ADRC控制外環(huán)轉(zhuǎn)速波形
由圖7、圖8可知:PI控制無法快速跟蹤給定轉(zhuǎn)速,響應(yīng)時(shí)間約為0.14 s;而DBA優(yōu)化的ADRC控制響應(yīng)時(shí)間約為0.09 s;在=2 s時(shí),令電機(jī)反轉(zhuǎn),DBA優(yōu)化的ADRC控制比PI控制的響應(yīng)更快,跟蹤穩(wěn)定;PI控制有明顯的超調(diào)現(xiàn)象,DBA優(yōu)化的ADRC控制沒有超調(diào)現(xiàn)象,控制效果更顯著,靜態(tài)誤差比PI控制的小。
=1 s時(shí),加入數(shù)值為30 W的負(fù)載,由圖9、圖10可知:DBA-ADRC控制能更平穩(wěn)快速地跟蹤定信號(hào),且在突加負(fù)載時(shí),PI控制的電流有跳變而DBA-ADRC控制的沒有,說明DBA優(yōu)化的ADRC控制的抗干擾能力更好。
圖9 PI控制內(nèi)環(huán)電流波形 圖10 DBA-ADRC控制內(nèi)環(huán)電流波形
由圖11、圖12可知:與PI控制的系統(tǒng)相比,DBA優(yōu)化的ADRC控制系統(tǒng)的轉(zhuǎn)矩沒有突變,更加平緩、穩(wěn)定、快速地跟蹤上了給定轉(zhuǎn)矩,說明DBA-ADRC控制系統(tǒng)的抗干擾能力比PI控制系統(tǒng)好。
圖11 PI控制帶負(fù)載轉(zhuǎn)矩波形 圖12 DBA-ADRC控制帶負(fù)載轉(zhuǎn)矩波形
搭建實(shí)驗(yàn)平臺(tái)進(jìn)行實(shí)操。圖13所示為PI控制系統(tǒng)的轉(zhuǎn)速波形,圖14所示為DBA-ADRC算法控制系統(tǒng)的轉(zhuǎn)速波形。可知:與PI控制系統(tǒng)相比,DBA-ADRC控制系統(tǒng)的轉(zhuǎn)速無超調(diào),響應(yīng)更快速、平穩(wěn),補(bǔ)償效果更好,驗(yàn)證了所提算法的有效性。
圖13 PI控制轉(zhuǎn)速波形 圖14 DBA-ADRC算法控制轉(zhuǎn)速波形
大多數(shù)雙閉環(huán)直流電機(jī)的控制方法采用的都是PI控制,其操作方便、參數(shù)調(diào)整簡便、響應(yīng)快速同時(shí)可減小靜差。為了改善PI控制在追求快速性的同時(shí)容易出現(xiàn)超調(diào)、抗干擾能力差等問題,本文作者提出了一種DBA優(yōu)化的ADRC控制方法,經(jīng)仿真驗(yàn)證,所提方法比PI控制更穩(wěn)定,在追求快速性的同時(shí)可兼顧穩(wěn)定性,無超調(diào)、抗干擾能力強(qiáng)。所提的DBA優(yōu)化的ADRC控制方法實(shí)用性較強(qiáng)。