SIMATIC S7-1200的RUNTIME指令 在STEP 7(TIA Portal)中,"RUNTIME"指令可用于测量S7-1200 CPU整套程序执行周期或独立块的运行时间,还能度量信号的激活或间歇时长。"RUNTIME"指令位于"基本指令>程序控制指令>运行时控制"菜单项下,如图1所示。此指令自TIA Portal V13版本起得到支持,且不受CPU固件版本的任何限制。 图1. RUNTIME 指令 主要内容和实验环境 在这个应用示例中,我们将主要介绍如何使用RUNTIME指令来测量S7-1200程序的执行周期、特定程序块的执行时间,以及测量某个信号点的接通或间隔时间。以下是测试环境的具体内容: 软件:TIA V16 Professional Update 3 硬件:CPU1217C DC/DC/DC 6ES7217-1AG40-0XB0 V4.4 示例程序 示例1: 用 "RUNTIME" 指令测量 S7-1200 程序的执行周期 在OB1中,可以通过调用RUNTIME指令来测量整个程序的执行周期。首次调用时开始测量,第二次调用后,RET_VAL将返回上一周期的时间,以此类推,每次返回的值即为上一周期的执行时间。测量的运行时间包括程序执行过程中可能运行的所有CPU进程,比如由高级别事件或通信引起的中断。 通过TRACE功能,可以监控每个周期的时间,这与CPU在线诊断中统计的时间基本一致。 以上内容降重后更注重表达清晰和简洁。 图2. 测量程序 图3. 测量执行周期 示例2:用 "RUNTIME" 指令测量 S7-1200 某一程序块的执行时间 为了测量特定程序块的运行时间,需要使用三个独立的程序段。首先,在首次调用RUNTIME指令之前,需要初始化一个MEM变量,这样就可以确定时间测量的起点。接下来,在第二个程序段中,调用需要测量的程序块。然后,在第三个程序段中,再次调用RUNTIME指令,并将MEM变量与第一次调用时的参数分配保持一致。第三次调用RUNTIME指令时,它会比较第一次调用和第二次调用之间的内部计数器值,以此来计算两个指令执行之间的间隔时间,即所测程序块的执行时间。 图4. 测量程序块 示例3:用 "RUNTIME" 指令测量某一信号点的接通或间隔时间 为了测量某个信号的接通时间,如图 2 所示,可以按照以下步骤进行操作: 图5. 测量信号程序 文章来源: 文章来源:技成培训网原创,作者:胡志豪;未经授权禁止转载,违者必究! |
|