作为AD73360的同类处理器,ADSP2191M可以通过设置轻易地达到上述要求。
图3 硬件系统分析与理论分析对比
系统软件设计
系统的软件设计比较复杂,分为A/D采样控制、LCD控制、串口传输、数据处理和谐波分析算法等几个部分。整个软件框图如图2所示。
其中,谐波分析算法代码量最大,也最重要,系统对配电网电能质量的分析就由它来完成;Flash驱动代码用于对Stm29w040进行驱动,它不在系统监测中使用,而是用来实现程序代码的下载。在系统开发代码的语言选择上,采用DSP汇编语言和C语言相结合的方式,以C语言为主,汇编语言为辅。
219x_int_tab.asm文件的处理:在介绍整个系统流程之前,先介绍一下219x_int_tab.asm文件。当软件主函数存在于C文件的时候,219x_int_tab.asm 文件被系统默认为项目的一部分,并对项目进行中断向量初始化。当中断发生后,程序指针跳转到该文件的相应位置,通过 ___lib_int_determiner函数来寻找中断服务程序的入口,一旦找不到服务程序入口,就会造成程序死锁,无法正常运行,而采用C语言实现中断函数比较复杂。为了提高系统开发速度,减少系统程序代码,系统开发时要先对219x_int_tab.asm中的中断向量表进行修改,将中断服务程序入口直接给中断向量表就可以完成该函数的功能。系统软件的开发工具为ViusalDSP++3.0。
在软件设计中,最重要的是谐波分析算法的设计。因为它是软件设计的核心,不仅代码量比较大,而且也是系统测量精度的决定性因素之一。本方案采用成熟的FFT(快速傅立叶算法)作为系统的谐波分析算法,同时,为了抑制FFT算法自身的栅栏效应和频谱泄露问题,加入了汉宁窗和插值算法。由于代码量较大,这里就不给出源代码了。
在系统的软件设计中,用到了两个中断:同步串口发送中断和同步串口接收中断。前者用来实现对AD73360的配置,后者用来实现从AD73360读取转换后的采样数据。它们的代码也不在此详述了。
除此之外,系统还开发了异步串口、可编程标志引脚和LCD控制等待,使整个系统更加智能化、人性化。这里就不一一介绍了。
系统分析与软件分析的比较
系统开发完毕后,为了对系统分析的结果进行检测,使用与软件分析进行比较的方法。将时域原始数据导入 Matlab软件,通过该软件内的FFT算法对数据进行分析,可以得到一组相应的时域波形、幅值谱和相位谱图形。将这些图形与系统硬件分析在DSP系统中所得到的对应图型进行比较,就可以看出本设计的硬件系统分析与理论分析的差异。图3就是这些图形的对比情况。
DSP硬件系统与Matlab软件所分析的原始数据是相同的,但是它们所采用的分析方法是不同的:一个是系统开发的算法、一个是软件自带的工具,所以,可以通过对比来审核开发系统算法的可靠性。可以看出,在对比图中,开发系统得到的时域信号的波形和幅值、相位谱与Matlab软件的分析结果具有相当的一致性。限于篇幅,最终的分析数据不再详述了。
为了比较系统的可信度,可采用多次分析的方法,分析比较数据可以看出,虽然采用不同的分析系统,但是二者结果误差很小,基本相同,这就说明系统的硬件监测结果有相当的可靠性。
结语
以AD73360和ADSP2191M处理器为系统硬件核心,系统具有如下特点:
•系统硬件设计简洁,不仅容易实现而且成本较低。
•系统没有外部扩展SRAM,对硬件要求比较低。
•使用DSP处理器未用接口资源,系统软件方便升级。
•系统的软件设计采用汇编和C语言相结合的方法和加窗插值FFT算法,可以提高代码的开发速度和系统整体的测量精度。由比较结果来看,该方案符合电力系统的要求,可靠性高,而且至少可以满足每周期160点的实时采样
关于我们 | 广告服务 | 会员服务 | 媒体报道 | 营销方案 | 成功案例 | 招聘服务 | 加入我们 | 网站地图 | 在线帮助 | 联系我们 |
京ICP证080169号京ICP备09003304号-2京公网安备11010502034458号电子公告服务专项备案
网络文化经营许可证 [2019] 5229-579号广播电视节目制作经营许可证 (京) 字第13229号出版物经营许可证新出发京批字第直200384号人力资源服务许可证1101052014340号
Copyright © 2022 Bjx.com.cn All Rights Reserved. 北京火山动力网络技术有限公司 版权所有