Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2286558
  • 博文数量: 393
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 4177
  • 用 户 组: 普通用户
  • 注册时间: 2016-07-04 13:04
文章分类

全部博文(393)

文章存档

2020年(8)

2019年(24)

2018年(135)

2017年(158)

2016年(68)

我的朋友

分类: 嵌入式

2017-04-07 13:50:49

SYNC是CANopen管理各节点同步数据收发的一种方法,相当于网络节拍,基于同步的PDO按照这个网络节拍来执行实时数据的收发。SYNC属于生产/消费型通讯方式,网络中有且只有一个SYNC生产者,一般有多个消费者,其网络标识符优先级很高,一般设置为0x80,基本上除了NMT优先级最高。SYNC生产者按照固定频率发送SYNC报文,需要SYNC的节点(消费者)将其接收并计数,当计数值达到节点相应TPDO要求时,该TPDO映射的数据被发送(根据PDO传输类型也可能是映射数据更新),此过程中SYNC生产者提供网络节拍,各消费者以节拍周期的倍数执行数据传输功能。
在CANopen网络中应用SYNC要注意以下几点:
1. SYNC并不是主节点必须的功能,不一定要和NMT放在同一节点上,实际网络应用中可以在网络中找一个任务较少、实时性好的节点来作为SYNC生产者,SYNC消费者可以有多个,但是生产者同时只能有一个存在。
2. SYNC是不带数据的,以使报文尽可能短,目的是为了加快其传输,减少网络占用。
3. SYNC发出后,需要发送数据的PDO要在规定时间段内发送数据,这个时间段叫做时间窗口(对象1006H指定),要小于SYNC节拍周期,以便每个周期留一定时间来进行其他类型的网络通讯。
阅读(1262) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~