一种车辆发动机OBD数据的传输方法及系统技术方案

技术编号:17565401 阅读:49 留言:0更新日期:2018-03-28 14:58
本发明专利技术提供了一种车辆发动机OBD数据的传输方法,用于解决因不同的ECU使用不同的协议而导致的无法传输发动机ECU的OBD数据的技术问题。

【技术实现步骤摘要】
一种车辆发动机OBD数据的传输方法及系统
本专利技术涉及车辆OBD数据传输领域,更具体地,涉及一种车辆发动机OBD数据的传输方法及系统。
技术介绍
目前在传输OBD数据时,一般是通过ELM327方法进行传输的,该方法按顺序检索当前市场上通用的几种协议,然后全局广播请求,车辆回复哪个协议就默认使用该协议进行通讯传输OBD数据,再根据ISO15031-5进行解码。这种方法在大部分的车辆是能够正常使用的,但是由于部分车辆的更新换代,其内部的几十个ECU可能使用着多种协议,比如,发动机ECU使用CAN协议,而其余的ECU使用K线协议,如果采用J1850->K->CAN的一种顺序去检索这几种协议,那么车辆的数据传输协议就会识别成K线协议,导致无法请求传输发动机ECU的OBD数据。
技术实现思路
本专利技术为解决现有技术存在的因不同的ECU使用不同的协议而导致的无法传输发动机ECU的OBD数据的缺陷,提供了一种车辆发动机OBD数据的传输方法。为实现以上专利技术目的,采用的技术方案是:一种车辆发动机OBD数据的传输方法,包括有以下步骤:S1.车辆启动后,数据应用模块向协议识别控制模块发起数据传输请求;S2.协议识别控制模块接收到数据传输请求后,启用广播模式,按顺序对车辆内的ECU使用到的协议进行搜索;然后将搜索到的协议类型传输至协议驱动模块;协议识别控制模块将数据传输请求传输至协议驱动模块;S3.协议驱动模块将数据传输请求按照协议识别控制模块搜索到的第i种协议进行组包,然后将组包后的数据传输至信号转换电路,信号转换电路用于将数据转换成相应的电平信号;i的初始值为1;S4.电平信号经过车辆OBD口传输至车辆内的ECU,ECU接收到电平信号后向车辆OBD口作出相应的回复信息;S5.信号转换电路接收到回复信息后将回复信息传输至协议驱动模块,协议驱动模块对回复信息进行数据分离后,将分离后的数据传输至协议识别控制模块,协议识别控制模块根据分离后的数据判断回复信息是否是由发动机ECU发出的,若是则对该ECU进行标记,并设定点对点的物理寻址请求方式与发动机ECU建立连接,然后基于建立的连接进行发动机OBD数据的传输,协议识别控制模块接收到发动机OBD数据后,将发动机OBD数据传输至数据应用模块;若回复信息不是由发动机ECU发出的,则令i=i+1,然后执行步骤S3,直至i的数值大于协议识别控制模块搜索到的协议的数量。优选地,所述协议类型包括CAN协议、K线协议。优选地,所述数据应用模块、协议识别控制模块、协议驱动模块集成在MCU内。同时,本专利技术还提供了一种应用以上方法的系统,其具体的方案如下:包括数据应用模块、协议识别控制模块、协议驱动模块、信号转换电路、车辆OBD口和车辆的ECU。与现有技术相比,本专利技术的有益效果是:1)本专利技术通过判断回复信息是否是由发动机ECU发出的而将非发动机的数据过滤掉,同时在判断回复信息是由发动机ECU发出时,可以通过组包的数据传输请求的协议类型来准确识别出当前发动机ECU使用的OBD底层协议,从而获取完整的发动机OBD数据。2)本专利技术采用广播请求及点对点的请求方式,先采用广播请求方式识别所有支持OBD功能的车辆ECU,找出发动机ECU后,再切换到点对点的方式,只跟发动机ECU通讯,其他非发动机ECU则不需要发送数据响应请求,减轻了非发动机的工作量,同时也减轻了车辆总线的负载,减少其他系统干扰提醒,请求端也减少了数据的过滤。附图说明图1为方法所涉及到的部件的结构示意图。具体实施方式附图仅用于示例性说明,不能理解为对本专利的限制;以下结合附图和实施例对本专利技术做进一步的阐述。实施例1如图1所示,本专利技术所提及的方法涉及到以下的部件:数据应用模块、协议识别控制模块、协议驱动模块、信号转换电路、车辆OBD口和车辆的ECU。其中,数据应用模块、协议识别控制模块、协议驱动模块集成在MCU内,与信号转换电路一起组成总线模块。在以上的基础上,本专利技术所提供的方法包括有以下步骤:S1.车辆启动后,数据应用模块向协议识别控制模块发起数据传输请求;S2.协议识别控制模块接收到数据传输请求后,启用广播模式,按顺序对车辆内的ECU使用到的协议进行搜索;然后将搜索到的协议类型传输至协议驱动模块;协议识别控制模块将数据传输请求传输至协议驱动模块;S3.协议驱动模块将数据传输请求按照协议识别控制模块搜索到的第i种协议进行组包,然后将组包后的数据传输至信号转换电路,信号转换电路用于将数据转换成相应的电平信号;i的初始值为1;S4.电平信号经过车辆OBD口传输至车辆内的ECU,ECU接收到电平信号后向车辆OBD口作出相应的回复信息;S5.信号转换电路接收到回复信息后将回复信息传输至协议驱动模块,协议驱动模块对回复信息进行数据分离后,将分离后的数据传输至协议识别控制模块,协议识别控制模块根据分离后的数据判断回复信息是否是由发动机ECU发出的,若是则对该ECU进行标记,并设定点对点的物理寻址请求方式与发动机ECU建立连接,然后基于建立的连接进行发动机OBD数据的传输,协议识别控制模块接收到发动机OBD数据后,将发动机OBD数据传输至数据应用模块;若回复信息不是由发动机ECU发出的,则令i=i+1,然后执行步骤S3,直至i的数值大于协议识别控制模块搜索到的协议的数量。显然,本专利技术的上述实施例仅仅是为清楚地说明本专利技术所作的举例,而并非是对本专利技术的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本专利技术的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本专利技术权利要求的保护范围之内。本文档来自技高网...
一种车辆发动机OBD数据的传输方法及系统

【技术保护点】
一种车辆发动机OBD数据的传输方法,其特征在于:包括有以下步骤:S1.车辆启动后,数据应用模块向协议识别控制模块发起数据传输请求;S2.协议识别控制模块接收到数据传输请求后,启用广播模式,按顺序对车辆内的ECU使用到的协议进行搜索;然后将搜索到的协议类型传输至协议驱动模块;协议识别控制模块将数据传输请求传输至协议驱动模块;S3.协议驱动模块将数据传输请求按照协议识别控制模块搜索到的第i种协议进行组包,然后将组包后的数据传输至信号转换电路,信号转换电路用于将数据转换成相应的电平信号;i的初始值为1;S4.电平信号经过车辆OBD口传输至车辆内的ECU,ECU接收到电平信号后向车辆OBD口作出相应的回复信息;S5. 信号转换电路接收到回复信息后将回复信息传输至协议驱动模块,协议驱动模块对回复信息进行数据分离后,将分离后的数据传输至协议识别控制模块,协议识别控制模块根据分离后的数据判断回复信息是否是由发动机ECU发出的,若是则对该ECU进行标记,并设定点对点的物理寻址请求方式与发动机ECU建立连接,然后基于建立的连接进行发动机OBD数据的传输,协议识别控制模块接收到发动机OBD数据后,将发动机OBD数据传输至数据应用模块;若回复信息不是由发动机ECU发出的,则令i=i+1,然后执行步骤S3,直至i的数值大于协议识别控制模块搜索到的协议的数量。...

【技术特征摘要】
1.一种车辆发动机OBD数据的传输方法,其特征在于:包括有以下步骤:S1.车辆启动后,数据应用模块向协议识别控制模块发起数据传输请求;S2.协议识别控制模块接收到数据传输请求后,启用广播模式,按顺序对车辆内的ECU使用到的协议进行搜索;然后将搜索到的协议类型传输至协议驱动模块;协议识别控制模块将数据传输请求传输至协议驱动模块;S3.协议驱动模块将数据传输请求按照协议识别控制模块搜索到的第i种协议进行组包,然后将组包后的数据传输至信号转换电路,信号转换电路用于将数据转换成相应的电平信号;i的初始值为1;S4.电平信号经过车辆OBD口传输至车辆内的ECU,ECU接收到电平信号后向车辆OBD口作出相应的回复信息;S5.信号转换电路接收到回复信息后将回复信息传输至协议驱动模块,协议驱动模块对回复信息进行数据分离后,将分离后的数据传输至协议识别控制模块,协议识别控制模块根据...

【专利技术属性】
技术研发人员:温煦黎尧文
申请(专利权)人:广州亚美信息科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1