亚琛工业大学的研究人员在生成产品级代码之前,对一台兆瓦级风力发电机的控制器进行了系统仿真,并执行了全面的 SIL 和 HIL 测试。
风力发电机需要先进的控制策略,才能最大限度地提高功率输出并降低结构部件上的机械负载。
模型预测控制 (MPC)是一种很有前景的风力发电机控制策略,它不仅可以处理多变量控制问题,同时可兼顾过程中的约束问题。
一些研究已经使用数值仿真来探索 MPC 在风力发电机中的应用。据我们所知,在风力发电机的 MPC 控制学术领域,我们的研究首次提供了来自兆瓦级风力发电机全尺寸现场测试的实验 MPC 结果。
我们采用了快速控制原型 (RCP) 方法,在 MATLAB 和 Simulink 中对 MPC 算法进行建模和仿真,并在软件在环 (SIL) 和硬件在环 (HIL) 测试中对其进行验证。然后,我们将控制模型生成产品级代码,用在 Bachman PLC 上,并在由 W2E Wind to Energy GmbH [6] 的同事设计和运行的 3 兆瓦风力发电机上进行了现场测试(图 1 和 2)。
图 2.风力发电机自动化系统的闭环结构及其主要组成。现有的自动化系统通过测试中的控制系统和旁路接口进行扩展。被控对象(顶部)展示了位于德国罗斯托克的 W2E-120/3.0fc 3 兆瓦风力发电机的原型。
风力发电机控制框架简介
我们开发了风力发电机控制框架 (WTCF),为团队的每位成员提供了一个一致的环境来共享活动模型、脚本和路径。对于版本控制,我们通过 Simulink Projects 将框架与 Git 集成。
WTCF 的主模型中包括被控对象和控制系统的子模型。我们使用模型引用(model reference )分层组织设计并实现模块化开发。该框架的文件夹结构映射了模型和子模型的层次结构(图 3)。
图 3.风力发电机控制框架中的主模型 (a) 及相应的文件夹结构 (b)。(图片来源:Dickler、Kallen、Zierath 和 Abel [1])
风力发电机和 MPC 算法建模
在我们的框架中,用非线性降阶模型来表示风力发电机,该模型在初始系统仿真中作为被控对象模型,在 MPC 算法中作为内部预测模型。该
降阶模型包括三个子模型:一个用于风力发电机传动动力学的机械模型,一个用于塔架和桨叶动力学的机械模型,以及一个用于空气动力学的模型(图 4)。
我们使用常微分方程开发了两个机械子模型,其参数值一部分由实际风力发电机确定,另一部分通过参数辨识的多体仿真确定。在降阶模型中,我们使用了气动力系数的静态map图,将风速与施加到风机机械子模型的力和力矩联系起来。
图 4.风力发电机的非线性降阶模型,包括空气动力学的静态map图以及传动系统和转子-塔架动力学的子模型。(图片来源:Jassman [4])
我们设计了 MPC 算法,以最大限度地提高功率输出、让系统运行在约束条件内,并降低由阵风或其他条件导致的动态机械负载。
该算法在 MATLAB 和 Simulink 中建模,将发电机转速和功率作为受控变量,以最大限度地提高输出。塔顶加速度代表机械负载,因此用作附加受控变量。
该算法使用两个控制变量来实现其目标:风机的俯仰角速率和发电机扭矩。后者由风机的发电机-变换器系统处理,包括一个额外的、更快的控制回路。
运行系统仿真、SIL 测试和 HIL 测试
我们进行了闭环系统仿真,以验证降阶风机模型,并得出初始 MPC 算法参数,以用于 SIL 和 HIL 测试(图 5)。
WTCF 使我们可以轻松地用更详细的模型取代降阶模型,包括使用 alaska/Wind 软件开发的风机多体仿真模型 [7],以及使用 FAST 软件开发的第二代模型 [8]。
图 5.系统仿真、SIL 测试和 HIL 测试设置。(图片来源:Dickler、Kallen、Zierath 和 Abel [1])
使用 Embedded Coder,我们生成了控制系统的动态链接库 (DLL),以针对现有自动化系统和对象模型运行闭环测试,该模型使用经认证可用于风力发电机行业的仿真工具 FLEX5 开发。FLEX5 和 alaska/Wind 对象模型均由 W2E 根据现场测试数据进行验证 [10],结果表明,这些模型准确地反映了风力发电机的动力学特性。
我们运行了 SIL 测试来验证 MPC 的编译代码能够正常运行,评估 MPC 的鲁棒性,并测试 MPC 与风力发电机现有自动化系统之间的集成,其中包括监控、安全系统和分析功能。
我们还运行了 SIL 测试,以评估 MPC 算法相对于常规 PID 控制器的性能。结果表明,当风机受到阵风影响时, MPC 算法在保持机械负载水平不变的情况下,比 PID 控制器保持了明显更稳定的功率和发电机转矩(图 6)。这些结果证实了 MPC 具有同时处理多个控制目标的能力。
图 6.IEC 61400 定义的极端工作阵风荷载情况下的 SIL 测试结果。蓝色 = MPC 算法;红色 = PID 控制器。(图片来源:Dickler、Wintermeyer-Kallen、Konrad 和 Abel [5])
为了准备 HIL 测试,我们使用 Simulink Coder 和 M-Target for Simulink 从 Bachmann MH230 PLC MPC 模型生成代码。在 HIL 测试期间,我们使用 PC 对风机对象进行仿真,重用了我们系统仿真中的降阶 Simulink 模型或者 alaska/Wind 或 FAST 模型。这些测试使我们能够在风力发电机的 PLC 上验证 MPC 算法生成的代码,并在包括实际风机自动化系统的硬件设置中验证实现。
现场测试和后续步骤
凭借进行的系统仿真和全面的 SIL 和 HIL 测试,我们相信控制器将在实际风机上有相当出色的表现。在基于仿真的开发环境中成功地运行全面测试,使我们有信心在德国罗斯托克的 W2E 风力发电机上首次测试 MPC 算法。
首次测试的结果证实了我们的预期,因为 MPC 可以在不修改控制器的情况下在部分负载区域运行风力发电机。成功的现场测试是我们在 RWTH 和 W2E 的研究小组的一个重要里程碑,不仅验证了 MPC 的设计和实现,也验证了 WTCF。
现场测试为我们在全尺寸现场测试实际 3 兆瓦风力发电机的 MPC 系统建立了概念验证,并弥合了多兆瓦级风力发电机 MPC 系统的控制设计和现场测试之间的差距。在测试期间,我们确定了控制器设计的几个潜在改进领域。我们的近期计划包括改进 MPC 算法来提高发电能力,同时通过增强 MPC 算法的鲁棒性,进一步降低风机的疲劳负载和阵风带来的极端负载。
在未来的研究中,我们计划基于物理建模原理和机器学习算法开发更详细的预测模型。这项研究将为考虑与小型风电场中电网兼容性和多物理风力发电机影响相关的其他控制目标开辟新的可能性。
致谢
我们要感谢参与 MPC 测试活动的 W2E Wind to Energy GmbH 的所有同事,感谢他们在实际风力发电机中调试 MPC 系统和现场测试方面提供的支持。我们还要感谢 Bachmann electronic GmbH 提供的技术支持,以及为进行现场测试和测试准备所提供的 MH230 PLC 单元。
关于作者
Dirk Abel 是亚琛工业大学自动控制研究所的负责人。Thomas Konrad 是能源系统工作组的负责人。Sebastian Dickler 和 Thorben Wintermeyer-Kallen 是风能研究小组的研究人员。
审核编辑 :李倩
全部0条评论
快来发表一下你的评论吧 !