在用户程序中访问输入(I)、输出(Q)地址信息时,通常不直接扫描数字量模块的端口,而是通过位于CPU系统存储器的一个存储区域对数字量模块进行访问,这个存储区域就是过程映像区,该过程映像区被分为两部分:过程映像输入区和过程映像输出区。
系统更新过程映像区的过程如图2-6所示。
图2-6中,OS为操作系统的一个内部任务,将过程映像输出区(PIQ)的数据输出到数字量输出模块,并将输入模块的信息读到过程映像输入区(PII),过程映像区更新完成后开始执行用户程序的调用,过程映像区被操作系统独立控制,自动更新。
采用过程映像区处理输入、输出信号有两点好处:
1)在CPU一个扫描周期中,过程映像区向用户程序提供一个始终一致的过程信号映像,如果在一个扫描周期中,输入模块上的信号状态发生变化,过程映像区中的信号状态保持不变,直到下一个CPU扫描周期过程映像区被更新,这样保证CPU在执行用户程序过程中数据的一致性。
2)由于过程映像区位于CPU的系统存储区中,访问速度比直接访问信号模块显著加快。(www.xing528.com)
S7-300系列PLC的过程映像区是固定的,128个字节输入和128个字节输出;S7-400系列PLC的过程映像区的大小可以在软件中设置。访问过程映像区外的地址,如S7-300系列PLC地址256,在地址区前加P。一些信号模块的信号不需要过程映像区的处理,如模拟量模块采样的温度信号,是一个连续变化的数值,在一个程序扫描周期的任意时刻处理都不会影响程序的运算结果,所以模拟量模块默认的地址区分配在过程映像区以外(也可以将地址配置在过程映像区内)。为了减小过程的响应时间,在用户程序中也可以不经过过程映像区直接访问某个I/O端口,端口扫描将在指令运行期间执行,由此可获得较快的响应时间,这样只需要在地址区前加P,例如在程序中可以一次或多次使用L PIB2或T PQW2指令替代L IB2或T QW2,使用P快速读写数字量I/O端口也称为立即读、立即写。直接访问I/O端口,允许最小的数据类型为字节,如果对一个位信号进行操作,需要使用指令转换。
图2-6 循环程序执行
注意:
在用户程序中/过多使用立即读、立即写操作也会影响CPU的程序扫描时间。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。