SE:启动扩展脉冲定时器 (S7-300, S7-400) 说明使用“启动扩展脉冲定时器”指令,在上升沿时启动所指定的定时器。如果检测到信号上升沿,将执行该指令并启动定时器。之后,在执行指令前只要逻辑运算结果变为 "0",定时器 便会在累加器 1指定的时间段中运行。只要该时间段未结束,那么查询结果为 "1" 的定时器 状态将返回查询结果 "1"。在每个信号上升沿处,该指令都将在预定的时间段重新启动定时器,定时器仍未计时结 束。 累加器 1中的时间段由时间值和时基组成。如果指定的定时器通过“启动扩展脉冲定时器”指令启动,则会根据时基对时间值进行减计数。当计数值减为零时,定时器停止运行。 在指令执行期间定时器未启动,累加器 1 中也会存在S5TIME 形式的有效时间段。如果 累加器 1 中的 BCD 值无效,则将执行同步错误处理(STOP 或 OB 122)。状态位OV 不受 影响。 说明 在时间单元,操作系统通过时基指定的间隔,以一个时间单位缩短时间值,直到该值为“0”。递减操作与用户程序不同步执行。定时器中的值比预期的时基Zui多短一个时间间隔值。 此处给出了如何构造时间单元的示例:L:加载定时器值。
SD:启动接通延时定时器(S7-300, S7-400) 说明 当在启动输入处检测到信号状态“1”时,“启动接通延时定时器”指令将启动一个编程的定时器。只要该信号状态保持为“1”,定时器将在超出累加器 1 中指定的持续时间后停止计时。如果定时器计时结束且启动输入的信号状态仍为“1”,则定时器状态的查询将返回“1”。如果启动输入处的信号状态为“0”,则将复位定时器。此时,查询定时器状态将返回信号状态“0”。只要启动输入的信号状态变为“1”,定时器将运行。定时器输出的信号状态与启动输入的信号状态相同。启动输入与输出直接互连,而非连接连 接定时器。 累加器 1中的持续时间在内部由定时器值和时基构成。指令启动时,编程的时间值减计数到 0。 在指令执行期间定时器未启动,累加器 1 中也会存在S5TIME 形式的有效时间段。如果 累加器 1 中无有效的 BCD 值且前导逻辑运算结果 RLO 返回值“0”,则将状态位 OV置位为“1”。 将不启动任何同步错误处理。如果累加器 1 中的 BCD 值有效,则将状态位 OV 复位为“0”。 说明在时间单元,操作系统通过时基指定的间隔,以一个时间单位缩短时间值,直到该值为“0”。递减操作与用户程序不同步执行。定时器中的值比预期的时基Zui多短一个时间间隔值。此处给出了如何构造时间单元的示例:L:加载定时器值。SS:启动保持型接通延时定时器 (S7-300, S7-400) 说明使用“启动保持型接通延时定时器”指令,在上升沿时启动所指定的定时器。如果检测到信号上升沿,将执行该指令并启动定时器。之后,在执行指令前逻辑运算结果 (RLO) 更改为 “0”,定时器也会在累加器 1中所指定的时间段内运行。当时间用完后,将查询定时器的状 态是否为 "1",并返回查询结果"1"。在执行指令前查询结果不受当前逻辑运算结果信 号状态的影响。在每个信号上升沿处,该指令都将在预定的时间段重新启动定时器,定时器仍未计时结 束。 累加器 1中的时间段由时间值和时基组成。如果指定的定时器通过“启动保持型接通延时定时器”指令启动,则会根据时基对时间值进行减计数。当计数值减为零时,定时器停止运行。 在指令执行期间定时器未启动,累加器 1中也会存在 S5TIME 形式的有效时间段。如果 累加器 1 中的 BCD 值无效,则将执行同步错误处理(STOP 或 OB122)。状态位 OV 不受 影响。 说明 在时间单元,操作系统通过时基指定的间隔,以一个时间单位缩短时间值,直到该值为“0”。递减操作与用户程序不同步执行。定时器中的值比预期的时基Zui多短一个时间间隔值。此处给出了如何构造时间单元的示例:L:加载定时器值。SF:启动关断延时定时器 (S7-300, S7-400) 说明使用“启动关断延时定时器”指令,在上升沿时启动所指定的定时器。如果检测到信号下降 沿,将执行该指令并启动定时器。之后,定时器将在累加器1 中指定的时间段内运行。如果 在该时间段结束之前,逻辑运算结果 (RLO) 变为“1”,则定时器复位。只有在指令执行期间检测到信号下降沿时,定时器才会重新启动。 如果在执行指令或在预定时间期间,逻辑运算结果的信号状态为 "1",则查询定时器状态是否为“1”的查询结果将返回 "1"。如果时间未用完或 RLO 为“0”,则检查定时器状态是否为“1”的 查询结果将返回“0”。 累加器1 中的时间段由时间值和时基组成。如果指定的定时器通过“启动关断延时定时器”指令启动,则会根据时基对时间值进行减计数。当计数值减为零时,定时器停止运行。 在指令执行期间定时器未启动,累加器 1 中也会存在S5TIME 形式的有效时间段。如果 累加器 1 中的 BCD 值无效,则将执行同步错误处理(STOP 或 OB 122)。状态位OV 不受 影响。 说明 在时间单元,操作系统通过时基指定的间隔,以一个时间单位缩短时间值,直到该值为“0”。递减操作与用户程序不同步执行。定时器中的值比预期的时基Zui多短一个时间间隔值。此处给出了如何构造时间单元的示例:L:加载定时器值。计数器操作 (S7-300, S7-400) FR:启用计数器 (S7-300,S7-400) 说明 使用“启用计数器”指令将执行“置位计数器”、“加计数”和“减计数”指令,而无需信号上升沿。在指令执行过程中,该指令将内部的边沿标志的信号状态复位为 "0"。在执行相 应计数指令之前,查询的信号状态必须一直为“1”。在执行该指令之前,如果逻辑运算结果 (RLO) 从“0”变为“1”,则执行“启用计数器”指令。对于将要执行的计数器指令,无需启用计数器。 参数 下表列出了“启用计数器”指令的参数: 操作数 声明 数据类型 存储区 说明<操作数> Input COUNTER C 已启用的计数器。有关有效数据类型的更多信息,请参见“另请参见”。L:加载计数器 (S7-300, S7-400) 说明使用“加载计数器”指令,将指定计数器中二进制编码形式的当前值传送到累加器 1 中的低 字。所加载的计数值随后便可作为 16位整数,以便后续处理。 下图说明了指令的工作原理:LC:加载 BCD 码计数器值 (S7-300, S7-400) 说明 使用“加载BCD 码计数器值”指令,将指定 BCD 码计数器中的当前值传送到累加器 1 中的 低字。所加载的计数器值随后便可以 BCD形式使用,以便后续处理。 下图说明了“加载 BCD 码计数器值”指令的工作原理:R:复位计数器 (S7-300, S7-400) 说明使用“复位计数器”指令,将指定计数器中当前的计数值复位为“0”。 在执行该指令之前,只有逻辑运算结果 (RLO)的信号状态为“1”时,才执行该指令。在执行 “复位计数器”指令之前,只要 RLO为“1”,则检查计数器状态是否为“1”的查询结果都将返回 “0”。复位计数器时,不会复位“置位计数器”、“加计数”和“减计数”指令中内部的边沿存储 器位。S:置位计数器 (S7-300,S7-400) 说明 使用“置位计数器”指令,在查询时将指定的计数器置位为累加器 1 中的值。在执行该指令之前,如果逻辑运算的结果从“0”变为“1”,则执行“置位计数器”指令。也可以使用“启用计数器”指令将内部边沿存储器位复位为“0”,来实现信号上升沿。 要置位计数器,累加器 1必须包含有效的计数值。有效计数值是指以 3 个十进制数表示的 BCD 形式的值。只允许正计数值,计数指令无法处理负计数值。如果累加器1 中的 BCD 值无效, 则将执行同步错误处理(STOP 或 OB122)。状态位 OV 不受影响。CU:加计数 (S7-300,S7-400) 说明 在执行该指令之前,如果逻辑运算结果 (RLO) 从“0”变为“1”,则使用“加计数”指令将当前 计数值加1。在每个信号上升沿处,计数值都将继续递增,直到达到上限“999”。在执行指 令之前,如果达到限值,则 RLO 不会再影响计数值。只有在信号上升沿时,才能执行“加计数”指令。也可以使用“启用计数器”指令将内部边沿存储器位复位为“0”,来实现信号上升沿在执行该指令之前,如果逻辑运算结果 (RLO) 从“0”变为“1”,则使用“减计数”指令将当前计数值减 1。在每个信号上升沿处,计数值都将继续递减,直到达到下限“0”。在执行指令之 前,如果达到限值,则 RLO不会再影响计数值。计数值为负数时,不进行计数。 只有在信号上升沿时,才能执行“减计数”指令。也可以使用“启用计数器”指令将内部边沿存储器位复位为“0”,来实现信号上升沿。状态位 CC 1 和 CC 0 的设置取决于比较过程中两个值的关系。 执行比较函数后,累加器1 和 2 的内容保持不变。执行比较函数后,可以使用赋值函数和 跳转函数评估逻辑运算结果。