專利名稱:基于事件觸發(fā)的靜止無功補(bǔ)償器監(jiān)控實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電力系統(tǒng)及電力電子技術(shù)中靜止無功補(bǔ)償器(SVC)的監(jiān)控系統(tǒng),特別是一種基于事件觸發(fā)的靜止無功補(bǔ)償器監(jiān)控實(shí)現(xiàn)方法。
背景技術(shù):
隨著嵌入式系統(tǒng)在控制領(lǐng)域的發(fā)展及軟件實(shí)時(shí)性要求的不斷提高,按傳統(tǒng)的DOS系統(tǒng)編程方法很難滿足快速響應(yīng)的要求。雖然實(shí)時(shí)操作系統(tǒng)在國內(nèi)也有了很大的發(fā)展,但由于其開發(fā)成本及對(duì)硬件環(huán)境的要求(程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器)都遠(yuǎn)遠(yuǎn)高于傳統(tǒng)的DOS系統(tǒng),使其發(fā)展受到一定的限制。
由于靜止無功補(bǔ)償器用監(jiān)控軟件對(duì)整個(gè)SVC系統(tǒng)的安全可靠運(yùn)行起到監(jiān)控的作用,并且對(duì)晶閘管和控制系統(tǒng)起到保護(hù)作用。其運(yùn)行效率及穩(wěn)定性直接影響到系統(tǒng)的響應(yīng)速度和運(yùn)行安全。因SVC監(jiān)控系統(tǒng)的響應(yīng)速度要求較高(<10ms),傳統(tǒng)的非實(shí)時(shí)嵌入式軟件采用循環(huán)掃描的方式順序執(zhí)行程序,導(dǎo)致程序運(yùn)行效率低,實(shí)時(shí)性差,滿足不了SVC監(jiān)控系統(tǒng)的實(shí)時(shí)性要求,從而可能導(dǎo)致晶閘管元件的損壞。
發(fā)明內(nèi)容
為了克服現(xiàn)有技術(shù)當(dāng)中的上述缺陷,本發(fā)明的目的是提供一種借鑒實(shí)時(shí)操作系統(tǒng)的事件觸發(fā)原理編寫非實(shí)時(shí)系統(tǒng)軟件以提高軟件運(yùn)行效率和系統(tǒng)響應(yīng)速度的方法,使系統(tǒng)開發(fā)成本大大降低,系統(tǒng)響應(yīng)速度大大提高。
為此,本發(fā)明解決其技術(shù)問題所采取的技術(shù)方案是本發(fā)明根據(jù)SVC監(jiān)控系統(tǒng)的特點(diǎn),研究了嵌入式實(shí)時(shí)操作系統(tǒng)的編程思想,并把其事件觸發(fā)原理運(yùn)用到SVC監(jiān)控軟件中。與傳統(tǒng)編程方法相比,本發(fā)明的基于事件觸發(fā)的SVC監(jiān)控嵌入式軟件主要的方法如下1)把因外部條件改變而引發(fā)的任何一個(gè)動(dòng)作邏輯視為一個(gè)事件/任務(wù);2)事件/任務(wù)按優(yōu)先級(jí)劃分;3)一個(gè)事件/任務(wù)也可觸發(fā)另一事件/任務(wù);
4)在外部條件不發(fā)生變化或觸發(fā)一事件/任務(wù)的條件不滿足時(shí),不觸發(fā)相應(yīng)的事件/任務(wù)控制程序塊。通過這些技術(shù)處理后,監(jiān)控程序可快速響應(yīng)任何一個(gè)事件(過程)。
本發(fā)明的基于事件觸發(fā)的SVC監(jiān)控實(shí)現(xiàn)方法具有軟件運(yùn)行效率高、響應(yīng)速度快、開發(fā)成本低、穩(wěn)定性高、調(diào)試方便的優(yōu)點(diǎn)。本發(fā)明很好的解決了SVC監(jiān)控嵌入式軟件在電力系統(tǒng)應(yīng)用中的響應(yīng)速度和穩(wěn)定性問題,具有重要的意義。
具體實(shí)施例方式
下面結(jié)合實(shí)施例對(duì)本發(fā)明進(jìn)一步說明。
由于SVC監(jiān)控嵌入式軟件的運(yùn)行特點(diǎn)是大部分時(shí)間系統(tǒng)都處于穩(wěn)定運(yùn)行狀態(tài)(即沒有任何事件被觸發(fā)),當(dāng)系統(tǒng)處于故障態(tài)時(shí),需按故障的嚴(yán)重級(jí)別(軟件中的事件優(yōu)先級(jí))做出相應(yīng)的保護(hù)動(dòng)作。如按最壞的情況考慮,假定某一時(shí)刻所有的故障同時(shí)發(fā)生(所有事件同時(shí)被觸發(fā)),那么軟件在第一時(shí)間會(huì)處理最高優(yōu)先級(jí)的事件(在SVC系統(tǒng)中就是跳閘TCR支路保護(hù)晶閘管),然后,系統(tǒng)處于安全狀態(tài)(TCR支路已退出),監(jiān)控軟件繼續(xù)按優(yōu)先級(jí)處理其它的故障,故障級(jí)別越高,響應(yīng)處理速度越快。
每個(gè)事件的觸發(fā)標(biāo)志都被加入到該事件控制塊中的等待任務(wù)列表中等待處理,該列表包括.EventGrp和.EventTbl[]兩個(gè)域。變量前面的[.]說明該變量是數(shù)據(jù)結(jié)構(gòu)的一個(gè)域。在這里,所有的任務(wù)的優(yōu)先級(jí)被分成8組(每組8個(gè)優(yōu)先級(jí)),分別對(duì)應(yīng).EventGrp中的8位。當(dāng)某組中有任務(wù)處于等待該事件的狀態(tài)時(shí),.EventGrp中對(duì)應(yīng)的位就被置位。相應(yīng)地,該任務(wù)在.EventTbl[]中的對(duì)應(yīng)位也被置位。.EventTbl[]數(shù)組的大小由系統(tǒng)中任務(wù)的最低優(yōu)先級(jí)決定,在這里按控制軟件中的事件/任務(wù)數(shù)決定,優(yōu)先級(jí)數(shù)越多。當(dāng)事件超過64個(gè)時(shí),按相同的結(jié)構(gòu)擴(kuò)展該域,并規(guī)定各域的優(yōu)先級(jí)即可。
.EventGrp和.EventTbl[]之間的對(duì)應(yīng)關(guān)系可以描述為當(dāng).EventTbl
中的任何一位為1時(shí),.EventGrp中的第0位為1。
當(dāng).EventTbl[1]中的任何一位為1時(shí),.EventGrp中的第1位為1。
當(dāng).EventTbl[2]中的任何一位為1時(shí),.EventGrp中的第2位為1。
當(dāng).EventTbl[3]中的任何一位為1時(shí),.EventGrp中的第3位為1。
當(dāng).EventTbl[4]中的任何一位為1時(shí),.EventGrp中的第4位為1。
當(dāng).EventTbl[5]中的任何一位為1時(shí),.EventGrp中的第5位為1。
當(dāng).EventTbl[6]中的任何一位為1時(shí),.EventGrp中的第6位為1。
當(dāng).EventTbl[7]中的任何一位為1時(shí),.EventGrp中的第7位為1。
程序要判斷有無事件發(fā)生,只需判斷.EventGrp是否為非零值,如是非零值,表示有事件發(fā)生,再按優(yōu)先級(jí)順序判斷響應(yīng)的事件(依上表關(guān)系)并觸發(fā)相應(yīng)的事件控制程序,這樣使監(jiān)控軟件在系統(tǒng)正常運(yùn)行時(shí),不涉及各事件控制模塊的軟件運(yùn)行,從繁雜的控制事件中脫離出來,只掃描外部信號(hào)的變化情況并給相應(yīng)的事件標(biāo)志做標(biāo)記(監(jiān)控軟件對(duì)所有硬件掃描的周期小于5ms),當(dāng)發(fā)生故障時(shí)能保證在第一時(shí)間完成最高優(yōu)先級(jí)的故障保護(hù),使系統(tǒng)處于安全狀態(tài)。
本發(fā)明的基于事件觸發(fā)的SVC監(jiān)控實(shí)現(xiàn)方法的優(yōu)點(diǎn)是各功能按事件劃分,軟件結(jié)構(gòu)清晰;調(diào)試方便,可按事件分別調(diào)試各功能模塊;實(shí)時(shí)性好,響應(yīng)速度快;穩(wěn)定性好;開發(fā)成本低,硬件結(jié)構(gòu)緊湊,抗干擾能力強(qiáng)。
權(quán)利要求
1.一種基于事件觸發(fā)的靜態(tài)無功補(bǔ)償器(SVC)監(jiān)控實(shí)現(xiàn)方法,其特征在于把事件觸發(fā)原理運(yùn)用到SVC監(jiān)控軟件中,主要方法如下1)把因外部條件改變而引發(fā)的任何一個(gè)動(dòng)作邏輯視為一個(gè)事件/任務(wù);2)事件/任務(wù)按優(yōu)先級(jí)劃分;3)一個(gè)事件/任務(wù)也可觸發(fā)另一事件/任務(wù);4)在外部條件不發(fā)生變化或觸發(fā)一個(gè)事件/任務(wù)的條件不滿足時(shí),不觸發(fā)相應(yīng)的事件/任務(wù)控制程序塊;通過上述技術(shù)處理后,監(jiān)控程序可快速響應(yīng)任何一個(gè)事件或過程。
2.根據(jù)權(quán)利要求1所述的一種基于事件觸發(fā)的靜止無功補(bǔ)償器監(jiān)控實(shí)現(xiàn)方法,其特征在于將系統(tǒng)處于穩(wěn)定運(yùn)行狀態(tài)時(shí)設(shè)為沒有任何事件被觸發(fā);當(dāng)系統(tǒng)處于故障態(tài)時(shí),將故障的嚴(yán)重級(jí)別設(shè)為軟件中的事件優(yōu)先級(jí),系統(tǒng)需按事件優(yōu)先級(jí)做出相應(yīng)的保護(hù)動(dòng)作;如按最壞的情況考慮,假定某一時(shí)刻所有的故障同時(shí)發(fā)生,即軟件中所有事件同時(shí)被觸發(fā),那么軟件在第一時(shí)間會(huì)處理最高優(yōu)先級(jí)的事件,對(duì)應(yīng)于這個(gè)最高優(yōu)先級(jí)的事件在靜態(tài)無功補(bǔ)償器系統(tǒng)中就是跳閘TCR支路保護(hù)晶閘管;然后,系統(tǒng)處于安全狀態(tài),即在靜態(tài)無功補(bǔ)償器系統(tǒng)中TCR支路已退出,監(jiān)控軟件繼續(xù)按優(yōu)先級(jí)處理其它的故障;故障級(jí)別越高,軟件中的事件優(yōu)先級(jí)越高,系統(tǒng)的響應(yīng)處理速度越快。
3.根據(jù)權(quán)利要求2所述的一種基于事件觸發(fā)的靜態(tài)無功補(bǔ)償器監(jiān)控實(shí)現(xiàn)方法,其特征在于每個(gè)事件的觸發(fā)標(biāo)志都被加入到該事件控制塊中的等待任務(wù)列表中等待處理,該列表包括.EventGrp和.EventTbl[]兩個(gè)域;變量前面的[.]說明該變量是數(shù)據(jù)結(jié)構(gòu)的一個(gè)域;在這里,所有的任務(wù)的優(yōu)先級(jí)被分成8組,每組8個(gè)優(yōu)先級(jí),分別對(duì)應(yīng).EventGrp中的8位;當(dāng)某組中有任務(wù)處于等待該事件的狀態(tài)時(shí),.EventGrp中對(duì)應(yīng)的位就被置位;相應(yīng)地,該任務(wù)在.EventTbl[]中的對(duì)應(yīng)位也被置位;.EventTbl[]數(shù)組的大小由系統(tǒng)中任務(wù)的最低優(yōu)先級(jí)決定,在這里按控制軟件中的事件/任務(wù)數(shù)決定,優(yōu)先級(jí)數(shù)越多;當(dāng)事件超過64個(gè)時(shí),按相同的結(jié)構(gòu)擴(kuò)展該域,并規(guī)定各域的優(yōu)先級(jí)即可;.EventGrp和.EventTbl[]之間的對(duì)應(yīng)關(guān)系可以描述為當(dāng).EventTbl
中的任何一位為1時(shí),.EventGrp中的第0位為1;當(dāng).EventTbl[1]中的任何一位為1時(shí),.EventGrp中的第1位為1;當(dāng).EventTbl[2]中的任何一位為1時(shí),.EventGrp中的第2位為1;當(dāng).EventTbl[3]中的任何一位為1時(shí),.EventGrp中的第3位為1;當(dāng).EventTbl[4]中的任何一位為1時(shí),.EventGrp中的第4位為1;當(dāng).EventTbl[5]中的任何一位為1時(shí),.EventGrp中的第5位為1;當(dāng).EventTbl[6]中的任何一位為1時(shí),.EventGrp中的第6位為1;當(dāng).EventTbl[7]中的任何一位為1時(shí),.EventGrp中的第7位為1;程序要判斷有無事件發(fā)生,只需判斷.EventGrp是否為非零值,如是非零值,表示有事件發(fā)生,再依上表關(guān)系,按優(yōu)先級(jí)順序判斷響應(yīng)的事件并觸發(fā)相應(yīng)的事件控制程序,這樣使監(jiān)控軟件在系統(tǒng)正常運(yùn)行時(shí),不涉及各事件控制模塊的軟件運(yùn)行,從繁雜的控制事件中脫離出來,只掃描外部信號(hào)的變化情況并給相應(yīng)的事件標(biāo)志做標(biāo)記,其中監(jiān)控軟件對(duì)所有硬件掃描的周期小于5ms;當(dāng)發(fā)生故障時(shí)能保證在第一時(shí)間完成最高優(yōu)先級(jí)的故障保護(hù),使系統(tǒng)處于安全狀態(tài)。
全文摘要
本發(fā)明是一種基于事件觸發(fā)的靜止無功補(bǔ)償器(SVC)監(jiān)控實(shí)現(xiàn)方法。根據(jù)SVC監(jiān)控系統(tǒng)的特點(diǎn),把事件觸發(fā)原理運(yùn)用到SVC監(jiān)控軟件中。方法如下1)把因外部條件改變而引發(fā)的任何一個(gè)動(dòng)作邏輯視為一個(gè)事件/任務(wù);2)事件/任務(wù)按優(yōu)先級(jí)劃分;3)一個(gè)事件/任務(wù)也可觸發(fā)另一事件/任務(wù);4)在外部條件不發(fā)生變化或觸發(fā)一事件/任務(wù)的條件不滿足時(shí),不觸發(fā)相應(yīng)的事件/任務(wù)控制程序塊。監(jiān)控程序可快速響應(yīng)任何一個(gè)事件(過程)。本發(fā)明具有軟件運(yùn)行效率高、響應(yīng)速度快、開發(fā)成本低、穩(wěn)定性高、調(diào)試方便的優(yōu)點(diǎn),很好的解決了SVC監(jiān)控嵌入式軟件在電力系統(tǒng)應(yīng)用中的響應(yīng)速度和穩(wěn)定性問題。
文檔編號(hào)G06Q90/00GK1767305SQ20051010265
公開日2006年5月3日 申請(qǐng)日期2005年9月13日 優(yōu)先權(quán)日2005年9月13日
發(fā)明者張晈, 段曉梅, 趙剛, 邱宇峰 申請(qǐng)人:中國電力科學(xué)研究院