Class FeneconCommercialBatteryImpl
- java.lang.Object
-
- io.openems.edge.common.component.AbstractOpenemsComponent
-
- io.openems.edge.bridge.modbus.api.AbstractOpenemsModbusComponent
-
- io.openems.edge.battery.fenecon.commercial.FeneconCommercialBatteryImpl
-
- All Implemented Interfaces:
Battery
,FeneconCommercialBattery
,ModbusComponent
,OpenemsComponent
,ModbusSlave
,StartStoppable
,org.osgi.service.event.EventHandler
public class FeneconCommercialBatteryImpl extends AbstractOpenemsModbusComponent implements FeneconCommercialBattery, Battery, ModbusComponent, OpenemsComponent, org.osgi.service.event.EventHandler, ModbusSlave, StartStoppable
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class io.openems.edge.bridge.modbus.api.AbstractOpenemsModbusComponent
AbstractOpenemsModbusComponent.BitConverter, AbstractOpenemsModbusComponent.ChannelMapper<T extends AbstractModbusElement<?>>
-
Nested classes/interfaces inherited from interface io.openems.edge.battery.api.Battery
Battery.ChannelId
-
Nested classes/interfaces inherited from interface io.openems.edge.battery.fenecon.commercial.FeneconCommercialBattery
FeneconCommercialBattery.ChannelId
-
Nested classes/interfaces inherited from interface io.openems.edge.bridge.modbus.api.ModbusComponent
ModbusComponent.ChannelId
-
Nested classes/interfaces inherited from interface io.openems.edge.common.component.OpenemsComponent
OpenemsComponent.ChannelId
-
Nested classes/interfaces inherited from interface io.openems.edge.common.startstop.StartStoppable
StartStoppable.ChannelId
-
-
Field Summary
Fields Modifier and Type Field Description protected static ElementToChannelConverter
SERIAL_NUMBER_CONVERTER
Generates serial number based on specific bitwise operation.protected static java.util.function.Consumer<Channel<java.lang.Integer>>
UPDATE_NUMBER_OF_TOWERS_AND_MODULES_AND_CELLS_CALLBACK
Callback for Channels to recalculate the number of towers and modules and cells.protected static java.util.function.Consumer<Channel<java.lang.Integer>>
UPDATE_SOC
-
Constructor Summary
Constructors Constructor Description FeneconCommercialBatteryImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
deactivate()
Handles @Deactivate of implementations.java.lang.String
debugLog()
Gets some output that is suitable for a continuous Debug log.protected ModbusProtocol
defineModbusProtocol()
Defines the Modbus protocol.ModbusSlaveTable
getModbusSlaveTable(AccessMode accessMode)
Gets the Modbus-Slave-Table for this OpenEMS-Component.StartStop
getStartStopTarget()
Gets the target Start/Stop mode from config or StartStop-Channel.void
handleEvent(org.osgi.service.event.Event event)
protected void
setModbus(BridgeModbus modbus)
Set the Modbus bridge.void
setStartStop(StartStop value)
Starts or stops the device or service represented by this OpenEMS Component.-
Methods inherited from class io.openems.edge.bridge.modbus.api.AbstractOpenemsModbusComponent
activate, activate, activate, getBridgeModbus, getModbusProtocol, getUnitId, m, m, m, m, m, m, modified, modified, unsetModbus
-
Methods inherited from class io.openems.edge.common.component.AbstractOpenemsComponent
_channel, addChannel, addChannels, addChannels, alias, channels, getComponentContext, id, isEnabled, logDebug, logError, logInfo, logWarn, removeChannel
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.openems.edge.battery.api.Battery
_setCapacity, _setCapacity, _setChargeMaxCurrent, _setChargeMaxCurrent, _setChargeMaxVoltage, _setChargeMaxVoltage, _setCurrent, _setCurrent, _setDischargeMaxCurrent, _setDischargeMaxCurrent, _setDischargeMinVoltage, _setDischargeMinVoltage, _setMaxCellTemperature, _setMaxCellTemperature, _setMaxCellVoltage, _setMaxCellVoltage, _setMinCellTemperature, _setMinCellTemperature, _setMinCellVoltage, _setMinCellVoltage, _setSoc, _setSoc, _setSoh, _setSoh, _setVoltage, _setVoltage, getCapacity, getCapacityChannel, getChargeMaxCurrent, getChargeMaxCurrentChannel, getChargeMaxVoltage, getChargeMaxVoltageChannel, getCurrent, getCurrentChannel, getDischargeMaxCurrent, getDischargeMaxCurrentChannel, getDischargeMinVoltage, getDischargeMinVoltageChannel, getMaxCellTemperature, getMaxCellTemperatureChannel, getMaxCellVoltage, getMaxCellVoltageChannel, getMinCellTemperature, getMinCellTemperatureChannel, getMinCellVoltage, getMinCellVoltageChannel, getSoc, getSocChannel, getSoh, getSohChannel, getVoltage, getVoltageChannel
-
Methods inherited from interface io.openems.edge.battery.fenecon.commercial.FeneconCommercialBattery
_setMasterBmsStarted, _setMaxStartAttempts, _setMaxStopAttempts, getMasterStarted, getMasterStartedChannel, getMaxStartAttempts, getMaxStartAttemptsChannel, getMaxStopAttempts, getMaxStopAttemptsChannel
-
Methods inherited from interface io.openems.edge.bridge.modbus.api.ModbusComponent
_setModbusCommunicationFailed, getModbusCommunicationFailed, getModbusCommunicationFailedChannel
-
Methods inherited from interface io.openems.edge.common.component.OpenemsComponent
_channel, _getChannelAs, alias, channel, channel, channels, getComponentContext, getState, getStateChannel, hasFaults, id, isEnabled, serviceFactoryPid, servicePid
-
Methods inherited from interface io.openems.edge.common.startstop.StartStoppable
_setStartStop, getStartStop, getStartStopChannel, isStarted, isStopped, start, stop
-
-
-
-
Field Detail
-
SERIAL_NUMBER_CONVERTER
protected static final ElementToChannelConverter SERIAL_NUMBER_CONVERTER
Generates serial number based on specific bitwise operation. Helps to build Master, Sub-master and Modules Serial Numbers.
-
UPDATE_NUMBER_OF_TOWERS_AND_MODULES_AND_CELLS_CALLBACK
protected static final java.util.function.Consumer<Channel<java.lang.Integer>> UPDATE_NUMBER_OF_TOWERS_AND_MODULES_AND_CELLS_CALLBACK
Callback for Channels to recalculate the number of towers and modules and cells. Unfortunately the battery may report too small wrong values in the beginning, so we need to recalculate on every change.
-
UPDATE_SOC
protected static final java.util.function.Consumer<Channel<java.lang.Integer>> UPDATE_SOC
-
-
Method Detail
-
setModbus
protected void setModbus(BridgeModbus modbus)
Description copied from class:AbstractOpenemsModbusComponent
Set the Modbus bridge. Should be called by @Reference- Overrides:
setModbus
in classAbstractOpenemsModbusComponent
- Parameters:
modbus
- the BridgeModbus Reference
-
deactivate
protected void deactivate()
Description copied from class:AbstractOpenemsComponent
Handles @Deactivate of implementations. Prints log output.- Overrides:
deactivate
in classAbstractOpenemsModbusComponent
-
defineModbusProtocol
protected ModbusProtocol defineModbusProtocol() throws OpenemsException
Description copied from class:AbstractOpenemsModbusComponent
Defines the Modbus protocol.- Specified by:
defineModbusProtocol
in classAbstractOpenemsModbusComponent
- Returns:
- the ModbusProtocol
- Throws:
OpenemsException
- on error
-
debugLog
public java.lang.String debugLog()
Description copied from interface:OpenemsComponent
Gets some output that is suitable for a continuous Debug log. Returns 'null' by default which causes no output.- Specified by:
debugLog
in interfaceOpenemsComponent
- Returns:
- the debug log output
-
getModbusSlaveTable
public ModbusSlaveTable getModbusSlaveTable(AccessMode accessMode)
Description copied from interface:ModbusSlave
Gets the Modbus-Slave-Table for this OpenEMS-Component.- Specified by:
getModbusSlaveTable
in interfaceModbusSlave
- Parameters:
accessMode
- filters the Modbus-Records that should be shown- Returns:
- the Modbus-Slave-Table
-
handleEvent
public void handleEvent(org.osgi.service.event.Event event)
- Specified by:
handleEvent
in interfaceorg.osgi.service.event.EventHandler
-
setStartStop
public void setStartStop(StartStop value)
Description copied from interface:StartStoppable
Starts or stops the device or service represented by this OpenEMS Component.- Specified by:
setStartStop
in interfaceStartStoppable
- Parameters:
value
- targetStartStop
state
-
getStartStopTarget
public StartStop getStartStopTarget()
Description copied from interface:FeneconCommercialBattery
Gets the target Start/Stop mode from config or StartStop-Channel.- Specified by:
getStartStopTarget
in interfaceFeneconCommercialBattery
- Returns:
StartStop
-
-