APP下载

基于W77E58的多路数据采集系统的设计与实现

2012-09-19党世红

电子设计工程 2012年21期
关键词:数字滤波微控制器模拟量

党世红

(咸阳职业技术学院 陕西 咸阳 712000)

在现代工业生产、控制和科学研究领域中,对各种现场数据如温度、压力及振动等参数进行采集、传输和处理是必不可少的组成部分。将温度、压力、流量、位移等模拟信息采集转换成数字信息后,再由计算机进行存储、处理、显示或打印的过程就是数据采集,相应的系统称为数据采集系统[1]。高性能微控制器W77E58具有功耗低、体积小、功能强大等优点,非常适用于对现场数据进行实时采集和现场控制[2]。

1 采集系统的结构设计

数据采集系统主要由传感器、调理电路、A/D转换电路、微控制器、通信模块、计算机(PC机)等几大模块组成。如图1所示。外部世界、现场等的各种参量是模拟量,传感器的作用是把这些模拟量转化为电信号模拟量(可以是电压,也可以是电流、电脉冲),经过适当的调理电路再把这些电信号模拟量送给模拟数字转换器(A/D转换器),使这些模拟量转化为可以让微控制器识别处理的数字信号,最后经过通信模块,微控制器将采集到的信号传给PC机,PC机人机接口界面负责控制、存储和处理采集到的数据。

实际应用中,因传感器的输出信号多为弱信号,信号与采集系统的距离相对较长,为防止信号的严重衰减,采用电流信号传输;在信号接收端,通过I/V转换电路,再把信号复原成电压信号,经过放大、滤波等调理电路后,送到A/D转换器,结构框图如图2所示。

图1 数据采集系统结构框图Fig.1 Structure diagram of data acquisition

图2 模拟量信号采集结构框图Fig.2 Structure diagram of analog signal acquisition

2 系统硬件设计

2.1 I/V转换电路设计

为减小电阻本身的噪声和受环境的影响,采用40欧1%精密小电阻将4~20 mA电流信号转换为0.144~0.72 V的电压信号。如图3所示,电容C1用于滤除高频噪声。

2.2 采集电路设计

对于每一个采集对象,都要通过模数转换器转换为数字量,在输入信号数目很多时,需要使用多路模拟开关轮流将多个模拟量依次接入模数转换器进行转换[3]。在本设计中选用的多路模拟开关是CD4051[4],A/D转换器选用了美国MASIM公司的MAX 197芯片,MAX197采用逐行逼近工作方式,内部的输入跟踪/保持电路把模拟信号转换为12位数字量输出[5]。

图3 I/V转换电路Fig.3 I/V conversion circuit

图4是采集系统的一路模拟信号经过滤波电路、多路选择开关和A/D转换后进入微控制器的电路图。单片机W77E58的P0口与MAX197的D0~D7相连,既用于输入MAX197的初始化控制字,也用于读取转换结果数据。用W77E58单片机的P2.4作为MAX197的片选。选择MAX197为软件设置低功耗工作方式,所以置SHDN脚为高电平。采用内部基准电压,所以REFADJ和REF均接低电平。W77E58单片机的P2.6脚用做判读高、低位数据的选择线,直接与HBEN脚相连。MAX197的INT脚与W77E58的P2.5相连,当转换结束和准备读输出数据时,INT变低。在电路中,AGND和DGND应相互独立,各种电源与模拟地之间都用0.1 μF电容来消除电源的纹波。

图4 模拟量信号采集电路图Fig.4 Circuit diagram of analog signal acquisition

3 系统软件设计

模拟量采集程序的设计主要分为3个阶段。第1阶段为A/D转换驱动程序设计,第2阶段为模拟量数字滤波程序设计,第3阶段是A/D转换结果处理的程序设计。

3.1 A/D转换驱动程序设计

硬件电路中MAX197芯片用于采集模拟量,MAX197控制字格式如表1所示。

表1 MAX197控制字格式Tab.1 Control word format of MAX197

A2,A1,A0通过不同0,1组合选择8路模拟量中的某一路;RNG和BIP的0,1组合确定所采集模拟量的范围,最大为±15 V;ACQMOD决定MAX197采用内部采集模式还是外部采集模式;PD0和PD1组合决定选择正常工作模式还是低功耗工作模式。具体程序如下:

3.2 数字滤波

为保证数据采集结果的准确性,需对模拟量A/D转换后的结果进行数字滤波处理。在程序设计中采用了中位值平均滤波法。对每个模拟量连续采样n次,求出n次采样结果之和,去掉其中最大值xmax和最小值xmin,然后求剩下n-2个数平均值,以作为该模拟量的实际值[6]。

3.3 采集结果修正

模拟量的参考值是实际的运行参数,所以需要把采集到的数据经过一定的变换关系修正为实际值,然后再执行状态判断操作。

4 结束语

笔者设计的多路数据采集系统可实现对多路信号进行实时监测,可通过串口将数据传至计算机并显示,此系统在应用时配上不同的传感器及相应的处理电路,稍加改动,便可在许多领域得到广泛应用,因而具有较高的实用性。

[1]肖钟祥.数据采集原理[M].西安:西北工业出版社,2001.

[2]张盛福,王喜斌,张鹏.华邦51单片机原理及应用[M].北京:北京航空航天大学出版社,2005.

[3]Muhammad Ali Mazidi.8051微控制器和嵌入式系统[M].北京:机械工业出版社,2007.

[4]林焯华,蒋梁中,姚锡凡,等.一个单片机串行数据采集及传输模块的设计[J].微计算机信息,2006,22(29):229-232.

LIN Zhuo-hua,JIANG Liang-zhong,YAO Xi-fan,et al.A design for serial data acquisition and transmission module of single chip[J].Microcomputer Information,2006,22(29):229-232.

[5]Maxim Integrated Products.MAX197 Data sheet[EB/OL].2007.http://www.maxim-ic.com.cn.

[6]薛晨阳,谭秋林,马游春,等.红外传感器的信号提取和数据采集的设计[J].仪表技术与传感器,2007(2):45-46.

XUE Chen-yang,TAN Qiu-lin,MA You-chun.Design of signal obtainment and data acquisition in infrared sensors[J].Instrument Technique and Sensor,2007(2):45-46.

猜你喜欢

数字滤波微控制器模拟量
数字滤波在语音信号降噪中的应用
基于FPGA的多通道模拟量采集/输出PCI板卡的研制
物联网技术在微控制器实验教学中的应用
一种新的电力生产数据频率分析与数字滤波方法研究
关于600MW火电机组模拟量控制系统设计和研究
滤波器长度对滤波结果的影响研究
模拟量输入式合并单元测试仪的研制
运动干涉仪平台上单站无源定位算法研究
Atmel针对新一代物联网应用发布全新32位微控制器
最新STM32设计工具增加对混合信号微控制器的支持