User Stories

Alstom生成针对安全关键电源转换器控制系统的生产代码

挑战

设计和实施电车,地铁和铁路的实时电源转换和控制系统

解决方案

Use MathWorks tools for Model-Based Design to design, simulate, and automatically generate production code for safety-critical transportation systems

Results

  • 开发时间减少了50%
  • Defect-free, safety-critical code generated and certified
  • 建立的通用语言

“我们使用Mathworks工具来设计,测试,修改和实施一年内永久磁铁驱动器的控制系统。鉴于我们可用的资源,如果没有Mathworks工具,就不可能按计划实现此控制。”

汉·盖尔利格斯(Han Geerligs),阿尔斯通
Pendolino tilting train.

The power converters used on trams, metros, and trains are sophisticated, safety-critical systems that require hard, real-time responses. As a world-leading supplier of rail transport products, services, and systems, Alstom Transport relies on MathWorks tools to design, simulate, and implement these and other equally complex systems that support the world’s energy and transport infrastructure.

使用Mathworks工具,Alstom工程师为其嵌入式实时功率转换系统和能源管理控制系统建模并自动生成无缺陷的生产代码。

"MathWorks tools enable us to control every line of code, and the generated code is readable, fast, and compact," Han Geerligs, senior engineer at Alstom, explains. "Also, MathWorks tools are industry-standard, with extensive packages and broad support for embedded targets."

挑战

阿尔斯托姆工程师需要设计能源管理控制和电力转换器控制,以满足亚毫秒延迟的严格性能要求。

Geerligs解释说:“ 10至20微秒的延迟太多了,因为我们的周期时间大约是200微秒。”“我们还拥有复杂的多处理器模型,该模型可以使用DSP运行中断过程,并使用多段过程运行Power-PC CPU。”

加上挑战,阿尔斯通工程师使用不同的工具进行算法开发,建模和仿真。此外,这些工具没有提供任何自动代码生成功能,因此他们必须手工编写代码。

Geerligs回忆说:“我们的工具没有集成,因此我们花了很多时间编写转换工具。由于我们无法自动生成代码,因此我们将设计,制定规格和手工代码。”“从规范到实施花了很长时间。没有快速的原型制作,文档花费了更长的时间,我们缺乏整个工作的概述,而且很难迅速实施变更。”

解决方案

在评估了多个商业软件包后,阿尔斯通选择了用于基于模型设计的数学工具。阿尔斯通工程师使用这些工具来设计,模拟和自动在许多项目上生成代码,包括电车控制系统和捷克铁路公司Pendolino倾斜火车的能源管理系统。

In the design phase, engineers use Simulink®,Simscape Electrical™和状态流®开发其控制系统。

"Simulink makes it easy to transfer functions from one part of the design or to change the timing from timed to interrupt-driven, while maintaining efficiency," says Geerligs. "That kind of major design change would be very difficult without Simulink."

The engineers used Simscape Electrical to model the electrical components of the system, including the power electronic components as well as resistors, capacitors, and inductors.

使用状态流,团队对监督控制和控制系统状态进行了建模,包括启动,减速和错误处理。状态流也实现了电源转换控制与系统中心故障处理单元之间的通信协议。

"Superstates in Stateflow were particularly helpful for fault handling. When we had a fault in a substate, we drew a line out of the superstate, and Stateflow ensured that it was always handled correctly," says Geerligs.

阿尔斯托姆团队使用MATLAB®对测量数据进行预处理从软式interfaces and scopes for their simulations. They also used MATLAB to report and verify the simulation results. Geerligs used Control System Toolbox™ with MATLAB to create and analyze Bode diagrams and develop classical control algorithms.

After simulating the system in Simulink and Stateflow, the team used Simulink Coder™ and Embedded Coder®自动生成生产的代码。他们将代码与许多实时操作系统(包括Microware 0s-9和Wind River的Osekworks)集成在一起。

阿尔斯通工程师将其模型从项目到项目重新恢复。Geerligs解释说:“ Mathworks工具帮助我们定义了设计模式,并在库中分享了这些知识。”“例如,电车项目和能源管理项目之间共享了故障处理和电气建模。”

Results

  • 开发时间减少了50%。"One project that we coded by hand took 2000 hours. Using Simulink and Stateflow, we repeated that project in 1000 hours," explains Geerligs. "Also, the time from design completion to our first prototype has been reduced from three months to less than an hour. Now, projects that would require 18 months are now completed in a year with MathWorks tools."

  • Defect-free, safety-critical code generated and certified。Geerligs说:“我们从未发现Mathworks工具自动生成的代码中的任何缺陷。”“当阿尔斯通向捷克铁路运送Pendolino火车时,铁路申请是第一个具有自动生成代码的代码以获得TüV认证的申请。”

  • 建立的通用语言。Geerligs解释说:“有一种通用语言对我们来说非常重要。尽管每个人都从自己的角度看待模型,但我们知道我们正在谈论同一件事。”“我们使用Sim金宝appulink与英格兰,法国,意大利和西班牙的团队交换模型并分享知识和想法。”