● 摘要
自从上个世纪80年代推出了CAN通讯总线协议以来,围绕CAN通讯协议进行的一系列开发与完善成为一种趋势。针对CAN通讯总线协议的应用层一直被国外的厂家所垄断,大众、宝马、丰田等厂商都使用自己开发的应用层协议。而美国汽车工程学会推荐的SAE J1939在商用车和客车领域的成功大规模应用,对于中国开发自己的应用层标准提供了参考。 本文对近年来CAN总线和SAE J1939协议的发展进行了介绍,并对CAN总线和和J1939通信协议的通信原理进行了学习与研究,尤其是对J1939-71、73进行了深入分析。 本课题内容的核心是针对具有CAN总线接口的汽车仪表,开发基于SAE J1939的发动机总线数据模拟器。该系统采用USBCAN-Ⅱ作为发动机总线数据模拟器和仪表间的硬件接口,用C#语言进行发动机总线数据模拟器的编程开发。该系统能够作为一个虚拟节点模拟发动机向总线网络发送发动机参数报文和故障报文,从而对总线网络上的另一节点仪表进行测试,检验仪表的性能。此外,该模拟器还能实现数据帧信息显示模块、虚拟仪表显示模块、帧回放模块等多个模块功能。 系统设计完成后,试验表明,该系统运行正常,能够实现发动机发送状态的各项模拟, 缩短了开发周期,降低了开发成本。