吳優,付立軍,馬凡,許軼楠,朱琬璐
1 海軍工程大學 艦船綜合電力技術國防科技重點實驗室,湖北 武漢 430033
2 海軍研究院,北京 100161
隨著艦船電力系統向自動化、信息化等方向的快速發展,艦船電力系統的能量管理技術將從目前基于監測的基本型能量管理逐漸發展為集數據采集、狀態分析與綜合管理為一體的智能型能量管理[1-2]。該管理系統將通過高速信息網絡實現對艦船電力系統的網絡化控制,并更多地參與電力系統實時閉環控制與自主決策。然而,能量管理信息網絡的性能及非理想特性(例如,網絡延時、丟包和誤碼等)有可能對電力系統的運行特性帶來顯著影響,甚至導致系統失穩等嚴重問題。信息網絡與電力系統之間的緊耦合關系有可能導致故障在信息網絡與電力系統之間傳播,而這2 個系統中的任意部件出現故障都可能會因連鎖反應而導致全系統的運行狀態出現異常。由此可見,僅針對信息網絡或電力系統的傳統仿真工具已無法滿足此類系統的分析需求,因此,需要開發一種可同時精確描述這2 個系統及其之間緊耦合關系的仿真方法,從而描述系統中通過“信息流”控制“能量流”的運行特性。
對于信息網絡與電力系統的聯合仿真問題,目前已有多種實現途徑,例如通過對傳統的單一仿真平臺進行擴展,即可實現聯合仿真的功能。Baran 等[3]提出了一種將 PSCAD/EMTDC 軟件和基于Java 實現的通信模塊相結合的聯合仿真方案;童曉陽等[4]和Tong[5]以網絡仿真工具OPNET為主體,通過將電力系統的通信需求簡化為基于C 語言實現的需求程序,得以嵌入OPNET 運行。此類方法的主要缺點是由于僅采用了一種專用仿真平臺,導致聯合仿真只能對信息網絡模型或電力系統模型這二者中的一個進行大幅簡化,所以無法對全系統特性進行準確仿真。為在聯合仿真中同時準確描述信息網絡與電力系統的特性,一種較為有效的方法是同時利用已有的信息網絡和電力系統仿真平臺來實現聯合仿真,但直接將這2 種仿真平臺進行連接可能會導致設計接口的專用性強、不利于平臺擴展等一系列問題[6-8]。為此,有學者提出了聯合仿真框架,以便實現各仿真平臺之間統一的接口設計,其中應用較為廣泛的是高層體系結構(high level architecture,HLA)仿真框架[9]。該框架可為各個仿真平臺提供統一的接口函數,通過調用這些函數,即可實現各個仿真平臺之間的信息交互與協同控制。目前,該框架在信息網絡與電力系統聯合仿真領域的應用案例包括結合通信網絡、電磁暫態和機電暫態的仿真平臺EPOCHS[10-11],以及廣域網絡保護控制研究[12-13]和智能電網通信網絡性能研究[14-15]等,但尚未有應用于艦船能量管理信息網絡與電力系統的聯合仿真研究。相較于陸用電力系統控制網絡,艦船電力系統能量管理信息網絡的物理范圍與網絡數據量較小,所以陸用電力系統研究中需考慮的物理距離、帶寬限制等因素對艦船電力系統的影響并不明顯。然而,艦船電力系統中受信息網絡直接控制的電力電子設備較多,極易因網絡故障而導致電力系統故障,因此,需針對網絡故障等問題開展針對性的研究。
針對艦船電力系統及其對應的能量管理信息網絡,本文擬分別將OPNET 和Matlab/Simulink 軟件作為信息網絡和電力系統的仿真平臺,實現這2 種平臺對外數據交互的軟件接口,并將基于HLA 仿真框架實現平臺之間的數據交互和時鐘同步功能,進而實現信息網絡與電力系統的聯合仿真;同時,將搭建艦船電力系統中典型的多臺發電機組并聯帶負載聯合仿真模型,并通過基于以太網的能量管理信息網絡對發電機功率分配進行調節,進而分析能量管理信息網絡中固有延時、鏈路過載等因素對電力系統運行特性的影響,用以驗證本文聯合仿真方法的有效性。
HLA 仿真框架是一種建模仿真領域的通用高層體系結構,其主要功能是為多個仿真軟件提供相對獨立的聯合仿真支撐服務,將具體的仿真功能實現、仿真運行管理和底層通信分開,并基于統一的運行時環境(run time infrastructure,RTI)接口來實現仿真平臺之間的信息交互和時鐘同步。基于HLA 的聯合仿真稱為“仿真聯邦”,其中,每一個仿真平臺稱為“聯邦成員”,如圖1 所示。
由圖1 可以看出,仿真聯邦由RTI 執行程序、聯邦執行程序和聯邦成員構成,各部分之間通過調用RTI 提供的相關庫函數(libRTI)進行信息交互,從而實現聯合仿真。RTI 為聯邦成員提供包括聯邦管理、聲明管理、對象管理、時間管理、所有權管理和數據分發管理在內的6 類服務功能,并設計實現聯邦創建與銷毀、聯邦成員加入和退出、執行數據交互等百余種函數功能。目前,聯合仿真中主要采用了聯邦管理和時間管理這2 部分功能,在仿真進程中聯邦成員與仿真聯邦之間的主要交互操作如圖2 所示。

圖 2 HLA 仿真聯邦與聯邦成員之間的交互過程Fig. 2 Interactions between HLA federation and federates
基于HLA 仿真框架,本文設計了如圖3 所示的艦船能量管理信息網絡與電力系統的聯合仿真系統,該系統由 OPNET,Matlab 以及 HLA 框架提供的RTI 軟件組成。OPNET 的主要功能是實現艦船能量管理信息網絡的詳細仿真,所涉及的網絡通信設備包括交換機、區域控制器、節點控制器以及網絡傳輸介質等。由于OPNET 對HLA 仿真框架的功能支持較為完善,所以在信息網絡仿真模型中可以通過配置和調用OPNET HLA 節點來直接實現與RTI 之間的數據交互和時鐘同步。Matlab 的主要功能是實現艦船電力系統的詳細仿真,并通過采樣模塊和接口模塊實現與RTI 之間的數據交互。由于Matlab 中缺乏對HLA 框架的直接支持,故需采用額外添加控制程序的方式來間接實現其與RTI 之間的交互,而Matlab 與控制程序之間則通過Socket 通信來實現數據交互。

圖 3 聯合仿真系統結構Fig. 3 Structure of co-simulation system
為了實現信息網絡仿真模型與RTI 之間的數據交互,OPNET 仿真提供了HLA 接口節點及其對應的進程模型,如圖4 所示。

圖 4 OPNET HLA 的接口節點Fig. 4 Interface node of OPNET HLA
由圖 4 可以看出,OPNET HLA 接口節點可以獨立添加至任意網絡仿真模型,且不會對網絡拓撲造成影響,其主要功能是監測OPNET 網絡仿真模型和RTI 中與HLA 交互有關的事件,從而形成二者之間的信息交互通道,其交互流程如圖5 所示。

圖 5 基于HLA 節點的事件交互流程Fig. 5 Event interaction process based on HLA node
由圖5 可知,信息網絡仿真模型與RTI 之間以HLA 節點作為接口實現了互聯,HLA 節點通過分別監控、觸發網絡仿真模型和RTI 軟件中的仿真事件,使二者之間形成事件流,進而實現了數據交互、時鐘同步及仿真控制等功能。網絡仿真模型與RTI 之間以數據映射的方式完成具體數據交互:首先,網絡節點模型向預先定義的虛擬端口發送網絡數據包,當HLA 節點檢測到該類數據包之后,即可將數據封裝為特定格式的結構體并傳輸至RTI;然后,RTI 通過事件觸發的方式向HLA 節點傳輸數據,當HLA 檢測到事件之后,即可產生特定結構的數據包并通過虛擬端口發送至網絡節點模型,從而形成連通OPNET 與RTI 的聯合仿真接口。
由圖3 可以看出,Matlab 聯合仿真接口主要包括Matlab 接口模塊和外部基于C 語言實現的仿真控制程序,其中接口模塊的實現方式相對簡單,其主要功能是對聯合仿真數據進行傳輸與處理,如圖6 所示。當收到電力系統監控數據和仿真時鐘數據之后,接口模塊即可將數據整合,并通過TCP/IP 協議發送至控制程序;同時,接口模塊還將監測從控制程序發來的控制數據,并解析為控制指令,然后下發至電力系統仿真模型中的對應設備。

圖 6 Matlab 接口模塊的實現Fig. 6 Implementation of Matlab interface module
聯合仿真控制程序的功能主要包括2 部分:一是在Matlab 側,通過Socket 實現與Matlab 接口模塊之間的基于TCP/IP 協議的數據交互;二是在RTI 側,通過調用RTI 庫的函數,實現仿真聯邦的相關操作,主要分為仿真初始化、交互類的發布與訂閱、仿真事件處理以及仿真結束4 部分。仿真初始化即實現仿真聯邦的創建以及控制聯邦成員加入仿真聯邦等;交互類的發布與訂閱即通過發布和訂閱RTI 交互類,實現仿真聯邦與OPNET網絡仿真的數據交互,其中交互類與OPNET 中通過虛擬端口收發的數據包一一對應,從而共同構成OPNET 與RTI 之間的數據傳輸渠道;仿真事件處理是聯合仿真控制程序的核心部分,通過循環運行每個聯合仿真步長來實現2 個仿真平臺之間的數據傳輸與時鐘同步;仿真結束部分則在聯合仿真運行結束之后執行,其主要功能包括控制聯邦成員退出仿真聯邦以及銷毀仿真聯邦。
在聯合仿真中,因信息網絡仿真和電力系統仿真均為離線仿真,且各平臺的運行速度不一致,故會導致兩者之間的仿真時鐘不同步。為保證聯合仿真的準確性,本文將采用基于定步長同步的時鐘同步方式,以使聯合仿真過程中Matlab與OPNET 的仿真時鐘保持一致。鑒于Matlab 電力系統仿真采用的是定步長時域仿真,而OPNET網絡仿真采用的是離散事件仿真,且前者的仿真周期更易于獲取與計算,因此本文將以Matlab 的仿真時鐘為基準,2 個仿真平臺根據規定的仿真步長交替運行,并在每一個混合仿真周期結束時進行數據交互,其具體運行模式如圖7 所示。

圖 7 聯合仿真的定步長時鐘同步模式Fig. 7 Fix-step time synchronization of co-simulation
以圖7 中t1~t2所代表的一個聯合仿真運行周期為例,時鐘同步的4 個步驟依次如下:
1) Matlab 從起始時間 t1開始運行,此時 OPNET掛起等待(OPNET 的仿真時間停留在t1)。
2) 待Matlab 運行一個聯合仿真周期到達t2后,Matlab 暫停運行并將仿真運行時間傳遞給RTI,然后通過RTI 將能量管理所需的電力系統監控數據傳輸給OPNET,作為能量管理系統的計算輸入。
3) RTI 將仿真聯邦的仿真時間推進至 t2,并控制OPNET 以電力系統監控數據作為輸入運行至該時刻后暫停。
4) OPNET 將計算所得的能量管理控制指令通過 RTI 返還給 Matlab,Matlab 在收到 RTI 的返回數據之后即恢復運行并執行控制指令,繼而開始下一個周期的聯合仿真。
采用該定步長時鐘同步方法,即可在聯合仿真的過程中保證OPNET 與Matlab 仿真的時鐘同步性,從而滿足聯合仿真的準確性要求。
基于上文所述的聯合仿真系統結構以及時鐘同步方法,本文設計了如圖8 所示的聯合仿真數據交互方法,用以分別實現其各項具體功能。

圖 8 聯合仿真系統數據的交互方法Fig. 8 Data exchange in co-simulation system
在聯合仿真系統中,Matlab 作為電力系統的仿真平臺,其在數據交互方面的主要功能是通過接口模塊采集電力系統的監控數據并執行網絡仿真平臺傳回的能量管理控制指令。聯合仿真控制程序的主要功能是:首先,進行Matlab 與RTI 之間的數據轉發;其次,接收Matlab 傳來的仿真時間,并以之為依據控制RTI 中的仿真聯邦時間。RTI 作為混合仿真的核心,其主要作用是通過調用RTI 庫函數實現聯合仿真時間的推進以及仿真數據的轉發。OPNET 中的節點主要分為3 類:一是HLA 節點,其主要功能是實現網絡仿真模型與RTI 之間監控數據和控制指令的轉發,并作為RTI 控制OPNET 仿真進程的接口;二是設備節點,其主要功能是實現與HLA 節點之間的數據交互,以及能量管理系統中電力系統監控數據采集和控制指令下發功能;三是控制節點,其主要功能是模擬信息網絡中的網絡控制器,以電力系統的監控數據作為輸入,通過分析計算得到對應的控制指令并進行下發。由圖8 所示的數據交互方法可以看出,在艦船能量管理信息網絡和電力系統耦合運行時,聯合仿真平臺可以較好地實現系統之間數據交互的模擬。
在艦船電力系統中,由于發電機組的數量和容量均有限,不同機組之間的功率分配將直接影響發電機并聯運行的穩定性和經濟性。本文將搭建發電機組并聯帶負載的聯合仿真模型,通過基于以太網的能量管理信息網絡監控負載功率,并對發電機組功率進行二次分配遠程控制。其仿真算例結構如圖9 所示,其中L 為輸電線路,S 為負載。

圖 9 聯合仿真系統算例Fig. 9 Example of co-simulation system
在仿真算例的電力系統模型中,2 臺并聯的三相同步發電機組(G1,G2)向三相交流阻感負載供電,其中 G1 與 G2 的容量分別為 670 kVA 和 85 kVA,負載功率為160 kW/120 kvar。與電力系統模型相對應,能量管理信息網絡的仿真模型由3 個交換機節點和5 個以太網節點組成,其中5 個以太網節點分別為發電機組G2 控制節點、負載功率采樣節點、遠程控制節點以及背景流量節點。背景流量節點的主要功能是向遠程控制節點發送周期數據包,從而模擬網絡中其他控制過程帶來的背景流量特性。在初始條件下,2 臺發電機組按容量比例分擔負載功率,待系統運行穩定后即啟動二次功率分配,通過能量管理網絡采集負載數據,并控制發電機組G2 的有功和無功輸出,從而實現負載功率的按需分配。
在聯合仿真過程中,Matlab 將采集電力系統中負載的有功和無功信息,并以此作為遠程控制器的計算輸入;在OPNET 模型中,控制器將檢測的功率信息作為輸入,根據需求計算生成對應的發電機組功率指令并回傳至Matlab 中執行。根據圖7 所示的時鐘同步方式,該聯合仿真每個周期的運行流程如下:首先,Matlab 運行,OPNET 掛起等待;接著,在運行至一個周期之后,Matlab 暫停運行,并將負載功率數據通過RTI 和HLA 節點傳輸至OPNET 的負載功率采樣節點;然后,OPNET恢復運行,通過交換機將數據發送至遠程控制節點,待遠程控制節點生成功率控制指令之后,再次通過交換機傳輸至發電機組控制節點,然后通過HLA 節點和RTI 將控制指令回傳至Matlab 仿真模型;最后,Matlab 接收到數據之后即恢復運行,并根據接收數據對發電機組的輸出功率進行調整。本文的算例工況設置如下:在初始狀態下,2 臺發電機組按容量比例分擔負載功率;當仿真運行至第10 s 時,通過遠程控制器對發電機組進行功率轉移,實現發電機組之間的功率均分,進而分析網絡固有延時和背景流量對系統二次功率分配過程的影響。
3.2.1 工況1:添加鏈路固有延時
為了模擬信息網絡中網絡鏈路固有延時的特性,本文將在仿真模型的每條網絡鏈路中分別添加2 和5 ms 的鏈路延時,用以分析不同網絡延時對電力系統運行特性的影響。圖10 所示為電力系統模型中節點1 的同步發電機組G1 與G2 的運行特性,其中 T 為仿真時間,圖 10(f)的轉速為標幺值(單位為pu,其中G2 的額定轉速為1 500 r/min)。
經仿真測試:在添加鏈路延時之前,數據包的傳輸延時約為300 μs;添加鏈路延時之后,由于數據包從采樣模塊經控制器轉發至發電機組需經過6 條鏈路,而每條鏈路的固定延時為 2 和 5 ms,所以整個控制環節的總延時分別約為12 和30 ms。經對比分析,發現不添加鏈路延時的系統運行特性與僅采用Matlab 仿真(不考慮網絡延時)的運行特性相一致。由圖10 可以看出,當數據包的傳輸總延時較小時,電力系統所受的影響也較小。然而,由于電力系統與能量管理網絡之間存在緊耦合關系,網絡延時將導致電力系統的控制指令無法及時下達,同時電力系統還需將影響之后的功率數據反饋至能量管理網絡(作為網絡控制的輸入),故二者將形成控制閉環,且在耦合關系作用下相互影響。因此,隨著鏈路延時的增加,2 臺發電機組輸出功率的振蕩也將隨之明顯增加,而穩定時間也會有所延遲。由此可見,在二次功率分配過程中,網絡鏈路的固定延時特性將對電力系統響應產生明顯影響。

圖 10 添加鏈路延時的聯合仿真結果(工況1)Fig. 10 Co-simulation results with link delay (condition 1)
3.2.2 工況2:添加背景流量
針對網絡中存在背景流量的工況,在不添加鏈路固有延時的前提下,通過網絡仿真模型中的2 個背景流量節點向控制網絡循環發送隨機大小的數據包,以此作為網絡背景流量,進而分析網絡鏈路在未飽和與飽和條件下因背景流量導致的網絡延時對電力系統的影響。圖11所示為同步發電機組G1 與G2 的運行特性,以及數據包的延時特性。

圖 11 添加網絡背景流量的聯合仿真結果(工況2)Fig. 11 Co-simulation results with network background traffic (condition 2)
由圖11(g)可以看出:在隨機背景流量的影響下,控制數據包的延時也將隨機變化;當添加的背景流量未導致鏈路過載時,數據包的延時明顯大于未添加背景流量時的延時,且在10 ms 左右的范圍內波動;當背景流量較大且導致鏈路過載時,網絡數據量將超出網絡處理能力,導致數據包將在網絡設備的發送隊列中逐漸累積而無法及時處理,隨著仿真時間的推移,網絡延時也將逐漸增加。由圖11 的仿真結果可以看出:當鏈路未過載時,由于數據包延時僅在一定范圍內波動,故其對電力系統運行特性的影響較小;當背景流量導致鏈路過載時,數據包延時將隨著仿真時間的推移逐漸增加,故系統閉環控制的延時也隨之增加;當仿真進行至15 s 之后,系統開始產生振蕩,并逐漸失穩發散。
針對艦船電力系統中能量管理信息網絡與電力系統的緊耦合特性,本文提出了一種基于HLA仿真框架的聯合仿真方法,分別設計了OPNET網絡仿真平臺和Matlab/Simulink 電力系統仿真平臺的對外數據交互接口以及聯合仿真控制程序,提出了聯合仿真的數據交互和時鐘同步方法。同時,搭建了艦船電力系統中同步發電機組并聯帶負載的聯合仿真模型,并以能量管理網絡遠程控制功率二次分配的工況為例,仿真分析了能量管理網絡中鏈路固有延時、背景流量等因素對電力系統運行特性的影響。仿真結果表明,本文提出的聯合仿真方法可以實現艦船能量管理信息網絡與電力系統的聯合仿真,可為二者的耦合研究提供有效的仿真手段。
由于現階段搭建的聯合仿真算例系統相對簡單,在后續研究中,將進一步擴展聯合仿真方法在艦船電力系統中的應用范圍,例如實時控制與能量調度方面的應用研究,以揭示實際系統應用中信息流的非理想特性對能量流的影響。此外,作為理論基礎和驗證手段,本文提出的聯合仿真方法可為開展消除信息網絡非理想特性對電力系統的影響分析提供基礎:首先,可以改善控制網絡的性能,從源頭上消除信息網絡對電力系統的不良影響;其次,可以提出新的控制方法,例如將預測控制理論算法應用于控制策略,通過算法對網絡控制指令進行預判,從而修正對網絡特性造成的影響,最終改善系統的控制性能。