数字量输入输出(DI/DO)响应速度

S7-200 SMART CPU 按照以下机制循环工作:
S7-200 SMART CPU的工作过程

上述四个步骤是S7-200 SMART CPU的软件处理过程。

实际上,S7-200 SMART对数字量的处理速度受到以下几个因素的限制 :

A. 输入硬件延时(从输入信号状态改变的那一刻开始,到CPU刷新输入映像区时能够识别其改变的时间)

B. CPU的内部处理时间,包括:

  1. 读取输入点的时间状态到输入映像区
  2. 执行用户程序,进行逻辑运算,得到输出信号的信状态
  3. 将输出信号写入到输出映像区

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输出延时的硬件,显然是不合理的。

相关日志

  • S7-200 SMART 数字量输出的典型抑制电路
    S7-200 SMART 数字量输出驱动感性负载时,需要配备抑制电路。抑制电路可以限制数字量输出断开时感应电压升高,可保护输出,并防止切断感性负载时产生的高压导致CPU损坏或CPU内部固件错误。 此...
  • S7-200 SMART Modbus轮询的应用库
    1 应用概述 1.1 通用描述 Modbus-RTU 协议是一种开放的串行通信协议,在不同的行业中都有非常广泛的应用,因为其是串行通信,所以其报文的传送需要按照串行队列来发送,而具体到S7-200 S...
  • 200SMART自由口通讯: XMT 发送指令
    XMT 发送指令 发送指令(XMT 指令)用于在自由口通信模式下将发送缓冲区(TBL)的数据通过指定的通信端口(PORT)发送出去。 XMT 指令一次最多可以发送 255个字符。XMT 指令发送缓...
  • 200Smart PLC IO点调整库
    1 应用描述 在实际的工程应用中,PLC 系统一般 IO 数量都会有一定冗余设计,这样当其中某一个或者几个 IO 点发生损坏时,可以及时使用备用点,但是这样就需要同时更改程 序,对现场维修人员的要求...
  • S7-200 SMART CPU V2.8 版本升级及新功能
    S7-200 SMART CPU V2.8 版本升级及增加的新功能: 新增程序指令 HSC 增强功能 PID 增强功能 运动控制增强功能 PLS 以及 PWM 指令增强功能 存储器范围增强 安全性增...
  • 200SMART带参数的子例程及自定义库参数数量可以超过16个
    在所有的S7-200及S7-200 SMART帮助手册了都有下面一句话: 子例程可选择使用传递参数。这些参数在子例程的变量表中定义。必须为每个参数分配局部符号名称(最多 23 个字符)、变量类型和数...

Related Post

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注