一种适用于集中式温差发电系统的MPPT控制方法 |
|||||||
申请号 | CN202410271662.6 | 申请日 | 2024-03-11 | 公开(公告)号 | CN117873277B | 公开(公告)日 | 2024-05-14 |
申请人 | 太原理工大学; | 发明人 | 陈燕; 冯璐璐; 何鑫颖; 杜谦; | ||||
摘要 | 本 发明 涉及集中式温差发电技术领域,具体是一种适用于集中式温差发电系统的MPPT控制方法,该方法是采用如下步骤实现的:步骤S1:将各个占空比及其对应的输出功率作为训练样本;步骤S2:将训练样本进行归一化处理后输入至Elman神经网络;步骤S3:利用Levenberg‑Marquardt方法训练Elman神经网络,由此拟合出I/O曲线;步骤S4:根据I/O曲线,利用黏菌 算法 进行 迭代 搜索,由此输出最优占空比;步骤S5:将最优占空比及其对应的输出功率作为新的 训练数据 加入到训练样本中;步骤S6:判断执行次数是否达到预定次数;步骤S7:判断输出功率 波动 是否小于3%。本发明解决了集中式温差发电系统中现有MPPT控制方法追踪速度慢、追踪 精度 低、功率波动大的问题,适用于集中式温差发电系统。 | ||||||
权利要求 | 1.一种适用于集中式温差发电系统的MPPT控制方法,其特征在于:该方法是采用如下步骤实现的: |
||||||
说明书全文 | 一种适用于集中式温差发电系统的MPPT控制方法技术领域[0001] 本发明涉及集中式温差发电技术领域,具体是一种适用于集中式温差发电系统的MPPT控制方法。 背景技术[0002] 在集中式温差发电系统中,多个不同热源通过一个MPPT(最大功率点追踪)控制器实现电源的能量管理。由于不同热源的温度差异,导致输出曲线各有不同,由此导致叠加出的系统输出曲线为单输入、单输出的多峰值曲线。如果不能高效追踪到最大功率点,就会造成能量损失。而在现有技术条件下,MPPT控制方法由于自身原理所限,在应用于集中式温差发电系统时存在追踪速度慢、追踪精度低、功率波动大的问题,由此导致系统的发电效率低。基于此,有必要发明一种适用于集中式温差发电系统的MPPT控制方法,以解决集中式温差发电系统中现有MPPT控制方法追踪速度慢、追踪精度低、功率波动大的问题。 发明内容[0003] 本发明为了解决集中式温差发电系统中现有MPPT控制方法追踪速度慢、追踪精度低、功率波动大的问题,提供了一种适用于集中式温差发电系统的MPPT控制方法。 [0004] 本发明是采用如下技术方案实现的: [0005] 一种适用于集中式温差发电系统的MPPT控制方法,该方法是采用如下步骤实现的: [0006] 步骤S1:针对集中式温差发电系统,在其DC/DC变换器的占空比变化范围内均匀选取若干个占空比,并采集各个占空比对应的输出电流和输出电压;然后,根据采集结果计算出各个占空比对应的输出功率,并将各个占空比及其对应的输出功率作为训练样本; [0007] 步骤S2:将训练样本进行归一化处理后输入至Elman神经网络; [0008] 步骤S3:利用Levenberg‑Marquardt方法训练Elman神经网络,由此拟合出I/O曲线; [0010] 步骤S5:将最优占空比输入至DC/DC变换器,并采集最优占空比对应的输出电流和输出电压;然后,根据采集结果计算出最优占空比对应的输出功率,并将最优占空比及其对应的输出功率作为新的训练数据加入到训练样本中; [0011] 步骤S6:判断执行次数是否达到预定次数;若达到预定次数,则执行步骤S7;否则,返回步骤S2; [0012] 步骤S7:判断输出功率波动是否小于3%;若输出功率波动小于3%,则方法结束;否则,返回步骤S1。 [0013] 进一步地,所述步骤S1中,DC/DC变换器的占空比变化范围为 ;所选取的占空比的个数为10。 [0014] 进一步地,所述步骤S2中,Elman神经网络的具体参数为:输入神经元的个数、输出神经元的个数均为1;隐含层激活函数为Sigmoid;输出层激活函数为Purelin;隐含层、承接层、输出层的输出公式如下: [0015] ; [0016] 式中: 表示 时刻第 个隐含层神经元输出矢量; 表示第 个承接层到第个隐含层神经元之间的权值; 表示 时刻第 个承接层神经元输出矢量; 表示输入层到第 个隐含层神经元之间的权值; 表示 时刻输入层输入矢量; 表示第 个隐含层神经元的阈值; 表示 时刻第 个隐含层神经元输出矢量; 表示 时刻输出层输出矢量; 表示第 个隐含层神经元到输出层之间的权值; 表示输出层的阈值。 [0017] 进一步地,所述步骤S3中,训练的目标误差为0.001;误差的计算公式如下: [0018] ; [0019] 式中: 表示误差; 表示所选取的占空比的个数; 表示第 个占空比对应的输出功率实际值; 表示第 个占空比对应的输出功率预测值。 [0020] 进一步地,所述步骤S3中,最大训练次数为100。 [0021] 进一步地,所述步骤S4中,迭代搜索的具体步骤为: [0022] 步骤S4.1:根据I/O曲线,搜索出各个占空比对应的输出功率,并按照输出功率从大到小的顺序将各个占空比进行排序;排序公式如下: [0023] ; [0024] 步骤S4.2:根据排序结果,计算各个占空比的权重;计算公式如下: [0025] ; [0026] 式中: 表示当前占空比的权重; 表示排在前 的占空比;表示其余的占空比; 表示当前占空比对应的输出功率;表示 之间的随机数; 表示当前迭代中的最大输出功率值; 表示当前迭代中的最小输出功率值; [0027] 步骤S4.3:判断随机数 是否小于概率因子 ;若随机数 小于概率因子,则执行步骤S4.4;否则,执行步骤S4.5; [0028] 步骤S4.4:触发防贪婪机制,忽略权重信息进行随机搜索,并据此更新占空比,更新完成后执行步骤S4.8;更新公式如下: [0029] ; [0030] 式中: 表示更新后的占空比; 表示搜索范围的上界,且 ;表示搜索范围的下界,且 ; 表示 之间的随机数; 表示概率因子,其为常量; [0031] 步骤S4.5:判断随机数 是否小于参数 ;若随机数 小于参数 ,则执行步骤S4.6;否则,执行步骤S4.7; [0032] 步骤S4.6:通过权重信息更新占空比,更新完成后执行步骤S4.8;更新公式如下: [0033] ; [0034] ; [0035] ; [0036] 式中: 表示更新后的占空比; 表示当前占空比; 表示 之间的随机数; 表示不同占空比的权重系数; 与 表示两个随机占空比; 表示当前占空比对应的输出功率; 表示所有迭代中的最大输出功率值;表示当前迭代次数;表示最大迭代次数; [0037] 步骤S4.7:为加快收敛速度,引入大猩猩部队优化算法更新占空比,更新完成后执行步骤S4.8;更新公式如下: [0038] ; [0039] 式中: 表示更新后的占空比; 表示当前占空比;表示 之间的随机数;表示当前迭代次数; 表示最大迭代次数; 表示 之间的随机数;表示 之间的随机数; 表示随机选取的占空比; [0040] 步骤S4.8:判断迭代次数是否达到预定次数;若达到预定次数,则输出最优占空比;否则,返回步骤S4.1。 [0041] 与现有MPPT控制方法相比,本发明所述的一种适用于集中式温差发电系统的MPPT控制方法利用Elman神经网络拟合精度高的优点(如图2所示,Elman神经网络拟合出的I/O曲线与实际曲线非常接近)以及黏菌算法全局探索能力强的优点,实现了快速、精确、稳定地追踪到最大功率点,由此有效加快了追踪速度、有效提高了追踪精度、有效减小了功率波动,从而有效提高了系统的发电效率。 [0042] 为了验证本发明的有益效果,在非均匀温度分布条件下对本发明与现有MPPT控制方法进行三种动态仿真实验(恒定温度测试、阶跃温度测试、时变温度测试),得到恒定温度测试中两者的性能对比表以及三种动态仿真实验中两者的电流、功率、输出能量对比图(如图3 图11所示)。恒定温度测试中两者的性能对比表如下:~ [0043] 。 [0044] 通过三种动态仿真实验的结果可以看出,本发明能够在非均匀温度分布条件下快速、精确、稳定地追踪到最大功率点,且不受温度骤变与实时变化的影响。与现有MPPT控制方法相比,本发明的追踪速度更快、追踪精度更高、功率波动更小、输出能量更大。 [0046] 图1是本发明的流程示意图。 [0047] 图2是Elman神经网络拟合出的I/O曲线与实际曲线的对比图。 [0048] 图3是恒定温度测试中本发明与现有MPPT控制方法的电流对比图。 [0049] 图4是恒定温度测试中本发明与现有MPPT控制方法的功率对比图。 [0050] 图5是恒定温度测试中本发明与现有MPPT控制方法的输出能量对比图。 [0051] 图6是阶跃温度测试中本发明与现有MPPT控制方法的电流对比图。 [0052] 图7是阶跃温度测试中本发明与现有MPPT控制方法的功率对比图。 [0053] 图8是阶跃温度测试中本发明与现有MPPT控制方法的输出能量对比图。 [0054] 图9是时变温度测试中本发明与现有MPPT控制方法的电流对比图。 [0055] 图10是时变温度测试中本发明与现有MPPT控制方法的功率对比图。 [0056] 图11是时变温度测试中本发明与现有MPPT控制方法的输出能量对比图。 具体实施方式[0057] 一种适用于集中式温差发电系统的MPPT控制方法,该方法是采用如下步骤实现的: [0058] 步骤S1:针对集中式温差发电系统,在其DC/DC变换器的占空比变化范围内均匀选取若干个占空比,并采集各个占空比对应的输出电流和输出电压;然后,根据采集结果计算出各个占空比对应的输出功率,并将各个占空比及其对应的输出功率作为训练样本; [0059] 步骤S2:将训练样本进行归一化处理后输入至Elman神经网络; [0060] 步骤S3:利用Levenberg‑Marquardt方法训练Elman神经网络,由此拟合出I/O曲线; [0061] 步骤S4:根据I/O曲线,利用黏菌算法进行迭代搜索,由此输出最优占空比; [0062] 步骤S5:将最优占空比输入至DC/DC变换器,并采集最优占空比对应的输出电流和输出电压;然后,根据采集结果计算出最优占空比对应的输出功率,并将最优占空比及其对应的输出功率作为新的训练数据加入到训练样本中; [0063] 步骤S6:判断执行次数是否达到预定次数;若达到预定次数,则执行步骤S7;否则,返回步骤S2; [0064] 步骤S7:判断输出功率波动是否小于3%;若输出功率波动小于3%,则方法结束;否则,返回步骤S1。 [0065] 所述步骤S1中,DC/DC变换器的占空比变化范围为 ;所选取的占空比的个数为10。 [0066] 所述步骤S2中,Elman神经网络的具体参数为:输入神经元的个数、输出神经元的个数均为1;隐含层激活函数为Sigmoid;输出层激活函数为Purelin;隐含层、承接层、输出层的输出公式如下: [0067] ; [0068] 式中: 表示 时刻第 个隐含层神经元输出矢量; 表示第 个承接层到第个隐含层神经元之间的权值; 表示 时刻第 个承接层神经元输出矢量; 表示输入层到第 个隐含层神经元之间的权值; 表示 时刻输入层输入矢量; 表示第 个隐含层神经元的阈值; 表示 时刻第 个隐含层神经元输出矢量; 表示 时刻输出层输出矢量; 表示第 个隐含层神经元到输出层之间的权值; 表示输出层的阈值。 [0069] 所述步骤S3中,训练的目标误差为0.001;误差的计算公式如下: [0070] ; [0071] 式中: 表示误差; 表示所选取的占空比的个数; 表示第 个占空比对应的输出功率实际值; 表示第 个占空比对应的输出功率预测值。 [0072] 所述步骤S3中,最大训练次数为100。 [0073] 所述步骤S4中,迭代搜索的具体步骤为: [0074] 步骤S4.1:根据I/O曲线,搜索出各个占空比对应的输出功率,并按照输出功率从大到小的顺序将各个占空比进行排序;排序公式如下: [0075] ; [0076] 步骤S4.2:根据排序结果,计算各个占空比的权重;计算公式如下: [0077] ; [0078] 式中: 表示当前占空比的权重; 表示排在前 的占空比;表示其余的占空比; 表示当前占空比对应的输出功率;表示 之间的随机数; 表示当前迭代中的最大输出功率值; 表示当前迭代中的最小输出功率值; [0079] 步骤S4.3:判断随机数 是否小于概率因子 ;若随机数 小于概率因子,则执行步骤S4.4;否则,执行步骤S4.5; [0080] 步骤S4.4:触发防贪婪机制,忽略权重信息进行随机搜索,并据此更新占空比,更新完成后执行步骤S4.8;更新公式如下: [0081] ; [0082] 式中: 表示更新后的占空比; 表示搜索范围的上界,且 ;表示搜索范围的下界,且 ; 表示 之间的随机数; 表示概率因子,其为常量; [0083] 步骤S4.5:判断随机数 是否小于参数 ;若随机数 小于参数 ,则执行步骤S4.6;否则,执行步骤S4.7; [0084] 步骤S4.6:通过权重信息更新占空比,更新完成后执行步骤S4.8;更新公式如下: [0085] ; [0086] ; [0087] ; [0088] 式中: 表示更新后的占空比; 表示当前占空比; 表示 之间的随机数; 表示不同占空比的权重系数; 与 表示两个随机占空比; 表示当前占空比对应的输出功率; 表示所有迭代中的最大输出功率值;表示当前迭代次数;表示最大迭代次数; [0089] 步骤S4.7:为加快收敛速度,引入大猩猩部队优化算法更新占空比,更新完成后执行步骤S4.8;更新公式如下: [0090] ; [0091] 式中: 表示更新后的占空比; 表示当前占空比;表示 之间的随机数;表示当前迭代次数; 表示最大迭代次数; 表示 之间的随机数;表示 之间的随机数; 表示随机选取的占空比; [0092] 步骤S4.8:判断迭代次数是否达到预定次数;若达到预定次数,则输出最优占空比;否则,返回步骤S4.1。 |