温度采集与显示系统

上传人:suij****uang 文档编号:128951378 上传时间:2022-08-02 格式:DOCX 页数:20 大小:190.69KB
返回 下载 相关 举报
温度采集与显示系统_第1页
第1页 / 共20页
温度采集与显示系统_第2页
第2页 / 共20页
温度采集与显示系统_第3页
第3页 / 共20页
点击查看更多>>
资源描述
温度采集与显示系统的设计姓名学号摘要: 由于人体不能精准的感受到环境中的温度,而温度采集系统能够准确、 及时、全面地反映环境质量现状及发展趋势,因而本论文设计了基于 8051 单片 机控制技术的温度采集与显示系统。该系统通过温度传感器将检测到的温度信号 转换成电压信号,该模拟量电压经8路AD0809输出数字量电压值送给单片机。根据AD值与温度之间的关系利用查表和插值法得出温度值。并且这些数值都能 实时显示在显示屏上。一、设计内容及意义温度采集与显示系统在人们的日常生活中的应用越来越广泛,如花卉栽 培温湿度控制、大棚温室控制系统、粮库温室控制系统、现代化居室温湿度 控制等等。随着半导体技术的不断发展,热敏电阻作为一种新型感温元件应用越来 越广泛。他具有体积小、灵敏度高、重量轻、热惯性小、寿命长以及价格便 宜等优点。单片机在测控系统中的作用是对信息进行处理、运算和发出控制 命令等,但所要处理的信息是从外界拾取的,拾取的信号可以分为开关量和 模拟量两种。开关量只需放大、整形和电平转换等处理后,即可直接送入单 片机系统。但输入量如果是模拟量,处理的复杂程度就大大地增加了,由于 模拟输入信号一般很微弱,需要进行放大,对于一个测控范围较大的仪器, 还要有多级可变放大电路。另外,在放大有用信号的同时,干扰信号也被同 时放大,还要进行必要的滤波处理。所以要设计出一个真正实用的单片机测 控系统,必须先设计好适用的前向通道。根据被测对象输出信号的类型、大 小、数量不同,前向通道的结构类型也各不相同。本系统基于51单片机设计的温度采集与显示系统是A/D转换器、热敏 电阻温度传感器、LCD显示屏及相应接口的综合应用。二、整体设计原理及方案图 2.1 整体系统框图该系统是以 NTC 型热敏电阻为传感器的信号采集端,将温度信号转换成 电压信号,再经ADC0809进行模数转换,进一步将电压信号转换成单片机可 以处理的00HFFH数字信号,并保证温度与数字信号实时同步,经单片机 8051 进行数据处理(查表和线性插值法),再进一步转换成与实际温度相符 合的数字信号,并在LCD显示屏上实时跟踪显示。1、显示模块方案选择:方案一:数码管显示,采用动态扫描的方式。优点是编程容易,硬件电 路调试简单,显示两部分也比较好控制。缺点是显示的内容不够丰富,本系 统需要实时显示电压AD值,放大后的十进制值以及温度值,实验台上提供 的数码管数就达不到实时显示的效果。方案二:用LCD液晶显示器显示,优点是功耗低,还能显示更多的字符, 有着良好的人机界面,缺点是控制比较复杂。实验台上提供的是OCMJ2*8的 中文模块系列液晶显示器,内含汉字字库和英文字库,可以实汉字、ASCII 码的同屏显示,能够达到实时显示的效果。2、AD0809 设计AD0809型8位MOS型A/D转换器,可实现8路模拟信号的分时采集,片内有8 路模拟选通开关,以及相应的通道地址锁存用译码电路,其转换时间为100 微秒左右。图2.2 AD0809逻辑图AOOA ADDB ADDC由图2.2 可知,该输出公式为:A/D实验台上基准电压为 5V)V - V -AD =- INREF X 255V + V -1) 在 IN0IN7 上可分别接上要测量转换的 8 路模拟量信号。该系统只需要将 热敏电阻温度传感器的电压输出端接 IN0。2) 将 ADDAADDC 端给上代表选择测量通道的代码。该系统选通通道 0。3)将ALE由低电平置为高电平,从而将ADDAADDC送进的通道代码锁存,经 译码后通道 0的模拟量送给内部转换单元。4)给START 一个正脉冲。当上升沿时,所有内部寄存器清零。下降沿时,开始 进行A/D转换;在转换期间,START保持低电平。5)EOC为转换结束信号。在上述的A/D转换期间,可以对EOC进行不断测量, 当EOC为高电平时,表明转换结束。否则,表明正在进行A/D转换。6)当A/D转换结束后,将OE设置为1,这时D0 D7的数据便可以读取了。OE =0, D0 D7输出端为高阻态,OE=1,D0 D7端输出转换的数据。3、数据处理部分查表和线性插值法热敏电阻为一种阻值随温度变化的电阻,按其变化关系可分为两类:正 温度系数(简称PTC)和负温度系数(简称NTC)。PTC元件的阻值随温度的 上升而上升,NTC元件的阻值随温度的上升而下降。本模块中使用的为NTC 型热敏电阻,在常温(25C)下其阻值为10K,其阻值与温度的关系、阻值与电 压的关系、电压值与电压AD值得关系如下表所示:温度(C)-30-20-100102025304050阻值(K)176.096.2954.8532.4119.8012.4710.008.0665.3423.618电压(V)0.2680.47040.7711.1781.6772.2252.52.76763.25903.671681720111301002967228523418914298027501110电压AD1424396086114128142167188温度(C)60708090100110120130140150阻值(K)2.5021.7631.2650.92260.68340.51580.39420.30480.23820.1881电压(V)3.99934.25064.43854.57764.68014.75474.81034.85214.88364.90766010163326406465580049997501077570958641电压AD205218228235240244247249250252在上面列的表格中,温度与阻值的关系是已知的,电压是根据式3-1得出 的,电压的AD值是根据式2T得出的。电压V与电压AD的关系:AD (V*10)(2-1)图 2.4 电压 AD 值与温度关系折线图根据图2.4可用线性插值法在线性区间建立函数关系,随着电压的改变输 出温度值。三、硬件电路图图 3.1 热敏电阻温度采集电路图图3.1中JI、J2、J3分别对应于模块上的VI、Vzero、Vout插孔,R3对应 与ZERO电位器,用于偏置电压调节;R9对应于GAIN电位器,用于增益调节。 使用时,可先将电路增益调节为1,具体做法如下:调节ZERO电位器,使Vzero=0V, 用万用表分别测量VI、Vout端电压,调节GAIN电位器,使V1=Vout,此时电路 增益为1。由此可得出电压与电阻之间的关系:=心 R 2 = 5*10 =5R1 + R 2R1 +10 R1 +10四、程序设计流程图图 4.1 主函数程序流程图图 4.2 LCD 显示流程图图 4.3 A/D 转换流程图入口关中断读通道0转换结果送结果到显示屏中断返回图 4.3 中断服务程序五、问题和不足出现的问题及解决方法:在数据处理部分,之前是建立电压值V与温度值T的关系来显示温度,发 现再怎么细分线性部分,输出的温度误差还是很大,而且显示的温度值一直 在跳变。于是决定找电压值AD与温度之间的关系,这样减小了误差,显示的 温度值也几乎不再跳变了。不足之处:实验台提供的可调输出电压的范围是0-4.5V,正确来说显示的温度范围 应为-35C至90C。这样选定的线性区间才能较小误差,更趋近与表格提供 的数值。所以,更细分的取线性部分得到的数值会更好。六、总结通过此次实习,使我对所学知识进行了实践。掌握了A/D转换芯片性能及 编程方法、单片机系统中扩展LCD显示的方法以及温度传感器和LCD的工作原 理及综合应用。在数据处理部分学会了线性插值法。在编写程序时,也发现 对一些程序中的函数的处理不够合理,在自己的多次运行下,还是能够实现 温度监控的功能。本次单片机实训让我很有成就感,并对以前所学的单片机 知识做了一个小结。附件#include #include #include #include #define uchar unsigned char#define ulong unsigned long#define uint unsigned int#define Port_address XBYTE0X0CFA0sbit REQ=P3人5;请求信号,高电平有效sbit BUSY=P3人4;忙检测sbit E0C=P3人2;/转换结束信号,EOC=1-转换结束,EOC=0-正在转换void delay1ms(uint time) /延迟子程序 1uint ii;uint jj;for (ii=0;iitime;ii+)for(jj=0;jj200;jj+);void delay(uint time) /延迟子程序 2uint ii;uint jj;for (ii=0;iitime;ii+)for(jj=0;jj=0)qian=date/1000;bai=date%1000/100;shi=date%1000%100/10;ge=date%10;write_ASCII_8x16(10,16,0x2b);/显示正号+write_ASCII_8x16(11,16,0x30+qian);write_ASCII_8x16(12,16,0x30+bai);write_ASCII_8x16(13,16,0x2E);write_ASCII_8x16(14,16,0x30+shi);write_ASCII_8x16(15,16,0x30+ge);if(date=14&da=24&da=39&da=60&da=86&da=142&da=167&da=188&da=209&da=248)t=15000;return t;void main()int r=0;uint v,da;config();/中断初始化lcd_init();/显示屏初始化AD_init();/启动通道 0delay(700);clear_lcd();delay(700);write_chinese(0,0,46,34); /显示温度采集系统write_chinese(1,0,22,40);write_chinese(2,0,18,41);write_chinese(3,0,28,15);write_chinese(4,0,47,21);write_chinese(5,0,45,19);delay(700);clear_lcd();delay(700);while(1)if(r=0)da=AD(); v=da*195; display_voltage(v);display_digit(da);display_temperature(deal_wendu();AD_init();void int0(void) interrupt 0int r=1;EX0 = 0;EX0 = 1;
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


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

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


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