CAN报文的离线分析:X-CAN离线分析平台

软件说明

本X-CAN软件为本人个人开发,开发的初衷为满足我个人在科研实验测试过程从CAN总线采集数据和后期不定期的反复提取离线数据来进行分析。本人的一个实验习惯是,在每一次的实验测试过程中保存当次版本的CAN协议文件、CAN数据文件以及必要的实验摘要。本X-CAN软件则可以根据当次的CAN协议文件和CAN数据文件对原始数据进行各种分析、绘图。

本软件从最初的个人开发自用,到供给实验室内部使用,再到现在封装供大家免费使用,已经历了多个版本。各版本功能不断完善,同时,也希望各位在使用本软件时能够积极地提一些建议和意见,如有,请直接评论到本博客。

本X-CAN软件快捷方式如下,统一显示为X-CAN 。
在这里插入图片描述
最新版本【V2.2.5.0 】更新内容如下:
1、 支持解析及合并Vector CANoe/CANape和Peak CAN等软件保存的ASC文件;
2、支持合并Peak CAN等软件保存的trc文件;
3、改进更新功能,更新时自动退出老版本X-CAN;
4、修正Peak CAN等软件保存的trc文件解析功能。

本软件下载地址及运行环境

本软件基于NI LabVIEW 2015 32位编写,安装及运行需要有LabVIEW 2015的运行引擎,请先安装LabVIEW 2015或以上版本,或者安装LabVIEW 2015的运行引擎。
这里提供X-CAN软件、运行环境的下载地址:

软件项 版本 软件大小 下载地址 备注
本软件:X-CAN 2.2.5.0 14.2 MB 渠道1:本人网站
渠道2:CSDN下载
必装
本软件:X-CAN(上一版本) 2.2.4.2 14.0 MB CSDN下载 -
运行时引擎:LabVIEW
Run - Time Engine
2015 SP1 - (32-bit) 274.57 MB 官网ftp下载 选装
开发软件:LabVIEW 2015 中文版 1.41 GB 官网ftp下载 选装

本软件免费使用,在CSDN下载是对我开发工作的认可。若你无CSDN积分下载,也可联系本人QQ:19627152或相应QQ邮箱索取,也可以加Q群:646900507互相交流学习。另外,本人为此软件制作了专门的网站:http://www.xcantec.cn/,你也可以通过这个网站进行下载和反馈。

软件支持的文件格式

1、CAN协议文件
目前,本软件仅支持.dbc格式的CAN协议文件,如有其它格式的需求,请联系本人。
dbc格式的CAN协议文件采用Vector CANdb++软件编写,如有需要,可以点击这里到百度网盘下载,提取码:mrnd ,或点击这里到CSDN下载

2、CAN离线数据文件
(1)X-CAN 1.9及以下版本仅支持由ZLG CANpro软件在CAN选项卡下保存或实时保存的
.txt/.asc文件
(2)X-CAN 2.0版本开始,支持ZLG CANpro软件在CAN选项卡下保存的
.can/.txt/.asc文件;支持ZLG ZCANPRO软件保存的.can/.csv/.txt/.asc文件
(3)X-CAN 2.2.0.0版本开始,支持ZLG CANpro软件在CAN选项卡下保存的
.can/.txt/.asc文件;支持ZLG ZCANPRO软件保存的.can/.csv/.txt/.asc文件;支持ZLG CANtest软件保存的 .can /.csv /.txt /.asc文件
(4)X-CAN 2.2.2.0版本开始,支持ZLG CANpro软件在CAN选项卡下保存的
.can/.txt/.asc文件;支持ZLG ZCANPRO软件保存的.can/.csv/.txt/.asc文件;支持ZLG CANtest软件保存的 .can /.csv /.txt /.asc文件;支持ZLG CANDTU保存的 .can /.csv /.txt /.asc文件
(5)X-CAN 2.2.4.0版本开始,支持ZLG CANpro软件在CAN选项卡下保存的
.can/.txt/.asc文件;支持ZLG ZCANPRO软件保存的.can/.csv/.txt/.asc文件;支持ZLG CANtest软件保存的 .can /.csv /.txt /.asc文件;支持ZLG CANDTU保存的 .can /.csv /.txt /.asc文件;支持PCAN软件保存的 .trc文件
(CANpro和ZCANPRO的can文件格式定义的解读请参看本人的其他博文:《ZLG的CANpro保存的.can文件解析》和《ZCANPRO的.can文件解析》。)
(6)如有其它格式的需求,请联系本人。

软件版本 兼容的CAN协议格式 兼容的CAN数据文件格式
X-CAN 2.2.5.0及以上版本 .dbc (1).ZLG CANpro软件在CAN选项卡下保存的.can/.txt/.asc文件;
(2).ZLG ZCANPRO软件保存的.can/.csv/.txt/.asc文件;
(3).ZLG CANtest软件保存的.csv/.txt/.asc文件;
(4).ZLG CANDTU保存的.csv/.txt/.asc/.can文件;
(5).PCAN软件保存的.trc文件;
(6).PCAN、Vector CANoe/CANape等软硬件保存的.asc文件。
X-CAN 2.2.4.0~2.2.4.2 .dbc (1).ZLG CANpro软件在CAN选项卡下保存的.can/.txt/.asc文件;
(2).ZLG ZCANPRO软件保存的.can/.csv/.txt/.asc文件;
(3).ZLG CANtest软件保存的.csv/.txt/.asc文件;
(4).ZLG CANDTU保存的.csv/.txt/.asc/.can文件;
(5).PCAN软件保存的.trc文件。
X-CAN 2.2.2.0~2.2.3.2 .dbc (1).ZLG CANpro软件在CAN选项卡下保存的.can/.txt/.asc文件;
(2).ZLG ZCANPRO软件保存的.can/.csv/.txt/.asc文件;
(3).ZLG CANtest软件保存的.csv/.txt/.asc文件;
(4).ZLG CANDTU保存的.csv/.txt/.asc/.can文件。
X-CAN 2.2.0.0~2.2.1.3 .dbc (1).ZLG CANpro软件在CAN选项卡下保存的.can/.txt/.asc文件;
(2).ZLG ZCANPRO软件保存的.can/.csv/.txt/.asc文件;
(3).ZLG CANtest软件保存的.csv/.txt/.asc文件。
X-CAN 2.0~2.1.1 .dbc (1).ZLG CANpro软件在CAN选项卡下保存的.can/.txt/.asc文件;
(2).ZLG ZCANPRO软件保存的.can/.csv/.txt/.asc文件。
X-CAN 1.9及以下版本 .dbc ZLG CANpro软件在CAN选项卡下保存的.txt/.asc文件。

注意:不推荐使用.asc格式保存离线数据,CANpro和ZCANPRO保存生成的.asc文件的时间序列与其他几种格式相差较大。
ZCANPRO软件请自行到ZLG官网下载。而CANpro软件ZLG官网则已不再提供下载,如有需要,可以点击这里到百度网盘下载,提取码:001q 。

前言

CAN是控制器局域网络(Controller Area Network, CAN)的简称,是ISO国际标准化的串行通信协议。1986 年德国博世公司开发出面向汽车的CAN 通信协议。此后,CAN 通过ISO11898 及ISO11519 进行了标准化,目前已是汽车网络的标准协议。CAN 的高性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。
在开发人员进行CAN总线相关装置进行调试测试时,通常会采用CAN卡连接CAN网络和PC电脑进行数据的采集、观察和记录。目前国内外有一些列配套的在线分析工具和软件,但是价格昂贵。但长期以来,人们对采集的CAN数据每次都借助EXCEL、Matlab、LabVIEW等工具以及相应的通讯协议配置进行手动解算信号,而且需要非常了解相应的通讯协议和分析处理过程,操作十分繁琐且费时。
为了更便捷地对采集并储存到存储器中的CAN数据进行分析和绘图,基于LabVIEW平台开发了此X-CAN离线分析平台(以下简称X-CAN)。该X-CAN离线分析平台能够自动解析dbc格式的CAN通讯协议文件和CAN离线数据,并根据所选信号进行图标绘制。本人在进行CAN总线调试时采用CAN卡进行CAN总线数据采集和记录,并利用X-CAN离线分析平台能够高效、低成本的对CAN网络数据进行分析。

X-CAN

X-CAN离线分析平台所具有的主要功能如下:

  • 能够加载并读取CAN通讯协议DBC文件,并自动解析DBC文件内的报文信息(包括报文名、ID、字节数、发送节点)以及报文所含的各个信号的信息(包括信号名、起始位、长度、排序格式、有无符号、比例因子、偏移量、最小值、最大值、单位、发送节点),还有各个信号的值定义,并自动绘表显示;
  • 用户可以根据解析的DBC信号表自由选取所需要绘图的信号;
  • 用户可以查看任意信号的值定义;
  • 能够加载并读取ZLG相关软件保存的txt、can、asc、csv等格式的CAN离线数据,并根据所选信号自动绘制曲线;
  • 用户可以对绘制的图表进行缩放、移动、游标读取等操作,也可以导出所选择信号的曲线数据到EXCEL或位图中。

应用X-CAN离线分析平台后,CAN数据分析过程中许多重复性的工作都可由计算机自动去执行,只需要鼠标进行简单点选即可完成以往繁琐的协议匹配、导入EXCEL、截取、排序、绘图等等操作,从而使得测试人员真正变为从事一些信息的分析、判断、决策等创造性的工作。

使用说明

最新版本的X-CAN离线分析平台主界面如下:
在这里插入图片描述

软件功能

1 解析CAN通讯协议DBC

X-CAN离线分析平台主界面的左上部分为DBC解析和查看的主要界面。
在这里插入图片描述
DBC文件是一种描述CAN通信协议的文件,德国 Vector的CANdb++软件可创建和编辑DBC文件,如果没有装这个软件的话,直接用记事本打开DBC文件也可以,但是由于文件的格式比较特殊,直接看文本的话难以理解,这时候可能就需要本软件直接读取解析。

DBC文件中包含了CAN网络的节点定义、CAN报文的定义、各个信号的定义以及相关值的含义说明等,具体详情用户可至Vector官网进行查询。

用户选择并加载DBC文件后,X-CAN立即自动解析DBC中的信息。X-CAN解析完DBC文件后会在路径下方显示该DBC文件中蕴含的报文数量和信号数量。

X-CAN自动解析DBC文件得到其中的信息后,将报文及信号、信号的起始位、长度、格式、缩放系数、偏移量、最小值、最大值、单位、节点等信息以树形表格的形式进行显示,用户可以通过操纵树形表右侧的滚动条可以查看各个报文和信号的定义。
在这里插入图片描述
在这里插入图片描述

也可以查看各信号的值表(值定义):
在这里插入图片描述

2 加载CAN离线数据

在进行CAN数据绘图前,请先加载CAN离线数据。点击CAN离线数据栏目的文件夹按钮,即弹出文件选择框,选择txt或asc格式 的CAN离线数据,点击“加载”即可。点击“加载”后,X-CAN立即加载所选的CAN离线数据,并提示用户CAN离线数据的行数以及当前加载的百分比进度。加载完成后,提示语和进度条消失。说明程序已将数据读取到缓冲区。注:推荐使用ZLG的CANpro保存CAN离线数据

在这里插入图片描述

3、信号绘图

在DBC树形表中双击信号来将信号添加到已选信号栏中,选择完毕后,点击“绘图”即可。
在这里插入图片描述
在这里插入图片描述

用户通过右侧的图例窗口,右键颜色框,即可弹出更改曲线的按钮列表,通过此按钮列表,用户可更改曲线的可见性、曲线类型、线条样式、宽度等等,功能十分丰富,请用户自行探索。

4、图表导出

另外,曲线数据也可以导出,在X-CAN中的主图右键可以将绘制得到的图导出到剪贴板、EXCEL或简化图像。
在这里插入图片描述

以导出数据至EXCEL为例,点击“导出至EXCEL”即可将所选信号曲线的数据导出到EXCEL,其列顺序依已选信号顺序排列,即“信号1时间,信号1值,信号2时间,信号2值,信号3时间,信号3值……”
在这里插入图片描述

5、CAN数据文件合并

从X-CAN 2.1版本开始,X-CAN集成CAN数据文件合并功能,在合并文件界面下,能够自动读取用户选择目录下后缀为can、txt、asc、csv四种格式的CAN数据文件,并能自动读取文件的大小、所包含的CAN报文数量、首帧时间、末帧时间、以及其所覆盖的时间长度。用户通过选择要合并的文件,可快速对多个CAN数据文件进行自动合并。
在这里插入图片描述
关于CAN数据文件合并的使用,请参看本人另外一篇博客:《CANjoiner:CAN离线数据文件合并器》,其详细的功能使用在此就不再赘述。
在这里插入图片描述

应用CAN离线数据文件合并器,可以快速查阅在计算机中保存的CAN离线数据文件,并根据需要对若干个数据文件进行合并,以便于后续的数据分析工作,使得数据分析人员可以不受文件分割而影响了数据或曲线的连续性,从而更快速的完成测试分析工作。

更新记录

X-CAN 版本 更新的内容
2.2.5.0 1、 支持解析及合并Vector CANoe/CANape和Peak CAN等软件保存的ASC文件;
2、支持合并Peak CAN等软件保存的trc文件;
3、改进更新功能,更新时自动退出老版本X-CAN;
4、修正Peak CAN等软件保存的trc文件解析功能。
2.2.4.2 1、绘图时自动选择插值方式,当有离散值定义时绘制为数字信号;
2、鼠标放置曲线上时一并显示值定义(如有)。
2.2.4.1 1、Y轴随曲线自动变颜色;
2、初始线宽可设。
2.2.4.0 1.新增支持解析PCAN软件保存的.trc格式CAN数据文件。
2.2.3.2 1.改进主图网格、图例显示;
2.发现新版本时显示新版本号。
2.2.3.1 1.降低了低分屏界面的错位程度。
2.2.3.0 1.添加鼠标放置在曲线上自动显示坐标的功能;
2.改进自动更新功能。
2.2.2.3 1.添加自动检查更新功能;
2.添加自动重排时间顺序功能;
3.优化部分bugs。
2.2.2.2 1.添加语言设置功能,全面支持中文、English界面。
2.2.2.1 1.添加若干按钮,可快速打开candb++、CANpro、CANtest等软件;
2.缩小初始面板至1366*768以下,以避免低分屏错位严重。
2.2.2.0 1.修改主界面背景;
2.添加检查更新按钮;
3.添加对CANDTU的txt和csv的支持。
2.2.1.3 1.适配CANtest保存的另一种txt数据文件;
2.修正CANpro.can文件的时间解析;
3.生成英文版。
2.2.0.0 1.适配CANtest保存的CAN数据文件(.csv/.txt/.asc);
2.合并文件完成后立即刷新文件列表;
3.添加时间轴的切换功能(相对时间(秒)/绝对时间(不显日期)/绝对时间(显示日期));
4.添加“文件详情”按钮,查看CAN离线数据文件详情;;
5.“关于”界面添加“前往网页”按钮,点击可打开浏览器显示博客;
6.修改安装程序,添加卸载快捷方式。
2.1.1.0 1.优化文本最后一行读取速度;
2.优化若干细节问题。
2.1.0 .0 1.添加合并文件的功能
2.0.1 .0 1.修正解析ZCANPRO的can文件时可能产生的错误
2.0.0 .0 1.增加解析ZCANPRO软件保存的数据文件能
1.9.0.0 1.增加关于和捐赠按钮
1.8.0.0 1.DBC添加有符号和无符号的区分
1.6.0.0 1.添加.asc格式CAN数据的解析能力;
2.离线数据解析得到的数据流中时间改为10us,注意:当时间总量超过11.9个小时时将会溢出;
3、删除了游标图例,窗口最大化不至于重叠;
4、增加“加载上一个DBC”按钮,点击可直接加载上次打开的DBC;
5、DBC信号调整排列顺序,VECTOR__INDEPENDENT_SIG_MSG不再出现在前排;
6、增加“导出至EXCEL”按钮,此功能为解决部分电脑出现无法导出到EXCEL的bug。

后补

附CANpro和ZCANPRO的软件界面如下两图,本人推荐使用CANpro,原因是CANpro可以显示和保存几百万帧的CAN报文都不成问题,而且CANpro保存的.can文件中仅使用24字节即可保存一帧CAN报文。而ZCANPRO中,非实时保存最大只能保存10万帧报文(平均10ms有2帧的话,也就保存个500s,也就是8分钟多一点。),实时保存则会按每个文件只保存10万帧自动生成多文件,而且ZCANPRO保存的.can文件中需要58~66字节来保存一帧CAN报文,异常庞大。另外,ZCANPRO没有“导入数据”选项,仅能通过“数据回放”复现数据,但是亲测ZCANPRO的“数据回放”可能导致时间轴失真。

CANpro和ZCANPRO软件
CANpro
ZCANPRO

本文为博主原创文章,未经博主允许不得转载。如有问题,欢迎指正。

发布了26 篇原创文章 · 获赞 14 · 访问量 4904

猜你喜欢

转载自blog.csdn.net/jaysur/article/details/90040598