微波EDA网,见证研发工程师的成长!
首页 > 测试测量 > 测试测量技术文库 > 数据采集系统设计

数据采集系统设计

时间:04-23 来源:互联网 点击:

摘要:设计一种基于STM32和CPLD的数据采集系统,实现现场数据的采集、传输、显示和存储。数据采集过程由CPLD控制,采用Verilog HDL语言设计输入通道选通和A/D采集控制程序,进行数据的滤波、放大、转换,实现多通道数据的采集;在STM32中实现数据处理、传输,并在PC机中开发上层数据管理软件,实现数据的显示、存储。系统可实现多通道数据采集实时显示的要求,电路设计方法简单、可靠性高,能满足实际应用的要求。
关键词:STM32;CPLD;实时数据;数据管理

0 引言
随着自动控制和计算机技术的成熟和发展,以及它们和传统工业的结合,加工设备的自动化程度有了大幅度的提高,各种控制设备与控制技术得到了广泛应用,大大提高了加工制造的效率,当然这种高效的生产对检测量的精确性和实时性也提出了更高的要求,而依靠传统的数据采集方法(即由操作工人凭借简易测量工具进行测量)已无法满足这种要求。
目前,生产设备的参数采集手段主要有便携式检测仪和在线检测系统,采用便携式仪器需要花费大量的人力和时间,采集到的数据不能实时反映设备加工的状态,具有一定局限性;一般的在线检测系统,检测数据相对单一,不能满足多成分分析的需要;对于一些大型的在线检测系统,虽然能满足实时检测和精度要求,但系统体积庞大、投资多、难以推广使用,并且国内很多在线检测系统,对检测到的数据缺乏综合利用和管理,不能很好地为工艺和装置的优化节能及节能减耗改造服务。因此开发出具有实时数据采集、存储、传输等功能的在线数据采集系统是十分必要的。

1 系统的整体方案与工作原理
数据采集系统是基于CPLD和STM32的弱信号采集电路,可用于各种弱信号检测的应用研究中,整个系统由信号滤波、信号放大、数据采样处理和主计算机传输接口等组成。信号滤波防止信号产生“混叠现象”;信号放大对输入信号进行调理,使信号在A/D转换能够转换的电压范围内,以满足采样的要求;数据采样处理完成模拟信号的采样保持和数字化;与主计算机的数据接口,将数据上传给计算机,满足信号检测的实时性,进行数据的存储、显示等。数据采集电路板硬件功能模块构成如图1所示。

2 系统硬件结构
整个系统由信号预处理、信号采集和数据传输三大模块组成,其中信号预处理进行信号滤波、信号放大,预处理模块由MC1558,MC1556等组成;信号采集进行信号选通、A/D转换;信号采集模块由AD508、A/D转换芯片、CPLD组成;数据传输进行数据的软件滤波、通过通信口与上位机进行通信,数据传输由STM32芯片、信号输出接口模块组成。
2.1 信号预处理电路
由于待采集电压信号输入动态范围较宽,且极性各异,采用输入电压范围可调的信号预处理电路。信号预处理电路如图2所示,信号放大倍数为R1×R2/(100×100)。

2.2 信号采集模块
CPLD是在PAL、GAL等逻辑器件的基础上发展起来的,同以往的GAL、PAL等相比,CPLD的规模比较大,适合于时序、组合等逻辑电路的应用场合。采用Altera公司的EPM7128SQI100作为数据采集的控制芯片,负责信号采样、A/D转换、数据输入控制等。EPM7128SQI100具有128个宏单元,84个用户I/O管脚,工作电压为5.0 V,具有2 500个可用门和ISP,管脚间延迟为6.0 ns,计数器速度可高达125 MHz,可以很好地满足系统的需要。信号采集电路如图3所示。

ADG508是一款8通道CMOS模拟多路选择器,具有高速转换速度和低内阻特性,通道切换具有防短路功能。在CPLD控制下,它可对采集信号进行有序通道切换。A/D转换芯片选用AD977,AD977是ADI(Analog Devices)公司推出的一款高速16位A/D转换器,输入电压范围为-10~+10 V,单极5 V电压供电,采样频率可达100kHz。数据采样系统最大采样速率可达50kHz,信号分辨率可达0.3mV。通过采用多路转换开关ADG508与16位A/D配合使用,降低了成本。
2.3 数据传输模块
STM32是数据通信芯片,主要负责数据处理、传输控制、参数设置等。采用STM32F103xB系列ARM芯片,该系列芯片是意法半导体基于Con tex-M3内核的32位微处理器,可以满足高性能、低功耗和低成本特性的嵌入式应用。芯片具备72 MHz时钟频率,拥有丰富的外设装置,包括128 KB嵌入式闪存、20 KB的SRAM、两个ADC接口、三个UART、支持USB、CAN和七个DMA通道等丰富的外围模块,以其高速的指令执行速度、方便的JTAG调试方式和低功耗等特性为数据采集与处理的设计提供了一个较为完善的平台。数据传输电路如图4所示。

STM32F103VBT6的所有I/O端口兼容CMOS和TTL,在5V引脚上的输入电压最小值为-0.3

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top