openems icon indicating copy to clipboard operation
openems copied to clipboard

Adds ManagedEvcsCluster with Limit and Evcs count, makes ESS optional and minimum guaranteed charge power

Open chpoulter opened this issue 9 months ago • 5 comments

Adds ManagedEvcsCluster with an active power limit and evcs count channel to allow limiting maximum power that is distributed among the EVCS. This is required when reducing power because of §14a EnWG or may be useful for other things. I am writing on a controller to maintain this limit. Hope I did not miss some other way.

While implementing I made the minimum guaranteed charge power configurable (as the hard coded 4500 can be a problem for §14a EnWG). I also made ESS optional, so there is no need anymore to setup a simulated ESS.

Sorry for creating a new PR ... I've renamed the branch and did not know it would close the existing PR.

chpoulter avatar Apr 07 '25 20:04 chpoulter

Just out of curiosity - what happens if i have lets say 6 DC and 3 AC Chargers (Chargepoints in OpenEMS)

and want to distribute the Power among them - if the Power is getting to the Configured Linit - what happens then?

I am just curious, did not look in the Code :)

Sn0w3y avatar Apr 07 '25 21:04 Sn0w3y

I've only tested two AC stations, as that is my scenario. But basically I did not change the existing distribution method, so it should work as before (->unit tests are still all running). Only the maximum available power to distribute is lowered to the value on the new channel.

To be honest I do not really see any different handling for AC / DC stations in EvcsClusterPeakShaving. I think for your case it will just distribute requested/guaranteed power in the sorted order to the stations until the limit is hit. So if there is not enough power, some stations will be switched off. If there is power left over (which might happen, if not all stations are running) it seems to be additionally distributed.

chpoulter avatar Apr 07 '25 21:04 chpoulter

Thanks for the contribution. I am not able to review this properly, because I would rather implement this feature in new EVSE. Maybe @sebastianasen or @johannk24

sfeilmeier avatar Apr 09 '25 12:04 sfeilmeier

Codecov Report

:x: Patch coverage is 75.62545% with 341 lines in your changes missing coverage. Please review.

Additional details and impacted files
@@              Coverage Diff              @@
##             develop    #3084      +/-   ##
=============================================
+ Coverage      59.50%   59.88%   +0.38%     
+ Complexity       113      112       -1     
=============================================
  Files           2770     2788      +18     
  Lines         119632   121082    +1450     
  Branches        8914     9066     +152     
=============================================
+ Hits           71180    72492    +1312     
- Misses         45765    45873     +108     
- Partials        2687     2717      +30     
:rocket: New features to boost your workflow:
  • :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • :package: JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

codecov[bot] avatar Jun 17 '25 20:06 codecov[bot]

This PR has been automatically marked as stale due to inactivity

If it is still relevant, please update the PR. Otherwise, it will be automatically closed in 14 days.

Before updating, please review our Contribution Guidelines to ensure all required information is provided.

github-actions[bot] avatar Nov 04 '25 02:11 github-actions[bot]