Chinaunix首页 | 论坛 | 博客
  • 博客访问: 292647
  • 博文数量: 38
  • 博客积分: 3010
  • 博客等级: 中校
  • 技术积分: 392
  • 用 户 组: 普通用户
  • 注册时间: 2007-01-22 19:12
文章分类

全部博文(38)

文章存档

2009年(1)

2008年(4)

2007年(33)

我的朋友

分类: 系统运维

2007-01-31 18:18:30

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节拍周期,以便每个周期留一定时间来进行其他类型的网络通讯。
阅读(5040) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2008-09-02 10:30:02

非常感谢版主,是我看过写得最好的CANopen博客

chinaunix网友2008-05-29 12:18:14

发送格式是: "80H,00H"么?