基于FPGA的模糊PID控制器設計
摘要:針對實現(xiàn)傳統(tǒng)模糊PID控制器時,需要建立比例、積分和微分三個模糊控制器,存在模糊規(guī)則較繁雜、運算量大、速度慢等問題,提出了以PD模糊控制器代替P1模糊控制器,采用兩個PD模糊控制器,并引入FPGA技術,實現(xiàn)模糊PID控制器。通過QuartusⅡ和Matlab聯(lián)合仿真,比較了基于FBC和SBC實現(xiàn)的模糊PID控制器的控制效果,驗證了設計方案的正確性和可行性。
關鍵詞:模糊PID;控制器;FPGA:QuartusⅡ;Matlab
0 引言
采用常規(guī)方法實現(xiàn)模糊PID控制器,通常需要設計比例、積分和微分三個模糊推理系統(tǒng),由于每一項都需要相應的模糊控制器和模糊規(guī)則,存在運算量大,求解時間長,響應過程慢等問題,而且大量的模糊規(guī)則在實現(xiàn)時也需要消耗較多的邏輯資源。如果采用并行結構,以并行方式將PD模糊邏輯控制器PDFLC(PDFuzzy Logic Controller,PDFLC)和PIFLC,兩個模糊邏輯控制器模塊的輸出進行疊加,實現(xiàn)PIDFLC,同時引入FPGA技術,便可以解決上述問題。通過QuartusⅡ和Matlab聯(lián)合仿真,對設計方案進行了驗證。
1 基于FPGA的模糊PID控制器實現(xiàn)原理
基于FPGA的模糊PID控制器的芯片結構如圖1所示。控制器的輸入量是控制對象的實際輸出量yp(t)與期望輸出量yD(t)的差值??刂破鬟€需要接收4個8 b的數(shù)字信號,即表示比例增益KP、積分增益KI、微分增益KD和輸出增益KO的信號;此外還要有2 b的模式選擇信號,通過邏輯組合,選擇控制器的類型(PIFLC,PDFLC或PIDFLC的一種)。
在設計模糊PID控制器時,為節(jié)省FPGA的邏輯資源,一般不選擇含有三個模糊控制器的方案,而采用并行結構,將PDFLC和PIFLC兩個模糊控制器模塊的輸出相加,來實現(xiàn)PIDFLC。基于這種設想,先將PD控制器轉(zhuǎn)變成PI控制器,再將二者疊加。式(1)為PD控制器的位置表達式,式(2)為PI控制器的增量表達式。
u(n)=KPe(n)+KDr(n) (1)
△u(n)=KPr(n)+KIe(n) (2)
式中:e(n)為采樣誤差信號;r(n)為采樣誤差的變化率;△u(n)為控制量的增量。比較式(1)和式(2)可知,位置式的PD控制器可以轉(zhuǎn)換成增量式PI控制器,條件如下:
①r(n)和e(n)交換位置;
②KI取代KD;
③△u(n)取代u(n)。
圖2為基于上述原理的控制器的結構圖,圖中對PDFLC的輸出端求和(虛框部分),以代替PIFLC。
每一個PDFLC模塊均采用兩輸入單輸出的Mandani型模糊推理系統(tǒng),輸入的兩個信號分別為誤差信號和誤差信號的變化率。在進入模糊化之前,每一個輸入變量均乘以一個來自于PDFLC內(nèi)部的增益系數(shù)(KP和KI或KP和KD)。同樣,模糊化后輸出值也需乘一個來自于PDFLC內(nèi)部的增益系數(shù)(KO),PDFLC和PIFLC的輸出(uPDFLC和uPIFLC)之和作為PIDFLC的輸出(uPIDFLC)。模式選擇控制端的輸入變量決定輸出模式。由圖2可見PDFLC模塊是控制器設計中的核心,主要包括增益、模糊化、模糊推理和解模糊化模塊。
pid控制器相關文章:pid控制器原理
評論