組態(tài)王使用說明_第1頁
組態(tài)王使用說明_第2頁
組態(tài)王使用說明_第3頁
組態(tài)王使用說明_第4頁
組態(tài)王使用說明_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、監(jiān)控組態(tài)軟件實(shí)驗(yàn)指導(dǎo)書皖 西 學(xué) 院監(jiān)控組態(tài)軟件實(shí)驗(yàn)指導(dǎo)書機(jī)械與電子工程學(xué)院電氣工程教研室2013.3 實(shí)驗(yàn)一 監(jiān)控組態(tài)工程建立與工藝流程圖繪制一、實(shí)驗(yàn)?zāi)康氖炀氄莆展た亟M態(tài)軟件的繪圖工具二、實(shí)驗(yàn)內(nèi)容熟悉工控組態(tài)軟件的繪圖工具,完成反應(yīng)工段工藝流程繪制以及外部設(shè)備和變量的定義。三、 實(shí)驗(yàn)步驟1.1創(chuàng)建工程在工程管理器中選擇菜單“文件/新建工程”,或者點(diǎn)擊工具欄的“新建”按鈕,根據(jù) “新建工程向?qū)А?對話框完成工程創(chuàng)建,如圖一所示圖一 工程管理器1.2 組態(tài)畫面雙擊工程管理器中的工程,打開工程瀏覽器,在工程瀏覽器中左側(cè)的“工程目錄顯示區(qū)”中選擇“畫面”,在右側(cè)視圖中雙擊“新建”,彈出新建畫面對話框

2、如圖一所示。 圖二 畫面屬性設(shè)置點(diǎn)擊圖二確定按鈕后,在工具箱和圖庫中選中相應(yīng)圖素進(jìn)行監(jiān)控畫面組態(tài),繪制工藝流程圖如圖三所示。圖三 反應(yīng)車間監(jiān)控畫面1.3 定義設(shè)備根據(jù)工程中實(shí)際使用得設(shè)備進(jìn)行定義,本例程使用亞控的仿真PLC設(shè)備,使用“PLC亞控仿真PLC串口”驅(qū)動,定義設(shè)備名稱為“PLC” 。1.4定義變量在組態(tài)王中定義三個變量:原料油液位(IO實(shí)數(shù)類型)、成品油液位(IO實(shí)數(shù)類型)、催化劑液位(IO實(shí)數(shù)類型)。原料油液位變量:最小值0,最大值100,最小原始值0,最大原始值100,連接設(shè)備PLC,寄存器DECREA100,數(shù)據(jù)類型short,讀寫屬性為只讀,采集頻率1000。記錄和安全區(qū)選擇

3、“數(shù)據(jù)變化記錄”,變化靈敏度選擇“0”。催化劑液位變量:最小值0,最大值100,最小原始值0,最大原始值100,連接設(shè)備PLC,寄存器DECREA100,數(shù)據(jù)類型short,讀寫屬性為只讀,采集頻率1000。記錄和安全區(qū)選擇“數(shù)據(jù)變化記錄”,變化靈敏度選擇“0”。成品油液位變量:最小值0,最大值200,最小原始值0,最大原始值200,連接設(shè)備PLC,寄存器INCREA200,數(shù)據(jù)類型short,讀寫屬性為只讀,采集頻率1000。記錄和安全區(qū)選擇“數(shù)據(jù)變化記錄”,變化靈敏度選擇“0”。 四、實(shí)驗(yàn)報告實(shí)驗(yàn)報告包括實(shí)驗(yàn)?zāi)康?、?shí)驗(yàn)內(nèi)容、設(shè)計說明、實(shí)驗(yàn)體會等。實(shí)驗(yàn)二 動態(tài)監(jiān)控實(shí)現(xiàn)與動畫功能設(shè)計一、實(shí)驗(yàn)?zāi)?/p>

4、的本次實(shí)驗(yàn)通過幾個圖形顯示與動畫功能典型實(shí)例,來掌握組態(tài)軟件的圖形功能。二、實(shí)驗(yàn)內(nèi)容1填充與自制棒圖2縮放3旋轉(zhuǎn)4移動5閃爍、隱含和復(fù)現(xiàn)6屏幕切換三、實(shí)驗(yàn)步驟(1)填充與自制棒圖 選取線屬性(表達(dá)式取常數(shù)0,運(yùn)行時線的粗細(xì)和顏色不隨時間而變)、填充屬性(動畫連接表達(dá)式取填充0,事先定義的變量,內(nèi)存實(shí)數(shù),要分段設(shè)置畫刷和顏色,不妨設(shè):0紅,20黃,40綠,60青,80蘭,100紫色。運(yùn)行時調(diào)節(jié)游標(biāo),可得變色棒圖)和填充(表達(dá)式取:填充0),用圖庫中的游標(biāo)(表達(dá)式取:填充0)控制。(2)縮放 選取線屬性(表達(dá)式取0)、填充屬性(表達(dá)式取0)和縮放(表達(dá)式?。嚎s放0),用游標(biāo)控制。 

5、60;  (3)旋轉(zhuǎn)0 選取旋轉(zhuǎn)(表達(dá)式?。盒D(zhuǎn)0),用游標(biāo)控制。    (4)旋轉(zhuǎn)1 選取旋轉(zhuǎn)(表達(dá)式?。盒D(zhuǎn)1),用啟動和停止按鈕(它們用橢圓和文本制成組合圖素)控制。啟動和停止按鈕彈起時的命令語言分別為: 本站點(diǎn)旋轉(zhuǎn)啟停0=1;和 本站點(diǎn)旋轉(zhuǎn)啟停0=0; 畫面命令語言顯示時的代碼為: 本站點(diǎn)旋轉(zhuǎn)1=10;/*剛進(jìn)入運(yùn)行時,圖形初始轉(zhuǎn)角為36度*/ 存在時的代碼為: if(本站點(diǎn)旋轉(zhuǎn)啟停0=1)本站點(diǎn)旋轉(zhuǎn)1=本站點(diǎn)旋轉(zhuǎn)1+1;else 本站點(diǎn)旋轉(zhuǎn)1=本站點(diǎn)旋轉(zhuǎn)1;if(本站點(diǎn)旋轉(zhuǎn)1=101)本站點(diǎn)旋轉(zhuǎn)1=0;(5)水平移動和垂直移動 可以將水平移動連

6、接和垂直移動連接結(jié)合使用,選取水平移動(表達(dá)式?。核揭苿?)和垂直移動(表達(dá)式?。捍怪币苿?),分別用兩個游標(biāo)控制。(6)自制軟按鈕和軟燈 軟燈用橢圓制作,填充屬性(表達(dá)式取:自制軟按鈕0),自制軟按鈕用圓角矩形和文本制成合成單元,應(yīng)該注意圓角矩形在合成單元前就要動畫連接?!鞍聪聲r”的命令語言:本站點(diǎn)自制軟按鈕0=1;/*軟燈的填充屬性閾值為1。也可用100賦值,這時填充屬性閾值為100(默認(rèn)值)*/彈起時的命令語言:本站點(diǎn)自制軟按鈕0=0;例2 模擬值輸入連接。過程控制系統(tǒng)中設(shè)定溫度(期望值)在線實(shí)時運(yùn)行修改。模擬輸入圖形對象為用圓角矩形和文本制成的合成單元,應(yīng)該注意圓角矩形在合成單元前就

7、要動畫連接。運(yùn)行時,模擬值鍵盤輸入對話框如圖一所示。 圖一 模擬值鍵盤輸入對話框(運(yùn)行時)例3 滑動桿(滑桿、游標(biāo))輸入連接和文本值輸出的簡單應(yīng)用。首先定義變量:水平滑動桿輸入坐標(biāo)X設(shè)定0,垂直滑動桿輸入坐標(biāo)Y設(shè)定0,內(nèi)存實(shí)數(shù)。用合成單元技術(shù)建立一個XY坐標(biāo)系,在原點(diǎn)設(shè)置具有水平和垂直兩種滑動桿輸入連接性能的圓,以此圓作為滑動桿,并設(shè)置兩個接收文本,以顯示XY坐標(biāo)值,文本值輸出取模擬值輸出。例4 特殊動畫連接閃爍和隱含的簡單應(yīng)用:燈光的閃爍,位圖一棵樹及“退出運(yùn)行系統(tǒng)”按鈕的隱含。首先定義變量:閃爍0,隱含0,內(nèi)存離散。圖形畫面仍如圖1所示。1)燈光的閃爍 8條光線選擇閃爍連接,閃爍條件取“閃

8、爍0=1;”,閃爍速度500ms,其中左上、右上、左下和右下4條光線在組態(tài)王開發(fā)系統(tǒng)中設(shè)置時只能水平放置,故還要進(jìn)行旋轉(zhuǎn)連接,表達(dá)式取12.5(對應(yīng)45度),同時要考慮順時針或反時針方向問題。由于工具箱中按鈕的字體不能任意放大,故用合成單元技術(shù)將按鈕與文本建立成一個“閃爍/停止”按鈕,其“按下時”的程序碼為:/*若原來不閃爍,則按下“閃爍/停止按鈕”就開始閃爍;反之,按下“閃爍/停止按鈕”就停止閃爍,如此等等*/if(本站點(diǎn)閃爍0=0)本站點(diǎn)閃爍0=1;else 本站點(diǎn)閃爍0=0;(2)位圖一棵樹及“退出運(yùn)行系統(tǒng)”按鈕的隱含 位圖一棵樹取自WINDOWS圖片/自然界,可通過WORD編輯等方法獲

9、取,“退出運(yùn)行系統(tǒng)”按鈕后面要敘述。隱含條件取“隱含0=1;”。用合成單元技術(shù)建立一個“隱含/復(fù)現(xiàn)”按鈕,其“按下時”的命令語言代碼為:/*若原來不隱含,則按下“隱含/復(fù)現(xiàn)按鈕”就開始隱含;反之,按下“隱含/復(fù)現(xiàn)按鈕”就停止隱含而復(fù)現(xiàn),如此等等*/if(本站點(diǎn)隱含0=0)本站點(diǎn)隱含0=1;else 本站點(diǎn)隱含0=0;例5 組態(tài)王圖庫中的元素稱為“圖庫精靈”。之所以稱為“精靈”,是因?yàn)樗鼈兙哂凶约旱摹吧?。圖庫精靈在外觀上類似于組合圖素,但內(nèi)嵌了豐富的動畫連接和邏輯控制。用戶可以根據(jù)自己工程的需要,將一些需要重復(fù)使用的復(fù)雜圖形做成圖庫精靈,加入到圖庫管理器中。組態(tài)王提供兩種方式供用戶自制圖庫。

10、一種是編制程序方式,即用戶利用亞控公司提供的圖庫開發(fā)包,自己利用VC開發(fā)工具和組態(tài)王開發(fā)系統(tǒng)中生成的精靈描述文本制作,生成*.dll文件。關(guān)于該種方式,詳見亞控公司提供的圖庫開發(fā)包。另一種是利用組態(tài)王開發(fā)系統(tǒng)中建立動畫連接并合成圖素的方式直接創(chuàng)建圖庫精靈。在此將對第二種方式做詳細(xì)說明?,F(xiàn)舉一個制作圖庫精靈的例子。畫面上一個按鈕,代表一個開關(guān),開關(guān)打開時按鈕為綠色,開關(guān)關(guān)閉后變?yōu)榧t色,并用這個按鈕控制一個軟燈。在設(shè)計時,首先要用合成單元技術(shù)制作一個綠色按鈕(開)和一個紅色按鈕(關(guān)),用一個變量(取為:圖庫精靈開關(guān)0)和它們連接,紅色按鈕的隱含條件表達(dá)式為:“圖庫精靈開關(guān)0=1;”,“彈起時”的命

11、令語言代碼;本站點(diǎn)圖庫精靈開關(guān)0=1;綠色按鈕的隱含條件表達(dá)式為:“圖庫精靈開關(guān)0=0;”,“彈起時”的命令語言代碼;本站點(diǎn)圖庫精靈開關(guān)0=0;最后把它們疊在一起,并制成合成單元,紅色按鈕在上面,這就是“按鈕精靈”。由于兩個按鈕大小相同,疊在一起并制成合成單元較復(fù)雜,方法為:疊在一起以后,先將底板(非原始底板)移動到別處,激活紅色按鈕,將其“圖素后移”,按下ctrl鍵,激活綠色按鈕,將綠色按鈕“圖素后移”,紅色按鈕又在上面,而后合成單元。松開ctrl鍵,打開圖庫,經(jīng)圖庫管理器/編輯,創(chuàng)建新圖庫,取名“自制圖庫”,關(guān)閉圖庫管理器,激活合成按鈕,經(jīng)標(biāo)題條圖庫/創(chuàng)建圖庫精靈/新的圖庫圖名稱,取名“自

12、制按鈕0”,確認(rèn)后,出現(xiàn)圖庫管理器,選取其中的“自制圖庫”,將“按鈕精靈”放到“自制圖庫”中。如此,制作“自制圖庫” 和“按鈕精靈”全部完畢。這樣工程人員只要把“按鈕精靈”從圖庫拷貝到畫面上,它就具有了“打開為綠色,關(guān)閉為紅色”的按鈕功能。圖庫中的幾乎每個精靈都有類似的已經(jīng)定義的動畫連接,所以使用圖庫精靈將極大地提高設(shè)計界面的效率。例如使用第一種方式即用VC編制程序制作的圖庫精靈具有自動控制圖形外觀和進(jìn)行變量設(shè)置等的向?qū)Чδ?。用第二種方式制作的圖庫精靈放到畫面上以后,雙擊之,出現(xiàn)“內(nèi)容替換”框,可以根據(jù)用戶具體需求改變變量名稱,替換動畫連接屬性。這是第二種方式“圖庫精靈”的使用特點(diǎn)。圖中,軟燈

13、用4個矩形塊組成,設(shè)置“填充”屬性,再同大矩形塊合成單元。例6運(yùn)行系統(tǒng)中三個畫面的切換與運(yùn)行畫面的全部退出。設(shè)當(dāng)前畫面“圖形功能HMTX”與隱含畫面“多功能IO卡HMIO”及畫面“可編程控制器PLCHMPLC”相互之間要切換,并具有退出“組態(tài)王運(yùn)行系統(tǒng)”功能。首先用合成單元技術(shù)制作4個按鈕:退出本畫面、IO卡畫面、PLC畫面和退出運(yùn)行系統(tǒng)按鈕,它們的“彈起時”命令語言代碼分別為: “ClosePicture("圖形功能");”,“ ShowPicture("多功能IO卡");”,“ShowPicture("可編程三菱PLC");”,“

14、Exit(0);”。 退出運(yùn)行系統(tǒng)畫面按鈕還設(shè)置了隱含屬性,隱含條件表達(dá)式取“隱含0=1;”(見例4)。代碼“ Exit(0);”:若改成“ Exit(1);”,表示計算機(jī)總安全關(guān)機(jī);若改成“ Exit(2);”,表示退出運(yùn)行系統(tǒng),Windows重新啟動。當(dāng)退出運(yùn)行系統(tǒng)按鈕被隱含時,鼠標(biāo)操作失效;但當(dāng)用別的圖形遮蓋時,即使合成單元,鼠標(biāo)操作也不失效。在進(jìn)行畫面安全操作性能設(shè)計時要考慮這些因素。四、實(shí)驗(yàn)報告實(shí)驗(yàn)報告包括實(shí)驗(yàn)?zāi)康?、?shí)驗(yàn)內(nèi)容、設(shè)計說明、實(shí)驗(yàn)體會等。圖二 組態(tài)王的動畫功能實(shí)驗(yàn)三 組態(tài)軟件的趨勢曲線一、實(shí)驗(yàn)?zāi)康恼莆諝v史趨勢作用,能夠獨(dú)立實(shí)現(xiàn)歷史趨勢曲線的開發(fā)。二、功能概述常規(guī)需求:很多工

15、業(yè)現(xiàn)場都會要求顯示采集量的趨勢曲線,包括實(shí)時曲線、歷史曲線。組態(tài)王中的趨勢曲線的實(shí)現(xiàn)方法:利用組態(tài)王的“工具箱”中的“實(shí)時曲線”、“歷史曲線”實(shí)現(xiàn)。利用組態(tài)王的“插入通用控件”中的“歷史趨勢曲線”實(shí)現(xiàn)。第一種實(shí)現(xiàn)方法的優(yōu)點(diǎn)在于可以進(jìn)行WEB的發(fā)布,實(shí)現(xiàn)通過IE瀏覽器進(jìn)行瀏覽。缺點(diǎn)為支持的曲線筆比較少,許多功能的實(shí)現(xiàn)需要通過組態(tài)王的函數(shù)來實(shí)現(xiàn),使用相對要麻煩。第二種實(shí)現(xiàn)方法的優(yōu)點(diǎn)在于支持同時繪制16條曲線,功能比較完善,可以在系統(tǒng)運(yùn)行時動態(tài)增加、刪除、隱藏曲線,還可以修改曲線屬性,實(shí)現(xiàn)無級縮放,曲線打印等等。許多功能都不需要通過編寫腳本的方法實(shí)現(xiàn),使用比較方便。缺點(diǎn)在于無法進(jìn)行WEB的發(fā)布。三、

16、實(shí)驗(yàn)步驟1、歷史趨勢曲線控件的特點(diǎn)KVHTrend曲線控件是組態(tài)王以Active X控件形式提供的繪制歷史曲線和ODBC數(shù)據(jù)庫曲線的功能性工具。該曲線具有以下特點(diǎn):1)即可以連接組態(tài)王的歷史庫,也可以通過ODBC數(shù)據(jù)源連接到其它數(shù)據(jù)庫上,如Access、SQLServer等。2)連接組態(tài)王歷史庫時,可以定義查詢數(shù)據(jù)的時間間隔,如同在組態(tài)王中使用報表查詢歷史數(shù)據(jù)時使用查詢間隔一樣。3)完全兼容了組態(tài)王原有歷史曲線的功能。最多可同時繪制16條曲線。4)可以在系統(tǒng)運(yùn)行時動態(tài)增加、刪除、隱藏曲線。還可以修改曲線屬性。5)曲線圖表實(shí)現(xiàn)無級縮放。6)可實(shí)現(xiàn)某條曲線在某個時間段上的曲線比較。7)數(shù)值軸可以使

17、用工程百分比標(biāo)識,也可用曲線實(shí)際范圍標(biāo)識,二者之間自由切換。8)可直接打印圖表曲線。9)可以自由選擇曲線列表框中的顯示內(nèi)容。10)可以選擇移動游標(biāo)時是否顯示曲線數(shù)值。11)可以在曲線中顯示報警區(qū)域的背景色2、創(chuàng)建新的工程2.1定義設(shè)備根據(jù)工程中實(shí)際使用得設(shè)備進(jìn)行定義,本例程使用亞控的仿真PLC設(shè)備,使用“PLC亞控仿真PLC串口”驅(qū)動,定義設(shè)備名稱為“PLC” 。2.2定義變量在組態(tài)王中定義三個變量:原料油液位(IO實(shí)數(shù)類型)、成品油液位(IO實(shí)數(shù)類型)、催化劑液位(IO實(shí)數(shù)類型)。原料油液位變量:最小值0,最大值100,最小原始值0,最大原始值100,連接設(shè)備PLC,寄存器DECREA100

18、,數(shù)據(jù)類型short,讀寫屬性為只讀,采集頻率1000。記錄和安全區(qū)選擇“數(shù)據(jù)變化記錄”,變化靈敏度選擇“0”。催化劑液位變量:最小值0,最大值100,最小原始值0,最大原始值100,連接設(shè)備PLC,寄存器DECREA100,數(shù)據(jù)類型short,讀寫屬性為只讀,采集頻率1000。記錄和安全區(qū)選擇“數(shù)據(jù)變化記錄”,變化靈敏度選擇“0”。成品油液位變量:最小值0,最大值200,最小原始值0,最大原始值200,連接設(shè)備PLC,寄存器INCREA200,數(shù)據(jù)類型short,讀寫屬性為只讀,采集頻率1000。記錄和安全區(qū)選擇“數(shù)據(jù)變化記錄”,變化靈敏度選擇“0”。2.3 創(chuàng)建趨勢曲線在組態(tài)王開發(fā)系統(tǒng)中新

19、建“趨勢曲線”畫面,在工具箱中單擊“插入通用控件”或選擇菜單“編輯”下的“插入通用控件”命令,彈出“插入控件”對話框,在列表中選擇“歷史趨勢曲線”,單擊“確定”按鈕,對話框自動消失,鼠標(biāo)箭頭變?yōu)樾 笆弊中停诋嬅嫔线x擇控件的左上角,按下鼠標(biāo)左鍵并拖動,畫面上顯示出一個虛線的矩形框,該矩形框?yàn)閯?chuàng)建后的曲線的外框。當(dāng)達(dá)到所需大小時,松開鼠標(biāo)左鍵,則歷史曲線控件創(chuàng)建成功,畫面上顯示出該曲線,如圖四所示。雙擊趨勢曲線,彈出“動畫連接屬性”,控件名命名為“HT”。點(diǎn)擊確定完成對歷史趨勢曲線的命名。圖四 歷史趨勢曲線2.4添加曲線變量選中曲線控件點(diǎn)擊右鍵,彈出菜單,選擇“控件屬性”,彈出歷史趨勢曲線控件

20、的屬性對話框,在“曲線”選項卡,點(diǎn)擊“增加”按鈕,選擇變量“壓力”,選擇“線類型”、“線顏色”,點(diǎn)擊“確定”完成壓力曲線的添加。再點(diǎn)擊“增加”按鈕,選擇變量“流量”,選擇“線類型”、 “線顏色”,點(diǎn)擊“確定”完成流量曲線的添加。在趨勢曲線控件屬性的“坐標(biāo)系”選項卡中對坐標(biāo)系進(jìn)行設(shè)置,我們設(shè)置Y軸的起始值為0,最大值為200,不按照百分比繪制,而是按照實(shí)際值顯示。設(shè)置時間軸的顯示格式為顯示年、月、日、時、分、秒。添加完成后開發(fā)畫面如圖五所示: 圖五 歷史趨勢曲線3、切換到運(yùn)行系統(tǒng)保存畫面后,在工程瀏覽器的“系統(tǒng)配置”“設(shè)置運(yùn)行系統(tǒng)”中進(jìn)行“主畫面配置”,將“歷史曲線”畫面設(shè)置為主畫面。然后切換到

21、運(yùn)行系統(tǒng)。運(yùn)行如下圖六所示: 圖六 運(yùn)行系統(tǒng)趨勢曲線控件自帶的工具欄中提供了很多方便實(shí)用的控制按鈕功能供用戶來使用,主要包括:調(diào)整跨度設(shè)置按鈕,設(shè)置Y軸標(biāo)記,曲線圖表無級縮放,打印曲線,定義新曲線,更新曲線圖表終止時間為當(dāng)前時間,設(shè)置圖表數(shù)值軸和時間軸參數(shù),隱藏/顯示變量列表。這些工具欄基本可以滿足客戶的使用了,如果還需要進(jìn)一步的功能可以通過控件的屬性、方法來實(shí)現(xiàn)。四、注意事項1、變量定義時必須定義為記錄,如果定義為“不記錄”則無法看到歷史曲線。2、在控件使用時需要注意Y軸坐標(biāo)的設(shè)置要合理。3、詳細(xì)的控件的屬性、方法的使用請參考幫助或者手冊。五、實(shí)驗(yàn)報告實(shí)驗(yàn)報告包括實(shí)驗(yàn)?zāi)康?、?shí)驗(yàn)內(nèi)容、設(shè)計說明

22、、實(shí)驗(yàn)體會等。實(shí)驗(yàn)四 組態(tài)軟件的報警與事件一、實(shí)驗(yàn)?zāi)康恼莆請缶饔茫軌颡?dú)立實(shí)現(xiàn)報警的存儲與查詢。二、實(shí)驗(yàn)內(nèi)容常規(guī)需求:很多工業(yè)現(xiàn)場要求將變量的報警信息進(jìn)行存儲,并且可以靈活的進(jìn)行歷史報警的查詢、打印。組態(tài)王中的實(shí)現(xiàn)方法:組態(tài)王支持通過ODBC 接口將數(shù)據(jù)存儲到關(guān)系數(shù)據(jù)庫中,并且提供KVADODBGrid 控件對存儲的歷史報警信息進(jìn)行條件查詢,并可以對查詢結(jié)果進(jìn)行打印。關(guān)系數(shù)據(jù)庫可以為Access 數(shù)據(jù)庫或者SQLServer 數(shù)據(jù)庫。我們通過一個簡單的例子實(shí)現(xiàn)對報警信息的存儲以及歷史報警信息的查詢。歷史報警的查詢主要根據(jù)日期、報警組為條件進(jìn)行查詢。報警信息存儲的數(shù)據(jù)庫以Access數(shù)據(jù)庫為例

23、進(jìn)行。三、實(shí)驗(yàn)步驟1、定義設(shè)備根據(jù)工程中實(shí)際使用得設(shè)備進(jìn)行定義,本例程使用亞控的仿真PLC設(shè)備,使用“PLC亞控仿真PLC串口”驅(qū)動,定義設(shè)備名稱為“PLC” 。2、定義變量在組態(tài)王中定義三個變量:原料油液位(IO實(shí)數(shù)類型)、成品油液位(IO實(shí)數(shù)類型)、催化劑液位(IO實(shí)數(shù)類型)。原料油液位變量:最小值0,最大值100,最小原始值0,最大原始值100,連接設(shè)備PLC,寄存器DECREA100,數(shù)據(jù)類型short,讀寫屬性為只讀,采集頻率1000。記錄和安全區(qū)選擇“數(shù)據(jù)變化記錄”,變化靈敏度選擇“0”。催化劑液位變量:最小值0,最大值100,最小原始值0,最大原始值100,連接設(shè)備PLC,寄存器

24、DECREA100,數(shù)據(jù)類型short,讀寫屬性為只讀,采集頻率1000。記錄和安全區(qū)選擇“數(shù)據(jù)變化記錄”,變化靈敏度選擇“0”。成品油液位變量:最小值0,最大值200,最小原始值0,最大原始值200,連接設(shè)備PLC,寄存器INCREA200,數(shù)據(jù)類型short,讀寫屬性為只讀,采集頻率1000。記錄和安全區(qū)選擇“數(shù)據(jù)變化記錄”,變化靈敏度選擇“0”。3、定義報警首先定義報警組,在報警組處雙擊進(jìn)行報警組對話框,點(diǎn)擊“增加”定義一個“液位報警”報警組,確認(rèn)完成報警組的定義,如圖一所示:圖一 報警組定義報警組定義完成后,重新編輯變量定義,在變量定義的“報警定義”選項中我們對三個液位變量進(jìn)行報警定義

25、。定義報警組名為“液位報警”,設(shè)置原料油和催化劑液位的報警限為低、低低限,限值分別為10、5。成品油液位設(shè)置報警限為高、高高限報警,報警限值為190,200。定義報警畫面如圖二、圖三所示:圖二 原料油和催化劑液位變量報警定義圖三 成品油液位變量報警定義4、實(shí)時報警信息變量的報警就定義完成后,我們新建一個 “實(shí)時報警”畫面,在工具箱中選擇報警窗口,然后在畫面上完成報警窗口的制作,雙擊畫面上的報警窗口,為報警窗口命名為“報警”,根據(jù)需要可以對報警窗口進(jìn)行靈活的配置,詳細(xì)的配置可以參考組態(tài)王手冊或者組態(tài)王幫助,但是必須注意報警窗口的名字一定要填寫,如果報警窗口沒有名字,則此報警窗口無效。報警窗口定義

26、完成后,如果此時進(jìn)入運(yùn)行系統(tǒng),則當(dāng)出現(xiàn)報警后,報警信息會在報警窗口中出現(xiàn)。運(yùn)行畫面如圖四所示。圖四 實(shí)時報警運(yùn)行畫面需要注意的是,報警窗口顯示的信息在計算機(jī)的內(nèi)存中,如果組態(tài)王退出后再進(jìn)入運(yùn)行系統(tǒng)則原來的報警并不存在了,也就是說歷史的報警信息并沒有保存下來。下面我們會詳細(xì)講解一下如何將報警信息進(jìn)行保存以方便以后的查詢。5、報警配置組態(tài)王報警配置主要分為三個配置選項:文件配置、數(shù)據(jù)庫配置、打印配置。文件配置主要是將報警信息存儲到文件中,文件格式為 *.al2 ,我們可以通過記事本打開此文件對存儲的信息進(jìn)行瀏覽,因?yàn)榇舜鎯Ω袷綖g覽不是很方便,我們現(xiàn)在不推薦客戶使用。數(shù)據(jù)庫配置是將報警信息存儲到關(guān)系

27、數(shù)據(jù)庫中,如Access,SQLServer 等,此方式瀏覽、查詢比較方便,本文就是以數(shù)據(jù)庫配置作為講解的重點(diǎn)。打印配置為報警信息的實(shí)時打印,需要注意的時打印配置選擇的打印機(jī)必須為帶字庫的針式打印機(jī)。下面我們主要以Access 數(shù)據(jù)庫為例講解報警存儲到數(shù)據(jù)庫的使用配置。5.1 建立報警數(shù)據(jù)庫在Access 中新建一個空數(shù)據(jù)庫,例如建立路徑為:F:組態(tài)王實(shí)驗(yàn)指導(dǎo)報警存儲與查詢報警數(shù)據(jù)庫.mdb 。在此數(shù)據(jù)庫中創(chuàng)建一個數(shù)據(jù)表:表的名稱為:Alarm。表的字段名稱如下表,字段類型為文本類型。為了方便同學(xué)使用,我們已經(jīng)有一個已經(jīng)做好的一個數(shù)據(jù)庫文件,我們可以直接使用。文件名為:報警窗數(shù)據(jù)庫.mdb 。

28、我們可以直接拷貝此文件到計算機(jī)的硬盤中直接使用。組態(tài)王通過ODBC 數(shù)據(jù)源將報警信息存儲到數(shù)據(jù)庫中,因此我們必須先建立ODBC數(shù)據(jù)源。在“控制面板”“管理工具”“ODBC 數(shù)據(jù)源” 中建立ODBC 數(shù)據(jù)源,點(diǎn)擊“ODBC 數(shù)據(jù)源”彈出“ODBC 數(shù)據(jù)源管理器”,如下圖五所示:在“用戶DSN”中點(diǎn)擊“添加”,彈出“選擇數(shù)據(jù)源驅(qū)動程序”窗口,如下圖六所示:選擇“Microsoft Access Driver (*.mdb)”驅(qū)動,點(diǎn)擊“完成”。彈出如圖七所示窗口,填寫ODBC 數(shù)據(jù)源的名稱,根據(jù)需要對數(shù)據(jù)源進(jìn)行命名,如“報警”,點(diǎn)擊“選擇(S)”,如圖八示,選擇我們前面定義的數(shù)據(jù)庫文件“F:組態(tài)王

29、實(shí)驗(yàn)指導(dǎo)報警存儲與查詢報警數(shù)據(jù)庫.mdb”。點(diǎn)擊“確定”完成ODBC 數(shù)據(jù)源的定義,如圖九所示。其他數(shù)據(jù)庫如SQLServer 的ODBC定義請參考相關(guān)文檔。圖五 ODBC數(shù)據(jù)源管理器圖六 選擇數(shù)據(jù)源驅(qū)動程序圖七 數(shù)據(jù)源定義圖八 選擇數(shù)據(jù)庫圖九 ODBC數(shù)據(jù)源定義 5.2 報警配置數(shù)據(jù)庫以及ODBC 數(shù)據(jù)源定義完成后,我們進(jìn)行報警配置中的數(shù)據(jù)庫配置。雙擊組態(tài)王工程瀏覽器的“系統(tǒng)配置”中的“報警配置”,彈出如圖十的“報警配置”對話框。選擇“數(shù)據(jù)庫配置”選項卡,如圖十一所示:我們根據(jù)需要將“記錄報警事件到數(shù)據(jù)庫”打上勾,點(diǎn)擊報警格式,根據(jù)實(shí)際情況對報警格式進(jìn)行選擇配置,需要注意的是默認(rèn)的報警格式?jīng)]

30、有選擇報警日期、事件日期,因此必須進(jìn)行報警格式的配置。圖十 報警配置圖十一 數(shù)據(jù)庫配置“報警格式”配置如圖十二所示:需要注意的是:在6.52 版本之前的報警格式配置中沒有“數(shù)據(jù)庫選項,分月保存報警數(shù)據(jù)表,以日期時間類型保存日期時間”選項。6.52版本增加了此選項。其中“分月保存報警數(shù)據(jù)表”選項如果選中,則保存報警信息的數(shù)據(jù)庫中的數(shù)據(jù)表每月生成一個,并且無需建表,只需要建一個空的數(shù)據(jù)庫即可。采用分月保存的方式的優(yōu)點(diǎn)在于:如果報警信息數(shù)據(jù)量比較大,分表存儲可以提高查詢的速度。缺點(diǎn)在于:無法進(jìn)行跨月的查詢,在編寫腳本進(jìn)行查詢時需要考慮查詢的是哪那一個數(shù)據(jù)表。本實(shí)驗(yàn)中我們還是按照報警信息存儲到一個數(shù)據(jù)

31、表的方式為例進(jìn)行介紹,也就是說我們不選中“分月保存報警數(shù)據(jù)表”。其他選項需要注意的就是數(shù)據(jù)長度要根據(jù)實(shí)際情況進(jìn)行設(shè)置,并且選中“報警組名”,如果使用描述則“變量描述”也需要選中。圖十二 數(shù)據(jù)庫配置報警格式設(shè)置完成后,點(diǎn)擊“確定”返回“數(shù)據(jù)庫配置”畫面,在數(shù)據(jù)源處選擇我們前面定義的數(shù)據(jù)源“報警”。如圖十三所示:點(diǎn)擊“確定”完成報警的配置。圖十三 數(shù)據(jù)庫配置當(dāng)有報警產(chǎn)生后,會在報警畫面中顯示當(dāng)前的報警信息,同時也會將報警信息存儲到Access 數(shù)據(jù)庫中。5.2 歷史報警查詢前面我們已經(jīng)將報警存儲到數(shù)據(jù)庫中了,下面我們就介紹一下如何對存儲到數(shù)據(jù)庫中的報警進(jìn)行查詢。我們根據(jù)日期、報警組為例進(jìn)行報警的查

32、詢。歷史報警的查詢主要是利用KVADODBGrid 控件進(jìn)行查詢。5.2.1 創(chuàng)建KVADODBGrid 控件在工程中新建畫面“報警查詢”,單擊工具箱中的“插入通用控件”按鈕則彈出“插入控件”對話框。在“插入控件”對話框內(nèi)選擇“KVADODBGrid Class”控件,如圖十四所示,在此畫面中放入此控件。雙擊此控件,為控件命名,控件名稱可以根據(jù)需要確定,我們命名為“KV”。圖十四 插入通用控件選擇控件,單擊右鍵,在彈出的菜單中選擇“控件屬性”。彈出控件固有屬性對話框,如下圖十五所示。圖十五 KV控件屬性點(diǎn)擊“瀏覽”按鈕彈出“數(shù)據(jù)鏈接屬性”如圖十六所示,選擇“連接”選項卡,在“指定數(shù)據(jù)源”處選擇

33、“使用數(shù)據(jù)源名稱”選項,通過下拉列表選擇我們前面所定義的ODBC 數(shù)據(jù)源“報警”,點(diǎn)擊“確定”,返回圖十五畫面,“數(shù)據(jù)源”與“數(shù)據(jù)庫”連接完成,下面進(jìn)行數(shù)據(jù)表的配置。圖十六 數(shù)據(jù)鏈接屬性在“表名稱”處選擇我們需要查詢的數(shù)據(jù)表“Alarm”。選擇完成后,數(shù)據(jù)表的字段會顯示在“有效字段”欄,我們可以將需要的字段添加到右邊,在添加過程中可以對標(biāo)題以及格式等進(jìn)行相應(yīng)的修改,如圖十七所示:點(diǎn)擊“確定”完成對KV 控件的配置。圖十七 KV控件配置配置完成后,同時按下鍵盤的“Ctrl”“Alt”“O”可以對控件的列寬進(jìn)行設(shè)置,我們可以根據(jù)字段內(nèi)容的多少設(shè)置合適的列寬以增加畫面的美觀程度。設(shè)置完成后的畫面如圖

34、十八所示:圖十八 運(yùn)行系統(tǒng)畫面5.2.2 創(chuàng)建日歷控件我們按照日期進(jìn)行歷史報警的查詢,使用微軟提供的通用控件“Microsoft Date andTime Picker Control ”,此控件在安裝VB 或者VC 或者Office2000 后會在通用控件中找到。插入通過控件,如圖十九所示:選擇后畫到畫面上,雙擊控件,在“常規(guī)”選項卡中為控件命名為“ADate”,點(diǎn)擊“確定”,保存畫面。再次雙擊日歷控件,選擇“事件”選項卡,在“事件”選項卡中點(diǎn)擊CloseUp 事件,彈出控件事件函數(shù)編輯窗口,在函數(shù)聲明中為此函數(shù)命名:CloseUp1();在編輯窗口中編寫腳本程序,如圖二十所示:在編寫腳本程

35、序之前在數(shù)據(jù)詞典中定義字符串變量“選擇日期”。編輯完成后點(diǎn)擊“確認(rèn)”,完成對日歷控件的設(shè)置。圖十九 日歷控件圖二十 控件事件函數(shù)5.2.3 報警查詢制作一個日期報警查詢按鈕:按照選擇的日期對所選日期的所有報警進(jìn)行查詢,程序如下。string whe;whe="AlarmDate='"+本站點(diǎn)選擇日期+"'"KV.Where=whe;KV.FetchData();KV.FetchEnd();完成畫面制作并保存后,切換到運(yùn)行系統(tǒng),顯示如圖十五所示的畫面,通過畫面切換按鈕進(jìn)行“報警查詢”畫面,如圖二十一所示。圖二十一 歷史報警查詢四、注意事項1

36、)報警數(shù)據(jù)庫的屬性,一定要將只讀屬性去掉。2)報警配置中的數(shù)據(jù)庫配置的報警格式設(shè)置時,各個字段的長度需要根據(jù)實(shí)際情況進(jìn)行設(shè)置。3)報警配置中如果選擇“分月保存報警數(shù)據(jù)表”,則數(shù)據(jù)庫中的報警表會自動生成,如果不選擇此項,則“Alarm”表需要手動建立。4)KVADODBGrid 控件的詳細(xì)使用方式請參考組態(tài)王手冊或者幫助。5)報警數(shù)據(jù)庫可以選擇SQLServer 或者其他關(guān)系數(shù)據(jù)庫,其他數(shù)據(jù)庫的ODBC 數(shù)據(jù)源的定義請參考相關(guān)文檔。五、實(shí)驗(yàn)報告實(shí)驗(yàn)報告包括實(shí)驗(yàn)?zāi)康摹?shí)驗(yàn)內(nèi)容、設(shè)計說明、實(shí)驗(yàn)體會等。實(shí)驗(yàn)五 報表功能實(shí)現(xiàn)一、實(shí)驗(yàn)?zāi)康恼莆請蟊碜饔?,能夠?dú)立實(shí)現(xiàn)報表編制。二、實(shí)驗(yàn)內(nèi)容常規(guī)需求:很多工業(yè)現(xiàn)

37、場會用到報表功能,而日報是其中最基本的一種報表形式。日報表一般為每天整點(diǎn)的數(shù)據(jù),每一個變量有24個數(shù)據(jù)。組態(tài)王中的實(shí)現(xiàn)方法:利用組態(tài)王內(nèi)置報表以及報表的函數(shù)來實(shí)現(xiàn)對日數(shù)據(jù)的查詢生成日報表。組態(tài)王內(nèi)置報表的操作類似excel,操作簡單、方便,并且組態(tài)王提供了大量的報表函數(shù)來實(shí)現(xiàn)各種復(fù)雜功能。我們舉一個例子來說明日報表的實(shí)現(xiàn)方法。在此例程中我們定義三個變量,分別為“原料油液位”、“催化劑液位”、“成品油液位”,運(yùn)行系統(tǒng)運(yùn)行后記錄歷史數(shù)據(jù),查詢?nèi)請蟊頂?shù)據(jù)時自動從歷史數(shù)據(jù)中查詢整點(diǎn)數(shù)據(jù)生成報表,并可以保存、打印報表。下面就以此為例來演示完成這一要求的具體步驟。三、實(shí)驗(yàn)步驟1、定義設(shè)備根據(jù)工程中實(shí)際使用

38、得設(shè)備進(jìn)行定義,本例程使用亞控的仿真PLC設(shè)備,使用“PLC亞控仿真PLC串口”驅(qū)動,定義設(shè)備名稱為“PLC” 。2、定義變量在組態(tài)王中定義三個變量:原料油液位(IO實(shí)數(shù)類型)、成品油液位(IO實(shí)數(shù)類型)、催化劑液位(IO實(shí)數(shù)類型)。原料油液位變量:最小值0,最大值100,最小原始值0,最大原始值100,連接設(shè)備PLC,寄存器DECREA100,數(shù)據(jù)類型short,讀寫屬性為只讀,采集頻率1000。記錄和安全區(qū)選擇“數(shù)據(jù)變化記錄”,變化靈敏度選擇“0”。催化劑液位變量:最小值0,最大值100,最小原始值0,最大原始值100,連接設(shè)備PLC,寄存器DECREA100,數(shù)據(jù)類型short,讀寫屬性

39、為只讀,采集頻率1000。記錄和安全區(qū)選擇“數(shù)據(jù)變化記錄”,變化靈敏度選擇“0”。成品油液位變量:最小值0,最大值200,最小原始值0,最大原始值200,連接設(shè)備PLC,寄存器INCREA200,數(shù)據(jù)類型short,讀寫屬性為只讀,采集頻率1000。記錄和安全區(qū)選擇“數(shù)據(jù)變化記錄”,變化靈敏度選擇“0”。3、制作畫面3.1 創(chuàng)建報表新建畫面,畫面名稱“日報表”。在組態(tài)王工具箱按鈕中,用鼠標(biāo)左鍵單擊“報表窗口”按鈕,此時,鼠標(biāo)箭頭變?yōu)樾 ?”字形,在畫面上需要加入報表的位置按下鼠標(biāo)左鍵,并拖動,畫出一個矩形,松開鼠標(biāo)鍵,報表窗口創(chuàng)建成功,如圖一所示。圖一 報表用鼠標(biāo)雙擊報表窗口的灰色部分(表格單

40、元格區(qū)域外沒有單元格的部分),彈出“報表設(shè)計”對話框,如圖二所示。該對話框主要設(shè)置報表的名稱、報表表格的行列數(shù)目以及選擇套用表格的樣式。我們設(shè)置報表名稱為“Report0”,行數(shù)為27,列數(shù)為4。圖二 報表設(shè)計我們根據(jù)需要對報表的格式進(jìn)行設(shè)置,如報表的表頭,標(biāo)題等。我們選中單元格A1到F1,點(diǎn)擊右鍵彈出快捷菜單,選擇“合并單元格”,單元格合并后我們填寫標(biāo)題,如“監(jiān)控系統(tǒng)日報表”,點(diǎn)擊右鍵在快捷菜單中選擇“設(shè)置單元格格式”,設(shè)置字體、對齊方式、邊框等。我們按照此方法設(shè)計日報表的格式,如圖三所示:圖三 日報表3.2創(chuàng)建日歷控件我們按照日期進(jìn)行歷史數(shù)據(jù)的查詢生成日報表,使用微軟提供的通用控件“Mic

41、rosoft Date and Time Picker Control ”,此控件在安裝VB或者VC或者Office2000后會在通用控件中找到。插入通過控件,如圖四所示:選擇后畫到畫面上,雙擊控件,在“常規(guī)”選項卡中為控件命名為“ADate”,點(diǎn)擊“確定”,保存畫面。再次雙擊日歷控件,選擇“事件”選項卡,點(diǎn)擊在“事件”選項卡中點(diǎn)擊CloseUp事件,彈出控件事件函數(shù)編輯窗口,在函數(shù)聲明中為此函數(shù)命名:CloseUp();在編輯窗口中編寫腳本程序,在編寫腳本程序之前在數(shù)據(jù)詞典中定義字符串變量“選擇日期”,如圖五所示:圖四 日歷控件圖五 控件事件函數(shù)腳本程序如下:float Ayear;floa

42、t Amonth;float Aday;long x;long y;long Row;long StartTime;string temp;Ayear=ADate.Year;Amonth=ADate.Month;Aday=ADate.Day;temp=StrFromInt( Ayear, 10 );if(Amonth<10)temp=temp+"-0"+StrFromInt( Amonth, 10 );elsetemp=temp+"-"+StrFromInt( Amonth, 10 );if(Aday<10)temp=temp+"-0"+StrFromInt( Aday, 10 );elsetemp=temp+"-"+StrFromInt( Aday, 10 );本站點(diǎn)選擇日期=temp;ReportSetCellStrin

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論