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

如果 FrameAtTaskStart
属性设置为 TRUE
,那么时间安排如下:

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

当 每项任务的消息 的设置中启用了选项 EtherCAT 主,额外的电报会传输到每项任务和所使用的输入或输出所使用的设备。在慢速任务中使用的信道的传输频率也较低。因此,可以减少总线负载。
