游四海
電氣化鐵道的快速發展,特別是近年來客運專線和高速電氣化鐵道的建設,要求牽引供電系統的綜合自動化能夠實現微機保護、計量、遠動等功能。而牽引供電系統牽引網結構復雜、方式多變,供電負荷又具有移動性、諧波分量大等特點,因此要求微機保護裝置的功能更加完善。對于微機保護裝置,軟件是它的靈魂。一臺微機保護裝置的最基本的保護功能及各種附加的輔助功能都是通過軟件來最終實現的。傳統的前臺/后臺程序機制已不能滿足日益復雜和多樣化的微機保護應用需求。
近年來采用 RTOS來開發微機保護應用程序已成為開發人員的發展方向。RTOS是一種實時多任務操作系統,其最主要的特點就是任務執行的確定性和執行時間的確定性,將RTOS應用于繼電保護中可以提高饋線保護裝置的整體性能。本文探討了一種基于 VxWorks實時操作系統多任務饋線保護軟件設計架構,以編寫功能復雜、多任務、設計靈活、可維護性強的繼電保護軟件系統,滿足牽引供電系統對饋線保護裝置的要求。
VxWorks是由美國Wind River公司開發的一套具有微內核、高性能、可伸縮的實時操作系統,支持廣泛的網絡通信協議,并能夠根據用戶的需求進行組合。VxWorks為程序員提供了高效的實時任務調度、中斷管理、實時的系統資源以及實時的任務間通信。
VxWorks操作系統包括進程管理、存儲管理、設備管理、文件系統管理、網絡協議及系統應用等部分。VxWorks體系結構框圖如圖1所示。

圖1 VxWorks體系結構框圖
1.2.1 高性能的微內核設計
VxWorks的微內核具有全部實時特性,包括迅速的多任務調度、中斷支持以及同時支持搶占式調度和時間片輪轉調度。與此同時,該內核還具有系統負擔小,對外部事件的響應時間確定等特點。
1.2.2 可裁剪性
VxWorks在設計之初就具有可裁剪性,使得開發者可以對操作系統的功能、大小進行增減,從而為自己應用程序保留更多的系統資源。
1.2.3 豐富的網絡支持
VxWorks是第一個集成標準TCP/IP網絡功能的實時操作系統。
1.2.4 實時性
實時性是指系統能夠在限定的時間內,執行完規定的功能并對外部的異步事件做出響應的能力。實時性的強弱是以完成規定功能和做出響應的長短來衡量的。VxWorks提供了多任務機制對任務的控制采用了優先級搶占調度和輪轉調度機制,充分保證了可靠的實時性。
1.2.5 多任務調度
VxWorks的任務調度主要采用基于優先級的搶占式調度策略,最多可支持256個優先級。為任務間通信提供了諸如消息隊列、管道、套接字、信號量等機制,它們都是快速、高效和可靠的。Wind內核采取單一實時地址空間,任務間切換開銷非常低,基本上沒有系統調用的額外開銷,從而可以獲得極高的切換效率。
1.2.6 任務間的通信與同步機制
在一個實時操作系統中,可能需要多個任務協同完成某個功能。系統必須提供這些任務的快速且功能強大的通信機制。VxWorks提供信號量、消息隊列等機制來實現任務間的通信與同步。
為了更好地滿足牽引供電系統饋線保護的要求,本文討論了一種在 VxWorks實時操作系統下以中斷資源分配開發多任務程序,CPU的運行時間被劃分為許多小的時間片,RTOS按照某種調度算法分別分配給不同的任務,多個任務分別在各自的時間片內訪問 CPU,達到微觀上輪流運行,宏觀上并發運行的多任務效果。為了讓 VxWorks實時操作系統按繼電保護功能要求實現對各保護任務的正確調度,必須合理確定各任務的優先級及其觸發方式。程序開發流程如圖2所示。
綜合 VxWorks實時操作系統實時特性要求和任務優先級搶占的特點,把原來的中斷服務程序分為中斷服務程序和中斷服務任務2部分,任務的處理都在中斷服務任務中進行,而中斷服務程序中只進行信號量的傳遞,這樣可以有效地提高系統的實時性。因此本文采用中斷資源分配進行任務模塊的劃分,主要分為2大任務模塊:采樣中斷任務模塊和保護中斷任務模塊。

圖2 RTOS微機保護軟件程序流程圖
(1)采樣中斷任務模塊:由外部定時器觸發該中斷,定時采樣中斷中完成了牽引供電系統饋線電壓、電流信號量數據采樣、數據預處理、數據發送等功能。
(2)保護中斷任務模塊:由保護中斷任務模塊接收到以太網發送的預處理數據而觸發該中斷,在保護中斷任務接收到中斷觸發信號后,立即啟動微機保護算法(遞推傅立葉算法)對接收到的采樣數據進行數據濾波,并計算出濾波后的電壓、電流電氣量的有效值,然后進行各個饋線保護模塊的計算,再根據保護邏輯框圖進行保護邏輯的判斷,判斷是否出口動作跳閘。保護任務是微機保護最重要的任務,保護模塊中饋線保護方式有:自適應Ⅲ段距離保護(PT斷線閉鎖)、過電流保護(PT斷線閉鎖)、電流速斷保護、電流增量保護、一次重合閘。中斷任務配置框架如圖3所示。

圖3 使用中斷進行任務劃分設計框架示意圖
相對于傳統的前/后臺模式保護軟件設計架構,基于 VxWorks實時操作系統下以中斷資源進行任務模塊劃分的牽引饋線保護軟件架構設計更能適應牽引供電繼電保護發展的要求,滿足工程需要,在該框架下進行保護軟件開發可以提高整個保護系統的穩定性、實時性和可靠性。
[1]陳德樹.計算機繼電保護原理與技術[M].北京:水利電力出版社,1992.
[2]李方敏.VxWorks高級程序設計[M].北京:清華大學出版社,2001.
[3]高仕斌.高速鐵路牽引供電系統新型保護原理研究[D].西南交通大學博士研究生學位論文,2004.
[4]孔祥營.嵌入式實時操作系統 VxWorks及其開發環境Tornado[M].北京:中國電力出版社,2002.
[5]鄧潔清,鄭建勇.嵌入式實時操作系統在中低壓綜合測控保護裝置的應用[J].電力自動化設備,2004,24(6):85-88.
[6]魯煒,靳希.基于實時操作系統的繼電保護軟件設計[J].繼電器,2003,31(11):48-51.