数据采集系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据采集系统数据采集系统的构成
在任何计算机测控系统中,都是从尽量快速,尽量准确,尽量完整的获得数字形式的数据开始的。因此,数据采集系统作为沟通模拟域与数字域的桥梁起着非常重要的作用。
随着计算机技术及大规模集成电路的发展,特别是微处理器及高速A/D转换器的出现,数据采集系统结构发生了重大变革。原来由小规模集成的数字逻辑电路及硬件程序控制器组成的采集系统被微处理器控制的采集系统所代替。因为由微处理器去完成程序控制,数据处理及大部分逻辑操作,使系统的灵活性和可靠性大大的提高,系统的硬件成本和系统的重建费用大大的降低。
数据采集系统一般由信号调理电路,采样保持电路,A/D转换芯片,微处理器组成。结构框图如图1所示。
图1 数据采集系统结构框图
其中信号调理电路,它是传感器与A/D之间的桥梁,也是测控系统中重要组成部分。信号调理的主要功能是:
(1)目前标准化工业仪表通常采用0~10Ma,4~20mA信号,为了和A/D的输入形式相适应,必须经I/V变换成电压信号。
(2)某些测量信号可能是非电压量,如热电阻等,这些非电压量信号必须变为电压信号,还有些信号是弱电压信号,如热电偶信号,必须放大,滤波,这些处理包括信号形式的变换,量程调整,环境补偿,线性化等。
(3)某些恶劣条件下,共模电压干扰很强,如共模电平高达220V,不采用隔离的办法无法完成数据采集的任务,因此,必须根据现场环境,考虑共模干扰的抑制,甚至采用隔离措施,包括地线隔离,路间隔离等等。
综上所述,非电量的转换,信号形式的变换,放大,滤波,共模抑制及隔离等等,都是信号调理的主要功能。
信号调理电路包括电桥,放大,滤波,隔离等电路。根据不同的调理对象,采用不同的电路。电桥电路的典型应用之一就是热电阻测温。用热电阻测温时,工业设备距离计算机较远,引线将很长,这就容易引进干扰,并在热电阻的电桥中产生长引线误差。解决的办法有:采用热电阻温度变送器:智能传感器加通讯方式连接:采用三线制连接方法。
信号放大电路通常由运放承担,运放的选择主要考虑精度要求(失调及失调温漂),速度要求(带宽、上升率),幅度要求(工作电压范围及增益)及共模抑制要求。常用于前置放大器的有uA741,LF347(低精度),OP-07(中精度),ICL7650(高精度)等。
滤波和限幅电路通常采用二极管,稳压管,电容等器件。用二极管和稳压管的限幅方法会产生一定的非线性且灵敏度下降,这可以通过后级增益调整和非线性校正补偿。此外,由于限幅值比最大值输入值高,当使用多路开关时,某一路超限时可能影响其他路,需要选用优质模拟开关如AD7501。
共模电压的存在对模拟信号的处理有影响。高的共模电压会击穿器件,即使没有损坏器件,也会影响测量的精度。隔离是克服共模干扰影响的有效措施。常用的隔离方法有:光电隔离,采用隔离放大器等。
系统的原理及其组成
在工业生产和科学技术研究的各行业中,常需要对各种信号进行采集,如液位、温度、压力、频率等。但传统的采集方式是在PC机或工控机内安装数据采集卡,采用这种方式不仅安装麻烦、易受机箱内环境的干扰,而且由于受计算机插槽数量和地址、中断资源的限制,不可能挂接很多设备。而通用串行总线的出现,很好地解决了上述这些冲突,很容易就能够实现低成本、高可靠性、多点的外置式数据采集系统,这不仅能提高系统的数据传输速度,还能增强系统的灵活性,同时有利于系统的维护。
本USB的数据采集系统主要利用了A/D转换技术、温度控制技术、微处理器和USB技术,是伴随着USB技术的迅速发展与新的数据采集技术的发展而发展起来的。采集到的数据通过主机接口(USB口)发送到PC机并实时显示出来,其波形保真性能与A/D转换器的转换速率、分辨率与精度密切相关。A/D转换速率越高,复现的波形的分辨率也就越高:A/D转换器位数越多,精度越高,波形保真性越高。本系统总体结构图如图2所示。其中温度控制技术、USB技术和数据采集波形的实现由第三方设计完成,这里不在介绍。
图2 USB数据采集系统总体结构图
基于USB的数据采集系统的数据采集模块主要是由A/D转换器、微处理器、电压跟随器等组成。数据采集系统的结构框图如图3所示:
图3 数据采集系统结构图
从以上两个结构图中可知,11路模拟输入信号通过电压跟随器滤波后,输出到A/D转换器,微控制器把经过A/D转换器转换后的数字信号通过USB控制芯片输出给计算机,同时可以在计算机上实现数据的显示;而USB主机及显示部分则通过输出接口在PC机上显示,采用软件来模拟显示输入信号的波形。同时可以控制A/D转换器的启停、数据存取器的存取、USB外设芯片的工作、显
示图形的放大和缩小等。
原理图
原理图(见图4)前部分为数据采集模块,电压跟随器为TLC2543提供稳定的模拟输入电压。后半部分为数据通信模块。
数据采集模块
图4USB数据采集系统原理图
USB数据采集系统的电源使用外接12V电源供电,而芯片TLC2543所需的5V基准电压源则通过LM336稳压管和滑动变阻器将12V电源转换到5V。
制作原理图步骤:
(1)创建一个新的PCB项目
(2)创建一个新的原理图图纸
(3)放置器件
(4)连接电路
程序
/*
//******************************************************************** USB--DATACOMMUNICATION
// File Name: mainloop.C
// Revision: 1.1(2006-05-20)
// Author: Wang XinJian
// Note:
//**************************************************************** */
#include
#include
#include
#include "INTERRUPT_Server.H"
#include "REQUEST_PROCESS.H"
#include "AD_Convert.H"
#include "TEMP_Gather.H"
#include "D12_Interface.H"
/*
//**************************************************************** *********
// Public static data
//**************************************************************** *********
*/
extern EPPFLAGS bEPPflags;
extern unsigned char idataGenEpBuf[];
extern unsigned char idataEpBuf[];
extern unsigned int data d12_addr;
unsigned char xdataADCBuf[36]={0,0,0,0,0,0};
unsigned char xdatachannelid;
unsignedintidataTEMPBufLow = 0;
unsignedintidataTEMPBufHig = 0;
extern unsigned int data D12_DATA; //D12_DATA输出的是数据extern unsigned int data D12_COMMAND; //D12_COMMAND输出的是命令
unsigned char m = 0x00;//D12中断服务
usb_isr() interrupt 0 //0,外部中断;1,定时器0溢出;2,外部中断1;
//3,定时器1溢出;4,串口中断;5,定时器2溢出{
DISABLE; //EA为内外存储器选择控制端
fn_usb_isr(); //调用D12中断服务子程序