1 引言
溫度是工業(yè)生產(chǎn)過程中一個主要的被控參數(shù)。目前,,大多采用常規(guī)PID控制器實現(xiàn)對溫度的控制,。PID控制器具有結(jié)構(gòu)簡單、易于實現(xiàn)且魯棒性好,、可靠性高等優(yōu)點(diǎn),,對可建立精確數(shù)學(xué)模型的定常系統(tǒng)具有很好的控制效果,但由于實際溫度控制系統(tǒng)工況復(fù)雜,、參數(shù)多變,、大慣性、大滯后,,常規(guī)PID控制器難以對其高精度進(jìn)行控制,。模糊控制魯棒性強(qiáng),無需被控對象的精確數(shù)學(xué)模型,,只依賴于操作人員的經(jīng)驗知識及操作數(shù)據(jù),,非常適用于控制非線性、時變和滯后系統(tǒng),,但其靜態(tài)性能較差,,因此應(yīng)用范圍受很大限制。針對這些問題,,這里提出一種基于FPGA的溫度模糊自適應(yīng)PID控制器設(shè)計方案,,該方案將傳統(tǒng)PID控制與現(xiàn)代模糊控制相結(jié)合,應(yīng)用模糊推理方法實現(xiàn)對PID參數(shù)的自動整定,。由此,,經(jīng)MATLAB仿真驗證該控制算法的可行性,將其應(yīng)用于恒溫箱的溫度控制,。該控制器對恒溫箱控制系統(tǒng)的控制效果明顯優(yōu)于常規(guī)PID控制器,。
2 模糊自適應(yīng)PID控制原理及結(jié)構(gòu)
模糊自適應(yīng)PID控制基本原理:以誤差e和誤差變化ec作為輸入,運(yùn)行中不斷檢測e和ec,,并利用模糊規(guī)則進(jìn)行模糊推理,,查詢模糊矩陣表調(diào)整參數(shù),,滿足不同時刻的e和ec對PID參數(shù)自整定的要求,利用模糊規(guī)則在線修改PID參數(shù),,以使被控對象具有良好的靜態(tài),、動態(tài)性能。模糊自適應(yīng)PID控制系統(tǒng)結(jié)構(gòu)如圖1所示,。
常規(guī)PID控制器作為一種線性控制器,,其離散的控制規(guī)律為:
對于系統(tǒng)被控過程中不同的|e|和|ec|,PID參數(shù)Kp,、KI,、KD的自整定原則如下:
(1)誤差|e|較大時,為加快系統(tǒng)的響應(yīng)速度,,使系統(tǒng)具有快速跟蹤性能,,應(yīng)取較大Kp和較小KD。同時,,為了防止積分飽和,。避免系統(tǒng)超調(diào)過大,應(yīng)限制KI或使其為零,。
(2)誤差|e|和|ec|中等時,,為使系統(tǒng)超調(diào)較小,應(yīng)取較小KP,,適當(dāng)KI和KD,,特別是KD的取值對系統(tǒng)響應(yīng)影響較大(一般取值較小)。
(3)誤差|e|較小時,,為使系統(tǒng)具有較好穩(wěn)態(tài)性能,,應(yīng)取較大KP和KI,。同時,,為避免系統(tǒng)在平衡點(diǎn)附近出現(xiàn)振蕩,應(yīng)取合適的KD值,。|ec|較大時,,取較小KD;|ec|較小時,,取較大KD,。
考慮到上述原則,在該設(shè)計中,,模糊控制器采用2輸入,,3輸出的結(jié)構(gòu)。以誤差e和誤差變化ec作為輸入,,經(jīng)量化和模糊化處理后,,查詢模糊控制規(guī)則表,,得到模糊輸出量KP、KI,、KD,,再經(jīng)解模糊和量化因子輸出精確量,并將該輸出量與傳統(tǒng)PID相結(jié)合輸出系統(tǒng)的控制量,。輸人語言變量e和ec以及輸出語言變量KP,、KI、KD的模糊集論域均設(shè)為{-6,,-5,,-4,-3,,-2,,-1,0,,1,,2,3,,4,,5,6},,取相應(yīng)論域上的語言值為{NB,,NM,NS,,ZO,,PS,PM,,PB},。考慮到對論域的覆蓋程度及靈敏度,,魯棒性和穩(wěn)定性等原則,,各模糊子集隸屬度函數(shù)均采用三角形隸屬函數(shù)。
模糊規(guī)則采用“if e is A and ec is B then KP is C and KI isD and KD is E”的方式,,控制器參數(shù)模糊推理過程采取Mam-dani直接推理法,,“與”運(yùn)算采用極小運(yùn)算,“或”運(yùn)算采用極大運(yùn)算,,模糊蘊(yùn)含運(yùn)算采用極小運(yùn)算,,模糊規(guī)則綜合采用極大運(yùn)算,去模糊化采用重心法且其計算公式為:
根據(jù)PID參數(shù)調(diào)整原則,,輸出量KP,、KI,、KD一輪決策將最多涉及147條推理規(guī)則。
3 恒溫箱溫度控制系統(tǒng)硬件電路設(shè)計
溫度控制目前大多采用以單片機(jī)或CPU為核心的控制系統(tǒng),,這些以軟件控制和運(yùn)算的系統(tǒng)相比于硬件系統(tǒng)速度要慢,、實時性差且可靠性低。
FPGA作為一種新型的數(shù)字邏輯器件,,具有集成度高,、可重復(fù)編程、邏輯實現(xiàn)能力強(qiáng),、設(shè)計靈活等特點(diǎn),,使用其內(nèi)部邏輯模塊單元實現(xiàn)所需功能,各個模塊并行運(yùn)行,,這使得系統(tǒng)運(yùn)算速度快,、實時性強(qiáng)。與傳統(tǒng)的基于CPU并行計算不同,,F(xiàn)PGA內(nèi)部結(jié)構(gòu)真正實現(xiàn)并行計算,,不是宏觀上并行而是微觀上分時運(yùn)算。
該設(shè)計采用Ahera公司的Cyclone系列FPGA器件EP1C12為核心控制器來測量與控制恒溫箱內(nèi)溫度,。通過鍵盤向FPGA輸入設(shè)定溫度,,現(xiàn)場溫度參數(shù)由熱電偶傳感器轉(zhuǎn)換成電動勢信號,經(jīng)A/D轉(zhuǎn)換和濾波后,,將實時的數(shù)字測量值送入FPGA,。FPGA將比較溫度的設(shè)定值與測量值,經(jīng)模糊自適應(yīng)PID控制算法運(yùn)算處理后,,輸出相應(yīng)控制信號,,確保恒溫箱內(nèi)溫度變化范圍始終保持在設(shè)定值的誤差范圍內(nèi)。系統(tǒng)的液晶顯示用于實時顯示控制系統(tǒng)的當(dāng)前溫度值,、溫度變化曲線,、參數(shù)配制等信息;鍵盤用于設(shè)定控制系統(tǒng)的初始定值及初始參數(shù)信息,;Flash,,SDRAM,,I2C等用于實現(xiàn)存儲空間的擴(kuò)展,。圖2為系統(tǒng)整體硬件結(jié)構(gòu)框圖。
此外,,在FPGA中還集成有Altera公司提供的NIOS II軟核處理器,,F(xiàn)PGA一方面通過內(nèi)部的雙口RAM與其內(nèi)部的硬件邏輯控制模塊進(jìn)行通訊,獲取控制模塊的狀態(tài)信息并配置其參數(shù),;另一方面監(jiān)控顯示模塊和鍵盤模塊,。FPGA內(nèi)部邏輯示意圖如圖3所示,。
模糊自適應(yīng)PID控制模塊是整個控制系統(tǒng)的核心,可實現(xiàn)模糊參數(shù)自整定PID控制算法,。為便于實現(xiàn)計算機(jī)的實時控制,,采用離線計算,在線查表方式,。如有需要,,只需重新修改控制算法模塊,并重新配置FPGA,,就可實現(xiàn)控制算法升級,。FPGA內(nèi)部各硬件邏輯控制模塊均通過VHDL硬件描述語言編程實現(xiàn)。VHDL是一種自上而下的設(shè)計方法,,具有優(yōu)秀的可移植性,、EDA平臺的通用性及與具體硬件結(jié)構(gòu)的無關(guān)性等特點(diǎn)。與用常規(guī)順序執(zhí)行的計算機(jī)程序不同,,VHDL根本上是并發(fā)執(zhí)行的,,這在很大程度上可提高自適應(yīng)PID溫度控制系統(tǒng)的處理速度,有效提高設(shè)計效率,,改善溫度控制效果,。
4 嵌入式軟件設(shè)計
基于NIOS軟核CPU的嵌入式軟件設(shè)計采用C語言編寫完成,該嵌入式軟件設(shè)計主要實現(xiàn)人機(jī)交互和模糊自適應(yīng)PID控制模塊監(jiān)控兩部分功能,,總體流程如圖4所示,。
溫度控制系統(tǒng)上電啟動后,首先初始化系統(tǒng),,然后模糊自適應(yīng)PID控制模塊讀雙口RAM1獲得控制器的初始參數(shù)信息,,并進(jìn)行控制運(yùn)算,根據(jù)運(yùn)算所得結(jié)果在顯示屏上顯示當(dāng)前溫度控制系統(tǒng)的參量及溫度變化曲線等當(dāng)前狀態(tài)信息,,同時將這些實時控制參數(shù)及狀態(tài)信息寫入雙口RAM2保存,,NIOS軟核處理器再由RAM2中讀取數(shù)據(jù),獲得模糊自適應(yīng)PID控制模塊的當(dāng)前狀態(tài)信息,。若由鍵盤重新輸入新的溫度設(shè)定值,,則當(dāng)系統(tǒng)讀取到該值時,自動查詢模糊控制規(guī)則表修改雙口RAM1中的配置參數(shù)值,,重新代入模糊自適應(yīng)PID控制模塊進(jìn)行運(yùn)算,,并將新的參數(shù)值及系統(tǒng)實時狀態(tài)信息寫入雙口RAM2保存且反饋給NIOS軟核;若無鍵盤輸入,。則系統(tǒng)狀態(tài)保持不變,。
5 溫度模糊自適應(yīng)PID控制系統(tǒng)仿真
利用MATLAB的simulink和Fuzzy logic toolbox工具箱仿真模糊自適應(yīng)PID溫度控制系統(tǒng),圖5為其仿真模型。在此,,假定以恒溫箱為被控對象的傳遞函數(shù)為:[0.15,,(80s+1)]exp(-2s)模糊自適應(yīng)PID和傳統(tǒng)PID仿真比較,結(jié)果如圖6所示,,可看出模糊自適應(yīng)PID控制比傳統(tǒng)PID控制的調(diào)節(jié)時間短,,響應(yīng)速度快,超調(diào)量小,,系統(tǒng)的動,、靜態(tài)性能均有提高。
6 實際運(yùn)行結(jié)果及存在問題
設(shè)定恒溫箱的目標(biāo)溫度為80℃,,系統(tǒng)運(yùn)行中的調(diào)節(jié)時間為400 s,,超調(diào)量為5%,在系統(tǒng)穩(wěn)定運(yùn)行時加入階躍干擾信號,,經(jīng)約300 s后系統(tǒng)重新趨于穩(wěn)定,,且在此過程中產(chǎn)生的波動較小。
因此,,對于具有大慣性,、大滯后等特點(diǎn)的溫度控制系統(tǒng),基于FPGA的溫度模糊自適應(yīng)PID控制器可取得良好的控制效果且自適應(yīng)能力強(qiáng),。但在控制器的應(yīng)用過程中仍存在一些問題,,如模糊規(guī)則和隸屬函數(shù)的優(yōu)化、系統(tǒng)抗干擾性能的增強(qiáng)等,。因此,,仍需進(jìn)一步完善和修改該控制系統(tǒng)。
7 結(jié)論
該設(shè)計基于高密度的可編程邏輯器件FP-GA,,在傳統(tǒng)PID控制器的基礎(chǔ)上利用模糊控制的優(yōu)點(diǎn)控制恒溫箱的溫度,。結(jié)果表明,該控制系統(tǒng)具有良好的動,、靜態(tài)性能和魯棒性能,,對參數(shù)時變具有很好的適應(yīng)能力,實時計算量小,,調(diào)校方便,,且具有良好的升級性能和靈活性。市場應(yīng)用前景較好,。