你现在位置:首页>技术论文>软件知识>正文
WinCC问与答
日期:2006-9-5 23:20:14 来源:中华工控网  
点击: 作者:吴 昊
点击【】放大字体.
1、问: 如何触发计算机扬声器的声音?
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

  答: 编写如下C-Action:
WWW_PLCJS@_COM%-PLC-技.术_网

  #pragma code("kernel32.dll");
WWW_PLC※JS_COM-PmLC-技.术_网

  BOOL Beep(DWORD dwFreq,DWORD dwDuration);
WWW_PLCJS_COM-PLC-技.术_网

  #pragma code();
WWW_PLCJS@_COM%-PLC-技.术_网

  Beep(500,500);
WWW_PLC※JS_COM-PmLC-技.术_网

  
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

2、问: 如何通过C脚本来确定报警信息?
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

  答: 首先必须在画面中插入报警控件,可以用如下两种方式来确认信息:
W1WW_P4LCJS_COM-PLC-技.术_网

  (1)、确认单条信息
W1WW_P4LCJS_COM-PLC-技.术_网

  4版本和高于此版本的WinCC
WW.W_PLCJS_COM-PLC-技.术_网

  BOOL OnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName)
P.L.C.技.术.网——可编程控制器技术门户

  5版本和高于此版本的WinCC
W1WW_P4LCJS_COM-PLC-技.术_网

  BOOL AXC_OnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName)
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

  
WWW.PLCJS.COM——可编程控制器技术门户

  (2)、确认报警窗口所有可见的报警
WWcW_PLCJS_COM-PLC-技.术_网

  4版本和低于此版本的WinCC
plcjs.技.术_网

  BOOL OnBtnVisibleAckn(char*lpszPictureName,char*lpszObjectName)
WWcW_PLCJS_COM-PLC-技.术_网

  
——可——编——程——控-制-器-技——术——门——户

  5版本和高于此版本的WinCC
WW.W_PLCJS_COM-PLC-技.术_网

  BOOL AXC_OnBtnVisibleAckn(char*lpszPictureName,char*lpszObjectName)
WWW_PLCJS_COM-PLC-技.术_网

  
W1WW_P4LCJS_COM-PLC-技.术_网

  
WWcW_PLCJS_COM-PLC-技.术_网

3、问: 如何在WinCC中读取系统时间?
WWW_PLC※JS_COM-PmLC-技.术_网

  答: 通过如下C-Action:
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

  #pragma code("kernel32.dll");
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

  Void GetLocalTimes(SYSTEMTIME*lpst);
plcjs.技.术_网

  #pragma code();
W1WW_P4LCJS_COM-PLC-技.术_网

  SYSTEMTIME time;
P.L.C.技.术.网——可编程控制器技术门户

  GetLocalTime(&time);
plcjs.技.术_网

  SetTagWord("Varname",time.wYear);
P.L.C.技.术.网——可编程控制器技术门户

  SetTagWord("Varname",time.wMonth);
WW.W_PLCJS_COM-PLC-技.术_网

  SetTagWord("Varname",time.wDayOfWeek);
WW.W_PLC※JS_C,OM-PL,C-技.术_网

  SetTagWord("Varname",time.wDay);
WWW_P※LCJS_COM-PLC-)技.术_网

  SetTagWord("Varname",time.wHour);
P.L.C.技.术.网——可编程控制器技术门户

  SetTagWord("Varname",time.wMinute);
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

  SetTagWord("Varname",time.wSecond);
WWW.PLCJS.COM——可编程控制器技术门户

  SetTagWord("Varname",time.wMilliseconds);
WWW_PL※CJS_COM-PLC-技.术_网

  
WW.W_PLC※JS_C,OM-PL,C-技.术_网

4、问: 如何经Windows对话框设置日期时间?
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

  答: 通过调用Windows对话框实现。具体如下:
——可——编——程——控-制-器-技——术——门——户

  #include"apdefap.h"
W1WW_P4LCJS_COM-PLC-技.术_网

  void onClick(char*lpszPictureName,char*lpszObjectName,
WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

  char*lpszPropertyName)
WW.W_PLC※JS_C,OM-PL,C-技.术_网

  {ProgramExcute("c:\\win98\\control.exe timedate.cpl");}
——可——编——程——控-制-器-技——术——门——户

  其中执行的程序路径,需根据具体情况填写。
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

  
WWW_P※LCJS_COM-PLC-)技.术_网

  
WWW_PLCJS_COM-PLC-技.术_网

5、问: 如何在WinCC中调用SQL语言?
WWW_PLCJS_COM-PLC-技.术_网

  答: 1、创建一个 SQL文件,此文件在ISQL中建立,文件内包含所要执行的SQL语句。Windows对话框实现。具体如下:
WWW_PLCJS_COM-PLC-技.术_网

  2、在WinCC中用C Script 调用上述SQL文件,如下所示:
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

  #include"apdefap.h"
WWW_PLCJS@_COM%-PLC-技.术_网

  void OnLButtonDown(char* lpszPictureName,
WWW_PL※CJS_COM-PLC-技.术_网

  char* lpszObjectName,
WWW_PLCJS@_COM%-PLC-技.术_网

  char* lpszPropertyName,
——可——编——程——控-制-器-技——术——门——户

  UINT nFlags,int x,int y)
WWW_PL※CJS_COM-PLC-技.术_网

  {
WWW_PLC※JS_COM-PmLC-技.术_网

  char*a="c:\\siemens\\common\\SQLANY\\ISQL-q-b-c
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

  UID=DBA;PWD=SQL;DBF=E:\\testsql\\testsqlRT.DB;
WWW_PLCJS_COM-PLC-技.术_网

  DBN=CC_testsql_99-12-03-12:48:26R;READ
WWW_P※LCJS_CO※M-PLC-技-.术_网

  E:testsql\\test.sql";
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

  Printf("%s\r\n",a);
plcjs.技.术_网

  ProgramExcute(a);
WWW_PL※CJS_COM-PLC-技.术_网

  }
WW.W_PLCJS_COM-PLC-技.术_网

  下面是一个简单的SQL文件内容:
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

  select *from pde#hd#t#test;
WWW_P※LCJS_COM-PLC-)技.术_网

  output to e:\\test2.txt FORMAT ascii
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

  注意:文件名及路径中不要带空格。
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

WWW_P※LCJS_COM-PLC-)技.术_网

6、问: 如何整点启动归档?
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

  答: 在"Globle Script"下的Project function编写程序函数:cyclicarchive
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

  BOOL cyclicarchive()
——可——编——程——控-制-器-技——术——门——户

  {
WWW_PLCJS@_COM%-PLC-技.术_网

  #pragma code("kernel.dll");
WWW_P※LCJS_CO※M-PLC-技-.术_网

  void GetLocalTime(SYSTEMTIME*lpsz);
WWW_PLCJS@_COM%-PLC-技.术_网

  #pragma code();
WW.W_PLC※JS_C,OM-PL,C-技.术_网

  SYSTEMTIME time;
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

  Int t1;
WW.W_PLCJS_COM-PLC-技.术_网

  GetLocalTime(&time);
WW.W_PLCJS_COM-PLC-技.术_网

  T1=time.wMinute;
WWW_P※LCJS_CO※M-PLC-技-.术_网

  If(t1==00)
WWW_PL※CJS_COM-PLC-技.术_网

  {
WWW_PLCJS_COM-PLC-技.术_网

  SetTagBit("startarchive",1);
W1WW_P4LCJS_COM-PLC-技.术_网

  Return(BOOL) (GetTagBit("startarchive"));
WWW_PLCJS@_COM%-PLC-技.术_网

  }
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

  }
WWW_PLCJS@_COM%-PLC-技.术_网

  在Tagloging中的"Properties of process tag"中的"archive tag"Tab下的Archive type选择Cycle-selective,在"Event"标签下的"StartEvent"内选择cyclicarchive函数。
WWW_P※LCJS_CO※M-PLC-技-.术_网

  
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

7、问: How can I set and reset a WinCC variable by mouse click with C script?
P.L.C.技.术.网——可编程控制器技术门户

  答: The following function shows how you can alternately set and reset a WinCC variable by mouse click.

本新闻共2页,当前在第11 2  
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

评论内容
载入中...
载入中...
P
L
C



|










|


P
L
C









·最新招聘信息
·最新求职信息
·推荐产品
·推荐厂商
·栏目热门排行
·站内热门排行