-
Notifications
You must be signed in to change notification settings - Fork 119
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
Shaper not working anymore with release v5.0.2 #762
Comments
I'm experiencing the same problem. I went into the shaper code, and I found this added code on v5.0.2:
In my view, this makes that whenever "Live Power" passes over "Max Power", "Max Current" will result in the same value (evse.getAmps()), so nothing will change. edit: add mention to @KipK for visibility. |
@linuxkidd from my understanding what you show in your screen capture seems to be normal for me. The problem I experience is current_shaper.cpp code in line 177 have introduce in the v5.0.2 (if compare with v4.2.2) the saturation of livepwr to max_pwr if livepwr >max_pwr just before computing _max_cur mention to @KipK for visibility. |
I think I figured out my issue.. at least, it's much more stable / predictable now. I was feeding the power being used for all loads except the EVSE load. Once I adjusted my MQTT publish logic to add the EVSE power with the other loads, and thus, send the total power, it seems to behave much better. Unsure if this is helpful to others in this thread. A few suggestions for this:
|
@danpadure from my point of view to solve this wrong behavior line 177 to 179 has to be remove from current_shaper.cpp code |
Before making any changes I would like to get some testing setup similar to that for the divert, so if we can start to collect some CSV files of the input data along with the expected response that would be great |
Sure Jeremy. What should I do? |
Basically if you can log the feed data, eg using EmonCMS and then attach a CSV or a day or so to this issue I can use that to create test cases. |
There is one test for witch there is no specific input data needed: setup the "Max power allowed" to a value that will be reach by the grid when charging a car for exemple set Max power allowed to 4000W. start charging, verify that the live power from the grid reach 4000W. Then change during the charge Max power allowed to 3000W the expected response is a decrease of the charging current such that the live power from the grid should decrease to 3000W. Today it is the case with 4.2.2 firmware but the 5.0.2 will be stuck arround 4000W for the live power and dont reach the new target |
I can, but which inputs should I log, there are 73 of them :) |
Just the one you use for the shaper. |
this is crazy. I started running the test, logging a lot of feeds for you |
|
@jeremypoulter You will find attach the CSV file of this reccord containing in colum: |
I tested this, tonight, I also can replicate on v 5.0.2, Huzzah esp32. (My connection can support 16kW+ but set to 10kW for testing.) I did clone the repository, and comment out the livepwr = max_pwr; eg max is set at 8000, livepwr is 10000, |
so the solution is to comment a line? |
Possibly, I don't know the reason why it was put there initially as it could be there to fix something else. |
It would be good to get some comment from @KipK, but I would tend to agree that those lines can be removed. In the meantime I will setup the testing to see what impact removing has. In the meantime I have created a draft PR with the lines removed. Test builds can be downloaded from #784, click on one of the actions at the bottom of the PR then on the summary, the binaries can be downloaded from there. At time of writing this is https://github.com/OpenEVSE/openevse_esp32_firmware/actions/runs/7467645640?pr=784 but that link may not be the latest if any additional changes are added. |
I now get why It fails with the saturation, livepwr contains evse loads, so saturation should remove it from calculation. Anyway as there's no issues with negative values, let's remove it |
Thanks for checking |
I have install the release v5.0.2 on a EVSE with 8.2.3.T2 firmware and Shaper does charge current according to my real time house load,
for exemple the maximum power load is set to 8400W:
but the real power load is 9428W. The Shaper set up the charge current to 31,68A for this load which is to high. Charge current decrease only a little with the power load it look like there is a wrong scaling factor in the shaper charge current regulation
If I go back to previous recommanded release v4.2.2 everything work fine exemple:
For comparison release v5.0.2 versus v4.2.2 for the Shaper
You find below the graphic of the recorded shaper charge current regulation, EvSE power usage and house power load. From 22:00 to 22:16 the EVSE was working with release v5.0.2 and after 22:24 the EVSE was working with release v4.2.2
there no current regulation with release v5.0.2 and power load is not limited to 8400W
and after 22:24 the EVSE Shaper is working well with release v4.2.2 with a good current regulation
The text was updated successfully, but these errors were encountered: