(淮安信息職業技術學院 江蘇 淮安 223003)
養殖行業屬于傳統行業,養殖環境質量的好壞直接影響到家畜的健康狀況和生產性能的高低,結合互聯網及物聯網技術可以采集養殖環境數據并加以分析和處理,進一步提升養殖的效益。互聯網和傳統行業的結合被稱為“互聯網+”,“互聯網+”產生了海量的工業數據,需要采用大數據及智能控制相關技術進行分析和處理,并用智能控制替代人工作業。
養殖環境是一個復雜的非線性系統,很難建立精確的數學模型,而模糊控制系統的魯棒性強,適合非線性、時變或滯后系統的控制[1]。
系統總體設計如圖1所示,規模化的大型養殖企業一般具有多個分廠,每個分廠有多個畜舍,在養殖環境中可布放多個溫度、濕度、空氣等傳感器,對采集到的大量數據進行融合處理并傳輸到總廠,由模糊控制系統集中對各指標進行調控。系統根據模糊控制算法智能控制風扇、濕簾、加熱器等環境調控設備,改善環境狀況。整個控制系統是一個多輸入、多輸出的系統。
圖1 系統總體設計Fig.1 General design of the system
在數據采集過程中,單一傳感器可能帶來單點故障及數據失真等問題[2],因此一般采用多傳感器,但多個同質傳感器之間可能存在信息冗余和矛盾[3],因此系統引入了多傳感器數據融合算法,提高系統決策的可靠性和穩定性。
常見的數據融合算法包括經典推理和統計方法、加權平均法、貝葉斯估計法、聚類分析法、D-S證據推理法等[4],本系統采用改進加權平均法。若多個同質傳感器之間互不干擾,則數據一般服從正態分布[5],令第i個傳感器的測量值為xi,則數據融合算法如下:
模糊控制系統設計如圖2所示,以養殖環境傳感器數據融合處理的結果作為輸入值,一般包括:溫度、濕度、氨氣濃度、二氧化氮濃度、光照等;系統輸出值用于控制執行機構,如風機、加熱設備、加濕設備等[6]。
圖2 模糊控制系統設計Fig.2 Design of fuzzy control system
由于多輸出的模糊控制算法過于復雜,因此可利用模糊控制器的解耦特性,將模糊控制系統分解為多個單輸出的子系統[7],如表1所示。例如可根據溫度和濕度控制加濕器(含濕簾等)的加濕時間,本文將以此為例設計模糊控制器。
表1 模糊控制輸入輸出解耦表Table 1 Fuzzy control system input and output decoupling
畜舍內的溫度一般為5℃~35℃,定義輸入量溫度的基本論域為[5,35]。定義 5 個模糊子集:負大(NB)、負小(NS)、零(Z0)、正小(PS)、正大(PB)。 定義高斯型隸屬度函數[8]:
其中 σ 取值為 5,NB、NS、ZO、PS、PB 隸屬度函數中 c取值分別為5、12.5、20、27.5、35。因此溫度的論域和隸屬度函數曲線如圖3所示:
圖3 輸入量溫度論域及隸屬度函數曲線Fig.3 Domain and membership function curve of input field of temperature
畜舍內濕度一般為50%~90%,定義輸入量濕度的基本論域為[50,90]。 定義 5 個模糊子集(NB、NS、ZO、PS、PB)和高斯型隸屬度函數(公式 6),其中 σ 取值為 6.795,NB、NS、ZO、PS、PB 隸屬度函數中 c取值分別為50、60、70、80、90。因此濕度的論域和隸屬度函數曲線如圖4所示:
圖4 輸入量濕度論域及隸屬度函數曲線Fig.4 Domain and membership function curve of input field of humidity
畜舍加濕器的每次加濕時間一般為0~30分鐘,定義輸出量加濕時間基本論域為[0,30]。分為5個模糊子集:長(LO)、稍長(LM)、中等(ME)、稍短(SM)、關閉(CL)。定義穩定、簡單的三角型隸屬度函數[9]:
其中 CL、SM、ME、LM、LO 隸屬度函數中(a,b,c)分別取值為(-6,0,6)、(1.5,7.5,13.5)、(9,15,21)、(16.5,22.5,28.5)、(24,30,36)。 因此加濕時間的論域和隸屬度函數曲線如圖5所示:
圖5 輸出量加濕時間論域及隸屬度函數曲線Fig.5 Domain and membership function curve of output field of humidifying time
采用“if A and B then C”形式的模糊推理方法,其中A、B為輸入模糊子集,C為輸出模糊子集[10]。根據實踐調試經驗得出表1所示模糊控制規則表,又稱模糊關系矩陣,共25條控制規則:
表2 模糊控制規則表Table2 Rules of fuzzy control
系統采用Mamdani模糊推理法,其本質是一種合成推理方法,其原理如下[11-12]:若A、B為輸入論域的模糊集合,C為輸出論域的模糊集合,則根據公式8計算模糊關系矩陣R,其中×為模糊直積運算,T1為列向量轉換:
給定輸入Ai和Bi,則輸出為Ci,其中T2為行向量轉換,·為模糊合成運算:
模糊推理的結果是包含隸屬度的模糊矢量,因此還需要進行解模糊化才能控制執行機構。解模糊化常用方法包括最大隸屬度、重心法(面積中心法)、加權平均法。本設計采用重心法,即取模糊隸屬度函數曲線與坐標圍成面積的重心作為最終輸出值。設μv(v)為輸出隸屬函數,則重心法解模糊化結果μ可按公式10(v為連續域)或者公式11(v為離散域 vi,i=1.n)計算[12]:
例如:給定輸入的模糊推理輸出如下:
則解模糊化的結果為:
使用Matlab的Fuzzy Logic工具箱進行系統仿真,觀察系統輸入輸出。例如取溫度=17、濕度=75,則輸出的加濕時間=5.67,如圖6所示:
圖6 Matlab仿真:給定輸入的規則匹配及輸出Fig.6 Matlab simulation:rules matching and output of given input
系統仿真輸出曲面如圖7所示,輸出曲面總體光滑,穩定可靠,可將養殖環境參數控制在最佳值附近。
圖7 Matlab仿真:輸出曲面Fig.7 Matlab simulation:output surface
為提高養殖的質量和效益,本文設計了一種基于數據融合和模糊控制的養殖環境調控系統。系統包括數據融合和模糊控制兩個子系統,并以數據融合子系統的輸出作為模糊控制子系統的輸入。在數據融合子系統中,提出了一種改進的加權平均法,提高采集數據的有效性和穩定性;在模糊控制子系統中,使用模糊控制器的解耦特性將模糊控制系統解耦為多個單輸出的子系統,并以溫度、濕度雙輸入控制加濕時間為例進行設計,定義輸入輸出的論域和隸屬度函數,定義包含25條控制規則的模糊控制表,使用Mamdani法進行模糊推理,使用重心法進行解模糊化。系統仿真輸出曲面平滑,可使用本系統智能控制養殖環境調控設備,將養殖環境參數控制在最佳值附近。