GW15k-ET-20
Links
External control
https://community.openems.io/t/goodwe-et10-wechselrichter-in-openems-einbinden/10051/29?page=2
Modes
INTERNAL Mode
- Pure AUTO mode operation (
EmsPowerMode.AUTO) - OpenEMS only monitors, but does not control
- Fastest response time
- Requires a GoodWe Smart Meter
SMART Mode
Technical Behavior
- Intelligent switching between GoodWe AUTO mode (
EmsPowerMode.AUTO) and remote control - Uses the inverter’s fast internal regulation whenever possible
- Switches to remote control in cases of:
- Grid feed-in (surplus export)
- Specific grid-balancing requirements
- Avoidance of rounding errors
Requirements
- Mandatory: GoodWe Smart Meter at the grid connection point
- Important: Does NOT work correctly when the PID filter is enabled!
REMOTE Mode
Technical Behavior
- Full control by OpenEMS
- Direct power setpoints via Modbus
- Uses
EmsPowerMode.CHARGE_BAT (0x0B)for charging - Uses
EmsPowerMode.DISCHARGE_BAT (0x0C)for discharging
Power Calculation
// Charging:
emsPowerSet = |activePowerSetPoint| + pvProduction
// Discharging:
emsPowerSet = activePowerSetPoint - pvProduction
Advantages
- Works with any grid meter (not only GoodWe)
- Full flexibility for complex control strategies
- No dependency on GoodWe hardware
Disadvantages
- Slower response time compared to the internal AUTO mode
- Higher communication overhead
Recommendation
- SMART: Best choice when a GoodWe Smart Meter is available (without PID filter!)
- REMOTE: Ideal for third-party meters or complex multi-ESS systems
- INTERNAL: Uses the inverter’s internal control logic
The modes are defined in:
io.openems.edge.goodwe.ess.enums.ControlMode
The implementation is handled in the:
ApplyPowerHandler
PID Filter Behavior
- REMOTE: PID filter is taken into account
- INTERNAL: PID filter is NOT taken into account
- SMART: PID filter is NOT taken into account (see notes above)
Regulation / Settling Time
The regulation and settling times depend on many different factors and must usually be tuned individually for each installation in order to achieve the best results.
Tuning
https://community.openems.io/t/pid-regler-ess-power/963/3
PID Tuning Simulator
A small PID simulator is available as an Excel file in the repository:
https://github.com/OpenEMS/openems/blob/develop/io.openems.edge.common/doc/PID-Simulator.xlsx
The simulator behaves exactly like the ESS-Power implementation.
The Java Junit test implementation was derived from the Unit-Test worksheet of this simulator.
For example, the following parameters should work reasonably well:
P = 0.3
I = 0.15
D = 0