APP下载

具有统一时间标志的多路数据采集系统设计

2016-06-27张丽红郭艳艳

测试技术学报 2016年3期
关键词:数据采集

卫 霞, 张丽红, 郭艳艳

(山西大学 物理电子工程学院, 山西 太原 030006)

具有统一时间标志的多路数据采集系统设计

卫霞, 张丽红, 郭艳艳

(山西大学 物理电子工程学院, 山西 太原 030006)

摘要:在多路模拟量与数字量采集系统中, 因数字量信号发送时间的随机性, 无法得到周期性的数字量接收时间信息. 本文提出了一种在同一时间坐标系下测试分析模拟量和数字量数据的设计方案, 将ADC采样时钟作为同步时钟信号, 在串口接收数据的空闲时间段内, 利用FPGA将数字量数据与同步时钟信息进行混合编帧, 使采集系统有了在同一时间域下的完整数据, 并使用Quartus Ⅱ软件进行了仿真与分析. 经实践应用, 验证了该方法的可行性.

关键词:数据采集; 统一时间标志; 混合编帧; FPGA

目前, 数据采集系统更多地要求采集不同设备的各种信号, 包括模拟信号的采集和数字信号的接收. 在面对采集不同种类信号时, 通常采用两种方法: 一种是对模拟量和数字量数据独立编帧分别存储[1]; 另一种是对模拟量和数字量进行数据混合编帧存储, 即对不同种类的信号加上不同的帧标志来区别[1-4]. 由于数字量信号发送的随机性, 这两种方法都无法确定接收到的数字信号在整个采集过程中的确定时间, 导致出现了模拟信号与数字信号在同一采集时间域中的时间不能统一的问题.

为了便于事后对数据进行分析处理, 能够在同一时间坐标系下准确反映模拟量数据和数字量数据的时序关系, 本文提出将数字量数据与时间标志信息进行混合编帧的方法.

1系统总体设计

以8路模拟信号的采集和1路数字信号的接收为例, 实现数字量数据与时间标志信息进行混合编帧的系统原理如图 1 所示. 整个系统包含3个部分: 信号采集接收, 数据编码处理和通讯传输.

图 1 系统原理框图Fig.1 System principleblock diagram

信号采集接收电路用于完成模拟信号的调理和数字量信号的接收. 模拟信号调理模块采用LINENR公司的LTC2051运算放大器搭建模拟信号调理跟随电路, 调理后的电压信号在AD转换的量程范围内. 通过ADG608多路模拟开关实现多路模拟信号的通道切换;AD转换器选用BB公司的ADS7881完成多路模拟信号的模数转换. 对于数字量信号的接收, 选用MAMIM公司的MAX3490芯片, 该接口芯片将RS422标准的差分信号转换成FPGA模块可以进行处理的单端3.3V电压信号, 由FPGA模块对数字量进行接收处理.

数据编码处理模块选用FPGA芯片来实现和完成, 通过VHDL语言编写模块化的程序来实现多路模拟开关MUX的切换、ADC的时序控制、 数字信号的接收、 同步时间标志的插入以及编码数据的缓存.FPGA芯片选用ALTERA公司cyclone系列EP1C6T144I7, 其供电电压为3.3V, 具有内部可编程逻辑单元多、 运行速度快、 功耗低、 输出时序稳定等特点[5].

考虑到系统的可扩展性和功能多样性, 通讯传输模块没有选用专用的SPI通讯接口芯片来实现数据通讯, 而是选用了SILAB公司C8051F340型号的MCU. 该器件内部集成了多种形式的通讯外设接口, 通过编程实现对外设接口的操作, 具有操作灵活, 扩展性强的特点.

2系统软件设计

本系统软件包括数据编码和数据传输两部分, 其中数据编码是整个系统的核心.

2.1数据编码程序设计

数据编码程序主要用于实现对多路模拟开关的切换控制、ADC的转换控制、 数字量数据的接收、 同步时间标志的插入、 数据的写入缓存控制, 最终形成一帧数据流. 程序设计了独立的ADC控制模块、 数字量接收模块和时间标志插入模块.

ADC控制模块主要功能是依据ADS7881的控制时序图[6], 如图 2 所示, 在ADS7881的引脚发出相应的时序控制信号, 实现ADC启动转换和数据读取, 并完成模拟信号的通道切换, 转换数据的编码和数据发送, 同时将ADC的采样时钟作为同步时钟信号发送给时间标志插入模块. 整个控制过程由状态机实现, 状态机如图 3 所示.

数字量接收模块主要是完成数字量数据的检测和接收, 在复位状态无效的情况下, 通过检测起始位进行异步接收. 其状态机如图 4 所示.

图 2 ADS7881控制时序图Fig.2 ADS7881 control sequence chart

图 3 ADC控制模块程序状态机Fig.3 The ADC control module program state machine

图 4 数字量接收模块状态机Fig.4 Digital receiver module state machine

图 5 数字量编码帧结构Fig.5 Digital coding frame structure

图 6 时间标志插入模块的状态机Fig.6 Time tag insertion module state machine

数字量编码是将数字量数据和模拟量的同步时间信息按照一定的协议进行混合编码, 那么在何时插入同步时间信息就成为了关键. 采用的方法是通过时间标志插入模块, 一方面 记录ADC控制模块发送过来的同步时钟信号,另一方面去检测数字量接收模块是否有数据在接收, 当检测到数字量接收模块在设定时间内没有接收到数据时, 读取记录的当前同步时钟值, 按照数据帧编码结构将其写入到数字量缓存FIFO中, 并继续检测串口是否再次收到数据, 如果没有检测到数据, 就不再插入时间标志, 即时间标志只插入一次; 如果检测到数据, 则在数据接收完之后一定时间插入同步时间标志. 数字量编码帧结构如图 5 所示. 这一控制过程由状态机实现, 如图 6 所示.

2.2数据传输软件设计

采集数据通过MCU内部的SPI通讯接口进行传输,MCU控制通过SPI发送数据的软件流程如图 7 所示.

从图 7 中可以看出, 在MCU检测到FPGA内部的FIFO缓存输出半满信号HF为低电平时, 通过操作I/O端口在电平下降沿对FIFO的数据进行读取, 再控制SPI控制寄存器将数据通过SPI接口发送给接收设备.

图 7 通讯SPI发送数据流程图Fig.7 Communication SPI sending data flow chart

3仿真结果与分析

3.1ADC控制模块仿真分析

利用QuartusⅡ软件对ADC控制模块进行程序功能仿真, 仿真结果如图 8 所示. 从图 8 中可以看出, 按照图2的ADC控制时序, 数据转换完毕后, 在AD数据读取信号ad_rd为低电平期间进行转换数据的读取, 并将数据按照规定好的数据帧格式进行编码; 同时将同步时钟信号sys_time_clk输出到时间标志插入模块.

图 8 ADC控制模块仿真结果图Fig.8 ADC control module simulation results

设计中采用的同步时钟是由AD采集时钟2分频后得到的,AD采集时钟的分频系数与插入的时间信息精度有关, 分频系数越大, 时间精度越低.

3.2数字量接收模块和时间标志插入模块仿真结果分析

数字量接收模块和时间标志插入模块的程序仿真结果分别如图 9 和图 10 所示. 从两个图中可以看出, 串行接口有数据接收时, 状态端串口忙信号t_busy为高电平, 数据接收写入(串口写信号uart_wr为低电平)完成后, 串口忙信号t_busy变为低电平, 当时间标志插入模块检测到t_busy为低电平并在低电平持续时间达到设定时间11μs时, 将同步时间标志帧写入到缓存FIFO中. 写入同步时间的控制信号为time_wr,在时间标志帧写入缓存时,time_wr信号会输出6个低电平, 完成同步时间数据的写入.

由于串口发送数据的周期和不发送数据的空闲时间是不固定的, 为使时间标志插入模块能适用于不同发送周期的情况, 可以通过测试空闲时间参数来灵活设置时间标志帧的写入时刻.

从仿真结果分析可见, 由于帧结构固定, 每路时间标志信息在帧中的位置也是固定的, 所以只要监测到帧标志为EB90, 就可以提取出数字量的接收时间信息, 从而达到模拟量和数字量数据的时间统一.

图 9 数字量接收模块仿真结果图Fig.9 Digital receiver module simulation results

图 10 时间标志插入模块仿真结果图Fig.10 Time stamp insertion module simulation results

4结论

本设计有效地解决了采集系统中模拟量和数字量两种不同信号采集接收时的时间同步问题, 使采集系统有了在同一时间域下的完整数据, 为试验数据的时间分析提供了方便. 该设计能够提供数字量数据接收更准确的时间信息, 另外AD采集时钟的分频系数与插入时间标志的设定时间可以灵活修改, 使设计具有一定的通用性. 目前, 本设计已成功地应用到相关项目中, 时间精度也能满足实际要求.

参考文献:

[1]郭铮, 刘文怡, 冯妮. 基于FPGA多通道高速数据采集存储器设计[J]. 电视技术, 2012, 36(17): 16-19.

GuoZheng,LiuWenyi,FengNi.Designofmulti-channelhigh-speeddataacquisitionandstoragememorybasedonFPGA[J].VideoEngineering, 2012, 36(17): 16-19. (inChinese)

[2]姚宗, 文丰, 张文栋, 等. 基于FPGA的多通道数模信号实时采编存储系统[J]. 计算机测量与控制, 2010, 18(7): 1596-1598.

YaoZong,WenFeng,ZhangWendong,etal.Digitalandanalogsignalreal-timeacquisitionandstoragesystembasedonFPGA[J].ComputerMeasurement&Control, 2010, 18(7): 1596-1598. (inChinese)

[3]崔婧, 沈三民, 叶勇. 基于FPGA的模数混合编帧的采集系统[J]. 科学技术与工程, 2012, 13(1): 75-79.

CuiJing,ShenSanmin,YeYong.Acquisitionsystemofmixedcodingframeofanalog-to-digitaldatabasedonFPGA[J].ScienceTechnologyandEngineering, 2012, 13(1): 75-79. (inChinese)

[4]郇弢, 张会新, 梁永刚. 基于FPGA的高速固态存储器的设计与实现[J]. 科学技术与工程, 2013, 13(24): 7185-7189.

HuanTao,ZhangHuixin,LiangYonggang.DesignandimplementationofFPGA-basedhigh-speedsolid-statememory[J].ScienceTechnologyandEngineering, 2013, 13(24): 7185-7189. (inChinese)

[5]张学强, 秦龙勇, 谢拴勤. 基于FPGA的多路模拟量、 数字量采集与处理系统[J]. 单片机与嵌入式系统应用, 2003(4): 63-67.

[6]Burr-BrownProductsfromTexasInstruments.ADS7881Datasheet[Z]. 2003.

Multi-ChannelDataAcquisitionSystemDesign
withaUnifiedTimeMark

WEIXia,ZHANGLihong,GUOYanyan

(SchoolofPhysicsandElectronicEngineering,ShanxiUniversity,Taiyuan030006,China)

Abstract:It’s unable to get a periodic digital receiving time information due to the digital signals sent randomly. a multi-channel analog and digital acquisition system,designing scheme was put forward that tests and analyzes analog and digital data in the same time coordinate system. A ADC sampling clock as was used the synchronous clock signal of this system. When a serial port does not deal with data receiving, digital data and synchronous clock information are mixed as a frame based on FPGA so that a complete data can be obtained at the same time domain in acquisition system. At last, the QuartusⅡ software has carried on the simulation and analysis. Besides, practical application has verified the feasibility of this method.

Key words:data acquisition; unified time mark; mixed frame; FPGA

文章编号:1671-7449(2016)03-0267-05

收稿日期:2015-09-03

作者简介:卫霞(1982-), 女, 助教, 硕士, 主要从事FPGA系统开发的应用研究.

通信作者:郭艳艳(1976-), 女, 副教授, 博士, 主要从事FPGA系统开发的应用研究.

中图分类号:TP274+.2

文献标识码:A

doi:10.3969/j.issn.1671-7449.2016.03.015

猜你喜欢

数据采集
CS5463在植栽用电子镇流器老化监控系统中的应用
大数据时代高校数据管理的思考
基于广播模式的数据实时采集与处理系统
通用Web表单数据采集系统的设计与实现
基于开源系统的综合业务数据采集系统的开发研究