基于NTC热敏电阻的温度测量与控制系统设计.docx
《基于NTC热敏电阻的温度测量与控制系统设计.docx》由会员分享,可在线阅读,更多相关《基于NTC热敏电阻的温度测量与控制系统设计.docx(24页珍藏版)》请在咨信网上搜索。
题目名称:基于NTC热敏电阻的温度测量与控制系统设计 摘要: 本系统由TL431精密基准电压,NTC热敏电阻(MF-55)的温度采集,A/D和D/A转换,单片机STC89C51为核心的最小控制系统,LCD1602的显示电路等构成。温度值的线性转换通过软件的插值方法实现。该系统能够测量范围为0~100℃,测量精度±1℃,并且能够记录24小时内每间隔30分钟温度值,并能够回调选定时刻的温度值,能计算并实时显示24小时内的平均温度、温度最大值、最小值、最大温差,且有越限报警功能。由于采用两个水泥电阻作为控温元件,更有效的增加了温度控制功能。 关键词: NTC TL431 温度 线性转换 Abstract: The system is composed of TL431 as precise voltage,the temperature acauisition circuit with NTC thermistors (MF-55), the transform circuit of A/D and D/A, the core of the minimum control system with STC89C51, 1the display circuit usingLCD1602, etc. Get the temperature of the linear transformation by the software method. The range of the measure system is 0 ~ 100 ℃, measurement accuracy + 1 ℃.It can record 24 hours of each interval temperature by per 30 minutes selected of temperature.The time can be calculated and real-time display within 24 hours of the average temperature, maximum temperature and minimum temperature, maximum value, and each temperature sensor has more all the way limit alarm function. Due to the two cement resistance as temperature control components, the more effective increase the temperature control function. Keyword: NTC TL431 temperature linear conversion 目 录 1方案设计与论证 3 1.1 整体设计方案比较和选择 3 2 系统设计 5 2.1 总体设计 5 2.2 各单元模块功能介绍及电路设计 5 2.2.1 学习板电路 5 2.2.2 测温通道电路 7 2.2.3 模数转换电路 8 2.3 特殊器件的介绍 8 3 软件设计 9 3.1 软件流程图 9 3.2 线性转换处理--线性插值 10 4 系统测试 11 4.1 测试方法 11 4.2 测试结果 12 4.3结果分析 14 5 结论 14 参考文献 14 附录: 15 附1:元器件明细表 15 附2:仪器设备清单 15 附3:电路图图纸 16 附4:程序清单 17 1方案设计与论证 1.1 整体设计方案比较和选择 当某路传感器温度超越设定的温度上下阀值时,即产生相应的声光报警信号并显示该传感器的温度值,直至温度回到门限内(要求具有1℃的回差)或通过控制键解除警报。后向通道通过水泥电阻作为控温元件,增加温度控制功能。最后将输出的数字信号经过D/A转换,变换为温度,最终经过LCD1602进行显示。该方案硬件电路简单,电路其输出精度不高图1 方案1系统设计框图 图2 方案2系统设计框图 三运放的放大增益计算公式: 由于:==30K;=20K;==1K 所以:最大可以放大约60倍。 电桥中和的取值决定了输出电压的精确度,经过多次测量,所以该处取值都为20K。 图3 方案3系统设计框图 方案选定:方案3方案论证:综上所述能够满足系统设计的要求,所以选择方案3 2 系统设计 2.1 总体设计 经过TL431精密稳压源输出2.5V电压给一个桥式电阻电路,由于NTC热敏电阻的特性,所以随着温度的变化,电阻值减少了,后面在接一个三运放电路将电压放大到所需要的电压值。输出的电压值经过8位A/D转换器ADC0804转换后,将数字信号经由单片机STC89C51进行处理,然后将这些值送由LCD1602进行显示(如图4所示)。 图4 系统总体方案 2.2 各单元模块功能介绍及电路设计 2.2.1 学习板电路 学习板系统总体设计电路图(如图5所示)。 LED数码显示器 DA转换器 蜂鸣器 温度传感器 EEPROM 计算机 USB通信接口电源 键盘 AD转换器 LCD显示器 LED流水灯 MCU P2 P3 P1 P0 图5 学习板系统总体设计图 学习板上独立按键和矩阵按键的电路图(如图6所示)。 图6 键盘电路 STC89C51单片机电路图(如图7所示)。 图7 单片机电路 2.2.2 测温通道电路 下图为前向通道的电源部分。中间有D1和D2两个发光二极管,用来指示电源是否正常供电,此外还加了两个大小电容的并联电路,起滤波作用(如图8所示)。 图8 前向通道电源电路 控温电路,采用两个水泥电阻,更有效的对NTC热敏电阻进行控温操作(如图9所示)。 图9 控温电路 2.2.3 报警电路 蜂鸣器电路,当温度超过限度是起报警作用(图10 报警电路)。 图10 报警电路 2.2.3 模数转换电路 前向通道中,当温度值转换为电压后,还需要将电压值进行A/D转换,转换后的值才能送到单片机进行处理。后向通道中进行温度显示前应该先经过D/A转换(如图11 模数转换电路)。 图11 AD以及DA转换原理图 2.3 特殊器件的介绍 热敏电阻器是一种随(感应)温度的变化其电阻值呈显著变化的热敏感半导体元件。温度升高时阻值下降的热敏电阻器,称为负温度系数热敏电阻器(NTC)。 3 软件设计 3.1 软件流程图 该程序基于小系统板,小系统板上有显示、ADC转换、键盘等电路。学习系统板上主控单片机为STC89C51,所以采用c51编程方便简单,软件流程图如下: 图8 主程序流程图 3.2 线性转换处理--线性插值 在ADC进行数据采集的过程中不可能每一个数值都在整温度所对应的ADC数值上,所以如果在两个数据的中间一段就要对其进行进一步的精确定位。这样就必须知道采集到的数据在表1-2中的具体位置,因此要对数据表进行搜索、查找。线性表的查找(也称检索),可以有比较常见的顺序查找、折半查找及分块查找等方法,分析线性表1-2可以得到折半查找的算法是比较高效的。 这样的插值计算实际上是分段的,用直线段来拟和温度曲线,因此在处理的过程中分段越细致拟和的曲线就越接近实际温度曲线。 表1 插值表 温度传感器在0℃到100℃输出0V—2.5V,温度起点为0℃,满量程为100℃。学习系统板子上有8位的A/D转换器对应输出的数字量为00000000B—11111111B(0-2.5V),应用以下变换公式进行变换: AX=A0+(AM-A0)(NX-N0)/(NM-N0) 式中,A0为一次测量仪表的下限。 AM为一次测量仪表的上限。 AX实际测量值。 N0仪表下限对应的数字量。 NM仪表上限对应的数字量。 NX测量值对应的数字量。 温度非线性转换程序模块采用折线拟合法进行线性化处理 4 系统测试 4.1 测试方法 步骤1:先安上元件后,测试电路是否正确连通,待没有任何问题后将集成芯片安上。以此可以防止集成芯片由于电压过大而烧坏。 步骤2:将NTC热敏电阻放入冰水混合物中(0,进行调零操作。此时电压输出为0V。 步骤3:将NTC热敏电阻放入沸水杯子中,进行调满操作。此时的电压输出为最大,即为2.5V。 步骤4:记录不同温度时刻对应的温度转换值和实际温度值,进行NTC温度特性曲线的绘制。 4.2 测试结果 对于电桥温度的取值会影响后面测试温度的精度,所以在电桥平衡电阻(R1,R2)分别在200K和6.8K和20K时,对温度进行了测量。 具体情况如下图表格和图所示: 、 表2 第一次温度曲线实际测量数据 表3 第二次温度曲线实际测量数据 表3 最终温度测量数据 4.3结果分析 又图上特性曲线可以看出,温度变化从0度开始到100°时,变化规律为先慢接着较快后很慢; 5 结论 由于系统架构设计合理,功能电路实现较好,系统性能优良、稳定,较好地达到了题目要求的各项指标。基于学习板小系统进行软件调试很容易。在采集温度部分有调零和满刻度调整电路,在三运放的放大部分有滑动变阻器,可以很容易改变增益。在实现温度转换时,利用插值法,在提高测量精度是变得更容易。 此外,在后面的控温部分可以采用TEC半导体制冷片。因为采用三极管放大电路必须考虑三极管所允许的最大允许电流,否则会造成三极管烧坏。 参考文献 [1] 陈武凡.小波分析及其在图像处理中的应用.科学出版社,2002.01. [2] 高吉祥主编 . 高频电子线路 . 北京:电子工业出版社,2003 [3] 易波 . 通信原理 . 长沙:国防科技大学出版社出版,1998 [4] 何立民.单片机应用系统设计系统配置与接口技术[M].北京:北京航空航天大学,1990. [5] 李晓荃.单片机原理与应用[M]. 北京:电子工业出版社,2000. [6] 樊昌信.通信原理(第五版)[M].北京:国防工业出版社,2001 . [7] 全国大学生电子设计设计竞赛组委员会.全国大学生电子设计竞赛训练教程[M].北京 电子工业出版社,2005. [8] 俞俊民.自制恒流源[J].沈阳电力高等专科学校学报,1997. [9] 朱传奇.简易使用的直流电流源[J].山东电力技术,1999. [10] 马云峰.单片机控制的直流电流源设计[J].潍坊高等专科学校学报,1999. [11] Richard c .Dorf.modern conctrol systerm[M].BEIJING:Science Publishing House,2002. [12] Donald A. Neamen. Electronic circuit analysis and design[M].Tsinghua University Press and Springer Verlag.2002. 附录: 附1:元器件明细表 1. 基准稳压集成芯片TL431 2. ADC0804 3. DAC0832 4. 单片机STC89C51 5. 三极管8050 6. 液晶LCD1602 附2:仪器设备清单 1、数字信号发生器 2、数字万用表 3、模拟示波器 4、稳压电源 附3:电路图图纸 前后向通道电路图 学习板小系统原理图 前后向通道PCB图 附4:程序清单 ****************************************** *** 课题:NTC测温 *** *** 创建时间:2011年6月11日 *** ****************************************** /******************************************************************** 主函数部分 ********************************************************************/ void main() { uchar b=0,c,d; float e; init(); //液晶初始化 xianshi(7,mima1,0x80); //显示密码字样 do{ du_key1(); //扫描键盘 du_key2(); if(adjust1==4&adjust4==3) { b=1; adjust1=0; adjust4=0; } } while(b==0); Timer_start(); xianshi(16,deng1,0x80); //显示“please wait……”字样 while(remember<=50); init(); xianshi(6,wendu1,0x80); while(1) { du_key1(); du_key2(); chunshu(); lvbo(); if(adjust1==1) { flag=flag+1; if(flag==1) { init(); xianshi(8,look_shi,0x80); } write_command(0x80+9); write_date(shu[adjust2]); } else if(adjust1==2) { flag=flag+1; if(flag==1) { init(); xianshi(7,look_ge,0x80); } c=adjust3/10; d=adjust3%10; write_command(0x80+8); write_date(shu[c]); write_command(0x80+9); write_date(shu[d]); } else if(adjust1==3) { flag=flag+1; if(flag==1) { init(); xianshi(9,look,0xc0); } Look_for(); deep_chuli(wendu); write_command(0xc0+10); write_date(AD_buffer[0]); write_command(0xc0+11); write_date(AD_buffer[1]); write_command(0xc0+12); write_date('.') ; write_command(0xc0+13); write_date(AD_buffer[2]); } else if(adjust1==4) { flag=flag+1; if(flag==1) { init(); xianshi(9,day_aver,0xc0); } day_average(); deep_chuli(wendu); write_command(0xc0+10); write_date(AD_buffer[0]); write_command(0xc0+11); write_date(AD_buffer[1]); write_command(0xc0+12); write_date('.') ; write_command(0xc0+13); write_date(AD_buffer[2]); } else if(adjust1==5) { flag=flag+1; if(flag==1) { init(); xianshi(5,pwm_1,0xc0); } write_command(0xc0+5); write_date(shu[tiao/10]); write_command(0xc0+6); write_date(shu[tiao%10]); } else if(adjust1==6) { flag=flag+1; if(flag==1) { init(); xianshi(5,pwm_2,0xc0); } write_command(0xc0+5); write_date(shu[tiao/10]); write_command(0xc0+6); write_date(shu[tiao%10]); } else if(adjust1==7) { flag=flag+1; if(flag==1) { init(); xianshi(7,cha,0xc0); } e=max-min2; deep_chuli(e); write_command(0xc0+8); write_date(AD_buffer[0]); write_command(0xc0+9); write_date(AD_buffer[1]); write_command(0xc0+10); write_date('.') ; write_command(0xc0+11); write_date(AD_buffer[2]); } else { flag=flag+1; if(flag==1) { xianshi(6,wendu1,0x80); xianshi(4,max1,0xc0); xianshi(4,min1,0xc0+8); } line_processer(15,average); if(flag1==1) { min2=wendu; max=wendu; flag1=0; } if(wendu>max) { max=wendu; } else if(wendu<min2) { min2=wendu; } deep_chuli(wendu); baojin(); write_command(0x80+6); write_date(AD_buffer[0]); write_command(0x80+7); write_date(AD_buffer[1]); write_command(0x80+8); write_date('.') ; write_command(0x80+9); write_date(AD_buffer[2]); deep_chuli(max); write_command(0xc0+4); write_date(AD_buffer[0]); write_command(0xc0+5); write_date(AD_buffer[1]); write_command(0xc0+6); write_date('.') ; write_command(0xc0+7); write_date(AD_buffer[2]); deep_chuli(min2); write_command(0xc0+12); write_date(AD_buffer[0]); write_command(0xc0+13); write_date(AD_buffer[1]); write_command(0xc0+14); write_date('.') ; write_command(0xc0+15); write_date(AD_buffer[2]); } } } /******************************************************************* 子程序部分 ********************************************************************/ /******************************* AD采集 *******************************/ void AD_caiji(uchar x) { csad=0; WR1=0; //启动ad _nop_(); WR1=1; delay1(); AD_data=0xff; RD1=0; AD_buffer[x]=AD_data; RD1=1; WR1=0; } void chunshu() //数据存储 { uchar i; for(i=0;i<16;i++) { AD_caiji(i); } } /******************************************** 滤波模块 数据滤波去掉最大,最小值后求均值 **********************************************/ void lvbo() { uchar x,y; uint buff; for(x=15;x>0;x--) { for(y=x;y>0;y--) { if(AD_buffer[y]>AD_buffer[y-1]) //大小排序(从大到小) { buff=AD_buffer[y-1]; AD_buffer[y-1]=AD_buffer[y]; AD_buffer[y]=buff; } } buff=AD_buffer[0]; AD_buffer[0]=AD_buffer[x]; AD_buffer[x]=buff; } buff=0; for(x=14;x>0;x--) { buff=buff+AD_buffer[x]; } average=buff/14; } /************************************** 键盘查询 *************************************/ void delay1() { uchar g,h; for(g=100;g>0;g--) for(h=100;h>0;h--); } void du_key1() { key1=1; if(key1==0) { delay1(); if(key1==0) { flag=0; adjust1=adjust1+1; if(adjust1==8) { adjust1=0; } } while(key1==0); } } void du_key2() { key2=1; if(key2==0) { delay1(); if(key2==0) { if(adjust1==1) { adjust2=adjust2+1; if(adjust2==5) // 十位 { adjust2=0; } } else if(adjust1==2) { adjust3=adjust3+1; // 个位 if(adjust3==10) { adjust3=0; } } else if(adjust1==4) { adjust4=adjust4+1; // 密码 } else if(adjust1==5) { // 调节pwm的占空比 增加 tiao=tiao+1; if(tiao==101) tiao=0; } else if(adjust1==6) // 调节pwm的占空比 减少 { tiao=tiao-1; if(tiao==0) { tiao=100; } } } while(key2==0); } } /***************************************** 温度线性处理模块 ***************************************/ void line_processer(uchar x,uchar f) { uchar y,z=0; for(y=0;y<x;y++) { if(f>=Fen_duan[y][0]&&f<Fen_duan[y][1]) { z=y; wendu=(f-Fen_duan[z][0])/slope[z]+Fen_duan[z][2]; } } } void deep_chuli(float y) { int x; x=y*10; AD_buffer[0]=shu[x/100]; AD_buffer[1]=shu[(x-(x/100)*100)/10]; AD_buffer[2]=shu[x%10]; } /*************************************** 一天的平均温度 ***************************************/ void day_average() { uchar x; float y=0; for(x=0;x<48;x++) { average=Tem_buffer[x]; line_processer(15,average); y=y+wendu; } wendu=y/48; } /************************************* 报警模块 **************************************/ void baojin() { if(wendu>=35||wendu<=10) { beep=0; } else if(wendu<=34||wendu>=11) { beep=1; } }- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 NTC 热敏电阻 温度 测量 控制系统 设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文