DCAT:离散控制定时器报警 (S7-300, S7-400) 说明可以使用“离散控制定时器报警”(Discrete control-timer alarm),在参数 CMD 发出打开或关闭命令时开始计时。计时过程一直持续到超出了预设时间 (PT) 或收到此信息为止:即在规 定时间内已打开或关闭(O_FB 或C_FB)设备。如果在收到有关设备打开或关闭的信息之前就超出了预设时间,将激活相应的报警。如果命令输入的信号状态在到达预设时间前发生变 化,则重新计时。在程序中插入该指令时,将打开“调用选项”(Call options) 对话框,可以指定块参数将存储在单个数据块中(单背景)或者作为局部变量存储在块接口中(多重背景)。如果创建了一 个单独的数据块,则该数据块将保存到项目树“程序块> 系统块”(Program blocks > System blocks) 路径中的“程序资源”(Programresources) 文件夹内。有关本主题的更多信息,请参见 “另请参见”。 “离散控制定时器报警”指令对各种输入条件的反应如下: •参数 CMD 的信号状态从“0”变为“1”时,对参数 Q、CMD_HIS、ET、OA 和 CA 的信号状态 有如下影响: – 参数 Q和 CMD_HIS 置位为“1”。 – 参数 ET、OA 和 CA 复位为“0”。 • 参数 CMD的信号状态从“1”变为“0”时,参数 Q、ET、OA、CA 和 CMD_HIS 复位为“0”。 • 如果参数 CMD 和CMD_HIS 的信号状态均为“1”,且参数 O_FB 置位为“0”,则将上次执行 该指令以来的时间差 (ms) 加到参数 ET的值中。如果参数 ET 的值大于参数 PT 的值,则 将参数 OA 处的信号状态将置位为“1”。如果参数 ET 的值不大于参数 PT的值,则将参数 OA 的信号状态复位为“0”。将参数 CMD_HIS 的值重置为参数 CMD 的值。 • 如果参数CMD、CMD_HIS 和 O_FB 的信号状态置位为“1”且参数 C_FB 的值为“0”,则将参 数 OA的信号状态设置为“0”。ET 参数的值置位为 PT 参数的值。如果参数 O_FB 的信号状态变为“0”,则将在下次执行指令时设置报警。CMD_HIS 参数的值置位为 CMD 参数的值。 • 如果参数 CMD、CMD_HIS和 C_FB 的值为“0”,则将上次执行该指令以来的时间差 (ms) 加 到参数 ET 的值中。如果参数 ET 的值大于参数 PT的值,则将参数 CA 的信号状态复位为 “1”。如果不大于参数 PT 的值,则参数 CA 的信号状态为“0”。CMD_HIS参数的值置位为 CMD 参数的值。 • 如果参数 CMD、CMD_HIS 和 O_FB 的信号状态为“0”且参数 C_FB设置为“1”,则将参数 CA 设置为“0”。ET 参数的值置位为 PT 参数的值。如果参数 C_FB 的信号状态变为“0”,则在下次执行指令时设置报警。CMD_HIS 参数的值置位为 CMD 参数的值。 • 如果参数 O_FB 和 C_FB的信号状态均为“1”,则将两个报警输出的信号状态都置位为“1”。
参数下表列出了“离散控制定时器报警”指令的参数: 参数 声明 数据类型 存储区 说明 CMD Input BOOL I、Q、M、D、L信号状态“0”表示“关闭 (close)”命令。 信号状态“1”表示“打开 (open)”命令。 O_FB Input BOOLI、Q、M、D、L 打开时的反馈输入 C_FB Input BOOL I、Q、M、D、L 关闭时的反馈输入 Q Output BOOLI、Q、M、D、L 显示参数 CMD 的状态 OA Output BOOL I、Q、M、D、L 打开时的报警输出 CA OutputBOOL I、Q、M、D、L 关闭时的报警输出 ET Static DINT I、Q、M、D、L 当前已用时间,其中 1 次 计数 =1 ms。 PT Static DINT I、Q、M、D、L 预设的定时器值,其中 1 个时钟脉冲 = 1 ms。 PREV_TIMEStatic DWORD I、Q、M、D、L 上一次的系统时间 CMD_HIS Static BOOL I、Q、M、D、L CMD历史位 示例 在以下示例中,参数 CMD 从“0”变为“1”。执行该指令后,参数 Q 将置位为“1”,而两个报警 输出 OA 和 CA的信号状态为“0”。背景数据块的参数 CMD_HIS 的信号状态将置位为“1”,同 时将参数 ET 复位为“0”。 说明可以初始化数据块中的静态参数。MCAT:电机控制定时器报警 (S7-300, S7-400) 说明 “电机控制定时器报警”(Motorcontrol-timer alarm) 指令用于从开启一个命令输入(打开或关闭)时开始计时。计时过程一直持续到超出了预设时间,或相关反馈输入提示设备已在规定时间内执行了要求的操作为止。如果在收到反馈前就超出了预设时间,则触发相应的报警。 在程序中插入该指令时,将打开“调用选项”(Calloptions) 对话框,可以指定块参数将存储 在单个数据块中(单背景)或者作为局部变量存储在块接口中(多重背景)。如果创建了一个单独的数据块,则该数据块将保存到项目树“程序块 > 系统块”(Program blocks > Systemblocks) 路径中的“程序资源”(Program resources) 文件夹内。有关本主题的更多信息,请参见 “另请参见”。执行“电机控制定时器报警”指令 下表列出了“电机控制定时器报警”指令对各种输入条件的反应:IMC:比较输入位与掩码位 (S7-300,S7-400) 说明 可以使用“比较输入位与掩码位”(Compare input bits with the bits of amask) 指令,将Zui多 16 个设定的输入位(IN_BIT0 到 IN_BIT15)的信号状态与相应的掩码位进行比较。可编程 多达16 个带掩码的步。将参数 IN_BIT0 的值与掩码 CMP_VAL[x,0] 的值相比较,其中“x”代 表步号。在参数CMP_STEP 中指定用于比较的掩码步号。所有编程值均以相同方式进行比较。 未编程输入位或未编程掩码位的默认信号状态为 FALSE。如果在比较期间找到匹配值,参数 OUT 的信号状态置为“1”。否则将参数 OUT 置为“0”。 如果参数 CMP_STEP 的值大于15,则不执行该指令。并在参数 ERR_CODE 中输出错误信息。在程序中插入该指令时,将打开“调用选项”(Call options)对话框,可以指定块参数将存储 在单个数据块中(单背景)或者作为局部变量存储在块接口中(多重背景)。如果创建了一个单独的数据块,则该数据块将保存到项目树“程序块 > 系统块”(Program blocks > Systemblocks) 路径中的“程序资源”(Program resources) 文件夹内。有关本主题的更多信息,请参见 “另请参见”。参数 下表列出了“比较输入位与掩码位”指令的参数: 参数 声明 数据类型 存储区 说明 IN_BIT0 Input BOOLI、Q、M、D、L 比较输入位 0 与掩码位 0。 IN_BIT1 Input BOOL I、Q、M、D、L 比较输入位 1 与掩码位1。 IN_BIT2 Input BOOL I、Q、M、D、L 比较输入位 2 与掩码位 2。 IN_BIT3 Input BOOLI、Q、M、D、L 比较输入位 3 与掩码位 3。 IN_BIT4 Input BOOL I、Q、M、D、L 比较输入位 4 与掩码位4。 IN_BIT5 Input BOOL I、Q、M、D、L 比较输入位 5 与掩码位 5。 IN_BIT6 Input BOOLI、Q、M、D、L 比较输入位 6 与掩码位 6。 IN_BIT7 Input BOOL I、Q、M、D、L 比较输入位 7 与掩码位7。 IN_BIT8 Input BOOL I、Q、M、D、L 比较输入位 8 与掩码位 8。 IN_BIT9 Input BOOLI、Q、M、D、L 比较输入位 9 与掩码位 9。 IN_BIT10 Input BOOL I、Q、M、D、L 比较输入位 10与掩码位 10。 IN_BIT11 Input BOOL I、Q、M、D、L 比较输入位 11 与掩码位 11。 IN_BIT12Input BOOL I、Q、M、D、L 比较输入位 12 与掩码位 12。 IN_BIT13 Input BOOLI、Q、M、D、L 比较输入位 13 与掩码位 13。 IN_BIT14 Input BOOL I、Q、M、D、L 比较输入位 14与掩码位 14。 IN_BIT15 Input BOOL I、Q、M、D、L 比较输入位 15 与掩码位 15。 CMP_STEPInput BYTE I、Q、M、D、 L、P 或常数 用于比较的掩码步骤号。参数 声明 数据类型 存储区 说明 OUT OutputBOOL I、Q、M、D、L 信号状态“1”表示找到一个 匹配值。 信号状态“0”表示未找到匹 配值。 ERR_CODE OutputWORD I、Q、M、D、 L、P 错误信息 CMP_VAL Static ARRAY of BOOL I、Q、M、D、L 比较掩码[0 到 15,0 到 15]:下标的第一个编号为 步号,第二个编号为掩码 的位号。有关有效数据类型的更多信息,请参见“另请参见”。