一种基于迭代计算逻辑的正弦信号分析算法
2022-03-19廖于翔帅骁睿李可维孔祥伟张正卿
廖于翔,帅骁睿,李可维,孔祥伟,张正卿
一种基于迭代计算逻辑的正弦信号分析算法
廖于翔,帅骁睿,李可维,孔祥伟,张正卿
(武汉第二船舶设计研究所,武汉 430205)
本文针对电力监测中对于正弦信号的分析计算问题,提出了一种基于FPGA平台、以迭代计算逻辑为运算核心的正弦信号分析算法。本文介绍了信号分析的数学原理,给出了计算步骤。为了解决运算中的除法、开平方根、求正弦、求反正弦这些较为复杂的数学计算问题,在FPGA中设计了基于数字逻辑的迭代计算逻辑。本算法集成度高,对硬件资源消耗较少,在功能开发方面具有很强的灵活性。基于此算法,本文给出了具有触发录波、信号分析、电能质量运算的多通道正弦信号数据采集及分析装置的设计方案,这对于电力监测装置的研发具有一定的参考价值。
正弦信号分析 FPGA 算法 设计数据处理
0 引言
现代电网以大机组、大电网、超高压、长距离、重负荷、大区域联网、交直流联合、风力及太阳能等新能源的大规模并网为特点[1~2],在强有力地保证社会日益增长的用电需求的同时,其复杂程度也越来越高,因此,也对电力系统的状态检测与故障诊断技术提出了更高的要求。
目前,电力系统主要通过能量管理系统(EMS)、广域测量系统(WAMS)、动态安全分析(DSA)、自动发电控制、自动电压和无功控制、安全自动装置等系统监测和控制电力系统的运行状态和稳定性[3]。
在电力系统的状态监测中,对采集的工频正弦信号进行采集、分析计算后,得到的待测信号的幅值、频率、相位、谐波等特征信息,可用于反映电网或设备的运行状态,是极为重要的数据。例如广域测量中的同步相量、故障录波的触发判断、供电的电能质量等,都需要以正弦信号的分析数据为基础。因此,准确而快速的正弦信号分析算法,在电力系统监测中具有重要作用。
本文针对电力监测中对于正弦信号的分析计算问题,提出了一种以FPGA为开发平台的正弦信号分析算法。算法以递归DFT、再采样、多阶滤波为计算原理,以具有多种数学运算功能的迭代运算逻辑为数字逻辑计算核心,具有硬件资源开销小、后续可开发性强等特点。
在此算法的计算上,本位给出了具有触发录波、信号分析、电能质量运算的多通道正弦信号数据采集及分析装置的设计方案,对于电力监测装置的研发具有实际的应用意义。
1 正弦信号分析算法原理
通过AD转换对正弦信号进行数据采集后,首先通过递归DFT运算得到信号的相量复数表达形式。相对DFT运算,递归DFT具有更小的计算量,其计算公式为:
公式(1)中,、为上一个递归DFT计算时得到的待测正弦信号的的复数表现形式,为实部,为虚部。为数据窗内参与计算的瞬时值的点数。等于2p/。、为新数据窗计算得到的待测正弦信号的实部与虚部。x为滑窗移动一个单位后最新时刻的待测信号波形瞬时采样点,x为从最新窗中移去的采样点。
将连续两个数据窗计算得到的待测信号复数形式转换为相量形式:
计算相邻两次递归DFT运算的相位差:
在计算时需要进行单调化处理以保证D大于0。连续的滑窗计算得到个D数值,令其分别为D1、D2、……、Dm。令S1为这个个数值之和,下一个数据窗计算得到最新值Dm+1,则采用递归算法更新S1值:
公式(4)描述过程为第一阶平均滤波过程。同样,存储个S1数值,令其为S11、S12、……、S1,令S2为这个个数值之和。采用类似的递归计算公式,每次滑窗计算后更新S2:
公式(5)描述过程为第二阶平均滤波过程。采用同样的递归算法,共进行四阶滤波,最终得到的结果为S4与待测信号频率f的关系为,
公式(6)中,s为采样率。当待测信号频率偏移了额定频率时,采用DFT算法得到的计算结果会耦合接近二次谐波的误差[4]。为减小误差,采用了(4)~(6)式描述的多阶平均滤波算法,可有效滤除因为频率偏差而导致的相位差数据波动,由此计算得到的待测信号频率,具有较高精度。
得到待测信号的精确频率后,通过再采样算法,可以得到与待测信号同步的信号采样值。其计算公式为,
其中,x为待测波形第时刻的瞬时采样点。为与待测信号频率的理论同步采样点与实际采样点之间的相位差,其计算公式为:
再采样计算后得到个同步采样点:1'、2'、……、x'。对再采样点进行DFT运算,将复数计算结果转换为相量形式后,可得到待测信号的幅值、相位,直流分量、谐波幅值。此计算结果具有较高精度。
2 迭代计算逻辑的FPGA实现
在正弦信号的测量算法中,除了常规的加、减、乘法,还使用了除法、求平方根、求正弦(DFT、再采样算式中)、求反正弦(将复数转为相量)这些复杂的数学运算。在FPGA中,这些算法都要采用数字逻辑的方式实现,在兼顾实现的基础上还要尽可能减少对于各类硬件资源的消耗,是FPGA算法设计中的重点与难点。
在FPGA设计中,虽然可通过使用IP核的算法实现部分数学运算[5],但是这些IP核进行了封装,单个IP核往往只对应于一种功能,对于本系统而言灵活性和拓展性不足。
在本设计中,设计了迭代计算逻辑模块,专门用于解决计算过程中乘法、除法、平方根、正弦、反正弦的数学计算问题,模块的结构如图1所示。
图1 迭代计算逻辑模块结构图
模块主要由四个乘法器、一个加法器、一个减法器,数据选择逻辑、迭代计算逻辑、只读存储器ROM组成。
迭代运算模块计算类型由iCal_State决定,具有除法运算(CAL_DIV)、开方运算(CAL_SQRT)、正弦计算(CAL_SIN)、反正弦计算(CAL_ASIN)、普通乘法运算(CAL_MUL)这几种功能,其模块输出oR与数据输入iX,iY,iZ的关系为:
当iCal_State等于CAL_MUL时,模块输出oC1 ~oC4、oD1、oD2与数据输入iA1 ~iA4、iB1 ~iB4、之间的计算关系为:
公式(9)、(10)说明,改变iCal_State的数值,迭代计算模块既可以用于特定的除法、开方、正弦、反正弦计算;也可以用于外部输入量的乘法、乘加、乘减运算。此模块具有多种功能,所有运算最多依赖于四个乘法器,最大程度上减小了用于数学计算的硬件资源开销。
在具体特定的数学运算方面,采用了迭代计算的方法,将复杂的数学运算转换为乘法与比较运算,从而实现了除法、开方、正弦、反正弦计算。这些运算的数学问题描述为:已知单调函数,函数输入参数为,求()的数值。
迭代算法的解法为:令函数的反函数为单调增函数-1,初始化时,令最大可能计算结果的1/2为,初始迭代计算步进为Δ=/ 2,初始迭代次数= 1,计算-1() =';比较与',有,
每轮迭代计算更新值,再进行下一轮计算,直至='或Δ=0或大于设定值。此时即得到计算结果() =。
对于除法计算() =/,其反函数为-1() =•;开方运算() = sqrt() 的反函数为-1() =2。两者通过迭代算法,都顺利转换成了乘法和比较运算。
正弦计算sin()( 0º≤≤)则需要稍加变动。在ROM中存储了计算好的特定角度的正弦值、余弦值,这些数值包括:
迭代计算初始化时令= 0、= sin(),比较与大小,有,
其中,公式(13)算式中的正弦值、余弦值的计算通过和差化积公式实现。其中,sin(/2)与cos(/2)的数值已经预先存储于ROM中,通过访问ROM得到。
反正弦计算可以看做是正弦计算的逆过程。数学问题为:已知,求asin()。初始化令=,通过访问ROM获取sin()与cos()的数值,进行比较:
由以上分析可知,正弦计算、反正弦计算转换成了乘加、乘减和比较运算。为了便于三角函数的和差化积运算,故迭代计算模块中配置了4个乘法器,并将两两的计算结果分别再进行了一次加法和减法运算。迭代计算逻辑模块解决了正弦信号计算中复杂的除法、平方根、正弦、反正弦的数学计算问题,且还能用于一般的乘法运算,实现功能的同时最大程度上降低了对于FPGA硬件资源的消耗。
3 算法应用实例
在本文描述算法的基础之上,设计了多通道正弦信号数据采集及分析系统。整个硬件系统设计紧凑,具有录波数据发送、录波触发判断、波形特征信息(幅值、相位、频率、谐波)、电能质量分析等多种功能,系统的硬件结构如图2所示。
图2 基于正弦信号测量算法的应用系统硬件结构图
多通道待测信号被高速AD同步采集,采集波形数据通过通信接口按照一定协议可发送至DSP或上位机。波形数据同时进入信号分析计算逻辑进行分析处理,由此得到每个周期内待测正弦信号的幅值、相位、频率、谐波分量等。
这些计算结果通过与用户配置的触发阈值进行比较。当计算结果超过阈值设定范围时,录波触发判断逻辑即发出带绝对时间的触发信号。上位机接收到此信号后可在波形信息上做出标识,从而实现录波触发的功能。电能质量分析计算逻辑对每个周期的计算结果进行统计,每3s根据电能质量的相关标准定义进行运算,从而得到待测信号电能质量信息。录波触发与电能质量运算的软件计算流程如图3所示。整个硬件系统以FPGA为开发平台,具有较强的灵活性,可实际根据需要增删功能。
图3 计算软件流程
4 结论
对正弦信号的采集、分析和计算,是电力监测设备中的基本而重要的功能。本文提出了一种以FPGA为开发平台、基于复用迭代运算模块的正弦交流信号的分析算法。本文首先详细论述了正弦信号分析计算的原理,然后针对理论算法中除法、开方、求正弦、求余弦这些采用数字逻辑起来实现较为困难的数学运算,给出了一种基于迭代计算逻辑模块的解决方案。迭代计算逻辑模块将复杂的数学运算转换为迭代运算,并通过ROM、复用乘法器、比较运算等,在实现了运算求解的同时,最大程度上降低了硬件资源消耗。在此设计基础之上,给出了具备有触发录波、信号分析、电能质量计算的多通道正弦信号数据采集及分析系统设计方案。本文提出的正弦信号测量算法紧凑而灵活,具有一定的实际应用价值。
[1] 周孝信, 陈树勇, 鲁宗相. 电网和电网技术发展的回顾与展望——试论三代电网[J]. 中国电机工程学报. 2013. 33(22): 1-11.
[2] 罗剑波, 陈永华, 刘强. 大规模间歇性新能源并网控制技术综述[J].电力系统保护与控制, 2014, 42(22): 140-146.
[3] 汤涌, 王英涛, 田芳, 等. 大电网安全分析预警及控制系统的研发[J]. 电网技术, 2012.36(7): 1-11.
[4] A G Phadke, J S Thorp.Synchronized Phasor Measurementsand Their Applications[M]. Springer, 2010.
[5] 刘东华. Xilinx系列FPGA芯片IP核详解[M].电子工业出版社, 2013.
A sinusoidal signal analysis algorithm based on iterative calculation logic
Liao Yuxiang, Shuai Xiaorui, Li Kewei, Kong Xiangwei, Zhang Zhengqing
(Wuhan Second Ship Design and Research Institute, Wuhan 430205, China)
TM93
A
1003-4862(2022)03-0048-04
2021-07-30
廖于翔(1987-),男,工程师。主要从事电力监测技术研究。E-mail: ttdlyx@qq.com