陳毅維 徐淑萍 懂齊宇
摘要:為了便于研究變論域模糊pid控制算法,總結(jié)了3種可以在matlab/simulink下實現(xiàn)該算法的仿真方法。仿真結(jié)果表明,在對步進電機的控制中,模糊pid算法對常規(guī)pid算法性能改善有限,而變論域模糊pid算法能顯著改善常規(guī)pid算法的性能?;趕-funciton的仿真方法更具靈活性,但要求一定的matlab基礎(chǔ);基于函數(shù)模型的仿真方法實現(xiàn)簡單,容易上手;基于模糊規(guī)則的仿真方法曲線整體趨勢可控,但是細節(jié)上不確定。
關(guān)鍵詞:變論域;模糊pid;仿真方法
變論域思想[1]是在不改變模糊規(guī)則的前提下,使輸入、輸出的基本論域按照一定準則,隨著誤差的變小而收縮、隨著誤差的變大而擴展,隨之帶動定義在基本論域上的模糊劃分的變化。它一般利用伸縮因子對輸入、輸出變量的值進行縮放的形式,達到等效于變論域效果的目的。能夠有效的解決模糊控制器在設(shè)計與控制時出現(xiàn)的給定控制值附近的周期性波動、抗干擾性差等問題,并消除控制死區(qū),以促使控制效果更好。變論域思想的實現(xiàn)[2],在幾何上表現(xiàn)為:論域縮放導(dǎo)致的隸屬函數(shù)的伸縮;在代數(shù)上表現(xiàn)為:自變量值的伸縮變化導(dǎo)致因變量的值的變化;在控制上表現(xiàn)為:論域的伸縮導(dǎo)致規(guī)則密度的改變。
要用matlab/simulink仿真,通常有三種方法,但是文獻中,一般只介紹基于函數(shù)模型、基于模糊規(guī)則的伸縮因子[1-5],且沒有具體仿真方法,這給剛剛接觸該算法的人帶來了不必要的麻煩與開銷,本文的目的在于使剛接觸到該算法的人能快速熟悉其仿真。
1變論域模糊控制原理
設(shè)輸入變量xi(i=1,2,…,n)的論域為Xi=[-E,E](i=1,2,…,n),輸出變量y的論域為Y=[-U,U],Xi與Y的模糊劃分為{Aij}、{Bj}(1≤j≤m), Xij與Yj是模糊集Aij和Bj的中心,xk與yk+1分別是k時刻的輸入、輸出變量,ai(xi)與β(y)為輸入和輸出論域的伸縮因子(k=0時,α=β=1),模糊推理規(guī)則為
IF x1 is A1j and x2 is A2j and … and xn is Anj,
Then y is Bj, j =1, …, m ,其中
在控制過程中,輸入論域Xki、輸出論域Yk分別為:
(1)
(2)
為了便于討論,采用單值模糊器,其模糊規(guī)則可以表示為:
(3)
其中 是模糊集Aij上的隸屬度函數(shù)。
在k時刻,對于輸入xk,有
(4)
(5)
由式(1),(4)得,
于是有,
(6)
故根據(jù)式(3),(5),(6),可得變論域模糊控制算法規(guī)則,描述如下:
在k時刻,對于輸入 ,其控制器輸入為
(7)
由(7)式可知,只需要使用k=0時刻的隸屬度函數(shù) 、初始輸出論域Y0上的模糊集Bj的中心,以及響應(yīng)的伸縮因子,便可以計算得到輸出yk+1。
圖1是變論域示意圖,看圖中虛線及一實一虛兩點,不難發(fā)現(xiàn),縮小論域意味著要放大輸入、輸出量的值,膨脹論域意味著要縮小輸入、輸出量的值。也就是說,如果伸縮因子α、β滿足條件0<α、β<1時,VUOn(n=1,...,6)(變論域操作,見圖8-10)做除法運算能放大值縮小論域,做乘法運算縮小值膨脹論域。
2 設(shè)計與仿真方法
2.1 變論域模糊pid控制算法的結(jié)構(gòu)
如圖2,變論域模糊pid控制算法(VUFPID)是在常規(guī)pid控制算法的基礎(chǔ)上增加了模糊控制器、論域控制器兩部分構(gòu)成的。模糊控制器的輸入為e(誤差)和ec(誤差變化率),它經(jīng)過模糊化、模糊推導(dǎo)、解模糊等過程,輸出ΔKp、ΔKi、ΔKd中的一個到三個,作為常規(guī)pid控制算法的對應(yīng)系數(shù)Kp、Ki和Kd的增量,如此便是模糊自適應(yīng)pid控制算法。論域控制器通常的輸入也是e和ec,它的輸出是αe、αec、βp、βi、βd中的一個至五個;α、β系數(shù)分別作為模糊控制器的輸入(e、ec)、輸出(ΔKp、ΔKi、ΔKd)項的伸縮因子。
2.2 變論域模糊pid在matlab中的仿真方法
simulink是matlab中的可視化仿真工具,廣泛應(yīng)用于線性系統(tǒng)、非線性系統(tǒng)、數(shù)字控制以及數(shù)字信號處理的建模和仿真中。在simulink中,要實現(xiàn)變論域模糊pid算法的仿真,通常有3種做法。
2.2.1基于s-function的變論域模糊pid算法仿真方法
基于s-function方法的仿真圖如圖3所示,這種方法的使用龍祖強[6]等人已經(jīng)做了較為詳細的介紹,并且取得了不錯的結(jié)果,在這里不再贅述。
圖4是以下兩種方法的仿真框架,圖中的子系統(tǒng)(subsystem)將被各自的仿真圖替換。
2.2.2基于函數(shù)模型的變論域模糊pid算法仿真方法
論域控制器是實現(xiàn)變論域控制的核心機構(gòu),而基于函數(shù)模型的變論域控制算法是指:輸出與輸入的伸縮因子滿足于一定的函數(shù)關(guān)系。
為了便于仿真,這里選取伸縮因子α、β為:
如圖5所示,模糊控制器(Fuzzy Logic Controller)是2輸入(e、ec),3輸出(ΔKp、ΔKi、ΔKd)系統(tǒng),5個端口基本論域均為[-3,3],采用三角形隸屬度函數(shù),論域上的模糊集為{NB,NM,NS,ZO,PS,PM,PB},表示負大、負中、負小、零、正小、正中、正大7種狀態(tài)。隸屬度函數(shù)見圖6,模糊規(guī)則見表1,輸入、輸出變論域控制器(IVUC和OVUC)見圖8、9,系數(shù)λ=0.3,τ=0.8,ε=0.001,E=3;其中VUO1-2用來實現(xiàn)論域的放大與縮小。
2.2.3基于模糊規(guī)則的變論域模糊pid算法仿真方法
如圖10所示,模糊控制器(Fuzzy Logic Controller)的隸屬度函數(shù)與模糊規(guī)則和基于函數(shù)的變論域方法中一樣;變論域控制器(Fuzzy Logic Controller1)是一個2輸入(e、ec),2輸出(α、β)系統(tǒng),通過VUO1-6可以控制論域的縮放。其輸入的基本論域與隸屬度函數(shù)與模糊控制器的輸入一樣,見圖6;但是,其輸出基本論域為[0,1],定義在其本論域上的模糊集為{ZO,SS,SB,MS,MB,BS,BB},表示零、小小、小大、中小、中大、大小、大大7個狀態(tài)。其隸屬度函數(shù)見圖7,模糊規(guī)則見表2。
3仿真結(jié)果
步進電機的傳遞函數(shù):
(8)
式中:Tm——最大靜轉(zhuǎn)矩,Zr——轉(zhuǎn)子齒數(shù),J——轉(zhuǎn)動慣量,B——阻尼系數(shù)。
取J=0.48(kg.m2),B=0.8(N.m.s/rad),Tm=0.9(N.M),Zr=50,代入(8)式,得到步進電機的傳遞函數(shù)G1(s):
(9)
仿真時,取Kp=15.15,Ki=78.5,Kd=3.83,Ke=1/1,Kec=1/6,Ku=1/3,結(jié)果如圖11所示,其中vufpid1是基于模糊規(guī)則的變論域方法,vufpid2是基于函數(shù)模型的變論域方法,它們都取得了比較好的控制效果,可以看出都改善了曲線的震蕩幅度,加快了曲線的收斂速度;而模糊pid算法在這個系統(tǒng)中對pid算法的控制效果的提升相對而言要小得多。
4結(jié)論
基于s-funciton的仿真方法相交其他兩種方法來說,具有更高的靈活性,其內(nèi)部實現(xiàn)可以采用基于其它兩種方法的伸縮因子,但是要求具備一定的matlab基礎(chǔ);基于函數(shù)模型的仿真方法實現(xiàn)起來最為簡單,其伸縮因子受控于所選擇的函數(shù)模型,容易控制,且上手快;基于模糊規(guī)則的仿真方法,其伸縮因子取決于模糊規(guī)則的優(yōu)劣,要提升其性能就要大量的時間實踐改進,整體趨勢是可控的,但是細節(jié)上是不確定的。
參考文獻:
[1]李洪興.變論域自適應(yīng)模糊控制器[J].中國科學(xué):技術(shù)科學(xué), 1999,25(1):32-42.
[2]張衛(wèi)東.變論域模糊控制器改進設(shè)計及其仿真[D].哈爾濱工業(yè)大學(xué),2012.
[3]朱巖,郭軍平.變論域自適應(yīng)模糊PID方法的研究與仿真[J].空軍工程大學(xué)學(xué)報:自然科學(xué)版,2005,6(5):11-13.
[4]裘智峰,黃燈等.基于變論域插值模糊PID控制系統(tǒng)的研究與應(yīng)用[J].儀器儀表學(xué)報,2008,(11):2435-2440.
[5]禹牛云,朱穎合.變論域自適應(yīng)模糊PID控制器的設(shè)計與仿真[J].中國水運(下半月),2010,10(1):63-65.
[6]龍祖強,許岳兵等.MATLAB環(huán)境下變論域模糊控制算法的仿真方法[J].衡陽師范學(xué)院學(xué)報,2009,(6):34-36.
作者簡介:陳毅維(1993-),男,西安工業(yè)大學(xué),碩士研究生,主要從嵌入式方面的研究.
基金資助:陜西省教育廳資助項目(17JK0381)