首页 > 范文大全 > 正文

恒温水浴温度智能控制方法研究与实现

开篇:润墨网以专业的文秘视角,为您筛选了一篇恒温水浴温度智能控制方法研究与实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要本文以模糊控制为主要方法恒温水浴智能温度控制系统,主要以STC89C52单片机为控制核心。阐述了模糊控制系统设计,选取水浴实际温度与目标温度之间的偏差与偏差变化率作为输入变量实现二维模糊控制的Matlab仿真,选取温度偏差实现一维模糊控制,通过不断进行实验,总结出一套合适的模糊控制规则,能够将实际温度、目标温度、加热方式显示在1602液晶上,并且将温度控制在设定温度的±0.1℃~0.2℃。

关键词恒温水浴;温度;模糊控制;单片机

1恒温水浴工作原理

图1为恒温水浴的原理框图,系统以STC89C52单片机为控制和信息处理核心,主要完成水浴温度采集、加热与制冷工作方式判决、LCD显示、目标温度输入、水浴温度控制等功能。STC89C52根据设定的水浴目标温度和水浴温度的差值进行加热与制冷工作方式判决,当目标温度高于水浴温度时,单片机通过固态继电器SSR控制加热装置工作;当水浴目标温度低于水浴温度时,单片机通过继电器控制加热装置工作,制冷装置由于条件限制,采用发光二极管代替。

2恒温水浴模糊控制

通过Simulink建立水浴加热模型,如图2所示。

通过Simulink仿真,以E(温度差值),EC(温差变化率)为输入量,U为控制量,得到了较好的控制效果。但是如果将二维模糊控制算法用单片机实现,算法复杂。

本系统采用一维模糊控制实现,目标温度与水浴实际温度之间的误差e作为输入变量,控制量u作为输出变量。系统中温度误差e、控制量u的基本论域分别为[0℃,+3℃]和[0,1]。E为温度误差的模糊输入变量,E=INT[Round(e/k)]。

3系统硬件设计

本系统主要由单片机控制电路、水浴温度采集电路、键盘控制电路、lcd显示电路组成。

温度控制电路主要由可控硅固态继电器构成,红、绿色LED灯分别代表加热和制冷,本设计中使用5401PNP型三极管,由单片机发出信号通过P2.6口控制继电器通断,从而使热得快通电加热。

温度采集电路使用DS18820智能温度传感器,无需外接限流电阻,可以直接从传感器中读取温度,如图3所示,18820-1用来测外部环境温度,数据口与单片机P2.5口相连,ds18b20用来测水浴温度,数据口与单片机P2.4口相连。

4基于C语言的恒温水浴的实现

4.1主函数的设计

单片机主程序主要用来实现对整个系统工作的控制、目标温度的设置,显示功能,以及与DS18b20温度采集,具体工作流程如图4所示。

图4中,e为温度误差,即设置的目标温度与水浴实际温度的差值,Td为目标温度,T为水浴实际温度。4.2模糊控制程序设计及实现

温度控制主要通过STC89C52的P1.3和P1.4口控制,P1.3口外接绿色的发光二极管,通过发光二极管来模拟压缩机制冷,P1.4口控制固态继电器驱动电路工作,通过固态继电器来控制热得快的加热。

4.3 DS18820温度采集

数字传感器DS18b20的初始化。DS18820对时序有着非常高的要求,单总线上的所有通信都是以初始化序列开始,包括主机发出的复位脉冲及从机的应答脉冲。当从机发出响应主机的应答脉冲时,即向主机表明它处于总线上,且工作准备就绪。在主机初始化过程,主机通过拉低单总线至少480μs,以产生(Tx)复位脉冲。接着,主机释放总线,并进入接收模式(Rx)。在单总线器件检测到上升沿后,延时15μs~60μs,接着通过拉低总线60μs~240μs,以产生应答脉冲。

5测试方案与测试结果

5.1测试方案

用继电器模块来控制200W“热得快”来对长方形玻璃水缸中的5L水进行加热,用键盘设定需要加热的目标温度值,观察1602液晶显示稳定时的水温值,多次调试并设定模糊控制规则参数来完善该系统。

5.2测试结果

经过多次测试,得到如表1数据。