一、波特率

波特率是一个设备在一秒钟内发送(或接收)了多少字节的数据, 比如Info CAN上的波特率是500kb/s, 可以简单地理解成传输速度.

以上波特率必须和后续的can工具匹配上, 不然can工具无法接收或发送信号.

下一节课程将会讲到PCAN-Explorer 5的使用, 其第一步就是要配置波特率.


二、dbc文件

dbc文件, 网上说是database communication的简称, 这翻译也没毛病, 就是将某条can总线上发送和接收到的原始信号(各种16进制码)映射成人类可以看懂的英文信号, 这个信号解析文件, 就是dbc文件.

没有dbc时显示原始的can信号如下:
在这里插入图片描述

加了dbc后, 每个信号帧, 每个信号帧和信号都可以看的懂了, 以下截图标红的+号展开后就可以看到各种英文信号了(不好意思这里没截到好图,后续更新上):
在这里插入图片描述
之前我们讲过整车can网络一共是5条can总线, 那就会有5个dbc文件来分别解析各条can总线上的信号.


三、常用can工具及其对比

3.1 PCAN工具

配套硬件: PCAN-USB

配套软件: PCAN-Explorer 5 (或PCAN-View).
PCAN-View 免费是只能收发和发送原始报文, 无法导入dbc文件
PCAN-Explorer 5支持导入dbc文件,支持信号画图表和VBScript宏等等

在这里插入图片描述
在这里插入图片描述

3.2 Vehicle SPY 3工具

配套硬件: neoVI_FIRE2
配套软件: Vehicle Spy 3
在这里插入图片描述
在这里插入图片描述

通过以上两个can工具的截图, 可以看出

共同点:

can信号接收区:

叫Receiver 或Message, 业界简称都是Rx

can信号发送区:

叫Transmit 或叫Tx Panel, 业界简称都是Tx

信号帧:

即包含了多种can信号的报文帧

帧ID:

为了区别各个信号帧, 分别给个信号帧定义的一个ID, 这个ID一般不会变, 后续被其他节点订阅, 也都是根据帧ID来的. 即FrameID

信号代号:

其实应该叫信号帧代号, 一个信号代号对应一个帧ID

帧内容:

信号帧的实际内容, 其实就是信号帧里的各种信号数据.

发送区信号值设定:

发送信号前都可以设置信号值后再发送出去

不同点:
CAN设备对比

配套硬件配套软件license 数量总价格配置
PCAN-USBPCAN-Explorer 5可多台电脑复用2100~2773(RMB)(不含软件)1路CAN
neoVI Fire2Vehicle Spy 3可多台电脑复用约5.6W(RMB)(软件+硬件)8路CAN 4路LIN

我们都知道以上工具不仅可以接收can信号, 还可以模拟发送can信号.
所以你可以将can工具理解成信号收发器.
以上信号收发器, 仿真了真实车辆的相关信号, 达到了无车辆情况下, 我们也可以仿真地进行信号发送和接收.

以上都不是太重点, 重点请看下面内容


四、通过dbc文件了解整车can网络的信号

4.1 查看INFO CAN dbc文件

我们通过PCAN-Explorer的File->Open菜单项导入infocan.dbc,

也就是说这个dbc是用来解析Info(娱乐) CAN总线上的信号的.

以下是infocan.dbc的主要信号截图(非全部, 以下两种截图最多是30%信号量)

在这里插入图片描述
在这里插入图片描述

之前我们说过Info的主要的两个节点: VAES节点, IPK节点

即车机娱乐系统节点 及 组合仪表节点

在Info can总线上的发送帧有:

VAES_INFOCAN_**:

是INFOCAN上的VAES(车机娱乐系统)节点的信号发送帧

IPK_INFOCAN_**:

是INFOCAN上的IPK(仪表)节点的信号发送帧

在Info can总线上订阅(接收)帧有:

GW_INFOCAN_**:

是INFOCAN上接收到来自Gateway(网关)中心控制节点的信号帧.

订阅(接收)方有可能是Info can上的VAES或IPK节点.

我们来看看其他4条can的dbc相关信号.

4.2 查看PT CAN dbc文件

PT CAN(动力总成CAN总线)

以下是ptcan.dbc的主要信号截图(非全部, 以下截图最多是20%信号量)
在这里插入图片描述
BMS_PTCAN_**:

是PTCAN上的BMS(电池管理系统)节点的发送帧

ECM_PTCAN_**:

是PTCAN上ECM(发动机控制模块)节点的发送帧

GW_CHCAN_**:

是PTCAN上接收到来自Gateway(网关)中心控制节点的信号帧

4.3 查看CH CAN dbc文件

CH CAN(底盘控制CAN总线)

以下是chcan.dbc的主要信号截图(非全部, 以下截图最多是20%信号量)
在这里插入图片描述

EPB_CHCAN_**:

是CHCAN上的EPB(电子转向助力)节点信号发送帧

EPS_CHCAN_**:

是CHCAN上的EPS(车身电子稳定系统)节点信号发送帧

GW_CHCAN_**:

是CHCAN上接收到来自Gateway(网关)中心控制节点的信号帧

4.4 查看 Body CAN dbc文件

Body CAN(整车控制总线)

以下是bodycan.dbc的主要信号截图(非全部, 以下截图最多是20%信号量)

在这里插入图片描述
AC_CHCAN_**:

是BODYCAN上的AC(空调)节点信号发送帧

BCM_CHCAN_**:

是BODYCAN上的BCM(车身控制模块)节点信号发送帧

GW_CHCAN_**:

是BODYCAN上接收到来自Gateway(网关)中心控制节点的信号帧

4.5 查看Diag CAN dbc文件

Diag CAN(诊断CAN总线)

以下是diagcan.dbc的主要信号截图(非全部, 以下截图最多是20%信号量)

在这里插入图片描述

Tbox_DIAGCAN_**:

是DIAGCAN上的Tbox(远程控制模块)节点的发送帧

GW_DIAGCAN_**:

是DIAGCAN上接收到来自Gateway(网关)中心控制节点的信号帧

综上:

网关(Gateway)这个中心控制节点, 其信号量是最多的,
嘴哥试过, 如果将CAN工具直接连上网关的5条CAN总线, 即使不模拟任何节点, 也可以收到一堆的can信号, 但这些都是网关定义的原始信号.
直到我们模拟发送节点信号后, 网关才将其之前的原始信号值更新, 并将这些更新的信号值源源不断的广播到其他另外4条can总线.


五、原文链接

波特率, dbc文件详解, 常用can工具介绍与对比

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐