Skip to content

Commit

Permalink
dynamic initialization of VSC converter model OK. Dynamic initializat…
Browse files Browse the repository at this point in the history
…ion solve_network failed for VSC cnverter buses. Need t check conveter equivalent impedance.
  • Loading branch information
changgang committed Feb 17, 2022
1 parent 0b3f007 commit 61daf2f
Show file tree
Hide file tree
Showing 9 changed files with 142 additions and 223 deletions.
8 changes: 4 additions & 4 deletions bench/4_terminal_vsc_hvdc.vscraw
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
"Vsc-Project1 ", 4, 4, 5, 1, 200
3, "vsc1", 1, "Pac_control", 2, "Qac_control", -43.00, 0.0000, 0.00000, 0.00000, 50.000, 50.0000, 0.0052, 0.00120, 200.00, 200.00, 100.00, 200.00, 220.00, 200.00, 1.100, 0.0005, 0.020, 0.100, 2.000, 0.000, 0.0010, -43.00, 50.00, 550.00, -550.00, 150.00, -150.00, 220.00, 180.00, 0, 100.00
4, "vsc2", 1, "Pac_control", 3, "Vac_control", -343.00, 0.0000, 0.00000, 0.00000, 1.0100, 100.000, 0.0015, 0.00025, 200.00, 600.00, 100.00, 600.00, 220.00, 200.00, 1.100, 0.0005, 0.005, 0.100, 1.000, 0.000, 0.0010, -343.00, -80.00, 550.00, -550.00, 150.00, -150.00, 220.00, 180.00, 0, 100.00
14, "vsc3", 1, "Pac_control", 0, "Qac_control", 250.00, 0.0000, 0.00000, 0.00000, -80.00, 60.0000, 0.0010, 0.00020, 200.00, 600.00, 100.00, 600.00, 220.00, 200.00, 1.100, 0.0005, 0.005, 0.100, 1.000, 0.000, 0.0010, 250.00, -48.00, 550.00, -550.00, 150.00, -150.00, 220.00, 180.00, 0, 100.00
18, "vsc4", 1, "Vdc_control", 1, "Qac_control", 200.00, 0.0000, 0.00000, 0.00000, -23.00, 50.0000, 0.0052, 0.00220, 200.00, 300.00, 100.00, 300.00, 220.00, 200.00, 1.100, 0.0005, 0.020, 0.100, 2.000, 0.000, 0.0010, 135.00, -23.00, 550.00, -550.00, 150.00, -150.00, 220.00, 180.00, 0, 100.00
3, "vsc1", 1, "Pac_control", 2, "Qac_control", -43.00, 0.0000, 0.00000, 0.00000, 50.000, 50.0000, 0.0052, 0.00120, 200.00, 200.00, 100.00, 200.00, 110.00, 100.00, 1.100, 0.0005, 0.020, 0.100, 2.000, 0.000, 0.0010, -43.00, 50.00, 550.00, -550.00, 150.00, -150.00, 220.00, 180.00, 0, 100.00
4, "vsc2", 1, "Pac_control", 3, "Vac_control", -100.00, 0.0000, 0.00000, 0.00000, 1.0100, 100.000, 0.0015, 0.00025, 200.00, 600.00, 100.00, 600.00, 110.00, 100.00, 1.100, 0.0005, 0.005, 0.100, 1.000, 0.000, 0.0010, -343.00, -80.00, 550.00, -550.00, 150.00, -150.00, 220.00, 180.00, 0, 100.00
14, "vsc3", 1, "Pac_control", 0, "Qac_control", 100.00, 0.0000, 0.00000, 0.00000, -80.00, 60.0000, 0.0010, 0.00020, 200.00, 600.00, 100.00, 600.00, 110.00, 100.00, 1.100, 0.0005, 0.005, 0.100, 1.000, 0.000, 0.0010, 250.00, -48.00, 550.00, -550.00, 150.00, -150.00, 220.00, 180.00, 0, 100.00
18, "vsc4", 1, "Vdc_control", 1, "Qac_control", 200.00, 0.0000, 0.00000, 0.00000, -23.00, 50.0000, 0.0052, 0.00220, 200.00, 300.00, 100.00, 300.00, 110.00, 100.00, 1.100, 0.0005, 0.020, 0.100, 2.000, 0.000, 0.0010, 135.00, -23.00, 550.00, -550.00, 150.00, -150.00, 220.00, 180.00, 0, 100.00
1, 3, 200, 4, 4,'DC1 ', 0.0000, 4, 0, 0
2, 4, 198, 2, 2,'DC2 ', 0.0000, 2, 0, 0
3, 14, 199, 4, 4,'DC3 ', 0.0000, 4, 0, 0
Expand Down
16 changes: 8 additions & 8 deletions code/steps/STEPS.depend
Original file line number Diff line number Diff line change
Expand Up @@ -520,7 +520,7 @@
"header/toolkit/dynamic_simulator/dynamic_simulator.h"
<fstream>

1644915591 source:d:\steps\code\steps\main_dynamics_simulation.cpp
1645077987 source:d:\steps\code\steps\main_dynamics_simulation.cpp
<istream>
<iostream>
"header/power_system_database.h"
Expand Down Expand Up @@ -3803,7 +3803,7 @@
<iostream>
<cstdio>

1644920510 source:d:\steps\code\steps\source\device\vsc_hvdc.cpp
1645079044 source:d:\steps\code\steps\source\device\vsc_hvdc.cpp
"header/device/vsc_hvdc.h"
"header/basic/utility.h"
"header/basic/constants.h"
Expand All @@ -3814,7 +3814,7 @@
<cstdio>
<cmath>

1644920465 d:\steps\code\steps\header\device\vsc_hvdc.h
1645078466 d:\steps\code\steps\header\device\vsc_hvdc.h
"header/device/nonbus_device.h"
"header/device/vsc_hvdc_var.h"
"header/basic/device_id.h"
Expand Down Expand Up @@ -5737,7 +5737,7 @@
"header/toolkit/contingency_screener/contingency_screener.h"
"header/STEPS.h"

1644920926 source:d:\steps\code\steps\source\toolkit\dynamic_simulator\dynamic_simulator.cpp
1645077937 source:d:\steps\code\steps\source\toolkit\dynamic_simulator\dynamic_simulator.cpp
"header/toolkit/dynamic_simulator/dynamic_simulator.h"
"header/basic/constants.h"
"header/basic/utility.h"
Expand Down Expand Up @@ -6092,7 +6092,7 @@
<iostream>
<cstdio>

1644917983 d:\steps\code\steps\header\device\vsc_hvdc_var.h
1645066380 d:\steps\code\steps\header\device\vsc_hvdc_var.h
"header/basic/steps_enum.h"
<complex>
<string>
Expand Down Expand Up @@ -12330,14 +12330,14 @@
<ctime>
<chrono>

1644920765 source:d:\steps\code\steps\source\model\vsc_hvdc_model\vsc_hvdc_converter_model\vsc_hvdc_converter_model.cpp
1645079425 source:d:\steps\code\steps\source\model\vsc_hvdc_model\vsc_hvdc_converter_model\vsc_hvdc_converter_model.cpp
"header/model/vsc_hvdc_model/vsc_hvdc_converter_model/vsc_hvdc_converter_model.h"
"header/device/vsc_hvdc.h"
"header/basic/utility.h"
"header/STEPS.h"
<iostream>

1644920717 d:\steps\code\steps\header\model\vsc_hvdc_model\vsc_hvdc_converter_model\vsc_hvdc_converter_model.h
1645068602 d:\steps\code\steps\header\model\vsc_hvdc_model\vsc_hvdc_converter_model\vsc_hvdc_converter_model.h
"header/model/vsc_hvdc_model/vsc_hvdc_model.h"

1643800542 d:\steps\code\steps\header\model\vsc_hvdc_model\vsc_hvdc_project_model\vsc_hvdc_project_models.h
Expand All @@ -12359,7 +12359,7 @@
1643800465 source:d:\steps\code\steps\source\model\vsc_hvdc_model\vsc_hvdc_project_model\vsc_hvdc_project_model.cpp
"header/model/vsc_hvdc_model/vsc_hvdc_project_model/vsc_hvdc_project_model.h"

1644920894 source:d:\steps\code\steps\source\model\vsc_hvdc_model\vsc_hvdc_converter_model\vschvdcc0.cpp
1645079183 source:d:\steps\code\steps\source\model\vsc_hvdc_model\vsc_hvdc_converter_model\vschvdcc0.cpp
"header/model/vsc_hvdc_model/vsc_hvdc_converter_model/VSCHVDCC0.h"
"header/basic/utility.h"
"header/STEPS.h"
Expand Down
7 changes: 5 additions & 2 deletions code/steps/header/device/vsc_hvdc.h
Original file line number Diff line number Diff line change
Expand Up @@ -159,10 +159,11 @@ class VSC_HVDC : public NONBUS_DEVICE
double get_converter_transformer_off_nominal_turn_ratio(unsigned int index) const;
complex<double> get_converter_transformer_impedance_in_ohm(unsigned int index) const;
complex<double> get_converter_transformer_impedance_in_pu(unsigned int index) const;
complex<double> get_converter_transformer_impedance_in_pu_on_converter_base(unsigned int index) const;
complex<double> get_converter_commutating_impedance_in_ohm(unsigned int index) const;
complex<double> get_converter_commutating_impedance_in_pu(unsigned int index) const;
complex<double> get_converter_commutating_impedance_in_pu_on_converter_base(unsigned int index) const;
complex<double> get_converter_filter_admittance_in_siemens(unsigned int index) const;
complex<double> get_converter_filter_admittance_in_pu(unsigned int index) const;
complex<double> get_converter_filter_admittance_in_pu_on_converter_base(unsigned int index) const;

double get_converter_P_to_AC_bus_in_MW(unsigned int index) const;
double get_converter_Q_to_AC_bus_in_MVar(unsigned int index) const;
Expand Down Expand Up @@ -308,6 +309,8 @@ class VSC_HVDC : public NONBUS_DEVICE
double solve_Pdc_with_dc_active_power_voltage_droop_control(unsigned int converter_index) const;
double solve_Pdc_with_dc_current_voltage_droop_control(unsigned int converter_index) const;

double get_dc_power_from_converter_to_dc_network_with_P_and_Q_to_AC_bus_in_MVA(unsigned int converter_index, double P, double Q) const;

double solve_converter_Pac_with_Pdc(unsigned int converter_index);
double calculate_converter_Pdc_with_Pac(unsigned int converter_index, double Pac, double Qac);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ class VSC_HVDC_CONVERTER_MODEL: public VSC_HVDC_MODEL
double get_converter_transformer_ac_side_base_voltage_in_kV() const;
double get_converter_transformer_capacity_in_MVA() const;

complex<double> get_converter_current_from_converter_to_ac_bus_in_xy_axis_in_MVA() const;
complex<double> get_converter_current_from_converter_to_ac_bus_in_xy_axis_in_kA() const;
complex<double> get_converter_current_from_converter_to_ac_bus_in_xy_axis_in_pu_based_on_converter_bases() const;

public:
Expand Down
6 changes: 3 additions & 3 deletions code/steps/main_dynamics_simulation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -44,13 +44,13 @@ int main()

default_toolkit.set_dynamic_simulation_time_step_in_s(0.01);
simulator.set_allowed_max_power_imbalance_in_MVA(0.01);
simulator.set_max_DAE_iteration(200);
simulator.set_max_network_iteration(1);
simulator.set_max_DAE_iteration(10);
simulator.set_max_network_iteration(50);
simulator.set_iteration_accelerator(0.8);

simulator.prepare_vsc_hvdc_related_meters();
simulator.set_output_file("IEEE39_vsc");
simulator.show_dynamic_simulator_configuration();
//simulator.show_dynamic_simulator_configuration();


//simulator.set_output_file("test_log/IEEE_39_bus_model_GENROU_SEXS_IEEEG1_load_scale_down_at_bus_3_by_10%");
Expand Down
Loading

0 comments on commit 61daf2f

Please sign in to comment.