因为毕业设计需要测量功率,但在matlab还没找到合适的模块(可能是水平不够,如果大家有能直接测量的模块请多多指教~),目前综合了一下网上的几个方案,简单的学习并且验证了一下使用方法,供大家参考一下,如有错误,欢迎指正~
首先放一个有功功率的公式,之后的验证就是围绕这个公式进行的。
%20%201、利用Discrete-Time%20Integrator模块
%20关于这个模块的原理,下面这篇博客讲的挺好的,所以就不再分析了,就直接上应用。Simulink常用模块库(Integrator/Discrete-TimeIntegrator)_discrete-time%20integrator-CSDN博客
%20首先,创建两个Sine%20Wave信号源。分别为Sine%20wave1,Sine%20wave2,其内部的配置如下所示,设置频率均为50Hz,其中Sine%20Wave2的相位为90°即。
%20根据公式可以算出,此时的有功功率应该为0。
%20通过功率测量模块进行验证:
%20整体的搭建如下所示。
%20其中Discrete-Time Integrator模块的参数如下,采样时间对应的是powergui中的采样时间。
clock模块用的是默认参数。
最终输出的有功功率的波形如下图所示:
2、利用Mean模块
根据公式以及对比Mean的描述,可以看到可以使用Mean对电压电流瞬时值的乘积做一个平均值。
%20输出的波形如下所示:(看起来好像还可以)
3、利用Integrator模块
主要原理也是积分然后再除以时间。
输出的波形如下图所示(感觉和第一个差不多)
4、三个方法效果比对
下图中,蓝色:方法1,绿色:方法3,红色方法2,可以看到绿色和蓝色的效果基本一致,红色的效果最好。
后续可能也有别的方法~还会继续补充