[EtherCAT]从输入从站读取数据后写入输出从站的延时测量

承接《EtherCAT|从输入从站读取数据写入输出从站的时序分析》,前文分析了产生延时的原因和估计了大致的延时范围,本文将具体测试延时数值。

本例基于以下设置:

  1. 只设置SM同步模式
  2. 参考《TwinCAT中创建PLC任务》创建PLC任务, 本次只需要设置"output2 := input1;", 即将从站1的输入赋值给从站2的输出。
  3. 设置PLC cycle ticks为2 ms,设置独立的输入刷新数据帧,发送输入数据帧时间较PLC任务提前Pre ticks: 1 ms(修改base time单位,可设置更小的时间间隔)
  4. 修改从站ECAT_IO程序,设置IO输入中断,在IO中断调用PDO_InputMapping()

  5. 主站站运行后,使用逻辑分析仪观测从站1的输入引脚和从站2的输出引脚,拨动从站1输入引脚的拨码开关进行测试(拨动拨码开关会产生一些机械抖动)。
    最小延时会大于Separate Input Update Pre ticks(1 ms), 最大延时会约为3 ms = 1 * PLC Task cycle time(2 ms) + Separate Input Update Pre tick(1 ms)

结论:符合时序分析

0
0

订阅

发表回复 0

Your email address will not be published. Required fields are marked *

captcha
Enter the characters shown in the image:
Reload

This CAPTCHA helps ensure that you are human. Please enter the requested characters.