姚立平 劉偉章 吳文明 姜楊陽 唐元梁 雷鵬 譚仲威 王康寧 李桂香 徐飛 吳新社 黃德群 陳軍 顧珩



摘? 要:溫控系統具有時變性、非線性及純滯后性等特點,針對此問題,設計了一套基于STM32微控制器為核心的溫控系統,下位機主要負責實時采集溫度信息與調節半導體制冷器TEC的工作功率,同時通過串口傳輸溫度信息到計算機軟件端,計算機軟件端依據接收當前的溫度與設定的目標溫度進行溫度調節,將PID調節輸出值發送給下位機軟件實現一次閉環的溫度調節控制。此外,設計了一種改進的PID溫控算法,主要體現于引入了積分分離、變積分及抗積分飽和等優化算法。實驗結果表明,改進的PID控制算法比傳統的PID算法具有系統響應速度快、誤差小、穩定性高等優點,在恒溫控制的場合具有一定的應用和推廣價值。
關鍵詞:溫控系統? STM32微控制器? 半導體制冷器? PID調節
中圖分類號:TF325.64 文獻標識碼:A 文章編號:1674-098X(2021)06(c)-0068-07
Abstract: The temperature control system has the characteristics of time-varying, nonlinear and pure lag. To solve this problem, a temperature control system based on STM32 microcontroller is designed. The lower computer is mainly responsible for collecting temperature information in real time and adjusting the working power of semiconductor cooler TEC. At the same time, the temperature information is transmitted to the computer software through serial port, the computer software adjusts the temperature according to the received current temperature and the set target temperature, and sends the PID adjustment output value to the lower computer software to realize a closed-loop temperature adjustment control. In addition, an improved PID temperature control algorithm is designed, which is mainly reflected in the introduction of optimization algorithms such as integral separation, variable integral and anti integral saturation. The experimental results show that the improved PID control algorithm has the advantages of fast system response, small error and high stability compared with the traditional PID algorithm. It has certain application and popularization value in the occasion of constant temperature control.
Key Words: Temperature control system; STM32 micro-controller; Semiconductor cooler; PID control
溫度控制在科學實驗和工業生成過程中占有重要位置。而PID算法具有穩定無靜差、魯棒性強等優點,其控制原理相對簡單且易于實現,是在溫度控制中應用最廣泛、最基本的一種控制方式[1-3]。然而溫控系統具有時變性、非線性及純滯后性等特點[4-5],常規的PID算法難以在快速性和高精度上實現較好的溫控效果。研究發現,在常規的PID方法中引入積分環節的目的主要是為了消除靜態誤差,提高控制精度[6]。但累積了較大的偏差值,會引起系統較大的超調引起系統的不穩定;同時,PID控制輸出值由于積分的累加作用而不斷增大,從而進入了飽和區,此時會造成系統失去控制;此外,常規的PID方法中的積分系數是不變的,這樣當積分系數設置較大時,使得系統產生超調,甚至產生積分飽和;當積分系數設置較小時,又不能消除靜態誤差等缺點。因此,本文首先設計了一套基于STM32微控制器為核心的溫控系統,MAX31865溫度轉換電路和四線制的鉑電阻Pt1000負責實時采集溫度信息,微控制器屏幕顯示當前的實時溫度和調節功率,以及調節半導體制冷器TEC的工作功率,同時通過串口傳輸溫度信息到計算機軟件端;計算機軟件端依據接收當前的溫度與設定的目標溫度進行溫控算法調節,將PID調節輸出值發送給下位機軟件實現一次閉環的溫度調節控制,同時能夠顯示實時的溫度曲線、溫度梯度曲線及功率曲線。此外,針對常規的PID算法的不足,引入了積分分離、變積分及抗積分飽和等優化算法,最終較好、較快地實現了系統溫度控制調節,可在PCR核酸檢測、體液循環模擬、軟組織焊接、血流熱效應等領域研究提供較為精準的加熱及測控方案。
1? 溫度控制算法
工程上常用的PID算法是長期的工程實踐中總結形成的一種控制方法,具有參數整定方便、結構改變靈活、魯棒性強和易于實現等優點,因此是在溫度控制中應用最廣泛、最基本的一種控制方式[7-8]。
1.1 常規PID算法
具有比例-積分-微分控制規律的控制器,稱為PID控制器[9-10]。控制器系統原理框圖如圖1所示。
由式(5)及算法程序流程圖可知,控制量的確定僅與最近的第k、k-1、k-2次的采樣值相關,所以產生的誤動作影響較小,較為容易通過加權處理獲得較好的控制效果[11]。
1.2 本文的PID算法
常規PID中引入積分運算主要是為了消除靜態誤差,提高控制精度。但不加以改進控制,積分環節會累積較大的偏差引起系統有較大的超調,導致系統不穩定。因此本文引入了積分分離控制方法,即當前溫度與設定的目標溫度的偏差值較大時,取消積分作用;當偏差值較小時,引入積分控制,以消除靜態誤差,提高控制精度。積分分離控制算法可表示如下:
常規PID算法控制輸出值由于積分的累加作用而不斷增大,從而進入了飽和區,此時會造成系統失去控制,因此本文引入了抗積分飽和的優化方法,也就是,給定當上下極限值umax、-umax,當PID輸出值u(k-1)>umax,只累積負偏差;當PID輸出值u(k-1)<-umax,只累積正偏差,引入這種優化方法可以修正控制量長時間停留在飽和區的問題。
常規PID中的積分系數是不變的,這樣當積分系數設置較大時,使得系統產生超調,甚至產生積分飽和;當積分系數設置較小時,又不能消除靜態誤差等缺點。因此本文引入了變速積分的優化方法,其基本思想主要是改變積分項的累加速度,當偏差越大,積分則越慢,反之則越快。即:給定變速區間[f,f+g],則變速系數表示如下:
可見變速系數f(e(k))是一個關于e(k)的函數,實現積分項的累加速度隨著誤差值的改變而改變。
2? 基于STM32的溫度控制系統設計實現
設計的溫控系統是以ARM Cortex?-M7內核的STM32F103微處理器為核心[12],使用USB串口通信與計算機端進行溫度信息和功率信息的傳輸,并基于此編寫了溫控軟件,詳細介紹如下。
2.1 溫控系統硬件設計
溫控系統硬件設計框架圖如圖3所示,溫度控制系統硬件結構是以ARM Cortex?-內核的STM32F103微處理器為控制核心,采用MAX31865溫度轉換電路和四線制的鉑電阻Pt1000進行溫度采集,具有體積小、測量精度高、穩定性好等特點;具有15bit分辨率的Σ-Δ型ADC,微處理器使用SPI通信獲取實時數字溫度信息;選擇ATE1-TC-127-8AH半導體制冷片作為系統的制冷制熱元件,是一種利用半導體材料構成P-N結,形成熱電偶對,產生帕爾貼效應的熱電制冷技術。該制冷片外形尺寸39.7×39.7×3.5,最大輸入電壓為16.2~17.5V;最高升溫溫度可達200℃,超長使用壽命,常用于冷熱循環設計系統,通過改變制冷片的電流方向來實現制冷片的制冷加熱功能。選擇滿足電壓要求的H橋邏輯控制驅動電路控制不同的電流方向實現半導體制冷器的加熱或者是制冷,使用PWM模式驅動半導體制冷器。當PWM的控制信號處于高電平時,此時半導體制冷器處于運行狀態;當PWM的控制信號處于低電平時,此時半導體制冷器處于停止狀態;由此通過改變PWM的占空比來控制半導體制冷器的工作時間,從而控制了半導體制冷器的制冷效率。液晶屏實時顯示當前的溫度和調節功率;同時具有PID參數微調按鍵記錄存儲功能,具有溫度異常檢測報警功能和運行狀態的燈指示功能,以及與電腦端之間的USB串口通信功能。
2.2 溫控系統軟件設計
基于以上的設計的硬件系統和改進的PID溫控算法理論,設計一款桌面端軟件,溫控系統通過USB串口通信發送實時的溫度數據到軟件端,軟件端根據當前的溫度和設定的控制溫度進行改進的PID溫度調節,將PID控制器的輸出值通過USB串口發送給下位機系統,下位機將其作為PWM的占空比調節半導體制冷器的工作功率;此外,軟件端還有實時的溫度曲線、功率曲線、溫度梯度曲線顯示功能,基本的運行界面如圖4所示。
3? 實驗結果分析
從常溫27℃下開始對系統進行加熱,設定的目標升溫溫度為95℃,使用本文改進的PID溫控算法的一次升溫時間-溫度曲線圖如圖5(a)所示;從溫度為95℃下開始對系統進行制冷,設定的目標降溫溫度為65℃,使用本文改進的PID溫控算法的一次降溫時間-溫度曲線圖如圖5(b)所示。
由以上的時間-溫度響應曲線圖可以看出,改進的PID溫控算法能夠調節溫度使得較快地達到設定的目標溫度,具有系統響應速度快、較好的穩定性等優點。
圖6顯示了從65℃升溫到95℃,從95℃降溫到65℃的多次升降溫時間-溫度曲線圖,可以進一步看出改進的PID溫控算法較為穩定和可靠地達到設定的目標溫度,說明了改進的溫控算法的有效性。
圖7(a)顯示了從常溫27℃下開始對系統進行加熱到目標溫度95℃,本文改進的PID溫控算法和常規的位置式PID溫控算法的升溫時間-溫度曲線圖;圖7(b)顯示了從溫度95℃下開始對系統進行制冷到目標溫度65℃,本文改進的PID溫控算法和常規的位置式PID溫控算法的降溫時間-溫度曲線圖;可以看出,本文改進的PID溫控算法相對常規的位置式PID溫控算法能夠較快地達到設定的目標溫度,系統溫度達到穩定所用的時間較少,加快了系統的響應速度,同時能夠較好地控制溫度到設定的目標溫度,控溫穩定性高。
圖8顯示了使用本文改進的PID溫控算法的多個升降溫循環的溫度調節曲線、功率調節曲線及誤差變化曲線圖,說明了系統使用改進的PID算法調節PWM輸出功率,使得溫度能夠較為快速和較為穩定地控制在指定地目標溫度下,從圖中的誤差曲線可以看出,系統能夠很好地達到指定溫度,使得達到目標溫度后誤差曲線基本穩定。
為了進一步評估本文改進的PID溫控算法的實際控制效果,采用了誤差平方e2(t)的積分ISE指標,其定義如下:
表1顯示了位置式PID和本文改進的PID溫控算法在升溫過程、降溫過程的誤差及平均誤差。可以看出,在升溫過程中,本文改進的PID溫控算法的誤差是27.16,而位置式PID的誤差則達28.79;在降溫過程中,本文改進的PID溫控算法的誤差是1.32,而常規的PID的誤差則達2.16;此外,本文的溫控方法整體平均誤差是14.24,比常規的PID溫控方法整體地平均誤差15.47要小,說明了本文的溫控方法相對常規的PID溫控方法能夠更好地達到指定的目標溫度,提高了溫控系統的整體控制精度。
4? 結語
本文設計了一套基于STM32微控制器為核心的溫控系統,使用鉑電阻和MAX31865溫度轉換電路實時采集溫度,使用USB串口與計算機軟件端進行通信,桌面端軟件根據接收的當前的溫度與設定的目標目標溫度進行改進的PID調節,接著將PID控制器輸出值使用串口發送到下位機調整了半導體制冷器的工作功率,完成了一次環的溫度調節控制。此外,下位機控制系統具有實時溫度、功率的顯示功能,具有PID參數微調按鍵記錄存儲功能、溫度異常檢測報警功能和運行狀態的燈指示功能;上位機軟件具有能夠顯示實時的溫度曲線、溫度梯度曲線及功率曲線等功能;設計了一種改進的PID溫控算法,主要體現于引入了積分分離、變積分及抗積分飽和等優化算法;實驗結果表明,改進的PID控制算法比常規的PID算法具有系統響應速度快、誤差小、穩定性高等優點,提高了系統的整體性能,具有一定的實際應用價值。
參考文獻
[1] 李碩,王代強.基于TEC的高精度溫控系統設計[J].傳感器與微系統,2020,39(5):97-99.
[2] 曹法立,付遠明,吳江濤.基于多級積分分離PID算法的溫度控制系統[J].控制工程,2017,24(6):1107-1112.
[3] 葉晟季.磁懸浮列車懸浮控制器設計[J].科技資訊,2014,12(25):91-93.
[4] 肖伸平,王瑩,周金峰,等.基于蟻群算法的真空燒結爐最優PID溫控系統[J].計算機測量與控制,2011,19(2):312-314,337.
[5] 汪靈,葉會英,趙聞.半導體激光器溫度控制系統設計與算法仿真[J].儀表技術與傳感器,2013(5):95-98.
[6] 李亞軍,許萍.流量計標定裝置控制系統[J].科技資訊,2019,17(12):54-55.
[7] 王朝軍.PID控制技術在鼓風機變頻調速系統中的應用[J].科技資訊,2019,17(9):37-38.
[8] 孫潤喜.恒壓控制系統方法及變頻恒壓控制系統的優勢[J].科技資訊,2020,18(15):35-36,38.
[9] 高繼昆.基于繼電反饋PID自整定控制算法的環境溫控系統實現[J].電子器件,2019,42(3):679-683.
[10] 唐玉紅.PID控制方法研究[J].電子世界,2019(7):65-66.
[11] 侯進旺,馮欣悅,化雪薈.基于單片機的微球腔溫度控制系統的設計[J].電子器件,2016,39(4):768-773.
[12] 聶宵,徐廣平,房孝俊.基于STM32的高精度溫度控制系統設計[J].激光與紅外,2020,50(1):107-110.