朱敬華
(國(guó)華徐州發(fā)電有限公司,江蘇徐州221166)
隨著我國(guó)環(huán)保形勢(shì)日趨嚴(yán)峻,環(huán)境保護(hù)要求也日益提高,作為主要環(huán)境污染因子的SO2、NOx、煙塵等指標(biāo)成為重點(diǎn)關(guān)注對(duì)象,而火力發(fā)電企業(yè)作為這幾項(xiàng)指標(biāo)的排放大戶,也面臨著污染物排放考核的各方壓力。伴隨著2011版《大氣污染物排放標(biāo)準(zhǔn)》的頒布和實(shí)施,江蘇省迎來(lái)了一輪又一輪的環(huán)保設(shè)施改造高峰期,相關(guān)考核政策和措施也相繼出臺(tái),對(duì)于發(fā)電企業(yè)來(lái)說(shuō),壓力和動(dòng)力并存。因此,如何保障環(huán)保數(shù)據(jù)傳輸系統(tǒng)的穩(wěn)定可靠運(yùn)行成為當(dāng)前實(shí)踐研究的熱點(diǎn)。鑒于此,本文提出了一種基于滑動(dòng)窗口控制數(shù)據(jù)處理的雙機(jī)冗余機(jī)制,其能為數(shù)據(jù)傳輸提供保障,并在生產(chǎn)系統(tǒng)中實(shí)現(xiàn)了部署應(yīng)用。
現(xiàn)有的環(huán)保數(shù)據(jù)傳輸系統(tǒng)采用的是單通道傳輸機(jī)制,這種機(jī)制在系統(tǒng)發(fā)生故障時(shí),只有通過(guò)人工干預(yù),才能對(duì)系統(tǒng)進(jìn)行修復(fù),這既影響了環(huán)保數(shù)據(jù)的正常傳輸,又對(duì)系統(tǒng)的運(yùn)維人員造成很大的壓力。雙機(jī)冗余機(jī)制可以很好地解決系統(tǒng)運(yùn)行時(shí)的單點(diǎn)故障問(wèn)題,但是如何實(shí)現(xiàn)故障的實(shí)時(shí)感知,如何進(jìn)行故障的無(wú)感切換,在故障恢復(fù)時(shí)如何進(jìn)行傳輸通道的還原,都是在實(shí)現(xiàn)雙機(jī)冗余機(jī)制時(shí)面臨的挑戰(zhàn)難點(diǎn)。本文對(duì)上述幾個(gè)問(wèn)題進(jìn)行了深入的分析研究,提出了一種有效的解決方案,并在生產(chǎn)系統(tǒng)中進(jìn)行了應(yīng)用。
雙機(jī)冗余機(jī)制的硬件架構(gòu)如圖1所示,主數(shù)據(jù)采集單元與冗余數(shù)據(jù)采集單元同時(shí)從SIS服務(wù)器中采集環(huán)保數(shù)據(jù),并且兩個(gè)采集單元之間形成采集通道的冗余,把采集到的數(shù)據(jù)經(jīng)調(diào)度網(wǎng)絡(luò)交換機(jī)傳輸至電力調(diào)度網(wǎng)絡(luò)。
主數(shù)據(jù)采集單元,包含SIS側(cè)采集服務(wù)器1、隔離裝置1、調(diào)度側(cè)采集服務(wù)器1,是數(shù)據(jù)采集傳輸?shù)闹饕ǖ馈?/p>
冗余數(shù)據(jù)采集單元,包含SIS側(cè)采集服務(wù)器2、隔離裝置2、調(diào)度側(cè)采集服務(wù)器2,是數(shù)據(jù)采集傳輸?shù)膫溆猛ǖ馈?/p>
冗余機(jī)制的軟件平臺(tái)如圖2所示,主要包含心跳偵測(cè)模塊、參數(shù)配置模塊、數(shù)據(jù)處理模塊、冗余控制模塊、自動(dòng)報(bào)警模塊、監(jiān)控模塊共6個(gè)模塊。
圖1 雙機(jī)冗余機(jī)制的硬件架構(gòu)
(1)心跳偵測(cè)模塊。該模塊是整個(gè)冗余機(jī)制的基礎(chǔ),主要完成熱備雙機(jī)之間的心跳偵測(cè)和?;钆袛?,為了保證雙機(jī)心跳的實(shí)時(shí)性,設(shè)計(jì)該功能作為最高優(yōu)先級(jí)任務(wù)運(yùn)行,避免被其他任務(wù)搶占。
(2)參數(shù)配置模塊。該模塊實(shí)現(xiàn)雙機(jī)冗余機(jī)制的軟件平臺(tái)的運(yùn)行參數(shù)配置,包括故障切換的敏捷性、自動(dòng)報(bào)警模塊的告警接受人等。
(3)數(shù)據(jù)處理模塊。該模塊實(shí)現(xiàn)對(duì)雙通道采集的冗余數(shù)據(jù)進(jìn)行消冗余處理,使得最終傳送至省調(diào)側(cè)的數(shù)據(jù)只是一份,不影響考核。
(4)冗余控制模塊。該模塊實(shí)現(xiàn)雙機(jī)主從運(yùn)行模式的自動(dòng)判斷和故障狀態(tài)下主從模式的自動(dòng)切換功能。
(5)自動(dòng)報(bào)警模塊。該模塊把通道運(yùn)行的情況以報(bào)警的方式告知用戶,保證在主通道發(fā)生故障時(shí),用戶可以及時(shí)知道并進(jìn)行處理,以防止二次故障發(fā)生導(dǎo)致的數(shù)據(jù)傳輸中斷。
(6)監(jiān)控模塊。該模塊實(shí)現(xiàn)對(duì)通道的監(jiān)控以及對(duì)環(huán)保數(shù)據(jù)傳輸情況的監(jiān)控。
圖2 冗余機(jī)制的軟件平臺(tái)
滑動(dòng)窗口(Sliding window)是一種流量控制技術(shù)。早期的網(wǎng)絡(luò)通信中,通信雙方往往不會(huì)考慮網(wǎng)絡(luò)的擁擠情況,都是直接發(fā)送數(shù)據(jù)。由于大家不知道網(wǎng)絡(luò)擁塞狀況,同時(shí)發(fā)送數(shù)據(jù),造成中間節(jié)點(diǎn)阻塞掉包,誰(shuí)也發(fā)不了數(shù)據(jù),所以就有了滑動(dòng)窗口機(jī)制來(lái)解決此問(wèn)題。本文借鑒滑動(dòng)窗口的思路,設(shè)置實(shí)時(shí)傳輸?shù)沫h(huán)保數(shù)據(jù)測(cè)點(diǎn)的緩沖時(shí)間段,對(duì)在滑動(dòng)時(shí)間窗口內(nèi)的數(shù)據(jù)進(jìn)行消重處理,以此來(lái)保證數(shù)據(jù)既不會(huì)丟失,又不會(huì)重復(fù)發(fā)送。
基于滑動(dòng)窗口控制的數(shù)據(jù)處理算法是針對(duì)數(shù)據(jù)傳輸?shù)碾p機(jī)冗余業(yè)務(wù)設(shè)計(jì)的,通過(guò)監(jiān)控兩個(gè)通道的數(shù)據(jù),并對(duì)其進(jìn)行消重以實(shí)現(xiàn)數(shù)據(jù)的高可靠傳輸。消重監(jiān)控程序的核心是設(shè)計(jì)了基于滑動(dòng)時(shí)間窗口的算法,該算法不僅實(shí)現(xiàn)了數(shù)據(jù)的消重,同時(shí)也保證了數(shù)據(jù)的實(shí)時(shí)傳輸,其實(shí)現(xiàn)原理如圖3所示。
圖3 基于滑動(dòng)窗口控制的數(shù)據(jù)處理算法實(shí)現(xiàn)原理
(1)當(dāng)接收到通道發(fā)送過(guò)來(lái)的測(cè)點(diǎn)時(shí),在緩沖池中搜索該測(cè)點(diǎn)的標(biāo)志,如果緩沖池中沒(méi)有,就把測(cè)點(diǎn)及相應(yīng)時(shí)間戳發(fā)往省調(diào)網(wǎng)絡(luò),并存入緩沖池;如果緩沖池中有該測(cè)點(diǎn),則把測(cè)點(diǎn)及相應(yīng)時(shí)間戳發(fā)往省調(diào)網(wǎng)絡(luò),并更新緩沖池中該測(cè)點(diǎn)的時(shí)間戳。
(2)滑動(dòng)時(shí)間窗口,檢查緩沖池中已有測(cè)點(diǎn)與最新時(shí)間戳的差值,如果大于時(shí)間窗大小t,向前滑動(dòng)時(shí)間窗口,把該測(cè)點(diǎn)從緩沖池中刪除;如果小于時(shí)間窗大小t,則保持時(shí)間窗口位置不變。
基于滑動(dòng)窗口控制的數(shù)據(jù)處理算法具體實(shí)現(xiàn)思路如下:
(1)在隊(duì)列Q中使用雙指針的左右指針技巧,初始化left=right=0,把索引的閉合區(qū)間[left,right]稱為一個(gè)“窗口”,其中隊(duì)列中的元素就是按順序排列的環(huán)保數(shù)據(jù)上傳的每個(gè)測(cè)點(diǎn)。
(2)不斷增加right指針的值,擴(kuò)大窗口[left,right],直到窗口中的總體冗余測(cè)點(diǎn)數(shù)量滿足預(yù)設(shè)的比例r。
(3)符合要求后,停止增加right,轉(zhuǎn)而增加left指針來(lái)縮小窗口[left,right],直到窗口中的測(cè)點(diǎn)數(shù)據(jù)不再滿足時(shí)間刷新的要求。注意,每次增加left,都要更新一輪結(jié)果。
(4)重復(fù)第2步和第3步,直到right到達(dá)隊(duì)列Q的盡頭或者滿足一次完整上傳的測(cè)點(diǎn)全部上傳完成。
目前,本文提出的基于滑動(dòng)窗口控制數(shù)據(jù)處理的雙機(jī)冗余機(jī)制已經(jīng)在國(guó)華徐州發(fā)電有限公司進(jìn)行部署應(yīng)用,實(shí)際應(yīng)用表明,本文提出的機(jī)制可以有效保證環(huán)保數(shù)據(jù)傳輸?shù)姆€(wěn)定性,提高通道故障時(shí)的響應(yīng)處理速度,針對(duì)冗余通道設(shè)計(jì)的數(shù)據(jù)處理算法可以有效保證實(shí)時(shí)數(shù)據(jù)的唯一性,保障環(huán)保數(shù)據(jù)雙通道傳輸系統(tǒng)的正常運(yùn)行。