您的位置:控制工程论坛网论坛 » 现场总线 » 现场总线通讯出现故障的排除方法

zhanghe

zhanghe   |   当前状态:在线

总积分:3518  2024年可用积分:0

注册时间: 2010-03-22

最后登录时间: 2023-08-14

空间 发短消息加为好友

现场总线通讯出现故障的排除方法

zhanghe  发表于 2016/11/15 13:44:50      1873 查看 3 回复  [上一主题]  [下一主题]

手机阅读

  现场总线作为工业自动化系统中最后一段通讯的桥梁,越来越多的传感器和执行机构都集成了CAN总线之类的通讯接口,但其固化的几个通讯数据格式,面对当前众多复杂的大系统,时常会给设计者带来底层数据冲突的困扰,如何完美解决这一难题,至关重要。

  一、问题描述

  大家都知道,一个CAN网络中不同节点发出的报文的ID也应是不同的,否则当ID冲突的两个节点同时上传数据时会产生错误。但是我们时常会发现某些CAN接口的传感器或者控制器的报文ID是固定的,不具备硬件地址区分。以下图为例,某电机控制器有三条标准帧功能报文,ID分别为0x0001、0x0002、0x0003。那么如何在同一个CAN网络中使用多个同样的电机控制器既可以防止ID冲突又可以识别硬件地址呢?

  二、解决方案

  针对这一问题,可以将致远电子的CAN网桥CANbridge+加装在各个设备与总线之间,利用其ID映射功能,将每台设备的功能ID映射为一个带地址字段的新ID。这样既可以防止设备上传的报文产生ID冲突错误,又可以通过添加的地址字段区分不同的设备。如下图所示,将标准帧ID的高8位定义为地址字段,这样就可以通过ID区分不同设备的上行下行报文。

  

  图 1 相同CANID设备组网

  

  图 2 使用CAN网桥实现相同CANID设备组网

 

  三、设置流程

  1、 波特率设置

  使用通讯线连接CANbridge+和PC机,打开CANCfg软件,在基本信息选项卡里点击CAN1、CAN2波特率的下拉菜单,均选择所接CAN设备的对应波特率。

  

  图 3 CANbridge+的波特率设置

 

  2、 帧映射设置

  在帧映射选项卡里点击使能帧映射,假定网桥的CAN1端口连接CAN设备,网桥的CAN2端口连接CAN网络。添加如下图所示的映射关系,即可将1号设备的所有功能ID关联上硬件地址。同样对其他设备连接的CAN网桥做类似的设置,即可实现相同CANID设备的组网。

  

  图 4 CANbridge+的帧映射设置

1楼 0 0 回复
  • a1123

    a1123   |   当前状态:在线

    总积分:5620  2024年可用积分:0

    注册时间: 2013-06-20

    最后登录时间: 2023-08-11

    空间 发短消息加为好友

    a1123   发表于 2016/11/17 20:51:18

    楼主好牛啊,,,
    2楼 回复本楼

    引用 a1123 2016/11/17 20:51:18 发表于2楼的内容

  • mhz555555

    mhz555555   |   当前状态:离线

    总积分:0  2024年可用积分:0

    注册时间: 0001-01-01

    最后登录时间: 0001-01-01

    空间 发短消息加为好友

    mhz555555   发表于 2016/11/18 16:39:45

    感谢楼主的分享,学习了。

    3楼 回复本楼

    引用 mhz555555 2016/11/18 16:39:45 发表于3楼的内容

  • ababab

    ababab   |   当前状态:在线

    总积分:5826  2024年可用积分:0

    注册时间: 2011-05-06

    最后登录时间: 2023-08-16

    空间 发短消息加为好友

    ababab   发表于 2016/11/19 19:03:55

    太好了,这正是我需要的。

    4楼 回复本楼

    引用 ababab 2016/11/19 19:03:55 发表于4楼的内容

总共 , 当前 /