国产清洁工av剧情精品_欧洲日韩av网站_国产视频手机在线播放_亚洲精品国产va在线观看蜜芽_AV网页在线好看_久久精品国产亚洲精品2023_一级日韩一级欧美_亚洲欧美日韩中文天堂_最近中文字幕mv在线视频_男女啪啪高潮激烈免费版网站

您好,歡迎訪問泰安宏盛自動化科技有限公司!
20年專注工控自動化研發(fā)制造 系統(tǒng)設(shè)計\制作\安裝一條龍服務(wù)
全國咨詢熱線:18605386049
當(dāng)前位置: 首頁 > 技術(shù)資料 > 程序案例

WINCC不同變量結(jié)構(gòu)使用同一窗口實現(xiàn)畫面切換

作者:小編 時間:2024-03-26 09:05:04 點擊:

WINCC不同變量結(jié)構(gòu)使用同一窗口實現(xiàn)畫面切換

1. 新建畫面

2. 建立變量

3. 連接變量

1. 新建畫面

使用同一個畫面窗口利用按鈕切換不同變量前綴的內(nèi)容畫面,并實現(xiàn)不同系統(tǒng)之間的切換。

首先新建兩個子畫面(電機(jī),風(fēng)機(jī))內(nèi)容包括一個小標(biāo)題,兩個按鈕,兩個狀態(tài)顯示。

然后建立一個彈窗畫面用來切換子畫面包括兩個切換按鈕,兩個畫面窗口,實現(xiàn)電機(jī)和風(fēng)機(jī)的切換。

undefined

建立一個主畫面用來調(diào)用彈窗畫面,實現(xiàn)系統(tǒng)的切換。

undefined

2. 建立變量

undefined

image.png

3. 連接變量

首先打開電機(jī)子畫面連接變量,連接小標(biāo)題(@NPTP:XBT_motor),因為小標(biāo)題沒有變量前綴所以要這這樣寫。屏蔽掉前綴。

undefined

連接啟動按鈕(停止按鈕也這樣設(shè)置,但是連接stop變量),這樣是按下置1,再按一下復(fù)0。

undefined

同理修改風(fēng)機(jī)的變量連接。

轉(zhuǎn)到切換畫面修改電機(jī)按鈕屬性

undefined

#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
int n;
SetTagBit("Temp_motor",1);	   //打開電機(jī)畫面 
SetTagBit("Temp_ventilator",0); //關(guān)閉風(fēng)機(jī)畫面 
n = GetTagWord("temp");	//獲取主畫面系統(tǒng)編號的賦值
if (n==0)                    //根據(jù)1號系統(tǒng)編號分配變量前綴
{
SetTagChar("Prefix_motor","1_Motor_");//Prefix_motor是電機(jī)的變量前綴的中間變量,1_Motor_是變量前綴
SetTagChar("XBT_motor","1號電機(jī)");//XBT_motor是電機(jī)畫面的標(biāo)題變量,1號電機(jī)是要顯示的內(nèi)容
}
if (n==1)  //根據(jù)2號系統(tǒng)編號分配變量前綴
{
SetTagChar("Prefix_motor","2_Motor_"); 
SetTagChar("XBT_motor","2號電機(jī)"); 
}

修改電機(jī)畫面窗口的屬性

undefined

修改電機(jī)窗口的變量前綴

undefined

同理修改風(fēng)機(jī)按鈕和風(fēng)機(jī)窗口

undefined


#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
int n;
SetTagBit("Temp_ventilator",1); 
SetTagBit("Temp_motor",0);	 
n = GetTagWord("temp"); 
if (n==0)
{
SetTagChar("Prefix_ventilator","1_ventilator_"); 
SetTagChar("XBT_ventilator","1號風(fēng)機(jī)"); 
}
if (n==1)
{
SetTagChar("Prefix_ventilator","2_ventilator_"); 
SetTagChar("XBT_ventilator","2號風(fēng)機(jī)"); 
}

undefined

在這里插入圖片描述
在這里插入圖片描述
回到主界面設(shè)置彈窗的屬性
在這里插入圖片描述
在這里插入圖片描述
設(shè)置主畫面1號系統(tǒng)按鈕的事件
在這里插入圖片描述

#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
SetTagWord("X_彈窗",180);//彈窗畫面窗口的位置
SetTagWord("Y_彈窗",180);//彈窗畫面窗口的位置
SetTagBit("Temp_彈窗",0);//關(guān)閉上一個彈窗畫面窗口
SetTagChar("BT_彈窗","1號系統(tǒng)");//BT_motor是1號彈窗畫面窗口的標(biāo)題變量
SetTagBit("Temp_彈窗",1);//打開彈窗彈窗畫面窗口
SetTagWord("temp",0);//識別系統(tǒng)編號賦值便于給彈窗畫面的變量前綴
SetTagBit("Temp_motor",1);	//默認(rèn)打開電機(jī) 
SetTagBit("Temp_ventilator",0);	//默認(rèn)關(guān)閉風(fēng)機(jī)
SetTagChar("Prefix_motor","1_Motor_"); //給當(dāng)前1號系統(tǒng)的電機(jī)分配前綴
SetTagChar("XBT_motor","1號電機(jī)");//給彈窗畫面中的標(biāo)題分配內(nèi)容
}

同理修改2號系統(tǒng)按鈕
在這里插入圖片描述

#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
SetTagWord("X_彈窗",180);//彈窗畫面窗口的位置
SetTagWord("Y_彈窗",240);//彈窗畫面窗口的位置
SetTagBit("Temp_彈窗",0);//關(guān)閉上一個彈窗畫面窗口
SetTagChar("BT_彈窗","2號系統(tǒng)");//BT_motor是1號彈窗畫面窗口的標(biāo)題變量
SetTagBit("Temp_彈窗",1);//打開彈窗彈窗畫面窗口
SetTagWord("temp",1);//識別系統(tǒng)編號賦值便于給彈窗畫面的變量前綴
SetTagBit("Temp_motor",1);	//默認(rèn)打開電機(jī) 
SetTagBit("Temp_ventilator",0);	//默認(rèn)關(guān)閉風(fēng)機(jī)
SetTagChar("Prefix_motor","2_Motor_"); //給當(dāng)前1號系統(tǒng)的電機(jī)分配前綴
SetTagChar("XBT_motor","2號電機(jī)");//給彈窗畫面中的標(biāo)題分配內(nèi)容
}

此時在切換畫面的時候彈窗畫面會自動顯示出來,因此需要在畫面切換按鈕設(shè)置關(guān)閉全部的彈窗

#include "apdefap.h"
void OnLButtonUp(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
{
SetTagBit("Temp_彈窗",0);
SetTagBit("Temp_motor",0);
SetTagBit("Temp_ventilator",0);
}

在這里插入圖片描述
演示一下:
在這里插入圖片描述
在這里插入圖片描述


QQ在線咨詢
聯(lián)系電話
17658151177
售后服務(wù)
17658151177