基于FPGA 光栅数据采集卡设计研究

作者: 都治楠 李长星 王斌涛

基于FPGA 光栅数据采集卡设计研究0

摘要:为保证转动惯量测量精确度,该文应用FPGA芯片,运用VerilogHDL编程语言,设计一种新型、先进的光栅数据采集卡系统。首先,在完成系统总体结构设计的基础上,分别设计光栅信号预处理电路、FIFO数据缓存电路、FPGA功能电路等多个电路。其次,在完成系统制作调试的基础上,对该系统光栅信号进行等距、等时实验。结果表明,该文所设计的基于FPGA光栅数据采集卡具有精确度高、稳定性高、响应速度快、等距与等时采样功能稳定正常,保证了光栅数据完整性和安全性,符合安全可靠的设计标准,本研究可以为后期转动惯量精确化测量提供重要的系统支持。

关键词:FPGA芯片;光栅传感器;转动惯量;数据采集卡

中图分类号:TP311 文献标识码:A

文章编号:1009-3044(2025)01-0108-03 开放科学(资源服务) 标识码(OSID) :

0 引言

光栅传感器作为一种新型传感器,是基于莫尔条纹测量原理研发而成的。运用此传感器,不仅可以提高测量的精确度,还能获得良好的响应速度和抗干扰性能。光栅数据采集卡作为连接控制系统与光栅传感器的重要媒介,发挥着至关重要的作用[1]。然而,传统的光栅数据采集卡存在分散元件使用量大、稳定性低、安全性差等问题。为此,本文应用FPGA技术,设计了一种新型、先进的光栅数据采集卡系统。该系统主要采用光栅尺位移传感器,能够实现对转动惯量等被测物体的高精度、高稳定性、高安全性的测量,满足相关企业对于精确化测量的需求[2]。

1 数据采集卡系统总体结构设计

为确保光栅时间和间距控制的效果,本文设计的基于FPGA的光栅数据采集卡主要包含以下几个组成部分:光栅信号接收模块、现场可编程门阵列(FieldProgrammable Gate Array,FPGA) 模块、外设部件互连标准(Peripheral Component Interconnect,PCI) 总线接口模块、先进先出(First In First Out,FIFO) 数据缓存模块。

1.1 光栅信号接收模块

光栅信号接收模块的设计目的是通过差分处理的方式,将四路方波信号划分为两路正交方波信号。在设计该模块时,本文选用了50线/mm的雷尼绍光栅尺和MC3486芯片。该芯片具有抗干扰性强、成本低、安全性高等优势,能够实现科学的差分处理四路信号的目的[3]。

1.2 FPGA 模块

在整个数据采集卡的设计中,主要选用了FPGA芯片来对光栅信号进行差分和计数。这确保了本系统具有光栅信号相同时间控制功能、相同间距控制功能以及通信控制功能,为后期光栅信号数据的精确化采集打下了坚实的基础。FPGA模块器件中,除了静态存储器外,还包含了可编程单元、逻辑单元阵列等多个组件[4]。其中,逻辑单元阵列模块的应用可以实现对系统运行状态的科学设置。此外,在FPGA模块中,输入输出模块与引脚进行了有效的连接,并严格按照相关标准和要求,科学地设置了输入或输出端的相关参数。同时,还新增和设置了适量的存储电路,并结合系统的实际应用需求,设计了相应的组合逻辑电路。为保证各个逻辑电路的连接稳定性,还将金属线、开关矩阵等单元配置于整个布线区内。FPGA模块具有引脚连接简单合理、开发成本低、开发灵活高效、兼容性好等优点[5]。

1.3 PCI 总线接口模块

本系统在运行过程中,可以调用上位机对接口数据进行高速率读取和存储,并采用总线形式设置PCI 总线接口。该接口时钟频率、宽度、传输速度分别为33MHz、32bit、264MB/s。PCI总线可兼容PC机以及多个外围设备,最大传输速率可以达到264MB/s,表现出较高的传输性能。因此,本文系统在具体设计时,为降低开发成本,提高开发效率,优先选用PCI 协议芯片。

1.4 FIFO 数据缓存模块

为提高本系统的数据采集速率,在设计时主要选用了IDT7206芯片来设计和实现FIFO数据缓存模块。通过对IDT7206芯片的深度和宽度进行拓展,可以获得较高的存储速度,为用户提供全满、全空、半满等多种缓存服务体验,满足数据高效存储的需求。此外,在FIFO数据缓存模块中,应用IDT7206芯片进行数据读取时,无须设置地址线即可直接读取写入之后的数据,简化了数据缓存和读取的过程。因此,IDT7206芯片具有性价比高的特点,符合FIFO数据缓存模块的经济性设计需求。

1.5 电源模块

对于PCI接口而言,其输出电压通常有以下3个数值,分别是±12V、+5V,本文系统所配置的电源电压通常为+3.3V、+2.5V,所以,须运用AS117 - 2.5V、AS117 - 3.3V电源转换芯片对PCI卡电源进行转换,使其电源电压转换为所需要的电源电压。

1.6 驱动程序与采集软件

为保证PCI 板卡使用性能,需运用波分复用(Wavelength Division Multiplexing,WDM) ,开发相应的模板驱动程序,然后,对该驱动程序进行略微修改和调整,即可开发出符合本文系统的驱动程序。此外,在编写本文系统采样程序期间,技术人员需运用Vi⁃sual C++ 6.0开发环境,开发和编写包含FIFO功能的相应程序,为后期测试本文系统功能创造了良好的条件。

1.7 通信与控制模块

通信与控制模块的设计旨在实现本文系统与上位机之间的数据通信。通过该模块,系统不仅能够将采集到的数据上传至上位机,还能实时接收上位机传输的信息。为了提高数据采集效率和处理质量,在设计通信与控制模块时采用了Verilog HDL编程语言,并编写了相应的驱动程序,以实现精确计数。用户可以根据自身需求灵活设置和调整计数间隔和时间间隔。

1.8 数据处理模块

数据处理模块作为本文系统的核心模块,在具体设计时,需预处理逻辑门电路(Transistor-TransistorLogic,TTL) 电平信号,并将处理结果直接转换为二进制计数值,该上位机结合所接收到的二进制计数值,输出用户所需要的数据。数据处理模块运行原理如下:首先,运用滤波处理方式,对两路正交光栅信号进行初步化处理,避免噪声信号进入光栅信号。其次,对所获得的两路方波信号进行细辨处理,提高最终测量结果的精确度。再次,运用可逆计数器,降低光栅数据计数值,并结合所接收到的操作指令,将用户感兴趣的数据加载和呈现出来。在进行数据处理期间,通常需要做好对相等时间和相等间距数据采样工作。在进行相等时间数据采样时,需借助控制时钟,对相等时间间隔数据进行等时控制;在进行相等间距数据采样时,需借助控制计数器,对脉冲距离数据进行实时采集和整理。

2 数据采集卡系统硬件电路设计

硬件电路属于数据采集卡系统重要组成部分,为光栅信号滤波、采集和细分提供重要的硬件支持。数据采集卡系统硬件电路主要包含光栅信号预处理电路、FIFO数据缓存电路、FPGA功能电路等组成部分。

2.1 光栅信号预处理电路设计

本系统在选用光栅时,优先选用了雷尼绍光栅尺,该光栅尺所输出的信号为典型的方波信号。在设计光栅预处理电路时,技术人员需采用差分处理技术,结合方波信号特征,将四路信号进行划分,使其划分为两路信号。此外,还选用MC3486芯片,将方波信号从原来的四路信号转变为现在的两路信号,然后,将两路信号发送至FPGA芯片中,由FPGA芯片对这些两路信号进行统一化处理,对后期智能化控制光栅信号相同时间采样数据和相同间距采样数据产生积极影响。数据采集卡电路原理图如图1所示。

2.2 FIFO 数据缓存电路设计

为保证转动惯量测量的精确度和可靠性,需要提高光栅信号的相等时间采样速度。然而,当数据采集量较大时,数据的实时传输会变得困难和复杂,可能导致系统资源利用不充分。为解决这些问题,并提高光栅信号数据的采样速度和可靠性,技术人员采取了数据缓存措施,利用数据缓存器存储所需数据,并通过计算机对这些数据进行识别和传输。在数据采集卡系统的设计中,优先选择了FIFO芯片来实现光栅信号数据的高速采集和传输。

2.2.1 FIFO 芯片选择

为确保FIFO芯片选型的科学性和合理性,技术人员须综合考虑以下几个因素:1) PCI端口传输低速率性,避免该端口传输速率超过端口传送速率最大值。2) 为保证光栅信号采样的连续性,需为FIFO设置具有唯一性的标识,方便后期快速区分和识别FIFO 芯片。3) 为避免传输数据出现丢失问题,在选用FIFO芯片时,要确保所选用的FIFO芯片含有满标志和空标志。结合以上分析结果,在设计和实现数据缓冲功能时,技术人员要优先选择IDT72XX 系列的FIFO芯片,该芯片主要由IDT企业研发。

2.2.2 FIFO 控制电路设计

在IDT7206芯片中,技术人员需要结合电路实际设计需求,有针对性地扩充该芯片的容量值、数据宽度,以满足光栅信号数据处理需求,所以,在设计FIFO 控制电路时,需选用两组IDT7206芯片,扩充FIFO芯片容量值,确保所构建的数据存储单元具有较高的存储空间。运用IDT7206接口电路进行数据采集时,借助FIFO芯片识别和读取数据,并利用数据总线,将读取的数据传输至IDT7206芯片中,同时,还要检测和判断HF#信号是否有效。经过检测,如果该信号有效,说明FIFO芯片处于半满状态,此时,会产生相应的中断信号,中断数据传输行为,并对数据进行快速读取和存储,降低数据丢失风险。FIFO芯片在具体应用中,通过对F_R信号进行实时控制,可以向数据总线发送有价值的信息数据,确保上位机读取和获取数据的及时性和有效性。应用FIFO芯片读取信息数据时,降低信号干扰风险,从而达到连续化、稳定化采集数据的目的。在传输数据期间,数据采集卡系统运用控制传输模式进行数据传输,同时,通过控制FPGA芯片上信号线,实现对重要数据的安全化、稳定化采集和传输。

2.3 FPGA 功能电路设计

FPGA功能是数据采集卡系统的重要组成部分,它不仅能够快速开发和编写光栅信号数据的逻辑程序,还能实现数据的实时交互和存储。在选择FPGA 芯片时,应优先考虑传输速度快、存储空间大、集成度高的FPF10K系列芯片,该系列芯片由ALTERA公司研发,能够降低系统负载功率,提高系统运行性能。此外,该系列芯片还含有丰富的逻辑资源,满足光栅信号高效处理的需求。为方便数据采集卡系统的调试,在设计FPGA功能电路时,主要采用了以下两种下载模式:1) 在线调试模式,支持用户在断电状态下重新下载所需程序;2) 存储模式,用于存储下载后的程序,防止程序丢失。

3 系统实验与结果分析

在设计系统总体结构和电路的基础上,通过采购高质量的元器件,完成对数据采集卡制作,并运用调试程序,测试和验证本文系统功能是否满足转动惯量高精度测量要求。

3.1 光栅信号等距数据采集实验

在本次实验中,借助转动惯量测量台,对光栅信号进行等距数据采集实验。具体实验操作如下:首先,将数据采集卡等间隔距离和运动速度分别设置为20μm、20mm/s,获得如图2(a) 所示的数据等间隔抽取后曲线图曲线1,然后,将光栅信号运动速度调整为40mm/s,获得如图2(a) 所示的数据等间隔抽取后曲线图曲线2,接着,将本文系统所采集的数据进行统一绘制,得到如图2(b) 所示的数据等间隔抽取前曲线图。从图2数据可以看出,当数据采集卡以20mm/s速度进行运动时,将数据采样频率控制为每隔10个点采样一次;当数据采集卡以40mm/s速度进行运动时,可以每隔5个点进行一次数据采样。通过计算以上两条曲线的等间隔点,发现这两条曲线等间距标准差相对较低,分别为0.25μm、0.27μm,因此,运用本文系统,可以保证相同间距采样结果的精确度和有效性。

3.2 光栅信号等时数据采集实验

在本次实验中,借助转动惯量测量台,对光栅信号进行等时数据采集实验,具体实验操作如下:将采样时间设置为50 s,获得如图3所示的采样结果,并采用周期计算的方式,对各个周期进行计算,经过计算发现周期标准差达到0.001 3 s,说明应用本系统进行转动惯量测量可以获得较高的测量精确度。

4 结束语

本文设计了一款功能完善、实用性强的光栅数据采集卡系统。该系统具有精确度高、稳定性好、响应速度快等特点,在等距与等时采样方面展现出较高的应用价值,能够有效确保数据的完整性,并显著提升转动惯量测量的精确度。本系统具有较高的实用价值和应用前景。相关部门可以加强对数据采集卡系统的推广和普及,以提高转动惯量的测量效率和精度。

参考文献:

[1] 陈建勋,吴少杰,刘忠伟,等.基于PCI数据采集卡的钣金冲裁过程自动监测系统[J].自动化技术与应用,2020,39(3):126-130.

[2] 金冉,陈永久,张军,等.基于圆光栅和加窗FFT的低频角振动测量方法[J].宇航计测技术,2022,42(6):41-46.

[3] 张晰,姜元,姜润强,等.国产FPGA增量式光栅尺信号采集系统的设计[J].仪表技术与传感器,2023(8):75-78,87.

[4] 徐一清,周益民,周国泉,等.基于NI数据采集卡的铂电阻温度系数测量[J].大学物理实验,2022,35(4):90-94.

[5] 张拥军.工业热风炉监控系统数据采集卡的设计研究[J].工业加热,2022,51(8):54-57.

【通联编辑:代影】

上一篇 点击页面呼出菜单 下一篇