xml - 如何在 AUTOSAR 标准中确定 ARXML 文件是属于 CAN 网络还是以太网网络
问题描述
所以我对这个汽车领域完全陌生,所以如果我在任何术语上有错误,请纠正我。所以我有这个 AUTOSAR 标准的 ARXML 文件,我想确定它是什么网络类型>它是 CAN 网络、以太网、FLexRay 还是 SumIP。
ARXML 中是否有任何特定标签可以帮助确定这一点?
解决方案
ARXML 是通用的 AUTOSAR 交换格式。它可以在一个文件中表达几件事,也可以拆分为多个文件。
关于“网络”,与 DBC 文件相比,它可以在一个文件中包含整个系统。因此,除了 2 个或更多 DBC 文件,所有文件都可以包含在单个 SystemDescription 中(另请参见AUTOSAR_TPS_SystemTemplate)。
SystemDescription
正确/SystemExtract
或EcuExtract
实际上是的主要入口点System
,它应该具有系统使用/引用的所有所谓的 FibexElements 的列表。这些FibexElement
是 CommunicationClusters、EcuInstances、Frames、Pdus(不同种类)、ISignals 和 ISignalGroups,...
a的category
属性System
实际上会告诉您,文件中是否有 a SYSTEM_DESCRIPTION
、 a SYSTEM_EXTRACT
、 anECU_EXTRACT
或仅ABSTRACT_SYSTEM_DESCRIPTION
.. 。
您可以查找集群(CanCluster、EthernetCluster、FlexrayCluster)、EcuInstances(例如具有多个 CanCommunicationControllers 和 CanCommunicationConnectors,它们引用 CanCommunicationController)。CommunicationChannelConnector 引用自 Cluster 下面的 PhysicalChannel。
要了解这些信息是如何包含在 ARXML 文件中的,您实际上应该阅读 AUTOSAR_TPS_SystemTemplate。
顺便提一句。没有 SumIP 作为“网络”。如果您的意思是 SOME/IP,这不是网络,而是以太网上的一些更高层协议。
还要记住,当您有两个 DBC 文件时,那里的网络会获取 DBC 文件的名称。在 ARXML 文件中,由于可拆分的概念,如果您有 2 个 ARXML 文件并且每个文件都有一个名为 的 CanCommunicationCluster CanCluster
,则由于名称相同,AUTOSAR 工具通常会将它们合并为一个CanCluster
。因此,如果您有 2 个单独的集群,请为它们指定唯一的名称,即使它们位于两个单独的 ARXML 文件中。
推荐阅读
- reactjs - 使用 React.js 从 firebase 下载文件到桌面
- ios - 使用具有多个分支要求的 Swift 包
- python-3.x - ZeroMQ HEARTBEAT sockopts() 设置如何工作?
- r - 用 coxphf() 绘图和预测
- python - 如何在 tkinter 按钮中获取新的 API 结果
- rust - 使用 Default::default() 时的 EXC_BAD_ACCESS
- arduino - Arduino中的Ascon-128
- gitlab - 如何禁用 Gitlab-CI 作业的源代码下载?
- kendo-ui - 每次输入后带有模板的 Kendo Grid 刷新和断断续续
- java - 将格式化消息从任何片段传递到活动