CN114866622A - 一种can总线状态信号的处理方法及系统 - Google Patents
一种can总线状态信号的处理方法及系统 Download PDFInfo
- Publication number
- CN114866622A CN114866622A CN202210297074.0A CN202210297074A CN114866622A CN 114866622 A CN114866622 A CN 114866622A CN 202210297074 A CN202210297074 A CN 202210297074A CN 114866622 A CN114866622 A CN 114866622A
- Authority
- CN
- China
- Prior art keywords
- data
- repeated
- column
- group
- hexadecimal
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 25
- 238000012545 processing Methods 0.000 title claims description 23
- 238000004458 analytical method Methods 0.000 claims abstract description 43
- 238000002372 labelling Methods 0.000 claims abstract description 9
- 238000003672 processing method Methods 0.000 claims abstract 2
- 238000012163 sequencing technique Methods 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种CAN总线状态信号的处理方法,该方法包括获取CAN数据中的ID数据和与ID数据对应的数据段数据,并将ID数据和数据段数据转化为便于识别的十六进制数据后进行列状排布,同时,对数据段数据的每一列进行标号,然后将ID数据中同一ID进行归类,分别建立重复ID组,通过对每一个所述重复ID组中的每一列所述数据段数据进行识别,获取当前列中的非重复数据的数量,并判断当前列中的非重复数据的数量是否处于解析信号状态量区间内,若是,则输出对应的重复ID组的ID和列号,而这正是状态切换操作的表现,解决了传统的CAN信号需要人为解析,耗时耗力的问题。
Description
技术领域
本发明涉及汽车对标测试技术领域,特别涉及一种CAN总线状态信号的处理方法及系统。
背景技术
随着汽车在国内普及程度越来越高,汽车针对不同使用场景设计的车型、风格越来越多,为了学习先进车型的相关特性及策略,需要对其进行测试评估。
传统的对先进车型的测试评估都是借助CAN(Controller Area Network,控制器局域网络)来完成的,它作为汽车环境中的微控制通讯,在车载各ECU(Electric ControlUnit,电子控制单元)之间交换信息,形成汽车电子控制网络,CAN几乎成为汽车设计领域一种最常采用的技术手段。
目前,普通的CAN信号解析方法为通过CAN总线收发器接收报文数据,并实时观察,找出满足特定规律的信号位置,再通过针对性的工况进行相关验证。此方法要求参与解析的工程人员具有一定经验,同时,状态信号也需要通过工程人员对报文进行逐帧的寻找,耗时耗力。
发明内容
基于此,本发明的目的是提供一种CAN总线状态信号的处理方法及系统,旨在解决现有技术中,传统的CAN信号需要人为解析,耗时耗力的问题。
本发明实施例的第一方面提供了一种CAN总线状态信号的处理方法,所述方法包括:
获取CAN数据,所述CAN数据至少包括ID数据和与所述ID数据对应的数据段数据,其中,所述ID数据和所述数据段数据为可计算数据;
将所述数据段数据转化为十六进制数据,并将所述ID数据和所述数据段数据呈列状排布,同时,对所述数据段数据的每一列进行标号,得到列号;
根据所述ID数据,获取所述ID数据中的重复ID,并将所述重复ID进行归类,分别建立重复ID组;
将所述重复ID组排序,并按顺序依次对每一个所述重复ID组中的每一列所述数据段数据进行识别,获取当前列中的非重复数据的数量;
根据所述非重复数据的数量,判断是否处于解析信号状态量区间内;
若是,则输出对应的重复ID组的ID和列号。
优选地,所述CAN数据还包括时间和信号长度,其中,所述时间和信号长度与所述ID数据对应。
优选地,所述重复ID组中的ID数据根据时间顺序进行排序。
优选地,所述将所述重复ID组排序,并按顺序依次对每一个所述重复ID组中的每一列所述数据段数据进行识别,获取当前列中的非重复数据的数量的步骤包括:
首先识别所述数据段数据中每一列的第一位的所述十六进制数据,并记录,输入至非重复数据组中;
再依次将所述数据段数据中每一列的除第一位的所述十六进制数据与所述非重复数据组中的十六进制数据进行比较,判断是否存在同一十六进制数据;
若否,则依次获取与所述非重复数据组中的十六进制数据不同的数据,并添加至所述非重复数据组中,同时,统计所述非重复数据组中的十六进制数据的数量,并输出。
优选地,所述解析信号状态量区间根据特定工况的多组状态切换操作决定。
优选地,由于所述ID数据为可计算数据,所以所述重复ID组排序按照ID从小到大的顺序排列。
优选地,所述根据所述非重复数据的数量,判断处于解析信号状态量区间内时,则输出对应的重复ID组的ID和列号的步骤之后还包括:
控制特定工况的多组状态切换,判断所述输出对应的重复ID组的ID和列号是否与所述特定工况的多组状态切换操作一致;
若是,则发出提示信息,所述提示信息用于提示CAN总线状态信号的处理已完成。
优选地,所述根据所述非重复数据的数量,判断是否处于解析信号状态量区间内的步骤之后还包括:
定义解析信号状态量阈值,并获取所述解析信号状态量阈值;
当判断所述非重复数据的数量未处于解析信号状态量区间内时,判断所述非重复数据的数量中的最大值是否小于等于所述解析信号状态量阈值;
若是,则修改所述解析信号状态量区间,将所述解析信号状态量区间的右端点设置为所述非重复数据的数量中的最大值。
本发明实施例的第二方面提供了一种CAN总线状态信号的处理系统,所述系统包括:
获取模块,用于获取CAN数据,所述CAN数据至少包括ID数据和与所述ID数据对应的数据段数据,其中,所述ID数据和所述数据段数据为可计算数据;
转化模块,用于将所述数据段数据转化为十六进制数据,并将所述ID数据和所述数据段数据呈列状排布,同时,对所述数据段数据的每一列进行标号,得到列号;
分组模块,用于根据所述ID数据,获取所述ID数据中的重复ID,并将所述重复ID进行归类,分别建立重复ID组;
识别模块,用于将所述重复ID组排序,并按顺序依次对每一个所述重复ID组中的每一列所述数据段数据进行识别,获取当前列中的非重复数据的数量;
第一判断模块,用于根据所述非重复数据的数量,判断是否处于解析信号状态量区间内;
输出模块,用于当根据所述非重复数据的数量,判断处于解析信号状态量区间内时,则输出对应的重复ID组的ID和列号。
优选地,所述识别模块包括:
输入单元,用于首先识别所述数据段数据中每一列的第一位的所述十六进制数据,并记录,输入至非重复数据组中;
十六进制数据判断单元,用于再依次将所述数据段数据中每一列的除第一位的所述十六进制数据与所述非重复数据组中的十六进制数据进行比较,判断是否存在同一十六进制数据;
输出单元,用于当判断未存在同一十六进制数据时,则依次获取与所述非重复数据组中的十六进制数据不同的数据,并添加至所述非重复数据组中,同时,统计所述非重复数据组中的十六进制数据的数量,并输出。
与现有技术相比:通过获取CAN数据中的ID数据和与ID数据对应的数据段数据,并将ID数据和数据段数据转化为便于识别的十六进制数据后进行列状排布,同时,对数据段数据的每一列进行标号,然后将ID数据中同一ID进行归类,分别建立重复ID组,通过对每一个所述重复ID组中的每一列所述数据段数据进行识别,获取当前列中的非重复数据的数量,并判断当前列中的非重复数据的数量是否处于解析信号状态量区间内,若是,则输出对应的重复ID组的ID和列号,而这正是状态切换操作的表现,解决了传统的CAN信号需要人为解析,耗时耗力的问题。
附图说明
图1是本发明第一实施例提供的一种CAN总线状态信号的处理方法的流程图;
图2是本发明第二实施例提供的一种CAN总线状态信号的处理方法的流程图;
图3是本发明第三实施例提供的一种CAN总线状态信号的处理系统的结构框图。
以下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的若干实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
需要说明的是,当元件被称为“固设于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
实施例一
请参阅图1,图1示出了本发明第一实施例提供的一种CAN总线状态信号的处理方法的流程图,所述方法具体包括步骤S01至步骤S06。
步骤S01,获取CAN数据,所述CAN数据至少包括ID数据和与所述ID数据对应的数据段数据,其中,所述ID数据和所述数据段数据为可计算数据。
其中,CAN数据通过CAN采集设备实时记录,并至少将CAN数据中的ID数据和与ID数据对应的数据段数据转化为可计算的数据,可以理解的,当需要解析某个特定信号时,那么,需要进行特定工况的多组态状态的切换操作,找到需要解析的信号与特定工况下切换操作之间的关系。
步骤S02,将所述数据段数据转化为十六进制数据,并将所述ID数据和所述数据段数据呈列状排布,同时,对所述数据段数据的每一列进行标号,得到列号。
在本实施例当中,需要将获取到的CAN数据导出至Matlab Workspace中,并将可计算的数据段数据转化为十六进制数据,因为数据段数据根据录入软件的不同,保存的进制也不同,故在处理分析时,需要将数据段数据转化成较好识别的十六进制数据。
具体的,将ID数据和该十六进数据段数据呈列状排布,为了便于区别,对数据的每一列进行了标号,即为列号,可以理解的,当在特定工况下,进行多组态状态的切换操作时,某一列的数据将会随之变化,而该列的列号将被记录,并输出,供相关人员进行分析。
步骤S03,根据所述ID数据,获取所述ID数据中的重复ID,并将所述重复ID进行归类,分别建立重复ID组。
需要说明的是,获取到所有的ID数据后,将ID数据中的重复ID提取出,并按照重复ID进行归类,分别建立重复ID组,例如,所有的ID数据,即ID号为1、1、1、1、2、2、3、4、4、4、5,那么,将分别建立5个重复ID组,即为1重复ID组、2重复ID组、3重复ID组、4重复ID组以及5重复ID组,可以理解的,1重复ID组中包含4个ID为1的数据,2重复ID组中包含2个ID为2的数据,3重复ID组中包含1个ID为3的数据,4重复ID组中包含3个ID为4的数据,5重复ID组中包含1个ID为5的数据,其中,重复ID组中还包括各个ID号对应的十六进制数据段数据。
步骤S04,将所述重复ID组排序,并按顺序依次对每一个所述重复ID组中的每一列所述数据段数据进行识别,获取当前列中的非重复数据的数量。
在本实施例当中,将重复ID组按从小到大的顺序进行排序,并按照该顺序依次对重复ID组中的十六进制数据段数据的每一列进行遍历,识别出每一列中非重复数据的数量,例如,十六进制数据段数据中一列为0、0、0、0、0、0、0、0、0、0,十个十六进制数据,其中,非重复数据的数量为0,因为该列中皆为重复的数据,即0数据;十六进制数据段数据中一列为0、0、0、0、1、1、1、1、1、0,十个十六进制数据,其中,非重复数据的数量为2,因为其中的0和1为不同的数据;十六进制数据段数据中一列为0、0、0、4、1、1、1、1、1、0,十个十六进制数据,其中,非重复数据的数量为3,因为其中的0、1以及4为三个不同的非重复数据。
步骤S05,根据所述非重复数据的数量,判断是否处于解析信号状态量区间内,若是,则执行步骤S06;
其中,解析信号状态量区间为预设值,当非重复数据的数量处于解析信号状态量区间内时,则表示此列十六进制数据段数据极有可能为特定工况的多组状态切换操作对应的CAN信号数据。
步骤S06,则输出对应的重复ID组的ID和列号。
综上,本发明通过获取CAN数据中的ID数据和与ID数据对应的数据段数据,并将ID数据和数据段数据转化为便于识别的十六进制数据后进行列状排布,同时,对所述数据段数据的每一列进行标号,然后将ID数据中同一ID进行归类,分别建立重复ID组,通过对每一个重复ID组中的每一列数据段数据进行识别,获取当前列中的非重复数据的数量,并判断当前列中的非重复数据的数量是否处于解析信号状态量区间内,若是,则输出对应的重复ID组的ID和列号,而这正是状态切换操作的表现,解决了传统的CAN信号需要人为解析,耗时耗力的问题。
实施例二
请参阅图2,图2示出了本发明第二实施例提供的一种CAN总线状态信号的处理方法的流程图,所述方法具体包括步骤S11至步骤S20。
步骤S11,获取CAN数据,所述CAN数据至少包括ID数据和与所述ID数据对应的数据段数据,其中,所述ID数据和所述数据段数据为可计算数据。
具体的,CAN数据还包括时间和信号长度,其中,时间和信号长度与ID数据对应,即当进行特定工况的切换操作时,该操作的时刻也将被记录,每个时刻对应一个ID、一个数据段数据以及一个信号长度。
步骤S12,将所述数据段数据转化为十六进制数据,并将所述ID数据和所述数据段数据呈列状排布,同时,对所述数据段数据的每一列进行标号,得到列号。
步骤S13,根据所述ID数据,获取所述ID数据中的重复ID,并将所述重复ID进行归类,分别建立重复ID组。
在本实施例当中,重复ID组中包含有若干重复的ID号,以及各个ID号对应的时间、数据段数据以及信号长度,具体的,根据时间获取的先后顺序,将重复ID组中的ID数据以及其对应的相关数据进行排序。
步骤S14,将所述重复ID组排序,并按顺序依次对每一个所述重复ID组中的每一列所述数据段数据进行识别,获取当前列中的非重复数据的数量。
其中,对每一列数据段数据进行识别,并获取当前列中的非重复数据的数量的步骤具体为,首先识别所述数据段数据中每一列的第一位的所述十六进制数据,并记录,输入至非重复数据组中,再依次将所述数据段数据中每一列的除第一位的所述十六进制数据与所述非重复数据组中的十六进制数据进行比较,判断是否存在同一十六进制数据,若否,则依次获取与所述非重复数据组中的十六进制数据不同的数据,并添加至所述非重复数据组中,同时,统计所述非重复数据组中的十六进制数据的数量,并输出。
可以理解的,例如,当数据段数据中一列的十六进制数据为0、0、0、0、0,五个十六进制数据时,首先识别数据段数据中该列的第一位的十六进制数据为0,则将0这个十六进制数据放入非重复数据组中,再获取该列第二位的十六进制数据,为0,将该列第二位数据与非重复数据组中的十六进制数据进行比对,可以判断出该列第二位数据与第一位数据属于同一十六进制数据,即都为0,则输出当前列的非重复数据的数量还是为1,同理,将该列后续的几位十六进制数据分别于第一位十六进制数据进行比对,由于数据皆为0,则该列的非重复数据的数量为1;当数据段数据中一列的十六进制数据为0、1、1、1、0,五个十六进制数据时,首先识别数据段数据中该列的第一位的十六进制数据为0,则将0这个十六进制数据放入非重复数据组中,再获取该列第二位的十六进制数据,为1,将该列第二位数据与非重复数据组中的十六进制数据进行比对,可以判断出该列第二位数据与第一位数据不属于同一十六进制数据,一个是0,一个是1,则当前非重复数据组中的十六进制数据有2个,分别为0和1,继续获取下一位与非重复数据组中的十六进制数据判断时,由于1已经存在于非重复数据组中,故非重复数据的数量为2,以此类推,最终非重复数据组中还是只有0和1两个十六进制数据,那么,该列的非重复数据的数量为2。
步骤S15,根据所述非重复数据的数量,判断是否处于解析信号状态量区间内,若是,则执行步骤S16,若否,则执行步骤S19。
在本实施例当中,解析信号状态量区间根据特定工况的多组状态切换操作决定,当解析踏板的制动情况时,一般为踩刹车和松刹车两个状态的切换,可以理解为0和1的切换,0代表松刹车,1代表踩刹车,则区间暂选择为大于等于2,小于等于3,解析信号状态量区间的右端点设置为3的原因在于防止冗余的产生。
步骤S16,若是,则输出对应的重复ID组的ID和列号。
步骤S17,控制特定工况的多组状态切换,判断所述输出对应的重复ID组的ID和列号是否与所述特定工况的多组状态切换操作一致,若是,则执行步骤S18。
为了验证CAN数据中的ID和数据段数据的位置是否被正确找到,需要再次控制特定工况的多组状态切换,通过切换,观察CAN数据是否在对应的ID和数据段数据的列号进行变化。
步骤S18,则发出提示信息,所述提示信息用于提示CAN总线状态信号的处理已完成。
另外,将确定符合的ID与位置,将对应的ID、起始位置、状态对应数值的备注添加进入车辆DBC(Data Base Can,控制器局域网络数据库文件)。
步骤S19,判断所述非重复数据的数量中的最大值是否小于等于所述解析信号状态量阈值,若是,则执行步骤S20。
需要说明的是,在判断之前需要定义解析信号状态量阈值,并获取所述解析信号状态量阈值,而该解析信号状态量阈值一般为特定工况在实际切换过程中可能出现的最大值,例如,解析信号状态量区间为2至3,解析信号状态量阈值为4,而识别出数据段数据的某列非重复数据的数量为4,与解析信号状态量阈值相等,说明解析信号状态量区间为2至3这个范围设置的有误,可以理解的,若解析信号状态量阈值过大,可能会识别出很多与切换操作不相关的ID和列号,从而对测试结果产生误导。
步骤S20,则修改所述解析信号状态量区间,将所述解析信号状态量区间的右端点设置为所述非重复数据的数量中的最大值。
具体的,当解析信号状态量区间范围有误时,而数据段数据的某列非重复数据的数量小于等于解析信号状态量阈值,则将解析信号状态量区间的右端点设置为非重复数据的数量值,即解析信号状态量区间为2至3改为2至4,实现了纠错的功能。
实施例三
请参阅图3,图3是本发明第三实施例提供的一种CAN总线状态信号的处理系统的结构框图,所述系统300包括:
获取模块31,用于获取CAN数据,所述CAN数据至少包括ID数据和与所述ID数据对应的数据段数据,其中,所述ID数据和所述数据段数据为可计算数据;
转化模块32,用于将所述数据段数据转化为十六进制数据,并将所述ID数据和所述数据段数据呈列状排布,同时,对所述数据段数据的每一列进行标号,得到列号;
分组模块33,用于根据所述ID数据,获取所述ID数据中的重复ID,并将所述重复ID进行归类,分别建立重复ID组;
识别模块34,用于将所述重复ID组排序,并按顺序依次对每一个所述重复ID组中的每一列所述数据段数据进行识别,获取当前列中的非重复数据的数量;
第一判断模块35,用于根据所述非重复数据的数量,判断是否处于解析信号状态量区间内;
输出模块36,用于当根据所述非重复数据的数量,判断处于解析信号状态量区间内时,则输出对应的重复ID组的ID和列号。
进一步的,所述识别模块34还包括:
输入单元,用于首先识别所述数据段数据中每一列的第一位的所述十六进制数据,并记录,输入至非重复数据组中;
十六进制数据判断单元,用于再依次将所述数据段数据中每一列的除第一位的所述十六进制数据与所述非重复数据组中的十六进制数据进行比较,判断是否存在同一十六进制数据;
输出单元,用于当判断未存在同一十六进制数据时,则依次获取与所述非重复数据组中的十六进制数据不同的数据,并添加至所述非重复数据组中,同时,统计所述非重复数据组中的十六进制数据的数量,并输出。
进一步的,所述系统300还包括:
切换操作判断模块,用于控制特定工况的多组状态切换,判断所述输出对应的重复ID组的ID和列号是否与所述特定工况的多组状态切换操作一致;
提示模块,用于当判断所述输出对应的重复ID组的ID和列号与所述特定工况的多组状态切换操作一致时,则发出提示信息,所述提示信息用于提示CAN总线状态信号的处理已完成。
进一步的,所述系统300还包括:
定义模块,用于定义解析信号状态量阈值,并获取所述解析信号状态量阈值;
非重复数据判断模块,用于当判断所述非重复数据的数量未处于解析信号状态量区间内时,判断所述非重复数据的数量中的最大值是否小于等于所述解析信号状态量阈值;
修改模块,用于当判断所述非重复数据的数量中的最大值小于等于所述解析信号状态量阈值时,则修改所述解析信号状态量区间,将所述解析信号状态量区间的右端点设置为所述非重复数据的数量中的最大值。
综上,本发明上述实施例当中的CAN总线状态信号的处理系统,通过获取CAN数据中的ID数据和与ID数据对应的数据段数据,并将ID数据和数据段数据转化为便于识别的十六进制数据后进行列状排布,同时,对数据段数据的每一列进行标号,然后将ID数据中同一ID进行归类,分别建立重复ID组,通过对每一个所述重复ID组中的每一列所述数据段数据进行识别,获取当前列中的非重复数据的数量,并判断当前列中的非重复数据的数量是否处于解析信号状态量区间内,若是,则输出对应的重复ID组的ID和列号,而这正是状态切换操作的表现,解决了传统的CAN信号需要人为解析,耗时耗力的问题。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种CAN总线状态信号的处理方法,其特征在于,所述方法包括:
获取CAN数据,所述CAN数据至少包括ID数据和与所述ID数据对应的数据段数据,其中,所述ID数据和所述数据段数据为可计算数据;
将所述数据段数据转化为十六进制数据,并将所述ID数据和所述数据段数据呈列状排布,同时,对所述数据段数据的每一列进行标号,得到列号;
根据所述ID数据,获取所述ID数据中的重复ID,并将所述重复ID进行归类,分别建立重复ID组;
将所述重复ID组排序,并按顺序依次对每一个所述重复ID组中的每一列所述数据段数据进行识别,获取当前列中的非重复数据的数量;
根据所述非重复数据的数量,判断是否处于解析信号状态量区间内;
若是,则输出对应的重复ID组的ID和列号。
2.根据权利要求1所述的CAN总线状态信号的处理方法,其特征在于,所述CAN数据还包括时间和信号长度,其中,所述时间和信号长度与所述ID数据对应。
3.根据权利要求2所述的CAN总线状态信号的处理方法,其特征在于,所述重复ID组中的ID数据根据时间顺序进行排序。
4.根据权利要求1所述的CAN总线状态信号的处理方法,其特征在于,所述将所述重复ID组排序,并按顺序依次对每一个所述重复ID组中的每一列所述数据段数据进行识别,获取当前列中的非重复数据的数量的步骤包括:
首先识别所述数据段数据中每一列的第一位的所述十六进制数据,并记录,输入至非重复数据组中;
再依次将所述数据段数据中每一列的除第一位的所述十六进制数据与所述非重复数据组中的十六进制数据进行比较,判断是否存在同一十六进制数据;
若否,则依次获取与所述非重复数据组中的十六进制数据不同的数据,并添加至所述非重复数据组中,同时,统计所述非重复数据组中的十六进制数据的数量,并输出。
5.根据权利要求1所述的CAN总线状态信号的处理方法,其特征在于,所述解析信号状态量区间根据特定工况的多组状态切换操作决定。
6.根据权利要求1所述的CAN总线状态信号的处理方法,其特征在于,由于所述ID数据为可计算数据,所以所述重复ID组排序按照ID从小到大的顺序排列。
7.根据权利要求5所述的CAN总线状态信号的处理方法,其特征在于,所述根据所述非重复数据的数量,判断处于解析信号状态量区间内时,则输出对应的重复ID组的ID和列号的步骤之后还包括:
控制特定工况的多组状态切换,判断所述输出对应的重复ID组的ID和列号是否与所述特定工况的多组状态切换操作一致;
若是,则发出提示信息,所述提示信息用于提示CAN总线状态信号的处理已完成。
8.根据权利要求1所述的CAN总线状态信号的处理方法,其特征在于,所述根据所述非重复数据的数量,判断是否处于解析信号状态量区间内的步骤之后还包括:
定义解析信号状态量阈值,并获取所述解析信号状态量阈值;
当判断所述非重复数据的数量未处于解析信号状态量区间内时,判断所述非重复数据的数量中的最大值是否小于等于所述解析信号状态量阈值;
若是,则修改所述解析信号状态量区间,将所述解析信号状态量区间的右端点设置为所述非重复数据的数量中的最大值。
9.一种CAN总线状态信号的处理系统,其特征在于,所述系统包括:
获取模块,用于获取CAN数据,所述CAN数据至少包括ID数据和与所述ID数据对应的数据段数据,其中,所述ID数据和所述数据段数据为可计算数据;
转化模块,用于将所述数据段数据转化为十六进制数据,并将所述ID数据和所述数据段数据呈列状排布,同时,对所述数据段数据的每一列进行标号,得到列号;
分组模块,用于根据所述ID数据,获取所述ID数据中的重复ID,并将所述重复ID进行归类,分别建立重复ID组;
识别模块,用于将所述重复ID组排序,并按顺序依次对每一个所述重复ID组中的每一列所述数据段数据进行识别,获取当前列中的非重复数据的数量;
第一判断模块,用于根据所述非重复数据的数量,判断是否处于解析信号状态量区间内;
输出模块,用于当根据所述非重复数据的数量,判断处于解析信号状态量区间内时,则输出对应的重复ID组的ID和列号。
10.根据权利要求9所述的CAN总线状态信号的处理系统,其特征在于,所述识别模块包括:
输入单元,用于首先识别所述数据段数据中每一列的第一位的所述十六进制数据,并记录,输入至非重复数据组中;
十六进制数据判断单元,用于再依次将所述数据段数据中每一列的除第一位的所述十六进制数据与所述非重复数据组中的十六进制数据进行比较,判断是否存在同一十六进制数据;
输出单元,用于当判断未存在同一十六进制数据时,则依次获取与所述非重复数据组中的十六进制数据不同的数据,并添加至所述非重复数据组中,同时,统计所述非重复数据组中的十六进制数据的数量,并输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210297074.0A CN114866622B (zh) | 2022-03-24 | 2022-03-24 | 一种can总线状态信号的处理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210297074.0A CN114866622B (zh) | 2022-03-24 | 2022-03-24 | 一种can总线状态信号的处理方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114866622A true CN114866622A (zh) | 2022-08-05 |
CN114866622B CN114866622B (zh) | 2024-07-12 |
Family
ID=82629605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210297074.0A Active CN114866622B (zh) | 2022-03-24 | 2022-03-24 | 一种can总线状态信号的处理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114866622B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104156565A (zh) * | 2014-07-21 | 2014-11-19 | 北京航天发射技术研究所 | 基于离线can总线数据的系统状态分析方法及分析装置 |
JP2019203798A (ja) * | 2018-05-23 | 2019-11-28 | 株式会社リコー | 状態識別装置、状態識別方法および状態識別プログラム |
WO2019235208A1 (ja) * | 2018-06-06 | 2019-12-12 | 株式会社Jvcケンウッド | 分析用閾値生成装置及び分析用閾値生成方法 |
KR20200021297A (ko) * | 2018-08-20 | 2020-02-28 | (주)에이치씨인포 | 비정상 can 데이터 탐지 시스템 및 방법 |
CN111049852A (zh) * | 2019-12-24 | 2020-04-21 | 国家计算机网络与信息安全管理中心 | Can总线协议解析方法、装置、电子设备及存储介质 |
CN111835611A (zh) * | 2020-07-08 | 2020-10-27 | 北京软安科技有限公司 | 一种车辆can总线数据解析方法及装置 |
CN113259216A (zh) * | 2021-06-29 | 2021-08-13 | 微企(天津)信息技术有限公司 | 一种can总线信号解析方法及系统 |
US20210266193A1 (en) * | 2020-02-25 | 2021-08-26 | Calamp Corp. | Systems and Methods for Detection of Vehicle Bus Protocol Using Signal Analysis |
US11190370B1 (en) * | 2020-08-21 | 2021-11-30 | Geotab Inc. | Identifying manufacturer-specific controller-area network data |
-
2022
- 2022-03-24 CN CN202210297074.0A patent/CN114866622B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104156565A (zh) * | 2014-07-21 | 2014-11-19 | 北京航天发射技术研究所 | 基于离线can总线数据的系统状态分析方法及分析装置 |
JP2019203798A (ja) * | 2018-05-23 | 2019-11-28 | 株式会社リコー | 状態識別装置、状態識別方法および状態識別プログラム |
WO2019235208A1 (ja) * | 2018-06-06 | 2019-12-12 | 株式会社Jvcケンウッド | 分析用閾値生成装置及び分析用閾値生成方法 |
KR20200021297A (ko) * | 2018-08-20 | 2020-02-28 | (주)에이치씨인포 | 비정상 can 데이터 탐지 시스템 및 방법 |
CN111049852A (zh) * | 2019-12-24 | 2020-04-21 | 国家计算机网络与信息安全管理中心 | Can总线协议解析方法、装置、电子设备及存储介质 |
US20210266193A1 (en) * | 2020-02-25 | 2021-08-26 | Calamp Corp. | Systems and Methods for Detection of Vehicle Bus Protocol Using Signal Analysis |
CN111835611A (zh) * | 2020-07-08 | 2020-10-27 | 北京软安科技有限公司 | 一种车辆can总线数据解析方法及装置 |
US11190370B1 (en) * | 2020-08-21 | 2021-11-30 | Geotab Inc. | Identifying manufacturer-specific controller-area network data |
CN113259216A (zh) * | 2021-06-29 | 2021-08-13 | 微企(天津)信息技术有限公司 | 一种can总线信号解析方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114866622B (zh) | 2024-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108563214B (zh) | 车辆诊断方法、装置及设备 | |
CN102096410B (zh) | 一种高速列车运行控制系统功能的动态测试方法 | |
CN106646315B (zh) | 一种数字测量仪器的自动测试系统及其测试方法 | |
CN112835755A (zh) | 一种测试数据采集方法、装置、设备及计算机存储介质 | |
CN108733674A (zh) | 一种a2l文件合并方法及装置 | |
CN111104309A (zh) | 一种综合测试流程快速实现方法 | |
CN114866622A (zh) | 一种can总线状态信号的处理方法及系统 | |
CN101673233B (zh) | 测试项目的排程方法及其排程系统 | |
KR101552714B1 (ko) | 차량 전자 부품 통신에서 물리 계층 정보를 자동으로 분석하는 장치 및 방법 | |
CN111813080A (zh) | 车辆obd接口的can总线引脚识别方法及装置 | |
CN115842861A (zh) | 边缘连接设备适配方法、装置及计算机可读存储介质 | |
CN115310531A (zh) | 应用于一体式间隔设备综合测试模块的测试结果粗检系统和方法 | |
CN113505283A (zh) | 一种测试数据的筛选方法及系统 | |
CN111524555A (zh) | 一种基于人肠道菌群的自动化分型方法 | |
CN113064396A (zh) | 一种智能扫描识别汽车电控系统的方法 | |
CN114942623B (zh) | 控制器的测试方法、装置、车辆及计算机可读存储介质 | |
CN110750088A (zh) | 数据检测方法及相关产品 | |
CN112559000A (zh) | 车辆的整车软件更新方法及装置 | |
CN111983989A (zh) | 一种下线检测方法及控制设备 | |
CN112319495B (zh) | 汽车系统型号的确定方法、装置、设备及存储介质 | |
CN116088486B (zh) | 车辆电控系统的诊断方法、装置及车辆诊断设备 | |
CN114325156B (zh) | 一种对车载仪表外发的多路复用信号的测试系统及方法 | |
CN117411895B (zh) | 工业生产检测数据处理方法、装置、设备及存储介质 | |
CN111426937B (zh) | 一种基于无故障信息测试分数的故障诊断方法 | |
CN115964301B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |