网联车车况实时监控系统、方法及计算机可读存储介质与流程

文档序号:31837022发布日期:2022-10-18 21:37阅读:51来源:国知局
网联车车况实时监控系统、方法及计算机可读存储介质与流程

1.本发明属于网联车车况监控领域,具体涉及一种基于流计算和时序数据库的网联车车况实时监控系统、方法及计算机可读存储介质。


背景技术:

2.为了实现网联车的车况监控,车主能够实时收到车辆状态异常的通知,通常会采用侵入式的方式,通过定制软硬件读取汽车高速can总线上的车况信息。上述方法监控的信号固定,软件逻辑也固定,难以快速迭代适应车主的需求。同时,网联车辆总线上的数据项目多,数据体量大,可达单车500信号每秒,单单通过几个信号无法还原汽车的运行状态,需要进行大批量的多信号监控。因此,如何构建基于大数据的非侵入式、可扩展的网联车车况监控系统,是汽车领域的一个挑战。
3.目前,公开号为112863199的中国专利公开了一种车速监控方法、系统、装置及存储介质。该专利能够实现对车辆的车速监控,通过侵入式的软硬件直接获取can总线上的车速进行跟预设的阈值进行对比,超出阈值就进行告警,故会面临如下问题:1、车速阈值难以根据需求和车辆行驶状态进行动态调整;2、仅可用于车速监控领域,监控的信号,难以对大量的网联车车况信号进行批量处理;3、车况信号的历史数据未进行存储,在车辆出现故障后,无法还原故障时的车辆状态,进行故障根因分析。


技术实现要素:

4.针对上述现有技术的不足,本发明所要解决的技术问题是:如何提供一种能够对网联车车况的历史数据和实时数据进行查询、存储,且对异常车况进行实时告警的一种网联车车况实时监控系统、方法及计算机可读存储介质。
5.为了解决上述技术问题,本发明采用了如下的技术方案:一种网联车车况实时监控系统,包括云端的消息系统、实时计算引擎、元数据模块和时序数据库,所述消息系统用于接收来自车端的can总线车况消息体,并将can总线车况消息体发送到实时计算引擎;所述元数据模块用于为实时计算引擎提供车况字典表信息;所述实时计算引擎用于将所接收的can总线车况消息,经过实时etl转换为iotdb的车况时序数据后,将车况时序数据写入时序数据库内存储,并实时将can总线车况消息和车况字典表信息进行对应并解析后,将解析后的车况信息与元数据模块中存储的车况信号告警阈值进行对比,判断车况是否异常,在判定结果为异常后,发出告警信息;所述时序数据库用于接收并存储实时计算引擎所发送的车况时序数据,并根据需要,将所存储的车况历史数据和实时数据提供给后台查询。
6.这样,通过消息系统能够对网联车车端所发出的数据进行大批量存储,通过实时计算引擎能够将消息系统内的数据实时提取,并将所接收的车况实时信息与元数据模块所提供的车况字典表信息进行对应解析,实现了车况的批量解析,并在需要时,提取出所解析的历史数据和实时数据,实现按需提取解析信息的目的。同时,实时计算引擎在实时解析,
并与元数据模块中的阈值进行对比后,能够实时发现车况是否异常,在出现异常后,实时将告警信息下发,告警信息发送及时。
7.进一步的,还包括网关模块,所述网关模块与车机端通讯连接,用于接收车端tbox所上传的车况报文,将所接收的报文匹配到命令类型为can总线车况的报文,并将报文解析为车况消息体,将车况消息体发送到消息系统。这样,网关模块能够建立车端和云端的通讯通道,接收车端tbox上传的车况保温,根据通信协议匹配报文类型为can总线车况报文,对报文进行批量初步解析。
8.进一步的,还包括时序查询模块,所述时序查询模块用于供后台人员根据需要从时序数据库内实时提取所需车况历史数据或实时数据。这样,通过时序查询模块能够按需对时序数据库内的数据进行提取。
9.进一步的,还包括告警模块,用于接收实时计算引擎所发出的告警信息,并在接收到告警信息后,根据预设的告警方式向用户发送告警信息。这样,告警模块能够实时接收告警信息,并发送告警信息到用户或后台人员。
10.进一步的,所述车况字典表信息包括网联车车况信号,以及车况信号的阈值、偏移量和精度。这样,可按照车况字典表对tbox传输的报文数据进行按需解析。
11.一种网联车车况实时监控方法,包括如下步骤:s1,将需要监控的网联车车况信号,车况信号的阈值、偏移量和精度输入到元数据模块中,形成元数据模块的车况字典表信息;s2,网联车上的tbox通过与消息系统所建立的数据传输通道,将can总线车况消息体发送到消息系统;s3,实时计算引擎实时提取消息系统中所接收到的can总线车况消息,并经过实时etl将can总线车况消息转换为iotdb的车况时序数据后,将车况时序数据写入时序数据库内存储,通过时序数据库实时存储实时计算引擎所发出的车况时序数据,以供管理员根据需要实时查询时序数据库内的所有车况历史数据和车况实时数据;同时,实时计算引擎将can总线车况消息和车况字典表信息进行对应并解析后,将解析后的车况信息与元数据模块中存储的车况信号告警阈值进行对比,判断车况是否异常,当实时计算引擎判定结果为异常后,发出告警信息。
12.进一步的,网联车上的tbox与消息系统之间通过网关模块建立车端与云端的tcp通道,具体的,网关模块接收tbox上传的车况报文,将所接收的报文匹配到命令类型为can总线车况的报文,并将报文解析为车况消息体后,将解析的车况消息体发送给消息系统的can_condition主题中。
13.进一步的,所述实时计算引擎通过map算子进行实时etl,并在实时etl的map算子初始化的时候,在open方法中读取元数据模块的车况字典表信息和消息系统的can总线车况消息,完成解析。
14.一种计算机可读存储介质,其内存储有计算机可读程序,所述计算机可读程序被执行器调用时,能执行如上所述的网联车车况实时监控方法。
附图说明
15.图1为本实施例的系统架构图;图2为本实施例的通信报文设计;图3为本实施例的时序数据库数据模型设计;
图4为本实施例的流数据处理拓扑;图5为本实施例的单车车况信号查询性能图示。
具体实施方式
16.下面结合附图和实施例对本发明进一步说明。
17.实施例:如图1所示,本实施例提供的网联车车况实时监控系统包括云端的消息系统、实时计算引擎、元数据模块、时序数据库、时序数据查询模块,所述消息系统用于接收来自车端的can总线车况消息体,并将can总线车况消息体发送到实时计算引擎;所述元数据模块用于为实时计算引擎提供车况字典表信息;所述实时计算引擎用于将所接收的can总线车况消息,经过实时etl转换为iotdb的车况时序数据模型(can总线上的消息是按照canid进行组织的,车况时序数据模型采用deviceid_canid_signal的树形模型,具体如图3所示,0001设备上传canid为3af上的车速speed信号的数据模型为root.can_condition.0001.3af_speed)后,将车况时序数据写入时序数据库内存储,并实时将can总线车况消息和车况字典表信息进行对应并解析后,将解析后的车况信息与元数据模块中存储的车况信号告警阈值进行对比,判断车况是否异常,在判定结果为异常后,发出告警信息到告警模块;所述时序数据库用于接收并存储实时计算引擎所发送的车况时序数据;所述时序数据查询模块用于实时提取和查询时序数据库内所存储的车况历史数据和实时数据。
18.本系统是基于大数据流计算和时序数据库的网联车车况监控系统。该系统利用了大数据低延迟实时计算引擎flink完成can总线车况的解析、阈值判定和告警,并将解析后的车况数据写入时序数据库,完成单车的历史车况和最新车况点的实时查询。整个系统随着网联车数据的增长,可以通过增加kafka主题的分区数据,增加flink流应用的并发度实现线性扩展。
19.具体的,网联车与消息系统之间通过一网关模块建立车端与云端的tcp通道,接收tbox上传的车况报文。将接收到如图2所示的tbox报文根据通信协议匹配到报文的命令类型为can总线车况的报文并解析为车况消息体(java对象),将解析后的消息发送到消息系统。
20.上述告警模块在接收到告警信息后,根据告警模块所预设的告警方式,将告警消息发送出去。具体的,预设的告警方式包括短信、企业微信等。
21.采用上述网联车车况实时监控系统进行网联车实时监控的方法如下:s1,将需要监控的网联车车况信号,车况信号的阈值、偏移量和精度输入到元数据模块中,形成元数据模块的车况字典表信息;s2,网联车上的tbox通过与消息系统所建立的数据传输通道,将can总线车况消息体发送到消息系统;s3,实时计算引擎实时提取消息系统中所接收到的can总线车况消息,并经过实时etl将can总线车况消息转换为iotdb的车况时序数据后,将车况时序数据写入时序数据库内存储,通过时序数据库实时存储实时计算引擎所发出的车况时序数据,以供管理员根据需要实时查询时序数据库内的所有车况历史数据和车况实时数据;同时,实时计算引擎将can总线车况消息和车况字典表信息进行对应并解析后,将解析后的车况信息与元数据模块中存储的车况信号告警阈值进行对比,判断车况是否异常,当实时计算引擎判定结果为异常后,发出告警信息。
22.总的来说,网关节点用于建立与车端tbox的tcp连接并解析tbox上传的车况报文;flink应用负责按需解析网关节点发出的车况消息,并根据元数据模块中的车况阈值进行实时告警;iotdb时序数据库用于存储网联车的can车况数据;查询模块负责对接iotdb时序数据库完成单车can车况数据的历史和最新点查询。
23.本方法具体流程如下:第一步,系统管理员将需要监控的网联车车况信号,车况信号的阈值、偏移量和精度输入到元数据模块中。启动系统所有模块。
24.网联车上的tbox与云端的网关模块利用netty框架建立tcp数据传输通道,监听车辆can总线上的消息,并将can车况数据发送到网关模块。为了保证单车发送消息的时序,在网关模块写入kafka消息系统的时候,将设备id指定为kafka的消息键。
25.第二步,网关模块收到车端上传的报文数据,将报文数据转换为车端消息体,根据msgtype字段过滤出can总线车况数据,将车况数据发送到消息系统kafka的can_condition主题中。
26.第三步,通过flink实时计算引擎的实时车况监控应用订阅上一步kafka中的can_condition主题。根据设计好的iotdb时序数据模型,在flink引擎中利用map算子进行实时etl。flink实时计算引擎进行实时etl的map算子在初始化的时候即在open方法中读取元数据模块存储车况信息的字段表以及消息系统中的can车况信息,完成can车况信息的解析过程。将解析好的can车况消息写入iotdb的root.can_condition存储组中,如图4所示。
27.第四步,时序数据查询模块根据前端业务需求,查询单车的历史can车况数据和车辆的当前最新车况。实施例中,单iotdb实例托管了1700万时间序列,单车历史数据查询返回时间小于1秒,单车最新点查询毫秒级返回。iotdb的can总线车况查询性能,如图5所示。
28.本实施例还提供了一种存储介质,其内存储有计算机可读程序,所述计算机可读程序被执行器调用时,能执行如本实施例中所述的网联车车况实时监控方法的步骤。
29.最后需要说明的是,以上实施例仅用以说明本发明的技术方案而非限制技术方案,尽管申请人参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,那些对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,均应涵盖在本发明的权利要求范围当中。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1