数字量输入输出(DI/DO)响应速度
S7-200 SMART CPU 按照以下机制循环工作:
上述四个步骤是S7-200 SMART CPU的软件处理过程。
实际上,S7-200 SMART对数字量的处理速度受到以下几个因素的限制 :
A. 输入硬件延时(从输入信号状态改变的那一刻开始,到CPU刷新输入映像区时能够识别其改变的时间)
B. CPU的内部处理时间,包括:
- 读取输入点的时间状态到输入映像区
- 执行用户程序,进行逻辑运算,得到输出信号的信状态
- 将输出信号写入到输出映像区
C. 输出硬件延时(从输出缓冲区状态改变到输出点真实电平改变的时间)
上述A,B,C三段时间,就是限制PLC处理数字量响应速度的主要因素。
一个实际的系统还需要考虑输入、输出器件的延时,如输出点外接的中间继电器动作时间等,不在这里讨论。
输入硬件延时
CPU及扩展数字量输入点的延时时间,即输入点的滤波时间,在“系统块”中设置,缺省的滤波时间是6.4ms。
如果把容易受到干扰的信号接到CPU上可改变滤波时间的DI点上,调整滤波时间可能会改善信号的检测质量。
输出硬件延时
表1. CPU 输出硬件延时
输出点类型 | 24V DC 晶体管 | 继电器 | |
---|---|---|---|
输出延时 | OFF-→ON | 1.0μs(Qa.0到Qa.3),50μs(其他) | —— |
ON-→OFF | 3.0μs(Qa.0到Qa.3),200μs(其他) | —— | |
开关 | —— | 最长10ms |
表2. 扩展模块输出硬件延时
输出点类型 | 24V DC 晶体管 | 继电器 | |
---|---|---|---|
输出延时 | OFF-→ON | 50μs | —— |
ON-→OFF | 200μs | —— | |
开关 | —— | 最长10ms |
表3. 数字量信号板DT04 输出硬件延时
输出点类型 | 24V DC 晶体管 | |
---|---|---|
输出延时 | OFF-→ON | 2.0μs |
ON-→OFF | 10μs |
上述数据来自《S7-200 SMART系统手册》。
S7-200 SMART程序扫描时间
程序扫描时间与用户程序的大小成正比。
《S7-200SMART系统手册》中有不同类型指令所需执行时间的数据,但实际上很难事先精确计算出程序扫描时间,特别是程序还没开始编写时。
可以看出,常规的PLC处理模式不适合时间响应要求高的数字量信号,可能需要根据具体任务采用一些特别的方法。
S7-200SMART处理快速响应信号的对策
可以单独或者组合使用一些S7-200SMART的高级功能:
使用CPU内置的高速计数器和高速脉冲发生器处理序列脉冲信号;
使用部分CPU数字量输入点的硬件中断功能,在中断服务程序中处理,进入中断的延时可以忽略;
使用CPU的“立即输入”和“立即输出”指令,可以越过程序扫描周期的时间限制;
使用部分CPU数字量输入点的“脉冲捕捉”功能捕捉短暂的脉冲。
所有实现快速信号处理的措施,都要考虑所有限制因素的影响。例如,为了一个毫秒级响应速度的信号选择500μs输出延时的硬件,显然是不合理的。