安徽工程大學電氣工程學院 水 源 潘 鉞 生 芳
基于模糊PID的無線溫濕度監控系統
安徽工程大學電氣工程學院 水 源 潘 鉞 生 芳
為了研究模糊PID控制在無線溫濕度監控系統的實際運用,設計了基于模糊PID控制的無線溫濕度監控系統。使用數字式傳感器SHT11采集溫濕度數據,通過無線收發器nRF905傳輸數據,采用模糊PID控制算法進行溫濕度控制。通過原理分析和仿真,表明該系統非常穩定并且精確,可廣泛的應用于各類溫濕度控制場合。
模糊PID控制;nRF905;SHT11;STC89C52RC
在現代社會,生產活動對環境的溫濕度要求越來越高,環境因素直接影響到產品的生產效率、經濟效益。研究人員將數字式傳感器、無線通訊、控制算法引入溫濕度控制系統,滿足了一定的生產需求。但傳統溫濕度監控系統控制性能不高,需花費大量精力對控制系統要進行復雜的參數整定并維護系統的穩定運行,難以適應較為復雜的控制環境。為此,設計一種通過數字式傳感器采集現場數據并由無線方式傳輸,采用自適應模糊PID控制算法的溫濕度監控系統。
本系統由采集節點和終端節點組成。采集節點通過SHT11溫濕度傳感器采集現場溫濕度,由采集節點MCU通過nRF905無線收發器傳輸至終端節點。終端節點MCU對采集數據進行監測,并通過模糊PID控制器啟動噴霧器、除濕器、加熱器、冷風機對溫濕度進行控制以達到溫濕度恒定的要求。當溫濕度超過設定范圍后,會觸發報警器模塊報警,通知管理員采取進一步措施。本系統結構框圖如圖1所示。

圖1 系統結構框圖
2.1 STC89C52RC
STC89C52RC是兼容8051指令的8位單片機,內置8KBFlash程序存儲器、1個通異步串行口UART、看門狗電路。性能優異,價格低廉,具有低功耗、抗干擾性和超強穩定性等特點。
2.2 溫濕度檢測與數據顯示電路
SHT11是一款數字式溫濕度傳感器。SHT11傳感器濕度測量范圍為0-100%RH,測量精度為±3%RH;溫度測量范圍為-40~+123.8℃,測量精度為±0.4℃[1]。在VCC和GND之間接入去耦濾波電容以保證數據信號穩定,溫濕度檢測電路硬件接線圖如圖2所示。LCD1602顯示模塊硬件接線圖如圖3所示。

圖2 SHT11與STC89C52RC硬件接線圖
2.3 無線傳輸電路
nRF905無線收發器工作在免申請ISM頻段,工作電壓范圍為1.9V~3.6V,工作溫度范圍為-40℃~+85℃,頻道切換時間小于650us,最大數據傳輸率為100kbps。最大發射功率為10dBm,通過四線制SPI總線與MCU連接,自動處理CRC和前導碼。nRF905可以工作在ShockBurst接收模式、ShockBrust發送模式、掉電模式或空閑模式下,通過配置TRX_CE、TX_EN和PWR_UP引腳來選擇工作模式[2]。
硬件接線圖如圖4所示。

圖4 nRF905與STC89C52RC的硬件接線圖
2.4 溫濕度控制硬件電路
當溫濕度偏離設定值后,系統會啟動相應的部分電路。其中噴霧器和除濕器控制濕度的增加和減少,加熱器和冷風機控制溫度的升高和降低。當溫濕度超過極限范圍時,報警器工作,提醒管理員采取措施。這里采用電磁繼電器,將單片機和市電設備在電氣上隔離。溫濕度控制硬件電路接線圖如圖5所示。

圖5 溫濕度控制硬件電路接線圖
3.1 溫濕度采集程序設計
上電之后等待11ms度過“休眠”狀態。當MCU發送“啟動傳輸”時序之后,再發送溫度測量命令、濕度測量命令。MCU在SHT11完成測量進入空閑模式之后按照讀時序讀出測量數據。
3.2 無線傳輸程序設計
nRF905在收發數據之前需要通過SPI總線配置有效數據寬度、工作頻段、發射功率、CRC校驗位等選項。
當MCU發送數據時通過SPI總線將接收機地址和傳輸數據送給nRF905無線收發器數據寄存器。首先MCU將上電引腳PWR_UP、收發使能引腳TRX_CE和發送使能引腳TX_EN置高,啟動nRF905的ShockBrust發送模式,開始進行數據打包并發送數據包。數據準備引腳DR在數據發送完成后被置高,當自動重發引腳AUTO_RETRAN被置高時nRF905會不斷的重新發送數據,直至收發使能引腳TRX_CE被置低。當數據發送完成時,自動進入空閑模式等待下一次數據傳輸。

圖6 nRF905發送模式程序流程圖

圖7 nRF905接收模式程序流程圖
通過將收發使能引腳TRX_CE置高,發送使能引腳TX_EN置低使nRF9005進入ShockBrust接收模式。等待650us之后監測是否有接收頻段載波。當監測到接收頻段載波后檢測載波引腳CD置高并進行地址匹配。當驗證接收地址有效時,地址匹配引腳AM被置高。當數據包接收完畢并通過CRC校驗后,nRF905自動移除前導碼、地址和循環冗余校驗位并將數據準備引腳DR置高。之后當收發使能引腳TRX_CE置低時nRF905進入空閑模式,MCU通過SPI總線從nRF905的寄存器中讀取數據。當數據接收完畢將數據準備引腳DR和地址匹配引腳AM置低準備下一次數據傳輸[3]。
發送模式和接收模式的程序流程圖分別見圖6和圖7。
3.3 軟件抗干擾
為了提高系統的穩定性,采用中位值平均濾波算法對SHT11溫濕度傳感器采集的數據進行數字濾波[4]。首先連續采樣5次,通過冒泡排序法取得中位值作為本次采集有效數據。重復多次得到足夠數量的采集有效數據之后,求解算術平均值作為輸出數據。
4.1 模糊PID控制原理
溫濕度控制系統的運行結果直接受控制精度影響,同時溫度和濕度的變化都是非線性、時變時滯的。常規PID控制精度高,魯棒性好,結構簡單,但不適用于非線性變化的無確知模型系統,控制參數無法跟隨變化的系統。模糊控制適用于非線性變化的無法精確建模的系統,可以適應快速響應和微超調量的需求,適合于對非線性時變時滯系統進行控制,為此將模糊控制引入常規PID控制中,以提高控制系統的靜態和動態性能。由于單片機控制屬于數字控制方式,常規PID控制中的積分項和微分項需要進行離散化處理,數字式PID表達式如式(1)所示:

式中,e(k)、u(k)為采樣點時刻誤差量和輸出控制量;T為采樣周期,必須足夠短以保證足夠的精度。
模糊PID控制是根據不同時刻控制環境產生不同的測量誤差|e|和誤差變化率|de/dt|即|ec|,通過模糊推理,在線調整PID控制器的控制參數以滿足不同環境下對控制機構性能的要求。這種方法有效的增強了系統的動態、穩態性能,抑制了溫濕度監控系統的時滯性,提高了系統的靈活性。
模糊PID控制工作原理:首先由測量機構算出精確量|e|和|ec|,根據模糊數學理論將其模糊化成輸入模糊量,然后模糊推理機根據事先制定好的模糊規則推理出輸出模糊量,將輸出模糊量精確化成精確量,即為PID控制器的控制參數KP、KI、KD,驅動PID控制器對被控對象進行控制。
模糊PID控制框圖如圖8所示。

圖8 模糊PID控制框圖
4.2 PID參數整定規則
模糊PID控制器的關鍵在于設計一個合理的模糊推理規則,該規則表征系統誤差|e|和誤差變化率|ec|發生變化時如何調整PID控制器的控制參數。整定規律歸納如下:
(1)當|e|較大時,取較大的KP、KI=0和較小的KD。三者的作用分別是提高系統的響應速度,削弱系統時滯性帶來的副作用、抑制積分飽和的產生、避免微分飽和使得控制作用超出極限控制范圍。
(2)當|e|中等大小時,取較小的KP、適當的KI和KD。前者的作用是避免系統出現劇烈的波動、后兩者的作用是保證系統的響應速度。此時系統受KD參數的影響比較大。
(3)當|e|較小時,取較大的KP、較大的KI。兩者的作用是使系統擁有良好的穩態性能,系統殘差小。其中為了抑制系統在目標點鄰域出現振蕩并增強抗干擾性能,當|ec|較小時,取較大的KD;當|ec|較大時,取較小的KD[6]。
4.3 模糊推理規則
考慮到增加輸入量個數會大大增加推理時的計算量,這里模糊控制器選擇二維輸入三維輸出的形式,以|e|和|ec|為輸入,以KP、KI、KD為輸出。|e|和|ec|的論域為{0,1.5, 3,4.5},模糊語言變量為{Z,S,N,B},隸屬度函數分別如圖9、10所示。KP、KI、KD的論域為{0,1.5,3,4.5},模糊語言變量為{Z,S,N,B}。各模糊語言變量的隸屬度函數均取三角形函數。其隸屬度函數如圖11所示。

圖9 |e|的隸屬度函數

圖10 |ec|的隸屬度函數

圖11 KP、KI、KD的隸屬度函數
模糊規則表如表1、2、3所示。

表1 KP的模糊規則表

表2 KI的模糊規則表

表3 KD的模糊規則表

圖12

圖13

圖14
4.4 模糊量的精確化
由于MCU的計算能力有限且需要在線對PID控制參數進行整定,所以要求精確化過程的運算量不能過大,且輸入量的微小噪聲不能引起輸出量的劇烈波動。常用的精確化方式有加權平均法、面積平分法和最大隸屬度法,其中加權平均法對于對稱型輸出隸屬度函數較為適合。這里選擇加權平均法作為精確化方式,如式 (2)所示:

綜合以上四個步驟,把輸入變量輸入模糊控制器,經過精確量的模糊化、模糊推理、模糊量的去模糊化,最終得到精確輸出量送給PID控制器。
最后通過在MATLAB建立本系統,得出Kp、Ki、Kd的參數曲線,如圖12、13、14所示。
采用常規PID控制方式存在局限,需花費大量精力整定PID控制器的控制參數且無法適應復雜被控對象,限制了其應用范圍。將模糊控制與常規PID控制結合組成模糊PID控制,通過模糊推理在線整定PID控制器的參數,可以提高溫濕度監控系統的控制性能,平穩、快速的將系統調整到目標狀態,減小了系統的過調量,提高了控制系統的穩定性和動態性,對被控對象實現穩定、快速的控制,提高了溫濕度控制的精度,為工業、農業生產活動提供了良好的生產環境,提高經濟效益。通過引入數字濾波技術增加系統采集數據的穩定性,SHT11溫濕度數字式傳感器降低了系統的維護難度,采用nRF905無線傳輸器提高了布置系統的便利性,避免了有線傳輸的線路故障因素。同時nRF905無線收發器可以實現一主多從的傳輸方案,故可建立多個溫濕度測量節點,組成分布式監測系統。同時也可將數據傳輸到電腦等數據中心,在上位機上實現實時監控,方便用戶進行操作。
[1]Sensirion Humidity SHT1x Datasheet CN V5[Z] Sensirion,2011.
[2]nRF905 Product Specification[Z] NORDIC,2008.
[3]題原,宋飛,劉樹東,等.基于nRF905的無線溫濕度檢測與傳輸系統設計[J].化工自動化及儀表,2011,38(4):404-407.
[4]趙蓮維,姜重然,王 鹍.現場總線分布式糧情系統溫濕度測量數字濾波器的設計[J].農機化研究,2011,(7):129-132.
[5]諸靜.模糊控制理論與系統原理[M].北京:機械工業出版社,2005.
[6]趙笑笑.基于模糊理論與常規PID控制的模糊PID控制方法研究[J].山東電力技術,2009(6):54-63.
潘鉞(1993—),安徽安慶人,大學本科,從事嵌入式系統控制研究。
生芳(1981—),遼寧營口人,碩士,安徽工程大學講師,研究方向:單片機嵌入式系統。
國家大學生創新訓練項目(201210363127)。
水源(1994—),男,安徽合肥人,大學本科,從事嵌入式系統控制研究。