配电网潮流计算 Copyright© 2018The PSHPC Authors
功能描述 此服务用于配电网潮流计算,支持前推回推法[1]和回路电流法[2]两种计算方式。本服务同时支持文本数据流输入和对象输入两种方式。 原始算例数据来自PES TestFeeders 。
[1]: Shirmohammadi D, Hong H W, Semlyen A, et al. A com-pensation-based power flow method for weakly meshed distribution and transmission networks[J]. IEEE Transac-tions on Power Systems, 1988, 3(2):753-762.
[2]: 董树锋, 章杜锡, 周飞,等. 一种基于回路电流法的有源配电网潮流算法[J]. 电力自动化设备, 2018, 38(2):9-17.
服务信息
服务请求 1 2 3 4 service DspfService { rpc doDspf (DspfData) returns (DspfReply) { } }
输入数据封装类为DspfData,输出结果封装类为DspfReply。
输入数据 proto文件定义如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 message DspfData { bool is_stream = 1 ; bytes input_file_stream = 2 ; bytes feeder_conf_stream = 3 ; repeated OneFeederData feeder_data = 4 ; string length_unit = 5 ; repeated OneSpotLoadData spot_load_data = 6 ; repeated OneDisLoadData dis_load_data = 7 ; repeated OneShuntCapacitorData shunt_capacitor_data = 8 ; repeated OneTransformerData transformer_data = 9 ; repeated OneRegulatorData regulator_data = 10 ; repeated OneDgData dg_data = 11 ; repeated OneSwitchData switch_data = 12 ; repeated OneFeederConfData feeder_conf_data = 13 ; string kV_base = 14 ; string slackCnId = 15 ; string conf_length_unit = 16 ; bool is_lcb_method = 17 ; }
在该输入数据中,若采用文件数据流方式,则只需要1、2、3、14、15号数据;若采用对象方式则需要1、4-16号数据。 具体含义如下:
is_stream:是否采用流传输方式
input_file_stream:输入文件的字节流
feeder_conf_stream:线路参数文件的字节流
feeder_data:线路数据
connected_node:相连节点编号
line_length:线路长度
line_configure:对应的线路参数
1 2 3 4 5 message OneFeederData { string connected_node = 1 ; string line_length = 2 ; string line_configure = 3 ; }
length_unit:线路长度单位,主要有feet、mile、meter和kilometer
spot_load_data:负荷数据
connected_node:相连节点编号
load_model:负荷类型,主要有Y-PQ、Y-I、Y-Z、D-PQ、D-I和D-Z
load_kW1:A相有功功率
load_kVar1:A相无功功率
load_kW2:B相有功功率
load_kVar2:B相无功功率
load_kW3:C相有功功率
load_kVar3:C相无功功率B
1 2 3 4 5 6 7 8 9 10 message OneSpotLoadData { string connected_node = 1 ; string load_model = 2 ; string load_kW1 = 3 ; string load_kVar1 = 4 ; string load_kW2 = 5 ; string load_kVar2 = 6 ; string load_kW3 = 7 ; string load_kVar3 = 8 ; }
dis_load_data:分布式负荷数据
connected_node:相连节点编号,两个节点用-进行连接
load_model:负荷类型,主要有Y-PQ、Y-I、Y-Z、D-PQ、D-I和D-Z
load_kW1:A相有功功率
load_kVar1:A相无功功率
load_kW2:B相有功功率
load_kVar2:B相无功功率
load_kW3:C相有功功率
load_kVar3:C相无功功率B
1 2 3 4 5 6 7 8 9 10 message OneDisLoadData { string connected_node = 1 ; string load_model = 2 ; string load_kW1 = 3 ; string load_kVar1 = 4 ; string load_kW2 = 5 ; string load_kVar2 = 6 ; string load_kW3 = 7 ; string load_kVar3 = 8 ; }
shunt_capacitor_data:并联电容器数据
connected_node:相连节点编号
load_kVar1:A相无功功率
load_kVar2:B相无功功率
load_kVar3:C相无功功率
1 2 3 4 5 6 message OneShuntCapacitorData { string connected_node = 1 ; string load_kVar1 = 2 ; string load_kVar2 = 3 ; string load_kVar3 = 4 ; }
transformer_data:变压器数据
connected_node:相连节点编号
kVA_s_tf:额定容量
connect_type:连接类型,主要有Gr.Y-Gr.Y、D-D、D-Gr.Y和Y-D
kV_high:高压侧额定电压
kV_low:低压侧额定电压
pu_r_tf:短路电阻标幺值
pu_x_tf:短路电抗标幺值
1 2 3 4 5 6 7 8 9 message OneTransformerData { string connected_node = 1 ; string kVA_s_tf = 2 ; string connect_type = 3 ; string kV_high = 4 ; string kV_low = 5 ; string pu_r_tf = 6 ; string pu_x_tf = 7 ; }
regulator_data:调压器数据
connected_node:相连节点编号
location:放置地点
phases:相
connect_type:连接类型
monitoring_phases:测量相
bandwidth:带宽
rg_pt_num:电压互感器匝数比
rg_ct_num:电流互感器匝数比
ra_rg:A相等值电阻
xa_rg:A相等值电抗
rb_rg:B相等值电阻
xb_rg:B相等值电抗
rc_rg:C相等值电阻
xc_rg:C相等值电抗
vla_rg:A相期望调节点的电压
vlb_rg:B相期望调节点的电压
vlc_rg:C相期望调节点的电压
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 message OneRegulatorData { string connected_node = 1 ; string location = 2 ; string phases = 3 ; string connect_type = 4 ; string monitoring_phases = 5 ; string bandwidth = 6 ; string rg_pt_num = 7 ; string rg_ct_num = 8 ; string ra_rg = 9 ; string xa_rg = 10 ; string rb_rg = 11 ; string xb_rg = 12 ; string rc_rg = 13 ; string xc_rg = 14 ; string vla_rg = 15 ; string vlb_rg = 16 ; string vlc_rg = 17 ; }
dg_data:分布式电源数据
connected_node:相连节点编号
dg_model:分布式电源类型,主要有IM和PV
connect_type:连接方式 对于PV节点 有:
pv_p_kW1:A相有功
pv_p_kW2:B相有功
pv_p_kW3:C相有功
pv_v_kV1:A相电压
pv_v_kV2:B相电压
pv_v_kV3:C相电压 对于异步电机 有:
im_base_kVA:额定容量
im_base_kV:额定电压
im_p:额定出力
im_rs:定子侧等效电阻
im_xs:定子侧等效电抗
im_rr:转子侧等效电阻
im_xr:转子侧等效电抗
im_xm:励磁电抗
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 message OneDgData { string connected_node = 1 ; string dg_model = 2 ; string connect_type = 3 ; string pv_p_kW1 = 4 ; string pv_p_kW2 = 5 ; string pv_p_kW3 = 6 ; string pv_v_kV1 = 7 ; string pv_v_kV2 = 8 ; string pv_v_kV3 = 9 ; string im_base_kVA = 10 ; string im_base_kV = 11 ; string im_p = 12 ; string im_rs = 13 ; string im_xs = 14 ; string im_rr = 15 ; string im_xr = 16 ; string im_xm = 17 ; }
switch_data:开关数据
connected_node:相连节点编号
switch_status:开关状态,分为on和off
1 2 3 4 message OneSwitchData { string connected_node = 1 ; string switch_status = 2 ; }
feeder_conf_data:线路参数数据
line_configure:线路参数标记,这里对应OneFeederData的第三个类型
r11~`r33`:单位线路阻抗矩阵的实部
x11~`x33`:单位线路阻抗矩阵的虚部
b11~`b33`:单位线路对地电纳矩阵
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 message OneFeederConfData { string line_configure = 1 ; string r11 = 2 ; string x11 = 3 ; string r12 = 4 ; string x12 = 5 ; string r13 = 6 ; string x13 = 7 ; string r21 = 8 ; string x21 = 9 ; string r22 = 10 ; string x22 = 11 ; string r23 = 12 ; string x23 = 13 ; string r31 = 14 ; string x31 = 15 ; string r32 = 16 ; string x32 = 17 ; string r33 = 18 ; string x33 = 19 ; string b11 = 20 ; string b12 = 21 ; string b13 = 22 ; string b21 = 23 ; string b22 = 24 ; string b23 = 25 ; string b31 = 26 ; string b32 = 27 ; string b33 = 28 ; }
kV_base:基准电压
slackCnId:根节点编号
conf_length_unit:单位线路参数的长度单位,主要有feet、mile、meter和kilometer
is_lcb_method:是否为回路电流法,若为false则使用前推回推法
输出数据 proto文件定义如下:
1 2 3 4 5 message DspfReply { repeated OneBusVResult busV_result = 1 ; repeated OneBranchResult branch_result = 2 ; bool is_converged = 3 ; }
具体含义如下:
busV_result:节点电压计算结果
node:相连节点编号
voltage_kV1:A相电压幅值
voltage_kV2:B相电压幅值
voltage_kV3:C相电压幅值
theta_1:A相电压相角
theta_2:B相电压相角
theta_3:C相电压相角
1 2 3 4 5 6 7 8 9 message OneBusVResult { string node = 1 ; string voltage_kV1 = 2 ; string voltage_kV2 = 3 ; string voltage_kV3 = 4 ; string theta_1 = 5 ; string theta_2 = 6 ; string theta_3 = 7 ; }
branch_result:线路潮流计算结果
branch:线路编号
from_kW1:始端A相有功功率
from_kVar1:始端A相无功功率
from_kW2:始端B相有功功率
from_kVar2:始端B相无功功率
from_kW3:始端C相有功功率
from_kVar3:始端C相无功功率
to_kW1:末端A相有功功率
to_kVar1:末端A相无功功率
to_kW2:末端B相有功功率
to_kVar2:末端B相无功功率
to_kW3:末端C相有功功率
to_kVar3:末端C相无功功率
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 message OneBranchResult { string branch = 1 ; string from_kW1 = 2 ; string from_kVar1 = 3 ; string from_kW2 = 4 ; string from_kVar2 = 5 ; string from_kW3 = 6 ; string from_kVar3 = 7 ; string to_kW1 = 8 ; string to_kVar1 = 9 ; string to_kW2 = 10 ; string to_kVar2 = 11 ; string to_kW3 = 12 ; string to_kVar3 = 13 ; }
is_converged:是否收敛
错误信息 不同类型异常抛出含义如下:
FileFormatException:算例输入文件格式异常
FeederConfFormatException:线路数据格式异常
CaseTooLargeException:算例超出计算规模限制
NotConvergedException:计算不收敛
OtherErrorException:其他异常
注意事项
本服务暂为试运行状态,可能存在潜在的正确性和稳定性问题。
若对于本服务有任何疑问或者建议,请联系作者garrybest@foxmail.com 。