如何零基础学会autosar?
AutoSAR是汽车软件开发的架构规范,不懂软件开发的话我觉得还是先了解一下汽车软件的基础知识,从C语言开始。
总的来说AutoSAR就是一个标准,它规定了软件的架构应该是什么样子的,以及所有的模块和数据应该是如何工作的。
从工具学起 最快
Classic AUTOSAR可以从单片机上的嵌入式C语言学起,掌握基本的操作系统和底层硬件相关的概念,如bootloader,调度,定时,中断,I/O,看门狗,板上总线如I2C,SPI等。车辆总线可以学习CAN,FlexRay,LIN,ETH(SOME/IP)等。在掌握了基本概念后可以去官网阅读spec,了解架构和配置,如RTE,通信协议栈,CDD,MCAL等。AUTOSAR的建模工具据个人了解大多为商业版,个人不太好搞,但这点可以重点研究spec中的arxml规范,工具就是根据这个文件作为输入,进行更改或者生成代码的。
最近一两年出现的Adaptive AUTOSAR的坑太大,规范本身也在完善中。其和Classic AUTOSAR基本是完全不同的两回事情,适用场景也不一样。可以先学习下嵌入式Linux下的C++开发,并阅读spec作为准备。
以上。
如果只是应用autosar,多看文档,多使用工具。
如果想学深了,就要把原理搞清楚,如果觉得力不从心,还有一个简单的办法,其实autosar是从osek扩展来的,osek就3个标准:操作系统,通讯,网络管理,从这个入手容易得多。有了这碗汤下肚,再学autosar就有脉络了。
github上有不少开源autosar项目,autosar官网规范也是开放的。
这篇来自AutomotiveSoftwareEngineer 公众号,个人感觉会对Autosar文档入门有一定的参考价值。
AUTOSAR在汽车行业越来越流行,要全部理解AUTOSAR需要大量的时间,而在大量的规范文档中,寻找自己想要的信息也变得很困难,这篇将给出一些帮助让我们更容易找到合适的方法。这篇文章基于CLASSIC AUTOSAR4.0的版本,针对AUTOSAR的终端使用者,而非工具链开发商和平台开发人员。
CLASSIC AUTOSAR 4.0 标准文档的官方网址:https://www.autosar.org/standards/
从哪里开始进入规范文档呢?
对于不熟悉AUTOSAR原理的人,从AUTOSAR技术概览开始AUTOSAR_TechnicalOverview (源自AR3.1) 或者阅读Vector的elearning: http://elearning.vector.com/vl_autosar_introduction_en.html
通过技术概览可以了解了下面的基本概念:
- 软件模组
Software Component (SW-C) - 虚拟功能总线
Virtual Functional Bus (VFB) - 运行环境
Runtime Environment (RTE) - ECU抽象层(基础软件)
ECU layered architecture (Basic Software) - 接口分类
Interfaces classification - 方法原理
Methodology principle
标准文档命名:
AUTOSAR的文档遵循下面的命名规则,了解这些可以更容易的理解其代表的含义:
- EXP:
"解释",更详细的介绍论题 - MMOD:
"元模型",介绍 AUTOSAR的元模型 - MOD:
"建模",介绍建模的原理 - RS:
"需求规格", 详细描述需求. - SRS:
"软件需求规格", 所有软件模块的规格描述 - SWS:
"软件规格", 软件模块设计和实现的规格 - TPS:
"模板规格", 元模型详细介绍 - TR:
"技术规格",技术规格详细介绍
对于终端使用者,关注以RS,SRS,SWS,TPS,TR命名的标准文档,在使用工具进行开发配置中,其配置工具手册中也都会介绍具体资料,所以在一开始阅读所有的文档对我们帮助不大,可以在使用时,按需要详细阅读对应的.AUTOSAR规范文档