新闻中心

EEPW首页 > 测试测量 > 设计应用 > 基于水温压力检测的数据采集系统

基于水温压力检测的数据采集系统

作者:白申义,魏金成,牟 涛,廖添泉时间:2008-11-05来源:现代电子技术收藏

1 引 言

本文引用地址:http://www.eepw.com.cn/article/89218.htm

  在石油、化工、冶金、电力、纺织、轻工、水利等工业及科研领域中,都必须进行相关的压力检测和温度的测试。该系统主要用于油田油井,气井,注水井。其是油田测试井下压力与温度变化情况必不可少的。随着科学技术的发展与普及,数字设备正越来越多地取代模拟设备,在生产过程控制和科学研究等广泛领域,计算机控制技术正发挥着越来越重要的作用,然而外界的大部分信息是以连续变化的物理量形式出现的,例如温度,压力,速度等。要将这些信息送人计算机进行处理,就必须先将这些连续的物理量离散化,并进行量化编码,从而变成数字量,这个过程即是。本单片机系统的工作原理是通过一个压力、温度传感器接受外部的压力信号、温度信号。这两个信号送A/D转换器,经过信号的放大、调制、滤波。最终转化为计算机可处理和运算的数字信号。单片机既可以直接与计算机进行通信,也可以暂时把记录数据存储到系统的存储器内,然后通过RS 232串行通信口把数据回放到计算机以供使用者对其进行处理。整个系统中单片机系统的硬件和软件设计是主要的设计任务。

2 系统硬件设计

  硬件电路主要由压力传感器,温度传感器,A/D转换芯片、单片机、存储器、通信接口组成。其中主单片机是系统的核心部件,主单片机控制系统的、数据存取、时间参数设置与主机通信等。时钟信号也是由单片机产生,定时对主单片机产生复位信号,使主单片机完成一次数据采集,然后又进入休眠状态。当主单片机进入休眠状态后,除定时器还在继续工作外,系统的其他部分进入掉电状态。掉电状态由单片机控制,定时器的工作参数也是由主单片机进行设置。

  其中单片机AT89C2051是美国Atmel公司生产的一种低电压,高性能CMOS 8位单片机,片内含2 kB的可反复擦写的只读FLASH程序存储器和128 B的随机存取数据存储器RAM,该器件采用Atmel公司的高密度、非易失性存储技术生产,兼容标准MCS 51指令系统,片内置通用8位中央处理器和2 kB FLASH存储单元,AT89C2051单片机是一个功能强大的单片机,它有20个引脚,15个双向输入/输出(I/O)端口,其中P1是一个完整的8位双向I/O口,2个外中断口,2个16位可编程定时计数器,2个全双向串行通信口,一个模拟比较放大器。同时AT89C2051的时钟频率可以为零,即具备可用软件设置的睡眠省电功能,系统的唤醒方式有RAM,定时/计数器,串行口和外中断口,系统唤醒后即进入继续工作状态。省电模式中,片内RAM将被冻结,时钟停止振荡,所有功能停止工作,直至系统被硬件复位方可继续运行。对于其他元件的选择,电路中所用元件都选用体积小,功耗低,耐高温、稳定性好的器件。这些器件为数据采集系统和供电系统的长时间工作提供了一种有效的办法。系统原理图如图1所示,压力传感器使用美国Motorola公司生产的MPX2100半导体压力传感器。它可以把压力转换成毫伏级的差模电压信号,该压力传感器具有良好的线性度,它的输出电压与所加压力成精确的正比例关系。有利于提高测试压力的精度,另外,MPX2100所具有的温度补偿特性克服半导体压力敏感器件存在的温度漂移问题。温度测量采用二极管IN4148作为传感器。A/D转换接口采用能达到高精度要求的A/D转换芯片A/D7705。A/D7705与单片机通信原理图如图2所示,存储器采用的是256 kb串行电可擦除的可编程只读存储器CAT24C256:256 kb串行CMOS E2PROM(32768x8b),8引脚双排直插式封装,具有结构紧凑、存储容量大等特点,特别适用于本数据采集系统,内部可以组成32 kB×8存储单元,2线串行接口,双向数据传送协议,硬件写保护引脚和软件数据保护功能,有64 B页写人缓冲器,支持标准100 kHz和快速400 kHz I2C协议,工作电压1.8~5.5 V,对全部存储器进行硬件写保护,在I2C总线输入端(SCL和SDA)含有施密特触发器和噪音抑制滤波器,采用低功耗CMOS工艺,可编程/擦除100万次,数据保存期100年,ROHS兼容的Green和Gold的8脚PDIP,SOIC,TSSOP和TDFN封装。

 

3 系统软件设计

  软件设计部分分为计算机软件和仪器下位机软件,其中计算机软件需要在PC机中运行,而仪器下位机软件则是存放在仪器电路板上的CPU中。这2部分软件的流程图如图3所示。

  温度压力采集是系统的主要部分,它工作情况的好坏将直接影响到整个系统能否正常运行。陔过程主要由单片机控制其启动工作。转换速率与A/D转换芯片有关。采样间隔可以由人工通过软件设定。在本系统中,单片机和存储器都选用带串行口的芯片,所以系统采用I2C串行总线技术进行数据传送。I2C总线上传输的数据信号是广义的,既包括地址信号,又包括真正的数据信号。I2C总线数据传输时必须遵守规定的数据格式。按照总线规定,起始信号表明1次数据传送的开始,其后为寻址字节,寻址字节由高7位地址和最低1位方向位组成,高7位地址是被寻址的从机地址,方向位是表示主机和从机之间的数据传送方向,方向位为0表示主机发送数据写,为1表示读。在寻址字节后是将要传送的数据字节与应答位,在数据传送完成后主机必须发送终止信号。但是,如果主机希望继续占用总线进行新的数据传送,则可以不产生终止信号,马上再次发出起始信号对另一从机进行寻址。温度压力数据采集流程图如图4所示。

 

 

4 单片机与上位机通信设计

  本系统与上位机通信的实现是利用PC机自带的RS 232接口与AT89C2051的RXD和TXD实现。在最简单的RS 232直接通信中,只要发送和接收双方同时准备好,仅用信号发送端TXD,信号接收端RXD,地线GND3根线即可进行通信。由于RS 232的电平是:-3~-15 V(逻辑1),3~15 V(逻辑0);而单片机串口信号电平为TTL电平,逻辑1大于3.6 V,逻辑0小于0.3 V。因此,PC机与单片机之间通过RS 232通信必须进行电平转换。MAX232可以完成这个功能。它使用+5 V的工作电源,配接5个0.1μF的电容。转换完毕的串口TXD、RXD的信号直接和AT89C2051的串行口连接。单片机与上位机通信连接图如图5所示。

 
 

  波特率的确定:

  模式1和模式3的移位时钟脉冲由定时器T1的溢出率决定,故波特率由定时器T1的溢出率与SMOD共同确定,即:模式1和模式3的波特率=2SMOD/32*T1的溢出率,当T1作波特率发生器使用时,最典型的用法是使T1工作在模式2定时方式。此时,定时器T1工作在模式2时的初值为:

  X=256-FOSC(SMOD+1)/(384*波特率)

  本系统采用的波特率是1 200 b/s,使用的晶振频率为3.686 3 MHz,所以初值X=248。

  RS 232通信程序:

 

5 硬件调试

  硬件设计完后,对硬件各部分按设计要求进行调试,然后对单片机进行固化,即输入程序。在本系统中无论传感器还是电路中都存在不同程度的温漂,如果不进行补偿,测量结果的误差就会很大。要获得相当精确的压力温度数据资料,就必须进行温漂校正。因此在对仪器电路进行必要调整的同时还需要用软件的方法进行温漂校正。

  经过校正后采集到的数据就很容易达到系统所要求的精度,若还有误差比较大的压力点,则可以通过手动调整,调整的方法是利用插值法或者最小二乘法进行计算,再与标定系数进行比较,根据比较结果调整原来的标定系数。调完后再把新的标定文件写入仪器,再在PC机上回放数据看结果。若结果还不行则继续调整,直到达到要求为止。

6 结 语

  本系统以AT89C2051单片机为核心,集成电路全部采用CMOS器件。与传统的8031单片机数据采集器相比,AT89C2051单片机数据采集器硬件结构简单,价格低廉。由于采用16位的A/D7705,精度高,能够满足测量要求。特别是该数据采集器配有串行通信接口,与微机相联后能够极大地提高测试系统的数据处理能力,容易实现误差的计算与补偿、校准测量仪器的非线性等。由于在测试压力和温度过程中,对测试数据准确度要求很高,而这种单片机控制的数据采集系统克服了精度低、滞差大、走时短等缺点,并且功耗低、性能可靠,可以长时间连续工作,有着非常广的应用空间。

  数据采集系统是计算机与外部世界联系的桥梁。数据采集技术是以传感器技术、信号检测与处理、电子学、计算机技术等方面技术为基础而形成的一个综合应用技术学科,已广泛应用于国民经济和国防建设的各个领域,并且随着科学技术的发展,尤其是计算机技术的发展与普及,数据采集技术将会有着更广阔的发展前景。



关键词: 数据采集

评论


相关推荐

技术专区

关闭