柴鈺 王喬
摘 要: 履帶機(jī)器人運(yùn)動(dòng)控制系統(tǒng)中最重要的內(nèi)容是控制驅(qū)動(dòng)電機(jī)的轉(zhuǎn)速問題。履帶機(jī)器人對(duì)系統(tǒng)的動(dòng)態(tài)特性要求較高,而且在其運(yùn)動(dòng)的過程中容易出現(xiàn)超調(diào)、振蕩和兩電機(jī)不同步的問題,基于傳統(tǒng)控制策略的PID控制效果難以令人滿意;模糊PID控制器盡管可以改善系統(tǒng)的性能,但對(duì)于模糊控制器中的模糊規(guī)則、隸屬度函數(shù)的制定要依靠大量的專家經(jīng)驗(yàn)。鑒于以上分析,設(shè)計(jì)一種改進(jìn)的粒子群優(yōu)化模糊PID算法實(shí)現(xiàn)對(duì)直流電機(jī)速度控制的運(yùn)動(dòng)控制系統(tǒng)。另外,為了提高履帶機(jī)器人直行運(yùn)動(dòng)的性能,在兩驅(qū)動(dòng)電機(jī)控制系統(tǒng)中間設(shè)計(jì)速度同步補(bǔ)償器。最后,通過在Matlab仿真表明,采用粒子群優(yōu)化算法的模糊PID控制的運(yùn)動(dòng)控制系統(tǒng)具有更加理想的響應(yīng)速度、穩(wěn)定性、抗干擾性和控制精度,在硬件平臺(tái)驗(yàn)證了履帶機(jī)器人的直行效果良好。
關(guān)鍵詞: 履帶機(jī)器人; 粒子群優(yōu)化算法; 模糊PID; 速度同步補(bǔ)償器; 運(yùn)動(dòng)控制; 驅(qū)動(dòng)電機(jī)
中圖分類號(hào): TN383+.3?34 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2018)18?0049?05
Research on tracked robot motion control based on particle
swarm optimization and fuzzy PID
CHAI Yu, WANG Qiao
(School of Electrical and Control Engineering, Xian University of Science and Technology, Xian 710054, China)
Abstract: The most important content of the tracked robot motion control system is to control the speed of the drive motor. The tracked robot has high requirements on the dynamic feature of the system, problems of overshoot, oscillation and unsynchronization of two motors may occur during the robot movement process, and the effect of PID control based on the traditional control strategy is unsatisfactory. The fuzzy PID controller can improve the performance of the system, but the development of the fuzzy rule and membership function of the fuzzy controller must rely on a great amount of expertise. In view of the above analysis, an improved particle swarm optimized fuzzy PID algorithm is designed to achieve the motion control system that can control DC motor speed. The designed speed synchronization compensator is put between two drive motor control systems, so as to improve the straight movement performance of the tracked robot. The Matlab simulation results show that the motion control system based on the particle swarm optimization algorithm and fuzzy PID control has optimal response speed, stability, anti?interference performance, and control precision. The good straight movement effect of the tracked robot is verified on the hardware platform.
Keywords: tracked robot; particle swarm optimization algorithm; fuzzy PID; speed synchronization compensator; motion control; drive motor
0 引 言
履帶式機(jī)器人是機(jī)器人研究學(xué)中的重要組成部分,它是以履帶底盤機(jī)構(gòu)為基礎(chǔ),利用多傳感器獲取機(jī)體與周圍環(huán)境情況,實(shí)現(xiàn)在復(fù)雜不明的環(huán)境下替代人類從事危險(xiǎn)工作的一類機(jī)器人。履帶機(jī)器人涉及到許多研究方向,其中運(yùn)動(dòng)控制是其最基本、也是非常重要的一個(gè)研究方向,它是履帶機(jī)器人進(jìn)行軌跡控制、定位導(dǎo)航、越障救援、環(huán)境探險(xiǎn)、攀爬樓梯等工作的基礎(chǔ),實(shí)現(xiàn)對(duì)履帶機(jī)器人電機(jī)速度的精準(zhǔn)控制有很大的實(shí)際意義。
如今,履帶機(jī)器人運(yùn)動(dòng)控制算法通常包括經(jīng)典PID算法和現(xiàn)代人工智能算法。PID控制具有精度高、通用性強(qiáng)和魯棒性好等優(yōu)點(diǎn),但需要精確的數(shù)學(xué)模型,缺乏靈活性和應(yīng)變性,不能達(dá)到對(duì)非線性系統(tǒng)的控制,而且參數(shù)的整定也存在很大問題。智能PID算法是在PID算法的基礎(chǔ)上引入現(xiàn)代人工智能算法的一種新型控制算法,由于結(jié)合了智能控制算法和 PID算法兩者的優(yōu)點(diǎn),所以被普遍使用。因此,本文在智能PID算法的優(yōu)點(diǎn)基礎(chǔ)之上,采用了一種改進(jìn)的粒子群優(yōu)化模糊PID算法實(shí)現(xiàn)對(duì)直流電機(jī)速度控制的運(yùn)動(dòng)控制系統(tǒng)。
1 履帶機(jī)器人驅(qū)動(dòng)結(jié)構(gòu)
本設(shè)計(jì)驅(qū)動(dòng)系統(tǒng)的動(dòng)力源是15 V蓄電池供電。該驅(qū)動(dòng)系統(tǒng)利用雙直流電機(jī)獨(dú)立驅(qū)動(dòng)左、右側(cè)主動(dòng)輪的方式,這樣的硬件結(jié)構(gòu)比較簡單,在直行、轉(zhuǎn)彎和制動(dòng)時(shí)便于對(duì)機(jī)器人的左、右履帶分開控制,而且左、右履帶電動(dòng)機(jī)的硬件參數(shù)、性能基本相同。圖1是履帶機(jī)器人本驅(qū)動(dòng)系統(tǒng)結(jié)構(gòu)圖。
履帶機(jī)器人驅(qū)動(dòng)的重要內(nèi)容是對(duì)直流電機(jī)的轉(zhuǎn)速控制問題。因此通過對(duì)直流電機(jī)系統(tǒng)模型的具體分析計(jì)算后,可知其電壓與轉(zhuǎn)速之間的傳遞函數(shù)為:
[G(s)=N(s)U(s)=1CeTmTls2+Tms+1] (1)
式中:[Tm]為電機(jī)系統(tǒng)的機(jī)電時(shí)間常數(shù);[Tl]為電樞回路電磁時(shí)間常數(shù);[Ce]為電機(jī)系統(tǒng)的電動(dòng)勢(shì)常數(shù)。
2 設(shè)計(jì)改進(jìn)PSO的模糊PID控制器
履帶機(jī)器人在運(yùn)動(dòng)過程中,往往受到很多外界因素的影響,比如路面結(jié)構(gòu)的性質(zhì)、障礙物類型的大小、人為因素的干擾等都會(huì)對(duì)系統(tǒng)造成干擾,使系統(tǒng)的參數(shù)發(fā)生改變?;趥鹘y(tǒng)控制策略的PID控制效果總是令人難以滿意。模糊控制器的量化因子與比例因子的大小關(guān)系嚴(yán)重影響系統(tǒng)性能。同時(shí)考慮到,粒子群算法(Particle Swarm Optimization,PSO)是一種種群智能的優(yōu)化算法,算法簡便且容易實(shí)現(xiàn)尋求最優(yōu)解。因此,當(dāng)模糊控制系統(tǒng)性能發(fā)生變化時(shí),必須能夠在線實(shí)時(shí)改變控制策略,使參數(shù)保持在有效合理的范圍內(nèi),即通過PSO優(yōu)化模糊控制器的參數(shù): 量化因子[Ke],[Kec]及比例因子[Ku],使其變成系數(shù)可以不斷在線調(diào)整的模糊控制器。因此,本文采用改進(jìn)的PSO算法優(yōu)化模糊控制器的參數(shù)。圖2是本系統(tǒng)算法優(yōu)化的控制器結(jié)構(gòu)。
控制器采取2個(gè)輸入變量、3個(gè)輸出變量的形式,設(shè)定履帶機(jī)器人的運(yùn)行方向后,以誤差E與誤差變化率EC為輸入。模糊過程中的模糊化、去模糊等步驟需配合粒子群算法調(diào)整量化因子和比例因子。最后實(shí)時(shí)在線調(diào)整輸出PID的3個(gè)參數(shù),通過改變PWM信號(hào)占空比來改變直流電機(jī)的電樞電壓進(jìn)行調(diào)速,進(jìn)而控制履帶機(jī)器人的運(yùn)動(dòng)。
2.1 基本模糊理論
在Matlab的Fuzzy Logic Toolbox中建立模糊控制器,使用C語言編寫程序添加到控制器中。本文所采用的模糊控制器是一種二維結(jié)構(gòu)。FIS推理控制器的類型為Mamdani,去模糊方法為Centroid。根據(jù)履帶機(jī)器人運(yùn)動(dòng)控制系統(tǒng)特性,本文選擇Z型、三角形和S型三種函數(shù)作為輸入和輸出變量的隸屬度函數(shù),其函數(shù)分布如圖3所示。
本文控制器的輸入/輸出變量模糊子集均采用7個(gè)變量值{負(fù)大(NB)、負(fù)中(NM)、負(fù)?。∟S)、零(Z)、正?。≒S)、正中(PM)、正大(PB)}表示。輸入模糊量E和EC的論域都為[-3,3]。同理,[KP],[KI],[KD]的模糊論域?yàn)閇-0.3,0.3],[-0.06,0.06],[-3,3]。
本文的模糊PID控制器是運(yùn)用模糊理論對(duì)PID控制器的參數(shù)[KP],[KI],[KD]進(jìn)行在線不斷調(diào)整的一種模糊控制器。將偏差E與偏差變化率EC作為模糊控制的輸入,則輸出是PID的3個(gè)參數(shù)[KP],[KI],[KD]的校正值[ΔKP],[ΔKI],[ΔKD]。假設(shè)選取的常規(guī) PID 控制器參數(shù)為[KP0],[KI0],[KD0],那么 PID 控制器的3個(gè)參數(shù)[KP],[KI],[KD]分別為:
[KP=KP0+ΔKP] (2)
[KI=KI0+ΔKI] (3)
[KD=KD0+ΔKD] (4)
式中:[KP0],[KI0],[KD0]為[KP],[KI],[KD]的初始值;[ΔKP],[ΔKI],[ΔKD]為控制其輸出的調(diào)整值。
根據(jù)履帶機(jī)器人運(yùn)動(dòng)控制系統(tǒng)的穩(wěn)定性、快速性,模糊規(guī)則的一般原則是:當(dāng)偏差比較大時(shí),系統(tǒng)以消除誤差為主;當(dāng)誤差比較小時(shí),為了避免超調(diào),應(yīng)該以系統(tǒng)的穩(wěn)定性為主。因此,基于此原則,本文共制訂了7×7=49條模糊控制規(guī)則。[KP],[KI],[KD]所對(duì)應(yīng)的模糊控制規(guī)則如圖4所示。
圖4 模糊規(guī)則表
Fig. 4 Fuzzy rules
2.2 改進(jìn)的粒子群優(yōu)化算法
基本PSO優(yōu)化原理來自于對(duì)魚類和鳥類覓食過程的模仿。基本原理為在利用群體中成員之間的緊密配合與信息共享來尋求最優(yōu)解。假設(shè)存在H維空間,一個(gè)種群包含有m個(gè)粒子,[xi]表示第i個(gè)粒子的坐標(biāo)記為([xi1],[xi2],…,[xiH]);[vi]表示第i個(gè)粒子的速度,記為([vi1],[vi2],…,[viH]);粒子個(gè)體經(jīng)歷的最佳坐標(biāo)記為[pi]=([pi1],[pi2] …,[piH]);整個(gè)種群經(jīng)歷的最佳坐標(biāo)記為 [pg]=([pg1],[pg2],…,[pgH]),則粒子的速度和坐標(biāo)變化為:[viH(k+1)=ω?viH(k)+c1r1?[piH(k)-xiH(k)]+ c2r2?[pgH(k)-xiH(k)]] (5)
[xiH(k+1)=xiH(k)+viH(k+1)] (6)
[ω(t)=ωmax-ωmax-ωmintmax?t] (7)
式中:[ω]為慣性系數(shù),表示粒子之前速度對(duì)目前速度的影響;t是目前的迭代次數(shù);[tmax]是最大的迭代次數(shù);[c1] 和[c2]為加速度常數(shù),代表粒子靠近最優(yōu)個(gè)體和最優(yōu)群體的加速度系數(shù);[r1]和[r2]為[0,1]的隨機(jī)數(shù);[vid∈[-vmax,vmax]],[vmax]為常數(shù),可自行設(shè)定。
粒子群算法有許多優(yōu)點(diǎn),比如:代碼短、收斂快、易操作實(shí)現(xiàn)等,但也存在精度不高、分散性高等一些缺點(diǎn)。假如速率、學(xué)習(xí)因子太大,粒子群會(huì)尋找不到最優(yōu)解,導(dǎo)致無法收斂;當(dāng)粒子群收斂時(shí),所有粒子都向最優(yōu)方向移動(dòng),引起粒子同一化現(xiàn)象,粒子多樣性不明顯,而優(yōu)化性能達(dá)不到預(yù)期要求。所以,本文使用了分段時(shí)變學(xué)習(xí)因子的粒子群算法優(yōu)化其性能。
故分段時(shí)變學(xué)習(xí)因子表示為:
[c1=(c1j-c1i)?ttmax+c1i] (8)
[c2=(c2j-c2i)?ttmax+c2i] (9)
式中:[c1j],[c1i]是[c1]的初值和終值;[c2j],[c2i]分別是[c2]的初值和終值,它們均為常數(shù)。
利用分段時(shí)變學(xué)習(xí)因子,也就是說在粒子群優(yōu)化過程中一定范圍內(nèi)用不變的學(xué)習(xí)因子,其他一定范圍用時(shí)變的學(xué)習(xí)因子。因此針對(duì)不同類型的對(duì)象,能夠方便地調(diào)整粒子的自我認(rèn)知能力和社會(huì)經(jīng)驗(yàn)部分,從而使粒子更快、更精確地收斂于全局最優(yōu)點(diǎn)。
2.3 PSO算法優(yōu)化模糊隸屬度函數(shù)
本文運(yùn)用了改進(jìn)的PSO算法優(yōu)化模糊控制器參數(shù)的方法,使模糊系統(tǒng)性能得到明顯改善。模糊控制器的輸入量是偏差E和偏差變化率EC,通常量化后的論域范圍是[-H,H],或者按照輸出設(shè)定值的改變進(jìn)行相應(yīng)調(diào)整。輸入量的模糊集定義為: P(正)與N(負(fù)),所以隸屬度函數(shù)的計(jì)算公式為:
[μN(yùn)e=H-Kee2H,μPe=H+Kee2H, kee∈[-H,H]] (10)
[μN(yùn)ec=H-Kecec2H,μPec=H+Kecec2H, Kecec∈[-H,H]] (11)
用改進(jìn)的PSO算法優(yōu)化控制器中的量化因子[Ke],[Kec]及比例因子[Ku],從而實(shí)現(xiàn)對(duì)控制器的最佳控制效果。因此,PSO fuzzy Controller模塊仿真圖如圖5所示。
3 雙電機(jī)同步控制策略
履帶機(jī)器人由兩個(gè)直流電機(jī)差分驅(qū)動(dòng)其兩側(cè)的運(yùn)動(dòng)系統(tǒng),通過改變兩電機(jī)的轉(zhuǎn)速來實(shí)現(xiàn)履帶機(jī)器人的控制。當(dāng)控制機(jī)器人直線運(yùn)動(dòng)時(shí),由于兩側(cè)電機(jī)驅(qū)動(dòng)特性不可能完全一致、減速機(jī)構(gòu)的差異以及運(yùn)轉(zhuǎn)過程中的擾動(dòng),如輪子瞬間打滑、有障礙物的存在、地面摩擦不同等因素,都會(huì)導(dǎo)致履帶機(jī)器人不容易實(shí)現(xiàn)直線運(yùn)動(dòng)的控制目標(biāo)。雖然直流電機(jī)各自的閉環(huán)控制系統(tǒng)能夠加快控制響應(yīng),提高控制精度,但并不能很好地保證兩直流電機(jī)的協(xié)調(diào)性及其速度的一致性。為了提高履帶機(jī)器人直線運(yùn)動(dòng)性能,本文在兩側(cè)電機(jī)各自閉環(huán)控制的基礎(chǔ)上,設(shè)計(jì)了速度同步補(bǔ)償器實(shí)現(xiàn)兩直流電機(jī)的同步控制。
將同步補(bǔ)償器的兩側(cè)直流電機(jī)反饋轉(zhuǎn)速進(jìn)行比較,獲得的轉(zhuǎn)速偏差值(V1-V2)作為同步補(bǔ)償控制的輸入信號(hào)。當(dāng)兩個(gè)電機(jī)輸出速度出現(xiàn)差異時(shí),補(bǔ)償器開始工作,它將兩側(cè)反饋轉(zhuǎn)速的偏差值乘以補(bǔ)償修正系數(shù)K1,K2,再分別補(bǔ)償給左、右側(cè)系統(tǒng)的輸入信號(hào),實(shí)現(xiàn)兩直流電機(jī)的同步。圖6是本系統(tǒng)速度同步補(bǔ)償工作原理圖。
4 仿真結(jié)果與分析
取電機(jī)的傳遞函數(shù)[G(s)=2s2+3s+1]。因此,電機(jī)在單位階躍函數(shù)響應(yīng)下的PID控制器、模糊PID控制器、基于PSO優(yōu)化模糊PID控制器的模型仿真圖如圖7所示。PSO fussy PID子系統(tǒng)模塊仿真圖如圖8所示。
PID控制器中設(shè)置參數(shù)的初始值為:[KP=20],[KI=3.7],[KD=1.35]。沒有擾動(dòng)時(shí)的3種算法對(duì)比仿真結(jié)果如圖9所示,在4 s時(shí)添加擾動(dòng)的3種算法對(duì)比仿真結(jié)果如圖10所示。通過對(duì)比PID控制、模糊PID控制、PSO優(yōu)化模糊PID控制的仿真結(jié)果圖9和圖10可以看出:PID算法有很大的超調(diào)量,調(diào)節(jié)時(shí)間長,抗干擾能力差;模糊PID算法無超調(diào),調(diào)節(jié)時(shí)間比PID的時(shí)間短,具有較好的穩(wěn)定性;而本文采用的改進(jìn)粒子群優(yōu)化模糊PID算法可以實(shí)現(xiàn)系統(tǒng)響應(yīng)速度快、無超調(diào)、調(diào)節(jié)時(shí)間短,抗干擾性好,穩(wěn)定性高。
根據(jù)兩電機(jī)速度同步補(bǔ)償原理,取電機(jī)轉(zhuǎn)速為500,補(bǔ)償修正系數(shù)K1=K2=0.02,在3 s加入擾動(dòng)時(shí)速度同步補(bǔ)償仿真結(jié)果如圖11所示。
本文所設(shè)計(jì)的同步補(bǔ)償控制器能夠很好地保證兩側(cè)直流電機(jī)的同步性,兩側(cè)系統(tǒng)響應(yīng)曲線幾乎重合,且通過試驗(yàn)整定的補(bǔ)償修正系數(shù)適當(dāng),未出現(xiàn)速度的過度矯正情況,速度同步補(bǔ)償環(huán)節(jié)對(duì)運(yùn)動(dòng)控制系統(tǒng)的穩(wěn)定性和控制效果沒有造成負(fù)面影響。因此該策略實(shí)現(xiàn)了履帶機(jī)器人直線運(yùn)動(dòng)的目的。
5 結(jié) 語
本文首先介紹了履帶機(jī)器人的運(yùn)動(dòng)控制系統(tǒng),再針對(duì)模糊PID算法中存在的不足,提出一種基于改進(jìn)的粒子群優(yōu)化模糊PID算法和速度同步補(bǔ)償策略實(shí)現(xiàn)履帶機(jī)器人的運(yùn)動(dòng)控制。最后通過Matlab仿真表明,本文算法的控制效果相對(duì)于PID算法、模糊PID算法而言,在履帶機(jī)器人運(yùn)動(dòng)控制系統(tǒng)的超調(diào)量、穩(wěn)定性、調(diào)節(jié)時(shí)間、抗干擾性等方面均具有明顯優(yōu)勢(shì),并搭建硬件平臺(tái)驗(yàn)證了履帶機(jī)器人直行效果良好。
注:本文通訊作者為王喬。
參考文獻(xiàn)
[1] 李金鑫,張年松,何勇.基于模糊PID的武裝機(jī)器人運(yùn)動(dòng)控制研究[J].控制工程,2014,5(z1):41?44.
LI Jinxin, ZHANG Niansong, HE Yong. Research on motion control of armed robot based on fuzzy PID [J]. Control engineering of China. 2014(S1): 41?44.
[2] 王傳秀,嚴(yán)東超,尹厚軍.基于模糊PID的無刷直流電機(jī)調(diào)速性能研究[J].計(jì)算機(jī)仿真,2015,32(10):430?434.
WANG Chuanxiu, YAN Dongchao, YIN Houjun. Motor Speed Control Based on Fuzzy PID [J]. Computer simulation, 2015, 32(10): 430?434.
[3] 劉建.礦用救援機(jī)器人關(guān)鍵技術(shù)研究[D].徐州:中國礦業(yè)大學(xué),2014.
LIU Jian. Research on key technologies of mine rescue robot [D]. Xuzhou: China University of Mining and Technology, 2014.
[4] 侯偉龍.基于模糊PID的助行機(jī)器人調(diào)速系統(tǒng)的研究[J].計(jì)算機(jī)測(cè)量與控制,2017,25(1):54?56.
HOU Weilong. Research on fuzzy PID speed control system of walker aid robot [J]. Computer measurement & control, 2017, 25(1): 54?56.
[5] 王慶明,孫怡.基于模糊PID控制的直流電機(jī)同步控制系統(tǒng)[J].機(jī)電工程,2012,29(5):493?496.
WANG Qingming, SUN Yi. Multi?DC motors′ synchronization control system based on fuzzy PID control [J]. Journal of mechanical & electrical engineering, 2012, 29(5): 493?496.
[6] TRUONG D Q, AHN K K. Parallel control for electro?hydraulic load simulator using online self tuning fuzzy PID technique [J]. Asian journal of control, 2011, 13(4): 522?541.
[7] 潘亮.基于模糊控制的多電機(jī)同步控制方法研究[D].上海:東華大學(xué),2016.
PAN Liang. Study on multi?motor synchronous control method based on fuzzy control [D]. Shanghai: Donghua University, 2016.
[8] 王維新.兩輪差速機(jī)器人運(yùn)動(dòng)學(xué)分析和控制研究[J].現(xiàn)代電子技術(shù),2012,35(10):93?96.
WANG Weixin. Kinematic analysis and control of two?wheeled differential robots [J]. Modern electronics technique, 2012, 35(10): 93?96.
[9] 李鵬飛,王偉濤,萬亞斌.基于相鄰偏差耦合的多電機(jī)模糊PID同步控制[J].機(jī)械設(shè)計(jì)與研究,2013,29(5):45?48.
LI Pengfei, WANG Weitao, WAN Yabin. Multi?motor fuzzy PID synchronous control based on the adjacent deviation coupling strategy [J]. Machine design & research, 2013, 29(5): 45?48.
[10] 徐陶祎,鐘誠,周鼎.戶外無刷直流電機(jī)智能調(diào)速優(yōu)化研究[J].計(jì)算機(jī)仿真,2017,34(2):354?357.
XU Taoyi, ZHONG Cheng, ZHOU Ding. Optimization of intelligent speed control of brushless DC motor [J]. Computer simulation, 2017, 34(2): 354?357.
[11] RONG H G, ZHENG H, LI Z Q, et al. Tuning of fuzzy PID controller for Smith predictor [J]. Journal of Central South University, 2010, 17(3): 566? 571.