鄭武略 張富春 張蔓 金釗 趙敏
摘要:針對傳統(tǒng)固定翼無人機(jī)PID控制器比例、積分和微分參數(shù)調(diào)節(jié)控制精度低,響應(yīng)速度慢,難以得到最優(yōu)線性PID參數(shù)組合等問題。本文利用蟻群算法尋優(yōu)搜索對傳統(tǒng)PID控制器進(jìn)行改進(jìn),本文將PID參數(shù)尋優(yōu)過程轉(zhuǎn)化為多約束條件組合優(yōu)化問題,并通過蟻群算法針對PID參數(shù)整定多次迭代來進(jìn)行搜索最優(yōu)數(shù)值路徑來更加快速,精確的優(yōu)化PID線性組合參數(shù)值,提高對固定翼的精確PID參數(shù)控制。
關(guān)鍵字:蟻群算法;固定翼;PID參數(shù)整定;控制系統(tǒng)設(shè)計(jì)
中圖分類號(hào):TP302文獻(xiàn)標(biāo)識(shí)碼:A
Abstract:As to the low efficiency of traditional PID tuning for FixedWing UAV(unmanned aerial vehicle),its difficult to find the optimal problem of linear array.Therefore,we use the ACO(Ant Colony Optimization) to improve the traditional PID controller,and transform traditional PID as combination optimization problem,by using the iteration of ant colony to search the optimal path to look for the more speedy and calculate PID array parameters,by the way to reach more precise control.
Key words:ACO(Ant Colony Optimization);fixedwing;PID parameter controller;design of controller
1引言
無人機(jī)(UAV)因其小巧的機(jī)身、靈活的動(dòng)作、便捷的操作以及高性能性價(jià)比使無人機(jī)成為各行各業(yè)爭先研發(fā)與使用的焦點(diǎn),并且無人機(jī)小巧的機(jī)身上可搭載例如攝像頭、聲納、激光等傳感器,讓無人機(jī)可以很好的適用于區(qū)域偵察及地圖測繪等戰(zhàn)略環(huán)境。
無人機(jī)高效的偵測與靈活的動(dòng)作與無人機(jī)的姿態(tài)控制有著必然的聯(lián)系[1]。目前大多數(shù)無人機(jī)采用的控制器主要為傳統(tǒng)的PID控制器,通過對PID參數(shù)Kp、Ki與Kd優(yōu)化與整定來達(dá)到對無人機(jī)控制精度、魯棒性和最優(yōu)性能的控制。由于人們?nèi)找孀非髮o人機(jī)的高精度控制,使傳統(tǒng)PID控制因其高超調(diào)與次優(yōu)PID參數(shù)線性組合而難以滿足對無人機(jī)全部的精確控制的需求。因此可通過現(xiàn)代控制理論的研究方法來對PID參數(shù)尋優(yōu),在過去的幾十年里發(fā)展了大量的 PID 參數(shù)優(yōu)化的方法。目前針對與PID參數(shù)尋優(yōu)已涌現(xiàn)出大量的研究方法。如以經(jīng)驗(yàn)尋優(yōu)的ZN法(ZieglerNiChols) [2];粒子群優(yōu)化法[4];遺傳算法優(yōu)化法 [5];以連接主義為尋優(yōu)依據(jù)的的神經(jīng)網(wǎng)絡(luò)優(yōu)化參數(shù)法[3]及以蟻群參數(shù)尋優(yōu)為首的智能算法[6-9]等。
蟻群算法作為新興智能算法,利用正反饋原理通過對道路全局尋優(yōu)搜索,加快對最優(yōu)解的搜索進(jìn)程,因此十分適用于多條件約束的系類組合優(yōu)化問題。因此,本文以固定無人機(jī)PID控制為研究點(diǎn),通過利用改進(jìn)蟻群算法來實(shí)現(xiàn)對固定翼無人機(jī)的最優(yōu)PID參數(shù)搜索與整定。
2基于蟻群算法的PID參數(shù)整定
21蟻群算法基本原理
蟻群算法源自于致盲螞蟻該在脫離視覺信息要素的情況下,通過對所走路徑上留下信息素的方法搜索從巢穴到食物的最短路徑,并且其路徑上所留信息素的濃度大小對后續(xù)螞蟻搜索循跡起著重要的導(dǎo)向作用,經(jīng)過多次往返迭代最終達(dá)到從巢穴到食物源最短路徑的搜索。而螞蟻這種搜索機(jī)制猶如控制系統(tǒng)中的正反饋機(jī)制,通過采用并行分布式計(jì)算方法來對組合優(yōu)化問題求解顯示出極強(qiáng)的魯棒性。但是這種搜索方法往往隨著單獨(dú)某路徑信息素濃度而高于其他路徑而陷入局部最優(yōu)導(dǎo)致算法早熟。因此,在設(shè)計(jì)算法時(shí)在蟻群尋優(yōu)機(jī)制中加入信息素的蒸發(fā)要素,隨著每次螞蟻尋優(yōu)結(jié)束時(shí)會(huì)對當(dāng)前螞蟻所走最短路徑上的信息素進(jìn)行蒸發(fā),并當(dāng)每輪迭代結(jié)束后會(huì)對當(dāng)前蟻群搜索最優(yōu)路徑上的信息素進(jìn)行蒸發(fā),并以此來提高蟻群算法全局搜索路徑的效率[10-11]。假設(shè)起始設(shè)置M只螞蟻從起點(diǎn)開始尋優(yōu),通過搜索當(dāng)前所在位置與相鄰搜索點(diǎn)上的信息素濃度大小來決定螞蟻下一轉(zhuǎn)移點(diǎn),因此第k只螞蟻從節(jié)點(diǎn)i到節(jié)點(diǎn)j的轉(zhuǎn)移概率為:
為信息素啟發(fā)因子,α的大小決定螞蟻搜索下一節(jié)點(diǎn)的導(dǎo)向;β彰顯著啟發(fā)函數(shù)的重要性,對算法收斂起著重要的作用,但取值過大可能會(huì)導(dǎo)致螞蟻只搜索當(dāng)前距離最近節(jié)點(diǎn),使算法陷入局部最優(yōu)。
當(dāng)蟻群完成一輪迭代搜索之后,為使算法具有更高的全局性,需要對當(dāng)前螞蟻搜索路徑之間的信息素含量進(jìn)行蒸發(fā),其蒸發(fā)規(guī)則如下所示:
τij(t+1)=(1-ρ)τij(t)+Δτij(2)
Δτij=∑mk=1Δτkij(3)
式中ρ為信息素蒸發(fā)參量,且ρ取值介于0與1之間;Δτij當(dāng)前迭代(i,j)上所包含的信息素增量;Δτkij為第k只螞蟻在本次迭代搜索中遺留在(i,j)上的信息素,且Δτkij還可如式(4)所示:
Δτkij=F/Qkk(i,j)0, (4)
式中F為一恒定不變的數(shù),對算法收斂速度上有一定影響作用,Q為對第k只螞蟻當(dāng)前搜索路徑的原函數(shù)值。
從上述蟻群算法搜索模型,通過釋放更多信息素給相對較短的路徑 從而形成一個(gè)信息的正反饋機(jī)制。并且信息素的更新公式可以很好的增強(qiáng)蟻群算法全局搜索性,從而得到全局最優(yōu)解。
22蟻群算法PID參數(shù)優(yōu)化法
PID(比例-積分-微分)控制系統(tǒng)中其參數(shù)Kp、Ti和Td的參數(shù)優(yōu)化搭配是決定PID控制系統(tǒng)優(yōu)劣的關(guān)鍵。傳統(tǒng)PID控制原理框圖如圖1所示。endprint
其中e與u的關(guān)系如下式所示:
u(n)=Kp[e(n)+T/Ti∑nj=0e(j)+Td[e(n)-e(n-1)]/T](5)
其中Kp為比例因子;Ti為積分時(shí)間;Td為微分時(shí)間;T為算法采樣周期。并且Ki=KpT/Ti為積分因子,Kd=KpTd/T為微分因子。因此,只需要對Kp、Ki與Kd三個(gè)參數(shù)尋優(yōu)整定,即可虧整個(gè)PID參數(shù)控制系統(tǒng)有直接的影響。為了能使蟻群算法達(dá)到對PID控制參數(shù)優(yōu)化目的,必須將PID參數(shù)整定尋優(yōu)轉(zhuǎn)換為組合優(yōu)化問題的求解,因此本文將PID參數(shù)值的選取當(dāng)作一個(gè)組合優(yōu)化問題,通過蟻群算法迭代尋優(yōu)來解決PID控制系統(tǒng)的參數(shù)優(yōu)化。
1搜索節(jié)點(diǎn)設(shè)置
本文首先通過經(jīng)驗(yàn)法對PID控制器參數(shù)Kp、Ki與Kd的取值范圍進(jìn)行界定,并設(shè)PID控制器參數(shù)為一20×1矩陣,其中矩陣每一行代表其參數(shù)在其參數(shù)取值范圍內(nèi)的隨機(jī)數(shù),并以此作為蟻群算法搜索節(jié)點(diǎn),將Kp、Ki與Kd不同取值矩陣組合在一起構(gòu)成一20×3的搜索點(diǎn)矩陣集合,通過對PID參數(shù)組合問題進(jìn)行搜索來達(dá)到求解最優(yōu)路徑的目的[14]。
Kp=0.2/M×K×rand(20,1)+0.2×ones(20,1)Ki=0.2/M×K×rand(20,1)+1.5×ones(20,1)Kd=0.2/M×K×rand(20,1)+1.4×ones(20,1)(6)
2.性能指標(biāo)設(shè)定
為達(dá)到對求解參數(shù)的最優(yōu)選擇,本文對蟻群算法性能指標(biāo)進(jìn)行設(shè)計(jì)來判定蟻群算法組合問題尋優(yōu)結(jié)果。借鑒傳統(tǒng)TSP(Travelling Salesman Problem)以商旅遍歷目標(biāo)點(diǎn)路程和作為TSP的評(píng)價(jià)性能指標(biāo)。其所遍歷路程越短,則說明最優(yōu)解越有效,反之亦然。將此作為類比,由于對于PID控制器來說,上升時(shí)間、超調(diào)量與穩(wěn)定時(shí)間等是評(píng)價(jià)PID控制器好壞的重要性能指標(biāo),因此本文采用絕對誤差的矩的積分作為評(píng)價(jià)控制性能的指標(biāo)[12]:
Q=T2∑LPi=1ie(i)(7)
其中T為算法采周期,LP為仿真計(jì)算的點(diǎn)數(shù)。因此當(dāng)控制系統(tǒng)具有過大超調(diào)量或震動(dòng)時(shí)間過長等問題時(shí),評(píng)價(jià)函數(shù)值會(huì)比較高。
3.算法實(shí)現(xiàn)流程
1)設(shè)定蟻群規(guī)模中螞蟻總量為M 只,并將其置于初始原點(diǎn)處,并設(shè)置蟻群算法初始參數(shù);
2)對螞蟻所走路徑點(diǎn)進(jìn)行記錄,并將其置于一規(guī)格為1×3矩陣tabuk中;
3)算法開始迭代,令蟻群以原點(diǎn)為起始點(diǎn),并開始搜索,所有人工螞蟻從原點(diǎn)出發(fā),通過式(1)來計(jì)算所行方向目標(biāo)節(jié)點(diǎn)的轉(zhuǎn)移概率,然后通過輪盤賭注法選擇下一個(gè)節(jié)點(diǎn),并將螞蟻當(dāng)前所在節(jié)點(diǎn)記入tabuk中;
4)當(dāng)蟻群搜索完畢即一次迭代結(jié)束,計(jì)算每只螞蟻路徑矩陣tabuk來得到相應(yīng)的(Kp,Ki,Kd)及性能指標(biāo)。然后根據(jù)式(2)執(zhí)行信息素蒸發(fā)策略,并記錄本次迭代最小性能指標(biāo)及相應(yīng)PID參數(shù);
5)若算法并未收斂且未達(dá)到最大迭代次數(shù),則下一輪迭代開始,否則則將輸出收斂結(jié)果或當(dāng)前最優(yōu)結(jié)果作為最優(yōu)參數(shù)解[15]。
3固定翼無人機(jī)數(shù)學(xué)模型構(gòu)建
針對無人機(jī)固定翼PID控制系統(tǒng)蟻群算法參數(shù)尋優(yōu),本次以取天行者固定翼無人機(jī)翻滾、俯仰和偏航控制系統(tǒng)作為參照點(diǎn)。該固定翼無人機(jī)機(jī)型具有1680mm的較大翼展,且未載荷機(jī)體總重量僅1.7kg有效載荷較大,轉(zhuǎn)動(dòng)慣量(kg/m2)分別為:Jx=0.8244、Jy=1.135,Jz=0.1204。因此該類型無人機(jī)適用于多種任務(wù)要求,具有廣泛的通用性。其翻滾、俯仰與偏航通道傳遞函數(shù)如下所示[13]:
1.俯仰通道控制傳遞函數(shù)為:
4仿真驗(yàn)證
41俯仰通道控制率仿真分析
設(shè)定本文設(shè)定控制器輸入為y(t)=1(t),(t>0),且算法采樣周期為T=0.005s,并設(shè)定蟻群算法初始參數(shù)M=50(螞蟻總數(shù)),K=100(蟻群算法迭代次數(shù)),且ρ=0.1,α=1,β=2,Qk=100,其俯仰通道PID相應(yīng)如圖2所示。
由仿真圖可知系統(tǒng)所得Kp=5.9711,Ki=3.7648,Kd=2.3676。上升時(shí)間0.133s,調(diào)節(jié)時(shí)間7.18s,超調(diào)量為8,96%。從數(shù)據(jù)中可以看出算法所搜索PID具有較快的響應(yīng)速度與小超調(diào)量,但根據(jù)仿真所得調(diào)節(jié)時(shí)間可以看出函數(shù)PID調(diào)節(jié)后減小原函數(shù)變動(dòng),提高控制器收斂性。
42翻滾通道控制率仿真分析
保持蟻群算法初始參數(shù)及系統(tǒng)信號(hào)輸入不變,將被控對象轉(zhuǎn)化成翻滾通道??傻孟伻核惴▽Ψ瓭L通道PID參數(shù)整定傳響應(yīng)如圖2 所示。
經(jīng)過蟻群算法迭代可得Kp=2.0917,Ki=1.4446,Kd=0,75714,上升時(shí)間0.0431s,超調(diào)量為0.444%,調(diào)節(jié)時(shí)間為0.0759s。從蟻群算法為滾轉(zhuǎn)通道PID參數(shù)尋優(yōu)后所示結(jié)果可以看出控制器經(jīng)過調(diào)節(jié)后僅需較短的響應(yīng)時(shí)間即可達(dá)到峰值,且所示波形波動(dòng)較小,并且很快達(dá)到收斂。
43偏航通道控制率仿真分析
同理,將固定翼無人機(jī)偏航通道傳遞函數(shù)模型代入,即可得到偏航通道PID控制響應(yīng)模型。
其中Kp=91.4897,Ki=31.1723,Kd=67.1298,且由圖4可知,系統(tǒng)的超調(diào)量為 8.61%,且上升時(shí)間為0.0437s,0.372s后系統(tǒng)波形達(dá)到穩(wěn)定收斂,從仿真結(jié)果看出經(jīng)過蟻群算法對偏航通道PID參數(shù)整定后,使系統(tǒng)具有快速收斂性和較高的穩(wěn)定性能。
44實(shí)際固定翼飛行數(shù)據(jù)驗(yàn)證
針對上文蟻群算法對各個(gè)控制通道的PID參數(shù)尋優(yōu)控制,本文將所得參數(shù)輸入到固定翼無人機(jī)中,并通過地 Mission Planner 軟件讀取本次飛行的 log 日志文件,繪制無人機(jī)飛行姿態(tài)變化曲線。
從圖5XYZ三個(gè)通道無人機(jī)姿態(tài)變化跟蹤曲線可以看出蟻群算法對 PID 控制器參數(shù)尋優(yōu)具有較好的瞬時(shí)響應(yīng)控制性能,且小幅度的擺動(dòng)在無人機(jī)飛行控制誤差可接受范圍之內(nèi),令無人機(jī)姿態(tài)控制操控性更加穩(wěn)定。endprint
5結(jié)論
經(jīng)過實(shí)驗(yàn)仿真結(jié)果可以看出蟻群算法針對諸如PID組合參數(shù)優(yōu)化整定問題具有良好的魯棒性及便捷的分布式搜索機(jī)制,與固定翼無人機(jī)多控制通道相結(jié)合,可以高效解決固定翼無人機(jī)PID參數(shù)整定組合優(yōu)化問題,并且從顯示結(jié)果中可以看出算法針對PID參數(shù)尋優(yōu)使無人機(jī)控制系統(tǒng)具有快速的響應(yīng)速度,較短的調(diào)節(jié)時(shí)間與擺幅較小的超調(diào)響應(yīng),并用固定翼對所求PID參數(shù)的控制優(yōu)化性能進(jìn)行驗(yàn)證。從上述結(jié)論中可以看出蟻群算法在無人機(jī)PID參數(shù)整定尋優(yōu)中具有極高的可行性,可以適用于無人機(jī)PID參數(shù)優(yōu)化控制。
參考文獻(xiàn)
[1]LUO Y,CHAO H.Lateral directional fractional order (PI) a control of a small fixedwing unmanned aerial vehicles:controller designs and flight tests.The Institution of Engineering and Technology[J].IEEE Trans.2011,(5):2156-2167.
[2]PRADHAN R,ROUT B,PRABHU.Enhancement of stability of SMIB using ZNPID and LQRPSS as affected by excitation control [J].IEEE.2015.
[3]ZHANG Yanhong,ZHAO Dean,ZHANG Jiansheng.Research on PID controller based on the BP neural network[J].IEEE.2011:516-519.
[4]MENHAS M I,WANG Ling,F(xiàn)EI M,et al,“Comparative performance analysis of various binary coded PSO algorithms in multivariable PID controller design,” Expert systems with applications[J].2012,39:4390-4401.
[5]SHARMA R,RANA K P S,KUMAR V.Statistical Analysis of GA Based PID Controller Optimization for Robotic Manipulator[J].IEEE.2014:713-718.
[6]NAGARAJ B,MURUGANANTH D N.A comparative study of PID controller tuning using GA,EP,PSO and ACO[J].IEEE.2010:305-313.
[7]PRIYAMBODO T,PRIYAMBODO T K,DHARMAWAN A.Optimizing control based on ant colony logic for quadrotor stabilization[J].IEEE.2015.
[8]CHEN Yibao,GUO Zhong,LIU Jiaguang.An improved ant colony algorithm for PID parameters optimization[J].IEEE.2009:157-160.
[9]尹宏鵬.基于蟻群算法的 PID 控制參數(shù)優(yōu)化[J].計(jì)算機(jī)工程與應(yīng)用.2007 ,43 ( 17 ):4-7.
[10]許賀群.基于改進(jìn)蟻群算法的PID參數(shù)優(yōu)化[J].制造業(yè)自動(dòng)化.2011,33(4):1-3.
[11]SANDOVAL D,SOTO I,ADASME P.Control of direct current motor using ant colony optimization[J].IEEE.2015.
[12]孫鐵成.蟻群算法在PID控制中的應(yīng)用及其參數(shù)影響[J].現(xiàn)代電子技術(shù).2015,38(20):20-25.
[13]劉一鳴.基于 Backstepping 自適應(yīng)的固定翼無人機(jī)控制方法研究[D].哈爾濱工程大學(xué):自動(dòng)化學(xué)院,2015:1-103.
[14]劉艷榮,姜波.基于蟻群算法PID控制器的應(yīng)用研究[J].電子設(shè)計(jì)工程.2012,20(18):28-30.
[15]傅強(qiáng).基于蟻群算法的航空發(fā)動(dòng)機(jī)PID參數(shù)優(yōu)化[J].控制系統(tǒng).2011,(5):32-34.endprint