基于FPGA的溫度模糊自適應PID控制器的設計
溫度是工業生產過程中一個主要的被控參數。目前,大多采用常規PID控制器實現對溫度的控制。PID控制器具有結構簡單、易于實現且魯棒性好、可靠性高等優點,對可建立精確數學模型的定常系統具有很好的控制效果,但由于實際溫度控制系統工況復雜、參數多變、大慣性、大滯后,常規PID控制器難以對其高精度進行控制。模糊控制魯棒性強,無需被控對象的精確數學模型,只依賴于操作人員的經驗知識及操作數據,非常適用于控制非線性、時變和滯后系統,但其靜態性能較差,因此應用范圍受很大限制。針對這些問題,這里提出一種基于FPGA的溫度模糊自適應PID控制器設計方案,該方案將傳統PID控制與現代模糊控制相結合,應用模糊推理方法實現對PID參數的自動整定。由此,經MATLAB仿真驗證該控制算法的可行性,將其應用于恒溫箱的溫度控制。該控制器對恒溫箱控制系統的控制效果明顯優于常規PID控制器。
2 模糊自適應PID控制原理及結構
模糊自適應PID控制基本原理:以誤差e和誤差變化ec作為輸入,運行中不斷檢測e和ec,并利用模糊規則進行模糊推理,查詢模糊矩陣表調整參數,滿足不同時刻的e和ec對PID參數自整定的要求,利用模糊規則在線修改PID參數,以使被控對象具有良好的靜態、動態性能。模糊自適應PID控制系統結構如圖1所示。
常規PID控制器作為一種線性控制器,其離散的控制規律為:
對于系統被控過程中不同的|e|和|ec|,PID參數Kp、KI、KD的自整定原則如下:
(1)誤差|e|較大時,為加快系統的響應速度,使系統具有快速跟蹤性能,應取較大Kp和較小KD。同時,為了防止積分飽和。避免系統超調過大,應限制KI或使其為零。
(2)誤差|e|和|ec|中等時,為使系統超調較小,應取較小KP,適當KI和KD,特別是KD的取值對系統響應影響較大(一般取值較小)。
(3)誤差|e|較小時,為使系統具有較好穩態性能,應取較大KP和KI。同時,為避免系統在平衡點附近出現振蕩,應取合適的KD值。|ec|較大時,取較小KD;|ec|較小時,取較大KD。
考慮到上述原則,在該設計中,模糊控制器采用2輸入,3輸出的結構。以誤差e和誤差變化ec作為輸入,經量化和模糊化處理后,查詢模糊控制規則表,得到模糊輸出量KP、KI、KD,再經解模糊和量化因子輸出精確量,并將該輸出量與傳統PID相結合輸出系統的控制量。輸人語言變量e和ec以及輸出語言變量KP、KI、KD的模糊集論域均設為{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},取相應論域上的語言值為{NB,NM,NS,ZO,PS,PM,PB}。考慮到對論域的覆蓋程度及靈敏度,魯棒性和穩定性等原則,各模糊子集隸屬度函數均采用三角形隸屬函數。
模糊規則采用“if e is A and ec is B then KP is C and KI isD and KD is E”的方式,控制器參數模糊推理過程采取Mam-dani直接推理法,“與”運算采用極小運算,“或”運算采用極大運算,模糊蘊含運算采用極小運算,模糊規則綜合采用極大運算,去模糊化采用重心法且其計算公式為:
根據PID參數調整原則,輸出量KP、KI、KD一輪決策將最多涉及147條推理規則。
3 恒溫箱溫度控制系統硬件電路設計
溫度控制目前大多采用以單片機或CPU為核心的控制系統,這些以軟件控制和運算的系統相比于硬件系統速度要慢、實時性差且可靠性低。
FPGA作為一種新型的數字邏輯器件,具有集成度高、可重復編程、邏輯實現能力強、設計靈活等特點,使用其內部邏輯模塊單元實現所需功能,各個模塊并行運行,這使得系統運算速度快、實時性強。與傳統的基于CPU并行計算不同,FPGA內部結構真正實現并行計算,不是宏觀上并行而是微觀上分時運算。
該設計采用Ahera公司的Cyclone系列FPGA器件EP1C12為核心控制器來測量與控制恒溫箱內溫度。通過鍵盤向FPGA輸入設定溫度,現場溫度參數由熱電偶傳感器轉換成電動勢信號,經A/D轉換和濾波后,將實時的數字測量值送入FPGA。FPGA將比較溫度的設定值與測量值,經模糊自適應PID控制算法運算處理后,輸出相應控制信號,確保恒溫箱內溫度變化范圍始終保持在設定值的誤差范圍內。系統的液晶顯示用于實時顯示控制系統的當前溫度值、溫度變化曲線、參數配制等信息;鍵盤用于設定控制系統的初始定值及初始參數信息;Flash,SDRAM,I2C等用于實現存儲空間的擴展。圖2為系統整體硬件結構框圖。
此外,在FPGA中還集成有Altera公司提供的NIOS II軟核處理器,FPGA一方面通過內部的雙口RAM與其內部的硬件邏輯控制模塊進行通訊,獲取控制模塊的狀態信息并配置其參數;另一方面監控顯示模塊和鍵盤模塊。FPGA內部邏輯示意圖如圖3所示。
pid控制器相關文章:pid控制器原理
評論