You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/user_manual/calculations.md
+10-4
Original file line number
Diff line number
Diff line change
@@ -626,7 +626,7 @@ Power flow calculations that take the behavior of these regulators into account
626
626
627
627
##### Control logic for power flow with automatic tap changing
628
628
629
-
The following control logic is used:
629
+
We provide the control logic used for tap changing. For simplicity, we demonstrate the case where the regulator control side and the transformer tap side are at different sides.
630
630
631
631
- Regulated transformers are ranked according to how close they are to {hoverxreftooltip}`sources <user_manual/components:source>` in terms of the amount of regulated transformers inbetween.
632
632
- Transformers are regulated in order according to their ranks.
@@ -652,6 +652,7 @@ The following control logic is used:
652
652
- Exploit the neighbourhood of all transformers (see {hoverxreftooltip}`user_manual/calculations:Initialization and exploitation of regulated transformers`)
653
653
- Re-run the iteration in the above if any of the tap positions changed by the exploitation.
654
654
655
+
In the case where the control side of the regulator and the tap side of the transformer are at the same side, the control logic of taps will be reverted (see `user_manual/calculations:Initialization and exploitation of regulated transformers`).
655
656
The exploitation of the neighbourhood ensures that the actual optimum is not accidentally missed due to feedback mechanisms in the grid.
656
657
657
658
```{note}
@@ -667,7 +668,6 @@ This assumption is reflected in the requirements mentioned in {hoverxreftooltip}
667
668
```
668
669
669
670
```{note}
670
-
The control logic assumes that the (compensated) control voltage decreases when the tap position increases.
671
671
If the line drop compensation impedance is high, and the control side has generator-like behavior, then this assumption does not hold, and the calculation may diverge.
672
672
Hence, this assumption is reflected in the requirements mentioned in {hoverxreftooltip}`user_manual/components:Line drop compensation`.
673
673
```
@@ -679,10 +679,16 @@ Internally, to achieve an optimal regulated tap position, the control algorithm
679
679
| strategy | initial tap position | exploitation direction | search method | description |
| {py:class}`TapChangingStrategy.any_valid_tap <power_grid_model.enum.TapChangingStrategy.any_valid_tap>`| current tap position | no exploitation | linear search | Find any tap position that gives a control side voltage within the `u_band`|
682
-
| {py:class}`TapChangingStrategy.min_voltage_tap <power_grid_model.enum.TapChangingStrategy.min_voltage_tap>`|`tap_max`| step up | binary search | Find the tap position that gives the lowest control side voltage within the `u_band`|
683
-
| {py:class}`TapChangingStrategy.max_voltage_tap <power_grid_model.enum.TapChangingStrategy.max_voltage_tap>`|`tap_min`| step down | binary search | Find the tap position that gives the highest control side voltage within the `u_band`|
682
+
| {py:class}`TapChangingStrategy.min_voltage_tap <power_grid_model.enum.TapChangingStrategy.min_voltage_tap>`|voltage min tap| voltage down| binary search | Find the tap position that gives the lowest control side voltage within the `u_band`|
683
+
| {py:class}`TapChangingStrategy.max_voltage_tap <power_grid_model.enum.TapChangingStrategy.max_voltage_tap>`|voltage min tap| voltage up| binary search | Find the tap position that gives the highest control side voltage within the `u_band`|
684
684
| {py:class}`TapChangingStrategy.fast_any_tap <power_grid_model.enum.TapChangingStrategy.fast_any_tap>`| current tap position | no exploitation | binary search | Find any tap position that gives a control side voltage within the `u_band`|
685
685
686
+
| transformer configuration | voltage min tap | voltage min tap | voltage down | voltage up |
| regulator control side != transformer tap side |`tap_max`|`tap_min`| step up | step down |
689
+
| regulator control side == transformer tap side |`tap_min`|`tap_max`| step down | step up |
690
+
691
+
686
692
##### Search methods used for tap changing optimization
687
693
688
694
Given the discrete nature of the finite tap ranges, we use the following search methods to find the next tap position along the exploitation direction.
|`control_side`| {py:class}`BranchSide <power_grid_model.enum.BranchSide>` if the regulated object is a {hoverxreftooltip}`user_manual/components:transformer` and {py:class}`Branch3Side <power_grid_model.enum.Branch3Side>` if it the regulated object is a {hoverxreftooltip}`user_manual/components:Three-Winding Transformer`| - | the controlled side of the transformer |✨ only for power flow |❌||
810
-
|`u_set`|`double`| volt (V) | the voltage setpoint (at the center of the band) |✨ only for power flow |✔|`>= 0`|
811
-
|`u_band`|`double`| volt (V) | the width of the voltage band ($=2*\left(\Delta U\right)_{\text{acceptable}}$) |✨ only for power flow |✔|`> 0` (see below) |
812
-
|`line_drop_compensation_r`|`double`| ohm (Ω) | compensation for voltage drop due to resistance during transport (see [below](#line-drop-compensation)) |❌ default `0.0`|✔|`>= 0`|
813
-
|`line_drop_compensation_x`|`double`| ohm (Ω) | compensation for voltage drop due to reactance during transport (see [below](#line-drop-compensation)) |❌ default `0.0`|✔|`>= 0`|
807
+
| name | data type | unit | description | required | update |valid values|
|`control_side`| {py:class}`BranchSide <power_grid_model.enum.BranchSide>` if the regulated object is a {hoverxreftooltip}`user_manual/components:transformer` and {py:class}`Branch3Side <power_grid_model.enum.Branch3Side>` if it the regulated object is a {hoverxreftooltip}`user_manual/components:Three-Winding Transformer`| - | the controlled side of the transformer |✨ only for power flow |❌|`control_side` should be the relatively further side to a source|
810
+
|`u_set`|`double`| volt (V) | the voltage setpoint (at the center of the band) |✨ only for power flow |✔|`>= 0`|
811
+
|`u_band`|`double`| volt (V) | the width of the voltage band ($=2*\left(\Delta U\right)_{\text{acceptable}}$) |✨ only for power flow |✔|`> 0` (see below)|
812
+
|`line_drop_compensation_r`|`double`| ohm (Ω) | compensation for voltage drop due to resistance during transport (see [below](#line-drop-compensation)) |❌ default `0.0`|✔|`>= 0`|
813
+
|`line_drop_compensation_x`|`double`| ohm (Ω) | compensation for voltage drop due to reactance during transport (see [below](#line-drop-compensation)) |❌ default `0.0`|✔|`>= 0`|
814
814
815
815
The following additional requirements exist on the input parameters.
816
816
817
-
- The automatic tap changer algorithm currently only supports tap changers connected at HV side of the transformer. Hence, the rated voltage of the node at the `tap_side` must be greater than or equal to the rated voltage of the node at the other side of transformer.
818
817
- Depending on the resultant voltage being transformed, the voltage band must be sufficiently large: At zero line drop compensation if the expected resultant voltages are in the proximity of the rated transformer voltages, it is recommended to have the $u_{band} >= \frac{u_2}{1+ u_1 / \text{tap}_{\text{size}}}$
819
818
- The line drop compensation is small, in the sense that its product with the typical current through the transformer is much smaller (in absolute value) than the smallest change in voltage due to a change in tap position.
819
+
- The `control_side` of a transformer regulator should be on the relatively further side to a source in the connected grid.
820
820
821
821
These requirements make sure no edge cases with undefined behavior are encountered. Typical real-world power grids already satisfy these requirements and they should therefore not cause any problems.
0 commit comments