基于单片机的温度控制系统设计
基于单片机的温度控制系统设计[20191215165506]
摘 要
随着全球气候不断的变化,每年的最高温度持续升高,带来的影响是每年南北极的冰面融化、海平面上升,甚至连世界第一高峰—珠穆朗玛峰的高度都在每年下降。而在人们的日常生活中,由最高温度的上升或者最低温度的下降带来的后果是生活生产中辛苦获得食物、水果、蔬菜等越来越难以储存,尤其是在冬天,一些农作物丰收了,在人们收集到,储存在家里还没准备往外销售,这时候温度的突变带来的损失无法预计,甚至有时候运输在路上了遇到温度骤降或者是其他因素的影响直接导致了整次交易的失败,而损失却只得由自己来承担。
基于温度对人们日常生活中的影响越来越大由最高温度的上升或者最低温度的下降带来的后果无法难以预料,因此温度的测量方法和测量装置均为重要的研究课题,设计并制作一个精确度高、低成本、便于移动和测量的温度控制系统对与解决果农们日常储存果类或其他农作物具有极大的帮助。
本文详细叙述了基于单片机的温度控制系统设计的全过程,该系统主要是从硬件设计和软件设计两方面来设计,温度测量部分,是通过以AT89S52单片机作为控制器,利用温度传感器DS18B20作为测温的敏感器件来采集温度,由LCD1602液晶为显示部件显示实时温度。软件方面采用C语言进行编程,使指令的执行速度快,节省外部存储空间,采用的模式是设计成模块化的结构,这样有利于设计者和阅读程序者有更清晰的思路和逻辑关系。为了使操作人员更加方便的观测与操控,加入串口模块,上位机则利用C#自行制作了一个具有独特功能的串口调试助手,从而通过串口通信让操作人员在远离测量现场的地方使用上位机对系统进行人工控制或者自动控制的选择。
查看完整论文请+Q: 351916072
关键字:单片机系统;温度传感器;液晶;串口
目 录
摘 要 I
ABSTRACT II
目 录 III
第1章 绪论 1
1.1 问题的提出及研究意义 1
1.2 温度控制系统的研究概述 2
1.3 本文章节安排 2
第2章 系统的方案选择和论证 3
2.1 系统各个模块电路的方案选择与论证 3
2.2 系统选择的最终方案 5
第3章 温度控制系统的硬件设计 6
3.1 单片机最小系统 6
3.2 温度采集模块 9
3.3 液晶显示模块 12
3.4 串口通信模块 14
3.5 控制和报警模块 16
3.6 温度控制系统硬件实物图 17
第4章 温度控制系统的软件设计 19
4.1 主程序的设计 19
4.2 温度采集模块的软件设计 20
4.3 液晶显示模块的软件设计 21
4.4 串口模块的软件设计 23
4.5 报警和控制模块的软件设计 24
第5章 系统的调试 26
5.1 硬件调试 26
5.2 软件调试 28
第6章 总结与展望 32
6.1 总结 32
6.2 展望 33
结束语 35
致谢 37
参考文献 38
附录 41
外文翻译 55第1章 绪论
1.1 问题的提出及研究意义
1.问题的提出
随着微电子技术和电子计算机技术的飞速发展、人们生活质量的越来越高和日常生产中对于生产的速度和需求的加快,使得单片机在各个领域的应用也越来越广泛。而在我的家乡赣州,尤其是赣州的南面,那里的人们有很多是以种植橘子、脐橙为生,到了收获的季节,大量的橘子脐橙就会堆积在一起,这时候如果遇到了潮湿的天气或者是温度比较高的日子,这些堆积起来的或者储存在加工、包装厂里面甚至有很多放在家里的橘子脐橙之间就会相互催熟,容易导致腐烂。如果仅仅依靠人工常常去检查这些橘子脐橙的质量不仅费时而且要耗费大量的人力和资金,因此如何在降低成本的前提下控制这些橘子和脐橙的新鲜度和成熟度是非常重要的。所以,不仅仅对于依靠种植橘子脐橙的果农来说,对于所有的以种植为生的人来说,拥有一个高效率的、精确度高的、具有实时性的温度检测和控制的系统是当前最为需要解决的问题。
2.研究意义
温度对于日常生活中的我们来说只是一个表达冷热与否的词语,但是从严格意义来说,温度是一个物理量,它是用来表征物体冷热水平的一个基本量,为了能够更加方便、更加精确的测量温度,本次设计将使用单片机作为核心来制作所符合需求的系统。
而利用单片机所具有的体积微小、功能强大、性价比高等特点,在使用基于单片机所设计的温度控制系统的时候,通过对部分设计的灵活变化、个别模块的设计使得产品小型化、智能化,不但使得产品有可靠的性能,并且在节约了资金的同时拥有较高的质量。所以,设计一个基于单片机的测出温度与控制它的系统对于提高产品的质量、确保生产效率、保护生产安全起到了很重要的功用;另外对促进国民经济的发展也能起到非常重要的作用。
1.2 温度控制系统的研究概述
1.课题研究的内容
本次毕业设计的是基于AT89S52单片机的温度测量与控制系统的设计,主要是介绍了对指定地点的实时测量、控制及报警,实现了温度的实时显示与控制,同时将数据发送给上位机进行其他处理操作。温度测量部分,基于单片机的硬件电路,最基本的是使用温度传感器DS18B20完成对环境温度的连续监测、然后将被测出的值需要实时显示则利用LCD1602进行显示,通过软件编程,由硬件电路与软件的共同作用来实现对周围环境的测量和对温度数据进行分析并处理;而温度控制部分,由独立按键控制温度报警上下限值,报警上下限可根据时间随时更改、由LED灯、蜂鸣器进行报警提醒工作人员需要人工干预来控制;另外通过串口,将采集到的数据发送给远端PC机,由PC机或监控人员进行判断与操作或者为上位机进行复杂的运算决策做好铺垫。
2.课题研究的要求
用单片机实现的具体功能如下:
(1)、可以连续测量指定地点的温度值,用LCD1602液晶实时显示待测地点或者物体实际温度;
(2)、用单片机AT89S52控制,通关按键来设定温度报警值的报警上限与报警下限,报警限值与实时温度同时显示在LCD1602上;
(3)、利用串口通信,使得操作人员需要知道当前环境的温度值时,能够在远端PC机上收到数据,而不需要一直守在测量现场。
1.3 本文章节安排
通过对课题研究要求的仔细理解和对任务书内容的详细阅读后,总结出本文即将叙述的内容,并将文章的章节安排列在这里:
第2章将讲述系统的方案选择和论证,第3章和第4章将分别从系统的硬件设计和系统的软件设计两方面来说明本次设计的过程,而第5章则是讲述系统的调试,第6章为总结与展望。第2章 系统的方案选择和论证
2.1 系统各个模块电路的方案选择与论证
通过阅读文献和上网查找资料,了解到温度控制系统的设计至少需要包含温度测量模块、显示电路模块、键盘模块和报警模块。下面将介绍各模块可以选择的方案以及这些方案的对比,然后通过对比总结出本次系统的最佳方案选择。
1.温度测量模块
方案一:
通过学习传感器知识可以知道有一种可以用来作为热敏元件的传感器,就是热敏电阻传感器,热敏电阻的电阻值与温度之间的某种关系——电阻值由一个系数它会随着温度的上升或下降来改变,是以,通过仪表测量出热敏电阻的电阻值变化,就可以根据热敏电阻的电阻值与温度关系计算出相应的温度值。最常用的是铂金电阻传感器,铂金电阻在氧化介质中,它的化学性质不变。当温度上升或下降的时候,铂金电阻的电阻值就会随之发生改变,而这种电阻值的变化经过小信号变换装置的转化后变化为电流电流,再通过设备把电流信号变换为为电压信号,送到A/D转换器,就能够使得模拟信号转换为数字信号。此方案电路结构复杂,不易搭建,并且误差较大。
方案二:
采用温度传感器DS18B20。DS18B20为数字式温度传感器能够测量出的温度范围高达-55℃~125℃,能够直接读取温度数据,可以直接与单片机通讯,所用的硬件电路简单易懂,且不需要额外的外加电路,就能够输出数字量。而且DS18B20在实际使用的时候可以由用户设置从而达到0.0625℃的最大分辨率也是它的特点之一。Dallas半导体公司继发布DS1820后又发布的具有支持“一线总线”接口特点的温度传感器DS18B20是数字化温度传感器。更加令人惊讶的是电源与信号完美的复合在一起利用的是“一线总线”这一种特别的技术,而且是只利用一根口线,每一块芯片都有独一的序列号码,允许多片DS18B20联结成网络并对它们寻址,温度传感,网络简单的、零功率消耗等等都是它的特点。
与以前使用的热敏电阻传感器制作出的测量硬件电路系统相比较,DS18B20允许直接测到被测物体的温度值并且可以直接被读出,并且可以按照实际需求使用简单的编程来实现读数方式从9到12位数字值之间的变换,而且由于DS18B20自身的特点,不管是从DS18B20读取信息或者往DS18B20写入信息只需要一条数据线,因此运用了DS18B20的系统的结构会显得更加简单,可靠性更高。温度传感器DS18B20无论是在测量精度,转换时间,传输距离或是分辨率等方面都有令人非常满意的表现。
所以此次设计中选用温度传感器DS18B20作为测温模块,不仅仅节省了A/D转换,而且还节省了I/O口,提高了测量精确度的同时将误差减到最小。
2.显示电路模块
方案一:使用数码管动态显示。使用数码管动态显示需要额外加外部驱动一次增加输出电流来更好的驱动数码管显示。这种方案虽然电路结构上简单,缺点却是成本高,完成动态刷新需要使用特定的编程才可以实现。
方案二:使用LCD1602液晶。LCD1602液晶为内部是16字*2行的RAM的缓冲区可以用来显示,本次设计中只需要往LCD1602中写入要显示的数据,一行显示实时温度,一行显示温度报警上下限值,操作简单。相对于数码管来说,LCD1602对温度的监控更为直观明朗。
对比而言,从直观和便于观测方面来说,本次设计选用LCD1602作为显示模块。
3.键盘模块
方案一:采用4*4矩阵型键盘。在众多方法的前提下,如果是为了减少I/O口的占用和使用,矩阵键盘的排列通常是以矩阵的形式来排列按键的。然而由于矩阵键盘一般要求使用特定的键盘扫描程序,并且占用了较大的空间,所以虽然相对于独立按键来说,节约了一大部分数据线,但是无益于整体的调试。
方案二:采用独立按键。独立按键的布线简单,不论程序或者硬件本身都是很容易理解的,没有特别的键盘扫描程序,占用空间和资源都比较小。另外本次设计中只需要调节控制温度报警限值的上限和下限,即用4个按键即可。
对比而言,在此次设计中选择独立按键节省了资源,性价比较高。
4.报警模块
按照设计的要求,当温度值超出由按键设定的报警上限值或低于报警下限值的时候,应该具备有自动报警功能。
因此,我决定使用一只蜂鸣器作为三极管的集电极负载,当温度值不在正常范围的时候,三极管就会导通,继而蜂鸣器发出鸣叫声提示报警;而温度回归到正常范围之内时,三极管将会截止,蜂鸣器相应的停止发声。
2.2 系统选择的最终方案
基于以上分析,综合器件和设备的影响、成本和其他因素,确定最终方案如下:
1、采用AT89S52单片机作为核心控制器,分别对温度连续采集、液晶实时显示、温度报警上下限值的设定、报警开关以及串口通信的控制。
2、温度测量模块,采用数字温度传感器DS18B20。当需要DS18B20处在最高分辨率测量时,由简单的软件编程即可达成。
3、显示模块用液晶显示实时温度值和报警上下限值。
系统的基本框图如图2.1所示。
图2.1 系统基本框图
第3章 温度控制系统的硬件设计
3.1 单片机最小系统
摘 要
随着全球气候不断的变化,每年的最高温度持续升高,带来的影响是每年南北极的冰面融化、海平面上升,甚至连世界第一高峰—珠穆朗玛峰的高度都在每年下降。而在人们的日常生活中,由最高温度的上升或者最低温度的下降带来的后果是生活生产中辛苦获得食物、水果、蔬菜等越来越难以储存,尤其是在冬天,一些农作物丰收了,在人们收集到,储存在家里还没准备往外销售,这时候温度的突变带来的损失无法预计,甚至有时候运输在路上了遇到温度骤降或者是其他因素的影响直接导致了整次交易的失败,而损失却只得由自己来承担。
基于温度对人们日常生活中的影响越来越大由最高温度的上升或者最低温度的下降带来的后果无法难以预料,因此温度的测量方法和测量装置均为重要的研究课题,设计并制作一个精确度高、低成本、便于移动和测量的温度控制系统对与解决果农们日常储存果类或其他农作物具有极大的帮助。
本文详细叙述了基于单片机的温度控制系统设计的全过程,该系统主要是从硬件设计和软件设计两方面来设计,温度测量部分,是通过以AT89S52单片机作为控制器,利用温度传感器DS18B20作为测温的敏感器件来采集温度,由LCD1602液晶为显示部件显示实时温度。软件方面采用C语言进行编程,使指令的执行速度快,节省外部存储空间,采用的模式是设计成模块化的结构,这样有利于设计者和阅读程序者有更清晰的思路和逻辑关系。为了使操作人员更加方便的观测与操控,加入串口模块,上位机则利用C#自行制作了一个具有独特功能的串口调试助手,从而通过串口通信让操作人员在远离测量现场的地方使用上位机对系统进行人工控制或者自动控制的选择。
查看完整论文请+Q: 351916072
关键字:单片机系统;温度传感器;液晶;串口
目 录
摘 要 I
ABSTRACT II
目 录 III
第1章 绪论 1
1.1 问题的提出及研究意义 1
1.2 温度控制系统的研究概述 2
1.3 本文章节安排 2
第2章 系统的方案选择和论证 3
2.1 系统各个模块电路的方案选择与论证 3
2.2 系统选择的最终方案 5
第3章 温度控制系统的硬件设计 6
3.1 单片机最小系统 6
3.2 温度采集模块 9
3.3 液晶显示模块 12
3.4 串口通信模块 14
3.5 控制和报警模块 16
3.6 温度控制系统硬件实物图 17
第4章 温度控制系统的软件设计 19
4.1 主程序的设计 19
4.2 温度采集模块的软件设计 20
4.3 液晶显示模块的软件设计 21
4.4 串口模块的软件设计 23
4.5 报警和控制模块的软件设计 24
第5章 系统的调试 26
5.1 硬件调试 26
5.2 软件调试 28
第6章 总结与展望 32
6.1 总结 32
6.2 展望 33
结束语 35
致谢 37
参考文献 38
附录 41
外文翻译 55第1章 绪论
1.1 问题的提出及研究意义
1.问题的提出
随着微电子技术和电子计算机技术的飞速发展、人们生活质量的越来越高和日常生产中对于生产的速度和需求的加快,使得单片机在各个领域的应用也越来越广泛。而在我的家乡赣州,尤其是赣州的南面,那里的人们有很多是以种植橘子、脐橙为生,到了收获的季节,大量的橘子脐橙就会堆积在一起,这时候如果遇到了潮湿的天气或者是温度比较高的日子,这些堆积起来的或者储存在加工、包装厂里面甚至有很多放在家里的橘子脐橙之间就会相互催熟,容易导致腐烂。如果仅仅依靠人工常常去检查这些橘子脐橙的质量不仅费时而且要耗费大量的人力和资金,因此如何在降低成本的前提下控制这些橘子和脐橙的新鲜度和成熟度是非常重要的。所以,不仅仅对于依靠种植橘子脐橙的果农来说,对于所有的以种植为生的人来说,拥有一个高效率的、精确度高的、具有实时性的温度检测和控制的系统是当前最为需要解决的问题。
2.研究意义
温度对于日常生活中的我们来说只是一个表达冷热与否的词语,但是从严格意义来说,温度是一个物理量,它是用来表征物体冷热水平的一个基本量,为了能够更加方便、更加精确的测量温度,本次设计将使用单片机作为核心来制作所符合需求的系统。
而利用单片机所具有的体积微小、功能强大、性价比高等特点,在使用基于单片机所设计的温度控制系统的时候,通过对部分设计的灵活变化、个别模块的设计使得产品小型化、智能化,不但使得产品有可靠的性能,并且在节约了资金的同时拥有较高的质量。所以,设计一个基于单片机的测出温度与控制它的系统对于提高产品的质量、确保生产效率、保护生产安全起到了很重要的功用;另外对促进国民经济的发展也能起到非常重要的作用。
1.2 温度控制系统的研究概述
1.课题研究的内容
本次毕业设计的是基于AT89S52单片机的温度测量与控制系统的设计,主要是介绍了对指定地点的实时测量、控制及报警,实现了温度的实时显示与控制,同时将数据发送给上位机进行其他处理操作。温度测量部分,基于单片机的硬件电路,最基本的是使用温度传感器DS18B20完成对环境温度的连续监测、然后将被测出的值需要实时显示则利用LCD1602进行显示,通过软件编程,由硬件电路与软件的共同作用来实现对周围环境的测量和对温度数据进行分析并处理;而温度控制部分,由独立按键控制温度报警上下限值,报警上下限可根据时间随时更改、由LED灯、蜂鸣器进行报警提醒工作人员需要人工干预来控制;另外通过串口,将采集到的数据发送给远端PC机,由PC机或监控人员进行判断与操作或者为上位机进行复杂的运算决策做好铺垫。
2.课题研究的要求
用单片机实现的具体功能如下:
(1)、可以连续测量指定地点的温度值,用LCD1602液晶实时显示待测地点或者物体实际温度;
(2)、用单片机AT89S52控制,通关按键来设定温度报警值的报警上限与报警下限,报警限值与实时温度同时显示在LCD1602上;
(3)、利用串口通信,使得操作人员需要知道当前环境的温度值时,能够在远端PC机上收到数据,而不需要一直守在测量现场。
1.3 本文章节安排
通过对课题研究要求的仔细理解和对任务书内容的详细阅读后,总结出本文即将叙述的内容,并将文章的章节安排列在这里:
第2章将讲述系统的方案选择和论证,第3章和第4章将分别从系统的硬件设计和系统的软件设计两方面来说明本次设计的过程,而第5章则是讲述系统的调试,第6章为总结与展望。第2章 系统的方案选择和论证
2.1 系统各个模块电路的方案选择与论证
通过阅读文献和上网查找资料,了解到温度控制系统的设计至少需要包含温度测量模块、显示电路模块、键盘模块和报警模块。下面将介绍各模块可以选择的方案以及这些方案的对比,然后通过对比总结出本次系统的最佳方案选择。
1.温度测量模块
方案一:
通过学习传感器知识可以知道有一种可以用来作为热敏元件的传感器,就是热敏电阻传感器,热敏电阻的电阻值与温度之间的某种关系——电阻值由一个系数它会随着温度的上升或下降来改变,是以,通过仪表测量出热敏电阻的电阻值变化,就可以根据热敏电阻的电阻值与温度关系计算出相应的温度值。最常用的是铂金电阻传感器,铂金电阻在氧化介质中,它的化学性质不变。当温度上升或下降的时候,铂金电阻的电阻值就会随之发生改变,而这种电阻值的变化经过小信号变换装置的转化后变化为电流电流,再通过设备把电流信号变换为为电压信号,送到A/D转换器,就能够使得模拟信号转换为数字信号。此方案电路结构复杂,不易搭建,并且误差较大。
方案二:
采用温度传感器DS18B20。DS18B20为数字式温度传感器能够测量出的温度范围高达-55℃~125℃,能够直接读取温度数据,可以直接与单片机通讯,所用的硬件电路简单易懂,且不需要额外的外加电路,就能够输出数字量。而且DS18B20在实际使用的时候可以由用户设置从而达到0.0625℃的最大分辨率也是它的特点之一。Dallas半导体公司继发布DS1820后又发布的具有支持“一线总线”接口特点的温度传感器DS18B20是数字化温度传感器。更加令人惊讶的是电源与信号完美的复合在一起利用的是“一线总线”这一种特别的技术,而且是只利用一根口线,每一块芯片都有独一的序列号码,允许多片DS18B20联结成网络并对它们寻址,温度传感,网络简单的、零功率消耗等等都是它的特点。
与以前使用的热敏电阻传感器制作出的测量硬件电路系统相比较,DS18B20允许直接测到被测物体的温度值并且可以直接被读出,并且可以按照实际需求使用简单的编程来实现读数方式从9到12位数字值之间的变换,而且由于DS18B20自身的特点,不管是从DS18B20读取信息或者往DS18B20写入信息只需要一条数据线,因此运用了DS18B20的系统的结构会显得更加简单,可靠性更高。温度传感器DS18B20无论是在测量精度,转换时间,传输距离或是分辨率等方面都有令人非常满意的表现。
所以此次设计中选用温度传感器DS18B20作为测温模块,不仅仅节省了A/D转换,而且还节省了I/O口,提高了测量精确度的同时将误差减到最小。
2.显示电路模块
方案一:使用数码管动态显示。使用数码管动态显示需要额外加外部驱动一次增加输出电流来更好的驱动数码管显示。这种方案虽然电路结构上简单,缺点却是成本高,完成动态刷新需要使用特定的编程才可以实现。
方案二:使用LCD1602液晶。LCD1602液晶为内部是16字*2行的RAM的缓冲区可以用来显示,本次设计中只需要往LCD1602中写入要显示的数据,一行显示实时温度,一行显示温度报警上下限值,操作简单。相对于数码管来说,LCD1602对温度的监控更为直观明朗。
对比而言,从直观和便于观测方面来说,本次设计选用LCD1602作为显示模块。
3.键盘模块
方案一:采用4*4矩阵型键盘。在众多方法的前提下,如果是为了减少I/O口的占用和使用,矩阵键盘的排列通常是以矩阵的形式来排列按键的。然而由于矩阵键盘一般要求使用特定的键盘扫描程序,并且占用了较大的空间,所以虽然相对于独立按键来说,节约了一大部分数据线,但是无益于整体的调试。
方案二:采用独立按键。独立按键的布线简单,不论程序或者硬件本身都是很容易理解的,没有特别的键盘扫描程序,占用空间和资源都比较小。另外本次设计中只需要调节控制温度报警限值的上限和下限,即用4个按键即可。
对比而言,在此次设计中选择独立按键节省了资源,性价比较高。
4.报警模块
按照设计的要求,当温度值超出由按键设定的报警上限值或低于报警下限值的时候,应该具备有自动报警功能。
因此,我决定使用一只蜂鸣器作为三极管的集电极负载,当温度值不在正常范围的时候,三极管就会导通,继而蜂鸣器发出鸣叫声提示报警;而温度回归到正常范围之内时,三极管将会截止,蜂鸣器相应的停止发声。
2.2 系统选择的最终方案
基于以上分析,综合器件和设备的影响、成本和其他因素,确定最终方案如下:
1、采用AT89S52单片机作为核心控制器,分别对温度连续采集、液晶实时显示、温度报警上下限值的设定、报警开关以及串口通信的控制。
2、温度测量模块,采用数字温度传感器DS18B20。当需要DS18B20处在最高分辨率测量时,由简单的软件编程即可达成。
3、显示模块用液晶显示实时温度值和报警上下限值。
系统的基本框图如图2.1所示。
图2.1 系统基本框图
第3章 温度控制系统的硬件设计
3.1 单片机最小系统
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jxgc/zdh/4976.html