Dokumentation

OCPP Konfiguration

cFos Power Brain Wallbox als OCPP-Client an einem Backend betreiben

Sie müssen in der cFos Power Brain Wallbox unter den Charging Manager Einstellungen das Lastmanagement auf "beobachten" stellen. Dann klicken Sie in der Kachel zur Wallbox auf das Zahnrad, um zu den Einstellungen zu gelangen. Dort scrollen Sie zum Bereich "OCPP-Gateway Einstellungen".

OCPP-Gateway URLDie URL des OCPP-Backends, also z.B. ws://ocpp.backend.com/ für unverschlüsselte Verbindungen oder wss://ocpp.secure-backend.com/ für TLS-verschlüsselte Verbindungen. Bei manchen Backends ist zusätzlich die Angabe eines Pfads erforderlich, also z.B. ws://ocpp.backend.com/path/to/resource/.
OCPP-Gateway PasswortFalls der Backend-Betreiber ein Passwort für die OCPP-Verbindung vorgibt, ist dieses hier einzutragen. Sollte der Backend-Betreiber kein Passwort vorgeben, kann dieses Feld leer bleiben.
OCPP-Gateway Client-IDDie ID, mit der sich das Gateway beim Backend meldet. Diese ID sollte in der Regel der Betreiber des Backends vorgeben. Manche Backends identifizieren Ihre Kunden über individuelle Schlüssel, die Teil der URL sind, also z.B. ws://xyz123.backend.com/ oder ws://ocpp.backend.com/xyz123/. In dem Fall kann es sein, dass der Kunde die Client-ID frei wählen kann.

Eine OCPP-Wallbox mit dem cFos Charging Manager betreiben

Hierzu klicken Sie auf "Einstellungen" der entsprechenden Wallbox und tragen folgendes ein:

Geräte-TypEVSE with OCPP 1.6
AdresseHier müssen Sie die ChargeBox-ID eintragen, die in der Wallbox konfiguriert wurde.
IdHier müssen Sie die Connector-ID eingeben. Für Wallboxen mit einem Ladepunkt ist dies stets 1, bei zwei Ladepunkten entsprechend 1 oder 2, usw.

In den Einstellungen des Charging Managers wählen Sie unter "OCPP Server TLS" die Option "Aus", wenn keine verschlüsselten Verbindungen angenommen werden sollen, "Erkennen", wenn sowohl verschlüsselte als auch unverschlüsselte Verbindungen angenommen werden sollen, und "An", wenn ausschließlich verschlüsselte Verbindungen angenommen werden sollen. Unter "OCPP Server Port" wählen Sie den TCP-Port, auf dem die OCPP-Verbindungen angenommen werden sollen (Standard 19520). Das OCPP-Server Passwort ist optional und muss, falls es angegeben wird, auch in der Wallbox eingetragen werden.

In der Wallbox konfigurieren Sie in den OCPP-Einstellungen als Protokoll OCPP-1.6J. Als Server tragen Sie die IP-Adresse des Charging Managers und den gewählten OCPP-Port ein. Dieser wird in der Regel ein ws:// vorangestellt. Also z.B. ws://192.168.178.42:19520/

Das vorangestellte ws:// gibt an, dass die Verbindung unverschlüsselt aufgebaut wird. Dies sollte in der Regel auch ausreichend sein, solange Wallbox und cFos Charging Manager im selben lokalen Netzwerk sind. Soll die Verbindung hingegen verschlüsselt aufgebaut werden, ist statt dessen wss:// voranzustellen. Bitte achten Sie darauf, dass Ihre Wahl von ws:// oder wss:// mit Ihrer Wahl des Parameters "OCPP Server TLS" (s.o.) übereinstimmt. Bei ws:// muss der Parameter "OCPP Server TLS" auf "Aus" oder "Erkennen" stehen, bei wss:// muss er auf "An" oder "Erkennen" stehen.
Die im Charging Manager gewählte ChargeBox-ID muss ebenfalls in der Wallbox eingetragen werden. Es gibt Wallboxen, bei denen diese nicht frei gewählt werden kann, sondern fest vorgegeben ist und z.B. der Seriennummer der Box entspricht. Dieses muss dann im Charging Manager entsprechend eingetragen werden.

In einigen Wallboxen wird der Port in einem separaten Feld eingetragen. Bei manchen Geräten kann oder muss das ws:// weggelassen werden, bei anderen ist es zwingend erforderlich. Die meisten Wallboxen müssen neu gestartet werden, nachdem die OCPP-Einstellungen geändert wurden.

Ladeprofile löschen

Der cFos Charging Manager setzt per OCPP in einer mit ihm verbundenen Wallbox oder Ladestation sogenannte Ladeprofile. Das Default-Profil sagt, dass nicht geladen werden darf. Manche Ladestationen speichern diese Ladeprofile auch über einen Reset hinaus. Soll eine solche Ladestation zu einem späteren Zeitpunkt ohne den cFos Charging Manager betrieben werden, müssen die Ladeprofile dort zunächst gelöscht werden. Dies lässt sich mit dem cFos Charging Manager wie folgt bewerkstelligen:

  1. Verbinden Sie die Ladestation per OCPP mit dem Charging Manager. In der zugehörigen Kachel im Charging Manager muss unten die Kennung der Ladestation erscheinen.
  2. Wählen Sie im Charging Manager unter Einstellungen \ Parameter \ Bei Geräte-Deaktivierung: "Ladestrom-Limit aufheben" aus und speichern Sie die Einstellungen.
  3. Klicken Sie im Charging Manager auf das grüne Zahnrad der Kachel, die zu der Ladestation gehört. Dort schalten Sie oben links den Schalter "aktiviert" aus und speichern die Einstellungen. Dadurch werden alle Ladeprofile in der Station gelöscht.

OCPP-Gateway im cFos Charging Manager

Das OCPP-Gateway im cFos Charging Manager erlaubt, jede Wallbox, die im Lastmanagement eingerichtet ist, gegenüber einen OCPP-Backend wie eine OCPP-Wallbox aussehen zu lassen.
Es stellt dem Backend gegenüber ein einheitliches Interface zur Verfügung, unabhängig davon, was die konkrete Wallbox kann. Die Wallbox muss nur vom cFos Charging Manager fernsteuerbar sein, während OCPP Unterstützung nicht erforderlich ist.
Falls die Wallbox OCPP unterstützt, kann der cFos Charging Manager gegenüber dem Backend einige Schwächen ausgleichen. Funktionen des OCPP-Gateway:
  • Eine Wallbox, die kein OCPP kann, gegenüber dem Backend wie eine Wallbox mit OCPP erscheinen lassen
  • Eine OCPP-fähige Wallbox, die in ein externes Backend (z.B. zu Abrechnungszwecken) eingebucht ist, mittels OCPP im lokalen Lastmanagement steuern
Abbildung OCPP-Gateway im cFos Charging Manager

Einige Wallboxen mit OCPP, wie z.B. die Innogy eBox professional S oder Mennekes Amtron, können eichrechtskonforme Zählerdaten an das OCPP-Backend übermitteln. Das OCPP-Gateway des cFos Charging Managers kann solche Zählerdaten transparent an das Backend weiterleiten.

Einige Wallboxen mit OCPP können Giro-E Daten vom EC-Karten Terminal an das Backend senden. Diese leitet der cFos Charging Manager transparent an das Backend weiter.

Zum Betrieb einer cFos Power Brain Wallbox ist das Gateway nicht erforderlich, denn die cFos Power Brain Wallbox erlaubt den gleichzeitigen Betrieb von OCPP zum Backend zur Autorisierung und Abrechnung, sowie Modbus zum Lastmanagement. Hierzu konfigurieren Sie unter "cFos Power Brain Konfiguration" den OCPP-Client und aktivieren zusätzlich Modbus. Dann tragen Sie unter "Start" eine cFos Power Brain Wallbox ein und geben die Adresse bzw. COM Port-Daten und Modbus-ID an.

Wenn Sie das Gateway einrichten möchten, müssen Sie folgende Parameter konfigurieren. Hierzu klicken Sie auf "Einstellungen" der entsprechenden Wallbox und tragen Folgendes ein:

OCPP-Gateway URLDie URL des OCPP-Abrechnungs-Backends, also z.B. ws://ocpp.backend.com/ für unverschlüsselte Verbindungen oder wss://ocpp.secure-backend.com/ für TLS-verschlüsselte Verbindungen. Bei manchen Backends ist zusätzlich die Angabe eines Pfads erforderlich, also z.B. ws://ocpp.backend.com/path/to/resource/.
OCPP-Gateway PasswortFalls der Backend-Betreiber ein Passwort für die OCPP-Verbindung vorgibt, ist dieses hier einzutragen. Sollte der Backend-Betreiber kein Passwort vorgeben, kann dieses Feld leer bleiben.
OCPP-Gateway Client-IDDie ID, mit der sich das Gateway beim Backend meldet. Diese ID sollte in der Regel der Betreiber des Backends vorgeben. Manche Backends identifizieren Ihre Kunden über individuelle Schlüssel, die Teil der URL sind, also z.B. ws://xyz123.backend.com/ oder ws://ocpp.backend.com/xyz123/. In dem Fall kann es sein, dass der Kunde die Client-ID frei wählen kann.

Zertifikate für OCPP-Clients und Server

Zertifikate kommen bei der Verwendung verschlüsselter TLS-Verbindungen zwischen Client und Server zum Einsatz. Zum erfolgreichen Aufbau einer solchen Verbindung benötigt der Server stets ein Zertifikat und einen zugehörigen privaten Schlüssel. Der cFos Charging Manager hat dazu bereits ein selbst-signiertes Zertifikat an Bord. Es müssen also keine eigenen Zertifikate eingespielt werden. Diese Option besteht allerdings sowohl auf der Server- als auch auf Clientseite.

Serverseitig können ein eigenes Zertifikat und der zugehörige private Schlüssel eingespielt werden. Dabei kann dieses Zertifikat selbst-signiert oder auch von einer offiziellen Zertifizierungsstelle (Certificate Authority, CA) signiert sein. Wird im Client kein CA-Zertifikat hinterlegt, kommt so in jedem Fall eine TLS-Verbindung zustande. Werden im Client ein oder mehrere CA-Zertifikate hinterlegt, müssen die jeweiligen Server-Zertifikate dazu passen (OCPP Security Profile 2). Als CA-Zertifikat kann das Server-Zertifikat selbst hinterlegt werden. Hat der Client eine Verbindung ins Internet, können dort auch Root-Zertifikate von Zertifizierungsstellen hinterlegt werden, die das Server-Zertifikat signiert haben. Es kann aber auch ein eigenes Root-Zertifikat hinterlegt werden, das das Server-Zertifikat signiert hat.

Als zusätzliche Sicherheitsstufe kann zusätzlich ein Zertifikat auch in umgekehrter Richtung verwenden werden (OCPP Security Protocol 3). Dazu werden im Client ein Zertifikat und der zugehörige private Schlüssel hinterlegt. Der Server erhält unter den CA-Zertifikaten ebenfalls dieses Zertifikat oder ein Root-Zertifikat, das das Client-Zertifikat signiert hat. Damit kommt die TLS-Verbindung nur zustande, wenn auch der Server das Client-Zertifikat verifizieren kann.

Sie Können Zertifikate selbst erstellen, z.B. mit dem Programm OpenSSL, das kostenlos für Windows, wie auch für Linux erhältlich ist. Es folgen ein paar Beispiele unter Verwendung von OpenSSL. Die Beispiele verwenden in Verbindung mit dem Parameter -config eine Konfigurationsdatei, die im UTF8-Format gespeichert ist. Dies hat den Vorteil, dass im Zertifikat auch Umlaute und sonstige Unicode-Zeichen verwendet werden können. Die Konfigurationsdatei hat stets folgendes Format:

         [req]
         prompt = no
         distinguished_name = dn
         req_extensions = ext

         [dn]
         CN = Unsere Tiefgarage
         emailAddress = info@tiefgarage-koeln.de
         O = Tiefgarage Köln GmbH
         OU = Abteilung 13
         L = Köln
         C = DE

         [ext]
         subjectAltName = DNS:tiefgarage-koeln.de,DNS:*.tiefgarage-koeln.de
                  

Erstellung eines privaten Schlüssels rootCA.key für ein Root-Zertifikat:
openssl genrsa -des3 -out rootCA.key 4096

Erstellung eines selbst-signierten Root-Zertifikats rootCA.crt unter Verwendung des oben erstellten privaten Schlüssels rootCA.key und der Konfigurationsdatei rootCA.cnf (der Parameter -days gibt an, wieviele Tage lang das Zertifikat gültig ist):
openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 365 -out rootCA.crt -config rootCA.cnf -utf8

Erstellung eines privaten Schlüssels client.key für ein Client-Zertifikat:
openssl genrsa -out client.key 2048

Erstellung eines Certificate Signing Requests (CSR) client.csr für ein Client-Zertifikat unter Verwendung des oben erstellen privaten Schlüssels client.key und der Konfigurationsdatei client.cnf:
openssl req -new -key client.key -out client.csr -config client.cnf -utf8

Erstellung eines Client-Zertifikats client1.crt, das mit dem obigen Root-Zertifikat rootCA.crt und dem zugehörigen privaten Schlüssel rootCA.key signiert wird (der Parameter -days gibt wieder an, wie lange das Zertifikat gültig ist):
openssl x509 -req -in client.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out client.crt -days 365 -sha256

Parallelbetrieb OCPP und Modbus

Sie können eine cFos Power Brain Wallbox parallel mit Modbus und OCPP betreiben, um sie z.B. per Modbus im lokalen Lastmanagement einzubinden und per OCPP an ein Abrechnungs-Backend zu hängen. Hierzu muss in den Einstellungen der cFos Power Brain Wallbox "Mosbus aktivieren" angeschaltet sein und ein TCP-Port bzw. COM-Parameter konfiguriert sein, sodass die Wallbox mittels Modbus ansprechbar ist. Außerdem muss unter den OCPP-Einstellungen eine URL zum OCPP-Backend, die OCPP-Client-ID und ggf. die OCPP-Connector-ID eingestellt sein. OCPP startet dann Ladevorgänge, d.h. Transaktionen. Es bestimmt also anhand der übertragenen RFID, ob die Transaktion erlaubt ist und startet dann ggf. das Laden. Falls kein RFID-Leser vorhanden ist, können Sie eine feste RFID konfigurieren, die dem OCPP-Backend bekannt ist. Mittels Modbus kann nun der Ladestrom vom Lastmanagement reguliert werden, d.h. der durch das OCPP-Ladeprofil vorgegebene Ladestom kann reduziert werden. Das Ladeprofil gibt dabei den maximalen Ladestrom vor. Der Ladestrom ist also immer das Minimum der per Modbus und OCPP vorgegebenen Ladeströme. Das Laden kann via Modbus oder OCPP auch temporär deaktiviert und wieder aktiviert werden. Geladen wir nur, wenn beide – Modbus und OCPP-Backend – das Laden erlauben.