单片机多点温度控制_第1页
单片机多点温度控制_第2页
单片机多点温度控制_第3页
单片机多点温度控制_第4页
单片机多点温度控制_第5页
已阅读5页,还剩13页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 摘要 随着时代的发展、社会的进步、科学技术的不断提高,对温度测量的范围要求不断增大,同时对温度测量的精度要求也不断提高。因此,对如何方便、精确、实时的测量温度的研究也成为一个重要的研究课题。 本设计以 片机为核心的温度控制系统的工作原理和设计方法。温度信号由温度芯片 集,并以数字信号的方式传送给单片机。文中介绍了该控制系统的硬件部分,包括:温度检测电路、温度控制电路、 与 单片机串口通讯 电路和一些接口电路 。单片机通过对信号进行相应处理,从而实现温度控制的目的。 89片机是常用于控制的芯片,在智能仪器仪表、工业检测控制、机电一体化等方面取得了令人瞩目的成果,用其作为温湿度控制系统的实例也很多。使用 8052 单片机能够实现温湿度全程的自动控制,而且 8052 单片机易于学习、掌握,性价比高。使用 8052 型单片机设计温度控制系统,可以及时、精确的反映室内的温度的变化。 本文主要使用 C 语言进行程序编写,通过程序与硬件仿真的配合,最终可以实现具有正常监测,报警上下限设置、报警和显示等功能的多路温度检测系统设计。 关键字 : 位七段数码管, 报警,延时, C 语言 ,多路温度检测 2 as of of By to of PC is to of 9 is to in as as an of is 052 to of 052 is to 052 be of as 3 目录 前言 . 4 题背景 . 4 题分析 . 4 的和意义 . 5 一、 总体设计 . 5 1、 多点温度控制设计框图 . 5 2、 总体功能 . 6 二、 详细设计 . 6 1、硬件设计 . 6 1)电路原理图 . 6 2)实物图 . 7 3)元器件清单 . 7 4)电路说明 . 8 2、 软件设计 . 9 1)、软件流程图 . 10 2)、关键代码描述 . 11 三、系统测试 . 15 1、硬件测试 . 15 2、 软件测试 . 16 四、总结 . 17 五、参考文献 . 18 4 前言 题背景 随着社会经济的高速发展,电子技术在国民经济的建设生产中占有相当重要的地位,无论同人民生活,经济建设,还是国防建设和科学研究都有着紧密的关系。加强电子科学技术的研究,对于提高产品质量,改进工艺,实现标准化、系列化、自动化;对于保障安全生产、提高生产效率,降低能源消耗;对于企业生产自动化、科学化、提高科研水平,增加经济效益都具有非常重要的作用。 利用电子技术对温度进行测量,在社会经济发展的各个领域中都十分重要。人们的日常生活、工农业生产和科学技术试验等很多方面都与温度测量有着非常重要的关系。温度做为一个非常重 要的物理量,是社会生产过程中最普遍也是最重要的测量参数之一。随着时代的进步、社会的发展、科技的不断更新,对温度测量范围的要求不断扩大,同时对温度测量的准确性要求不断增高。对温度监测的环境要求越来越广泛,测量的范围也越来越大,对温度监测的技术要求也越来越高。因而,对温度的监控和温度监控技术的研究也成为了一个十分重要的研究课题。 单线数字温度传感器 介新的“一线器件”体积更小、适用电压更宽、更经济,数字化。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概 念。适合于各种环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。 以程序设定 912位的分辨率,分辨率设定,及可以设定的报警温度存储在 ,掉电后依然保存。 电压,特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统。并且应用电路电但便于设计。 题分析 近年来随着单片机的发展和传感器技术的革新,温度检测领域也完成了从模拟信号到数字信号的转变。 度传感器的广泛应用更是推动了这一领域的发展。另外显示模块具有 体积小、功耗低、显示内容丰富、超薄轻巧等优点在各类仪表和显示系统中得到越来越多的应用,现在也是单片机应用设计中最常用的信息显示模块。综合以上产品的发展特点,希望温度检测系统在未来的发展中有更广阔的应用空间并且具有更好的现场测量优越性。 5 本文将介绍数字温度传感器 结构特征及控制方法,并对以此传感器, 89片机为控制器构成的数字温度控制装置的工作原理及程序设计作了详细的介绍。其具有读数方便,方便控制,输出温度采用数字显示,本系统可以应用在大型工业及民用常温多点监测场合。 的 和意义 8051 单片机是常用于控制的芯片,在智能仪器仪表、工业检测控制、机电一体化等方面取得了令人瞩目的成果,用其作为温湿度控制系统的实例也很多。使用 8051 单片机能够实现温湿度全程的自动控制,而且 8051 单片机易于学习、掌握,性价比高。 本设计是心 单片机作为控制核心,提出了一种基于 个温度传感节点通过单总线与单片机相联形成分布式系统。单片机通过实时监控温度的变化,通过数码管显示各节点温度的数值,当温度值超出所设定的值时,报警器开始报警,从而远 程实现对整个温度系统的管理和控制。这种分布式温度测量系统具有成本低廉、传感精度高、系统稳定、易于管理等优点。 一、 总体设计 1、 多点温度控制设计框图 单片机 码管显示两个温度 报警电路,蜂鸣器和 度芯片 1 度芯片 2 6 2、 总体功能 本设计的总体设计方案是一个基于 片机为主控芯片, 加以复位电路,电源电路、 示电路和报警电路共同构成了本设计,其主要功能和指标如下: 1、利用温度传感器 量 2 点温度; 2、温度测量范围: 0 100; 3、测温误差根据传感器误差 范围小于 4、设置温度报警的上下限,具有报警功能;当达到上限时蜂鸣器发出声音,并且有对应的 示灯亮。 5、采用数码管显示,分别用两个四位七段数码管显示两个温度传感器的温度。 二、 详细设计 1、硬件设计 1) 、电路原理图 7 2) 实物图 3)元器件清单 名称 型号 数量 万能板 3 单片机 四位七段数码管 三极管 9012 9 电阻 560 欧 8,20 排线 杜邦线 无数 蜂鸣器 无源 1 4 瓷片电容 103 2 电解电容 47u 1 晶振 开关 1 按钮 1 排针 无数 温度传感器 8 4)电路说明 上图所给电路时仿真电路图,电路元器件不齐全。比如单片机最小系统没有, 数码管的段选端没有加上限流电阻,位选端没有加驱动三极管 9012, 没有加限流电阻。 ( 1)报警电路 在微型计算机控制系统中,为了安全生产,对于一些重要的参数或系统部位,都设有紧急状态报警系统,以便提醒操作人员注意,或采取紧急措施。其方法就是把计算机采集的数据或记过计算机进 行数据处理、数字滤波,标度变换之后,与该参数上下限给定值进行比较,如果高于上限值(或低于下限值)则进行报警,否则就作为采样的正常值,进行显示和控制。硬件电路如下图所示: ( 2) 度测量模块介绍 美国 司推出的单总线数字化测温集成电路,它具有独特的单线接口方式,将非电模拟量温度值转换为数字信号串行输出仅需占用 1 位 I/O 端口,能够直接读取被测现场的温度值。它体积小,电压适用范围宽( 3v5v),且可通过编程实现 912 位的温度读数,即具有可调 的温度分辨率,因此实用性和可靠性较高,应用广泛。以下是 内部结构图。 9 4 个主要的数据部件: 1)、 64 位激光 64 位激光 高位到低位依次为 8 位 48 位序列号和 8 位家族代码 (28H)组成。 2)、 温 度灵敏元件。 3)、 非易失性温度报警触发器 通过软件写入用户报警上下限值。 4)、 配置寄存器。配置寄存器为高速暂存存储器中的第五个字节。 0工作时按此寄存器中的分辨率将温度转换成相应精度的数值 测温范围为 +125 ,在 +85范围内,精度为在电压低于 精度误差较大。在本系统中使用了两个 度传感器,测温范围为 0 100,另外根据器件稳定工作的特点,考虑到驱动能力的不足,采用外加 5V 电源以满足传感器精度高的 要求。 根据其时序特点以下是 V C C 1D S 18 B 2 0D S 18 B 2 00 K 图 2典型应用 本系统为多点温度测试。 用外部供电方式,理论上可以在一根数据总线上挂 256 个 实际应用中发现,如果挂接 8 个以上的 外单总线长度也不宜超过 则会影响到数据的传输。在这种情况下我们可以采用分组的方式,用单片机的多个 I/O 来驱动 多路本电路板的设计中考虑到初步实践的准确性,暂使用 2 个 。 2、 软件设计 本系统采用 C 语言编写,主程序主要由四部分构成 ,系统通电后首先初始化系统 ,依次完成温度采集、温度处理、数据显示、报警处理等四项功能。温度采集部分主要完成 2 个温度测试点的温度数据采集任务;温度处理部分主要是将采 10 集到的温度数据储存并且转换了可以在数码管上显示;数据显示部分主要实现温度数据的显示,显示方式根据设计要求 2 个温度测试点的固定显示;报警处理部分主要是将采集到的温度数据与 用户设定的各点上下限温度值进行比较处理,并判断是否超出设定的上下限值,如果超出则蜂鸣器报警。 1)、软件流程图 总流程图 作流程图 开始 系统初始化 温度采集 温度处理 数据显示 报警处理 读温度 初始化温度传感器 扫描键盘选定所需芯片 选定所需芯片 进行温度转换 读取温度 调试显示子程序 子程序返回 11 2)、关键代码描述 #Q=; /温度数据口 11; 20; /位选 1 21; /位选 2 22; /位选 3 23; /位选 4 24; /位选 1 25; /位选 3 27; /位选 2 26; /位选 4 13; 14; 15; =0 /共阳数码管 0 /*延时程序 */ m) /温度延时程序 m) i,j; i=m;i0;j=110;j0; x=0; 1; /位 信端口 ); /稍做延时 0; /单片机将 低 0); /精确延时 大于 480Q = 1; /拉高总线 ); x= /稍做延时后 如果 x=0 则初始化成功 x=1 则初始化失败 0); /*一个字节 */ i=0; 0; i=8;i0; 0; / 高电平拉成低电平时读周期开始 12 =1; 1; / 给脉冲信号 Q) 0 / ); /*一个字节 */ i=0; i=8; i0; 0; /从高电平拉至低电平时 ,写周期的开始 /数据的最低位先写入 ); /60 120时 1; =1; /从最低位到最高位传入 /*读取 前温度 */ a=0; b=0; t=0; ; / 跳过读序号列号的操作 / / 启动温度转换 ); / is ; /跳过读序号列号的操作 /读取温度寄存 器等(共可读 9 个寄存器) 前两个就是温度 / ); a=; /读取温度值低位 / b=; /读取温度值高位 / b4; /低 8 位中的高 4 位值加上高 8 位中后三位数的值 a&0 /小 数的值 (b*256+a)4); /当前采集温度值除 16 得 实际温度值 xs=0; /小数位 ,若为 算为 5 来显示 数 ; P0=0; /显示十位 ); ; ; 13 P0=0+0 /显示个位 加上 0显示小数点了。 ); ; ; P0=0; /显示小数位 ); ; ; P0=2; /显示 C 字符 ); ; ; 1; /位 信端口 ); /稍做延时 0; /单片机将 低 0); /精确延时 大于 480 1; /拉高总线 ); /稍做延时后 如果 x=0 则 初始化成功 x=1 则初始化失败 0); /*一个字节 */ i=0; 0; i=8;i0; 0; / 高电平拉成低电平时读周期开始 =1; 1; / 给脉冲信号 0 / ); /*一个字节 */ i=0; i=8; i0; 0; /从高电平拉至低电平时 ,写周期的开始 /数据的最低位先写入 ); /60 120时 1; =1; /从最低位到最高位传入 /*读取 前温度 */ 14 ; ; ; ; / 跳过读序号列号的操作 / / 启动温度转换 ); / is ; /跳过读序号列号的操作 /读取温度寄存器等(共可读 9 个寄存器) 前两个就是温度 / ); ; /读取温度值低位 / ; /读取温度值高位 / ; /低 8 位中的高 4 位值加上高 8 位中后三位数的值 温整数值 /小数的值 (56+4); /当前采集温度值除 16 得 实际温度值 0; /小数位 ,若为 算为 5 来显示 数 ; P0=0; /显示十位 ); ; ; P0=0+0 /显示个位 加上 0显示小数点了。 ); ; ; P0=0; /显示小数位 ); ; ; P0=2; /显示 C 字符 ); ; m; m=500;m0; 0); 15 if(30) ; if(30) ; i; i=0; ) i+; ; ; ; ; ; if(i=20) ; i=0; 三、系统测试 1、硬件测试 ( 1)在安装元件前要先认识和检测元件,一些常见元件的认识与检测如下: 电容:电容在这里用到的是瓷片电容和电解电容,其外围上面都有标记,我们只需 检测其好坏。在利用万用表检测时要注意如果为电解电容红表笔应接负极,黑表笔接正极。 色环电阻:我们在此使用的是五个色环标志的电阻。此类电阻前三环表示有效数字,第四环表示倍率,与前四环距离较大的第五环表示允许偏差。 二极管:在此装置中要用到发光二极管,对于发光二极管一般引脚长的那端为正极,引脚短的那端为负极。这是粟老师教给我的简便方法。 三极管:在此装置中,我们用到 9012 型号三极管,在使用三极管前我们首先要确定它的 c、 e 和 b 极。 ( 2)安装元件时的问题: 装配时,应该先安装那些需要机械固定元器件 ,在此装置中如中心芯片插座。为避免因元器件发热而减弱铜箔对基板的附着力,并防止元器件的裸露部分同印制导线短路。光洁整齐的外观,良好的焊点要求焊料用量恰到好处,外表有金属光泽,没有粒尖,桥接等现象,并且不伤及导线的绝缘层及相邻元器件。 16 足够的机械强度,焊接不仅起到电气连接的作用,同时也是固定元器件,保证机械强度连接的手段。可靠的电气连接,焊接是电子线路从物理上实现电气连接的主要手段,锡焊连接不是靠压力而是靠焊接过程形成的牢固连接的合金层达到电气连接的目的。 ( 3)在焊接完成最小系统之后,还应该对单片机最小系统 进行测试,连接上电脑,看是否可以下载程序到单片机,并准确运行所写程序。 2、 软件测试 软件调试是通过对程序的汇编(或者 C 语言)、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程,查看程序是否有逻辑的错误。在对硬件调试后再对软件进行,因为先对硬件检查没问题的情况下再对软件进行调试,编译软件可以通过编译去检查程序上的语法错误,然后可以在它的基础上在对它进行一些修改达到没有错误为止,然后将软件拿到硬件上去运行。 在这次课程设计中,我在写程序时出现下列错误: 1) 、延时程序,在报警程序时,延时程 序延时时间过短,导致数码管显示闪烁不停,更本无法看清数码管显示的数字,后经过更改延时才让数码管显示正常。 2) 、 写重复。 3) 、温度显示处理没写对,小数位一开始显示乱码,后边经过查资料更改。 P0=0; /显示十位 ); ; ; P0=0+0 /显示个位 加上 0显示小数点了。 ); ; ; P0=0; /显示小数位 ); ; ; P0=2; /显示 C 字符 ); ; 4) 、报警程序,在判断上下限时写错,后边经过更改才正确报警。 5) 、主程序中忘 记写报警程序,出现逻辑错误。 17 四、总结 由于本次课程设计含括了软件和硬件知识,所以在完成课程设计的同时也让我了解到了我在软硬件设计和制作方面的不足。在这 两 周的设计过程中我所 通过自己选题,找材料,分析、设计等,这为以后的学习做了铺垫。整个设计实现了从单一的理论学习到解决实际问题的转变。通过本次的课程设计,我最大的收获就是提高了自身的动手能力,培养了我的寻求解决问题的能力 ,也增强了我其它方面的能力。在设计中,我充分应用我们所学的知识,例如:单片机 片机的 c 语言的进一步掌握 。 通过不断的探索、测试和分析,最终完成了 多点温度检测 设计与制作。此次课程设计 是利用 89点温度测量功能 。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论