MCGS嵌入版組態軟件把報警處理作為數據對象的屬性封裝在數據對象內,由實時數據庫來自動分析處理。當數據對象的值或狀態發生改變時,實時數據庫判斷對應的數據對象是否產生了報警或已產生的報警是否已經結束,并把所發生的報警信息通知給系統工程的其他部分。實時數據庫根據用戶的組態設定,把報警信息存入指定的存盤數據庫文件中。實時數據庫只負責對報警進行的判斷、通知和存儲三項工作, 報警產生后所要進行其他處理操作,則需要用戶在組態過程中制定方案,來完成該報警信息的使用和報警的顯示等。人機界面設計如下:
1定義報警
報警的定義在數據對象的屬性頁中進行完成的。首先選中“允許進行報警處理”復選框,確定報警的優先級,使實時數據庫能對該對象進行報警處理;報警定義是要填寫報警注釋、正確設置報警限值或報警狀態,如圖4-1所示。
圖4-1 數據對象報警屬性
數值型數據對象有六種報警 下下限、下限、上限、上上限、上偏差、下偏差。開關型數據對象有四種報警方式 開關暈報警、開關暈跳變報警、開關暈正跳變報警和開關暈負跳變報警,開關暈報警時可以選擇是開報警或者關報警,當一種狀態為報警狀態時,另一種狀態就為正常狀態。用戶在使用時可以根據不同的需要選擇一種或多種報警方式。事件型數據對象不進行報警限值或狀態設置,當對應的事件產生時報警也就產生,對事件型數據對象報警的產生和結束是同時完成的。字符型數據對象和組對象不能設置報警屬性,但對組對象而言所包含的成員可以單個設置報警。組對象一般可用來對報警進行分類管理,以方便系統其他部分對同類報警進行處理。當報警信息產生時可以設置報警信息是否需要自動存盤,這種設置操作需要在數據對象的存盤屬性中完成。
以循環水控制系統中的“液位1”數據對象為例進行講解定義數據對象報警信息的過程;在實時數據庫中雙擊“液位1” 數據對象,在報警屬性中選中“允許進行報警處理”;在報警設置中選中“上限報警”,把報警值設為 9 米;報警注釋為 水滿了;在報警設置中選中“下限報警”,把報警值設為 1米;報警注釋為 水沒了,如圖4-2所示。在存盤屬性中,選中“自動保存產生的報警信”,確認后完成數據對象的屬性設置,如圖4-3所 示。
圖4-2 “液位1” 數據對象的報警屬性設置
圖4-3 數據對象的存盤屬性設置
對千液位2、液位3數據對象只需要把“上限報警”的報警值設為 4m和8m,把“下限報警”的報警值設為 2m和3m,注釋內容與液位1其他一樣相同。在存盤屬性中選中“自動保存產生的報警信息”。具體操作如圖4-4、圖4-5所示。
圖4-4 數據對象的報警屬性設置
圖4-5液位2、液位3數據對象的報警屬性設置
2報警顯示畫面設置
實時數據庫只負責關千報警的判斷、通知和存儲三項工作,而報警產生后所要進行的其他處理操作需要用戶在組態過程中實現。
01報警瀏覽構件設置打開“用戶窗口”,進入“報警”窗口在工具條中單擊“工具箱”彈出“工具箱”,從“工具箱”選擇“標簽”的圖標,變“十”后用鼠標拖動到適當位置與大小。填寫三個文本框內容分別“實時報警”“歷史報警”“修改報警限值”字體為紅色、背景為臼色。
從“工具箱”選擇“報警瀏覽”圖標,變“十”后用鼠標拖動到適當大小放到“實時報警”字體的下面,如圖4-6所示。
圖4-6 報警瀏覽構件
報警瀏覽構件的作用是顯示實時的報警信息,雙擊報警瀏覽構件彈出報 警瀏覽構件屬性設置。在“報警瀏覽構件屬性設置”中,打開基本屬性把顯 示模式的實時報警數據改為 液位組,基本顯示行數改為3行,滾動方向改為新報警在上。其他設置如圖4-7所示。按“確認”后則報警顯示設置完畢。
圖4-7 報警瀏覽構件屬性設置
從“工具箱”選擇“報警顯示” 圖標,變“十”后用鼠標拖動到適當大小放到“歷史報警”字體的下面,如圖4-8所示。
圖4-8 報警顯示構件
報警顯示構件的作用是顯示歷史的報警信息,雙擊報警屬性構件彈出報警瀏覽構件屬性設置。在“報警顯示構件屬性設置”中,打開基本屬性把對應的數據對象名稱改為;液位組,最大記錄數改為6并且選擇運行時,允許改變列的寬度。其他設置如圖4-9所示。按“確認”后則報警顯示設置完畢。
圖4-9 報警顯示構件屬性設置
打開工作臺的“實時數據庫”,對“液位1”、“液位2”、“液位3”的上下限報警值都定義好了,如果想在運行環境下根據實際情況隨時需要改變報警上下限值,如何實現呢?在MCGS嵌入式組態軟件中,為用戶提供了大暈的函數,可以根據用戶的需要靈活地進行設置。具體操作如下
打開“實時數據庫”中的 “新增對象”提示框,增加六個變暈,分別為 液位1上限、液位1下限、液位2上限、液位2下限、液位3上限、液位3下限,具體設置如圖4-10至圖4-12所示。
圖4-10 液位1上限報警和液位1下限報警的數據對象屬性設置
圖4-11 液位2上限報警和 液位2下限報警的數據對象屬性設置
圖4-12 液位3上限報警和 液位3下限報警的數據對象屬性設置
在“用戶窗口”選“循環水控制”窗口進入,在“工具箱”選“標簽” 圖標用千文字注釋,分別在適當的位置寫入“上限值”、“上限值”、“液位1”、“液位2”、“液位3”。選中工具箱當中的“輸入框”
圖標,用千在運行時輸入上下限值,如圖4-13所示。
圖4-13“上限值”和“上限值”的輸入框
以“液位1上限”輸入框為例進行說明;雙擊 圖標進行輸入框構件屬性設置,在設置屬性過程中只需要設置“操作屬性”,把對應數據對象的 名稱改為 “ 液位1上限”即可,其他設置屬性不變!耙何1上下限”、“液位2上限”、“液位2下限”、“液位3上限”、“液位3下限”。操作步驟如圖4-14至圖4-16所示。
圖4-14“液位1上限”和“液位1下限”輸入框屬性設置
圖4-15“液位2上限”和“液位2下限”輸入框屬性設置
圖4-16“液位3上限” 和“液位3下限”輸入框屬性設置
以上的組態畫面設置完成后進入MCGS組態環境工作臺,在“運行策略”中雙擊“循環策略”,打開腳本程序編輯環境,在腳本程序中增加如下語句
!SetAlmValue(液位1,液位1上限報警,3)
!SetAlmValue(液位1,液位1下限報警,2)
!SetAlmValue(液位2,液位2上限報警,3)
!SetAlmValue(液位2,液位2下限報警,2)
!SetAlmValue(液位3,液位3上限報警,3)
!SetAlmValue(液位3,液位3下限報警,2)
若對該函數!SetAlmValue(液位1,液位1上限,3)不了解,按工具條上的“在線幫助”, MCGS嵌入組態軟件給出解釋信息。按“幫助”按鈕彈出“MCGS幫助系統”,在“索引”中輸入!SetAlmValue (DatName,Value,Flag)
函數意義 設置數據對象DatName對應的報警限值,只有在數據對象DatName“允許進行報警處理”的屬性被選中后,本函數的操作才有意義。對組對象、字符型數據對象、事件型數據對象本函數無效。對數值型數據對象,用Flag來標識改變何種報警限值。
返 回 值 數值型,返回值等千0 調用正常,不等千0 調用不正常。
參 數 DatName 數據對象名。
Value 新的報警值,數值型。
Flag 數值型,標志要操作何種限值,具體意義如下
Flag參數具體意義如下 1下下限報警值、2下限報警值、3上限報警值、4上上限報警值、5下偏差報警限值、6上偏差報警限值、7偏差報警基準值。
實 例 !SetAlmValue (電機溫度,200,3),把數據對象“電機溫度”的報警上限值設為200。
04報警動畫設置
在實際運行過程中當有報警產生時,通常有提示燈進行顯示輸出不同的工作狀態,下面來講解制作報警動畫的具體操作步驟
在“用戶窗口”中選中“報警”窗口雙擊進入,單擊“工具箱”中的“插入元件” 圖標,進入“對象元件庫管理”,從“指示”中選取如下圖 ,調整大小放在適當位置。作為“液位1”、“液位2”、“液位3”的報警指示,具體設置如 圖4-16至圖4-18所示。
圖4-16“液位1”的報警指示燈屬性設置
圖4-17“液位2”的報警指示燈屬性設置
圖4-18“液位3”的報警指示燈屬性設置
上述報警窗口的屬性設置全部設置完成后,退出運行策略窗口。點擊下載按鈕進入模擬運行環境,檢查所有設定的報警信息、報警指示燈、修改報警限值是否按照編寫的控制流程出現相應的動畫效果。報警窗口效果圖如圖4-19所示。
圖4-19報警查看的效果圖
總結:重點介紹了MCGS嵌入版組態軟件的報警系統的屬性設置,如定義報警、報警顯示畫面設置、修改報警限值、報警動畫等。通過本章的學習使學生能夠進一步了解MCGS嵌入版組態軟件的特點,應用MCGS嵌入版組態軟件來編寫比較復雜實際工程。
(文章來源網絡,僅供參考。評論處大家可以補充文章解釋不對或欠缺的部分)