一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种车载终端数据采集方法、车载终端及数据采集系统与流程

2023-06-15 09:03:17 来源:中国专利 TAG:


1.本发明涉及通信技术领域,特别涉及一种车载终端数据采集方法、车载终端及数据采集系统。


背景技术:

2.2018年8月发布的《重型柴油车污染物排放限值及测量方法(中国第六阶段)》(gb 17691-2018)标准中规定,从6a阶段开始,车辆应装备符合附录q要求的远程排放管理车载终端,鼓励车辆按本标准附录q要求进行数据发送。从6b阶段开始,生产企业应保证车辆在全寿命期内,按本标准附录q要求进行数据发送,由生态环境主管部门和生产企业通过远程服务器进行接收。
3.根据标准要求,车载终端需要采集上报车辆的obd信息、发动机数据流信息等,而目前正常只有诊断仪有读取相关数据的权限。因此实际使用过程中,车载终端往往采用诊断仪的地址请求数据读取。当存在车辆其他网络客户端节点(比如其他行驶记录仪终端、车机系统等)或外部obd诊断仪以相同的地址源进行数据读取时,由于标识地址相同,在进行多帧数据接收处理时,车载终端极易误触发非法流控,造成其他客户端节点数据处理的冲突。


技术实现要素:

4.本发明的目的在于克服现有技术的不足,提出一种车载终端数据采集方法、车载终端及数据采集系统,能够识别出can总线中同本车载终端应用业务共用请求id/响应id的诊断报文,规避执行错误的多帧流控处理,降低数据处理冲突。
5.本发明解决其技术问题所采用的技术方案是:
6.一方面,一种车载终端数据采集方法,包括:
7.应用业务申请注册步骤,控制单元将与应用业务关联的请求id和响应id注册到can通讯单元,can通讯单元创建相应的读取请求标识、接收响应标识、其他网络客户端节点请求标识、发送队列和接收缓存;
8.数据采集请求步骤,控制单元将应用业务单元发送的数据读取请求发送至对应的发送队列,can通讯单元基于读取请求标识、接收响应标识、其他网络客户端节点请求标识与can总线进行通信,请求读取数据;
9.数据监控接收步骤,基于can总线报文的id,判断出该报文的类型;所述类型包括对本车载终端请求的响应、其他网络客户端节点发送的请求或对其他网络客户端节点请求的响应;如果为对本车载终端请求的响应,将接收报文解析后发送给控制单元。
10.优选的,所述应用业务申请注册步骤,具体包括:
11.控制单元接收应用业务单元发送的读取数据的申请,并将对应的请求id和响应id注册到can通讯单元;基于请求id和响应id,can通讯单元创建相应的读取请求标识、接收响应标识、其他网络客户端节点请求标识、发送队列和接收缓存,并将读取请求标识、接收响
应标识和其他网络客户端节点请求标识初始化为false。
12.优选的,所述数据采集请求步骤,具体包括:
13.控制单元实时接收应用业务单元发送的数据读取请求,并根据其请求id和响应id,将请求数据加入can通讯单元对应的发送队列;can通讯单元进行周期扫描,当读取到所述读取请求标识、接收响应标识和其他网络客户端节点请求标识均为false时,从发送队列中取出一条指令,向can总线发起数据读取请求,同时将读取请求标识置为true。
14.优选的,所述数据采集请求步骤,还包括:如果所述读取请求标识、接收响应标识和其他网络客户端节点请求标识不全为false,则等待下次周期扫描进行判断。
15.优选的,所述数据监控接收步骤,具体包括:
16.can通讯单元监测can总线报文,当判断出报文的id与所述请求id一致时,进一步判断所述读取请求标识是否为true,如为否,判断出是其他网络客户端节点发送的请求,将其他网络客户端节点请求标识置为true;当判断出报文的id与所述响应id一致时,将所述接收响应标识置为true,并对该报文进行监测,当监测到报文发送完成时,将接收响应标识和其他网络客户端节点请求标识置为false;如果所述读取请求标识为true,将接收报文解析后发送给所述控制单元,并将所述读取请求标识置为false。
17.优选的,所述应用业务包括一种及以上;每种应用业务包括不同的请求id和响应id,后者,几种应用业务共用一个请求id和响应id。
18.优选的,所述应用业务单元包括一个或多个;每个所述应用业务单元包括一种及以上的应用业务。
19.另一方面,一种车载终端,包括所述的应用业务单元、控制单元和can通讯单元;还包括通讯单元和存储单元;所述控制单元与所述应用业务单元、can通讯单元、通讯单元和存储单元分别相连接;所述控制单元通过所述通讯单元与远程服务器进行通信;所述存储单元用于存储应用业务的数据。
20.再一方面,一种数据采集系统,包括所述的车载终端;还包括:远程服务器;所述控制单元通过所述通讯单元与远程服务器进行通信。
21.本发明具有如下有益效果:
22.(1)本发明通过识别can网络中相同诊断源的报文,即监测can总线中同车载终端应用业务共用的请求id和响应id的诊断报文,在can通讯网络层规避执行错误的多帧流控处理,降低对相同诊断源属性的其他网络客户端节点的数据处理冲突
23.(2)本发明通过对外部相同诊断源的过程状态的监控,结合采用分组指令队列的方式,实现车载终端应用业务数据采集的独立性及连续性。
24.以下结合附图及实施例对本发明作进一步详细说明,但本发明的一种车载终端数据采集方法、车载终端及数据采集系统不局限于实施例。
附图说明
25.图1是本发明实施例的车载终端数据采集方法的流程图;
26.图2是本发明实施例的应用业务申请注册的流程图;
27.图3是本发明实施例的数据采集请求的流程图;
28.图4是本发明实施例的数据监控接收步骤的流程图;
29.图5是本发明实施例的车载终端的结构框图;
30.图6是本发明实施例的数据采集系统的结构框图。
具体实施方式
31.通过参考示范性实施例,本发明的目的和功能以及用于实现这些目的和功能的方法将得以阐明。然而,本发明并不受限于以下所公开的示范性实施例;可以通过不同形式来对其加以实现。说明书的实质仅仅是帮助相关领域技术人员综合理解本发明的具体细节。
32.在下文中,将参考附图描述本发明的实施例。在附图中,相同的附图标记代表相同或类似的部件,或者相同或类似的步骤。
33.需要说明的是,具体实施方式中涉及到的步骤标识,仅是为了使文件看起来更加清晰,具体实施时,步骤的顺序可以根据具体需要做相应调整。
34.参见图1所示,一种车载终端数据采集方法,包括:
35.s101,应用业务申请注册步骤,控制单元将与应用业务关联的请求id和响应id注册到can通讯单元,can通讯单元创建相应的读取请求标识、接收响应标识、其他网络客户端节点请求标识、发送队列和接收缓存;
36.s102,数据采集请求步骤,控制单元将应用业务单元发送的数据读取请求发送至对应的发送队列,can通讯单元基于读取请求标识、接收响应标识、其他网络客户端节点请求标识与can总线进行通信,请求读取数据;
37.s103,数据监控接收步骤,基于can总线报文的id,判断出该报文的类型;所述类型包括对本车载终端请求的响应、其他网络客户端节点发送的请求或对其他网络客户端节点请求的响应;如果为对本车载终端请求的响应,将接收报文解析后发送给控制单元。
38.所述应用业务申请注册步骤,具体包括:
39.控制单元接收应用业务单元发送的读取数据的申请,并将对应的请求id和响应id注册到can通讯单元;基于请求id和响应id,can通讯单元创建相应的读取请求标识、接收响应标识、其他网络客户端节点请求标识、发送队列和接收缓存,并将读取请求标识、接收响应标识和其他网络客户端节点请求标识初始化为false。
40.所述数据采集请求步骤,具体包括:
41.控制单元实时接收应用业务单元发送的数据读取请求,并根据其请求id和响应id,将请求数据加入can通讯单元对应的发送队列;can通讯单元进行周期扫描,当读取到所述读取请求标识、接收响应标识和其他网络客户端节点请求标识均为false时,从发送队列中取出一条指令,向can总线发起数据读取请求,同时将读取请求标识置为true。
42.所述数据采集请求步骤,还包括:如果所述读取请求标识、接收响应标识和其他网络客户端节点请求标识不全为false,则等待下次周期扫描进行判断。
43.所述数据监控接收步骤,具体包括:
44.can通讯单元监测can总线报文,当判断出报文的id与所述请求id一致时,进一步判断所述读取请求标识是否为true,如为否,判断出是其他网络客户端节点发送的请求,将其他网络客户端节点请求标识置为true;当判断出报文的id与所述响应id一致时,将所述接收响应标识置为true,并对该报文进行监测,当监测到报文发送完成时,将接收响应标识和其他网络客户端节点请求标识置为false;如果所述读取请求标识为true,将接收报文解
析后发送给所述控制单元,并将所述读取请求标识置为false。
45.本实施例中,以车载终端进行诊断数据读取采集为例进行说明,具体流程如下:
46.(1)参见图2所示,控制单元收集各子应用业务的读取诊断数据的应用申请,并将其请求和响应的can id对reqidi(请求id)和respidi(响应id)注册到can通讯单元;
47.can通讯单元针对注册的每组诊断请求和响应can id对reqidi和respidi,分别创建相应的标识及独立的发送队列及数据接收缓存。所述标识包括读取请求标识si、接收响应标识ri和其他网络客户端节点请求标识wi(其他网络客户端节点包括车辆的行驶记录仪终端、车机系统等);所述读取请求标识si用于标识车载终端发出读取请求;所述接收响应标识ri用于标识车载终端接收到响应;所述其他网络客户端节点请求标识wi用于标识其他网络客户端节点正进行读取请求。
48.参见图2所示,本实施例中,不同的子应用业务(比如排放采集监测业务、故障监测业务、节油控制业务等)可共用相同的can id对reqidi(请求id)和respidi(响应id),具体可通过索引标识区分不同的应用业务。当然,不同的子应用业务也可单独设置can id对reqidi(请求id)和respidi(响应id)。
49.(2)参见图3所示,控制单元实时接收各子应用业务的诊断数据读取请求,并根据其请求和响应can id对,将请求数据分别依次加入can通讯单元对应的发送队列。
50.所述can通讯单元周期扫描遍历每组发送队列的标识,当检测到发送指令条件满足时(si等于false,ri等于false,wi等于false),从对应诊断请求的发送队列中取出一个请求指令单元节点,向can总线发起诊断数据请求,同时将si置为true;如果条件不满足,则等待下次扫描周期。
51.(3)参见图4所示,can通讯单元监测解析总线报文,当接收到任意一个respidi,则将ri置为true,进一步判断si是否为true,如果si等于true,则表示该响应是针对车载终端的读取请求,can通讯单元根据报文类型及状态(如下表1),采取相应规则执行流控帧响应;如果si等于false则表示该报文是can网络服务端节点针对其他客户端节点请求的响应,can通讯单元只监控接收状态而不进行流控帧响应;当接收到任意一个reqidi,如果si不等于true,则将wi置为true,表示总线上有其他网络客户端节点正在进行同类读取数据请求;
52.表1
[0053][0054]
can通讯单元监测遍历各响应报文状态,当识别到其中的响应报文respidi已经发送完数据,则将ri置为false,以及将wi置为false;如果si等于true,将接收数据解析发送给控制单元,同时将si置为false;
[0055]
控制单元接收can通讯单元转发的数据报文,分发至对应的应用业务单元进行数
据加工;
[0056]
控制单元根据需求对经过加工处理的can数据,或通过存储单元单元进行存储,或通过通讯单元发送至远程服务器。
[0057]
参见图5所示,一种车载终端1包括所述的应用业务单元10、控制单元11和can通讯单元12;还包括通讯单元13和存储单元14;所述控制单元11与所述应用业务单元10、can通讯单元12、通讯单元13和存储单元14分别相连接;所述控制单元11通过所述通讯单元12与远程服务器进行通信;所述存储单元14用于存储应用业务的数据。
[0058]
参见图6所示,一种数据采集系统,包括所述的车载终端1;还包括:远程服务器2;所述控制单元11通过所述通讯单元12与远程服务器2进行通信。
[0059]
以上所述的具体实施例,对本发明的目的、技术方案和效果进行了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已,并不限制本发明,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,所做出的修改、替换和变形均属于本发明的保护之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表