當(dāng)前位置: 首頁(yè) > 工業(yè)電氣產(chǎn)品 > 工業(yè)安全產(chǎn)品 > 安全觸邊
發(fā)布日期:2022-04-27 點(diǎn)擊率:1048 品牌:西門(mén)子_Siemens
在實(shí)際的項(xiàng)目應(yīng)用中,某些關(guān)鍵數(shù)據(jù)的輸入需要提示操作人員確認(rèn)無(wú)誤后才能進(jìn)行。如下圖所示:
圖1
當(dāng)在輸入/輸出域中輸入數(shù)值99并回車(chē)后,數(shù)據(jù)并不立即輸入到變量里,而是彈出一個(gè)確認(rèn)的信息窗口。這時(shí)候如果選擇“是”那么數(shù)據(jù)將輸入到相應(yīng)的變量,如果選擇“否”相應(yīng)的變量會(huì)保持原來(lái)的值不變。下面就介紹如何使用WinCC的輸入/輸出域?qū)崿F(xiàn)這種功能。
1.前提條件
創(chuàng)建兩個(gè)數(shù)據(jù)類(lèi)型相同的變量Display Value和Temp Value,其中Display Value是實(shí)際需要控制的變量,TempValue作為臨時(shí)變量使用。如下圖所示:
圖2
2.輸入/輸出域的屬性設(shè)置
在畫(huà)面中新建一個(gè)輸入/輸出域,打開(kāi)屬性對(duì)話(huà)框。選擇屬性?輸出/輸入?輸出值,在動(dòng)態(tài)部分點(diǎn)擊鼠標(biāo)右鍵,如下圖所示:
圖3
打開(kāi)動(dòng)態(tài)對(duì)話(huà)框。選擇需要控制的變量(本例中變量為:Display Value),并配置數(shù)據(jù)類(lèi)型。如下圖所示:
圖4
3.輸入/輸出域的事件設(shè)置
3.1更改動(dòng)作設(shè)置
選擇同一個(gè)輸入/輸出域,打開(kāi)屬性對(duì)話(huà)框。選擇事件?屬性主題?輸出/輸入?輸入值,在更改動(dòng)作部分點(diǎn)擊鼠標(biāo)右鍵,如下圖所示:
圖5
打開(kāi)直接連接對(duì)話(huà)框。來(lái)源部分保持默認(rèn)設(shè)置,目標(biāo)部分選擇直接連接到臨時(shí)變量(本例中為:TempValue)。如下圖所示:
圖6
3.2鍵盤(pán)釋放動(dòng)作設(shè)置
選擇同一個(gè)輸入/輸出域,打開(kāi)屬性對(duì)話(huà)框。選擇事件?鍵盤(pán)?釋放,在動(dòng)作部分點(diǎn)擊鼠標(biāo)右鍵,如下圖所示:
圖7
打開(kāi)C動(dòng)作編輯器。編寫(xiě)用于判斷操作人員是否輸入完畢并按下回車(chē)的代碼。如下圖所示:
圖8
詳細(xì)代碼如下:
int TempValue=GetTagWor("TempValue");
char szBuffer[20];
sprintf( szBuffer,"Input number:%d",TempValue);
if ( nChar==13 )//if press enter
{
int xRet = MessageBox(NULL,szBuffer,"確認(rèn)窗口",MB_YESNO|MB_IConQUESTION|MB_SYSTEMMODAL);//message
if ( xRet == IDYES )//confirm operate
{
SetTagWor("DisplayValue",TempValue);// set data
}
}
當(dāng)系統(tǒng)運(yùn)行后,一旦在該輸入/輸出域中檢測(cè)到回車(chē)信號(hào),系統(tǒng)就會(huì)彈出如圖1所示的確認(rèn)窗口。
4.附加說(shuō)明:
以上內(nèi)容的測(cè)試環(huán)境:Windows XP professional SP2+ WinCCV7.0SP1ASIA。關(guān)于MessageBox函數(shù)的詳細(xì)說(shuō)明請(qǐng)參考Microsoft的相關(guān)文檔。
下一篇: PLC、DCS、FCS三大控
上一篇: 索爾維全系列Solef?PV