Startseite » Steuerungstechnik »

Energie sparen durch Green Coding in der Industrieautomatisierung

Nachhaltige Software
Energie sparen durch Green Coding in der Industrieautomatisierung

Software-Applikationen werden durch moderne Fähigkeiten wie Echtzeit-Datenanalyse und KI immer energiehungriger. Daher schlummert gerade in der Automatisierung mit ihren häufig 24/7 laufenden Anlagen großes Einsparpotential. Gehoben werden kann es durch „grünere Programmierung“ (Green Coding).

 

Tobias Meyer, freier Mitarbeiter der KEM Konstruktion|Automation

Inhaltsverzeichnis

1. Der aktuelle Status zum Green Coding
2. Einsparpotentiale des Green Coding
3. Wege zum besseren Programmieren
4. Kompatibilität versus Ressourceneffizienz
5. Was bringt ‚schlanke‘ Software?
6. Chancen für das Green Coding

Der aktuelle Status zum Green Coding

KEM Konstruktion|Automation: Wie bekannt ist das Thema „Green Coding“ bei Ihnen im Unternehmen?

Henning Mersch (Beckhoff): Der Begriff ist bekannt – und viele unserer Bemühungen im Unternehmen zur CO2-Reduktion, Steigerung der Energieeffizienz usw. lassen sich auch im Bereich Green Coding einordnen.

Carolin Rubner (Siemens): Bei Siemens strukturieren wir unsere Forschungsthemen in Company Core Technologies (CCT), unter Software, System and Processes leite ich das Modul Sustainable Software Engineering and industrial-grade DevOps. Insofern haben wir das Green Coding als Forschungsthema schon länger identifiziert und im Sustainable Software Engineering gebündelt.

Dr. Hans Egermeier (Talsen Team): Wir sind aktiv dabei, das wichtige Thema Nachhaltigkeit durch die Digitalisierung voranzutreiben. Es gibt einen hemdsärmeligen Spruch, der in der praktischen Softwareumsetzung häufig die Führungsgröße ist: Make it run, make it right, make it fast. Für viele Teams, in die ich als Berater Einblick habe, ist schon der erste Schritt ein riesengroßes Thema, also eine Software überhaupt einmal fehlerfrei und robust zum Laufen zu bringen. Make it right – also sauber zu coden – ist dann schon die nächste große Hürde, für die dann aber in den Projekten häufig keine Zeit mehr ist. Die Firmen sind dann froh, dass es läuft. Never touch a running system – und auf geht‘s zum nächsten Projekt. Make it fast und neuerdings dann noch make it green sind dann beinahe auf demselben, schwer noch zusätzlich zu realisierenden Level.

Dr._Hans_Egermeier,_Geschäftsführer,_Talsen_Team
„Der wichtigste Hebel wird sein, bereits in der Programmiererausbildung das Bewusstsein für Green Coding zu schaffen“, sagt Dr. Hans Egermeier, Geschäftsführer der Talsen Team GmbH, Freilassing.
Bild: Talsen Team

Einsparpotentiale des Green Coding

KEM Konstruktion|Automation: Die Forschung zeigt, dass etwa eine Zufallszahlen-Funktion in Python viel Strom braucht, ein anderes Modul mit dem gleichen Zweck kommt mit 2 % der Energie aus. Textverarbeitungsprogramme unterscheiden sich im Energiebedarf für die gleiche Tätigkeit um das Vierfache. Sehen Sie ein ähnliches Sparpotential in der Software für Industrieautomatisierungssysteme?

Mersch: Für die Industrieautomatisierung, insbesondere die PC-basierte Steuerungstechnik wie sie Beckhoff seit Anbeginn nach vorne treibt, gibt es eine wesentliche Stellschraube: das Betriebssystem. Deswegen passt Beckhoff ein generisches Betriebssystem wie Windows auch hochgradig an die Industrieanforderungen an. So werden beispielsweise zur Ressourceneinsparung Windows-Dienste abgestellt oder für ein Desktop-System übliche, hier aber verzichtbare Komponenten nicht installiert. Zudem bietet Beckhoff Betriebssysteme an, die mit kleinerem Footprint auskommen. Klassisch war das Windows CE, nun ist es Twincat/BSD. Auch in unseren eigenen Testzentren für die Überprüfung der Produktqualität werden bevorzugt ressourcenschonende Betriebssysteme eingesetzt. Natürlich funktioniert dies besonders gut für die arithmetischen, vom Betriebssystem unabhängigen Teile. Letztendlich laufen Integrationstests auf allen Betriebssystemen, die wir anbieten.

Rubner: Der allererste Schritt muss wirklich sein, das Bewusstsein zu schaffen, dass auch die Digitalisierung Emissionen erzeugt. Wir erreichen viele Nachhaltigkeitsziele durch Digitalisierung, müssen aber auch schauen, dass die Digitalisierung selbst die Nachhaltigkeit mit betrachtet. Wir müssen betrachten, was die CO2-Emission und den Ressourcenverbrauch beeinflusst: Welche Architekturen wähle ich, arbeite ich an einem Monolith oder ist die Software modular sowie viele andere Thematiken wie Implementierung oder auch die DevOps-Infrastruktur. Schlussendlich müssen wir in der Anlage messen und konkrete Zahlen zur Verfügung stellen, durch die dann via Feedbackschleife wieder das Software- und Solutiondesign verbessert werden kann.

Egermeier: Dafür ist es wichtig, das praktische Produktionsumfeld zu kennen. Denn einige Anlagen werden dort nach wie vor nie abgeschaltet, und zwar nicht, weil 24/7 produziert wird, sondern weil sich die Betreiber nicht trauen, sie abzuschalten – aus Angst, das Ganze wird nie wieder hochfahren. Sprich, allein im „make it right“ liegt schon ein riesengroßes Optimierungspotential: Anlagen so zu programmieren, dass ich sie tatsächlich fallbezogen einfach ausschalten und dann wieder anschalten kann. Schon so kann man Energie sparen, denn allein die Implementierung eines Schlafmodus wäre je nach Verständnis schon ein großer Beitrag zum Green Coding.

Engineering 2036: Konferenz für Nachhaltigkeit

Wege zum besseren Programmieren

KEM Konstruktion|Automation: Werden bereits Versuche angestellt, mit welchen Programmiermethoden oder Modulen bzw. Bibliotheken die besten Ergebnisse hinsichtlich Ressourceneffizienz erzielt werden können?

Mersch: Ja, und das schon immer. Ressourceneffizienz bedeutet dabei schließlich auch, kleinere und damit im Normalfall günstigere CPUs verwenden zu können. Wichtig sind aber zudem konstante Laufzeiten, damit das Gesamtsystem echtzeitfähig ist. Hier muss in manchen Fällen durchaus gegeneinander abgewogen werden.

Rubner: Wir arbeiten mit Partnern wie der Gesellschaft für Informatik und dem Öko-Institut im Förderprojekt Eco-Digit quasi an einem Prüfstand für Software: Ziel ist die Entwicklung einer automatisierten Bewertungsumgebung, die für beliebige Software die Daten zu Ressourcenverbräuchen, CO2-Emissionen etc. transparent offenlegt. Zudem schauen wir auch immer, was außerhalb unseres Kosmos passiert, denn wir müssen ja nicht das Rad neu erfinden. Siemens ist zudem als seit Kurzem auch Steering Member Teil der 2021 unter anderem von Microsoft, GitHub, Thoughtworks und Accenture ins Leben gerufenen Green Software Foundation. Dort haben wir bereits begonnen, Tools und Methoden zu sammeln und wollen das Thema gemeinsam mit weiteren Industriegrößen auch Richtung Standardisierung vorantreiben. Zusätzlich stehen wir mit verschiedenen Einrichtungen wie dem Umweltcampus Trier oder dem Hasso-Plattner-Institut (Clean-IT Konferenz) im Austausch.

Carolin_Rubner,_Head_of_Sustainable_Software_Engineering_and_industrial-grade_DevOps,_Siemens_Technology
„Wir erreichen viele Nachhaltigkeitsziele durch Digitalisierung – müssen aber auch schauen, dass die Digitalisierung selbst die Nachhaltigkeit mit betrachtet“, sagt Carolin Rubner, Head of Sustainable Software Engineering and industrial-grade DevOps, Siemens Technology, Erlangen.
Bild: Siemens

Egermeier: Dafür wird wahrscheinlich das Tooling sehr wichtig werden. Denn zu erkennen, welches Modul was macht ist in schon in kleinsten Softwareprojekten sehr schwer. Um überhaupt die fehlerfreie Funktionsfähigkeit einer Software – das make it right – zu überwachen, lassen gute Programmierer kontinuierlich entsprechende Tests mitlaufen. Denkbar wäre, dass wir so etwas auch für den Energieverbrauch etablieren können. Denn für einen Programmierer ist so etwas sehr schwer oder gar nicht ersichtlich, wir kennen das aus der Diskussion um zu langsame Software: Die Spekulationen um die Gründe dafür sind oft falsch. Schon bei relativ gering-komplexen Software-Programmen ist man als Programmierer nicht mehr oder nur mit unverhältnismäßig viel Aufwand in der Lage zu erkennen, warum das System zu langsam ist. Erst mit Performance-Analysetools sieht man wirklich, wo die Schwachstelle im Code ist. Oft sind das dann kleine Programmteile, die total unscheinbar wirken, an einer anderen Stelle aber vielleicht tausende Male ausgeführt werden – und alle aber denken, diese kleine Funktion sei ja so superschnell, das mache nichts aus. Ich kann mir sehr gut vorstellen, dass es sich beim Green Coding in ähnlicher Weise verhält.

Kompatibilität versus Ressourceneffizienz

KEM Konstruktion|Automation: Labels wie der Blaue Engel zertifizieren inzwischen auch Software. Dabei sieht man Programme, deren neue Versionen auch neue Hardware benötigt, als wenig nachhaltig an. Legt man in der Automatisierungstechnik mehr Wert auf Abwärtskompatibilität als etwa bei Office-Software?

Mersch: Das ist tatsächlich ein klassischer Unterschied. Auch wenn die Einsatzbereiche schwer zu vergleichen sind, werden unsere Steuerungen typischerweise um mehrere Faktoren länger eingesetzt als Computer in Rechenzentren oder im Desktop-Bereich. Das heißt aber auch, dass Energieeffizienzmaßnahmen der CPU-Lieferanten sich bei unseren Kunden erst später auswirken, da hier die Langzeitverfügbarkeit eine wichtige Rolle spielt. Wenn in Rechenzentren Computer ausgetauscht werden, weil es sich aus Gründen der Energieeffizienz rechnet, ist das in der Industrieautomatisierung noch lange nicht der Fall – allein schon, weil die Industrieautomatisierung selbst in der Regel nicht den größten Anteil am Energiebedarf einer Anlage oder Maschine ausmacht.

Rubner: Hierbei ist eine gute API-Strategie definitiv ein wichtiger Punkt, ebenso gut definierte Funktionalitäten, die dann leicht wieder gefunden und auch wiederverwendet werden können. Containerisierung erleichtert zudem die Wiederverwendbarkeit auf verschiedener Hardware oder neuen Plattformen. Natürlich müssen wir dabei messen, wie viel zusätzliches CO2 wir dadurch einkaufen und was wir durch Wiederverwenden sparen.

Egermeier: Der Brownfield-Bereich in der Automatisierungsbranche ist riesig und in aller Regel können es sich Hersteller kaum leisten, harte Kompatibilitätsbrüche zu riskieren. Wenn Softwareoptimierungen der Steuerungen auf Bestandsanlagen gemacht werden, achten die meisten Hersteller peinlich genau drauf, dass diese ohne Hardwareänderung weiterbetrieben werden können. Wenn plötzlich ein kleines Softwareupdate dazu führt, dass nichts mehr geht, überlegen sich Kunden sehr schnell, ob nicht ein Wechsel des Steuerungsherstellers in Betracht zu ziehen wäre.

Was bringt ‚schlanke‘ Software?

KEM Konstruktion|Automation: Aktuell versuchen Softwareanbieter, sich unter anderem über den Funktionsumfang abzugrenzen. Könnten die eventuell von vielen Kunden ungenutzten Softwareelemente künftig ein Kritikpunkt werden?

Mersch: Gegensteuern könnte man mit einer hohen Fähigkeit zur Modularisierung. Und hier sprechen Sie eine der Hauptvorteile der PC-basierten Steuerungen von Beckhoff an: Auf eine gegebenenfalls kleine Basis können, müssen aber nicht zusätzliche Funktionen installiert werden. Die Option einer zusätzlichen Installation zu haben, wird aber nie ein Kritikpunkt werden. Modularisierung von Software in Form von paketierten Updates bietet Beckhoff schon lange – und wir forcieren hier gerade mit einem Twincat Paket Manager zusätzlich die Einfachheit. Denn die Optionen müssen vom Kunden ja auch genutzt werden, und zwar auf möglichst einfache Art und Weise. Modularisierung spielt gerade auf der Anlagen-Ebene eine entscheidende Rolle: Das Konzept Module Type Package (MTP) sorgt für einheitliche Schnittstellen von Teilanlagen – und diese Ansätze sehe ich als äußerst vielversprechend im Bereich Green Coding: Fertige Module für unterschiedliche Produktionen schnell arrangieren zu können, bedeutet weniger Teilanlagen bauen zu müssen!

Henning_Mersch,_Produktmanager_Twincat,_Beckhoff_Automation
„Ressourceneffizienz bedeutet auch, kleinere und damit im Normalfall günstigere CPUs verwenden zu können. Wichtig sind aber zudem konstante Laufzeiten, damit das Gesamtsystem echtzeitfähig ist. Hier muss man in manchen Fällen durchaus gegeneinander abwägen“, sagt Henning Mersch, Produktmanager Twincat bei der Beckhoff Automation GmbH & Co. KG, Verl.
Bild: Beckhoff

Rubner: Um hier gut aufgestellt zu sein arbeiten wir mit Experten aus verschiedenen Bereichen zusammen. Siemens-intern haben wir eine Software, die uns hierbei unterstützt: Green Digital Twin. Dieser hilft uns, die Gesamtlösung zu bewerten, möglichst nachhaltig zusammenzustellen und dann leicht daraus auch den entsprechenden CO2-Fußabdruck zu bestimmen. Hier schauen wir, was wir dafür von der Softwareseite und der Service- und Solutionsseite machen müssen.

Egermeier: Ich würde sagen, die Größe von Software und der Energiebedarf korrelieren nicht. Die ausgeführten Anweisungen pro Zeit sind entscheidend. Ein kleines sehr uneffizientes Programm kann damit mehr Energie verbrauchen als eine große, funktional vielfältige aber effizient umgesetzte Applikation.

Grüne_Programmierung_für_mehr_Nachhaltigkeit
In der grünen Programmierung steckt ein enormes Potential – besonders dann, wenn sie von Anfang an berücksichtigt wird.
Bild: ArtemisDiana/stock.adobe.com

Chancen für das Green Coding

KEM Konstruktion|Automation: Welche Möglichkeiten sehen Sie, die Software von morgen möglichst ressourceneffizient zu gestalten?

Mersch: Einfachheit für den Anlagen- und Maschinenbauer ist das Wichtigste. Das Thema sollte möglichst keine (aktive) Rolle spielen, sondern automatisiert erledigt werden – wie eingangs bezüglich Compiler angesprochen: effiziente Hardware weise auswählen und klug mit den richtigen Softwarekomponenten kombinieren – und das hochindividuell, wie es nur die PC-basierte Steuerungstechnik ermöglicht.

Rubner: Ein Life Cycle Assessment von Software ist nicht einfach. Wir nutzen die Methode, die wir auch für unsere Hardwarekomponenten anwenden, seit dem letzten Geschäftsjahr bereits für Software und jetzt auch für Services. Dabei teilt sich das Ganze auf Energie und Material, denn man muss auch vom Laptop bis zum Data Center die Infrastruktur der Entwickler mit einbeziehen. Zur Energie gehört, was für Entwicklung, Speicherung und Betrieb notwendig ist. Einige Punkte des verwendeten Ansatzes zur Lebenszyklusanalyse haben wir hier schon genauer betrachtet – Produktion, Vertrieb und Speicherung – bei Materialbeschaffung und End of Life stehen noch einige Definitionen aus. Hier können wir auf Regularien des Greenhouse Gas Protokoll ICT Sector Guidance zurückgreifen. Zudem gibt es jetzt auch von der Green Software Foundation die Software Carbon Intensity Specification, die dann etwas leichter in Software-Entwicklungszyklen anwendbar ist.

Egermeier: Es gibt natürlich klassische Handgriffe wie etwa den trivialen Fall, einen Prozess warten zu lassen. Dazu kann man eine Schleife zig mal durchlaufen lassen, was bedeutet, dass der Rechner in dem Sinne gar nicht wirklich wartet. Dabei wird dann wirklich Energie verbrannt. Ändern lässt sich das mit einem speziellen Event, das tatsächlich die Prozesse auch anhält und erst startet, wenn ich sage ‚Hey, jetzt lauf!‘. Das heißt, allein dieses Warten kann ich bestimmt sehr energieaufwändig implementieren oder es sehr energieeffizient gestalten. Der wichtigste Hebel dabei wird sein, bereits in der Programmiererausbildung das Bewusstsein für Green Coding zu schaffen. Stünden dann beispielsweise drei vergleichbare Module parat, kann ich mir das ‚grünste‘ aussuchen. Dann wäre ich noch ganz am Anfang, bevor ich überhaupt was zum Laufen bekomme, hinsichtlich Energieeffizienz schon mal einen Schritt weiter. Zudem birgt auch die schlaue Programmierung von Robotern und anderen Physiken großes Optimierungspotential in Bezug auf den Energieverbrauch: Wege kurz halten, Temperaturgefälle gut ausgleichen, scharfe Beschleunigungsprofile vermeiden. Dafür braucht es entsprechende Simulationen und digitale Zwillinge. Wahrscheinlich würde also Green Coding in der Automatisierung mit der Messtechnik beginnen. So können wir bestimmen, wie viel Energie in welcher Betriebsphase oder in welchem Betriebszustand verbraucht wird. Aus den Erkenntnissen könnte man dann die Maßnahmen für ein Green Coding im übertragenen Sinne ableiten.

Die Green Software Foundation treibt als gemeinnützige Stiftung die Nachhaltigkeit von Software voran

Mehr zum Thema Nachhaltigkeit:

Nachhaltigkeit

Unsere Webinar-Empfehlung


Hier finden Sie mehr über:
Systems Engineering im Fokus

Ingenieure bei der Teambesprechung

Mechanik, Elektrik und Software im Griff

Video-Tipp

Unterwegs zum Thema Metaverse auf der Hannover Messe...

Aktuelle Ausgabe
Titelbild KEM Konstruktion | Automation 4
Ausgabe
4.2024
LESEN
ABO
Newsletter

Abonnieren Sie unseren Newsletter

Jetzt unseren Newsletter abonnieren

Webinare & Webcasts
Webinare

Technisches Wissen aus erster Hand

Whitepaper
Whitepaper

Hier finden Sie aktuelle Whitepaper


Industrie.de Infoservice
Vielen Dank für Ihre Bestellung!
Sie erhalten in Kürze eine Bestätigung per E-Mail.
Von Ihnen ausgesucht:
Weitere Informationen gewünscht?
Einfach neue Dokumente auswählen
und zuletzt Adresse eingeben.
Wie funktioniert der Industrie.de Infoservice?
Zur Hilfeseite »
Ihre Adresse:














Die Konradin Verlag Robert Kohlhammer GmbH erhebt, verarbeitet und nutzt die Daten, die der Nutzer bei der Registrierung zum Industrie.de Infoservice freiwillig zur Verfügung stellt, zum Zwecke der Erfüllung dieses Nutzungsverhältnisses. Der Nutzer erhält damit Zugang zu den Dokumenten des Industrie.de Infoservice.
AGB
datenschutz-online@konradin.de