基于K线的BCM诊断的实现基于K线的BCM诊断的实现引言:随着汽车电子系统越来越复杂,诊断功能已经成为ECU软件设计的一个重要组成部分,对ECU控制系统的正常运行及其大规模应用的市场化过程非常关键。随着ECU功能的增加以及升级换代的需要,诊断标准及厂商自定义诊断功能越来越丰富,各种服务子功能也越来越细化,增加了诊断的难度,因此,深入研究诊断协议及其实现非常必要。K线和CAN总线是业内广泛采用的两种诊断标准【1】,CAN总线在欧美车中广泛使用,而K线在国产车中应用广泛,笔者结合为某国产车型开发一款BCM(BodyControlModule,车身控制模块)的经验,分析K线规范,然后从故障自诊断和在线诊断两个方面讲述一下BCM诊功能的设计与实现。1K线协议分析K线是ISO9141定义的用于诊断通信的串行数据总线,ISO14230在ISO9141的基础上将其总线电压扩展到24V,并完整定义了KWP2000协议,完善了诊断通信标准,扩展了诊断服务【2】。K线通信采用SCI数据格式,数据链路层在串口通信上以软件形式实现,物理层比较简单,通过单根物理线完成半双工异步通信,选择LIN总线物理层芯片即可完成物理电平与逻辑电平的转换。ISO14230-1定义了K线物理层协议,ISO14230-2定义了数据链路层协议,ISO14230-3定义了应用层协议及各项诊断服务,下面从报文结构、初始化过程、定时参数三个方面重点介绍下其数据链路层协议。1.1报文结构K线诊断报文结构如表1所示:[pic]K线报文由报文头、数据字段及校验和组成。报文头包含格式字节Fmt、目标地址Tgt、源地址Src和附加长度信息Len;数据字段包括服务标识符Sid和数据Data,其长度由Fmt和Len决定;校验和CS为单字节校验,计算方式为对报文头和数据字段中的所有数据累加求和
用户评论
推荐下载
-
基于k邻近算法的手写识别系统的研究与实现
针对计算机对手写输入字符的识别需求,本文基于k邻近算法构建了手写识别系统,并采取平滑、归一化等方法进行数据预处理,提取结构与统计特征,达到提高手写字符识别精度与准确率的目的。计算机测试后表明,本算法对
10 2021-02-01 -
k近邻算法的python实现
k-近邻算法的python实现,输入元素为列表,可以根据需要自己手工创建训练样本集,注释比较清晰
22 2020-09-29 -
swiftiOS的股票K线图实现
一个具有周~月~日~蜡烛线,MA5,10,20平均线,成交量曲线等功能并且可扩展的股票K线图。
25 2020-04-22 -
k_means的matlab实现
本程序实现了k-means的两类分类,在matlab7.0下运行正常,可供学习参考,交课程作业。
31 2019-02-11 -
k均值算法的java实现
NULL博文链接:https://ghostfromheaven.iteye.com/blog/851516
22 2020-05-15 -
k_means的java实现
聚类算法k-means的java实现,较简单,仅供参考
24 2019-02-22 -
K_means的java实现
K-means的java实现,已经试验过,绝对正确
32 2019-03-28 -
K近邻算法的MATLAB实现
KNN的MATLAB实现,基于特殊的SONAR数据,M文件,MATLAB源代码
23 2019-05-15 -
k近邻算法的Python实现
可以直接运行的Python程序,里面包含了数据集和测试集,有利于初学者入门。
33 2019-07-27 -
简单的K均值算法实现
简单的关于K均值算法的小程序,是模式识别课程中一个简单但是基础的部分,希望可以对大家有所帮助,感谢支持啦~~
26 2019-09-20
暂无评论