IgH详解十、EtherCAT DC(3)IgH实现

IgH DC计算

IgH在主站启动后,等待从站状态机扫描完从站后,就开始计算传输延时。

    ec_master_attach_slave_configs  //主站绑定从站配置信息

        通过前面的分析我们知道,需要先选择一个从站作为参考时钟,根据总线的拓扑结构来计算各从站的传输延时。

ec_master_find_dc_ref_clock    // 没有指定参考从站就把第一个带DC的从站作为参考时钟

同时初始化了时钟漂移补偿用的数据报文

ec_datagram_fpwr(&master->ref_sync_datagram, ref ? ref->station_address : 0xffff, 0x0910, 4); //把主站时间写到从站

 ec_datagram_frmw(&master->sync_datagram, ref ? ref->station_address : 0xffff, 0x0910, 4);  //漂移补偿

 ec_datagram_fprd(&master->sync64_datagram, ref ? ref->station_address : 0xffff, 0x0910, 8); //读取从站时间

        计算拓扑结构就是计算出该从站上一个从站接的是谁,下一个从站接的谁,这样就能计算出传输延时。

        计算出每个从站的传输延迟,可以看到IgH没有计算t_diff,这部分需要漂移补偿来补偿

        计算每个从站相对于参考时钟的传输延时

        当启动主站进入配置流程后,计算各从站的系统时间偏移

        可以看到IgH根据主站时间来依次计算从站时间偏移,这里可能会因为主站的抖动对偏移计算产生一些偏差,最好改成参考从站的时间来计算偏移,从站的转发抖动非常的小

写入时间偏移和传输延时,还需要用户周期任务周期的广播参考从站时钟

从站需要根据当前状态进行配置,跃迁到op状态

从站启动DC流程

配置从站工作周期

        判断当前DC时间是否稳定,等待时间5000ms,如果5S后还不稳定,就继续进行下面工作,不等了,当使用主站作为参考时钟,经常会看到打印

Slave did not sync after 5000 ms

就表明从站同步比较慢

设置从站周期信号触发时间,可以看到启动时间加上了shift_time

        Shift_time保证了主站发送报文时间和从站触发sync信号不在同一时间,从站同一时间不能处理两件事情,就可能会导致报文没有接收。

从图中可以看到,Shift Time和从站的处理周期数据的时间有关系。

正确的Shift Time 不是唯一的, 它可以在主站周期的整个区间里的进行选择。

不能随便设置,周期越短,Shift Time设置的就要越精确。

  • 6
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 17
    评论
《基于EtherCAT实现控制LED开发例程使用手册》 这份使用手册将详细介绍如何使用基于IGH EtherCAT技术来进行LED控制开发的例程。EtherCAT是一种高性能实时通信协议,经常被用于工业自动化领域。IGH EtherCAT是一个开源的EtherCAT主站实现,提供了丰富的功能和易用性。 本手册首先会介绍LED控制开发的基本原理和流程。然后,将引导用户安装和配置所需的软件和硬件环境,包括使用的开发板和组件。 接下来,手册将详细说明如何使用IGH EtherCAT来设置和配置EtherCAT主站,并将其连接到所需的从站设备。这将包括设置EtherCAT网络和拓扑结构,以及配置从站的参数和功能。 然后,手册将介绍如何编写控制LED的开发例程。用户将学习如何使用IGH EtherCAT提供的API来实现基本的LED控制功能,如开关和亮度调节。这将涉及到编写控制逻辑和使用适当的函数和指令。 接下来,手册将提供示例代码和代码说明,以便用户更好地理解和运用开发例程。用户可以根据自己的需求进行修改和扩展,以实现更复杂的LED控制功能。 最后,手册将包含其他有关LED控制开发的相关资源和参考资料,以帮助用户进一步深入学习和探索。 本手册将以简明易懂的语言和图示进行说明,并尽量避免使用过多的技术术语,以便初学者也能轻松上手。希望这份手册能够帮助用户顺利进行基于IGH EtherCAT的LED控制开发,并取得满意的结果。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值