GCANTools软件使用

支持下载也支持在线阅读!
GCANTools软件使用手册-JS-WI-ECANTOOLS-003-V6.0.pdf
3.5 MB
在打开软件前请先确定:①接线是否正确,②是否安装电阻或拨码,③波特率是否匹配。

软件启动

1界面定义

     安装好Windows驱动后,连接CAN分析仪硬件,打开软件会有如下图所示设置界面。
①“选择设备类型”:需选择对应硬件的版本,V405/502版本需选择V5类型,具体版本型号参考设备外壳背面,其他设备类型请不要选择。选择好对应的设备类型后点击打开设备即可看到相应的设备信息。
②“打开设备”按钮:点击该按钮,可调取USBCAN设备。若显示“USB设备打开错误!”请检查①中选择的设备是否正确,设备管理器中的驱动是否安装正确。
③设备显示窗口:该窗口可显示设备的硬件号及SN号码。hardware为我公司自定义硬件版本号,对于用户无任何意义;ID为硬件SN号。
④通道选择界面:可在此处切换CAN通道的设置窗口。
⑤工作模式:可在此选择正常模式、只听模式和自发自收模式。正常使用时需要您选择默认的正常模式。
⑥波特率选择:您可在此处进行波特率的选择。波特率对于CAN总线的通信至关重要,通信前您需要确定目标设备或目标总线的波特率。
  • 选中设备后,在下边可以设置一些具体的工作模式和波特率。如您购买的是双通道设备,可通过选项卡分别对CAN1、CAN2进行设置,设置波特率尤为重要,此处设置波特率不可以手动输入,需要通过下拉菜单选择,我公司产品支持如图所示标准波特率。
  • 如您使用的是特殊波特率,请点击自定义按钮,此时需要您输入一个十六进制码,下表中列出了部分特殊波特率的值,如您需要其他波特率请联系我们,我们会帮您计算寄存器设置值。
⑦自动识别波特率按钮:如您不知道目标总线或设备的波特率,可以选择“波特率自动识别”,自动识别成功条件:被测设备上电且CAN端为活动状态。
  • 请注意,设置波特率尤其重要,许多客户反映设备连接上之后没有数据,或总线错误,实为波特率没有设置成功就直接点击确定打开设备。在这里提示您,无论您将我们的设备作为主或从设备使用,只要您将设备接入到CAN总线上,必须将设备的波特率设置成与目标设备波特率一致,才可以正常工作。
⑧确定按钮:选择好波特率后,可以点击确定,之后进入软件。此时如果硬件正确启动,SYS指示灯会由常亮变为闪烁状态(连续闪烁2次)。连接成功后界面显示如下图:

2自动识别波特率

    如您不清楚目标设备的波特率,可使用自动识别波特率功能。自动识别波特率有“普通静默模式识别”和“增强模式识别”两种模式可供选择。
   “普通静默模式识别”的环境要求为,CAN 总线上至少有两个被测设备且互相之间可以正常通讯,要求总线上有活跃的 CAN 数据。
   “增强模式识别”的环境要求为,被测设备上电且 CAN 通道工作正常,但不要求设备主动发送 CAN 数据,也不要求总线上有活跃的 CAN 数据。
    自动识别前请确保接线正确,且总线上连入两个120欧姆电阻。您可在不对 CAN 总线系统内设备上电的前提下,使用万用表对线路 CANL 与 CANH 两端的电阻值进行测量,应为60欧姆左右。
    请注意,对于汽车的CAN总线系统,请选择“普通静默模式识别”来识别波特率。使用“增强模式识别”可能会造成车辆仪表报错。
    波特率自动识别功能按检索范围的不同,可分为两种模式:A.标准波特率识别(对标准的CAN波特率进行一一识别), B.全范围波特率识别(手动输入识别范围,软件将对范围内的波特率进行全面匹配)。例如,某CAN总线系统的波特率未知,使用标准波特率识别显示“没有找到合适的波特率”时,您可在“全范围识别”区域设置波特率从5kbps识别到1000kbps,即可识别到所需的波特率。

A.标准波特率识别

A.标准波特率识别截图

B.全范围波特率识别

    如果标准波特率识别不到未知节点的波特率,可使用全范围波特率进行进一步识别。本功能有助于帮助工程师修正新开发设备的波特率偏差。
B.全范围波特率识别截图

3数据接收相关功能

    设备参数设置好后,软件就进入工作状态,如果总线上有数据,这时接收数据窗口就会有数据显示。接收窗口如下图所示:

3.1保存数据功能与实时保存功能

用户可将当前发送/接收列表中的全部数据保存到本地,保存格式详见下表:
    文本文件便于数据保存及后期分析,批处理文件可通过记事本软件进行修改后重新发送回总线。对于批处理文件格式的说明详见4.3
    点击工具条上的“实时保存”,设置实时保存的文本类型和文件名,便可开始数据实时保存功能(即设置保存节点 A),再次点击(即设置保存节点 B),系统会停止保存,并将从开始(A)到结束(B)的数据全部写入保存文件。
    请注意,系统并不会实时写入数据。即在实时保存过程中,保存的文件中并不会有数据。

3.2暂停显示功能

    可以点击暂停,即可将目前滚动中的数据窗口暂停,暂停时设备和软件依旧可以正常接收数据,只是数据窗口不会刷新,点击继续显示即可恢复滚动。

3.3显示模式

显示模式包括滚动模式和统计模式:
    滚动显示是接收到的数据在接收列表中不停的向下滚动,当前窗口看到的是最新的数据;
    统计列表方式是按设置好的规则分类显示,如可设置同一ID的数据包显示统计在一起,后面有统计包数量。统计模式可方便工程师抓取总线上新产生的或有变化的数据。

3.4清除功能

    可以清空接收/发送窗口中的数据,以及缓存区中的数据。

3.5滤波设置

    接收滤波设置可设置滤波ID或ID段,如设置滤波,软件会只显示被设置的滤波ID(段),不在滤波范围内的ID将会被过滤掉。点击“编辑滤波”,弹出滤波设置窗口,可以设置滤波范围:
    点击“添加滤波”即可开始编辑,输入想要过滤显示的ID或ID段后点击“保存设置”即可将滤波内容添加到的左侧。
   左侧的滤波列表可添加多条数据,勾选相应的滤波段即可选择是否启用。本软件可同时启用多条滤波。
请注意,您需要勾选“设置使能滤波”后方可使滤波生效。滤波文件可保存并通过“打开滤波文件”进行加载。

3.6接收错误帧显示功能

    软件可以捕获总线上的错误帧,当接收到错误帧时,在接收列表中将以飘红的形式显示出来。
    错误帧也可通过设置统计模式后进行合并显示。

3.7高级屏蔽功能

  GCANTools 软件可以屏蔽接收到的指定的 CAN 帧数据。GCANTools 软件可以将接收到的数据按帧 ID 归类后合并显示在左侧的待屏蔽列表中,从左边的列表中您可以选择需要屏蔽的帧 ID,点击向右箭头即可将选中的帧 ID 添加到屏蔽列表中,软件将自动屏蔽右侧列表中所有以此帧 ID 开头的所有数据,屏蔽列表可以设置多条屏蔽帧 ID。

3.8双通道合并接收数据功能

    对于双通道设备,CAN1 和 CAN2 同时接收数据时,点击“双通道合并”,则在当前界面可以收到两个通道的接收数据,并在名称处予以区分。
     保存数据时,双通道合并接收数据,保存在同一文件中;发送文件的双通道同时发送,根据保存文件的通道数进行同时发送,发送文件详情参照4.3
    没点击“双通道合并”,在自己界面正常接收自己通道的数据。

3.9数据转发功能

①CAN1 接收的数据-CAN1 发送:CAN1 收到数据立即从 CAN1 发出,相当于数据反射功能。
②CAN1 接收的数据-CAN2 发送:CAN1 通道收到数据后经过滤波将这条数据从CAN2 通道发出,此处 CAN1 和 CAN2 通道设置不同的波特率
③CAN2 接收的数据-CAN1 发送:CAN2 通道收到数据后经过滤波将这条数据从CAN1 通道发出,此处 CAN1 和 CAN2 通道可设置不同波特率
④CAN2 接收的数据-CAN2 发送:CAN2 收到数据立即从 CAN2 发出,相当于数据反射功能。
注:单通道设备只能实现①功能;数据转发可配合滤波功能使用,在接收数据的通道设置滤波后则只转发滤波后的数据。滤波设置详情参照3.5

4数据发送相关功能

4.1普通模式发送数据功能

    普通模式可以非常直观的编辑要发送的帧数据,可设置循环发送等特殊功能。
    普通模式比较简单,编辑帧信息非常直观,请注意输入数据时每个字节之间需要输入空格,否则将弹出“数据格式错误!”。

4.2列表模式发送数据功能

    点击列表模式之后,原位置将切换为普通模式。点击新建帧,可以编辑想要发送的数据帧。
    编辑数据界面中可设置帧 ID,帧类型,帧格式,帧长度等数据;
    在高级选项中,可以设置循环发送方式,可设置循环发送间隔时间,循环发送次数,可设置 ID 递增等方式。
    当设置好后,可将 CAN 报文添加到发送队列中:这时用鼠标点击 send 左边的方框可控制发送还是停止;当发送结束后复选框自动回复,循环发送的数据包在“已发送帧数”中可以看到成功发送的数据包数量。

4.3文件发送功能

    选择“发送文件”,即可打开发送文件对话框:
    文件类型可设置普通文件或批处理文件(.CAN),普通文件用于对 CAN 总线设备进行烧写程序,需自行开发烧录软件。
这里着重介绍一下批处理文件的发送。
    GCANTools 软件可以将接收到的数据保存为批处理文件(.CAN),批处理文件可以使用记事本方式打开,打开之后会看到保存下来的帧数据内容及格式。如下图所示的“example.can”您可以在 GCANTools 软件中的安装目录中找到。
    打开批处理文件(.CAN)后,可以直观的看到保存下来的数据参数,用户可以对这些参数进行修改及添加,各个位置的定义在上图中已经给出,注意批处理文件中不可以存在任何形式的非标准数据,上图中添加注释只为讲解,实际编辑中请勿添加。
    请注意,您可能会批处理文件(.CAN)的帧间隔时间中发现存在0的现象,遇到这类数据 GCANTools 将按照该波特率下的最小发送间隔来发送,并不会出现多帧同时发送的情况。
     之后选择保存好的批处理文件就可以进行文件发送了,时间间隔默认为1,请勿改动,如需设置时间间隔请在批处理文件中更改。

4.4中继功能

    在 CAN1、2通道选项卡上方可以选择设备的工作模式,双通道设备均支持CAN 中继工作模式。通过分别设置 CAN1、CAN2 的波特率,可以实现两条波特率不同的总线数据的转发中继。点击“写设置”之后关闭软件,重新对设备上电便可实现脱机中继。硬件设备提供外接 5VDC 标准工业现场电源插头,方便工业配套使用。
    勾选“USB 接收数据”后,即可使用 GCANTools 软件监控两条通道中继的数据,也可显示中继数据流向,此功能可用于对 CAN 总线数据进行抓包,对抓取握手协议等非常适用。
    在“起始 Start ID”和“结束 End ID”中输入需要过滤的 ID 段,点击“添加 Add”,之后勾选“滤波器使能(filter enable)”可以在中继模式下实现滤波的功能(最多可以输入12组)。

4.5智能脱机模式功能

    用户可以通过加载 TXT 文档的方式对设备进行脱机程序烧写,烧写脱机程序后的设备可以实现智能发送数据等功能,且烧写后无需连接电脑,上电即运行。
注释:
①等待时间:上电等待时间。单位:ms。
②模式选择:1=CAN1 收发,2=CAN2 收发,3=CAN1 收到数据后 CAN2 转发,4=CAN2 收到数据后 CAN1 转发。
③触发 ID 设置:如果是 40000000 表示不触发。若设置为 11111111 则表示收到以此帧 ID 开头的数据才转发。
④替换掩码设置:此段为十六进制数据,需转换为二进制。如 0020 可表示为0000 0000,0010 0000,其中逗号前边两位0分别为帧 ID 和长度,逗号后边八位为帧数据,0表示不换、1表示换,如果设置成替换的话,该数据将会变成00。0200为替换ID,0100为替换长度
⑤发送 ID:如果设置了③触发 ID 的话,则该部分只有触发的情况下才会参与发送。如果没有设置③触发 ID 的话(即40000000),这个发送 ID 为正常需要发送的帧 ID。
⑥帧格式/帧类型标识:0=标准数据帧,1=标准远程帧,2=扩展数据帧,3=扩展远程帧。
⑦数据长度:当数据少于8个字节,把数据填写好以后,后面用00补全数据至8位。
⑧帧数据:各个字节中间要有空格。
⑨发送次数:0表示无限次发送。
例如:
10,1,40000000,0000,144,0,8,01 02 03 04 05 06 07 08,100,500
    此条数据的功能是:上电等待 10ms,初始化 CAN1 通道收发数据,不设置触发,不替换ID和数据,发送ID 144,标准帧,数据长度8位,发送数据01 02…08,发送次数100次,每次发送时间间隔 500ms。
10,3,11111111,0020,123,0,8,01 02 03 04 05 06 07 08,1,500
    此条数据的功能是:上电等待 10ms,初始化为 CAN1 收到数据后往 CAN2转发,触发 ID11111111 即收到以此 ID 开头的数据才转发,替换掩码0020替换第三个字节的数据为00(此段为十六进制数据,转换为二进制0000 0000,0010 0000其中逗号前边两位为帧 ID 和长度,逗号后边八位为帧数据,0表示不换、1表示换,设置成替换的将会变成00),发送 ID 123如没有设置 ID 替换则此位无意义,标准帧如第三位设置触发了则此位无意义触发数据与原数据帧格式相同,发送数据如已设置触发则此位无意义,发送次数1次,间隔 500ms。
下图是掩码举例:
10,3,00000222,0000,123,0,8,01 02 03 04 05 06 07 08,1,500
    此条数据的功能是:上电等待 10ms,初始化为 CAN1 收到数据后往 CAN2转发,触发 ID 00000222即收到以此 ID 开头的数据才转发,替换掩码0000所有数据均不替换,发送 ID 123如没有设置 ID 替换则此位无意义,标准帧如第三位设置触发了则此位无意义触发数据与原数据帧格式相同,发送数据没有设置替换则此位无意义,发送次数1次,间隔 500ms。
    此条数据可实现 CAN1 所有以00000222帧 ID 开头的数据都将原封不动的转发到 CAN2,类似单方向中继。

5总线诊断功能

    使用 GCANTools 软件,用户可通过软件右下角的状态,读出总线是否正常。
典型举例:

5.1主动错误或被动错误:

    说明波特率设置不正确接线有误总线空载总线无响应

5.2全是绿灯却没有数据:

    说明总线空载,无数据可接收。

6汽车电子解析 OBD II 界面(ⅡC系列暂不支持)

    用户可以使用 GCANTools 软件的汽车信号解析功能。使用该设备接入汽车OBD 接口即可将汽车内部部分传感器的实际数值解析出来,信号解析功能仅支持家用汽油车 ISO15765 协议。车速、转速、水温可通过软件仪表盘显示。                                         
    目前该功能仅支持 CAN1 通道。用户可通过此界面直观的看到汽车当前实时车速、转速和油量的具体数值,便于用户校对汽车仪表盘数值是否准确。
    GCANTools 软件还可以读取、解析、清除汽车的故障码,解析 ISO15765 协议中规定的汽车传感器数据,包括:发动机转速、冷却液温度、车辆速度、电压、进气歧管压力、进气温度、空气流速、节气门位置、氧传感器电压、燃油压力等。并且以上这些数据的数值变化可以实时保存在电脑中。
    使用时,请首先点选 11Bit 按钮,勾选“循环获取实时数据”。若此时 USBCAN分析仪连接到汽车动力总线上,则将返回车速、转速、水温等参数。若此时无数据,可切换至 29Bit 重新尝试。若两种模式皆无反馈,请检查通信波特率及接线。大多数汽车动力总线波特率为 500Kbps。
PID 手动获取功能:
您可通过输入 PID 的值来手动获取车辆的各种参数。请注意,需要首先选取正确的发送命令类型,即 11Bit 或 29Bit。详细的 PID 值(十进制)如下表所示。
PID数据头最小值最大值单位
01当前故障码数量0127
04计算负荷值0100%
05发动机冷却液温度-40215
06短时燃油修正(气缸列1和3)-10099.22%
07长期燃油修正(气缸列1和3)-10099.22%
08短时燃油修正(气缸列2和4) -10099.22%
09长期燃油修正(气缸列2和4) -10099.22%
010燃油压力计量0765kPa
011进气歧管绝对压力0255kPa
012发动机转速09999rpm
013车速0255km/h
014第一缸点火正时提前角(不包括机械提前)-6463.5°
015进气温度-40215
016空气流量传感器的空气流量0655.35g/s
017绝对节气门位置0100%
031自发动机起动的时间065535s
033在MIL激活状态下行驶的里程065535km
034相对于歧管真空度的油轨压力05177.265kPa
035相对于大气压力的油轨压力0655350kPa
044EGR指令开度0100%
045EGR开度误差 (实际开度-指令开度)/指令开度-10099.22%
046蒸发冲洗控制指令0100%
047燃油液位输入 0100%
048自故障码被清除之后经历的暖机循环个数0255N/A
049自故障码被清除之后的行驶里程065535km
050蒸发系统的蒸气压力-81928192Pa
051大气压0255kPa
060催化器温度 B1S1-406513.5
061催化器温度 B2S1 -406513.5
062催化器温度 B1S2 -406513.5
063催化器温度 B2S2 -406513.5
066控制模块电压065.535V
067绝对负荷值025700%
068等效比指令02N/A
069相对节气门位置 0100%
070环境空气温度-40215
071绝对节气门位置B0100%
072绝对节气门位置C 0100%
073加速踏板位置D0100%
074加速踏板位置E0100%
075加速踏板位置F0100%
076节气门执行器控制指令 0100%
077MIL处于激活状态下的发动机运转时间065535min
078自故障码清除之后的时间065535min
实时保存TXT文件功能:
    用户可以通过此功能直观的看出汽车内部部分传感器的具体数值并基于这些数据诊断汽车各传感器状态是否正常。用户还可直观的比较某些传感器数值的变化规律和多种传感器数值之间进行比较。

7 CANopen主站功能说明(ⅡC系列暂不支持)

    切换到GCANTools软件的“CANopen”选项卡可以进入CANopen主站页面,用户可以在左侧点击“查找从站”扫描当前CAN总线上的所有CANopen从站节点,也可使用手动输入从站节点号的方式,手动添加CANopen从站。扫描到或添加好的从站节点会在下方显示,用户可以双击指定的节点号以激活与从站通信的界面。
    GCANTools 软件的 CANopen 可将USBCAN 设备变成一个CANopen 主站卡接入 CANopen 网络中,使用电脑搭配 USBCAN 即可完成对CANopen 从站控制、管理、配置等应用。GCANTools 软件可完成多种常用CANopen 主站功能,如 NMT(网络管理)、SYNC(同步协议)、EMERGENCY(紧急报文)、PDO(过程数据对象)、SDO(服务数据对象)、NODE GUARDING(节点保护)。
    关于 CANopen 协议的应用层描述、设备子协议及接口规范等内容,您还可参阅由[德]Holger Zeltwanger 著,周立功等译,由北京航空航天大学出版社出版的《现场总线 CANopen 设计与应用》一书。
    下表列出了 CANopen 常见报文类型所对应的功能码及帧 ID 范围。

7.1 NMT 命令

    NMT 命令(Network Management)提供网络管理(如初始化、启动和停止节点,侦测失效节点)服务。这种服务是采用主从通讯模式(所以只有一个 NMT主节点)来实现的。
    用户可以使用 NMT 命令更改从站节点的运行状态。
      Start remote node——设置节点进入操作状态
      Stop remote node——设置节点进入停止状态
      Enter pre-operational state——设置节点进入预操作状态
      Reset node——设置节点复位
      Reset communication——设置节点复位通信

7.2 SYNC 报文

    SYNC 是主站发出的同步报文,所有设置了同步 PDO 的从站根据 SYNC 报文与主站进行通信。
    用户可通过 GCANTools 软件循环发送 SYNC 报文,所有的同步 PDO 会根据 SYNC 报文发送。

7.3 EMERGENCY 报文

    应急指示报文由设备内部出现的致命错误触发,由相关应用设备以最高优先级发送到其它设备。适用于中断类型的错误报警信号。
    GCANTools 软件可接收到从站节点发出的 EMERGENCY 报文,该报文由出现紧急状态的从节点发出,GCANTools 软件的 CANopen 主站功能可接收并处理此紧急报文。

7.4 PDO

    CANopen 节点之间使用 PDO 进行数据传送,主要用于传输实时数据。
    过程数据对象(PDO),全称为 Process data object。它与 SDO 的通信区别在于,PDO 属于过程数据,单向传输,无需接收节点回应 CAN 报文来进行确认,属于“生产消费”模型。
   GCANTools 软件默认有4对发送和接收 PDO,即 TPDO/RPDO。

7.5 SDO

    CANopen 主站模块的 SDO 功能分为发送 SDO 和接收 SDO,用于读写对象字典。SDO 为服务数据对象,英文全称 Service data object,有指定被接收节点的地址(Node ID),并且需要指定的接收节点回应 CAN 报文来确认已经接收,如果超时没有确认,则发送节点将会重新发送原报文。这种通讯方式属于常见的“服
务器客户端”的通信模型,即我们常说的轮询式。
    GCANTools 软件中的 SDO 功能,可通过编辑索引、子索引的方式与从站进行信息交互,实现了对对象字典中条目的读写。
索引和对象(OD)表:

7.6 NODE GUARDING

    GCANTools 软件中的节点保护(NODE GUARDING)功能有两种实现方式——主站主动发送命令来询问从站节点的状态(Node Guarding)、从站节点以心跳的方式周期传送它的状态(Heartbeat)。
    GCANTools 软件还可通过编辑自定义消息手动模拟 CANopen 数据,用户可直接通过编写功能码、从站 node ID、数据的方式直接向 CANopen 从站发送数据。
功能码对应功能如下表所示:
----配置 PDO 0x1800+n
----它的 COB-ID 是 0x387
----该 PDO 始终触发传输
----它必须包含数据:data X(2bytes),data Y(4bytes),
按下面的顺序
  --data X 定义在索引 0x6000,子索引 03
  --data Y 定义在索引 0x2010,子索引 21
  1-- 索引 1800+n,子索引 01:写 COBID(4bytes)
  2-- 索引 1800+n,子索引 02:写传输字节《t》(1byte)
    t=1to 0xF0:PDO 在每接到《t》个 SYNC 后被传输
    t=FD:在接收到 PDO 请求(rtr=1)后传输
    t=FF:根据事件进行传输,节点自发发送 PDO
  3-- 索引 1A00+n:定义第 n 个数据的映射
    子索引 0:写嵌入到 PDO 中的数据个数(1byte),本例是,写入《2》
    子索引 1:定义在哪里寻找嵌入的第一个数据和大小(8bytes)
  格式是:index(2 bytes) – subindex(1 byte) – size in bits(1 byte)
  本例,写入《60000310》
    子索引 2:定义在哪里寻找嵌入的第二个数据和大小(8bytes)
  本例,写入《20102120》
    配置节点 5 的 PDO 1802 在每 3 个 SYNC 传输,发送的 SDO(s)应为 
605 23 02 18 01 00 00 87 03
605 2F 02 18 02 03 00 00 00
605 2F 02 1A 00 02 00 00 00
605 23 02 1A 01 10 03 00 60
605 23 02 1A 02 20 21 10 20

7.7 控制伺服驱动

    该功能仅支持符合 CANopen402 标准的伺服电机设备,使用该功能时请提前确认。
    现阶段仅开放“设置速度模式”供您对伺服电机设备进行简单控制。连接伺服电机设备的 CAN 总线后,依次点击“查找从站”—“Start”—“设置速度模式”—“RUN”,即可将伺服电机驱动。

8曲线 Curver 功能说明

    数据数值变化也可通过曲线实时显示其变化轨迹,如下图所示。用户最多可选择四个变量在同一界面同时显示。
    用户可以通过曲线功能选择最多四个您所需要的变量,并通过观察曲线的方式实时了解每个数据的变化,并且还可直观的比较多个数值之间的相对变化,可用于调整发动机怠速时转速、扭矩等。
    在使用曲线功能时请注意,将变量设置好后再接收数据,数据接收时新建的变量无法在曲线中显示。
    点击“添加变量”“编辑变量”即可添加和编辑变量,这些变量可以对接收的 CAN 总线的原始数据进行简单的数学运算,并在以曲线的方式显示出来。可以添加多组变量,变量名称可包含字母,数字,汉字,空格和下划线,方便识别。
    曲线功能中可提供的特殊运算如下表所示,请严格按照运算形式书写
    “添加数据源”就是将收到的 CAN 总线原始数据中某一帧的某一字节的数据作为数据源添加到变量计算定义中,添加时先点击“添加数据源”,然后依次填充“CAN ID”、“标准帧(扩展帧)”、“数据”等信息,点击确定,会在“变量计算定义”中生成一条相应的语句,该语句也可自行编写,编写时请遵循该格式。
    在曲线界面中,①功能是切换到上一条曲线,②功能是切换到下一条曲线;③功能是将当前颜色曲线坐标轴上移,④功能是将当前颜色曲线坐标轴下移。

9智能解码功能说明

    智能解码功能现仅支持对CAN1通道特定帧ID的帧数据变化频率的显示,颜色随着变化频率的大小改变,变化越快,颜色越深,可以调整为十六、十、二进制显示。如需数据滤波,点击“Filter”设置滤波相关参数。
    智能解码增加数据滤波功能,而如果您想要使用该功能,需要在 CAN1界面内将相关的滤波设置完成。
    使用时请勾选“使能接收数据 CAN1”

10 DBC Send 功能说明

    点击工具栏的 DBC Send,该标签页用于发送 DBC 消息,支持每条消息独立发送,互不干扰。发送界面如图所示,左侧表格为 DBC 消息选择列表,右侧上方表格为准备发送的消息列表,右侧下方表格为当前选中消息的信号列表。
加载 DBC:
   加载 DBC 协议:先选择 DBC 协议,再通过点击“加载 DBC”按钮选择 DBC文件;
    左侧 DBC 消息选择列表:显示当前加载的 DBC 文件中的所有消息,单选后点击【+】按钮至右侧上方 DBC 消息发送列表中。
DBC 消息编辑:
    右侧上方 DBC 消息发送列表:显示用于发送的消息列表,可双击编辑发送次数、发送间隔;
    右侧下方消息信号列表:显示 DBC 消息发送列表当前选中消息的所有信号,可双击编辑信号实际值,编辑完成后该消息的数据域将同步更改;
    添加:点击【+】按钮从 DBC 消息选择列表中添加消息至发送列表;
    移除:点击【-】按钮从 DBC 消息发送列表中移除当前选中消息;
    清空:移除 DBC 消息发送列表中的所有消息;
    上移:调整消息顺序,将 DBC 消息发送列表中当前选中高亮的消息向上移动一个位置;
    下移:调整消息顺序,将 DBC 消息发送列表中当前选中高亮的消息向下移动一个位置。
DBC 发送:
    通道选择:在左上角“通道”下拉框中选中用于 DBC 消息发送的设备通道;
    列表发送:开始发送列表中的全部消息;
    发送:开始发送当前高亮选中消息。

11DBC Rec 功能说明

    点击工具栏的DBC Rec,该标签页展示了原始报文按照DBC规范解析后的结果,如图所示。
  通道选择:下拉选要查看数据的通道;
   DBC协议:DBC解析基于的协议;
    J1939:匹配帧ID的PGN部分,PGN请参考J1939规范,DBC消息ID的PGN与要解析的报文ID的PGN相等即可匹配成功;
    普通:DBC消息ID与要解析的报文ID相等即可匹配成功;
    加载DBC:点击【加载DBC】选择DBC文件;
    三角号:点击可查看当前报文消息的所有信号;
    清空:清空列表;
    暂停:暂停接收报文。

附录:CAN 报文种类及结构

    CAN 使用的是两条差分信号线,其简洁的物理层决定了CAN 协议的复杂性。CAN协议对数据、操作命令(如读/写)以及同步信号进行打包,打包后的这些内容被称为报文。

概念说明

    CAN:控制器局域网(Controller Area Network)。
    CAN 物理层:负责 CAN 总线设备间的信号传送。包括 CAN 收发器、双绞线、接插件、终端电阻等。
    CAN 数据链路层:主要包含5种不同类型的 CAN 帧,分别是数据帧、远程帧、错误帧、过载帧和帧间隔。
    CAN 数据帧:CAN 总线的标准数据报文。一个数据帧主要包括一个11位或29位的标识符(COB-ID)和一个0到8字节的数据域。
   CAN 错误帧:用来指示 CAN 总线错误的特殊报文。
    CAN 远程帧:CAN 请求报文,是一种请求数据报文帧而没有数据域的特殊帧。
    RTR(Remote Transmit Request):CAN 报文中的一位,用来标识报文是数据帧还是远程帧。
   跟踪:接收到 CAN 报文的记录。
    触发事件:引起控制面板状态从后置触发到前置触发的已定义的事件。

报文的种类

    CAN总线在原始数据段的前面加上传输起始标签、帧识别标签和控制标签,在数据的尾段加上CRC 校验标签、应答标签和传输结束标签,把这些内容按特定的格式打包好,就可以用一个通道表达各种信号了,各种各样的标签起到了协同传输的作用。当整个数据包被传输到其它设备时,只要这些设备按格式去解读,就能还原出原始数据,这样的报文就被称为CAN的“数据帧”。为了更有效地控制通讯,CAN一共规定了5种类型的帧,它们的类型及用途说明如下表所示。

数据帧的结构

    数据帧是在CAN通讯中最主要、最复杂的报文,下图是它的结构。
    一条完整的CAN数据帧以1个显性位(逻辑0)开始,以7个连续的隐性位(逻辑1)结束,在它们之间分别有仲裁段、控制段、数据段、CRC 段和ACK段。
    SOF段(Start Of Frame),译为帧起始。帧起始信号只有一个数据位,是一个显性电平,它用于通知各个节点将有数据传输,其它节点通过帧起始信号的电平跳变沿来进行硬同步。
    仲裁段的内容主要为本数据帧的ID信息(标识符)。当同时有两个报文被发送时,总线会根据仲裁段的内容决定哪个数据包能被传输。数据帧具有标准格式和扩展格式两种,区别就在于ID信息的长度,标准格式的ID为11位,扩展格式的ID为29位。在CAN协议中,帧ID起着重要的作用,它决定着数据帧发送的优先级,也决定着其它节点是否会接收这个数据帧。因为它这样的优先级分配原则,使得CAN的扩展性大大加强,在总线上增加或减少节点并不影响其它设备。
    若两个节点同时竞争CAN总线的占有权,当它们发送报文时,若首先出现隐性电平,则会失去对总线的占有权,进入接收状态。在开始阶段,两个设备发送的电平一样,所以它们一直继续发送数据。到了图中箭头所指的时序处,节点单元1发送的为隐性电平(逻辑1),而此时节点单元2发送的为显性电平(逻辑0),由于CAN总线的“线与”特性,节点2竞争总线成功,这个报文得以被继续发送出去。因此,CAN总线的帧ID优先级特性是以0为优先,数值越小的帧ID优先级越高。
    仲裁段帧ID的优先级也影响着接收设备对报文的反应。因为在CAN总线上数据是以广播的形式发送的,所有连接在CAN总线的节点都会收到所有其它节点发出的有效数据,因而CAN控制器具有根据帧ID过滤报文的功能,它可以控制只接收某些特定ID的报文。
   仲裁段除了报文帧ID外,还有RTR、IDE 和SRR位。RTR位(Remote Transmission Request Bit),译作远程传输请求位,它是用于区分数据帧和远程帧的,当它是显性电平(逻辑0)时表示数据帧,隐性电平(逻辑1)时表示远程帧。IDE 位(Identifier Extension Bit),译作标识符扩展位,它是用于区分标准格式与扩展格式的,当它为显性电平(逻辑0)时表示标准格式,隐性电平(逻辑1)时表示扩展格式。SRR位(Substitute Remote Request Bit)只存在于扩展格式,它用于替代标准格式中的RTR位。由于扩展帧中的SRR位为隐性位,RTR在数据帧为显性位,所以在两个ID相同的标准格式报文与扩展格式报文中,标准格式的优先级较高,而数据帧类型的优先级又高于远程帧。
    在控制段中,r1和r0为保留位,默认设置为显性位。它最主要的是DLC段(Data Length Code),译为数据长度码,它由4个数据位组成,用于表示本报文中的数据段含有多少个字节,DLC 段表示的数字为0~8。
    数据段为数据帧的核心内容,它是节点要发送的原始信息,由0~8个字节组成。为了保证报文的正确传输,CAN 的报文在数据段的后面包含了一段15位的CRC 校验码,一旦接收节点算出的CRC码跟接收到的CRC码不同,则它会向发送节点反馈出错信息,利用错误帧请求它重新发送。在CRC 校验码之后,有一个CRC 界定符,它为隐性位,主要作用是把CRC 校验码与后面的ACK 段间隔起来。
   ACK 段包括一个ACK位和ACK界定符位。在ACK槽位中,发送节点发送的是隐性位,而接收节点则在这一位中发送显性位以示应答。在ACK位和帧结束之间则由ACK界定符间隔开。
    EOF 段(End Of Frame),译为帧结束,帧结束段由发送节点发送的7个隐性位表示结束。
下图是其它报文的结构。
2023-10-19
4 2