AUTOSAR_EXP_ARAComAPI的6章笔记(3)

server/2024/10/24 9:24:24/

☞返回总目录

相关总结:AutoSar AP CM实例说明符的使用方法的总结

6.3 在多绑定上下文中的使用

以下部分修改了在 6.2.1 中展示的示例,描述了如何在应用程序和实例清单中为单个 PPortPrototype 定义多个网络绑定,而无需更改自适应应用程序的源代码。在这种情况下,我们将为 /apd/da/radar 服务接口添加一个额外的基于 DDS 的实例化。

1. 应用程序清单扩展

首先,应用程序清单通过一个名为 radar_Dds 的 DdsServiceInterfaceDeployment 进行扩展,展示了服务接口的 DDS 特定部署元素:

<?xml version="1.0" encoding="UTF-8"?>
<AUTOSAR xmlns="http://autosar.org/schema/r4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://autosar.org/schema/r4.0 AUTOSAR_00049.xsd"><AR-PACKAGES><AR-PACKAGE><AR-PACKAGE><SHORT-NAME>apd</SHORT-NAME><AR-PACKAGE><SHORT-NAME>da</SHORT-NAME><ELEMENTS><EXECUTABLE><SHORT-NAME>fusionExe</SHORT-NAME><CATEGORY>APPLICATION_LEVEL</CATEGORY><ROOT-SW-COMPONENT-PROTOTYPE><SHORT-NAME>fusion</SHORT-NAME><APPLICATION-TYPE-TREF DEST="ADAPTIVE-APPLICATION-SW-COMPONENT-TYPE">/apd/da/fusion</APPLICATION-TYPE-TREF></ROOT-SW-COMPONENT-PROTOTYPE></EXECUTABLE><ADAPTIVE-APPLICATION-SW-COMPONENT-TYPE><SHORT-NAME>fusion</SHORT-NAME><PORTS><P-PORT-PROTOTYPE><SHORT-NAME>radar_PPort</SHORT-NAME><PROVIDED-INTERFACE-TREF DEST="SERVICE-INTERFACE">/apd/da/radar</PROVIDED-INTERFACE-Tref></P-PORT-PROTOTYPE></PORTS></ADAPTIVE-APPLICATION-SW-COMPONENT-TYPE><SOMEIP-SERVICE-INTERFACE-DEPLOYment><SHORT-NAME>radar_Someip</SHORT-NAME><!-- ...... --></SOMEIP-SERVICE-INTERFACE-DEPLOYment><DDS-SERVICE-INTERFACE-DEPLOYment><SHORT-Name>radar_Dds</SHORT-Name><!-- ...... --></DDS-SERVICE-INTERFACE-DEPLOYment></ELEMENTS></AR-PACKAGE></AR-PACKAGE></AR-PACKAGE></AR-PACKAGES>
</AUTOSAR>

请参见图 6.1 以了解 SOME/IP 服务接口部署。

2. 实例清单配置

在实例清单中,分别列出了服务实例到机器映射 (ServiceInstanceToMachineMapping)、服务实例到端口原型映射 (ServiceInstanceToPortPrototypeMapping) 和 Provided 服务实例(ProvidedServiceInstance)的集合,每个集合都定义了 SOME/IP 和 DDS 特定的部署参数。

<?xml version="1.0" encoding="UTF-8"?>
<AUTOSAR xmlns="http://autosar.org/schema/r4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://autosar.org/schema/r4.0 AUTOSAR_00049.xsd"><AR-PACKAGES><AR-PACKAGE><AR-PACKAGE><SHORT-NAME>apd</SHORT-NAME><AR-PACKAGE><SHORT-NAME>da</SHORT-NAME><AR-PACKAGE><SHORT-NAME>instance</SHORT-NAME><ELEMENTS><!-- For SOME/IP --><SOMEIP-SERVICE-INSTANCE-TO-MACHINE-MAPPING><SHORT-NAME>radar_ProvidedServiceInstance_toMachine_Someip</SHORT-NAME><COMMUNICATION-CONNECTOR-REF DEST="ETHERNET-COMMUNICATION-CONNECTOR">/apd/da/fusionMachineDesign/fusionCommunicationConnector</COMMUNICATION-CONNECTOR-REF><SERVICE-INSTANCE-REFS><SERVICE-INSTANCE-REF DEST="PROVIDED-SOMEIP-SERVICE-INSTANCE">/apd/da/instance/radar_ProvidedSomeipServiceInstance</SERVICE-INSTANCE-REF></SERVICE-INSTANCE-REFS><UDP-PORT>33111</UDP-PORT></SOMEIP-SERVICE-INSTANCE-TO-MACHINE-MAPPING><SERVICE-INSTANCE-TO-PORT-PROTOTYPE-MAPPING><SHORT-NAME>radar_ProvidedServiceInstance_toPort_Someip</SHORT-NAME><PORT-PROTOTYPE-IREF><CONTEXT-ROOT-SW-COMPONENT-PROTOTYPE-REF DEST="ROOT-SW-COMPONENT-PROTOTYPE">/apd/da/fusionExe/fusion</CONTEXT-ROOT-SW-COMPONENT-PROTOTYPE-REF><TARGET-PORT-PROTOTYPE-REF DEST="P-PORT-PROTOTYPE">/apd/da/fusion/radar_PPort</TARGET-PORT-PROTOTYPE-REF></PORT-PROTOTYPE-IREF><PROCESS-REF DEST="PROCESS">/apd/da/fusion_instance1</PROCESS-REF><SERVICE-INSTANCE-REF DEST="PROVIDED-SOMEIP-SERVICE-INSTANCE">/apd/da/instance/radar_ProvidedSomeipServiceInstance</SERVICE-INSTANCE-REF></SERVICE-INSTANCE-TO-PORT-PROTOTYPE-MAPPING><SOMEIP-PROVIDED-SERVICE-INSTANCE><SHORT-NAME>radar_ProvidedSomeipServiceInstance</SHORT-NAME><SERVICE-INTERFACE-DEPLOYMENT-REF DEST="SOMEIP-SERVICE-INTERFACE-DEPLOYMENT">/apd/da/deployment/radar_Someip</SERVICE-INTERFACE-DEPLOYMENT-REF><!-- ...... --><SERVICE-INSTANCE-ID>19</SERVICE-INSTANCE-ID></SOMEIP-PROVIDED-SERVICE-INSTANCE><!-- For DDS --><DDS-SERVICE-INSTANCE-TO-MACHINE-MAPPING><SHORT-NAME>radar_ProvidedServiceInstance_toMachine_Dds</SHORT-NAME><COMMUNICATION-CONNECTOR-REF DEST="ETHERNET-COMMUNICATION-CONNECTOR">/apd/da/fusionMachineDesign/fusionCommunicationConnector</COMMUNICATION-CONNECTOR-REF><SERVICE-INSTANCE-REFS><SERVICE-INSTANCE-REF DEST="DDS-PROVIDED-SERVICE-INSTANCE">/apd/da/instance/radar_ProvidedSomeipServiceInstance</SERVICE-INSTANCE-REF></SERVICE-INSTANCE-REFS></DDS-SERVICE-INSTANCE-TO-MACHINE-MAPPING><SERVICE-INSTANCE-TO-PORT-PROTOTYPE-MAPPING><SHORT-NAME>radar_ProvidedServiceInstance_toPort_Dds</SHORT-NAME><PORT-PROTOTYPE-IREF><CONTEXT-ROOT-SW-COMPONENT-PROTOTYPE-REF DEST="ROOT-SW-COMPONENT-PROTOTYPE">/apd/da/fusionExe/fusion</CONTEXT-ROOT-SW-COMPONENT-PROTOTYPE-REF><TARGET-PORT-PROTOTYPE-REF DEST="P-PORT-PROTOTYPE">/apd/da/fusion/radar_PPort</TARGET-PORT-PROTOTYPE-REF></PORT-PROTOTYPE-IREF><PROCESS-REF DEST="PROCESS">/apd/da/fusion_instance1</PROCESS-REF><SERVICE-INSTANCE-REF DEST="PROVIDED-DDS-SERVICE-INSTANCE">/apd/da/instance/radar_ProvidedDdsServiceInstance</SERVICE-INSTANCE-REF></SERVICE-INSTANCE-TO-PORT-PROTOTYPE-MAPPING><DDS-PROVIDED-SERVICE-INSTANCE><SHORT-NAME>radar_ProvidedDdsServiceInstance</SHORT-NAME><SERVICE-INTERFACE-DEPLOYMENT-REF DEST="DDS-SERVICE-INTERFACE-DEPLOYMENT">/apd/da/deployment/radar_Dds</SERVICE-INTERFACE-DEPLOYMENT-REF><!-- ...... --><SERVICE-INSTANCE-ID>19</SERVICE-INSTANCE-ID></DDS-PROVIDED-SERVICE-INSTANCE></ELEMENTS></AR-PACKAGE></AR-PACKAGE></AR-PACKAGE></AR-PACKAGE></AR-PACKAGES>
</AUTOSAR>

以上内容部分省略,如果需要完整的 markdown 格式输出原始文件中的 xml 内容,需要将省略部分补齐,此处只展示了如何将原始文本以 markdown 格式输出并对重要内容进行分点展示。

希望绑定到 /apd/da/radar 服务接口(Service Interface,SI)实例的自适应应用程序现在必须根据其网络绑定(数据分发服务(Data Distribution Service,DDS)或 SOME/IP)偏好,在其实例清单(Instance Manifests)中正确配置服务实例到机器映射(ServiceInstanceToMachineMapping)、服务实例到端口原型映射(ServiceInstanceToPortPrototypeMapping)以及 Provided 服务实例(ProvidedServiceInstance)子类。

3. 总结

这部分内容展示了在多绑定上下文中对 /apd/da/radar 服务接口进行配置的相关操作,包括应用程序清单扩展和实例清单配置两个主要部分,同时强调了自适应应用程序在绑定该服务接口实例时需正确配置相关映射和子类。


http://www.ppmy.cn/server/134407.html

相关文章

MongoDB快速入门

MongoDB 概念 什么是 MongoDB MongoDB 是在2007年由DoubleClick公司的几位核心成员开发出的一款分布式文档数据库&#xff0c;由C语言编写。 目的是为了解决数据大量增长的时候系统的可扩展性和敏捷性。MongoDB要比传统的关系型数据库简单很多。 在MongoDB中数据主要的组织…

深入解析 Jenkins 自动化任务链:三大方法实现任务间依赖与状态控制

文章目录 前言1. 使用 “Build Trigger”&#xff08;构建触发器&#xff09;2. 使用 Jenkins Pipeline 实现任务触发3. 使用 Jenkins 的 “Parameterized Trigger Plugin” 插件例子1&#xff1a;任务 A 成功后自动执行任务 B例子2&#xff1a;任务 A 成功后自动执行 Pipeline…

基于SpringBoot+Vue+uniapp的C语言在线评测系统的详细设计和实现

详细视频演示 请联系我获取更详细的演示视频 项目运行截图 技术框架 后端采用SpringBoot框架 Spring Boot 是一个用于快速开发基于 Spring 框架的应用程序的开源框架。它采用约定大于配置的理念&#xff0c;提供了一套默认的配置&#xff0c;让开发者可以更专注于业务逻辑而不…

线性回归(一)

线性回归 1.基本术语 ①特征&#xff1a;预测所依据的自变量称为特征或协变量 ②标签&#xff1a;试图预测的目标称为标签或目标 2.举个栗子 线性假设是指目标&#xff08;房屋价格&#xff09;可以表示为特征&#xff08;面积和房龄&#xff09;的加权和&#xff0c;如下面…

axios直接上传binary

axios直接上传二进制文件 、 axios直接上传apk、axios直接上传binary postman中的参数选项中有个binary&#xff0c;平常我们很少使用&#xff0c;可能有的同学遇到这种情况不太会了&#xff0c;认为后端应该有个字段名来接收&#xff0c;或者使用 Formdata&#xff0c;但其实…

「Qt Widget中文示例指南」如何实现半透明背景?

Qt 是目前最先进、最完整的跨平台C开发工具。它不仅完全实现了一次编写&#xff0c;所有平台无差别运行&#xff0c;更提供了几乎所有开发过程中需要用到的工具。如今&#xff0c;Qt已被运用于超过70个行业、数千家企业&#xff0c;支持数百万设备及应用。 本文将为大家展示如…

舍伍德业务安全架构(Sherwood Applied Business Security Architecture, SABSA)

舍伍德业务安全架构&#xff08;Sherwood Applied Business Security Architecture, SABSA&#xff09;是一个企业级的安全架构框架&#xff0c;它提供了一个全面的方法来设计和实现信息安全策略。SABSA模型将业务需求与安全控制相结合&#xff0c;确保企业的信息安全措施能够支…

【毕业设计】工具大礼包之『Maven3.6.3安装与配置』

系统版本 电脑系统&#xff1a;Windows 10 一.Maven下载 &#x1f3af; 统一版本 apache-maven-3.6.3&#xff0c;下面两种下载方式2选1即可 1.官网直下 官网下载地址 https://archive.apache.org/dist/maven/maven-3/3.6.3/binaries/ 找到apache-maven-3.6.3-bin.zip 云盘…