• 技術與支持
  • 友情鏈接:以上代碼為網站重要補丁誤刪會導致網站崩潰!!
    常見問題
    您現在的位置:首頁 >> 技術與支持 >> 常見問題

    如何使用報警 

      報警的作用

      在對工業現場監控時,如果一旦發現某一參數的數值發生了異常,就應該馬上的通知操作人員,以便于操作人員對異常情況采取及時而有效的措施,避免發生重大的損失。在紫金橋實時數據庫中可以使用報警來完成對異常的通知。在紫金橋系統中報警的產生、處理和保存都在實時數據庫中完成,當需要顯示報警時,可以運行人機界面系統來顯示報警。

      報警的作用

      在對工業現場監控時,如果一旦發現某一參數的數值發生了異常,就應該馬上的通知操作人員,以便于操作人員對異常情況采取及時而有效的措施,避免發生重大的損失。在瑞爾實時數據庫中可以使用報警來完成對異常的通知。在瑞爾系統中報警的產生、處理和保存都在實時數據庫中完成,當需要顯示報警時,可以運行人機界面系統來顯示報警。

      報警的分類
      報警可以分為如下幾類:
      1、 限值報警
      對過程變量的測量值設置一系列的限值,當測量值越過限值時,就會產生限值報警。限值共有4種,即低低限、低限、高限、高高限,注意它們都必須在測量值的量程范圍內,并且它們的數值必須依次增大。當測量值越限時,并不是針對于每一個限值都產生一個報警,而是僅產生最近越限的報警。比如當測量值越過高高限時,并不是會產生高限和高高限兩個報警,而是僅產生一個高高限報警。
      2、 偏差報警
      當過程變量測量值相對于用戶的設定值偏差超過了用戶的指定范圍時,就會產生偏差報警。這里偏差的意義是測量值和設定值之差的絕對值。
      3、 變化率報警
      當過程變量測量值的變化率超過用戶設定的變化率時而產生的報警。也就是說,這種報警的產生表明過程變量變化的太快了,發生了異常。此處的變化率的意義是在一秒鐘的時間范圍內過程變量變化的絕對值的大小,計算公式為:abs(當前測量值-上次測量值)/(當前時間-上次測量時間)。
      4、 狀態異常報警
      數字量和模擬量不同,它的狀態只有0或1兩種。所以當它發生異常時,它的狀態也只能是0或1兩種情況之一。我們可以設定它的某一種狀態為異常狀態,從而可以在測量值為異常值時產生狀態異常報警。
      5、系統報警
      系統報警是指系統運行錯誤或I/O設備發生故障而產生的報警。
      報警死區和報警延時
      對于限值報警來說,有可能會出現這樣的情況,過程變量測量值總是剛剛越過限值,立刻又回到限值之內,這樣可能會造成報警總是剛一出現立刻又消失,難以捕捉。當發生這種情況時,如果需要捕捉報警,就需要使用報警死區來解決。設定了報警死區后,當測量值越過限值后仍然產生報警,但是當測量值恢復到限值之內后,并不是立刻解除報警,只有當測量值繼續恢復并且和限值之差超過報警死區后,報警才會恢復。
      對于限值報警和偏差報警來說,當出現測量值越限又立刻恢復的情況時,如果和第一種情況相反,不想捕捉報警而是想忽略這種報警,那么可以使用報警延時來解決。設定了報警延時之后,當測量值發生變化使報警條件成立時,系統并不立即報警,而是繼續測定報警條件,只有當報警條件持續成立并且持續的時間超過報警延時后,系統才產生報警。
      為點參數設置報警
      下面使用一個簡單的例子來說明報警的設置和查看。
      新建一工程,命名為“報警示例”,并進入組態環境。在組態環境中將導航器切換到數據庫頁,雙擊點組態項目,彈出點組態管理對話框。在組態管理對話框的右側點列表中用鼠標雙擊一空白行,在彈出的對話框中選擇模擬IO點并點擊“繼續”按鈕,彈出點定義對話框。在點定義對話框的上方點名欄里輸入AI101作為點名,在下方的量程下限和量程上限處分別填入-100和100。將對話框切換到報警參數頁,選中報警開關復選框,此時下方的限值和偏差變化率等選項可用。選中低低限、低限、高限和高高限復選框,并把限值設為-50、-10、90和100,對應的報警優先級設定為高級報警、低級報警、高級報警和緊急報警,如下圖所示:

      點擊“確定”按鈕,完成點的定義。

      在組態管理對話框的右側點列表中選擇AI101點并點擊 按鈕把該點的信息復制到剪貼板中。連續點擊 兩下,復制出AI102和AI103兩個點。選擇AI102點并把下方的點參數修改對話框切換到報警參數頁,可以看到它的設置和AI101相同。在AI102的延時時間欄里輸入5000,也就是說它的報警延時為5000毫秒。同樣在AI103點的報警死區欄里輸入5。
      新建一個模擬IO點,名字叫AI104,打開它的報警開關,并選中偏差報警項,在DEV欄里輸入25表示此點和設定值的偏差超過25時就會產生報警。選擇報警級別為高級報警,同時更改設定值為10,如下圖所示:

      新建模擬IOAI105,這次選擇變化率報警項,將RATE設為5,報警級別設為高級報警,周期為1秒,如下圖所示:

      新建一數字IODI101,打開報警開關,并把其正常狀態值設為0,如下圖所示:

      至此為止我們已經創建了5個模擬IO點和一個數字IO點,同時為它們分別組態了不同的報警設置,下一步我們將使用報警組件來查看這幾個點的報警狀態。

      創建報警組件
      將導航器切換到畫面頁,雙擊窗口選項創建一個新的窗口。在Draw中點擊工具條按鈕 會彈出如下所示的組件選擇對話框:

      在對話框的左側選擇報警組,并且在右側雙擊圖中所示圖標或托拽該圖標到窗口中,即可在當前窗口中創建報警組件。

      雙擊報警組件,在彈出的報警組件設置對話框中把報警范圍改為所有區域,其它的設置使用缺省值。至此為止我們就已經創建并完成了對報警組件的設置,關于報警組件各部分設置的意義,請參照幫助。

    報警的查看
      1、查看實時報警。
      運行實時據庫系統,在View中雙擊鼠標打開剛才創建的窗口,可以看到沒有任何報警發生。打開實時據庫,把AI101的值改為95,因為AI101的高限為90,所以此時應該產生限值報警,這時可以從報警組件中看到有一條高級報警產生。同樣修改AI102的值為95,但是立刻再次把它的值改為0,可以發現一直沒有新的報警產生。再次修改AI102的值為101可以看到并沒有立刻產生報警,大概延時5秒鐘之后有一條新的緊急報警產生。這是因為AI102組態了5秒鐘的報警延時,當AI101的值超出限值后,在不到5秒鐘的時間內又恢復時,并不產生報警,只有AI101的值連續超出限值的時間大于5秒鐘時,才會有報警產生。把AI103的值也設為95,可以看到又立刻產生了一條新的報警。
      在實時數據庫中把AI101的值更改為0,可以看到在報警組件中,AI101的報警圖標變為了綠色,這表明點AI101的值自動恢復了。同樣把AI102的值也更改為0,這時發現AI102的報警圖標并沒有延時5秒,而是立刻變為了綠色,這說明報警延時對于報警恢復無效。將AI103的值更改為85,此時因為AI103設定了數值為5的報警死區,所以此時報警仍然沒有恢復,只有在數據庫中把AI103的值更改為84使它越過報警死區之后,在報警組件中才能看到AI103也變為恢復狀態。
      在實時數據庫中把AI105的值改為10然后立刻又更改為100,因為位號AI105組了變化率報警,而它的值又在短時間內發生了很大的變化,導致變化率超出限制,這時可以從報警組件中看到一條AI105的變化率報警。把DI101的值更改為1,因為已經定義了DI101值為1時為異常值,所以也會有報警產生。
      在報警組件中可以通過雙擊某一條報警記錄來確認該報警,可以看到,如果該報警是報警恢復狀態,那么報警被確認后消失,如果該報警不是恢復狀態,那么確認后該報警圖標變為綠色。通過點擊報警組件中的“全確認”按鈕,可以對當前的所有報警進行確認。
      2、 查看歷史報警
    在報警組件中,選擇查看類型下拉框為歷史報警狀態,此時可以看到當天發生的所有報警,通過“前一天”“后一天”按鈕可以切換報警顯示的歷史日期。
      3、 歷史報警查詢
      在報警組件中,選擇查看類型下拉框為歷史報警查詢狀態,此時彈出查詢設置對話框,如下圖所示:

      設置查詢的起始和結束時間,并選擇過濾條件,單擊確定即可查詢到符合條件的歷史報警。


      設置系統報警窗口
      系統報警窗口是一個長條形的窗口,它被顯示在屏幕的頂部或底部,是一種頂層窗口,始終顯示在屏幕上,不會因為切換畫面而關閉。系統報警窗口分為左右兩個顯示區,左側為系統報警區,顯示最近發生的系統報警;右側為過程報警區,顯示最近發生的過程報警。
      系統報警窗口的外觀如下圖所示:

    可以使用如下的方法設置系統報警窗口:

    將導航器切換到畫面頁,并雙擊“配置/系統參數”項目,彈出系統參數設置對話框。選擇中復選框“系統報警窗”,并在后面的下拉框中選擇運行時系統報警窗口的顯示位置,單擊“確認”按鈕即可。


      報警觸發動作
      當報警發生時用戶可能希望執行一定的動作,比如顯示報警聲音或彈出一個窗口進行提示。瑞爾系統提供了報警觸發動作來完成此項功能。假如我們需要當報警發生時使用聲音來進行提示,設置方法如下所示:
      將導航器切換到畫面頁,雙擊腳本中的條件選項,彈出條件腳本定義對話框。在條件動作的名稱欄中輸入Alrm,注意此動作的名稱不可和其他動作名稱重復。選擇執行方式為“為真期間執行”,并把執行間隔設置為500毫秒。如下圖所示:

    選擇“預定義條件”復選框,并點擊“預定義條件”按鈕,彈出預定義條件設置對話框如下圖所示:

      預定義條件的類型一共有3種,分別是“過程報警”、“數據源故障”和“設備故障”。其中數據源故障條件在遠程數據源聯接出現問題時觸發動作,設備故障條件在數據采集出現問題時觸發動作,過程報警條件是在數據庫中的位號出現報警時觸發動作。在這里我們選擇過程報警選項。其他設置見上圖。

      下一步我們需要輸入預定義條件成立時,所觸發的動作。因為我們希望使用聲音來報警,所以只需要利用腳本語言來產生一段聲音即可。如果計算機上沒有安裝聲卡可以使用Beep函數來驅動計算機內置的小喇叭來發出聲音。Beep函數有一個整型參數,表示發出聲音的類型,當參數為0時聲音最為刺耳,正好可以作為報警提示音。我們在觸發動作編輯框中輸入Beep(0)即可。如果計算機上安裝有聲卡,那么可以使用PlaySound來播放一段存在于硬盤聲音文件中的聲音。

      運行系統,當有報警產生時,可以聽到有刺耳的報警音產生,確認該報警,聲音消失。這里僅僅是一個簡單的例子,您可以根據自己的需要設定自己定義的條件和觸發動作。

    和報警相關的數據庫參數

      一、預定義的數據庫參數

      數信的實時數據庫提供了幾個預定義的和報警相關的數據庫參數,如下所示:

      1、$ALARMTXT 字符型,意義為數據庫最新報警的描述信息。

      2、$ALARM 整型,取值范圍0-2,意義為數據庫當前沒有確認的報警的最高優先級。

      3、$ALARM[nn] 整型,范圍0-2,nn范圍從00到31,表示指定的區域,如$ALARM00表示區域0的未確認報警的最高優先級。

      二、數據庫點的報警狀態參數

      對于數據庫中的任何一個模擬IO點和數字IO點來說,都有兩個參數來表明該點的報警狀態,如下所示:

      1、 ALMACK,整型,范圍0-7,該狀態表示當前報警是否確認,0到7中是該變量的最后3個bit,從低位到高位依次表示限值報警,偏差報警,變化率報警的確認狀態。0表示沒有確認,1表示已經確認。假如發生了偏差報警和限值報警,如果該值為2,二進制表示為010,則表示偏差報警已經確認,而限值報警沒有確認。

      2、 ALMSTAT,整型,范圍0-7,當前發生的報警。最后3個bit從低位到高位依次表示是否發生限值報警,偏差報警,變化率報警,0表示沒有發生,1表示發生。如6(110)則表示變化率報警和偏差報警。

      以上狀態參數可以直接在腳本和動畫聯接中使用,用以提供更靈活的方式來對報警進行控制。

      報警確認函數

      可以在腳本中使用AlrmAck的函數來對報警進行確認:

      格式:AlmAck(DataSource, AreaNo)

      DataSource:字符串類型,數據源名稱。該項為空表示本地數據源。

      AreaNo:整型,數據庫中的區域。

    15胆拖投注金额