Skip to content
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

Add information if a unit transformation was performed for the composite schedule calculation #908

Open
Matthias-NIDEC opened this issue Dec 11, 2024 · 1 comment

Comments

@Matthias-NIDEC
Copy link
Contributor

Matthias-NIDEC commented Dec 11, 2024

OCPP Version

OCPP1.6

Describe the problem

  1. On business logic site there is no information if the resulting period.limit is converted, meaning query unit != resulting profile.limit.unit

In order to query get_all_composite_charging_schedules a unit information is required or if optional it is [A] selected.

If a transformation was performed it is on business logic not clear, if the resulting period.limit is modified:
e.g.

  • query with unit [A]: underlying winning period is [W], result is period.limit/Internal.SupplyVoltage and transformation happened
  • query with unit [W]: underlying winning period is [A], result is profile*Internal.SupplyVoltage and transformation happened

If on return it is cleared that a transformation happened, the query can be reperformed with the winning profile unit.

Use Case:
With this modification it is possible to do Current [A] based limitation on business logic site.

Describe your solution

  1. Discussion in the weekly call identified:
    Add the limit.unit to the EnhancedChargingSchedulePeriod as additional information. On return compare the winning.limit.unit to the query.unit, if both are the same, return true, otherwise false.

See PR: #909

  1. Extend the call interface get_all_composite_charging_schedules with a Vector of the acting Voltages [V] present for each Connector.

Optional:

Additional context

No response

@Matthias-NIDEC
Copy link
Contributor Author

Matthias-NIDEC commented Dec 12, 2024

Explanation:
In order to limit the charging power by a charging profile TxProfile/DefaultProfile, there are two possibilities from CSMS site w.r.t. Unit:

1) The CSMS set charging profile with chargingRateUnit [W]. A query from business logic with Watt, will deliver the limitation. The information can be used onwards, to limit the Current [A] by knowing the charging Voltage [V] car vice.

2) The CSMS set charging profile with chargingRateUnit [A]. A query from business logic with unit [W], will transform the profile information to [W], using the Internal.SupplyVoltage [V] value. This value does not reflect the charging Voltage [V] car vice, and thus, the [W] limitation is wrong if used with another Voltage [V], then the conversion Internal.SupplyVoltage [V] and can not be used.
A workaround [WA1] would be set the Internal.SupplyVoltage [V] to the charging Voltage [V] car vice before the query to result in the [W] profile.
Another change would be to use as proposed a boolean indicator, that the profile result is based on a transformation. With this information, the business logic can decide, if it queries again with the alternate Unit [A]. Then, it can continue and recalculate w.r.t. its charging Voltage [V] to a power [W] limitation value.
With the help of the bool indicator, it can be returned that a conversion happened, and the original profile unit can be queried again. The conversion responsible is then moved to the business logic.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant