基于数据融合和模糊控制的养殖环境调控系统设计
2019-01-24
(淮安信息职业技术学院 江苏 淮安 223003)
养殖行业属于传统行业,养殖环境质量的好坏直接影响到家畜的健康状况和生产性能的高低,结合互联网及物联网技术可以采集养殖环境数据并加以分析和处理,进一步提升养殖的效益。互联网和传统行业的结合被称为“互联网+”,“互联网+”产生了海量的工业数据,需要采用大数据及智能控制相关技术进行分析和处理,并用智能控制替代人工作业。
1.总体设计
养殖环境是一个复杂的非线性系统,很难建立精确的数学模型,而模糊控制系统的鲁棒性强,适合非线性、时变或滞后系统的控制[1]。
系统总体设计如图1所示,规模化的大型养殖企业一般具有多个分厂,每个分厂有多个畜舍,在养殖环境中可布放多个温度、湿度、空气等传感器,对采集到的大量数据进行融合处理并传输到总厂,由模糊控制系统集中对各指标进行调控。系统根据模糊控制算法智能控制风扇、湿帘、加热器等环境调控设备,改善环境状况。整个控制系统是一个多输入、多输出的系统。
图1 系统总体设计Fig.1 General design of the system
2.数据融合处理
在数据采集过程中,单一传感器可能带来单点故障及数据失真等问题[2],因此一般采用多传感器,但多个同质传感器之间可能存在信息冗余和矛盾[3],因此系统引入了多传感器数据融合算法,提高系统决策的可靠性和稳定性。
常见的数据融合算法包括经典推理和统计方法、加权平均法、贝叶斯估计法、聚类分析法、D-S证据推理法等[4],本系统采用改进加权平均法。若多个同质传感器之间互不干扰,则数据一般服从正态分布[5],令第i个传感器的测量值为xi,则数据融合算法如下:
2.1 求n个测量值的求均值和方差σ
2.2 计算每个测量值xi和均值之间的模糊贴近度βi
2.3 计算每个测量值的相对权重
2.4 计算n个测量值的数据融合结果
3.模糊控制
3.1 模糊控制系统设计
模糊控制系统设计如图2所示,以养殖环境传感器数据融合处理的结果作为输入值,一般包括:温度、湿度、氨气浓度、二氧化氮浓度、光照等;系统输出值用于控制执行机构,如风机、加热设备、加湿设备等[6]。
图2 模糊控制系统设计Fig.2 Design of fuzzy control system
由于多输出的模糊控制算法过于复杂,因此可利用模糊控制器的解耦特性,将模糊控制系统分解为多个单输出的子系统[7],如表1所示。例如可根据温度和湿度控制加湿器(含湿帘等)的加湿时间,本文将以此为例设计模糊控制器。
表1 模糊控制输入输出解耦表Table 1 Fuzzy control system input and output decoupling
3.2 论域和隶属度函数
畜舍内的温度一般为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
3.3 模糊控制规则
采用“if A and B then C”形式的模糊推理方法,其中A、B为输入模糊子集,C为输出模糊子集[10]。根据实践调试经验得出表1所示模糊控制规则表,又称模糊关系矩阵,共25条控制规则:
表2 模糊控制规则表Table2 Rules of fuzzy control
3.4 模糊推理
系统采用Mamdani模糊推理法,其本质是一种合成推理方法,其原理如下[11-12]:若A、B为输入论域的模糊集合,C为输出论域的模糊集合,则根据公式8计算模糊关系矩阵R,其中×为模糊直积运算,T1为列向量转换:
给定输入Ai和Bi,则输出为Ci,其中T2为行向量转换,·为模糊合成运算:
3.5 解模糊化
模糊推理的结果是包含隶属度的模糊矢量,因此还需要进行解模糊化才能控制执行机构。解模糊化常用方法包括最大隶属度、重心法(面积中心法)、加权平均法。本设计采用重心法,即取模糊隶属度函数曲线与坐标围成面积的重心作为最终输出值。设μ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
4.结语
为提高养殖的质量和效益,本文设计了一种基于数据融合和模糊控制的养殖环境调控系统。系统包括数据融合和模糊控制两个子系统,并以数据融合子系统的输出作为模糊控制子系统的输入。在数据融合子系统中,提出了一种改进的加权平均法,提高采集数据的有效性和稳定性;在模糊控制子系统中,使用模糊控制器的解耦特性将模糊控制系统解耦为多个单输出的子系统,并以温度、湿度双输入控制加湿时间为例进行设计,定义输入输出的论域和隶属度函数,定义包含25条控制规则的模糊控制表,使用Mamdani法进行模糊推理,使用重心法进行解模糊化。系统仿真输出曲面平滑,可使用本系统智能控制养殖环境调控设备,将养殖环境参数控制在最佳值附近。