基于FPGA的多通道高速信号采集器的设计

时间:2022-10-21 02:19:19

基于FPGA的多通道高速信号采集器的设计

【摘要】采用FPGA技术设计的高速数据采集器可实现采集高速信号并实现实时上报的功能。利用FPGA,外部只需添加简单的电平转化电路即可灵活实现多通道、多主机、多路径实时数据传递。该系统信号采集速度快,接口类型多样,当应用到工业现场后还可以通过RS485总线进行远程升级来满足后续工程的需要而不需要对硬件做任何更改,比传统的数据采集系统有更强的竞争优势。

【关键词】数据采集;AD转换;ISA;RS485

引言

随着电子技术的高速发展,数字系统被广泛的应用于工业、医疗、军事、科技等领域,高速数据采集系统已成为数字系统重要组成部分。传统的信号采集设备,采用单片机或DSP为主要控制器,由于系统时钟频率低,接口种类少,造成系统采集通道数有限,采集速率低,接口种类单一,灵活性差。基于FPGA硬件可定制的特点,所有功能利用硬件实现,可有效解决以上问题。使得产品采集精度和速率大幅提高,灵活性和可扩展性得以优化。同时利用FPGA可现场编程的特性可方便实现系统的远程维护和升级。

1.多通道数据采集器系统架构

数据采集器主要由6部分组成,它包括两路A/D转化模块,FPGA处理模块,ISA接口模块,485接口模块,SPI扩展口组成的通信接口选择模块。如图1所示。

图1

FPGA的主要任务是生成控制信号和驱动系统各部分的时钟信号,完成整个系统的逻辑控制以及A/D转化模块,485接口,ISA接口,SPI接口芯片组的驱动。

1.1 FPGA芯片概述

FPGA采用了Atlera公司的EP3C25F256。该芯片内部包含24624个逻辑单元,608256bit的RAM存储器,66个乘法器,4个内置锁相环可用I/O口182个。由于AD9241转换速率高数据无法实时上报可利用内部的RAM作为缓存区储存数据。FPGA预留SPI总线接口可与单片机、DSP、ARM等芯片直接连接,用做功能扩展、数据传递,同时初始化系统。

1.2 485接口模块

RS485总线采用平衡双绞线作为传输媒介 最远传输距离可达1219米以上,可实现系统的远程控制和数据交互并且能够进行远程系统更新升级,同时485总线可多机并联,从而能够实现一台核心服务器控制多部数据采集器的功能。RS485标准通常作为一种相对经济、具有相当到噪声抑制、相对高传输速率、传输距离远,并且RS485电路控制方便、成本低廉。由于RS485通信距离远,传输电缆周围电磁环境复杂,所以需要对485总线进行防浪涌,防雷击保护,保护电路如图2所示。

图2

电路采取了两级防护方案,其中第一级气体放电管GDT用于泻放大部分电流。中间PTC熔丝电阻为第一级与第二级之间的耦合器件,同时可限制部分电流。第二极保护采用了钳位电压更为精准的TVS管,将浪涌残压将至最低。

1.3 A/D转换模块

A/D转换模块采用AD9214芯片,该芯片采集速率最高可达并行105M,分辨率10位。支持模拟差分信号输入,配合单端转差分芯片AD8138可极大的提高A/D模块的抗干扰能力,芯片接口电路如图3所示。

图3

电路中AD8138可将单端信号转换为差分信号,提高了小信号的识别能力,增强了电路抗干扰能力。

AD9214可通过第13管脚ENCODE控制采样速率,最高可达105M,由于采样速率较高,需要对D0―D9管脚进行等长走线和控制50ohm阻抗处理AD9214芯片的接口时序如图4所示:

图4

由此可知,主芯片读取的数据为6个周期前芯片所转化的数据,系统启动后需等待6个时钟周期才可采集数据

1.4 ISA总线接口

ISA是IBM PC兼容机上的一种总线,系统时钟频率通常在4.77MHz~8MHz内选择,最高频率为8.3MHz。当今大部分工业控制计算机都设置了ISA接口,因此用户通过ISA总线,可方便快捷的在采集器和工控机之间进行数据交互。但由于EP3C25F256采用3.3V电源供电,ISA接口的标准电平为5V,FPGA无法直接与ISA总线连接。需外加电平转化芯片NXP的74LVC245。

2.多通道数据采集卡逻辑设计

2.1 设计工具

本设计采用Altera 公司提供的 QuartusⅡ作为开发平台。该软件是综合性PLD/FPGA开发软件,支持原理图、VHDL、Verilog HDL、AHDL等多种设计输入形式,内嵌综合器和仿真器,同时为第三设计工具提供无缝接口为用户提供多样的设计工具和设计方法。FPGA的主流设计语言通常有VHDL和Verilog HDL,由于Verilog HDL使用习惯更接近于C语言,使用更加简单,故本设计采用Verilog HDL作为开发语言。

2.2 系统工作流程图

数据采集卡工作流程如图5所示。

图5

3.应用与测试

测试方法:

利用信号源输出10M正弦波信号。通过示波器观测测量结果,如图6所示:

图6

通过ISA总线采集数据上报PC,通过Visual C++等软件可方便的编写软件。接收数据后结果如图7所示:

图7

实测结果,与示波器测量的结果基本一致,由此看出,本系统能够完成高速数据采集的功能。

参考文献

[1]苏旭武,杨光友,程良明等.一种基于ISA 总线的FPGA在线配置方法[J].机械与电子,2005,05:47-49.

[2]周振安,范良龙.数据采集系统的设计与实践[M]北京:地震出版社,2005.

[3]蒋学东.基于FPGA实现多路模拟信号自适应采集系统[J]现代电子技术包,2010,8.

[4]徐庆元,张天序,钟胜.基于USB总线的高速视频采集系统设计[J].微计算机信息,2006.

作者简介:

毛炎,现供职于广州海格通信集团股份有限公司,主要从事电路设计与开发工作。

罗继鸿,现供职于广州海格通信集团股份有限公司,主要从事电路设计与开发工作。

上一篇:ASP.NET页面之间的数据传递与保持 下一篇:项目教学法在职高Fireworks网页设计课程中的使...