利用python调用PSS/E进行电力系统仿真
利用python調(diào)用PSS/E進(jìn)行電力系統(tǒng)仿真
PSS/E是西門子公司(PTI)開發(fā)的電力系統(tǒng)仿真軟件,可以實(shí)現(xiàn)潮流計(jì)算、短路計(jì)算、機(jī)電暫態(tài)等功能,但是在科研或者項(xiàng)目研究時(shí)可能需要將仿真數(shù)據(jù)導(dǎo)出,在MATLAB、python等平臺(tái)上進(jìn)行進(jìn)一步處理,進(jìn)行更進(jìn)一步的研究,換句話說,仿真計(jì)算只是項(xiàng)目研究的一個(gè)部分,仿真計(jì)算僅僅是數(shù)據(jù)來源。對(duì)于**“如何將仿真數(shù)據(jù)導(dǎo)出”**這一問題,PSS/E開發(fā)了psspy模塊,實(shí)現(xiàn)了PSS/E與python2.7的交互,可以通過在python編輯器上調(diào)用psspy等模塊實(shí)現(xiàn)對(duì)PSS/E的控制,進(jìn)行仿真計(jì)算。
寫在前面
psspy模塊是32位的,因此要調(diào)用psspy必須使用python2.7-bit32位,64位的python是無法實(shí)現(xiàn)的。如果不確定python版本,可以通過cmd輸入python查看:
為了簡(jiǎn)便起見,小編安裝了anaconda-2.1.0-x86安裝包
環(huán)境配置
首先將psspy導(dǎo)入,psspy的地址一般在PSSE安裝地址中的PSSEBIN文件夾中。然后配置環(huán)境變量,所謂環(huán)境變量就是python可執(zhí)行文件所在的位置。配置時(shí)把psspy模塊所在文件夾添加到sys.environ[‘PATH’]中即可。最后導(dǎo)入psspy包
import os, sys PYTHONPATH = r'C:\Program Files (x86)\PTI\PSSE33\PSSBIN' sys.path.append(PYTHONPATH) os.environ['PATH'] += ';' + PYTHONPATH import psspy調(diào)用PSS/E
導(dǎo)入psspy后就可以通過調(diào)用psspy模塊進(jìn)行潮流計(jì)算等仿真工作了,像在PSS/E圖像界面操作一樣,首先打開PSS/E進(jìn)行初始化,打開文件,進(jìn)行潮流計(jì)算……對(duì)應(yīng)的代碼如下:
if __name__ == '__main__':CASE = r"C:\Program Files (x86)\PTI\PSSE33\EXAMPLE\savnw.sav"psspy.psseinit(buses=2000) psspy.case(CASE) b=psspy.fnsl()以PSS/E自帶的savnw.sav為例,CASE保存了該算例的絕對(duì)地址。
因?yàn)閷?dǎo)入的是整個(gè)模塊,所以調(diào)用模塊里的函數(shù)時(shí)要添加模塊名。
psseinit(buses)函數(shù)用于初始化PSS/E,buses參數(shù)是PSS/E母線數(shù)目的最大值;
case(CASE)函數(shù)用于打開算例文件,參數(shù)是算例所在路徑;
fnsl()為牛拉法潮流計(jì)算函數(shù),共有8個(gè)參數(shù),具體可以參考PSS/E的API手冊(cè)。不給參數(shù)是按照缺省值運(yùn)行。
運(yùn)行結(jié)果:
如圖,自上而下一次是打開PSS/E,讀取文件,潮流計(jì)算結(jié)果。經(jīng)過6次迭代,計(jì)算結(jié)果收斂,
全部代碼
# Set environment import os, sys PYTHONPATH = r'C:\Program Files (x86)\PTI\PSSE33\PSSBIN'# sys.path.append(PYTHONPATH)#告訴python模塊導(dǎo)入的位置 os.environ['PATH'] += ';' + PYTHONPATH #增加環(huán)境變量 import psspyif __name__ == '__main__':CASE = r"C:\Program Files (x86)\PTI\PSSE33\EXAMPLE\savnw.sav"psspy.psseinit(buses=2000) #初始化PSSE,buses是母線數(shù)量psspy.case(CASE) #打開文件b=psspy.fnsl()參考資料
Run PSSE from Python and not the other way around - Python for Power Systems
總結(jié)
以上是生活随笔為你收集整理的利用python调用PSS/E进行电力系统仿真的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: win7系统安装打印机驱动报错:Wind
- 下一篇: 使用Python对Dicom文件进行读取