張翠
【摘? ?要】 本文介紹了一種基于STC89C52單片機實現模糊PID控制雞舍大棚內溫度控制方法;為解決常規(guī)PID控制算法無法適應復雜的、非線性的、時變的控制系統(tǒng)問題,采用熱電偶傳感器對雞舍溫度進行實時監(jiān)控,結合熱電偶本身的非線性特點,采用單片機與模糊PID相結合進行溫度控制,從而提高響應的速度和對溫度的控制精度,具有一定的實用價值。
【關鍵詞】 模糊PID;熱電偶;單片機;溫度控制
中圖分類號:S24? ? ? ? ? ? ? ?文獻識別碼:A? ? ? ? ? ? ? ?文章編號:2096-1073(2020)02-0070-73
Design of intelligent temperature control system for coop
based on fuzzy PID
ZHANG Cui
(Bowen College of Management Guilin University of Technology? ?Guilin, Guangxi? ?541006)
[Abstract] This paper introduces a fuzzy PID control method based on STC89C52 MCU for temperature control in chicken coop. In order to solve the conventional PID control algorithm cannot adapt to the complex, nonlinear, time-varying control system, using the temperature real-time monitoring of the henhouse thermocouple sensor, based on the nonlinear features of the thermocouple itself, and combined with fuzzy PID temperature control by single chip microcomputer, thus improve the response speed and control precision of temperature, has a certain practical value.
[Key words]? ?fuzzy PID; thermocouple; single chip microcomputer; temperature control
1? 引言
溫度是工業(yè)、農業(yè)生產過程中最重要的控制因素之一[1]。傳統(tǒng)的農業(yè)生產靠天吃飯,有較強的季節(jié)性,而且產量較低。當前,農業(yè)生產正在朝規(guī)?;?、現代化方向發(fā)展,可以利用現代計算機技術、自動控制技術對環(huán)境進行控制、干預,達到提高產量的目的。在家禽養(yǎng)殖業(yè)中,不同的時期需要不同的溫度環(huán)境,而且不能變動太大,保證家禽的疾病最少,快速生長,達到最大經濟效益。
本文采用模糊PID控制器與單片機結合構建一個溫度控制系統(tǒng),并在雞舍中應用,實現溫度控制,改善雞舍的溫度環(huán)境。系統(tǒng)采用單片機與模糊PID相結合進行溫度控制[2],有效解決雞舍溫度變化過快,系統(tǒng)不穩(wěn)定的問題,從而使得雞舍的溫度與期望值相吻合。
2? 系統(tǒng)設計方案
2.1? 總設計方案
本系統(tǒng)采用STC89C52單片機為控制中心,負責所有數據的運算處理,并在各模塊間進行控制信息的傳送。溫度采集模塊中采用熱電偶采用雞舍的溫度信息,經過模數轉換后傳送到單片機;單片機獲得新的溫度信息后,與系統(tǒng)設定的溫度值進行比較,產生一個偏差值,模糊PID控制模塊對偏差值進行控制處理,并將處理信息返回值單片機,如果偏差值過大,則激發(fā)蜂鳴器報警,且啟動加溫、降溫處理模塊進行溫度的調節(jié),完成溫度控制。溫度顯示模塊負責所有的溫度及變化信息的顯示。按鍵模塊用與用戶的交互,用戶通過此模塊根據自己的需求設定溫度值。系統(tǒng)存儲模塊用于按時間序列存儲溫度信息,為用戶了解環(huán)境的溫度變化及決策提供幫助。除上述模塊外,還有一些其它的外圍模塊,系統(tǒng)的設計總體框圖如圖1所示。
2.2? 溫度采集轉換與溫度存儲模塊
雞舍的生產環(huán)境較差,對電偶的需求量較大,本系統(tǒng)采用K型熱電偶進行溫度采集,選擇此電偶可降低系統(tǒng)成本。熱電偶測量采用的溫度的原理是根據電偶的正端與負端之間的電勢差得到。
本系統(tǒng)利用單片K型熱電偶數字轉換器MAX6675,首先讀取K型熱電偶傳感器檢測的溫度,然后,進行信號放大及轉換處理,在處理過程中,要解信號變抽換的決線性化、冷端補償、模數轉換問題。該轉換器最大可以分辯0.25℃的溫度差。系統(tǒng)采用AT24C02數據存儲芯片作溫度數據存儲模塊,兩個模塊與單片相連的電路圖如圖2所示。
2.3? ?軟件方案設計
完成系統(tǒng)硬件設計,現場布局以后,利用C語言和程序設計完成控制程序設計。第一步,對系統(tǒng)進行初始化,主要由主機發(fā)出一個復位脈沖,然后等待來自MAX6675的響應,在此期間也對MAX6675進行內存設置。第二步,系統(tǒng)溫度的讀取及顯示。如果第一次開機,系統(tǒng)將進入讀取溫度,計算出和刷新,然后由微控制器來轉換溫度,最后由LCD顯示;如果不是第一次打開,就會直接完成溫度轉換,顯示所測量的溫度值,再由PID算法進行運算,再由LCD顯示。這個過程的時間很短,子程序調用被實時顯示。在測溫過程中可以設定溫度的顯示范圍,如果超過設定溫度范圍,蜂鳴器和LED則會發(fā)出報警信號,并發(fā)出控制信號進行加熱或降溫,主程序流程圖如圖3所示。
3? ?模糊PID控制設計
3.1? 常規(guī)PID控制
常規(guī)PID控制器具有算法簡單、穩(wěn)定性好、可靠性高的特點,是過程控制中最廣泛的一類基本控制器[3],它對于各種線性定常系統(tǒng)的控制,都能夠獲得滿意的控制效果,尤其適用于被控對象參數固定、非線性不很嚴重的系統(tǒng),可以采用PID控制,PID控制的理想方程如公式(1)所示:
其中,U(t)表示模糊控制的有t時刻的輸出,K_P為比例增益,K_I積分增益,K_D為微分增益;PID算法對這三個參數的調節(jié),與t時刻產生的誤差e(t)線性相關。
由于工業(yè)生產過程中被控對象的負荷多變、干擾因素復雜,常規(guī)PID控制與輸出誤差成線性相關,當變化的頻率、幅度較大時,系統(tǒng)會產生振蕩。要獲得滿意的控制效果,就需要對PID的參數不斷地進行在線調整。有時由于這些參數的變化無常,往往沒有確定不變的數學模型和規(guī)律可循,利用模糊控制器調節(jié)它們不失為一種實用、簡便、可行的選擇。
雞舍所在的環(huán)境較復雜,一般都會選擇在野外、山林中,這些地方自然條件優(yōu)越,空氣較好,但是溫度變化無常,溫度控制系統(tǒng)是一個大滯后、大慣性、非線性、時變性的控制系統(tǒng),所以很難建立一個準確的數學模型。因此,采用傳統(tǒng)的常規(guī)PID控制器會經常出現雞舍溫度波動大或溫度分布不均從而影響雞的正?;顒?,或出現疾病傳播的問題。采用模糊PID控制器能充分利用操作人員進行實時非線性調節(jié)的成功實踐操作經驗,充分發(fā)揮PID控制器的優(yōu)良控制作用,使得控制效果達到最優(yōu)。
3.2? 模糊PID控制原理
模糊PID控制的核心是以系統(tǒng)誤差e及其誤差的變化率ec的兩個參數作為系統(tǒng)的輸入,在系統(tǒng)中建立模糊變換規(guī)則[4],由規(guī)則計算出?K_P、〖?K〗_I、〖?K〗_D,即K_P、K_I、K_D三個參數的變化值,實現了根據誤差e及其誤差的變化率ec與PID控制參數的非線性關系,達到模糊控制效果,系統(tǒng)不斷的對e和ec進行檢查,實時調整K_P、K_I、K_D三個參數的值,實現系統(tǒng)的實時控制要求??刂葡到y(tǒng)原理圖如圖4所示。
其中,偏差信號e(t)=r(t)-y(t);r(t)是期望輸入值;y(t)是實際反饋輸出值;偏差變化率
PID控制器的參數要根據模糊推理得到,可以實現誤差調節(jié)參數據根據誤差及誤差變化的情況動態(tài)調節(jié),快速達到平衡。
模糊PID控制系統(tǒng)的輸入是誤差e及其誤差的變化率ec,它的輸出變化量?K_P、〖?K〗_I、?K_D,這三個參數分別對系統(tǒng)PID原來設計參數K_P、K_I、K_D進行修正,系統(tǒng)實際的輸出取值分別是K_P+?K_P、K_I+?K_I、K_D+?K_D。
假設它們的模糊子集分別取{NB,NM,NS,ZO,PS,PM,PB}七個等級,論域的范圍是{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},常用的隸屬度函數有三角形函數,鐘形函數,高斯型函數,梯形函數以及Sigmoid型函數,本文采用的是三角形函數,如圖5所示。
模糊規(guī)則是模糊推理過程中比較重要的部分,根據誤差e及其誤差的變化率ec與比例、積分、微分三個系數之間的關系,用“If--Then”形式來描述的模糊推理規(guī)則。
規(guī)則1:If X is A1,且Y is B1, Then Z is C11
規(guī)則2:If X is A1,且Y is B2, Then Z is C12
……………
規(guī)則n:If X is An,且Y is B1, Then Z is Cn1依次類推。
模糊控制器的規(guī)則是使得對溫度的調節(jié)更加精確,更加及時,避免超調以及穩(wěn)定性等。
4? 系統(tǒng)仿真實驗
為了驗證系統(tǒng)的性能,采用Matlab2015a軟件中simulink模塊對被控對象進行仿真分析[5-6],通過常規(guī)PID控制與模糊PID控制進行比較,從而驗證了模糊PID控制的優(yōu)越性。假設雞舍加熱環(huán)境采用水暖管道加熱方式,采用單片機控制繼電器通斷電的方式從而實現加熱或降溫處理,在達到預設的溫度值之前,會存在一定的延時,假設被控對象的溫度傳遞函數模型為:
其中參數K是被控對象的靜態(tài)增益,T為控制對象的時間常數,τ為被控對象的延時時間,則通過simulink仿真(假設K=0.85,T=200, τ=40)得到的實驗效果圖如下圖6所示。
5? ?結論
本文設計了一個基于單片機的雞舍溫度控制系統(tǒng),以單片機為溫度控制的核心,結合模糊PID算法,達到提高控制穩(wěn)定性的效果。由Matlab仿真結果顯示,采用模糊PID控制時,系統(tǒng)的超調量比常規(guī)PID有所減少,同時響應的速度有所提高,參數自我調整的精確度和靈敏度也得到了改善,可靠性和穩(wěn)定性更強,控制效果良好,調節(jié)后的溫度值并通過藍牙模塊發(fā)送到用戶手機端以便于用戶實時監(jiān)測,該方法在工業(yè)控制和養(yǎng)殖行業(yè)將具有一定的應用價值。
參考文獻:
[1] 劉家琪,劉 嵩等.基于單片機的PID溫度控制系統(tǒng)設計[J].? ? ? ? ?湖北民族學院學報(自然科學版),2019,37:219-222.
[2] 李雪蓮,鄭豐隆.基于模糊 PID 的溫室溫度控制器設計[J].? ? ? ? ? 電子世界,2015(15):66-67.
[3]許惠君,饒 偉.基于單片機的電阻爐智能溫度控制系統(tǒng)設計? ? ? ? [J].科技廣場,2013(15):65-68
[4]黃 斌,謝國進.基于混合型模糊PID的加熱爐溫度控制系統(tǒng)? ? ? ? 應用[J].電氣傳動,2018(48):43-68 46.
[5] 石辛民,郝整清.模糊控制及其MATLAB仿真(第2版)[M].北? ? ? ?京:清華大學出版社,2018.3.
[6]李國勇,楊麗娟.神經模糊預測控制及其MATLAB實現(第4? ? ? ? 版)[M].北京:電子工業(yè)出版社,2018.11.
(編輯:赫亮)