autosar

news2024/9/22 21:31:45

一 autosar简介

AUTOSAR,汽车开放系统架构(AUTomotive Open System Architecture)是一家致力于制定汽车电子软件标准的联盟。AUTOSAR是由全球汽车制造商、部件供应商及其他电子、半导体和软件系统公司联合建立,各成员保持开发合作伙伴关系。

 

 

在autosar之前,车企通常使用osek架构,软硬件层次存在严重耦合。

 

所以各车企联合推出autosar分层架构模式:应用层,RTE,系统服务层,硬件层。开发周期短,可重用,另外有图形配置工具davinci,不需要手写代码即可生成高质量代码。如下图所示。

 Application:swc,ports,runnables

swc:automic swc,composition swc,特殊的swc

ports:swc和swc之间使用ports通信

 runnable:swc中的函数,在autosar被davinci软件生成的时候,runnable是空函数,需要手动添加代码具体实现。runnable可以被触发。

 RTE:对上层和下层隔离,中介角色。

BSW:

二  ARXML

ARXML代表AUTOSAR xml,是用xml语言(Extensible Markup Language)描述AUTOSAR模型的一种人机可读的文本格式。该标准介绍了如何将AUTOSAR模型序列化为AUTOSAR XML描述的规则,为AUTOSAR工具之间的互操作性提供支持; 更规范的格式表达,还可以减少工具实现的工作量。样例如下:

1)ARPackage(AR-PACKAGE)

AUTOSAR包(ARPackage)是某种“包”,用于对软件组件、数据类型和AUTOSAR的其他元素进行分组。它为这个包创建了一个对应的“名称空间”。ARPackage没有分类,但是它的sub-package有分类。

ARPackage  

Category  

PhysicalDimensions  

STANDARD  

Units  

STANDARD  

LifeCycleInfoSets  

STANDARD  

DataConstrs_Blueprint  

BLUEPRINT  

ApplicationDataTypes_Blueprint  

BLUEPRINT  

CompuMethods_Blueprint  

BLUEPRINT  

PortInterfaces_Blueprint  

BLUEPRINT  

PortPrototypeBlueprints_Blueprint  

BLUEPRINT  

KeywordSets_Blueprint  

BLUEPRINT  

Collections_Blueprint  

BLUEPRINT  

ApplicationDataTypes_Example  

EXAMPLE  

BlueprintMappingSets_Example  

EXAMPLE  

CompuMethods_Example  

EXAMPLE  

PortInterfaces_Example  

EXAMPLE  

SwComponentTypes_Example  

EXAMPLE  

DataConstrs_Example  

EXAMPLE  

Systems  

EXAMPLE  

STANDARD:由相关顶级软件包的提交者标准化的元素,可以按原样用于处理(例如ECU参数定义)。

BLUEPRINT:此类包中的元素就像工具箱一样,是一种“方案”,可以从中将定义复制到实际项目中。

EXAMPLE:示例如何在STANDARD或BLUEPRINT包中应用元素。

2) Interface

    SenderReceiverInterface(SENDER-RECEIVER-INTERFACE)

SenderReceiverInterface定义了PPort可以提供的和RPort要求的数据元素,用于软件组件(SWcomponent)之间的数据交换。这个接口是由变量数据原型和指定传输的数据组成。

    ClientServerInterface(CLIENT-SERVER-INTERFACE)

ClientServerInterface定义了PPort可以提供的和RPort可以使用的操作,并允许客户端(Client)调用服务器(Server)上的操作,从而将结果提供给客户端(Client)。接口操作的参数数据原型可以是服务器的客户端输入(IN)或服务器结果(OUT)或两者(INOUT)。

    Basic Software内的interface类型

      AUTOSAR Interface

AUTOSAR Interface定义了在软件组件之间,BSW模块之间,软件组件  和BSW模块之间交换的信息。

   Standardized AUTOSAR Interface

Standardized AUTOSAR Interface是已经标准化的AUTOSAR Interface,用于定义AUTOSAR Service。AUTOSAR Service是AUTOSAR Basic Software向应用程序(ApplicationSoftware Component)提供的标准化服务。

         Standardized Interface

Standardized Interface是在BSW模块之间交互的,不需要使用AUTOSAR接口技术,是标准化的API。通常是由特定语言(如C语言)定义的。当软件模块通过Standardized Interface通信时,将无法通过网路路由软件模块之间的通信。

RTE与Interface接口,如下图所示:

3) VariableDataPrototype(VARIABLE-DATA-PROTOTYPE)

VariableDataPrototype是用于包含ECU应用程序中的值的元素。可作为:

1) SenderReceiverInterface中的数据元素;

2) 软件组件内部行为中的runnable的变量;

3) 软件组件内部行为中的每个实体内存;

4) 软件组件内部行为中的静态内存。

4) ApplicationDataType

   ApplicationPrimitiveDataType(APPLICATION-PRIMITIVE-DATA-TYPE)

包括:Primitive(简单类型的),STRING,BOOLEAN,ARRAY,CURVE,MAP,RES_AXIS,COM_AXIS,STRUCTURE等。

 ApplicationRecordDataType(APPLICATION-RECORD-DATA-TYPE)

是ApplicationRecordElements的汇编,类别必须为STRUCTURE。

  ApplicationArrayDataType(APPLICATION-ARRAY-DATA-TYPE)

是由一个或多个ApplicationArrayElements组成

 

5) ARXML序列化规则

    一个AUTOSAR模型可以从多个XML描述文件中提取;比如一些文件中包含数据类型而另一些文件包含接口等;
    文件后缀为".arxml";
    文件名最大长度为255个字节;
    ARXML符合标准的XML文件格式;
    ARXML编码格式要求,使用UTF-8字符编码、不能以BOM开头、
    ARXML头部要做XML编码格式声明
 BOM是一个Unicode字符,可以在字节流中使用;UTF-8不支持不同的结尾;

ARXML基于XML V1.0标准实现;

ARXML头部要做XML版本声明,如下图所示

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/465124.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

QT DAY2

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);this->setFixedSize(600,600); //设置固定尺寸this->setWindowTitle("汪玉洁大聪明")…

Hadoop学习笔记(一)Hadoop的组成

1. HDFS NameNode用于记录整个数据的存储情况,具体的数据存储在各个Hadoop节点中,每个Hadoop的节点可以称为DataNode。假设Hadoop1到Hadoop100的机器每个都有1T的容量。那么一共就可以存储100T的数据。 NameNode(nn):存储文件的元数据&…

位运算【巧妙思路、两种常见题型】

这里介绍两种代码中位运算非常常用的操作 n的二进制表示中第k位数——右移操作 &1 例如说,我们需要计算11的第2位数。 11 (1011)2 我们常规思路就是将其转化为二进制数后,直接观察对应位置的值 这里需要注意的是第k位数指的是从右开始的第k位&a…

Linux shell编程 条件语句

条件测试 test命令 测试表达式是否成立,若成立返回0,否则返回其他数值 格式1: test 条件表达式 格式2: [ 条件表达式 ]文件测试 [ 操作符 文件或者目录 ][ -e 1.txt ]#查看1.txt是否存在,存在返回0 echo $? #查看是上一步命令执行结果 0成…

DJ4-3 连续分配存储管理方式

目录 4.3.1 单一连续分配 4.3.2 固定分区分配 1. 分区说明表 2. 内存分配过程 4.3.3 动态分区分配 一、分区分配中数据结构 二、分区分配算法 三、分区分配操作 4.3.4 可重定位分区分配 1. 紧凑 2. 动态重定位 3. 动态重定位分区分配算法 连续分配是指为用户程…

【数据结构】堆(一)

😛作者:日出等日落 📘 专栏:数据结构 如果我每天都找出所犯错误和坏习惯,那么我身上最糟糕的缺点就会慢慢减少。这种自省后的睡眠将是多么惬意啊。 目录 🎄堆的概念及结构: 🎄堆的实…

万丈高楼平地起 AI帮你做自己

AI的自我介绍 AI是人工智能(Artificial Intelligence)的英文缩写,是一种通过计算机技术模拟和延伸人类智能的技术和应用。AI可以被看作是一种智能化的计算机程序或系统,它能够自动地执行一些需要人类智能才能完成的任务&#xf…

JavaEE初阶学习:初识网络

1.网络发展史 1.独立模式 独立模式:计算机之间相互独立; 2.网络互连 随着时代的发展,越来越需要计算机之间互相通信,共享软件和数据,即以多个计算机协同工作来完成业务,就有了网络互连。 网络互连:将多…

除了Figma,再给你介绍10款好用的协同设计软件

组织结构越来越复杂,团队中的每个人都有独特的技能、经验和专业知识。我们怎样才能让团队更好地合作?在这种情况下,协同设计应运而生。 UI的未来是协同设计!如果你想把握未来的设计趋势,不妨从使用高效的协同设计软件…

Docker的安装以及本地部署ILLA Builder

1.安装Docker,当前版本V4.18.0 。Docker引擎启动运行之后,效果如下图(喜欢暗黑主题) Docker启动可能出错,“Docker Desktop requires a newer WSL kernel version.” 如下图所示 解决方法,比较简单&#xf…

测试用例的基本要素和设计方法

作者:爱塔居 专栏:软件测试 作者简介:大三学生,希望同大家一起进步! 文章简介:介绍写测试案例的功能需求测试和非功能需求测试和具体方法:判定表、正交表、等价类、边界值等 文章目录 目录 文章…

if条件语句

if条件语句 条件测试 test 测试表达式是否成立,若成立返回0,否则返回其他数值 格式1 :test 条件表达式;格式2 :[ 条件表达式 ] echo $?参数作用-d测试是否为目录 (Directory)-e测试目录或文件是否存在(Exist)-f测…

好物周刊#1:提示工程师养成指南

文章目录 🎈 项目ddruntiny-vuenetease-recent-profile 💻 软件BobScreenToGifSnipaste 🕸️ 网站BrowserFramedocsmallDimmy.club 🔌 插件AdGuard[Global Speed: 视频速度控制](https://microsoftedge.microsoft.com/addons/deta…

强化学习-Double DQN、竞争网络结构和Rainbow(第4章)

来源书籍: TENSORFLOW REINFORCEMENT LEARNING QUICK START GUIDE 《TensorFlow强化学习快速入门指南-使用Python动手搭建自学习的智能体》 著者:[美]考希克巴拉克里希南(Kaushik Balakrishnan) 译者:赵卫东 出版…

【每日一题】leetcode21 - - 合并两个有序链表

文章目录 1.题目描述2.解题思路方法1:方法2: 1.题目描述 题目链接:力扣21,合并两个有序链表 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 2.解题思路 方法1:…

牛客网Verilog刷题——VL38

牛客网Verilog刷题——VL38 题目答案 题目 设计一个自动贩售机,输入货币有三种,为0.5/1/2元,饮料价格是1.5元,要求进行找零,找零只会支付0.5元。需要注意的是,投入的货币会自动经过边沿检测并输出一个在时钟…

【采坑专栏】【错误记录】起系统

doc说明 一级标题分大的,二级标题尽量加,三级标题是具体问题 语法 我的老毛病-易错的 多驱 复制粘贴导致前后一样 管脚约束还是直接选吧 多驱动 Vivado WARNING:Multi-driven net Q with xth driver pin 警告的原因和消除方法 出现这…

注意力机制:基于Yolov8的Triplet注意力模块,即插即用,效果优于cbam、se,涨点明显

论文:https://arxiv.org/pdf/2010.03045.pdf 本文提出了可以有效解决跨维度交互的triplet attention。相较于以往的注意力方法,主要有两个优点: 1.可以忽略的计算开销 2.强调了多维交互而不降低维度的重要性,因此消除了通道和权…

STM32F4_SRAM中调试代码

目录 1. 在RAM中调试代码 2. STM32的三种存储方式 3. STM32的启动方式 4. 实验过程 通过上一节的学习,我们已经了解了SRAM静态存储器; 1. 在RAM中调试代码 一般情况下,我们在MDK中编写工程应用后,调试时都是把程序下载到芯片…

Android类似微信聊天页面教程(Kotlin)四——数据本地化

前提条件 安装并配置好Android Studio Android Studio Electric Eel | 2022.1.1 Patch 2 Build #AI-221.6008.13.2211.9619390, built on February 17, 2023 Runtime version: 11.0.150-b2043.56-9505619 amd64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o. Windows 11 …