基于c语言扰动观察法实现MPPT_太阳能发电 —— MPPT

17a299d16aa714910981d2d0aacbe5b2.png

1 MPPT基本原理

受到光照强度的影响,光伏电池的输出特性不是一个稳定的状态,为了实现效率的最大化,最大功率点跟踪就发挥它的作用了。

如下图:

fff49784a373087286bf7dde4dbf4f13.png

这是在恒定光照强度和恒定环境温度下的光伏电池输出P-U曲线。这是一个单峰值的函数曲线,根据实际运行的情况不断地调整光伏电池的输出电压。如果此时运行电压处于U1点,系统会通过比较来判定此时应该增大电压到U2,直到追踪到Um,使其输出功率达到最大值Pm。如果此时工作电压在Um右侧,利用同样的道理进行跟踪,找到Um,只是跟踪的方向不同而已。此过程即我们所说的最大功率点跟踪。

那么,在实际中光照强度是发生变化的,在可变的光照强度下,MPPT的工作原理是怎样的呢?

38c85d2310f89e5c660c79e584b295d2.png

上图是不同光照强度和不同负载下的I-U曲线。在最初的光照强度下,我们假设电池的输出特性和负载特性都是曲线1,此时两者的交点为A1,即为系统初始工作点,可见此时是符合最大功率点工作要求的。当太阳光照强度发生衰减时,电池的输出曲线从1跌落到2.假设原有负载1没有改变,那么系统的工作点便会发生改变到A2,与该光照强度下应有的最大功率点B1产生偏移。那么,想要保持对最大功率点跟踪,使光伏电池系统在最新的最大功率点B1处运行,则需要把负载曲线从1改成2。同样的,若在B1点稳定运行,若太阳光照强度增加,使得光伏电池的输出特性曲线从2回到1,那么此时便会变到B2工作点,这时就需要让负载从曲线2再变回到曲线1,从而确保系统工作在最大功率工作点。

2 MPPT控制方法

MPPT的控制方法,我们大致可以分为三大类:

➤基于参数选择方式的间接控制法

➤基

  • 9
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MPPT(Maximum Power Point Tracking)是太阳能电池板系统中的一种重要控制策略,它可以实现太阳能电池板输出功率的最大化。而扰动观察法(Perturb and Observe,简称P&O)是MPPT控制策略中的一种常用算法。 下面是一个简单的基于C语言的MPPT扰动观察法算法示例: ```c #include <stdio.h> #include <math.h> // 定义太阳能电池板参数 #define Isc 2.5 // 短路电流 #define Voc 20 // 开路电压 #define Vmp 17 // 最大功率点电压 #define Imp 1.5 // 最大功率点电流 // 定义控制参数 #define delta_V 0.01 // 步长 #define delta_I 0.01 // 步长 int main() { // 初始化电池板电压和电流 float V = 0; float I = 0; // 循环计数器和标志位 int count = 0; int flag = 0; // 循环计算 while (1) { // 读取电池板电压和电流 float V_read = V; float I_read = I; // 计算功率 float P = V_read * I_read; // 判断是否达到最大功率点(MPP) if (P > Vmp * Imp) { // 如果当前功率大于最大功率点,则向左扰动 V -= delta_V; flag = 1; } else if (P < Vmp * Imp) { // 如果当前功率小于最大功率点,则向右扰动 V += delta_V; flag = 2; } else { // 当前功率等于最大功率点,退出循环 break; } // 判断是否越界 if (V < 0 || V > Voc) { // 如果电压越界,则退出循环 break; } // 计数器自增 count++; // 判断是否连续扰动两次 if (count > 1 && flag == 1) { // 如果连续向左扰动两次,则向右扰动 V += delta_V; count = 0; } else if (count > 1 && flag == 2) { // 如果连续向右扰动两次,则向左扰动 V -= delta_V; count = 0; } // 打印当前电压和电流 printf("V = %.2f, I = %.2f\n", V, I); } // 打印最大功率点 printf("MPP: V = %.2f, I = %.2f\n", V, I); return 0; } ``` 以上代码仅为示例,实际应用中还需考虑更多因素,如温度、光照强度等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值