论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
应用中心
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
qidao123.com技术社区-IT企服评测·应用市场
»
论坛
›
软件与程序人生
›
云原生
›
AutoSar架构学习条记
AutoSar架构学习条记
杀鸡焉用牛刀
论坛元老
|
3 天前
|
显示全部楼层
|
阅读模式
楼主
主题
2036
|
帖子
2036
|
积分
6108
1.AUTOSAR(Automotive Open System Architecture,汽车开放系统架构)是一个针对汽车行业的软件架构标准,旨在提拔汽车电子系统的模块化、可扩展性、可重用性和互操作性。AUTOSAR的目的是为汽车电子控制单元(ECU)之间的软件开发提供统一的标准,以支持多种差别的硬件平台和操作系统,并促进供应商间的兼容性。
2.AUTOSAR Classic Platform架构如下图所示:
SWC(Application Software Components, 应用软件组件):这些是ECU上运行的实际应用程序,执行车辆功能的核心任务。例如,发动机控制、车辆安全、空调控制等。应用层组件与硬件和其他软件组件之间通过接口举行通讯,通常通过AUTOSAR界说的标准接口。
RTE(Runtime Environment,运行时情况):RTE是AUTOSAR架构的核心部门,它是软件组件与底子软件层之间的中心件。RTE负责连接差别的应用软件组件,提供统一的通讯机制,确保差别软件模块间的互操作性。RTE的作用是将应用软件与底层的硬件和服务隔离开,使得应用软件不依赖于具体的硬件平台和操作系统,加强了软件的可移植性。
BSW(Basic Software Layer,底子软件层):该层主要是为应用层提供底子服务,具体又可分为以下几层:
Microcontroller Abstraction Layer(微控制器抽象层,MCAL):该层是对MCU芯片的抽象和封装,由于Autosar CP是基于MCU的软件架构,以是该层主要是实现MCU外设驱动)比如I/O驱动、Flash驱动、CAN驱动、看门狗驱动、定时器驱动等等。这一层是需要和硬件打交道的,这一层高度依赖MCU硬件,如果项目换MCU芯片,只需要修改这一层代码适配驱动即可。
ECU Abstraction Layer(ECU抽象层):该层是对ECU的抽象和封装,ECU上面除了主芯片MCU,还有很多外围设备,比如外置Flash,外置电源管理芯等。这一层就是实现了整个ECU全部设备的封装。外围设备也是MCU主芯片控制的,这一层会使用到MCAL的接口。作为抽象层,屏蔽了下层驱动实现细节,将统一接口API袒露给上层以实现功能。该层从上层抽象MCAL层,并提供用于访问外部和内部的驱动程序的API。
Services Layer(服务层):该层是向应用层提供服务的,这一将底层提供的服务封装起来供应用层使用。比如通讯服务、存储服务、os 操作系统服务等。
Complex Device Drivers(复杂驱动,CDD):指的是有些模块不实用于Autosar协议栈,通过手写代码自己封装成CDD模块,在项目开发中会经常有一些模块直接作为CDD使用。
3.AUTOSAR Adaptive Platform是面向服务的架构,如下图所示:
4.汽车电子开发流程:下图是标准AUTOSAR流程,OEM从需求生成终极的文件(给到每一个ECU制造厂商)的主要流程。图中流程需要软件工具支持(比如Vector的PREEvision),这样就能自动生成相应的描述文件了。图中绿色箭头的含义是:设计之初,需要反复修改,首先是列需求,通过三种文件描述这些需求:SWC描述文件、系统描述文件、ECU资源文件,然后将这三种文件导入到系统设置编辑工具中,生成系统设置描述文件。该文件就是整车描述文件末了将系统设置描述文件导入到系统设置提取工具中,导出每一个ECU相应的提取文件,该文件就包罗每一个ECU需要用到的信息,比如通讯矩阵、SWC信息。
上图中各个具体文件的作用是:
SWC描述文件:即应用层软件组件描述文件,包罗的信息有:描述每个软件组件需要的资源(比如存储、CPU时间等),SWC直接的接口,运行机制
系统约束描述文件:主要是对整车公共资源的描述,包括网络拓扑、通讯矩阵、总线波特率、各种协议等
ECU资源描述文件:描述每个ECU都需要实现什么功能,系统设计者通过该文件将差别功能的SWC分配到对应的ECU中,例如传感器、执行器、存储器、引脚分配
系统设置描述文件:上面3中文件的汇总
ECU提取文件:将系统设置描述文件信息分配给单个ECU,是单个ECU获取属于自己的信息
当供应商获取到OEM厂商提供的单个ECU的设置文件之后,可以举行具体的ECU软件开发,流程如下:
EB用来设置Mcal驱动,生成arxml导入到DavinciConfigurator(用来设置操作系统和协议栈)中生成代码。
Davinci Developer是用来设置App层框架的(对应AUTOSAR Classic Platform架构中的RTE部门),然后导入到Davinci Configurator中生成代码。
Davinci Developer生成的arxml还会给一份到应用工程师(导入到MATLAB)然后通过MATLAB自动生成软件框架,应用工程在内里添加模型代码即可。
做EB、DaVinci Developer、DaVinci Configrator和Simulink工程师可以同步开发,终极集成一下即可。
开发可以从上到下也可以从下到上,就是说可以在Developer中设计好AppL框架导入到Matlab做代码填充,也可以在Matlab中直接搭建好符合AutoSAR规范的代码,然后导出arxml,再导入到Developer中,也能自动生成框架
静态代码:不会改变的源码。动态代码:设置工具设置出来的代码xx_cfg.c、xx_cfg.h。
5.CAN通讯:
从图中可以看出,CAN总线通讯需要CPU、CAN控制器、CAN收发器参与。从CAN收发器引出两根线CAN_H_CAN_L,全部节点都挂接到这两根线上,就形成了CAN的网络布局。图中有两路CAN总线,带有终端电阻120欧的是高速CAN,没有带终端120欧的是低速容错CAN。
6.高速CAN总线的总线设计如图所示,仅支持总线型拓扑布局,当前汽车范畴用的最多的是CAN控制器集成到MCU中,使用外置CAN收发器,也就是图中右边这种设计:
CAN总线信号由CAN_H_CAN_L两根线的差分信号,也就是通过CAN_H和CAN_L的电压差来决定0、1信号。总线规定隐性电平为信号1(即CAN不工作时),显性电平为信号0(即CAN工作时),其中隐形电平的时间CAN_H和CAN_L都为2.5V,此时电压差就是0V,而显性电平的时间CAN_H为3.5V, CAN_L为1.5V,此时电压差就是2V。高速CAN,总线长度最大为40m,也就是当总线长度超过40m之后,总线的速率会受到影响,支线长度(节点和总线之间的距离)最长为0.3米,节点距离长度最大也是40m。
7.低速CAN:低速容错CAN总线信号也是由CAN_H和CAN_L两根线的差分信号,也就是通过CAN_H和CAN_L的电压差来决定0、1信号。总线规定隐形电平为信号1显性电平为信号0。其中隐形电平的时间CAN_H为0V,CAN_L为5V,此时电压差就是-5V,显性电平的时间CAN_H为3.50V,CAN_L为1.5V,此时电压差就是2V。低俗容错CAN除了支持总线型还支持星型。
8.相干概念:
ECU(Electronic Control Unit):是电子控制单元的缩写,它是当代汽车、工业自动化、航空航天等范畴中广泛使用的电子设备。ECU 主要用于控制和管理车辆或设备的各种电子系统,通过接收来自传感器的信号并执行相应的控制操作来进步设备的性能、可靠性和安全性。
OTA(Over-the-Air):是一种无线远程更新技术,主要用于通过无线网络(如Wi-Fi、蜂窝网络、蓝牙等)远程向设备推送软件、固件或设置更新。OTA 更新通常用于智能手机、汽车、物联网设备、嵌入式系统等范畴,以便无需物理接触或连接外部设备的情况下,远程升级、修复漏洞、优化性能或增加新功能。
OEM(Original Equipment Manufacturer):指的是“原始设备制造商”,即生产原始设备的公司,它设计并制造产物或组件,并将其作为品牌产物的一部门提供给其他公司举行贩卖。OEM 通常指的是一个制造商生产的产物或部件,终极由另一家公司贩卖并以其品牌名推出市场。
BswM:管理整个BSW的模块
EcuM:管理ECU上下电等功能。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
杀鸡焉用牛刀
论坛元老
这个人很懒什么都没写!
楼主热帖
ElasticSearch-高级查询
手把手带你通过API创建一个loT边缘应用 ...
一、kotlin基础语法学习
第4章 复合类型
背八股文的都是什么水平
揭秘 ChunJun:如何实现 e2e&session ...
Apache Hudi 在袋鼠云数据湖平台的设计 ...
生产事故-记一次特殊的OOM排查 ...
开源轻量级工作流WorkflowCore介绍 ...
源码解析 Handler 面试宝典
标签云
渠道
国产数据库
集成商
AI
运维
CIO
存储
服务器
浏览过的版块
IOS
快速回复
返回顶部
返回列表