水位控制系统工程-经典
簡(jiǎn)介:本論文主要闡述了如何使用MCGS (Monitor and Control Generated System,通用監(jiān)控系統(tǒng))組態(tài)軟件設(shè)計(jì)一個(gè)液位控制工程體系的全過(guò)程。同時(shí)本章通過(guò)介紹一個(gè)水位控制系統(tǒng)的組態(tài)過(guò)程,詳細(xì)講解如何應(yīng)用MCGS組態(tài)軟件完成一個(gè)工程。
本論文主要闡述了如何使用MCGS (Monitor and Control Generated System,通用監(jiān)控系統(tǒng))組態(tài)軟件設(shè)計(jì)一個(gè)液位控制工程體系的全過(guò)程。同時(shí)本章通過(guò)介紹一個(gè)水位控制系統(tǒng)的組態(tài)過(guò)程,詳細(xì)講解如何應(yīng)用MCGS組態(tài)軟件完成一個(gè)工程。本次液位控制工程的內(nèi)容包括:動(dòng)畫(huà)顯示,編制控制策略,輸出實(shí)時(shí)曲線、歷史曲線、實(shí)時(shí)數(shù)據(jù)、歷史數(shù)據(jù),打印工程報(bào)表,操作菜單設(shè)計(jì),外部設(shè)備連接,工程密碼設(shè)置,運(yùn)行測(cè)試這幾個(gè)部分。MCGS工控組態(tài)軟件是一套32位工控組態(tài)軟件,由“MCGS組態(tài)環(huán)境”和“MCGS運(yùn)行環(huán)境”兩個(gè)系統(tǒng)組成。兩部分互相獨(dú)立,又緊密相關(guān)。可穩(wěn)定運(yùn)行于Windows95/98/NT操作系統(tǒng),集動(dòng)畫(huà)顯示、流程控制、數(shù)據(jù)采集、設(shè)備控制與輸出、網(wǎng)絡(luò)數(shù)據(jù)傳輸、雙機(jī)熱備、工程報(bào)表、數(shù)據(jù)與曲線等諸多強(qiáng)大功能于一身,并支持國(guó)內(nèi)外眾多數(shù)據(jù)采集與輸出設(shè)備。
一 工程簡(jiǎn)介
本章通過(guò)介紹一個(gè)水位控制系統(tǒng)的組態(tài)過(guò)程,詳細(xì)講解如何應(yīng)用MCGS組態(tài)軟件完成一個(gè)工程。本工程中涉及到動(dòng)畫(huà)制作、控制流程的編寫(xiě)、模擬設(shè)備的連接、報(bào)警輸出、報(bào)表曲線顯示等多項(xiàng)組態(tài)操作。
1.1工程效果圖
工程最終效果圖如下:
圖1-1-1
圖1-1-2
圖1-1-3
圖1-1-4
1.2工程分析
在開(kāi)始組態(tài)工程之前,先對(duì)該工程進(jìn)行剖析,以便從整體上把握工程的結(jié)構(gòu)、流程、需實(shí)現(xiàn)的功能及如何實(shí)現(xiàn)這些功能。
1.2.1工程框架
2個(gè)用戶窗口(水位控制、數(shù)據(jù)顯示)。4個(gè)主菜單(系統(tǒng)管理、數(shù)據(jù)顯示、歷史數(shù)據(jù)、報(bào)警數(shù)據(jù))。4個(gè)子菜單(登錄用戶、退出登錄、用戶管理、修改密碼)。5個(gè)策略(啟動(dòng)策略、退出策略、循環(huán)策略、報(bào)警數(shù)據(jù)、歷史數(shù)據(jù))。
1.2.2數(shù)據(jù)對(duì)象
水泵、調(diào)節(jié)閥、出水閥、液位1、液位2、液位1上限、液位1下限、液位2上限、液位2下限、液位組
1.2.3圖形制作
(1)水位控制窗口
水泵、調(diào)節(jié)閥、出水閥、水罐、報(bào)警指示燈由對(duì)象元件庫(kù)引入。管道通過(guò)流動(dòng)塊構(gòu)件實(shí)現(xiàn)。水罐水量控制通過(guò)滑動(dòng)輸入器實(shí)現(xiàn)。水量的顯示通過(guò)旋轉(zhuǎn)儀表、標(biāo)簽構(gòu)件實(shí)現(xiàn)。報(bào)警實(shí)時(shí)顯示通過(guò)報(bào)警顯示構(gòu)件實(shí)現(xiàn)。動(dòng)態(tài)修改報(bào)警限值通過(guò)輸入框構(gòu)件實(shí)現(xiàn)
(2)數(shù)據(jù)顯示窗口
實(shí)時(shí)數(shù)據(jù)通過(guò)自由表格構(gòu)件實(shí)現(xiàn);歷史數(shù)據(jù)通過(guò)歷史表格構(gòu)件實(shí)現(xiàn);實(shí)時(shí)曲線通過(guò)實(shí)時(shí)曲線構(gòu)件實(shí)現(xiàn);歷史曲線通過(guò)歷史曲線構(gòu)件實(shí)現(xiàn);
二 制作工程畫(huà)面 2.1工程建立
鼠標(biāo)單擊文件菜單中“新建工程”選項(xiàng),如果MCGS安裝在D:盤(pán)根目錄下,則會(huì)在D:\MCGS\WORK\下自動(dòng)生成新建工程,默認(rèn)的工程名為:“新建工程X.MCG”(X表示新建工程的順序號(hào),如:0、1、2等)選擇文件菜單中的“工程另存為”菜單項(xiàng),彈出文件保存窗口。在文件名一欄內(nèi)輸入“水位控制系統(tǒng)”,點(diǎn)擊“保存”按鈕,工程創(chuàng)建完畢。
2.2編輯畫(huà)面
制作一個(gè)文字框圖“水位控制系統(tǒng)演示工程” ,選中文字框,并進(jìn)行相應(yīng)的設(shè)置。首先單擊繪圖工具箱中的(插入元件)圖標(biāo),彈出對(duì)象元件管理對(duì)話框,其次從“儲(chǔ)藏罐”類中選取兩個(gè)罐。從“閥”和“泵”類中分別選取2個(gè)閥、1個(gè)泵。再次將儲(chǔ)藏罐、閥、泵調(diào)整為適當(dāng)大小,放到適當(dāng)位置,參照效果圖。最后選中工具箱內(nèi)的流動(dòng)塊動(dòng)畫(huà)構(gòu)件圖標(biāo),鼠標(biāo)的光標(biāo)呈“十”字形,移動(dòng)鼠標(biāo)至窗口的預(yù)定位置,點(diǎn)擊一下鼠標(biāo)左鍵,移動(dòng)鼠標(biāo),在鼠標(biāo)光標(biāo)后形成一道虛線,拖動(dòng)一定距離后,點(diǎn)擊鼠標(biāo)左鍵,生成一段流動(dòng)塊。整體畫(huà)面如圖2-2-1
圖2-2-1
2.3定義數(shù)據(jù)對(duì)象
定義數(shù)據(jù)對(duì)象的內(nèi)容主要包括兩方面,1.指定數(shù)據(jù)變量的名稱、類型、初始值和數(shù)值范 2.確定與數(shù)據(jù)變量存盤(pán)相關(guān)的參數(shù),如存盤(pán)的周期、存盤(pán)的時(shí)間范圍和保存期限等。在開(kāi)始定義之前,我們先對(duì)所有數(shù)據(jù)對(duì)象進(jìn)行分析。在本樣例工程中需要用到以下數(shù)據(jù)對(duì)象:
對(duì)象名稱 類 型 注 釋
水泵 開(kāi) 關(guān) 型 控制水泵“啟動(dòng)”、“停止”的變量
調(diào)節(jié)閥 開(kāi) 關(guān) 型 控制調(diào)節(jié)閥“打開(kāi)”、“關(guān)閉”的變量
出水閥 開(kāi) 關(guān) 型 控制出水閥“打開(kāi)”、“關(guān)閉”的變量
液位1 數(shù) 值 型 水罐1的水位高度,用來(lái)控制1#水罐水位的變化
液位2 數(shù) 值 型 水罐2的水位高度,用來(lái)控制2#水罐水位的變化
液位1上限 數(shù) 值 型 用來(lái)在運(yùn)行環(huán)境下設(shè)定水罐1的上限報(bào)值
液位1下限 數(shù) 值 型 用來(lái)在運(yùn)行環(huán)境下設(shè)定水罐1的下限報(bào)警值
液位2上限 數(shù) 值 型 用來(lái)在運(yùn)行環(huán)境下設(shè)定水罐2的上限報(bào)警值
液位2下限 數(shù) 值 型 用來(lái)在運(yùn)行環(huán)境下設(shè)定水罐2的下限報(bào)警值
液位組 組 對(duì) 象 用于歷史數(shù)據(jù)、歷史曲線、報(bào)表輸出等功能構(gòu)件
2.4動(dòng)畫(huà)連接
由圖形對(duì)象搭制而成的圖形畫(huà)面是靜止不動(dòng)的,需要對(duì)這些圖形對(duì)象進(jìn)行動(dòng)畫(huà)設(shè)計(jì),真實(shí)地描述外界對(duì)象的狀態(tài)變化,達(dá)到過(guò)程實(shí)時(shí)監(jiān)控的目的。MCGS實(shí)現(xiàn)圖形動(dòng)畫(huà)設(shè)計(jì)的主要方法是將用戶窗口中圖形對(duì)象與實(shí)時(shí)數(shù)據(jù)庫(kù)中的數(shù)據(jù)對(duì)象建立相關(guān)性連接,并設(shè)置相應(yīng)的動(dòng)畫(huà)屬性。在系統(tǒng)運(yùn)行過(guò)程中,圖形對(duì)象的外觀和狀態(tài)特征,由數(shù)據(jù)對(duì)象的實(shí)時(shí)采集值驅(qū)動(dòng),從而實(shí)現(xiàn)了圖形的動(dòng)畫(huà)效果。水位升降效果:水位升降效果是通過(guò)設(shè)置數(shù)據(jù)對(duì)象“大小變化”連接類型實(shí)現(xiàn)的。
2.4.1水泵、閥門(mén)的啟停
水泵、閥門(mén)的啟停動(dòng)畫(huà)效果是通過(guò)設(shè)置連接類型對(duì)應(yīng)的數(shù)據(jù)對(duì)象實(shí)現(xiàn)的。
2.4.2水流效果
水流效果是通過(guò)設(shè)置流動(dòng)塊構(gòu)件的屬性實(shí)現(xiàn)的。
2.4.3利用滑動(dòng)輸入器控制水位 2.4.4利用旋轉(zhuǎn)儀表控制水位
在工業(yè)現(xiàn)場(chǎng)一般都會(huì)大量地使用儀表進(jìn)行數(shù)據(jù)顯示。MCGS組態(tài)軟件適應(yīng)這一要求提供了旋轉(zhuǎn)儀表構(gòu)件。用戶可以利用此構(gòu)件在動(dòng)畫(huà)界面中模擬現(xiàn)場(chǎng)的儀表運(yùn)行狀態(tài)。選取“工具箱”中的“旋轉(zhuǎn)儀表”圖標(biāo),調(diào)整大小放在水罐1下面適當(dāng)位置。雙擊該構(gòu)件進(jìn)行屬性設(shè)置。按照此方法設(shè)置水罐2數(shù)據(jù)顯示對(duì)應(yīng)的旋轉(zhuǎn)儀表。進(jìn)入運(yùn)行環(huán)境后,可以通過(guò)拉動(dòng)旋轉(zhuǎn)儀表的指針使整個(gè)畫(huà)面動(dòng)起來(lái)。
2.4.5水量顯示
為了能夠準(zhǔn)確地了解水罐1、水罐2的水量,通過(guò)設(shè)置標(biāo)簽的“顯示輸出”屬性顯示其值,繪制兩個(gè)標(biāo)簽,調(diào)整大小位置,將其并列放在水罐1下面。第一個(gè)標(biāo)簽用于標(biāo)注,顯示文字為:水罐1。第二個(gè)標(biāo)簽用于顯示水罐水量。雙擊第一個(gè)標(biāo)簽進(jìn)行屬性設(shè)置。
圖2-4-5
雙擊第二個(gè)標(biāo)簽,進(jìn)入動(dòng)畫(huà)組態(tài)屬性設(shè)置窗口。將:填充顏色設(shè)置為:白色,邊線顏色設(shè)置為:黑色在輸入輸出連接域中,選中“顯示輸出” 選項(xiàng),在組態(tài)屬性設(shè)置窗口中則會(huì)出現(xiàn)“顯示輸出”標(biāo)簽,如圖2-4-5。再單擊“顯示輸出”標(biāo)簽,設(shè)置顯示輸出屬性。參數(shù)設(shè)置如下。輸出值類型:數(shù)值量輸出;輸出格式:向中對(duì)齊;整數(shù)位數(shù):0;小數(shù)位數(shù):1。單擊“確認(rèn)”,水罐1水量顯示標(biāo)簽制作完畢。水罐2水量顯示標(biāo)簽與此相同。
2.5設(shè)備連接
我們通過(guò)模擬設(shè)備的連接,可以使動(dòng)畫(huà)不需要手動(dòng)操作,自動(dòng)運(yùn)行起來(lái)。通常情況下,在啟動(dòng)MCGS組態(tài)軟件時(shí),模擬設(shè)備都會(huì)自動(dòng)裝載到設(shè)備工具箱中。如果未被裝載,可按照以下步驟將其選入:
(1)在工作臺(tái)“設(shè)備窗口”中雙擊“設(shè)備窗口”圖標(biāo)進(jìn)入。
(2)點(diǎn)擊工具條中的“工具箱”圖標(biāo),打開(kāi)“設(shè)備工具箱”。
(3)單擊“設(shè)備工具箱”中的“設(shè)備管理”按鈕,彈出如圖2-5-1所示窗口。
(4)在可選設(shè)備列表中,雙擊“通用設(shè)備”。
(5)雙擊“模擬數(shù)據(jù)設(shè)備”,在下方出現(xiàn)模擬設(shè)備圖標(biāo)。
(6)雙擊模擬設(shè)備圖標(biāo),即可將“模擬設(shè)備”添加到右測(cè)選定設(shè)備列表中。
(7)選中選定設(shè)備列表中的“模擬設(shè)備”,單擊“確認(rèn)”,“模擬設(shè)備”即被添加到“設(shè)備工具箱”中。
圖2-5-1
下面詳細(xì)介紹模擬設(shè)備的添加及屬性設(shè)置:
(1)雙擊“設(shè)備工具箱”中的“模擬設(shè)備”,模擬設(shè)備被添加到設(shè)備組態(tài)窗口中。
(2)雙擊“設(shè)備0-[模擬設(shè)備]”,進(jìn)入模擬設(shè)備屬性設(shè)置窗口,如圖2-5-2。
圖2-5-2
(3)點(diǎn)擊基本屬性頁(yè)中的“內(nèi)部屬性”選項(xiàng),該項(xiàng)右側(cè)會(huì)出現(xiàn)圖標(biāo),單擊此按鈕進(jìn)入“內(nèi)部屬性”設(shè)置。將:通道1、2的最大值分別設(shè)置為:10、6
(4)單擊“確認(rèn)”,完成“內(nèi)部屬性”設(shè)置。點(diǎn)擊通道連接標(biāo)簽,進(jìn)入通道連接設(shè)置。
(5)選中通道0對(duì)應(yīng)數(shù)據(jù)對(duì)象輸入框,輸入“液位1”或單擊鼠標(biāo)右鍵,彈出數(shù)據(jù)對(duì)象列表后,選擇“液位1”;選中通道1對(duì)應(yīng)數(shù)據(jù)對(duì)象輸入框,輸入“液位2”。
(6)進(jìn)入“設(shè)備調(diào)試”屬性頁(yè),即可看到通道值中數(shù)據(jù)在變化。按“確認(rèn)”按鈕,完成設(shè)備屬性設(shè)置。
2.6編寫(xiě)控制流程
下面先對(duì)控制流程進(jìn)行分析:當(dāng)“水罐1”的液位達(dá)到9米時(shí),就要把“水泵”關(guān)閉,否則就要自動(dòng)啟動(dòng)“水泵”;當(dāng)“水罐2”的液位不足1米時(shí),就要自動(dòng)關(guān)閉“出水閥”,否則自動(dòng)開(kāi)啟“出水閥”;當(dāng)“水罐1”的液位大于1米,同時(shí)“水罐2”的液位小于6米就要自動(dòng)開(kāi)啟“調(diào)節(jié)閥”,否則自動(dòng)關(guān)閉“調(diào)節(jié)閥”。腳本程序如下:
IF 液位1
水泵=1
ELSE
水泵=0
ENDIF
IF 液位2
出水閥=0
ELSE
出水閥=1
ENDIF
IF 液位1>1 and 液位2
調(diào)節(jié)閥=1
ELSE
調(diào)節(jié)閥=0
ENDIF
!SetAlmValue(液位1,液位1上限,3)
!SetAlmValue(液位1,液位1下限,2)
!SetAlmValue(液位2,液位2上限,3)
!SetAlmValue(液位2,液位2下限,2)
三 報(bào)警顯示
MCGS把報(bào)警處理作為數(shù)據(jù)對(duì)象的屬性,封裝在數(shù)據(jù)對(duì)象內(nèi),由實(shí)時(shí)數(shù)據(jù)庫(kù)來(lái)自動(dòng)處理。當(dāng)數(shù)據(jù)對(duì)象的值或狀態(tài)發(fā)生改變時(shí),實(shí)時(shí)數(shù)據(jù)庫(kù)判斷對(duì)應(yīng)的數(shù)據(jù)對(duì)象是否發(fā)生了報(bào)警或已產(chǎn)生的報(bào)警是否已經(jīng)結(jié)束,并把所產(chǎn)生的報(bào)警信息通知給系統(tǒng)的其它部分,同時(shí),實(shí)時(shí)數(shù)據(jù)庫(kù)根據(jù)用戶的組態(tài)設(shè)定,把報(bào)警信息存入指定的存盤(pán)數(shù)據(jù)庫(kù)文件中。
3.1定義報(bào)警
本樣例中需設(shè)置報(bào)警的數(shù)據(jù)對(duì)象包括液位1和液位2定義報(bào)警的具體操作如下:
(1)進(jìn)入實(shí)時(shí)數(shù)據(jù)庫(kù),雙擊數(shù)據(jù)對(duì)象“液位1”。選中“報(bào)警屬性”標(biāo)簽。再選
中“允許進(jìn)行報(bào)警處理”,報(bào)警設(shè)置域被激活;
(2)選中報(bào)警設(shè)置域中的“下限報(bào)警”,報(bào)警值設(shè)為:2;報(bào)警注釋輸入:“水罐1沒(méi)水了!”。選中“上限報(bào)警”,報(bào)警值設(shè)為:9;報(bào)警注釋輸入:“水罐1的水已達(dá)上限值!”。
(3)單擊“存盤(pán)屬性”標(biāo)簽,選中報(bào)警數(shù)據(jù)的存盤(pán)域中的“自動(dòng)保存產(chǎn)生的報(bào)警信息”。
(4)按“確認(rèn)”按鈕,“液位1”報(bào)警設(shè)置完畢。
(5)同理設(shè)置“液位2”的報(bào)警屬性。需要改動(dòng)的設(shè)置為,下限報(bào)警:報(bào)警值設(shè)為:1.5;報(bào)警注釋輸入:“水罐2沒(méi)水了!”;上限報(bào)警:報(bào)警值設(shè)為:4;報(bào)警注釋輸入:“水罐2的水已達(dá)上限值!”。
3.2制作報(bào)警顯示畫(huà)面
實(shí)時(shí)數(shù)據(jù)庫(kù)只負(fù)責(zé)關(guān)于報(bào)警的判斷、通知和存儲(chǔ)三項(xiàng)工作,而報(bào)警產(chǎn)生后所要進(jìn)行的其它處理操作(即對(duì)報(bào)警動(dòng)作的響應(yīng)),則需要您在組態(tài)時(shí)實(shí)現(xiàn)。具體操作如下:
(1)雙擊“用戶窗口”中的“水位控制”窗口,進(jìn)入組態(tài)畫(huà)面。選取“工具箱”中的“報(bào)警顯示”構(gòu)件。鼠標(biāo)指針呈“十”后,在適當(dāng)?shù)奈恢?#xff0c;拖動(dòng)鼠標(biāo)至適當(dāng)大小。
(2) 選中該圖形雙擊,再雙擊彈出報(bào)警顯示構(gòu)件屬性設(shè)置窗口,如圖3-2-1。
圖3-2-1
(3) 在基本屬性頁(yè)中,對(duì)應(yīng)的數(shù)據(jù)對(duì)象的名稱設(shè)為:液位組;最大記錄次數(shù)設(shè)為:6。
(4) 單擊“確認(rèn)”即可。
3.3報(bào)警數(shù)據(jù)瀏覽
在對(duì)數(shù)據(jù)對(duì)象進(jìn)行報(bào)警定義時(shí),我們已經(jīng)選擇報(bào)警產(chǎn)生時(shí),“自動(dòng)保存產(chǎn)生的報(bào)警信息”,我們可以使用“報(bào)警信息瀏覽”構(gòu)件,瀏覽數(shù)據(jù)庫(kù)中保存下來(lái)的報(bào)警信息。
具體操作如下:
(1)在“運(yùn)行策略”窗口中,單擊“新建策略”,彈出“選擇策略的類型”。
(2)選中“用戶策略”,按“確定”。
(3)選中“策略1”,單擊“策略屬性”按鈕,彈出“策略屬性設(shè)置”窗口。策略名稱輸入框中輸入:報(bào)警數(shù)據(jù);策略內(nèi)容注釋輸入框中輸入:水罐的報(bào)警數(shù)據(jù)。
(4)按“確認(rèn)”。
(5)雙擊“報(bào)警數(shù)據(jù)”策略,進(jìn)入策略組態(tài)窗口。
(6)單擊工具條中的“新增策略行”圖標(biāo),新增加一個(gè)策略行。
(7)從“策略工具箱”中選取“報(bào)警信息瀏覽”,加到策略行上。
(8)雙擊圖標(biāo),彈出“報(bào)警信息瀏覽構(gòu)件屬性設(shè)置”窗口。
(9)進(jìn)入基本屬性頁(yè),將“報(bào)警信息來(lái)源”中的“對(duì)應(yīng)數(shù)據(jù)對(duì)象”改為:液位組。按“確認(rèn)”按鈕設(shè)置完畢。
可按“測(cè)試”按鈕,進(jìn)行預(yù)覽。在該窗口中,您也可以對(duì)數(shù)據(jù)進(jìn)行編輯。編輯結(jié)束,退出時(shí),會(huì)彈出如下窗口,按“是”按鈕,就可對(duì)所做編輯進(jìn)行保存。
3.4修改報(bào)警限值
在“實(shí)時(shí)數(shù)據(jù)庫(kù)”中,對(duì)“液位1”、“液位2”的上下限報(bào)警值都是已定義好的。如果用戶想在運(yùn)行環(huán)境下根據(jù)實(shí)際情況需要隨時(shí)改變報(bào)警上下限值,又如何實(shí)現(xiàn)呢?在MCGS組態(tài)軟件中,為您提供了大量的函數(shù),可以根據(jù)您的需要靈活地運(yùn)用。
操作步驟包括以下幾個(gè)部分:設(shè)置數(shù)據(jù)對(duì)象、制作交互界面、編寫(xiě)控制流程
3.4.1設(shè)置數(shù)據(jù)對(duì)象
在“實(shí)時(shí)數(shù)據(jù)庫(kù)”中,增加四個(gè)變量,分別為:液位1上限、液位1下限、液位2上限、液位2下限,參數(shù)設(shè)置如下:
(1) 基本屬性頁(yè)中,對(duì)象名稱分別為:液位1上限、液位1下限、液位2上限、液位2下限;對(duì)象內(nèi)容注釋分別為:水罐1的上限報(bào)警值、水罐1的下限報(bào)警值、水罐2的上限報(bào)警值、水罐2的下限報(bào)警值。 2 對(duì)象初值分別為:液位1的上限=9、液位1的下限下限=2、液位2的上限=4、液位2的下限=1.5;
(2) 存盤(pán)屬性頁(yè)中,選中“退出時(shí),自動(dòng)保存數(shù)據(jù)對(duì)象當(dāng)前值為初始值”。
3.4.2制作交互界面
下面通過(guò)對(duì)四個(gè)輸入框設(shè)置,實(shí)現(xiàn)用戶與數(shù)據(jù)庫(kù)的交互。需要用到的構(gòu)件包括:4個(gè)標(biāo)簽(用于標(biāo)注)和4個(gè)輸入框(用于輸入修改值)。具體制作步驟如下:在“水位控制”窗口中,根據(jù)上幾節(jié)學(xué)到的知識(shí),按照上圖制作4個(gè)標(biāo)簽。選中“工具箱”中的“輸入框”構(gòu)件,拖動(dòng)鼠標(biāo),繪制4個(gè)輸入框。雙擊圖標(biāo),進(jìn)行屬性設(shè)置。這里只需設(shè)置操作屬性即可。4個(gè)輸入框具體設(shè)置如下:對(duì)應(yīng)數(shù)據(jù)對(duì)象的名稱分別為:液位1上限值、液位1下限值、液位2上限值、液位2下限值。
四 報(bào)表輸出 4.1實(shí)時(shí)報(bào)表
實(shí)時(shí)報(bào)表是對(duì)瞬時(shí)量的反映,通常用于將當(dāng)前時(shí)間的數(shù)據(jù)變量按一定報(bào)告格式(用戶組態(tài))顯示和打印出來(lái)。實(shí)時(shí)報(bào)表可以通過(guò)MCGS系統(tǒng)的自由表格構(gòu)件來(lái)組態(tài)顯示實(shí)時(shí)數(shù)據(jù)報(bào)表如圖4-1-1。
圖4-1-1
具體制作步驟如下:
(1)在“用戶窗口”中,新建一個(gè)窗口,窗口名稱、窗口標(biāo)題均設(shè)置為“數(shù)據(jù)顯示”。
(2)雙擊“數(shù)據(jù)顯示”窗口,進(jìn)入動(dòng)畫(huà)組態(tài)。
(3)按照效果圖,使用“標(biāo)簽”制作一個(gè)標(biāo)題和四個(gè)注釋。
(4)選取“工具箱”中的“自由表格”圖標(biāo),在桌面適當(dāng)位置,繪制一個(gè)表格。
(5)雙擊表格進(jìn)入編輯狀態(tài)。
(6)在 A列的五個(gè)單元格中分別輸入:液位1、液位2、水泵、調(diào)節(jié)閥、出水閥;在B列的五個(gè)單元格中均輸入:1|0,表示輸出的數(shù)據(jù)有1位小數(shù),無(wú)空格。
(7)在B列中,選中液位1對(duì)應(yīng)的單元格,單擊右鍵。從彈出的下拉菜單中選取“連接”項(xiàng)。,
(8)再次單擊右鍵,彈出數(shù)據(jù)對(duì)象列表,雙擊數(shù)據(jù)對(duì)象“液位1”,B列1行單元格所顯示的數(shù)值即為“液位1”的數(shù)據(jù)。
(9)按照上述操作,將B列的2、3、4、5行分別與數(shù)據(jù)對(duì)象:液位2、水泵、調(diào)節(jié)閥、出水閥建立連接。
(10)進(jìn)入“主控窗口”中,單擊“菜單組態(tài)”,增加一名為“數(shù)據(jù)顯示”的菜單。
按“F5”進(jìn)入運(yùn)行環(huán)境后,單擊菜單項(xiàng)中的“數(shù)據(jù)顯示”,即可打開(kāi)“數(shù)據(jù)顯示”窗口。
4.2歷史報(bào)表 4.2.1利用“存盤(pán)數(shù)據(jù)瀏覽”策略構(gòu)件實(shí)現(xiàn)歷史報(bào)表
在“運(yùn)行策略”中新建一用戶策略。 策略名稱改為“歷史數(shù)據(jù)”;策略內(nèi)容注釋為“水罐的歷史數(shù)據(jù)”。雙擊“歷史數(shù)據(jù)”策略,進(jìn)入策略組態(tài)窗口。新增一策略行,并添加“存盤(pán)數(shù)據(jù)瀏覽”策略構(gòu)件。雙擊圖標(biāo),彈出“存盤(pán)數(shù)據(jù)瀏覽構(gòu)件屬性設(shè)置”窗口。在數(shù)據(jù)來(lái)源頁(yè)中,選中MCGS組對(duì)象對(duì)應(yīng)的存盤(pán)數(shù)據(jù)表,并在輸入框中輸入文字“液位組”。 在顯示屬性頁(yè)中,單擊“復(fù)位”按鈕,并在液位1、液位2對(duì)應(yīng)的小數(shù)列中輸入1,時(shí)間顯示格式:除毫秒外全部選中。在時(shí)間條件頁(yè)中,設(shè)置排序列名:MCGS_TIME,升序; 時(shí)間列名:MCGS_TIME; 所有存盤(pán)數(shù)據(jù)。單擊“確認(rèn)”按鈕。進(jìn)入“主控窗口”,新增加一個(gè)菜單,參數(shù)設(shè)置為:菜單屬性頁(yè)中,菜單名設(shè)為歷史數(shù)據(jù);菜單操作屬性頁(yè)中,菜單對(duì)應(yīng)的功能選擇執(zhí)行運(yùn)行策略塊;策略名稱為歷史數(shù)據(jù)。
4.2.2利用歷史表格動(dòng)畫(huà)構(gòu)件實(shí)現(xiàn)歷史報(bào)表
歷史表格構(gòu)件是基于“Windows下的窗口”和“所見(jiàn)即所得”機(jī)制的,用戶可以在窗口上利用歷史表格構(gòu)件強(qiáng)大的格式編輯功能配合MCGS的畫(huà)圖功能做出各種精美的報(bào)表。
在“數(shù)據(jù)顯示”組態(tài)窗口中,選取“工具箱”中的“歷史表格”構(gòu)件,在適當(dāng)位置繪制一歷史表格。雙擊歷史表格進(jìn)入編輯狀態(tài)。制作一個(gè)5行3列的表格。參照實(shí)時(shí)報(bào)表部分相關(guān)內(nèi)容制作,列表頭,分別為:采集時(shí)間、液位1、液位2; 數(shù)值輸出格式,均為:1|0。選中R2、R3、R4、R5,單擊右鍵,選擇“連接”選項(xiàng)。點(diǎn)擊菜單欄中的“表格”菜單,選擇“合并表元”項(xiàng),所選區(qū)域會(huì)出現(xiàn)反斜杠。 雙擊該區(qū)域,彈出數(shù)據(jù)庫(kù)連接設(shè)置對(duì)話框如圖4-2-2-1。
圖4-2-2-1
具體設(shè)置如下:
(1)基本屬性頁(yè)中,連接方式選取:在指定的表格單元內(nèi),顯示滿足條件的數(shù)據(jù)記錄;按照從上到下的方式填充數(shù)據(jù)行;顯示多頁(yè)記錄。
(2)數(shù)據(jù)來(lái)源頁(yè)中,選取組對(duì)象對(duì)應(yīng)的存盤(pán)數(shù)據(jù);組對(duì)象名為:液位組。
(3)顯示屬性頁(yè)中,點(diǎn)擊“復(fù)位”按鈕。
(4)時(shí)間條件頁(yè)中排序列名:MCGS_TIME;升序; 時(shí)間列名MCGS_TIME; 所有存盤(pán)數(shù)據(jù)。
(5)最終效果圖如下圖所示4-2-2-2。
圖4-2-2-2
五 曲線顯示 5.1實(shí)時(shí)曲線
實(shí)時(shí)曲線構(gòu)件是用曲線顯示一個(gè)或多個(gè)數(shù)據(jù)對(duì)象數(shù)值的動(dòng)畫(huà)圖形,象筆繪記錄儀一樣實(shí)時(shí)記錄數(shù)據(jù)對(duì)象值的變化情況如圖5-1-1。具體制作步驟如下:先雙擊進(jìn)入“數(shù)據(jù)顯示”組態(tài)窗口。在實(shí)時(shí)報(bào)表的下方,使用標(biāo)簽構(gòu)件制作一個(gè)標(biāo)簽,輸入文字:實(shí)時(shí)曲線。單擊“工具箱”中的“實(shí)時(shí)曲線”圖標(biāo),在標(biāo)簽下方繪制一個(gè)實(shí)時(shí)曲線,并調(diào)整大小。再雙擊曲線,彈出“實(shí)時(shí)曲線構(gòu)件屬性設(shè)置”窗口,僅設(shè)置:在基本屬性頁(yè)中,Y軸主劃線設(shè)為:5;其它不變。在標(biāo)注屬性頁(yè)中,時(shí)間單位設(shè)為:秒鐘;小數(shù)位數(shù)設(shè)為:1;最大值設(shè)為:10;其它不變。在畫(huà)筆屬性頁(yè)中,將:曲線1對(duì)應(yīng)的表達(dá)式設(shè)為:液位1;顏色為:藍(lán)色;曲線2對(duì)應(yīng)的表達(dá)式設(shè)為:液位2;顏色為:紅色。最后點(diǎn)擊“確認(rèn)”即可。這時(shí),在運(yùn)行環(huán)境中單擊“數(shù)據(jù)顯示”菜單,就可看到實(shí)時(shí)曲線。雙擊曲線可以將其放大
如圖5-1-1。
圖5-1-1
5.2歷史曲線
歷史曲線構(gòu)件實(shí)現(xiàn)了歷史數(shù)據(jù)的曲線瀏覽功能。運(yùn)行時(shí),歷史曲線構(gòu)件能夠根據(jù)需要畫(huà)出相應(yīng)歷史數(shù)據(jù)的趨勢(shì)效果圖。歷史曲線主要用于事后查看數(shù)據(jù)和狀態(tài)變化趨勢(shì)和總結(jié)規(guī)律。制作步驟如下:在“數(shù)據(jù)顯示”窗口中,使用標(biāo)簽構(gòu)件在歷史報(bào)表下方制作一個(gè)標(biāo)簽,輸入文字:歷史曲線。在標(biāo)簽下方,使用“工具箱”中的“歷史曲線”構(gòu)件,繪制一個(gè)一定大小的歷史曲線圖形。雙擊該曲線,彈出“歷史曲線構(gòu)件屬性設(shè)置”窗口,進(jìn)行相應(yīng)的設(shè)置,制作出歷史曲線如圖5-2-1。
圖5-2-1
六 安全機(jī)制
MCGS建立安全機(jī)制的要點(diǎn)是:嚴(yán)格規(guī)定操作權(quán)限,不同類別的操作由不同權(quán)限的人員負(fù)責(zé),只有獲得相應(yīng)操作權(quán)限的人員,才能進(jìn)行某些功能的操作。
1.以樣例工程為例,本系統(tǒng)的安全機(jī)制要求:
(1) 只有負(fù)責(zé)人才能進(jìn)行用戶和用戶組管理;
(2) 只有負(fù)責(zé)人才能進(jìn)行“打開(kāi)工程”、“退出系統(tǒng)”的操作;
(3) 只有負(fù)責(zé)人才能進(jìn)行水罐水量的控制;
(4) 普通操作人員只能進(jìn)行基本菜單和按鈕的操作。
2.需要設(shè)置權(quán)限的部分包括: 系統(tǒng)運(yùn)行權(quán)限和水罐水量控制滑動(dòng)塊。
(1)定義用戶和用戶組。
(2)系統(tǒng)權(quán)限管理。
(3)操作權(quán)限管理。
(4)運(yùn)行時(shí)進(jìn)行權(quán)限管理。
(5)保護(hù)工程文件。為了保護(hù)工程開(kāi)發(fā)人員的勞動(dòng)成果和利益,MCGS組態(tài)軟件提供了工程運(yùn)行“安全性”保護(hù)措施,工程密碼設(shè)置。
結(jié) 束 語(yǔ)
經(jīng)過(guò)一個(gè)多月的努力我的畢業(yè)設(shè)計(jì)終于完成了,但是現(xiàn)在回想起來(lái)做畢業(yè)設(shè)計(jì)的整個(gè)過(guò)程,從開(kāi)始的軟件入門(mén)學(xué)習(xí),之后的軟件運(yùn)用再到完成設(shè)計(jì)頗有心得,其中有苦也有甜,艱辛同時(shí)又充滿樂(lè)趣,不過(guò)樂(lè)趣盡在其中!這次畢業(yè)設(shè)計(jì),對(duì)我來(lái)說(shuō)是嶄新的,激動(dòng)的,因?yàn)槲业脑O(shè)計(jì)內(nèi)容不同于以往的設(shè)計(jì)類型,而是利用一個(gè)新軟件來(lái)做一個(gè)水位控制的動(dòng)畫(huà)。通過(guò)這次做畢業(yè)設(shè)計(jì)發(fā)現(xiàn)畢業(yè)設(shè)計(jì)不僅是對(duì)前面所學(xué)知識(shí)的一種檢驗(yàn),而且也是對(duì)自己能力的一種提高。我還清楚的記得在老師在給我裝軟件時(shí)讓我看的一些演示文件,那些都由有一些色彩明亮的元器件構(gòu)成一幅幅逼真而形象的畫(huà)面,那時(shí)候我就對(duì)此次設(shè)計(jì)有了一種強(qiáng)烈的好奇心,也正是由于這種求知欲使我在設(shè)計(jì)過(guò)程中不斷學(xué)習(xí),不斷進(jìn)步。
在課題分析階段,由于本次是設(shè)計(jì)一個(gè)水位控制系統(tǒng),所以對(duì)組態(tài)軟件的熟練運(yùn)用尤為重要。對(duì)指導(dǎo)老師提供的資料必須要吃透。這是關(guān)鍵,從查閱資料、提出問(wèn)題,到慢慢一一解決問(wèn)題,老師給了我很大的幫助。在總體設(shè)計(jì)階段,由于課題分析做的比較全面,很快就對(duì)系統(tǒng)的功能,控制機(jī)制有了充分的認(rèn)識(shí), 最后,系統(tǒng)運(yùn)行環(huán)節(jié)。對(duì)已完成的程序和硬件系統(tǒng)相結(jié)合。調(diào)試時(shí),由于腳本程序上出現(xiàn)了一點(diǎn)問(wèn)題,使得硬件和軟件不能完全統(tǒng)一。當(dāng)時(shí)我心里是非常焦急的,這一出錯(cuò)也意味著前功盡棄。然而,在指導(dǎo)老師的分析與鼓勵(lì)下,我重新糾錯(cuò)找到了錯(cuò)誤并改正
今后面臨技術(shù)員崗位的我,要學(xué)習(xí)的規(guī)范,程序設(shè)計(jì)語(yǔ)言還有很多。在微型計(jì)算機(jī)控制領(lǐng)域,要學(xué)的實(shí)在太多,僅大學(xué)生涯所學(xué)實(shí)在有限。我只有對(duì)自己不斷提出更高的要求,才能作為動(dòng)力使自己不斷取得新的成績(jī)!
謝 辭
在整個(gè)畢業(yè)設(shè)計(jì)中,我得到了指導(dǎo)老師李寧老師的熱心指導(dǎo)和幫助,從課題選擇、方案論證到具體設(shè)計(jì)和調(diào)試,無(wú)不凝聚著老師的心血和汗水,為了能方便我們做實(shí)驗(yàn),老師精心的為我們安排了實(shí)驗(yàn)室,此外李老師在忙完一天課后還忍著疲倦來(lái)到我們宿舍給我裝軟件。我很慶幸自己的這次畢業(yè)設(shè)計(jì)由我們李老師來(lái)輔導(dǎo)。在3年的專科學(xué)習(xí)和生活期間,也始終感受著老師的精心指導(dǎo)和無(wú)私的關(guān)懷,我從中受益匪淺。在此向李老師表示深深的感謝和崇高的敬意。“不積跬步無(wú)至千里,不積小流,無(wú)以成江河”本設(shè)計(jì)能夠順利的完成,也歸功于各位任課老師的認(rèn)真負(fù)責(zé),使我能夠很好的掌握和運(yùn)用專業(yè)知識(shí),并在設(shè)計(jì)中得以體現(xiàn)。正是有了他們的悉心幫助和支持,才使我的畢業(yè)論文工作順利完成,在此向西安航空職業(yè)技術(shù)學(xué)院自動(dòng)化工程系的全體老師表示由衷的謝意。感謝他們3年來(lái)的辛勤栽培。
文 獻(xiàn)
[1]譚浩強(qiáng) 著《C語(yǔ)言程序設(shè)計(jì)(第二版)》.北京清華大學(xué)出版社,1999
[2]邱小文、汪仁和《基于MCGS組態(tài)軟件的設(shè)備驅(qū)動(dòng)開(kāi)發(fā)》,來(lái)源:工業(yè)技術(shù)/礦業(yè)工程收藏文章
[3]余雷生 《電氣控制PLC應(yīng)用》 北京:機(jī)械工業(yè)出版社,2000.
[4]鄭啟華 著《PASCAL程序設(shè)計(jì)》北京:清華大學(xué)出版社,1991
[5]Waite,S.Prata著《新編C語(yǔ)言大全》范植花、樊瑩譯,北京:清華大學(xué)出版社,1994
[6]徐金武、楊德斌、徐種編著,《Turboc實(shí)用大全》,北京:機(jī)械工業(yè)出版社,1996
[7]田曉伍 主編《電氣控制與PLC應(yīng)用技術(shù)》,北京:機(jī)械工業(yè)出版社,2008
總結(jié)
以上是生活随笔為你收集整理的水位控制系统工程-经典的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Java负数二进制的表示
- 下一篇: 爱客猴(echo)内容管理系统 v3.2