首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

温度测量处理变送器设计

温度测量处理变送器设计

摘要:本文详细介绍了基于单片机AT89C52的温度测量系统,对系统中信号输入通道、信号处理、数据显示等从硬件和软件两方面进行了阐述,并做了相应的理论分折,系统可以实现多点温度巡回采集处理与变送的功能。

中图分类号:TP216TP212
一、概述
石灰炉烧制石灰时炉内各处的温度可能不一样,生产工艺要求得出炉内四点的平均温度,了解各点的温度值,对平均值及各测量点的温度进行报警处理;若某处的信号不正常(传感器损坏或断线)能及时报警并排除在数据处理之外。本系统可完成以上功能,检测处理石灰炉的温度,并以4-20mA形式变送远传温度平均值或最高一点的温度。该产品的工作示意图如下图1所示,在该石灰炉内有四个点分别放四个热电偶,这四个热电偶就是该系统的四路输入信号来源。利用该系统测出如图1所示的四点的温度(T1,T2,T3,T4)并把每一点的温度值送到面板显示。
注:T1、T2、T3、T4是石灰炉内四个检测点,
即是文中所提到的信号路数。

图一
二、系统硬件设计
1、系统结构框图及人机界面
系统的结构框图见图二。系统硬件部分主要由前端输入电路,A/D及D/A电路,人机界面电路,CPU及外围电路组成。系统达到的主要功能是充许四路信号输入,用户可以通过参数设定选择输入热电偶类型,平时显示温度平均值,若操作者需要可以按动面板上的按键查看任一路信号的温度。四路信号是独立的,有一路短路或断线故障,不影响其它几路信号的工作。仪表具有超限报警功能及热电偶断线提示功能。温度平均值或温度最高的一路信号的变送为4-20mA电流信号输出。系统具有掉电保护功能,当掉电时,设定数据可以保存。


功能原理图(图2)


图3、控制面板
系统设计有良好的人机界面,操作显示面扳见图3,在控制显示面板上有两排数码管和四个按键,进行系统工作的显示和参数的修改。系统工作方式分为两个状态分别为编程和运行。利用一号键K1(状态切换键)可以在两种状态间切换。在编程状态时,上一排数码管显示参数代号,下排数码管分别显示对应参数。在这种状态下,利用二号键K2(移位键)可以顺序变换不同的参数代号及参数。利用三号键K3(加键)和四号键K4(减键)可以对参数进行修改。
在运行状态时,上一排数码管显示各个信号回路顺序号(1~~5),下排数码管分别显示对应温度。其中1~4路分别显示四路回路号及其温度,5路显示四路中温度平均值。这五路自动循环显示,利用四号键K4(定位键)可以使显示内容停在当前回路上。在编程或运行状态下,无论何时按下K1,都可使状态变换到另一种状态的初始阶段。
电路设计中没有扩展总线及程序存储器及I/O口,CPU的四个并行口全作为普通I/O口使用,CPU及外围电路都是标准用法,在此重点介绍有设计特色的A/D及D/A电路和人机界面电路及电源电路。
2、数据采集电路与放大电路
数据采集部分电路如图4所示,限流电阻R1和稳压管TL431产生2.5V标准电压。系统共有7路模拟输入信号,4路热电偶信号输入(EXT1----EXT4),1路冷端补偿信号,一路基准信号,一路地信号(EXT5)。2.5V电压加在10K电阻和外接二极管串联支路上,构成热电偶的冷端补偿电路,它是利用二极管正向工作的电压-温度特性测量冷端温度,基准信号利用2.5V电压和分压电阻产生。因此采用了8选1多路模拟开关CD4051,由单片机的P2.0、P2.1、P2.2三个引脚高低电平控制模拟通道的选择。由于输入热电偶分度号由用户设定,不同分度号信号大小不一,故设计了由OP07和4051(U2)组成的程控放大器,输入信号经放大后进入A/D,经采集处理后得出各路信号值。程控放大是利用单片机对4051的控制,选择不同的通道,同时也就选择了不同的放大倍数。4051外接的电阻是:R25=20K,R26=47K,R27=2.4K,R28=3.9K,R29=1.9K,共有4个不同的放大倍数,分别为放大倍数1=(20+47+2.4+3.9+1.6)/(47+2.4+3.9+1.6)≈1.3倍、放大倍数2=(20+47+2.4+3.9+1.6)/(2.4+3.9+1.6)≈10倍、放大倍数3=(20+47+2.4+3.9+1.6)/(3.9+1.6)≈14倍、放大倍数4=(20+47+2.4+3.9+1.6)/1.6≈46倍。1.3倍的放大倍数主要用于冷端补偿二极管信号的采集,电路中四个22M上拉电阻完成热电偶断线捡测功能。




图4、数据采集电路
石灰炉内4点放四只热电偶,作为系统的四路mV信号输入端。热电偶信号被选通输入后进入程控放大电路,信号分度号不同则mV值的高低也不同,通过软件选择不同的放大倍数,使这些放大后的信号最大值接近A/D的最大充许值;以充分利用A/D资源,保证测量精度。设放大倍数为A,则从程控放大出来的信号即为AX。各种信号的放大倍数的确定和后面A/D器件的模拟输入有关,本电路的A/D选择7135(五位半),基准电压为0.5V,7135的模拟输入的范围为0~1V电压。例如B、S标准热电偶,放大倍数应选择46,K、E、标准热电偶放大倍数应选择14。冷补二极管信号为0.65V左右,采用1.3倍放大倍数,现以一路信号的转换计算为例说明,测量某路热电偶输入时依次采集外接热电偶输入毫伏值、冷端补偿二极管电压降、基准电压及模拟地。从4051的X2端输入V基是己知电压,并固化于程序中,D基、D零、Dx分别是基准、零点及输入热电偶信号的实时A/D采集值,通过下式可以完成零点满度的自校正,计算出VX值。由于V基、Vx及地三个信号经过同样的硬件输入通道,硬件的离散性误差及零点满度漂移对三者的影响相同,通过下面公式可以校正零点、放大倍数及A/D各环节的误差,在用一般器件的情况下可保证系统的测量精度。
D基-D零/Dx-D零=Vx/V基
由于热电偶mV温度间关系是非线性的,我们采用了折线法进行非线性校正,VX通过分段非线性数据处理,可以算出对应温度CX,加上通过测量冷端补偿二极管电压得出的冷端补偿温度C0,就得到该路的实际测量温度C,即C=CX+C0。
同时由于热电偶的原因,在测量端的电压值会被抵消了一部分。这种情况造成的误差影响较大。必须对它进行冷端补偿。因为二极管在温度变化时,其正向导通电压变化稳定,为-2mV/℃,因此我们采用二极管测冷端湿度进行补偿,具体做法如下:
第一步,我们冷端补偿输入端输入一标准电压0.7V得到一个AD采样值D0,然后我们再输入一标准电压0.6V再得到一个AD采样值D1。两者相减得到一个值ΔD,根据二极管的特性,每1℃电压变化2mV,我们输入的第1个标准信号和第2个标准信号相差为100mV,相当于二极管正向电压变化100mV,对应冷端温度变化50℃,就可以求出冷端温度每变化1℃时其对应AD值变化多少的系数K=ΔD/50,由于冷端温度变化范围小(0-50℃),相对精度要求不高,因此设计产品批量生产时把该系数直接固化于程序中。当把冷补二极管1N4148接入输入端后,据上面所述,可以根据该系数及冷端AD采集值变化量的大小推算出冷端温度变化的大小。
第二步:我们在仪表设置状态输入当前环境温度Ta,并及时测得二极管1N4148所在端电压经放大AD转换后的值Da,并将Ta、Da其存储到EEPROM里面,以后仪表处于工作状态时我们实时地测出二极管AD转换后的值Db,再把两者相减得ΔDab=Da-Db,ΔDab除以K(代表每一个1℃的AD采样值的大小)得到一个温度值差Y。然后Y加上设置环境温度初值Ta得到实际冷端温度C0=Y+Ta。这种冷端补偿有一定误差,当环境温度变化时,所测的实际冷端温度C0将会跟随变化,在一定时期内环境温度的变化不大,因此它引起的误差和热电偶相比十分的小,可以忽略。但当环境变化较大时,比如从冬天到夏天的变化,其变化为几十℃,如果冷补误差大于1度,我们可以重新输入基准Ta校正。
3、A/D电路
A/D电路主要由74LS157、ICL7135芯片组成,7135采用0.5V基准信号,模拟电压输入范围为0-1V。ICL7135采用动态扫描BCD码输出方式,即万、千、百、十、个各字位BCD码轮流出现在B8,B4,B2,B1端上出现,并在D5-D1各端同步出现字位选通脉冲。采集到的微弱信号经程控放大后,经过AD转换变成数字信号。使用了74LS157四2选1选择器,使"万"位数据输出和其它的三个标志信号(超量程、欠量程、极性输出)与BCD码数据输出的B8、B4、B2、B1共用C52的P0.0-P0.3四条I/O口线,分时传送是通过D5控制74LS157的选择端SEL实现。SEL输入低电平时选择1A-4A输出,输入高电平时选择1B-3B输出。因为"万"位数据只能输出0或1,是个半位。所以,正好和OR(过量程)、UR(欠量程)和POL(正负极性)三位构成四位数据输出,供单片机读取。与C52的硬件接口方式是查询方式,软件上利用对D5、D4、D3、D2、D1查询来实现"万"、"千"、"百"、"十"、"个"上的数据输出。
继承事业,薪火相传
返回列表