Zentrale Clouds haben auch Nachteile

Schwarmintelligenz an der Edge für die Cloud

11. April 2023, 13:18 Uhr | Fred Uwe Prahm
© Aryan | stock.adobe.com

In der Produktion haben zentralisierte Cloud-Systeme für viele Anwendungen auch Nachteile. Denn die gesamte Intelligenz befindet sich in der Cloud – die Edges sind reine E/As für Sensoren und Aktoren. Viel effektiver und sicherer sind Schwärme von intelligenten und kooperativen Edge-Controllern.

Diesen Artikel anhören

Echtzeitfähige Edge-Systeme dieser Art sind jetzt von PMS Prahm Microcomputer Systeme in Form der ARCON- und RACKSYS-Systeme lieferbar. In Bild 1 wird gezeigt, wie das ARCON-System alle Prozess-, Feld- und Kontroll-Anforderungen einer Megawatt-Lithium-Ionen-Batterie erfüllt. Zwanzig 24-V-Batterien sind jeweils mit einem eigenen Modul-BMS (Battery Management System) ausgestattet.

Anbieter zum Thema

zu Matchmaker+
Die intelligenten und kooperativen ARCON Edges
Bild 1. Die intelligenten und kooperativen ARCON Edges.
© PMS

Die ARCON-Steuerung funktioniert als Strang-BMS, sammelt alle relevanten Daten der 480-V-Gesamtbatterie und stellt diese über ihre Ethernet-Schnittstelle der Cloud zur Verfügung. In der Cloud werden dann die übergeordneten Unternehmensaufgaben gelöst, vor allem befinden sich dort die SCADA-, MES- und ERP-Systeme.
 
Bei der zentralisierten Cloud werden dagegen alle Sensor- und Aktor-Daten der E/A-Edges über Ethernet zur Cloud kopiert, um dann aus den Daten mithilfe passender Algorithmen die gewünschten Ergebnisse zu erstellen.

Dies hat mehrere schwerwiegende Nachteile zur Folge:

  •  Bandbreitenprobleme, selbst bei 5G-Netzen
  • • Energieprobleme für die Speicherung der vielen kopierten Edge-Daten
  • • Durch Cyberkriminalität, Störung oder Überlastung entstehen schnell gravierende Probleme für das Gesamtsystem
  • • Ungewisse Gültigkeit der Daten, etwa bei veralteten oder falsch interpretierten Daten
  • • Unklarheiten bezüglich der Data Ownership

In den Branchen Automotive und Avionik sind diese Probleme schon längst gelöst. Jeder, der einmal einen deutschen Oberklasse-PKW gefahren hat, erkennt schnell, dass intelligente Systeme ganz ohne IoT und Cloud auskommen. Denn hier belässt man alle Daten der räumlich verteilten ECUs (Electronic Control Units) in den jeweiligen intelligenten Embedded-Mikrocomputersteuerungen.

Dort geht man folgendermaßen vor:

  •  Die ECUs ermöglichen den Zugriff auf ihre Daten mit Polling-Botschaften. Nur wenn diese Botschaften vorhanden sind und gegebenenfalls ein passendes Schlüsselwort empfangen wurde, versendet oder empfängt die ECU die gewünschten Daten.
  •  Nur bei Bedarf werden die gewünschten Daten aus den ECU gelesen/geschrieben. So ist sichergestellt, dass es keine Bandbreitenprobleme gibt und die Daten immer neu und gültig sind.
  • In der ECU werden mit passenden Algorithmen die gewünschten Ergebnisse bestimmt.
  •  In der ECU werden nur die erstellten Ergebnisse gespeichert und eventuell anderen ECUs mit der gleichen Methode zur Verfügung gestellt.

In vielen technischen Prozessen ist Echtzeit eine unbedingte Anforderung, was bei zentralisierten IoT-Clouds nicht möglich ist. In den Branchen Automotive und Avionik ist auch dies bereits gelöst. Denn hier ist Realtime-Fähigkeit stets durch echtzeitfähige Bussysteme vorhanden.

Alle aktuellen 32-Bit-Mikrocontroller sind dafür mit echtzeitfähigen Kommunikationsschnittstellen ausgestattet:

  •  Mit dem CAN-Bus werden alle ECUs untereinander kooperativ. Die ECUs können ihre Daten mit anderen ECUs in Echtzeit teilen.
  •  Mit einem Ethernet-Anschluss stellen die intelligenten und kooperativen Edge-ECUs ihre Daten mit Polling-Botschaften der Cloud zur Verfügung.

Brems-ECUs von heutigen PKWs etwa haben neben ABS noch weit mehr als 20 Funktionen. Zum Beispiel: Während einer schnellen Kurvenfahrt können die Vorder- oder Hinterräder ausbrechen. Durch eine zu langsame Reaktion des Fahrers kann das Fahrzeug außer Kontrolle geraten und einen Unfall verursachen.

Zur Vermeidung eines solchen Unfalls kann die echtzeitfähige Brems-ECU für eine ausreichend schnelle Reaktion sorgen. Die Lenkrad- und Seiten-Airbags dienen dabei der Brems-ECU als Beschleunigungssensoren. Die Lösung für das Ausbrechen der Vorder- oder Hinterräder ist also eine neue Applikation für die Brems-ECU und das Auslesen der Beschleunigungsdaten aus den Lenkrad- und Seitenairbag-Sensoren über CAN. Die Brems-ECU kann dann gezielt bestimmte Räder innerhalb weniger Millisekunden feindosiert abbremsen und den Wagen so in der Spur halten. Ähnliche Methoden werden auch bei anderen Brems-Applikationen eingesetzt, etwa beim »Elchtest«, der 1997 zum Umkippen eines PKWs der damals neuen Mercedes-Benz-A-Klasse führte.

Das ARCON-Hutschienensystem
Bild 2. Das ARCON-Hutschienensystem.
© PMS

In Bild 2 wird gezeigt, wie zwei analoge ARCON Edges durch Zusammenstecken auf der Hutschiene miteinander über den in der Hutschiene verlaufenden HBus verbunden sind. Im HBus befinden sich schnelle CAN- und UART-Bitbusse sowie Flag- und Alarmleitungen. An den Bus-Enden kann man die Bus-Terminierungen sehen. Für die Weiterführung auf zusätzlichen Hutschienen stehen entsprechende Kabel zur Verfügung.

Das RACKSYS-Steuerungssystem ist ein 19-Zoll-Racksystem für bis zu 14 Single- Eurocards des RACKSYS-Systems. Eine Backplane-Leiterplatte sorgt für die echtzeitfähige Busverbindung aller RACKSYS-Karten, mitsamt der Busterminierungen und der Verkabelung zu weiteren RACKSYS-Systemen. Eine 12-V-Stromversorgung ist standardmäßig vorhanden. Eine weitere Off-the-Shelf-Hardware ist das Battery-Management-System von PMS mit seinen Modul- und Strang-BMSen.

PMS Universal Programming Studio – die Systemlösung
Bild 3. PMS Universal Programming Studio – die Systemlösung
© PMS

Die Softwareentwicklung nur mit einem Embedded-C-Entwicklungssystem und einer Rapid-Prototypen-Karte ist heutzutage nicht mehr ausreichend. Deshalb hat PMS das »Universal Programming Studio« (UP Studio) entwickelt. Die integrierte Bedienoberfläche (IDE) umfasst ein umfangreiches Toolset von Konfiguratoren, grafischen Editoren, Codegeneratoren und On-Line-Debuggern, siehe Bild 3. Für alle Embedded-Steuerungen, die mit UP Studio entwickelt werden, gibt es ein passendes Echtzeit-Embedded-Betriebssystem – das OSEK-kompatible Betriebssystem »PMS StandOS«. Es ist sowohl in allen ARCON- und RACKSYS-Steuerungen vorhanden als auch für eine kostengünstige und einmalige Lizenzgebühr stückzahlunabhängig für jede kundenspezifische Hardware verfügbar.

In Form von UP Studio, ARCON, RACKSYS und StandOS kommen geeignete Systemkomponenten aus verschiedenen Welten zusammen.

Mit UP Studio lässt sich unterschiedliche Zielhardware programmieren:

  •  Embedded-Echtzeit-Steuerungen durch Ablauf von binärem Code (Intel-HEX, S-Record).
  •  SPS durch Ablauf von IEC-61131-AWL-Interpreter-Code, läuft parallel in eigener Task.
  •  PC/IPC mit der Programmiersprache C#. Alle grafischen Editoren können entweder C-, C++-, C#- oder Interpreter-Code erstellen.
  • Debugging grafischer Programme direkt in den grafischen Editoren. Dort ist wie im C-Code Step-In, Step-Over, Run mit Breakpoint und Zyklusstep vorhanden.

Mit dem »PMS StandOS Configurator« lassen sich produktspezifische Zustände konfigurieren, etwa Flash, Sleep und Run. Diesen Zuständen können dann Tasks zugeordnet werden, die dann nur in diesen Zuständen im Multitasking-Verfahren ablaufen.

Für die Buskommunikation bieten UP Studio und StandOS die Bussysteme CAN, LIN/Bitbus und Ethernet. Der gesamte Download, das Debugging und das Monitoring laufen stets über diese UDS-kompatiblen Busse (Unified Diagnostic Services).

Der PMS System Configurator
Bild 4. Der PMS System Configurator.
© PMS

Für sie und für den AUTOSAR-kompatiblen (Automotive Open System Architecture) DTC-Fehlerspeicher (Diagnostic Trouble Code) stehen passende Konfiguratoren bereit.

Für jede Embedded-Steuerung ist ein eigenes Verzeichnis vorgesehen. Das ergibt dann bei Bussystemen eine Baumstruktur von Projektverzeichnissen. Zur Konfigurierung räumlich verteilter Steuerungen dient der Konfigurator »PMS System Configurator«, siehe Bild 4.

Der Funktionsbaustein-Editor FB2
Bild 5. Der Funktionsbaustein-Editor FB2.
© PMS

Wenn als »Device Type« eine der ARCON- oder RACKSYS-Steuerungen angegeben wurde, erscheint nach einem Doppelklick auf den Knoten-Namen/Verzeichnisnamen der passende »Device Configurator«, mit dem alle analogen und digitalen Ein- und Ausgänge konfiguriert werden können. Mit dem System Configurator wird auch verhindert, dass Knoten am Bus unterschiedliche Baudraten haben und dass es Konflikte mit Knoten-Namen und -IDs gibt. Der System Configurator generiert automatisch Quellcode in den passenden Unterverzeichnissen.

PMS UP Studio verfügt über die folgenden Konfiguratoren:

  • Der StandOS-Konfigurator zur Erstellung der Netzwerk- und Projektstruktur der Feldbusse
  • Hardware-Konfiguratoren zur Konfigurierung der E/As und zur Generierung der E/A-Treibersoftware
  • Konfigurationstool zur interaktiven Erstellung und Erprobung von UDS-Botschaften

PMS UP Studio bietet die Programmierung mit drei grafischen Editoren und vier textualen Programmiersprachen:

  • Funktionsbaustein-Editor FB2 (siehe Bild 5)
  • Flussdiagramm-Editor FC2
  • Entscheidungstabellen-Editor DT2
  • C, C++, C# und IEC-61131-AWL

Alle drei grafischen Programmiersprachen sind für den Ausdruck und die Dokumentation in DIN-A4- und DIN-A3-Seiten konzipiert, jeweils wahlweise in Portrait- oder Landscape-Darstellung. Alle grafischen Programme können beliebig viele Seiten haben. Das Erstellen, Verändern und Löschen von Seiten und das Blättern in den Seiten funktioniert einfach und intuitiv.

Alle aufrufbaren Funktionen sind in der am rechten Bildschirmrand befindlichen Toolbox ersichtlich. Dabei stehen im IEC-61131-Funktionsbaustein-Editor PMS-FB2 alle S5-Funktionen der Simatic-S5-155U zur Verfügung – unter anderem:

  • Die vier arithmetischen Grundrechenarten
  • SR- und RS-Flip-Flops
  • Alle Oder- sowie Und-Funktionen
  • Die fünf S5-Timer-Funktionen: SI, SE, SD, SS, und SF
  • Der S5-Zähler mit allen I/Os: Startwert mit Startwertübergabe, Hoch- und Runterzählen, Start, Reset, Timerwert-Ausgang und Q-Ausgang

Die Zahlenwerte sind dabei stets 32-Bit-Werte, passend für die neuen ARM-Cortex-Mikrocontroller.

Alle bereits definierten E/As stehen per Drag-and-drop zur Verfügung, und neue E/As werden erstellt, indem auf ein leeres Feld geklickt wird. Sämtliche Editiermöglichkeiten wie Undo, Redo, Cut, Copy, Paste und Löschen funktionieren wie in allen Microsoft-Editoren.

Alle grafischen und textualen Programmiersprachen sind untereinander kompatibel. Eine Funktion, die im FB2 aufgerufen wird, kann beispielsweise mit dem Flussdiagramm-Editor FC2 erstellt worden sein. Und eine Funktion, die im FC2-Editor aufgerufen wird, lässt sich mit dem Entscheidungstabellen-Editor DT2 erstellen. Alle grafischen Editoren können Funktionen aufrufen, die in C geschrieben wurden.

Zudem bieten alle grafischen Editoren von PMS die gleichen Features, die beispielsweise in CAD-Tools üblich sind:

  • Connected Objects: Grafische Objekte hängen zusammen, und Überschneidungen werden verhindert.
  • Automated Objects - Beispiel: Ein Eingang mit dem passenden Variablentyp wird an einer neuen Funktion automatisch mit der Verbindungsleitung verlegt.
  • Jeder rechte Mausklick öffnet für das angeklickte Objekt am rechten Bildschirmrand ein entsprechendes Eigenschaftsfenster.

Dann sind weitere generelle Objekteinstellungen möglich, etwa Objektfarbe und Text Font.

Last but not least stehen für alle PMS-Editoren und -Konfiguratoren interaktive Help-Features zur Verfügung.

 

Der Autor

 

Fred Uwe Prahm von Prahm-Microcomputer-Systeme
Fred Uwe Prahm von Prahm-Microcomputer-Systeme.
© PMS

 

Fred Uwe Prahm ist Geschäftsführer von PMS Prahm Microcomputer Systeme.

 

 


Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Echtzeit-/Embedded Software

Weitere Artikel zu Edge-/Fog-Controller

Weitere Artikel zu IoT / IIoT / Industrie 4.0