宋天祥
(重慶湘渝鹽化股份有限公司,重慶 萬(wàn)州 404000)
電能在現(xiàn)代社會(huì)發(fā)展中發(fā)揮著越來(lái)越重要的作用,穩(wěn)定可靠的電能供應(yīng)是當(dāng)代社會(huì)和生活中必不可少的因素。電力系統(tǒng)潮流計(jì)算是分析電力系統(tǒng)運(yùn)行方式的三大基本計(jì)算之一,也是短路和穩(wěn)定計(jì)算的基礎(chǔ),是研究電網(wǎng)規(guī)劃和運(yùn)行的基本工具。但是電力潮流計(jì)算過(guò)程十分繁瑣,在當(dāng)前計(jì)算機(jī)技術(shù)發(fā)展的背景下,如何利用計(jì)算機(jī)輔助計(jì)算復(fù)雜電力系統(tǒng)潮流問(wèn)題成為當(dāng)前學(xué)術(shù)界關(guān)注的熱點(diǎn)問(wèn)題。因此,在研究工作中進(jìn)行潮流計(jì)算和相關(guān)運(yùn)算分析,具有一定的迫切性。基于此,本文在MATLAB技術(shù)支持下對(duì)電力系統(tǒng)潮流計(jì)算的相關(guān)程序進(jìn)行設(shè)計(jì)研究,以期能夠?yàn)殡娏ο到y(tǒng)的運(yùn)行提供支持。
隨著社會(huì)的發(fā)展,能源成為當(dāng)前社會(huì)進(jìn)步和技術(shù)應(yīng)用的關(guān)鍵,電能作為一種潔凈能源,能夠通過(guò)多種綠色方式產(chǎn)生,比如風(fēng)能發(fā)電、水能發(fā)電等技術(shù)。這些資源的運(yùn)用具有一定的地域性,如何將電能傳輸至用電區(qū)是解決電力分配的重要工作。電能的傳輸一直都是電力事業(yè)發(fā)展的重要領(lǐng)域,提高發(fā)電和輸電的效率是必要的,特別是在輸電過(guò)程中損耗較大,使得大量的資源和能源被無(wú)情地消耗掉。對(duì)電力系統(tǒng)中用電效率的提升,成為了當(dāng)今科學(xué)家們所要研究的最為急切的問(wèn)題。在電力系統(tǒng)正常運(yùn)行過(guò)程中,系統(tǒng)中從電源到負(fù)荷各節(jié)點(diǎn)的電壓、電流的大小和方向以及功率的穩(wěn)態(tài)分布,這個(gè)過(guò)程稱為電力系統(tǒng)的潮流分布,電力系統(tǒng)的潮流分配過(guò)程中,每一條線路、每一條母線所分得的功率是多少,這個(gè)過(guò)程叫做潮流計(jì)算過(guò)程。因此本文的研究對(duì)于電力系統(tǒng)的安全運(yùn)營(yíng)與維護(hù)具有重要參考意義。
潮流計(jì)算的計(jì)算方法有很多,現(xiàn)階段比較成熟的方法是牛頓拉夫遜法、前推回代法和最小功率法等,在牛頓拉夫遜法的基礎(chǔ)上,通過(guò)簡(jiǎn)化有功功率和頻率,無(wú)功功率和電壓的對(duì)應(yīng)關(guān)系提出了PQ分解法等。在人工智能算法逐漸發(fā)展的今天,也有很多人工智能的黑箱方法用來(lái)潮流計(jì)算,但人工智能方法進(jìn)行潮流計(jì)算準(zhǔn)確度不高,在實(shí)際運(yùn)行中,需要準(zhǔn)確度較高的潮流計(jì)算方法。
在潮流研究中,首先必須解出非線性方程,對(duì)于每個(gè)節(jié)點(diǎn)有兩個(gè)未知變量。用高斯-賽德?tīng)柗?Gauss-Seidel Power Flow Solution)求解Vi,改寫為式(1-1)
(1-1)
(1-2)
上述的公式包括輸電線路和接地之間產(chǎn)生的電導(dǎo)和電納。因?yàn)槠胶夤?jié)點(diǎn)在實(shí)際運(yùn)行過(guò)程中和潮流計(jì)算過(guò)程中是給定電壓幅值和電壓相角參數(shù)的,因此,平衡節(jié)點(diǎn)規(guī)定的標(biāo)幺值幅值為1,相角為0,他是屬于在潮流計(jì)算中的參考節(jié)點(diǎn)。在潮流計(jì)算實(shí)際運(yùn)行的過(guò)程中,各個(gè)功率節(jié)點(diǎn)的實(shí)際功率大小要高于參考值,它們的相位要滯后于參考值功率節(jié)點(diǎn)電壓和相角的具體大小,取決于負(fù)荷的功率需求。并且與實(shí)際的運(yùn)行狀態(tài)相關(guān)。
計(jì)算潮流的PQ分解法。根據(jù)牛頓法對(duì)潮流程序進(jìn)行改進(jìn)和簡(jiǎn)化的基礎(chǔ)上,提出了PQ分解法(又稱改進(jìn)牛頓法)。它的主要思想是節(jié)點(diǎn)功率表示為一個(gè)方程在極坐標(biāo)下的電壓矢量,理解基本矛盾,有功功率誤差作為電壓矢量角校正的基礎(chǔ),和無(wú)功功率誤差作為電壓振幅校正的基礎(chǔ)。有功功率和無(wú)功功率是分離迭代。對(duì)于PQ解法下的方程式如下式:
(1-3)
(1-4)
上述方程式是PQ解法的簡(jiǎn)化形式,式中的V是電力系統(tǒng)中的節(jié)點(diǎn)電壓幅值,表示為一種對(duì)角矩陣形式。B′與B″之間有著階數(shù)的差異性,具體表現(xiàn)為B′為n-1階,則B″為 為了保持該方程式的收斂性,一般情況下將電力系統(tǒng)的導(dǎo)納矩陣為虛部,對(duì)此,在進(jìn)行計(jì)算過(guò)程中一般采用以下形式進(jìn)行: 忽略輸電線路充電容量以及充電電容對(duì)輸電線路整體參數(shù)的影響。公式進(jìn)行相應(yīng)的變換如下所示: (1-5) 式中V0為系統(tǒng)平均電壓。此外在程序中可以用導(dǎo)納矩陣中元素的虛部作為B′??焖俜纸夥ㄋ⒌那疤幔菍?duì)原有的電力系統(tǒng)模型進(jìn)行極限簡(jiǎn)化和理想狀態(tài)簡(jiǎn)化的方法基礎(chǔ)上進(jìn)行的,實(shí)際的元件中電阻和電抗的大小,沒(méi)有辦法達(dá)到原來(lái)的假定情況,因此會(huì)造成系統(tǒng)在運(yùn)算過(guò)程中迭代出現(xiàn)問(wèn)題。 牛頓迭代法是取x0,在此基礎(chǔ)上,求出比x0更接近的方程的解,通常情況下,負(fù)載功率應(yīng)用于每個(gè)總線是已知的,但每個(gè)節(jié)點(diǎn)的電壓是未知的(平衡節(jié)點(diǎn)除外)。根據(jù)網(wǎng)絡(luò)結(jié)構(gòu)可以形成一個(gè)節(jié)點(diǎn)的電導(dǎo)矩陣,然后顯示出該節(jié)點(diǎn)的電導(dǎo)矩陣。通過(guò)電導(dǎo)矩陣和功率方程,可以將原始的問(wèn)題轉(zhuǎn)化成對(duì)于非線性問(wèn)題的求解,可以采用牛頓拉夫遜高斯方法,即通過(guò)每一節(jié)點(diǎn)的斜率作切線與橫軸相交的點(diǎn),所對(duì)應(yīng)的縱坐標(biāo)為下一個(gè)球節(jié)點(diǎn),通過(guò)一次又一次的迭代更新,分別在每一次迭代過(guò)程中形成初始值,將初始值代入功率方程進(jìn)行不斷修正,經(jīng)過(guò)三次到四次便可以得到所需要的求解值。 設(shè)節(jié)點(diǎn)總數(shù)為n,PV節(jié)點(diǎn)數(shù)為r,則潮流應(yīng)包含n-1個(gè)有功方程和n-r-1個(gè)無(wú)功方程。 牛頓法的修正方程式為: (1-6) 設(shè)n維非線性方程組為 (1-7) 求解得到修正量,并對(duì)各變量修正得 (1-8) 很容易看到,修改后的雅可比矩陣方程的系數(shù)矩陣具有以下特點(diǎn): 1)相量矩陣為矢量矩陣; 2)求解矩陣具有不對(duì)稱性; 3)雅可比矩陣在拓?fù)鋵W(xué)意義上具有稀疏性。 牛頓法的圖形解釋如圖1所示。 圖1 牛頓拉夫?qū)O法圖形解釋 現(xiàn)在把牛頓法推廣到多變量非線性方程組的情況。設(shè)有變量的非線性聯(lián)立方程組: (1-9) (1-10) 一般第k次迭代時(shí)的修正方程式為: (1-11) 上式可以簡(jiǎn)寫為:F(X(k))=J(k)ΔX(k)。 從幾何意義上說(shuō),牛頓法就是切線法,是一種逐漸線性化的方法。 MATLAB起源于美國(guó)科學(xué)家Cleve Moler博士在線性代數(shù)教學(xué)領(lǐng)域的早期工作。當(dāng)他在新墨西哥大學(xué)教授線性代數(shù)課程時(shí),他構(gòu)想并開(kāi)發(fā)了MATLAB軟件,并在20世紀(jì)80年代早期由Mathworks公司銷售。它的出現(xiàn)開(kāi)創(chuàng)了科學(xué)計(jì)算的新時(shí)代。它是由Math Works開(kāi)發(fā)的一款商用數(shù)學(xué)軟件,Math Works是一種用于算法開(kāi)發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析和數(shù)值計(jì)算的高級(jí)技術(shù)計(jì)算語(yǔ)言和交互環(huán)境,主要包括MATLAB和Simulink。 MATLAB腳本節(jié)點(diǎn)是實(shí)現(xiàn)試驗(yàn)室視圖和MATLAB之間互聯(lián)的橋梁。它是通過(guò)一個(gè)嵌入式的Active X控件通過(guò)Lab VIEW安裝的,與MATLAB服務(wù)器建立連接,與數(shù)據(jù)交互,通過(guò)調(diào)用命令和函數(shù)實(shí)現(xiàn)復(fù)雜而龐大的數(shù)值計(jì)算。MATLAB分析過(guò)程,使用MATLAB腳本節(jié)點(diǎn)的方法如下:在虛擬儀器功能面板,選擇數(shù)學(xué)>腳本和公式>腳本節(jié)點(diǎn)>MATLAB腳本,您可以添加一個(gè)MATLAB腳本節(jié)點(diǎn)的流程圖的左派和右派MATLAB腳本節(jié)點(diǎn)的各種類型的輸入或輸出參數(shù)可以單獨(dú)添加相應(yīng)的配置。 MATLAB的功率分布編程過(guò)程是這樣的,首先在你點(diǎn)擊開(kāi)始運(yùn)行按鈕時(shí),你所編寫的程序以字符轉(zhuǎn)換的形式轉(zhuǎn)換成為一系列的字符串,通過(guò)字符串發(fā)送給腳本文件進(jìn)行執(zhí)行腳本文件,通過(guò)所規(guī)定的算法和計(jì)算流程求解非線性方程來(lái)計(jì)算每一個(gè)節(jié)點(diǎn)的有功功率、無(wú)功功率和電壓相角等,耗時(shí)的計(jì)算和其它輸出功率流分布條件和數(shù)據(jù)分析。vi對(duì)節(jié)點(diǎn)的輸出參數(shù)進(jìn)行處理,并在軟件操作界面中顯示。計(jì)算完成后,將出現(xiàn)計(jì)算完成對(duì)話框,同時(shí)使用Unset Busy.vi移動(dòng)鼠標(biāo)指針。未配置為忙。當(dāng)需要保存計(jì)算結(jié)果時(shí),單擊save data按鈕,程序?qū)⒂?jì)算結(jié)果保存為Excel文件。 為了保障在MATLAB環(huán)境下系統(tǒng)能夠保持較高的計(jì)算速度,可以對(duì)計(jì)算方程進(jìn)行矢量化。這樣可以是計(jì)算過(guò)程更加簡(jiǎn)單,并且程序編寫也比較方便。以PQ分解法為核心的潮流計(jì)算方程如下式所示: (3-1) 式中Pi,Qi,Gij,Bij,δij分別為節(jié)點(diǎn)i處的有功,無(wú)功,電壓幅值,i、j節(jié)點(diǎn)間導(dǎo)納矩陣實(shí)部、虛部,i、j節(jié)點(diǎn)間相角差。修正方程表示為: (3-2) (3-3) 在這種潮流計(jì)算過(guò)程中,通過(guò)對(duì)矩陣的虛部進(jìn)行計(jì)算,得到B′。B′在矩陣中的節(jié)點(diǎn)元素為0,對(duì)角元一般情況為1;方程中的B″則為矩陣的平衡節(jié)點(diǎn),其對(duì)角元同樣為1,行和列元素為0。方程在n×n對(duì)稱矩陣中,同時(shí)將ΔP和ΔQ進(jìn)行同樣的運(yùn)算和處理。 ΔP和ΔQ為列向量,ΔP將平衡節(jié)點(diǎn)對(duì)應(yīng)行置0,ΔQ則將平衡節(jié)點(diǎn)和PV節(jié)點(diǎn)對(duì)應(yīng)行置0。由于節(jié)點(diǎn)功率可表示為: Si=Pi+jQi (3-4) 取上式實(shí)部和虛部即可方便的得到ΔPi,ΔQi, 則(3-1)式可以矢量化表示為: S=V*(Y*V) (3-5) ΔP=P-Re(S) (3-6) ΔQ=Q-Im(S) (3-7) 其中:.*表示向量與向量間對(duì)應(yīng)元素相乘;Y,V分別表示導(dǎo)納矩陣、電壓矢量的共軛;S代表節(jié)點(diǎn)功率。MATLAB代碼如下: S=V.*(conj(Y*V)) dP=P-real(S) dQ=Q-imag(S) 通過(guò)MATLAB代碼我們也不難發(fā)現(xiàn),其與潮流計(jì)算的形式十分類似,這樣的編寫形式能夠有效的提高編碼的編寫速度,并且符合程序的計(jì)算效率。 利用MATLAB Script節(jié)點(diǎn),使用PQ速解法求解電力系統(tǒng)潮流分布的MATLAB程序流程圖見(jiàn)圖2。 圖2 基于MATLAB的求解流程 電力系統(tǒng)潮流計(jì)算方法經(jīng)過(guò)不斷改進(jìn),正在逐步改進(jìn)。每種方法都有其各自的應(yīng)用領(lǐng)域和缺點(diǎn)。對(duì)于不同的情況,我們必須選擇合適的方法或者結(jié)合多種方法來(lái)更好的解決問(wèn)題。當(dāng)然,在實(shí)際應(yīng)用中也會(huì)出現(xiàn)計(jì)算結(jié)果不收斂的情況。功率通量計(jì)算的求解方法還需要進(jìn)一步的研究和改進(jìn)。本文通過(guò)推導(dǎo)一個(gè)公式,可以根據(jù)目標(biāo)對(duì)象的基數(shù)方程對(duì)迭代公式進(jìn)行設(shè)置和更新,從而避免了復(fù)雜的微分過(guò)程,得到了一個(gè)適合于編制MATLAB程序的迭代公式。潮流計(jì)算是電力系統(tǒng)分析中最基本的電氣計(jì)算方法之一。本文編寫了一個(gè)基于PQ分解法的潮流計(jì)算程序,討論了如何利用MATLAB指令的功能快速創(chuàng)建迭代公式,進(jìn)一步提高程序開(kāi)發(fā)效率。最后給出了MATLAB的設(shè)計(jì)思想和方法。 本文研究中受到時(shí)間和精力限制,僅僅將PQ分解法利用MATLAB技術(shù)進(jìn)行仿真實(shí)現(xiàn),未能對(duì)牛頓-拉夫遜以及高斯-賽德?tīng)杻煞N算法進(jìn)行研究和實(shí)現(xiàn)MATLAB程序的編寫,在以后研究中,要對(duì)這三種算法下的程序進(jìn)行設(shè)計(jì)與實(shí)現(xiàn),并對(duì)比三種算法下的計(jì)算結(jié)果,得出最優(yōu)的潮流計(jì)算方式,為電力系統(tǒng)的維護(hù)提供支持。2.3 牛頓-拉夫遜原理
3 基于Matlab的潮流計(jì)算程序設(shè)計(jì)
3.1 MATLAB簡(jiǎn)介
3.2 MATLAB Script節(jié)點(diǎn)技術(shù)
3.3 MATLAB編程實(shí)例
3.4 潮流公式矢量化
3.5 MATLAB編程算法
4 結(jié) 語(yǔ)