Skip to content

SmartMaaS-Services/DigiTwin_Plattform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Smart MaaS
SMART MOBILITY SERVICE PLATFORM
Smart MaaS

ContactIssuesProject Page


Plattform für den DigiTwin Kiel


Wir nutzen für den DigiTwin Kiel die folgende schon veröffentlichte FIWARE Kubernetes Plattform aus Paderborn.

Daraus haben wir nur die für das Projekt notwendigen Komponenten eingesetzt und uns an die Anleitung gehalten:

Liste der FIWARE Komponenten in diesem Projekt

Installation der DigiTwin API

Installation DigiTwin API

Installation der DigiTwin APP

Installation DigiTwin APP

Anmelden an die Plattform

Um mit der Plattform interagieren zu können ist ein Account notwendig den man sich über https://accounts.hauptdomain.tld/sign_up/ einrichten muss. Wir benötigen 2 System Accounts für den Betrieb des DigiTwin.

  • node-red für die Datenverarbeitung, dem laden der Daten in die Plattform und dem berechnen der Ergebnisse
  • apidt als System User für die DigiTwin API damit die REST API Daten aus der Plattform lesen kann.

Anmeldung

Der Administrator berechtigt danach die Accounts im TenantManager für den DigiTwin Tenant.

Einrichten des Tenant

Die FIWARE Plattform benötigt mindestens einen Tenant. Unter https://apis.hauptdomain.tld meldet sich der Plattform Administrator an.

LogIn

Und wechselt auf den TAB Teanant.

TenantManager

Dort wird der neue Tenant erstellt, dier mit dem Namen DigiTwin

Tenant DigiTwin

Damit wird ein neuer Tenant erstellt und der User node-red zugeordnet der für Node-RED die Erreichbarkeit des Tenants ermöglicht. Den Token der FIWARE Plattform holt sich Node-RED nun direkt aus dem Flow und verwaltet seinen Token auch über seine Gültigkeit. Sollte der Token nach der voreingestellten zeit auslaufen kann sich Node-RED diesen sebststängig erneuern. Somit dürfen nun die Flows aus Node-RED Daten aus dem Teanant DigiTwin lesen und auch frische Daten in diesen Teanant schreiben.

Datenmodelle und ihre Abhängigkeiten

Das Modell eines DigiTwin besteht aus mehreren Datenmodellen die die zusammen die Dienste einer Mobilitäts Station abbilden können.

Die Services sind dabei dynamisch und unterscheiden sich von Station zu Station

die 3 Datenmodelle MobilityRegion, MobilityStation und MobilityService sind wie im folgenden Bild aufeinander aufgebaut:

Die Datenmodelle Mobility...

Die Datenmodelle Mobility* sind frei unter SMARTCITIES/mobility errreichbar. Die Datenmodelle der MobilityServices sind entsprechend der örtlichen Gegebenheiten aus dem Fundus von smartdatamodels.org zu beziehen.

Als Beispiel ist in dem folgenden Schaubild Ein Parkplatzmodell angebildet:

Parken

Dieses Modell nutzt die zusätzliche Finktionalität des Bosch Parksensores TPS110 die Bodentemperatur aufzunehmen. Damit ist der Modellstruktur zusätzlich noch ein WeatherObserved Datenmodell zugeordnet.

Die hier gezeigte Struktur beliefert nun die MobilityServices OffStreetParking und WeatherObserved welches als Info Dienst an der MobilityStation verfügbar ist.

Die Node-RED Flows für den DigiTwin

Dem Node-RED POD müssen die folgenden Environment Variablen übergeben werden:

Name Beschreibung
ACCOUNTBROKER_PRODUCTION URL zum ACCOUNT Server
ACCOUNTBROKER_STAGING URL zum ACCOUNT Server
CLIENTID_PRODUCTION OAuth2 ClientID
CLIENTID_STAGING OAuth2 ClientID
CLIENTSECRET_STAGING OAuth2 Client Secret
CLIENTSECRET_PRODUCTION OAuth2 Client Secret
CONTEXTBROKER_PRODUCTION URL zum ContextBroker
CONTEXTBROKER_STAGING URL zum ContextBroker
FIWARE_SERVICE_PRODUCTION Fiware_Service
FIWARE_SERVICE_STAGING Fiware_Service
FIWARE_SERVICEPATH_PRODUCTION Fiware_Service_Path
FIWARE_SERVICEPATH_STAGING Fiware_Service_Path
NODE_RED_CREDENTIAL_SECRET_PRODUCTION
NODE_RED_CREDENTIAL_SECRET_STAGING
NODE_RED_FLOW_USER_PRODUCTION Der Node Red User
NODE_RED_FLOW_USER_STAGING Der Node Red User
NODE_RED_FLOW_USER_SECRET_PRODUCTION Das Secret des Users
NODE_RED_FLOW_USER_SECRET_STAGING Das Secret des Users
FLOW_TOKEN Das Flow Token

Damit NODE-RED die Daten für den DigiTwin bereitstellen kann werden verschiedene Flows benötigt:

  • Automatisches Update der Token -> /NODE-RED/FlowTokenVerwaltung.json
  • Endpunkte DigiTwin -> /NODE-RED/FlowEndpunkteDigiTwin.json
  • Empfange Notifications -> /NODE-RED/FlowEmpfangeNotifications.json
  • Parking Device verarbeiten -> /NODE-RED/FlowParkingDevice.json
  • ParkingSpot verarbeiten -> /NODE-RED/FlowParkingspotVerarbeitung.json
  • ParkingSide verarbeiten -> /NODE-RED/FlowParkingSideVerarbeiten.json
  • BodenTemperatur ParkingDevice -> /NODE-RED/FlowBodenTemperaturParkingDevice.json
  • insert GTFS Stops -> /NODE-RED/FlowinsertGTFSStops.json
  • Umweltbundesamt -> /NODE-RED/FlowUmweltbundesamt.json
  • TimeTable erstellen -> /NODE-RED/FlowTimeTableErstellen.json

Automatisches Update der Token

Token

Endpunkte DigiTwin

Token

Empfange Notifications

Notifications

Parking Device verarbeiten

Parking Device

ParkingSpot verarbeiten

ParkingSpot

ParkingSide verarbeiten

ParkingSide

BodenTemperatur ParkingDevice

BodenTemperatur

insert GTFS Stops

GTFS

Umweltbundesamt

Umweltbundesamt

TimeTable erstellen

TimeTable

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published