基于51单片机的温度控制系统设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于51单片机的水温自动控制系统

0 引言

在现代的各种工业生产中 ,很多地方都需要用到温度控制系统。而智能化的控制系统成为一种发展的趋势。本文所阐述的就是一种基于89C51单片机的温度控制系统。本温控系统可应用于温度范围30℃到96℃。

1 设计任务、要求和技术指标

1.1任务

设计并制作一水温自动控制系统,可以在一定范围(30℃到96℃)内自动调节温度,使水温保持在一定的范围(30℃到96℃)内。

1.2要求

(1)利用模拟温度传感器检测温度,要求检测电路尽可能简单。

(2)当液位低于某一值时,停止加热。

(3)用AD转换器把采集到的模拟温度值送入单片机。

(4)无竞争-冒险,无抖动。

1.3技术指标

(1)温度显示误差不超过1℃。

(2)温度显示范围为0℃—99℃。

(3)程序部分用PID算法实现温度自动控制。

(4)检测信号为电压信号。

2 方案分析与论证

2.1主控系统分析与论证

根据设计要求和所学的专业知识,采用AT89C51为本系统的核心控制器件。AT89C51是一种带4K字节闪存可编程可擦除只读存储器的低电压,高性能CMOS 8位微处理器。其引脚图如图1所示。

2.2显示系统分析与论证

显示模块主要用于显示时间,由于显示范围为0~99℃,因此可采用两个共阴的数码管作为显示元件。在显示驱动电路中拟订了两种设计方案:

方案一:采用静态显示的方案

采用三片移位寄存器74LS164作为显示电路,其优点在于占用主控系统的I/O口少,编程简单且静态显示的内容无闪烁,但电路消耗的电流较大。

方案二:采用动态显示的方案

由单片机的I/O口直接带数码管实现动态显示,占用资源少,动态控制节省了驱动芯片的成本,节省了电 ,但编程比较复杂,亮度不如静态的好。

由于对电路的功耗要求不大,因此就在尽量节省I/O口线的前提下选用方案一的静态显示。

图1 AT89C51引脚图

2.3 检测系统分析与论证

1 温度检测:有选用AD590和LM35D两种温度传感器的方案,但考虑到两者价格差距较大,而本系统中对温度要求的精度不很高,因而选用比较廉价LM35D。温度传感器采用的是NS公司生产的LM35D,他具有很高的工作精度和较宽的线性工作范围,他的输出电压与摄氏温度线性成比例,且无需外部校准或微调,可以提供±1/ 4 ℃的常用的室温精度。L M35的输出电压与摄氏温度的线形关系可用下面公式表示 ,0 ℃时输出为 0 V , 每升高 1 ℃ , 输出电压增加10 mV。其电源供应模式有单电源与正负双电源两种,其接法如图2与图3所示。正负双电源的供电模式可提供负温度的测量,单电源模式在25 ℃下电流约为50 mA ,非常省电。本系统采用的是单电源模式。

Vout=10mV/℃×T(℃)

2 液位检测:同样考虑到成本问题,选用自己做一个液位传感装置。

图2 单电源模式图3 双电源模式

2.4控制系统分析与论证

由于需要用大功率加热装置对水温进行调节,故采用带过零检测双向可控硅输出光电耦合器MOC3041构成后向控制电路。

3 系统原理框图

硬件组成框图如图4所示:主要由AT89C51单片机、温度信号采集和调理、AD转换、数码显示电路、温度控制等部分组成。

图4 硬件框图

电源开启后,可以显示出实时的温度,并且可以判断出此时的温度是否需要对水进行加热操作

4 硬件电路

4.1温度信号检测和调理电路

LM35D 采用单电源供电模式如图2将采集到的电压信号送入运放uA741进行放大处理,如图5。

图5 信号采集调理电路

4.2 显示电路

显示电路由两片74LS164和两个数码管构成,为了PCB 中作图的方便,故采用如图6的连接方式。

温度采集电 路 信号调理电 路

A/D 转 换电路

单 片 机 系 统

温度显 示 执行电 路

液位检测

图6 温度显示电路

时钟由单片机的P1.1提供,第一个数码管的数据由单片机的P1.0提供,第二个数码管的数据由第一个164的Q7提供。164的时序图如图7所示。

图7 74LS164的时序图

4.3 温度控制电路

温度控制电路由光电耦合器MOC3041和双向晶闸管BT137构成,硬件连接如图8。

图8 温度控制电路

4.4 AD转换电路

本部分电路由ADC0809和一些74系列芯片构成,其中74LS74用于对单片机的ALE信号进行分频作为0809的时钟,74LS373用做地址锁存实现单片机P0口的分时复用。该部分硬件电路如图9所示。

图9 AD转换电路

4.5主控系统电路

该系统由AT89C51构成,由5V电源供电,采用6Mhz的晶振。主控系统电路主要承担显示及对温度的PID控制的核心引用,各功能通过软件软件实现。图10为单片机的主控电路。

图10 单片机主控电路

4.6整体PCB图见附件A

5 软件部分

5.1主程序流程说明

主程序的任务主要是循环检测采集到的温度值,不断比较实现PID控制。流程图如下:

图11 主程序流程图

5.2各子程序模块流程

5.2.1显示部分

显示部分主要包括三个小模块:第一、原始数据的拆分;第二、待显示数据查表;第三、待显示数据的输出。数据分配表如图12,送待显示数据流程如图13,查表流程如图14

图13 待显示数据输出流程图14 查表程序流程

5.2.2中断程序部分

中断部分包括定时器中断(主要实现1秒刷新一次显示)和外部中断(检测液位。为防止抖动,设置一个标志位,进入中断后判断标志位,如果一秒钟内没有出中断,则响应,否则不响应),流程图分别如图15和图16。

相关文档
最新文档