其背景是:在实际的商业化产品中,CAN驱动层也包含一些复杂的策略,如各种异常的处理,以及性能优化模块,模块本身还会有可配置性和可移植性的要求,毕竟CAN驱动也是软件平台的一部分。
在传统的OSEK/VDX架构下,CAN驱动以上还有交互层、传输层、诊断一些层、网络管理、标定、信号/报文/协议网关等上层基础软件模块,几乎每一个都有相应的国标标准来对应,是一个相当专业且门槛不低的行业子领域。
除了知名汽车零配件公司自己招募一些团队做CAN开发以外,一般采用委托第三方公司。
其目的是:降低研发成本,省去大批工程师高额的开发周期和管理费用,目前国际知名的第三方供应商有Vector、EB、Mentor Graphics,国内有速锐得。
对于车载ECU来说,一级零部件供应商研发可以分为系统、硬件、电子、软件、机械结构等,CAN总线涉及最多是沟通的工作,主要是CAN总线的逻辑、信号需求、通信矩阵释放、样件提交、测试结果反馈等等。通信矩阵不能释放的开发项目,看是否通过速锐得适配完成数据的采集与交互。
其中原因是:国内汽车电子行业,对CAN总线相关协议有深刻理解和开发经验的工程师数量不断,相对于项目整体的开发规模,只占很小一部分。数百万的汽车电子软件工程师,用过CAN总线的十之六七,但知道CAN相关各个模块设计的,恐怕也是万里挑一。简单的、复杂的、主从的、多主的各式各样,优缺点、选择依据、调研和分析、实验与现场实践及洞悉,都是考验CAN技术开发的多种条件。
其需求是:DBC数据的创建,是基于各ECU系统的机能需求,如果ABS系统有个轮速信息要发给ECU,是以什么样的周期、什么样的精度,那么我们就需要把把需求转化成总线报文。网络拓扑设计,基于整车线束分布,对总线节点之间的距离、节点数、总线负载等有限制,整车CAN通讯策略,对整车总线节点上都有统一的策略。网络管理设计,处于有的节点在IGOFF后,有通信需求,为降低功耗,又制定了不同的网络管理策略,还有将UDS协议(14229)转为J1939或者ISO15765等等需求。
其工具是:
硬件:带有CAN模块芯片的开发板,CAN BOX、CAN H 与 CAN L之间的120欧姆接口,零散线束、USB、螺丝刀、装饰面板拆卸工具等等
软件:CAN OE 或者周立功、豪气霸主可用vehicle spy。
其方法是:以周立功为例,这个大家用的多。
打开CANTEST通用测试软件,选择USBCAN-2E-U接口,选定总线波特率,一般为500K,点击确认并启动,启动CAN接口卡。
其难度是:有的数据是加了算法的,针对数据的CAN ID一个一个做记录,变量数据通常的都比较简单,算法数据上才是真正考验能力的时候。速锐得在做丰田氢能源车整车控制策略的时候,1000多组CAN ID里面甄选了142个必要数据,其中有86个数据都带“复杂”算法还参杂了其他CAN ID变量的逻辑。
随着汽车电子技术的发展,汽车上所用的控制单元不断增多,CAN总线技术的应用范围广泛,在工业控制测试、汽车电子维护维修、协议适配与解码,数据单元的控制与访问。
领取专属 10元无门槛券
私享最新 技术干货