Software Engineering Projekt im Wintersemester 2017/2018
Zusammen mit der Firma PPC entwickelten wir den Smart Energy Identifier.
Dieser soll als Kontrolleinheit in einer Ladesäule für Elektoautos fungieren. Es soll in Zukunft möglich sein den getankten Strom
nicht nur pauschal abzurechnen, sondern mit Hilfe des Stromtarifs und der Geschwindigkeit des Ladevorgangs berechnet werden.
Team Logo
Die Power Plus Communications AG (PPC), mit Sitz in Mannheim, ist der führende Anbieter von Smart Meter Gateways und Kommunikationstechnik für die Digitalisierung der Energiewende. PPC verfügt über herausragende Kompetenz im Energie-, Netzwerk- und Telekommunikationsbereich sowie in der Software- und Hardwareentwicklung. Seit der Gründung führen die beiden Vorstände Ingo Schönberg und Eugen Mayer das Unternehmen. Die PPC beschäftigt heute mehr als 60 Mitarbeiter.
Die Firma Power Plus Communications (PPC)
bietet bereits diverse Produkte die intelligentes Messsystems (iMSyss)
ermöglichen. Dieses Projekt beschäftigt sich mit der Integration eines Moduls zum Betreiben einer Ladeeinrichtung für
Elektroautos in ein solches System. Dazu soll auf der Hardware eines Smart Meter Gateways (SMGWs)
der so genannte
Smart Energy Identifier (SEI)
entwickelt werden. Dieses Modul soll einem Kunden ermöglichen, sich an einer Ladesäule
zu authentifizieren und sein Elektroauto zu laden. Mit diesem Projekt hat sich Urs Glaubitt, im Folgenden der Auftraggeber
genannt, an die TU Darmstadt gewandt.
Das Modul muss dazu wie ein herkömmlicher Stromzähler in das iMSys
integriert werden. Das bedeutet es muss innerhalb
des Lokales Metrologisches Netz (LMN)
Daten per Smart Message Language (SML)
an das SMGW
senden, es
muss ein Zugang für einen Service-Techniker geschaffen werden und das Modul muss über das Controllable Local System
(CLS)
vom Charge Point Operator (CPO)
administriert werden können.
Zudem müssen die Vorgaben des Bundesamt für Sicherheit in der Informationstechnik (BSI)
bezüglich Anforderungen
für den sicheren Einsatz von intelligenten Messsystemen eingehalten werden. Dazu muss jede Verbindung die das SEI
eingeht mit kryptographischen Methoden abgesichert werden.
Die Herausforderung des Projekts besteht darin, dass eine Ladesäule nicht wie ein üblicher digitaler Stromzähler in das
iMSys
integriert werden kann. Im Gegensatz zu herkömmlichen Stromzählern findet bei der Ladesäule eine Interaktion
mit einem Kunden statt, der authentifiziert werden muss und den Ladevorgang unterbrechen oder vorzeitig beenden
kann.
Das SEI
soll einen Kunden durch die RFID-Karte mit Zertifikaten des CPO
authentifizieren können und anschließend
die Kundennummer an das SMGW
übertragen. Am SMGW ist auch der Zähler der Ladeeinrichtung angeschlossen. Das
SMGW kann anschließend die Zählerdaten mitsamt Kundennummer an den CPO übertragen. So kann der Ladevorgang
einem Verbraucher zugeordnet und dementsprechend Tarifiert werden.
Als Entwickler können wir auf das System per Secure Shell (SSH)
mit root-Rechten Zugreifen. Es handelt sich um ein
embedded-PTXDist-Linux, das PPC in der selben Form bereits für das SMGW verwendet. Bei der Hardware handelt es sich
um ein ARMv5-Board. Ein Großteil des Speichers (außer /usr/local/) ist persistent. Beim Start des Systems wird das
Skript /usr/local/bin/custom.sh aufgerufen. Dieses kann durch die Entwickler angepasst werden um ein bestimmtes Verhalten
nach einem Neustart zu erzeugen. Eine Paketverwaltung ist mit Open Package Management (OPKG)
vorhanden,
sodass die Software zu einem Debian-Package gepackt und installiert werden kann.
Auf Grund der geringen Rechenleistung (ARM926EJ-S mit ~226 BogoMIPS), des begrenzten Speichers (~250MB
Arbeitsspeicher, ~200MB freier Festspeicher) und der hardwarenahen Anforderungen wird die SEI-Software fast ausschließlich
aus C und C++ Komponenten bestehen.
Deadlines einhalten
Teamtreffen planen
am besten wöchentlich
persönlicher Austausch ist schneller
Protokolle schreiben
Die Kommunikation mit dem Auftraggeber und der Uni aufrecht erhalten
Lastenheften, ISO-Normen, etc. kritisch gegenüber stehen
Fehler sind möglich
Nicht zu 100% auf gestellte Hardware/Software verlassen
Implementationen können fehlerhaft sein
Richtlinien müssen nicht zu komplett befolgt worden sein
Dokumentation der gestellten Hardware/Software sollte gefordert werden