花義鋒+王文標(biāo)+汪思源+李傳金
摘 要:水浴控制系統(tǒng)不容易確定其精確的數(shù)學(xué)模型,所以較為難控,普通的PID不能實(shí)現(xiàn)提前調(diào)節(jié),易產(chǎn)生過大的超調(diào)。設(shè)計(jì)了模糊控制與PID動態(tài)切換控制器對水浴溫度實(shí)時(shí)控制,用PLC完成了數(shù)據(jù)的采集與反饋。由于數(shù)據(jù)的實(shí)時(shí)處理與反饋由PLC完成較慢且難以實(shí)現(xiàn),因此,采用了Matlab,通過OPC與Wincc的無縫結(jié)合實(shí)現(xiàn)了數(shù)據(jù)的實(shí)時(shí)運(yùn)算。實(shí)驗(yàn)表明,采用模糊PID的動態(tài)控制很好地控制了溫度的超調(diào)量,并可以快速地使溫度最終穩(wěn)定下來,提高了控制系統(tǒng)的實(shí)現(xiàn)性和精確性。
關(guān)鍵詞:模糊控制;PID控制;動態(tài)切換;PLC
中圖分類號:TP273.4 文獻(xiàn)標(biāo)識碼:A DOI:10.15913/j.cnki.kjycx.2016.20.016
文章編號:2095-6835(2016)20-0016-03
由于科學(xué)技術(shù)的進(jìn)步使控制系統(tǒng)中的被控對象和過程越來越復(fù)雜,當(dāng)控制對象缺乏精確的數(shù)學(xué)模型或僅能提供一些模糊信息時(shí),傳統(tǒng)的控制方式難以奏效。為了解決精確性與復(fù)雜性的矛盾,需要加入人的思維和經(jīng)驗(yàn)。在這樣的需要下,模糊控制技術(shù)得以發(fā)展并應(yīng)用在實(shí)際的控制系統(tǒng)中。模糊控制可以快速地使系統(tǒng)趨于穩(wěn)定值,但卻存在穩(wěn)態(tài)誤差,單純憑自身控制特點(diǎn)很難消除誤差。PID技術(shù)可以消除穩(wěn)態(tài)誤差,但其快速性與超調(diào)量之間是不可協(xié)調(diào)的矛盾。本文結(jié)合多次實(shí)際的控制以及從應(yīng)用角度出發(fā),將兩者有機(jī)結(jié)合起來,發(fā)揮各自的優(yōu)點(diǎn),提出了一種模糊PID的動態(tài)切換控制算法。
1 模糊控制系統(tǒng)的組成以及結(jié)構(gòu)分析
1.1 模糊控制系統(tǒng)
模糊控制系統(tǒng)的核心是智能性的模糊控制器,它基于人對特定對象控制的過程中總結(jié)出來的控制策略上形成一系列以“if(條件)then(控制量)”的條件語句,即控制規(guī)則。一個(gè)模糊控制系統(tǒng)的準(zhǔn)確度主要取決于模糊控制器所用的模糊規(guī)則、合成的推理算法以及模糊決策等。模糊控制器的基本原理如圖1所示。
1.2 模糊控制器的結(jié)構(gòu)
模糊控制器主要由4部分組成:模糊化、知識庫、模糊推理、去模糊化。
1.2.1 模糊化
實(shí)際誤差e以及誤差變化ec的精確量經(jīng)過模糊化變?yōu)槟:俊S山o定值與實(shí)際值得到的誤差e以及ec是非模糊變量,他們的論域是實(shí)際中的真實(shí)范圍。在模糊控制器中,把他們的真實(shí)論域變?yōu)閮?nèi)部論域,論域變化后相當(dāng)于乘了一個(gè)系數(shù),即量化因子。經(jīng)過論域變換后e以及ec仍是精確量,把他們分為多個(gè)模糊集合,一般分為7個(gè)集合NB(負(fù)大)、NM(負(fù)中)、NS(負(fù)?。(零)、PS(正小)、PM(正中)、PB(正大),并規(guī)定各個(gè)模糊子集的隸屬函數(shù)。計(jì)算出e和ec屬于各個(gè)模糊集合的隸屬度,進(jìn)一步判斷出他們屬于的模糊集合。此時(shí),e和ec就由精確量變成了模糊變量,完成了第一步的模糊化。
本次實(shí)驗(yàn)中結(jié)合實(shí)際被控對象與被控量的特點(diǎn),把e的論域分為{-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},ec的論域分為{-0.6,-0.5,-0.4,-0.3,-0.2,-0.1,0,0.1,0.2,0.3,0.4,0.5,0.6},輸出量的變化量△U論域分為{-4,-3,-2,-1,0,1,2,3,4,5,6,7}。
1.2.2 知識庫
知識庫中包含了具體控制對象的控制要求,它是由數(shù)據(jù)庫與控制庫兩部分組成。
控制庫存有模糊規(guī)則。模糊規(guī)則是設(shè)計(jì)模糊控制器的核心,模糊規(guī)則的確定直接影響著模糊控制器的精確度。模糊規(guī)則一般用“if...then...”形式表示的模糊條件語句,在本次試驗(yàn)中是使用的雙輸入單輸出,具體形式分別如下:
1)if e is NB and ec is NB,then u is PB;
2)if e is NB and ec is NM,then u is PB;
……
49)if e is PB and ec is PB,then u is NB;
1.2.3 模糊規(guī)則與推理
模糊規(guī)則建立的基本思想為:當(dāng)誤差大或較大時(shí),選擇控制量以盡快消除誤差為主;而當(dāng)誤差較小時(shí),選擇控制量是要注意防止超調(diào),以系統(tǒng)的穩(wěn)定性為主要的考慮點(diǎn)。
考慮到被控對象水浴的遲滯性以及通過多次實(shí)驗(yàn)的總結(jié)對規(guī)則進(jìn)行修改,最終形成的控制規(guī)則表如表1所示。
平均值X0便是應(yīng)用重心法為模糊集合U求得的判決結(jié)果。
2 模糊PID動態(tài)切換控制系統(tǒng)的設(shè)計(jì)
在誤差較大時(shí),采用單純的模糊控制可使系統(tǒng)快速的趨近設(shè)定值。當(dāng)誤差較小時(shí)切換到PID控制,利用PID的控制精確、靜態(tài)誤差小的特點(diǎn)來完成系統(tǒng)的精確控制。兩種控制方法的結(jié)構(gòu)相對簡單,模糊控制在MATLAB中完成數(shù)據(jù)的運(yùn)算,動態(tài)切換以及PID的控制在PLC中完成。
3 切換時(shí)機(jī)的分析
經(jīng)過多次的實(shí)驗(yàn)得出被控對象(水域)是一種滯后較強(qiáng)、非對稱的控制系統(tǒng),對于超調(diào)在沒有外界的輔助下,較長時(shí)間后才能回到設(shè)定值,且在前期被控對象的變化速率較慢。當(dāng)控制量達(dá)到一定程度時(shí),變化速率與控制量是一種非線性的關(guān)系。當(dāng)閾值過小時(shí),在誤差大于閾值時(shí)系統(tǒng)會處于模糊控制階段。由于被控對象在實(shí)際控制過程中的變化率并不總為正或負(fù),而是處于正負(fù)的交替變化中。變化率的正負(fù)變化一直激勵著模糊控制規(guī)則庫,使模糊控制的控制輸出量處于方向相反的波動中,輸出量的正反波動使實(shí)際測量值處于波動中,測量值的波動進(jìn)一步加劇了變化率的正負(fù)變化,導(dǎo)致控制系統(tǒng)處于頻繁的波動中,模糊控制很難找到穩(wěn)定點(diǎn),即使找到相對的穩(wěn)定值,但消耗的時(shí)間會較長。經(jīng)過分析和實(shí)驗(yàn)最終確定模糊控制與PID的動態(tài)切換閾值為設(shè)定值的1/6,這是比較理想的閾值。
4 實(shí)驗(yàn)設(shè)計(jì)與分析
4.1 Matlab與Wincc連接
在實(shí)時(shí)溫控系統(tǒng)中,要求對誤差以及誤差變化進(jìn)行實(shí)時(shí)處理,并將結(jié)果實(shí)時(shí)傳遞給執(zhí)行機(jī)構(gòu)。Wincc不能完成計(jì)算量較大的運(yùn)算,所以,將MATLAB與Wincc相連,MATLAB作為Wincc的客戶端,Wincc作為PLC的上位機(jī),將MATLAB處理得到的控制量變化量傳遞給PLC,并對測量值、輸出值的變化進(jìn)行實(shí)時(shí)監(jiān)控。
Matlab中的控制系統(tǒng)平臺如圖2所示。
4.2 實(shí)驗(yàn)參數(shù)的選取
在實(shí)驗(yàn)中將e的量化因子隨初始值、設(shè)定值的不同而依據(jù)公式確定,保證了系統(tǒng)的精確性,而ec的量化因子設(shè)為2,防止其超調(diào)過大,因此,在溫度上升與下降的過程中,對控制量的變化量的比例因子設(shè)為0.2,有效地使輸出值在穩(wěn)定后處于穩(wěn)定狀態(tài)。
5 實(shí)驗(yàn)結(jié)果比較分析
為了驗(yàn)證控制算法的使用性和穩(wěn)定性,在實(shí)驗(yàn)室中以水浴為控制對象,用300 W的加熱棒進(jìn)行了水域加熱。分別用單純PID和模糊PID動態(tài)切換控制進(jìn)行了實(shí)驗(yàn),控制水量為1 000 mL,初始溫度為20 ℃,設(shè)定值為45 ℃,模糊PID切換的閾值為給定值的1/6.
PID的系數(shù)kp=7、ki=0.023、kd=0.023。單純的PID需要20 min才可以基本穩(wěn)定下來,在輸出值穩(wěn)定之后,再給一個(gè)25 ℃的階躍,單純PID系統(tǒng)的反應(yīng)時(shí)間為19 min,輸出值會再次穩(wěn)定下來。
對于初始值和設(shè)定值,在保證PID系數(shù)不變的情況下,模糊PID動態(tài)切換控制完成控制過程只需要13 min。在給了25 ℃的階躍后,系統(tǒng)反應(yīng)時(shí)間為10 min,與單純的PID相比大大縮短了反應(yīng)時(shí)間。具體如圖3和圖4所示。
6 結(jié)束語
本文介紹了模糊控制在Matlab與Wincc無縫連接的環(huán)境下進(jìn)行的水溫控制實(shí)驗(yàn)。通過多次的實(shí)驗(yàn)以及對規(guī)則的修改,最終確定了模糊規(guī)則以及與PID的動態(tài)切換,并將控制算法在實(shí)際控制中進(jìn)行了驗(yàn)證。由實(shí)驗(yàn)結(jié)果可得出模糊PID動態(tài)切換憑其優(yōu)越性可很好地完成水溫控制,提升了控制系統(tǒng)的實(shí)時(shí)性、穩(wěn)定性和魯棒性。
參考文獻(xiàn)
[1]李士勇.模糊控制[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2011.
[2]陶權(quán).基于PLC的過程控制實(shí)驗(yàn)裝備溫度模糊PID控制[J].自動化技術(shù)與應(yīng)用,2010(04).
[3]齊琳.模糊PID動態(tài)切換控制算法的研究[D].北京:北京交通大學(xué),2008.
[4]楊世勇.模糊控制與PID控制的對比及復(fù)合控制.[J]自動化技術(shù)與應(yīng)用,2011(12).
[5]李巖.模糊PID控制在液位控制中的應(yīng)用[D].安徽:合肥工業(yè)大學(xué),2008.
[6]路桂明.基于模糊PID控制的電鍋爐溫度控制系統(tǒng)的研究[D].哈爾濱:哈爾濱理工大學(xué),2007.
[7]劉金琨.先進(jìn)PID控制的Matlab仿真[M].北京:電子工業(yè)出版社,2011.
[8]宗超凡.基于雙控制器切換的模糊PID勵磁控制的仿真研究[J].電氣時(shí)代,2015(09).