CN107992026B - 一种基于labveiw的解析dbc分析报文的方法 - Google Patents
一种基于labveiw的解析dbc分析报文的方法 Download PDFInfo
- Publication number
- CN107992026B CN107992026B CN201711324218.2A CN201711324218A CN107992026B CN 107992026 B CN107992026 B CN 107992026B CN 201711324218 A CN201711324218 A CN 201711324218A CN 107992026 B CN107992026 B CN 107992026B
- Authority
- CN
- China
- Prior art keywords
- data
- format
- line
- dbc
- separated
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0208—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
- G05B23/0213—Modular or universal configuration of the monitoring system, e.g. monitoring system having modules that may be combined to build monitoring program; monitoring system that can be applied to legacy systems; adaptable monitoring system; using different communication protocols
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24065—Real time diagnostics
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于LABVEIW的解析DBC分析报文的方法,通过LABVEIW对DBC文件的处理解析,分解出ID即CAN报文帧地址、变量名、起始位、长度、数据格式、数据类型、精度、偏移量;并将以上分离的数据一一对应;对读入的变量的实时进行解析。本发明的有益效果是:能够有效的利用DBC文件;能够广泛的应用于售后和实验人员,降低配备成本;能够高效的解读CAN线上的信息。
Description
技术领域
本发明涉及一种基于LABVEIW的解析DBC分析报文的方法,属于自动控制技术领域。
背景技术
随着CAN总线技术在汽车上的广泛应用。实时监测ECU工况数据是汽车研发及试验过程中一项重要的工作。DBC文件是由Vector公司发布的,它被用来描述单一CAN网络中各逻辑节点信息,依据该文件能够开发出用来监视或分析CAN网络中所有逻辑节点的运行状态,也能够是有针对性的ECU通信应用软件。
公开号为CN107453845A的专利申请公开了一种应答确认方法及设备,本申请可以解决现有以报文方式的发送应答消息导致浪费资源的问题,现有技术中因为应答消息也以报文的方式发送,需要占用内存和带宽,本申请以共享内存的方式写入或读取应答确认,通信双方即发送端和接收端都能看到共享内存,可以做到完全没有以报文方式收发的应答消息,通过本申请的高效的应答确认机制,使得通信过程中的无论从带宽,响应时间,资源消耗都可以得到改善,即在减小带宽占用的情况下,无需应答数据包的创建拷贝和删除。
公开号为CN107454652A的专利申请公开了一种基于无线自组织网络的移动通信系统,其基本思路是移动通信系统中的每个通信装置周期性地发送包括链路状态报文的路由数据帧,本通信装置将计算后的链路状态值更新到链路状态报文中并将符合条件的链路状态报文广播出去,使相邻一跳通信装置接收到本通信装置发送的链路状态报文后,可以用本通信装置发送的链路状态报文的链路状态值表示本通信装置与目的通信装置之间的链路状态,每个通信装置根据接收到的路由数据帧维护路由信息,确定每个通信装置的最优下一跳通信装置,以确保每个通信装置与目的通信装置之间的最优通信路径,形成无固定中心的、健壮性强、网络通信范围不受网络中心节点的限制、网络通信能力强的无线自组织网络系统。
目前解析CAN数据,结合DBC与CANOE一起分析,分析效果明显且方便,但是因CANOE的价格高昂,成本较高,不可能研发与售后及实验人员每人配备一只CANOE,且目前中国用的周立功的CANTEST的软件,在解析DBC时容易卡死。
综上所述,需要一个成本合适,稳定性高的方法。开发环境基于LABVIEW,LABVEIW是一种程序开发环境,由美国国家仪器(NI)公司研制开发,类似于C和BASIC开发环境。硬件工具使用,USBCAN盒,USBCAN盒是一种用于PC的USB形式的高性价比的CAN接口卡。
发明内容
本发明的目的在于提出一种基于LABVEIW的解析DBC分析报文的方法。本发明所述方法通过LABVEIW对DBC文件的处理解析,分解出ID即CAN报文帧地址、变量名、起始位、长度、数据格式、数据类型、精度、偏移量;并将以上分离的数据一一对应;对读入的变量的实时进行解析。
本发明所述方法包括以下步骤:
步骤1:通过LABVIEW对DBC文件进行处理解析:
11.导入DBC文件;
12.先分离出所有的ID:逐行读取DBC文件文本行数据信息,每行与BO_比较,比较一致后,将其后紧邻的数据作为ID处理,并记录此行的序列号及ID序号;
13.分别对每个ID下的变量名进行解析,每行与SG_比较,比较一致后,分别对关键符号’:’,’|’,’@’,’(’,’,’,’)’,’[’,’]’进行判断,分别分离出变量名、起始位、数据长度、数据格式、数据类型、精度、偏移量。
步骤2:将步骤1分离的数据一一对应:
21.将变量名与后面的数据信息合并创建数组;
22.根据记录的ID的序列行号及ID序号分离出每个ID所包含的变量数及其实行号;
23.将组合创建的数组根据分离出的每个变量的行号进行索引替换,将数组中的字符型数据替换为数值型数据,起始位、长度、数据格式、数据类型替换为无符号单字节整型数据,精度、偏移量、范围替换为双进度数据格式,并分别组成两个数组。
步骤3:通过labview上位机及USBCAN盒建立收发CAN报文的连接:
31.利用周立功公开的DLL文件,导入相关的接口函数建立联系,相关的接口函数包括:VCI_Receive、VCI_OpenDevice、Transmit;
32.对设备通道进行初始配置:建立数据流:打开USBCAN设备即USBCAN盒,对CAN通道、波特率进行初始化设置,启动设备,关闭设备。具体上位机程序参考周立功给出的示例。周立功公开的DLL文件即ControlCAN.DLL和周立功给出的示例能够在周立功官网上USB接口CAN卡模块的资料下载处下载;资料下载具体网址:http://www.zlg.cn/can/down/down/id/22.html;
步骤4:分数据格式和类型运算:
41.先识别出数据格式和数据类型的匹配种类。数据格式byte_order等于0为motorloar格式,数据格式等于1为Intel格式;数据类型value_type等于0为有符号格式,数据类型等于1为无符号格式;
42.对数据格式不同的分开计算:比如,motorloar格式和Intel格式分开,先判断是否跨字节,当不跨,则统一处理,当跨字节,motorloar格式则按高字节在低位,低字节按高位处理;Intel格式则按高字节在高位,低字节按低位处理。
43.对数据类型不同的分开计算:比如,有符号和无符号分开,当无符号直接计算,当有符号,则判断最高位是0还是1,当是0则其余位则为实际数,当是1,则其余位的相反数为实际数值。
步骤5:经过偏移量和精度的计算:
51.规定y=kx+b,x为CAN线中传输的数值,即步骤3中最后得到的数值,k为分辨率,b为偏移量,y为实际值,只需要按照步骤2中所分离的两个数组进行对应运算,此时运算即能够得到最终值。
52.当厂家有另外规定,直接加选择变量,按照厂家要求的顺序进行。
步骤6:对得到的最终值处理:
将得到的最终值按计算的变量的个数重新组成一个数组查看,也能够通过For循环直接生成一个个变量查看。
本发明的有益效果是:
1.能够有效的利用DBC文件。
2.能够广泛的应用于售后和实验人员,降低配备成本。
3.能够高效的解读CAN线上的信息。
附图说明
图1是本发明所述方法的步骤流程示意图;
图2是本发明所述方法步骤1输出的字符串数组的部分截图图像;
图3是本发明所述方法的步骤2中所分离的两个数组。
具体实施方式
下面结合附图对本发明的实施方式进行详细描述。如图1所示,本发明所述方法包括以下步骤:
步骤1:通过LABVIEW对DBC文件进行处理解析:
11.导入DBC文件;
12.先分离出所有的ID:逐行读取DBC文件文本行数据信息,每行与BO_比较,比较一致后,将其后紧邻的数据作为ID处理,并记录此行的序列号及ID序号;
13.分别对每个ID下的变量名进行解析,每行与SG_比较,比较一致后,分别对关键符号’:’,’|’,’@’,’(’,’,’,’)’,’[’,’]’进行判断,分别分离出变量名、起始位、数据长度、数据格式、数据类型、精度、偏移量。
步骤2:将步骤1分离的数据一一对应:
21.将变量名与后面的数据信息合并创建数组;
22.根据记录的ID的序列行号及ID序号分离出每个ID所包含的变量数及其实行号;
23.将组合创建的数组根据分离出的每个变量的行号进行索引替换,将数组中的字符型数据替换为数值型数据,起始位、长度、数据格式、数据类型替换为无符号单字节整型数据,精度、偏移量、范围替换为双进度数据格式,并分别组成两个数组。
步骤3:通过labview上位机及USBCAN盒建立收发CAN报文的连接:
31.利用周立功公开的DLL文件,导入相关的接口函数建立联系,相关的接口函数包括:VCI_Receive、VCI_OpenDevice、Transmit;
32.对设备通道进行初始配置:建立数据流:打开USBCAN设备即USBCAN盒,对CAN通道、波特率进行初始化设置,启动设备,关闭设备。具体上位机程序参考周立功给出的示例。周立功公开的DLL文件即ControlCAN.DLL和周立功给出的示例能够在周立功官网上USB接口CAN卡模块的资料下载处下载;资料下载具体网址:http://www.zlg.cn/can/down/down/id/22.html;
步骤4:分数据格式和类型运算:
41.先识别出数据格式和数据类型的匹配种类。数据格式byte_order等于0为motorloar格式,数据格式等于1为Intel格式;数据类型value_type等于0为有符号格式,数据类型等于1为无符号格式;
42.对数据格式不同的分开计算:比如,motorloar格式和Intel格式分开,先判断是否跨字节,当不跨,则统一处理,当跨字节,motorloar格式则按高字节在低位,低字节按高位处理;Intel格式则按高字节在高位,低字节按低位处理。
43.对数据类型不同的分开计算:比如,有符号和无符号分开,当无符号则直接计算,当有符号,则判断最高位是0还是1,当是0则其余位则为实际数,当是1,则其余位的相反数为实际数值。
步骤5:经过偏移量和精度的计算:
51.规定y=kx+b,x为CAN线中传输的数值,即步骤3中最后得到的数值,k为分辨率,b为偏移量,y为实际值,只需要按照步骤2中所分离的两个数组进行对应运算,此时运算即能够得到最终值。
52.当厂家有另外规定,直接加选择变量,按照厂家要求的顺序进行。
步骤6:对得到的最终值处理:
将得到的最终值按计算的变量的个数重新组成一个数组查看,也能够通过For循环直接生成一个个变量查看。
图2为发明内容中步骤2的输出结果,图2再经过字符串到数值的转换分离得到图3的结果。图2中,第一列为变量名,第二列为对应变量分离出的起始比特位,第三列位对应变量分离出的长度,第四列对应数据格式,1为Intel格式,第五列对应数据类型,1为无符号格式。
图3是本发明所述方法的步骤2中所分离的两个数组,图3中,第一个数组-数据长度类型,第一列为对应变量分离出的起始比特位,第二列位对应变量分离出的长度,第三列对应数据格式,1为Intel格式,第四列对应数据类型,“+”为无符号格式,“-”为有符号格式;第五列为对应变量分离出的分辨率位,第六列位对应变量分离出的偏移量位,第七列对应变量的取值最小值,第八列对应变量取值的最大值。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的范围内,能够轻易想到的变化或替换,都应涵盖在本发明权利要求的保护范围内。
Claims (4)
1.一种基于LABVEIW的解析DBC分析报文的方法,其特征在于,包括以下步骤:
步骤1:通过LABVIEW对DBC文件进行处理解析:
11.导入DBC文件;
12.先分离出所有的ID:逐行读取DBC文件文本行数据信息,每行与BO_比较,比较一致后,将其后紧邻的数据作为ID处理,并记录此行的序列号及ID序号;
13.分别对每个ID下的变量名进行解析,每行与SG_比较,比较一致后,分别对关键符号’:’,’|’,’@’,’(’,’,’,’)’,’[’,’]’进行判断,分别分离出变量名、起始位、数据长度、数据格式、数据类型、精度、偏移量;
步骤2:将步骤1分离的数据一一对应:
21.将变量名与后面的数据信息合并创建数组;
22.根据记录的ID的序列行号及ID序号分离出每个ID所包含的变量数及其实行号;
23.将组合创建的数组根据分离出的每个变量的行号进行索引替换;
将数组中的字符型数据替换为数值型数据,起始位、长度、数据格式、数据类型替换为无符号单字节整型数据,精度、偏移量、范围替换为双进度数据格式,并分别组成两个数组;
步骤3:通过labview上位机及USBCAN盒建立收发CAN报文的连接:
31.利用公开的DLL文件,导入相关的接口函数建立联系;
相关的接口函数包括:VCI_Receive、VCI_OpenDevice、Transmit;
32.对设备通道进行初始配置:建立数据流:打开USBCAN设备即USBCAN盒,对CAN通道、波特率进行初始化设置,启动设备,关闭设备;
步骤4:分数据格式和类型运算:
41.先识别出数据格式和数据类型的匹配种类;
42.对数据格式不同的分开计算;
43.对数据类型不同的分开计算;
步骤5:经过偏移量和精度的计算:
51.规定y=kx+b,x为CAN线中传输的数值,即步骤3中最后得到的数值,k为分辨率,b为偏移量,y为实际值,按照步骤2中所分离的两个数组进行对应运算,此时运算即能够得到最终值;
52.如果厂家有另外规定,直接加选择变量,按照厂家要求的顺序进行;
步骤6:对得到的最终值处理:将得到的最终值按计算的变量的个数重新组成一个数组查看,也能够通过For循环直接生成一个个变量查看。
2.根据权利要求1所述的一种基于LABVEIW的解析DBC分析报文的方法,其特征在于,所述步骤41中,数据格式byte_order等于0为motorloar格式,数据格式等于1为Intel格式;数据类型value_type等于0为有符号格式,数据类型等于1为无符号格式。
3.根据权利要求1所述的一种基于LABVEIW的解析DBC分析报文的方法,其特征在于,所述步骤42中,motorloar格式和Intel格式分开,先判断是否跨字节,如果不跨,则统一处理,如果跨字节,motorloar格式则按高字节在低位,低字节按高位处理;Intel格式则按高字节在高位,低字节按低位处理。
4.根据权利要求1所述的一种基于LABVEIW的解析DBC分析报文的方法,其特征在于,所述步骤43中,有符号和无符号分开,当无符号则直接计算,当有符号,则判断最高位是0还是1,当是0则其余位则为实际数,当是1,则其余位的相反数为实际数值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711324218.2A CN107992026B (zh) | 2017-12-13 | 2017-12-13 | 一种基于labveiw的解析dbc分析报文的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711324218.2A CN107992026B (zh) | 2017-12-13 | 2017-12-13 | 一种基于labveiw的解析dbc分析报文的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107992026A CN107992026A (zh) | 2018-05-04 |
CN107992026B true CN107992026B (zh) | 2020-09-08 |
Family
ID=62037456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711324218.2A Active CN107992026B (zh) | 2017-12-13 | 2017-12-13 | 一种基于labveiw的解析dbc分析报文的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107992026B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108762235A (zh) * | 2018-06-12 | 2018-11-06 | 重庆穗通汽车工业发展有限公司 | 整车分析调试方法、整车分析调试系统和电动车辆 |
CN108965274A (zh) * | 2018-06-29 | 2018-12-07 | 威马智慧出行科技(上海)有限公司 | Dbc文件的解析方法及装置 |
CN109547309A (zh) * | 2018-09-25 | 2019-03-29 | 北京长城华冠汽车科技股份有限公司 | 一种基于LabVIEW的控制器局域网报文写入方法和装置 |
CN109656564A (zh) * | 2018-11-29 | 2019-04-19 | 浙江台运汽车科技有限公司 | 基于labview和.net实现dbc报文的解析方法及系统 |
CN110769002A (zh) * | 2019-11-01 | 2020-02-07 | 上海电气集团股份有限公司 | 基于LabVIEW的报文解析方法、系统、电子设备和介质 |
CN110928219B (zh) * | 2019-11-19 | 2021-04-20 | 深圳市伊爱高新技术开发有限公司 | 一种快速接入工程机械工况参数的方法 |
CN114019940A (zh) * | 2020-03-02 | 2022-02-08 | 阿波罗智联(北京)科技有限公司 | 用于检测异常的方法和装置 |
CN112383640A (zh) * | 2020-12-09 | 2021-02-19 | 上海核工程研究设计院有限公司 | 一种核电运行监控数据实时上报通讯系统 |
CN112947376A (zh) * | 2021-02-19 | 2021-06-11 | 中国第一汽车股份有限公司 | 一种试验车使用监管方法和监管系统 |
CN113067821A (zh) * | 2021-03-22 | 2021-07-02 | 聊城大学 | 基于单个或多个dbc文件的can报文的解析方法 |
CN117201304A (zh) * | 2023-08-30 | 2023-12-08 | 赛力斯汽车有限公司 | 一种通讯矩阵的更新方法、装置、计算机设备和介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NO974130D0 (no) * | 1995-03-08 | 1997-09-08 | Univ Oxford Brookes | Bredbåndet koplingssystem |
CN102592414A (zh) * | 2012-02-23 | 2012-07-18 | 北京智华驭新汽车电子技术开发有限公司 | 一种驾驶员主动安全预警系统的测试平台 |
CN104281469A (zh) * | 2014-08-26 | 2015-01-14 | 东风电子科技股份有限公司 | 实现电子控制单元程序刷写的方法及系统 |
CN104483878A (zh) * | 2014-12-09 | 2015-04-01 | 中国航空工业集团公司第六三一研究所 | 一种标定工具通信传输方法 |
CN106227575A (zh) * | 2016-07-26 | 2016-12-14 | 浪潮通用软件有限公司 | 一种生成与解析文本文件的方法 |
CN106817366A (zh) * | 2016-12-31 | 2017-06-09 | 惠州市蓝微新源技术有限公司 | 一种can文件解析及重新保存方法 |
CN107132832A (zh) * | 2016-02-29 | 2017-09-05 | 株洲南车时代电气股份有限公司 | 一种基于can通讯的dbc文件解析及其程序设计方法 |
-
2017
- 2017-12-13 CN CN201711324218.2A patent/CN107992026B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NO974130D0 (no) * | 1995-03-08 | 1997-09-08 | Univ Oxford Brookes | Bredbåndet koplingssystem |
CN102592414A (zh) * | 2012-02-23 | 2012-07-18 | 北京智华驭新汽车电子技术开发有限公司 | 一种驾驶员主动安全预警系统的测试平台 |
CN104281469A (zh) * | 2014-08-26 | 2015-01-14 | 东风电子科技股份有限公司 | 实现电子控制单元程序刷写的方法及系统 |
CN104483878A (zh) * | 2014-12-09 | 2015-04-01 | 中国航空工业集团公司第六三一研究所 | 一种标定工具通信传输方法 |
CN107132832A (zh) * | 2016-02-29 | 2017-09-05 | 株洲南车时代电气股份有限公司 | 一种基于can通讯的dbc文件解析及其程序设计方法 |
CN106227575A (zh) * | 2016-07-26 | 2016-12-14 | 浪潮通用软件有限公司 | 一种生成与解析文本文件的方法 |
CN106817366A (zh) * | 2016-12-31 | 2017-06-09 | 惠州市蓝微新源技术有限公司 | 一种can文件解析及重新保存方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107992026A (zh) | 2018-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107992026B (zh) | 一种基于labveiw的解析dbc分析报文的方法 | |
CN100586109C (zh) | 基于自定义模板的通用业务数据通讯方法与系统 | |
CN110430219A (zh) | 多种协议物联网设备自适配的方法及系统 | |
CN101651683B (zh) | 一种信令消息解析源代码生成方法 | |
CN101563908A (zh) | 分析网络流的装置和方法 | |
CN109768970A (zh) | 一种基于可配置的通用协议生成方法 | |
CN108881251B (zh) | 一种任意二进制设备接入解析与标准化的系统及方法 | |
CN111683066B (zh) | 异构系统集成方法、装置、计算机设备和存储介质 | |
CN112187936B (zh) | 车辆数据处理方法、装置、设备、存储介质及车辆 | |
CN102752166A (zh) | 一种调试方法、芯片、单板及系统 | |
AU2012200826A1 (en) | Meter processing communication system | |
CN101631261B (zh) | 信令跟踪方法、信令跟踪后台装置及跟踪系统 | |
CN109861998B (zh) | 一种基于北斗短报文协议的插件式动态解析系统及方法 | |
CN115242896A (zh) | 动态报文解析方法、装置、电子设备及计算机可读存储介质 | |
Silva et al. | Universal parser for wireless sensor networks in industrial cyber physical production systems | |
CN113905107A (zh) | 工业设备点表数据的获取方法、装置及网关 | |
CN101609427A (zh) | 一种可编程的网络服务自动化测试系统及方法 | |
CN105718429A (zh) | 巡检报告生成的方法及装置 | |
CN105793842B (zh) | 序列化消息之间的转换方法和装置 | |
CN116910144A (zh) | 算力网络资源中心、算力服务系统以及数据处理方法 | |
CN102811186A (zh) | 网域闸道控制系统及其方法 | |
Culler et al. | Embedded web services: making sense out of diverse sensors | |
CN114679501B (zh) | Modbus转mqtt协议的云网关实现方法和装置 | |
CN108322331B (zh) | 一种可动态调整交互测点的通信方法及系统 | |
CN116074399B (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 |