基于DSP的电能质量检测装置的软件设计方法

2012-01-29 08:35三峡电力职业学院徐金雄
电子世界 2012年12期
关键词:管脚流程图代码

三峡电力职业学院 徐金雄

基于DSP的电能质量检测装置的软件设计方法

三峡电力职业学院 徐金雄

为有效地测量电能质量,提出一种基于DSP(数字信号处理器)的电能质量在线检测装置的软件设计方法。该方法以芯片TMS320VC33为硬件基础,结合模块化设计理念,使得新设计结构简洁,实时性好。

电能质量实时检测;DSP;FFT算法

1.引言

微电子技术的发展使得各种电气自动装置广泛应用,极大的提高了社会生产力,而这些装置对于系统中电能质量的下降极为敏感,因此在生产实践活动中出现许多严重事故,造成许多巨大的损失。现在如何提高电能质量,确保用电设备安全稳定的运行,已成为国内外广泛关注的焦点之一。本文概述了电能质量问题的背景,较为全面的论述了电能质量问题的现象。重点放在了电能质量的测量上,从有关标准入手,分析了基于DSP新型电能质量监测装置的软件设计。

2.软件开发流程与设计原则

2.1 软件开发流程

DSP的开发工具包括代码产生工具和代码调试工具。代码产生工具对用户开发的高级语言或汇编语言源代码进行编译,生成可以在目标DSP上运行的可执行代码。代码调试工具根据调试者的命令观察DSP的状态,控制DSP代码的执行,进行结果显示,对用户的代码进行调试或性能测试。

TMS320C3X/C4X的C编译器是一个功能齐全的优化的编译器。它的主要功能是把标准的ANSIC语言程序转换成TMS320C3X/C4X能够识别执行的汇编语言代码。采用优化编译可以生成高效率的汇编代码,从而提高程序的运行速度,减少目标代码的长度,TMS320VC33软件开发过程如图1所示。

2.2 软件设计原则

本系统软件设计采用模块化设计方法,针对本系统要实现的是对电力系统数据实时采集、分析计算,并做到在线监测的目的,在软件设计上有以下原则:

实时性:电能质量监测装置要实现的是对电网数据实时采集分析计算,既要不间断的采集数据,还要在运行期间实现同步计算。

快速性:在硬件上要求采样和计算芯片的高速性,软件上要求算法的高效率,从而可以在每64点采样间隔的时间内完成各个电能质量参数的计算和数据存储,以能实现计算和采样的同步性。

可扩展性:对于软件系统来说,CCS的函数库十分完善,软件系统可通过对DSP程序的更新来达到算法的升级,例如在将来系统中可以引入小波变换的算法等进行数据分析,实现对瞬态电能质量的分析。

高效性:在设计能实现系统功能的软件时,采用模块化设计的方法,利于功能的调整,使程序简洁明了。

3.系统流程图介绍

3.1 DSP主程序流程图

DSP主程序框图如图2所示。开机后DSP进入引导程序开始系统初始化。首先,为了使串口能够配合ADS8364开始工作,要对其与DSP的串口进行设置。ADS83b4与DSP采用硬件相连,ADS8364的时钟信号CLK也由DSP控制产生。在系统启动后,ADS8364的/HOLDA、/HOLDB、/HOLDC管脚直接由锁相倍频电路的输出和DSP外部标记管脚XF共同控制。在数据转换结束时,ADS8364向DSP的/INTl管脚输入低电平申请中断,系统进入中断服务程序,将采样数据输入DSP芯片,DSP在接收采样数据结束后,对接收数据进行FFT运算和各种电能质量指标分析,在分析出现异常时进行相应的处理。

3.2 数据采集流程图

数据采集程序框图如图3所示。系统运行后,ADS8364的数据输出方式被确定为16位循环方式,其采样频率和过程由锁相倍频电路和DSP芯片共同控制。CD4046和CD4040组成锁相倍频电路,其中的CD4046对所要检测的交流信号进行锁相,然后进行128倍频,如果系统设置为64次/周期采样速率,则用分频器CD4040对此信号进行2分频后与DSP芯片共同控制ADS8364的/HOLDA,/HOLDB,/HOLDC管脚,这样就可以保证每周期均匀采样64点,避免了频谱的泄漏。ADS8364的/EOC信号连接到DSP的中断引脚/INT1上,在数据转换结束时,引脚/EOC变为低电平,触发/INT1中断,进入中断服务程序,由DSP控制ADS8364的/RD和/CS管脚,进行数据的读操作。在读取数据完6组数据后,由DSP的外部标记管脚XF向ADS8364发出复位信号,并关闭中断。至此,数据采集结束。

图1 TMS320VC33软件开发过程

图2 主程序流程图

图3 数据采集流程图

图4 数据处理流程图

图5 FFT数据倒位序流程图

图6 按时间抽选的基-2FFI算法流程

3.3 数据处理流程图

数据处理部分主要对数据采集部分所得到的离散信号进行处理,运用各种算法实现电能质量指标以及其它电气量的计算与分析。即进行时域的电压扰动、频率偏差、三相不平衡度,以及功率、电流等计算;而离散化信号经过FFT运算可实现其频域内的基波和各次谐波分量的数值计算。

采样数据处理如图4所示。时域的离散值计算主要实现三相电压、电流的有效值计算,即对64点采样值进行均方根值计算。对于计算能力很强的DSP来讲,其占用的处理时间很短,很容易实现。

在频域的计算中,主要是进行FFT运算,该算法与传统的DFT算法比较起来,大大减少了运算的次数,并可以由DSP完成。FFT算法有按时间抽选的基-2FFT算法(DIT)和按频率抽选的基-2FFT算法(DFT),在此采用按时间抽选的基-2FFT算法(DIT)来计算,并使其输入为倒位序、输出为自然顺序。这样FFT程序包括变址(倒位序)和L级递推计算( N = 2L,L为正整数)两大部分。

FFT变址(倒位序)流程图如图5所示。由图5可知,在进行倒位序变址处理时,设A(I)表示存放原自然顺序输入数据的内存单元,A(J)表示存放倒位序数的内存单元,I,J=0.,1,2,…,N-1(N=64)。按倒位序规律,当I=J时,不用变址;当IJ时,就不需要变址,否则变址两次等于不变址。

在实现倒位序转换后,按时间抽选的基-2FFT算法流程图如图6所示。从图中可知,FFT整个L级递推过程由三个嵌套循环构成。外层的一个循环控制L( L = l og2N= l og64 = 6)级的顺序运算;内层的两个循环控制同一级(M相同)各碟形的运算,其中最内一层循环控制同一种(即 Wr中的r相同)碟形运算,而中间一层

N循环控制不同种碟形结的运算。I,IP是一个碟形结两个结点。

针对电能质量监测系统的特殊要求,采用以上软件设计,结合系统的硬件连接,可以实现对电能质量各项指标的实时采集和分析。并通过判据整定,记录超差数值,为电力系统的运行状况的改善提供科学依据。由于DSP的软件编程有其本身的特点,在算法实现的过程中还注意了以下几点:仔细研究DSP器件内部结构并灵活使用其指令系统,充分发挥了芯片的性能;尽可能使用并行指令、寄存器,用内部存储器代替外部存储器;应用单指令和块重复结构,避免循环花费附加的时间;计算时尽量避免指令系统本身没有提供的运算,在必须进行迭代运算时,注意迭代次数与计算精度的关系。

4.结论

本文在分析了电能质量的基本理论后,通过具体了解国内外现有监测仪器的结构、性能,选用了具有计算处理能力强、运算速度快等优点的DSP芯片,确定了电能质量监测系统的实施解决方案,重点进行系统软件的优化设计。针对系统所要完成的功能,进行了主程序及实现各部分功能的子程序设计。首先考虑系统程序应该作到功能完善,尽量简洁,以减少运行时间。其次为了既能实时采样,还能实时分析,应用了中断技术,尽量减少DSP主程序运行的时间开销。

[1]肖逾男.基于DSP的自适应数据采集卡前向通道的实现[J].form httpalwww.Dianzi.net,2004.

[2]任震.小波分析及其在电力系统中的应用[M].北京:中国电力出版社,2003:23-35.

[3]谢希仁.计算机网络(第四版)[M].北京:电子工业出版社,2003:8-10.

徐金雄(1984—),湖北黄梅人,三峡电力职业学院助理讲师,研究方向:电力系统自动化。

猜你喜欢
管脚流程图代码
创世代码
创世代码
创世代码
创世代码
基于图像处理的异型电子元器件管脚偏移误差检测方法研究
专利申请审批流程图
专利申请审批流程图
CMOS数字IC管脚电容的估算与测量
宁海县村级权力清单36条
HC08芯片JVT测试方法的探究