S: 置位 (S7-1500) 说明使用“置位”指令以将指定操作数的信号状态置位为“1”。 只有在当前的逻辑运算结果 (RLO)为“1”时,才执行该指令。执行该指令后,指定操作数将 置位为“1”。如果当前 RLO为“0”,则指定操作数的信号状态保持不变。NOT: 取反 RLO (S7-1500) 说明 使用“取反 RLO”指令,可对逻辑运算结果(RLO) 的信号状态进行取反。可以在任何地方使用 “取反 RLO”指令,甚至是在逻辑运算中。SET: 将 RLO 置位为 1(S7-1500) 说明 使用“将 RLO 置位为 1”指令,将当前逻辑运算的结果 (RLO) 置位为信号状态“1”。CLR: 将RLO 复位为 0 (S7-1500) 说明 使用“将 RLO 复位为 0”指令,将当前逻辑运算的结果 (RLO)置位为信号状态“0”。
SAVE: 将 RLO 保存到BR 位 (S7-1500) 说明 使用“将 RLO 保存到 BR 位”指令,将逻辑运算的结果 (RLO) 保存到二进制结果 (BR)中。在 执行过程中,此指令会将当前逻辑运算结果的信号状态传送到状态位 BR。该指令的操作与 条件无关,不会影响其它状态位。 说明在执行指令“将 RLO 保存到 BR 位”后,可通过同一块或下级块中的指令再次修改 BR 位。 使用指令“将 RLO 保存到 BR位”,可检查块的执行状态。例如,如果在块的结尾处使用 “将 RLO 保存到 BR 位”指令,则 BR位将置位为块当前逻辑运算结果的信号状态。 BR 位有助于针对块调用实现 EN/ENO机制。有关此主题的详细信息,请参见“另请参见”。FN: 扫描 RLO 的信号下降沿 (S7-1500) 说明 使用“扫描 RLO的信号下降沿”指令,可查询逻辑运算结果 (RLO) 的信号状态从“1”到“0”的 更改。该指令将比较 RLO的当前信号状态与保存在边沿存储位(<操作数>)中上一次查询 的信号状态。如果该指令检测到 RLO从“1”变为“0”,则说明出现了一个信号下降沿。 下图显示了下降沿和上升沿时,RLO的变化:每次执行指令时,都会查询信号下降沿。边沿检测后,如果检测到信号下降沿,则 RLO 的信号状态将在一个程序周期内保持置位为“1”。在其它任何情况下,RLO 的信号状态均为“0”。 说明 修改边沿存储位的地址边沿存储器位的地址在程序中Zui多只能使用一次,否则,会覆盖该位存储器。该步骤将影响到边沿检测,从而导致结果不再唯一。边沿存储位的存储区域必须位于 DB(FB 静态区域) 或位存储区中。FP: 扫描 RLO的信号上升沿 (S7-1500) 说明 使用“扫描 RLO 的信号上升沿”指令,可查询逻辑运算结果 (RLO)的信号状态从“0”到“1”的 更改。该指令将比较 RLO 的当前信号状态与保存在边沿存储位(<操作数>)中上一次查询的信号状态。如果该指令检测到 RLO 从“0”变为“1”,则说明出现了一个信号上升沿。 下图显示了下降沿和上升沿时,RLO的变化:每次执行指令时,都会查询信号上升沿。边沿检测后,如果检测到信号上升沿,则 RLO 的信号状态将在一个程序周期内保持置位为“1”。在其它任何情况下,RLO 的信号状态均为“0”。 说明 修改边沿存储位的地址边沿存储器位的地址在程序中Zui多只能使用一次,否则,会覆盖该位存储器。该步骤将影响到边沿检测,从而导致结果不再唯一。边沿存储位的存储区域必须位于 DB(FB 静态区域) 或位存储区中。定时器操作 (S7-1500)FR: 启用定时器 (S7-1500) 说明 可以使用指令“启用定时器”重新启动定时器。在上升沿时执行该指令,并通过复位内部边沿触发标志来启动定时器。当逻辑运算结果为“1”时执行该指令,在启动定时器的过程中,即使在启动指令之前没有出现信号上升沿,定时器也会重新启动。如果在启动指令前,逻辑运 算结果为"0",那么复位内部边沿触发标志不会影响定时器。在执行“启用定时器”指令之前,如果逻辑运算结果更改为“0”,则在重新启动定时器之后该结果不受影响。 说明 在时间单元,操作系统通过时基指定的间隔,以一个时间单位缩短时间值,直到该值为“0”。递减操作与用户程序不同步执行。因此,定时器中的值比预期的时基Zui多短一个时间间隔值。以下示例中说明了如何构造一个时间单元:另请参见“L:加载定时器值”。 参数 下表列出了“启用定时器”指令的参数:L: 加载定时器值(S7-1500) 说明 使用“装载定时器值”指令,将指定的定时器的定时器值装载到累加器 1 中。装载二进制码的定时器值时,不会载入时基。此时将零写入累加器 1 中,而不是时基。 加载完成后,累加器 1 中的值为 INT 数据类型的正数。 说明在时间单元,操作系统通过时基指定的间隔,以一个时间单位缩短时间值,直到该值为“0”。递减操作与用户程序不同步执行。因此,定时器中的值比预期的时基Zui多短一个时间间隔值。 下图示例说明了如何将时间值加载到累加器中:LC:加载 BCD 码计数器值 (S7-1500) 说明 使用“加载 BCD 码定时器值”指令,将加载累加器 1 中双编码指定定时器的BCD 码定时器 值。在加载过程中,时基将传送到累加器 1 中。 加载完成后,累加器 1 中的值将为 S5TIME形式的时间段。累加器 1 中剩余的字将用零填满。 说明在时间单元,操作系统通过时基指定的间隔,以一个时间单位缩短时间值,直到该值为“0”。递减操作与用户程序不同步执行。因此,定时器中的值比预期的时基Zui多短一个时间间隔值。下图说明了如何将时间值加载到累加器中:R:复位定时器 (S7-1500) 说明使用“复位定时器”指令,可将一个特定的定时器复位为“0”。在当前的逻辑运算结果 (RLO) 为“1”时,执行该指令。只有在执行指令之前RLO 为“1”,所指定的定时器才会返回值“0”。该 指令同时也将时间值和已编程时间段的时基复位为 "0"。 说明在时间单元,操作系统通过时基指定的间隔,以一个时间单位缩短时间值,直到该值为“0”。递减操作与用户程序不同步执行。因此,定时器中的值比预期的时基Zui多短一个时间间隔值。“复位定时器”指令不会复位内部边沿存储器位。要复位内部边沿存储器位,需要对“启用定时器”指令进行编程,或者执行该指令,以便在信号状态为“0”时开始计时。以下示例中说明了如何构造一个时间单元:另请参见“L:加载定时器值”。
SP: 启动脉冲定时器(S7-1500) 说明 使用“启动脉冲定时器”指令,将在上升沿时启动所指定的定时器。如果检测到信号上升沿,将执行该指令并启动定时器。之后,在执行指令前只要逻辑运算结果 (RLO) 保持为“1”,定 时器便会运行累加器 1指定的一段时间。如果在该时间段结束之前,RLO 更改为 "0",定时 器便会停止。只要该时间段未结束,那么查询结果为 "1"的定时器状态将返回查询结果 "1"。 在执行“启动脉冲定时器”指令之前如果有上升沿则会重新启动定时器,或者使用“启用定时器”指令重新启动该定时器。只能重新启动未复位的定时器。 累加器 1中的时间段由时间值和时基组成。如果指定的定时器通过“启动脉冲定时器”指令启动,则会根据时基对时间值进行减计数。当计数器值减为零时,定时器停止运行。 即使在指令执行期间定时器未启动,累加器 1 中也必须存在S5TIME 格式的有效时间段。如 果累加器 1 中无有效的 BCD 值且前导逻辑运算结果 RLO 返回值“0”,则将状态位 OV置位为 “1”。将不启动任何同步错误处理。如果累加器 1 中的 BCD 值有效,则将状态位 OV 复位为 “0”。 说明在时间单元,操作系统通过时基指定的间隔,以一个时间单位缩短时间值,直到该值为“0”。递减操作与用户程序不同步执行。因此,定时器中的值比预期的时基Zui多短一个时间间隔值。以下示例中说明了如何构造一个时间单元:另请参见“L:加载定时器值”。SE: 启动扩展脉冲定时器 (S7-1500) 说明使用“启动扩展脉冲定时器”指令,在上升沿时启动所指定的定时器。如果检测到信号上升沿,将执行该指令并启动定时器。之后,在执行指令前只要逻辑运算结果变为 "0",定时器 便会在累加器 1指定的时间段中运行。只要该时间段未结束,那么查询结果为 "1" 的定时器 状态将返回查询结果 "1"。在每个信号上升沿处,该指令都将在预定的时间段重新启动定时器,即使定时器仍未计时结 束。 累加器 1中的时间段由时间值和时基组成。如果指定的定时器通过“启动扩展脉冲定时器”指令启动,则会根据时基对时间值进行减计数。当计数器值减为零时,定时器停止运行。 即使在指令执行期间定时器未启动,累加器 1中也必须存在 S5TIME 格式的有效时间段。如 果累加器 1 中无有效的 BCD 值且前导逻辑运算结果 RLO返回值“0”,则将状态位 OV 置位为 “1”。将不启动任何同步错误处理。如果累加器 1 中的 BCD 值有效,则将状态位 OV复位为 “0”。 说明 在时间单元,操作系统通过时基指定的间隔,以一个时间单位缩短时间值,直到该值为“0”。递减操作与用户程序不同步执行。因此,定时器中的值比预期的时基Zui多短一个时间间隔值。 此处给出了如何构造时间单元的示例:L:加载定时器值SD: 启动接通延时定时器 (S7-1500) 说明当在启动输入处检测到信号状态“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:加载定时器值”。