• 回复
  • 收藏
  • 点赞
  • 分享
  • 发新帖

(科普贴)全面解剖3KW单相并网逆变器

最近看了论坛的发帖奖励,安耐不住内心想拿奖品的冲动;不管丢不丢脸了,只求各位看官,喷清点!!!

主要内容只要分两大块:

一、硬件参数设计:

1、MPPT以及INV电路设计;

2、结缘阻抗检测电路设计;

3、GFCI漏电流检测电路设计;

二、软件系统搭建;

1、MPPT软件算法实现;

2、并网锁相算法实现;

3、MPPT追踪并网算法实现;

4、防孤岛算法检测实现;

全部回复(36)
正序查看
倒序查看
2021-06-19 21:40

逆变器参数需求如下:

1、MPPT以及INV电路设计

              直流侧:单路MPPT输入范围为120-500V,最大支流输入为12A;

                          我们直接选取BOOST拓扑作为MPPT电路;

              交流侧:并网电压为220V,最大输出功率3KW,最大交流输出电压15A;

                          我们直接选取H4拓扑作为INV电路;

整体电路框架如下图:

参数计算:BOOST跟INV开关管频率设计为20KHz,BUS母线最低电压350V

BOOST电感计算如下:

INV电感计算如下:

开关管选型:BOOST管跟H4开关开关管都用同一型号的IGBT管子:FGA40N65SMD

                  BOOST续流二极管:APT30DQ60BG

          

1
回复
阿飞啊
LV.5
3
2021-07-07 11:40

期待继续更新

0
回复
2021-07-13 22:25

2、结缘阻抗检测电路设计;

       光伏逆变器结缘阻抗检测其实检测的是PV+和PV-对大地的阻抗,模型如下

如何去求解,两个未知变量RX1和RX2呢?

学过数学多元方程,我们知道两个未知量,要有两个状态方程来求解:

我们通过一个继电器,通过继电器的断开和吸合,我们就可以得到两条状态方程:

通过上面的数学推算可以计算出PV+和PV-对大地的结缘阻抗RX1和RX2,通过判断RX1和RX2的阻值大小就可以判断出PV+和PV-对大地形成短路;

1
回复
2021-07-13 22:57

3、GFCI漏电流检测电路设计;

     漏电流检测,当逆变器机壳没有可靠接地的时候,人体触摸到逆变器这时候跟大地构成回路,会对人造成触电现象,为了保护人身安全,逆变器必须具备能够检测到漏电流的能力,主动脱离电网,保证人体安全;

漏电流模型如下:

怎样去检测漏电流呢?原理很简单,正常不漏电情况下,L跟N线之间的电流矢量和为零;漏电情况下,L跟N线之间的电流矢量和不为零;

下面分享一份关于GFCI(漏电流检测装置)的分析文档:

GFCI原理分析.pdf

 

1
回复
2021-07-16 18:15

楼主继续

0
回复
ymyangyong
LV.12
7
2021-07-16 18:52

谢谢分享,请继续。

0
回复
2021-07-27 12:48

围观围观

0
回复
iszjt
LV.5
9
2021-08-04 13:18

可以采用两级式非隔离结构,前级采用Boost变换器完成直流侧光伏阵列输出电压的升压功能以及系统的最大功率点跟踪(MPPT),后级采用经典的单相全桥逆变器,完成并网逆变功能.

0
回复
2021-08-20 11:48
@Richie_Li
3、GFCI漏电流检测电路设计;   漏电流检测,当逆变器机壳没有可靠接地的时候,人体触摸到逆变器这时候跟大地构成回路,会对人造成触电现象,为了保护人身安全,逆变器必须具备能够检测到漏电流的能力,主动脱离电网,保证人体安全;漏电流模型如下:[图片]怎样去检测漏电流呢?原理很简单,正常不漏电情况下,L跟N线之间的电流矢量和为零;漏电情况下,L跟N线之间的电流矢量和不为零;下面分享一份关于GFCI(漏电流检测装置)的分析文档:[图片]GFCI原理分析.pdf 

二、软件系统搭建;

1、MPPT软件算法实现;

     对于3KW的逆变器前级一般用的是Boost拓扑,BOOST是最基本的升压拓扑,具体工作原理就不在赘述;

比较常见的用法都是控制BOOST的输出电压;如下图:

但是对于光伏应用来说,由于光伏面板的电压是动态的曲线,要找最大的功率点必须要控制住面板的电压(也就是BOOST的输入电压);

我们对此提出疑问,BOOST电路能否稳住输入侧的电压???

答案是肯定的我们下面进行验证,先搭下控制环路,如图一:

根据控制环路搭建仿真模型,如图二:

仿真结果如图(输入电压被控制在给定电压70V):

上面我们已经实现了BOOST控制输入电压,那怎么去寻找光伏面板的最大功率点呢?

我们做这样的假设,先给定电压Uref=Uo,然后计算光伏面板的功率P1;接着给定电压Uref=Uo+△U,然后计算光伏面板的功率P2;接着给定电压Uref=Uo-△U,然后计算光伏面板的功率P3;通过比较P1、P2、P3,找出最大的功率点,然后将给定值Uref=Upmax;如此反复循环最终是否就能找到了光伏面板的最大功率点呢?

下面通过仿真验证:系统仿真如下图:

光伏面板参数设置如下:

MPPT仿真波形如下:(通过仿真可以看出BOOST已经实现了MPPT功能)

1
回复
2021-08-20 14:31
@Richie_Li
二、软件系统搭建;1、MPPT软件算法实现;   对于3KW的逆变器前级一般用的是Boost拓扑,BOOST是最基本的升压拓扑,具体工作原理就不在赘述;[图片]比较常见的用法都是控制BOOST的输出电压;如下图:[图片]但是对于光伏应用来说,由于光伏面板的电压是动态的曲线,要找最大的功率点必须要控制住面板的电压(也就是BOOST的输入电压);我们对此提出疑问,BOOST电路能否稳住输入侧的电压???答案是肯定的我们下面进行验证,先搭下控制环路,如图一:[图片]根据控制环路搭建仿真模型,如图二:[图片]仿真结果如图(输入电压被控制在给定电压70V):[图片]上面我们已经实现了BOOST控制输入电压,那怎么去寻找光伏面板的最大功率点呢?我们做这样的假设,先给定电压Uref=Uo,然后计算光伏面板的功率P1;接着给定电压Uref=Uo+△U,然后计算光伏面板的功率P2;接着给定电压Uref=Uo-△U,然后计算光伏面板的功率P3;通过比较P1、P2、P3,找出最大的功率点,然后将给定值Uref=Upmax;如此反复循环最终是否就能找到了光伏面板的最大功率点呢?下面通过仿真验证:系统仿真如下图:[图片]光伏面板参数设置如下:[图片]MPPT仿真波形如下:(通过仿真可以看出BOOST已经实现了MPPT功能)[图片]

二、软件系统搭建;

2、并网锁相算法实现;

         为什么并网逆变器要锁相?这是一个比较重要的一个问题;首先我们的光伏并网逆变器,主要作用是最大效率的将太阳能转化为电能并输送到电网上;但是由于我们的电网类似等效于一个50Hz的交流电压源,这样就决定了我们的光伏逆变器必须是控制电流输出的(因为如果我们的逆变器也是电压输出,两个电压源是不能并联的);为了将我们的电能100%输送给电网,那我们逆变器的电流角度就必须要跟市电的角度一样,这样才能保证输送给电网的电能100% 是有功功率;

       知道了为什么要锁相,那接下来的问题是怎么去锁相?要实现锁相就必须得到关于市电的一对正交因子;

我们假设市电Va=Vmax*sin(100π*t);要实现锁相就要设法得到一个跟Va正交的要个信号

Vb=Vmax*sin(100π*t-90°)=Vmax*cos(100π*t);我们在进一步推算,如果这两个正交因子进行向量积和×乘,是不是可以得出一个固定的值;也就是Park变换;

Ud(Θ-Θ0)=cos(Θ-Θ0)*Vmax(Θ-Θ0)+sin(Θ-Θ0)*Vmax(Θ-Θ0-90°);

Uq(Θ-Θ0)=-sin(Θ-Θ0)*Vmax(Θ-Θ0)+cos(Θ-Θ0)*Vmax(Θ-Θ0-90°);

在进一步分析,如果对Uq进行PI控制,使得Uq=0;那么Θ=Θ0 ,系统角度是不是就被时刻跟踪住了;

        也就是要实现锁相,最主要的就是如何通过对市电采样,然后分离出一对正交因子;下面我们主要介绍三种方法去求解正交因子:(下面的计算都是基于DSP采样频率为20KHz的计算)

         方法一(求导法);

假设我们市电的信号是A(t)=310*(sin(100π*t))

那对应的正交因子应该是B(t)=310*(cos(100π*t))

在实际DSP采样中我们是不知道我们的信号实际是怎样的,只能知道输入信号是一个正弦信号;

但是我们知道一个正玄信号求导刚好变成一个余弦信号,这正好就是我们要求得正交因子呀;

我们知道对A函数的求导A`(t)=[A(t+△t)-A(t)]/△t

这时候我们直接看A(t)=310*(sin(100π*t))----->A`(t)=310*100π*(cos(100π*t))

也就是我们所要求的B(t)=A`(t)/100π;

明白这里,在回去看代码

U[2]=[A(t+△t)-A(t)],△t=1/20000,   B(t)=Ube=[A(t+△t)-A(t)]/△t/100π=63.694*U[2];

考虑这样计算出来的B(t)是滞后于A(t)一个采样周期的,

所以加了补偿B(t)=63.694*(U[2]*05+U[3]*0.5)(具体补偿效果根据实际修改参数); 

      方法二(数组移项法):

我们定义另个数组Ua[400],Ub[400], 然后将数组Ua、Ub对市电一个周期进行采样存储,接着我们对数组Ub进行右移100的数据点,这时候也实现了一市电的一组正交因子;如下图:

方法三(广义积分法):

        广义积分法也就是经常论文看到的SOGI算法;说白了就是设计两个传递函数,这两个传递函数分别对我们的输入信号也就是市电的采样信息,进行运算,得到两个正交信号;

下面通过搭建三种求正交因子的仿真如下:

仿真数据如下:(三种方法都能准确锁相)

到此为止,我们锁相已经实现了;

2
回复
2021-08-20 14:55
@Richie_Li
二、软件系统搭建;2、并网锁相算法实现;     为什么并网逆变器要锁相?这是一个比较重要的一个问题;首先我们的光伏并网逆变器,主要作用是最大效率的将太阳能转化为电能并输送到电网上;但是由于我们的电网类似等效于一个50Hz的交流电压源,这样就决定了我们的光伏逆变器必须是控制电流输出的(因为如果我们的逆变器也是电压输出,两个电压源是不能并联的);为了将我们的电能100%输送给电网,那我们逆变器的电流角度就必须要跟市电的角度一样,这样才能保证输送给电网的电能100%是有功功率;    知道了为什么要锁相,那接下来的问题是怎么去锁相?要实现锁相就必须得到关于市电的一对正交因子;我们假设市电Va=Vmax*sin(100π*t);要实现锁相就要设法得到一个跟Va正交的要个信号Vb=Vmax*sin(100π*t-90°)=Vmax*cos(100π*t);我们在进一步推算,如果这两个正交因子进行向量积和×乘,是不是可以得出一个固定的值;也就是Park变换;Ud(Θ-Θ0)=cos(Θ-Θ0)*Vmax(Θ-Θ0)+sin(Θ-Θ0)*Vmax(Θ-Θ0-90°);Uq(Θ-Θ0)=-sin(Θ-Θ0)*Vmax(Θ-Θ0)+cos(Θ-Θ0)*Vmax(Θ-Θ0-90°);在进一步分析,如果对Uq进行PI控制,使得Uq=0;那么Θ=Θ0,系统角度是不是就被时刻跟踪住了;    也就是要实现锁相,最主要的就是如何通过对市电采样,然后分离出一对正交因子;下面我们主要介绍三种方法去求解正交因子:(下面的计算都是基于DSP采样频率为20KHz的计算)     方法一(求导法);假设我们市电的信号是A(t)=310*(sin(100π*t))那对应的正交因子应该是B(t)=310*(cos(100π*t))在实际DSP采样中我们是不知道我们的信号实际是怎样的,只能知道输入信号是一个正弦信号;但是我们知道一个正玄信号求导刚好变成一个余弦信号,这正好就是我们要求得正交因子呀;我们知道对A函数的求导A`(t)=[A(t+△t)-A(t)]/△t这时候我们直接看A(t)=310*(sin(100π*t))----->A`(t)=310*100π*(cos(100π*t))也就是我们所要求的B(t)=A`(t)/100π;明白这里,在回去看代码U[2]=[A(t+△t)-A(t)],△t=1/20000,  B(t)=Ube=[A(t+△t)-A(t)]/△t/100π=63.694*U[2];考虑这样计算出来的B(t)是滞后于A(t)一个采样周期的,所以加了补偿B(t)=63.694*(U[2]*05+U[3]*0.5)(具体补偿效果根据实际修改参数); [图片]   方法二(数组移项法):我们定义另个数组Ua[400],Ub[400],然后将数组Ua、Ub对市电一个周期进行采样存储,接着我们对数组Ub进行右移100的数据点,这时候也实现了一市电的一组正交因子;如下图:[图片]方法三(广义积分法):    广义积分法也就是经常论文看到的SOGI算法;说白了就是设计两个传递函数,这两个传递函数分别对我们的输入信号也就是市电的采样信息,进行运算,得到两个正交信号;[图片][图片]下面通过搭建三种求正交因子的仿真如下:[图片]仿真数据如下:(三种方法都能准确锁相)[图片]到此为止,我们锁相已经实现了;

二、软件系统搭建;

3、MPPT追踪并网算法实现;

     前面已经讲过MPPT功能以及实现了市电的锁相了,接下来就是如何将前级MPPT跟后级逆变串联起来:

如上图:就是整个光伏逆变器的系统;前级BOOST通过MPPT功能将最大的太阳能能量输送给中间母线,而后级逆变则是在母线上获取能量输送到电网上;那这样如果我后级逆变的主要功能是稳住母线,这样的话前级BOOST输送的能量通过母线就跟后级逆变串联起来了,而且实现了能量的平衡,前级往母线输送多少能量,后级逆变就从母线上吸收多少能量;

系统仿真波形如下:

1
回复
#回复内容已被删除#
13
2021-08-20 15:02
@Richie_Li
二、软件系统搭建;3、MPPT追踪并网算法实现;   前面已经讲过MPPT功能以及实现了市电的锁相了,接下来就是如何将前级MPPT跟后级逆变串联起来:[图片]如上图:就是整个光伏逆变器的系统;前级BOOST通过MPPT功能将最大的太阳能能量输送给中间母线,而后级逆变则是在母线上获取能量输送到电网上;那这样如果我后级逆变的主要功能是稳住母线,这样的话前级BOOST输送的能量通过母线就跟后级逆变串联起来了,而且实现了能量的平衡,前级往母线输送多少能量,后级逆变就从母线上吸收多少能量;系统仿真波形如下:[图片]

二、软件系统搭建;

4、防孤岛算法检测实现;

      随着分布式发电的迅速发展,越来越多的太阳能被转化为电能并通过并网逆变器输送到电网,对电网的安全与稳定运行提出了挑战  ,随之而来的一个必须要解决的问题就是并网逆变器的孤岛检测。光伏并网发电系统中的孤岛效应是指当电网停止供电时,由于光伏电站未能及时检测出电网状态的变化而未能将自身切离电网,和周围负载形成一个电网无法掌控的孤立供电区域  。孤岛效应可能会对电路检修人员和用电设备造成严重危害,所以研究孤岛检测具有重要的意义。

正常逆变器的锁相环如下:

为什么加入角度正反馈,就能识别出孤岛效应呢?

在正常并网的情况下,由于电网是个电压源,我们往电网注入电流,并不会改变电网的相位,所以由市电锁相出来的角速度一直是一个固定的值;所以正常并网情况下,由于加入了角度正反馈,注入电网的电流其实是跟市电有一个微小的相位差的,如下图:

在孤岛情况下,锁相环输入的电压,不再是一个电压源了,这时候这个输入电压跟我们注入的电流息息相关,也就是如果我们的注入电流频率越来越大,锁相环出来的角速度也是越来越大,这样的话,我们通过判断锁相环出来的角速度,就能够识别出孤岛效应了;

下面通过搭建仿真验证算法可行性:

不加角度扰动,仿真波形如下:逆变器脱离电网后,继续一直在正常工作;

加入角度扰动后,逆变器迅速识别到孤岛效应,关闭逆变器:

1
回复
借口514
LV.1
15
2021-08-23 14:32

学习了,祝福版主取得大奖!

0
回复
2021-08-30 16:08

厉害 不错的技术帖

0
回复
2021-09-04 13:38

高手。

0
回复
cx3829924
LV.1
18
2021-09-08 15:42

太厉害了,祝楼主抱的大奖!

0
回复
ruohan
LV.9
19
2021-09-08 16:52
@Richie_Li
二、软件系统搭建;2、并网锁相算法实现;     为什么并网逆变器要锁相?这是一个比较重要的一个问题;首先我们的光伏并网逆变器,主要作用是最大效率的将太阳能转化为电能并输送到电网上;但是由于我们的电网类似等效于一个50Hz的交流电压源,这样就决定了我们的光伏逆变器必须是控制电流输出的(因为如果我们的逆变器也是电压输出,两个电压源是不能并联的);为了将我们的电能100%输送给电网,那我们逆变器的电流角度就必须要跟市电的角度一样,这样才能保证输送给电网的电能100%是有功功率;    知道了为什么要锁相,那接下来的问题是怎么去锁相?要实现锁相就必须得到关于市电的一对正交因子;我们假设市电Va=Vmax*sin(100π*t);要实现锁相就要设法得到一个跟Va正交的要个信号Vb=Vmax*sin(100π*t-90°)=Vmax*cos(100π*t);我们在进一步推算,如果这两个正交因子进行向量积和×乘,是不是可以得出一个固定的值;也就是Park变换;Ud(Θ-Θ0)=cos(Θ-Θ0)*Vmax(Θ-Θ0)+sin(Θ-Θ0)*Vmax(Θ-Θ0-90°);Uq(Θ-Θ0)=-sin(Θ-Θ0)*Vmax(Θ-Θ0)+cos(Θ-Θ0)*Vmax(Θ-Θ0-90°);在进一步分析,如果对Uq进行PI控制,使得Uq=0;那么Θ=Θ0,系统角度是不是就被时刻跟踪住了;    也就是要实现锁相,最主要的就是如何通过对市电采样,然后分离出一对正交因子;下面我们主要介绍三种方法去求解正交因子:(下面的计算都是基于DSP采样频率为20KHz的计算)     方法一(求导法);假设我们市电的信号是A(t)=310*(sin(100π*t))那对应的正交因子应该是B(t)=310*(cos(100π*t))在实际DSP采样中我们是不知道我们的信号实际是怎样的,只能知道输入信号是一个正弦信号;但是我们知道一个正玄信号求导刚好变成一个余弦信号,这正好就是我们要求得正交因子呀;我们知道对A函数的求导A`(t)=[A(t+△t)-A(t)]/△t这时候我们直接看A(t)=310*(sin(100π*t))----->A`(t)=310*100π*(cos(100π*t))也就是我们所要求的B(t)=A`(t)/100π;明白这里,在回去看代码U[2]=[A(t+△t)-A(t)],△t=1/20000,  B(t)=Ube=[A(t+△t)-A(t)]/△t/100π=63.694*U[2];考虑这样计算出来的B(t)是滞后于A(t)一个采样周期的,所以加了补偿B(t)=63.694*(U[2]*05+U[3]*0.5)(具体补偿效果根据实际修改参数); [图片]   方法二(数组移项法):我们定义另个数组Ua[400],Ub[400],然后将数组Ua、Ub对市电一个周期进行采样存储,接着我们对数组Ub进行右移100的数据点,这时候也实现了一市电的一组正交因子;如下图:[图片]方法三(广义积分法):    广义积分法也就是经常论文看到的SOGI算法;说白了就是设计两个传递函数,这两个传递函数分别对我们的输入信号也就是市电的采样信息,进行运算,得到两个正交信号;[图片][图片]下面通过搭建三种求正交因子的仿真如下:[图片]仿真数据如下:(三种方法都能准确锁相)[图片]到此为止,我们锁相已经实现了;

知道了为什么要锁相,那接下来的问题是怎么去锁相?要实现锁相就必须得到关于市电的一对正交因子;

我们假设市电Va=Vmax*sin(100π*t);要实现锁相就要设法得到一个跟Va正交的要个信号

请教一下,为什么要得到这个正交信号

0
回复
2021-09-08 17:15
@ruohan
知道了为什么要锁相,那接下来的问题是怎么去锁相?要实现锁相就必须得到关于市电的一对正交因子;我们假设市电Va=Vmax*sin(100π*t);要实现锁相就要设法得到一个跟Va正交的要个信号请教一下,为什么要得到这个正交信号

这个问题你最好收一下相关论文去看一下,我解释不了

0
回复
tarrien
LV.2
21
2021-09-21 17:49

楼主,受教了!

0
回复
winfrey1
LV.6
22
2021-10-07 09:40

学习了。谢谢

0
回复
famed
LV.1
23
2021-10-22 11:28

我要收藏后仔细消化,有点高深,不会算。

0
回复
peter_yu
LV.5
24
2021-10-29 07:49
@famed
我要收藏后仔细消化,有点高深,不会算。

学习学习,学习学习。

0
回复
high-power
LV.4
25
2022-04-24 11:06

正在开发5KW单相逆变,求完整设计方案和资料,请发邮箱:high-power168@163.com,感谢!

0
回复
200瓦特
LV.2
26
2022-07-15 15:38

好东西

0
回复
dy-1UDiY3gu
LV.1
27
2022-11-10 16:29

电感计算的软件可以分享下吗?

0
回复
2022-12-28 16:07

计算的软件能分享吗?

ging_ge@163.com

0
回复
AyumiHK
LV.1
29
2023-02-10 14:57

讲得非常好!

0
回复
dy-Dn4A21SB
LV.1
30
2023-05-16 15:58

正在开发5KW单相逆变,求完整设计方案和资料,1500530079@qq.com,感谢!

还有计算软件,能分享一下嘛
0
回复
2023-05-18 13:55

楼主,真厉害

0
回复