电工之家_电工基础知识学习网站
当前位置:电工之家 > plc > 西门子plc > 正文

西门子plc如何计算电机设备运行时间赋给一个中间变量

时间:2020-12-24 19:11 来源:未知

为了计算终端设备的运行时间,您可以读出 CPU 的当前数据和时间值并计算两次时间的差值。

描述

图 1 所示为计算终端设备运行时间的实例。 为此,STEP 7 (TIA Portal) 提供了两个扩展指令"RD_SYS_T" (读取时间) 和 "T_DIFF" (时间差).。计算后的时间输出是所读取的数据之间的差值,也就是设备的运行时间。

FC2程序:


该块中"RD_SYS_T" 指令被连续两次带条件调用。

当输入参数 "startTime"信号为"1",第一个条件就满足,第一条指令"RD_SYS_T"就被执行。
当输入参数 "stopTime"信号为"1",第二个条件就满足,第二条指令"RD_SYS_T"就被执行。
图2所示是OB "Main"中调用FB "Timedifferent"的实例。


用于测量终端设备运行时间的指令:

步骤 1:"start" = "1" 并且 "stop" = "1"

两个“"RD_SYS_T” 指令同时读出CPU的当前日期和时间。这种情况下,“T_DIFF” 指令计算所得的两次时间值之差为0。
“T_DIFF” 的输出参数 "outTime" 值被复位为0。
步骤 2:开始时间测量:"startTime" = "1" 并且 "stopTime" = "0"

第一个 "RD_SYS_T" 指令不执行,从而停止了CPU时钟读取。所读取的最后 CPU 时钟值保存在静态变量中。
第二个“RD_SYS_T” 指令继续执行并将当前数据存储在第二个静态变量中。
两个静态变量的时间值之差通过指令 "T_DIFF"进行计算,并把结果存储于输出变量"outTime" 中。
步骤 3: 时间测量结束:"start" = "0" 并且 "stop" = "0"

第一个 "RD_SYS_T" 指令继续不执行。所读取的最后 CPU 时钟值仍然保存在静态变量中。
第二个 "RD_SYS_T" 指令也不再执行,也一样停止了CPU时钟读取。所读取的最后 CPU 时钟值仍然保存在静态变量中。
两个静态变量的时间值之差通过指令 "T_DIFF"进行计算。结果作为运行时间传送到输出参数 "outTime"。
注意

在启动新的时间测量之前,必须首先复位两个参数 "start" 和 "stop"为0。

上一篇:S7-1500PLC的PM和PS电源的不同
下一篇:没有了
看过《西门子plc如何计算电机设备运行时间赋给一个中间变量》的人还看了以下文章
西门子PLC直接学哪个系列好 西门子PLC直接学哪个系列好
学习任何一个品牌PLC都需要一定的基础,单对于编程来说,我认为应该有一定的计算机基础,也就是高级语言基...
西门子PLC编程中的FB、FC、DB、OB是什么 西门子PLC编程中的FB、FC、DB、OB是什么
在西门子PLC编程语言中有FB、FC、DB、OB等语言,那么我们就来讲一讲西门子PLC编程中的FB、FC、DB、OB是什么? 1、什么是OB? OB是组织块,是英文Organization block的缩写,组织块是CPU系统和用户程序之间的接口。OB组织块是PLC编程底层语言,有一点像电脑主...
西门子plc热电偶的组态编程以及接线 西门子plc热电偶的组态编程以及接线
对于西门子 S7-200 Smart 的控制器,热电偶的组态,编程,以及接线都是很简单的。我们分以下几步来讲解。 1. 硬件接线 对于该系列可以选择热电偶模块,EM AT04,产品型号:288-3AT04-0AA0。它是一个4通道热电偶测温模块, 分辨率是:0.1C / 0.1F。 支持如下...
西门子PLC程序设计常用的结构 西门子PLC程序设计常用的结构
PLC程序设计,常用的结构有三种:线性化编程、模块化编程、结构化编程。下面我们就以西门子PLC为例,对这三种程序结构展开叙述。 线性化编程是将整个用户程序放在组织块OB1(主程序)中,在CPU循环扫描时执行OB1中的全部指令。其特点是结构简单,但效率低下...
笔记本跟西门子plc组态连接不上怎么解决 笔记本跟西门子plc组态连接不上怎么解决
不知道你是使用的哪款西门子PLC,是S7-200SMART还是1200/1500系列。一般通讯不上若是网口连接,检查IP地址是否有问题,PLC地址必须和电脑地址在同一网断内,且IP地址不能与其他IP地址冲突,再次检查网线、水晶头、网口有无问题,最后检查下载界面的网卡是否...