用TMS320LF2407和FPGA实现电能质量监测
摘要:提出用TMS320LF2407和FPGA实现电能监测的一种方案,阐述各模块的设计和实现方法,本方案中,FPGA用于采样16路交流信号并进行64次谐波分析;DSP和于电力参数的计算。为了提高其通用性,还用FPGA设计了与外界通信的并口、串口模块,并实现了同TMS320LF2407的并行和串行通信。
关键词:电能质量DSPFPGAFFTUART
随着人们对电能质量要求的日益提高,如何保证电能质量就成为一个热门话题。电能质量监测的一项主要内容是谐波检测,即对多路模拟信号进行采集并进行谐波分析。本系统对16路50Hz模块信号进行采样并进行64次谐波分析。如果仅仅依靠一个MCU(单片机或控制型DSP)来进行处理,往往达不到实时性要求,所以采用DSP和FPGA相结合的方法。利用DSP对电力参数进行计算,利用FPGA进行谐波分析。
系统主要包括数据采集电路、ADC模块、FPGA模块、DSP模块及上位机显示模块,其结构如图1所示。
图1系统框图
1数据采集电路和ADC模块
对经过互感器调理成-3.3~+3.3V(ADC测量的最大量程)的信号进行采样。根据香农抽样定理,对最高频率fc的连续信号进行抽样,须保留其全部内容。抽样频率fs满足条件为:fs≥2fc。如图1系统框图所示,本系统中,ADC采用的是MAX125,其单通道的转换时间为3μs。若利用内部的采样保持器,可以同时采样4路信号,转换时间为12μs。为了同时采集已经过调理的16路模拟信号,必须对其进行采样/保持。在前向通道使用16路采样/保持器(SMP04),再使用多路开关(MAX306)依次选择这16路信号,输入到MAX125的一个通道(CH1A),并由FPGA发出转换信号CONVST。待转换结束,MAX125发出INT中断,通知FPGA读取转换结果。总之,由FPGA中的ADC控制模块完成对MAX125、MAX306及SMP04的控制以及对MAX125信号的中断响应。
2FPGA模块
FPGA模块主要完成通信、数据采集、ADC模块的数据读取、保存及底层的信号预处理计算——谐波分析。FPGA工作流程如图2所示。其子模块有:ADC控制模块、ADC采样数据保存区、FFT工作RAM、FFT运算结果保存区、开方修改正表、开方运算单元、谐波系数存放区以及串行、并行通信控制模块。
图2FPGA工作流程图
(1)ADC控制模块
图3所示ADC控制模块除了完成对MAX125、MAX306及SMP04的控制外,还要响应MAX125的中断(INT)来读取转换结果,并将其保存到ADC采样数据保存区。如图3所示,为了更准确地产生控制时序,对系统的采样周期及相位的锁定都采取了相应的处理。待采样信号先经过方波转换电路,将其转换成0~+3.3V的方波信号,再经过FPGA中的数字锁相环模块,根据外部时钟和计数器测量出其周期,作为下一个待采样信号的采样周期。这样就减小了由于待采样信号频率的漂移而带来的采样周期的误差。本系统采用的数字锁相环在FPGA中实现,其具体的性能为:锁相环的捕捉带Δfmax=12.5Hz,锁相频率为50Hz±12.5Hz=37.5~62.5Hz,随后产生的采样周期Ts能够满足实际应用的要求。同时,根据多路开关信号和计数器,产生ADC采样数据保存区地址,保存来自MAX125的14位数 《用TMS320LF2407和FPGA实现电能质量监测》
本文链接地址:http://www.oyaya.net/fanwen/view/174644.html
关键词:电能质量DSPFPGAFFTUART
随着人们对电能质量要求的日益提高,如何保证电能质量就成为一个热门话题。电能质量监测的一项主要内容是谐波检测,即对多路模拟信号进行采集并进行谐波分析。本系统对16路50Hz模块信号进行采样并进行64次谐波分析。如果仅仅依靠一个MCU(单片机或控制型DSP)来进行处理,往往达不到实时性要求,所以采用DSP和FPGA相结合的方法。利用DSP对电力参数进行计算,利用FPGA进行谐波分析。
系统主要包括数据采集电路、ADC模块、FPGA模块、DSP模块及上位机显示模块,其结构如图1所示。
图1系统框图
1数据采集电路和ADC模块
对经过互感器调理成-3.3~+3.3V(ADC测量的最大量程)的信号进行采样。根据香农抽样定理,对最高频率fc的连续信号进行抽样,须保留其全部内容。抽样频率fs满足条件为:fs≥2fc。如图1系统框图所示,本系统中,ADC采用的是MAX125,其单通道的转换时间为3μs。若利用内部的采样保持器,可以同时采样4路信号,转换时间为12μs。为了同时采集已经过调理的16路模拟信号,必须对其进行采样/保持。在前向通道使用16路采样/保持器(SMP04),再使用多路开关(MAX306)依次选择这16路信号,输入到MAX125的一个通道(CH1A),并由FPGA发出转换信号CONVST。待转换结束,MAX125发出INT中断,通知FPGA读取转换结果。总之,由FPGA中的ADC控制模块完成对MAX125、MAX306及SMP04的控制以及对MAX125信号的中断响应。
2FPGA模块
FPGA模块主要完成通信、数据采集、ADC模块的数据读取、保存及底层的信号预处理计算——谐波分析。FPGA工作流程如图2所示。其子模块有:ADC控制模块、ADC采样数据保存区、FFT工作RAM、FFT运算结果保存区、开方修改正表、开方运算单元、谐波系数存放区以及串行、并行通信控制模块。
图2FPGA工作流程图
(1)ADC控制模块
图3所示ADC控制模块除了完成对MAX125、MAX306及SMP04的控制外,还要响应MAX125的中断(INT)来读取转换结果,并将其保存到ADC采样数据保存区。如图3所示,为了更准确地产生控制时序,对系统的采样周期及相位的锁定都采取了相应的处理。待采样信号先经过方波转换电路,将其转换成0~+3.3V的方波信号,再经过FPGA中的数字锁相环模块,根据外部时钟和计数器测量出其周期,作为下一个待采样信号的采样周期。这样就减小了由于待采样信号频率的漂移而带来的采样周期的误差。本系统采用的数字锁相环在FPGA中实现,其具体的性能为:锁相环的捕捉带Δfmax=12.5Hz,锁相频率为50Hz±12.5Hz=37.5~62.5Hz,随后产生的采样周期Ts能够满足实际应用的要求。同时,根据多路开关信号和计数器,产生ADC采样数据保存区地址,保存来自MAX125的14位数 《用TMS320LF2407和FPGA实现电能质量监测》