游四海
電氣化鐵道的快速發(fā)展,特別是近年來客運專線和高速電氣化鐵道的建設(shè),要求牽引供電系統(tǒng)的綜合自動化能夠?qū)崿F(xiàn)微機保護、計量、遠動等功能。而牽引供電系統(tǒng)牽引網(wǎng)結(jié)構(gòu)復(fù)雜、方式多變,供電負荷又具有移動性、諧波分量大等特點,因此要求微機保護裝置的功能更加完善。對于微機保護裝置,軟件是它的靈魂。一臺微機保護裝置的最基本的保護功能及各種附加的輔助功能都是通過軟件來最終實現(xiàn)的。傳統(tǒng)的前臺/后臺程序機制已不能滿足日益復(fù)雜和多樣化的微機保護應(yīng)用需求。
近年來采用 RTOS來開發(fā)微機保護應(yīng)用程序已成為開發(fā)人員的發(fā)展方向。RTOS是一種實時多任務(wù)操作系統(tǒng),其最主要的特點就是任務(wù)執(zhí)行的確定性和執(zhí)行時間的確定性,將RTOS應(yīng)用于繼電保護中可以提高饋線保護裝置的整體性能。本文探討了一種基于 VxWorks實時操作系統(tǒng)多任務(wù)饋線保護軟件設(shè)計架構(gòu),以編寫功能復(fù)雜、多任務(wù)、設(shè)計靈活、可維護性強的繼電保護軟件系統(tǒng),滿足牽引供電系統(tǒng)對饋線保護裝置的要求。
VxWorks是由美國Wind River公司開發(fā)的一套具有微內(nèi)核、高性能、可伸縮的實時操作系統(tǒng),支持廣泛的網(wǎng)絡(luò)通信協(xié)議,并能夠根據(jù)用戶的需求進行組合。VxWorks為程序員提供了高效的實時任務(wù)調(diào)度、中斷管理、實時的系統(tǒng)資源以及實時的任務(wù)間通信。
VxWorks操作系統(tǒng)包括進程管理、存儲管理、設(shè)備管理、文件系統(tǒng)管理、網(wǎng)絡(luò)協(xié)議及系統(tǒng)應(yīng)用等部分。VxWorks體系結(jié)構(gòu)框圖如圖1所示。
圖1 VxWorks體系結(jié)構(gòu)框圖
1.2.1 高性能的微內(nèi)核設(shè)計
VxWorks的微內(nèi)核具有全部實時特性,包括迅速的多任務(wù)調(diào)度、中斷支持以及同時支持搶占式調(diào)度和時間片輪轉(zhuǎn)調(diào)度。與此同時,該內(nèi)核還具有系統(tǒng)負擔(dān)小,對外部事件的響應(yīng)時間確定等特點。
1.2.2 可裁剪性
VxWorks在設(shè)計之初就具有可裁剪性,使得開發(fā)者可以對操作系統(tǒng)的功能、大小進行增減,從而為自己應(yīng)用程序保留更多的系統(tǒng)資源。
1.2.3 豐富的網(wǎng)絡(luò)支持
VxWorks是第一個集成標準TCP/IP網(wǎng)絡(luò)功能的實時操作系統(tǒng)。
1.2.4 實時性
實時性是指系統(tǒng)能夠在限定的時間內(nèi),執(zhí)行完規(guī)定的功能并對外部的異步事件做出響應(yīng)的能力。實時性的強弱是以完成規(guī)定功能和做出響應(yīng)的長短來衡量的。VxWorks提供了多任務(wù)機制對任務(wù)的控制采用了優(yōu)先級搶占調(diào)度和輪轉(zhuǎn)調(diào)度機制,充分保證了可靠的實時性。
1.2.5 多任務(wù)調(diào)度
VxWorks的任務(wù)調(diào)度主要采用基于優(yōu)先級的搶占式調(diào)度策略,最多可支持256個優(yōu)先級。為任務(wù)間通信提供了諸如消息隊列、管道、套接字、信號量等機制,它們都是快速、高效和可靠的。Wind內(nèi)核采取單一實時地址空間,任務(wù)間切換開銷非常低,基本上沒有系統(tǒng)調(diào)用的額外開銷,從而可以獲得極高的切換效率。
1.2.6 任務(wù)間的通信與同步機制
在一個實時操作系統(tǒng)中,可能需要多個任務(wù)協(xié)同完成某個功能。系統(tǒng)必須提供這些任務(wù)的快速且功能強大的通信機制。VxWorks提供信號量、消息隊列等機制來實現(xiàn)任務(wù)間的通信與同步。
為了更好地滿足牽引供電系統(tǒng)饋線保護的要求,本文討論了一種在 VxWorks實時操作系統(tǒng)下以中斷資源分配開發(fā)多任務(wù)程序,CPU的運行時間被劃分為許多小的時間片,RTOS按照某種調(diào)度算法分別分配給不同的任務(wù),多個任務(wù)分別在各自的時間片內(nèi)訪問 CPU,達到微觀上輪流運行,宏觀上并發(fā)運行的多任務(wù)效果。為了讓 VxWorks實時操作系統(tǒng)按繼電保護功能要求實現(xiàn)對各保護任務(wù)的正確調(diào)度,必須合理確定各任務(wù)的優(yōu)先級及其觸發(fā)方式。程序開發(fā)流程如圖2所示。
綜合 VxWorks實時操作系統(tǒng)實時特性要求和任務(wù)優(yōu)先級搶占的特點,把原來的中斷服務(wù)程序分為中斷服務(wù)程序和中斷服務(wù)任務(wù)2部分,任務(wù)的處理都在中斷服務(wù)任務(wù)中進行,而中斷服務(wù)程序中只進行信號量的傳遞,這樣可以有效地提高系統(tǒng)的實時性。因此本文采用中斷資源分配進行任務(wù)模塊的劃分,主要分為2大任務(wù)模塊:采樣中斷任務(wù)模塊和保護中斷任務(wù)模塊。
圖2 RTOS微機保護軟件程序流程圖
(1)采樣中斷任務(wù)模塊:由外部定時器觸發(fā)該中斷,定時采樣中斷中完成了牽引供電系統(tǒng)饋線電壓、電流信號量數(shù)據(jù)采樣、數(shù)據(jù)預(yù)處理、數(shù)據(jù)發(fā)送等功能。
(2)保護中斷任務(wù)模塊:由保護中斷任務(wù)模塊接收到以太網(wǎng)發(fā)送的預(yù)處理數(shù)據(jù)而觸發(fā)該中斷,在保護中斷任務(wù)接收到中斷觸發(fā)信號后,立即啟動微機保護算法(遞推傅立葉算法)對接收到的采樣數(shù)據(jù)進行數(shù)據(jù)濾波,并計算出濾波后的電壓、電流電氣量的有效值,然后進行各個饋線保護模塊的計算,再根據(jù)保護邏輯框圖進行保護邏輯的判斷,判斷是否出口動作跳閘。保護任務(wù)是微機保護最重要的任務(wù),保護模塊中饋線保護方式有:自適應(yīng)Ⅲ段距離保護(PT斷線閉鎖)、過電流保護(PT斷線閉鎖)、電流速斷保護、電流增量保護、一次重合閘。中斷任務(wù)配置框架如圖3所示。
圖3 使用中斷進行任務(wù)劃分設(shè)計框架示意圖
相對于傳統(tǒng)的前/后臺模式保護軟件設(shè)計架構(gòu),基于 VxWorks實時操作系統(tǒng)下以中斷資源進行任務(wù)模塊劃分的牽引饋線保護軟件架構(gòu)設(shè)計更能適應(yīng)牽引供電繼電保護發(fā)展的要求,滿足工程需要,在該框架下進行保護軟件開發(fā)可以提高整個保護系統(tǒng)的穩(wěn)定性、實時性和可靠性。
[1]陳德樹.計算機繼電保護原理與技術(shù)[M].北京:水利電力出版社,1992.
[2]李方敏.VxWorks高級程序設(shè)計[M].北京:清華大學(xué)出版社,2001.
[3]高仕斌.高速鐵路牽引供電系統(tǒng)新型保護原理研究[D].西南交通大學(xué)博士研究生學(xué)位論文,2004.
[4]孔祥營.嵌入式實時操作系統(tǒng) VxWorks及其開發(fā)環(huán)境Tornado[M].北京:中國電力出版社,2002.
[5]鄧潔清,鄭建勇.嵌入式實時操作系統(tǒng)在中低壓綜合測控保護裝置的應(yīng)用[J].電力自動化設(shè)備,2004,24(6):85-88.
[6]魯煒,靳希.基于實時操作系統(tǒng)的繼電保護軟件設(shè)計[J].繼電器,2003,31(11):48-51.