-
Notifications
You must be signed in to change notification settings - Fork 527
Implement OpenWB Series 2 EVCS #3299
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Codecov Report❌ Patch coverage is ❌ Your patch status has failed because the patch coverage (49.31%) is below the target coverage (75.00%). You can increase the patch coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## develop #3299 +/- ##
=============================================
- Coverage 59.59% 59.54% -0.05%
Complexity 112 112
=============================================
Files 2895 2899 +4
Lines 124724 124868 +144
Branches 9347 9355 +8
=============================================
+ Hits 74319 74336 +17
- Misses 47586 47724 +138
+ Partials 2819 2808 -11 🚀 New features to boost your workflow:
|
| description = "Implements the evcs component for OpenWB Series2 with internal chargepoints via HTTP API") | ||
| @interface Config { | ||
|
|
||
| enum ChargePoint{ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe add this to an "enum" Package as in other Implementations? :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
Sn0w3y
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See my comment :)
# Conflicts: # .gitignore
|
Please still fix your checkstyle Issues |
|
https://openems.github.io/openems.io/openems/latest/contribute/coding-guidelines.html |
|
May i ask, why we can not use Modbus on this EVSE? |
This component is for monitoring the OpenWB in primary mode, which means it is controlled by it's own software. |
# Conflicts: # .gitignore
sfeilmeier
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for continuously updating this PR. I took some time to review and cleanup the code and it is merge ready now.
Some thoughts or future TODOs, still:
- I am not sure HTTP is really the best protocol for OpenWB. There support for MQTT seems to be better and would use much less requests. Currently there is one request per datapoint per Cycle or second
- The
ReadWorkerapproach is rather old in OpenEMS. Nowadays we would use the HTTP-Bridge PhaseRotationshould be configurable- I refactored the part in ReadWorker where you are setting the values in such a way, that the Channels would get reset if there was a read error
- I deleted unused Channels
- You are calculating Energy from Power values; but Session Energy is calculated from the original Energy read from OpenWB. Thats insonsistent.
Feel free to open up new followup PRs. I am merging this one now.


This PR extends and replaces #3237.


The component requests the actual power, voltage, current, plug state, charge state and energy values from an OpenWB Series 2 with one or two internal charge points in primary mode, which is commonly used. In this case the wallbox can only be monitored from other systems with http requests and can not be controlled.
The purpose is displaying and archiving the most important values in OpenEMS.
The pictures show the corresponding energy meter values in the OpenWB GUI and in OpenEMS at nearly the same moment.
These channels can be requested from the internal charge point:

The evcs modal widget, showing the current charge power:

And after the charging has finished:

The charged energy is calculated from the difference of the actual imported energy from the OpenWB and the value at the time when the car is plugged in. The values from the OpenWB monitoring and this component are the same:
