(第二屆“安控杯”SCADA/RTU技術與應用征文比賽三等獎作品)
顧 誠
1 引言
目前,在工業控制領域以計算機網絡為信息載體的應用越來越多,SCADA通訊系統的網絡化正在成為趨勢,越來越多的監控儀器和設備開始提供網絡接口,利用計算機網絡實現信息共享和交換。與常規的計算機網絡服務不同,由于SCADA通訊系統需要與硬件或外設交換數據,所以處理能力較之常規的網絡服務器受到更大的限制。然而,現有的研究,不論是基于局域網技術的工業計算機網絡應用[1][2],還是以互聯網技術為平臺的遠程數據采集與操作[3][4],均簡單地假設通訊系統設備的服務能力可以滿足應用需要,缺乏定量的分析計算。
事實上,一方面,SCADA通訊系統設備需要快速,甚至實時響應來自網絡的任務;另一方面提升SCADA通訊系統設備的服務能力受硬件速度和服務類型等因素的牽制,比提升常規網絡服務器性能困難。所以,需要在設計SCADA通訊系統設備時,對它的負荷能力和可能的任務需求作縝密的分析,確保它能在預計的時間之內對來自網絡的請求做出準確有效的回應。為此,筆者在分析SCADA通訊系統設備的網絡任務特點的基礎上,根據排隊論中的馬爾可夫鏈理論建立了“多處理器SCADA通訊系統能力模型”。
2 SCADA通訊系統設備的網絡任務特點
為了對SCADA通訊系統設備響應網絡任務的能力進行定量描述,先定義有關概念。
(1) SCADA通訊系統設備的單處理器任務處理速率:μ(任務/秒)
μ表示當SCADA通訊系統設備中只有一個處理器時,它處理網絡任務的速度。從理論上講,可以通過提升SCADA通訊系統設備的硬件水平來提高μ。但是,多數網絡任務的處理時間并不是僅僅取決于服務方的能力。如果該網絡任務是交互式的,網絡任務需要服務方和請求源(可能是操作員,也可能是其它設備)共同完成,那么,參加交互的另一方和連接兩方的網絡通道都可能成為制約整個任務完成時間的瓶頸。也就是說,雖然可以用提升SCADA通訊系統設備硬件能力的方法來提高μ,但μ的提高受到上述瓶頸的限制。如果在服務方的處理能力不受任何限制的假設下,網絡任務的平均處理時間為τ(秒),即使SCADA通訊系統設備提供超過1/τ(任務/秒)的硬件處理能力,μ最大也只能達到1/τ 。由于硬件的技術水平發展很快,以硬件為基礎提升SCADA通訊系統設備的處理能力并不困難,所以在筆者的模型中假定SCADA通訊系統設備的處理器具備足夠的處理能力,滿足μ=1/τ 。
(2) SCADA通訊系統設備中的處理器數:c
c表示在SCADA通訊系統設備中包含的處理器數目。受網絡任務交互性的制約,單個處理器只能按速率μ處理網絡任務。如果SCADA通訊系統設備希望用比μ更高的速率來響應網絡任務,顯然不能依靠提升單個處理器的能力,而是應該增加處理器的數目。
(3) 訪問SCADA通訊系統設備的網絡任務發生率:λ(任務/秒)
λ表示網絡中所有對SCADA通訊系統設備的實時訪問請求的發生速率。這些訪問請求一般與應用邏輯密切關聯,SCADA通訊系統設備應該及時應答。為了使計算更加有針對性,可以不及時響應的開放性請求,如與控制操作無關的查詢,不包含在λ中。
(4) SCADA通訊系統設備的平均等待任務數e
從現有的應用情況看,用計算機網絡承載軟實時任務的情況已經十分普遍。對SCADA通訊系統設備而言,不僅需要正確響應網絡任務,而且需要及時響應網絡任務,即保證能在某個時間之內對網絡任務作出回應。相對于平均等待任務數,平均等待時間是更直接的指標。但是,由于平均等待時間與任務自身的屬性關系密切,難以抽象成格式較為統一的模型,所以用平均等待任務數e表達SCADA通訊系統設備的忙閑情況。當SCADA通訊系統設備的等待任務數小于處理器數目c時,平均等待任務數e小于1,當等待任務數小于2c時,平均等待任務數e小于2。
通過對上述概念的討論,可以歸納出SCADA通訊系統設備的網絡任務特點。這就是:對確定的SCADA通訊系統設備而言,單處理器任務處理速率μ 和網絡任務發生率λ 是已知的;平均等待任務數e是需要滿足的條件;處理器數c 是可以調節的,設計人員用c來滿足e產生的需求。
毫無疑問,SCADA通訊系統設備需要實時響應能力。如果平均等待任務數e小于等于1,即最多等待一個任務的平均執行時間,SCADA通訊系統設備可以用最簡單的任務管理方法提供實時服務。所以在為SCADA通訊系統設備建立多處理器能力模型時,假定e小于等于1。
3 多處理器能力模型
網絡任務有自己的行為特征。不同的研究人員試圖用各自的數學方法模擬網絡中的任務處理過程,排隊論是其中使用最為普遍和成功的工具之一。許多文獻[5]指出,在開放的計算機網絡環境中,網絡任務請求是符合統計規律的。具體地講,在一般情況下,任務的到達時間服從泊松分布,到達時間間隔和服務時間均呈指數分布。另外,由于多數SCADA通訊系統設備的功能比較復雜,需要并行處理能力,所以,假定由多個任務處理器構成。
由此,結合SCADA通訊系統設備的應用特點,可以用M/M/c模型來描述SCADA通訊系統設備的網絡任務活動情況。SCADA通訊系統設備M/M/c模型的含義是:(1) 任務的到達時間服從泊松分布;(2) 服務時間服從指數分布;(3) 有c個任務處理器,即該SCADA通訊系統設備能同時處理c個任務。
由排隊論的相關結論,在M/M/c模型下SCADA通訊系統設備的網絡任務數構成一個取值于{0,1,2,...,∞}的連續時間Markov鏈。令任務到達率為λ,單處理器的任務處理率為μ,每個處理器的能力相同,共有c個處理器,由此得到一個有限狀態生滅過程,其狀態概率方程:
因穩態解與時間無關,記pk (t)= pk ,k>0,由于pk'(t)=0,所以有:
令 a=λ/μ, ρ=λ/ (cμ)= a/c,
pj 表示排隊任務數為j的概率,可解得:
只有當總任務數超過c時,才會出現等候的任務,所以等候的任務數為:
因為平均等待任務數e=E/c,為了使SCADA通訊系統設備能實時響應網絡任務,e應該小于等于1,所以E ≤c,再代入ρ=a/c,有:
ac+1 p0 ≤c! (c-a)2
由此得到SCADA通訊系統設備的多處理器能力模型。由網絡任務發生率λ和單處理器的任務處理速率μ可以計算出a。在已知a后,可以由(1)計算出c,即需要配置的處理器數目。
4 在電力SCADA通訊單元設計中的應用
在電網數據采集監控系統中,通訊單元是重要的組成部分,它必須保障與系統中的RTU和綜合自動化裝置的聯絡。由于SCADA需要覆蓋一定的區域,不僅包含各類不同廠商型號的設備,網絡通訊的線路質量和應用層規約也各不相同。所以,在設計SCADA通訊單元時應該將軟件與硬件分開。用軟件來適應設備、線路質量和應用層規約的多樣性及擴展,用硬件來保障總體通訊能力。
利用SCADA通訊系統設備的多處理器能力模型,可以根據應用需求計算出SCADA通訊單元的硬件配置。
例如,在某SCADA通訊單元設計時考慮需求如下:遠程裝置60套;每個裝置平均間隔5分鐘通訊一次;每次平均通訊時間20秒;即單處理器任務處理速率μ=0.05任務/秒,網絡任務發生率λ=0.2任務/秒,所以
a=0.2/0.05=4
將a代入(1),可解得:c>4,取c=5。
也就是說,在該SCADA的通訊單元中配置5個任務處理速率為0.05任務/秒的處理器即可在硬件設備能力上滿足應用需求。
5 結語
本文在分析SCADA通訊系統設備的網絡任務特點的基礎上,根據排隊論中的馬爾可夫鏈理論建立了“多處理器SCADA通訊系統能力模型”。它能用經濟合理的配置確保在預計的時間之內對來自網絡的請求做出準確有效的回應。筆者將該模型用于SCADA通訊單元的設計中,大幅度地簡化了設備配置,效果非常顯著。