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”。如果满足以下条件之一,则调用“复位字节数组”指令将不起作用,ENO 使能输出将设置为 “0”: • 使能输入 EN的信号状态为“0”。 • 参数 S_BYTE 中的指针没有引用外部 I/O 存储区 (P)。 • 参数 S_BYTE中指针引用的操作数不是整字节。 • 参数 N 的值不是数字 8 的整数倍。 • MCR 位的信号状态为“0”。 参数下表列出了“复位字节数组”指令的参数: 参数 声明 数据类型 存储区 说明 EN Input BOOL I、Q、M、D、 L、T、C使能输入 ENO Output BOOL I、Q、M、D、L 使能输出下表列出了“在 I/O 区域复位位数组”指令的参数: 参数 声明数据类型 存储区 说明 EN Input BOOL I、Q、M、D、 L、T、C 使能输入 ENO Output BOOLI、Q、M、D、L 使能输出 N Input INT I、Q、M、D、L 或常数 待复位的位数。 RET_VAL Output INTI、Q、M、D、L 错误信息 SA Output POINTER P 指向待复位的第一个位的 指针。
参数 声明数据类型 存储区 说明 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 (ACCU1) 中输入一个替代值。 说明 只能在同步错误组织块(OB 121、OB 122)中调用“输入替代值”指令。无法再从模块读取任何值时,可使用“输入替代值”指令。每次访问该模块后都会启动 OB122。通过调用“输入替代值”指令,可将替代值加载到所中断程序段的累加器 1 中。之后,程序将使用该替代值继续执行。选择替代值时所需的信息(如,发生错误的块或受影响的地 址),位于 OB 122 的本地变量中。 参数下表列出了“输入替代值”指令的参数: 参数 声明 数据类型 存储区 说明 EN Input BOOL I、Q、M、D、 L、T、C使能输入 ENO Output BOOL I、Q、M、D、L 使能输出 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) 路径中的“程序资源”(Programresources) 文件夹内。 有关本主题的更多信 息,请参见“另请参见”。 参数 下表列出了“执行顺控程序”指令的参数: 参数声明 数据类型 存储区 说明 EN Input BOOL I、Q、M、D、 L、T、C 使能输入 ENO Output BOOLI、Q、M、D、L 使能输出 RESET Input BOOL I、Q、M、D、L 信号状态“1”表示复位状 态。 JOG InputBOOL I、Q、M、D、L 当信号状态从“0”变为“1” 时,该指令将进入下一步。 DRUM_EN Input BOOLI、Q、M、D、L 信号状态“1”允许顺控程序 按照事件和时间条件提前 执行。 LST_STEP Input BYTEI、Q、M、D、L 或常数 Zui后一个编程步的编号 EVENT(i), 1 ≤ i ≤ 16 Input BOOL I、Q、M、D、L事件位 (i); 初始信号状态为“1”。 OUT(j), 1 ≤ j ≤ 16 Output BOOL I、Q、M、D、L 输出位(j) Q Output BOOL I、Q、M、D、L 信号状态“1”表示Zui后一步 的时间已用完。参数 声明 数据类型 存储区 说明OUT_WORD Output WORD I、Q、M、D、 L、P 顺控程序写入输出值的目 标字地址。 ERR_CODE OutputWORD I、Q、M、D、 L、P 错误信息 JOG_HIS Static BOOL I、Q、M、D、L 参数 JOG 的历史位EOD Static BOOL I、Q、M、D、L 信号状态“1”表示Zui后一步 的时间已用完。 DSP Static BYTEI、Q、M、D、 L、P 顺控程序的预设步 DSC Static BYTE I、Q、M、D、 L、P 顺控程序的当前步 DCCStatic DWORD I、Q、M、D、 L、P 顺控程序的当前数值 DTBP Static WORD I、Q、M、D、 L、P顺控程序的预设时基 PrevTime Static TIME I、Q、M、D、L 或常数 上一次的系统时间 S_PRESETStatic ARRAY[1..16] of WORD I、Q、M、D、L 每个步 [1 到 16] 的预置计 数值,其中 1个时钟脉冲 = 1 ms。 OUT_VAL Static ARRAY[1..16, 0..15] of BOOL I、Q、M、D、L每个步 [1 到 16,0 到 15] 的输出值。 S_MASK Static ARRAY[1..16, 0..15] of BOOLI、Q、M、D、L 每个步 [1 到 16,0 到 15] 的可组态掩码。 初始信号 状态为“1”。有关有效数据类型的更多信息,请参见“另请参见”。在以下示例中,该指令从步 1 前进到步 2。根据为步 2 组态的掩码和参数OUT_VAL 的值,设 置输出位(OUT1 到 OUT16)和输出字 (OUT_WORD)。 说明可以初始化数据块中的静态参数。