如何使用紫金橋軟件中遠程數據源
如何使用遠程數據源
數據源建立后,用戶就可以直接使用遠程數據源,那么,數據源究竟有什么用途呢,下面將介紹幾個方面的使用:數據訪問,圖形對象的使用,實時數據庫之間的通訊,時鐘校準和安全驗證。
數據訪問:
數據訪問是分布式數據庫的基本應用。我們知道,在DRAW中對數據庫的訪問通過變量對數據庫進行訪問,該類變量就是數據庫變量。
假設組態一個遠程數據源Remote,要訪問該數據源中變量如一個壓力信號的測量值:PT1154.PV,則定義一個變量,在導航樹上選擇“畫面/變量/數據庫變量”,新建一個數據庫變量PT1154.PV,如下:

注意:數據庫指定部分,數據源指定為要訪問的數據源Remote,參數指定為其在Remote數據庫中的點參數名稱PT1154.PV。
提示:如果有兩個數據庫的變量同名,如上例中在本地數據庫中已經存在一個變量PT1154.PV,而且需要同時訪問這兩個變量,則在定義變量時,把其中的任何一個定義為其它名稱,如把Remote的PT1154.PV定義為RPT1154.PV即可。
此時,就可以在DRAW中引用該變量了。可以對其進行顯示,賦值,進行運算等一切操作。如我們在DRAW中畫一個文本對象,組態其模擬輸入/輸出動作都為PT1154.PV,則運行后,在該畫面上可以看到其顯示的數值與遠程數據庫的一致。而且,在VIEW上修改數據可以同時在服務器的數據庫上同步顯示其修改后的值。
圖形對象的使用:
在紫金橋中,某些圖形對象可以直接通過數據源訪問遠程數據,如報警、總貌、趨勢等圖形單元,可以直接指定數據源以訪問遠程數據源。下面以實時報警為例,示例如何使用遠程數據源。
創建一個報警基本圖元如下,進入到對象動畫:

注意數據源中選擇的遠程數據源Remote,報警范圍中選擇的是區域0。這樣該報警顯示的將是遠程數據源Remote的區域0的報警。運行結果如下:

它顯示的是Remote的實時報警。
實時數據庫之間的數據通訊
前面提到,紫金橋的實時數據庫不但是數據服務器而且可以充當客戶端訪問其它數據庫服務器的數據。由于某些復雜回路的控制或某些全局的優化過程需要多個變量的參與才能實施,而這些變量并不能保證其一定在一個服務器中,往往分布在若干個系統中。這時往往需要數據庫之間進行通訊,把相關數據連接到一個數據庫中由該數據庫進行集中處理。
數據庫之間的通訊也通過數據源進行,它們通過數據連接進行數據通訊。我們知道,當組態數據庫的數據連接時,數據庫會主動向被連接的服務請求數據如IO驅動,遠程數據庫等。
選擇組態環境中導航樹的“數據庫/點組態”,進入到數據庫組態,在一個點的數據連接屬性頁中進行數據連接,選擇遠程數據連接,如下:

數據源就是要連接的遠程的數據服務器,點是遠程數據庫的點參數。這樣連接完成之后,當前選中的點參數(如LIC110.PV)就與遠程數據庫的指定點參數相對應了。這時在本地數據庫中就可以使用該點參數(LIC110.PV)進行控制、運算,它等同于遠程數據庫的LIC101.PV。
時鐘校準和安全驗證
系統運行時由一個統一的時標是非常重要的,如果分布式系統其時鐘不統一,將可能造成系統誤動作,連鎖裝置邏輯紊亂,因此需要指定一臺計算機時間作為系統的標準時鐘,這樣就可以避免各系統時鐘不統一而造成的種種嚴重后果。客戶端每隔一小時向主服務器請求一次時鐘校準服務,與主服務器時鐘保持同步。
如果分布式系統的每個服務器都需要組態用戶信息,不但不利于不同服務器之間通訊時數據的安全驗證,而且組態工作量很大,十分不便。紫金橋的分布式系統中由主服務器組態和保存用戶安全數據,客戶端每次啟動時向主服務器備份安全數據文件到本地數據庫,然后每次安全驗證都在本地執行,這樣可以大大提高系統效率。如系統的定時調度中需要多次進行安全驗證,如果每次都到服務器請求驗證服務,不但加大了服務器的負擔,而且由于客戶端和服務器的通訊有可能需要較長時間,這樣大大降低了其執行效率。
數據源建立后,用戶就可以直接使用遠程數據源,那么,數據源究竟有什么用途呢,下面將介紹幾個方面的使用:數據訪問,圖形對象的使用,實時數據庫之間的通訊,時鐘校準和安全驗證。
數據訪問:
數據訪問是分布式數據庫的基本應用。我們知道,在DRAW中對數據庫的訪問通過變量對數據庫進行訪問,該類變量就是數據庫變量。
假設組態一個遠程數據源Remote,要訪問該數據源中變量如一個壓力信號的測量值:PT1154.PV,則定義一個變量,在導航樹上選擇“畫面/變量/數據庫變量”,新建一個數據庫變量PT1154.PV,如下:

注意:數據庫指定部分,數據源指定為要訪問的數據源Remote,參數指定為其在Remote數據庫中的點參數名稱PT1154.PV。
提示:如果有兩個數據庫的變量同名,如上例中在本地數據庫中已經存在一個變量PT1154.PV,而且需要同時訪問這兩個變量,則在定義變量時,把其中的任何一個定義為其它名稱,如把Remote的PT1154.PV定義為RPT1154.PV即可。
此時,就可以在DRAW中引用該變量了。可以對其進行顯示,賦值,進行運算等一切操作。如我們在DRAW中畫一個文本對象,組態其模擬輸入/輸出動作都為PT1154.PV,則運行后,在該畫面上可以看到其顯示的數值與遠程數據庫的一致。而且,在VIEW上修改數據可以同時在服務器的數據庫上同步顯示其修改后的值。
圖形對象的使用:
在紫金橋中,某些圖形對象可以直接通過數據源訪問遠程數據,如報警、總貌、趨勢等圖形單元,可以直接指定數據源以訪問遠程數據源。下面以實時報警為例,示例如何使用遠程數據源。
創建一個報警基本圖元如下,進入到對象動畫:

注意數據源中選擇的遠程數據源Remote,報警范圍中選擇的是區域0。這樣該報警顯示的將是遠程數據源Remote的區域0的報警。運行結果如下:

它顯示的是Remote的實時報警。
實時數據庫之間的數據通訊
前面提到,紫金橋的實時數據庫不但是數據服務器而且可以充當客戶端訪問其它數據庫服務器的數據。由于某些復雜回路的控制或某些全局的優化過程需要多個變量的參與才能實施,而這些變量并不能保證其一定在一個服務器中,往往分布在若干個系統中。這時往往需要數據庫之間進行通訊,把相關數據連接到一個數據庫中由該數據庫進行集中處理。
數據庫之間的通訊也通過數據源進行,它們通過數據連接進行數據通訊。我們知道,當組態數據庫的數據連接時,數據庫會主動向被連接的服務請求數據如IO驅動,遠程數據庫等。
選擇組態環境中導航樹的“數據庫/點組態”,進入到數據庫組態,在一個點的數據連接屬性頁中進行數據連接,選擇遠程數據連接,如下:

數據源就是要連接的遠程的數據服務器,點是遠程數據庫的點參數。這樣連接完成之后,當前選中的點參數(如LIC110.PV)就與遠程數據庫的指定點參數相對應了。這時在本地數據庫中就可以使用該點參數(LIC110.PV)進行控制、運算,它等同于遠程數據庫的LIC101.PV。
時鐘校準和安全驗證
系統運行時由一個統一的時標是非常重要的,如果分布式系統其時鐘不統一,將可能造成系統誤動作,連鎖裝置邏輯紊亂,因此需要指定一臺計算機時間作為系統的標準時鐘,這樣就可以避免各系統時鐘不統一而造成的種種嚴重后果。客戶端每隔一小時向主服務器請求一次時鐘校準服務,與主服務器時鐘保持同步。
如果分布式系統的每個服務器都需要組態用戶信息,不但不利于不同服務器之間通訊時數據的安全驗證,而且組態工作量很大,十分不便。紫金橋的分布式系統中由主服務器組態和保存用戶安全數據,客戶端每次啟動時向主服務器備份安全數據文件到本地數據庫,然后每次安全驗證都在本地執行,這樣可以大大提高系統效率。如系統的定時調度中需要多次進行安全驗證,如果每次都到服務器請求驗證服務,不但加大了服務器的負擔,而且由于客戶端和服務器的通訊有可能需要較長時間,這樣大大降低了其執行效率。
文章版權歸西部工控xbgk所有,未經許可不得轉載。