Suchen

Softwarevarianten Freischnitte erlauben nachträgliche Änderungen in der Software

| Autor / Redakteur: Nigel J. Tracey, Mark Rutter, Jürgen Crepin* / Franz Graser

Mit dem Werkzeug EHOOKS ist es möglich, schnell nachträgliche Änderungen in die Steuergerätesoftware einzufügen, um so unnötige Effizienzbremsen im Entwicklungsprozess aus dem Weg zu räumen.

Firma zum Thema

Prinzip der Software-Freischnitte: Durch On-Target Prototyping können neue Funktionen direkt auf der Steuergerätehardware ausgeführt werden. Bestimmte Funktionen können zeitweise stillgelegt werden, damit andere getestet werden können.
Prinzip der Software-Freischnitte: Durch On-Target Prototyping können neue Funktionen direkt auf der Steuergerätehardware ausgeführt werden. Bestimmte Funktionen können zeitweise stillgelegt werden, damit andere getestet werden können.
(Bild: ETAS)

Beim Thema Entwicklungseffizienz spielen Aspekte wie das frühe, realistische Testen neuer und modifizierter Funktionen sowie die effiziente Applikation komplexer Systeme eine wichtige Rolle. Aber auch kleine Ursachen können große Wirkung entwickeln. So können kleine Fehler im aktuellen Softwarestand die Entwicklung spürbar verzögern.

Oftmals liegen die Ursachen von Verzögerungen auch in Unzulänglichkeiten bei der Abstimmung zwischen der Softwareentwicklung und den anderen Teams – besonders, wenn diese firmenübergreifend erfolgt. Das nachträgliche Editieren von kompilierter Software durch den OEM könnte viele dieser Stolpersteine beseitigen und es so ermöglichen, die Entwicklungseffizienz zu steigern und Entwicklungsschritte nach vorne zu verlagern. Das Softwarewerkzeug EHOOKS bietet diese Möglichkeit und eröffnet so neue Wege für mehr Effizienz bei der Entwicklung, dem Test und der Applikation.

Schauen wir zunächst auf den klassischen Entwicklungsprozess: Nachdem eine Funktion spezifiziert ist, wird ihre Funktionalität im Prototyping verifiziert. Anschließend wird die Software codiert, kompiliert und dann im Steuergerät implementiert. Nun erfolgen der Test und die Applikation.

Ist nun eine Änderung oder Erweiterung erforderlich oder enthält die Software einen Bug, muss wieder zur Softwareentwicklung zurückgegangen werden, um die erforderlichen Änderungen zu implementieren. Da die Softwareentwicklung oftmals beim Zulieferer erfolgt, muss in der Regel auf eine weitere Softwareablieferung gewartet werden, bis die Änderung verfügbar ist.

Freischnitte waren an Software-Ablieferungen gebunden

Eine vielfach genutzte Möglichkeit, nachträgliche Änderungen für die Entwicklung in kompilierter Software durchzuführen, ist der Bypass-Freischnitt. Mit ihm ist es möglich, Teile der Software an den freigeschnittenen Variablen mit prototypischen Implementierungen zu umgehen. Doch auch das Setzen der Freischnitte muss in der Software-Entwicklung erfolgen.

Werden zu viele Schnitte quasi auf Verdacht gesetzt, steigt der unnötige Overhead in der Software. Durch den Einsatz von EHOOKS müssen die Freischnitte nun nicht mehr von der Softwareentwicklung des Steuergerätelieferanten eingebaut werden.

Sie können bei Bedarf direkt an den verschiedenen Stellen im Entwicklungsprozess, wie Prototyping, Test oder Applikation eingefügt werden. Dadurch wird die Anzahl der Softwarelieferungen an den Fahrzeughersteller reduziert, was die Effizienz bei der Zusammenarbeit zwischen OEM und Tier-1-Zulieferern spürbar erhöht.

Die Möglichkeit, Steuergerätesoftware direkt und ohne Zugriff auf den Sourcecode und die Build-Umgebung zu ändern, unterstützt eine große Anzahl an Anwendungsfällen aus verschiedenen Entwicklungsbereichen wie Software-/Funktionsentwicklung, Test und Applikation (einen Überblick finden Sie im Schaubild 1):

Schaubild 1: Das Freischneiden von Steuergerätesoftware unterstützt die Softwareentwicklung in vielen Bereichen.
Schaubild 1: Das Freischneiden von Steuergerätesoftware unterstützt die Softwareentwicklung in vielen Bereichen.
(Bild: ETAS)

Bei der Funktionsentwicklung kann das Werkzeug genutzt werden, um Freischnitte für externe Bypass-Funktionen zur Steuergerätesoftware hinzuzufügen. Das erhöht die Effizienz beim Entwickeln von neuen Steuerungs- und Regelungsstrategien mit Hilfe von Werkzeugen zur Verhaltensmodellierung und Rapid-Prototyping-Systemen. Die Möglichkeit, Freischnitte direkt einzufügen, ohne an eine Software-Ablieferung gebunden zu sein, kann Entwicklungszeiten spürbar verkürzen und Kosten verringern. In einigen Fällen konnte die Zeit bis zur Verfügbarkeit eines neuen Freischnitts von mehreren Monaten auf wenige Minuten verkürzt werden.

Bei der Software-Entwicklung können mit EHOOKS neue Algorithmen in die Steuergerätesoftware integriert und mit Methoden des On-Target-Prototypings verifiziert und getestet werden, ohne dass dafür ein Rapid Prototyping-System erforderlich ist.

Auch in der Testphase bietet sich die Methode an, Testdaten über freigeschnittene Applikationsparameter in die Steuergerätesoftware einzuschleifen. So können die Werte von Parametern in der Software von außen kontrolliert oder Zustandsautomaten der Diagnose übersteuert werden. Dies kann den Test erheblich beschleunigen.

Bei der Applikation können kleinere Fehler in der Software umgangen oder die Effizienz erhöht werden, indem Eingangsgrößen der Applikationsparameter, wie Kennfelder und Kurven direkt beeinflusst werden. Weist die Steuergerätesoftware zum Beispiel einen kleinen Fehler auf, der die Weiterarbeit behindert, dann kann auf diese Weise ein Workaround implementiert werden, bis eine neue Softwareversion verfügbar ist. Der Applikationsingenieur muss somit nicht auf die neue Version warten und kann weiter effizient parallel mit der Entwicklung arbeiten.

Freischnitte ohne Quellcode-Kenntnisse platzieren

Schaubild 2: Die Arbeitsweise mit EHOOKS
Schaubild 2: Die Arbeitsweise mit EHOOKS
(Bild: ETAS)

Das Schaubild 2 zeigt die Arbeitsweise des Werkzeugs. Die Steuergerätesoftware wird beim Software-Build des Softwareherstellers automatisch vom Werkzeug EHOOKS-PREP vorbereitet. Zusätzliche verschlüsselte Informationen werden dabei in die A2L-Dateien geschrieben, die später das präzise Setzen von Freischnitten in die Software erlauben und gleichzeitig das geistige Eigentum des Softwarelieferanten schützen.

In der so vorbereiteten Steuergerätesoftware kann der Anwender mit EHOOKS-DEV nun seine Freischnitte einfügen. Hierzu werden vom Benutzer weder Kenntnisse der Softwarestruktur erwartet, noch wird der Zugriff auf den Quellcode oder die Build-Umgebung des Softwareherstellers benötigt.

Die einfache Benutzeroberfläche von EHOOKS ermöglicht zügiges Arbeiten.
Die einfache Benutzeroberfläche von EHOOKS ermöglicht zügiges Arbeiten.
(Bild: ETAS)

EHOOKS-DEV verfügt über eine bedienerfreundliche Benutzeroberfläche für die Konfiguration und das Einsetzen von Freischnitten. Das Hinzufügen eines neuen Freischnitts erfordert lediglich die Auswahl der A2L-Messwerte aus einer Liste und die anschließende Betätigung der Build-Taste. Das Werkzeug kann Freischnitte auf der Basis aller A2L-Messwerte folgender Datentypen erzeugen: Signed/Unsigned-Integer-, Floating-Point- oder Bit-Packed-Variablen – einschließlich aller Arrays oder Strukturelemente dieser Datentypen. Die Anzahl der Freischnitte, die in die Steuergerätesoftware eingesetzt werden können, wird lediglich durch den verfügbaren freien Speicherplatz im Steuergerät begrenzt.

Eine große Stärke ist die hohe Präzision und Zuverlässigkeit der Freischnitte. Das Werkzeug wurde in sehr enger Zusammenarbeit mit den Steuergeräteherstellern entwickelt. Daher floss bei der Entwicklung umfangreiches Wissen über die Steuergerätesoftware mit ein. So wird das Instruction-Set des Steuergeräte-Controllers simuliert, um exakt zu bestimmen, wie und wo die Software modifiziert werden muss. Die Nutzung der zum Patent angemeldeten fortschrittlichen Technologie ermöglicht tiefe Einblicke in die Struktur der Steuergerätesoftware und sorgt für eine besonders hohe Qualität und Zuverlässigkeit der Freischnitte.

Integration in die Tools ASCET und Matlab/Simulink

Für die aktuell verfügbare Version V2.0 steht eine ASCET-Integration für On-Target-Experimente zur Verfügung. Eine neue, in ASCET entwickelte Softwarefunktion kann direkt in EHOOKS importiert werden. Dafür wird C-Code aus dem Softwaremodell generiert und mit einem spezifischen EHOOKS-Target exportiert. Die neue Funktion wird über Freischnitte in die existierende Steuergerätesoftware eingebunden. Daraufhin werden die HEX- und A2L-Dateien mit der neuen Funktion generiert.

Die veränderte Software kann zum Beispiel mit ETAS INCA vollständig gemessen und appliziert werden. Das Werkzeug ist kompatibel zu allen Werkzeugen der ETAS-Hardwarefamilie sowie zu den entsprechenden Steuergeräteschnittstellen (so etwa INCA, ES1000, ES910 und ES590).

Ebenso ist ein Simulink Integration Package vorhanden, mit dem Simulink-Modelle für den On-Target Bypass integriert werden können. Das Integrationspaket fügt neue Simulink-Blöcke und Systemtargets ein, die es erlauben, die gesamte Konfiguration und den Build-Prozess von EHOOKS direkt und intuitiv aus Simulink zu steuern.

Die Option, Softwarefreischnitte und Änderungen hinterher in die Steuergerätesoftware einzusetzen, ersetzt keine formale und vollständige Ablieferung mit allen erforderlichen Tests und Quality Gates. Sie eröffnet aber viele neue Möglichkeiten, Funktionen frühzeitig zu testen oder viele Bereiche im Entwicklungsablauf spürbar zu beschleunigen. Das Werkzeug ist unter anderem bei den Unternehmen AVL, Bosch, Continental, Denso, Honda und PSA im Einsatz.

Die Erfahrungen sind durchweg positiv: „Die Einführung von EHOOKS ermöglichte, den bisher benötigten Zeitbedarf für Modifizierungen des Quellcodes bei Steuergeräteprojekten, die von den Steuergeräteherstellern durchgeführt wurden, von mehreren Monaten auf wenige Tage zu verkürzen“, erläutert Eiji Hashigami vom R&D Automotive Centre bei Honda.

Auch beim französischen Automobilkonzern PSA (PSA Peugeot Citroen) sind die erforderlichen Software-Änderungen in wenigen Stunden umgesetzt. Im Vergleich dazu dauerte der frühere Ablauf über den Steuergerätehersteller im besten Fall mehrere Tage. Diese Zeitersparnis erleichtert den Aufbau der Prototypen sehr. Die Integration und der Test von neuen Software-Elementen ist somit bereits vor einer formalen Ablieferung möglich, die alle erforderlichen Prozessschritte durchläuft. Realitätsnahe Erprobungen können auf diese Weise bereits extrem früh gestartet werden.

* Dr. Nigel J. Tracey ist für das Software Engineering- und Prototyping-Produktportfolio von ETAS verantwortlich. Er arbeitet im englischen York.

* Dr. Mark Rutter ist Produktmanager bei ETAS in York/England.

* * Jürgen Crepin verantwortet bei ETAS in Stuttgart die Kommunikation in den Bereichen Software Engineering und Test.

(ID:46497966)