必须得会的汽车ECU研发基础--ECU软件架构概览3

汽车ECU软件的完整开发包括应用层软件和底层软件。应用层软件主要是对于被控对象的控制,比如控制发动机在不同工况下应该喷多少油,进多少气;或者控制变速箱在什么油门什么车速去换挡,怎么去控制离合器和同步器实现换挡,亦或者控制电机多少转速,多少扭矩。而底层软件是对于微控制器的编程,比如用代码实现设备驱动(如何配置寄存器),协议栈(如何配置CAN通道寄存器),电子器件或硬件电路的诊断等等。

基于当下流行的AUTOSAR架构,底层软件与应用层软件的关系如下所示,通过RTE连接底层软件和应用层软件,RTE使得两者相互独立解耦。

1 底层软件

对于底层软件来说,主要分为几个抽象层:服务层,ECU抽象层,微控制器抽象层和复杂驱动。这样做的目的:一方面实现底层软件的解耦,模块化,可重用等特点,另一方面通过复杂驱动来实现特殊化的需求,保持一定的灵活性,以此来满足一套代码可适用多个项目,加快研发进程,降低研发成本。

再根据底层软件功能,合理地拆分到不同抽象层,这样每个抽象层都有不同的功能模块。

以通讯功能为例,比如CAN通讯,CAN驱动在微控制器抽象层,配置CAN通讯相关的寄存器(传输速率相关,CAN数据帧的ID, 长度,数据等);CAN交互在ECU抽象层,与上层的功能模块交互,像把CAN报文信息传输给上层的UDS,或XCP,或CAN相关的模块;COM层在服务层,进一步处理传输数据和传输特性。

2 应用层软件

以上基于AUTOSAR的底层软件架构,而对于应用层来说,其架构主要基于被控对象来考虑,除了最基本的输入和输出,那么肯定需要控制被控对象的执行器,比如电机,而怎么去控制电机,那么肯定需要考虑各种因素,制定清晰的逻辑关系或控制算法。所以从方法论上来说,应用层软件架构的基本框架:输入-->设定控制目标-->执行器控制-->输出-->RTE,当然精髓在设定控制目标和执行器控制,因为这两块既需要考虑实际应用工况,还需要考虑零部件本身的特性。

OK! 以上就是ECU软件架构的简单概览。


作者:Z-ONE_90490814141

文章来源:上汽零束SOA开发者论坛

原文链接:https://bbs.z-onesoft.com/omp/community/front/api/page/mainTz?articleId=7542

  • 7
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值