公交车循环任务 –EtherCAT
开始时的行为
原则上,每个 IEC 任务使用的输入数据在任务开始时读取(
),并在任务结束时将输出数据写入 I/O 驱动程序 (
)。I/O驱动程序的实现对于I/O数据的额外传输至关重要。它决定了时间帧以及实际传输到相应总线系统的时间。
PLC 的总线循环任务可以在 PLC 设置中针对所有现场总线进行全局定义。但对于某些现场总线,您可以独立于全局设置进行更改。周期最短的任务将用作总线循环任务(设置:未指定在PLC设置)。此任务中消息通常会在总线上发送。
其他任务仅从内部缓冲区复制 I/O 数据,该缓冲区仅与总线周期任务中的物理硬件交换。
任务开始时的框架
如果FrameAtTaskStart属性设置为FALSE,则时间如下:

如果FrameAtTaskStart属性设置为TRUE,则时间如下:

从输入缓冲区读输入
IEC任务
将输出写入输出缓冲区
总线周期
输入缓冲区
输出缓冲区
将数据复制到总线/从总线复制数据
总线周期任务,优先级 1,1 毫秒
总线循环任务,优先级5
总线周期任务,优先级 10,被任务 5 中断
有关详细信息,请参阅以下内容:属性:“IoDrvEtherCAT.FrameAtTaskStart”
任务使用情况
这任务部署选项卡概述了所使用的 I/O 通道、设置的总线周期任务以及通道的使用情况。
警告
如果在各种任务中写入输出,则状态未定义,因为在每种情况下都可以覆盖它。
如果在不同任务中使用相同的输入,则输入可能会在任务处理过程中发生变化。当该任务被更高优先级的任务中断并导致过程映像被重新读取时,就会发生这种情况。
补救措施:在 IEC 任务开始时,将输入变量复制到变量,然后仅使用其余代码中的局部变量。
结论:在多个任务中使用相同的输入和输出没有任何意义,并且在某些情况下会导致意外的反应。
有关详细信息,请参阅以下内容:“任务配置”章
总线周期的行为EtherCAT
在复制 IEC 输入之前,将读取最后一个周期的待处理网络消息。

当每个任务的消息选项在设置中启用EtherCAT主站:根据任务和输入/输出,向所使用的设备发送额外的电报。慢速任务中使用的通道也会减少传输频率。因此,可以降低总线负载。
