Class ChargeMaxCurrentHandler.Builder
java.lang.Object
io.openems.edge.battery.protection.currenthandler.AbstractMaxCurrentHandler.Builder<ChargeMaxCurrentHandler.Builder>
io.openems.edge.battery.protection.currenthandler.ChargeMaxCurrentHandler.Builder
- Enclosing class:
ChargeMaxCurrentHandler
public static class ChargeMaxCurrentHandler.Builder
extends AbstractMaxCurrentHandler.Builder<ChargeMaxCurrentHandler.Builder>
-
Field Summary
Fields inherited from class io.openems.edge.battery.protection.currenthandler.AbstractMaxCurrentHandler.Builder
clockProvider, initialBmsMaxEverCurrent, maxIncreasePerSecond, temperatureToPercent, voltageToPercent
-
Constructor Summary
ModifierConstructorDescriptionprotected
Builder
(ClockProvider clockProvider, int initialBmsMaxEverAllowedChargeCurrent) Creates aChargeMaxCurrentHandler.Builder
forChargeMaxCurrentHandler
. -
Method Summary
Modifier and TypeMethodDescriptionbuild()
Builds theChargeMaxCurrentHandler
instance.protected ChargeMaxCurrentHandler.Builder
self()
setForceDischarge
(int startDischargeAboveCellVoltage, int dischargeAboveCellVoltage, int blockChargeAboveCellVoltage) Configure 'Force Discharge' parameters.setForceDischarge
(ForceDischarge.Params forceDischargeParams) Sets theForceDischarge.Params
parameters.Methods inherited from class io.openems.edge.battery.protection.currenthandler.AbstractMaxCurrentHandler.Builder
setMaxIncreasePerSecond, setTemperatureToPercent, setVoltageToPercent
-
Constructor Details
-
Builder
Creates aChargeMaxCurrentHandler.Builder
forChargeMaxCurrentHandler
.- Parameters:
clockProvider
- aClockProvider
, mainly for JUnit testsinitialBmsMaxEverAllowedChargeCurrent
- the (estimated) maximum allowed charge current. This is used as a reference for percentage values. If during runtime a higher value is provided, that one is taken from then on.
-
-
Method Details
-
setForceDischarge
public ChargeMaxCurrentHandler.Builder setForceDischarge(int startDischargeAboveCellVoltage, int dischargeAboveCellVoltage, int blockChargeAboveCellVoltage) Configure 'Force Discharge' parameters.- Parameters:
startDischargeAboveCellVoltage
- start force discharge if maxCellVoltage is above this value, e.g. 3660dischargeAboveCellVoltage
- force discharge as long as maxCellVoltage is above this value, e.g. 3640blockChargeAboveCellVoltage
- after 'force discharge', block charging as long as maxCellVoltage is above this value, e.g. 3450- Returns:
ChargeMaxCurrentHandler.Builder
-
setForceDischarge
public ChargeMaxCurrentHandler.Builder setForceDischarge(ForceDischarge.Params forceDischargeParams) Sets theForceDischarge.Params
parameters.- Parameters:
forceDischargeParams
- theForceDischarge.Params
- Returns:
- a
ChargeMaxCurrentHandler.Builder
-
build
Builds theChargeMaxCurrentHandler
instance.- Returns:
- a
ChargeMaxCurrentHandler
-
self
- Specified by:
self
in classAbstractMaxCurrentHandler.Builder<ChargeMaxCurrentHandler.Builder>
-