用户故事

通用汽车欧洲工程部采用基于模型的设计为通用汽车开发暖通空调控制器

挑战

为全球通用汽车设计先进的嵌入式暖通空调控制器

解决方案

使用MathWorks工具和基于模型的设计来开发和实现带有可重用组件的实时控制器

结果

  • 在全球54个产品中重用的系统模型s manbetx 845
  • 通过早期验证提高质量
  • 团队沟通改进

“用C语言手工编写代码来开发像我们这样复杂的暖通空调系统是不可能的。基于模型的设计不仅使开发成为可能,而且使其更快,同时使我们能够比以前提前数月进行验证和测试。”

Johan Hägnander,通用汽车欧洲工程公司
通用汽车仪表盘装有暖通空调控制系统。

通用汽车欧洲工程公司(GM Engineering Europe)采用基于模型的设计(Model-Based Design)开发了一个复杂的嵌入式HVAC控制系统,通过实时模拟环境温度、太阳负荷、传热机制、对流、空气流动和热辐射的影响,计算整个汽车内部的空气温度。

通用汽车欧洲工程公司(GM Engineering Europe)软件控制组底盘控制经理Johan Hägnander表示:“由于时间有限,我们不可能通过C语言手工编码开发出如此复杂的模型。”“使用基于模型设计的MathWorks工具,我们创建了暖通空调系统的系统级模拟,以验证项目早期的功能和性能。然后我们使用相同的模型生成用于原型设计的代码,最后将目标锁定用于产品硬件的代码。”

挑战

通用汽车欧洲工程公司的工程师在为通用汽车欧洲品牌开发软件方面拥有多年的经验。最近,该集团开始负责为全球所有通用汽车开发暖通空调软件,包括新型混合动力和增程式电动汽车。

Hägnander表示:“我们的开发平台必须更加灵活,因为我们希望用相同的核心软件支持所有通用汽车。”万博1manbetx“我们还需要为混合动力汽车添加新的功能,将电力消耗降至最低是重中之重。”

此外,通用汽车欧洲工程部希望有一个平台,使亚洲、北美和欧洲的工程团队能够有效地合作。

在过去,通用汽车的工程师要等到整个系统开发完成,硬件可用后才能开始测试。通用汽车欧洲工程公司的软件开发人员格哈德•斯坦格尔解释说:“我们的目标是在设计过程中更早地验证设计。”

开发新的,更复杂的暖通空调控制器的团队也被期望保持他们的交付时间表的产品已经在管道中。s manbetx 845

解决方案

为了开发新的暖通空调控制器,通用工程师使用了MathWorks工具,并采用了基于模型的设计(Model-Based Design),这种方法使他们能够在硬件可用之前,在各种故障条件下验证设计并测试组件。

该团队与MathWorks顾问合作,在Simulink中开发了整个HVAC控制器的模型框架万博1manbetx®,然后集成用C编写的现有组件。

工程师将C语言编写的组件转换为Simulink和statflow万博1manbetx®模型,添加功能以满足当前的设计需求。这种方法使他们能够一个组件一个组件地更新系统,同时保持向进入生产的车辆交付最新控制软件的能力。

用Simu万博1manbetxlink报表生成器, GM Engineering Europe为他们的Simulink和statflow模型创建了文档,帮助团队万博1manbetx成员理解其他人创建的组件设计。Simu万博1manbetxlink框架与本文档相结合,使通用汽车在印度、北美、德国和瑞典的工程团队能够并行进行设计。

包括混合动力汽车电动压缩机控制在内的新组件完全是在Simulink和statflow中开发的。万博1manbetx该团队为压缩机、鼓风机和辅助热开发了S万博1manbetximulink工厂模型,通过闭环模拟验证组件功能。

用仿真软件万博1manbetx编码器,他们为在Simulink中建模的组件自动生成代码,并使用快速原型硬件进行实时的车载测试。万博1manbetx因为代码是从他们的系统模型中自动生成的,所以他们可以在几分钟内对模型进行更改,重新生成代码,并测试新版本。

然后他们使用Embedded Coder生成产品代码®并将其部署到目标的32位微控制器上。

新的控制器已经安装在数辆量产车型上,包括欧宝Insignia,通用汽车的工程师正在努力实现完整的Simulink,增加每个软件版本中自动生成代码的百分比。万博1manbetx

结果

  • 在全球54个产品中重用的系统模型s manbetx 845。Hägnander表示:“一旦我们转向基于模型的设计,我们就能够在许多不同的车辆上使用相同的核心系统,只需校准车辆尺寸等参数,然后重新生成生产代码。”

  • 通过早期验证提高质量。“在目标上调试和在模型中调试之间没有竞争,”Stengel说。“在过去,我们只能在整个系统部署后进行测试。使用Sim万博1manbetxulink,我们几个月前就在组件层面进行了模拟和测试,这提高了最终产品的质量。”

  • 团队沟通改进。H万博1manbetxägnander说:“Simulink模型比C代码更容易理解。”“你可以更好地了解你和你的队友在开发什么——特别是当你可以通过模拟看到模型的执行时。”