智能仪器 温度测量..

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《智能仪器》实验报告

实验项目温度测量

实验时间

同组同学

班级11111

学号1111111

姓名11111

2014年4月

实验二温度测量

一、实验目的

了解常用的集成温度传感器(AD590)基本原理、性能;掌握测温方法以及数据采集和线性标度变换程序的编程方法。

二、实验仪器

智能调节仪、PT100、AD590、温度源、温度传感器模块,传感器实验箱(一);“SMP-201 8051模块”、“SMP-204 块块模块”、“SMP-101 8位A/D模块”、“SMP-401 块块块示模块”。三、实验原理

集成温度传感器AD590是把温敏器件、偏置电路、放大电路及线性化电路集成在同一芯片上的温度传感器。其特点是使用方便、外围电路简单、性能稳定可靠;不足的是测温范围较小、使用环境有一定的限制。AD590能直接给出正比于绝对温度的理想线性输出,在一定温度下,相当于一个恒流源,一般用于-50℃-+150℃之间温度测量。温敏晶体管的集电极电流恒定时,晶体管的基极-发射极电压与温度成线性关系。为克服温敏晶体管U b电压生产时的离散性、均采用了特殊的差分电路。本实验仪采用电流输出型集成温度传感器AD590,在一定温度下,相当于一个恒流源。因此不易受接触电阻、引线电阻、电压噪声的干扰,具有很好的线性特性。AD590的灵敏度(标定系数)为1 A/K,只需要一种+4V~+30V电源(本实验仪用+5V),即可实现温度到电流的线性变换,然后在终端使用一只取样电阻(本实验中为传感器调理电路单元中R2=100Ω)即可实现电流到电压的转换,使用十分方便。电流输出型比电压输出型的测量精度更高。

在实验一的基础上进行电压测量、标定、线性变换,最后显示出对应温度。

图2-1 温度传感器模块原理图

四、实验内容与步骤

1.参考“附录实验PT100温度控制实验”,将温度控制在500C,在另一个温度传感器插孔中插入集成温度传感器AD590。

2.将±15V直流稳压电源接至实验箱(一)上,温度传感器实验模块的输出Uo2接实验台

上直流电压表。

3.按图2-1接线,并将AD590引线的红色端接“温度传感器模块”的a1,蓝色端接“温度传感器模块”的b1,并从实验台上接+5V 电源到a1端。调节RW2大约在中间位置,用实验台上“直流电压表”的20V 档测量“温度传感器模块”的“Uo2”端,再调节电位器Rw1使直流电压表显示为零。

5.按照图将信号引到差动放大器的输入Ui ,记下模块输出Uo2的电压值。

6.升高温度源的温度每隔50C 记下Uo2的输出值。直到温度升至1200C 。并将实验结果填入表2-1。

7.按照实验1的1-5步骤搭建单片机AD 转换电路,将模块输出电压Uo2接入到“SMP-101 8位AD 块块模块”的CH0;

8.编写数据采集程序及标度变换程序,并进行调试,检验程序的测量结果是否与温度源给定的温度一致。(数据采集程序及硬件电路参考“实验一”的结果,线性标度变换公式参考教材中的“标度变换”一节)

五、实验报告

1.由记录的数据数据计算在此范围内整个测温系统的灵敏度,并画出标定出的拟合直线。(端基法)

表2-1 温度与输出电压关系

T Uo2V (℃())38

4552596673801.387 1.419 1.45 1.483 1.515 1.548 1.581

T (℃) 38

45

52

59

66

73

80

87

94

101

108

115

Uo2(V )

1.387 1.419 1.450 1.483 1.515 1.548 1.581 1.612 1.645 1.678 1.710 1.742

2.由表2-1记录的数据计算在此范围内集成温度传感器的非线性误差。

K=(1.742-1.387)/(115-38)=0.0046

所以y=0.0046*x+1.2122

V1=0

V2=0.0002

V3=0.0014

V4=0.0006

V5=0.0008

V6=0

V7=0.0080

V8=0.0004

V9=0.0016

V10=0.0012

V11=0.0010

V12=0

所以最大误差为:0.0016

非线性误差=0.0016/1.742*100%=0.09% 3.画出程序流程图。

开始

初始化AD转换器

结束

4.用c语言编制实验程序。

主程序:

#include // SFR declarations

#include

#include "Delay.h"

#include "AD774.h"

//-----------------------------------------------------------------------------

// 16-bit SFR Definitions for 'F02x

//-----------------------------------------------------------------------------

sfr16 DP = 0x82; // data pointer

sfr16 TMR3RL = 0x92; // Timer3 reload value

sfr16 TMR3 = 0x94; // Timer3 counter

sfr16 ADC0 = 0xbe; // ADC0 data

sfr16 ADC0GT = 0xc4; // ADC0 greater than window

sfr16 ADC0LT = 0xc6; // ADC0 less than window

sfr16 RCAP2 = 0xca; // Timer2 capture/reload

sfr16 T2 = 0xcc; // Timer2

sfr16 RCAP4 = 0xe4; / Timer4 capture/reload

sfr16 T4 = 0xf4; // Timer4

sfr16 DAC0 = 0xd2; // DAC0 data

sfr16 DAC1 = 0xd5; // DAC1 data

//-----------------------------------------------------------------------------

// Global CONSTANTS

//-----------------------------------------------------------------------------

#define BAUDRATE 115200 // Baud rate of UART in bps

#define SYSCLK 22118400//11059200 // SYSCLK frequency in Hz

相关文档
最新文档