node-red-contrib-ocpp icon indicating copy to clipboard operation
node-red-contrib-ocpp copied to clipboard

new example - charging speed modification

Open EVhonza opened this issue 11 months ago • 3 comments

Hello, your code and examples are great. I was able to configure and remotely start or stop charging of my car using Node-red and your plugin. My PV plat currently also communicate with Node red. My final intention is to store excess PV energy inside EV battery. The excess energy varies in time, so I need to pause charging or modify charging current few times per hour.

... Such functionality should be possible, somehow, as: "...the back office can send a charging profile or kW limit to the charging station via OCPP 1.6. More precisely, OCPP 1.6 gives you the possibility to send either a single limit or a time series of data (=charging profile)." ...source

I tryied myself a lot of various code variants, but I was not sucessfull. My unprofessional OCPP 1.6j code was refused by charger to modify charging speed limit. No answer. Maybe whole idea, code failiure or some other problem, I do not know...

The following code should change the charger current to 7A. { "connectorId": 1, "csChargingProfiles": [ { "chargingProfileId": 1, "chargingProfilePurpose": "TxProfile", "chargingProfileKind": "Absolute", "chargingSchedule": { "duration": 0, "startSchedule": "2023-07-13T10:00:00Z", "chargingRateUnit": "A", "chargingSchedulePeriod": [ { "startPeriod": 0, "limit": 7 } ] } } ] }

Please could you create for people like me a new, very basic but working example for the ability to change the charging speed / energy consumption of an EV? I have no idea, as if some ChargingProfiles defining is necessary. Is there a simplest way, for such case? Thank you very much. Jan

EVhonza avatar Jul 27 '23 14:07 EVhonza

Hi, I'm looking forward to install a charge point that would support ocpp in order to throttle my charge current depending on the solar production. Did you manage to get further on this attempt?

juliencarnot avatar Sep 11 '23 19:09 juliencarnot

No, I stuck on that. The command for to set a charging power/profile should be not correct - I was not able to change the charging current.

Basically all skilled PV+chargepoint "professional" technicians/installers tells you, there must be two "100% compatible" boxes, anyway the system not working. There is also a good, fast and simple way - to use analog power limitation using current sensors (on house main power imput) for your chargepoint. As soon as you have two chargepoints and you intent to prioritize some of them as of some rules, that is not trivial solution for that way. By OCPP way you are free to programm it as you need, but my way to bring it into life is not working for me. I am awaiting help of the OCPP plugin author.

I will be happy to pay some OCPP skilled programmer to work for me and that idea. I am able to sucesfully regulate my charging power using manual regulation. Using OCPP there are milestones I need to overcome. OCPP is currently not my big friend. As I will have a few time for future development, I can ask by the OCPP authors (https://www.openchargealliance.org/) for help. Currenly I am out of free time for that.

EVhonza avatar Sep 12 '23 19:09 EVhonza

To change the charging current I'm using the following data { "command": "SetChargingProfile", "data":{ "connectorId": 0, "csChargingProfiles": {"chargingProfileId": 1, "stackLevel": 0, "chargingProfilePurpose": "TxDefaultProfile", "chargingProfileKind": "Relative", "chargingSchedule": { "chargingRateUnit": "A", "chargingSchedulePeriod": [ { "startPeriod": 0, "limit": 7, "numberPhases": 1 } ] } } } }

I just have one connector on my wallbox, this is why I'm using default connectorid 0. I understand profile kind "relative" is relative to transaction start (so whenever you start charging your car). I wanted to avoid the hassle of dynamically creating correct time references. For simplicity I just added a hard-coded limit of 7A to the statement above, but in reality this limit is calculated in my nodered based on the excess PV. You might as well just add a numeric slider on a dashboard and make the limit change based on changes coming from the slider.

Nobby0815 avatar Jan 26 '24 10:01 Nobby0815

Hi, may I know how you managed to remotely start and stop your EV charger? I'm currently having troubles to configure that on Node-red.

lwefq avatar May 13 '24 05:05 lwefq

Hi, I worked off of example1.json from github. The stop transaction node needs to use the transactionId created by Start transaction node. See below minimalistic sample (no guarantee this will work as I haven't tested this sample specifically, as I don't want to risk my productive environment).

start-stop.json

Nobby0815 avatar May 13 '24 08:05 Nobby0815

Hi, the sample doesn't work when I try to import it over. I'm rather new to OCPP and Node-red implementation ... may I know if there is any way to chat with you on this too?

lwefq avatar May 14 '24 01:05 lwefq

Corrected sample code and validated it now loads without issues

Nobby0815 avatar May 14 '24 12:05 Nobby0815