编程技术分享平台

网站首页 > 技术教程 正文

S7-1200程序执行时间的介绍(s7-1200程序结构)

xnh888 2024-10-25 18:17:34 技术教程 110 ℃ 0 评论

系统执行时间

S7-1200 CPU的循环扫描时间(看门狗时间)默认为150ms,最大可修改为6000ms,如图1:

当编程结束后,需要了解程序的循环周期,可通过如下方法查询。

将程序下载到PLC后,进行在线连接,查看路径:“在线和诊断”--->“循环时间”,如图2:

子程序执行时间

使用S7-1200 CPU时,若需要了解某个子程序的执行时间,依据如下方法进行编程。

首先,设置PLC系统时钟,按图3方法设置:

接着,创建数据块DB1,块名称为“time”,并创建变量,如图4:

注:若选择“已优化”DB块,则创建的DB块变量不显示“偏移量”列,后续程序中变量则为符号寻址。

注:关于DB块的使用,请查看“S7-1200 数据块的使用”。

然后,在OB1中编程,读取子程序执行前、后的系统时间,再运用指令 T_DIFF 做时间相减。

如下例程中测试了“块_1(FC1)”子程序的执行时间,如图5:

最后,通过监控表查看该子程序的执行时间,如图6:

注:若需要测试中断程序的执行时间,可将中断程序拷贝到子程序“块_1(FC1)”中进行测试。

常问问题

为何程序下载完毕后PLC无法运行,PLC诊断信息中出现“超出最大程序循环时间”?

可能的原因:

1、程序过长,执行时间超过设置的最大循环时间;

2、程序中有死循环程序导致执行时间超过最大循环时间;

3、定时中断程序的执行时间大于所设定的定时间隔时间,导致定时中断事件缓冲区溢出而停机。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表