车辆obd数据处理装置的制造方法

文档序号:10660939阅读:350来源:国知局
车辆obd数据处理装置的制造方法
【专利摘要】本发明实施例公开一种车辆OBD数据处理装置,能够提高OBD数据处理准确度,从而更准确的得出车辆的状态。该装置包括:数据接入模块、数据处理模块、业务助理模块、数据展示模块,本发明实施例的车辆OBD数据处理装置,接收OBD设备上报的车辆数据消息,将消息进行协议转换,并对承载的数据进行处理,能够提高OBD数据处理准确度,从而更准确的得出车辆的状态。
【专利说明】
车辆OBD数据处理装置
技术领域
[0001 ]本发明涉及汽车领域,尤其涉及一种车辆0BD数据处理装置。【背景技术】
[0002]目前车辆已经基本普及0BD(0n-Board Diagnostic,车载诊断系统)接口,通过0BD 接口可以读取车辆运行状态、故障等信息。通常,从0BD接口读取的数据为原始数据,需经过处理从而得知车辆状态。因此,数据0BD数据处理的精准程度,对了解车辆状态至关重要。
【发明内容】

[0003]本发明实施例提供一种车辆0BD数据处理装置,能够提高0BD数据处理准确度,从而精准了解车辆状态。
[0004]本发明实施例采用如下技术方案:
[0005]—种车辆0BD数据处理装置,包括:数据接入模块、数据处理模块、业务助理模块、 数据展示模块;
[0006]所述数据接入模块包括:接入网关、协议适配器、数据解析处理器;
[0007]所述接入网关,用于通过TCP传输协议接收0BD设备上报的车辆数据消息,对所述车辆数据进行节流缓存;按照协议规则确定所述车辆数据消息长度,根据所述车辆数据消息长度截取缓存的车辆数据消息中数据包;
[0008]所述协议适配器,用于将截取后的数据包进行协议适配,确定匹配的接入协议;
[0009]所述数据解析处理器,用于对所述数据包中数据进行解析,将数据由字节流转换为协议数据实体,得到解析后的数据,根据所述接入协议将所述解析后的数据发送到所述数据解析处理模块;
[0010]所述数据处理模块包括:协议数据消息队列子模块、第一消息接收客户端、数据算法处理器;
[0011]所述协议数据消息队列子模块,用于对所述解析后的数据进行验证,得到验证后的数据;
[0012]所述第一消息接收客户端,用于根据所述接入协议,将所述验证后的数据转换为原始数据;
[0013]所述数据算法处理器,用于将所述原始数据携带于原始数据消息队列中传输至所述业务处理模块;
[0014]所述业务处理模块包括:第二消息接收客户端、业务算法处理器;[〇〇15]所述第二消息接收客户端,用于接收所述原始数据消息队列中的所述原始数据, 对所述原始数据进行验证,得到验证后的原始数据;
[0016]所述业务算法处理器,用于将所述验证后的原始数据转换为业务数据,按照HTTP 传输协议,将所述业务数据推送到所述数据展示模块;
[0017]所述数据展示模块,用于根据所述业务数据确定车辆状态,并显示所述车辆状态。
[0018]可选的,还包括:传输控制模块;
[0019]所述业务算法处理器,还用于将所述业务数据推送到所述传输控制模块;
[0020]所述传输控制模块包括:第一业务API模块;
[0021]所述第一业务API模块,用于接收所述业务数据,应用业务算法对所述业务数据处理后,发送到所述数据展示模块。
[0022]可选的,所述传输控制模块还包括:动态数据缓存子模块、通知服务子模块;[〇〇23]所述第一业务API模块应用业务算法对所述业务数据处理后,发送到所述动态数据缓存子模块;[〇〇24] 或者,所述第一业务API模块应用业务算法对所述业务数据处理后,发送到所述通知服务子模块,所述通知服务子模块将数据推送至所述数据展示模块。[〇〇25]可选的,所述业务处理模块还包括:原始数据消息队列子模块、静态数据缓存模块缓存业务数据;
[0026]所述第二消息接收客户端通过所述原始数据消息队列子模块接收所述原始数据消息队列中的所述原始数据;
[0027]所述业务算法处理器,用于根据存储的标准业务模型,综合所述静态数据缓存模块缓存的业务数据,将所述验证后的原始数据转换为业务数据,按照HTTP传输协议,将所述业务数据推送到所述数据展示模块。
[0028]可选的,所述数据展示模块包括订阅通知客户端、第一应用客户端;
[0029]所述订阅通知客户端实时接收所述传输控制模块推送的通知,将收到的通知转发到所述第一应用客户端;
[0030]所述第一应用客户端显示通知消息和车辆运行数据。
[0031]可选的,还包括:远程控制模块,所述远程控制模块连接所述传输控制模块、并连接所述0BD设备;
[0032]所述远程控制模块包括:第二应用客户端、第二业务API模块、短信模块;[〇〇33]所述第二应用客户端向所述第二业务API模块发起远程控制请求,所述第二业务 API模块收到请求后,按照所述0BD设备接入协议组织远程控制消息包,并经所述短信模块下发到所述0BD设备。
[0034]可选的,所述车辆数据消息包含协议头、协议体、效验码,所述协议体位于所述协议头之后,所述效验码位于所述协议体之后;
[0035]所述协议头包含消息包长度字段、协议版本字段、加密方式字段,所述消息体包含消息头字段、命令字字段、车辆识别码字段、消息体字段;
[0036]所述协议包长度字段为2个字节,所述协议包长度字段标识了消息包长度,所述协议包长度=协议头长度+加密后的协议体长度+校验码长度,协议版本字段标识了协议版本,所述加密方式字段标识了所述消息体中所述消息头字段及所述消息体字段的加密方式;[〇〇37]所述消息体用于定义所述车辆0BD数据处理装置与所述0BD设备之间操作内容, 所述消息头字段携带命令字及车辆识别码,所述命令字字段用于确定操作类型,所述车辆识别码字段携带车辆识别码;
[0038]所述效验码经过对所述消息头部分中消息包长度字段以外的字节及所述消息体部分的全部字节进行异或运算得到。
[0039]可选的,所述0BD设备采集所述车辆数据消息步骤包括:
[0040]确定命令字字段、车辆识别码,组成消息头,所述命令字字段标识车辆数据消息的类型;[〇〇41 ]确定消息体,所述消息体携带所述车辆数据消息内容;
[0042]将协议头中协议版本字段及加密方式字段,消息头、消息体中所有字节依次进行异或得到校验码;
[0043]对消息头、消息体进行加密,形成协议体;
[0044]将消息头长度+加密后的消息体长度+校验码长度,得到协议包长度;
[0045]将消息头、消息体、校验码三部分组合,形成所述车辆数据消息。
[0046]可选的,所述接入网关按照协议规则确定所述车辆数据消息长度,根据所述车辆数据消息长度截取缓存的车辆数据消息中数据包包括:
[0047]从字节流中读取2个字节,确定协议数据包长度;
[0048]根据协议包长度,读取整个协议数据包;
[0049]根据协议中规定协议头长度,解析协议头,找到协议版本和加密方式;[0050 ]根据协议包长度、协议头长度算出加密后的协议体长度,加密后的协议体长度= 协议包长度-协议头长度-校验码长度;[0051 ]按照协议版本和加密方式,对协议体进行解密,得出消息头和消息头;[〇〇52]从协议包中读取校验码;
[0053]将协议头中协议版本字段及加密方式字段,消息头,消息体中所有字节依次进行异或得到校验码;
[0054]将得到的校验码与得到的校验码对比,如果相同,则消息合法,否则为非法消息; [〇〇55]根据得到的协议版本,确定0BD设备接入协议;[〇〇56]根据0BD设备接入协议,解析合法消息,得到消息头和消息体;[〇〇57]根据0BD设备接入协议,解析消息头得到命令字,确定消息类型;[〇〇58]根据0BD设备接入协议,综合命令字字段,解析消息体,得到所述车辆数据消息携带数据。
[0059]可选的,所述车辆数据消息包括实时监控消息、报警消息中至少一种。
[0060]基于上述技术方案的车辆0BD数据处理装置,接收0BD设备上报的车辆数据消息, 将消息进行协议转换,并对承载的数据进行处理,能够提高0BD数据处理准确度,从而更准确的得出车辆的状态。
[0061]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。【附图说明】[〇〇62]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。[〇〇63]图1为本发明实施例提供的车辆0BD数据处理装置的结构示意图之一;[〇〇64]图2为本发明实施例提供的车辆0BD数据处理装置的结构示意图之二;
[0065]图3为本发明实施例提供的车辆0BD数据处理装置的结构示意图之三;[〇〇66]图4为本发明实施例提供的车辆0BD数据处理装置的结构示意图之四;[〇〇67]图5为本发明实施例提供的车辆0BD数据处理装置的结构示意图之五;[〇〇68]图6为本发明实施例提供的车辆0BD数据处理装置的结构示意图之六;[〇〇69]图7为本发明实施例提供的车辆0BD数据处理装置的结构示意图之七;
[0070]图8为本发明实施例提供的车辆数据消息协议格式示意图;[0071 ]图9为本发明实施例提供的报警消息处理流程图;[〇〇72]图10为本发明实施例提供的监控消息处理流程图。【具体实施方式】
[0073]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。[〇〇74]本发明实施例中的0BD设备可以为能够从车辆0BD接口读取数据的设备,也可以为传输0BD数据(0BD数据从0BD接口读出)的设备,或者存储0BD数据(0BD数据从0BD接口读出) 的设备,本发明实施例不做限定。本发明实施例中,Hadoop为分布式系统基础架构,能够实现分布式文件系统;fffiase[OO75] Hadoop database为分布式非结构化数据库;Zookeeper为分布式应用程序协调服务。[〇〇76] 实施例1[〇〇77]如图1所示,本发明实施例提供一种车辆0BD数据处理装置,包括:数据接入模块 11、数据处理模块12、业务助理模块13、数据展示模块14,本发明实施例中,各模块之间可以通过数据访问接口连接,该数据访问接口可以设置在车辆0BD数据处理装置的数据支持模块。[〇〇78]所述数据接入模块11包括:接入网关111、协议适配器112、数据解析处理器113; [〇〇79]所述接入网关111,用于通过TCP传输协议接收0BD设备10上报的车辆数据消息,对所述车辆数据进行节流缓存;按照协议规则确定所述车辆数据消息长度,根据所述车辆数据消息长度截取缓存的车辆数据消息中数据包。本发明实施例中,0BD设备10可以实时上报车辆数据消息,或者满足预设条件后上报车辆数据消息。
[0080]所述协议适配器112,用于将截取后的数据包进行协议适配,确定匹配的接入协议。本发明实施例可以通过协议标识、通过数据格式等多种方式确定匹配的接入协议。[0081 ]所述数据解析处理器113,用于对所述数据包中数据进行解析,将数据由字节流转换为协议数据实体,得到解析后的数据,根据所述接入协议将所述解析后的数据发送到所述数据解析处理模块12。[〇〇82]所述数据处理模块12包括:协议数据消息队列子模块121、第一消息接收客户端 122、数据算法处理器123;[〇〇83]所述协议数据消息队列子模块121,用于对所述解析后的数据进行验证,得到验证后的数据;
[0084]所述第一消息接收客户端122,用于根据所述接入协议,将所述验证后的数据转换为原始数据;
[0085]所述数据算法处理器123,用于将所述原始数据携带于原始数据消息队列中传输至所述业务处理模块13。[〇〇86]所述业务处理模块13包括:第二消息接收客户端131、业务算法处理器132;
[0087]所述第二消息接收客户端131,用于接收所述原始数据消息队列中的所述原始数据,对所述原始数据进行验证,得到验证后的原始数据;[〇〇88]所述业务算法处理器132,用于将所述验证后的原始数据转换为业务数据,按照 HTTP传输协议,将所述业务数据推送到所述数据展示模块14。
[0089]所述数据展示模块14,用于根据所述业务数据确定车辆状态,并显示所述车辆状〇
[0090]本发明实施例的车辆0BD数据处理装置,接收0BD设备上报的车辆数据消息,将消息进行协议转换,并对承载的数据进行处理,能够提高0BD数据处理准确度,从而更准确的得出车辆的状态。
[0091]本发明一个实施例中,数据接入模块11可以采用图2所示的架构,接入网关111通过TCP传输协议接收0BD设备10上报的车辆数据消息。接入网关111接收到数据后,进行字节流缓存处理,防止数据丢失;按照通用0BD设备接入协议传输规则,在协议头中找到消息长度,根据消息长度截取缓存中数据包;将截取后的数据包,发送到协议适配器112,由协议适配器112进行协议适配,路由到适合的0BD设备接入协议;根据0BD设备接入协议将数据发送到数据解析处理器113,由数据解析处理器113对数据进行解析,数据由字节流转换为协议数据实体。0BD设备上报数据由接入网关处理完毕后,遵循AMQP传输协议,将协议数据推送到数据处理模块12。
[0092]本发明一个实施例中,数据处理模块12可以采用图3所示的架构,协议消息队列子模块121提供协议数据的路由并保证消息的传递。其包括消息交换机和消息队列两部分,消息交换机进行协议数据路由,消息队列保证消息的传递。消息接收客户端122接收协议数据消息队列子模块121的数据,经过数验证后,发送到数据算法处理器123。数据算法处理器 123根据0BD设备接入协议,将协议数据转换为原始数据,将协议数据转换为原始数据后,按照AMQP传输协议,将原始数据推送到业务处理模块13。[〇〇93]如图4所示,本发明一个实施例中,所述业务处理模块13还包括:原始数据消息队列子模块133、静态数据缓存模块缓存业务数据134;
[0094]所述第二消息接收客户端131通过所述原始数据消息队列子模块133接收所述原始数据消息队列中的所述原始数据;[〇〇95]所述业务算法处理器132,用于根据存储的标准业务模型,综合所述静态数据缓存模块134缓存的业务数据,将所述验证后的原始数据转换为业务数据,按照HTTP传输协议, 将所述业务数据推送到所述数据展示模块14。
[0096]本发明一个实施例中,业务处理模块13可以采用图5所示的架构,原始消息队列子模块133提供原始数据的路由并保证消息的传递。其包括消息交换机和消息队列两部分,消息交换机进行原始数据路由,消息队列保证消息的传递。第二消息接收客户端131接收原始数据消息队列子模块的数据,经过数验证后,发送到业务算法处理器132。数据算法处理器132根据标准业务模型,综合静态数据缓存模块134中的业务数据,将原始数据转换为业务数据,将原始数据转换为业务数据后,按照HTTP传输协议,将业务数据推送到传输控制模块 15或者数据显示模块14。[〇〇97]如图6所示,本发明一个实施例中,该车辆0BD数据处理装置还可以包括:传输控制模块15;[〇〇98]所述业务算法处理器132,还用于将所述业务数据推送到所述传输控制模块15; [〇〇99]所述传输控制模块15包括:第一业务API模块151;[〇1〇〇]所述第一业务API(应用程序编程接口,Applicat1n Programming Interface)模块151,用于接收所述业务数据,应用业务算法对所述业务数据处理后,发送到所述数据展不丰旲块14。
[0101]如图6所示,本发明一个实施例中,所述传输控制模块15还可以包括:动态数据缓存子模块152、通知服务子模块153;
[0102]所述第一业务API模块151应用业务算法对所述业务数据处理后,发送到所述动态数据缓存子模块;[〇1〇3]或者,所述第一业务API模块151应用业务算法对所述业务数据处理后,发送到所述通知服务子模块153,所述通知服务子模块153将数据推送至所述数据展示模块14。[〇1〇4]本发明一个实施例中,传输控制模块15中第一业务API模块151接收业务处理模块 13推送的业务数据,经业务算法处理后,根据需要,或将数据存入动态数据缓存子模块152, 或将数据发送到通知服务子模块153,或将数据被动发送到数据展示模块14。通知服务子模块153收到通知消息后,将通知推送到数据展示模块14。传输控制模块15与数据展示模块14 之间通信遵循HTTP传输协议。
[0105]如图7所示,本发明一个实施例中,所述数据展示模块14包括订阅通知客户端 141、第一应用客户端142;
[0106]所述订阅通知客户端141实时接收所述传输控制模块推送的通知,将收到的通知转发到所述第一应用客户端142;[〇1〇7]所述第一应用客户端142显示通知消息和车辆运行数据。
[0108]本发明一个实施例中,数据展示模块14中,订阅通知客户端141实时监听传输控制模块中的通知服务,收到其推送通知后,转发到应用客户端142。应用客户端142显示通知消息和车辆运行数据。
[0109]本发明一个实施例中,还包括:远程控制模块(图中未示出),所述远程控制模块连接所述传输控制模块15、并连接所述0BD设备10。本发明一个实施例中,远程控制模块可以位于图7中T的位置。
[0110]所述远程控制模块包括:第二应用客户端、第二业务API模块、短信模块;所述第二应用客户端向所述第二业务API模块发起远程控制请求,所述第二业务 API模块收到请求后,按照所述0BD设备接入协议组织远程控制消息包,并经所述短信模块下发到所述0BD设备。
[0112]本发明一个实施例中,如图8所示,所述车辆数据消息包含协议头、协议体、效验码,所述协议体位于所述协议头之后,所述效验码位于所述协议体之后;
[0113]所述协议头包含消息包长度字段、协议版本字段、加密方式字段,所述消息体包含消息头字段、命令字字段、车辆识别码字段、消息体字段;
[0114]所述协议包长度字段为2个字节,所述协议包长度字段标识了消息包长度,所述协议包长度=协议头长度+加密后的协议体长度+校验码长度,协议版本字段标识了协议版本,所述加密方式字段标识了所述消息体中所述消息头字段及所述消息体字段的加密方式;
[0115]所述消息体用于定义所述车辆0BD数据处理装置与所述0BD设备之间操作内容,所述消息头字段携带命令字及车辆识别码,所述命令字字段用于确定操作类型,所述车辆识别码字段携带车辆识别码;
[0116]所述效验码经过对所述消息头部分中消息包长度字段以外的字节及所述消息体部分的全部字节进行异或运算得到。[〇117]本发明一个实施例中,所述0BD设备10采集所述车辆数据消息步骤包括:
[0118]确定命令字字段、车辆识别码,组成消息头,所述命令字字段标识车辆数据消息的类型;
[0119]确定消息体,所述消息体携带所述车辆数据消息内容;
[0120]将协议头中协议版本字段及加密方式字段,消息头、消息体中所有字节依次进行异或得到校验码;[0121 ]对消息头、消息体进行加密,形成协议体;
[0122]将消息头长度+加密后的消息体长度+校验码长度,得到协议包长度;
[0123]将消息头、消息体、校验码三部分组合,形成所述车辆数据消息。
[0124]相应的,所述接入网关111按照协议规则确定所述车辆数据消息长度,根据所述车辆数据消息长度截取缓存的车辆数据消息中数据包包括:
[0125]从字节流中读取2个字节,确定协议数据包长度;
[0126]根据协议包长度,读取整个协议数据包;
[0127]根据协议中规定协议头长度,解析协议头,找到协议版本和加密方式;
[0128]根据协议包长度、协议头长度算出加密后的协议体长度,加密后的协议体长度= 协议包长度-协议头长度-校验码长度;
[0129]按照上述协议版本和加密方式,对协议体进行解密,得出消息头和消息头;
[0130]从协议包中读取校验码;
[0131]将协议头中协议版本字段及加密方式字段,消息头,消息体中所有字节依次进行异或得到校验码;
[0132]将得到的校验码与得到的校验码对比,如果相同,则消息合法,否则为非法消息;
[0133]根据得到的协议版本,确定0BD设备接入协议;
[0134]根据0BD设备接入协议,解析合法消息,得到消息头和消息体;
[0135]根据0BD设备接入协议,解析消息头得到命令字,确定消息类型(例如报警消息、实时监控消息等);
[0136]根据0BD设备接入协议,综合命令字字段,解析消息体,得到所述车辆数据消息携带数据。
[0137]本发明一个实施例中,所述车辆数据消息可以为多种类型的消息,例如车辆数据消息包括实时监控消息、报警消息中至少一种。
[0138]本发明实施例的车辆0BD数据处理装置,接收0BD设备上报的车辆数据消息,将消息进行协议转换,并对承载的数据进行处理,能够提高0BD数据处理准确度,从而更准确的得出车辆的状态。
[0139]实施例2[〇14〇]本发明实施例中0BD设备上报的车辆数据消息可以为多种类型的消息,本实施例以车辆数据消息为报警消息为例详细说明本发明实施例的车辆0BD数据处理装置的数据处理流程。
[0141]如图9所示,本实施例可以通过上述实施例的车辆0BD数据处理装置实现,本实施例的数据处理流程包括:
[0142]901、0BD设备10在车辆发生报警信息时,将报警消息组包。
[0143]具体组包过程如下:第一步,确定命令字(报警类型)、车辆识别码,组成消息头;第二步,确定消息体(报警内容);第三步,将协议头(不包含协议长度字段)、消息头、消息体中所有字节依次进行异或得到校验码;第四步,对消息头、消息体进行加密,形成协议体;第五步,将协议头长度+加密后的协议体长度+校验码长度得到协议包长度;第六步,协议头、协议体、校验码三部分组合,形成协议数据包即报警消息。
[0144]902、0BD设备10上报报警消息。
[0145]903、数据接入模块11接收车辆数据消息,并进行解析。
[0146]数据接入模块11解析过程如下:第一步,从字节流中读取2个字节,确定协议数据包长度;第二步,根据协议包长度,读取整个协议数据包;第三步,根据协议中规定协议头长度,解析协议头,找到协议版本和加密方式;第四步,根据协议包长度、协议头长度算出加密后的协议体长度,加密后的协议体长度=协议包长度-协议头长度-校验码长度;第五步,按照第四步得到的加密方式,对协议体进行解密,得出消息头和消息头;第六步,从协议包中读取校验码;第七步,将协议头(不包含协议长度字段)、消息头、消息体中所有字节依次进行异或得到校验码;第八步,将第六步得到的校验码与第七步得到的校验码对比,如果相同,则消息合法,否则为非法消息;第九步,根据第三步中得到的协议版本,确定0BD设备接入协议。第十步,根据0BD设备接入协议,解析合法消息,得到消息头和消息体。第十一步,根据0BD设备接入协议,解析消息头得到命令字,确定为报警通知;第十二步,根据0BD设备接入协议,综合命令字,解析消息体,得到报警信息。
[0147]904、数据接入模块11将解析后的数据推送到数据处理模块12。
[0148]905、数据处理模块12对数据进行处理得到原始数据。
[0149]906、数据处理模块12将原始数据存储至存储模块16。
[0150]本发明实施例中存储模块16可以为单独的存储模块也可以为业务处理模块13中的静态数据缓存模块,本发明实施例不做限定。
[0151]907、数据处理模块12将原始数据推送至业务处理模块13的原始数据消息队列子模块的队列中。
[0152]908、业务处理模块13根据业务算法对数据进行处理。
[0153]909、业务处理模块13存储处理后的数据。[〇154]910、传输控制模块15进行报警统计。
[0155]911、传输控制模块15向数据展示模块14推送报警通知,由数据展示模块14进行报警提示。
[0156]本发明实施例的车辆0BD数据处理装置,接收0BD设备上报的报警消息,将消息进行协议转换,并对承载的数据进行处理,能够提高报警数据处理准确度,发出报警提示。
[0157]实施例3[〇158]本发明实施例中0BD设备上报的车辆数据消息可以为多种类型的消息,本实施例以车辆数据消息为实时监控消息为例详细说明本发明实施例的车辆0BD数据处理装置的数据处理流程。
[0159]如图10所示,本实施例可以通过上述实施例的车辆0BD数据处理装置实现,本实施例的数据处理流程包括:
[0160]101、0BD设备10对实时监控消息进行组包。
[0161]具体组包过程如下:第一步,确定命令字(实时监控)、车辆识别码,组成消息头;第二步,确定消息体(实时监控调取);第三步,将协议头(不包含协议长度字段)、消息头、消息体中所有字节依次进行异或得到校验码;第四步,对消息头、消息体进行加密,形成协议体; 第五步,将协议头长度+加密后的协议体长度+校验码长度得到协议包长度;第六步,协议头、协议体、校验码三部分组合,形成协议数据包即实时监控消息。
[0162]102、0BD设备10上报实时监控消息。
[0163]103、数据接入模块11接收实时监控消息,并进行解析。
[0164]数据接入模块11解析过程如下:第一步,从字节流中读取2个字节,确定协议数据包长度;第二步,根据协议包长度,读取整个协议数据包;第三步,根据协议中规定协议头长度,解析协议头,找到协议版本和加密方式;第四步,根据协议包长度、协议头长度算出加密后的协议体长度,加密后的协议体长度=协议包长度-协议头长度-校验码长度;第五步,按照第四步得到的加密方式,对协议体进行解密,得出消息头和消息头;第六步,从协议包中读取校验码;第七步,将协议头(不包含协议长度字段)、消息头、消息体中所有字节依次进行异或得到校验码;第八步,将第六步得到的校验码与第七步得到的校验码对比,如果相同,则消息合法,否则为非法消息;第九步,根据第三步中得到的协议版本,确定0BD设备接入协议。第十步,根据0BD设备接入协议,解析合法消息,得到消息头和消息体。第十一步,根据0BD设备接入协议,解析消息头得到命令字,确定为实时监控消息;第十二步,根据0BD设备接入协议,综合命令字,解析消息体,得到实时监控消息携带的信息。
[0165]104、数据接入模块11将解析后的数据推送到数据处理模块12。
[0166]105、数据处理模块12对数据进行处理得到原始数据。
[0167]106、数据处理模块12将原始数据存储至存储模块16。
[0168]本发明实施例中存储模块16可以为单独的存储模块也可以为业务处理模块13中的静态数据缓存模块,本发明实施例不做限定。
[0169]107、数据处理模块12将原始数据推送至业务处理模块13的原始数据消息队列子模块的队列中。[〇17〇]108、业务处理模块13根据业务算法对数据进行处理。
[0171]109、业务处理模块13存储处理后的数据。
[0172]110、传输控制模块15进行状态统计。[〇173]111、传输控制模块15更新缓存。[〇174]112、数据展示模块14向传输控制模块15请求监控数据,传输控制模块15返回监控数据,由数据展示模块14进行视频显示。
[0175]本发明实施例的车辆0BD数据处理装置,接收0BD设备上报的监控消息,将消息进行协议转换,并对承载的数据进行处理,能够提高监控数据处理准确度,发出报警提示。
[0176]以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
[0177]以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
【主权项】
1.一种车辆OBD数据处理装置,其特征在于,包括:数据接入模块、数据处理模块、业务 助理模块、数据展示模块;所述数据接入模块包括:接入网关、协议适配器、数据解析处理器;所述接入网关,用于通过TCP传输协议接收0BD设备上报的车辆数据消息,对所述车辆 数据进行节流缓存;按照协议规则确定所述车辆数据消息长度,根据所述车辆数据消息长 度截取缓存的车辆数据消息中数据包;所述协议适配器,用于将截取后的数据包进行协议适配,确定匹配的接入协议;所述数据解析处理器,用于对所述数据包中数据进行解析,将数据由字节流转换为协 议数据实体,得到解析后的数据,根据所述接入协议将所述解析后的数据发送到所述数据 解析处理模块;所述数据处理模块包括:协议数据消息队列子模块、第一消息接收客户端、数据算法处 理器;所述协议数据消息队列子模块,用于对所述解析后的数据进行验证,得到验证后的数 据;所述第一消息接收客户端,用于根据所述接入协议,将所述验证后的数据转换为原始 数据;所述数据算法处理器,用于将所述原始数据携带于原始数据消息队列中传输至所述业 务处理模块;所述业务处理模块包括:第二消息接收客户端、业务算法处理器;所述第二消息接收客户端,用于接收所述原始数据消息队列中的所述原始数据,对所 述原始数据进行验证,得到验证后的原始数据;所述业务算法处理器,用于将所述验证后的原始数据转换为业务数据,按照HTTP传输 协议,将所述业务数据推送到所述数据展示模块;所述数据展示模块,用于根据所述业务数据确定车辆状态,并显示所述车辆状态。2.根据权利要求1所述的装置,其特征在于,还包括:传输控制模块;所述业务算法处理器,还用于将所述业务数据推送到所述传输控制模块;所述传输控制模块包括:第一业务API模块;所述第一业务API模块,用于接收所述业务数据,应用业务算法对所述业务数据处理 后,发送到所述数据展示模块。3.根据权利要求2所述的装置,其特征在于,所述传输控制模块还包括:动态数据缓存 子模块、通知服务子模块;所述第一业务API模块应用业务算法对所述业务数据处理后,发送到所述动态数据缓 存子模块;或者,所述第一业务API模块应用业务算法对所述业务数据处理后,发送到所述通知服 务子模块,所述通知服务子模块将数据推送至所述数据展示模块。4.根据权利要求1所述的装置,其特征在于,所述业务处理模块还包括:原始数据消息 队列子模块、静态数据缓存模块缓存业务数据;所述第二消息接收客户端通过所述原始数据消息队列子模块接收所述原始数据消息 队列中的所述原始数据;所述业务算法处理器,用于根据存储的标准业务模型,综合所述静态数据缓存模块缓 存的业务数据,将所述验证后的原始数据转换为业务数据,按照HTTP传输协议,将所述业务 数据推送到所述数据展示模块。5.根据权利要求2或3所述的装置,其特征在于,所述数据展示模块包括订阅通知客户 端、第一应用客户端;所述订阅通知客户端实时接收所述传输控制模块推送的通知,将收到的通知转发到所 述第一应用客户端;所述第一应用客户端显示通知消息和车辆运行数据。6.根据权利要求2或3所述的装置,其特征在于,还包括:远程控制模块,所述远程控制 模块连接所述传输控制模块、并连接所述OBD设备;所述远程控制模块包括:第二应用客户端、第二业务API模块、短信模块;所述第二应用客户端向所述第二业务API模块发起远程控制请求,所述第二业务API模 块收到请求后,按照所述OBD设备接入协议组织远程控制消息包,并经所述短信模块下发到 所述OBD设备。7.根据权利要求1至6中任一项所述的装置,其特征在于,所述车辆数据消息包含协议 头、协议体、效验码,所述协议体位于所述协议头之后,所述效验码位于所述协议体之后;所述协议头包含消息包长度字段、协议版本字段、加密方式字段,所述消息体包含消息 头字段、命令字字段、车辆识别码字段、消息体字段;所述协议包长度字段为2个字节,所述协议包长度字段标识了消息包长度,所述协议包 长度=协议头长度+加密后的协议体长度+校验码长度,协议版本字段标识了协议版本,所 述加密方式字段标识了所述消息体中所述消息头字段及所述消息体字段的加密方式;所述消息体用于定义所述车辆OBD数据处理装置与所述OBD设备之间操作内容,所述消 息头字段携带命令字及车辆识别码,所述命令字字段用于确定操作类型,所述车辆识别码 字段携带车辆识别码;所述效验码经过对所述消息头部分中消息包长度字段以外的字节及所述消息体部分 的全部字节进行异或运算得到。8.根据权利要求1至6中任一项所述的装置,其特征在于,所述OBD设备采集所述车辆数 据消息步骤包括:确定命令字字段、车辆识别码,组成消息头,所述命令字字段标识车辆数据消息的类 型;确定消息体,所述消息体携带所述车辆数据消息内容;将协议头中协议版本字段及加密方式字段,消息头、消息体中所有字节依次进行异或 得到校验码;对消息头、消息体进行加密,形成协议体;将消息头长度+加密后的消息体长度+校验码长度,得到协议包长度;将消息头、消息体、校验码三部分组合,形成所述车辆数据消息。9.根据权利要求8所述的装置,其特征在于,所述接入网关按照协议规则确定所述车辆 数据消息长度,根据所述车辆数据消息长度截取缓存的车辆数据消息中数据包包括:从字节流中读取2个字节,确定协议数据包长度;根据协议包长度,读取整个协议数据包;根据协议中规定协议头长度,解析协议头,找到协议版本和加密方式;根据协议包长度、协议头长度算出加密后的协议体长度,加密后的协议体长度=协议 包长度-协议头长度-校验码长度;按照协议版本和加密方式,对协议体进行解密,得出消息头和消息头;从协议包中读取校验码;将协议头中协议版本字段及加密方式字段,消息头,消息体中所有字节依次进行异或 得到校验码;将得到的校验码与得到的校验码对比,如果相同,则消息合法,否则为非法消息;根据得到的协议版本,确定0K)设备接入协议;根据0K)设备接入协议,解析合法消息,得到消息头和消息体;根据0K)设备接入协议,解析消息头得到命令字,确定消息类型;根据OBD设备接入协议,综合命令字字段,解析消息体,得到所述车辆数据消息携带数 据。10.根据权利要求1至9中任一项所述的装置,其特征在于,所述车辆数据消息包括实时 监控消息、报警消息中至少一种。
【文档编号】H04L29/08GK106027606SQ201610285694
【公开日】2016年10月12日
【申请日】2016年4月30日
【发明人】杨柯, 张计飞
【申请人】北京智驾互联信息服务有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1