This article follows the device integration introduction article. Please check that article first.
The hybrid inverter (comprising the photovoltaic inverter, energy meter, battery pack, Battery Management System [BMS], and Power Conversion System [PCS]) must support communication via the Modbus protocol. The manufacturer must provide a complete register map that allow both monitoring of system parameters and control of operational states. The table below shows the typical registers of a BESS system.
| Name | Description | Requirement Level | Data Type / Format | Unit | Read/Write Type |
| Battery Active Power | Measured DC active power of the battery system (positive = discharge, negative = charge) | Mandatory | INT16 / UINT16 | kW | Read-only (Input Register) |
| Battery Voltage | Measured DC bus voltage of the battery system | Optional | INT16 / UINT16 | V | Read-only (Input Register) |
| Battery Current | Measured DC current (positive = discharge, negative = charge) | Optional | INT16 | A | Read-only (Input Register) |
| Battery State of Charge (SOC) | Remaining battery capacity as percentage of nominal capacity | Mandatory | UINT16 | % | Read-only (Input Register) |
| Battery Capacity | Total capacity of the battery | Optional | INT16 / UINT16 | kWh | Read-only (Input Register) |
| Battery State of Health (SOH) | Long-term battery condition indicator | Optional | UINT16 | % | Read-only (Input Register) |
| Battery Power Setpoint | Requested active power of the battery module = command to charge/discharge (positive = discharge, negative = charge) | Mandatory | INT16 | kW | Read/Write (Holding Register) |
| Battery Temperature (Cell Avg.) | Average cell temperature | Optional | INT16 | °C | Read-only (Input Register) |
| Battery Min SOC | Minimal recommended state of charge | Optional | INT16 | % | Read-only (Input Register) |
| Battery Max SOC | Maximal recommended state of charge | Optional | INT16 | % | Read-only (Input Register) |
| Battery Max charge power | Maximum charging power on AC and/or DC site | Optional | INT16 | % | Read-only (Input Register) |
| Battery Max discharge power | Maximum discharging power on AC and/or DC site | Optional | INT16 | % | Read-only (Input Register) |
| Battery Enable / Disable Command | Remote command to enable or disable the BESS | Mandatory | BOOL (coil) | — | Write (Coil) |
| PV Active Power | Measured DC active power of the photovoltaic (PV) system | Mandatory | INT16 / UINT16 | kW | Read-only (Input Register) |
| PV Voltage | Measured DC bus voltage of the PV system | Optional | INT16 / UINT16 | V | Read-only (Input Register) |
| PV Current | Measured DC current | Optional | INT16 | A | Read-only (Input Register) |
| PV Max Power Setpoint | Maximal PV active power = command of max power of the PV inverter | Desired | INT16 | kW | Read/Write (Holding Register) |
| PV Enable / Disable Command | Remote command to enable or disable the PV | Mandatory | BOOL (coil) | — | Write (Coil) |
| PCS Active Power | Measured DC active power of the whole PCS (including battery and photovoltaic (PV)) | Mandatory | INT16 / UINT16 | kW | Read-only (Input Register) |
| PCS Voltage | Measured DC bus voltage of the PCS system | Optional | INT16 / UINT16 | V | Read-only (Input Register) |
| PCS Current | Measured DC current | Optional | INT16 | A | Read-only (Input Register) |
| PCS Power Setpoint | Requested total active power = command to charge/discharge (positive = discharge, negative = charge) | Mandatory | INT16 | kW | Read/Write (Holding Register) |
| PCS Reactive Power Setpoint | Requested reactive power injection/absorption | Optional | INT16 | kvar | Read/Write (Holding Register) |
| PCS Enable / Disable Command | Remote command to enable or disable the PCS | Mandatory | BOOL (coil) | — | Write (Coil) |
| Remote/VPP control - Enable / Disable Command | A command to enable or disable the remote control (via Modbus) | Mandatory | BOOL (coil) | — | Write (Coil) |
| Meter Active Power | Measured AC active power of the energy meter (e.g. grid)) | Mandatory | INT16 / UINT16 | kW | Read-only (Input Register) |
| Meter Voltage | Measured AC voltage at the energy meter | Optional | INT16 / UINT16 | V | Read-only (Input Register) |
| Meter Current | Measured AC current at the energy meter | Optional | INT16 | A | Read-only (Input Register) |
| Meter Active Power per phases L1, L2, L3 | Active power per each phase | Optional | INT16 / UINT16 | kW | Read-only (Input Register) |
| Meter Reactive Power per phases L1, L2, L3 | Reactive power per each phase | Optional | INT16 / UINT16 | kW | Read-only (Input Register) |
| Meter Import Active energy | Imported active energy | Optional | INT16 / UINT16 | kW | Read-only (Input Register) |
| Meter Import Reactive energy | Imported reactive energy | Optional | INT16 / UINT16 | kW | Read-only (Input Register) |
| Meter Export Active energy | Exported active energy | Optional | INT16 / UINT16 | kW | Read-only (Input Register) |
| Meter Export Reactive energy | Exported reactive energy | Optional | INT16 / UINT16 | kW | Read-only (Input Register) |
| Meter Frequency | Frequency | Optional | INT16 / UINT16 | Hz | Read-only (Input Register) |
| Meter Currents per phases L1, L2, L3 | Current per phase | Optional | INT16 / UINT16 | A | Read-only (Input Register) |
| Meter Voltages per phases L1, L2, L3 | Voltages per phase | Optional | INT16 / UINT16 | V | Read-only (Input Register) |
| Meter limit active import power | Limit of the import active power that the internal EMS must respect | Desired | INT16 | kW | Read/Write (Holding Register) |
| Meter limit active export power | Limit of the import active power that the internal EMS must respect | Desired | INT16 | kW | Read/Write (Holding Register) |
| Operating mode selection | Operating mode activation (such as self-consumption, max production etc. | Desired | INT16 | — | Read/Write (Holding Register) |
| System Status | Operating mode (idle / charge / discharge / fault) | Mandatory | UINT16 (coded) | — | Read-only (Input Register) |
| Alarm / Fault Codes | Active alarms or fault identifiers | Mandatory | Bitfield / UINT16 | — | Read-only (Input Register) |
| Firmware Version | Current firmware version of BMS/PCS | Optional | String / UINT16 | — | Read-only (Input Register) |
Note: Not all combinations of Battery, PV and PCS setpoint control are possible. One depends on the other two. Therefore, the manufacturer can only provide two of them.
Additionally, the manufacturer must clearly specify the process and a list of registers that need to be set in order to achieve the desired charging/discharging operation. That usually includes setting a register to a remote control/VPP mode, enabling battery operation, providing regular heartbeat signal etc.
Operating modes
Hybrid inverters provide an internal EMS capable of performing operational modes like self-consumption, peak shaving, max production, max consumption, VPP etc. For that an additional electricity meter must be supplied and is usually connected to the grid. Additionally, the meter limits (import and export) must be provided. An operating mode can be set through a register.
The following operating modes are desired (not mandatory):
- Self-consumption
Stores surplus PV energy and discharges when demand exceeds generation.
- Peak shaving
Reduces peak grid demand by discharging during high load periods.
- Max consumption
Maximal charging up to the import grid limits
- Max production
Maximal discharging up to the export grid limits
- Schedule mode
Specification of power through days and hours of the week
- Virtual Power Plant (VPP)
Aggregated BESS coordinated for grid services and market participation.
- Frequency regulation
Rapid charge/discharge to stabilise grid frequency.
- Voltage support / reactive power
Provides reactive power to stabilise local grid voltage.