canopen总线初始化配置始末

本文详细解释了CANopen协议中PDO(过程数据对象)的配置,包括COB_ID的使用、同步报文的发送规则、同步周期、事件定时器以及映射关系的设定,展示了如何通过实际配置确保数据的有效交换和总线负载管理。
摘要由CSDN通过智能技术生成

00h:入口数目->sub有几个;

01h:COB_ID

 02h:对于TDO而言,
为0时表示,映射数据变化并且收到一个同步帧,才会发送TPDO。
为1~240时表示,收到相应个数的同步帧时就发送PDO,和映射数据是否变化没有关系。
为254、255时表示,映射数据改变或事件计时器到,就会发送PDO。 我这里测试为254或者255的情况下,如果映射数据改变的时候,不会发送PDO,只有事件计时器到才会发送PDO
对于RPDO而言
为0~240时表示,只要收到一个同步帧,则将RPDO的数据更新到应用。
为254、255时表示,将接收到的数据直接更新到应用。

03h:

Inhibit time 生产禁止约束时间(1/10ms):约束 PDO 发送的最小间隔,避免导致总线负载剧烈增加,比如数字量输入过快,导致状态改变发送的 TPDO 频繁发送,总线负载加大,所以需要一个约束时间来进行“滤波”,这个时间单位为 0.1ms;

05h:

Event timer 事件定时器触发的时间(单位 ms):定时发送的 PDO,它的定时时间,如果这个时间为 0,则这个 PDO 为事件改变发送。

06h:

SYNC start value 同步起始值:同步传输的 PDO,收到诺干个同步包后,才进行发送,这个同步起始值就是同步包数量。比如设置为 2,即收到 2 个同步包后才进行发送。

同步报文:

080        DATA    STANDARD    0      

PDO映射关系:

1800配置PDO发送关系:

1A00配置PDO映射字典指定地址;

最终PDO按照1800配置发送指定地址的数据;

canopen发送初始化:

针对ID===2;

报文采样:如下所示

000        DATA    STANDARD    2      82 00  --->停止所有节点

602        DATA    STANDARD    8      40 00 10 00 00 00 00 00 --->读取:1000 Device type 设备类型
582        DATA    STANDARD    8      43 00 10 00 92 01 06 00

602        DATA    STANDARD    8      23 06 10 00 4C 1D 00 00--------------->ID:1006 -->sub:00--->数据:1D4C 0000   --->Communication cycle period 同步通信循环周期(单位 us)

(*配置TPDO——COB_ID*)
602        DATA    STANDARD    8      23 00 18 01 82 01 00 00--------------->ID:1800 -->sub:01--->数据:0182

602        DATA    STANDARD    8      23 01 18 01 82 02 00 00 --------------->ID:1801 -->sub:01--->数据:0282

602        DATA    STANDARD    8      23 02 18 01 82 03 00 00 --------------->ID:1802 -->sub:01--->数据:0382

602        DATA    STANDARD    8      23 02 18 01 82 04 00 00 --------------->ID:1803 -->sub:01--->数据:0482
(*配置RPDO——COB_ID*)
602        DATA    STANDARD    8      23 00 14 01 02 02 00 00 --------------->ID:1400 -->sub:01--->数据:0202

602        DATA    STANDARD    8      23 01 14 01 02 02 00 00 --------------->ID:1401 -->sub:01--->数据:0302

(*配置同步类型同步周期0x14*)
602        DATA    STANDARD    8      2F 00 18 02 14 00 00 00 --------------->ID:1800 -->sub:02--->数据:14

602        DATA    STANDARD    8      2F 01 18 02 14 00 00 00 --------------->ID:1801 -->sub:02--->数据:14

602        DATA    STANDARD    8      2F 02 18 02 14 00 00 00 --------------->ID:1802 -->sub:02--->数据:14

602        DATA    STANDARD    8      2F 03 18 02 14 00 00 00 --------------->ID:1803 -->sub:02--->数据:14
(*配置异步类型*)
602        DATA    STANDARD    8      2F 00 14 02 FF 00 00 00 --------------->ID:1400 -->sub:02--->数据:FF

602        DATA    STANDARD    8      2F 01 14 02 FF 00 00 00 --------------->ID:1401 -->sub:02--->数据:FF

602        DATA    STANDARD    8      2B 17 10 00 64 00 00 00 --------------->ID:1017 -->sub:00--->数据:0064

602        DATA    STANDARD    8      23 16 10 01 2C 01 7F 00 --------------->ID:1016 -->sub:01--->数据:012C 007F

602        DATA    STANDARD    8      2F 00 1A 00 00 00 00 00 --------------->ID:1A00 -->sub:00--->数据:00

602        DATA    STANDARD    8      23 00 1A 01 20 00 64 60 --------------->ID:1A00 -->sub:01--->数据:0020 6064

602        DATA    STANDARD    8      23 00 1A 02 20 00 69 60 --------------->ID:1A00 -->sub:02--->数据:0020 6069

602        DATA    STANDARD    8      2F 00 1A 00 02 00 00 00 --------------->ID:1A00 -->sub:00--->数据:02
(*配置1A01*)
602        DATA    STANDARD    8      2F 01 1A 00 00 00 00 00 
602        DATA    STANDARD    8      23 01 1A 01 10 00 1C 22
602        DATA    STANDARD    8      23 01 1A 02 10 00 41 60 
602        DATA    STANDARD    8      2F 01 1A 00 02 00 00 00
(*配置1A02*)
602        DATA    STANDARD    8      2F 02 1A 00 00 00 00 00 
602        DATA    STANDARD    8      23 02 1A 01 08 00 61 60
602        DATA    STANDARD    8      23 02 1A 02 20 00 83 21
602        DATA    STANDARD    8      2F 02 1A 00 02 00 00 00 
(*配置1A03*)
602        DATA    STANDARD    8      2F 03 1A 00 00 00 00 00
602        DATA    STANDARD    8      23 03 1A 01 10 00 01 22 
602        DATA    STANDARD    8      2F 03 1A 00 01 00 00 00
(*配置1600*)
602        DATA    STANDARD    8      2F 00 16 00 00 00 00 00
602        DATA    STANDARD    8      23 00 16 01 08 00 60 60
602        DATA    STANDARD    8      23 00 16 02 10 00 40 60 
602        DATA    STANDARD    8      2F 00 16 00 02 00 00 00 
(*配置1601*)
602        DATA    STANDARD    8      2F 01 16 00 00 00 00 00 
602        DATA    STANDARD    8      23 01 16 01 20 00 FF 60 
602        DATA    STANDARD    8      23 01 16 02 20 00 7A 60
602        DATA    STANDARD    8      2F 01 16 00 02 00 00 00 

(*******************************************************中间其他PDO配置均省略**********************************)

000        DATA    STANDARD    2      01 02 --------------->启动节点:02

结合实际配置:

实际配置:

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值