|
S7-1200 CPU 按照以下机制循环工作: - 将过程映像输出区中的输出值写入到物理输出
- 在用户程序执行前读取物理输入,并将输入值保存到过程映像输入区
- 执行用户程序,进行逻辑运算,并更新过程映像输出区中的输出值
只要CPU处于运行状态,上述步骤就周而复始地执行。在扫描期间会定期处理通讯请求,这可能会中断用户程序的执行。其中第三步执行完程序循环 OB 后执行自检诊断。而中断可能发生在扫描周期的任何阶段,会中断用户程序的执行,转而调用处理该中断事件的 OB。 上述三个步骤是 S7-1200 CPU 的软件处理过程,可以认为就是程序扫描时间。
实际上,S7-1200 对数字量的处理速度受到以下几个因素的限制: - 输入硬件延时(从输入信号状态改变的那一刻开始,到 CPU 刷新输入映像区时能够识别其改变的时间)
- CPU 的内部处理时间,包括:
- 将过程映像输出区中的输出值写入到物理输出
- 在用户程序执行前读取物理输入,并将输入值保存到过程映像输入区
- 执行用户程序,进行逻辑运算,并更新过程映像输出区中的输出值
- 输出硬件延时(从输出缓冲区状态改变到输出点真实电平改变的时间)
上述 A,B,C 三段时间,就是限制 PLC 处理数字量响应速度的主要因素。 一个实际的系统可能还需要考虑输入、输出器件的延时,如输出点外接的中间继电器动作时间等,不在这里讨论。
输入延时时间CPU 及扩展数字量输入点的延时时间,即输入点的滤波时间,在硬件组态模板属性中 “数字量输入>通道>输入滤波器” 对话框中可分组更改,其缺省的滤波时间是6.4ms。 如果把容易受到干扰的信号接到 CPU 上可改变滤波时间的DI点上,调整滤波时间可能改善信号检测的质量。
输出延时时间表1. CPU 输出延时 输出点类型 | CPU 型号 | CPU 1211C | CPU 1212C | CPU 1214C | CPU 1215C | CPU 1217C | 24VDC 晶体管 | 继电器 | 24VDC 晶体管 | 继电器 | 24VDC 晶体管 | 继电器 | 24VDC 晶体管 | 继电器 | Qa.4 to Qb.1 | 差分输出点
Qa.0 到 Qa.3
(.0+ 0- 到 .3+ .3-)
| 输出延时 | off to on | | | 1.0μs(Qa.0, Qa.3),
50μs(Qa.4, Qa.5) | | 1.0μs(Qa.0, Qa.3),
50μs(Qa.4, Qb.1)
| | 1.0μs(Qa.0, Qa.3),
50μs(Qa.4, Qb.1)
| - | | 100ns | on to off | | | 3.0μs(Qa.0, Qa.3),
200μs(Qa.4, Qa.5)
| | 3.0μs(Qa.0, Qa.3),
200μs(Qa.4, Qb.1) | | 3.0μs(Qa.0, Qa.3),
200μs(Qa.4, Qb.1)
| - | | 100ns | 开关 | | | | | - | | - | 10ms | | - |
表2. 扩展信号模块输出延时 输出点类型 | 24 VDC 晶体管 | 继电器 | 输出延时 | off to on | | | on to off | | 开关 | | |
表3. 200kHz 扩展信号板输出延时 输出点类型 | 24 VDC 晶体管 | 5 VDC 晶体管 | 输出延时 | 上升 | | | 下降 | | |
表4. 20kHz 扩展信号板输出延时 输出点类型 | 24 VDC 晶体管 | 输出延时 | off to on | | on to off | |
|