您的位置:控制工程论坛网论坛 » 西门子社区 » 读出S7-1500 CPU运行时间的四种方法

wangchen

wangchen   |   当前状态:在线

总积分:9908  2024年可用积分:0

注册时间: 2010-03-25

最后登录时间: 2023-08-10

空间 发短消息加为好友

读出S7-1500 CPU运行时间的四种方法

wangchen  发表于 2016/11/16 16:16:47      1678 查看 4 回复  [上一主题]  [下一主题]

手机阅读

读出S7-1500 CPU的运行时间有多种方式,下面分别介绍这几种方式。

1.通过OB1的启动参数读出运行时间在非优化的OB1启动信息中带有OB1的运行时间,如图1所示。


图1.读出非优化的OB1中运行时间

将启动信息参数传递到全局变量中就可以读出CPU的上次扫描、最小、最大扫描时间,编程非常方便。

2.调用RD_SINFO函数读出运行时间

如果使用优化的OB1,启动信息简化而没有这些运行信息,如图2所示,则必须调用函数读出。 


图2优化OB1的启动信息

例如在OB1中调用RD_SINFO函数读出运行时间,程序如图3所示。参数TOP_SI为当前OB1的启动信息,数据类型为SI_classic,需要手动键入,ZI1为上次扫描时间,ZI2_3包含最小、最大扫描时间,低字为最小扫描时间,高字为最大扫描时间,示例中分别传送到MW10和MW12中。START_UP_SI为暖启动OB的启动信息,示例中没有进行引用。 


图3调用RD_SINFO函数

3.调用RT_INFO函数读出运行时间

通过函数RT_INFO也可以读出CPU的运行时间,示例程序如图4所示。


图4调用RT_INFO函数

通过模式1、2、3可以读出CPU的上次扫描、最小、最大扫描时间,在这三种模式下,参数INFO的数据类型为LTIME,可以直接读出。也可以通过其他模式读出运行时间的百分比。

4.调用RUNTIME指令读出运行时间

通过指令RUNTIME可以从参数RET_Val直接读出CPU的运行时间,单位为秒,MEM为中间保存程序运行的存储器,两个参数类型都是LREAL,除此之外还可以读出一段程序的运行时间。如图5所示。 


图5 RUNTIME指令

1楼 1 0 回复
  • mhz555555

    mhz555555   |   当前状态:离线

    总积分:0  2024年可用积分:0

    注册时间: 0001-01-01

    最后登录时间: 0001-01-01

    空间 发短消息加为好友

    mhz555555   发表于 2016/11/16 16:39:20

    感谢楼主的分享,很不错。
    2楼 回复本楼

    引用 mhz555555 2016/11/16 16:39:20 发表于2楼的内容

  • jijun

    jijun   |   当前状态:在线

    总积分:5844  2024年可用积分:2

    注册时间: 2007-09-24

    最后登录时间: 2023-08-18

    空间 发短消息加为好友

    jijun   发表于 2016/11/19 21:31:30

    感谢楼主分享,后面三种 给出了 使用优化主循环OB时,怎么样读出相关扫描时间~!尤其是RUNTIME指令可以测量任意程序段间的扫描时间。
    3楼 回复本楼

    引用 jijun 2016/11/19 21:31:30 发表于3楼的内容

  • atmupkeep

    atmupkeep   |   当前状态:在线

    总积分:5759  2024年可用积分:0

    注册时间: 2011-05-08

    最后登录时间: 2023-08-15

    空间 发短消息加为好友

    atmupkeep   发表于 2016/11/20 12:07:26

    楼主辛苦,谢分享。

    4楼 回复本楼

    引用 atmupkeep 2016/11/20 12:07:26 发表于4楼的内容

  • lizhihua0907

    lizhihua0907   |   当前状态:在线

    总积分:1160  2024年可用积分:0

    注册时间: 2011-09-01

    最后登录时间: 2023-11-14

    空间 发短消息加为好友

    lizhihua0907   发表于 2016/11/24 10:42:29

    谢谢了,这是用的博途软件?

    5楼 回复本楼

    引用 lizhihua0907 2016/11/24 10:42:29 发表于5楼的内容

总共 , 当前 /