Die modellbasierte Funktionsentwicklung auf Basis von Matlab/Simulink und externen Bypass-Systemen ist in der Automobilindustrie seit langem etabliert. Die entsprechenden Rapid-Prototyping-Plattformen bieten im Vergleich zum Steuergerät deutlich mehr Rechenleistung, nahezu unbegrenzte RAM- und Flash-Speicherressourcen und die Möglichkeit, zusätzliche Sensoren und Aktoren anzukoppeln. In Fällen, in denen der Einsatz dieser Systeme aus Kostengründen oder aus technischer Sicht nicht gerechtfertigt ist, kann das interne Bypassing eine geeignete Alternative darstellen. Dabei erfolgt die Funktionsentwicklung direkt auf dem vorhandenen Steuergerät unter Ausnutzung der noch freien RAM- und Flash-Speicherressourcen. Da in diesem Fall keine Daten mit einem externen Prototyping-System ausgetauscht werden müssen, entfallen Kommunikationslatenzen und sehr schnelle Regelschleifen können im Bypass-Betrieb realisiert werden.
Mit der neuen internen Bypass-Option für das RTI-Bypass-Blockset von dSpace wird dieser Anwendungsfall adressiert. Dabei wurde insbesondere Wert darauf gelegt, ohne Veränderungen am Funktionsmodell flexibel zwischen dem externen und internen Bypassing umschalten zu können. Stellt sich beispielsweise während der Funktionsentwicklung im internen Bypass-Betrieb heraus, dass der verfügbare RAM- und Flash-Speicher des Steuergeräts nicht ausreichend ist oder zusätzliche Sensorsignale notwendig werden, kann ohne Modelländerung schnell auf ein externes Prototyping-System gewechselt werden. Gleiches gilt in umgekehrter Reihenfolge, wenn eine im externen Bypass-Betrieb entwickelte Funktion nun im Flottentest direkt auf Steuergeräten erprobt werden soll. Zudem hat der Funktionsentwickler die Möglichkeit, in demselben Simulink-Modell interne und externe Bypass-Anteile zu mischen.
Nach dem Einlesen der A2L- und Hex-Datei im RTI-Bypass-Blockset lassen sich in der Modellierungsumgebung die jeweiligen Service-Aufrufe über entsprechende Bypass-Blöcke auswählen und die Freischnitte zum Lesen und Schreiben von beliebigen Steuergerätevariablen oder zum Triggern von Bypass-Funktionen verwenden. Auf Knopfdruck wird der zugehörige Code für das Funktionsmodell generiert, in den freien Bereich des Steuergeräte-Flash-Speichers gelinkt und mit dem importierten Hex-Code zusammengeführt. Das Ergebnis ist eine um die Variablen der internen Bypass-Funktion erweiterte A2L-Datei und ein neuer Software-Stand, der mit etablierten Werkzeugen auf das Steuergerät geflasht werden kann (Bild 3).
Um während der Modellierung jederzeit die noch freien RAM- und Flash-Speicherressourcen im Steuergerät überprüfen zu können, steht ein spezieller Info-Block zur Verfügung. Bei Verwendung des Simulink Coders zur Generierung von 32-bit-Floating-Point-Code sind beispielsweise bei einem Funktionsmodell mit etwa 400 Blöcken und 30 Ein- und Ausgangsgrößen ca. 30 Kbyte Flash-Speicher und weniger als 4 Kbyte RAM-Speicher bei Infineon-TriCore-Mikrocontrollern erforderlich.