一起游 手游攻略 手游评测 基于ETAS嵌入式AI工具链将机器学习模型部署到量产ECU

基于ETAS嵌入式AI工具链将机器学习模型部署到量产ECU

时间: 来源:互联网 浏览:0

前言:

人工智能在汽车行业的应用日益深入。如何将机器学习领域的先进模型(如虚拟传感器)集成到ECU软件中已成为行业面临的核心挑战。

基于ETAS 最新的嵌入式AI 工具,本文将介绍一种创新路径,旨在帮助工程师在当前嵌入式控制器ECU 上高效开发、优化并成功部署ML 模型。文章还将探讨这种变革性的方法如何重塑开发工程师的角色,并加速人工智能技术在汽车领域的传播。

1. 实际案例

我们以一个具体的函数为例来说明:基于数据驱动的ML模型来预测传统燃油发动机的进气质量(Air Mass),最后在ECU控制器上运行。通过这个案例,我们将更加完整地展示ETAS嵌入式AI工具链的一般工作流程。

通常,能够再现真实物理传感器功能特性的软件模型被称为虚拟传感器。本例中,建模数据来自于发动机试验台,这里不再赘述。我们的重点将放在从测量数据开始,通过自动ML 模型构建,最后为发动机控制器生成高度优化的C 代码的完整工作流程。

26e6089a-df1f-11f0-8c8f-92fbcf53809c.png

图1:进气质量估算模型

2. 机器学习模型开发

对于许多在日常工作中不经常遇到此类任务的工程师来说,使用现代机器学习算法创建数据驱动模型是一项挑战。因此,一个能够妥善处理测量数据适配、算法选择以及复杂模型参数抽象简化的工具就显得尤为重要。理想的工具应该专注于让工程师轻松面对核心问题。

274006ce-df1f-11f0-8c8f-92fbcf53809c.png

图2:ML 模型类型

工程师需要了解哪些系统参数可能对目标建模变量产生重要影响以及哪些数据适合解决手头的问题。特别是在处理瞬态测量数据和模型时,大量的数据及其采样率是关键考虑因素。

ETAS的ASCMO工具为上述各个环节提供了强有力的支持,帮助工程师轻松构建初始模型。

标准工作流程如下:

选择测量文件:确定初始测量文件并指定影响系统行为和要建模的目标输出的相关参数。

调整采样时间:优化采样率以充分捕获所有相关效果,同时避免数据量过大影响建模速度。

模型构建和训练:利用独特的自动化机器学习功能实现机器学习自动化,以探索所选系统输入和输出之间的依赖关系。

2.1 选择测量文件

选择目标测量文件后,ASCMO 将显示其中包含的所有信号的列表。工程师选择所需的信号并将其定义为“输入”或“输出”。此外,还可以在此阶段指定合适的采样时间。

279c5672-df1f-11f0-8c8f-92fbcf53809c.png

图3:加载测量文件的信号选择界面(带有采样时间等选项)

预览功能可以直观地显示所选信号的数据是否在预期范围内,并显示出合理的变化趋势。信号选择支持过滤和保存,大大简化了测量文件的管理,方便后期其他项目的复用。

2.2 调整采样时间

为了应对各种潜在情况,测量数据往往以高分辨率收集,这也导致数据量很大,可能成为后续建模的障碍,并增加计算时间和PC内存消耗。同时,太高的分辨率还可能引入与真实物理关系无关的噪声。因此,仔细考虑适当的采样时间和必要的过滤方法对于确保模型的准确性至关重要。

为此,ASCMO 提供了调整采样时间并使用滤波器消除数据噪声的选项。

27f9e4e0-df1f-11f0-8c8f-92fbcf53809c.png

图4:可能存在噪声或过采样的测量结果

2.3 模型构建与训练

ASCMO 中构建模型有两种主要策略

第一种是手动流程,提供了最大的灵活性,但需要工程师深入了解各种AI机器学习算法、其应用场景和相关参数;

另一种是自动化机器学习策略,旨在自动执行寻找最佳模型类型并配置它的繁琐任务。由于搜索空间可能非常大,因此通常需要在尝试多个模型来选择最佳解决方案所需的时间与缺乏先验知识之间进行权衡。

对于在数据驱动建模和机器学习算法方面缺乏经验的工程师来说,找到合适的模型和最佳配置仍然不容易。 ASCMO内置了一套核心思想,其设计原则是提供充分的模型探索,同时避免过多的选择压垮工程师。

为了获得更准确的模型,经验丰富的工程师还可以手动测试不同的模型类型,并使用大量可调整的参数来评估其质量。对于不熟悉此类模型或想要提高效率的工程师来说,ASCMO 的“AutoML”功能使用优化启发式方法,自动找到针对特定建模问题的最佳模型类型和配置。这个过程的耗时取决于问题的复杂程度、测量数据量以及系统输入的数量。

自动化机器学习模型探索的结果以帕累托前线图的形式呈现,其中包含模型误差和模型复杂性。当前所选模型的详细信息显示在右侧。当前选择的模型如图5所示,是包含3层的“GRU”型递归神经网络,RMSE值约为22。

28585336-df1f-11f0-8c8f-92fbcf53809c.png

图5:不同模型的帕累托前线图(模型误差与模型复杂性)。误差越低,模型通常越复杂。

为了验证模型质量,必须使用独立的测试或验证数据集将模型推论与实际测量结果进行比较。 ASCMO 支持导入任何附加数据集来测试模型,并包括协助选择适当测试数据的功能。只有当模型能够很好地泛化并可靠地预测未知行为时,它才真正具有应用价值。

28b02926-df1f-11f0-8c8f-92fbcf53809c.png

图6: 模型预测(蓝色)与测量真实值(黑色)的比较,——GRU模型,输出空气质量随时间的变化

在帕累托前沿,追求较低的模型误差往往意味着接受较高的模型复杂度(参数数量)。当计划将此模型部署到嵌入式设备(例如发动机控制器ECU)时,必须权衡这一点。针对此类应用,ETAS安全高效的专用代码生成工具Embedded AI Coder被巧妙地添加到当前的工作流程中。

一旦工程师选择了合适的模型,ASCMO就可以将其导出为多种格式(例如,它也可以在仿真环境中使用)。这里提供了专用的格式供Embedded AI Coder直接读取和使用。同时,为了最大限度地提高操作便利性,该操作也可以直接从ASCMO菜单界面启动,自动生成高度优化的嵌入式C代码。

290c4ad0-df1f-11f0-8c8f-92fbcf53809c.png

图7: 在ASCMO的GUI菜单页面直接调用Embedded AI Coder

3. 性能

微控制器MCU资源有限,面临严格的实时性限制。与其他商业C 编译器类似,Embedded AI Coder 使用多种技术来优化运行时性能和内存使用。

使用专用API 来实现特定功能。例如,与通用实现相比,优化的饱和函数可以节省6 个CPU 周期。

许多矩阵点积运算需要使用预序运算进行部分数据切片。该工具重复使用已加载到内存中的数据,而不是完全重新加载数据,从而显着节省硬件资源。

智能内存分区尝试通过分析所有神经网络层来分配尽可能少的RAM。它的策略是重用可用的内存区域,而不是总是请求新的内存。

此外,硬件资源估算功能可以让工程师尽早评估所选型号是否适合目标MCU。

如图8 所示,两个替代模型源自ASCMO 的Pareto 前沿。

29668a18-df1f-11f0-8c8f-92fbcf53809c.png

图8:嵌入式部署的两种模型变体

图9 和图10 证实了这一预期:相对简单的模型比高度准确的模型占用的资源少得多。

29c1bba4-df1f-11f0-8c8f-92fbcf53809c.png

图9:模型(2),更高的RMSE 和更低的复杂度

29c1bba4-df1f-11f0-8c8f-92fbcf53809c.png

图10:模型(1),较低的RMSE 和较高的复杂度

详细分析硬件运行资源使用情况有助于在模型构建阶段进行优化。通过提供这些全面的功能,ETAS嵌入式人工智能工具链有效地支持工程师做出权衡决策并为特定项目需求选择最佳模型。

从ASCMO v5.16开始,AI Coder的硬件资源估算正式内置于ASCMO的AutoML功能中,这有助于在探索最佳模型和参数时提前考虑目标硬件的具体内存和性能约束(RAM、ROM、Runtime)。这种预筛选机制确保ASCMO 只推荐在给定约束下提供最佳质量的模型类型。

2a7e82e8-df1f-11f0-8c8f-92fbcf53809c.png

图11:AutoML 界面中的硬件资源限制是可选的

2ad9d77e-df1f-11f0-8c8f-92fbcf53809c.png

图12:此时Pareto Front根据硬件资源考虑显示所有可选模型。

最终,工程师根据实际需求和喜好做出适当的选择。一般来说,选择尽可能简洁同时仍满足精度要求的模型是明智的。

4. 部署到目标硬件

正如ASCMO 通过用户友好的工作流程抽象了机器学习的复杂性一样,Embedded AI Coder 也致力于简化将机器学习模型转换为资源高效、安全可靠的代码的过程。该功能将在后续章节中详细介绍。

4.1 代码集成

首先,生成的代码需要轻松集成到任何现有的ECU 软件开发工具链中。如图所示,自述文件中详细介绍了所有集成指南。

2b385358-df1f-11f0-8c8f-92fbcf53809c.png

图13:生成的代码文件夹概述。

/code/CMakeLists.txt 和/code/CMakePresets.json 等其他文件允许用户轻松集成和编译任何设备和工具链的代码。如果工程师部署基于CI/CD管道的服务器自动化流程,也可以通过命令行调用该工具。

2ba77fa8-df1f-11f0-8c8f-92fbcf53809c.png

图14:带有详细注释的示例集成文件。

此外,对于使用MATLAB/Simulink等基于模型的软件开发的用户,AI Coder在生成代码的同时可以直接将其打包成Simulink模块库,直接拖入模型开发和仿真环境中。

2c0476ae-df1f-11f0-8c8f-92fbcf53809c.png

图15:多种代码集成方式

4.2 安全与合规性

生成的代码满足ISO26262 等汽车功能安全标准的所有要求,确保与原始ML 模型的行为一致,确保内存安全并符合MISRA 规范。

Embedded AI Coder将对生成的代码进行自动化测试和验证,这大大减少了软件最终发布所需的工作量。

2c603c5a-df1f-11f0-8c8f-92fbcf53809c.png

图16:逐层验证流程

功能安全是汽车系统的重中之重,需要确保生成的C代码能够无异常地正确执行ML模型。为此,Embedded AI Coder 采用自动验证例程来仔细检查神经网络的各个层以及ML 模型的整体输出。在代码生成过程中,ML模型操作的每一步都首先经过独立的验证例程。对编码器进行数值验证,确保生成的C代码在每个独立操作上产生的中间结果与原始模型相应神经网络层的结果一致。同时,验证过程确保仅访问合法的内存区域。

通过全局验证,最终检查生成的ML 模型输出的数值等效性和内存访问合法性。数值等效是指,当使用验证数据时,ETAS ASCMO模型计算的结果与生成代码计算的结果完全相同,在代码生成过程中不会引入任何副作用,并且表现与原始模型完全相同。工程师将收到一份验证报告,证明ML模型的执行满足功能安全要求,并满足量产项目所需的等级标准。

2cbb1dc8-df1f-11f0-8c8f-92fbcf53809c.png

图17:自动验证结果

5.嵌入式AI工具链总结与展望

以上展示了如何简洁快速地生成高精度模型,并进一步将其转化为安全高效的用于嵌入式系统(如控制器ECU)的C代码。

2d23d4f8-df1f-11f0-8c8f-92fbcf53809c.png

图18:ETAS 嵌入式AI 工具链

ETAS嵌入式AI解决方案成功弥合了传统汽车领域的软件开发和标定工程师与机器学习新领域之间的差距,能够推动AI在汽车电子领域的创新应用。

AI模型在嵌入式ECU中的三大应用场景

1、虚拟传感器:利用现有信号预测目标物理量

用经过训练的ASCMO 模型替换物理传感器,以节省硬件成本

当物理传感器出现故障时,它作为备份软件传感器,确保系统安全。

估计物理传感器无法安装或测量的信号

应用实例:NTC传感器信号仿真、电机转子位置估计等。

2. 大幅缩短软件标定工作量

直接使用训练好的ASCMO模型替代基于物理原理的复杂ECU模型

获得更好的估计质量,同时显着减少校准工作。它避免了维护DCM 文件和更新极其复杂模型中的大量查找表和逻辑的手动且耗时的过程。

应用示例:扭矩模型、进气模型、氮氧化物(NOx)排放模型等。

3. 预测性维护

利用健康状态下系统的稳健信号数据来训练ASCMO 异常检测自动编码器模型

检测系统异常行为,防止损坏并提前通知用户或运维人员

应用示例:运动部件的健康监测

标题:基于ETAS嵌入式AI工具链将机器学习模型部署到量产ECU
链接:https://yqqlyw.com/news/sypc/61979.html
版权:文章转载自网络,如有侵权,请联系删除!
资讯推荐
更多
  • 前Rare工作室开发者怒喷用AI做游戏
  • AI VTuber Neuro
  • 绯红之境兑换码最新2021 礼包兑换码大全

    绯红之境兑换码最新2021 礼包兑换码大全[多图],绯红之境兑换码怎么领取?绯红之境兑换码有哪些?绯红之境在今日

    2025-12-24
    三国群英传7霸王再临攻略 霸王再临攻略技巧开启方法

    三国群英传7霸王再临攻略 霸王再临攻略技巧开启方法[多图],三国群英传7霸王再临怎么玩?三国群英传7霸王再临

    2025-12-24
    妄想山海怎么加好友 加好友方法大全

    妄想山海怎么加好友 加好友方法大全[多图],妄想山海添加好友功能在哪里?妄想山海添加好友的方法是什么?好友添

    2025-12-24
    江南百景图又见桃花村钓鱼位置在哪?又见桃花村钓鱼攻略

    江南百景图又见桃花村钓鱼位置在哪?又见桃花村钓鱼攻略[多图],江南百景图又见桃花村钓鱼怎么钓?又见桃花村钓

    2025-12-24