pt100温度测量电子制作大赛参考设计原理报告(共16页).doc

上传人:飞****2 文档编号:6240877 上传时间:2022-02-01 格式:DOC 页数:16 大小:216KB
返回 下载 相关 举报
pt100温度测量电子制作大赛参考设计原理报告(共16页).doc_第1页
第1页 / 共16页
pt100温度测量电子制作大赛参考设计原理报告(共16页).doc_第2页
第2页 / 共16页
点击查看更多>>
资源描述

《pt100温度测量电子制作大赛参考设计原理报告(共16页).doc》由会员分享,可在线阅读,更多相关《pt100温度测量电子制作大赛参考设计原理报告(共16页).doc(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上重庆邮电大学电子制作大赛设计报告 学院: 自动化学院 年级: 09级 姓名: xx xx xx 学号: 班级: 目录简易温度测量装置摘要:本简易温度测量装置由单片机主控制模块,电源模块、温度采样与处理模块和数据转换模块和温度检测模块等构成,由c8051为主控单片机,由自行设计的恒流源式测温电路进行信号采样,运用集成运算放大器工作在线性区域的特性对信号进行非线性处理并放大后,通过TLC1549 10位AD芯片将模拟信号变成数字信号,再由LCD1602将实时温度显示在液晶屏上,实现了对温度的精确测量。本装置可对040C之间的温度进行测量,误差不超过正负0.5度,此外报警门

2、限可手动设置,当温度达到门限值时蜂鸣器会发出警报声。该装置有测量精确,反应灵敏,设计简单,检测方便等特点。关键字:恒流源式测温电路 单片机 10位AD转换芯片 精确测量 引言温度是用来表征物体冷热程度的物理量, 它不可以直接测量, 但可以通过物体随温度变化其自身的某些特性( 如电阻、电压) 的变化来间接测量。通过研究发现, 金属铂的电阻值随温度变化而变化, 并且具有很好的重现性和稳定性, 利用此种温度特性制成的温度传感器称为铂热电阻温度传感器。使用最多的铂热电阻温度传感器零摄氏度标称中阻阻值为100 和10 , 电阻变化系数为0.。铂电阻温度传感器, 精度高, 稳定性好, 应用温度范围广, 是

3、中低温区最常用的一种温度传感器, 不仅广泛用于工业测温, 而且被制成各种标准温度计供计量和校准使用。当PT100在0摄氏度的时候他的阻值为100欧姆,它的阻值会随着温度上升而成近似匀速的增长。但他们之间的关系并不是简单的正比的关系,而更应该趋近于一条抛物线。1 方案论证与设计全系统由c8051做全局控制,由自行设计的温度采样电路进行信号采样,运用集成运算放大器工作在线性区域的特性对信号进行处理后,通过TLC1549 10位AD芯片将模拟信号变成数字信号,通过软件编程利用线性插值法去除铂电阻的部分非线性,线性化处理后的数字再由LCD1602将实时温度显示在液晶屏上,实现了对温度的精确测量和其他附

4、加功能。本系统的优点在于成本低廉,减少硬件,并满足精度要求。不足之处在于,默认在040C之间铂电阻阻值与温度呈线性关系,但他们之间的关系并不是简单的正比的关系,而更应该趋近于一条抛物线。当测量电阻阻值很小时, 测试线的电阻可能带来误差。2 原理分析与硬件电路图根据题目要求,通过信号采集、放大,通过AD转换成数字信号后通过单片机的运算,计算出温度值,由于采用了10位的转换芯片,计算的温度值可精确到小数点后3位;同时eeprom将计算出的温度与门限温度对比,决定是否发出警报,门限温度可通过按键进行调整。信号采集门限值调整按 键1602输出温度值单片机运算放大报警EEPROM10位AD转换芯片将温度

5、值与门限值进行比较图1 电路设计流程图2.1恒流源式测温电路测温原理:通过运放U1A将基准电压2.32V转换为恒流源,电流流过Pt100时在其上产生压降,再通过运放U1B将该微弱压降信号放大(图中放大倍数为10),即输出期望的电压信号,该信号可直接连AD转换芯片。 根据虚地概念“工作于线性范围内的理想运放的两个输入端同电位”,运放U1A的“+”端和“-”端电位V+V-2.32V;假设运放U1A的输出脚1对地电压为Vo,根据虚断概念,(0-V-)/R1+(Vo-V-)/RPt1000,因此电阻Pt100上的压降VPt100Vo-V-V-*RPt100/R1,因V-和R1均不变,因此图3虚线框内的

6、电路等效为一个恒流源流过一个Pt100电阻,电流大小为V- /R1,Pt100上的压降仅和其自身变化的电阻值有关。 具体电路如下图所示:图2 恒流源式测温电路图2.2 A/ D转换电路 A/ D 部分为适合测控单元数据传输的需要,采用了TLC1549 芯片,与传统A/ D 芯片并行数据输出方式不同,该芯片采用串行数据输出方式,所以可以通过单片机输出的串行移位脉冲来控制采样数据的读取。TLC1549 的分辨率为10 位,为逐次逼近型的高速A/ D 芯片,内置采保功能和系统时钟,该芯片有3 个通道,其中两个数字量输入通道(片选CS 和内部时钟输出或外部时钟输入I/ O CLK) 和一个三态数据输出

7、通道(DOUT),从而可以方便地实现A/ D 芯片与单片机之间的数据接口。A/ D转换电路如图3 所示。图3 A/ D转换电路图2.3 EEPROM存储芯片串行E2PROM是基于I2C-BUS 的存储器件,遵循二线制协议,由于其具有接口方便,体积小,数据掉电不丢失等特点,在仪器仪表及工业自动化控制中得到大量的应用。本装置中用24c02存储门限温度,用于实时监控温度,当测量的外界温度达到门限值(最大或最小值)时,蜂鸣器将会报警。具体电路见下图:图3 EEPROM存储芯片连接图2.4 1602LCD液晶显示图4 1602LCD液晶显示电路2.5 主芯片80C51主芯片80C51存储程序,通过引脚控

8、制其他芯片、电路,该温度测量装置总原理图如下图所示。图5 温度测量装置原理图3软件设计与流程 3.1理论分析与计算根据题目要求,铂电阻的阻值R会随着外界温度的变化而变化,而且在0到40之间大致呈线性状态,由图2得:通过运放U1A将基准电压2.32v转换为恒流源,电流流过Pt100时在其上产生压降,再通过运放U1B将该微弱压降信号放大(图中放大倍数为10),即输出期望的电压信号V0,该信号可直接连AD转换芯片。根据虚地概念“工作于线性范围内的理想运放的两个输入端同电位”,运放U1A的“+”端和“-”端电位V+V-2.32V;假设运放U1A的输出脚1对地电压为Vo,根据虚断概念,(0-V-)/R1

9、+(Vo-V-)/RPt1000,因此电阻Pt100上的压降VPt100Vo-V-V-*RPt100/R1,因V-和R1均不变,因此图3虚线框内的电路等效为一个恒流源流过一个Pt100电阻,电流大小为V- /R1,Pt100上的压降仅和其自身变化的电阻值有关。 由于LCD1549芯片有10位分辨率,基准电压V基为2.32v,则模拟电压转换成数字电压后的分度值为V基/1024,电压信号V0与转换后的数字电压V1关系为:V0= V1*V基/1024,恒流源电流可以根据欧姆定律得:I=VR/R1=1.16mA, VR 稳压管电压,为2.32v,R1=2000,铂电阻的阻值R0= V0/I,由R0值对

10、照铂电阻阻值和温度变化表即可得到当前的温度值。表1 Pt100热电阻分度表温度 0123456789电阻值()010203040100.00103.90107.79111.67115.54100.39104.29108.18112.06115.93100.78104.68108.57112.45116.31101.17105.07108.96112.83116.70101.56105.46109.35113.22117.08101.95105.85109.73113.61117.47102.34106.24110.1211+4.00117.86102.73106.63110.51114.381

11、18.24103.12107.02110.90114.77118.63103.51107.40111.29115.15119.015060708090119.40123.24127.08130.90134.71119.78123.63127.46131.28135.09120.17124.01127.84131.66135.47120.55124.39128.22132.04135.85120.94124.78128.61132.42136.23121.32125.16128.99132.80136.61121.71125.54129.37133.18136.99122.09125.93129

12、.75133.57137.37122.47126.31130.13133.95137.75122.86126.69130.52134.33138.133.2程序流程图否否否210是是是开始温度采集检测按键K1是否为0恒流源放大单片机计算出数字电压值显示最高温度门限值检测按键K1是否为0是否为0检测按键K2是否为0检测flag的值是0,1还是2设置门限温度值+1显示数字电压值、温度设置门限温度值-1显示最低温度门限值AD转换判断温度是否达到门限值蜂鸣器响是4主要程序分析4.1 AD信号转换函数通过此函数将模拟电压信号转换成数字的电压信号,根据公式V0= V1*V基/1024,int ad_rea

13、d(void) uchar i = 0; int Temp = 0; adcs = 1; adclk = 0; adcs = 0; for( i = 0; i 10; i +) if(addata=1) Temp=Temp*2 + 1;else Temp=Temp*2; adclk = 1; adclk = 0; adcs = 1; return Temp; 4.2计算函数 通过公式由数字电压值计算出铂电阻电阻值、温度值。unsigned long dianzu() unsigned long r,V; V=(value*Vref*100)/1024; /10000倍AD输出的电压值 V=V/

14、10; /真实值的10000倍 r=(V*2000)/VR; /扩大100倍的电阻值 return r; unsigned long wendu() uchar i; unsigned long da ,xiao ,t; for(i=0;i=xiao & Rda) break; t=(R-xiao)*1000/(da-xiao) +i*1000; /扩大1000倍的温度 return t; 4.3取样输出、线性插值函数通过线性插值,大大消除铂电阻阻值随温度变化的非线性,通过取平均值尽量减少了测量误差,使测量更精确。int quyang() uchar i; int average ,sum;

15、for(i=0;i5;i+) sum=sum+ad_read();delay(5); average=sum/5; return average;4.4 1602液晶显示函数显示铂电阻阻值、温度、最高最低温度门限值以及门限温度调整值。显示铂电阻阻值、温度、最高最低温度门限值:void display_R() write_command(0x80+0x02);write_dat(R);write_dat(:); write_dat( (R/10000) +0x30);/Rwrite_dat( ( (R%10000)/1000)+0x30);write_dat( ( (R%1000)/100) +

16、0x30);write_dat(.);write_dat( (R%100)/10 +0x30);write_dat( R%10 +0x30); write_command(0x80+0x40+0x02);write_dat(T);write_dat(:);write_dat( T/10000 +0x30); /Twrite_dat( (T%10000)/1000 +0x30);write_dat(.);write_dat( (T%1000)/100 +0x30);write_dat( (T%100)/10 +0x30);write_dat( T%10 +0x30);delay(10); 门限温

17、度调整值:void display_set() temper1=read_addr(1); temper2=read_addr(2); write_command(0x80+0x02); write_dat(L); write_dat(o); write_dat(w); write_dat(e); write_dat(r); write_dat(:); write_dat(temper1/10 +0x30); write_dat(temper1%10 +0x30); write_dat( ); write_dat( ); write_command(0x80+0x40+0x02); write

18、_dat(U); write_dat(p); write_dat(p); write_dat(e); write_dat(r); write_dat(:); write_dat(temper2/10 +0x30); write_dat(temper2%10 +0x30); write_dat( ); write_dat( ); delay(10);4.5门限温度调整函数通过按键调整(增加或减少)门限温度值void add() switch(flagK1) case 1: temper1+; write_addr(1,temper1); break; case 2: temper2+; writ

19、e_addr(2,temper2); break; void sub() switch(flagK1) case 1: temper1-;write_addr(1,temper1); break; case 2: temper2-;write_addr(2,temper2); break; 4.6延时函数、报警函数当温度值超过门限值时,蜂鸣器会报警void beeper() if(Tread_addr(2) beep=1; else beep=0; 延时函数void delay(uint z) unsigned int x,y;for(x=z;x-;x0) for(y=110;y-;y0);4

20、.7主函数void main() init_1602(); beep=0; while(1) value=quyang();R=dianzu();T=wendu();if(K1=0) delay(10); if(K1=0) flagK1+; if(flagK1=3) flagK1=0;while(!K1); if(K2=0) delay(10); if(K2=0) add(); while(!K2); if(K3=0) delay(5); if(K3=0) sub(); while(!K3); switch(flagK1) case 0: display_R(); break; case 1:

21、 display_set(); break; case 2: display_set(); break; beeper(); 5系统测试与误差分析5.1测试环境时间:2011年11月6日温度:205.2测试仪器(1)多功能数字万用表(2)简易温度测量装置 (3)单片机开发板(4)温度计5.3测试方法 用铂电阻测电阻周围的温度,铂电阻测得的温度值显示在1602屏幕上,定量改变铂电阻周围的温度值,统计出铂电阻测出的温度数据,将显示各数值同温度计上的数值进行比较,计算出各数值的误差值。检测当温度达到门限值时该装置会不会及时报警。5.4测试结果和分析(1)温度计温度和铂电测量温度测试结果如下表表2 测

22、试结果测量次数理论值(温度计)测量值误差值误差率12345678910111213141516171819205.5误差产生原因分析(1) 采样电阻精度误差。(2) A/D转换电路转换误差和量化误差。(3) 整个硬件部分由手工焊接完成,布线是无法避免线路之间的干扰,硬件输出的电压、电流误差较大,是造成误差较大的主要因素。(4)Pt100热电阻分度表本身存在非线性误差,虽然经过线性插值后误差减小了,但还是会造成不能避免的误差。5总结在本次此课题中,我们仔细的分析了电路图的排版结构,尽量使排版合理,减少导线的使用,缩小了电路的规模,也使电路内部的干扰和串扰大大降低,使硬件的调试难度也降低很多。但是

23、在整个系统的设计上我们还是遇到了很多困难和不解。最终,经过多日的努力,我们大致上完成了题目要求,但是由于硬件系统上的缺陷,导致我们不能更精确地完成测量。软件上,基本实现了每一部分的函数分块,条理上还算比较清晰。在这短短的几日中,我们得到了很大的锻炼,这一次虽然我们没有完美的完成这一课题,但是这也提醒了我们,凡事没有这么简单,我们还有很大的进步空间,希望下一次我们设计并实现更加人性化、智能化的作品。参考文献1 高吉祥.电子仪器仪表设计.北京:北京电子工业出版社,2007.6.题目: 简易温度测量装置1. 采样电路(pt100)2. 稳压、恒定电流电路(恒流源)3. 放大、AD转换电路(TLC1549)4. 数据存储电路(EEPTOM 24C02)5. 主芯片电路(51)6. 按键、显示电路、报警电路(1602 蜂鸣器 )设计报告、原理图、理论分析、方案选定专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 教育教学

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁