通常,在工业现场使用的接触式测温传感器有热电阻、热敏电阻、热电偶等。根据工业现场的应用需求,多路温度采集主要测量热电偶、热电阻以及温度变送器输出的电压、电流信号,信号经滤波、放大、AD转换后,将采集数据送入单片机进行分析处理,单片机执行相应控制操作,将采集结果存于外存储器中。
目录
温度是生产过程和科学试验中普遍且重要的物理参数。在工业生产中,为了高效生产,必须对生产过程中的主要参数,如温度、压力、流量、速度等进行有效控制。其中温度控制在生产过程中占有相当大的比例。准确地测量和有效地控制温度是优质、高产、低耗和安全生产的主要条件。[1]
通常,在工业现场使用的接触式测温传感器有热电阻、热敏电阻、热电偶等。根据工业现场的应用需求,多路温度采集主要测量热电偶、热电阻以及温度变送器输出的电压、电流信号,信号经滤波、放大、AD转换后,将采集数据送单片机进行分析处理,单片机执行相应控制操作,将采集结果存于外存储器中。[2]
图1 多路温度采集模块系统实现方案
多路温度信号采集模块系统实现方案如图1所示。图1中虚线框内为温度采集单元,主要由信号输入处理部件、滤波放大单元、A/D转换处理、光电隔离单元、热电偶冷端温度补偿单元和供电单元构成,可以完成对不同类型信号的采集,包括热电偶(T、E、K、B、S)、热电阻(Ptl00、Cu50、Cul00)输出的电压信号,温度变送器输出的电压(0~100mV、0~5V)、电流(0~20mA)信号。
每路输入信号经信号滤波单元后进行A/D转换,信号滤波单元主要完成低通滤波,以消除重叠在输入信号上的高频噪声。由于所测各种信号的动态范围不同,AD转换器采用了精度可达24位、具有片内PGA的Σ—△模数转换器CS5522,以实现对输入通道的增益可编程控制;同时,CS5522还包括自校准和系统校准功能,可消除器件本身或系统的增益和偏移误差,其串行通信方式也方便容易地与微处理器相连,使整个数据采集模块只需外接少量元器件,就可以直接处理传感器输出的微弱信号,从而大大简化了硬件电路设计,提高了系统测量精度。
介绍应用于电子设备热测量的基于CPLD和USB接口的多路温度采集系统。并对此系统的组成、工作原理以及系统中的关键电路说明。
图2 采集系统整体框图
整个系统由温度传感器(Pt100铂电阻)、温度变送器(XTRl05)、cPLD构成的显示与键盘控制和采集通道选择电路、采样保持及模数转换电路、光耦隔离电路(三片6N137和DC—DC变换器组成)、接口电路和计算机等部分组成。系统的整体框图如图2所示。[3]软件设计主要以两部分组成:
一是单片机程序(又称固件)采用模块化程序设计,主要由A/D转换的中断子程序和USB中断子程序,另外还有串口发送中断子程序、同CPLD同步子程序,数据处理子程序几个模块组成。模块化设计的优点是可靠性高、可读性好、升级简单。二是PC端的程序。Pc端的程序由驱动程序和主机应用程序构成。驱动程序设计采用WDM(WindowsDriveMode)。
WDM设备驱动程序提供了一个参考框架,大大降低了由Dl〕K书写驱动程序带来的难度。驱动程序通过安装文件(.INF文件)中IPD(产品识别号)和VID(厂商识别号)识别USB设备。主机应用程序的编写使用VC编译环境中的API函数实现来完成采集数据的后处理工作,包括数据显示、保存、打印等功能。为了提高效率,使用了多线程技术实现读写。应用程序通过GUID(注册表驱动识别号)查找驱动程序。驱动程序与应用程序和硬件之间通信都是IRP(I/O请求包)完成。[3]
主控制芯片采用可在线编程(ISP)的器件AT89552,和传统的C51单片机相比,551系列单片机支持在系统编程ISP,并内置看门狗定时器。单片机主要完成采集后的数据处理和对外围电路控制和通信功能。
根据测量精度的要求选用MAX194型、14位串行输出的自带采样保持功能A/D变换器。该变换器具有高速、高精度、低功耗的特点。[3]
采用VHDL语言在一片CPLD完成了以往需要单片机和大量外围器件才能完成数据动态显示扫描与键盘扫描和采集通道选择功能,相对于传统方法有以下优点:采用CPLD极大的简化了系统结构,减少了板卡体积,降低了系统的功耗和干扰,提高了系统的稳定性,也给调试维修带来了方便;通过EDA软件采用自顶向下的设计方法对系统进行设计缩短了开发周期,大大提高了设计效率。
图3 显示和键盘扫描电路的构成
采用按照电路的功能,系统内部可以分为三个部分:动态显示扫描川和键盘扫描模块和通道选择模块。动态显示扫描要求能完成8个LED显示器的动态扫描显示,而键盘扫描模块能把通过不同键盘在CPLD中形成的编码输入到MCU中,来实现通道号和采集间隔时间选择,进而来控制通道选择模块的动作。通道选择模块的设计比较简单,功能是通过控制继电器完成对64路模拟量的随机切换,是个简单组合逻辑电路设计。而动态显示扫描和键盘模块电路的设计可以采用模块化电路的方法,其整合电路的构成如图3所示。[3]图4 采集系统的接口设计示意图
为了应用方便适合不同场合的需要,采用R2S32串口和USB两种接口和PC机通信。两种接口可以独立地把采集到的数据送到计算机中,以便计算机可以对数据进行后处理。采集系统的接口设计示意图如图4所示。USB接口部分采用PDIUSBD12芯片完成MCU和PC机的通信。多路地址/数据总线ALE接单片机的ALE脚,这样使用MOVX指令可以与D12接口,对D12操作就象对RAM操作一样,此时忽略A0(命令口和数据口地址线)的输人。因为没有使用DMA转输方式,所以没有用到DMACK_N、EOT_N和DMREQ_N的DMA引脚。
INT_N是USB中断请求脚,发出中断请求,进人单片机的中断处理程序;GL_N是GOODLINK指示灯,在调试过程中非常有用,在通信时会不停闪烁。如果一直亮或者一直暗,表示USB接口有问题,如果D12挂起,则LED关闭。[3]
温度—电流变送器选用XTR105,它可对铂电阻中的温度二次项进行线性补偿,提高整个系统的线性度和精度。应用电路中,XTR105把温度变化量变为4~20mA的电流后,通过25on精密电阻再转换为1~5V的电压,最后连接A/D转换器的模拟电压输人端。这里精密电阻采用0.25W的,是因为考虑到减小电流20rnA时电阻过热对电路的影响。XTR105的连接方式有两线和三线制两种,本系统采用两线制。信号采集模拟电路和数字处理电路之间采用光偶隔离芯片6N137隔离,以减小数字电路纹波对模拟电路的干扰。[3]
温度在暖通、制冷专业中是一个重要的热工参数,在许多的教学实验中都会要求对温度进行测量、记录。为了适应教学、演示的需要,现设计一种多路温度采集仪器,预期实现功能为可同时采集、显示、记录多点(8~16个)温度。实验中采用此仪器,记录温度的同步性、实时性将会比人工记录有明显的改善。
图5 温度采集仪器构成示意图
仪器由硬件及软件两部分组成,其中硬件部分承担采集、预处理、传送数据至PC的功能,软件部分负责对数据计算、实时显示、记录的功能。系统组成如图5所示。系统的测温元件为电阻式温度传感器,其工作特性为随着温度的变化,传感器的电阻值也有较大的变化。因此在温度测量时,只要测得了传感器的电阻值,也就得到了测点的温度值。系统既由这一特性搭建起工作电路,在电路中,由AD转换芯片将传感器的电阻值转换成PC可识别的AD转换数值,然后传给软件部分进行处理。
数据记录工作由软件完成。在实验中,系统可同时采集8个测点上的传感器数据,并能在程序界面上实时显示、记录采集到的AD转换数据。[4]