[西门子] 西门子Wincc画面中选项组的使用(后附脚本)

[复制链接]
查看46428 | 回复0 | 2024-11-28 08:46:25 | 显示全部楼层 |阅读模式


    在西门子wincc画面中,有时候项目会涉及的选择性或者切换操作操作,这个时候可以使用选项组实现,如上图所示。

注:下面所有操作只是用来演示仿真使用,并无实际代表意义!!!

步骤:

1、西门子Step7中新建3个BOOL变量,并且编译传送至Wincc变量管理器中,如下图:



2、打开wincc图形编辑器,新建画面,在画面中放置选项组框,设置好框数量,这里设置4,如下图:



3、根据不同索引号,设置好文本:索引1对应文本为“操作员1”;索引2对应文本为“操作员2”;索引3对应文本为“操作员3”;索引4对应文本为“无”;如下4图所示:









4、编写脚本,在选项组“事件”-->“输出/输入”-->“选择框”-->“更改”编写如下C脚本,下图中所示:



具体脚本如下:

#include "apdefap.h"

void OnPropertyChanged(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName,  long  value)

{

switch  (value)

{

  case 1: SetTagBit("S7$程序(1)/PD1_XZ_1",1);

                SetTagBit("S7$程序(1)/PD1_XZ_2",0);

                SetTagBit("S7$程序(1)/PD1_XZ_3",0

  break;

  case 2: SetTagBit("S7$程序(1)/PD1_XZ_2",1);       

                SetTagBit("S7$程序(1)/PD1_XZ_1",0);

               SetTagBit("S7$程序(1)/PD1_XZ_3",0);

  break;

  case 4: SetTagBit("S7$程序(1)/PD1_XZ_3",1);       

                SetTagBit("S7$程序(1)/PD1_XZ_2",0);

               SetTagBit("S7$程序(1)/PD1_XZ_1",0);

  break;

default: SetTagBit("S7$程序(1)/PD1_XZ_3",0);       

                SetTagBit("S7$程序(1)/PD1_XZ_2",0);

               SetTagBit("S7$程序(1)/PD1_XZ_1",0);

}

}

仿真效果如下视频:


video: https://mp.weixin.qq.com/mp/readtemplate?t=pages/video_player_tmpl&action=mpvideo&auto=0&vid=wxv_3540164173333069825

脚本下载链接如下:

链接:https://pan.baidu.com/s/1EHtzkQ-HaOY9XxzsNQhuGA?pwd=8f2m

提取码:8f2m

--来自百度网盘超级会员V10的分享

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则