• 沒有找到結果。

用于处理运行系统计时器的SFC

长沙工控帮教育科技有限公司整理 Copy

6 用于处理运行系统计时器的SFC

6.1

运行时间定时器

简介

CPU具有若干运行时间定时器(请参照有关CPU技术资料)。

• SFC 2、3和4用于设置、启动、停止或读取CPU 16位运行时间定时器。

• SFC101 “RTM”用于设置、启动、停止或读取CPU 32位运行时间定时器。

注意

SFC 2、3和4也可用于32位运行时间定时器。但是,在这种情况下这个运行时间定 时器将以16位模式工作(取值范围:0到32767小时)。

参见:具有SSL ID W#16#0132索引W#16#000B的部分列表摘录的数据记录。

应用

运行时间定时器有各种应用方式:

• 测试CPU的运行时间

• 测试控制器或相关设备的运行时间。

运行时间定时器的特征

启动时,运行时间定时器开始记录最后一个数值。如果要求在不同的初始值启动,

这个值必须自己定义(SFC2或SFC101,MODE=4)。如果CPU进入STOP状态,或者 您停止运行时间定时器,则CPU将记录运行时间定时器的当前值。在执行CPU热重 启或冷启动后,必须重新启动运行时间定时器(SFC3或SFC101,MODE=1)。

取值范围:

• 带有16位运行时间定时器的CPU:0到32767小时

• 带有32位运行时间定时器的CPU:0到(2E31) -1 小时 = 2.147.483.647小时

长沙工控帮教育科技有限公司整理

6.2

使用SFC101 “RTM”控制运行时间定时器

描述

调用SFC101 “RTM” (运行时间定时器)可设置、启动、停止和读取CPU的32位运行 时间定时器。

调用SFC51 “RDSYSST”,SZL_ID=W#16#0132,INDEX=W#16#000B(运行时间定 时器0 … 7)或INDEX=W#16#000C(运行时间定时器8 … 15)读取CPU 32位运行时间 定时器的值,(参见具有SSL ID W#16#0132索引W#16#000B的部分列表摘录的数据 记录。

参数 声明 数据类型 存储区域 描述 NR INPUT BYTE I、Q、M、D、L、

常数

运行时间定时器的编号(允许值:0 … 15)

MODE INPUT BYTE I、Q、M、D、L、

常数

作业标识符:

0:读取(状态写入CQ,当前值写入 CV)。运行时间定时器达到(2E31) -1 小时,它会停止运行并显示这个最高

SFC 2 “SET_RTM”、SFC 3 “CTRL_RTM”和SFC 4 “READ_RTM”可用于操作32位 运行时间定时器。但此时,32位运行时间定时器只能当作16位使用(取值范围:

0到32767小时)。

具有SSL ID W#16#0132和索引W#16#0008的部分列表摘录以16位模式显示32位运 行时间定时器0到7。也就是说,您可以继续使用为具有16位运行时间定时器的CPU 开发的程序,这些程序使用具有SSL ID W#16#0132和索引W#16#0008的部分列表 摘录。

长沙工控帮教育科技有限公司整理

出错信息

出错代码 W#16#...)

说明

0000 无故障

8080 运行时间定时器编号出错 8081 负值被传送到参数PV。

8082 运行时间定时器溢出。

8091 输入参数MODE的值非法。

8xyy 常规故障代码,请参见使用输出参数RET_VAL判断故障

长沙工控帮教育科技有限公司整理

6.3

使用SFC2 “SET_RTM”设置运行时间定时器

描述

使用SFC2 “SET_RTM” (设置运行时间定时器),可将CPU的运行时间定时器设置为 所选值。可以设置的运行时间定时器数量取决于所使用的CPU。

参数 声明 数据类型 存储区域 描述 NR INPUT BYTE I、Q、M、D、L、

常数

输入NR包含您要设置的运行时间定时器的 编号(允许值:0到7)。

PV INPUT INT I、Q、M、D、L、

常数

参数PV用于运行时间定时器设置 (缺省值)。

RET_VAL OUTPUT INT I、Q、M、D、L 如果在执行功能的同时出错,则返回值包 含故障代码。

出错信息

出错代码(W#16#...) 说明

0000 无故障

8080 运行时间定时器的编号出错

8081 负值被传送到参数PV。

8xyy 常规故障代码,请参见使用输出参数RET_VAL判断故障

长沙工控帮教育科技有限公司整理

6.4

使用SFC3 “CTRL_RTM”启动和停止运行时间定时器

描述

SFC3 “CTRL_RTM” (控制运行时间定时器)用于启动或停止CPU的运行时间定 时器。

参数 声明 数据类型 存储区域 描述 NR INPUT BYTE I、Q、M、D、L、

常数

输入NR包含您要启动或停止的运行时间定 时器的编号(允许值:0到7)。

S INPUT BOOL I、Q、M、D、L、

常数

输入S可启动或停止运行时间定时器。

当您想要停止计数器时,请将信号状态设 置为“0”。当您想要启动计数器时,请将信 号状态设置为“1”。

RET_VAL OUTPUT INT I、Q、M、D、L 如果在执行功能时出错,则返回值将包含 故障代码。

出错信息

出错代码(W#16#...) 说明

0000 无故障

8080 运行时间定时器的编号故障

8xyy 常规故障代码,请参见使用输出参数RET_VAL判断故障

长沙工控帮教育科技有限公司整理

6.5

使用SFC4 “READ_RTM”读取运行时间定时器

描述

使用SFC4 “READ_RTM” (读取运行时间定时器),可以读取运行时间定时器。

SFC4以输出数据的形式提供当前的运行时间,以及计数器的状态,例如,“停止”或

“计数”。

如果运行时间定时器运行超过32767小时,它将停在计数值32767并输出“溢出”的故 障消息。

参数 声明 数据类型 存储区域 描述 NR INPUT BYTE I、Q、M、D、L、

常数

输入NR包含您要读取的运行时间定时器的 编号(允许值:0到7)。

RET_VAL OUTPUT INT I、Q、M、D、L 如果在功能运行时出错,则返回值包含故 障代码。

CQ OUTPUT BOOL I、Q、M、D、L CQ显示运行时间定时器是否运行。信号状 态“0”表示运行时间定时器已被停止。信号 状态“1”表示运行时间定时器正在运行。

CV OUTPUT INT I、Q、M、D、L CV显示运行时间定时器的当前值。

出错信息

出错代码(W#16#...) 说明

0000 无故障

8080 运行时间定时器的编号出错

8081 运行时间定时器溢出

8xyy

长沙工控帮教育科技有限公司整理

常规故障代码,请参见使用输出参数RET_VAL判断故障

6.6

使用SFC64 “TIME_TCK”读取系统时间

描述

使用SFC64 “TIME_TCK” (时间刻度报时信号),可以读取CPU的系统时间。系统时 间是一个循环时间计数器,技术范围周期性从0统计到最大值~2147483647毫秒的“

时间计数器”。如果出现上溢溢出时,系统时间将从0开始重新计数。系统时间的分 辨率和精度对于S7-400和CPU 318系统时间的分辨率和精度为1毫秒,而对于所有其 它S7-300 CPU则为10毫秒。只有CPU的操作模式才影响系统时间只受CPU工作模 式的影响。

应用

例如,比较SFC64两次执行的结果,测试执行周期。

系统时间和模式

模式 系统时间...

启动 ...刷新

RUN STOP ...停止并且保持当前值 热重启

(不适于S7-300和S7-400 H)

...延续进入停止前保存的值

暖重启 ...删除并从“0”重新开始 冷重启

参数 声明 数据类型 存储区域 描述

RET_VAL OUTPUT TIME I、Q、M、D、L RET_VAL参数读取的系统时间取值 范围:0到231-1毫秒。

出错信息

SFC64 “TIME_TCK”不提供任何出错信息。

长沙工控帮教育科技有限公司整理

长沙工控帮教育科技有限公司整理