西门子(中国)有限公司(SLC)

注册 登录

  签到     订阅   每日登录:+1西币 +1经验值我的支持中心

信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。

技术论坛


wincc常用脚本-二

作者 主题
侠圣

经验值: 4683
发帖数: 194
精华帖: 2
主题:【分享】wincc常用脚本-二
推荐帖


只看楼主 楼主 2019-04-24 14:46:31

1、打开系统某应用软件(C脚本)

#pragma option(mbcs)


ProgramExecute("C:\Program Files (x86)\VWController-CN(2.0.0.3)\VWController-CN.exe");


注意:从应用属性复制路径后要把改为\


2、if-else语句(C脚本)

int gscAction( void )

{

BOOL bTmp1;

bTmp1 = GetTagBit("flash1"); //Return-Type: BOOL 

if (bTmp1 == 1)

{

  bTmp1 =0;

}

else

{

  bTmp1 = 1;

}

SetTagBit("flash1", (short int)bTmp1); //Return-Type: BOOL 


3、修改趋势控件时间轴(C脚本)

#define Page lpszPictureName

#define Window "控件1"

SetPropWord(Page,Window,"TimeAxisIndex",0);

SetPropWord(Page,Window,"TimeAxisTimeRangeFactor",4);

SetPropWord(Page,Window,"TimeAxisTimeRangeBase",3600000);

以上为4小时

#define Page lpszPictureName

#define Window "控件1"

SetPropWord(Page,Window,"TimeAxisIndex",0);

SetPropWord(Page,Window,"TimeAxisTimeRangeFactor",10);

SetPropWord(Page,Window,"TimeAxisTimeRangeBase",60000);

以上为10分钟

可效仿以上示例实现按钮更改趋势控件时间轴,更改为任意时间范围。


4、更改趋势控件数值轴(C脚本)

int a,b;

a = GetTagDWord("gl_H"); //Return-Type: DWORD 

b = GetTagDWord("gl_L"); //Return-Type: DWORD 



#define Page lpszPictureName

#define Window "控件1"


SetPropWord(Page,Window,"ValueAxisIndex",0);

SetPropWord(Page,Window,"ValueAxisEndValue",a);

SetPropWord(Page,Window,"ValueAxisBeginValue",b);


建立内部变量,按钮动作编写以上脚本



有志者事竟成~~~
以下网友喜欢您的帖子:

  
重要声明:

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

帖子链接:http://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1555593&b_id=5

版主

经验值: 43682
发帖数: 6489
精华帖: 48
回复:wincc常用脚本-二


只看楼主 1楼 2019-04-24 15:53:24

感谢分享

第二个If else语句就是乒乓键哈


Q 187272190 Q 群:6141014
以下网友喜欢您的帖子:

  
版主

经验值: 43682
发帖数: 6489
精华帖: 48
回复:wincc常用脚本-二
推荐帖


只看楼主 2楼 2019-04-24 15:53:58

脚本再加上注释就好了,方便初学者学习理解


Q 187272190 Q 群:6141014
以下网友喜欢您的帖子:

  
版主

经验值: 26002
发帖数: 11749
精华帖: 49
回复:wincc常用脚本-二


只看楼主 3楼 2019-04-25 07:38:37

对于高手来说你这个不难,对于低手来说,你这个难懂。程序加注解是很有必要的。


活到老,学到老!为了生活学习吧!
以下网友喜欢您的帖子:

  
奇侠

经验值: 5457
发帖数: 722
精华帖: 0
回复:wincc常用脚本-二


只看楼主 4楼 2019-04-25 09:19:33


源码分享!


 
以下网友喜欢您的帖子:

  
游侠

经验值: 390
发帖数: 21
精华帖: 0
回复:wincc常用脚本-二


只看楼主 5楼 2019-04-25 09:50:56

其实第二个if else写成如下格式更简捷一些:

SetTagBit("flash1", !GetTagBit("flash1"));

一句搞定。


 
以下网友喜欢您的帖子:

  
侠圣

经验值: 3951
发帖数: 258
精华帖: 0
回复:wincc常用脚本-二


只看楼主 6楼 2019-04-27 11:30:03

干净干净干净


我是风......来无影......去无踪的......风......
以下网友喜欢您的帖子:

  
  • 上一页
  • 1
  • 下一页
×
扫描打开手机版
您收到0封站内信:
×
×