CN106993056A - 汽车数据流获取方法、系统及计算机可读存储介质 - Google Patents

汽车数据流获取方法、系统及计算机可读存储介质 Download PDF

Info

Publication number
CN106993056A
CN106993056A CN201710340692.8A CN201710340692A CN106993056A CN 106993056 A CN106993056 A CN 106993056A CN 201710340692 A CN201710340692 A CN 201710340692A CN 106993056 A CN106993056 A CN 106993056A
Authority
CN
China
Prior art keywords
data
data flow
packet
selection instruction
viewed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710340692.8A
Other languages
English (en)
Inventor
刘均
庄文龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Launch Technology Co Ltd
Original Assignee
Shenzhen Launch Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Launch Technology Co Ltd filed Critical Shenzhen Launch Technology Co Ltd
Priority to CN201710340692.8A priority Critical patent/CN106993056A/zh
Publication of CN106993056A publication Critical patent/CN106993056A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management

Abstract

本发明公开了一种汽车数据流获取方法,系统及计算机可读存储介质,所述方法包括:接收数据流选择指令,并将数据流选择指令打包生成第一数据包;将第一数据包发送到下位机,以通过下位机将第一数据包解析后发送到汽车OBD接口,并获取汽车OBD接口返回数据流选择指令对应的回复数据;接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流。本方案将多条数据流选择指令打包发送到下位机,以供下位机解析后和汽车OBD接口交互,获取汽车OBD接口返回的回复数据,进而对回复数据处理得到与数据流选择指令对应的数据流,从而避免查看多条数据流时,逐一循环发送显示,加快了数据流刷新速度。

Description

汽车数据流获取方法、系统及计算机可读存储介质
技术领域
本发明主要涉及汽车数据流技术领域,具体地说,涉及一种汽车数据流获取方法、系统及计算机可读存储介质。
背景技术
汽车数据流是指电子控制单元(ECU)与传感器和执行器交流的数据参数,ECU中所记忆的数据流真实的反映了各传感器和执行器的工作电压和状态,为汽车故障诊断提供了依据,数据流只能通过专用诊断仪器读取。读取汽车数据流可以检测汽车各传感器的工作状态,并检测汽车的工作状态,通过数据流还可以设定汽车的运行数据。汽车数据流可作为汽车ECU的输入输出数据,使维修人员随时可以了解汽车的工作状况,及时诊断汽车的故障。
目前汽车的传感器越来越多,从而使汽车的数据流也越来越多,在对汽车进行诊断的时候,有时候需要同时监控查看多条数据流的值,但当同时选取多条数据流,逐一循环发送显示,数据流刷新时间会明显变慢,数据流的变化不够及时。
发明内容
本发明的主要目的是提供一种汽车数据流获取方法、系统及计算机可读存储介质,旨在解决现有技术多条数据流逐一循环发送,数据流变化不及时,刷新时间慢的问题。
为实现上述目的,本发明提供一种汽车数据流获取方法,所述汽车数据流获取方法包括以下步骤:
接收数据流选择指令,并将所述数据流选择指令打包生成第一数据包;
将所述第一数据包发送到下位机,以通过下位机将第一数据包解析后发送到汽车OBD接口,并获取汽车OBD接口返回数据流选择指令对应的回复数据;
接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流。
优选地,所述接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流的步骤包括:
当接收到下位机对回复数据打包生成的第二数据包时,基于第二数据包的打包格式对第二数据包进行解包,以获取回复数据;
依据预设规则将回复数据转换为数据流选择指令对应的数据流数值,并将所述数据流数值和数据流选择指令对应的数据流对应显示。
此外,为实现上述目的,本发明还提出一种汽车数据流获取方法,所述汽车数据流获取方法包括以下步骤:
当接收到上位机发送的第一数据包时,对所述第一数据包解析,以获取数据流选择指令对应的待查看数据流;
将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据;
将所述回复数据打包成第二数据包,并发送到上位机。
优选地,所述当接收到上位机发送的第一数据包时,对所述第一数据包解析,以获取数据流选择指令对应的待查看数据流的步骤之后包括:
将待查看数据流以队列的形式存储。
优选地,所述将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据的步骤包括:
将待查看数据流在队列中的排列顺序,逐一发送到汽车OBD接口,并接收汽车OBD接口返回的回复数据,直到队列中的待查看数据发送完成。
此外,为实现上述目的,本发明还提出一种汽车数据流获取系统,所述汽车数据流获取系统包括:存储器、处理器、通信总线以及存储在所述存储器上的汽车数据流获取程序;
所述通信总线用于实现处理器和存储器之间的连接通信;
所述处理器用于执行所述汽车数据流获取程序,以实现以下步骤:
接收数据流选择指令,并将所述数据流选择指令打包生成第一数据包;
将所述第一数据包发送到下位机,以通过下位机将第一数据包解析后发送到汽车OBD接口,并获取汽车OBD接口返回数据流选择指令对应的回复数据;
接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流。
优选地,所述接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流的步骤包括:
当接收到下位机对回复数据打包生成的第二数据包时,基于第二数据包的打包格式对第二数据包进行解包,以获取回复数据;
依据预设规则将回复数据转换为数据流选择指令对应的数据流数值,并将所述数据流数值和数据流选择指令对应的数据流对应显示。
优选地,所述所述处理器用于执行所述汽车数据流获取程序,以实现以下步骤:
当接收到上位机发送的第一数据包时,对所述第一数据包解析,以获取数据流选择指令对应的待查看数据流,并将待查看数据流以队列的形式存储;
将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据;
将所述回复数据打包成第二数据包,并发送到上位机。
优选地,所述将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据的步骤包括:
将待查看数据流在队列中的排列顺序,逐一发送到汽车OBD接口,并接收汽车OBD接口返回的回复数据,直到队列中的待查看数据发送完成。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序可被一个或者一个以上的处理器执行以用于:
接收数据流选择指令,并将所述数据流选择指令打包生成第一数据包;
将所述第一数据包发送到下位机,以通过下位机将此第一数据包解析后发送到汽车OBD接口,并获取汽车OBD接口返回的回复数据;
接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流。
本发明提出的汽车数据流获取方法,通过将数据流选择指令打包生成第一数据包,并将第一数据包发送到下位机;下位机在接收到第一数据包后对此第一数据包解析,并将解析后的数据发送到汽车OBD接口,汽车OBD接口根据此解析后的数据流选择指令返回回复数据到下位机;下位机将此回复数据打包生成第二数据包发送,在接收到下位机发送的第二数据包后进行解析,从而获取与数据流选择指令对应的数据流。本方案通过将多条数据流选择指令打包发送到下位机,以供下位机解析后和汽车OBD接口交互,获取汽车OBD接口返回的回复数据,进而对回复数据处理得到与数据流选择指令对应的数据流,从而避免需要查看多条数据流时,逐一循环发送显示,使数据流变化更及时,加快了数据流刷新速度。
附图说明
图1是本发明的汽车数据流获取方法第一实施例的流程示意图;
图2是本发明的汽车数据流获取方法第二实施例的流程示意图;
图3是本发明实施例方法涉及的硬件运行环境的设备结构示意图;
图4是本发明的汽车数据流获取方法及系统数据传输场景示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种汽车数据流获取方法,请参照图1,在第一实施例中,该汽车数据流获取方法包括:
步骤S10,接收数据流选择指令,并将所述数据流选择指令打包生成第一数据包;
汽车数据流是指电子控制单元(ECU)与传感器和执行器交流的数据参数,包括冷却液温度、发动机转速、发动机负荷、发动机每循环喷油持续时间等信息,可使用诊断仪读取,为汽车故障诊断提供依据。当汽车出现故障时,可通过读取汽车数据流来检测汽车的故障点;未出现故障时,可通过读取汽车数据流检测汽车的工作状态来防止出现故障。汽车车身上设置有OBD接口,当需要读取汽车数据流时,通过诊断接头将此OBD接口和诊断仪连接,诊断仪上有显示装置,用于显示汽车数据流;此外,也可以使用诸如电脑、平板等移动终端读取,诊断接头将OBD接口和移动终端连接,在移动终端的显示界面显示汽车数据流。还可以使用无线诊断接头读取,无线诊断接头和OBD接口连接,且通过无线的方式和移动终端通信,在移动终端上显示无线诊断接头读取的汽车数据流。当需要读取数据流时,在显示装置上选择需要查看的数据流,此选择操作即为数据流选择指令。接收此数据流选择指令,并将此数据流选择指令打包生成第一数据包,此第一数据包中包含的数据流选择指令表征需要查看的数据流。
在一实施例中,汽车数据流以列表的形式显示在显示装置上,当需要查看冷却液温度、发动机转速和发动机负荷三项时,在列表对应的位置上点击将此三项作为需要查看的数据流的数据流选择指令,当接收到此数据流选择指令时,将此数据流选择指令打包成第一数据包即将冷却液温度、发动机转速和发动机负荷的选择指令打包成第一数据包。其中每项选择指令设置有时间间隔,当在时间间隔内接收到选择指令,则将此选择指令对应的数据流为需要查看的数据流,而当超过时间间隔未接收到选择指令,则判定为没有其他需要查看的数据流,将在时间间隔内接收到的选择指令打包,并在打包操作前以询问的方式,确认是否将数据流选择指令对应的数据流作为需要查看的数据流,当接收到确认指令时,则将接收的数据流选择指令打包;当未接收到确认指令时,则返回重新选择提醒,以重新选择需要查看的数据流,直到接收到确认指令
步骤S20,将所述第一数据包发送到下位机,以通过下位机将第一数据包解析后发送到汽车OBD接口,并获取汽车OBD接口返回数据流选择指令对应的回复数据;
本方案将移动终端或者诊断仪等用于发送指令或者显示的装置作为上位机,将诊断接头或无线诊断接头等直接和汽车车身上的OBD接口连接,可直接读取OBD接口数据的装置作为下位机。在将数据流选择指令打包生成第一数据包后,再将此第一数据包发送到下位机,下位机对接收到的第一数据包解析,得到表征需要查看数据流的数据流选择指令。下位机直接与汽车OBD接口连接,将此数据流选择指令通过汽车OBD接口发送到汽车总线。汽车根据其遵循的总线协议查找与数据流选择指令对应的回复数据,并将回复数据返回到汽车OBD接口,再经过汽车OBD接口将回复数据返回到与其连接的下位机。具体地,当下位机解析出第一数据包中的数据流选择指令表征的需要查看数据流为冷却液温度、发动机转速和发动机负荷的数据流时,下位机将冷却液温度、发动机转速和发动机负荷的数据流选择指令通过汽车OBD接口发送到汽车总线。汽车总线根据其遵循的总线协议获取与此三者的数据流选择指令对应的数据流,即冷却液温度、发动机转速和发动机负荷的数据流,并将此数据流返回到汽车OBD接口,再经过汽车OBD接口将数据流返回到与其连接的下位机。
步骤S30,接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流。
进一步地,当汽车OBD接口根据数据流选择指令向下位机返回回复数据,因选择指令可能涉及到多条,从而相应的下位机接收的回复数据也有多条。当下位机将选择指令对应的回复数据接收完成后,对接收的回复数据打包成第二数据包发送,当接收到下位机发送的第二数据包时,对第二数据包解析,其中解析包括对第二数据包的解包以及对解包出的数据处理,从而解包出与选择指令对应的回复数据,以及对回复数据处理获取对应的数据流。
本实施例的汽车数据流获取方法包括以下步骤:接收数据流选择指令,并将所述数据流选择指令打包生成第一数据包;将所述第一数据包发送到下位机,以通过下位机将此第一数据包解析后发送到汽车OBD接口,并获取汽车OBD接口返回的回复数据;接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流。本方案通过将多条数据流选择指令打包发送到下位机,以供下位机解析后和汽车OBD接口交互,获取汽车OBD接口返回的回复数据,进而对回复数据处理得到与数据流选择指令对应的数据流,从而避免需要查看多条数据流时,逐一循环发送显示,使数据流变化更及时,加快了数据流刷新速度。
进一步地,在本发明汽车数据流获取方法的另一实施例中,所述步骤S30接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流的步骤包括:
步骤S31,当接收到下位机对回复数据打包生成的第二数据包时,基于第二数据包的打包格式对第二数据包进行解包,以获取回复数据;
步骤S32,依据预设规则将回复数据转换为数据流选择指令对应的数据流数值,并将所述数据流数值和数据流选择指令对应的数据流对应显示。
进一步地,汽车OBD接口根据数据流选择指令向下位机返回回复数据,一条数据流选择指令对应一条回复数据,当数据流选择指令的回复数据返回完成时,即下位机已获取全部数据流选择指令对应的回复数据,将此回复数据按照预定的打包规则打包生成第二数据包,以数据包的形式对回复数据一并发送,避免收到一条回复数据即发送一条回复数据,减慢数据流刷新速度。其打包规则可以是将数据设定数据头、数据、校验位以及数据尾等形式进行封装,也可以通过结构体、功能块进行数据调用。当接收到下位机发送的第二数据包时,按照第二数据包预定的打包规则进行解包,得到汽车OBD接口返回的回复数据。因回复数据是OBD接口输出的机器码字符形式的数据,若直接以此字符形式的数据作为数据流的内容,不够直观,用户在获知此字符后也很难了解其代表数据流的含义。本实施例将回复数据依据预设规则转换为数值,预设规则可以是字符转换为十进制数值之间的转换规则,具体的可根据作为回复数据的待转换字符以及作为数据流的数值之间的关系确定,以此将数据流选择指令的回复数据转换为数值,并将此数值和数据流选择指令对应的数据流对应显示,以便用户直接获知数据流数值,并根据数据流数值了解汽车的运行状况。在具体实施例中,待查看数据流为发动机转速和冷却液温度,根据此待查看数据流的查看指令获取的回复数据分别为10010110000和1010000的二进制数值,按照二进制与十进制之间的转换关系将10010110000转换为1200,1010000转换为80,从而可知发动机转速为1200转、冷却液温度为80℃,将此数值和数据流选择指令对应的数据流对应显示,以便用户对此待查看数据流查看,了解汽车的运行状况。
此外,本发明还提供一种汽车数据流获取方法,请参照图2,在第一实施例中,该汽车数据流获取方法包括:
步骤S40,当接收到上位机发送的第一数据包时,对所述第一数据包解析,以获取数据流选择指令对应的待查看数据流;
步骤S50,将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据;
步骤S60,将所述回复数据打包成第二数据包,并发送到上位机。
本实施例的汽车数据流获取方法主要应用于和汽车车身上的OBD接口连接,可直接读取OBD接口数据的下位机,下位机和用于发送指令或者显示的上位机之间电性连接或者无线连接。当接收到上位机发送的第一数据包时,按照第一数据包的打包规则对第一数据包解析,得到数据流选择指令。因数据流选择指令对应需要查看的数据流,将此对应的数据流为作为待查看数据流。获取此数据流选择指令对应的待查看数据流,并将其发送到汽车OBD接口。通过汽车OBD接口发送到汽车总线,以根据总线协议对此待查看数据流响应返回回复数据。在接收到汽车OBD接口返回的回复数据后,按照一定的规则对回复数据打包生成第二数据包,并将此第二数据包发送到上位机,以供上位机对此第二数据包解析完成数据流的获取。
进一步地,在本发明汽车数据流获取方法另一实施例,所述步骤S40之后还包括步骤:将待查看数据流以队列的形式存储。
进一步地,在对第一数据包解析,得到与数据流选择指令对应的待查看数据流时,将此待查看数据流以队列的形式存储。其中队列是一种先进先出的线性表,按照元素进入队列的顺序,对队列中的元素进行逐一处理,最开始进入队列中的元素,也会最开始从队列中出去进行处理。将待查看数据流保存在队列中,以按照队列顺序通过汽车OBD接口返回回复数据。
其中将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据的步骤包括:将待查看数据流在队列中的排列顺序,逐一发送到汽车OBD接口,并接收汽车OBD接口返回的回复数据,直到队列中的待查看数据发送完成。
按照待查看数据流在队列中的先后排列顺序,将排列顺序为第一位的待查看数据流发送到汽车OBD接口,汽车OBD接口根据接收到的待查看数据流响应对应的回复数据,当接收到排列顺序为第一位的待查看数据流对应的回复数据后,再将排列顺序为第二位的待查看数据流发送到汽车OBD接口,以获取其对应的回复数据,如此循环直到队列中的待查看数据流均获得汽车OBD接口返回的回复数据。当接收到队列中所有待查看数据流的回复数据后,将此所有回复数据打包生成第二数据包,将此第二数据包发送到上位机。因第二数据包中包含了待查看数据流中的所有回复数据,从而避免单条发送待查看数据流,并获取此单条待查看数据流的回复数据后,再发送单条待发送数据流,获取其相应的回复数据的循环流程,加快了数据流的响应。
为辅助理解,以一具体实施例加以说明,请参照图4,当接收到数据流选择指令时,将数据流选择指令打包生成第一数据包,将此第一数据包发送到下位机,下位机按照第一数据包的打包规则解析,获取数据流选择指令,并将此数据流选择指令存储在命令队列中;按照队列中数据流选择指令的存储顺序通过通信收发器和汽车OBD接口通信循环将数据流选择指令发送到汽车OBD接口,并获取OBD接口回复的回复数据,并将获取的回复数据存储在命令队列中,在队列中的数据流选择指令均获取到相应的回复数据时,下位机将所有获取的回复数据打包生成第二数据包发送到上位机,上位机对接收的第二数据包解析获得数据流选择指令对应的回复数据,并按照预设规则对回复数据进行处理,将回复数据由字符转换为数值,在上位机的显示装置上显示数据流选择指令对应的数据流及其对应的数值,完成数据流的获取。
参照图3,图3是本发明实施例方法涉及的硬件运行环境的设备结构示意图。
本发明实施例汽车数据流获取系统包括交互的上位机和下位机,上位机可以是PC,也可以是智能手机、平板电脑便携计算机等终端设备,下位机可以是无线诊断接头或有线诊断接头等OBD诊断接头。
如图3所示,该汽车数据流获取系统可以包括:处理器1001,例如CPU,存储器1005,通信总线1002,且处理器1001和存储器1005可以存在于上位机、也可以存在于下位机、还可以上位机和下位机都存在。其中,通信总线1002用于实现处理器1001和存储器1005之间的连接通信。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,该汽车数据流获取系统还可以包括用户接口、网络接口、摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口还可以包括标准的有线接口、无线接口。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
本领域技术人员可以理解,图3中示出的汽车数据流获取系统结构并不构成对汽车数据流获取系统的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图3所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块以及汽车数据流获取程序。操作系统是管理和控制汽车数据流获取系统硬件和软件资源的程序,支持汽车数据流获取程序以及其它软件和/或程序的运行。网络通信模块用于实现存储器1005内部各组件之间的通信,以及与汽车数据流获取系统中其它硬件和软件之间通信。
在图3所示的汽车数据流获取系统中,汽车数据流获取程序可应用于上位机,处理器1001用于执行存储器1005中存储的汽车数据流获取程序,实现以下步骤:
接收数据流选择指令,并将所述数据流选择指令打包生成第一数据包;
汽车数据流是指电子控制单元(ECU)与传感器和执行器交流的数据参数,包括冷却液温度、发动机转速、发动机负荷、发动机每循环喷油持续时间等信息,可使用诊断仪读取,为汽车故障诊断提供依据。当汽车出现故障时,可通过读取汽车数据流来检测汽车的故障点;未出现故障时,可通过读取汽车数据流检测汽车的工作状态来防止出现故障。汽车车身上设置有OBD接口,当需要读取汽车数据流时,通过诊断接头将此OBD接口和诊断仪连接,诊断仪上有显示装置,用于显示汽车数据流;此外,也可以使用诸如电脑、平板等移动终端读取,诊断接头将OBD接口和移动终端连接,在移动终端的显示界面显示汽车数据流。还可以使用无线诊断接头读取,无线诊断接头和OBD接口连接,且通过无线的方式和移动终端通信,在移动终端上显示无线诊断接头读取的汽车数据流。当需要读取数据流时,在显示装置上选择需要查看的数据流,此选择操作即为数据流选择指令。接收此数据流选择指令,并将此数据流选择指令打包生成第一数据包,此第一数据包中包含的数据流选择指令表征需要查看的数据流。
在一实施例中,汽车数据流以列表的形式显示在显示装置上,当需要查看冷却液温度、发动机转速和发动机负荷三项时,在列表对应的位置上点击将此三项作为需要查看的数据流的数据流选择指令,当接收到此数据流选择指令时,将此数据流选择指令打包成第一数据包即将冷却液温度、发动机转速和发动机负荷的选择指令打包成第一数据包。其中每项选择指令设置有时间间隔,当在时间间隔内接收到选择指令,则将此选择指令对应的数据流为需要查看的数据流,而当超过时间间隔未接收到选择指令,则判定为没有其他需要查看的数据流,将在时间间隔内接收到的选择指令打包,并在打包操作前以询问的方式,确认是否将数据流选择指令对应的数据流作为需要查看的数据流,当接收到确认指令时,则将接收的数据流选择指令打包;当未接收到确认指令时,则返回重新选择提醒,以重新选择需要查看的数据流,直到接收到确认指令
将所述第一数据包发送到下位机,以通过下位机将此第一数据包解析后发送到汽车OBD接口,并获取汽车OBD接口返回数据流选择指令对应的回复数据;
本方案将移动终端或者诊断仪等用于发送指令或者显示的装置作为上位机,将诊断接头或无线诊断接头等直接和汽车车身上的OBD接口连接,可直接读取OBD接口数据的装置作为下位机。在将数据流选择指令打包生成第一数据包后,再将此第一数据包发送到下位机,下位机对接收到的第一数据包解析,得到表征需要查看数据流的数据流选择指令。下位机直接与汽车OBD接口连接,将此数据流选择指令通过汽车OBD接口发送到汽车总线。汽车根据其遵循的总线协议查找与数据流选择指令对应的回复数据,并将回复数据返回到汽车OBD接口,再经过汽车OBD接口将回复数据返回到与其连接的下位机。具体地,当下位机解析出第一数据包中的数据流选择指令表征的需要查看数据流为冷却液温度、发动机转速和发动机负荷的数据流时,下位机将冷却液温度、发动机转速和发动机负荷的数据流选择指令通过汽车OBD接口发送到汽车总线。汽车总线根据其遵循的总线协议获取与此三者的数据流选择指令对应的数据流,即冷却液温度、发动机转速和发动机负荷的数据流,并将此数据流返回到汽车OBD接口,再经过汽车OBD接口将数据流返回到与其连接的下位机。
接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流。
进一步地,当汽车OBD接口根据数据流选择指令向下位机返回回复数据,因选择指令可能涉及到多条,从而相应的下位机接收的回复数据也有多条。当下位机将选择指令对应的回复数据接收完成后,对接收的回复数据打包成第二数据包发送,当接收到下位机发送的第二数据包时,对第二数据包解析,其中解析包括对第二数据包的解包以及对解包出的数据处理,从而解包出与选择指令对应的回复数据,以及对回复数据处理获取对应的数据流。
本实施例的汽车数据流获取系统:接收数据流选择指令,并将所述数据流选择指令打包生成第一数据包;将所述第一数据包发送到下位机,以通过下位机将此第一数据包解析后发送到汽车OBD接口,并获取汽车OBD接口返回的回复数据;接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流。本方案通过将多条数据流选择指令打包发送到下位机,以供下位机解析后和汽车OBD接口交互,获取汽车OBD接口返回的回复数据,进而对回复数据处理得到与数据流选择指令对应的数据流,从而避免需要查看多条数据流时,逐一循环发送显示,使数据流变化更及时,加快了数据流刷新速度。
进一步地,接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流的步骤包括:
当接收到下位机对回复数据打包生成的第二数据包时,基于第二数据包的打包格式对第二数据包进行解包,以获取回复数据;
依据预设规则将回复数据转换为数据流选择指令对应的数据流数值,并将所述数据流数值和数据流选择指令对应的数据流对应显示。
进一步地,汽车OBD接口根据数据流选择指令向下位机返回回复数据,一条数据流选择指令对应一条回复数据,当数据流选择指令的回复数据返回完成时,即下位机已获取全部数据流选择指令对应的回复数据,将此回复数据按照预定的打包规则打包生成第二数据包,以数据包的形式对回复数据一并发送,避免收到一条回复数据即发送一条回复数据,减慢数据流刷新速度。其打包规则可以是将数据设定数据头、数据、校验位以及数据尾等形式进行封装,也可以通过结构体、功能块进行数据调用。当接收到下位机发送的第二数据包时,按照第二数据包预定的打包规则进行解包,得到汽车OBD接口返回的回复数据。因回复数据是OBD接口输出的机器码字符形式的数据,若直接以此字符形式的数据作为数据流的内容,不够直观,用户在获知此字符后也很难了解其代表数据流的含义。本实施例将回复数据依据预设规则转换为数值,预设规则可以是字符转换为十进制数值之间的转换规则,具体的可根据作为回复数据的待转换字符以及作为数据流的数值之间的关系确定,以此将数据流选择指令的回复数据转换为数值,并将此数值和数据流选择指令对应的数据流对应显示,以便用户直接获知数据流数值,并根据数据流数值了解汽车的运行状况。在具体实施例中,待查看数据流为发动机转速和冷却液温度,根据此待查看数据流的查看指令获取的回复数据分别为10010110000和1010000的二进制数值,按照二进制与十进制之间的转换关系将10010110000转换为1200,1010000转换为80,从而可知发动机转速为1200转、冷却液温度为80℃,将此数值和数据流选择指令对应的数据流对应显示,以便用户对此待查看数据流查看,了解汽车的运行状况。
在图3所示的汽车数据流获取系统中,汽车数据流获取程序可应用于下位机,处理器1001用于执行存储器1005中存储的汽车数据流获取程序,实现以下步骤:
当接收到上位机发送的第一数据包时,对所述第一数据包解析,以获取数据流选择指令对应的待查看数据流,并将待查看数据流以队列的形式存储;
将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据;
将所述回复数据打包成第二数据包,并发送到上位机。
本实施例的汽车数据流获取方法主要应用于和汽车车身上的OBD接口连接,可直接读取OBD接口数据的下位机,下位机和用于发送指令或者显示的上位机之间电性连接或者无线连接。当接收到上位机发送的第一数据包时,按照第一数据包的打包规则对第一数据包解析,得到数据流选择指令。因数据流选择指令对应需要查看的数据流,将此对应的数据流为作为待查看数据流。在对第一数据包解析,得到与数据流选择指令对应的待查看数据流后,将此待查看数据流以队列的形式存储。其中队列是一种先进先出的线性表,按照元素进入队列的顺序,对队列中的元素进行逐一处理,最开始进入队列中的元素,也会最开始从队列中出去进行处理。将待查看数据流保存在队列中,以按照队列顺序通过汽车OBD接口返回回复数据。按照队列中存储的数据流选择指令对应的待查看数据流顺序,将其发送到汽车OBD接口。通过汽车OBD接口发送到汽车总线,以根据总线协议对此待查看数据流响应返回回复数据。在接收到汽车OBD接口返回的回复数据后,按照一定的规则对回复数据打包生成第二数据包,并将此第二数据包发送到上位机,以供上位机对此第二数据包解析完成数据流的获取。
其中将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据的步骤包括:将待查看数据流在队列中的排列顺序,逐一发送到汽车OBD接口,并接收汽车OBD接口返回的回复数据,直到队列中的待查看数据发送完成。
按照待查看数据流在队列中的先后排列顺序,将排列顺序为第一位的待查看数据流发送到汽车OBD接口,汽车OBD接口根据接收到的待查看数据流响应对应的回复数据,当接收到排列顺序为第一位的待查看数据流对应的回复数据后,再将排列顺序为第二位的待查看数据流发送到汽车OBD接口,以获取其对应的回复数据,如此循环直到队列中的待查看数据流均获得汽车OBD接口返回的回复数据。当接收到队列中所有待查看数据流的回复数据后,将此所有回复数据打包生成第二数据包,将此第二数据包发送到上位机。因第二数据包中包含了待查看数据流中的所有回复数据,从而避免单条发送待查看数据流,并获取此单条待查看数据流的回复数据后,再发送单条待发送数据流,获取其相应的回复数据的循环流程,加快了数据流的响应。
为辅助理解,以一具体实施例加以说明,请参照图4,当接收到数据流选择指令时,将数据流选择指令打包生成第一数据包,将此第一数据包发送到下位机,下位机按照第一数据包的打包规则解析,获取数据流选择指令,并将此数据流选择指令存储在命令队列中;按照队列中数据流选择指令的存储顺序通过通信收发器和汽车OBD接口通信循环将数据流选择指令发送到汽车OBD接口,并获取OBD接口回复的回复数据,并将获取的回复数据存储在命令队列中,在队列中的数据流选择指令均获取到相应的回复数据时,下位机将所有获取的回复数据打包生成第二数据包发送到上位机,上位机对接收的第二数据包解析获得数据流选择指令对应的回复数据,并按照预设规则对回复数据进行处理,将回复数据由字符转换为数值,在上位机的显示装置上显示数据流选择指令对应的数据流及其对应的数值,完成数据流的获取。
本发明提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于:
接收数据流选择指令,并将所述数据流选择指令打包生成第一数据包;
将所述第一数据包发送到下位机,以通过下位机将此第一数据包解析后发送到汽车OBD接口,并获取汽车OBD接口返回数据流选择指令对应的回复数据;
接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流。
进一步地,所述接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流的步骤包括:
当接收到下位机对回复数据打包生成的第二数据包时,基于第二数据包的打包格式对第二数据包进行解包,以获取回复数据;
依据预设规则将回复数据转换为数据流选择指令对应的数据流数值,并将所述数据流数值和数据流选择指令对应的数据流对应显示。
所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于:
当接收到上位机发送的第一数据包时,对所述第一数据包解析,以获取数据流选择指令对应的待查看数据流;
将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据;
将所述回复数据打包成第二数据包,并发送到上位机。
进一步地,所述当接收到上位机发送的第一数据包时,对所述第一数据包解析,以获取数据流选择指令对应的待查看数据流的步骤之后包括:
将待查看数据流以队列的形式存储。
进一步地,所述将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据的步骤包括:
将待查看数据流在队列中的排列顺序,逐一发送到汽车OBD接口,并接收汽车OBD接口返回的回复数据,直到队列中的待查看数据发送完成。
本发明计算机可读存储介质具体实施方式与上述汽车数据流获取方法和装置各实施例基本相同,在此不再赘述。
还需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是在本发明的构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。

Claims (10)

1.一种汽车数据流获取方法,其特征在于,所述汽车数据流获取方法包括以下步骤:
接收数据流选择指令,并将所述数据流选择指令打包生成第一数据包;
将所述第一数据包发送到下位机,以通过下位机将第一数据包解析后发送到汽车OBD接口,并获取汽车OBD接口返回数据流选择指令对应的回复数据;
接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流。
2.如权利要求1所述的汽车数据流获取方法,其特征在于,所述接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流的步骤包括:
当接收到下位机对回复数据打包生成的第二数据包时,基于第二数据包的打包格式对第二数据包进行解包,以获取回复数据;
依据预设规则将回复数据转换为数据流选择指令对应的数据流数值,并将所述数据流数值和数据流选择指令对应的数据流对应显示。
3.一种汽车数据流获取方法,其特征在于,所述汽车数据流获取方法包括以下步骤:
当接收到上位机发送的第一数据包时,对所述第一数据包解析,以获取数据流选择指令对应的待查看数据流;
将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据;
将所述回复数据打包成第二数据包,并发送到上位机。
4.如权利要求3所述的数据流获取方法,其特征在于,所述当接收到上位机发送的第一数据包时,对所述第一数据包解析,以获取数据流选择指令对应的待查看数据流的步骤之后包括:
将待查看数据流以队列的形式存储。
5.如权利要求4所述的数据流获取方法,其特征在于,所述将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据的步骤包括:
将待查看数据流在队列中的排列顺序,逐一发送到汽车OBD接口,并接收汽车OBD接口返回的回复数据,直到队列中的待查看数据发送完成。
6.一种数据流获取系统,其特征在于,所述汽车数据流获取系统包括:存储器、处理器、通信总线以及存储在所述存储器上的汽车数据流获取程序:
所述通信总线用于实现处理器和存储器之间的连接通信;
所述处理器用于执行所述汽车数据流获取程序,以实现以下步骤:
接收数据流选择指令,并将所述数据流选择指令打包生成第一数据包;
将所述第一数据包发送到下位机,以通过下位机将第一数据包解析后发送到汽车OBD接口,并获取汽车OBD接口返回数据流选择指令对应的回复数据;
接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流。
7.如权利要求6所述的汽车数据流获取系统,其特征在于,所述接收下位机对回复数据打包生成的第二数据包,并对第二数据包解析,以获取数据流选择指令对应的数据流的步骤包括:
当接收到下位机对回复数据打包生成的第二数据包时,基于第二数据包的打包格式对第二数据包进行解包,以获取回复数据;
依据预设规则将回复数据转换为数据流选择指令对应的数据流数值,并将所述数据流数值和数据流选择指令对应的数据流对应显示。
8.如权利要求6所述的汽车数据流获取系统,其特征在于,所述所述处理器用于执行所述汽车数据流获取程序,以实现以下步骤:
当接收到上位机发送的第一数据包时,对所述第一数据包解析,以获取数据流选择指令对应的待查看数据流,并将待查看数据流以队列的形式存储;
将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据;
将所述回复数据打包成第二数据包,并发送到上位机。
9.如权利要求8所述的汽车数据流获取系统,其特征在于,所述将待查看数据流发送到汽车OBD接口,并接收汽车OBD接口根据待查看数据流返回的回复数据的步骤包括:
将待查看数据流在队列中的排列顺序,逐一发送到汽车OBD接口,并接收汽车OBD接口返回的回复数据,直到队列中的待查看数据发送完成。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有汽车数据流获取程序,所述汽车数据流获取程序被处理器执行时实现如权利要求1-2或者权利要求3-5中任一项所述的汽车数据流获取方法的步骤。
CN201710340692.8A 2017-05-12 2017-05-12 汽车数据流获取方法、系统及计算机可读存储介质 Pending CN106993056A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710340692.8A CN106993056A (zh) 2017-05-12 2017-05-12 汽车数据流获取方法、系统及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710340692.8A CN106993056A (zh) 2017-05-12 2017-05-12 汽车数据流获取方法、系统及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN106993056A true CN106993056A (zh) 2017-07-28

Family

ID=59419487

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710340692.8A Pending CN106993056A (zh) 2017-05-12 2017-05-12 汽车数据流获取方法、系统及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN106993056A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108521798A (zh) * 2018-04-25 2018-09-11 深圳市元征软件开发有限公司 汽车数据流显示方法、系统及汽车诊断设备
CN109597813A (zh) * 2018-11-28 2019-04-09 深圳市轱辘汽车维修技术有限公司 一种车辆数据处理方法及装置
CN112068531A (zh) * 2020-09-08 2020-12-11 上海星融汽车科技有限公司 车辆数据流读取方法、系统及诊断设备
CN112184946A (zh) * 2020-09-29 2021-01-05 深圳市元征科技股份有限公司 一种车辆数据读取方法及相关设备
EP3805886A4 (en) * 2018-12-29 2021-09-29 Autel Intelligent Technology Corp., Ltd. DATA TRANSMISSION PROCESS IN A VEHICLE COMMUNICATION INTERFACE APPARATUS, AND VEHICLE COMMUNICATION INTERFACE APPARATUS
CN115346291A (zh) * 2022-08-16 2022-11-15 深圳市元征软件开发有限公司 车辆数据流的获取方法以及相关设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095818A (zh) * 2012-12-28 2013-05-08 深圳市元征科技股份有限公司 基于无线数传电台的汽车远程诊断管理系统及方法
CN202975791U (zh) * 2012-04-23 2013-06-05 肇庆高新区车秘信息科技有限公司 远程车辆诊断系统
CN103592933A (zh) * 2013-11-07 2014-02-19 深圳市元征科技股份有限公司 基于android系统的汽车诊断系统及诊断方法
US20160330284A1 (en) * 2015-05-07 2016-11-10 Novatel Wireless, Inc. Systems and methods for server based processing of on board diagnostics (obd) data
CN106557085A (zh) * 2016-10-27 2017-04-05 深圳市元征科技股份有限公司 数据处理方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN202975791U (zh) * 2012-04-23 2013-06-05 肇庆高新区车秘信息科技有限公司 远程车辆诊断系统
CN103095818A (zh) * 2012-12-28 2013-05-08 深圳市元征科技股份有限公司 基于无线数传电台的汽车远程诊断管理系统及方法
CN103592933A (zh) * 2013-11-07 2014-02-19 深圳市元征科技股份有限公司 基于android系统的汽车诊断系统及诊断方法
US20160330284A1 (en) * 2015-05-07 2016-11-10 Novatel Wireless, Inc. Systems and methods for server based processing of on board diagnostics (obd) data
CN106557085A (zh) * 2016-10-27 2017-04-05 深圳市元征科技股份有限公司 数据处理方法和装置

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108521798A (zh) * 2018-04-25 2018-09-11 深圳市元征软件开发有限公司 汽车数据流显示方法、系统及汽车诊断设备
WO2019205019A1 (zh) * 2018-04-25 2019-10-31 深圳市元征软件开发有限公司 汽车数据流显示方法、系统及汽车诊断设备
CN108521798B (zh) * 2018-04-25 2021-08-10 深圳市元征软件开发有限公司 汽车数据流显示方法、系统及汽车诊断设备
US11164402B2 (en) 2018-04-25 2021-11-02 Shenzhen Launch Software Co., Ltd. Vehicle data stream displaying method and system, and vehicle diagnostic device
CN109597813A (zh) * 2018-11-28 2019-04-09 深圳市轱辘汽车维修技术有限公司 一种车辆数据处理方法及装置
EP3805886A4 (en) * 2018-12-29 2021-09-29 Autel Intelligent Technology Corp., Ltd. DATA TRANSMISSION PROCESS IN A VEHICLE COMMUNICATION INTERFACE APPARATUS, AND VEHICLE COMMUNICATION INTERFACE APPARATUS
CN113472619A (zh) * 2018-12-29 2021-10-01 深圳市道通科技股份有限公司 车辆通信接口装置中的数据传输方法及车辆通信接口装置
CN112068531A (zh) * 2020-09-08 2020-12-11 上海星融汽车科技有限公司 车辆数据流读取方法、系统及诊断设备
CN112068531B (zh) * 2020-09-08 2021-05-07 上海星融汽车科技有限公司 车辆数据流读取方法、系统及诊断设备
CN112184946A (zh) * 2020-09-29 2021-01-05 深圳市元征科技股份有限公司 一种车辆数据读取方法及相关设备
CN115346291A (zh) * 2022-08-16 2022-11-15 深圳市元征软件开发有限公司 车辆数据流的获取方法以及相关设备
CN115346291B (zh) * 2022-08-16 2024-04-26 深圳市元征软件开发有限公司 车辆数据流的获取方法以及相关设备

Similar Documents

Publication Publication Date Title
CN106993056A (zh) 汽车数据流获取方法、系统及计算机可读存储介质
CN107608337B (zh) 汽车远程诊断方法和装置、移动终端、电子设备及服务器
CN107479525B (zh) 车辆远程诊断系统及其控制方法
CN104808940B (zh) 终端间数据传输方法和装置
US11514731B2 (en) Method and system for remote vehicle diagnostics
CN107065832A (zh) 汽车数据流获取方法、系统及计算机可读存储介质
CN111538312B (zh) 车辆远程诊断方法、系统、设备连接器及车辆连接器
CN112817617A (zh) 软件升级方法、装置和系统
CN106596122A (zh) 一种车辆诊断方法和装置
CN109885037B (zh) 一种车辆诊断的方法及相关设备
CN105653864A (zh) 病历信息分享方法及装置
KR20130112512A (ko) 차량 운행 서비스 제공 방법과 시스템 및 이를 위한 장치
CN112202884A (zh) 一种车辆连接接口装置数据传输方法及相关设备
CN113872967A (zh) 车辆信息的传输方法、装置、电子设备及存储介质
CN102413247A (zh) 终端死机现场的恢复方法及装置
CN111177612B (zh) 一种页面登录鉴权的方法及相关装置
CN111880515A (zh) 一种车辆系统扫描方法以及相关装置
CN105138373A (zh) 汽车诊断设备固件升级方法及装置
CN109286689B (zh) 一种信息发送方法、装置及车载人车交互终端
CN107037804A (zh) 模拟汽车通讯的方法、系统以及计算机可读存储介质
CN112699648B (zh) 数据处理方法及装置
CN115134186A (zh) 数据处理方法以及相关设备
CN112769845B (zh) 漏洞测试方法、装置、电子装置和计算机设备
CN114003018A (zh) 一种车辆诊断方法及相关装置
CN114531340A (zh) 日志获取方法、装置、电子设备、芯片及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20170728

RJ01 Rejection of invention patent application after publication