博途WINCC pro版本请教公共面板循环取值请教

已锁定

手机用户20190310612110

  • 帖子

    3
  • 精华

    0
  • 被关注

    1

论坛等级:游民

注册时间:2019-03-10

普通 普通 如何晋级?

博途WINCC pro版本请教公共面板循环取值请教

959

4

2019-12-06 17:00:58

因为画面上有多个同样的搅拌机,我打算做一个公共面板,然后公共面板有一个下位机传来的远方状态信号,对应公共面板也有一个公共远方状态信号,当点击1号搅拌机按钮时选用单击事件激活函数,以下是2台搅拌机的代码:

其中各变量含义为

"@NOP::2#flocculant-agitator"、"@NOP::1#flocculant-agitator" 公共面板的激活变量,依据其真假来决定主循环do...while语句的循环条件判断;


"@NOP::remote-status" 公共面板的远方状态信号,此HMI变量链接到了DB块中已被存储;


"@NOP::#1coagulantagitatorremotestatus"、"@NOP::#2coagulantagitatorremotestatus"下位机传来的实际远方状态信号,利用PLCSIM进行仿真;


#include "GlobalDefinitions.h" //第一台搅拌机
void OnClick(char* screenName, char* objectName, char* propertyName)//左键激活系统函数
{
    SetTagBit("@NOP::2#flocculant-agitator",FALSE);    //设定2号搅拌机操作面板激活变量为0
    SetTagBit("@NOP::1#flocculant-agitator",TRUE);//设定1号搅拌机操作面板激活变量为1

        do//循环将下位机I点远方状态的值赋值给公共面板的远方状态变量

        {

        SetTagBit("@NOP::remote-status",GetTagBit("@NOP::#1coagulantagitatorremotestatus"));

        ActivateScreenInScreenWindow ("flocculant & congulant screen", "1# agitator controler",             "1#flocculant agitator controler");//在画面中的固定窗口中激活公共面板画面

        }

        while(GetTagBit("@NOP::1#flocculant-agitator") == TRUE);//当1号搅拌机操作面板激活变量为1时才继续循环
}



#include "GlobalDefinitions.h" //第二台搅拌机
void OnClick(char* screenName, char* objectName, char* propertyName)//左键激活系统函数

{
    SetTagBit("@NOP::1#flocculant-agitator",FALSE);    //设定1号搅拌机操作面板激活变量为0
    SetTagBit("@NOP::2#flocculant-agitator",TRUE);//设定2号搅拌机操作面板激活变量为1

        do//循环将下位机I点远方状态的值赋值给公共面板的远方状态变量
        {
        SetTagBit("@NOP::remote-status",GetTagBit("@NOP::#2coagulantagitatorremotestatus"));

        ActivateScreenInScreenWindow ("flocculant & congulant screen", "1# agitator controler",             "1#flocculant agitator controler");//在画面中的固定窗口中激活公共面板画面
        }

        while(GetTagBit("@NOP::2#flocculant-agitator") == TRUE);//当2号搅拌机操作面板激活变量为1时才一直循环
}


现在遇到的问题是,以上代码鼠标先点击#1搅拌机后再点击#2搅拌机的时候,"@NOP::1#flocculant-agitator"和"@NOP::2#flocculant-agitator 俩个变量通过链接的DB块中的地址发现该变量并没有随之更改,现请教各位大佬如何利用脚本制作公共面板,谢谢大佬!

博途WINCC pro版本请教公共面板循环取值请教 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有31079条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。