IO是在哪些(现场总线周期)任务中更新的


更新 IEC 数据:

在每个任务之前,读取用于每个 IEC 任务的输入数据,并将写入的输出传输到 I/O 驱动程序。

I/O 驱动程序中的实现对于 I/O 数据的进一步传输具有决定性作用,因此需要为实际传输到相应总线系统的时间提供保证。

总线循环任务

  • 可以为 PLC 的所有现场总线 (在 PLC 设置下)进行全局设置。
  • 可以独立于全局设置对某些现场总线进行更改。

默认情况下,总线循环任务是循环时间最短的任务。

因此如果没有定义总线循环任务,即未指定时,也使用此设置。

在此任务中,消息通常在总线上发送。

图1

此外,任务仅从内部缓冲区复制 I/O 数据,该缓冲区仅在总线周期任务中与真实硬件交换。

现场总线的总线循环任务(OLH 链接):

任务部署

要查看不同任务中使用的 I/O 通道和更新,PLC 中有“任务部署”窗口(OLH:选项卡“任务部署”

在该窗口中显示 I/O 通道、设置的总线循环任务和使用的通道。

在这里,还可以检测多个任务中输出的多次使用。

如果在多个任务中写入一个输出,则状态是未定义的,因为它可以在每种情况下被覆盖!

当在多个任务中使用相同的输入时,如果任务被优先级更高的任务中断并因此再次读入过程镜像,则在任务处理期间输入可能会发生变化!

补救措施:将输入变量复制到 IEC 任务开始时的变量中,然后在后续代码中仅使用局部变量。

因此,在多个任务中使用相同的输入和输出是没有意义的,并且在某些情况下会导致不可预见的状态!