0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于模型设计开发面向服务的应用(SOA)

MATLAB 来源:MATLAB 作者:MATLAB 2021-05-18 15:15 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前言

软件定义汽车时代车载软件爆炸式增长,向控制器中加入更多功能,或者向现有的电子电气架构中增加更多的控制器的增量式扩展路径都已经无法应对越来越复杂的系统集成和越来越高的硬件成本,我们必须重新思考电子电气和软件架构的新模式。

随着电子电气架构从分布到集中再到高性能高连接的发展,软件架构也经历了软硬件高度耦合到基于组件再到面向服务的演变。

面向服务的架构(SOA)给汽车行业带来了新的挑战:

1)SOA 对于汽车行业还是个新事物,开发人员是否需要从头开始学习包括中间件在内的新架构和方法论?

2)传统的软件架构平台和 SOA在一定时期内还将长期共存,是否需要不同的开发方式甚至人员组织来对应?

3)原有相关测试验证的知识经验、工作流程和软件资产是否还能重用?

面对上述问题,汽车行业的相关从业人员都会想知道:当前广泛采用的基于模型设计是否还能用于面向服务的应用开发?

我们的回答是肯定的。

Simulink 陆续推出的一系列功能支持 SOA 开发,包括但不限于:

1)在建模仿真能力增加了软件架构设计和面向服务的语义建模;

2)在自动化代码生成能力上拓展了对新的中间件平台标准以及 GPUFPGA 等新的硬件架构的代码生成支持;

3)在系统化测试验证能力上覆盖了从模型到代码、从测试到分析的完整功能安全软件验证要求。

案例演示

SOA 最核心的机制是面向服务的通讯(SOC),本文通过一个案例来展示 SOC 建模、集成测试、代码生成和部署标定,希望给大家一点启示。

1) 面向服务的通讯建模

传统的嵌入式控制中基本数据流是通过信号传递的,而 SOA 的基本数据流是消息。

信号涉及 writer 和 reader,只有最后被 writer 写入的数据才对 reader 有效;而消息涉及 sender 和 receiver,receiver 可以处理 sender 发送过来的历史数据。

Simulink 提供了消息的发送、接收、队列和时序等基本模块用于消息和事件机制的建模。

4c64cf5e-b4f2-11eb-bf61-12bb97331649.png

我们采用消息的收发模块来建立基本的 SOC 通讯,exServer 模型通过封装了消息发送基本模块的 Event Send 发送数据,而 exClient 模型通过封装了消息接收基本模块的 Event Receive 接收数据。

Event Send 和 Event Receive 位于 AUTOSAR Blockset 的模块库中。

4c771be6-b4f2-11eb-bf61-12bb97331649.png

4c86868a-b4f2-11eb-bf61-12bb97331649.png

2) 集成测试

在简单架构的集成时,可以直接采用模型引用的形式;对于复杂软件架构设计,可以采用 System Composer 的软件架构设计功能。

4c985856-b4f2-11eb-bf61-12bb97331649.png

exServer 的输出信号、转换为消息收发的数据和 exClient 接收到的消息转换之后的信号之间的对比,可以看到与信号对比消息有显著的“事件”特性。

4cb0409c-b4f2-11eb-bf61-12bb97331649.png

此外还可以采用时序图模块观测消息的收发对象、时序和数据关系。

4cd7626c-b4f2-11eb-bf61-12bb97331649.png

3) 代码生成

要生成面向服务的 C++ 代码需要选定中间件平台进行配置,这里以 Adaptive AUTOSAR 标准为例,在数据词典中定义服务接口端口、配置端口实例的标识号和服务发现机制。

4ce8f0b8-b4f2-11eb-bf61-12bb97331649.png

在 Simulink 模型中完成 Adaptive 对象与模型输入输出的映射。

4d35a336-b4f2-11eb-bf61-12bb97331649.png

在代码生成配置中选择 autosar_adaptive.tlc 系统目标文件;考虑到后续部署需要工具链选择 AUTOSAR Adaptive Linux Executable, 这样在生成代码的同时会生成用于 Linux 平台可执行文件编译的 CMakeLists 文件。

4d45e098-b4f2-11eb-bf61-12bb97331649.png

在生成的符合 Adaptive 通讯接口标准的 C++ 代码同时生成相关的清单文件。

4d907c20-b4f2-11eb-bf61-12bb97331649.png

4) 部署和标定

在 Linux 平台下采用 CMAKE 编译生成可执行文件即可进行部署,如果有标定需求可以采用XCP 协议。

案例中的可标定参数 mode 和 gain 都在 exServer 模型中,因此 exServer 在生成代码前需要进行额外的标定配置,这里的 mode 参数可以选择产生三角波信号或者正弦信号,gain 参数用于对信号进行缩放。

4de7bf4e-b4f2-11eb-bf61-12bb97331649.png

在配置中设置 XCP slave 的配置,包括传输层协议、可执行文件所在机器的 IP 地址和端口号,这样会同时生成用于标定的 XCP 协议代码。

4df15b44-b4f2-11eb-bf61-12bb97331649.png

生成代码后得到的 a2l 文件中没有实际的参数地址,需要在编译后输入可执行文件进行地址替换。

4dff594c-b4f2-11eb-bf61-12bb97331649.png

替换地址后的参数 mode 和 gain 在 a2l 文件中的信息如下:

4e473280-b4f2-11eb-bf61-12bb97331649.png

我们用 INCA 导入 a2l 文件进行观测和标定,下如两处红框分别是 mode 从 0 到 1 和 gain 从 1 到 2 标定修改时的信号变换。

4e52e2ba-b4f2-11eb-bf61-12bb97331649.png

总结

以上我们展示了采用基于模型设计开发面向服务应用的过程,软件架构设计、面向服务的语义建模、中间件标准支持、异构平台代码生成和人工智能算法引入等一系列能力使 Simulink 正逐渐支撑软件定义汽车时代的面向服务的应用开发,从软硬件耦合架构到基于组件开发再到面向服务的应用,让用户以算法为核心最大程度地重用原有的模型资产和开发流程。

4e733bfa-b4f2-11eb-bf61-12bb97331649.png

而行业用户已经非常熟悉的基于模型的功能安全测试验证流程也将继续助力面向服务的应用开发。

4eb0367c-b4f2-11eb-bf61-12bb97331649.png

责任编辑:lq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • gpu
    gpu
    +关注

    关注

    28

    文章

    5271

    浏览量

    136069
  • 自动化
    +关注

    关注

    31

    文章

    5984

    浏览量

    90663
  • 模型设计
    +关注

    关注

    0

    文章

    10

    浏览量

    8421

原文标题:软件定义汽车 | 基于模型设计开发面向服务的应用(SOA)

文章出处:【微信号:MATLAB,微信公众号:MATLAB】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    爱立信与于利希研究中心将合作开发面向6G的先进人工智能技术

    爱立信与于利希研究中心将合作开发面向6G的先进人工智能技术 图为于利希超级计算中心在欧洲最强大的超级计算机JUPITER机柜 *版权: 于利希研究中心 / Sascha Kreklau
    的头像 发表于 04-07 14:45 661次阅读

    利用BigQuery MCP服务开发面向数据分析的生成式AI应用

    将 AI 智能体接入企业数据,其实不需要复杂的自定义集成或耗费数周开发。12 月,我们推出了面向 Google 服务的全托管式远程 Model Context Protocol (MCP)
    的头像 发表于 02-25 10:22 448次阅读
    利用BigQuery MCP<b class='flag-5'>服务</b>器<b class='flag-5'>开发面向</b>数据分析的生成式AI应用

    SOA应用-光子集成

    SOA
    天津见合八方光电科技有限公司
    发布于 :2025年12月02日 14:50:11

    ROHM推出适用于AI服务器的宽SOA范围5 mm×6 mm小尺寸MOSFET

    ROHM(罗姆半导体)宣布,开发出实现业界超宽SOA*1范围的100V耐压功率MOSFET“RS7P200BM”。该款产品采用5060尺寸(5.0mm×6.0mm)封装,非常适用于采用48V电源AI
    的头像 发表于 11-17 13:56 518次阅读
    ROHM推出适用于AI<b class='flag-5'>服务</b>器的宽<b class='flag-5'>SOA</b>范围5 mm×6 mm小尺寸MOSFET

    服务发布配置开发服务信息

    您作为开发者的相关信息将面向服务发布区域的用户公开,其中客服联系方式可能会提供给用户,用于咨询相关问题。 登录AppGallery Connect,点击“APP与元服务”。 选择要发
    发表于 10-31 17:58

    SOA增益饱和特性仿真分析

    SOA的仿真,通常离不开载流子速率方程、传输方程、以及增益方程这三大方程,本文根据增益方程分析行波半导体光放大器TW-SOA的增益饱和特性。
    的头像 发表于 10-31 09:29 659次阅读
    <b class='flag-5'>SOA</b>增益饱和特性仿真分析

    SOA增益谱与ASE光谱的区别

    作者:见合八方王伟,见合八方刘凡 引言 在SOA的推广中,客户时常提到以下疑问:“为什么C波段SOA测得的中心波长在1500 nm?”、“为什么1310 nm SOA的中心波长为1270 nm
    的头像 发表于 07-30 16:15 1020次阅读
    <b class='flag-5'>SOA</b>增益谱与ASE光谱的区别

    技术解读 | 光庭信息虚拟ECU技术赋能SOA化MCU软件的早期验证与集成加速

        在“中央计算+区域控制+以太网”的新型电子电气架构驱动下,传统ECU功能正向面向服务架构(SOA)转型。在此背景下,传统ECU功能的快速开发与高效验证,已成为车企保障车型
    的头像 发表于 07-21 15:43 929次阅读
    技术解读 | 光庭信息虚拟ECU技术赋能<b class='flag-5'>SOA</b>化MCU软件的早期验证与集成加速

    华为开发者大会2025(HDC 2025)亮点:华为云发布盘古大模型5.5 宣布新一代昇腾AI云服务上线

    6月20日,华为开发者大会2025(HDC 2025)在东莞篮球中心隆重揭幕。本次大会包含主题演讲、峰会、专题论坛、互动体验以及数百场面向开发者的特色活动。华为携手各领域客户及伙伴,全面分享了
    的头像 发表于 06-20 20:19 4668次阅读
    华为<b class='flag-5'>开发</b>者大会2025(HDC 2025)亮点:华为云发布盘古大<b class='flag-5'>模型</b>5.5 宣布新一代昇腾AI云<b class='flag-5'>服务</b>上线

    OptiSystem应用:宽带SOA特性

    本案例的目的是通过仿真表征半导体光放大器(SOA)。 首先,我们将描述SOA对输入信号功率变化的响应。 图1显示了仿真中使用的系统布局。将连续激光器的功率参数置于扫描模式下,在-40 ~ 10
    发表于 06-10 08:45

    FA模型访问Stage模型DataShareExtensionAbility说明

    FA模型访问Stage模型DataShareExtensionAbility 概述 无论FA模型还是Stage模型,数据读写功能都包含客户端和
    发表于 06-04 07:53

    OptiSystem应用:SOA波长变换器(XGM)

    本案例演示了SOA作为使用交叉增益饱和效应(XGM)的波长变换器的应用。 波长为λ1的光信号与需要转换为波长为λ2的连续光信号同时输入SOASOA对λ1光功率存在增益饱和特性,结果使得输入光信号所
    发表于 05-20 08:46

    OptiSystem应用:宽带SOA特性

    本案例的目的是通过仿真表征半导体光放大器(SOA)。 首先,我们将描述SOA对输入信号功率变化的响应。 图1显示了仿真中使用的系统布局。将连续激光器的功率参数置于扫描模式下,在-40 ~ 10
    发表于 05-19 08:48

    领麦微红外温度传感器:发面机非接触测温

    在烘焙与面食制作领域,发面机作为关键设备,其性能的优劣直接关系到面团的发酵质量,进而影响最终成品的口感与品质。而温度控制作为发面过程中的核心要素,一直是行业关注的焦点。如今,领麦微红外温度传感器
    的头像 发表于 05-14 15:16 810次阅读
    领麦微红外温度传感器:<b class='flag-5'>发面</b>机非接触测温