当前位置:首页 > 工业控制 > 电子设计自动化
[导读]摘要:提出了一种利用ARM和FPGA架构实现对多通道微应变信号进行数据采集的系统设计方案。通过FPGA输出模拟量调节和内部数字量调节的方法,实现了对微应变传感器的零点校准。可以通过ARM修改FPGA中的各项采样参数,如采

摘要:提出了一种利用ARM和FPGA架构实现对多通道微应变信号进行数据采集的系统设计方案。通过FPGA输出模拟量调节和内部数字量调节的方法,实现了对微应变传感器的零点校准。可以通过ARM修改FPGA中的各项采样参数,如采样率,采样通道数,起始通道等。详细介绍了FPGA内部的各功能模块。应用结果表明,系统运行稳定可靠,采集精度高,具有一定的实用性。

1 引言

数据采集系统是计算机测控系统中不可或缺的组成部分,是影响测控系统的精度等性能 指标的关键因素之一。随着新的器件不断推出,新的技术不断应用,数据采集技术及其相关 电路得到了迅速的发展。如何提供更高的采样速率,更高的精确度和更大的灵活性是当前数 据采集系统需要解决的问题。FPGA 的迅猛发展,使FPGA 器件性能得到了不断的提升,已 逐步取代单片机、DSP,在数据采集系统中的得到了广泛的应用[1 ~ 4]。

本系统采集的对象是微应变传感器,由于微应变传感器自身的制造误差、贴片产生的初 始应力、结构安装时产生的附加应力等,都会产生一个比较大的零点,可能超出A/D 芯片 的量程范围。若这个零点过大,会使得信号放大器、ADC 的输出出现饱和现象,使数据采 集无法正常进行。通常对零点的修正有硬件与软件两种方法。如果只用软件测量校正的办法 无法解决ADC 芯片的饱和问题,只用硬件解决的话需要的硬件成本较高。因此如何准确的 测量微应变信号的零点,是本系统需要解决的关键问题。

2 数据采集系统的设计方案

本文设计的数据采集系统可以实现数据的采集、处理和存储功能。整个系统主要由 Atmel 公司的AT91RM9200 微处理器芯片, Xilinx 公司的FPGA 芯片XC3S200AN, TI 公司的 ADC 芯片TLC2551、DAC 芯片TLV5* 及信号调理电路等外围电路组成。系统硬件简图 如图1 所示。ARM 输出控制信号,控制FPGA。当ARM 启动FPGA 开始数据采集后,FPGA 输出通道地址,经过32 路模拟通道多路开关,选择某一通道,FPGA 控制DAC 芯片输出模 拟量对这一通道的输入量进行粗调零。然后由FPGA 控制ADC 芯片进行模数转换。将转换 得到的12 位数字量串行输送给FPGA。在FPGA 内部将12 位数据由串行改为并行,进行细 调零等相应的数据处理,然后加上4 位标明通道的数据送入FIFO 中。当FIFO 达到半满时, ARM 将数据读出进行相应的处理,整个数据采集的过程完成。


3 FPGA 的功能模块

FPGA使用的是Xilinx 公司Spartan3AN 系列的XC3S200AN芯片,片内集成了4M Flash, 288K 的块状RAM,集成密度高,可以将程序直接下载在片内ROM 上,无需片外ROM, 节省电路板面积。FPGA 在整个系统中负责数字信号的采集控制、处理,控制信号和时序信 号的产生,数据的缓存和异步输出,在整个数据采集系统中起到至关重要的作用。根据FPGA 的功能,将其模块化为数据处理模块、时序控制模块,通道控制模块、A/D 和D/A 芯片控 制模块、异步FIFO 缓存模块、接口和总线模块,具体模块结构如图2 所示。


(1)接口总线模块

此模块负责 FPGA 和CPU 的通信以及内部各模块之间的通信。CPU 和FPGA 之间通过 16 位双向数据总线和地址线通信,CPU 向FPGA 输入读、写、复位、开始等控制信号。FPGA 内部各模块设计成可由CPU 读写的模块,直接与内部数据总线连接。这样ARM 可以通过 向各模块写入数值实时的改变采样的各参数,并通过读各模块的参数实时监控系统的运行状 态。由于内部各模块众多,CPU 与FPGA 之间信息交互频繁,为了简化时序控制,避免各 模块之间的竞争、冒险,在FPGA 内部将16 位双向数据总线独立为16 位读总线(Readbus) 和16 位写总线(Writebus)。当CPU 输入写信号有效时,FPGA 内部写总线从与ARM 通信 的双向数据线读数,将数据送给内部各模块;当输入读信号有效时,双向数据总线从内部读 总线读数,向外输出给CPU,当读信号无效时,内部读总线为高阻状态。内部各模块都将 可读的参数值输出到多选一数据选择器,读总线根据地址译码读出某个参数值送给双向数据 总线输出。

(2) 时序控制模块

此模块控制通道采样频率和内部的时序逻辑,有两个主要信号,扫描时钟(scan_clock) 和采样时钟(sample_clock),都是由FPGA 主时钟分频而得。scan_clock 为高电平时,对各 通道信号采样保持,ADC 准备转换。当sample_clock 上升沿到来时,ADC 开始转换某一通 道的信号,sample_clock 的下一上升沿到来时,ADC 转换下一个通道的信号。通过改写 scan_clock 和sample_clock 可以改变采样的频率。由于通道数也是可以修改的,当扫描时钟 和采样时钟未变,采样通道数由25 变为12 个时,scan_clock 高电平有效时间被浪费。为了 解决这个问题,在设定的通道数转换完成后,就将扫描时钟置为零,节省了时间。如图3 所示,当采样通道数设置为12 时,采样完第12 个通道后就将scan_clock 置为零。


(3) 通道控制模块

此模块控制通道间的转换,输出当前采样通道号。内部有通道计数器,计算当前的通道 号。为了减少每一通道所用时间,当A/D 还未结束时,就提前给通道计数器信号EOC 进行 通道转换,AD 转换和通道转换并行进行,当AD 转换完成时,通道控制模块也已准备好当 前通道号。通过写数据总线向此模块写通道控制字可以改变需要采样的通道个数,采样的起 始通道。

(4) 控制AD 和控制DA 模块

此模块控制 AD 和DA 芯片,产生使AD 和DA 芯片工作的控制信号和时序逻辑。由于 需要采样的通道数多,达25 个,为节省印制电路板面积和成本,采用单片AD 芯片加多路 模拟开关进行模拟数字量的转换。AD 芯片TLC2551,是TI(Texas Instrument)公司生产的 精度为12 位的,单通道采样、低功耗芯片。其工作时序如图4 所示。时钟信号SCLK、控 制信号CS 都由FPGA 产生,时钟主频为19.2M,采样一次需要44 个时钟周期[5]。


DA 芯片采用TI 公司生产的TLV5*,它是一个带参考电压源的8 位DAC,数字接口为SPI 接口。FPGA 控制DA 芯片,使DAC 的输出与ADC 输入模拟电压相加,抵消输入的 零点,产生0-4.096V 有效输出送到ADC 输入端进行转换。TLV5* 的工作时序如图5 所示。 时钟信号SCLK 和控制信号CS,信号FS 由FPGA 产生,每次转换需要16 个时钟周期。

(5) 数据处理模块

由ADC 芯片输出的12 位串行数据,经过此模块,转化为12 位并行数据,然后完成数 据的细调零。细调零也由FPGA 完成,在数据处理模块中有一片分布式可读写的RAM,里 面存储了由ARM写入的各通道的零点数据。在每个通道完成ADC 转换时,自动由零点RAM 中读出给定通道的零点数据,由FPGA 完成减法运算,完成细调零。

(6) 双端口异步FIFO 缓存模块

由于 ARM 和FIFO 的时钟不同,ARM 读速度远远大于FPGA 采集数据的速度,因此设 计用FIFO 在ARM 和FPGA 间的跨时钟域数据传输中起缓存的作用。模块由两个深度为8K, 宽度为16 位的异步双端口FIFO 组成,数据存储总量为256K。若用FPGA 内部逻辑资源实 现FIFO,所有逻辑资源将全被耗尽,因此用芯片内部自带的288K Block Ram 来实现。设计 中,采用19.2M 主时钟做FIFO 的时钟,且为上升沿有效。ARM 的读信号有时无法被时钟 上升沿捕捉到,就产生了数据传输不可靠的问题。为解决这个问题,采用握手协议将读信号 延长。输入到FIFO 端口的读信号一直到时钟上升沿有效,才置为低电平,具体如图6 所示。


需要采集的实际通道数为 25 个,需用5 位数据标明当前通道值,AD 转换的有效数据 为12 位,而数据线为16 位,只有四位数据可供通道地址使用。为了完整标示当前的通道值, 根据通道值最低位的奇偶性把数据分别储存在FIFO0 和FIFO1 中。这样CPU 从FIFO0 读出 的数据就是偶数通道的采样值,从FIFO1 读出的数据就是奇数通道的采样值。

4 ARM 程序的编写

编程软件环境为 CodeWarrior for ARM Developer Suite,编程语言为C 语言。ARM 程序 主要通过和FPGA 的通信,控制FPGA 进行数据采集,适时改变FPGA 的各参数,向FPGA RAM 中写入粗调零,细调零的数据,并从FPGA 读取采样完的数据进行相应的处理。

5 零点的校准

FPGA 有两片专门可读写分布式RAM,一片用来储存8 位粗调零的数据,一片储存12 位细调零的数据,各通道的通道号就是调零数据存储在RAM 中的地址。DAC 的数据在通 道转换时,根据当前通道值,从粗调零分布式RAM 中读出,写到DAC 寄存器中,由FPGA 控制DAC 芯片转化成模拟量输出到ADC 芯片的输入端,与输入电压相加实现粗调零。然 后在FPGA 内部把转化得到的12 位数据减去存储在RAM 中的细调零值,所得的数据才是 真正有效的数据。

为了确定某一路微应变信号的零点,ARM 首先在通道地址写入数值0x7F,使DAC 输 出其可输出电压的中间值,然后启动ADC 芯片开始转换。此时的ADC 芯片工作在数据直 通模式,转换得到的12 位数据不经过数据处理和FIFO,直接由数据总线传送给ARM。ARM 根据读得的转换值,若发现依然是过饱和状态,则加大写入粗调零存储器的数值,直到读得 的ADC 数据为正常数值。DAC 模拟量输出值加ADC 测得的模拟量输入值既是此通道的零 点值。零点确定后,通过FPGA 输出模拟量和FPGA 内部数字量调节的方式,实现了8 位 DAC 芯片对12 位ADC 芯片零点的校准。

6 结论

本文介绍了一种基于 FPGA 和ARM 的数据采集系统。FPGA 程序全部采用Verilog-HDL 语言自顶向下模块化编写,在Xilinx ISE 集成开发环境下进行编译和仿真,整个系统和所有 功能模块均可在符合条件的FPGA 产品中应用,具有良好的可移植性。已应用在某机载数 据采集仪中,获得了很好的应用效果。

本文的创新点在于用 FPGA 芯片通过模拟量调节和数字量调节的方法,用较低的成本 实现了对微应变数据的零点校准,提高了采集的精度。并且ARM 和FPGA 的交互,实现了 可由ARM 在线实时改写和监控FPGA 中的各项采集参数,无需对FPGA 芯片重新下载编程, 大大提高了数据采集系统的灵活性。



参考文献:

[1].AT91RM9200 datasheethttp://www.dzsc.com/datasheet/AT91RM9200+_143939.html.
[2].TLC2551datasheethttp://www.dzsc.com/datasheet/TLC2551_1095377.html.
[3].ROM datasheethttp://www.dzsc.com/datasheet/ROM+_1188413.html.
[4].DA datasheethttp://www.dzsc.com/datasheet/DA+_1093508.html.


来源:xiaobai0次

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

全新的专有模型导入功能让客户更轻松地将其专属模型导入到Amazon Bedrock中,从而充分利用Amazon Bedrock的强大功能。全新的模型评估功能使客户能够广泛且便捷地选择完全托管模型,包括RAG优化的新版Am...

关键字: 生成式AI 基础模型 数据

2024年4月17日,中国 – 服务多重电子应用领域、全球排名前列的半导体公司意法半导体(STMicroelectronics,简称ST;纽约证券交易所代码:STM)将在2024年4月25日欧洲证券交易所开盘前公布202...

关键字: 半导体 数据

数据占满我们的电子设备已成常态,为了满足广大用户的需求,NAS应运而生。然而,对于许多普通用户来说,NAS设备的设置和使用却常常令人望而却步。不过,铁威马TOS 6的出现,不仅功能强大,而且操作简便,即使是初次接触NAS...

关键字: 数据 电子设备 NAS

机器学习作为人工智能领域的重要组成部分,其过程涉及到多个核心环节。本文将详细阐述机器学习的四个主要步骤:数据准备、模型选择、模型训练与评估,以及模型部署与应用,以揭示机器学习从数据到应用的完整流程。

关键字: 数据 人工智能 机器学习

机器学习算法是人工智能领域中的核心技术之一,它通过对大量数据进行学习,自动发现数据中的规律和模式,从而实现对新数据的预测、分类、聚类等任务。本文将深入探讨机器学习算法的基本过程,包括数据准备、模型选择、训练与评估等关键步...

关键字: 数据 人工智能 机器学习

随着人工智能(AI)技术的迅速发展,人们对于通用人工智能(AGI,即Artificial General Intelligence)的期待也日益高涨。通用人工智能指的是具备像人类一样全面智能的计算机系统,能够执行各种复杂...

关键字: 人工智能 计算机 数据

在数字化时代,数据的数量和价值飞速增长,如何安全、有效地存储和管理这些数据成为了一个重要的问题。刻录机,作为一种同时具有数据存储和备份功能的设备,在这方面发挥着越来越重要的作用。本文将向大家介绍刻录机的定义、工作原理以及...

关键字: 刻录机 数据

在数字时代,数据已经成为企业的重要资产。随着云计算技术的快速发展,云服务器已成为企业和个人存储数据的重要平台。然而,数据的存储和处理也面临着多种安全威胁。本文将探讨如何使用云服务器确保存储数据的安全性。

关键字: 数据 云服务

摘要:针对窃电手法的隐蔽化和专业化,为减少公司范围内窃电行为,大力整治用电市场秩序,保持反窃电高压态势,结合当前新疆反窃查违工作中的实际,依托用电信息采集系统,融合多源系统数据,采用开盖记录+计量异常途径对用电行为进行分...

关键字: 计量异常 采集系统 用电行为分析

北京——2023年9月21日,近期,亚马逊云科技作为参展商参与了久负盛名的IBC 2023 (欧洲广播电视展)并宣布推出一系列聚焦营收增长的媒体与娱乐(Amazon Web Services for M&E)行业解决方案...

关键字: 亚马逊 数据
关闭
关闭