MATLAB/Simulink 嵌入式 AI 系列文章:(一)嵌入式 AI 与工程应用

作者:马文辉,文章来源:MATLAB

随着人工智能(AI)技术的飞速发展,嵌入式AI正逐步成为推动智能制造、自动驾驶、智能物联网等领域创新的核心动力。在现代工程应用中,AI 不仅仅是数据分析和决策支持的工具,更是嵌入到终端设备、边缘系统,甚至微型传感器中的智能大脑。嵌入式 AI 的发展,既得益于算法的进步,也离不开硬件算力的提升与嵌入式开发平台的持续演化。MATLAB/Simulink 作为全球领先的工程建模与仿真平台,已成为众多工程师和技术开发者实现嵌入式 AI 创新的首选工具。

什么是嵌入式 AI?

嵌入式AI指的是将AI算法(如机器学习、深度学习)集成到嵌入式系统中,使设备具备本地感知、推理和决策能力。无需依赖云端计算。这类系统通常运行在资源有限的环境上。嵌入式 AI 的核心特点在于:

嵌入式环境.png

嵌入式环境

  • 与硬件深度绑定的优化需求

嵌入式平台的算力远不如 GPU 或云端服务器,因此 AI 模型需要被 压缩、量化,并且需要用 C/C++ / HDL 等嵌入式语言加以实现。

  • 面向专用任务

嵌入式 AI 通常执行高度定制化任务,如:电机转速估计,电池 SoC 虚拟传感,小型设备上的图像检测,噪声环境中的语音识别等等,这些场景对实时性要求高,模型不能太大,推理必须稳定可靠。

  • 资源受限

嵌入式设备往往只有数十到数百 KB 内存、数百 MHz 主频、功耗限制(尤其是电池设备),因此模型不能依赖大型运行库,更不能像云端那样使用巨大推理引擎。

为什么要用嵌入式 AI?

在传统架构中,智能更多存在于系统之外。设备负责采集数据、执行指令,而复杂的分析与决策则交给算力充沛的后台或云端。这样的模式在面对高速变化的物理世界时,如旋转的电机、持续运行的产线、随时需要响应的车辆与设备,问题就显现出来。数据传输不一定及时、指令返回需要一定时间,网络并不总是可靠,而系统必须在微妙甚至纳秒级别做出判断。于是,工程人员开始意识到,真正有价值的智能,不能总是远/云端。

与此同时,工程系统本身也在变得越来越复杂。现实世界中的设备并不总是遵循理想模型:环境在变化,器件在老化,工况在切换,许多细微但关键的因素难以被完整建模。传统方法依赖清晰的物理假设和参数调节,面对这些复杂性时,往往需要不断叠加补偿与规则,开发周期变长。数据驱动的 AI 方法,恰好提供了另一条路径——不是完全替代工程模型,而是在模型难以覆盖的地方,用数据去补充认知。当这种认知能力被放进设备中时,系统便开始具备更贴近真实世界的判断能力。

嵌入式AI的意义不仅仅在于让设备更智能,还要让系统更贴近真实世界的运行方式。它能让设备能够在本地理解数据、现场做出决策;它让工程师能够把体现经验的数据转化为可验证、可部署、可维护的算法。因此嵌入式AI现在已经不是一个选项,而成为现代工程系统中的重要组成部分,是系统演进的结果。

MATLAB/Simulink 在嵌入式 AI 中的优势

业界常用的深度学习框架包括 PyTorch、TensorFlow,它们偏向模型开发而非嵌入式落地。相比之下,MATLAB/Simulink 具有工业属性更强的优势。MATLAB/Simulink 为嵌入式AI的开发提供了全流程、一体化的平台,具备以下显著优势:

  • 支持端到端的嵌入式 AI 工作流程:

从数据预处理、AI 模型训练,到AI模型与系统建模集成、系统级仿真和测试,再到自动生成嵌入式代码(C/C++/CUDA/FPGA),整个开发流程在同一环境内完成,减少工具链切换和集成工作量,支持从工程需求端到嵌入式代码运行端的完整闭环。

端到端的嵌入式 AI 开发.png

端到端的嵌入式 AI 开发

  • 丰富的 AI 算法库及跨框架协同:

MATLAB 提供机器学习、深度学习、强化学习等多种AI算法,支持 CNN、RNN、Transformer 等主流网络结构和算法,同时也支持第三方框架算法/模型的导入和导出,如 PyTorch/TensorFlow/ONNX。这些能力对于企业内部跨部门合作提供“不推倒重来”的优势。

MATLAB 与其它框架的交互.png

MATLAB 与其它框架的交互

  • 无缝的模型验证与仿真集成

作为同一个平台下的不同功能软件,MATLAB 训练的 AI 模型可与 Simulink 无缝集成。Simulink 提供图形化建模环境,便于工程师构建复杂系统的多域仿真。AI 模型可与物理模型协同进行闭环仿真、实时仿真、硬件在环(HIL)验证,便于系统级功能与时间行为验证,确保嵌入式 AI 在部署前经过全面验证,提升系统可靠性与安全性。

HIL 验证.png

HIL 验证

  • AI 模型压缩与优化

支持量化、剪枝、算子融合等技术;生成的代码可做内存/性能优化以满足嵌入式资源约束;支持生成针对 GPU/CUDA、ARM 等的加速代码。这对于工程团队来说,这些能力可在生成代码前就完成验证,而不是“上板后再调”。

模型压缩.png

模型压缩

  • 自动代码生成与硬件部署:

通过 MATLAB Coder、Simulink Coder、Embedded Coder 等组件,可将 AI 模型自动转换为高效 C/C++ 代码,直接部署到微控制器、FPGA、SoC 等嵌入式硬件,实现模型的本地化运行。并且在系统级嵌入AI模型时,代码生成是整个系统级模型一起生成,不只是生成推理函数。

MATLAB/Simulink 支持的典型工程系统中的嵌入式 AI 应用场景

在嵌入式系统领域,随着产品复杂度和智能化程度的不断提升,传统完全依赖物理模型和规则算法的设计方式正面临越来越多的挑战。一方面,系统内部状态日益复杂,许多关键变量难以通过传感器直接获取;另一方面,高精度物理模型虽然能够真实刻画系统行为,却往往计算量巨大,难以满足系统级仿真、控制设计以及实时嵌入式运行的要求。在这样的背景下,AI 与基于模型设计方法的结合,逐渐成为嵌入式系统开发中的重要趋势。

MATLAB/Simulink 以基于模型设计为核心,为工程师提供了一个统一的平台,将物理建模、控制算法、AI 模型以及嵌入式实现整合在同一套工作流中。在众多嵌入式 AI 应用方向中,虚拟传感器和模型降阶(数据驱动的复杂系统替代)被认为是最具工程可落地性、也是最贴近实际项目需求的两类典型场景。

  • 虚拟传感器

所谓虚拟传感器,是指通过系统中已有的可测信号,利用 AI 模型来估计那些无法直接测量、或者测量成本过高的物理量。在实际工程中,这类需求极为常见。例如在电池管理系统中,电池的荷电状态、健康状态以及内部参数对控制和安全至关重要,但这些量无法通过简单的硬件传感器直接获得;在电机控制系统中,转子位置或速度传感器不仅增加成本,也可能降低系统可靠性;在工业过程控制中,一些关键工艺变量同样难以实时测量。通过虚拟传感器,这些问题可以转化为一个从“可测信号”到“目标状态”的建模问题。

虚拟传感器.png

虚拟传感器(SOC)

在 MATLAB/Simulink 环境下,虚拟传感器通常以 AI 模型的形式嵌入到系统级模型中,与物理对象和控制器共同构成闭环系统。工程师可以在 MATLAB 中利用运行数据、实验数据、或者是仿真数据训练AI模型,再将训练好的模型直接集成到 Simulink 中进行系统级仿真与验证。这种方式可以在系统层面评估虚拟传感器对控制性能、稳定性和鲁棒性的影响,并在早期就发现潜在风险。同时,借助代码生成和模型压缩能力,虚拟传感器模型可以被部署到资源受限的嵌入式处理器上,从而真正服务于实际产品。

  • 模型降阶(或复杂系统替代)

与虚拟传感器紧密相关、但关注点有所不同的另一类应用,是复杂系统的替代与模型降阶。在许多工程项目中,高保真模型来源于有限元分析、计算流体力学或多物理场仿真,这些模型在部件设计阶段非常重要,但由于计算复杂度极高,往往无法直接用于系统级仿真、控制器设计,甚至完全不具备实时运行的可能性。这种情况下,工程师需要在精度和效率之间做出权衡,而模型降阶正是解决这一矛盾的关键技术。

基于 AI 的模型降阶,本质上是一种数据驱动的近似建模方法。工程师可以利用高保真模型或实验系统,在不同工况下生成大量输入输出数据,然后训练 AI 模型学习系统的主要动态特性。与原始高阶模型相比,AI 降阶模型在结构上更加紧凑、计算量显著降低,但仍然能够在目标工作范围内较好地复现系统行为。在 MATLAB/Simulink 中,这类 AI 模型可以被直接替换原有复杂模型,用于控制算法设计、系统级仿真、硬件在环测试,甚至直接部署到嵌入式平台,实现实时运行。

AI 驱动的模型降阶.png

AI 驱动的模型降阶

从工程角度来看,虚拟传感器和模型降阶并不是彼此独立的技术路线,而是经常在同一系统中协同使用。例如,在一个复杂机电系统中,可以首先用 AI 降阶模型替代原本难以实时仿真的高保真物理模型,再在此基础上构建虚拟传感器,用于估计系统内部状态或关键性能指标。通过这种方式,系统不仅在仿真和验证阶段获得了数量级上的加速,也为最终的嵌入式实现创造了条件。

工程师角色的演变与 AI 协同工作模式

随着 AI 技术的不断深入,工程师在设计流程中的角色也在发生深刻变化。过去,工程师更多依赖自身经验和知识进行系统设计与调优,AI 仅作为辅助工具。而当前,AI 已逐步参与到设计空间的主动探索、参数优化、系统自适应调节等核心环节,工程师则转向环境建模、约束定义、目标设定等高层次任务。行为不再完全由规则定义,模型从数据中学习,系统必须在更复杂、不稳定的环境中运行,因此,工程师的角色发生了重大变化,不只是模型的“使用者”,而是整个AI系统的“设计者与约束者”。 AI 在  MATLAB/Simulink 中是可设计、可约束、可验证的系统组件,工程师依然是系统的负责人。

在实际 AI 协同工作模式中,AI 成为工程系统的一部分。AI 模型被嵌入到系统模型中,与物理、控制、逻辑组件并列,使得AI模型不再是“外挂”算法,而是系统级组件。工程师是领域专家,他们的专业知识对 AI 项目的成功至关重要。而 MATLAB/Simulink 的价值在于降低 AI 使用门槛,让领域工程师都能参与到AI模型设计、训练、调优和部署中,形成工程专家+AI 工具的协同模式,让工程师继续做工程师,但拥有 AI 这一新的系统组件。

写在最后

MATLAB/Simulink 并未将 AI 应用局限在算法层面,而是将其完整地纳入基于模型设计的工程流程中。从数据生成、模型训练,到系统集成、验证测试,再到代码生成和嵌入式部署,所有环节都围绕系统模型展开。本篇文章是嵌入式 AI 系列文章第一篇,后续针对嵌入式 AI 应用端到端开发流程中的每个重要环节都会有相应的文章进行展开介绍,欢迎大家继续关注。