|
发表于 2013-12-8 15:35:48
|
显示全部楼层
1.读取S7-300系统时钟
方法一
调用SFC1即可。要先新建一个DATE_TIME的变量;还要在程序编辑窗口点击“PLC——设置时实时钟——”使PLC与PC时间同步。
方法二
OB1中有一个TEMP的临时变量,系统已经把PLC的系统时间放在最后一个变量OB1_DATE_TIME中。
当然这些时间都要经过转换一下才能得到相应的“年、月、日、时、分、秒、毫秒、星期”,看帮助文件吧!
2.CPU扫描周期,包括最大扫描时间,最小扫描时间,当前扫描时间
方法一
在线连接PLC,在硬件窗口查看CPU的模块信息,打开“循环扫描时间”就可以看到了。
方法二
同样在OB1的TEMP变量中OB1_PREV_CYCLE是指上一次OB1 的循环时间(ms);
OB1_MIN_CYCLE是指CPU 启动后,最短一次OB1 的循环时间(ms);
OB1_MAX_CYCLE是CPU 启动后,最长一次OB1 的循环时间(ms);
希望对你有帮助!
读取S7-300/400系统时钟参见:如何用 SFC1 (READ_CLK) 读取时间和日期以及如何用 SFC0 (SET_CLK) 设定系统时间
http://www.ad.siemens.com.cn/download/docMessage.aspx?ID=4473&loginID=&srno=&sendtime=
CPU扫描周期不用系统块就可以读取到,当然也没有这样的块。打开OB1中的声明变量表中有相应的变量。
附件中的程序是把最大扫描时间,最小扫描时间,当前扫描时间传入到屏上来实现显示。这是最典型的应用。
图片说明:1,1 |
|