基于单片机的水温控制系统设计与实现(精选计算机物联网毕业设计-源码+设计)
SpringBoot、Vue、HTML、Uniapp、PHP、Python、NodeJS、爬虫、数据可视化、SMT32单片机、小程序、安卓、大数据、物联网、机器学习等设计与实现
文档参考
引言
水温控制系统概述
温度控制是无论是在工业生产过程中,还是在日常生活中都起着非常重要的作用,过低的温度或过高的温度都会使水资源失去应有的作用,从而造成水资源的巨大浪费。特别是在当前全球水资源极度缺乏的情况下,我们更应该掌握好对水温的控制,把身边的水资源好好地利用起来。
在现代冶金、石油、化工及电力生产过程中,温度是极为重要而又普遍的热工参数之一。在环境恶劣或温度较高等场合下,为了保证生产过程正常安全地进行,提高产品的质量和数量,以及减轻工人的劳动强度、节约能源,要求对加热炉炉温进行测、显示、控制,使之达到工艺标准,以单片机为核心设计的炉温控制系统,可以同时采集多个数据,并将数据通过通讯口送至上位机进行显示和控制。那么无论是哪种控制,我们都希望水温控制系统能够有很高的精确度(起码是在满足我们要求的范围内),帮助我们实现我们想要的控制,解决身边的问题。
在计算机没有发明之前,这些控制都是我们难以想象的。而当今,随着电 子行业的迅猛发展,计算机技术和传感器技术的不断改进,而且计算机和传感器的价格也日益降低,可靠性逐步提高,用信息技术来实现水温控制并提高控制的精确度不仅是可以达到的而且是容易实现的。用高新技术来解决工业生产问题, 排除生活用水问题实施对水温的控制已成为我们电子行业的任务,以此来加强工业化建设,提高人民的生活水平。
本设计任务和主要内容
1.基本要求
一升水由1kW的电炉加热,要求水温可以在一定范围内由人工设定,并能在环境温度降低时实现自动调整,以保持设定的温度基本不变。
2.主要性能指标
① 温度设定范围:,最小区分度为。
② 控制精度:温度控制的静态误差。
③ 用十进制数码显示实际水温。
3.扩展功能
① 具有通信能力,可接收其他数据设备发来的命令,或将结果传送到其他数据设备。
② 采用适当的控制方法实现当设定温度或环境温度突变时,减小系统的调节时间和超调量。
③ 温度控制的静态误差。
系统设计原理
水温控制体框图
该水温控制系统主要由AT89C51单片机控制系统、前向通道(温度采样转换电路)、后向通道(温度控制电路)、键盘显示电路等四部分组成,其总体设计框图如下图所示。
论证
(一)、方案论证与比较
本题目是设计制作一个水温控制系统,对象为一升净水,加热器为1KW的电炉。 要求能在35℃–95℃范围内设定控制水温,并具有较好的快速性和较小的超调,以及十进制数码管显示等功能。
1、总体方案设计及论证
根据题目的要求,我们提出了以下的两种方案:
方案1:此方案是采用传统的二位模拟控制方法,选用模拟电路,用电位器设定给定值,采用上下限比较电路将反馈的温度值与给定的温度值比较后,决定加热或者不加热。由于采用模拟控制方式,系统受环境的影响大,不能实现复杂的控制算法使控制精度做得教高,而且不能用数码显示和键盘设定。
方案2:采用单片机AT89C51为核心。采用了温度传感器AD590采集温度变化信号,A/D采样芯片ADC0804将其转换成数字信号并通过单片机处理后去控制温度,使其达到稳定。使用单片机具有编程灵活,控制简单的优点,使系统能简单的实现温度的控制及显示,并且通过软件编程能实现各种控制算法使系统还具有控制精度高的特点。比较上述两种方案,方案2明显的改善了方案1的不足及缺点,并具有控制简单、控制温度精度高的特点,因此本设计电路采用方案2。
电路方案论证
本电路以单片机为基础核心,系统由前向通道模块、后向控制模块、系统主模块及键盘显示摸块等四大模块组成。现将各部分主要元件及电路做以下的论证:
(1)、温度采样部分
方案1:采用热敏电阻,可满足35℃–95℃的测量范围,但热敏电阻精度、重复性和可靠性都比较差,对于检测精度小于1℃的温度信号是不适用的。
方案2:采用温度传感器AD590。:AD590具有体积小、质量轻、线形度好、性能稳定等优点。其测量范围在-50℃-- +150℃,满刻度范围误差为±0.3℃,当电源电压在5—10V之间,稳定度为1﹪时,误差只有±0.01℃,其各方面特性都满足此系统的设计要求。此外AD590是温度-电流传感器,对于提高系统抗干扰能力有很大的帮助。
经上述比较,方案2明显优于方案1,故选用方案2。
(2)、键盘显示部分
控制与显示电路是反映电路性能、外观的最直观部分,所以此部分电路设计的好坏直接影响到电路的好坏。
方案1:采用可编程控制器8279与数码管及地址译码器74LS138组成,可编程/显示器件8279实现对按键的扫描、消除抖动、提供LED的显示信号,并对LED显示控制。用8279和键盘组成的人机控制平台,能够方便的进行控制单片机的输出。
方案2:采用单片机AT2051与地址译码器74LS138组成控制和扫描系统,并用2051的串口对主电路的单片机进行通信,这种方案既能很好的控制键盘及显示,又为主单片机大大的减少了程序的复杂性,而且具有体积小,价格便宜的特点。
对比两种方案可知,方案1虽然也能很好的实现电路的要求,但考虑到电路设计的成本和电路整体的性能,我们采用方案2。
(3)、控制电路部分
方案1:采用8031芯片,其内部没有程序存储器,需要进行外部扩展,这
给电路增加了复杂度。
方案2:本方案的CPU模块采用2051芯片,其内部有2KB单元的程序存储器,不需外部扩展程序存储器。但由于系统用到较多的I/O口,因此此芯片资源不够用。
方案3:采用AT89C51单片机,其内部有8KB单元的程序存储器,不需外部扩展程序存储器,而且它的I/O口也足够本次设计的要求。
比较这3种方案,综合考虑单片机的各部分资源,因此此次设计选用方案3。设计电路图如图2-2 所示:
电路设计
系统的信号采样和转换电路主要由温度传感器AD590、基准电压7812、运算放大器OP-07及A/D转换电路ADC0804四部分组成。设计电路图如图3-1所示:
(1) AD590性能描述
测量范围在-50℃–+150℃,满刻度范围误差为±0.3℃,当电源电压在5—10V之间,稳定度为1﹪时,误差只有±0.01℃ 。AD590为电流型传感器温度每变化1℃其电流变化1uA在35℃和95℃时输出电流分别为308.2uA 和368.2uA。
(2)基准电压7812提供12V标准电压,它与运算放大器OP-07和电阻组成信号转换与放大电路,将35℃–95℃的温度转换为0—5V的电压信号。
(3)ADC0804性能描述
ADC0804为8位逐次逼近型A/D转换器,其输入电压范围在0—5v,转换速度为100us,转换精度为0.39﹪,对应误差为0.234℃。
满足系统的要求。
(4)电路原理及参数计算
温度采样电路的基本原理是采用电流型温度传感器AD590将温度的变化量转换成电流量,再通过OP-07将电流量转换成电压量,通过A/D转换器ADC0804将其转换成数值量交由单片机处理。图3-1中三端稳压7812作为基准电压,由运放虚短虚断可知运放OP-07的反向输入端(2脚)的电压为零伏。当输出电压为零伏时(即Uo=0v) ,令7812的输出电压为=12V,OP-07的2脚处为A点,AD590的转换电流为。列出A点的结点方程如下:
(1)
由于系统控制的水温范围为35℃–95℃,所以当输出电压为零伏时AD590的输出电流为308.2uA,因此为了使Ui的电位为零就必须使电流 等于电流等于308.2uA, 三端稳压7812的输出电压为12v所以由方程(1)得
= =38.94k (2)
由(2)取电阻R1=30k , R2=20k的电位器。
又由于ADC0804的输入电压范围为0—5v ,为了提高精度所以令水温为95℃时ADC0804的输入电压为5v(即Uo=5v)。此时列出A点的结点方程如下:
(3)当水温为95℃时AD590的输出电流为368.2uA。由方程式(3)得
+=83.33k因此取=81k , =5k的电位器。
键盘及数字显示部分
为什么选择我?
我就是程序员,程序大部分由博主亲自开发完成,现在有很多人看似在做程序设计,但是并不会进行讲解,因为程序根本不是他做出来的,从我这里做的毕设,都可以享有代码讲解服务,会议博主亲自讲解,可以全程录音录屏!这就是我的保障,代码哪里不懂都可以问!!!
获取源码
大家点赞、收藏、关注、评论 啦
查看👇🏻文章下方名片联系我即可~👇🏻
精彩专栏推荐订阅:在下方专栏
Python精品毕设案例《2000套》
PHP精品毕设案例《1000套》
Java精品实战案例《3000套》
微信小程序项目精品案例《3000套》
基于大数据、数据分析大屏、爬虫精品毕设案例
更多推荐
所有评论(0)