求助WINCC画面自动切换

假设有 tag tag1  tag2 tag3  4个二进制变量   当tag为1的时候画面切换开启  

当tag为1  tag1也为1的时候打开画面1  
当tag为1  tag2为1的时候打开画面2  
当tag为1  tag3为1的时候打开画面3
当tag为0的时候画面自动切换关闭
求助老师这个C脚本该怎么写 。

最佳答案

定义一个wincc内部int变量mytag,tag为1,tag1为1,mytag=1;tag为1,tag2为1,mytag=2;tag为1,tag3为1,mytag=3;否则mytag=0。wincc主画面用画面窗口,显示的画面名称的属性用动态对话框链接mytag,为1显示画面1,为2显示画面2,为3显示画面3.
wincc全局脚本:
#define Tag_1 "tag"
#define Tag_2 "tag1"
#define Tag_3 "tag2"
#define Tag_4 "tag3"
IF ((unsigned long)GetTagDouble(Tag_1)&(unsigned long)GetTagDouble(Tag_2)) 
SetTagWord("mytag",1);
IF ((unsigned long)GetTagDouble(Tag_1)&(unsigned long)GetTagDouble(Tag_3)) 
SetTagWord("mytag",2);
IF ((unsigned long)GetTagDouble(Tag_1)&(unsigned long)GetTagDouble(Tag_4)) 
SetTagWord("mytag",3);


全局脚本触发变量为你的4个bool变量。


wincc画面窗口c脚本:
#define TAG_1 "mytag"
// WINCC:TAGNAME_SECTION_END

// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction "PictureName"
// next PicID : 1
// WINCC:PICNAME_SECTION_END

static double limitValue[2] = {1.00000000000000,2.00000000000000,};
static char* value[3] = {"3#炉冷渣机调整.PDL","3#炉冷渣调整.Pdl","3#炉冷渣调整.Pdl",};
return value[Check_LimitsD (GetTagDouble (TAG_1), 3, &limitValue[0])];

提问者对于答案的评价:
老是编译错误

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc365325.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 下午1:42
下一篇 2021年7月5日 下午1:42

相关推荐

  • wincc flexible 2008报警组态

    wincc flexible 2008报警窗口怎样实现与PLC通讯断开时弹出报警窗,如果通讯没有恢复则一直显示报警,同时可以通过报警窗口中的“文本信息”按钮来查…

    SIMATIC WinCC 2021年7月5日
  • wincc位触发报警信息

    wincc工程里面只建立二进制变量,能不能直接用位触发报警控件中的弹出的报警信息。  最佳答案 WINCC工程里面本来就可以直接用位触发报警控件中的弹出的报警信息,并不需…

    SIMATIC WinCC 2019年6月11日
  • 二进制触发变量记录

    现有一个二进制变量(内部变量通过脚本位关联PLC),希望通过此二进制变量触发变量记录,发现0~1 1~0都记录一次,现希望只记录一次,请问怎么做? 发现在PLC…

    SIMATIC WinCC 2019年6月11日
  • WinCC6.0运行在2003系统下可以么?

    WinCC6.0运行在Windows 2003 Server 版本下可以么?运行在什么系统下最稳定? 问题补充:我的服务器需要带20台客户机,服务器上…

    SIMATIC WinCC 2019年6月11日
  • wincc运行系统

    为什么我把WINCC程序拷贝到另外一个电脑,运行时出现“可用的服务器不在计算机文件列表”对话框,我已把WINCC中计算机->属性->计算机名称改了,还是不行,是为什么啊…

    SIMATIC WinCC 2019年6月11日
  • WINCC FLEXIBLE下载编译时报错

    HMI的程序小修改了一下,再下载进去的时候报错了。报错错误为:(detail: 已存在相同键的条目),但是我再用一个新屏是可以下进去的。求解,这是什么错误? 钻石用户推荐…

    2021年7月5日
  • 求教WINCC中按时间生成EXCEL报表

    各位高手,我在学习WINCC的EXCEL报表,在网上找到按日期时间创建的一个EXCEL文件,我试过,运行不起来,请专家指教!    VBS代…

    SIMATIC WinCC 2017年8月18日
  • smart 700 ie v3 无法下载程序

    使用wincc  flexible smart 下载程序到 smart700 ie v3,ip地址等信息都配置…

    2021年7月5日
  • wincc7.3曲线

    如何直接用plc变量画曲线(画完怎么清空再画),是否可以将曲线保存,想要的时候再调用(保存时是否可以加上条码) 问题补充:我想画一个xy曲线,是不是应该用functiontrend…

    2021年7月5日
  • 请问用protool软件 如何做历史报警记录?

    请问用protool软件 如何做历史报警记录? 现在我想用protool软件实现做历史报警记录,不知能否实现,如何制作?谢谢 最佳答案 可以实现的!多看一下手册…

    SIMATIC WinCC 2019年6月11日

发表回复

登录后才能评论