基于FPGA的传感器数据采集研究

时间:2022-09-07 09:46:34

基于FPGA的传感器数据采集研究

摘要:本文主要对如何应用FPGA实现传感器数据采集系统进行了研究和讨论。本文首先对以FPGA为核心的系统设计流程进行了简要介绍,然后从系统功能出发对系统的功能结构进行了分析,在此基础上讨论研究了具体的系统实现与设计方案。

关键词:FPGA 传感器 数据采集 设计流程 功能结构

中图分类号:TP274.2 文献标识码:A 文章编号:1007-9416(2013)11-0093-01

现场可编程逻辑门阵列,即FPGA是一种集成度高、灵活性强、可反复擦写的半定制电路,相较于ASIC而言,其可实现的功能更为丰富,能够有效弥补定制电路中存在的某些不足,完成时序和组合逻辑复杂的功能和人物。综合来看,应用FPGA构建传感器数据采集系统不仅可以满足系统的大容量传输与处理需求,还能够依照系统需求进行在线编程,实现功能的定制化。

1 FPGA设计流程

使用FPGA作为核心进行系统设计需要遵循自顶向下和模块化的设计思想进行设计,即首先按照系统特点将大的系统划分为多个相对独立的基本单元,然后再对这些基本单元再进行细分,直到最后的层级达到EDA元件库能够将其实现为止。

FPGA的开发设计流程主要包括电路的仿真设计、设计验证与行为仿真,电路图布线及功能仿真、具体器件编程调试与功能验证等。

其中电路设计是依照所设计的系统进行功能规划和接口定义;设计验证是一种非底层的理想化状态逻辑验证;行为仿真是将高级描述转化为低级描述,综合考虑各元器件之间的延时对功能电路进行仿真;电路图布线及功能仿真是依照设计方案对FPGA芯片进行配置然后构建实际逻辑连线系统,查看电路是否正确稳定;具体器件编程调试与功能验证是整个流程的最后一步,用于下载可执行变成数据到FPGA中对整个电路系统进行功能验证。

2 FPGA传感器数据采集系统结构

为实现数据采集与传输,系统应该包括上位机监控模块、数据传输模块以及传感器网络数据采集模块等三部分,其中上位机以FPGA为核心搭建控制模块,主要负责控制指令的下发以及数据显示与处理;下位机以FPGA为核心搭建采集模块,主要负责具体的数据采集任务并将采集到的信息通过数据接口发送给上位机;上位机与下位机之间的数据传输网络可设计为局域网也可以设计为公共网络,既可以通过无线收发模块实现无线通信也可以直接使用数据传输线进行有线通信,只需要依照所选用的网络制定好相应的协议即可。

3 分层实施传感器网络控制器的设计

为实现高速率高安全性的数据采集,系统传感器网络可采用分层设计结构:在数据采集部分,在保证采集数据可靠性的前提下为简化系统难度可以使用分支采集与整体整合的设计思路;在数据安全控制部分,在保证系统安全性的前提下为增强系统的稳定性,避免局部故障对整个系统的影响可以采用分支紧急制动与全局紧急制动相结合的设计思路。

3.1 传感器网络协议控制器

依照传感器网络协议控制器功能实现可以将系统划分为协议封装模块、数据收发与存储队列模块、数据分析器、分支接收器以及与数据分析器相连接的全局紧急制动模块等几部分。系统实现时,各分支传感器分别对数据进行采集,所采集到的数据被传输到分支数据接收器后经协议拆装等还原为原始数据送入数据分析器进行数据分析与数据优先级排序。若系统运行正常,则数据分析器将预处理后的数据发送给FIFO进行发送数据缓冲与排序,若系统运行出现异常,则与其连接的全局紧急制动模块启动,以中断响应或者其他方式将自身信息指令设置为最高优先级与上位机进行通信,汇报故障。FIFO模块中的数据依照次序源源不断的发送给协议封装模块,模块依照所制定的协议对数据添加帧结构标签、CRC校验位等封装为一个完成的数据帧,然后将该数据帧传输到上位机中,最终实现数据的采集与传输。

3.2 分支数据采集器功能及帧结构

依照数据采集特点,可以使用串行总线结构对分值数据采集器进行连接,正常情况下,采集模块中的FPGA控制核心依次向各节点发送查询指令,确认是否存在采集数据需要上传,特殊情况下可以启动分支紧急制动模块对传感器节点进行保护。

需要说明的是,分支数据采集器应该使用分支协议数据帧单元对所采集到的数据进行封装与标注,以便于实现更好、更有效的数据管理与数据交换。帧结构大致可以分为控制码与数据域两部分,控制码中应包含连续帧标识、节点制动措施启动标识、新节点发现标识、节点类型标识等多个内容。

4 设计与实现

具体的FPGA传感器数据采集系统分为为三个部分:数据封装、分支数据采集以及传感器节点电路等。

在网络协议控制器设计方面可以直接调用Quartus开发环境下的DHLC软IP核对现有协议进行修改设计,而FIFO队列的设计可以调用LPM宏模块将其设计为双端口队列。为保证系统运行效率可以采用多进程设计思路设计数据分析器,不同进程的安全等级不同,优先等级不同。分支数据接收机直接设计为寄存器即可满足相应的功能需求。但是需要注意的是,由纯硬件实现的FPGA控制系统在新节点感知方面存在缺陷,故需要为控制系统分配相应的动态资源进行新节点识别和适配。由于当前主流的传感器功能集成度高,故对其进行设计时可直接使用FPGA测量传感器信号线中的数据脉冲即可得到采集数据。

5 结语

使用FPGA进行传感器数据采集系统设计不仅可以很好的满足功能需求,还能够有效保证数据采集与传输速率,保障系统运行稳定性。

参考文献

[1]刘爱萍,姚华.高推重比发动机全权限数字电子控制系统研究和半物理仿真试验验证[M].航空发动机,2003年第29卷第1期(总第110期).

[2]魏明,李军.同步整流技术在航空发动机信号测量中的应用研究[M].航空发动机,2007年第34卷第4期(总第129期).

[3]任士彬,孟庆明.中国发展航空发动机FADEC技术的途径[M].航空发动机,2010年第36卷第3期(总第142期).

上一篇:视频中行人快速检测计数方法研究 下一篇:电力线载波技术在船舶通信中的应用研究