基于PT100热电阻的单片机温度检测系统设计.docx
《基于PT100热电阻的单片机温度检测系统设计.docx》由会员分享,可在线阅读,更多相关《基于PT100热电阻的单片机温度检测系统设计.docx(37页珍藏版)》请在冰点文库上搜索。
基于PT100热电阻的单片机温度检测系统设计
11111
本科毕业设计(论文)
题目基于PT100热电阻的单片机
温度检测系统设计
学生姓名
专业班级
学号
院(系)电气信息工程学院
指导教师
完成时间2008年06月09日
毕业设计(论文)任务书
题目基于PT100热电阻的单片机温度检测系统设计
专业自动化学号姓名
主要内容、基本要求、主要参考资料:
本系统采用PT100热电阻温度传感器和单片机组成可靠性高、功耗低的温度检测系统。
要求如下:
1.查阅技术资料,了解PT100热电阻的工作原理及接口电路设计方法。
2.根据温度检测系统的特点,确定单片机系统的结构。
3.设计相关的接口电路。
4.绘制硬件原理图,制作硬件电路。
5.设计程序并进行模拟调试。
6.绘制相关图纸、撰写设计说明书、翻译外文文献、整理文献材料。
主要参考资料:
1.何立民编,单片机高级教程,北京航空航天大学出版社。
2.其他文献资料若干。
完成期限:
2008.2~2008.6
指导教师签名:
专业负责人签名:
2008年02月22日
摘要
本课题以AT89C51单片机系统为核心,对单点的温度进行实时检测。
采用模拟温度传感器PT100对温度进行检测;采用串型模数转换器ADC0809进行A/D转换把温度信号调解转换为电压信号与AT89C51单片机接口设置LED八段数码管实时显示温度值。
本设计包括温度传感器、A/D转换模块、数据传输模块、温度显示模块四个部分。
文中对每个部分功能、实现过程作了详细介绍。
关键词单片机;PT100热电阻;ADC0809;温度检测
ThedesignofSingleChipMicrocomputer
TemperatureDetectionSystem
BasedontheResistiveThermalDetectorofPT100
Abstract
ThisarticleAT89C51monolithicintegratedcircuitwhichproducesbyATMELCorporationisthecore,caninspectasinglepointofthetemperatureinrealtime.TheadoptionoftheserialA/DfortemperaturesignalsintovoltagesignalmediationAT89C51Single-ShipComputeinterfaceswiththeeighthLEDdigitaldisplayofreal-timetemperature.ThedesignincludesfourpartsofthetemperaturesensorandtheA/Dconvertermoduleandthedatatransmissionmodulesandthetemperaturedisplaymodule.EachpartfunctionsandtheprocesswasdescribedinthePaperindetail.
KeywordsSingle-ShipComputer;ResistiveThermalDetectorofPT100;ADC0809;Measure-temperature
1绪论
1.1课题背景
在人类的生活环境中,温度扮演着极其重要的角色。
无论你生活在哪里,从事什么工作,无时无刻不在与温度打着交道。
自18世纪工业革命以来,工业发展对是否能掌握温度有着绝对的联系。
在冶金、钢铁、石化、水泥、玻璃、医药等等行业,可以说几乎%80的工业部门都不得不考虑着温度的因素。
温度对于工业如此重要,由此推进了温度传感器的发展。
传感器主要大体经过了三个发展阶段。
①模拟集成温度传感器。
该传感器是采用硅半导体集成工艺制成,因此亦称硅传感器或单片集成温度传感器。
此种传感器具有功能单一(仅测量温度)、测温误差小、价格低、响应速度快、传输距离远、体积小、微功耗等,适合远距离测温、控温,不需要进行非线性校准,外围电路简单。
它是目前在国内外应用最为普遍的一种集成传感器,典型产品有AD590、AD592、TMP17、LM135等。
②模拟集成温度控制器。
模拟集成温度控制器主要包括温控开关、可编程温度控制器,典型产品有LM56、AD22105和MAX6509。
某些增强型集成温度控制器(例如TC652/653)中还包含了A/D转换器以及固化好的程序,这与智能温度传感器有某些相似之处。
但它自成系统,工作时并不受微处理器的控制,这是二者的主要区别。
③智能温度传感器。
能温度传感器(亦称数字温度传感器)是在20世纪90年代中期问世的。
它是微电子技术、计算机技术和自动测试技术(ATE)的结晶。
智能温度传感器内部都包含温度传感器、A/D转换器、信号处理器、存储器(或寄存器)和接口电路。
有的产品还带多路选择器、中央控制器(CPU)、随机存取存储器(RAM)和只读存储器(ROM)。
智能温度传感器的特点是能输出温度数据及相关的温度控制量,适配各种微控制器(MCU);并且它是在硬件的基础上通过软件来实现测试功能的,其智能化程度也取决于软件的开发水平。
进入21世纪后,温度传感器正朝着高精度、多功能、总线标准化、高可靠性及安全性、开发虚拟传感器和网络传感器、研制单片测温系统等高科技的方向迅速发展。
目前市场主要存在单点和多点两种温度测量仪表。
对于单点温测仪表,主要采用传统的模拟集成温度传感器,其中又以热电阻、热电偶等传感器的测量精度高,测量范围大,而得到了普遍的应用。
此种产品测温范围大都在-200℃~800℃之间,分辨率12位,最小分辨温度在0.001~0.01之间。
自带LED显示模块,显示4位到16位不等。
有的仪表还具有存储功能,可存储几百到几千组数据。
该类仪表可很好的满足单个用户单点测量的需要。
多点温度测量仪表,相对与单点的测量精度有一定的差距,虽然实现了多路温度的测控,但价格昂贵。
本课题以PT100热电阻为温度检测元件,设计了一个对单点温度实时检测的单片机温度检测系统。
1.2方案论证
本方案以AT89C51单片机系统为核心,对单点的温度进行实时测量检测。
并采用热电阻PT100作为温度传感器、LM741作为信号放大器ADC0809作为A/D转换部件,对于温度信号的采集具有大范围、高精度的特点。
在功能、性能、可操作性等方面都有较大的提升,具有更高的性价比。
1.2.1单片机选型
美国Atmel公司是国际上著名的半导体公司,该公司的技术优势在于Flash存储器技术。
随着业务的发展,在20世纪90年代初,ATMEL公司一跃成为全球最大的EEPROM供应商。
1994年,为了介入单片机市场,Atmel公司以EEPROM技术和Intel公司的80C31单片机核心技术进行交换,从而取得了80C31核的使用权。
ATMEL公司把自身的先进Flash存储器技术和80C31核相结合,推出了F1ashAT89系列单片机。
这是一种内部含Flash存储器的特殊单片机。
由于它内部含有大容量的Flash存储器,所以,在产品开发及生产便携式商品、手提式仪器等方面有着十分广泛的应用,也是目前取代传统的MCS-51系列单片机的主流单片机之一。
AT89系列单片机对于一般用户来说,有下列明显的优点:
①内部含有Flash存储器,在系统开发过程中很容易修改程序,可以大大缩短了系统的开发时间。
②与MCS-51系列单片机引脚兼容,可以直接进行代换。
③AT89系列并不对80C31的简单继承,功能进一步增强。
在我国这种单片机受到广泛青睐,很多以前使用80C51、80C52的用户都转而使用AT89系列。
对于有丰富编程经验的用户而言,不需要仿真器,可以直接将程序烧入芯片,放在目标板上加电直接运行,观察运行结果,出现问题时再进行修改,然后重新烧写程序,再进行试验,直至成功。
AT89系列包括两大类第一类是常规的,就是AT89C系列,这类单片机要用常规的并行方法编程,必需使用编程器编程;第二类是在系统可编程(即芯片安装到电路板上之后不用.拿下来而直接往里面烧写程序)ISPFlash系列,也就是AT89S系列,这类单片机除了用常规的并行方法编程外,还可以在系统用下载线进行编程,省去价格较贵的编程器,而且可以在目标板上直接修改程序。
又考虑到单片机的存储空间与价格,以及我对单片机的熟悉程度,课本学习的是AT89C51单片机,因此,此次设计我选用了AT89C51单片机来完成此次设计。
1.2.2模数转换器选型
A/D转换的好与坏直接关系到整个系统的精确度。
由于本系统测量的是温度信号,响应时间长,滞后大,不要求快速转换,因此选用8位串型A/D转换器ADC0809。
能达到设计的基本要求。
为进一步提高精度,可以直接采用12位A/D转换器,也可以采用过采样和求均值技术来提高测量分辨率。
本系统采用了求平均值来提高分辨率。
因为8位ADC0809其性价比更高,更重要的是我对ADC0809更加了解(课本上学的就是ADC0809),所以本次设计我选用了ADC0809作为模数转换器。
1.2.3显示方案确定
该设计的温度测量系统只要求温度的显示,所以显示系统在该设计中是必不可少的。
当前常用的有液晶显示和数码管显示两种显示方法。
液晶显示功能强大,不但可以显示数字字符、德文、法文、点阵显示,还可以显示全部国标汉字,但是也存在与单片机连接时接口电路驱动复杂;显示亮度低,不利于观察;编程困难;成本高等缺点,本系统只显示数字,而且需要考虑到能耗尽量少等问题,数码管内部元件比较简单,耗能相对较低,所以选择了数码管显示。
不但硬件电路简单,造价低廉,而且数码管亮度高,利于我们的观察读数。
2硬件设计
2.1温度信号的获取与放大
本系统以PT100为温度传感器获取温度信号,以放大器LM741为信号放大器件。
2.1.1元件介绍
PT100温度传感器为正温度系数热电阻传感器,主要技术参数如下:
①测量范围:
-200℃~+850℃;
②允许偏差值
℃:
A级
,B级
;
③响应时间<30s;
④最小置入深度:
热电阻的最小置入深度≥200mm;
⑤允通电流≤5mA。
另外,PT100温度传感器还具有抗振动、稳定性好、准确度高、耐高压等优点。
鉑热电阻的线性较好,在0~100摄氏度之间变化时,最大非线性偏差小于0.5摄氏度。
鉑热电阻阻值与温度关系为:
①-200℃<t<0℃时,
;
②0℃≤t≤850℃时,
;
式中,A=0.00390802;B=-0.000000580;C=0.0000000000042735。
可见PT100在常温0~100摄氏度之间变化时线性度非常好,其阻值表达式可近似简化为:
,当温度变化1℃,PT100阻值近似变化0.39
。
2.1.2放大电路设计
热电阻测温是基于金属导体的电阻值随温度的增加而增加这一特性来进行温度测量的。
通常将其放在电桥的桥臂上,温度变化时,热电阻两端的电压信号被送到仪器放大器LM741的输入端,经过仪器放大器放大后的电压输出送给A/D转换芯片,从而把热电阻的阻值转换成数字量。
电路原理图如图2-1所示。
图2-1信号采集与放大电路
对信号放大,我们使用了低价格、高精度的仪器放大器LM741,它运用方便,可以通过外接电阻方便的进行各种增益(1-1000)的调整。
其增益计算公式为:
(1)
温度值计算过程:
由于A/D检测到的模拟电压值
(2)
计算可到的
值,然后利用如下公式求出温度值:
(3)
其中
,
。
2.2模数转换单元
2.2.18位串行A/D转换器ADC0809
ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。
它是逐次逼近式A/D转换器,可以和单片机直接接口。
它是美国国家半导体公司的产品,是目前国内最广泛的8位通用的A/D转换的芯片。
①ADC0809的内部逻辑结构如图2-2所示。
图2-2ADC0809内部逻辑结构
由上图可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。
多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。
三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。
②引脚结构如图2-3所示。
图2-3引脚结构
IN0-IN7:
8条模拟量输入通道
ADC0809对输入模拟量要求:
信号单极性,电压范围是0-5V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。
地址输入和控制线:
4条
ALE为地址锁存允许输入线,高电平有效。
当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量送入转换器进行转换。
A,B和C为地址输入线,用于选通IN0-IN7上的一路模拟量输入。
通道选择表如表2-4。
表2-4通道选择
C
B
A
选择的通道
0
0
0
IN0
0
0
1
IN1
0
1
0
IN2
0
1
1
IN3
1
0
0
IN4
1
0
1
IN5
1
1
0
IN6
1
1
1
IN7
数字量输出及控制线:
11条
ST为转换启动信号。
当ST上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D转换;在转换期间,ST应保持低电平。
EOC为转换结束信号。
当EOC为高电平时,表明转换结束;否则,表明正在进行A/D转换。
OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。
OE=1,输出转换得到的数据;OE=0,输出数据线呈高阻状态。
D7-D0为数字量输出线。
CLK为时钟输入信号线。
因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHZ。
VREF(+),VREF(-)为参考电压输入。
ADC0809应用注意事项:
①ADC0809内部带有输出锁存器,可以与AT89S51单片机直接相连。
②初始化时,使ST和OE信号全为低电平。
③送要转换的哪一通道的地址到A,B,C端口上。
④在ST端给出一个至少有100ns宽的正脉冲信号。
⑤是否转换完毕,我们根据EOC信号来判断。
⑥当EOC变为高电平时,这时给OE为高电平,转换的数据就输出给单片机了。
2.2.2模数转换单元电路的设计
电路原理图如图2-5。
图2-5A/D转换电路原理图
由图2-5可以看出A、B、C都接地(都为0),故信号输入口选IN0,其空间地址为7FF8H。
2.3键盘电路的设计
本设计采用1*3独立按键。
其原理图如图2-6。
图2-6键盘电路原理图
2.4LED显示电路的设计
在单片机应用系统中,如果需要显示的内容只有数码和某些字母,使用LED数码管是一种较好的选择。
LED数码管显示清晰、成本低廉、配置灵活,与单片机接口简单易行。
2.4.1LED数码管原理
LED数码管是由发光二极管作为显示字段的数码型显示器件。
图2-7a为0.5英尺LED数码管的外形和引脚图,其中七只发光二极管分别对应a~g笔段构成“
”字形另一只发光二极管dp作为小数点。
因此这种LED显示器称为七段数码管或八段数码管。
图2-7LED数码管
LED数码管按电路中的连接方式可以分为共阴极和共阳极两大类,如图2-7b、c所示。
共阳型是将各段发光二极管的正极连在一起,作为公共端COM,公共端COM接高电平,a~g、dp各笔段通过限流电阻接控制端。
某笔段控制端低电平时,该笔段发光,高电平时不发光。
控制这几段笔段发光,就能显示出某个数码或字符。
共阴型是将各数码发光二极管的负极连在一起,作为公共端COM接地,某笔段通过限流电阻接高电平时发光。
LED数码管按其外形尺寸有多种形式,使用较多的是0.5英寸和0.8英寸;按显示颜色也有多种形式,主要有红色和绿色;按亮度强弱可分为高亮和普亮,指通过同样的电流显示亮度不一样,这是因发光二极管的材料不一样而引起的。
LED数码管的使用与发光二极管相同,根据其材料不同正向压降一般为1.5~2V额定电流为10mA,最大电流为40mA。
静态显示时取10mA为宜,动态扫描显示可加大,加大脉冲电流,但一般不超过40mA。
2.4.2LED数码管编码方式
当LED数码管与单片机相连时,一般将LED数码管的各笔段引脚a、b、…、g、dp按某一顺序接到MCS-51型单片机某一个并行I/O口D0、D1、…、D7,当该I/O口输出某一特定数据时,就能使LED数码管显示出某个字符。
例如要使共阳极LED数码管显示“0”,则a、b、c、d、e、f各笔段引脚为低电平,g和dp为高电平,如表2-8。
表2-8共阳极LED数码管显示数字“0”时各管段编码
D7
D6
D5
D4
D3
D2
D1
D0
字段码
显示数
dp
g
f
e
d
c
b
a
1
1
0
0
0
0
0
0
C0H
0
C0H称为共阳极LED数码管显示“0”的字段码,不计小数点的字段码称为七段码,包括小数点的字段称为八段码。
LED数码管编码方式有多种,按小数点计否可分为七段码和八段码;按共阴共阳可分为共阴字段码和共阳字段码,不计小数点的共阴字段码与共阳字段码互为反码;按a、b、…、g、dp编码顺序是高位在前,还是低位在前,又可分为顺序字段码和逆序字段码。
甚至在某些特殊情况下将a、b、…、g、dp顺序打乱编码。
表2-9为共阴极和共阳极LED数码管几种八段编码表。
表2-9共阴极和共阳极LED数码管几种八段编码
共阴顺序小数点暗
共阴逆序小数点暗
共阳顺序
小数点亮
共阳顺序
小数点暗
dpgfedcba
16进制
abcdefgdp
16进制
0
00111111
3FH
11111100
FCH
40H
C0H
1
00000110
06H
01100000
60H
79H
F9H
2
01011011
5BH
11011010
DAH
24H
A4H
3
01001111
4FH
11110010
F2H
30H
B0H
4
01100110
66H
01100110
66H
19H
99H
5
01101101
6DH
10110110
B6H
12H
92H
6
01111101
7DH
10111110
BEH
02H
82H
7
00000111
07H
11100000
E0H
78H
F8H
8
01111111
7FH
11111110
FEH
00H
80H
9
01101111
6FH
11110110
F6H
10H
90H
2.4.3LED数码管显示方式和典型应用
LED数码管显示电路在单片机应用系统中可分为静态显示方式和动态显示方式。
①静态显示方式。
在静态显示方式下,每一位显示器的字段需要一个8位I/O口控制,而且该I/O口须有锁存功能,N位显示器就需要N个8位I/O口,公共端可直接接+5V(共阳)或接地(共阴)。
显示时,每一位字段码分别从I/O控制口输出,保持不变直至CPU刷新显示为止。
也就是各字段的亮灭状态不变。
静态显示方式编程较简单,但占用I/O口线多,即软件简单、硬件成本高,一般适用显示位数较少的场合。
②动态扫描显示方式。
当要求显示位数较多时,为简化电路、降低硬件成本,常采用动态扫描显示电路。
所谓动态扫描显示电路是将显示各位的所有相同字段线连在一起,每一位的a段连在一起,b段连在一起…g段连在一起,共8段,由一个8位I/O口控制,而每一位的公共端(共阳或共阴COM)由另一个I/O口控制。
这种连接方式由于将多位字段线连在一起,当输出字段码时,由于多门同时选通,每一位将显示相同的内容。
因此要显示不同的内容,必须采取轮流显示的方式。
即在某一瞬间时,只让某一位的字位线处于选通状态(共阴极LED数码管为低电平,共阳极为高电平),其他各位的字位线处于开断状态,同时字段线上输出这一位相应要显示字符的字段码。
在这一瞬时,只有这一位在显示,其他几位暗。
同样在下一瞬时,单独显示下一位,这样依次轮流显示,循环扫描。
由于人的视觉滞留效应,人们看到的是多位同时稳定显示。
本设计为静态显示,电路如图2-10所示。
显示器由4个LED数码管组成。
输入有12个信号,它们是段选信号P1.0~P1.7和位选信号INT1、INT0、T1、T0。
若想使LED发光则必须保证有足够大的电流流过LED的各段。
流过LED的电流大时,LED发光亮度高;流过LED的电流小时,LED发光亮度就低,为了使LED能够长期可靠地工作应使流过LED的电流为其额定电流。
为LED显示器提供电流的电路称为LED的驱动电路。
由于显示部分选择了静态显示,因此驱动电路也选择静态驱动。
静态显示电路的驱动电路分为段驱动电路和位驱动电路两种。
段驱动电路考虑到所有的段电流均流过位选线,因此位驱动电路的驱动能力应为段驱动能力的8倍(最严重情况八段全亮)。
驱动电路可采用分立元件电路,也可采用集成驱动电路,此外有些硬件译码电路本身包括驱动电路。
由于这里采用动态输出,且单片机的内部结构决定了数码管可以直接由单片机驱动。
因此采用分立元件的显示驱动电路也很简单。
2.4.4LED数码管的原理图
LED数码管显示原理图如图2-10。
图2-10LED数码管显示原理图
2.5声光报警电路
报警电路原理如图2-11。
图2-11声光报警电路原理图
2.6单片机接口电路
2.6.1单片机的时钟电路
单片机内部的振荡电路是一个高增益反相放大器,引线XTAL1和XTAL2分别是放大器的输入端和输出端。
单片机内部虽然有振荡电路,但要形成时钟,外部还需附加电路。
单片机的时钟产生方式有两种。
①内部时钟方式。
利用其内部的振荡电路在XTAL1和XTAL2引线上外接定时元件,内部振荡电路便产生自激振荡,用示波器可以观察到XTAL2输出的时钟信号。
最常用的是在XTAL1和XTAL2之间连接晶体振荡器与电容构成稳定的自激震荡器,如图2-12所示。
晶体可在1.2~12MHz之间选择。
MCS-51单片机在通常应用情况下,使用振荡频率为6MHz的石英晶体,而12Hz频率的晶体主要是在高速串行通信情况下才使用。
对电容值无严格要求,但它的取值对振荡频率输出的稳定性、大小及振荡电路起振速度有少许影响。
C1和C2可在20~100pF之间取值,一般取30pF左右。
②外部时钟方式。
在由我单片机组成的系统中