Base classes for renewable energy electrical control models
This package contains the base class of the three different electrical controllers from the sub-package (BaseREECA, BaseREECB, BaseREECC), as well as other logic components and specific PI controllers for the WECC renewable components.
Extends from Modelica.Icons.BasesPackage (Icon for packages containing base classes).
| Name | Description |
|---|---|
| Base renewable energy electrical controller model A | |
| Base renewable energy electrical controller model B | |
| Base renewable energy electrical controller model C | |
| Current limit logic for REECA | |
| Current Limit Logic for REECB | |
| Current limit logic for REECC | |
| State of charge logic for REECC | |
| PI with variable limiter controller for WECC electrical controllers | |
| PI with no variable limiter controller for WECC electrical controllers |
OpenIPSL.Electrical.Renewables.PSSE.ElectricalController.BaseClasses.BaseREECABase renewable energy electrical controller model A
The BaseREECA model is the base class that is extended to create the REECA1 component.
| Name | Description |
|---|---|
| Control | |
| pfflag | Constant output value |
| vflag | Constant output value |
| qflag | Constant output value |
| pqflag | Constant output value |
| pflag | Constant output value |
| Name | Description |
|---|---|
| Vt | Terminal Voltage Magnitude |
| Pe | Active Power Generated |
| Qext | Reactive Power Reference |
| Qgen | Reactive Power Generated |
| Pref | Active Power Reference |
| ip0 | Initial Real Current |
| iq0 | Initial Imaginary Current |
| Iqcmd | Reactice Command Current |
| Ipcmd | Real Command Current |
| Wg | Rotational Speed Generator |
| v0 | Initial Terminal Voltage Magnitude |
| p0 | Initial Active Power |
| q0 | Initial Reactive Power |
OpenIPSL.Electrical.Renewables.PSSE.ElectricalController.BaseClasses.BaseREECBBase renewable energy electrical controller model B
The BaseREECB model is the base class that is extended to create the REECB1 component.
| Name | Description |
|---|---|
| Control | |
| pfflag | Constant output value |
| vflag | Constant output value |
| qflag | Constant output value |
| pqflag | Constant output value |
| Name | Description |
|---|---|
| Vt | Terminal Voltage Magnitude |
| Pe | Electrical Power Generation |
| Qext | Reactive Power Reference |
| Qgen | Reactive Power Generation |
| Pref | Active Power Reference |
| ip0 | Initial Real Current |
| iq0 | Initial Reactive Current |
| Iqcmd | Command Reactive Current |
| Ipcmd | Command Active Current |
| v0 | Initial Terminal Voltage Magnitude |
| p0 | Initial Active Power |
| q0 | Initial Reactive Power |
OpenIPSL.Electrical.Renewables.PSSE.ElectricalController.BaseClasses.BaseREECCBase renewable energy electrical controller model C
The BaseREECC model is the base class that is extended to create the REECCU1 component.
| Name | Description |
|---|---|
| Control | |
| pfflag | Constant output value |
| vflag | Constant output value |
| qflag | Constant output value |
| pqflag | Constant output value |
| Name | Description |
|---|---|
| ip0 | Initial Active Current |
| iq0 | Initial Reactive Current |
| Iqcmd | Reactive Command Current |
| Ipcmd | Active Command Current |
| v0 | Initial Terminal Voltage Magnitude |
| p0 | Initial Active Power |
| q0 | Initial Reactive Power |
| Vt | Terminal Voltage Magnitude |
| Pe | Electrical Power |
| Qext | Reactive Power Reference |
| Qgen | Reactive Power Generated |
| Pref | Active Power Reference |
| Paux | Auxiliary Signal for Active Power |
OpenIPSL.Electrical.Renewables.PSSE.ElectricalController.BaseClasses.CurrentLimitLogicREECACurrent limit logic for REECA
Ipre = sqrt(Imax) - sqrt(abs(Ipcmd));
if Ipre is less than 0:
Ipost = 0;
else:
Ipost = sqrt(Ipre);
if Pqflag = true:
Ipmax = min(VDL2_out, Imax);
Ipmin = 0;
Iqmax = min(Ipost, VDL1_out);
Iqmin = -Iqmax;
end
if Pqflag = false:
Ipmax = min(Ipost, VDL2_out);
Ipmin = 0;
Iqmax = min(VDL1_out, Imax);
Iqmin = -Iqmax;
end
The modelling of the current limit logic for the REECA electrical controller is based on the following references:
| Name | Description |
|---|---|
| start_ii | Starting current value from Iqcmd (comes from power flow simulation) [1] |
| start_ir | Starting current value from Ipcmd (comes from power flow simulation) [1] |
| Imax | Maximum limit on total converter current [1] |
| Name | Description |
|---|---|
| VDL1_out | |
| pqflag | |
| VDL2_out | |
| Iqcmd | |
| Ipcmd | |
| Iqmax | |
| Iqmin | |
| Ipmax | |
| Ipmin |
OpenIPSL.Electrical.Renewables.PSSE.ElectricalController.BaseClasses.CurrentLimitLogicREECBCurrent Limit Logic for REECB
if Pqflag = true:
Ipmax = Imax;
Ipmin = 0;
Iqmax = sqrt(Imax^2 - Ipcmd^2);
Iqmin = -Iqmax;
end
if Pqflag = false:
Ipmax = sqrt(Imax^2 - Iqcmd^2);
Ipmin = 0;
Iqmax = Imax;
Iqmin = -Iqmax;
end
The modelling of the current limit logic for the REECB electrical controller is based on the following references:
| Name | Description |
|---|---|
| start_ii | Starting current value from Iqcmd (comes from power flow simulation) [1] |
| start_ir | Starting current value from Ipcmd (comes from power flow simulation) [1] |
| Imax | Maximum limit on total converter current [1] |
| Name | Description |
|---|---|
| Iqcmd | |
| Ipcmd | |
| Iqmin | |
| Iqmax | |
| Ipmin | |
| Ipmax | |
| Pqflag | Priority to reactive current (false) or active current (true). |
OpenIPSL.Electrical.Renewables.PSSE.ElectricalController.BaseClasses.CurrentLimitLogicREECCCurrent limit logic for REECC
if Pqflag = true:
Ipmax = min(VDL2_out, Imax);
Ipmin = -Ipmax;
Iqmax = min(VDL1_out, sqrt(Imax^2 Ipcmd^2);
Iqmin = -Iqmax;
end
if Pqflag = false:
Ipmax = min(VDL2_out, sqrt(Imax^2 - Iqcmd^2));
Ipmin = -Ipmax;
Iqmax = min(VDL1_out, Imax);
Iqmin = -Iqmax;
end
The modelling of the current limit logic for the REECB electrical controller is based on the following references:
| Name | Description |
|---|---|
| start_ii | Starting current value from Iqcmd (comes from power flow simulation) [1] |
| start_ir | Starting current value from Ipcmd (comes from power flow simulation) [1] |
| Imax | Maximum limit on total converter current [1] |
| Name | Description |
|---|---|
| VDL1_out | |
| pqflag | |
| VDL2_out | |
| Iqcmd | |
| Ipcmd | |
| Iqmax | |
| Iqmin | |
| Ipmax | |
| Ipmin |
OpenIPSL.Electrical.Renewables.PSSE.ElectricalController.BaseClasses.StateOfChargeLogicState of charge logic for REECC
If SOC greater of equal to SOCmax:
Ipmin = 0;
else:
Ipmax = 0;
end
The modelling of the state of charge for the REECC electrical controller is based on the following references:
| Name | Description |
|---|---|
| SOCmin | Minimum allowable state of charge [1] |
| SOCmax | Maximum allowable state of charge [1] |
| Name | Description |
|---|---|
| SOC | State of Charge of the Battery |
| ipmax_SOC | Maximum Battery Charge |
| ipmin_SOC | Minimum Battery Charge |
OpenIPSL.Electrical.Renewables.PSSE.ElectricalController.BaseClasses.PIwithVariableLimiterPI with variable limiter controller for WECC electrical controllers
Specific PI with variable limiter component for the WECC-based renewable energy controller models.
The modelling of such component is based, mainly, on the following reference:
| Name | Description |
|---|---|
| K_P | Voltage regulator proportional gain |
| K_I | Voltage regulator integral gain |
| y_start | Starting output value for the integrator |
| Name | Description |
|---|---|
| u | |
| y | |
| limit1 | Connector of Real input signal used as maximum of input u |
| limit2 | Connector of Real input signal used as minimum of input u |
| voltage_dip | Connector of first Boolean input signal |
OpenIPSL.Electrical.Renewables.PSSE.ElectricalController.BaseClasses.PIwithNoVariableLimiterPI with no variable limiter controller for WECC electrical controllers
Specific PI with no variable limiter component for the WECC-based renewable energy controller models.
The modelling of such component is based, mainly, on the following reference:
| Name | Description |
|---|---|
| K_P | Voltage regulator proportional gain |
| K_I | Voltage regulator integral gain |
| V_RMAX | Maximum regulator output [1] |
| V_RMIN | Minimum regulator output [1] |
| y_start | Starting output value for the integrator |
| Name | Description |
|---|---|
| u | |
| y | |
| voltage_dip | Connector of first Boolean input signal |