新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 单片机中最小二乘方滤波器的向量测量和功率计算

单片机中最小二乘方滤波器的向量测量和功率计算

作者: 时间:2012-02-27 来源:网络 收藏

如果输入电压是相电压,则:

P=Pa+Pb+Pc=ua×ia+ub×ib+uc×ic

=ua×ia-ub×(ia+ic)+uc×ic

=Ua×Ia×cos(θua-θia)-Ub×Ia×cos(θub-θia)

-Ub×Ic×cos(θub-θic)+Uc×Ic×cos(θuc-θic) (16)

将上式中的余弦函数展开后,再钭(6)和(7)式的对应结果分别代入即可。

无功的计算只需将(14)、(15)和(16)式中的余弦运算改为相应的正弦运算即可。

4 基于应用的优化措施

从目前市场情况来看,虽然性能在不断提高,如INTEL从8位、16位到32位不断推陈出新,但真正得以广泛采用的并不是性能最好的产品。从实际应用来看,有时必须面对一个受限制的客观现实。就本应用来说,采用以下措施可大大提高程序的计算速度。

4.1 变浮点运算为整数运算

对于(4)~(10)式来说,采用C或PL/M高级语言进行浮点运算既方便,精度又高。但与整数运算相比,浮点运算速度要慢得多。因此,为提高计算速度,应尽量采用整数运算。从工程实际来看,A/D转换后的结果一般是双字节整数,可与放大10位的最小二乘直接运算,则(4)式变为:

X[3]=5×U[2]-10×U[3]+5×U[4] (17)

(5) 式变为:

X[4]=5×U[1]-10×U[2]+5×U[3] (18)

(17)、(18)式只有6次4字节的长整数乘法和4次加法。即使对12位A/D而言,(17)、(18)式的计算结果也不会溢出。由于扩大10倍时是整数,没有四舍五入,因此计算过程无任何附加误差。

4.2 快速求平方根法

从(4)~(10)式来看,耗时最多的是(10)式,即求平方根运算,获得基波的峰-峰值。

如果直接采用标准浮点库提供的开平方函数,16MHz的80196KC需3ms左右。若采用文献[4]中的整数查表法,或文献[5]提供的精度为1%的二分法,相同条件下求根所需时间一般在100~300μs之间,计算速度提高10倍以上。

本文提出的每周波4个采样点的可在一般单片机中实现工频信号的实时相量测量。算法进一步优化后,可在一个周波的时间窗内对多路信号作出实时反映,满足一般保护的技术要求。该算法还可以实现其他保护和测量功能。

滤波器相关文章:滤波器原理


滤波器相关文章:滤波器原理


电源滤波器相关文章:电源滤波器原理


数字滤波器相关文章:数字滤波器原理

上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭