新闻中心

EEPW首页>嵌入式系统>设计应用> 基于SoPC的状态监测装置的嵌入式软硬件协同设计

基于SoPC的状态监测装置的嵌入式软硬件协同设计

作者: 时间:2013-01-15 来源:网络 收藏

2.2 信号分析IP设计
为节约CPU资源,减轻软件开发负担,本系统中信号分析采用硬件逻辑完成,信号分析IP直接从原始信号数据计算得到直流,基波以及各次谐波的幅值和相位等特征量,具有运算时间固定,速度快,不易出错,不占用CPU软件资源等优点。设计框图如图2所示。主要包括数据流控制逻辑,FFT运算IP,幅频相频计算模块,均值和峰峰值计算模块,分析结果存储缓冲RAM,PLB_EMC接口伺服逻辑。

本文引用地址://m.amcfsurvey.com/article/148140.htm

b.JPG


其中FFT运算和幅值相位计算采用了Xilinx的IP,为节省逻辑资源,4 096点FFT采用基-2(Radix-2)算法简化版,突发输入输出模式,在速度达到的情况下尽可能的缩减面积。
在完成了信号分析IP的逻辑后,进行了仿真工作,仿真数据由Matlab模拟计算得到,通过TestBench送给分析模块进行仿真,仿真环境为Mentor Graphics公司的ModelSim 6.3g。下面是一些具体的仿真结果以及和Matlab仿真的对比。
在Matlab中产生一个正弦信号,并做4 096点FFT,计算结果如图2所示。
图3是FFT工作的时序图,可以看到在选择了基-2(Radix-2)算法简化版,突发输入输出模式后,4 096点FFT的计算时间为533.24 μs,较软件算法快很多,从而使系统能胜任大数据量(84路16位数据)高分辨率(4 096点)信号分析。

c.JPG


图2和图3是对模拟数据进行Matlab仿真和ModelSim仿真二者结果的比较,可以看到原始计算结果有一定的误差,归一化后完全一致,产生误差的主要原因是在Matlab中的FFT是浮点数计算,而在中的FFT选择的是定点数计算。仿真结果表明此模块可以完成信号分析的功能,且分析结果达到较高精度。

3 装置软件设计
装置的软件结构如图4所示,主要由以下几个部分组成:嵌入式操作系统、设备驱动程序(SJ90Dry.o)、数据采集控制与处理程序(SJ90IOAcc)、系统组态配置与监视分析程序(SJ90Logo)、通信接口程序(SJ90Comm)、CAN网驱动和I2C驱动。

d.JPG


其中:
(1)嵌入式操作系统:主要负责进程管理、进程间通信、内存管理、实现文件系统、提供I/O接口及对其他资源进行管理;
(2)设备驱动程序(SJ90Dry.o):运行于系统内核空间,将缓存的存贮空间映射为字符设备,响应设备中断,建立采集数据交换缓冲存贮,提供用户程序与操作系统的接口,完成用户空间和内核空间的数据交换;
(3)数据采集控翻与处理程序(SJ90IOAcc):主要负责建立共享内存,管理系统配置信息,实时数据,提供连续、自主的在线数据采集控制、信号处理、报警检测、历史数据存贮和故障录波存贮等功能,通过设备读写和NetLink通信接口与内核态设备驱动程序进行数据交换;
(4)系统组态配置与监视分析程序(SJ90Logo):基于MiniGUI图形环境,提供可视化的系统参数配置(含机组、传感器、通道、测点信息配置等)功能,提供多种实时数据监视图表、历史趋势分析图表和时频振摆分析图表;
(5)数据通信接口程序(SJ90Comm):实现本系统与其他系统的数据交换,系统提供串口和网络2种方式传送数据,支持的协议分别为MODB US_RTU和MODBUS_TCP;
(6)CAN网驱动和I2C驱动:运行于系统内核空间,提供用户程序与操作系统的接口,完成用户空间和内核空间的数据交换;CAN网驱动获取开关量以及慢变量信号;I2C驱动完成硬件点灯以及报警等功能。

4 结语
基于设计在图像处理、无线通信、军事武器等场合已经有了较多应用,本文则将该设计方法应用于装置中,并通过该设计方法最大限度地提升和优化了该采集系统的性能。笔者认为该设计方法同样适合于电力行业中其他一些实时性强、运算量大、功能复杂的多路采集分析装置中,以该设计思路替代以往的CPU+DSP,CPU+FPGA等多处理器芯片的设计方法,可实现系统级优化设计。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 下一页

评论


相关推荐

技术专区

关闭