(南瑞集團 國網電力科學研究院,江蘇 南京 211000)
水庫調度是水電站工程管理的主要環節之一[1-2]。目前我國大中型水電站均已建立起水庫調度自動化系統[2],同時,大規模流域梯級電站開發使得各水庫水力關系更為復雜[3],流域梯級水電協調優化調度對入庫流量數據質量及來水預測精度提出了更高的要求。水電站防汛、生產和參與市場運行也對流域水情信息共享、數據質量提出新的迫切需求。
在水情水調自動化系統中,入庫流量是最為重要的水情數據,入庫流量計算的準確度直接影響調度決策。目前常用的入庫流量計算方法有水量平衡法、區間推流法、入庫控制站代表法等,其中以水量平衡法應用最廣。該算法基于水量平衡原理,用時段內入庫水量減去出庫水量得到庫內水量變化值,利用庫容變化和出庫流量反推計算入庫流量[4]。但該算法對壩上水位數據的敏感度較高,特別是水庫面積較大時,壩上水位的小幅波動會導致庫容差大幅跳變,從而影響入庫流量計算,使入庫流量呈現鋸齒狀震蕩,無法準確反映實際情況。
為解決入庫流量計算異常問題,許多水調系統均對其進行處理,如水位變幅限制、多水位站平均、入庫流量滑動平均、動庫容算法等,但各有優劣和適用條件。
近年來,雷達水位計在水情測報系統中得到廣泛應用[5-7],其易安裝、高精度(可達mm級)、非接觸式的測量方式深受用戶喜愛。但雷達水位計也存在弱點,如易受內外環境影響,出現偶發性小幅跳變(主要為測值向下跳變),導致入庫流量計算不準。該問題不易從硬件設備上根除,因此需要對水位跳變進行過濾處理。
鑒于此,本文在對水量平衡算法中水位變幅對入庫流量計算結果的影響進行深入分析的基礎上,設計了一種基于水量平衡模型的庫水位跳變過濾算法,以最新水位來數、時間、系統中已有的前一次水位、時間為實時參數,利用水位庫容曲線計算庫容差流量,并以水位最大出庫流量反推庫容差流量的合理性,以此對最新水位來數進行過濾分析和處理。實踐表明,該算法能有效過濾因水位計讀數跳變(變小)導致的庫水位跳變問題,使入庫流量計算更為準確。
水量平衡是水文學基本原理之一[8],也是水調系統中最常用的流量計算方法。該算法利用機組出力、壩上壩下水位、閘門開度等信息,通過機組NHQ曲線、閘門泄流曲線、水庫水位庫容曲線等特征曲線插值計算,得到小時、日的發電量以及泄洪、出庫、入庫流量。
算法流程如下:
(1) 獲取計算時段壩上壩下水位、機組出力、閘門開度;
(2) 調用機組NHQ曲線(機組出力-水頭-過機流量三維曲線)、閘門泄流曲線(庫水位-閘門開度-過閘流量三維曲線)、水位庫容曲線(庫水位-庫容二維曲線);
(3) 根據壩上壩下小時平均水位差值計算小時平均水頭;利用水頭和機組出力,三維插值NHQ曲線,得到機組過機流量,各機組過機流量相加即得到全廠發電流量;
(4) 根據壩上水位以及閘門開度三維插值閘門泄流曲線,得到閘門泄流流量;
(5) 將發電流量和泄洪流量相加得到出庫流量;
(6) 利用時段初、末庫水位二維插值水位庫容曲線得到時段初、末庫容,兩者相減得時段庫容差,除以時間得庫容差流量(虛擬流量);
(7) 利用水量平衡原理,用時段入庫水量減去庫容差得出時段出庫水量,再將出庫流量和庫容差流量相加,即得入庫流量。
算法流程如圖1所示。
入庫流量水量平衡算法原理簡單,計算所需原始數據易獲取,因此在各水調自動化系統廣泛應用。
但由于其算法中庫容差流量的計算對壩上水位變幅較為敏感,對水庫面積較大的水庫尤為明顯,如丹江口水庫、新安江水庫、龍羊峽水庫等,壩上水位的小幅波動會導致庫容差流量大幅跳變,從而影響入庫流量計算結果[9-10],若不加以處理,入庫流量值將出現大幅震蕩,甚至出現入庫流量為負的情況。
為解決此問題,許多水調系統采用了不同的處理方法,常用方法有:
(1) 對水位變幅進行限制,將超限制的水位拋棄,這會導致數據缺失,且變幅判別閾值是人為設定的某一固定值,無法根據實際運行情況自動調整,因此該方法僅限于對大幅異常跳變進行處理。

圖1 水量平衡算法流程Fig.1 Flow chart of water balance algorithm
(2) 在水庫不同位置設置若干個代表站,求平均庫水位計算入庫流量,降低單一水位對入庫流量計算的靈敏度,減小誤差影響,但仍無法排除跳變影響,且多水位站建設成本較高。
(3) 采用滑動平均算法計算入庫流量,將一小時入庫流量計算變為若干小時平均入庫流量計算,從而得平滑波動值[11-12]。但該方法具有一定局限性,入庫流量數據不靈敏,無法分析短時峰谷流量,特別是山區水庫,其入庫流量具有陡漲陡落特性,因此不適用于滑動平均算法。
(4) 少量大型水庫如三峽水庫采用動庫容方式計算入庫流量[13-15],該方法計算入庫流量較為準確,但需設置多個水位站并有完整水庫(河道)斷面資料支撐,僅適用于入庫流量較大的狹長型水庫。
針對庫水位跳變對入庫流量計算結果的影響,以檳榔江三岔河水庫水情水調系統為例,進行定量分析。
檳榔江三岔河水庫水情水調系統壩上水位采用高精度(mm級)雷達水位計監測,其測值會出現偶發性小幅跳變(變小)。2018年8月2日出現壩上水位數據小幅跳變情況,30 min水位測值下降0.090 m。系統雖已設置1 h水位變幅超過0.2 m即變幅報警,但仍無法對上述小幅跳變有效判別。若不加以處理,根據水量平衡算法計算得到的入庫流量將出現較大波動。水位過程線和入庫流量過程線如圖2所示。
由圖2可見,0.090 m的壩上水位跳變,即可導致±290 m3/s的入庫流量誤差,其敏感度可見一斑。
若采用常規變幅判別閾值進行限制,則需將閾值設定為小于0.1 m。但由于水庫水位庫容曲線斜率不一致,在水位較高時,單位高差庫容較大,水位較低時,單位高差庫容較小,如果變幅閾值設定過小,則在低水位時可能引起誤判。
水位庫容曲線如圖3所示。

圖3 三岔河水庫水位庫容曲線Fig.3 Storage-capacity curve of Sanchahe Reservoir
由圖3可知,在水位為1 893 m時,0.1 m水位變幅將產生100萬m3的庫容差;而在水位為1 860 m時,0.1 m水位變幅僅產生20萬m3的庫容差,兩者相差5倍。在高水位時,變幅超過0.1 m即為異常,而低水位時,正常變幅即可超過0.1 m。
水位庫容曲線為水位面積曲線積分所得,在水量平衡算法中,庫容差即為當前水位下水庫面積乘以水位差。因此,相同計算時段和水位變幅下,水庫面積大小與流量值大小比例一致,兩者呈線性正比關系。
此外,不同水位下,水庫泄水能力也有所不同,可根據水位-最大過機流量曲線和水位-閘門全開曲線插值得到。
綜上,為避免誤判,實際應用中一般僅設置較大的水位變幅閾值,過濾極端跳變情況,難以對小幅度水位跳變進行有效處理。
因此,需尋求一種可根據水位高低及水庫庫容特性(水位庫容曲線或水庫面積曲線)、水庫泄水能力自動計算判別閾值的算法,實現不同水位下庫水位合理變動幅度自適應計算,從而提高異常跳變過濾的精準度,同時避免誤判。
檳榔江三岔河水情水調系統中,以水量平衡模型反推庫水位,利用不同水位下最大出庫流量限制其合理變幅,以此過濾異常跳變。
(1) 系統新水位數據插入時,首先根據數據標志位判別是否為人工錄入(校核),若是人工錄入,則不作處理,直接寫庫;若是遙測站自動上報數據,則查找系統中已存庫最近一次水位和時間,并計算兩者之間的時間差ΔT。
(2) 利用兩個水位二維插值水位庫容曲線得到對應庫容,并計算庫容差ΔV;
(3) 根據水量平衡,由ΔV/ΔT得到庫容差出庫流量(出庫流量-入庫流量),假設最小入庫流量為0,則此值即為最小庫容差出庫流量QKmin;
(4) 利用水位插值溢洪道全開泄流曲線得到該水位下的最大泄洪流量QXmax;利用水位插值機組最大出力過機流量曲線得到最大發電流量QFmax(尾水位基本固定,對水頭影響忽略不計),兩者相加得到該水位下的最大理論出庫流量QLmax;
(5) 比較QKmin和QLmax的大小,若QKmin>QLmax,則說明本次水位變動下,最小庫容差出庫流量大于最大理論出庫流量,判定本次水位屬于異常跳變(變小),更新本次水位值為最近一次水位值,并發出異常告警。
算法流程如圖4所示。
(1) 該算法對水位變幅的判定基于水量平衡模型,根據實時水位和水庫泄洪能力、發電機過流能力,反推最大庫容差流量,進而判斷新插入水位值是否異常。因此單位時間變幅閾值隨水位的變化而不同,庫水位高時,水庫面積較大,同樣的水位差對應的庫容差更大,允許的變幅更小;庫水位低時,水庫面積較小,同樣的水位差對應的庫容差更小,允許的變幅更大。這比單純的人工設定某一固定變幅閾值更為精確合理。
(2) 出庫流量采用最大泄流流量和最大發電流量計算而不采用實際閘門開度和機組出力計算,是基于系統健壯性考慮。在水情系統中一般水位數據較機組出力和閘門開度數據更易獲取,若水位數據異常判斷需實時機組和閘門數據作為計算基礎,則算法稍顯復雜,且一旦出現機組閘門數據中斷,輕則算法無法正常計算,重則出現誤判,導致系統紊亂。

圖4 水位跳變過濾算法流程Fig.4 Flow chart of water level fluctuation filtering algorithm
(3) 當判定某次水位測量值為異常跳變時,算法修改本次水位值為系統中已有的前一次水位。該處理方式基于以下3方面考慮:① 若直接拋棄異常數據而不置數,則將導致數據缺失,影響流量計算;② 根據實際運行情況,水庫水位測量時間間隔較短(1 h以內)、庫水位升降速率較慢,因此相鄰時段水位可做適當延展(可根據前一次水位定值延展,也可根據前兩次水位變化情況同斜率延展);③ 判定異常跳變后系統發出告警信息,提示值班人員核實,若算法延展的水位數據確有不妥,還可人工修正。
(4) 本算法利用水情水調系統數據庫觸發器實現,無需額外運行程序,算法穩定,響應迅速,便于系統現場實施以及推廣應用。
(5) 為便于用戶察覺水位計跳變問題,本算法將處理情況發送給報警系統,同時將本條數據置于特殊標志位,在系統中以不同顏色展示,使用戶能及時知曉數據過濾情況,以便及時對高故障率水位計進行維護更換。
將本算法應用于檳榔江三岔河水情系統,對前文描述的8月2日水位跳變進行過濾處理。新插入水位為1 893.201 m,時間為2日1:00,系統中前一次水位為1 893.291 m,時間為2日0:30,兩者時間差為30 min,根據庫容曲線,對應庫容分別為239.85×106m3和238.99×106m3,庫容差出庫流量達478.0 m3/s。而此水位下最大溢洪流量為386.0 m3/s,最大發電流量為47.7 m3/s,最大理論出庫流量為434.0 m3/s,小于庫容差出庫流量478.0 m3/s。因此,判定本次插入的水位屬于異常跳變,修改本次水位值為系統中已有的前一次水位1 893.291 m。
過濾后,新的壩上水位過程線以及重新計算后的入庫流量過程線如圖5所示。

圖5 過濾后水位-入庫流量過程線Fig.5 Graph of water level-reservoir inflow after filter
與圖2中未過濾水位-入庫流量過程線比較,其入庫流量震蕩明顯減弱,更為合理。事實上,過濾后水量平衡算法入庫流量為53.5 m3/s,利用三岔河上游大岔河、膽扎河、拉拉河、輪馬河4個入庫流量站實時流量加庫區區間流量比例求和得到的推流入庫流量值為58.6 m3/s,兩者比較接近。
本文將水量平衡模型引入庫水位跳變過濾算法中,利用水位庫容曲線、機組最大過流曲線和閘門最大溢洪曲線插值計算當前水位理論最大出庫流量和庫容差流量,當庫容差流量大于理論最大出庫流量時,判定本次水位數據屬于異常跳變(變小),對其進行過濾和處理。實例計算表明,本算法能根據不同水位情況自動調整變幅判斷閾值,從而準確有效地過濾水位小幅跳變(變小)異常,且避免誤判。
本算法實現方式簡便、響應迅速、運行可靠,對系統其他數據依賴度低,適用于使用雷達水位計作為壩上水位自動監測設備的水庫和電站,可用于新水情水調系統設計開發,也可針對已建系統進行優化完善,具有較好的推廣應用價值。
同時,由于本算法僅對水位向下跳變進行分析過濾,針對水位上漲跳變問題,雖可通過上游入庫流量站實時流量作為判據反推計算,但增加算法對其他遙測數據的依賴,穩定性無法得到保障。因此,水位上漲跳變問題尚需與其他方式(如定值判斷、人工處理等)協同處理解決。