一. 前言
汽车软件行业通用的一套汽车开放系统架构,也就是常说的AUTOSAR架构,可以安全可靠的加速汽车软件的开发。
虽然AUTOSAR的目标很美好,但是AUTOSAR组织定义的毕竟只是标准,具体实现AUTOSAR,还需要第三方基于标准实现AUTOSAR工具以及协议栈。AUTOSAR相通的是方法论,但在具体实现上就各家AUTOSAR百花齐放了。本次分享的主角是Vector和ETAS的Classic Platform AUTOSAR,尽可能地中立地将自己使用的一些感受分享给大家。
二. 工具的使用对比
Vector
1. vector的生态链非常完善,无论是从整车数据库的定义,还是诊断数据库的输入,都支持一键导入到Davinci工具中,数据支持DBC、ARXML、ODX、LDF、FIBEX等格式直接导入,基本不需要做特别的改动可以直接导入,非常便捷;
2. vector的DaVinci工具链支持搭配第三方的MCAL做集成,可以在Davinci Configurator直接进行配置,并且对应的一些复杂驱动也可以购买后在同一个工具Davinci Configurator配置并生成,自动化层度高;
3. 量产经验以及市场占有率来说,vector在CP这一块还是比较具备优势的,其文档等都是比较齐全的;
4. 代码可读性的话,vector为了所谓的模块化,将BSW/OS等模块抽层了静态代码和生成代码,静态代码不受工程配置影响,不需要生成,只有生成代码会根据工程配置重新生成,确实搞了很多宏定义,一层套一层,确实找问题起来代码不太好读;
5. vector的davinci工具在配置出错的时候,可以提供对应错误的提示,以及推荐的解决方案,可能一键就能解决,对于新手上手还是非常友好的
ETAS
1. ETAS的ISOLAR工具支持的数据库相比vector来说就有些逊色了,虽然宣称DBC、ARXML、ODX、LDF、FIBEX可以支持导入,但是要求所有的数据库必须是同一个AUTOSAR package层级的,比如需要导入主机厂的ARXML文件以及内部的SOMEIP通讯ARXML两份ARXML文件,ISOLAR就要求两份ARXML文件的AR package层级是一样的,试问主机厂和内部自定义的工具和模板都不一样,AUTOSAR中也没对AR package的层级做强制要求,那怎么能保证是一致的呢?答案只能是通过人工合并调整,说实话有些费劲,并且不好维护;
2. ETAS的ISOLAR等工具只能支持BSW/SWC/RTE/OS的配置,并不支持在工具中配置MCAL,需要使用MCAL适配的配置工具进行配置,遇到BSW需要关联的MCAL模块,只能在ISOLAR中配置桩模块,两头配置还是带来一些额外的工作开销;并且对于一些复杂驱动,ETAS虽然说能支持,但是中国区一些是通过工程服务移植实现的,质量就不评价了;
这时候可能有人会说了,那ETAS工具链自由度高,不做太多限定;这个就一千个读者眼中就会有一千个哈姆雷特,在我看来,当前敏捷开发的趋势下,花钱买的东西,自动化程度不高,不为快速量产交付,就为了所谓的自由?还是不太现实的,并且ETAS使用下来的感受,其实所谓的自由度高,就是工具很多都不支持,需要人工写脚本去完善;
3. 虽然ETAS确实是从汽车电子的老大哥博世拆分出来的,但是ETAS≠博世,ETAS和博世使用的AUTOSAR工具链还是不一样的,毕竟领先地位也不是可以将所有的技术都开放出来售卖的,博世的市场占有率≠ETAS的市场占有率,所以量产经验ETAS对比vector还是稍有逊色的;
4. 在代码可读性这里的话ETAS会稍微好一些,毕竟除了集成代码之外,所有的代码都是需要根据工程配置生成的;但是又不得说一点,ETAS的代码有很多连基础的野指针检查,越界检查都没有,很多时候会因为这些小问题导致跑飞;
5. ETAS的错误检查就稍显逊色了,很多时候报错了只有一个很泛的提示,找不到对应的报错的位置,并且不会有一键解决的方案,这个错误遇到过还好,没遇到过,那就只能蒙头找了;
三. 技术支持对比
Vector
1. vector在北京、上海、深圳等地均有支持的团队,团队人员基本为vector内部成员,会到国外进行培训交流,对于基本的问题解决上还是没有问题,但是对于比较棘手的问题,还是需要靠国外的开发团队进行分析解决,棘手问题的解决时效就比较一般了;
2. 在AUTOSAR购买的时候,可以采购现场集成服务,也可以基于用户板子提供集成服务,不过价格确实很高
3. 有问题的话,可以通过support邮箱咨询,咨询的时候需要带上SIP的包号,问题在其系统中分配,最后对应的工程师会联系分析,紧急问题可以通过内部的采购推进上升,对应的服务态度还是OK的
ETAS
1. ETAS在深圳、上海、武汉均有支持团队,但是人员并不多,并且其提供的工程服务的,可能有部分还是其再外包给其他公司实现的,同样对于基础的问题还是能够正常解决的,但是棘手的问题就麻烦了,国外团队的资源还是比较难协调到的;
2. 接触下来感觉ETAS内部的隔阂还是挺重的,国外和国外团队,国内不同分部的团队,感觉国内的团队并没有形成企业文化的共识
3. 与其说其是国内的团队卖AUTOSAR协议栈,不如说其是卖工程服务的,所以现场集成支持也是会有的;不过国内的支持水平还是参此不齐,有些工程师确实基础很好,有些还是不太熟悉,不过在哪里都一样吧;
4. 售前和售后的差异,售前很多都说可以做,但一到售后,就很多不能实现,要一再澄清,并且会出现躺平的状态,这一块给到的印象还是比较差的。
四. 费用对比
费用上还是需要根据具体选定的模块进行报价,不过总体上,ETAS的价格还是比Vector有较大的优势的,毕竟,能在市场上存在的,就一定有他自己的优势和特点
五. 总结
可能看了上面的对比,很多人都会认为我偏向于Vector,但从我的维度上来说这是目前使用下来比较直观的感受,不可否认,ETAS的CP工具链在做一些小型的ECU确实没有多大问题,价格方面也确实会比较实惠,但其实现一些大型的ECU(ARXML多,多通讯协议栈,负载高),目前看来还是稍微逊色的,看法也可能具备一定的片面性,仅代表个人看法。
对于技术上的细节对比,或者需要交流的,也欢迎大家留言或者私信和我进行交流