wincc系统日期时间获取
系统时间的获得,有两种办法,一是建立TAG,二是使用函数获取系统时间
方法一:
在[Tag Management]添加新的驱动"System
Info.chn",然后在新添加的[SYSTEM
INFO]新建连接,这样就可以创建实际TAG了;
下面新建几个TAG: 名字:date, 数据类型:text tag 8-bit
character
set,地址设定为Function:date,format:"MM-DD-YYYY"
名字:time, 数据类型:text tag 8-bit character
set,地址设定为Function:Time,format:"HH:MM:SS"
根据上面的方法依次建立year,mon,day,week等TAG,请分别设置对应的format内容
图1 设置时间日期变量
TAG建立完成了,就可以读到系统时间了。新建一个图形文件,分别放置几个静态文本框[static
text],把TEXT属性连接到上面新建的TAG,就可以显示系统日期时间,利用WEEK还能显示今天是星期几了.
图2 连接变量
图3 运行效果图
方法二: 使用
C脚本获得系统时间
#include "apdefap.h"
char* _main(char* lpszPictureName, char* lpszObjectName, char*
lpszPropertyName)
{
time_t timer;
struct
tm *ptm;
char *p;
time(&timer);
ptm=localtime(&timer);
p=SysMalloc(9);
sprintf(p,"d:d:d",ptm->tm_year+1900,ptm->tm_mon+1,ptm->tm_mday);
return(p);
}
其中
//系统时间已经获得
//年: ptm -> tm_year+1900
//月: ptm-> tm_mon+1
//日: ptm ->
tm_mday
//星期: ptm -> tm_wday
*注意这个,tm_wday返回的是整数,必须经过转换才能用来表示星期几的