DE102007045563A1 - Rechnerbasiertes Werkzeug und Verfahren zum Extrahieren des Funktionscodes von Steuergeräten - Google Patents

Rechnerbasiertes Werkzeug und Verfahren zum Extrahieren des Funktionscodes von Steuergeräten Download PDF

Info

Publication number
DE102007045563A1
DE102007045563A1 DE102007045563A DE102007045563A DE102007045563A1 DE 102007045563 A1 DE102007045563 A1 DE 102007045563A1 DE 102007045563 A DE102007045563 A DE 102007045563A DE 102007045563 A DE102007045563 A DE 102007045563A DE 102007045563 A1 DE102007045563 A1 DE 102007045563A1
Authority
DE
Germany
Prior art keywords
function
program code
code
extracting
library
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE102007045563A
Other languages
English (en)
Inventor
Markus Bossler
Mauro Cao
Marcus Boumans
Gerhard Preiser
Manfred Pfitz
Cornelius Munz
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of DE102007045563A1 publication Critical patent/DE102007045563A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23262DDE direct data exchange, DLL dynamic library linking
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23275Use of parser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23451Software in the loop, bypass function, execute new program parts on external device
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23452Simulate sequence on display to control program, test functions
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23456Model machine for simulation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2637Vehicle, car, auto, wheelchair

Abstract

Rechnerbasiertes Werkzeug (10) und Verfahren zum Extrahieren des Funktionscodes von Steuergeräten, umfassend eine Schnittstelle (I1) zum Einlesen des Programmcodes (20) eines Steuergeräts und der zugehörigen Verwaltungsdaten dieses Programmcodes (20), ein Mittel (11), das zum Extrahieren eines Funktionscodes aus dem eingelesenen Programmcode (20) ausgebildet ist, wobei die Verwaltungsdaten des Programmcodes herangezogen werden, ein Mittel (12), das zum Generieren einer Funktionsbibliothek (30) ausgebildet ist, die dynamisch in ein Gesamtsimulationsmodell für Steuergeräte und deren Umgebung eingebunden werden kann, und die den extrahierten Funktionscode umfasst, und eine Schnittstelle (I2) zum Ausgeben der generierten Funktionsbibliothek (30).

Description

  • Stand der Technik
  • Die vorliegende Erfindung betrifft ein rechnerbasiertes Werkzeug zum Extrahieren von Funktionscode von Steuergeräten nach Anspruch 1 und ein entsprechendes Verfahren dafür nach Anspruch 7.
  • Im Bereich der Motorsteuergeräte für Verbrennungsmotoren wird aktuell eine Anpassung (Applikation), d.h. Parametrierung der Steuergerätesoftware an der realen Motorhardware am Fahrzeug oder Motorenprüffeld vorgenommen. Um diese zeit- und kostenaufwendige Anpassung schneller durchführen zu können, werden zunehmend komplette Teilfunktionen mit dafür notwendigen Streckenmodellen als rechnerbasiertes Gesamtsimulationsmodell abgebildet. Bisher bekannte Modelle enthalten aber nur Nachbildungen von Steuergerätesoftware, nicht die real verwendete. Dabei wird die Funktionalität des betreffenden Steuergeräts stets vereinfacht abgebildet, womit die Simulationsergebnisse z. T. erheblich von dem tatsächlichen Verhalten einer Motorsteuerung abweichen können.
  • Die deutsche Offenlegungsschrift DE 103 03 489 beschreibt ein Verfahren und eine Vorrichtung zum Testen von Software einer Steuereinheit eines Fahrzeugs. Das Steuergerät wird dabei über eine Kommunikations- bzw. Datenschnittstelle, bevorzugt seine Applikationsschnittstelle mit einem Testsystem verbunden, welches das Fahrzeug- bzw. Komponentenverhalten abbildet. Durch Nutzung dieser definierten Schnittstelle soll ein erheblicher Teil der kostspieligen Hardware zum Umsetzen der Ergebnisse der Fahrzeugsimulation in elektrische Signale zur Rückkopplung an das Steuergerät vermieden. Dennoch muss zumindest ein funktionsfähiger Prototyp eines Steuergeräts vorliegen.
  • Die internationale Patentanmeldung WO 2005/045537 beschreibt ein Verfahren und eine Vorrichtung zum Anpassen von Funktionen zum Steuern von Betriebabläufen. Dabei wird die Adressinformation eines Steuerungsprogramms benutzt, um die Anfangsadresse einer Funktion zu ermitteln, womit diese Funktion durch Zusatzfunktionen erweiterbar oder ersetzbar ist. Dadurch sollen verschiedene Rapid-Prototyping Verfahren, Software-Testverfahren und Datenkalibrier-Verfahren schneller eingesetzt und flexibler gehandhabt werden. Die Anpassung eines solchen Steuerprogramms bleibt damit auf den Ersatz bzw. die Erweiterung seiner Funktionen beschränkt.
  • Offenbarung der Erfindung
  • Es ist Aufgabe der vorliegenden Erfindung, ein Werkzeug und ein Verfahren bereitzustellen, das eine genaue, einfache und kostengünstige Kalibrierung von applikationsrelevanten Daten in Steuergeräten an eine vorgegebene Hardware ermöglicht.
  • Diese Aufgabe wird durch ein rechnerbasiertes Werkzeug zum Extrahieren des Funktionscodes von Steuergeräten gelöst, umfassend eine Schnittstelle zum Einlesen des Programmcodes eines Steuergeräts und der zugehörigen Verwaltungsdaten dieses Programmcodes, ein Mittel, das zum Extrahieren eines Funktionscodes aus dem eingelesenen Programmcode ausgebildet ist, wobei die Verwaltungsdaten des Programmcodes herangezogen werden, ein Mittel, das zum Generieren einer Funktionsbibliothek ausgebildet ist, die dynamisch in ein Gesamtsimulationsmodell für Steuergeräte und deren Umgebung eingebunden werden kann, und die den extrahierten Funktionscode umfasst, und eine Schnittstelle zum Ausgeben der generierten Funktionsbibliothek.
  • Ein wesentlicher Punkt des erfindungsgemäßen Werkzeugs besteht darin, dass zum Nachbilden der Funktionalität eines Steuergerätes der tatsächlich für dieses Gerät vorgesehene Funktionscode genutzt und damit eine Simulation mit realer Steuergerätesoftware möglich ist. Durch die exakte Nachbildung der Gerätefunktionalität wird einerseits ein äußerst genaues Simulationsergebnis höchster Güte erzielbar. Andererseits wird die sogenannte 'closed-loop' Fähigkeit der Funktionen bzw. Funktionsgruppen erreicht, d.h. die Eigenschaft, dass rückgekoppelte Größen in die laufende Berechnung der Funktionen bzw. Funktionsgruppen übernommen werden. Da die neu berechneten Eingangsgrößen online in die Simulation eingehen, lässt sich das Steuergeräteverhalten z.B. exakt auf die Sprungantwort der Drehzahl eines gesteuerten Motors oder Getriebes anpassen. Erst die beschriebene 'closed-loop' Fähigkeit der Gerätesoftware macht eine solche Simulation mit geschlossener Regelstrecke möglich.
  • Bevorzugte Weiterbildungen des erfindungsgemäßen Extraktionswerkzeugs sind in den Ansprüchen 2 bis 6 angegeben.
  • Danach ist in einer vorteilhaften Ausführungsform vorgesehen, dass die Verwaltungsdaten Kenngrößen wie z.B. KGS- oder XML-Files, Deklarationen wie z.B. D-Files, Variablen und Funktionstabellen umfassen. Damit sind alle Informationen gegeben, um jede Art von Programmcode zu verarbeiten, unabhängig von Struktur und Syntax.
  • Bevorzugt ist das Generierungsmittel zum Erzeugen von Funktionsbibliotheken unterschiedlichen Formats ausgebildet. Dies macht das erfindungsgemäße Werkzeug weitgehend unabhängig vom Vorhandensein einer speziellen System- bzw. Softwareumgebung, d.h. es ist besonders flexibel einsetzbar.
  • Das generierte Format umfasst dabei bevorzugt eine DLL (Dynamic Link Library) oder ein MEX (Matlab® EXecutable)-Format. Damit ist neben dem allgemein üblichen DLL-Bibliotheksformat auch das z.B. in Matlab®/Simulink® zum Einsatz kommende Format abgedeckt. Natürlich kann auch jedes andere geeignete Format Ziel der Generierung sein, insbesondere auch das Format eines zu Matlab®/Simulink® alternativen Simulationswerkzeugs.
  • In ähnlicher Weise ist es bevorzugt, wenn der eingelesene Programmcode ein C-Code, d.h. das Werkzeug zur Verarbeitung dieses Codes angepasst ist. Damit ist die Simulation jeder üblicherweise in C oder C++ geschriebenen Steuergerätesoftware möglich.
  • Durch die schon beschriebene 'closed-loop' Fähigkeit der erzeugten Funktionsbibliothek kann das Werkzeug zum Optimieren der Parametrierung im Bereich der Applikation und/oder auch zu Funktionsentwicklungszwecken eingesetzt werden.
  • Die eingangs genannte Aufgabe wird auch durch ein Verfahren nach Anspruch 6 gelöst, umfassend die Schritte Einlesen des Programmcodes eines Steuergeräts, Einlesen der zugehörigen Verwaltungsdaten dieses Programmcodes, Extrahieren eines Funktionscodes aus dem eingelesenen Programmcode unter Heranziehen der Verwaltungsdaten des Programmcodes, Generieren einer Funktionsbibliothek mit dem extrahierten Funktionscode, die dynamisch in ein Gesamtsimulationsmodell für Steuergeräte und deren Umgebung eingebunden werden kann, und Ausgeben der generierten Bibliothek.
  • Ein wesentlicher Punkt des erfindungsgemäßen Verfahrens besteht darin, dass es einfach aufgebaut und leicht implementierbar, somit kostengünstig ist. Ansonsten ergeben sich die schon vorstehend erläuterten Vorteile.
  • Kurze Beschreibung der Zeichnungen
  • Das erfindungsgemäße Extraktionswerkzeug und Verfahren werden im folgenden anhand eines Ausführungsbeispiels näher erläutert. Gleiche oder gleichwirkende Teile sind mit gleichen Bezugszeichen versehen.
  • Die einzige Figur zeigt eine schematische Darstellung eines erfindungsgemäßen Werkzeugs 10 mit einer Schnittstelle I1, über die der Programmcode 20 eines Steuergeräts und die Verwaltungsdaten 21...23 dieses Programmcodes 20 eingelesen, und einer Schnittstelle I2, über die eine dynamisch in ein Gesamtsimulationsmodell einbindungsfähige Funktionsbibliothek 30 ausgegeben wird. Die Verwaltungsdaten umfassen dabei Kenngrößen 21 wie z.B. KGS- oder XML-Files, Deklarationen 22 wie z.B. D-Files, Variablen und Funktionstabellen 23. In einem Extraktionsmittel 11 werden diese Daten 21...23 herangezogen, um den Funktionscode aus dem Programmcode 20 freizuschneiden. In einem Generierungsmittel 12 wird schließlich die dynamisch einbindbare Funktionsbibliothek beispielsweise im Format DLL oder MEX erstellt. Die MEX-Bibliothek kann z.B. in einem Gesamtsimulationsmodell eines Fahrzeugs mit entsprechenden Simulationswerkzeugen simuliert werden.
  • Da das Werkzeug 10 auf realem Programmcode eines Steuergeräts für z.B. eine Motorsteuerung aufsetzt, und dieser in simulationsfähige Form gebracht wird, ist das betreffende Steuergerät im 'closed-loop', d.h. im geschlossenen Regelkreis parametrierbar. Da die Funktionalität des Geräts von seiner Hardware entkoppelt wird, ist ein physischer Prototyp nicht mehr nötig, was das Simulationsverfahren äußerst kostengünstig macht. Dadurch ist es auch zur Funktionsentwicklung einsetzbar, wobei es in jedem Fall sehr genaue Ergebnisse liefert.

Claims (7)

  1. Rechnerbasiertes Werkzeug (10) zum Extrahieren des Funktionscodes von Steuergeräten, umfassend: – eine Schnittstelle (I1) zum Einlesen des Programmcodes (20) eines Steuergeräts und der zugehörigen Verwaltungsdaten dieses Programmcodes (20); – ein Mittel (11), das zum Extrahieren eines Funktionscodes aus dem eingelesenen Programmcode (20) ausgebildet ist, wobei die Verwaltungsdaten des Programmcodes herangezogen werden; – ein Mittel (12), das zum Generieren einer Funktionsbibliothek (30) ausgebildet ist, die dynamisch in ein Gesamtsimulationsmodell für Steuergeräte und deren Umgebung eingebunden werden kann, und die den extrahierten Funktionscode umfasst, und – eine Schnittstelle (I2) zum Ausgeben der generierten Funktionsbibliothek (30).
  2. Werkzeug nach Anspruch 1, bei dem die Verwaltungsdaten Kenngrößen (21), Deklarationen (22), Variablen und Funktionstabellen (23) umfassen.
  3. Werkzeug nach Anspruch 1 oder 2, bei dem das Generierungsmittel (12) zum Erzeugen von Funktionsbibliotheken (30) unterschiedlichen Formats ausgebildet ist.
  4. Werkzeug nach Anspruch 3, bei dem das Format ein DLL und/oder ein MEX-Format umfasst.
  5. Werkzeug nach einem der vorstehenden Ansprüche, bei dem der eingelesene Programmcode (20) ein C-Code ist.
  6. Verwendung eines Extraktionswerkzeugs (10) nach einem der Ansprüche 1 bis 5 zu Optimierungs- und/oder Funktionsentwicklungszwecken.
  7. Verfahren zum Extrahieren des Funktionscodes von Steuergeräten, umfassend die Schritte: – Einlesen des Programmcodes (20) eines Steuergeräts; – Einlesen der zugehörigen Verwaltungsdaten dieses Programmcodes (20); – Extrahieren eines Funktionscodes aus dem eingelesenen Programmcode (20) unter Heranziehen der Verwaltungsdaten des Programmcodes (20); – Generieren einer Funktionsbibliothek (30) mit dem extrahierten Funktionscode, die dynamisch in ein Gesamtsimulationsmodell für Steuergeräte und deren Umgebung eingebunden werden kann, und – Ausgeben der generierten Bibliothek (30).
DE102007045563A 2006-09-25 2007-09-24 Rechnerbasiertes Werkzeug und Verfahren zum Extrahieren des Funktionscodes von Steuergeräten Withdrawn DE102007045563A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102006045154 2006-09-25
DE102006045154.6 2006-09-25

Publications (1)

Publication Number Publication Date
DE102007045563A1 true DE102007045563A1 (de) 2008-04-03

Family

ID=39134692

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102007045563A Withdrawn DE102007045563A1 (de) 2006-09-25 2007-09-24 Rechnerbasiertes Werkzeug und Verfahren zum Extrahieren des Funktionscodes von Steuergeräten

Country Status (3)

Country Link
EP (1) EP2069873A2 (de)
DE (1) DE102007045563A1 (de)
WO (1) WO2008037656A2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2175331A1 (de) * 2008-10-10 2010-04-14 Robert Bosch GmbH Steuerbares Gerät mit einem Steuerprogramm und Verfahren zum Steuern des Geräts

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130108622A (ko) 2010-11-09 2013-10-04 마스타 로크 캄파니 엘엘씨 전자적으로 모니터링된 안전 잠금 디바이스들, 시스템들 및 방법들
CN107918585B (zh) * 2016-10-07 2023-05-02 福特全球技术公司 用于测试软件程序的方法和装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6401004B1 (en) * 1996-11-07 2002-06-04 Kabushiki Kaisha Mori Seiki Seisakusho Method and device for analyzing NC program for NC machining
CA2249252A1 (en) * 1998-09-30 2000-03-30 Garry David Whitworth Automation of the design recovery and forward engineering of legacy applications
US6389588B1 (en) * 1999-02-04 2002-05-14 Relativity Technologies Method and system of business rule extraction from existing applications for integration into new applications
US6339776B2 (en) * 1999-10-04 2002-01-15 International Business Machines Corporation Dynamic semi-structured repository for mining software and software-related information
DE10303489A1 (de) * 2003-01-30 2004-08-12 Robert Bosch Gmbh Verfahren und Vorrichtung zum Testen von Software einer Steuereinheit eines Fahrzeugs
DE102004053264A1 (de) * 2004-09-28 2006-04-13 Robert Bosch Gmbh Verfahren zum Testen von Steuergerätesoftware für ein Steuergerät

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2175331A1 (de) * 2008-10-10 2010-04-14 Robert Bosch GmbH Steuerbares Gerät mit einem Steuerprogramm und Verfahren zum Steuern des Geräts

Also Published As

Publication number Publication date
WO2008037656A2 (de) 2008-04-03
WO2008037656A3 (de) 2008-05-22
EP2069873A2 (de) 2009-06-17

Similar Documents

Publication Publication Date Title
EP2801872B1 (de) Testeinrichtung zum Test eines virtuellen Steuergeräts
EP2194432B1 (de) Scheduling-Verfahren
DE102005048464B4 (de) Verfahren und Vorrichtung zum Simulieren einer induktiven Last
DE102017211433B4 (de) Verfahren zum Durchführen eines Funktionstests eines Steuergeräts in einem Hardware-in-the-Loop-Test, HIL-Test, sowie HIL-Prüfstand und Steuergerät
DE102005026040A1 (de) Parametrierung eines Simulations-Arbeitsmodells
EP2799983B1 (de) Flexible Aufteilung der I/O Kanäle einer Hardware Komponente
EP1906377A1 (de) System und Verfahren zur Integration eines Prozessleitsystems in einen Trainingssimulator
DE102016119320A1 (de) Verfahren zum Konfigurieren eines realen oder virtuellen elektronischen Steuergerätes
DE102018110020A1 (de) Verfahren zum Erzeugen eines auf einem Testgerät ausführbaren Modells eines technischen Systems und Testgerät
EP3306295B1 (de) Verfahren und vorrichtung zum testen elektronischer steuerungen, insbesondere zum testen von automobilsteuerungen
DE102007045563A1 (de) Rechnerbasiertes Werkzeug und Verfahren zum Extrahieren des Funktionscodes von Steuergeräten
EP3732608B1 (de) Verfahren zur rechnergestützten parametrierung eines technischen systems
EP1671139A1 (de) System und verfahren zum testen von steuervorgängen bei einem fahrzeug
EP1850195B1 (de) Verfahren und Vorrichtung zum Testen eines Motorsteuergeräts sowie hierfür geeignetes Motorsteuergerät
DE10228610A1 (de) Verfahren zum Überprüfen eines auf einer elektronischen Recheneinheit ablaufenden Steuerprogramms
EP3979009A1 (de) Erzeugen eines vereinfachten modells für xil-systeme
EP4217932A1 (de) Trainingsdatengenerator und verfahren zum generieren von trainingsdatensätzen
EP2862075B1 (de) Simulieren eines komplexen systems
DE102017112208A1 (de) Verfahren zur Übertragung von messtechnisch erfassten und digitalisierten Messdaten und zur Ausführung des Verfahrens geeignete Testvorrichtung
WO2003026208A2 (de) Datenverarbeitungsanlage, ressourcensteuergerät und verfahren zur fernverwaltung von ressourcen mittels generisch gekennzeichneten ressoucenbeschreibungsdaten
DE10339336A1 (de) Verfahren zur Entwicklung einer technischen Komponente
WO2021105103A1 (de) Verfahren und software-werkzeug zum vornehmen ausführbarer spezifikationen bei der systementwicklung oder -validierung komplexer funktionaler systeme
EP1691309A1 (de) Kontextsensitive Benutzerhilfe in einer softwarebasierten Entwicklungsumgebung
DE102021206985A1 (de) System zur Verarbeitung von Daten
DE19906177C1 (de) Verfahren und Vorrichtung zur Übertragung von Simulationsmodellen zwischen Simulatoren

Legal Events

Date Code Title Description
R005 Application deemed withdrawn due to failure to request examination
R005 Application deemed withdrawn due to failure to request examination

Effective date: 20140925