基于FPGA的溫度模糊自適應(yīng)PID控制器的設(shè)計
此外,在FPGA中還集成有Altera公司提供的NIOS II軟核處理器,F(xiàn)PGA一方面通過內(nèi)部的雙口RAM與其內(nèi)部的硬件邏輯控制模塊進行通訊,獲取控制模塊的狀態(tài)信息并配置其參數(shù);另一方面監(jiān)控顯示模塊和鍵盤模塊。FPGA內(nèi)部邏輯示意圖如圖3所示。
模糊自適應(yīng)PID控制模塊是整個控制系統(tǒng)的核心,可實現(xiàn)模糊參數(shù)自整定PID控制算法。為便于實現(xiàn)計算機的實時控制,采用離線計算,在線查表方式。如有需要,只需重新修改控制算法模塊,并重新配置FPGA,就可實現(xiàn)控制算法升級。FPGA內(nèi)部各硬件邏輯控制模塊均通過VHDL硬件描述語言編程實現(xiàn)。VHDL是一種自上而下的設(shè)計方法,具有優(yōu)秀的可移植性、EDA平臺的通用性及與具體硬件結(jié)構(gòu)的無關(guān)性等特點。與用常規(guī)順序執(zhí)行的計算機程序不同,VHDL根本上是并發(fā)執(zhí)行的,這在很大程度上可提高自適應(yīng)PID溫度控制系統(tǒng)的處理速度,有效提高設(shè)計效率,改善溫度控制效果。
4 嵌入式軟件設(shè)計
基于NIOS軟核CPU的嵌入式軟件設(shè)計采用C語言編寫完成,該嵌入式軟件設(shè)計主要實現(xiàn)人機交互和模糊自適應(yīng)PID控制模塊監(jiān)控兩部分功能,總體流程如圖4所示。
溫度控制系統(tǒng)上電啟動后,首先初始化系統(tǒng),然后模糊自適應(yīng)PID控制模塊讀雙口RAM1獲得控制器的初始參數(shù)信息,并進行控制運算,根據(jù)運算所得結(jié)果在顯示屏上顯示當前溫度控制系統(tǒng)的參量及溫度變化曲線等當前狀態(tài)信息,同時將這些實時控制參數(shù)及狀態(tài)信息寫入雙口RAM2保存,NIOS軟核處理器再由RAM2中讀取數(shù)據(jù),獲得模糊自適應(yīng)PID控制模塊的當前狀態(tài)信息。若由鍵盤重新輸入新的溫度設(shè)定值,則當系統(tǒng)讀取到該值時,自動查詢模糊控制規(guī)則表修改雙口RAM1中的配置參數(shù)值,重新代入模糊自適應(yīng)PID控制模塊進行運算,并將新的參數(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 實際運行結(jié)果及存在問題
設(shè)定恒溫箱的目標溫度為80℃,系統(tǒng)運行中的調(diào)節(jié)時間為400 s,超調(diào)量為5%,在系統(tǒng)穩(wěn)定運行時加入階躍干擾信號,經(jīng)約300 s后系統(tǒng)重新趨于穩(wěn)定,且在此過程中產(chǎn)生的波動較小。
因此,對于具有大慣性、大滯后等特點的溫度控制系統(tǒng),基于FPGA的溫度模糊自適應(yīng)PID控制器可取得良好的控制效果且自適應(yīng)能力強。但在控制器的應(yīng)用過程中仍存在一些問題,如模糊規(guī)則和隸屬函數(shù)的優(yōu)化、系統(tǒng)抗干擾性能的增強等。因此,仍需進一步完善和修改該控制系統(tǒng)。
7 結(jié)論
該設(shè)計基于高密度的可編程邏輯器件FP-GA,在傳統(tǒng)PID控制器的基礎(chǔ)上利用模糊控制的優(yōu)點控制恒溫箱的溫度。結(jié)果表明,該控制系統(tǒng)具有良好的動、靜態(tài)性能和魯棒性能,對參數(shù)時變具有很好的適應(yīng)能力,實時計算量小,調(diào)校方便,且具有良好的升級性能和靈活性。市場應(yīng)用前景較好。