徐向榮,朱永飛,查文斌,周 攀
(安徽工業(yè)大學 機械工程學院,安徽 馬鞍山 243000)
近年,國內外工廠大都實現(xiàn)自動化或半自動化生產過程,生產效率得到了大幅度提升,生產成本得到大幅改善,另一方面自動化過程和控制方法相關,傳統(tǒng)的控制方法主要是依照精確數(shù)學模型的PID控制,而工廠中的機械臂是非線性,時變性的,因此模糊控制作為解決上述問題強有力工具被引入到一類模型不精確且復雜系統(tǒng)的控制當中,取得了良好的效果。而且工廠中的機器人大都經過示教等方式進行重復性的操作問題,比如搬運物體、激光切割等,伴隨著外界環(huán)境干擾,機器人本體磨損等因素,重復性的操作準確性勢必下降,而迭代學習控制方法針對上述描述問題非常適合,對于非線性強耦合系統(tǒng)處理起來非常簡便,所以模糊控制與迭代學習控制相結合的方法被廣泛運用。
為提高模糊控制器的整體性能,結合人工蜂群算法自動識別模糊規(guī)則表中的值、模糊化參數(shù)和反模糊化參數(shù)的最優(yōu)配置,針對夾持式壓電智能板,并綜合考慮外界擾動因素,結合P型迭代控制方法設計了一種模糊迭代控制器進行數(shù)值研究[1];研究了具有不精確通信拓撲結構的二階線性參數(shù)化多智能體系統(tǒng)(MAS)的完美共識問題,提出了基于T-S模型的模糊自適應迭代學習協(xié)調控制方法[2];對于永磁直線同步電動機(PMLSM)執(zhí)行重復性任務,提出了將迭代學習控制與模糊控制相結合的分段模糊迭代學習控制方法,以抑制不確定因素對系統(tǒng)的影響,有效地提高了收斂速度和位置跟蹤精度[3];通過建立偏心軸的加工數(shù)學模型以此分析偏心軸磨床X-C軸的跟蹤誤差關系,引入模糊自適應PID迭代學習控制算法,有效提高了偏心軸的加工精度[4]。
上述文獻中的實驗雖然取得了預期中的效果,但是其中設計的模糊控制器中的模糊規(guī)則設定下來之后是更改不了的,在實際應用當中,對于機械臂等非線性系統(tǒng),模糊控制所依賴的控制規(guī)則在設定后往往改變不了,當系統(tǒng)在受到外界溫度濕度條件的干擾和自身摩擦發(fā)熱等因素時,會使得系統(tǒng)模型發(fā)生改變,而原本設計的模糊規(guī)則是針對受影響之前的系統(tǒng)模型,所以此時的模糊規(guī)則需要根據(jù)模型的變化進行適時調整,鑒于此本文提出一種自調整因子模糊PD型迭代學習控制方法,通過調整因子的自我修改能力去實時修改模糊控制中的規(guī)則,盡可能地滿足模型改變帶來的對模糊規(guī)則的影響,并結合迭代學習控制實現(xiàn)收斂速度和減小誤差的雙層優(yōu)化效果,同時也增強了系統(tǒng)的自適應性。
機械臂的動態(tài)性能可由基于拉格朗日的力學分析方法建立的非線性微分方程描述:
(1)

機械臂動力學特性主要體現(xiàn)在以下兩方面:

2)M(q)為對稱正定矩陣,正數(shù)m1和m2,滿足以下不等式:m1‖x‖2≤xTM(q)x≤m2‖x‖2[6]。


圖1 基本模糊控制器結構
模糊控制規(guī)則的生成一方面來自由實際生產中的操作人員和專家對系統(tǒng)進行控制的經驗和知識再經反復論證修改所得,另一方面來自對系統(tǒng)進行多次試驗測試,從輸入和輸出的數(shù)據(jù)中歸納總結。如果參數(shù)發(fā)生漂移,就要設法修正系統(tǒng)控制規(guī)則以滿足工作需求,而且常規(guī)的模糊控制器結構較為簡單,當控制系統(tǒng)受干擾出現(xiàn)變化時,模糊規(guī)則編寫之后很難適應系統(tǒng)變化,可同引入調整因子對模糊規(guī)則進行修改以滿足控制對象的變化,因此文中設計一種自調整因子模糊控制器用來解決上述出現(xiàn)的情況。
大多數(shù)情況下,模糊處理后U的結果可用式(2)表示:
U=αE+(1-α)Ec(0<α<1)
(2)
式中,α是調整因子,其作用具體體現(xiàn)在系統(tǒng)誤差較大時,應提高模糊規(guī)則中的誤差權重,當系統(tǒng)誤差較小時,系統(tǒng)正趨于穩(wěn)定狀態(tài),此時應提高模糊規(guī)則中誤差變化率的權重,以此保證系統(tǒng)盡快穩(wěn)定。
自調整因子模糊控制器是在基本模糊控制器的基礎上加上自調整因子控制部分,控制器的具體架構如圖2所示,仍然以誤差和誤差變化率作為自整定部分的輸入量,調整修正因子便可實現(xiàn)對模糊規(guī)則的實時更改,接著利用更改后的模糊規(guī)則再進行控制,從而在根本上提高模糊控制器的性能。

圖2 自調整因子模糊控制器結構
自調整因子α的變化也經模糊控制推出,用系統(tǒng)產生的E以及Ec作為α模糊控制器的輸入變量,相當于系統(tǒng)中存在兩個模糊控制器,即在系統(tǒng)模糊控制器中又加入一個α模糊控制器,自整定部分的模糊控制器最后輸出為調整因子α,系統(tǒng)模糊控制器中的模糊規(guī)則受到α模糊控制器的控制,并根據(jù)α的輸出變化值進行適時變化,控制器的輸入論域和輸出論域分別設置為[-0.4,0.4]和[0,1],并設置5個輸出量模糊子集,即:{VS(很小),S(小),M(中),B(大),VB(很大)}[7],α的模糊控制規(guī)則和α的隸屬度函數(shù)設置如表1和圖3所示。

表1 α的模糊控制規(guī)則表

圖3 α的隸屬度函數(shù)
迭代學習控制通過迭代修正達到控制對象的改善,控制對象的數(shù)學模型可以不精確,在一定時間范圍內可以對控制對象的運動軌跡實現(xiàn)精確跟蹤[8]。假定根據(jù)期望控制輸入信號ud(t)和輸出信號yd(t),在運行時間t(0 ek(t)=yd(t)-yk(t) (3) 迭代學習控制包括閉環(huán)學習和開環(huán)學習兩種方法,文中采用前者算法進行控制研究,閉環(huán)學習算法利用第k+1次的運行誤差作為每一次迭代的輸入量,即: uk+1(t)=L(uk(t),ek+1(t)) (4) 式中,L為線性或非線性算子,ek+1(t)為k+1次的運行誤差。 閉環(huán)PD迭代學習控制律可表示為: uk+1(t)= (5) 由式(5)可以知道,迭代學習控制律中的參數(shù)一旦確定,便不能改變,在參數(shù)的選擇上往往多次手動改變,繁瑣且效率低。因此需要對控制律參數(shù)進行實時調整以此獲得最優(yōu)參數(shù),所以采取自調整因子模糊控制器與迭代學習相結合的辦法對PD參數(shù)進行實時修改,以改善系統(tǒng)的動態(tài)性能。 自調整因子模糊PD迭代學習控制器結構如圖4所示,以每一次迭代學習控制運行后產生的Ek及Eck作為控制器的輸入變量,自調整因子α對系統(tǒng)模糊控制器中的模糊規(guī)則起到調整作用,在經過模糊化、近似推理和清晰化處理后輸出的變量是修正后的PD參數(shù)補償ΔKP和ΔKD,在經過與初始設定的PD參數(shù)相加后最終得出迭代學習控制律中KP和KD參數(shù)[10],從而在關節(jié)角度跟蹤上達到誤差最小化的效果。 圖4 迭代學習控制方法結構 (6) 式中,KPI和KDI為初始設定參數(shù),ΔKP和ΔKD是經模糊控制后的輸出量。 根據(jù)模糊變量子集數(shù)目越多,控制性能越好的原則,對系統(tǒng)模糊控制中的輸入以及輸出變量的模糊子集均設置為7個模糊子集,即:{NB(負大),NM(負中),NS(負小),ZO(零),PS(正小),PM(正中),PB(正大)},模糊推理方法主要包括Mamdani推理法[11]、Larsen推理法和Zadeh推理法,其中Mamdani推理法是比較經典而又使用起來簡單的方法,根據(jù)輸入和輸出量的數(shù)目并利用If語句編寫模糊規(guī)則即可,機械臂是一個多輸入多輸出的耦合系統(tǒng),所以控制規(guī)則的編寫形式為: IfEkisNBandEckisNB, thenKPisPB,KDisPS[12]。 其余的模糊控制規(guī)則均按此編寫,Ek和Eck的初始論域設置為[-0.4,0.4],經模糊處理后輸出的ΔKP和ΔKD設置為[-0.5,0.5],隸屬度函數(shù)采用trimf函數(shù)[13],以輸入量Ek為例,具體形式如圖5所示。 圖5 E的隸屬度函數(shù) 最后利用面積重心法[14]對輸出變量進行反模糊處理,即將經過模糊控制的輸出信號變成實際中的具體值。以參數(shù)ΔKP為例: (7) 式中,Pi為隸屬程度,kp*和Δkp分別表示論域中的模糊化變量和解模糊后輸出量。 所以經過帶有自調整因子的模糊控制之后得到的系統(tǒng)迭代學習控制律為: (ΔKD+KDI)ek+1(t) (8) 根據(jù)之前經驗得到的KP和KD的模糊規(guī)則如表2和表3所示。上述規(guī)則和隸屬度函數(shù)的類型及其輸入輸出變量的論域均在Matlab中的Fuzzy工具箱中進行編寫和設置。 表3 KD的模糊控制規(guī)則表 實驗以雙關節(jié)機械手為對象,如圖6所示。l、r和m表示連桿的長度、質心到端點的距離以及連桿質量,各個參數(shù)的具體數(shù)值在表4和表5中給出[15]。 表4 連桿尺寸參數(shù) 表5 連桿質量和轉動慣量 圖6 雙關節(jié)機械手結構圖 EkE NBNMNSZOPSPMPBNBPBPBPMPMPSZOZONMPBPBPMPSPSZONSNSPMPMPMPSZONSNSZOPMPMPSZONSNMNMPSPSPSZONSNSNMNMPMPSZONSNMNMNMNBPBZOZONMNMNMNBNB (9) 式中, M(q) = 設置迭代學習控制律中的固定參數(shù)分別為KPI=180和KDI==800,時間周期為T=3 s,迭代次數(shù)為20。外界的干擾因素綜合設置為τd=0.3sin(t),兩個關節(jié)的期望軌跡分別設為yd1=sin(3t)和yd2=cos(3t)。基于以上分析,在Simulink中搭建仿真實驗模型,如圖7所示,同時為驗證文中所提算法的有效性,實驗結果將分別與迭代學習控制、模糊自適應迭代學習控制進行比較,將迭代學習控制記為“ILC”, 模糊自適應迭代學習控制記為“FILC”,自調整因子模糊迭代學習控制記為“AFILC”,仿真結果如圖7所示。 圖7 自調整因子模糊PD型迭代學習控制SIMULINK仿真圖 圖8、圖9和圖10分別是經過ILC、FILC和AFILC算法控制得出的機械手經過20次迭代的軌跡跟蹤過程。圖11和圖12是機械手進行迭代學習控制過程中的角度絕對值誤差的收斂過程。 圖8 20次ILC的機械手角度跟蹤過程 圖9 20次FILC的機械手角度跟蹤過程 圖10 20次AFILC的機械手角度跟蹤過程 圖11 20次機械手關節(jié)1角度絕對值誤差收斂過程 圖12 20次機械手關節(jié)2角度絕對值誤差收斂過程 對比圖8~10可以發(fā)現(xiàn),3種方法在最終都能較好地實現(xiàn)機械手的軌跡跟蹤過程,ILC在開始存在較大的軌跡跟蹤誤差,隨著迭代過程的進行,軌跡逐漸達到期望軌跡的數(shù)值,而FILC和AFILC從剛開始便基本上與期望位置保持一致水平,軌跡跟蹤效果較好。 觀察圖11和圖12可以發(fā)現(xiàn),AFILC和FILC方法下關節(jié)1和關節(jié)2的角度誤差在迭代進行第二次的時候就基本上趨于零。特別是對于關節(jié)2,ILC方法在迭代次數(shù)達到20次后依然未趨于零,且處于上下波動中,雖然誤差也已經達到0.005 rad以下,但相比于另外兩種方法明顯性能上略差,也說明了所提的模糊迭代學習控制的誤差收斂速度較快的特性。 鑒于圖11和圖12中的AFILC和FILC兩種方法的誤差絕對值比較接近,同時為了更好地比較軌跡跟蹤效果,繪制了3種方法控制下兩個關節(jié)的角度誤差圖和角速度誤差圖,分別如圖13~圖14和圖15~圖16所示。 圖13 關節(jié)1角度跟蹤誤差 圖14 關節(jié)2角度跟蹤誤差 圖15 關節(jié)1角速度跟蹤誤差 圖16 關節(jié)2角速度跟蹤誤差 表6 控制性能參數(shù)表 從表6可以直接看出,AFILC算法的系統(tǒng)誤差方差相比其他兩種控制方法都要小很多,穩(wěn)定性較好,雖然第二個關節(jié)的誤差最小值要高于其他兩種方法,但關節(jié)誤差范圍明顯更小,整體上AFILC算法要明顯優(yōu)于另外兩種方法。 圖15和圖16是3種控制方法關節(jié)角速度誤差變化過程圖,從圖中可以看出FILC在關節(jié)1和關節(jié)2的角速度跟蹤中產生的誤差波動較大,這是因為模糊規(guī)則在初始設定后不能進行適時修正的原因,作為對比,AFILC產生角速度的誤差明顯小于FILC,但略高于ILC,表明模糊規(guī)則受到了調整因子的影響,體現(xiàn)出了AFILC方法的自適應性。 對于工業(yè)生產中機械臂經常進行搬運物體等重復性的操作從而導致運動精確度下降問題,提出一種自調整因子模糊PD型迭代學習控制方法。設計了自調整因子模糊控制器,提高了系統(tǒng)的自適應性,并融合迭代學習控制方法得出系統(tǒng)的控制律,在SIMULINK中進行機械臂的運動控制仿真實驗,結果表明,所提控制方法產生的誤差最終可以達到0.000 1 rad,且角度誤差在進行第二次迭代時便趨于零,整體的控制效果較好,具有很強的實際意義。2.4 自調整因子模糊PD迭代學習控制器設計



3 仿真實驗
















4 結束語