基于PID的水温控制系统设计
摘要
本次设计采用proteus仿真软件,以AT89C51单片机做为主控单元,运用PID控制算法,仿真实现了一个恒温控制系统。设计中使用温度传感器DS18B20采集实时温度,不需要复杂的信号调理电路和A/D转换电路,能直接与单片机完成数据的采集和处理,使用PID算法控制加热炉仿真模型进行温度控制,总体实现了一个恒温控制仿真系统。系统设计中包含硬件设计和软件设计两部分,硬件设计包含显示模块、按键模块、温度采集模块、温度加热模块。软件设计的部分,采用分层模块化设计,主要有:键盘扫描、按键处理程序、液晶显示程序、继电器控制程序、温度信号处理程序。另外以 AT89C51 单片机为控制核心,利用PID 控制算法提高了水温的控制精度,使用PID 控制算法实施自动控制系统,具有控制参数精度高、反映速度快和稳定性好的特点。
关键词:proteus仿真,PID,AT89C51,DS18B20温度控制
目录
1系统总体设计方案论证 ......................................................................................................... 1 1.1 设计要求 ........................................................................................................................ 1 1.2 总体设计方案 ................................................................................................................ 2 2系统的硬件设计 ..................................................................................................................... 3 2.1 系统硬件构成概述 ........................................................................................................ 3 2.2 各单元总体说明 ............................................................................................................ 4 2.3 按键单元 ........................................................................................................................ 5 2.4 LCD液晶显示单元 ........................................................................................................ 6 2.5温度测试单元 ................................................................................................................. 7 2.6温度控制器件单元 ......................................................................................................... 8 3恒温控制算法研究(PID) ................................................................. 错误!未定义书签。 3.1 PID控制器的设计 ......................................................................................................... 7 3.2 PID算法的流程实现方法与具体程序 ....................................................................... 10 4系统的软件设计 ................................................................................................................... 14 4.1 统软件设计概述 .......................................................................................................... 14 4.2 系统软件程序流程及程序流程图 .............................................................................. 15 4.3 温度数据显示模块分析 .............................................................................................. 16 4.4 测试分析 ...................................................................................................................... 18 5模拟仿真结果 ....................................................................................... 错误!未定义书签。
1系统总体设计方案论证
1.1 设计要求
一种基于数字PID和单片机的温度控制系统设计。要求如下: 1、超调量≤10%
2、温度可调,范围;K1=50度 K2=60度 K3=70度 K4=80度 3、人—机对话方便 4、温度误差≤±1℃ 1.2 总体设计方案
在仿真设计中,先通过按键设置温度,然后通过温度传感器DS18B20,从环境中采集温度,由单片机获取采集的温度值,经过处理后,可得到当前环境温度中一个比较稳定的温度值,并且通过LCD液晶显示。再去根据当前设定的温度值进行比较,温度未达到预定的下限温度时,单片机将通过P2.6口连接的RELAY输出高电平控制信号来驱动RL1,使得加热棒工作,为系统提供热量,来升高温度。温度上升到预定上限温度时,单片机将通过P2.6口连接的RELAY输出低电平控制信号来驱动RL1,使得加热棒停止加热,让温度慢慢回落[3]。
工作原理图如图1.1所示:
在设计中使用温度传感器DS18B20采集实时温度,使用PID算法控制加热炉仿真模型进行温度控制。DS18B20是DALLAS公司生产的经典的数字温度传感器,具有低功耗、高性能、抗干扰能力、微型化、强易配处理器等等优点,它特别适合用于多点温度测控的系统,它可直接将温度转化成数字信号,交给单片机处理,并且在同一总线上可挂接多个传感器芯片,进行范围性的温度检测。在其内部集成了A/D转换器,可使电路结构更简单,且减少了温度测量转换时的精度损失。数字温度传感DS18B20只用一个引脚,即可与单片机进行连接了,这样大大的减少了设计中接线麻烦的问题,使得单片机可以节约许多端口。DS18B20芯片的体积又比较小,且还是单线与主控芯片连接,于是在实际运用中,常常把数字温度传感器DS18B20做成小型的测量温度的探头,即使是一些狭小的位置也能很方便的检测到,使温控系统发挥最大的作用[4]。
在本仿真设计中DS18B20与51单片机的P3.4口链接。DS18B20可以仿真设置环境温度,来完成设计要求。
本次设计采用proteus仿真软件,以AT89C51单片机做为主控单元。51单片机上连接晶振和复位电路,保证单片机的正常运行。P0口与LCD液晶连接,显示测量结果。P1.0,P1.4,P3.3,P3.4分别与4个控制按键连接。由AT89C51的端口丰富使得整个系统设计起来方便简单,线路清晰,且AT89C51是一个高性能,低功耗的CMOS8位单片机,AT89C51设计和配置了振荡频率可为0Hz,在实际的应用中性价比很高,是温控系统的不二选择。本设计中选择AT89C51做为主控单位也是考虑到了实际的需求和做此设计的意义的[5]。
2系统的硬件设计
2.1 系统硬件构成概述
本章主要介绍本次设计中的硬件设计部分,其中包含:显示模块、按键扫描模块、温度采集模块、温度加热模块。
相关推荐: