论文题名: | 基于STM32和CAN总线的J1939协议的研究 |
关键词: | CAN总线;汽车网络;电子控制单元;J1939协议;STM32芯片 |
摘要: | 随着汽车工业的不断发展,基于CAN总线的汽车网络受到越来越多的汽车厂商的关注。搭建汽车网络之后,汽车内部的ECU之间能够进行可靠、有序的通信,减少了ECU之间的通信干扰和错误,大大提升了汽车的各项性能。J1939协议是适用于大型商用车辆的汽车网络通信标准,随着人们对商用车性能需求的不断增加,越来越多的汽车电子厂商开始致力于J1939协议的研究。 本文在充分了解J1939协议在国内外发展与应用现状和归纳总结了J1939协议的发展趋势后,对J1939协议进行了系统的研究。 首先,以内嵌CAN控制器的STM32F103ZET6芯片作为节点的处理器和CAN控制器,以TJA1050和VP230这两种高速CAN收发芯片作为节点的CAN收发器,设计了发动机电子控制单元节点、变速器电子控制单元节点以及故障诊断/参数监测节点的硬件电路。 其次,制作了CAN总线的连接板,将所设计的三个节点通过CAN总线连接在一起,构建了一个模拟的J1939通信网络。编写各节点CAN接口的波特率和过滤器的设置程序,实现了J1939协议规定的250kbps的通信速率和对扩展数据帧进行过滤的过滤器要求。编写扩展数据帧通信测试程序及综合测试程序并借助CAN分析仪和CANPro软件,完成对J1939通信网络的测试。 再次,在J1939通信网络的基础上,根据J1939协议网络管理层的规定,对各节点的CA进行命名,并按照不同节点CA的地址声明流程,编写各节点CA的地址声明程序,实现了各个节点CA的地址声明,使发动机电子控制单元节点CA成功获得地址0X00,变速器电子控制单元节点CA成功获得地址0X03,故障诊断/参数监测节点CA成功获得地址0XF9,实现了网络管理层的CA命名和地址声明管理功能。 最后,在J1939通信网络的基础上,按照J1939协议应用层对参数、参数组、诊断消息DM1的定义,编写了故障诊断/参数监测节点的参数报文解析程序,实现该节点对来自于其他节点的PGN65261、PGN61444等参数报文的准确解析;编写了故障诊断/参数监测节点的故障解析程序,使该节点能够准确地解析出发动机油温过高、发动机预过滤器油压过大等常见的发动机故障。 |
作者: | 许炳华 |
专业: | 控制理论与控制工程 |
导师: | 潘明 |
授予学位: | 硕士 |
授予学位单位: | 桂林电子科技大学 |
学位年度: | 2013 |
正文语种: | 中文 |