本发明涉及can总线数据采集领域,尤其涉及一种can总线数据采集系统及方法。
背景技术:
can是控制器局域网络的简称,是由以研发和生产汽车电子产品著称的德国bosch公司开发的,并最终成为国际标准,iso国际标准化的串行通信协议。can总线的高性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。can总线已经成为很多国家汽车计算机控制装置和嵌入式工业控制局域网的标准总线。
现有车载can总线数据采集技术主要用来辅助整车厂技术人员进行产品研发与测试,技术人员本身具备对车辆的专业知识,并且也最了解汽车总线上各传感器、控制器、mcu等设备节点的细节,当他们在使用can总线数据采集系统时,关注的是如何自由的获取特定数据,以及各系统检测数据的对比和分析。所以,现有技术中的can总线数据采集系统均采用的是在硬件设备端完成数据解析工作,然后打包成预设的标准文件格式,通过usb端口本地拷贝数据,此种can总线数据采集系统在原始can数据帧上附加了很多无关数据,导致can总线数据包比较大,降低了传输效率,同时由于本地拷贝,实时性无法保证。
技术实现要素:
针对上述存在的问题,本发明提供的一种can总线数据采集系统及方法,以解决现有技术中can总线数据采集设备延时性大、传输效率低的问题,数据实时传输,速度快,安全性高。
为实现上述目的,本发明采取的技术方案为:
本发明提供的can总线数据采集系统,包括:
与can总线连接的数据采集装置和服务器端;所述数据采集装置上设置有无线通讯模块和存储模块;所述数据采集装置通过所述无线通讯模块与所述服务器端网络连接。
本发明提供的can总线数据采集系统,优选地,还包括客户端;所述客户端上设置有网络通讯模块;所述客户端通过所述网络通讯模块与所述服务器端网络连接。
本发明提供的采用上述的can总线数据采集系统的can总线数据采集方法,包括
数据采集装置:
数据采集装置实时采集can总线数据;
数据采集装置判断无线通讯模块与服务器端的网络连接是否正常;
若无线通讯模块与服务器端的网络连接正常,数据采集装置实时将采集到的can总线数据发送至服务器端;
若无线通讯模块与服务器端的网络连接不正常,数据采集装置将采集到的can总线数据存储至存储模块;
服务器端:
服务器端接收数据采集装置发送过来的数据;
服务器端根据通信协议文件将数据进行解析并存储。
本发明提供的can总线数据采集方法,优选地,在步骤“若无线通讯模块与服务器端的网络连接不正常,数据采集装置将采集到的can总线数据存储至存储模块”之后还包括:
若数据采集装置检测到无线通讯模块与服务器端的网络连接恢复正常,数据采集装置将存储在存储模块中的can总线数据发送至服务器端。
本发明提供的can总线数据采集方法,优选地,
在所述步骤“数据采集装置实时采集can总线数据”之前还包括:
数据采集装置通过无线通讯模块向服务器端发送身份识别信息;
在所述步骤“服务器端接收数据采集装置发送过来的数据”之前还包括:
服务器端接受数据采集装置发送的身份识别信息;
若服务器端接受的身份识别信息准确,服务器端与数据采集装置建立网络连接。
本发明提供的can总线数据采集方法,优选地,所述步骤“服务器端根据通信协议文件将数据进行解析”中的“解析”包括:
将数据中的时间段、id段和data段进行划分并分别存入服务器端的数据库中对应的条目下。
本发明提供的can总线数据采集方法,优选地,还包括:
客户端:
客户端通过网络通讯模块与服务器端建立连接;
客户端读取服务器端解析后的数据。
上述技术方案具有如下优点或者有益效果:
该发明通过实时采集can总线数据、实时发送can总线数据、在网络连接发生状况的情况下妥善保存数据并伺机发送,有效解决了现有技术中的延时性大、传输效率低的问题,实时传输,速度快,安全性高,同时能够妥善处置网络状况不佳的情况下的数据传输问题。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明及其特征、外形和优点将会变得更加明显。在全部附图中相同的标记指示相同的部分。并未刻意按照比例绘制附图,重点在于示出本发明的主旨。
图1是本发明提供的can总线数据采集系统的结构示意图;
图2是本发明提供的can总线数据采集方法中数据采集装置的流程图;
图3是本发明提供的can总线数据采集方法中服务器端的流程图;
图4是本发明提供的can总线数据采集方法中客户端的流程图。
具体实施方式
下面结合附图和具体的实施例对本发明作进一步的说明,但是不作为本发明的限定。
实施例1:
本实施例中的can总线数据采集系统主要是用于对车辆上的can总线数据采集,但不仅限于此用途。
如图1所示,本发明实施例1提供的can总线数据采集系统,包括:与can总线连接的数据采集装置1和服务器端2;数据采集装置1上设置有无线通讯模块11和存储模块12;数据采集装置1通过无线通讯模块11与服务器端2网络连接。
数据采集装置1安装在车辆的can总线上(数据采集装置1与can总线的接口标准为obd或者db9),通过车载电源提供12v或者24v供电;无线通讯模块11可以是现有技术中的4g通讯模块;数据采集装置1通过接口实时采集车辆can总线上的数据,并通过4g通讯模块实时的将采集到的数据发送给服务器端2,服务器端2将接收得到的数据进行解析,经由数据拆包,数据帧分段,协议对接,公式换算得到最终真实值,并保存在服务器端2处的数据库中以备各类终端用户使用。
该发明实施例1通过实时采集can总线数据、实时发送can总线数据、在网络连接发生状况的情况下妥善保存数据并伺机发送,有效解决了现有技术中的延时性大、传输效率低的问题,实时传输,速度快,安全性高,同时能够妥善处置网络状况不佳的情况下的数据传输问题。
更具体地,还包括客户端3;客户端3上设置有网络通讯模块31;客户端3通过网络通讯模块31与服务器端2网络连接。
各用户通过若干的客户端3连接服务器端2,用户根据自己的需求通过客户端操作,读取保存在服务器端2处的数据库中保存的数据,在客户端3处完成数据观测、预警、数据导出、配置文件修改、数据分析、公共安全管理等操作。
实施例2:
本发明实施例2一种采用实施例1提供的can总线数据采集系统的can总线数据采集方法,包括
数据采集装置:
s101:数据采集装置实时采集can总线数据;
s102:数据采集装置判断无线通讯模块与服务器端的网络连接是否正常;
s103:若无线通讯模块与服务器端的网络连接正常,数据采集装置实时将采集到的can总线数据发送至服务器端;
s104:若无线通讯模块与服务器端的网络连接不正常,数据采集装置将采集到的can总线数据存储至存储模块;
服务器端:
s201:服务器端接收数据采集装置发送过来的数据;
s202:服务器端根据通信协议文件将数据进行解析并存储。
车辆运行后,车辆各终端设备(动力系统,制动系统,灯光,中控等)将体现自身运转状态的数据信息发送至can总线上,数据采集装置通过与can总线连接的接口实时采集can总线上的数据,根据can总线数据量(或板载存储)自动调整tcp帧数据单元个数,然后发送至服务器端;服务器端根据车辆通信协议文件(车辆通信协议为dbc文件,由汽车厂提供)对接受的数据进行解析并存储。
数据单元格式可以如下:
+imei:<sn>+dbc:<name>+data:<canframe,...,canframe>,其中每一个canframe需要按包含采集时间和canbus数据,需按十六进制处理。数据帧结构定义为(msb方式)
更具体地,在步骤s104:若无线通讯模块与服务器端的网络连接不正常,数据采集装置将采集到的can总线数据存储至存储模块之后还包括:
s105:若数据采集装置检测到无线通讯模块与服务器端的网络连接恢复正常,数据采集装置将存储在存储模块中的can总线数据发送至服务器端。
在遇到网络故障后,数据采集装置将实时采集的can总线上的数据存储至存储模块中;当网络恢复通畅后,为保证数据的完整性,数据采集装置将存储在存储模块的数据发送至服务器端,供服务器端解析并存储。
更具体地,在步骤s101:数据采集装置实时采集can总线数据之前还包括:
s011:数据采集装置通过无线通讯模块向服务器端发送身份识别信息;
在所述步骤“服务器端接收数据采集装置发送过来的数据”之前还包括:
s021:服务器端接受数据采集装置发送的身份识别信息;
s022:若服务器端接受的身份识别信息准确,服务器端与数据采集装置建立网络连接。
数据采集装置内置有服务器的ip地址,数据采集装置根据内置的ip地址向服务器端发送身份识别信息,服务器端接受身份识别信息后并响应,若身份识别信息准确,则服务器端与数据采集装置建立网络连接;若身份识别信息不准确,则服务器端与数据采集装置不能够建立网络连接。
数据采集装置发送的验证信息的格式可以为+imei:<sn>,sn为15位0~9的字符串(4g模块识别号);服务器端响应信息格式可以为+imei:<sn>+dbc:<name>,name为实际使用的dbc文件名称。
更具体地,步骤s202“服务器端根据通信协议文件将数据进行解析”中的“解析”包括:将数据中的时间段、id段和data段进行划分并分别存入服务器端的数据库中对应的条目下。
服务器端的解析操作主要是根据dbc协议设计的响应程序,将时间段、id段和data段进行划分并分别存入数据库中对应的条目下,以供客户端软件调取数据进行用户需求操作。
更具体地,还包括:
客户端:
s301:客户端通过网络通讯模块与服务器端建立连接;
s302:客户端读取服务器端解析后的数据。
通过设置客户端,方便的对存储在服务器端数据库中的数据进行数据观测、预警、数据导出、配置文件修改、数据分析、公共安全管理等操作,同时方便对服务器的管理,解决了现有技术中配置文件均设置在本地的can总线数据采集装置中而导致的无法修改配置文件的问题。
综上所述,本发明提供的can总线数据采集系统及方法,有效解决了现有技术中的延时性大、传输效率低的问题,数据实时传输,速度快,安全性高,同时能够妥善处置网络状况不佳的情况下的数据传输问题。
需要说明的是,实施例1~2中所涉及到的电连接、网络连接均属于本领域技术人员能够理解的,是清楚、明确的,在此,本申请对其不予以赘述。
本领域技术人员应该理解,本领域技术人员结合现有技术以及上述实施例可以实现所述变化例,在此不予赘述。这样的变化例并不影响本发明的实质内容,在此不予赘述。
以上对本发明的较佳实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,其中未尽详细描述的设备和结构应该理解为用本领域中的普通方式予以实施;任何熟悉本领域的技术人员,在不脱离本发明技术方案作出许多可能的变动和修饰,或修改为等同变化的等效实施例,这并不影响本发明的实质内容。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。