ocpp
ocpp copied to clipboard
Smart Charging Implementation
Hi, Can this implementation of OCPP support Smart Charging functions? i.e. dynamically assign a charging profile and limit the current
Thanks.
Hi there,
Yes, this implementation includes the skeleton to build Smart Charging functions like SetChargingProfile: 1.6: https://github.com/mobilityhouse/ocpp/blob/6cef24b84c3a82ca4b1e09e5904dacb448c5a8f7/ocpp/v16/call.py#L126 2.0.1: https://github.com/mobilityhouse/ocpp/blob/6cef24b84c3a82ca4b1e09e5904dacb448c5a8f7/ocpp/v201/call.py#L341
Hi, how would it look like to realize PV surplus charging with this OCPP implementation if my charging point speak OCPP 1.6j and I would like to set the limit of Amps allowed to charge the electric vehicle based on some external sensor data (e.g. power meter of current solar generation)?
This is what my use case looks like: I have a power meter installed to check the power of my PV generator. The meter communicates the value over MQTT protocol to my mosquitto MQTT broker (e.g. integrated in a HomeAutomation software like HomeAssistant). Based on these sensor readings, I want to set a single current limit value to be send every 15seconds to the wallbox (which supports OCPP 1.6j). Usual charging points support current limitation between 6Amps and 16Amps on either one phase or all three phases. May it even be possible to send a phase (1p/3p) command to the charging station over OCPP?
Hi, how would it look like to realize PV surplus charging with this OCPP implementation if my charging point speak OCPP 1.6j and I would like to set the limit of Amps allowed to charge the electric vehicle based on some external sensor data (e.g. power meter of current solar generation)?
This is what my use case looks like: I have a power meter installed to check the power of my PV generator. The meter communicates the value over MQTT protocol to my mosquitto MQTT broker (e.g. integrated in a HomeAutomation software like HomeAssistant). Based on these sensor readings, I want to set a single current limit value to be send every 15seconds to the wallbox (which supports OCPP 1.6j). Usual charging points support current limitation between 6Amps and 16Amps on either one phase or all three phases. May it even be possible to send a phase (1p/3p) command to the charging station over OCPP?
That's also exactly my use-case, coulnd't figure out how the charing profiles can be sent to the wallbox and scheduled... Any hint is appreciated.
@hackex @N3rdix ,
any progress with this implementation?
For me it works already via setting the maximum current in SetChargingProfilePayload
In OCPP 1.6 - section 5.16. Set Charging Profile is the message type to achieve your PV solution, however, as @tropxy pointed out this library generally provides only a skeleton.
For the discussion below a Charge Point = Wall Box
So as I guide:
-
A Central System would need to be built from this library, to first set up basic communication between the Charge Point and Central System (using the example in ocpp\examples\v16\central_system.py).
-
After OCPP communication is established between the Central System and the Charge Point - a SetChargingProfile request (OCPP 1.6 section 6.43. SetChargingProfile.req) and response (OCPP 1.6 section 6.44. SetChargingProfile.conf) messages would need to be implemented and handled on the Central System. For simplicity the charging profile purpose type of a TxDefaultProfile could be used, so to apply to any new transactions created on the Charge Point.
-
SetChargingProfiles will need to be adjusted and implemented to suit the desired behaviour see section 7.8. ChargingProfile
I hope this helps