ABB通过基于模型的设计加速大规模并网逆变器产品的交付
挑战
加速大型并网逆变器产品的设计和交付。
解决方案
使用基于模型的设计方法为模块化、可扩展的电力电子产品建模、仿真和生成控制软件。
结果
- 原型在两周内交付,而不是三个月
- 生成无缺陷的优化代码
- 减轻对测试设备的潜在损害
建立并网逆变器产品,如兆瓦级不间断电源,变频器和用于储能的功率调节系统,通常需要几个月的时间。为了加速这一过程,ABB在新西兰的工程师们开发了电力电子模块(PEBB)。这些小型智能逆变器可以并联连接,并与系统级控制应用相结合,以快速生产可扩展的并网逆变器产品。
ABB工程师使用MATLAB®和Simulink®通过基于模型的设计方法开发了PEBB的控制系统。
“借助基于模型的设计,我们的开发人员生产力很容易增加十倍,”ABB新西兰公司高级研发工程师Robert Turner博士说。 “仿真和代码生成使我们能够快速更新设计并消除编码中的人为错误。我们的算法通常是一次成功,所以我们不再浪费大部分开发周期调试代码。“
挑战
一个由多达32个连接的PEBB组成的系统中,控制器必须精确控制功率输出和均衡。当检测到故障时,控制算法必须立即采取措施,避免级联的一系列故障,并通过其余模块保持供电。
在实际硬件上测试和调试这些控制算法既昂贵又危险。一个PEBB花费数千美元,能够提供250千瓦的功率 - 如果不能有效控制,产生的功率足以造成装置严重损坏。在进行硬件测试之前,ABB工程师需要通过建模和仿真验证其控制算法。
过去,ABB软件工程师根据控制工程师编写的说明书手动对控制算法进行编码。编写规范、手工编写算法以及调试手写代码的过程中既乏味又容易出错。 ABB希望通过直接从系统模型生成生产代码来自动化并加速开发。
解决方案
ABB工程师使用基于模型的设计为PEBB嵌入式控制软件和针对特定客户应用的系统级控制软件建模、仿真和生成代码。
在Simulink和Stateflow®中,团队仿真了PEBB控制算法和状态机,包括复位、启动、运行和故障状态以及它们之间的转换。
他们在Simulink中创建了用于验证其模型的测试用例。他们通过在Simulink中建立包含PEBB中的电感器、电容器和其他电力电子组件的物理模型,运行闭环仿真来进行系统验证。
使用Embedded Coder®,该团队为PEBB的ARM处理器生成了优化的C代码。
在完成硬件测试后,ABB工程师创建了与硬件接口一致的Simulink模块,并将其加入到仿真器件库中。
为了为ABB客户开发新的逆变器产品,工程师创建了一个包含PEBB构件的Simulink模型,并添加两个用Stateflow创建的状态机,一个负责管理PEBB,另一个负责为客户的应用程序实现控制逻辑。
该团队通过仿真多个PEBB在各种电网和负载条件下运行的情况来验证应用级设计。然后他们在运行最终的硬件测试之前使用Embedded Coder从模型生成C代码。
ABB工程师将他们的Simulink模型视为源代码,使用版本控制系统维护模型,并使用Simulink Report Generator™ 进行模型比较和合并。他们还使用Simulink报告生成器导出模型的Web视图,以供客户和服务人员参考。
ABB工程师已经将基于模型的设计扩展到控制系统之外,现在正在使用MATLAB和Simulink来模拟和模拟自定义通信协议和热效应。
结果
- 原型在两周内交付,而不是三个月。 Turner博士说:“过去,需要一位专家工程师至少三个月才能为潜在客户构建一个演示系统。 “通过Simulink和Embedded Coder,我们可以在两周内快速可靠地创建这样一个系统。”
- 生成无缺陷的优化代码。 Turner博士说:“多年来,我们对如何为实现系统编写代码有了深入的了解。Embedded Coder生成的优化代码与我们可以编写的一样好,而且我们从未遇到任何生成代码中的缺陷问题。”
- 减轻对测试设备的潜在损害。 Turner博士说:“一个单元需要花费数千美元,而且能够提供250千瓦的功率 - 如果不能安全地进行控制,产生的功率足以造成严重的损失。我们通过在Simulink中通过仿真验证我们的控制算法,然后在硬件上测试它们,从而降低风险。”