In diesem Leitfaden werden wir untersuchen, wie wir intelligentes Laden für Elektrofahrzeuge ermöglichen können, indem wir uns eingehender mit den Komponenten eines Ladeprofils im OCPP 1.6J-Format und dem Prozess befassen, mit dem eine Ladestation Ladeprofile akzeptiert.
Ein Ladeprofil besteht aus einer Reihe von Leistungsgrenzwerten mit definierten Zeitwerten in Sekunden. Ein Ladeprofil könnte beispielsweise in etwa so aussehen:
Sonst beschrieben als:
Leistung 10 kW von 0 Sekunden bis 120 Sekunden
Leistung 25 kW von 120 Sekunden bis 300 Sekunden
Leistung 5 kW von 300 Sekunden bis 600 Sekunden
Leistung 8 kW von 600 Sekunden bis 800 Sekunden
OCPP definiert ein Standardformat für die Erstellung dieser Ladeprofile, sodass alle OCPP-kompatiblen Ladegeräte diese Befehle akzeptieren und befolgen können. Es sieht so aus:
Das OCPP-Backend kann während einer Transaktion (= Ladesitzungen) oder wenn keine Transaktionen stattfinden, ein Ladeprofil senden. Im letzteren Fall definiert OCPP jedoch bestimmte Einschränkungen, auf die wir weiter unten näher eingehen werden (TX-Standardprofil vs. TX-Profil).
In jedem Fall finden mehrere Schritte statt, wenn ein Ladevorgang mit aktiviertem Smart Charging stattfindet. Sobald ein Ladevorgang initiiert wurde, entweder über einen Transaktion starten oder Fernstart, das Zentralsystem sendet Ladeprofile mit einem SetChargingProfile.req.
Das SetChargingProfile.req ist einer der komplexeren OCPP-Nachrichtentypen und hat viele Konfigurationsoptionen. Diese Nachricht ermöglicht das Energiemanagement, da sie die Flexibilität bietet, komplexe Logik zu erstellen. Auf der anderen Seite kann dies bei falscher Verwendung zu komplexen Problemen und Fehlern führen.
Das SetChargingProfile.req beinhaltet ein Objekt Ladeprofil. Dieses Objekt spezifiziert Kernparameter wie Leistungs- oder Stromgrenzwerte, Zeitrahmen und mehr.
Zum Beispiel können die Einheiten des Grenzwerts ausgedrückt werden in Leistung (zulässige Höchstleistung in Watt) oder aktuelle (maximal zulässiger Strom pro Phase in Ampere).
Bestimmte Parameter, wie Anzahl der Phasen, Dauer, kann auch stark beeinflussen, wie eine Ladestation auf einen Befehl reagiert.
Die Ladestation reagiert auf diese Befehle mit einer Bestätigung, SetChargingProfile.conf, das eine Antwort enthält, die definiert ist für Status des Ladeprofils als akzeptiert, abgelehnt, nicht unterstützt. Wenn das Ladegerät geantwortet hat mit zurückgewiesen oder nicht unterstützt, Möglicherweise müssen Sie das Format des überprüfen Ladeprofil festlegen oder überprüfen Sie das Format mit dem Hardwarehersteller. Bei den meisten Ladegeräten gibt es Einschränkungen und Ausnahmen, die zu dieser Reaktion führen.
Das Obige ist zwar eine Vereinfachung des Prozesses und der erforderlichen Felder, aber wir werden uns die einzelnen Pflichtfelder und deren Bedeutung im Folgenden ansehen.
Senden eines Ladeprofils mit SetChargingProfile.req
Hintergrund: In OCPP sendet das Zentralsystem die Nachricht setChargingProfile.req an die Ladestation. Die Ladestation bestätigt dies mit SetChargingProfile.conf (Accepted, Rejected, NotSupported).
Es besteht aus Connector-ID und die CS-Ladeprofile.
connectID (erforderlich): Der Anschluss, für den das Ladeprofil gilt. Wenn ConnectorID = 0 ist, enthält die Meldung ein Gesamtlimit für den Ladepunkt.
CSChargingProfiles (erforderlich): Das Ladeprofil muss an der Ladestation eingestellt werden.
Ein setChargingProfile.req kann gesendet werden:
Zu Beginn einer Transaktion, um das Abrechnungsprofil für die Transaktion festzulegen: Sobald eine Transaktion gestartet wurde, wird ein Abrechnungsprofil auf diese spezifische Transaktions-ID festgelegt. Dies verhindert Diskrepanzen zwischen Transaktionen und TX-Profile, um sicherzustellen, dass der Ladebefehl eine entsprechende TransactionID hat.
In einem Transaktion per Fernstart Anfrage an eine Ladestation gesendet: Wenn eine Transaktion aus der Ferne gestartet wird, kann das Zentralsystem ein Ladeprofil in das Transaktion per Fernstart Anfrage.
Während einer Transaktion, um das aktive Profil für die Transaktion zu ändern: Möglicherweise muss das Ladeprofil während einer Transaktion aktualisiert werden. In diesem Fall ein anderer SetChargingProfile.req wird gesendet. Die Ladestation bewertet dann die Sammlung der Ladeprofile erneut, um festzustellen, welches Profil aktiv ist.
Außerhalb des Kontextes einer Transaktion als separate Nachricht zum Einstellen eines Ladeprofils auf einen lokalen Controller, Ladepunkt oder eines Standardladeprofils auf einen Connector: Standard-Ladeprofile können an die Ladestation gesendet werden. Diese Standardprofile können ohne Transaktions-IDs ausgeführt werden. Dies kann bei Problemen mit der Netzwerkkonnektivität nützlich sein und ermöglicht das Aufladen auch ohne Transaktions-IDs.
Beschreibung der Elemente des ChargingProfile mit CChargingProfile
EIN Ladeprofil besteht aus einem Ladeplan, das im nächsten Abschnitt beschrieben wird und in dem die Leistungsgrenzen im Zeitverlauf detailliert beschrieben werden.
Hier schauen wir uns an CS-Ladeprofil, das die spezifischen Elemente innerhalb des Ladeprofils beschreibt.
chargingProfileId (Required): Unique Identifier for this profile. This is defined by the energy management system or the OCPP backend.
transactionId (Optional): Only valid if the profile is TxProfile, in which case the transaction ID is used to match the profile to a specific transaction. This field is not required for txDefaultProfiles but is required for txProfiles.
stackLevel (Required): Value determining level in hierarchy stack of profiles. Higher values have precedence over lower values. The lowest level is 0.) This is used to stack several profiles on each other without deleting or overriding the previous one. The charge point will always use the profile on the highest available stack level. Stacking charging profiles with various levels allows the construction of complex schedules that can take into account times of day, days of the week, and even certain holiday exceptions.
chargingProfilePurpose (Required): Defines the purpose of the schedule transferred by this message. OCPP defines the following options:
ChargePointMaxProfile: Configuration for the maximum power or current available for an entire Charge Point.
TxProfile: Profile with constraints to be imposed by the Charge Point on the current transaction or a new transaction when this is started via a RemoteStartTransaction.req with a ChargeProfile. A profile with this purpose SHALL cease to be valid when the transaction terminates. This is the most frequently used charging profile purpose.
TxDefaultProfile: a default profile to be used for new transactions. More on the differences between TxProfiles and TxDefaultProfiles can be found here. Typically a default profile can be sent without a transactionID, for example, to ensure charging occurs in a controlled manner if connectivity is lost.
chargingProfileKind (Required): Indicates the kind of schedule.
Absolute: Schedule periods are relative to a fixed point in time defined in the schedule.
Recurring: The schedule restarts periodically at the first schedule period.
Relative: Schedule periods are relative to a situation-specific start point (such as the start of a Transaction), which is determined by the charge point.
recurrencyKind (Optional): Indicates the start point of a recurrence.
Daily: Schedule restarts at the beginning of the next day
Weekly: Schedule restarts at the beginning of the next week (Monday morning)
validFrom (Optional): Point in time at which the profile starts to be valid. If absent, the profile is valid as soon as the Charge Point receives it. Remember that most charge points use the UTC time zone.
validTo (Optional): Point in time at which the profile stops being valid. If absent, the profile is valid until it is replaced by another profile.
chargingSchedule (Required): Contains limits for the available power or current over time. This is technically the core of the setChargingProfile.req and contains the actual “charging profile.” We will go into more detail in the next section.
Ladezeitplan: beschreibt die Menge an Strom oder Strom, die pro Zeitintervall geliefert werden kann
Das Ladeplan Komponente gefunden in der CS-Ladeprofile beinhaltet Leistungs- oder Strombegrenzungen für die Ladeprofile im Zeitverlauf. Darüber hinaus enthält es auch andere Informationen wie Einheiten usw.
Duration (Optional): Duration of the charging schedule in seconds. If the duration is left empty, the last period will continue indefinitely, or until the end of the transaction, in case startSchedule is absent. Important: some charge points require this field.
startSchedule (Optional): Starting point of an absolute schedule. If absent, the schedule will be relative to the start of charging.
chargingRateUnit (Required): The unit of measure Limit is expressed in:
W: Watts (power) defines the maximum power allowed on the charge point
A: Amperes (current) defines the maximum current allowed per phase
chargingSchedulePeriod (Required): List of ChargingSchedulePeriod elements defining maximum power or current usage over time. The startSchedule of the first ChargingSchedulePeriod SHALL always be 0. This always has:
startPeriod (Required): Start of the period, in seconds from the start of schedule. The value of StartPeriod also defines the stop time of the previous period.
Limit (Required): Charging rate limit during the scheduled period, in the applicable chargingRateUnit, for example, in Amperes or Watts. Accepts at most one digit fraction (e.g. “8.1”).
numberPhases (Optional): The number of phases that can be used for charging. If several phases are needed, numberPhases=3 will be assumed unless another number is given.
minChargingRate (Optional): Minimum charging rate supported by the electric vehicle. The chargingRateUnit defines the unit of measure. This parameter is intended to be used by a local smart charging algorithm to optimize the power allocation if a charging process is inefficient at lower charging rates. Accepts at most one digit fraction (e.g. “8.1”). Certain vehicles stop charging or go into sleep mode if the charging rate is too low. This parameter sets a minimum power so that the charging remains engaged at the most minimal level.
In den obigen Ausführungen werden zwar die erforderlichen und optionalen Komponenten von Ladeprofilmeldungen mithilfe von OCPP hervorgehoben, aber wir bei Ampcontrol haben festgestellt, dass bestimmte Hersteller leicht unterschiedliche Nuancen in ihrer Interpretation von OCPP haben.
Beispielsweise folgen viele Ladegeräte nicht wie erwartet dem Standard und erwarten ein anderes Format. Andere akzeptieren möglicherweise nur Grenzwerte mit einer bestimmten Anzahl von Stapelstufen oder Phasen. Möglicherweise sind einige Anpassungen erforderlich, damit das genaue Ladeprofil an das Ladegerät gesendet wird. Andernfalls lehnt das Ladegerät die Nachricht ab.
Neben der Berechnung und dem Senden von Ladeprofilen ist es ebenso wichtig, Fehlermeldungen zu verstehen und Hardwaretests mit Herstellern durchzuführen. Bei Ampcontrol testen wir in der Regel mit Modellen, bevor wir komplexe Ladeprofile an einer echten Ladestation ausführen.
Zusammenfassung
Um Smart Charging in Ihrem Ladebetrieb zu verwenden, müssen Sie zunächst einen Ladevorgang starten. Sie können dies entweder tun durch Transaktion starten oder Fernstart. Nach der Initiierung sendet das Zentralsystem Ladeprofile mit einem SetChargingProfile.req.
Das SetChargingProfile.req ist einer der komplexeren OCPP-Nachrichtentypen und hat viele Konfigurationsoptionen. Diese Nachricht ermöglicht das Energiemanagement, da sie die Flexibilität bietet, komplexe Logik zu erstellen.
Die SetChargingProfile.req enthält ein Objekt Ladeprofil. Dieses Objekt spezifiziert Kernparameter wie Leistungs- oder Stromgrenzwerte, Zeitrahmen und mehr. Die Ladestation reagiert dann auf diese Befehle mit einer Bestätigung. SetChargingProfile.conf, das eine Antwort enthält, die definiert ist für Status des Ladeprofils als akzeptiert, abgelehnt, nicht unterstützt.
Gliederung
Einführung
Senden eines Ladeprofils mit SetChargingProfile.req
Beschreibung der Elemente des ChargingProfile mit CS-Ladeprofil
Ladezeitplan: beschreibt die Menge an Strom oder Strom, die pro Zeitintervall geliefert werden kann.