SIEMENS西门子 HMI KTP600 6AV66475AC000QE0
SETI:置位字节数组 (S7-300, S7-400) 说明 使用“置位字节数组”指令,将指定字节区域中位的信号状态置位为“1”。在参数 S_BYTE 中 定义数组起点。通过在该指令的参数 N 中指定要置位的位数来定义数组的大小。 说明 参数 N 的值必须是数字 8 的整数倍(例如,8、16、24 等)。 在参数 S_BYTE 中指定的指针必须引用外部 I/O 存储区 (P)。由于“P”存储区是按照字节、字或 双字访问的,参数 S_BYTE 中的指针必须指向与字节限值对应的操作数,即指针的位号必须为 “0”。 说明 过程映像输出 (Q) 中相应位的信号状态将复位为“0”。 如果存在以下任一情况,调用“置位字节数组”指令将不起作用: • 参数 S_BYTE 中的指针没有引用外部 I/O 存储区 (P)。 • 参数 S_BYTE 中指针引用的操作数不是整字节。 • 参数 N 的值不是数字 8 的整数倍。 • MCR 位的信号状态为“0”。
下表列出了“置位字节数组”指令的参数: 参数 声明 数据类型 存储区 说明 S_BYTE Input POINTER P 或常数 指向数组第一个字节的指 针,其中该数组的位将被 置位 对于跨区域间接寄存器寻 址,必须以双字格式指定 该指针。 N Input INT I、Q、M、D、 L、P 或常数 待置位的数组大小 以 8 的整数倍(例如,8、 16、24 等)位数来指定该 数组。RESET:复位位数组 (S7-300, S7-400) 说明 “复位位数组”指令用于将指定范围中位的信号状态复位为“0”。在参数 S_BIT 中使用指针定 义范围起点。如果指针指向外部 I/O 的存储区,则不执行该指令。在该指令的参数 N 中,指 定在指定区域中待复位的位数。如果参数 N 的值为“0”,则调用该指令不起作用。 只有 MCR 位为“1”时,才会执行该指令。如果 MCR 位的信号状态为“0”,则指定区域中的位 保持不变。 参数 下表列出了“复位位数组”指令的参数: 参数 声明 数据类型 存储区 说明 S_BIT Input POINTER I、Q、M、D 指向范围中第一个位的指 针,其中该范围的位将被 复位。 对于跨区域间接寄存器寻 址,必须以双字格式指定 该指针。 N Input INT I、Q、M、D、 L、P 或常数 待复位的位数。 示例 以下示例说明了该指令的工作原理:RESETP:在 I/O 区域复位位数组 (S7-300, S7-400) 说明 “在 I/O 区域复位位数组”指令用于将 I/O 区域中的位信号状态复位为“0”。同时将过程映像 输出中相应位的复位与这些 I/O 位保持相同。 使用参数 N 和 SA 定义要复位的位数组。数组中的位必须属于要分配过程映像的 I/O 区域。 如果选择的部分位数组没有对应插入的 I/O 设备,则该指令将尝试置位整个位数组。在这种 情况下,将在参数 RET_VAL 中输出错误信息。 按字节复位 I/O 区域。如果通过参数 N 和 SA 定义的位数组不是始于或止于字节边界,则调 用该指令有以下作用: • 属于要传送的第一个和Zui后一个字节,但不属于所定义位数组的位,将获取过程映像输 出中相应位的值。 警告 意外行为 使用过程映像输出中相关位的值置位这些位可能导致意外响应,例如启动电机或关闭冷 却系统。 • 将属于所定义位数组的位的信号状态复位为“0”。 必须在 MCR 区域中调用“在 I/O 区域复位位数组”指令。 如果存在以下任一情况,调用“在 I/O 区域复位位数组”指令将不起作用: • 参数 N 的值为“0”。 • MCR 位的信号状态为“0”。下表列出了“在 I/O 区域复位位数组”指令的参数: 参数 声明 数据类型 存储区 说明 N Input INT I、Q、M、D、L 或常数 待复位的位数。 RET_VAL Output INT I、Q、M、D、L 错误信息 SA Output POINTER P 指向待复位的第一个位的 指针。RESETI:复位字节数组 (S7-300, S7-400) 说明 “复位字节数组”指令用于将指定字节范围中位的信号状态复位为“0”。在参数 S_BYTE 中使 用指针定义范围起点。通过在该指令的参数 N 中指定要复位的位数来定义范围大小。 说明 参数 N 的值必须是数字 8 的整数倍(例如,8、16、24 等)。 在参数 S_BYTE 中指定的指针必须引用外部 I/O 存储区 (P)。由于“P”存储区是按照字节、字或 双字访问的,参数 S_BYTE 中的指针必须指向与字节限值对应的操作数,即指针的位号必须为 “0”。 说明 过程映像输出 (Q) 中相应位的信号状态将复位为“0”。 如果存在以下任一情况,调用“复位字节数组”指令将不起作用: • 参数 S_BYTE 中的指针没有引用外部 I/O 存储区 (P)。 • 参数 S_BYTE 中指针引用的操作数不是整字节。 • 参数 N 的值不是数字 8 的整数倍。 • MCR 位的信号状态为“0”。下表列出了“复位字节数组”指令的参数: 参数 声明 数据类型 存储区 说明 S_BYTE Input POINTER P 或常数 指向范围中第一个字节的 指针,其中该范围的位将 被复位。 对于跨区域间接寄存器寻 址,必须以双字格式指定 该指针。 N Input INT I、Q、M、D、 L、P 或常数 待复位其位的数组大小。 以 8 的整数倍(例如,8、 16、24 等)位数来指定该 数组。REPL_VAL:输入替换值 (S7-300, S7-400) 说明 使用“输入替代值”指令,可从一个导致程序错误的程序级同步错误组织块,在累加器 1 (ACCU 1) 中输入一个替代值。 说明 只能在同步错误组织块(OB 121、OB 122)中调用“输入替代值”指令。 无法再从模块读取任何值时,可使用“输入替代值”指令。每次访问该模块后都会启动 OB 122。通过调用“输入替代值”指令,可将替代值加载到所中断程序段的累加器 1 中。之后, 程序将使用该替代值继续执行。选择替代值时所需的信息(如,发生错误的块或受影响的地 址),位于 OB 122 的本地变量中。 参数 下表列出了“输入替代值”指令的参数: 参数 声明 数据类型 存储区 说明 VAL Input DWORD I、Q、M、D、L 或常量 替代值 RET_VAL Output INT I、Q、M、D、L 错误信息DRUM:执行顺控程序 (S7-300, S7-400) 说明 可以使用“执行顺控程序”指令,将相应步的 OUT_VAL 参数的已设定值分配给已设定的输 出位(OUT1 到 OUT16)和输出字 (OUT_WORD)。因此,当指令仍处于某特定步时,该步 必须满足参数 S_MASK 中设定的使能掩码条件。如果该步的事件为真且为当前步设定的时间 已用完,或者参数 JOG 的值从“0”变为“1”,则该指令进入下一步。如果参数 RESET 的信号状 态变为“1”,将复位该指令。当前步因此等同于预设步 (DSP)。 每步所耗用的时间由预设时基 (DTBP) 与每步预设计数值 (S_PRESET) 的乘积确定。启动新步 时,会将此计算值加载到参数 DCC 中,该参数包含当前步的剩余时间。例如,参数 DTBP 的 值为 2,且第一个步的预设值为“100”(100 ms),则参数 DCC 的值为“200”(200 ms)。 可使用定时器值和/或事件对步进行编程。如果步中包含一个事件位且定时器值为“0”的步,则 在该事件位的信号状态为“1”时立即进入下一步。仅编程有定时器值的步将立即开始计时。具 有事件位且时间值大于“0”的步,在该事件位的信号状态为“1”时开始计时。信号状态为“1”时, 初始化事件位。 当顺控程序位于Zui后一个编程步 (LST_STEP) 且该步的时间用完时,会将参数 Q 的信号状态 置位为“1”;否则复位为“0”。置位参数 Q 时,该指令将停留在该步,直至该参数复位。 在可组态掩码 (S_MASK) 中,可以选择输出字 (OUT_WORD) 中的各个位并通过输出值 (OUT_VAL) 置位或复位输出位(OUT1 到 OUT16)。当可组态掩码的某个位的信号状态为“1” 时,OUT_VAL 的值将置位/复位相应位。如果可组态掩码的某个位的信号状态为“0”,相应位 则保持不变。在信号状态为“1”时,将初始化所有 16 个步中可组态掩码的所有位。 参数 OUT1 的输出位对应输出字 (OUT_WORD) 的Zui低有效位。参数 OUT16 的输出位对应输 出字 (OUT_WORD) 的Zui高有效位。 在程序中插入该指令时,将打开“调用选项”(Call options) 对话框,可以指定块参数将存储 在单个数据块中(单背景)或者作为局部变量存储在块接口中(多重背景)。如果创建了一 个单独的数据块,则该数据块将保存到项目树“程序块 > 系统块”(Program blocks > System blocks) 路径中的“程序资源”(Program resources) 文件夹内。有关本主题的更多信息,请参见 “另请参见”。