EVerest / libocpp

C++ implementation of the Open Charge Point Protocol
Apache License 2.0
92 stars 48 forks source link

K01.FR.43 - Clarify Device Model Variables to ensure that no more than the received numberPhases will be used #722

Open Giavotto opened 2 months ago

Giavotto commented 2 months ago

Description

Precondition -

When a SetChargingProfileRequest with a value for numberPhases is received AND the EVSE is of type AC AND the Charging Station cannot ensure that no more than the received numberPhases will be used

In order to check if the final condition is satisfied, the JOET team was planning on using a combination of the SupplyPhases variable within the Connector component of the Device Model and the Phases3to1 variable within the SmartChargingCtrlr component of the Device Model.

Action Items

During the discussion in the Cloud Communication Working Group it appeared that there may be a need of additional variables to cover incidences of switching between 2 phases, and going from 1 phases to either 2 or 3 phase as well.

Does the OCA have an understanding of how to appropriately check the precondition with the provided set of variables within the OCPP 2.0.1 specification?

Giavotto commented 2 months ago

@Pietfried @marcemmers @RobertDeLeeuw issue created per discussion on the Cloud Communication Working Group

RobertDeLeeuw commented 2 months ago

Bit of background: This is anyhow a corner case. I have not yet seen a real world charger with the capability to turn off 2 of the connected phases. On top of this: one of the problems with the Phase3to1. When this was written, 2 phase charging did not exist and was not expected. Somehow now there are a hand full of vehicles that can do 2 phase charging. I (personally) have not come across a charger that can only do 2 phases. But you could wire a 3 phase charger with only 2 phases. This is also reflected in K01.FR.19 it only takes into account single phase.

In the end, it is the hardware that defines: "the Charging Station cannot ensure that no more than the received numberPhases will be used": you will need a way to switch off phases. So the question for EVerest is. Which module/hardware driver/configuration variable tells that the charger hardware EVerest is running on can switch of one or two of the phases. For almost all charging station the Device Model variable: Phases3to1 indeed will tell this. But will not cover the case of switching to two phases in that case we would need something extra.

Looking at priorities, adding support of two phases could I think be put on the backlog for later.