控制工程网首页 | 产品 | 在线研讨会 |  视频 | 空间 | 论坛 | 博客 
我的空间
用户名:
密 码:
我要加入该社区!   注册新会员
总共 , 当前 /
楼主:发表于:2016/11/16 16:16:47,查看2279次

读出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指令

2楼:回复于:2016/11/16 16:39:20

感谢楼主的分享,很不错。

3楼:回复于:2016/11/19 21:31:30

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

4楼:回复于:2016/11/20 12:07:26

楼主辛苦,谢分享。

5楼:回复于:2016/11/24 10:42:29

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

总共 , 当前 /
  • 发表回复
请先登录,在回复。
  • 社区公告
  • 西门子自动化社区是西门子工业业务领域在本站开设的官方互动社区,旨在提供西门子工业业务领域的最新产品、技术和解决方案,同时为用户和西门子之间提供一个互动交流的平台。工业业务领域由工业自动化集团、驱动技术集团、客户服务集团以及冶金技术部构成,在中国拥有62个办事处以及14家运营公司。如欲了解更多信息,请访问:http://www.industry.siemens.com.cn。
  • 社区专家
  • 社区赞助商
  • 通过本社区和厂商联系
1.我有以下需求:
我想得到贵公司产品详细资料
我想得到贵公司产品的价格信息
我让贵公司产品销售人员联系我
我让贵公司技术支持人员联系我
2.详细的需求:

(不支持Html)
姓名:
单位:
电话:
邮件:
  • 网友反馈
  • 张鹏 在2025/06/26留言
  • 留言类型:我让贵公司产品销售人员联系我,
  • 详细留言:购买雷达物位计,型号:SITRANS LR560,矿山厂深部924m以上安全系统优化工程
  • 刘地江 在2025/06/23留言
  • 留言类型:得到贵公司产品的价格信息,
  • 详细留言:型号:SITRANS LR560.雷达物位计
  • 王永贵 在2025/06/10留言
  • 留言类型:得到贵公司产品详细资料,得到贵公司产品的价格信息,贵公司产品销售人员联系我,贵公司技术支持人员联系我,
  • 详细留言:西门子step7v5.5正版软件;winccV7.5(2048)完全版正版授权;TIA博途V15正版软件;winccV7.5(512)完全版正版授权。
更多请进入空间管理中心查看
© 2003-2025
本页面信息涉及广告内容