温度测控系统的设计.doc_第1页
温度测控系统的设计.doc_第2页
温度测控系统的设计.doc_第3页
温度测控系统的设计.doc_第4页
温度测控系统的设计.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

德州学院微机原理课程设计目 录摘 要1前 言21方案设计311方案一312方案二42温度控制系统的总体概况421温度控制系统的总体结构422系统硬件选择和设计4221系统扩展接口的选择4222温度传感器与ad转换器的选择4223显示接口芯片53系统主要元件功能与原理介绍531 8086微处理器及其体系结构5311 8086微处理器的一般性能特点5312 8086cpu的编程结构54系统工作原理及软件设计641系统工作原理6411温度测量显示部分6412温度控制部分642系统软件设计643系统流程图6431主程序6432 bcd码转换子程序9433显示子程序9433显示子程序9434温度值设置子程序95系统调试116结论11参考文献12基于8086微处理器的温度测控系统设计摘 要温度是与人类生活密切相关的物理量,在众多的行业中都需要对温度进行测控。本文介绍了一种基于8086微处理器的温度测控系统,采用温度传感器ad590采集温度数据,用cpu控制温度值稳定在预设温度。当温度低于预设温度值时系统启动电加热器,当这个温度高于预设温度值时断开电加热器。系统操作简便、自动化程度高、扩展方便且具有良好的人机交互的能力。该系统通过实验,取得了较为满意的控制效果。可应用在一些精度要求不太高的系统中。为了降低整个系统的成本,在满足性能的要求下,选择低成本器件,简化系统设计。关键词:8086微处理器 温度传感器 a/d转换器 温度测控系统前 言随着科技的不断发展, 传统的温度监测方法由于工作量大, 操作不方便,测量准确度低,难以满足各个领域的要求。目前,微处理器8086在工业控制系统诸多领域得到了广泛的应用,由于它具有极好的稳定性,更快和更准确的运算精度得到了广泛应用。由于模拟温度传感器输出为模拟信号,需要经a/d转换后获得数字信号传输给微处理器接口,使得硬件电路结构复杂,成本较高。而新型单总线数字式温度传感器将温度测量和a/d 集合成一体,直接输出数字量,使得硬件电路结构简单,8086微处理器具有丰富的外设且功耗很低,工作稳定,方便调试。本文设计了一种基于8086微处理器单片机和温度传感器ad590采集温度数据的温度测控系统,具有较强的推广应用价值。 1 方案设计11方案一设计一种温度控制方法将温度控制在某一设定值。在该实验利用pc机键盘输入设定温度值。当系统采集的温度值低于设定值时,开通加热系统,反之,当温度高于设定值时,关闭加热系统。仍然利用8255的pc6口控制加热系统。其流程图如图1-1所示:开始显示提示信息设置温度设置温度大于实际温度n停止加热y加热显示温度有键按下?n y返回图 1-1分析和讨论:该系统实现了将温度控制到一设定值,并保持稳定,但温度值只能设定一次。当在控制过程中,如果有时想将温度再调高点就办不到了,为此引入了方案二。1.2方案二设计一种温度控制方法将温度控制到某一设定值,并保持稳定。同时还可以根据实际需要重新设置温度并进行重新控制调节,使温度达到一新的设定值,并保持稳定。这里的重新设置和控制可以进行无限多次,当然这个设置值得在某一最大值范围之内,这里把最大值设为76。当设置温度大于76时,系统就会报错并退出系统。经过对以上两方案得分析、比较,我觉得方案二比较完善些,于是我采用方案二作为本场次设计的总体方案。其流程图如图4-1所示2 温度控制系统的总体概况2.1温度控制系统的总体结构温度信息由温度传感器测量并转换成微安级的电流信号,经过运算放大电路将温度传感器输出的小信号进行跟随放大,输入到a/d转换器(adc0809)转换成数字信号输入主机。数据经过标度转换后,一方面通过数码管将温度显示出来;另一方面,将该温度值与设定的温度值进行比较,调整电加热炉的开通情况,从而控制温度。在断开电加热器,温度仍然异常,报警器发出声音报警,提示采取相应的调整措施。其温度控制系统的原理框图如图1-1所示。电压跟随器运算放大电路温度传感器ad转换器微处理器加热控制电路报警译码显示图 2-1 系统原理框图2.2系统硬件选择和设计2.2.1系统扩展接口的选择本次设计采用的是8086微处理器,选择8255a可编程并行接口作为系统的扩展接口,8255a的通用性强,适应灵活,通过它cpu可直接与外设相连接。2.2.2温度传感器与ad转换器的选择本系统选用温度传感器ad590构成测温系统。ad590是一种电压输入、电流输出型集成温度传感器,测温范围为-55150,非线性误差在0。30,其输出电流与温度成正比,温度没升高1k(k为开尔文温度),输出电流就增加1ua。其输出电流i=(273+t)ua。本设计中串联电阻的阻值选用2k,所以输出电压v+=(2730 + 10t)mv.另外,为满足系统输入模拟量进行处理的功能,对其再扩展一片adc0809,以进行模拟数字量转化。2.2.3显示接口芯片为满足本次设计温度显示的需要,我们选择了8279芯片,intel8279芯片是一种通用的可编程的键盘、显示接口器件,单个芯片就能完成键盘键入和led显示控制两种功能。备注:系统硬件接线应尽量以插接形式连接,这样便于多用途使用和故障的检查和排除。 3 系统主要元件功能与原理介绍3.1 8086微处理器及其体系结构3.1.1 8086微处理器的一般性能特点(1) 16位的内部结构,16位双向数据信号线;(2)20位地址信号线,可寻址1m字节存储单元;(3)较强的指令系统;(4)利用第16位的地址总线来进行i/o端口寻址,可寻址64k个i/o端口;(5)中断功能强,可处理内部软件中断和外部中断,中断源可达256个;(6)单一的5v电源,单相时钟5mhz。另外,intel公司同期推出的intel8088微处理器一种准16位微处理器,其内部寄存器,内部操作等均按16位处理器设计,与intel8088微处理器基本上相同,不同的是其对外的数据线只有8位,目的是为了方便地与8位i/o接口芯片相兼容。3.1.2 8086cpu的编程结构编程结构:是指从程序员和使用者的角度看到的结构,亦可称为功能结构。从功能上来看,8086cpu可分为两部分,即总线接口部件biu(bus interface unit)和执行部件eu(execution unit)。8086cpu的内部功能结构如图31所示:图3-1 8086cpu内部功能结构图4 系统工作原理及软件设计41、系统工作原理411温度测量显示部分温度通过ad590温度传感集成芯片,将温度变化量转换成电压值变化量,经过op07一级跟随后输入到电压放大电路,放大后的信号输入到a/d转换器将模拟信号转换成数字信号,然后将该数字信号通过然间编程转化为十进制bcd码,并送到8279进行温度值的显示。412温度控制部分 温度的上升或下降,通过给加热系统通断电来实现。当需要加热时,8255的pc6输出低电平,启动加热系统。当需要降温时,8255的pc6输出高电平,关闭加热系统。加热或降温的控制信号通过8255的pa0读取拨动开关的状态来实现。42系统软件设计本设计的目的是以8086微处理器为控制器,将温度传感器输出的小信号经过放大和低通滤波后,送至a/d转换器;微控制器实时采集、显示温度值(要求以摄氏度显示),同时系统还应可设定、控制温度值,使系统工作在设定温度。4.3系统流程图431主程序通过开始界面,显示提示信息,调用温度子程序,设置温度。通过模数转换器采集ad值并求其平均值。调用bcd码转换子程序将其转换为十进制温度值;调用显示子程序,如果温度高于实际温度,就加热,反之拨动开关关闭,停止加热。在此过程中,还可以重复设置温度值。其流程图如图4-1所示。n开始系统初始化显示提示信息调用温度值设置子程序实际温度低于给定值pa0=1加热8255 pc6口=1停止加热8255 pc6口=0显示提示信息调用温度值设置子程序重新设置温度并将pa0拨到0 以进行重新调节有键按下返回采集ad值并求其平均值调用bcd码转换子程序将其转换为十进制温度值调用显示子程序yynnn图 4-1432 bcd码转换子程序设定温度为0摄氏度时变换放大电路送出的模拟量为0.0v,此时a/d输出的数字量为00h;温度为76.5时变换器送出对应电压4.98v,此时a/d输出的数字量为ffh,即每0.3对应1lsb的变化量,对应电压值为19.5mv。报警温度设定为76.8,此时,输出电压约为5.0v左右。其流程图如图5-2所示。通过移位得到组合bcd码bcd码转换子程序将采集得到的平均值乘以0.3 转换为温度值返回对其进行非压缩bcd码乘法调整图 4-2433显示子程序采用动态显示方式,其流程图如图5-3所示。444温度值设置子程序问了避免加热温度过高,在程序设计中加了一条,即设定值不能大于76.8,否则就认为有错系统报警。其流程图如图5-4所示。得到温度值十位上的数值取出(bl)中的温度值延时显示温度值个位上的数值通过查表指令得到对应的数码管的断码先将十进制温度值(al)送到(bl)得到温度值各位上的数通过查表指令得到对应的数码管的断码温度值设置子程序键入温度值十位上的数值将它存于di键入温度值个位上的数值将它存于di+1将十位上的数值左移四位并与个位上的数值既得温度值设置温度大于76将温度值存于di+1返回声音报警并显示错误信息返回显示温度值十位上的数值延时返回显示子程序ny图 5-4图 4-35 系统调试通过前一部分的介绍说明,我们对系统的工作情况有了大体的了解。为了进一步了解系统的工作过程,这里介绍一下系统调试过程及调试过程中出现的一些具体的问题。我们的实验调试软件运行于doc环境下,其步骤如下:一、根据硬件图和原理图连接好线路。二、在pc机上敲入程序,并对其进行的查错,编译,连接,最后生成可执行文件。三、接上电源,敲入可执行文件的文件名,系统就开始了工作过程。1)这是doc屏幕上会出现的一些提示信息,如enter any key to begin!* let pa0=0 to adjust the temperature value!* let pa0=1 to input a new temperature value!*这里后两条只作注释用。2)然后敲任意一个键,系统就开始进行温度测量和显示,屏幕上就会显示 input the temperature:在这一条信息之后敲入一温度值。注意这里敲入的温度值不能大于76摄氏度,否则屏幕将会显示input value error !并返回 doc。(以后重新设定温度时也是如此)3)在正常情况下,敲入设定温度后系统就开始进行控制调节,当实际温度小鱼设定值时,系统就开始进行加热,如果不加改变,它就会加热一直稳定到设定的温度值;如果这是想重新设置一温度,只要把8255的pa0读取拨动开关拨到1,屏幕上就会显示:input a new temperature:这里又得注意一下,在敲入一个新的设定温度之前,得先把pa0读取拨动开关拨到0,否则,在敲完设定温度之后,屏幕上又会显示同样一条信息。因为它是根据pa0是0还是1来决定是去重新输入设定温度还是去调节温度。如果不先把pa0拨为0,它就是一直让你输入却不进行调节。另外,这里温度值的设定的次数没有限制。6 结论本设计采用的单片机是作为现代工业中最常用的集成芯片。具有体积小、重量轻、抗干扰能力强、对环境要求不高、价格低廉、可靠性高、灵活性好、易于推广应用等显著优点,通过软件逻辑控制实现对温度的控制和调节。本文的温度控制系统,只是单片机广泛应用于各行各业中的一例。本设计中应用了许多单片机芯片和单片机常用的外部设,单片机芯片如:adc0809,8255等。单片机外部设备如:温度检测元件ad590,键盘和显示系统中的led显示器等。该系统的主要优点如下:一、本系统本着简单可靠的原则完成了设计要求,尽量

温馨提示

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

评论

0/150

提交评论