基于AD590的数字式温度值Word下载.docx
- 文档编号:15890897
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:10
- 大小:254.45KB
基于AD590的数字式温度值Word下载.docx
《基于AD590的数字式温度值Word下载.docx》由会员分享,可在线阅读,更多相关《基于AD590的数字式温度值Word下载.docx(10页珍藏版)》请在冰豆网上搜索。
A/D采样电路直接12V的电源,将温度传感器AD590的电流信号转换成电压信号输送给ADC0804。
2.2单片机电源部分
采用三端稳压器7805给单片机供电。
7805的输入电压为12V。
2.3温度采样电路
2.3.1温度传感器的选取
目前市场上温度传感器较多,有以下几种:
方案一:
选用铂电阻温度传感器,此类温度传感器线性度、稳定性等方面性能都很好,但其成本较高。
方案二:
采用热敏电阻,选用此类元器件有价格便宜的优点,但由于热敏电阻的非线性特性会影响系统的精度。
方案三:
选用美国AnalogDevices公司生产的二端集成电流传感器AD590。
其测量范围在-50℃--+150℃,满刻度范围误差为±
0.3℃,当电源电压在5—10V之间,稳定度为1﹪时,误差只有±
0.01℃。
此器件具有体积小、质量轻、线形度好、性能稳定等优点其各方面特性都满足此系统的设计要求。
比较以上三种方案,方案三具有明显的优点,因此选用方案三。
2.3.2温度传感器AD590
测量范围在-50℃--+150℃,满刻度范围误差为±
0.3℃,当电源电压在5—10V之间,稳定度为1﹪时,误差只有±
AD590为电流型传感器温度每变化1℃其电流变化1uA在35℃和95℃时输出电流分别为308.2uA和368.2uA。
其外形如图1,采用金属圆壳3脚封装,管脚1为电源正端“+”,2脚为电流输出端“-”,3脚为管壳接地端,一般不用。
电路符号如图2所示。
2.3.3电路原理及参数计算
3、接下来我们用差动放大器使其输出V。
为(100K/10K)·
(V2-V1)=T/10。
由于ADC0804的最大输入电压为5V,所以将电路中的100KΩ电阻分别用一个47KΩ的电阻和5KΩ的滑动变阻器的串联电路代替。
这样,当温度在0-100℃变化时,输出的电压V。
的范围是0-5V。
2.3.4ADC0804性能描述
ADC0804为8bit的一路A/D转换器,其输入电压范围在0—5v,转换速度小于100us,转换精度0.39﹪。
ADC0804的Vin接采样电路的V。
口,
用两个1KΩ的电阻分压得到。
CS管脚接地,使ADC0804始终处于选通的状态。
输出口DB0-DB7分别接到单片机STC89C52的P1^0-P1^7管脚,将转换后的模拟信号输给单片机。
读信号输入端RD和写信号输入端分WD分别接到单片机的P2^3和P2^4端口。
2.4温度显示部分
温度显示部分采用两个数码管,显示范围为0-99.数码管采用公阴极数码管,a-dp分别接在锁存器74HC573的Q0-Q7上。
数码管的gnd分别接到单片机的P2^6和P2^5,以控制位选。
而锁存器74HC573的输入端D0-D7分别接到单片机的P0^0-P0^7,锁存端与P2^7连接,以控制数据的输入。
2.5单片机控制部分
单片机控制部分采用STC89C52控制。
管脚接法如下图
其中,CON9为上拉电阻。
所用晶振为12MHz。
第三节系统的软件设计
3.1简述软件设计思路
用单片机控制A/D对输入的电压信号的读入与读出。
将从A/D读入到单片机的电压信号通过函数的转换,转换成相应的温度。
接着将温度的数值存入到一个变量,分解变量的十位数和各位数,再由P0口控制数码管动态显示。
3.2软件内容
#include<
reg52.h>
//52系列单片机头文件
intrins.h>
#defineucharunsignedchar
#defineuintunsignedint
sbitdula=P2^7;
//申明U3锁存器的锁存端
sbitled_a=P2^6;
//申明数码管a的gnd
sbitled_b=P2^5;
//申明数码管b的gnd
sbitadwr=P2^3;
sbitadrd=P2^4;
ucharcodetable[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
voiddelayms(uintxms)//延时函数
{
uinti,j;
for(i=xms;
i>
0;
i--)
for(j=110;
j>
j--);
}
voiddisplay(ucharshi,ucharge)//显示子函数
led_a=0;
led_b=1;
//选通数码管a,关闭数码管b
dula=1;
P0=table[shi];
//送段选数据
dula=0;
delayms(5);
//延时
led_a=1;
led_b=0;
//选通数码管b,关闭数码管a
P0=table[ge];
voidmain()
uchara,A1,A2,advalue,temperature;
//数码管显示清零
P0=0x00;
while
(1)
{
adwr=1;
//关闭A/D转换
_nop_();
//延时一个机械周期
adwr=0;
//启动A/D转换
for(a=20;
a>
a--)
{
display(A1,A2);
}
P0=0x00;
//读取P1口之前先给其写全0
adrd=1;
adrd=0;
//A/D读使能
advalue=P1;
//A/D数据读取赋给P1口
temperature=(uchar)(advalue/255.0*100.0);
A1=temperature/10;
//分出十位和个位
A2=temperature%10;
}
第四节系统测试方法
4.1测试仪器
万用表
4.2部分指标调试方法
·
调节滑动变阻器R2使R2加上R3的阻值为10KΩ
调节滑动变阻器R10使R10加上R8的阻值为50KΩ
调节滑动变阻器R11使R11加上R9的阻值为50KΩ
调节50KΩ的滑动变阻器R5,使运算放大器的反向输入端输入电压为2.73V
第五节误差分析
1、运算放大器做减法运算器用时,电阻阻值必须精确调节才能使输出结果和理论值更加接近。
2、7805输出电压为4.95V,使得通过函数运算后得到的温度与理想值存在一定的差距。
3、应该给稳压管加强散热,长时间使用时稳压管会长时间处于高温的状态。
4、由于运算放大器没有进行调零,所以温度采集电路的输出电压下限大概在1.39V,所以能显示的最小温度大约为28摄氏度。
由此决定了,本电路的温度测量范围在30℃以上。
5、需要在电路稳定后再调节减法运算器的正向输入端电压为2.73V。
参考文献
【1】郭天祥.51单片机C语言教程——入门、提高、开发、拓展全攻略-北京:
电子工业出版,2009.1ISBN978-7-121-07893-4
【2】康华光.电子技术基础模拟部分(第五版)-高等教育出版社
【3】吴友宇.模拟电子技术基础清华大学出版社
附录:
一、原器件清单:
元器件名称
元器件值或元器件个数
电阻
1K(2个),10K(5个),47K(2个)
滑动变阻器
1k(1个),5k(2个),50k(1个)
电解电容
10uF(1个)和1000uF(2个)
点触式开关
1个
瓷片电容
30pF(2个)、150pF(1个)、0.01uF(1个)
晶振
12MHz(1个)
稳压管
6V(1个)
运算放大器OP07
2个
温度传感器AD590
三端稳压器7805
A/D转换器ADC0804
单片机STC89C52
7段数码管(共阴极)
附表一:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 AD590 数字式 温度