用户故事

莲花工程开发控制系统软件以减少柴油排放

挑战

开发控制系统,使柴油发动机运行更清洁,并满足美国环保署柴油排放标准

解决方案

使用基于模型设计的MathWorks工具对减排组件的控制系统进行建模和模拟,然后生成用于跟踪验证测试的定点、生产意图代码

结果

  • 概念验证快速交付
  • 开发时间减少30%
  • 生成高质量的、面向产品的代码

“通过使用MathWorks工具进行基于模型的设计及其产品代码生成功能,我们变得更加敏捷,能够快速响应未来的技术软件挑战。”

罗杰·都铎,莲花工程公司
排放控制系统。

美国环境保护署(EPA)为2007年柴油废气排放制定了严格的标准,以减少95%的污染。为了符合这些标准,柴油发动机需要将氮氧化物的排放减少50%以上,颗粒物排放减少90%。

作为一家领先的汽车咨询公司,Lotus Engineering正在帮助其一家客户满足这些需求,通过使用基于模型的设计MathWorks工具对排放控制系统进行建模、模拟和生成代码。

Lotus Engineering首席工程师Roger Tudor表示:“使用MathWorks工具对我们的控制系统进行建模,使我们能够管理新排放技术的复杂性,以及催化剂和其他组件之间的相互作用。“这些工具使一项非常困难的任务对我们来说变得容易得多。我认为没有他们,我们不可能做到。”

挑战

莲花工程的客户希望避免重新设计发动机,而是选择尾气后处理,以减少排放。莲花工程需要开发一种发动机管理系统,该系统包含一系列排放控制技术和组件,如氧化催化剂、柴油微粒过滤器和氮氧化物捕集器。该系统必须管理主动和被动再生,以清洁微粒过滤器。此外,它还需要防止失控的高温条件,并管理废气的脱硫。

“这是一个雄心勃勃的项目,时间紧迫,”都铎解释道。“通常情况下,我们会在纸上画草图,但由于这个项目的复杂性和时间要求,我们需要额外的工具。”

Tudor和他的团队需要快速建模和模拟控制系统,然后自动生成产品级代码用于轨道验证测试。

解决方案

莲花工程使用Simulink和statflow万博1manbetx开发了一个发动机管理系统,以控制柴油排放和嵌入式编码器®为系统生成产品意图代码。

为了启动该项目,Tudor参加了MathWorks培训,并与MathWorks咨询公司一起进行了现场协助。“参考文件、例子和培训课程格式都很出色。专家咨询支持也非常好,反应迅速。万博1manbetx

Tudor使用Simu万博1manbetxlink和statflow开发了催化剂和额外燃料喷油器的算法和控制策略。他们使用statflow来控制系统中事件的时间。Simu万博1manbetxlink模型还集成了安全功能,用于控制后处理系统中的温度和主开关。

Tudor利万博1manbetx用MATLAB Central上的Legacy Code工具生成的Simulink s -函数,结合了现有的插值表算法。“我将遗留代码集成到模型中,所以我知道我是在用真正的算法进行模拟。生成的代码也非常简洁地调用了这些相同的算法,”Tudor解释道。

Tudor利用MATLAB导入插值表,然后保存到目标的标定区域。他还使用MATLAB对真实数据的录音进行后处理,以反馈到仿真中。

然后Tudor使用Simulin万博1manbetxk模拟和验证系统,然后使用Embedded Coder自动生成产品意图代码。然后他将生产意图代码下载到摩托罗拉的MPC563微控制器上。尽管代码是有效的,但目标上的浮点性能是不可接受的,因此Tudor使用来自Simulink fixed point的数据类型将模型转换为固定点。万博1manbetx

莲花工程不久将开始在极端条件下进行车辆测试。“我们正在改进战略。MathWorks工具将帮助我们在该领域快速做出改变,避免延误和潜在的误解,”Tudor说。

基于MathWorks工具的早期成功,该团队正在对一个完整的引擎控制单元进行建模。

结果

  • 概念验证快速交付.“在项目的第一个月,我们的客户想看到节流对扭矩的影响。我们创建了一个Simuli万博1manbetxnk模型,使油门与燃料量和时间的变化同步,以产生最大的催化剂温度,”Tudor解释说。“我们从模型中自动生成代码,并将其放入测试轨道上的车辆中。基于测试,客户对我们能够达到项目目标很有信心。”

  • 开发时间减少30%.“以前,我们会开发一个流程图作为第一项任务,并从中手工编写代码,”Tudor报告说。“现在,我们使用Simul万博1manbetxink和statflow进行详细设计,并简单地生成和测试代码。我们不仅减少了30%的开发时间,而且现在我们的设计模型更容易在程序生命周期中进行同行评审和维护。”

  • 生成高质量的、面向产品的代码.“Simulink Coder生成的代码质量万博1manbetx比手工代码好多了。错误是在设计中,而不是在代码中,它们更容易识别和纠正。因为我们可以在statflow和Simulink中更容易地发现和修复错误,所以我们可以快速迭代和重新测试。”万博1manbetx