DE102006033184A1 - Autocodegenerator, Entwicklungswerkzeug und Verfahren zum Entwickeln für Software von Steuergeräten - Google Patents

Autocodegenerator, Entwicklungswerkzeug und Verfahren zum Entwickeln für Software von Steuergeräten Download PDF

Info

Publication number
DE102006033184A1
DE102006033184A1 DE200610033184 DE102006033184A DE102006033184A1 DE 102006033184 A1 DE102006033184 A1 DE 102006033184A1 DE 200610033184 DE200610033184 DE 200610033184 DE 102006033184 A DE102006033184 A DE 102006033184A DE 102006033184 A1 DE102006033184 A1 DE 102006033184A1
Authority
DE
Germany
Prior art keywords
code
generator
tool
software
simulation
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
DE200610033184
Other languages
English (en)
Inventor
Marcus Boumans
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
Priority to DE200610033184 priority Critical patent/DE102006033184A1/de
Priority to PCT/EP2007/057225 priority patent/WO2008009628A2/de
Publication of DE102006033184A1 publication Critical patent/DE102006033184A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)

Abstract

Autocodegenerator, Entwicklungswerkzeug und Verfahren zum Entwickeln für Software von Steuergeräten, wobei der Codegenerator (15) derart ausgebildet ist, dass der damit erzeugte Code (22) zum Einlesen in ein rechnergestütztes Simulationswerkzeug (40) und zum Abbilden eines Steuergeräteverhaltens in diesem Simulationswerkzeug (40) angepasst ist.

Description

  • Stand der Technik
  • Die Erfindung betrifft einen Autocodegenerator nach dem Oberbegriff des Anspruchs 1, ein Entwicklungswerkzeug nach dem Oberbegriff des Anspruchs 4, sowie eine Verwendung des Codegenerators und ein entsprechendes Entwicklungsverfahren nach Anspruch 7 und 8.
  • Bei der Entwicklung von Steuergeräten, zB im Bereich Einspritzsysteme für Verbrennungsmotoren, muss die Steuergerätesoftware durch Einstellung bestimmter Parameter in der Software an einen konkreten Versuchsträger angepasst werden. Um die Anzahl der erforderlichen Versuchsträger zu begrenzen bzw ganz überflüssig zu machen ist deshalb von Vorteil, den im Steuergerät ablaufenden Code zunächst auf einem Rechner lauffähig zu machen.
  • So ist es zB möglich, mit einem rechnergestützten Simulationswerkzeug wie zB einem CAE(Computer Aided Engineering)-Tool eine Optimierungsschleife des lauffähigen Steuergerätecodes mit Optimierungsalgorithmen zu schließen und damit ohne Versuchsträger oder ein relativ teures Hardware-in-the-Loop-System die Steuergerätesoftware offline zu parametrieren.
  • Derzeit gibt es Ansätze, die Lauffähigkeit des Steuergeräte-C-Codes über Konverter zu realisieren, wie dies in 1 dargestellt ist.
  • Die genannte Figur zeigt beispielhaft die Einbindung und Funktion unterschiedlicher Werkzeuge in den Entwicklungsprozess der Software. Dabei wird das System ASCET-SD als Entwicklungswerkzeug 30 für die Software eingesetzt, das eine graphische Programmierung erlaubt, deren grundsätzliche Mechanismen und Vorzüge auch schon in der deutschen Patentschrift DE 198 37 871 offenbart sind. Aus der graphisch erstellten Softwarespezifikation 20 zB in Blockschaltbild-Definition kann dann über einen Autocodegenerator 10 ein Betriebscode 21 für Steuergeräte erzeugt werden. Unter dem Betriebscode 21 wird hier der zur Steuerung der Geräte entwickelte Programmcode verstanden. Dieser kann ein C-Code oder als ablauffähiger ECU(Electronic Control Unit)-C-Code, also als Maschinencode, sein.
  • Zur nachfolgenden Abbildung des Verhaltens eines bestimmten Steuergeräts ist allerdings ein zusätzlicher Konverter 11 notwendig, der den Betriebscode 21 in einen Simulationscode 22 umwandelt, welcher wiederum in ein rechnergestütztes Simulationswerkzeug 40 wie ein CAE-Tool einlesbar und in diesem ablauffähig oder interpretierbar ist.
  • Offenbarung der Erfindung
  • Es ist Aufgabe der vorliegenden Erfindung, den Entwicklungsprozess für Software von Steuergeräten zu verkürzen, den erforderlichen Aufwand zu verringern und mögliche Fehlerquellen zu vermeiden. Insbesondere soll durch die Erfindung die Test- und Anpassungsphase innerhalb der Programmentwicklung vereinfacht und verkürzt werden.
  • Diese Aufgabe wird durch einen Autocodegenerator nach Anspruch 1 gelöst, welcher derart ausgebildet ist, dass der damit erzeugter Code zum Einlesen in ein rechnergestütztes Simulationswerkzeug und zum Abbilden eines Steuergeräteverhaltens in diesem Simulationswerkzeug angepasst ist.
  • Ein wesentlicher Punkt der Erfindung besteht dabei darin, dass diese sich die Technologie der Autocodegenerierung zunutze macht. Die grundlegende Idee ist, als Entwicklungsziel (Target) nicht eine Zielhardware (Hardware-Target), sondern eine Zielsoftware (CAE-Target) zu spezifizieren, für die ein Simulationscode generiert wird. Die an sich bekannte Technologie der Autocodegenerierung für die Zielhardware wird damit auf eine Autocodegenerierung für eine Simulationssoftware erweitert. Dabei wird das idR verwendete Hardware-Target durch ein CAE-Target ersetzt. Dadurch werden zum einen die im Stand der Technik noch notwendigen Konverter überflüssig, die auf einem Betriebscode wie zB einem ablauffähigen ECU-C-Code aufsetzen. Da der erfindungsgemäße Codegenerator lediglich eine entsprechende Softwarespezifikation voraussetzt, ist dieser zum anderen auch unabhängig von einem zusätzlichen Betriebscodegenerator funktionsfähig. Auf der Grundlage des Simulationscodes ist ein effizientes Testen der Geräte im Wege der Simulation möglich.
  • Bevorzugte Weiterbildungen des erfindungsgemäßen Autocodegenerators sind in den Unteransprüchen 2 bis 4 angegeben.
  • Danach ist in einer vorteilhaften Ausführungsform vorgesehen, dass der Simulationscode Parameter umfasst, auf deren Basis die Software an eine vorgegebene Steuergerätehardware angepasst werden kann. Damit ist auch eine direkte Simulation unterschiedlicher Typen und Versionen von Steuergeräten möglich.
  • Abhängig vom Funktionsumfang des Simulationswerkzeugs kann es zudem von Vorteil sein, wenn der Simulationscode in einer in diesem Werkzeug ablauffähigen oder in einer für dieses Werkzeug interpretierbaren Form vorliegt. Damit lassen sich unterschiedlich aufgebaute Simulationswerkzeuge mit dem Code aus dem Generator bedienen.
  • Die eingangs genannte Aufgabe wird auch durch ein Werkzeug zum Entwickeln von Software für Steuergeräte nach Anspruch 4 gelöst, das zusätzlich über den vorstehend beschriebenen Autocodegenerator verfügt.
  • Ein wesentlicher Punkt besteht dabei darin, dass ein integriertes Werkzeug für den an sich bekannten Generator für Betriebscode, sowie den Generator für Simulationscode zur Verfügung steht. So kann zB das System ASCET-SD um den erfindungsgemäßen Autocodegenerator für CAE-Tools erweitert werde, wobei die mit ASCET-SD erstellten Funktionen mit in dem CAE-Tool verfügbaren Mitteln festgestellt werden. Dabei kann auf bekannte Methoden der Autocodegenerierung zugegriffen werden. Durch die Integration beide Codegeneratoren unter einem Entwicklungswerkzeug lässt sich die Programmentwicklung erheblich beschleunigen, da kein umständlicher Zugriff auf weitere Komponenten, ie keine zusätzlichen – fehleranfälligen und zeitaufwendigen – Konvertierungsschritte erforderlich sind.
  • Bevorzugt wird dabei der Betriebscode der Steuergeräte als C-Code ausgegeben, der die Portierung auf unterschiedlichste Betriebssystemplattformen erlaubt und dabei größte Flexibilität in den Hardware-Targets ermöglicht.
  • Grundsätzlich bleibt anzumerken, dass die Verwendung des erfindungsgemäßen Autocodegenerators in jedem Werkzeug zum Entwickeln von Software für Steuergeräte möglich ist, solange dieses eine Softwarespezifikation erlaubt. Damit ist der Codegenerator besonders vielseitig einsetzbar und eine Beschleunigung der Test- und Anpassungsphase innerhalb der Programmentwicklung aus einfacheren Tools heraus möglich.
  • Die eingangs genannte Aufgabe wird zudem durch ein Verfahren zum Entwickeln von Software für Steuergeräte nach Anspruch 7 gelöst, bei dem aus einer Softwarespezifikation ein Programmcode erzeugt wird, der zum Abbilden eines Steuergeräteverhaltens in einem rechnergestützten Simulationswerkzeug angepasst ist.
  • Ein wesentlicher Punkt des erfindungsgemäßen Verfahrens besteht darin, dass dieses einfach aufgebaut und leicht zu implementieren ist, und sich aus seiner Durchführung die schon vorstehend erwähnten Vorteile einer Programmentwicklung ergeben.
  • Eine bevorzugte Weiterbildung des erfindungsgemäßen Verfahrens ist in Unteranspruch 8 angegeben und betrifft das möglichst parallele Erzeugen von Betriebs- und Simulationscode, wodurch die Programmentwicklung erheblich beschleunigt wird.
  • Kurze Beschreibung der Zeichnungen
  • Der erfindungsgemäße Autocodegenerator, das Entwicklungswerkzeug und das zugehörige Verfahren werden im folgenden anhand eines Ausführungsbeispiels näher erläutert.
  • Es zeigen:
  • 1 eine Schrittfolge zum Erzeugen von simulationsfähigem Programmcode aus einer Softwarespezifikation unter Nutzung eines herkömmlichen Autocodegenerators und eines zusätzlichen Konverters, und
  • 2 eine Schrittfolge zum Erzeugen des gleichen Simulationscodes wie in 1 unter Nutzung des erfindungsgemäßen Autocodegenerators.
  • Ausführungsformen der Erfindung
  • Die 1 zeigt eine Schrittfolge zum Erzeugen von simulationsfähigem Programmcode 22 aus einer Softwarespezifikation 20 unter Nutzung eines herkömmlichen Autocodegenerators 10 und eines zusätzlichen Konverters 11, wie diese schon eingangs erläutert wurde. Der Konverter 11 wird benötigt, um den vom Autocodegenerator 10 aus der Softwarespezifikation 20 des Entwicklungswerkzeugs 30 erzeugten Betriebscode 22 für ein Steuergerät derart zu wandeln, dass dieser in ein CAE-Tool 40 einlesbar und dort simulierbar ist. Diese Art der Programmentwicklung setzt dabei den zusätzlichen Konverter 11 sowie zunächst die Erzeugung des Betriebscodes 21 für das Steuergerät voraus. Dies macht den Simulationsschritt kompliziert, fehleranfällig und zeitaufwendig.
  • Die 2 zeigt eine Schrittfolge zum Erzeugen des gleichen Simulationscodes 22 wie in 1 unter Nutzung des erfindungsgemäßen Autocodegenerators 15. Aus der in Ascet-SD 30 erzeugten Softwarespezifikation 20 wird ohne Umwege der Simulationscode 22 erzeugt, der in das CAE-Tool eingelesen und dort simuliert – und parametriert – werden kann. Da sozusagen direkt aus dem Softwareentwurf ein CAE-Target erzeugt wird, wird die Verwendung unterschiedlicher Versuchsträger überflüssig. Dies war im Stand der Technik nach 1 noch erforderlich, um die Nachteile des dort gezeigten Verfahrens zu umgehen. Die Test- und Anpassungsphase innerhalb der Programmentwicklung wird damit erheblich vereinfacht und verkürzt, wobei gleichzeitig die Anzahl von Schnittstellen als potentielle Fehlerquellen verringert wird.
  • In einem integrierten Werkzeug zum Erzeugen eines Programmcodes für Steuergeräte kann zudem ein herkömmlicher Autocodegenerator 10 vorgesehen sein, der die Softwarespezifikation 20 in einen Betriebscode 21 für ein Steuergerät wandelt, wie in der Schrittfolge der Figur gestrichelt angedeutet ist. Dadurch entsteht ein besonders kompaktes und effizientes Entwicklungswerkzeug, dass die Erzeugung von Betriebs- wie Simulationscode 21, 22 gleichermaßen ermöglicht.
  • Insgesamt lässt der erfindungsgemäße Autocodegenerator, das Entwicklungswerkzeug und das Verfahren eine Vereinfachung der Entwicklung von Software für Steuergeräte zu. Insbesondere die schnelle Simulationsmöglichkeit des Softwareentwurfs trägt zur Verkürzung der Test- und Anpassungsphase innerhalb der Programmentwicklung bei. Dabei lässt sich der Simulationscode rasch auf unterschiedliche Typen und Versionen von Steuergeräten parametrieren.

Claims (8)

  1. Rechnergestützter Autocodegenerator (15) zum Erzeugen von Programmcode (22) für Steuergeräte aus einer Softwarespezifikation (20), dadurch gekennzeichnet, dass der Codegenerator (15) derart ausgebildet ist, dass der damit erzeugte Code (22) zum Einlesen in ein rechnergestütztes Simulationswerkzeug (40) und zum Abbilden eines Steuergeräteverhaltens in diesem Simulationswerkzeug (40) angepasst ist.
  2. Codegenerator (15) nach Anspruch 1, bei dem der Simulationscode (22) Parameter umfasst, auf deren Basis die entwickelte Software an eine vorgegebene Steuergerätehardware angepasst werden kann.
  3. Codegenerator (15) nach einem der vorstehenden Ansprüche, bei dem der Simulationscode (22) in einer in dem Simulationswerkzeug (40) ablauffähigen oder in einer für dieses Werkzeug (40) interpretierbaren Form vorliegt.
  4. Rechnergestütztes Werkzeug zum Entwickeln von Software für Steuergeräte, mit einem Autocodegenerator (10) zum Erzeugen von Betriebscode (21) für diese Geräte aus einer Softwarespezifikation (20), gekennzeichnet durch einen zusätzlichen Autocodegenerator (15) nach einem der vorstehenden Ansprüche.
  5. Entwicklungswerkzeug nach Anspruch 4, bei dem der Betriebscode (21) ein C-Programmcode ist.
  6. Verwendung eines Autocodegenerators (15) nach einem der vorstehenden Ansprüche in einem rechnergestützten Entwicklungswerkzeug für Software von Steuergeräten.
  7. Verfahren zum Entwickeln von Software für Steuergeräte, bei dem aus einer Softwarespezifikation (20) ein Programmcode (22) erzeugt wird, der zum Abbilden eines Steuergeräteverhaltens in einem rechnergestützten Simulationswerkzeug (40) angepasst ist.
  8. Verfahren nach Anspruch 7, bei dem ein zusätzlicher Betriebscode (21) für Steuergeräte erzeugt wird.
DE200610033184 2006-07-18 2006-07-18 Autocodegenerator, Entwicklungswerkzeug und Verfahren zum Entwickeln für Software von Steuergeräten Withdrawn DE102006033184A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE200610033184 DE102006033184A1 (de) 2006-07-18 2006-07-18 Autocodegenerator, Entwicklungswerkzeug und Verfahren zum Entwickeln für Software von Steuergeräten
PCT/EP2007/057225 WO2008009628A2 (de) 2006-07-18 2007-07-13 Autocodegenerator, entwicklungswerkzeug und verfahren zum entwickeln für software von steuergeräten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200610033184 DE102006033184A1 (de) 2006-07-18 2006-07-18 Autocodegenerator, Entwicklungswerkzeug und Verfahren zum Entwickeln für Software von Steuergeräten

Publications (1)

Publication Number Publication Date
DE102006033184A1 true DE102006033184A1 (de) 2008-01-24

Family

ID=38809018

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200610033184 Withdrawn DE102006033184A1 (de) 2006-07-18 2006-07-18 Autocodegenerator, Entwicklungswerkzeug und Verfahren zum Entwickeln für Software von Steuergeräten

Country Status (2)

Country Link
DE (1) DE102006033184A1 (de)
WO (1) WO2008009628A2 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015221033A1 (de) * 2015-10-28 2017-05-04 Robert Bosch Gmbh Verfahren zum Parametrieren eines Montagewerkzeuges, Montagewerkzeug und lesbarer Code

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5583989A (en) * 1992-05-28 1996-12-10 Honda Giken Kogyo Kabushiki Kaisha Vehicle control system having program generator and convertor
DE10057575A1 (de) * 2000-11-20 2002-05-29 Andreas Foltinek Verfahren zur automatischen Softwaregenerierung
JP4728563B2 (ja) * 2003-01-27 2011-07-20 株式会社デンソー コード生成装置、コード生成プログラム、機能実行装置、機能実行プログラム、モデル生成装置、およびモデル生成プログラム

Also Published As

Publication number Publication date
WO2008009628A3 (de) 2011-04-28
WO2008009628A2 (de) 2008-01-24

Similar Documents

Publication Publication Date Title
EP2194432B1 (de) Scheduling-Verfahren
AT512977B1 (de) Methode zur Ermittlung eines Modells einer Ausgangsgröße eines technischen Systems
DE102005026040A1 (de) Parametrierung eines Simulations-Arbeitsmodells
DE102016119320A1 (de) Verfahren zum Konfigurieren eines realen oder virtuellen elektronischen Steuergerätes
EP1362267A1 (de) Verfahren und vorrichtung zum emulieren von steuer- und/oder regelfunktionen eines steuer- oder regelgeräts
DE102019134053A1 (de) Verfahren zur kontinuierlichen Absicherung im Fahrversuch applizierter automatisierter Fahrfunktionen
DE102006023575A1 (de) Vorrichtung zur Verbrennungsmotor-/Antriebsstrangsteuerung für ein Kraftfahrzeug
WO2005045538A1 (de) Verfahren und vorrichtung zur stimulation von funktionen zur steuerung von betriebsabläufen
DE102006033184A1 (de) Autocodegenerator, Entwicklungswerkzeug und Verfahren zum Entwickeln für Software von Steuergeräten
EP2363809A1 (de) Verfahren zur Optimierung eines Steuerprogramms für Aktuatoren
WO2005040838A1 (de) System und verfahren zum testen von steuervorgängen bei einem fahrzeug
DE10208866A1 (de) Einrichtung und Verfahren zur Beurteilung und Erzielung von Sicherheit bei Systemen sowie entsprechendes Computerprogramm
EP2154606B1 (de) Erzeugen einer ablauffähigen Konfiguration
EP2513727A1 (de) Verfahren zum ermitteln von funktionsparametern für ein steuergerät
DE10228610A1 (de) Verfahren zum Überprüfen eines auf einer elektronischen Recheneinheit ablaufenden Steuerprogramms
EP3979009A1 (de) Erzeugen eines vereinfachten modells für xil-systeme
EP2482148A1 (de) Verfahren für die Projektierung und/oder Programmierung einer multifunktionalen Komponente einer industriellen Automatisierungsanordnung
DE102007045563A1 (de) Rechnerbasiertes Werkzeug und Verfahren zum Extrahieren des Funktionscodes von Steuergeräten
WO2009059840A1 (de) Verfahren zur erzeugung eines steuerprogramms für ein elektronisches steuer- oder regelgerät
DE102014219771A1 (de) Verfahren zum Ermitteln des Energiebedarfs einer Produktionsmaschine oder eines aus mehreren Produktionsmaschinen bestehenden Produktionssystems sowie zur Durchführung des Verfahrens geeignetes Messgerät
DE102016225041B4 (de) Verfahren zum Betreiben einer Brennkraftmaschine, Steuereinrichtung für eine Brennkraftmaschine, und Brennkraftmaschine mit einer solchen Steuereinrichtung
DE102018217139B4 (de) Verfahren und Vorrichtung zum Konfigurieren einer Kennfunktion eines Steuergeräts eines Kraftfahrzeugs
DE102013200932A1 (de) Verfahren und Vorrichtung zur Überwachung einer Funktion eines Motorsteuergeräts zum Einsatz in einem Motorsystem mit einem Verbrennungsmotor
DE102017120013A1 (de) Verfahren zur Konfiguration eines zum Testen eines elektronischen Steuergeräts eingerichteten Testgeräts sowie Konfigurationssystem
EP3164820A1 (de) Zeitdiskretes modellierungsverfahren für ein kraftfahrzeug

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee