B1DZ和TNZNP110-220kV功能测试程序
在此示例中,实现了用于执行附录B1STO56947007-29.120.70.241-2017中的DZ和TNZ110-220kV的功能测试的测试网络模型。 RPA微处理器器件的技术要求。此示例包含12个名为B1_X.engee的模型,其中X是实验编号的数量或范围,模型B1。engee用于验证。 该模型已经过调整和测试,以KPM节奏发射. 有关使用KPM RHYTHM的更多信息,请参阅示例[KPM RHYTHM:Quick Start](https://engee.com/community/ru/catalogs/projects/kpm-ritm-bystryi-start )和[KPM节奏:实时操作](https://engee.com/community/ru/catalogs/projects/kpm-ritm-rabota-v-realnom-vremeni )。 实验的例子是在没有连接真实设备的情况下进行演示的,您需要自己连接。 要连接RPA端子,您需要将DAC块和数字输入/输出从节奏块库添加到模型中,然后将端子连接到节奏KPM。 模拟网络的方案:
电力系统的参数A:
直接序列的有源电阻为4.85欧姆
直接序列的感应电阻为25.604欧姆
零序的有源电阻为10.607欧姆
零序的感应电阻为53.347欧姆。
等效EMF–239kV
电动势相位角为0°
电力系统参数B:
直接序列的有源电阻为0.393欧姆
直接序列的感应电阻为4,276欧姆。
零序的有源电阻为0.494欧姆
零序的感应电阻为4.02欧姆
等效电动势为239.24kv
电动势相位角为10.5°
A-B线的参数:
长度70公里
直线的电阻率为0.0788+j0.4155欧姆/公里
零序线的电阻率为0.3356+j1.151欧姆/公里
直接序列的比容量为8,594nF/km
零序的比容量为7,305nF/km
互感电阻率0.15+j0.684欧姆/公里
脱焊变压器:
TRDN-40000/220
Snom=40MVA
UVH=230
UHN=11
英国=12 %
Ix=0.9 %
DRc=170千瓦
DRx=50千瓦
测量电流互感器:
TFND-220-II
pt=1200/1A
Snom=30VA,cos φ=0.8
K10=30
Qact=21.5cm2
LCP=106厘米
W1=1
W2=1200
R2=7欧姆
X2=0.54欧姆
模型验证
在第一次启动之前,您需要安装一个用于呈现表的包。:
using Pkg
Pkg.add("PrettyTables")
所需模式参数与计算模式参数的比较:
model_name = "B1"
model_name in [m.name for m in engee.get_all_models()] ? engee.open(model_name) : engee.load( "$(@__DIR__)/$(model_name).engee");
blocks = ["Q1_ctrl", "Q2_ctrl", "Q3_ctrl", "Q4_ctrl", "ЗН_3", "ЗН_4"]
switch_states = [0 0 0 0 1 1]
for i = 1:length(blocks)
engee.set_param!(model_name*"/"*blocks[i], "Value" => switch_states[i]);
end
time_ar = [0, 1]
switch = ones(2,4,2)
# Запуск загруженной модели:
results = engee.run(model_name);
# вектор времени симуляции
# sim_time = results["P1_1"].time;
P1_1_ex1 = results["P1_1"].value[end]
Q1_1_ex1 = results["Q1_1"].value[end]
V1_1_ex1 = results["V1_1"].value[end][1]
I1_1_ex1 = results["I1_1"].value[end][1]
P2_1_ex1 = results["P2_1"].value[end]
Q2_1_ex1 = results["Q2_1"].value[end]
V2_1_ex1 = results["V2_1"].value[end][1]
I2_1_ex1 = results["I2_1"].value[end][1]
switch_states = [0 0 1 1 0 0]
for i = 1:length(blocks)
engee.set_param!(model_name*"/"*blocks[i], "Value" => switch_states[i]);
end
# Запуск загруженной модели:
results = engee.run(model_name);
# вектор времени симуляции
# sim_time = results["P1_1"].time;
P1_1_ex2 = results["P1_1"].value[end]
Q1_1_ex2 = results["Q1_1"].value[end]
V1_1_ex2 = results["V1_1"].value[end][1]
I1_1_ex2 = results["I1_1"].value[end][1]
P2_1_ex2 = results["P2_1"].value[end]
Q2_1_ex2 = results["Q2_1"].value[end]
V2_1_ex2 = results["V2_1"].value[end][1]
I2_1_ex2 = results["I2_1"].value[end][1];
不尊重结果:
using PrettyTables
colomn1 = ["Обе цепи в работе", "Напряжение на шинах, кВ", "Ток по линии, кА",
"Активный переток мощности, МВт", "Реактивный переток мощности, МВАр", "",
"Цепь 2 отключена с двух сторон и заземлена", "Напряжение на шинах, кВ", "Ток по линии, кА",
"Активный переток мощности, МВт", "Реактивный переток мощности, МВАр"]
colomn2 = ["", "239,5", "0,279", "-115", "12,86", "", "", "238,9", "0,420", "-171,7", "25,91"]
colomn3 = ["", "239,8", "0,288", "116,3", "-27,63", "", "", "239,4", "0,428", "174,7", "-31,89"]
colomn4 = ["", V1_1_ex1, I1_1_ex1, P1_1_ex1, Q1_1_ex1, "", "", V1_1_ex2, I1_1_ex2, P1_1_ex2, Q1_1_ex2]
colomn5 = ["", V2_1_ex1, I2_1_ex1, P2_1_ex1, Q2_1_ex1, "", "", V2_1_ex2, I2_1_ex2, P2_1_ex2, Q2_1_ex2]
colomn6 = ["", (239.5 - V1_1_ex1) / 239.5 * 100, (0.279 - I1_1_ex1) / 0.279 * 100, (-115 - P1_1_ex1) / -115 * 100,
(12.86 - Q1_1_ex1) / 12.86 * 100, "", "", (238.9 - V1_1_ex2) / 238.9 * 100, (0.42 - I1_1_ex2) / 0.42 * 100,
(-171.7 - P1_1_ex2) / -171.7 * 100, (25.91 - Q1_1_ex2) / 25.91 * 100]
colomn7 = ["", (239.8 - V2_1_ex1) / 239.8 * 100, (0.288 - I2_1_ex1) / 0.288 * 100, (116.3 - P2_1_ex1) / 116.3 / 100,
(-27.63 - Q2_1_ex1) / -27.63 * 100, "", "", (239.4 - V2_1_ex2) / 239.4 * 100, (0.428 - I2_1_ex2) / 0.428 * 100,
(174.7 - P2_1_ex2) / 174.7 * 100, (-31.89 - Q2_1_ex2) / -31.89 * 100]
data = hcat(colomn1, colomn2, colomn3, colomn4, colomn5, colomn6, colomn7);
header = (["Режимы", "ПС А", "ПС Б", "ПС А", "ПС Б", "ПС А", "ПС Б"],
["", "RTDS", "RTDS", "Engee", "Engee", "Ошибка, %", "Ошибка, %"])
pretty_table(
data;
header = header,
alignment = :l,
formatters = ft_printf("%5.2f")
)
计算误差小于5%。
所需短路电流与计算电流的比较:
switch = []
time_ar = [0, 1]
fault = reshape([0 0 0 1; 0 0 0 1; 1 0 0 0; 1 0 0 0; 0 1 1 0; 0 1 1 0], (6, 4, 1))
fault = cat(fault, fault, dims = 3)
blocks = ["ЗН_3", "ЗН_4", "Q1_ctrl", "Q2_ctrl","Q3_ctrl","Q4_ctrl","Q5_ctrl","Q6_ctrl"]
switch_states = [1 1 0 0 0 0 1 1; 0 0 0 0 1 1 1 1]
results = Matrix{Any}(undef, 12, 2)
for j = 1:2
for i = 1:6
engee.set_param!(model_name*"/"*blocks[i], "Value" => switch_states[j, i]);
end
for i = 1:6
if i % 2 == 1
switch = cat(reshape(fault[i,:,:], (1,4,2)), ones(5,4,2), dims = 1)
else
switch = cat(ones(1,4,2), reshape(fault[i,:,:], (1,4,2)), ones(4,4,2), dims = 1)
end
result = engee.run(model_name);
if i <= 2
results[i + (j - 1) * 6, 1] = result["I1_1"].value[end];
results[i + (j - 1) * 6, 2] = result["I2_1"].value[end];
else
results[i + (j - 1) * 6, 1] = result["3I_0_1"].value[end];
results[i + (j - 1) * 6, 2] = result["3I_0_2"].value[end];
end
end
end
显示结果:
using PrettyTables
I_ref =[8.88 1.7 4.465 0.593 6.13 0.595 5.29 2.47 3.024 1.254 3.744 1.246;
3.61 33.76 1.254 34.67 1.723 34.78 4.06 32.09 2.761 33.79 3.418 33.57]
colomn1 = ["Обе цепи в работе", "K1", "K2", "K1", "K2","K1", "K2",
"Цепь 2 отключена с двух сторон и заземлена", "K1", "K2","K1", "K2", "K1", "K2"]
colomn2 = ["", "K(3)", "K(3)", "K(1,1)", "K(1,1)", "K(1)", "K(1)", "","K(3)", "K(3)", "K(1,1)", "K(1,1)", "K(1)", "K(1)"]
colomn3 = ["", "I1", "I1", "3I0", "3I0", "3I0", "3I0", "", "I1", "I1", "3I0", "3I0", "3I0", "3I0"]
colomn4 = ["", "8.88", "1.7", "4.465", "0.593", "6.13", "0.595", "", "5.29", "2.47", "3.024", "1.254", "3.744", "1.246"]
colomn5 = ["", "3.61", "33.76", "1.254", "34.67", "1.723", "34.78", "", "4.06", "32.09", "2.761", "33.79", "3.418", "33.57"]
colomn6 = reshape(cat("", transpose(results[1:6,1]),"", transpose(results[7:12,1]), dims=2), (14))
colomn7 = reshape(cat("", transpose(results[1:6,2]),"", transpose(results[7:12,2]), dims=2), (14))
colomn8 = reshape(cat("", (results[1:6,1].-I_ref[1,1:6])./I_ref[1,1:6].*100,
"", (results[7:12,1].-I_ref[1,7:12])./I_ref[1,7:12].*100, dims=1), (14))
colomn9 = reshape(cat("", (results[1:6,2].-I_ref[2,1:6])./I_ref[2,1:6].*100,
"", (results[7:12,2].-I_ref[2,7:12])./I_ref[2,7:12].*100, dims=1), (14))
data = hcat(colomn1, colomn2, colomn3, colomn4, colomn5, colomn6, colomn7, colomn8, colomn9);
header = (["Режимы КЗ", "", "", "от ПС А", "от ПС Б", "от ПС А", "от ПС Б", "от ПС А", "от ПС Б"],
["Место КЗ", "Вид КЗ", "", "RTDS", "RTDS", "Engee", "Engee", "Ошибка, %", "Ошибка, %"])
pretty_table(
data;
header = header,
alignment = :l,
formatters = ft_printf("%5.2f")
)
计算误差小于5%。
实验1-10
瞬态电阻和负载对具有内部短路的遥控器操作的影响。
测试条件:
-KZ位置:点K4.
-短路类型:K(1,1)VS0,K(1)B0
实验参数:

实验No.1设置在模型中。 为了进行其他实验,需要改变短路的类型和短路块中的瞬态电阻。
model_name = "B1_1_10"
model_name in [m.name for m in engee.get_all_models()] ? engee.open(model_name) : engee.load( "$(@__DIR__)/$(model_name).engee");
results = Matrix{Any}(undef, 1, 4)
result = engee.run(model_name);
results[1, 1] = stack(collect(result["I1_1"].value[:])[!,:value])';
results[1, 2] = stack(collect(result["I2_1"].value[:])[!,:value])';
results[1, 3] = stack(collect(result["V1_1"].value[:])[!,:value])';
results[1, 4] = stack(collect(result["V2_1"].value[:])[!,:value])';
sim_time = collect(result["I1_1"].time[:])[!,:time];
显示结果:
# сторона измерения, 1 - ПС А, 2 -ПС Б
dir = 1;
gr()
p1 = plot(sim_time, results[1, dir], xlabel = "t, с", ylabel = "I, кА", label = ["a" "b" "c"])
p2 = plot(sim_time, results[1, dir + 2], xlabel = "t, с", ylabel = "U, кВ", label = ["a" "b" "c"])
plot(p1, p2, layout=(2,1))
实验11-14
近短路的情况下检查遥控器的操作。
测试条件:
-短路类型:K(3)ABC
-短路位置的瞬态电阻:0欧姆。
实验参数:

该模型定义了经验No.11。 对于其他实验,有必要将短路单元移动到所需的点。
model_name = "B1_11_14"
model_name in [m.name for m in engee.get_all_models()] ? engee.open(model_name) : engee.load( "$(@__DIR__)/$(model_name).engee");
results = Matrix{Any}(undef, 1, 4)
result = engee.run(model_name);
results[1, 1] = stack(collect(result["I1_1"].value[:])[!,:value])';
results[1, 2] = stack(collect(result["I2_1"].value[:])[!,:value])';
results[1, 3] = stack(collect(result["V1_1"].value[:])[!,:value])';
results[1, 4] = stack(collect(result["V2_1"].value[:])[!,:value])';
sim_time = result["I1_1"].time;
显示结果:
# сторона измерения, 1 - ПС А, 2 -ПС Б
dir = 1;
gr()
p1 = plot(sim_time, results[1, dir], xlabel = "t, с", ylabel = "I, кА", label = ["a" "b" "c"])
p2 = plot(sim_time, results[1, dir + 2], xlabel = "t, с", ylabel = "U, кВ", label = ["a" "b" "c"])
plot(p1, p2, layout=(2,1))
经验15-16
检查轮胎外部短路的燃油泵的操作
测试条件:
-KZ位置:点K3,点K4。
-短路类型:K(1)A0.
-短路位置的瞬态电阻:0欧姆。
-平行线从两侧断开并接地。
-正常负载模式,短路前。
模型有经验编号15。 为了进行第16号实验,有必要将短路块移动到所需的点。
model_name = "B1_15_16"
model_name in [m.name for m in engee.get_all_models()] ? engee.open(model_name) : engee.load( "$(@__DIR__)/$(model_name).engee");
results = Matrix{Any}(undef, 1, 4)
result = engee.run(model_name);
results[1, 1] = stack(collect(result["I1_1"].value[:])[!,:value])';
results[1, 2] = stack(collect(result["I2_1"].value[:])[!,:value])';
results[1, 3] = stack(collect(result["V1_1"].value[:])[!,:value])';
results[1, 4] = stack(collect(result["V2_1"].value[:])[!,:value])';
sim_time = result["I1_1"].time;
显示结果:
# сторона измерения, 1 - ПС А, 2 -ПС Б
dir = 1;
gr()
p1 = plot(sim_time, results[1, dir], xlabel = "t, с", ylabel = "I, кА", label = ["a" "b" "c"])
p2 = plot(sim_time, results[1, dir + 2], xlabel = "t, с", ylabel = "U, кВ", label = ["a" "b" "c"])
plot(p1, p2, layout=(2,1))
经验17-20
检查DZ和TNNP的操作与一个成功的抽头的内部短路。
模式的序列:
-0-0.4s正常负载模式,短路前
-架空线路中间发生短路0.4s。
-0.5s三相断开线路,两侧有保护。
-1随着KZ的消失。 无震停顿(1.5秒)
-由于没有电压,从控制面板一侧抽头2秒
-PS b侧面的2.5s"盲"TAPV。
该模型定义了经验No.17。 对于其他实验,有必要改变短路块中的短路类型。
model_name = "B1_17_20"
model_name in [m.name for m in engee.get_all_models()] ? engee.open(model_name) : engee.load( "$(@__DIR__)/$(model_name).engee");
results = Matrix{Any}(undef, 1, 4)
result = engee.run(model_name);
results[1, 1] = stack(collect(result["I1_1"].value[:])[!,:value])';
results[1, 2] = stack(collect(result["I2_1"].value[:])[!,:value])';
results[1, 3] = stack(collect(result["V1_1"].value[:])[!,:value])';
results[1, 4] = stack(collect(result["V2_1"].value[:])[!,:value])';
sim_time = collect(result["I1_1"].time[:])[!,:time];
显示结果:
# сторона измерения, 1 - ПС А, 2 -ПС Б
dir = 1;
gr()
p1 = plot(sim_time, results[1, dir], xlabel = "t, с", ylabel = "I, кА", label = ["a" "b" "c"])
p2 = plot(sim_time, results[1, dir+2], xlabel = "t, с", ylabel = "U, кВ", label = ["a" "b" "c"])
plot(p1, p2, layout=(2,1))
实验21-24
用一个不成功的抽头的内部短路检查DZ和TNNP的操作。
模式的序列:
-0-0.4s正常负载模式,短路前。
-0.4s短路发生。
-0.5s三相断开线路,两侧有保护。
-从PS A(1.5s)的侧面抽头2s。
-2.1s线路从PS A的保护断开。
该模型定义了经验No.21。 对于其他实验,有必要改变短路块中的短路类型。
model_name = "B1_21_24"
model_name in [m.name for m in engee.get_all_models()] ? engee.open(model_name) : engee.load( "$(@__DIR__)/$(model_name).engee");
results = Matrix{Any}(undef, 1, 4)
result = engee.run(model_name);
results[1, 1] = stack(collect(result["I1_1"].value[:])[!,:value])';
results[1, 2] = stack(collect(result["I2_1"].value[:])[!,:value])';
results[1, 3] = stack(collect(result["V1_1"].value[:])[!,:value])';
results[1, 4] = stack(collect(result["V2_1"].value[:])[!,:value])';
sim_time = collect(result["I1_1"].time[:])[!,:time];
显示结果:
# сторона измерения, 1 - ПС А, 2 -ПС Б
dir = 1
gr()
p1 = plot(sim_time, results[1, dir], xlabel = "t, с", ylabel = "I, кА", label = ["a" "b" "c"])
p2 = plot(sim_time, results[1, dir+2], xlabel = "t, с", ylabel = "U, кВ", label = ["a" "b" "c"])
plot(p1, p2, layout=(2,1))
经验25
检查DZ和TNNP的操作与外部短路不成功的TAPV与TT饱和。
模式的序列:
-0-0.4s正常负载模式。
-0.4s短路发生。
-0.5秒后100毫秒断开损坏的线路。
-1.5s APV从PS A(1s)的一侧。
-损坏线路断开100毫秒后1.6秒。
model_name = "B1_25"
model_name in [m.name for m in engee.get_all_models()] ? engee.open(model_name) : engee.load( "$(@__DIR__)/$(model_name).engee");
results = Matrix{Any}(undef, 1, 4)
result = engee.run(model_name);
results[1, 1] = stack(collect(result["I1_1"].value[:])[!,:value])';
results[1, 2] = stack(collect(result["I2_1"].value[:])[!,:value])';
results[1, 3] = stack(collect(result["V1_1"].value[:])[!,:value])';
results[1, 4] = stack(collect(result["V2_1"].value[:])[!,:value])';
sim_time = collect(result["I1_1"].time[:])[!,:time];
显示结果:
# сторона измерения, 1 - ПС А, 2 -ПС Б
dir = 2
gr()
p1 = plot(sim_time, results[1, dir], xlabel = "t, с", ylabel = "I, кА", label = ["a" "b" "c"])
p2 = plot(sim_time, results[1, dir+2], xlabel = "t, с", ylabel = "U, кВ", label = ["a" "b" "c"])
plot(p1, p2, layout=(2,1))
实验26-29
在a-B线上以摆动中心摆动。
测试条件:
-摆动中心:测量PS a处的电阻落入DZ的第一区域。
-摇摆频率:1Hz和增加对摇摆锁的失败。
实验No.26设置在模型中。 为了进行其他实验,需要从"频率"子系统中更改"正弦函数"块的幅度和频率参数。 对于实验No.26,在PS B处的电动势摆动角度从设定模式设定为±180°。 从0到0.5秒,系统工作在稳态,从0.5秒,频率开始变化。 振幅应与摆动频率成比例地增大。
model_name = "B1_26_29"
model_name in [m.name for m in engee.get_all_models()] ? engee.open(model_name) : engee.load( "$(@__DIR__)/$(model_name).engee");
results = Matrix{Any}(undef, 1, 4)
result = engee.run(model_name);
results[1, 1] = stack(collect(result["I1_1"].value[:])[!,:value])';
results[1, 2] = stack(collect(result["I2_1"].value[:])[!,:value])';
results[1, 3] = stack(collect(result["Zab_1"].value[:])[!,:value]);
results[1, 4] = stack(collect(result["Zab_2"].value[:])[!,:value]);
sim_time = collect(result["I1_1"].time[:])[!,:time];
显示结果:
# сторона измерения, 1 - ПС А, 2 -ПС Б
dir = 1
gr()
p1 = plot(sim_time, results[1, dir], xlabel = "t, с", ylabel = "I, кА", label = ["a" "b" "c"])
p2 = plot(sim_time, results[1, dir+2], xlabel = "t, с", ylabel = "Zab, Ом")
plot(p1, p2, layout=(2,1))
实验30-37
与a-B线上的摆动中心摆动,并在保护区内短路。
测试条件:
-摆动中心:测量PS a处的电阻落入DZ的第一区域。
-摆动频率:2赫兹。
-KZ位置:PS B的40%。
-短路类型:K(3)ABC,K(2)BC,K(1,1)BC0,K(1)A0
-短路点的电阻为0和10欧姆。
模型有经验编号30。 对于其他实验,有必要改变短路的类型和短路块中的瞬态电阻。 对于实验No.30,在PS B处的电动势摆动角度从设定模式设定为±180°。 从0到0.5秒,系统工作在稳态,从0.5秒频率开始变化,在1.125秒时在点K7发生短路。
model_name = "B1_30_37"
model_name in [m.name for m in engee.get_all_models()] ? engee.open(model_name) : engee.load( "$(@__DIR__)/$(model_name).engee");
results = Matrix{Any}(undef, 1, 4)
result = engee.run(model_name);
results[1, 1] = stack(collect(result["I1_1"].value[:])[!,:value])';
results[1, 2] = stack(collect(result["I2_1"].value[:])[!,:value])';
results[1, 3] = stack(collect(result["Zab_1"].value[:])[!,:value]);
results[1, 4] = stack(collect(result["Zab_2"].value[:])[!,:value]);
sim_time = collect(result["I1_1"].time[:])[!,:time];
显示结果:
# номер опыта
n = 1;
# сторона измерения, 1 - ПС А, 2 -ПС Б
dir = 1
gr()
p1 = plot(sim_time, results[n, dir], xlabel = "t, с", ylabel = "I, кА", label = ["a" "b" "c"])
p2 = plot(sim_time, results[n, dir+2], xlabel = "t, с", ylabel = "Zab, Ом")
plot(p1, p2, layout=(2,1))
经验38
通过进入内部的平行线上的外部短路检查遥控器的操作。
测试条件:
-短路类型:外部到(3)ABC,变成内部。
-KZ的位置:在相邻平行线上的PS B处,在PS B处。
-线路负载:正常模式。
-短路发生角度:0°。
-短路点的瞬态电阻为0欧姆。
模式的序列是:
-0.4995s短路ABC在从PS B侧(点K4)的平行线上。
-0.5995s短路开关到受保护线路(点K2)。
model_name = "B1_38"
model_name in [m.name for m in engee.get_all_models()] ? engee.open(model_name) : engee.load( "$(@__DIR__)/$(model_name).engee");
results = Matrix{Any}(undef, 1, 4)
result = engee.run(model_name);
results[1, 1] = stack(collect(result["I1_1"].value[:])[!,:value])';
results[1, 2] = stack(collect(result["I2_1"].value[:])[!,:value])';
results[1, 3] = stack(collect(result["V1_1"].value[:])[!,:value])';
results[1, 4] = stack(collect(result["V2_1"].value[:])[!,:value])';
sim_time = collect(result["I1_1"].time[:])[!,:time];
显示结果:
# сторона измерения, 1 - ПС А, 2 -ПС Б
dir = 2
gr()
p1 = plot(sim_time, results[1, dir], xlabel = "t, с", ylabel = "I, кА", label = ["a" "b" "c"])
p2 = plot(sim_time, results[1, dir+2], xlabel = "t, с", ylabel = "U, кВ", label = ["a" "b" "c"])
plot(p1, p2, layout=(2,1))
经验39
空时检查架空线路支路上的变压器接通时燃油泵的运行情况。
测试条件:
-线路从两侧断开,不接地。
-分支上的变压器开关关闭。
模式的序列:
-0与架空线断开两侧。
-从PS a侧空闲时架空线路上的0.5s切换。
-1秒在空闲时打开变压器。
model_name = "B1_39"
model_name in [m.name for m in engee.get_all_models()] ? engee.open(model_name) : engee.load( "$(@__DIR__)/$(model_name).engee");
results = Matrix{Any}(undef, 1, 4)
result = engee.run(model_name);
results[1, 1] = stack(collect(result["I1_1"].value[:])[!,:value])';
results[1, 2] = stack(collect(result["I2_1"].value[:])[!,:value])';
results[1, 3] = stack(collect(result["V1_1"].value[:])[!,:value])';
results[1, 4] = stack(collect(result["V2_1"].value[:])[!,:value])'
sim_time = collect(result["I1_1"].time[:])[!,:time];
显示结果:
# сторона измерения, 1 - ПС А, 2 -ПС Б
dir = 1
gr()
p1 = plot(sim_time, results[1, dir], xlabel = "t, с", ylabel = "I, кА", label = ["a" "b" "c"])
p2 = plot(sim_time, results[1, dir+2], xlabel = "t, с", ylabel = "U, кВ", label = ["a" "b" "c"])
plot(p1, p2, layout=(2,1))
实验40-41
检查平行线的相互感应对遥控系统运行的影响。
测试条件:
-正常模式。
-KZ位置:点K4.
-短路类型:K(1)A0
-短路点的瞬态电阻为0欧姆。
-a)平行线断开接地。
-b)运行中的平行线。
经验#40在模型中设置。 为了进行第41号实验,有必要打开开关Q3和Q4,关闭接地刀的开关。
model_name = "B1_40_41"
model_name in [m.name for m in engee.get_all_models()] ? engee.open(model_name) : engee.load( "$(@__DIR__)/$(model_name).engee");
results = Matrix{Any}(undef, 1, 4)
result = engee.run(model_name);
results[1, 1] = stack(collect(result["I1_1"].value[:])[!,:value])';
results[1, 2] = stack(collect(result["I2_1"].value[:])[!,:value])';
results[1, 3] = stack(collect(result["Zab_1"].value[:])[!,:value]);
results[1, 4] = stack(collect(result["Zab_2"].value[:])[!,:value]);
sim_time = collect(result["I1_1"].time[:])[!,:time];
显示结果:
# сторона измерения, 1 - ПС А, 2 -ПС Б
dir = 1
gr()
p1 = plot(sim_time, results[1, dir], xlabel = "t, с", ylabel = "I, кА", label = ["a" "b" "c"])
p2 = plot(sim_time, results[1, dir+2], xlabel = "t, с", ylabel = "Zab, Ом", ylims = (0, 500))
plot(p1, p2, layout=(2,1))










