梁達平
(天水師范學院 電信與電氣工程學院,天水 741000)
?
微分先行的STM32光生物反應器溫控設計
梁達平
(天水師范學院 電信與電氣工程學院,天水 741000)
摘要:微藻生物培養過程中對溫度具有嚴格要求,提高微藻培養裝置溢流噴射光生物反應器溫度控制的動態性能,對于提高培養成活率、降低生產成本有著重要作用。該文提出了利用微分先行PID算法改進光生物反應器的溫度控制效果,并在此基礎上設計了基于STM32的微控制器方案。通過實驗數據比較得出,微分先行控制方式大幅減少了調節時間和超調量,與傳統PID控制相比具有更好的動態特性。同時,文中提出的硬件實現方案,具有性能高、成本低的優點,便于在中小型微藻養殖企業中推廣實施。
關鍵詞:STM32;微分先行;PID;微藻培養
引言
溢流噴射光反應器是一種微藻培養裝置,通過提供適合的光照、溫度和通氣條件,使小球藻、螺旋藻等藻類生物進行快速的生長繁殖。其工作原理如圖1所示,培養液在封閉的環路中循環流動,通過溫度控制器保證所需水溫。由于培養溫度的高低會直接影響酶的催化活性,從而影響藻體細胞生長效果,因此需要將水溫作為一個關鍵參數進行控制[1]。
目前市場上大部分光反應裝置配備的溫控系統采用的都是傳統PID控制算法,溫度曲線擺動幅度大、調節時間長、加熱元件動作頻繁,不僅控制效果差,而且元件維修頻繁。為解決上述問題,本文將微分先行PID算法引入到光反應器的溫度控制中,實驗數據表明,控制器的超調及爬升速率等性能得到較大改進。同時,在此基礎上提出了基于ARM微控制器的系統實現方案。

圖1 溢流噴射光反應器原理圖
1溫度控制算法原理
傳統的位置式PID算法是針對設定值與被測值的偏差進行校正的[2],因此當設定值發生改變時,微分作用會根據變化率升高使控制器產生劇烈跳變,形成微分沖擊,產生很大的超調量,顯然這對微藻生長的溫度環境有著很負面的影響。為了解決溫度調節時穩定性與快速性之間的沖突,可將微分控制僅僅作用于被測量上而不作用于偏差量上,這樣設定值發生變化時就不會觸發強烈的微分校正,而是通過被測量的變化間接產生微分作用[3]。具體實現過程中,在微分環節的配置上可以有多種方式,如圖2~圖4所示。

圖2 基本PID控制器

圖3 微分先行PID控制器1

圖4 微分先行PID控制器2
圖3與圖4中的兩種微分先行控制算法的差別在于:算法1采用了純微分環節,校正效果簡單直接;算法2采用了低頻一階微分加高頻慣性環節,使微分作用針對更特定頻譜的信號[4],同時改善了高頻的抗干擾性能,但運算量較大。由于目前普遍采用了基于微控制器的數字控制技術[5],完全可以滿足復雜的算法計算要求,從而獲得更為精確的控制效果,因此采用第二種算法。
1.1微分先行PID控制器模型的建立
設PID控制器的比例系數及時間常數分別為KP、TI、TD。則微分控制單元傳遞函數為:
(1)
將式(1)轉化成微分方程為:
(2)
離散化后的差分表達式為:
(3)
則:
(4)
比例積分控制單元傳遞函數為:
(5)

(6)
離散后的PID控制器傳遞函數為:
(7)
根據式(7)可編寫出具有微分先行功能的PID的控制程序,從而解決微分環節對控制調節量帶來的過沖擊問題。
1.2被控制對象模型的辨識
理論分析及實驗數據測定表明,光反應裝置配置的溫控貯槽具有自衡能力[7],可以采用慣性環節與延遲環節來近似表示。因此傳遞函數如下:
(8)
式中:KC為溫控貯槽放大系數,TC為貯槽的時間常數,τ為貯槽溫度變化的滯后時間。
具有自衡能力的過程控制裝置在進行參數辨識時,通常采用穩定邊界法,反應曲線法和衰減曲線法3種[8],綜合適用范圍以及對數據的掌控度考慮,這里采用反應曲線法來確定系統參數。
考慮到藻體培養最佳溫度在30 ℃左右,將反應器初始溫度設為25 ℃,加熱器跳變階躍溫度設定為38 ℃,采樣時間設定為30s,得到系統的飛升曲線數據。為了更加準確、便捷地確定曲線的拐點,對于實驗數據利用Matlab的6階多項式擬合方法進行趨勢平滑處理,從而得到系統的飛升曲線,如圖5所示。從拐點P作切線,可以得到傳遞函數中的3個關鍵參數,其中等效滯后時間τ=140,等效時間常數TC=510,放大系數KC=0.9。

圖5 系統飛升曲線
1.3PID調節器的參數整定
根據求出的傳遞函數參數,可進一步整定出PID調節器的參數范圍。其相關經驗公式[8]如下:
式中:KP為比例環節放大系數,TI為積分環節時間常數,TD為微分環節時間常數。
根據經驗公式得到的數據還需要進行閉環系統反復驗證調試,從而整定出較為滿意的控制效果,當預設控制溫度設定為30 ℃,采樣時間為10s時,以上參數取值分別為KP=0.3,TI=240,TD=60。
2基于ARM Cortex-M3的系統硬件設計
關于溫度控制系統的硬件實現方式,傳統的設計方案一般采用基于80C51單片機控制,但是51系列單片機的性能有限,很難滿足該控制系統在溫度監控與PWM輸出控制的實時性以及溫度控制準確度方面的較高要求。例如,PWM輸出控制需要高頻的定時器中斷調用,在此基礎上還需要中頻的溫度監控中斷控制和與上位機的穩定通信,而51單片機的性能只能做好其中一個任務,其他任務則會出現斷續、跳動的現象,無法正常使用。因此,需要選用性能更強的ARM微控制器來處理以上任務。在具體芯片型號的選擇上,綜合性能與成本的要求,選定Cortex-M3系列的STM32F103x芯片。M3系列是ARMv7架構中的經濟型系列[9],性價比很高,適合應用于單回路過程控制系統。
控制系統的硬件設計如圖6所示,由控制參數設定(鍵盤及觸摸屏)、溫度采集、數據顯示、異常報警、加熱執行機構等功能單元構成。采用觸摸屏及鍵盤方式完成給定信號設定及系統初始化,通過溫度傳感器采集實時溫度,由STM32F103x利用微分先行PID算法計算出實時的調節信號并轉化為PWM占空比,使用固態繼電器控制熱交換器對貯槽溫度進行控制,如果溫度過高則打開進水閥加入冷水進行快速降溫,屏幕實時顯示溫度、冷水進水量、報警閃爍等過程信息。

圖6 系統硬件設計圖
3軟件設計中的主要技術問題
軟件系統功能由數據顯示、溫度采集、算法生成、控制驅動、異常報警、信息設定等模塊構成。為提高編程效率,采用了ST公司為STM32芯片提供的固件庫函數解決中間層API接口問題。其中,信息設定模塊主要實現鍵盤和觸摸屏驅動連接,完成對系統各相關外設參數初始化設定;溫度采集模塊負責完成與DS18B20傳感芯片的串行通信;算法生成模塊承擔微分先行PID調節量的計算;控制驅動模塊主要計算設定熱交換器與冷水閥電機控制的PWM占空比;異常報警模塊通過STM32內核中與NVIC控制器捆綁的SysTick精確定時器產生定時中斷監測,對嚴重超出微藻培養適應溫度范圍以外的振蕩輸出進行報警。
將微分先行算法計算得到的PID調節量轉化為適合的PWM控制量,是一個關鍵性技術問題。一般可以采用區間上下限法找出對應參數(即首先獲取PID調節量輸出的上下限值),然后找出PWM控制量的實際上下限值,將兩組區間值對應從而得到變化系數,中間變化量的精度由PWM步長來調節。值得說明的是,51單片機并沒有專門的PWM輸出單元,需要利用TIM及中斷的主資源解決PWM輸出問題,這樣就占用了大部分CPU計算資源,使其在處理PID算法和其他功能時無法穩定地完成。
而STM32系列芯片的TIM定時器擁有專用PWM及電機控制單元,具有互補輸出、死區插入、剎車功能、單步及六步PWM輸出、霍爾傳感器接口等常用功能,每個TIM定時器的相關寄存器可以直接設定輸出占空比,并且支持至少4路控制信號并行輸出。特別重要的是以上功能主要由外圍輔助控制單元完成,幾乎對于Cortex-M3內核的資源沒有爭奪,使Cortex-M3內核能夠將大部分資源分配在控制量運算、中斷監控、界面友好性設計上。
STM32與LCD顯示器的連接方式常用的有MCU模式、RGB模式、SPI模式、MDDI模式等[10]。綜合考慮硬件代價、軟件實現效果等方面,采用了SPI模式。這種方式的最大優點在于硬件價格低,連線只有CS、SLK、SDI、SDO四根線,非常適合M3系列低端芯片使用。它的缺點在于軟件實現的復雜度相應地會增加,但是本系統所需的顯示信息相對較少,因此不會造成軟件算法難度提高。LCD的觸摸屏驅動采用RSM1843驅動四線電阻屏,工作電壓兼容3.3 V低功耗模式,支持8位或12位可編程輸出。
4實驗數據分析
為了便于對控制效果進行評估與分析,軟件部分在溫度采集過程中加入了數據保存功能,將控制過程的實驗數據序列全部存儲在連續的Flash單元中,可直接將保存的過程數據通過MatLab繪制出系統的時間響應曲線,如圖7所示。為了與傳統PID算法控制性能加以對比,特別編寫了傳統PID控制程序對系統進行控制,并將生成的實驗數據所畫出的響應曲線與之疊加。

圖7 兩種PID控制時間響應曲線對比
通過對比可以看出,引入微分先行算法后,大幅度降低了控制系統的振蕩,減小了過渡調節時間,系統在120 s左右時就完成了溫度的調節,而超調量只有不到2%,明顯地改善了系統的動態性能。
結語
本文針對微藻生物培養過程中對于溫度的嚴格要求,提出了利用微分先行算法改進溢流噴射光反應器溫度PID控制效果,并在此基礎上設計了基于ARM Cortex-M3的微控制器方案,較傳統的C51單片機控制系統性能得到大幅提升,完全實現了控制算法改進帶來的優勢。在硬件芯片的選型和方案的設計上兼顧了性能與成本,對于中小型微藻生物養殖企業具有一定實際參考價值。
參考文獻
[1] 吳興純,李江濤.微分先行計算機串級控制在精餾塔提餾段溫控中的應用[J].昆明理工大學學報:理工版,2005(4):51-54.
[2] 杜繼宏.控制工程基礎[M].北京:清華大學出版社,2014.
[3] 侯樹文,王永梅,肖慧文,等.基于PLC的火力發電機組主汽溫微分先行控制器[J].電力自動化設備,2009(2):140-144.
[4] 王超.基于MATLAB的微分先行PID控制的設計與仿真[J].高師理科學刊,2014(1):44-46.
[5] 黃智偉.STM32F32位ARM微控制器應用設計與實踐[M].北京:北京航空航天大學出版社,2014.
[6] 胡壽松.自動控制原理[M].北京:科學出版社,2013.
[7] 黃德先.過程控制系統[M].北京:清華大學出版社,2011.
[8] 施仁等.自動化儀表與過程控制[M].北京:電子工業出版社,2009.
[9] 范書瑞.Cortex-M3嵌入式處理器原理與應用[M].北京:電子工業出版社,2011.
[10] 廖義奎.Cortex-M3之STM32嵌入式系統設計[M].北京:中國電力出版社,2013.
梁達平(講師),主要從事單片機與嵌入式控制技術方面的研究。
STM32 Temperature Control System of Photobioreactor Based on Differential Preceding Algorithm
Liang Daping
(School of Electronic Information and Electrical Engineering,Tianshui Normal University,Tianshui 741000,China)
Abstract:In the process of microalgae cultivation,it has high requirement for temperature.It has great significance to improve the survival ratio and reduce the cost of production through improving the dynamic performance of overflowing jetting photobioreactor’s temperature control.In the paper,a plan of improving optical bioreactor temperature control effect is proposed which uses the differential preceding PID algorithm,and a microcontroller scheme based on STM32 is designed.The results of experiment data indicate that the differential preceding control method can reduce the settling time and overshoot,and the new PID controller has better dynamic characteristic than the traditional PID.Meanwhile,the microcontroller scheme has high rate of quantity and price,and it is useful for the small and medium microalgae culture enterprises.
Key words:STM32;differential preceding;PID;microalgae cultivation
收稿日期:(責任編輯:楊迪娜2015-12-23)
中圖分類號:TP273
文獻標識碼:A