西门子6SL3266-1AU00-0VA0
用户程序执行 在用户程序执行阶段,PLC总是按由上而下的顺序依次地扫描用户程序(梯形图)。在扫描每一条梯形图时,又总是先扫描梯形图左边的由各触点构成的控制线路,并按先左后右、先上后下的顺序对由触点构成的控制线路进行逻辑运算,然后根据逻辑运算的结果,刷新该逻辑线圈在RAM存储区中对应位的状态;或者刷新该输出线圈在I/O映象区中对应位的状态;或者确定是否要执行该梯形图所规定的特殊功能指令。
即,在用户程序执行中,只有输入点在I/O映象区内的状态和数据不会发生变化,而其他输出点和软设备在I/O映象区或RAM存储区内的状态和数据都有可能发生变化,而且排在上面的梯形图,其程序执行结果会对排在下面的凡是用到这些线圈或数据的梯形图起作用;相反,排在下面的梯形图,其被刷新的逻辑线圈的状态或数据只能到下一个扫描周期才能对排在其上面的程序起作用
怎样在 S7-400 的中断 OB 中使用或更新过程映像分区?说明
使用 S7-400 CPU模块时,组织块是操作系统和用户程序之间的接口。它们基于中断或事件被操作系统调用。
在访问过程映像区时,在CPU内,对于访问该过程映像区的OB,其过程映像区内的信号数据是*的。如果在错误或中断OB在调用过程中再通过过程映像区来访问输入或者输出时,同时属于该 OB 的过程映像区内的值始终有效。西门子CPU模块6ES7318-3EL01-0AB0
下表说明如何分配一个过程映像区给 OB 块:
序号 | 步骤 |
1 | 打开 STEP 7 项目的硬件组态,双击希望定义过程映像分区的模块。 |
2 | 在 "Addresses" 标签里从下拉列表中选择过程映像分区“PIP1"。
|
3 | 点击 OK 关闭对话框。然后分配此过程映像分区给一个 OB 。 |
4 | 打开 CPU 的属性 ,在 "Interrupts" 标签下分配此过程映像分区给一个组织块 ( 如 OB40 ) 。当这个 OB 被系统调用时,PIP1 映像分区将自动更新。
|
尽管 PIP 一次只能分配给一个 OB,但每一个 PIP 可以包含多个 I/O 地址或模块分配。已经分配给过程映像分区的输入和输出地址不再属于OB1 的输入和输出过程映像。对于 OB1 过程映像和所有其它过程映像分区,所有输入和输出地址只能被分配一次。
此外,还可以在程序的任意位置使用 SFC 26“UPDAT_PI"或 SFC 27“UPDAT_PO"更新过程映像区,之后该 PIP 可能不会被系统更新。
注意
一个 PIP 不会自动更新。更新仅在 SFC被调用或相关的 OB 启动/ 结束时执行。在示例中,如果 OB 40 被系统调用,此时相应的输入点会被读入。 这些当前值在 OB40 处理过程中作为输入使用.
时钟中断 OB 的过程映像分区不会被系统更新,尽管它们被分配给了 OB 块 (OB61-OB64)
西门子6SL3266-1AU00-0VA0