孵化机温度模糊控制器设计与仿真
2014-07-18李侠朱道春
李侠 朱道春
摘要:温度控制的精度和稳定性是孵化机系统急需解决的关键技术,系统中的被控对象不能建立精确的数学模型。为了提高温度控制精度和稳定性,采用模糊控制方法设计模糊控制器并通过Matlab进行仿真。对模糊规则的仿真说明规则较合理,对系统的仿真表明模糊控制器超调量较小,调节时间大约为20秒,系统稳定。
关键词:孵化机;温度;模糊控制;隶属函数;仿真
中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2014)13-3156-04
Design and Simulation of Hatcher Temperature Fuzzy Controller
LI Xia1,ZHU Dao-chun2
(1.Institute of Computer Software, Anhui Vocational College of Electronical Information Technology, Bengbu 233000, China;2. Bengbu Dajiang Electronics Co., Ltd., Bengbu 233000, China)
Abstract: It is the key technology to solve urgently that temperature control precision and stability in the hatching machine system. The mathematical model of the controlled object in the system cant be set up accurately. In order to improve temperature control accuracy and stability, fuzzy control method is used to design fuzzy controller and it is take simulation by Matlab. Fuzzy rules are reasonable through rules simulation. It is showed that the overshoot is small, the response time is about 20 seconds, the system is stability by the system simulation.
Key words: hatcher;temperature; fuzzy control; membership function; simulation
家禽种蛋孵化机(简称孵化机)是根据家禽孵化的生物学原理用于孵化出雏的人工控制生态环境的仿生设备。随着孵化器容量的增加及对胚胎发育生理的不断研究,对孵化控制器控制精度的要求越来越高。生产实践研究表明温度不当会导致胚胎发育增快或迟缓、气室大、胚胎死亡率增加、初生雏鸡质量下降等结果[1]。因此,温度控制是孵化过程中急需解决的关键技术之一。模糊控制利用模糊集合理论把人的控制策略转化为计算机能够接受的算法语言所描述的控制算法,模拟人的思维方式对一些无法构造数学模型的被控对象进行控制。采用传统控制理论设计一个控制系统需要知道被控对象的精确数学模型,然而,在许多情况下被控对象的精确数学模型很难甚至根本建立不了,采用模糊控制可以解决这类难题。自从20世纪60年代模糊数学建立以来,模糊控制技术已经应用到生产、管理、家电、军事等领域。孵化机中的温度系统是一种非线性的、滞后的、时变系统,很难建立精确的数学模型[2],因此对本孵化机温度控制系统采用模糊控制是非常适合的。该文将主要介绍孵化机中温度模糊控制器设计并通过Matlab进行仿真,仿真表明模糊控制器超调量较小,调节时间大约为20秒,系统稳定。
1 温度模糊控制器设计
1.1 温度模糊控制系统的结构
模糊逻辑控制系统的结构与普通控制系统结构类似,只是控制器不一样,模糊逻辑控制系统的基本结构如图1所示。系统输入值为给定值与输出值之间的差值,然后模糊控制器对被控对象进行控制。模糊控制器主要完成三个功能:①模糊化:把系统的偏差从精确量转化为模糊量;②推理决策:根据推理规则对模糊量进行模糊推理;③精确化:把推理结果的模糊输出量转化为实际系统能够接受的精确数字量或模拟量。
图1 模糊逻辑控制系统基本结构
温度模糊控制系统的控制目标是温度,对给定值温度与从被控制对象获得的反馈温度值进行比较得到偏差,然后把偏差输入给模糊控制器由控制器决定如何进一步控制被控制对象的温度。在环境温度为24℃-25℃的前提下立体孵化箱的孵化温度范围应该在36.5℃-40℃,其中最适宜的孵化温度是37.8℃。本系统的设计目标是把温度控制为37.8℃,误差范围为[-1℃,+1℃]。控制器输入量有两个,分别是温度偏差te和温度偏差变化tc。温度偏差te表示孵化箱内的温度与设定温度之间的差,温度偏差变化tc表示温度变高或变低的速率。
1.2 模糊控制器设计
模糊控制器设计的主要内容包括对控制器的输入和输出进行模糊化、模糊规则建立、模糊逻辑推理和精确化。
模糊控制系统的输入是精确量。采用模糊控制时就需要把它们转换成模糊集合中的隶属函数的值。在模糊控制算法中,温度偏差的实际变化范围称为输入变量的基本论域,本系统中温度偏差的基本论域为[-1℃,+1℃],把基本论域进行量化得到对应的模糊集论域,通常表示为[-n,-n+l,…,O,…,n-1,n]。n值过大会使控制规则变得复杂,太小又会使模糊处理结果粗糙而影响控制精度。根据孵化机实际控制情况,选择温度模糊集的论域n为4,即[-4,-3,-2,-1,0,1,2,3,4]共9个等级。要实现模糊化处理还必须把模糊集论域的元素和模糊语言值对应起来。根据模糊集论域的划分原则,输入语言变量值分别为:NL(负大),NM(负中),NS(负小),ZE(0),PS(正小),PM(正中),PL(正大)共7个档次。输出控制量tu用于控制加热,其基本论域为[0,1,2,3,4],对应的模糊论域为[0,1,2,3,4],分别表示加热电阻丝的5种工作状态:ZE(不加热),PS(较小加热),PM(中等加热),PL(较大加热),PF(完全加热)。考虑到孵化箱内温度的分布特点温度偏差的隶属函数采用三角形函数的形式[2]。温度偏差变化与温度偏差的模糊集论域、语言值集合与隶属函数一样。输入和输出量的隶属函数如图2所示。控制器采用三角形的隶属函数,即能保证精度又可减少模糊化时的计算工作量,且系统实现时程序较简单。
(a) 温度偏差te与温度偏差变化tc的隶属函数
(b) 输出量tu的隶属函数
图2 控制器的隶属函数
控制规则是模糊控制器的核心[3]。模糊控制规则建立可以通过有经验的操作者或专家的控制知识和经验制定,通常写成控制规则表。控制规则的实质是通过语言条件语句来模拟人类的控制行为。确定模糊控制规则的原则是使系统输出响应的动态以及静态特性达到最佳。当误差大或较大时,选择控制量以尽快消除误差为主;而当误差较小时,选择控制量要注意防止超调,以系统的稳定性为主。总结行业经验可以得到孵化箱温湿度的模糊控制规则,如表1所示。
控制器根据控制规则进行推理,推理结果是一个模糊集合。但在控制中必须要有精确的值才能对被控对象进行驱动。精确化就是把模糊结果转换成精确值,转换方法有最大隶属度函数法、重心法、加权平均法等。
2 温度模糊控制器仿真及分析
2.1 Matlab模糊控制器工作过程
Matlab中的模糊工具箱(Fuzzy Toolbox)为仿真模糊控制系统提供了很大的方便。Matlab软件提供了一个模糊推理系统编辑器。模糊推理系统编辑器用于设计和显示模糊推理系统的一些基本信息,如推理系统的名称、输入、输出变量的个数与名称,模糊推理系统的类型、精确化等。其中模糊推理系统可以采用Mandani或Sugeuo两种类型,精确化方法支持最大隶属度法、重心法、加权平均等。模糊工具箱提供的模糊控制器工作过程如图3所示。控制过程从左下角的输入开始,由于输入值是精确值,需要转换成对应的隶属函数值,然后作为每条规则的判断条件,如图中步骤1所示;当得到所有规则的推理结果后执行步骤4所示的聚合功能,到此完成整个推理过程;最后进行步骤5表示的精确化操作得到本次输入经过模糊推理得到的精确数值。
图3 模糊控制器工作过程
2.2 温度模糊控制器规则仿真
模糊规则浏览器用于显示各条模糊控制规则对应的输入量和输出量的隶属度函数。通过指定输入量,可以直接的显示所采用的控制规则,以及通过模糊推理得到相应输出量的全过程,以便对模糊规则进行修改和优化。通过规则浏览器查看本系统控制器结果如图4所示。从规则浏览器的结果数值可以观察到当温度误差-0.147,温度变化为-3.45时,控制量为3.26。这说明当温度误差小,温度快速下降时,系统会加快加热电阻丝输出。
图4 模糊规则浏览器结果
通过推理规则的三维视图能够看到更多规则信息,如图5所示。从图中可以看到当偏差te为PS、PM、PL,偏差变化tc为PM、PL时,图形左下方控制量tu值为0,说明当系统超调严重时系统将使加热输出0,这时系统需要配合其它降温措施重新使温度达到要求。
图5 模糊规则三维视图
2.3 温度模糊控制系统仿真
尽管孵化机精确的数学模型很难建立,为了仿真需要可以建立一个比较粗略的模型[4]用于辅助模糊控制器设计,温度模糊控制系统仿真图如图6所示,图中模拟控制器模块实现了以上介绍的控制器功能。仿真结果如图7所示。从图中可以看到,系统加热时最高温度上冲到38.5左右,20s后温度基本维持在37.5℃左右。这说明温度控制器响应超调小,调节时间小,能很进入稳定状态,且控制精确较高,运行稳定。由于采用的孵化机被控对象模型较粗略,虽然仿真效果理想,但还需要在实际环境中进行调试改进。
图6 温度模糊控制系统仿真图
图7 模糊温度控制曲线
3 结论
通过对温度控制器规则和孵化机温度控制系统的仿真,说明模糊温度控制器可以较好地对温度进行控制,温度控制器超调小,响应快,精确度较高,运行较稳定。系统仿真为后续的实现提供了技术保证,并为其它孵化机系统设计者提供应用参考。
参考文献:
[1] 张丽娟,赵玉才,郭吉友,等.孵化室温度对孵化率的影响[J].畜牧兽医科技信息,2004(11):39-42.
[2] 兰海军.基于单片机的多孵化箱温湿度控制系统的研究[D].武汉:华中农业大学,2008.
[3] 杨帆,陈茂林,马新文,等.基于模糊PID算法的净化空调监控系统.2014,42(1):120-123.
[4] 刘涛,平庆杰,贺彪,等.专家-模糊PID算法在孵化机温控系统的应用[J].安徽理工大学学报:自然科学版,2010,30(2):21-24.
(a) 温度偏差te与温度偏差变化tc的隶属函数
(b) 输出量tu的隶属函数
图2 控制器的隶属函数
控制规则是模糊控制器的核心[3]。模糊控制规则建立可以通过有经验的操作者或专家的控制知识和经验制定,通常写成控制规则表。控制规则的实质是通过语言条件语句来模拟人类的控制行为。确定模糊控制规则的原则是使系统输出响应的动态以及静态特性达到最佳。当误差大或较大时,选择控制量以尽快消除误差为主;而当误差较小时,选择控制量要注意防止超调,以系统的稳定性为主。总结行业经验可以得到孵化箱温湿度的模糊控制规则,如表1所示。
控制器根据控制规则进行推理,推理结果是一个模糊集合。但在控制中必须要有精确的值才能对被控对象进行驱动。精确化就是把模糊结果转换成精确值,转换方法有最大隶属度函数法、重心法、加权平均法等。
2 温度模糊控制器仿真及分析
2.1 Matlab模糊控制器工作过程
Matlab中的模糊工具箱(Fuzzy Toolbox)为仿真模糊控制系统提供了很大的方便。Matlab软件提供了一个模糊推理系统编辑器。模糊推理系统编辑器用于设计和显示模糊推理系统的一些基本信息,如推理系统的名称、输入、输出变量的个数与名称,模糊推理系统的类型、精确化等。其中模糊推理系统可以采用Mandani或Sugeuo两种类型,精确化方法支持最大隶属度法、重心法、加权平均等。模糊工具箱提供的模糊控制器工作过程如图3所示。控制过程从左下角的输入开始,由于输入值是精确值,需要转换成对应的隶属函数值,然后作为每条规则的判断条件,如图中步骤1所示;当得到所有规则的推理结果后执行步骤4所示的聚合功能,到此完成整个推理过程;最后进行步骤5表示的精确化操作得到本次输入经过模糊推理得到的精确数值。
图3 模糊控制器工作过程
2.2 温度模糊控制器规则仿真
模糊规则浏览器用于显示各条模糊控制规则对应的输入量和输出量的隶属度函数。通过指定输入量,可以直接的显示所采用的控制规则,以及通过模糊推理得到相应输出量的全过程,以便对模糊规则进行修改和优化。通过规则浏览器查看本系统控制器结果如图4所示。从规则浏览器的结果数值可以观察到当温度误差-0.147,温度变化为-3.45时,控制量为3.26。这说明当温度误差小,温度快速下降时,系统会加快加热电阻丝输出。
图4 模糊规则浏览器结果
通过推理规则的三维视图能够看到更多规则信息,如图5所示。从图中可以看到当偏差te为PS、PM、PL,偏差变化tc为PM、PL时,图形左下方控制量tu值为0,说明当系统超调严重时系统将使加热输出0,这时系统需要配合其它降温措施重新使温度达到要求。
图5 模糊规则三维视图
2.3 温度模糊控制系统仿真
尽管孵化机精确的数学模型很难建立,为了仿真需要可以建立一个比较粗略的模型[4]用于辅助模糊控制器设计,温度模糊控制系统仿真图如图6所示,图中模拟控制器模块实现了以上介绍的控制器功能。仿真结果如图7所示。从图中可以看到,系统加热时最高温度上冲到38.5左右,20s后温度基本维持在37.5℃左右。这说明温度控制器响应超调小,调节时间小,能很进入稳定状态,且控制精确较高,运行稳定。由于采用的孵化机被控对象模型较粗略,虽然仿真效果理想,但还需要在实际环境中进行调试改进。
图6 温度模糊控制系统仿真图
图7 模糊温度控制曲线
3 结论
通过对温度控制器规则和孵化机温度控制系统的仿真,说明模糊温度控制器可以较好地对温度进行控制,温度控制器超调小,响应快,精确度较高,运行较稳定。系统仿真为后续的实现提供了技术保证,并为其它孵化机系统设计者提供应用参考。
参考文献:
[1] 张丽娟,赵玉才,郭吉友,等.孵化室温度对孵化率的影响[J].畜牧兽医科技信息,2004(11):39-42.
[2] 兰海军.基于单片机的多孵化箱温湿度控制系统的研究[D].武汉:华中农业大学,2008.
[3] 杨帆,陈茂林,马新文,等.基于模糊PID算法的净化空调监控系统.2014,42(1):120-123.
[4] 刘涛,平庆杰,贺彪,等.专家-模糊PID算法在孵化机温控系统的应用[J].安徽理工大学学报:自然科学版,2010,30(2):21-24.
(a) 温度偏差te与温度偏差变化tc的隶属函数
(b) 输出量tu的隶属函数
图2 控制器的隶属函数
控制规则是模糊控制器的核心[3]。模糊控制规则建立可以通过有经验的操作者或专家的控制知识和经验制定,通常写成控制规则表。控制规则的实质是通过语言条件语句来模拟人类的控制行为。确定模糊控制规则的原则是使系统输出响应的动态以及静态特性达到最佳。当误差大或较大时,选择控制量以尽快消除误差为主;而当误差较小时,选择控制量要注意防止超调,以系统的稳定性为主。总结行业经验可以得到孵化箱温湿度的模糊控制规则,如表1所示。
控制器根据控制规则进行推理,推理结果是一个模糊集合。但在控制中必须要有精确的值才能对被控对象进行驱动。精确化就是把模糊结果转换成精确值,转换方法有最大隶属度函数法、重心法、加权平均法等。
2 温度模糊控制器仿真及分析
2.1 Matlab模糊控制器工作过程
Matlab中的模糊工具箱(Fuzzy Toolbox)为仿真模糊控制系统提供了很大的方便。Matlab软件提供了一个模糊推理系统编辑器。模糊推理系统编辑器用于设计和显示模糊推理系统的一些基本信息,如推理系统的名称、输入、输出变量的个数与名称,模糊推理系统的类型、精确化等。其中模糊推理系统可以采用Mandani或Sugeuo两种类型,精确化方法支持最大隶属度法、重心法、加权平均等。模糊工具箱提供的模糊控制器工作过程如图3所示。控制过程从左下角的输入开始,由于输入值是精确值,需要转换成对应的隶属函数值,然后作为每条规则的判断条件,如图中步骤1所示;当得到所有规则的推理结果后执行步骤4所示的聚合功能,到此完成整个推理过程;最后进行步骤5表示的精确化操作得到本次输入经过模糊推理得到的精确数值。
图3 模糊控制器工作过程
2.2 温度模糊控制器规则仿真
模糊规则浏览器用于显示各条模糊控制规则对应的输入量和输出量的隶属度函数。通过指定输入量,可以直接的显示所采用的控制规则,以及通过模糊推理得到相应输出量的全过程,以便对模糊规则进行修改和优化。通过规则浏览器查看本系统控制器结果如图4所示。从规则浏览器的结果数值可以观察到当温度误差-0.147,温度变化为-3.45时,控制量为3.26。这说明当温度误差小,温度快速下降时,系统会加快加热电阻丝输出。
图4 模糊规则浏览器结果
通过推理规则的三维视图能够看到更多规则信息,如图5所示。从图中可以看到当偏差te为PS、PM、PL,偏差变化tc为PM、PL时,图形左下方控制量tu值为0,说明当系统超调严重时系统将使加热输出0,这时系统需要配合其它降温措施重新使温度达到要求。
图5 模糊规则三维视图
2.3 温度模糊控制系统仿真
尽管孵化机精确的数学模型很难建立,为了仿真需要可以建立一个比较粗略的模型[4]用于辅助模糊控制器设计,温度模糊控制系统仿真图如图6所示,图中模拟控制器模块实现了以上介绍的控制器功能。仿真结果如图7所示。从图中可以看到,系统加热时最高温度上冲到38.5左右,20s后温度基本维持在37.5℃左右。这说明温度控制器响应超调小,调节时间小,能很进入稳定状态,且控制精确较高,运行稳定。由于采用的孵化机被控对象模型较粗略,虽然仿真效果理想,但还需要在实际环境中进行调试改进。
图6 温度模糊控制系统仿真图
图7 模糊温度控制曲线
3 结论
通过对温度控制器规则和孵化机温度控制系统的仿真,说明模糊温度控制器可以较好地对温度进行控制,温度控制器超调小,响应快,精确度较高,运行较稳定。系统仿真为后续的实现提供了技术保证,并为其它孵化机系统设计者提供应用参考。
参考文献:
[1] 张丽娟,赵玉才,郭吉友,等.孵化室温度对孵化率的影响[J].畜牧兽医科技信息,2004(11):39-42.
[2] 兰海军.基于单片机的多孵化箱温湿度控制系统的研究[D].武汉:华中农业大学,2008.
[3] 杨帆,陈茂林,马新文,等.基于模糊PID算法的净化空调监控系统.2014,42(1):120-123.
[4] 刘涛,平庆杰,贺彪,等.专家-模糊PID算法在孵化机温控系统的应用[J].安徽理工大学学报:自然科学版,2010,30(2):21-24.