文/張佳 代小宇 顧建軍
電阻爐是在我國(guó)應(yīng)用較廣的一種被控對(duì)象,其溫度變化非線性,難以精確建模,優(yōu)化這樣的系統(tǒng)控制性能是大多數(shù)工程師所需要解決的問(wèn)題。傳統(tǒng)PID控制主要適用于線性控制對(duì)象,在控制這類對(duì)象時(shí)可能會(huì)出現(xiàn)難以控制的現(xiàn)象。而模糊控制是依據(jù)操控人員的經(jīng)驗(yàn),通過(guò)查表來(lái)得到控制量,更加智能化。本文將以電阻爐溫控系統(tǒng)為引導(dǎo),主要研究其核心控制器的原理及具體實(shí)現(xiàn)。
電阻爐裝置是一個(gè)閉環(huán)反饋控制系統(tǒng),是具有自平衡能力的對(duì)象,可用二階慣性和滯后環(huán)節(jié)來(lái)近似描述,而通過(guò)參數(shù)辨識(shí)可以將二階不振蕩系統(tǒng)降為一階模型,則電阻爐溫度控制系統(tǒng)模型的傳遞函數(shù)可以表示為:
式中K為放大系數(shù),τ0為純滯后時(shí)間,T為時(shí)間系數(shù)。在現(xiàn)實(shí)的控制中,因需要考慮到種種因素,使得上述數(shù)學(xué)模型與實(shí)際非常不符,因此選用PID算法與模糊控制結(jié)合的方式對(duì)本系統(tǒng)進(jìn)行設(shè)計(jì)。
模糊自整定PID控制基于PID算法,通過(guò)計(jì)算當(dāng)前系統(tǒng)設(shè)定值與反饋值之間的誤差e和誤差變化率ec,在控制過(guò)程中實(shí)時(shí)計(jì)算e和ec,找出其與Kp,Ki,Kd之間的模糊關(guān)系,并查詢模糊規(guī)則表實(shí)時(shí)地輸出對(duì)應(yīng)的控制量。本文用FPGA技術(shù)實(shí)現(xiàn)設(shè)計(jì),需要進(jìn)行離散化處理,離散的PID表達(dá)形式如下:
上式的計(jì)算可以很方便的利用FPGA中的函數(shù)模塊實(shí)現(xiàn),相比于原PID公式大大減輕了計(jì)算量,加快了運(yùn)算速度,提高了系統(tǒng)性能。
圖1:頂層電路圖
除其靈活性、高集成、低功耗的優(yōu)點(diǎn),本文用FPGA來(lái)實(shí)現(xiàn)核心控制器部分,還避免了不必要的硬件開(kāi)銷,提高了系統(tǒng)的運(yùn)行速度和可靠性。設(shè)計(jì)可分為4個(gè)模塊:誤差及誤差變化量產(chǎn)生模塊、模糊量化模塊、查找表模塊以及乘加模塊。
本模塊輸入為設(shè)定值與反饋值,輸出為其誤差及誤差變化量。利用QuartusII軟件中自帶的LPM_ ADD_ SUB函數(shù)即可實(shí)現(xiàn)該模塊。
量化模塊的基本思路是:首先將基本論域分為若干段,每一段對(duì)應(yīng)于一個(gè)語(yǔ)言值,確定輸入的精確值落入哪一段,此段對(duì)應(yīng)的語(yǔ)言值即為此精確量的量化值。利用QuartusII里自帶的LPM_ COMPARE函數(shù)模塊以及編碼器完成設(shè)計(jì)。
本文的模糊查找表用MATLAB離線生成,通過(guò)自帶的模糊邏輯工具箱,可以自定義設(shè)置隸屬度函數(shù)、建立模糊規(guī)則等來(lái)建立并測(cè)試模糊邏輯系統(tǒng),利用仿真功能建立該系統(tǒng)模型,輸入所有e和ec的不同組合到該模型中求出不同情況下PID三個(gè)參數(shù)的值。
設(shè)置三個(gè)變量A,B,C如下:將A, B, C與e和ec進(jìn)行特定的乘加運(yùn)算,即可等價(jià)為式(2),由此將計(jì)算更加簡(jiǎn)化。在Quartus II里用ROM模塊來(lái)存放查找表,e與ec的量化地址作為ROM的輸入。
調(diào)用QuartusII里自帶的lpm_mult及parallel_ add函數(shù)模塊完成下式的運(yùn)算:
得到最終的控制量△u。
如圖1所示。
本文基于FPGA技術(shù)設(shè)計(jì)了模糊自整定PID控制器實(shí)現(xiàn)對(duì)電阻爐溫控系統(tǒng)的控制,設(shè)計(jì)采用線下生成查找表,實(shí)時(shí)查表計(jì)算的模糊自整定PID算法,并在QuartusII軟件上利用原理圖設(shè)計(jì)方法完成設(shè)計(jì)并且仿真,據(jù)仿真結(jié)果顯示,此設(shè)計(jì)方案可行。