基于某PT100传感器的单片机温度检测系统

上传人:痛*** 文档编号:84006797 上传时间:2022-05-02 格式:DOC 页数:22 大小:417.50KB
返回 下载 相关 举报
基于某PT100传感器的单片机温度检测系统_第1页
第1页 / 共22页
基于某PT100传感器的单片机温度检测系统_第2页
第2页 / 共22页
基于某PT100传感器的单片机温度检测系统_第3页
第3页 / 共22页
点击查看更多>>
资源描述
word某某民族学院机电信息工程学院自动化系检测技术课程设计报告 题 目:基于PT100的热电阻温度检测系统设计专 业:测控技术与仪器班 级:测控092班学生某某:韦魏 X宝琪指导教师:谢春利设计完成日期: 2012年 6月29日目 录1 设计任务1112 系统方案设计2222223 硬件设计444453.2.1 ADC0809简介563.3 LED显示电路的设计73.3.1 LED数码管编码73.3.2 LED数码管显示方式选择84 软件设计9999105 系统调试12结 论14参考文献15附录A系统总电路图16附录B元件清单17附录C系统源程序1819 / 221 设计任务给定温度传感器热电阻、热敏电阻等和单片机最小系统,学习使用单片机最小系统,设计温度测量电路和模拟量输入通道,完成相关的软件设计并实现温度测量显示。通过传感器对温度进展检测,设计的检测电路将其转换成相应的电压值,又通过过程通道,A/D模数转换器将传感器的电压值的模拟信号转换为数字信号,然后所转换的数字量接到单片机89C52的P0口,最后单片机对接入的数字信号做出反响,显示出温度值。2 系统方案设计该电阻温度检测系统由三局部组成:温度检测与处理,模数转换,温度显示。电阻式温度计是利用物质在温度变化时本身电阻也随着发生变化的特性来测量温度的。当被测介质中有温度阶梯存在时,所测得温度是感温元件所在X围介质中的平均温度。尽管导体或半导体材料的电阻值对温度的变化都有一定的依赖关系,但适用于制作温度检测元件的并不多。 由电阻温度传感器检测的信号不稳定,进入测量电路的除了传感器输出的测量信号外,往往还有各种噪声。而传感器的输出信号一般又很微弱,为了将测量信号从含有噪声的信号中别离出来我采用了仪用放大器AD623进展信号放大与低通滤波,将噪声去除。A/D转换器的作用就是把模拟量转换成数字量,以便于单片机进展处理。电阻温度计将测量温度以电信号的形式传递给ADC0809逐次比拟型,将电压信号转换成单片机可接收的数字信号。这局部模块由四位八段共阳极的数码管组成,段选局部直接与单片机相连。系统方案图如图1.1所示。热电阻传感器模数转换复位电路STC89C52显示电路图2.1 系统方案图3 硬件设计 测量X围:-200+850; 允许偏差值: A级 , B级 ; 响应时间30s; 最小置入深度:热电阻的最小置入深度200mm; 允通电流5mA。另外,PT100温度传感器还具有抗振动、稳定性好、准确度高、耐高压等优点。鉑热电阻的线性较好,在0100摄氏度之间变化时,最大非线性偏差小于0.5摄氏度。鉑热电阻阻值与温度关系为: -200t0时,; 0t850时,;式中,A=0.00390802;B=-0.000000580;C=0.0000000000042735。可见PT100在常温0100摄氏度之间变化时线性度非常好,其阻值表达式可近似简化为:,当温度变化1。热电阻测温是基于金属导体的电阻值随温度的增加而增加这一特性来进展温度测量的。通常将其放在电桥的桥臂上,温度变化时,热电阻两端的电压信号被送到仪器放大器AD623的输入端,经过仪器放大器放大后的电压输出送给A/D转换芯片,从而把热电阻的阻值转换成数字量。AD623是一款集成式单电源仪表放大器,采用3 V至12 V电源供电时提供轨到轨输出摆幅。它可以通过单一增益设置电阻进展编程,并遵照8引脚工业标准引脚排列配置,赋予用户出众的灵活性。不接外部电阻时,AD623采用单位增益配置(G = 1);连接外部电阻时,AD623可通过编程实现最高增益1000。AD623具有优异的交流共模抑制比(CMRR),并且随着增益提高而增大,因此可确保误差极小。由于CMRR在最高200 Hz时仍然保持稳定,因此线路噪声和线路谐波均得到抑制。AD623具有宽输入共模X围,可以放大共模电压低于地电压150 mV的信号。虽然AD623设计针对单电源供电进展了优化,但采用双电源(2.5 V至6.0 V)供电时,AD623仍能提供出色的性能。温度检测电路图如3-1所示。图3.1 温度检测电路图3.2.1 ADC0809简介本次设计模数转换局部用ADC0809。ADC0809是8位逐次逼近型A/D转换器。它由一个8路模拟开关、一个地址锁存译码器、一个A/D转换器和一个三态输出锁存器组成见图3。多路开关可选通8个模拟通道,允许8 路模拟量分时输入,共用A/D 转换器进展转换。三态输出锁器用于锁存A/D 转换完的数字量,当OE 端为高电平时,才可以从三态输出锁存器取走转换完的数据。ADC0809的内部逻辑结构如图3.2所示。图3.2 ADC0809的内部逻辑结构ADC0809工作方式:1ADC0809 内部带有输出锁存器,可以与AT89S51 单片机直接相连。2初始化时,使ST 和OE信号全为低电平。3送要转换的哪一通道的地址到A,B,C 端口上。4在ST 端给出一个至少有100ns 宽的正脉冲信号。5是否转换完毕,我们根据EOC 信号来判断。6当EOC变为高电平时,这时给OE 为高电平,转换的数据就输出给单片机了。图3.3 AD0809引脚图模拟转换原理图3.4所示。图3.4 模拟转换原理图3.3 LED显示电路的设计在单片机应用系统中,如果需要显示的内容只有数码和某些字母,使用LED数码管是一种较好的选择。LED数码管显示清晰、本钱低廉、配置灵活,与单片机接口简单易行。3.3.1 LED数码管编码LED数码管是由发光二极管作为显示字段的数码型显示器件。图3.5(a)所示为0.5英尺LED数码管的外形和引脚图,其中七只发光二极管分别对应ag笔段构成“字形另一只发光二极管dp作为小数点。因此这种LED显示器称为七段数码管或八段数码管。图3.5 led数码管LED数码管按电路中的连接方式可以分为共阴极和共阳极两大类,如图3.5b所示。共阳型是将各段发光二极管的正极连在一起,作为公共端,公共端接高电平,ag、dp各笔段通过限流电阻接控制端。某笔段控制端低电平时,该笔段发光,高电平时不发光。控制这几段笔段发光,就能显示出某个数码或字符。共阴型是将各数码发光二极管的负极连在一起,作为公共端接地,某笔段通过限流电阻接高电平时发光。3.3.2 LED数码管显示方式选择LED数码管显示电路在单片机应用系统中可分为静态显示方式和动态显示方式。本设计选动态显示方式。LED数码管显示电路如图3.6所示。图3.6 LED数码管显示电路4 软件设计本设计采用C51高级语言编写,因为其提供了库函数包含许多标准子程序,具有较强的数据处理能力,关键字与控制转移方式更接近人的思维方式,且本身并不依赖于机器硬件系统,移植方便。程序主要由主程序和子程序两局部构成。主程序主要实现系统的初始化, A/D转换,显示数据。系统的初始化包括存放器的初始化控制存放器、堆栈、中断存放器等,通信的初始化串口的初始化,ADC0809的初始化,通信缓冲区的初始化,LED显示的初始化,输出端口的初始化,采集、累计数据的初始化。 显示数据包括数据转换主要实现将各类参数、测量数据、计算累计值等转换成LED显示所需的数据类型和显示屏的刷新子程序主要由温度信号采集程序组成。主程序流程图如图4.1所示。调用AD0809函数开始调用显示函数初始化图4.1主程序流程图 单片机通过写信号使START有效,启动AD转换,AD转换完毕后,ADC0809通过INT0向CPU发出转换完毕信号,引起CPU中断,可在中断程序中读取AD转换的结果。分别对8路模拟信号轮流采集一次,转换结果依次存放在片外数据RAM中。AD转换子程序流程图如图4.2所示。读取数据子程序入口启动ADC0809P1口数据送入adat变量标度变换数据处理图4.2 AD转换子程序流程图由ADC00809进展标度变换后,信号送给单片机显示,显示局部由一个四位数码管,单片机与其最小系统构成。四位数码管的显示原理都一样,因此列出其中一个的程序流程图即可:显示程序流程图如图4.3所示。子程序入口显示模除数据图4.3 显示程序流程图5 系统调试整个温度检测系统由测控电路、放大电路,数模转换电路以与显示局部构成,其中显示局部用的是单片机学习板,所以电路的设计主要是测控、信号放大、数模转换的局部。为了消除线电阻,采用的是两线制接法的桥式电路。根据桥式电路原理,电路中的电阻应采用热电阻传感器在0时的阻值,为100。为了能达到测试的目的,所以在桥式电路中应该接入传感器的位置,放入一个100的可调电阻,并使之与两个100的色环电阻串联。这样,可调的阻值X围可以从50到150,这个X围大于传感器在0到100的阻值,进而达到在调试过程中模拟传感器变化的目的。,那么电流的大小是2mA,不会烧坏芯片。23、24、25脚接地,给低电平信号。信号由IN0输入。经数模转换,信号从D0D7送入单片机P1.0P1.7。把测控电路和放大电路连接起来组合调试。把测控电路的可调电阻调整为100,那么两桥臂的阻值相等,输出的电压都是2.5V,压差为0,那么AD623的输出也为0。调节测控局部的可调电阻、AD623的两个可调电阻,仪用放大器的输出都会呈线性变化,如果出现这样的现象,那么说明电路是正确的。在实际的焊接过程中,并没有这么顺利。桥式电路的输出电压是正确的,可是电路连入放大局部的时候,不管怎样调节电阻,输出都是呈饱和状态,不管接入参考电压与否。这个问题到最后也没查出原因,只好把这两局部电路重新焊接了一遍。焊接后的电路,现象正确。、把AD623的输出电压接到ADC0809,并接入显示电路,设计一个显示程序,把AD623输出的电压显示到数码管上。显示的结果是正确的,但如果调节焊接电路的可调电阻,数码管的显示不会更新,检查电路后,发现其中一个管脚焊接断开了,把断开局部用焊锡接上以后,电路的调试通过,换上铂热电阻。与温度传感器连接通电后,可以实现测量温度的根本功能,通过led显示读出温度值,但是由于理论与实际并不能完全对应,测出的温度值有很大误差,经过调试分析,将放大倍数等稍作修改,可以控制其偏差在2度以内,并不影响正常的指标分析,可以说精度还算高。最后调试完毕后的硬件显示温度图如图5.1所示。图5.1 温度显示电路图结 论本课题以STC89C52单片机系统为核心,对单点的温度进展实时检测。采用模拟温度传感器PT100对温度进展检测;采用模数转换器ADC0809进展A/D转换把温度信号调解转换为电压信号与STC89C52单片机接口设置LED八段数码管实时显示温度值。本设计包括温度传感器、A/D转换模块、数据传输模块、温度显示模块四个局部。在设计过程中,遇到了许多问题,如设计初始阶段目的不明,思绪混乱,经过认真思考和教师的指导,才使自己思路明确,抓住重点,不懂就问,在很短的时间内系统有序的完成。大学三年多的时间都是在学习测控与仪器方面的专业知识,并未真正的应用和实习。虽然在上个学期有单片机课程设计练习,积累了一定的知识,并融合到具体的实物当中。但是经过这次检测技术课程设计,我接触到了更多平时没有接触到的仪器设备、元器件以与相关的使用调试经验,发现了自己很多不足之处。我还体会到了所学理论知识的重要性:知识掌握得越多,设计的就更全面、更顺利、更好。了解进展一项相比照拟大型的设计所必不可少的几个阶段。课程设计能够从理论设计和工程实践相结合、巩固根底知识与培养创新意识相结合、个人作用和集体协作相结合等方面全面的培养学生的全面素质。我经过这次系统的课程设计,熟悉了对一项课题进展研究、设计和实验的详细过程。这些在我将来的工作和学习当中都会用很大的帮助。学回来怎样查阅资料和利用工具书。平时课堂上所学的知识大多比拟陈旧,作为测控技术专业的学生,由于专业特点自己要更积极查阅当前最新电子信息资料。一个人不可能什么都学过,什么都强,因此,当你在设计过程中需要用一些不曾学过的东西时,就要去有针对性的查找资料,然后加以吸收利用,以提高自己的应用能力,而且还能增长自己见识,补充最新的专业知识。与队友的合作更是一件快乐的事情,只有彼此都付出,彼此都努力维护才能将作品做的更加完美。而团队合作也是当今社会最提倡的。虽然课程设计完毕了,也留下了很多遗憾,因为由于时间的紧缺和许多课业的繁忙,并没有做到最好,但是,最起码我们没有放弃,它是我们的骄傲!相信以后我们会以更加积极地态度对待我们的学习、对待我们的生活。参考文献1 胡汉才. 单片机原理与其接口技术M. :清华大学,1996,274-2792 沙占友,王彦朋,孟志永. 单片机外围电路设计M. 电子工业,2003,135-137,222-2263 童诗白,华成英. 模拟电子技术根底M. :高等教育出社,2001,312-330,387-391,408-411,446-4514 黄继昌,X海贵,郭继忠. 实用单元电路与其应用M. 人民邮电出社,20025 谢宜仁. 单片机实用技术问答M.人民邮电,20036 X福学. 传感器应用与其电路精选M:电子工业,19917 余载泉,李玉和. PROTEL实战演练J. 2000,7-115-08613-38 何立民. 单片机应用系统设计M. :航空航天大学,19949 何立民. 单片机高级教材M. :航空航天大学,200010 康光华. 电子技术根底模拟局部M. :高等教育,200011 胡宴如. 电子技术根底模拟局部M. :中国电力,200112 马净,李晓光,宁伟. 常用温度传感器的原理与开展J.中国仪器仪表,2004,24(6):1-213 王红萍. 铂电阻温度传感器测温研究J. 某某石油学院学报,2003,23(2):17-1914 Leoj.scanlon:“Assembly Language programming with the IBM PC ATBrady munica Yion pany.Inc,1986:39-57.15 Donna N.Tabler:“IBM PC Assembly language John Wiley&Sons.Inc, 1985:86-98.16 ./附录A系统总电路图附录B元件清单元件清单表元件清单序号名称封装型号数量1芯片(仪用放大器)DIP8AD62312芯片插座DIP813色环电阻10054可调电阻10015可调电阻10k26芯片AD转换DIP28ADC080917芯片插座DIP2818排针PIN4019排母PIN40110杜邦线PIN401附录C系统源程序#include #define uchar unsigned char#define uint unsigned intsbit st=P34;sbit oe=P36;sbit eoc=P35;sbit CLK=P33;/sbit dian=P07;uchar tab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/ 显示段码值0123456789void display(int dat);/显示程序void delaynms(uint x);/nms延时程序int ad0809();void int_adc(); /以上几个语句,都是在定义函数void delaynms(uint x)uchar i;while(x-0)for(i=0;i125;i+);void display(int dat) P0=tabdat/1000;/P0模除1000 P2=0x00;/送1位显示 delaynms(2);/延时 P0=tabdat/100%10;/模除1000后,模除100P2=0x01; /送给2位显示 delaynms(2); /延时P0=tabdat/10%10;/模除100后,模除10P2=0x02; /送给3位显示 delaynms(2); /延时P0=tabdat%10;/模除10后,除10,要余数P2=0x03; /送第4位显示 delaynms(2);/延时int ad0809()int adat;oe=0;/以下三条指令为起动AD0809st=0;st=1;st=0;/delaynms(1);while(!eoc);/等待转换完毕oe=1;/取出读得的数据adat=P1;/送相关通道数组adat=adat*19.531 ;adat=(adat-3000)/1000.0*39;/这是一个算法,得出的结果即为当时的温度值oe=0;/关闭oe,等待下一轮读数return (adat);/返回,循环 void int_adc() /ADC0809芯片的初始化 TMOD=0X02; TH0=0Xd0; TL0=0Xd0; IE=0X82; TR0=1;void main() int aa; int_adc();while(1) aa=ad0809();/调AD0809 启动子程序 display(aa);/调显示void Timer0_INT() interrupt 1/ADC0809芯片时钟信号 CLK=!CLK;
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!