维斯塔斯(Vestas

挑战

根据符合网格代码而开发可再生电厂控制软件

解决方案

将基于模型的设计与连续集成到模型控制器,自动化基于模拟的测试并为工业控制器生成生产代码

结果

  • 可靠,无问题的代码生成
  • 多站点CI Workflow自动化
  • 避免使用硬件锁定

“借助Sim万博1manbetxulink和嵌入式编码器,我们可以向客户和网格运营商展示一个模拟,该模拟合并了将在我们的发电厂控制器中运行的实际代码。这就是电网运营商想要的,它使维斯塔斯比仍然使用常规方法的竞争对手有优势。”

Per Hagen Nielsen,Vestas

维斯塔斯涡轮机和电厂控制。


在80个国家/地区,有超过66,000台涡轮机在80个国家/地区安装了100吉瓦的涡轮机A/S,其安装了风力动力比其他任何公司都要多。Vestas工程师使用基于模型的设计与连续集成(CI)来开发电厂控制软件,并向Vestas客户和网格运营商展示符合网格代码。

Vestas Wind Systems的控制系统软件架构师A/ Hagen Nielsen说:“电网操作员希望了解您的工厂的性能,并想知道控制代码将与模拟一对一匹配。”s“今天,没有多少公司可以证明这一点。在Vestas,我们之所以可以是因为我们将基于模型的设计与MATLAB和SIMULINK一起模拟和模拟我们的动力工厂控制系统,然后使用万博1manbetx相同的模型生成C ++代码,以进行系统级别的模拟和生产。”

挑战

在采用基于模型的电源控制设计设计之前,维斯塔斯工程师使用了一种常规方法,其中由电力工程师开发的基于纸张的规格和设计文档已交给软件工程师,他们手工编写了针对单个组件或功能的代码。电力工程师使用PSCAD软件进行了模拟,但这些模拟集中在电力而不是软件控制上。模拟没有包含控制代码,这意味着一旦软件集成并部署了该软件后,PSCAD模拟反映了系统性能。维斯塔斯(Vestas)希望消除手工编码带来的人为错误的潜力,同时确保其功率系统模拟与控制软件相对应。

此外,维斯塔斯(Vestas)希望使跨越欧洲和亚洲五个国家的工程团队能够在相同的项目上共同努力,在某些情况下,在同一模型上。这个地理分散的团队需要将版本控制应用于模型,管理频繁合并并自动化基于模拟的测试。为了满足这些要求,维斯塔斯决定将CI与Jenkins™一起使用,并将CI原理纳入基于建模,仿真和代码生成的工程工作流程中。

解决方案

在获得高级管理层的支持之后,维万博1manbetx斯塔斯电力系统工程师建立了一个新的电厂控制设计工作流程,将CI和基于模型的设计与MATLAB结合在一起®和Sim万博1manbetxulink®

当提出网格代码更改或客户要求新功能或组件时,Vestas工程师会创建一组正式要求。根据要求,一个组使用Simulink和Simulink Test™开发测试用例,该测试案将用于验证新功能,而第二组则在Sim万博1manbetxulink和stateFlow中设计新功能®

为了创建用于闭环模拟的系统模型,第二组中的工程师将控制模型与Simulink模型相结合,该模型在与工厂的连接点上捕获网格的阻抗和动态特性。万博1manbetx他们使用Simu万博1manbetxlink S功能,结合了风力涡轮机模型,该模型是在专有工具中开发的,并由另一个Vestas组包装为DLL。

在使用此系统模型运行闭环模拟并运行检查后,以确保基于Mathworks Automotive咨询委员会(MAAB)指南符合建模标准,工程师将控制模型检查到GIT存储库中。模型签到触发了詹金斯作业,该作业运行了较早的Simulink测试的测试用例,以及电源工程师创建的其他基于仿真的测试以及另一轮建模指南合规性检查。万博1manbetx

如果控制模型通过所有测试和检查,詹金斯会调用嵌入式编码器®1从模型生成C ++代码。生成的C ++代码被编译到DLL中,然后在PSCAD中使用该代码来运行整个工厂及其控制软件的模拟。

维斯塔斯使用这些模拟来证明传输系统操作员在正常条件下以及在存在电压下降,振荡和其他干扰的情况下连接到网格时的性能。最后,生成的代码在部署到生产中之前在目标工业控制系统上进行了测试。

结果

  • 可靠,无问题的代码生成。尼尔森说:“如果我们的控制系统不按照应有的表现,我们将面临处罚。”“借助Sim万博1manbetxulink和嵌入式编码器,我们非常快地了解到我们可以信任我们生成的代码 - 实际上,我们还没有找到一个问题。”
  • 多站点CI工作流程自动化。尼尔森说:“我们在全球范围内与数十名工程师合并了许多合并。”“使用基于模型的设计和CI一起,我们缩短了迭代和自动测试过程。”
  • 避免使用硬件锁定。尼尔森说:“过去,我们通过为PLC平台编写自定义结构化文本开发了控制器,这意味着我们与该平台紧密绑定。”“今天,我们从Simulink模型中生成便携式C ++代码,使我们可以灵活地使用替代工业控制平万博1manbetx台。”

1可能需要客户访问许可证在Jenkins或其他CI机器上使用嵌入式编码器。