由于电力系统中非线性电子元件的大量使用,使得谐波污染问题日益严重,当谐波含量超过一定限度时就可能对电网和用户造成极大的危害,且增加线路损耗,降低线路传输能力,干扰通信信号等。因此,应该积极寻找一种治理谐波污染的有效手段。
目前有源电力滤波器(APF)是治理电网谐波污染的一种有效手段,APF的补偿原理是实时产生一个与系统中的无功和谐波电流大小相等、方向相反的补偿电流,用以抵消非线性负载产生的无功和谐波电流,使流入电网的电流全是有功分量,因此无功和谐波电流的实时检测就成为实时补偿的关键。而谐波及无功电流的检测实质就是低通滤波器的设计。本文利用MATLAB中的FDATool实现了对数字低通滤波器模型的快速设计,并采用VHDL语言在FPGA上实现。
1 低通滤波器的选择
滤波器有模拟滤波器和数字滤波器两种。这里选用数字滤波器,因为它相对于模拟滤波器更容易进行滤波代数运算,而且它不会像模拟滤波器那样随时间、温度、电压漂移,还有就是它能实现近似理想的响应和线性相位,所以能更好地达到谐波检测的实时性和准确性的要求。
数字滤波器有无限冲激响应(IIR)系统和有限冲激响应(FIR)系统两种。虽然FIR滤波器相对于IIR滤波器可以得到严格的线性相位,但在相同技术指标下,IIR滤波器由于存在输出对输入的反馈,因而可用大约1/10"1/5FIR滤波器的阶数来满足指标的要求,从而使得所用空间少,运算次数少,实时性强。由于谐波检测环节对相位要求不高,而对计算速度要求极高,因此选择IIR滤波器作为研究的对象。
2 利用MATLAB设计IIR滤波器
目前数字滤波器的设计有许多现成的高级语言设计程序,但他们都存在设计效率较低,不具有可视图形,不便于修改参数等缺点,而Matlab为数字滤波的研究和应用提供了一个直观、高效、便捷的工具。它以矩阵运算为基础,把计算、可视化、程序设计融合到了一个交互式的工作环境中。尤其是Matlab工具箱使各个领域的研究人员可以直观而方便地进行科学研究与工程应用。其中的信号处理工具箱、图像处理工具箱、小波工具箱等更是为数字滤波研究的蓬勃发展提供了可能。
2.1 在Matlab中进行仿真设计
许多文献中在利用Matlab设计IIR数字滤波器时,采用先设计一个模拟滤波器,然后利用脉冲响应不变法或者双线性变换法,将模拟滤波器的传输函数转换成数字滤波器的系统函数,设计过程比较复杂,编写的程序比较长,没有很专业的知识是设计不出来的。而本文利用FDAFool工具可以非常方便地设计出数字滤波器。
FDATool(Filter Design&Analysis Tool)是Matlab中的一种图形用户工具,为滤波器的设计提供了一个综合、简便的图形用户界面。本文要设计一个谐波检测电路中的低通滤波器,对于三相电路而言,其交流侧主要是5次和7次谐波,因此本文设计的低通滤波器的指标为:模拟信号采样频率Fs=2000Hz,通带截止频率Fpass=100Hz,阻带截止频率Fstop=200Hz,通带波动不大于0.1dB,阻带衰减不小于32dB。在图1界面中设置好参数,并且选择IIR中的Elliptic滤波器,然后点击Design filter,即可得到所设计滤波器的模型:Order(阶)=4,Sections(节)=2,并可观察其幅度响应、相位响应,还可以观察脉冲响应、阶跃响应、滤波器的零极点绘制图以及系统函数的各个系数等指标。
2.2 利用Simulink检验滤波效果
打开Simulink新建一个文件untitledl如图2,在FDATool界面中点击Realize Model,将设计好的滤波器模型导入Simulink中,然后添加三个频率分别为50Hz、250Hz、350Hz的正弦波,利用Scope见察通过数字低通滤波器Filter的滤波效果。 [page]
Scopel显示的是50Hz正弦波,Scope2显示的是50Hz叠加上250Hz、350Hz正弦波后的波形,Scope显示的是通过我们设计的低通滤波器后的波形,对比图3(a)、(b)可以看出,滤波后的波形保留了50Hz的信号,且略有延迟,并将高频部分有效地滤除,说明设计的滤波器符合要求。
3 数字低通滤波器FPGA实现
数字滤波器的实现方法一般有以下几种:
(1)采用加法器、乘法器、延时器设计专用的滤波电路。
(2)在通用计算机系统中加上专用的加速处理机设计实现。
(3)用通用的可编程DSP芯片实现。
(4)用专用的DSP芯片实现。在一些特殊的场合,要求的信号处理速度极高,用通用DSP芯片很难实现。这种芯片将相应的滤波算法在芯片内部用硬件实现,无需进行编程。
(5)采用FPGA/CPLD设计实现。
在上述几种方法中,第(2)种方法的缺点是速度较慢,一般可用于DSP算法的模拟。第(1)、(4)种方法专用性强,应用受到很大的限制。第(3)、(5)种方法都可以通过编程来实现各种数字滤波,使用DSP器件实现虽然简单,但由于程序顺序执行,执行速度必然不快。FPGA有着规整的内部逻辑阵列和丰富的连线资源,特别适合于数字信号处理任务,相对于串行运算为主导的通用DSP芯片来说,其并行性和可扩展性更好。但长期以来,FPGA一直被用于系统逻辑或时序控制上,很少有信号处理方面的应用,其原因主要是因为在FPGA中缺乏实现乘法运算的有效结构。现在这个问题得到了解决,使FPGA在数字信号处理方面有了长足的发展。
文献中是在MATLAB中设计出数字低通滤波器后,得到其系统函数H(z)的系数,然后将系数转换为二进制,再利用VHDL语言进行编程,而编程的过程非常繁琐。
本文利用FDATool可以直接得到VHDL文件,在其菜单栏中的选择Fargets\Generate HDL,在打开的界面中选择VHDL file,建立文件名为filter.vhd,同时可以得到测试文件filter tb.vhd。利用QuartusII软件打开以上文件进行编译、综合,最后将其下载到FPGA中即可实现低通滤波器的功能。
4 结束语
本文利用Matlab中的FDATool实现了IIR数字低通滤波器的设计及仿真,设计过程简单、直接,大大缩减了设计开发的时间。采用FPGA进行滤波器的硬件设计,能够达到谐波检测实时性和准确性的要求,为电力有源滤波器谐波检测中低通滤波器的设计提供了参考。同时在实际应用中,可以方便地对滤波器参数进行修改,很容易实现其他各种滤波器的设计,具有一定的工程设计参考价值。
关键字:谐波检测 数字低通滤波器 MATLAB
引用地址:基于谐波检测中的数字低通滤波器的MATLAB设计
目前有源电力滤波器(APF)是治理电网谐波污染的一种有效手段,APF的补偿原理是实时产生一个与系统中的无功和谐波电流大小相等、方向相反的补偿电流,用以抵消非线性负载产生的无功和谐波电流,使流入电网的电流全是有功分量,因此无功和谐波电流的实时检测就成为实时补偿的关键。而谐波及无功电流的检测实质就是低通滤波器的设计。本文利用MATLAB中的FDATool实现了对数字低通滤波器模型的快速设计,并采用VHDL语言在FPGA上实现。
1 低通滤波器的选择
滤波器有模拟滤波器和数字滤波器两种。这里选用数字滤波器,因为它相对于模拟滤波器更容易进行滤波代数运算,而且它不会像模拟滤波器那样随时间、温度、电压漂移,还有就是它能实现近似理想的响应和线性相位,所以能更好地达到谐波检测的实时性和准确性的要求。
数字滤波器有无限冲激响应(IIR)系统和有限冲激响应(FIR)系统两种。虽然FIR滤波器相对于IIR滤波器可以得到严格的线性相位,但在相同技术指标下,IIR滤波器由于存在输出对输入的反馈,因而可用大约1/10"1/5FIR滤波器的阶数来满足指标的要求,从而使得所用空间少,运算次数少,实时性强。由于谐波检测环节对相位要求不高,而对计算速度要求极高,因此选择IIR滤波器作为研究的对象。
2 利用MATLAB设计IIR滤波器
目前数字滤波器的设计有许多现成的高级语言设计程序,但他们都存在设计效率较低,不具有可视图形,不便于修改参数等缺点,而Matlab为数字滤波的研究和应用提供了一个直观、高效、便捷的工具。它以矩阵运算为基础,把计算、可视化、程序设计融合到了一个交互式的工作环境中。尤其是Matlab工具箱使各个领域的研究人员可以直观而方便地进行科学研究与工程应用。其中的信号处理工具箱、图像处理工具箱、小波工具箱等更是为数字滤波研究的蓬勃发展提供了可能。
2.1 在Matlab中进行仿真设计
许多文献中在利用Matlab设计IIR数字滤波器时,采用先设计一个模拟滤波器,然后利用脉冲响应不变法或者双线性变换法,将模拟滤波器的传输函数转换成数字滤波器的系统函数,设计过程比较复杂,编写的程序比较长,没有很专业的知识是设计不出来的。而本文利用FDAFool工具可以非常方便地设计出数字滤波器。
FDATool(Filter Design&Analysis Tool)是Matlab中的一种图形用户工具,为滤波器的设计提供了一个综合、简便的图形用户界面。本文要设计一个谐波检测电路中的低通滤波器,对于三相电路而言,其交流侧主要是5次和7次谐波,因此本文设计的低通滤波器的指标为:模拟信号采样频率Fs=2000Hz,通带截止频率Fpass=100Hz,阻带截止频率Fstop=200Hz,通带波动不大于0.1dB,阻带衰减不小于32dB。在图1界面中设置好参数,并且选择IIR中的Elliptic滤波器,然后点击Design filter,即可得到所设计滤波器的模型:Order(阶)=4,Sections(节)=2,并可观察其幅度响应、相位响应,还可以观察脉冲响应、阶跃响应、滤波器的零极点绘制图以及系统函数的各个系数等指标。
2.2 利用Simulink检验滤波效果
打开Simulink新建一个文件untitledl如图2,在FDATool界面中点击Realize Model,将设计好的滤波器模型导入Simulink中,然后添加三个频率分别为50Hz、250Hz、350Hz的正弦波,利用Scope见察通过数字低通滤波器Filter的滤波效果。 [page]
Scopel显示的是50Hz正弦波,Scope2显示的是50Hz叠加上250Hz、350Hz正弦波后的波形,Scope显示的是通过我们设计的低通滤波器后的波形,对比图3(a)、(b)可以看出,滤波后的波形保留了50Hz的信号,且略有延迟,并将高频部分有效地滤除,说明设计的滤波器符合要求。
3 数字低通滤波器FPGA实现
数字滤波器的实现方法一般有以下几种:
(1)采用加法器、乘法器、延时器设计专用的滤波电路。
(2)在通用计算机系统中加上专用的加速处理机设计实现。
(3)用通用的可编程DSP芯片实现。
(4)用专用的DSP芯片实现。在一些特殊的场合,要求的信号处理速度极高,用通用DSP芯片很难实现。这种芯片将相应的滤波算法在芯片内部用硬件实现,无需进行编程。
(5)采用FPGA/CPLD设计实现。
在上述几种方法中,第(2)种方法的缺点是速度较慢,一般可用于DSP算法的模拟。第(1)、(4)种方法专用性强,应用受到很大的限制。第(3)、(5)种方法都可以通过编程来实现各种数字滤波,使用DSP器件实现虽然简单,但由于程序顺序执行,执行速度必然不快。FPGA有着规整的内部逻辑阵列和丰富的连线资源,特别适合于数字信号处理任务,相对于串行运算为主导的通用DSP芯片来说,其并行性和可扩展性更好。但长期以来,FPGA一直被用于系统逻辑或时序控制上,很少有信号处理方面的应用,其原因主要是因为在FPGA中缺乏实现乘法运算的有效结构。现在这个问题得到了解决,使FPGA在数字信号处理方面有了长足的发展。
文献中是在MATLAB中设计出数字低通滤波器后,得到其系统函数H(z)的系数,然后将系数转换为二进制,再利用VHDL语言进行编程,而编程的过程非常繁琐。
本文利用FDATool可以直接得到VHDL文件,在其菜单栏中的选择Fargets\Generate HDL,在打开的界面中选择VHDL file,建立文件名为filter.vhd,同时可以得到测试文件filter tb.vhd。利用QuartusII软件打开以上文件进行编译、综合,最后将其下载到FPGA中即可实现低通滤波器的功能。
4 结束语
本文利用Matlab中的FDATool实现了IIR数字低通滤波器的设计及仿真,设计过程简单、直接,大大缩减了设计开发的时间。采用FPGA进行滤波器的硬件设计,能够达到谐波检测实时性和准确性的要求,为电力有源滤波器谐波检测中低通滤波器的设计提供了参考。同时在实际应用中,可以方便地对滤波器参数进行修改,很容易实现其他各种滤波器的设计,具有一定的工程设计参考价值。
上一篇:基于SOPC的任意波形发生器设计
下一篇:基于用CPLD实现FIR数字滤波器的设计
推荐阅读最新更新时间:2024-03-30 22:54
MATHWORKS 发布2010B版 MATLAB 和 SIMULINK
MathWorks 今日发布 2010b(R2010b) 版 MATLAB 和 Simulink 产品系列。此版本中扩展的工具和功能集包括: • MATLAB 中的新通信系统设计功能 • 自动化 PID 控制调整 • GigE Vision 硬件标准支持 • 增强的 Simulink 和 Stateflow 支持创建可重用的模型 R2010b 还引入了 SimRF,这添加了 RF 接收器基础架构的系统级建模。另外,该版本还更新了包括 Polyspace 代码验证产品在内的 84 种 MathWorks 产品。 支持高级编程的 MATLAB 更新包括自定义枚举数据类型、64 位整数算术以及一些开发环境增强功
[半导体设计/制造]
FPGA的TCP/IP通信协议与Matlab通信系统研究
O 引言 近年来,随着信息技术的发展,网络化日加普遍,以太网被广泛应用到各个领域。例如在数据采集领域,一些小型监测设备需要增加网络实现远程数据传输的功能,只要那些设备上增加一个网络接口并实现了TCP/IP协议,就可以方便地接入到现有的网络中,完成远程传输数据的相关功能,所以小型设备的网络技术一直是大家关注的焦点。另一方面,随着单片FPGA的逻辑门数不断增大,人们开始考虑将整个嵌入式系统集成到单片FPGA来实现,于是2001年 Altera第一次提出了可编程片上系统(SOPC)概念,并且推出了第一款嵌入式处理器软核Nios以及之后的第二代Nios II以及相应的开发环境,此后Xilinx也推出了MicroBlaze微处
[嵌入式]
基于MATLAB中calibration toolbox的相机标定应用研究
随着人们对可视化要求的提高,计算机视觉作为一门新兴的高科技学科,被越来越多地应用于产品在线质量监控、微电子器件的自动检测、各种模具三维形状的测量及生产线中机械手的定位与瞄准等 领域。相机标定作为计算机视觉中最基础的一部分,已形成了很多种标定方法,有关理论问题也得到了较好的解决,当前的研究工作应该集中于如何针对具体的实际应用问题,采用特定的简便、实用、快速、准确的标定方法 。 MATLAB中的相机标定工具箱(camera calibration toolbox)提供了各种例程以及标定方法,非常详细,甚至还提供了方格型的靶标。用户接口方便灵活,在相机标定时使用非常简单,而且该工具箱的C源码在开源计算机视觉库中开放,为深入学习进行二
[工业控制]
Matlab图像增强与复原技术在SEM图像中的应用
0引 言 根据国内外的相关文献,研究和发展图像处理工具,改善图像质量是当今研究的热点。图像增强与复原是一种基本的图像处理技术。其按照特定的需要突出一幅图像中的某些信息或强化某些感兴趣的特征,将原来不清晰的图片变得清晰,使之改善图像质量和丰富信息量,提高图像的视觉效果和图像成分的清晰度,加强图像判读和识别效果的图像处理的方法。图像增强和复原的目的是对图像进行加工,以得到视觉上更好、更加容易区分的图像。 1图像处理方法 1.1 直方图均衡化 直方图均衡化(Histogran Equalization,HE)是利用直方图的统计数据进行直方图的修改,能有效地处理原始图像的直方图分布情况,使各灰度级具有均匀的概率
[工业控制]
全国大学生数学建模竞赛中,哈工大被禁用了Matlab
今年6月,由于受到实体清单影响,哈工大和哈工程被MathWorks禁止使用MATLAB。 近日,在全国大学生数学建模竞赛中,组委会初步认定哈工大参赛队伍不能使用MATLAB。这也意味着,在同一场竞赛中,哈工大将处于劣势。 6月17号,哈工大也发布了此次2020年全国大学生数学建模竞赛的报名通知,通知要求参赛队伍,务必认真阅读和理解《全国大学生数学建模竞赛章程和参赛规则(2019年修订稿)》,严格按照相关要求参赛。 值得一提的是,MathWorks(中国)还是全国大学生建模竞赛的赞助商之一。
[手机便携]
基于Matlab的高频开关电源功率因数测量电路研究
0 引言 高频开关电源的功率因数是非常重要的一个参数,直接决定着产品是否符合通用的谐波标准,衡量着产品的优劣。为了减小谐波、提高功率因数,高频开关电源普遍采用了功率因数校正电路来改善电流波形。为了在设计阶段就了解高频开关电源的功率因数值,方便进行功率因数校正电路参数的优化,就需要进行功率因数的测量。本文基于Matlab仿真软件设计并给出了两种功率因数测量的电路,用这两种电路对RC正弦电路进行了功率因数仿真测量和计算验证;并把这两种仿真测量电路应用于三相大功率恒流充电电源的功率因数仿真测量中,最后通过实验验证了其可靠性。 1 功率因数的定义 功率因数用于衡量输入有功功率与输入视在功率中的比例,用公式表示为: 功率因数
[电源管理]
基于Matlab的TMS320LF2407程序快速设计
TMS320LF2407 是TI公司主推的一种高性能、低价格DSP处理器,其处理速度达到30 MIPS,片内处理集成RAM、Flash及定时器外,还集成了A/D转换器、PWM控制器及CAN总线控制器等模块,特别适合于电机、电源变换等实时要求高的控制系统。但是通常设计DSP程序的方法是,在DSP的集成开发环境CCS中用C语言设计,需要花费大量的时间用来编写和输入程序代码。在Matlab中用图形化的方式设计DSP的程序,能够缩短产品的开发时间。 1 Embedded Target for T1 C2000 DSP介绍 目前,新版本的Matlab软件(Matlab7.O)已经集成了TI公司C2000、C5000、C6000系
[工业控制]