SIEMENS西门子 面板式工控机IPC477D 6AV72406BC070PA0
RTM: 运行时间定时器 (S7-300, S7-400) 说明 使用指令“RTM”,可以设置、启动、停止和读取 CPU 的 32 位运行小时计数器。 使用指令“RDSYSST (页 7903)”,可通过以下参数设置,读取 CPU 的所有 32 位运行小时计 数器:SZL_ID=W#16#0132 和 • INDEX=W#16#000B(运行小时计数器 0 到 7),或 • INDEX=W#16#000C(运行小时计数器 8 到 15)。 另请参见“SZL-ID W#16#0132 索引 W#16#000B 的部分列表摘录的数据记录 ”
下表列出了“RTM”指令的参数: 参数 声明 数据类型 存储区 说明 NR Input BYTE I、Q、M、D、L 或 常量 运行小时计数器的编号 编号从 0 开始。 有关 CPU 的运行小时计数器编号信息, 请参见技术数据。 MODE Input BYTE I、Q、M、D、L 或 常量 作业 ID: • 0:读取(随后将状态写入 CQ,当前 值写入 CV)。在运行小时计数器达 到 (2^31) - 1 小时后,将停在可显示 的Zui高值处并输出一条“上 溢”(Overflow) 错误消息。 • 1:启动(从上一计数值开始) • 2:停止 • 4:设置(PV 中指定的值) • 5:设置(设置为 PV 中指定的值), 然后启动 • 6:设置(设置为 PV 中指定的值), 然后停止 PV Input DINT I、Q、M、D、L 或 常量 运行小时计数器的新值 RET_VAL Return INT I、Q、M、D、L 如果执行指令时出错,则返回值中会包 含一个错误代码。 CQ Output BOOL I、Q、M、D、L 运行小时计数器的状态(1:正在运行) CV Output DINT I、Q、M、D、L 运行小时计数器的当前值 有关有效数据类型的更多信息,请参见“有效数据类型概述”。 对配有 16 位运行小时计数器的 CPU 进行编程时的兼容性 对于 32 位运行小时计数器,还可使用指令“SET_RTM (页7615)”、“CTRL_RTM (页7616)”和 “READ_RTM (页 7617)”。但此时,32 位运行小时计数器操作方式与 16 位运行时间定时器 的相同(值范围:0 ~ 32767 小时)。部分列表提取(带有 SZL-ID W#16#0132 和索引 W#16#0008 )中显示 16 位模式中的 32 位 运行小时计数器 0 到 7。即,可继续使用为配有 16 位运行小时计数器(使用带有 SZL-ID W#16#0132 和索引 W#16#0008 的部分提取列表) CPU 编写的程序。SET_RTM: 设置运行时间定时器 (S7-300, S7-400) 说明 使用该指令,可以将 CPU 运行时间定时器设置为一个指定值。 可设置的运行时间定时器的 数量取决于所用具体 CPU。下表列出了指令“SET_RTM”的参数: 参数 声明 数据类型 存储区 说明 NR Input BYTE I、Q、M、D、L 或常 量 输入 NR 存储有要设置的运行时间定时 器的数量。 从“0”开始编号。 有关所用 CPU 的运行时间定时器的编 号,请参见技术数据。 PV Input INT I、Q、M、D、L 或常 量 输入 PV 存储有运行时间定时器的设置。 RET_VAL Return INT I、Q、M、D、L 如果执行指令时出错,则返回值中会包 含一个错误代码。 有关有效数据类型的更多信息,请参见“有效数据类型概述CTRL_RTM: 启动和停止运行时间定时器 (S7-300, S7-400) 说明 使用该指令,可以启动或停止运行时间定时器。下表列出了指令“CTRL_RTM”的参数: 参数 声明 数据类型 存储区 说明 NR Input BYTE I、Q、M、D、L 或常 数 输入 NR 存储有想启动或停止的运 行时间定时器的数量。 从“0”开始编号。 有关所用 CPU 的运行时间定时器的 编号,请参见技术数据。 S Input BOOL I、Q、M、D、L 输入 S 用于启动或停止运行时间定 时器。 • 将信号状态置为“0”,停止运行 时间定时器。 • 将信号状态置为“1”,启动运行 时间定时器。 RET_VAL Return INT I、Q、M、D、L 指令执行期间,如果出现错误,则 返回值会包含相应的错误代码。 有关有效数据类型的更多信息,请参见“有效数据类型概述READ_RTM: 读取运行时间定时器 (S7-300, S7-400) 说明 使用该指令,可以读取运行时间定时器。 包括运行小时数的当前值以及计数器的状态(即: “已停止”或“正在计数”)。指令“READ_RTM”的参数如下表所示: 参数 声明 数据类型 存储区 说明 NR Input BYTE I、Q、M、D、L、P 或常数 输入 NR 存储有想启动或停止的运 行时间定时器的数量。 从“0”开始编号。 有关所用 CPU 的运行时间定时器的 编号,请参见技术数据。 RET_VAL Return INT I、Q、M、D、L、P 指令执行期间,如果出现错误,则 返回值会包含相应的错误代码。 CQ Output BOOL I、Q、M、D、L 输出 CQ 表示运行时间定时器是正 在运行还是已停止。信号状态“0”表 示运行时间定时器已停止。信号状 态“1”表示运行时间定时器正在运 行。 CV Output INT I、Q、M、D、L、P 输出 CV 表示运行时间定时器的当 前值。 有关有效数据类型的更多信息,请参见“有效数据类型概述本地时间 (S7-300, S7-400) LOC_TIME: 计算本地时间 (S7-300, S7-400) 说明 使用该指令,可读取 CPU 的时间及其状态,并通过这些信息计算本地时间。该指令仅适用于 S7-400 CPU。该指令可在各种优先级的组织块 (OB) 中调用。 功能描述 “LOC_TIME”在内部使用“RDSYSST (页 7903)”指令,从 CPU 的当前时间状态中读取模块时 间、带符号的修正值以及夏令时时间 ID。“RDSYSST (页 7903)”错误将终止该块的执行。错 误代码将传送到 RET_VAL 。 修正值是基础时间与本地时间之间相差的半小时数。也被认为是夏令时或标准时间。 如果 CPU 的时间状态无效,则“LOC_TIME”会因错误而终止。 成功读取时间状态之后,模块时间会加上基于修正值的时间差,并在 LT 中输出。 输出 SUMMER 从时间状态中得到夏令时/标准时间位的数值。 参数 下表列出了“LOC_TIME”指令的参数: 参数 声明 数据类型 说明 RET_VAL Return INT 错误代码 LT Output DATE_AND_TIME 本地时间(Local Time) SUMMER Output BOOL 夏令时标识符 • 0:冬季 • 1:夏季 有关有效数据类型的更多信息,请参见“有效数据类型概述。BT_LT: 通过基准时间计算本地时间 (S7-300, S7-400) 说明 使用该指令,可根据在输入端设置的基准时间计算本地时间。 根据数据块 (DB) 中存储的数据,将在输入 BT 处输入的基准时间转换成本地时间,然后通 过输出 LT 输出。 数据块 (DB) 包含以 30 分钟为一个单元的单元数,基准时间和本地时间之差以此为单位,且 夏令时和标准时间之间的差异也以 30 分钟为单位。 如果转换时发生日期溢出,则将以一个特殊返回值对此进行指示。 “BT_LT”指令可在各种优先级的组织块 (OB) 中调用。 参数 下表列出了指令“BT_LT”的参数: 参数 声明 数据类型 说明 BT Input DATE_AND_TIME 基准时间 WS_DAT Input BLOCK_DB 有关时区和夏令时/标准时间调整的信息(规则数据 块) 对于参数 WS_DAT,使用指向“WS_RULES (页 7636)”数据块类型的指针。 RET_VAL Return INT 错误代码 LT Output DATE_AND_TIME 本地时间 有关有效数据类型的更多信息,请参见“有效数据类型概述。LT_BT: 通过本地时间计算基准时间 (S7-300, S7-400) 说明 使用该指令,可根据在输入端设置的本地时间计算基准时间。 根据数据块 (DB) 中存储的数据,将输入端 LT 处输入的当地时间转换成基准时间,然后在输 出 BT 处返回转换结果。 数据块 (DB) 包含以 30 分钟为一个单元的单元数,基准时间和本地时间之差以此为单位,且 夏令时和标准时间之间的差异也以 30 分钟为单位。 如果转换时发生日期溢出,则将以一个 特殊返回值对此进行指示。