Nothing Special   »   [go: up one dir, main page]

DE102009047974B4 - Verfahren zur Programmierung eines Steuergeräts - Google Patents

Verfahren zur Programmierung eines Steuergeräts Download PDF

Info

Publication number
DE102009047974B4
DE102009047974B4 DE102009047974.0A DE102009047974A DE102009047974B4 DE 102009047974 B4 DE102009047974 B4 DE 102009047974B4 DE 102009047974 A DE102009047974 A DE 102009047974A DE 102009047974 B4 DE102009047974 B4 DE 102009047974B4
Authority
DE
Germany
Prior art keywords
gateway
programming
control unit
update application
application
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.)
Active
Application number
DE102009047974.0A
Other languages
English (en)
Other versions
DE102009047974A1 (de
Inventor
Dr. Kurth Alexander
Kai Barbehoen
Lucien Stemmelen
Anton Brandstetter
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.)
Bayerische Motoren Werke AG
Original Assignee
Bayerische Motoren Werke AG
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 Bayerische Motoren Werke AG filed Critical Bayerische Motoren Werke AG
Priority to DE102009047974.0A priority Critical patent/DE102009047974B4/de
Publication of DE102009047974A1 publication Critical patent/DE102009047974A1/de
Application granted granted Critical
Publication of DE102009047974B4 publication Critical patent/DE102009047974B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Verfahren zur Programmierung eines in einem Kraftfahrzeug angeordneten Steuergeräts (3) mit den Schritten:• Bereitstellen eines ebenfalls in dem Kraftfahrzeug angeordneten Gateways (2), welches über eine erste Busverbindung (B1) mit einer Datenschnittstelle des Kraftfahrzeugs verbunden ist und welches über eine zweite Busverbindung (B2) mit dem Steuergerät (3) verbunden ist,• Bereitstellen eines über die Datenschnittstelle und die erste Busverbindung (B1) mit dem Gateway (2) verbindbaren Programmiergeräts (1),• Bereitstellen einer Update-Applikation (121) bei dem Programmiergerät (1),• Verbinden des Programmiergeräts (1) mit der Datenschnittstelle,• Übertragen der Update-Applikation (121) von dem Programmiergerät (1) über die Datenschnittstelle und die erste Busverbindung (B1) zu dem Gateway (2), wobei vor dem Übertragen der Update-Applikation (121) von dem Programmiergerät (1) zu dem Gateway (2) zumindest eine zuvor in einem Datenspeicher des Gateways (2) abgelegte Applikation aus dem Datenspeicher gelöscht wird, um Speicherplatz in dem Datenspeicher freizugeben,• Ausführen der Update-Applikation (121) durch das Gateway (2), um das Steuergerät (3) über die zweite Busverbindung (B2) zu programmieren,• Löschen der Update-Applikation (121) im Gateway.

Description

  • Die Erfindung betrifft ein Verfahren zur Programmierung eines in einem Kraftfahrzeug angeordneten Steuergeräts.
  • Moderne Kraftfahrzeuge verfügen in der Regel über eine Vielzahl von Steuergeräten.
  • Veränderte Anforderungen und/oder Verbesserungen machen gelegentlich eine Programmierung eines bereits in einem Kraftfahrzeug verbauten Steuergeräts erforderlich. Die Bereitstellung von extern zugänglichen Datenschnittstellen zur Neuprogrammierung für jedes einzelne Steuergerät wäre höchst unwirtschaftlich. Die Bereitstellung so genannter Programmier-Gateways und/oder von Programmier-Applikationen bei Diagnose-Gateways bindet Ressourcen.
  • DE 102 37 715 A1 offenbart eine Vorrichtung zum Zugriff auf ein Fahrzeugsteuersystem über eine drahtlose Verbindung. Die Vorrichtung weist eine Gateway-Einheit, die in dem Fahrzeug angebracht ist, sowie eine Steuereinheit auf, die im Fahrzeug angeordnet und mit der Gateway-Einheit verbunden ist. Die Gateway-Einheit kann über eine Funkverbindung frei konfiguriert werden und kann beispielsweise zum Software-Download in andere Steuergeräte dienen.
  • WO 2007 / 078 943 A2 offenbart ein System zum Programmieren eines eingebetteten Systems, das in einem Fahrzeug angeordnet ist. Das System weist einen externen Programmierer und eine Steuereinheit auf, die ebenfalls in dem Fahrzeug angeordnet ist. Die Steuereinheit ist dazu ausgebildet, sowohl mit dem eingebetteten System als auch dem externen Programmierer zu kommunizieren. Von dem externen Programmierer kann Softwarecode an die Steuereinheit gesendet werden, wobei der Softwarecode durch die Steuereinheit ausführbar ist, um das eingebettete System zu programmieren.
  • Es ist eine Aufgabe der Erfindung, ein einfaches und wirtschaftliches Verfahren zur Programmierung eines in einem Kraftfahrzeug angeordneten Steuergeräts zu schaffen.
  • Gelöst wird diese Aufgabe durch ein Verfahren gemäß Anspruch 1. Vorteilhafte Ausführungsformen und Weiterbildungen der Erfindung ergeben sich aus den abhängigen Ansprüchen.
  • Demgemäß wird zunächst ein ebenfalls in dem Kraftfahrzeug angeordnetes Gateway bereitgestellt, welches über eine erste Busverbindung mit einer Datenschnittstelle des Kraftfahrzeugs verbunden ist und welches über eine zweite Busverbindung mit dem Steuergerät verbunden ist. Das Gateway wird also in an sich bekannter Weise zwischen Datenschnittstelle und Steuergerät geschaltet.
  • Außerhalb des Fahrzeugs wird ein über die Datenschnittstelle, die insbesondere als (vorzugsweise genormte) Diagnoseschnittstelle des Kraftfahrzeug ausgebildet sein kann, und die erste Busverbindung mit dem Gateway verbindbares Programmiergerät bereitgestellt. Bei dem Programmiergerät handelt es sich vorzugsweise um einen so genannten Diagnosetester.
  • Bei dem Programmiergerät wird eine Update-Applikation bereitgestellt. Unter einer Update-Applikation ist dabei ein Computerprogramm zu verstehen, mittels welchen eine Recheneinheit in der Lage ist, ein mit ihr verbundenes Steuergerät neu zu programmieren. Vorzugsweise beinhaltet die Update-Applikation eine auf das zu programmierende Steuergerät zu übertragende steuergerätespezifische Software sowie Programmierabläufe zur Umsetzung der Übertragung. Die Update-Applikation ist vorzugsweise spezifisch für eine Ausführung durch das Gateway ausgelegt, z.B. entsprechend kompiliert.
  • Das Programmiergerät wird mit der Datenschnittstelle verbunden und die Update-Applikation wird von dem Programmiergerät über die Datenschnittstelle und die erste Busverbindung zu dem Gateway übertragen.
  • Anschließend wird die Update-Applikation durch das Gateway ausgeführt. Durch die Ausführung wird das Steuergerät von dem Gateway über die zweite Busverbindung programmiert. Das Gateway fungiert gewissermaßen als Programmiereinheit des Steuergeräts.
  • Nach der Ausführung der Update-Applikation oder als letzter Schritt der Ausführung der Update-Applikation wird die Update-Applikation aus dem Gateway gelöscht.
  • Vorzugsweise werden die Verfahrensschritte gemäß Anspruch 1 in der Reihenfolge ihrer Nennung im Anspruch ausgeführt.
  • Durch die Erfindung wird eine dauerhafte Ressourcenbindung im Gateway vermieden. Das erfindungsgemäße Verfahren ist somit auch für Gateways mit wenig Speicherplatz anwendbar. Das Gateway wird nur temporär und/oder bei Bedarf als Programmiereinheit genutzt. Dadurch erübrigt sich das kostspielige und aufwändige dauerhafte Vorhalten der Ressourcen für eine mögliche Programmierung. Dauerhafte Modifikationen am Gateway, etwa zur Bereitstellung geänderter Programmierfunktionalitäten, werden durch die Erfindung vermieden, wodurch der Absicherungsaufwand verringert wird. Die Erfindung sogar zur kostengünstigen Durchführung einer so genannten technischen Aktion im Feld genutzt werden, ohne dass das Gateway im Vorfeld hierfür vorbereitet sein muss. Schließlich kann das Gateway durch die Erfindung nachträglich zu Programmierzwecken nutzbar gemacht werden.
  • Auf die Implementierung des so genannten Bootloaders des Steuergeräts nimmt die Erfindung keinen Einfluss. Ein Steuergerät kann somit auf unterschiedliche Arten und Weisen ohne Änderung programmiert werden. Ein Steuergerät lässt sich somit beispielsweise mittels derselben Schnittstellen und desselben Protokolls wahlweise „direkt“ (d.h. unmittelbar verbunden) mittels eines Diagnosetesters programmieren, „indirekt“ mittels eines über ein Diagnosegateway verbundenen Diagnosetesters programmieren oder auch erfindungsgemäß aktiv durch das temporär als Programmiereinheit fungierende Gateway programmieren.
  • Die Erfindung überrascht den Fachmann angesichts des Stands der Technik insoweit, als der Programmieraufwand und die Anzahl erforderlicher Schritte gegenüber dem Stand der Technik gesteigert wird. Schließlich ist bei der Erfindung zusätzlich zur eigentlichen Programmierung des Steuergeräts zumindest eine Programmierung (gegebenenfalls sogar zwei Programmierungen, s.u.) des Gateways erforderlich. Im Hinblick auf die Ressourcenrestriktionen im Gateway bietet die Erfindung jedoch eine kostenoptimale Möglichkeit, das Gateway nur temporär zur Programmierung zu nutzen.
  • Gemäß einer bevorzugten Ausführungsform der Erfindung wird vor dem Übertragen der Update-Applikation von dem Programmiergerät zu dem Gateway zumindest eine zuvor in einem Datenspeicher des Gateways abgelegte Applikation aus dem Datenspeicher gelöscht, um Speicherplatz in dem Datenspeicher freizugeben. Der Datenspeicher, in dem die Update-Applikation bei dem Gateway abgelegt wird, kann somit besonders sparsam konzipiert bzw. dimensioniert werden. Das Löschen der zuvor in dem Datenspeicher des Gateways abgelegten Applikation kann beispielsweise durch das Programmiergerät über die Datenschnittstelle und die erste Busverbindung vorgenommen bzw. ausgelöst werden.
  • Eine Sicherung der Applikation ist in der Regel nicht erforderlich. Vorzugsweise hat nämlich das Programmiergerät, z.B. ein als Industrie-PC mit Zugriff auf einen großen Datenspeicher (z.B. auf Festplatte, DVD oder per Internet) ausgeführter Diagnosetester, Zugriff auf eine Datenbank mit vorzugsweise den aktuellsten Applikationen für das jeweilige Kraftfahrzeug, z.B. unmittelbar bereitgsestellt von einer Entwicklungsabteilung.
  • Soll dennoch eine Sicherung vorgenommen werden, so kann dies folgendermaßen geschehen: Die zuvor in dem Datenspeicher des Gateways abgelegte Applikation kann vor ihrem Löschen gesichert und nach dem Löschen der Update-Applikation wiederhergestellt werden. Dies kann auf vielfältige Art und Weise erfolgen. Ein stringenter und sicherer Verfahrensablauf ergibt sich bei einer Sicherung der Applikation im Programmiergerät. Geringerer Datenverkehr ergibt sich bei einer Verlagerung der Applikation zu Sicherungszwecken innerhalb des Gateways, etwa in einen weiteren Datenspeicher des Gateways oder, gegebenenfalls in komprimierter Form, an einen anderen Speicherort desselben Datenspeichers. Vorteilhaft kann auch eine Auslagerung zu Sicherungszwecken auf ein anderes Gateway oder ein anderes Steuergerät des Kraftfahrzeugs sein.
  • Das Löschen der Update-Applikation aus dem Gateway kann, insbesondere nach dessen Ausführung, durch das Programmiergerät über die Datenschnittstelle und die erste Busverbindung vorgenommen bzw. ausgelöst werden. Alternativ kann das Löschen selbsttätig, gewissermaßen eine Selbstlöschung als letzter Schritt der Ausführung, vorgesehen sein.
  • Erfolgt das Löschen der Update-Applikation im Gateway ohne Zutun des Programmiergeräts und werden auch andere Interaktionen des Gateways mit dem Programmiergerät während der Ausführung der Update-Applikation vermieden, kann das Programmiergerät während der Ausführung der Update-Applikation von der Datenschnittstelle getrennt werden, ohne die Programmierung des Steuergeräts zu beeinträchtigen. Das Programmiergerät wird somit nur für einen verhältnismäßig geringen Zeitraum benötigt.
  • Wurde eine zuvor in dem Datenspeicher des Gateways abgelegte Applikation im Programmiergerät gesichert oder auch gelöscht, so ist die gesicherte Applikation - oder eine gegebenenfalls aktualisierte Ersatzapplikation - vorzugsweise (auch nach einer Trennung des Programmiergeräts von der Datenschnittstelle während der Ausführung der Update-Applikation) zu einem späteren Zeitpunkt und nach einer erneuten Anbindung des Programmiergeräts an die Datenschnittstelle ins Gateway zurückspielbar.
  • Vorzugsweise sind mehrere Steuergeräte des Kraftfahrzeugs durch eine einzige Update-Applikation und ein einziges Gateway programmierbar. Dazu ist vorzugsweise das Gateway über die zweite Busverbindung und/oder eine weitere Busverbindung mit zumindest einem weiteren Steuergerät verbunden und es wird vorzugsweise durch Ausführen der Update-Applikation auch das zumindest eine weitere Steuergerät programmiert.
  • Ein der Erfindung zugrunde liegendes Prinzip, nämlich die temporäre Programmierung des Gateways, kann alternativ auch genutzt werden, um temporär eine Diagnosegateway-Applikation (statt einer Update-Applikation für das Steuergerät) in das Gateway einzuspielen. Dies resultiert in dem folgenden Verfahren:
    • Verfahren zur Programmierung eines in einem Kraftfahrzeug angeordneten Steuergeräts mit den Schritten:
      • • Bereitstellen eines ebenfalls in dem Kraftfahrzeug angeordneten Gateways, welches über eine erste Busverbindung mit einer Datenschnittstelle des Kraftfahrzeugs verbunden ist und welches über eine zweite Busverbindung mit dem Steuergerät verbunden ist,
      • • Bereitstellen eines über die Datenschnittstelle und die erste Busverbindung mit dem Gateway verbindbaren Programmiergeräts,
      • • Bereitstellen einer Update-Applikation und einer Diagnosegateway-Applikation bei dem Programmiergerät,
      • • Verbinden des Programmiergeräts mit der Datenschnittstelle,
      • • Übertragen der Diagnosegateway-Applikation von dem Programmiergerät über die Datenschnittstelle und die erste Busverbindung zu dem Gateway,
      • • Ausführen der Diagnosegateway-Applikation durch das Gateway,
      • • Ausführen der Update-Applikation durch das Programmiergerät, um das Steuergerät unter Vermittlung durch die auf dem Gateway ausgeführte Diagnosegateway-Applikation über die Datenschnittstelle, die erste Busverbindung, das Gateway und die zweite Busverbindung zu programmieren,
      • • Löschen der Diagnosegateway-Applikation im Gateway.
  • Im Folgenden wird anhand der einzigen beigefügten Zeichnung ein bevorzugtes Ausführungsbeispiel der Erfindung beschrieben. Daraus ergeben sich weitere Details, bevorzugte Ausführungsformen und Weiterbildungen der Erfindung. Im Einzelnen zeigen schematisch
    • 1 den Signalfluss bei der Programmierung eines Steuergeräts nach einem Verfahren gemäß dem Stand der Technik,
    • 2 einen beispielhaften Signalfluss bei der erfindungsgemäßen Programmierung eines Steuergeräts.
  • Ausgangssituation für die nachfolgenden Ausführungen ist die Aufgabenstellung, ein in einem Kraftfahrzeug verbautes Steuergerät 3 neu zu programmieren. Die Programmierung soll unter Zuhilfenahme eines fahrzeugexternen Diagnosegeräts 1 (im folgenden Tester genannt) vorgenommen werden.
  • Auf Grund der Komplexität heutiger Bordnetze ist der Tester 1 zur Programmierung in der Regel nicht direkt mit dem zu programmierenden Steuergerät verbunden, sondern nur über die Zwischenschaltung eines oder mehrerer Gateway-Steuergeräte 2 (im Folgenden kurz Gateway genannt). 1 veranschaulicht die Konfiguration.
  • Hierdurch entsteht die Problematik, dass der Tester 1 nur unter Vermittlung eines Gateways 2 auf das zu programmierende Steuergerät 3 zugreifen kann. Das Gateway 2 fungiert dabei lediglich als Vermittler, der Nachrichten von einem ersten Bus B1 auf einen zweiten Bus B2 (und umgekehrt) „kopiert“ (vgl. 1). Dieser Vorgang der Nachrichtenvermittlung durch das Gateway 2 ist generisch (d.h. unabhängig vom Programmierablauf).
  • Zur Steuerung der Programmierung wird ein Diagnoseprogramm (im folgenden Update-Applikation genannt) auf dem Tester 1 genutzt, welches die aktualisierte Software nach Weiterleitung durch das Gateway 2 in das Steuergerät 3 programmiert. Diese Update-Applikation verwendet im vorliegenden Beispiel die Standards [HIS 1], [ISO14229-1], [ISO15765-3].
  • Die in 1 dargestellten Geräte umfassen (unter anderem) die folgenden Software-Komponenten: der Tester 1 umfasst die genannte Update-Applikation 11; das Gateway 2 umfasst eine Diagnosegateway-Applikation 21, einen Bootloader 22 und zumindest eine weitere Applikation 23 mit zugehörigen Daten (ebenfalls durch Block 23 repräsentiert); das Steuergerät 3 umfasst einen Bootloader 31, eine Applikation 32 und Daten/Parameter 33.
  • Die Pfeile B1 und B2 in 1 veranschaulichen die physikalische Busverbindung zwischen Tester 1 und Gateway 2 bzw. zwischen Gateway 2 und Steuergerät 3. Der Pfeil 12 veranschaulicht den Zugriff der Update-Applikation 11 auf die Diagnosegateway-Applikation 21. Der Pfeil 24 veranschaulicht den Zugriff der Diagnosegateway-Applikation 21 auf den Bootloader 31 des Steuergeräts 3.
  • Die an der Programmierung beteiligten Software-Komponenten sind in 1 schraffiert dargestellt (alle außer Komponenten 22 und 23).
  • Damit das Gateway 2 die notwendige Vermittlungsrolle gemäß der oben beschriebenen und in 1 dargestellten aufwandsintensiven Lösung wahrnehmen kann, muss dauerhaft eine Vermittlungssoftware im Gateway 2 gespeichert bleiben (Diagnosegateway-Applikation 21), welche dauerhaft Ressourcen im Gateway 2 in Form von Speicherplatz und CPU-Leistung bindet. Diese dauerhafte Ressourcenbindung im Gateway 2 verursacht hohe Kosten, obwohl die Programmierung nur selten genutzt wird (z.B. in der Entwicklung oder beim Service des Fahrzeugs).
  • Eine bekannte Alternative zu diesem Stand der Technik besteht darin, die Vorhaltung einer Option zum Software-Update von Steuergeräten aus Kostengründen komplett entfallen zu lassen. Dies birgt mittel- und langfristig aber das Risiko, dass im Fehlerfall hohe Gewährleistungskosten entstehen oder ein Steuergeräteaustausch erforderlich wird.
  • Durch die Erfindung wird die kostenrelevante Ressourcenbindung im Gateway in Form von Speicherplatz und CPU-Kapazität ungleich eleganter vermieden. Ziel der Erfindung ist die ressourcenoptimierte Programmierung von Steuergeräten im Fahrzeug für Steuergeräte mit programmierbarem Speicher.
  • 2 zeigt einen beispielhaften Signalfluss bei der erfindungsgemäßen Programmierung eines oder mehrerer assoziierter Steuergeräte.
  • Die in 2 dargestellten Geräte umfassen dabei (unter anderem) die folgenden Software-Komponenten: der Tester 1 umfasst eine (auf das Gateway 2 bezogene) Gateway-Update-Applikation 111; das Gateway 2 umfasst eine (auf das Steuergerät 3 bezogene) Update-Applikation 121, einen Bootloader 122 und zumindest eine weitere Applikation 123 mit zugehörigen Daten (ebenfalls durch Block 123 repräsentiert); das Steuergerät 3 umfasst einen Bootloader 131, eine Applikation 132 und Daten/Parameter 133.
  • Bei dieser Lösung wird - nur temporär - eine (auf das Steuergerät 3 bezogene) Update-Applikation 121 in das Gateway 2 eingebracht. Die Update-Applikation 121 beinhaltet die Software und die Programmierfunktionalität für das/die assoziierte(n) Steuergerät(e).
  • Die (auf das Steuergerät 3 bezogene) Update-Applikation 121 läuft (d.h. wird ausgeführt) im Gegensatz zum Stand der Technik nicht auf dem Tester 1, sondern auf dem Gateway 2. Das Gateway 2 übernimmt gewissermaßen die Rolle eines Testers bzw. fungiert als Programmiereinheit für das Steuergerät.
  • Die dauerhafte Speicherung der Update-Applikation 121 im Gateway 2 kann dadurch vermieden werden, dass die Update-Applikation 121 nur temporär, vorzugsweise erst kurz vor der Programmierung des Steuergerätes 3, vom tatsächlichen Tester 1 mittels konventioneller Programmiertechniken (vgl. Gateway-Update-Applikation 111) in das Gateway 2 eingebracht wird. Nach der Programmierung des Steuergerätes 3 wird die Update-Applikation 121 wieder vom Gateway 2 gelöscht, vorzugsweise erneut durch den Tester 1.
  • Es wird also eine Folge von mehreren Programmierschritten genutzt, um die dauerhafte Ressourcenbindung im Gateway zu vermeiden. In der Regel werden dies drei Programmierschritte sein, nämlich: zweimaliges Programmieren des Gateways 2, um (zwischen diesen beiden Programmierungen des Gateways) ein einziges Mal das Steuergerät 3 zu programmieren.
  • Auch in 2 veranschaulichen die Pfeile B1 und B2 die physikalische Busverbindung zwischen Tester 1 und Gateway 2 bzw. zwischen Gateway 2 und Steuergerät 3. Der Pfeil 112 veranschaulicht den Zugriff der Gateway-Update-Applikation 111 auf den Bootloader 122 des Gateways 2. Der Pfeil 124 veranschaulicht das Update des Gateways, bei welchem die Update-Applikation 121 ins Gateway 2 eingespielt wird. Der Pfeil 125 veranschaulicht den Zugriff der dann im Gateway 2 lauffähigen Update-Applikation 121 auf den Bootloader 131 des Steuergeräts 3.
  • Beim Einspielen der Update-Applikation 121 ins Gateway 2 wird im vorliegenden Beispiel eine zuvor im entsprechenden Speicherbereich des Gateways 2 enthaltene Applikationssoftware überschrieben. Alternativ könnte die zuvor im entsprechenden Speicherbereich des Gateways 2 enthaltene Applikationssoftware auch bereits vorab gelöscht werden. Eine andere im Gateway 2 gespeicherte Applikation 123 (samt Daten) bleibt im vorliegenden Beispiel hingegen unberührt.
  • Der oben bereits umrissene Verfahrensablauf umfasst die folgenden Schritte:
    1. (a) (Optional) Löschen der Applikationssoftware im Gateway, um freien Speicher auf dem Gateway zu erhalten.
    2. (b) Einspielen der Update-Applikation 121 in das Gateway (vgl. Pfeile 112 und 124 in 2). Die Update-Applikation 121 beinhaltet die auf das Steuergerät 3 zu übertragende steuergerätespezifische Software sowie die „eigentliche“ Update-Applikation (d.h. die Programmierabläufe zur Umsetzung der Übertragung).
    3. (c) Starten der Update-Applikation 121 im Gateway 2.
    4. (d) Die Update-Applikation 121 programmiert das Steuergerät 3 sowie gegebenenfalls weitere assoziierte Steuergeräte (Pfeil 125 in 2)
    5. (e) Nach der Programmierung des Steuergerätes 3 (bzw. aller assoziierten Steuergeräte) durch das Gateway 2 wird die Update-Applikation 121 im Gateway 2 durch den Tester 1 gelöscht.
    6. (f) (Optional) Wiederherstellen der ursprünglichen Applikationssoftware im Gateway 2, sofern bzw. soweit diese in Schritt (a) gelöscht worden ist.
  • Ein wesentlicher Unterschied des Verfahrens gemäß 2 zum Stand der Technik gemäß 1 liegt darin, dass beim Stand der Technik gemäß 1 die (auf das Steuergerät 3 bezogene) Update-Applikation 11 im Tester 1 läuft, während beim Verfahren gemäß 2 die (auf das Steuergerät 3 bezogene) Update-Applikation 121 auf dem Gateway 2 läuft. Das Gateway 2 übernimmt somit gewissermaßen temporär die Rolle eines direkt angebundenen Programmiersystems für das Steuergerät. Wenn beispielsweise die Update-Applikation 121 auf das Gateway 2 programmiert worden ist, d.h. ins Gateway 2 eingespielt worden ist, dann ist der Tester 1 am eigentlichen Programmierablauf des Steuergerätes (vgl. Pfeil 125 in 2) nicht direkt beteiligt.

Claims (9)

  1. Verfahren zur Programmierung eines in einem Kraftfahrzeug angeordneten Steuergeräts (3) mit den Schritten: • Bereitstellen eines ebenfalls in dem Kraftfahrzeug angeordneten Gateways (2), welches über eine erste Busverbindung (B1) mit einer Datenschnittstelle des Kraftfahrzeugs verbunden ist und welches über eine zweite Busverbindung (B2) mit dem Steuergerät (3) verbunden ist, • Bereitstellen eines über die Datenschnittstelle und die erste Busverbindung (B1) mit dem Gateway (2) verbindbaren Programmiergeräts (1), • Bereitstellen einer Update-Applikation (121) bei dem Programmiergerät (1), • Verbinden des Programmiergeräts (1) mit der Datenschnittstelle, • Übertragen der Update-Applikation (121) von dem Programmiergerät (1) über die Datenschnittstelle und die erste Busverbindung (B1) zu dem Gateway (2), wobei vor dem Übertragen der Update-Applikation (121) von dem Programmiergerät (1) zu dem Gateway (2) zumindest eine zuvor in einem Datenspeicher des Gateways (2) abgelegte Applikation aus dem Datenspeicher gelöscht wird, um Speicherplatz in dem Datenspeicher freizugeben, • Ausführen der Update-Applikation (121) durch das Gateway (2), um das Steuergerät (3) über die zweite Busverbindung (B2) zu programmieren, • Löschen der Update-Applikation (121) im Gateway.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Update-Applikation (121) eine auf das zu programmierende Steuergerät (3) zu übertragende steuergerätespezifische Software beinhaltet sowie Programmierabläufe zur Umsetzung der Übertragung.
  3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass das Löschen der zuvor in dem Datenspeicher des Gateways (2) abgelegten Applikation durch das Programmiergerät (1) über die Datenschnittstelle und die erste Busverbindung (B1) vorgenommen bzw. ausgelöst wird.
  4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die zuvor in dem Datenspeicher des Gateways (2) abgelegte Applikation vor ihrem Löschen gesichert und nach dem Löschen der Update-Applikation (121) wiederhergestellt wird.
  5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass das Löschen der Update-Applikation (121) im Gateway durch das Programmiergerät (1) über die Datenschnittstelle und die erste Busverbindung (B1) vorgenommen bzw. ausgelöst wird.
  6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass Löschen der Update-Applikation (121) im Gateway (2) ohne Zutun des Programmiergeräts (1) erfolgt und dass das Programmiergerät (1) während der Ausführung der Update-Applikation (121) von der Datenschnittstelle getrennt werden kann, ohne die Programmierung des Steuergeräts (3) zu beeinträchtigen.
  7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass die Datenschnittstelle eine Diagnoseschnittstelle des Kraftfahrzeugs ist.
  8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass das Gateway (2) über die zweite Busverbindung (B2) und/oder eine weitere Busverbindung mit einem weiteren Steuergerät verbunden ist und dass durch Ausführen der Update-Applikation (121) auch das weitere Steuergerät programmiert wird.
  9. Verfahren nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass es sich bei dem Programmiergerät (1) um einen Diagnosetester handelt.
DE102009047974.0A 2009-10-01 2009-10-01 Verfahren zur Programmierung eines Steuergeräts Active DE102009047974B4 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102009047974.0A DE102009047974B4 (de) 2009-10-01 2009-10-01 Verfahren zur Programmierung eines Steuergeräts

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102009047974.0A DE102009047974B4 (de) 2009-10-01 2009-10-01 Verfahren zur Programmierung eines Steuergeräts

Publications (2)

Publication Number Publication Date
DE102009047974A1 DE102009047974A1 (de) 2011-04-07
DE102009047974B4 true DE102009047974B4 (de) 2022-09-01

Family

ID=43705642

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102009047974.0A Active DE102009047974B4 (de) 2009-10-01 2009-10-01 Verfahren zur Programmierung eines Steuergeräts

Country Status (1)

Country Link
DE (1) DE102009047974B4 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012214793A1 (de) * 2012-08-21 2014-02-27 BSH Bosch und Siemens Hausgeräte GmbH Kommunikationsmodul mit einem untermodul
FR3140690A1 (fr) 2022-10-07 2024-04-12 F.B.I. boîtier CAN BUS pour véhicules professionnels

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4211650A1 (de) 1992-04-07 1993-10-14 Bosch Gmbh Robert Verfahren zur Variantencodierung bei mehreren miteinander vernetzten Steuergeräten und ein Steuergerät zur Durchführung des Verfahrens
DE4332499A1 (de) 1993-09-24 1995-03-30 Bosch Gmbh Robert Verfahren zur vollständigen Neuprogrammierung eines löschbaren, nichtflüchtigen Speichers
DE19821500A1 (de) 1997-06-18 1999-01-28 Siemens Ag Steuergerät und Steueranordnung für ein Insassenschutzmittel eines Kraftfahrzeugs sowie Verfahren zum Übertragen von Daten in der Steueranordnung
EP0997347A2 (de) 1998-10-29 2000-05-03 Mannesmann VDO Aktiengesellschaft Verfahren und Einrichtung zur Programmierung eines Steuergerätes, insbesondere eines Kraftfahrzeuges
EP1003106A2 (de) 1998-10-29 2000-05-24 Mannesmann VDO Aktiengesellschaft Anordnung zur Anpassung von Betriebsdaten und/oder Betriebsprogrammen
DE10237715A1 (de) 2002-08-17 2004-02-26 Robert Bosch Gmbh Vorrichtung zum Zugriff auf ein Fahrzeugssteuersystem über eine drahtlose Verbindung
DE102004005680A1 (de) 2004-02-05 2005-08-25 Bayerische Motoren Werke Ag Vorrichtung und Verfahren zur Ansteuerung von Steuergeräten in einem Bordnetz eines Kraftfahrzeuges
WO2007078943A2 (en) 2005-12-28 2007-07-12 Motorola, Inc. Programming an embedded system in a vehicle using dynamic provisioning of program control operations
US20070287439A1 (en) 2004-12-14 2007-12-13 Bayerische Motoren Werke Aktiengesellschaft System for using at least one mobile terminal in a motor vehicle using an updating device

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4211650A1 (de) 1992-04-07 1993-10-14 Bosch Gmbh Robert Verfahren zur Variantencodierung bei mehreren miteinander vernetzten Steuergeräten und ein Steuergerät zur Durchführung des Verfahrens
DE4332499A1 (de) 1993-09-24 1995-03-30 Bosch Gmbh Robert Verfahren zur vollständigen Neuprogrammierung eines löschbaren, nichtflüchtigen Speichers
DE19821500A1 (de) 1997-06-18 1999-01-28 Siemens Ag Steuergerät und Steueranordnung für ein Insassenschutzmittel eines Kraftfahrzeugs sowie Verfahren zum Übertragen von Daten in der Steueranordnung
EP0997347A2 (de) 1998-10-29 2000-05-03 Mannesmann VDO Aktiengesellschaft Verfahren und Einrichtung zur Programmierung eines Steuergerätes, insbesondere eines Kraftfahrzeuges
EP1003106A2 (de) 1998-10-29 2000-05-24 Mannesmann VDO Aktiengesellschaft Anordnung zur Anpassung von Betriebsdaten und/oder Betriebsprogrammen
DE10237715A1 (de) 2002-08-17 2004-02-26 Robert Bosch Gmbh Vorrichtung zum Zugriff auf ein Fahrzeugssteuersystem über eine drahtlose Verbindung
DE102004005680A1 (de) 2004-02-05 2005-08-25 Bayerische Motoren Werke Ag Vorrichtung und Verfahren zur Ansteuerung von Steuergeräten in einem Bordnetz eines Kraftfahrzeuges
US20070287439A1 (en) 2004-12-14 2007-12-13 Bayerische Motoren Werke Aktiengesellschaft System for using at least one mobile terminal in a motor vehicle using an updating device
WO2007078943A2 (en) 2005-12-28 2007-07-12 Motorola, Inc. Programming an embedded system in a vehicle using dynamic provisioning of program control operations

Also Published As

Publication number Publication date
DE102009047974A1 (de) 2011-04-07

Similar Documents

Publication Publication Date Title
EP1967435B1 (de) Verfahren zur adaptiven konfigurationserkennung
WO2013171122A2 (de) Funktional erweiterbares fahrzeugsteuergerät und verfahren zum ergänzen der funktionalität eines fahrzeugsteuergeräts
DE102015216265A1 (de) Verfahren und Teilsystem zum Installieren eines Softwareupdates in einem Fahrzeug
DE102017212109A1 (de) Verfahren zum Betreiben eines Schienenfahrzeugs
DE112013003521B4 (de) Verfahren und Vorrichtung zum Austausch von Daten in einem Kraftfahrzeug zum Betreiben eines Aktors einer automatisierten Reibungskupplung und/oder eines automatisierten Getriebes
DE102009047974B4 (de) Verfahren zur Programmierung eines Steuergeräts
DE112013003240B4 (de) Verfahren zur Steuerung eines Kraftfahrzeuggetriebes
DE102016201769A1 (de) Verfahren zum Aktualisieren von Software eines Steuergerätes, vorzugsweise für ein Kraftfahrzeug
DE112016006679B4 (de) Steuerungsvorrichtung und Recovery-Verarbeitungsverfahren für Steuerungsvorrichtung
WO2005022382A2 (de) Verfahren zur installation einer programmkomponente
DE102016106572A1 (de) Verfahren zum betreiben eines steuergeräts für ein fahrzeug, steuergerät, betriebssystem, kraftfahrzeug
DE102013214795A1 (de) Tachografenanordnung und Verfahren zum Betreiben einer Tachografenanordnung
EP3647794B1 (de) Verfahren zum steuern einer kommunikation zwischen einer aufzeichnungseinheit und einem geschwindigkeitsgeber eines tachographensystems eines kraftfahrzeugs sowie korrespondierendes tachographensystem und aufzeichnungseinheit für das tachographensystem
EP3797352B1 (de) Verfahren zum austauschen eines ersten ausführbaren programm-codes und eines zweiten ausführbaren programm-codes und steuergerät
DE102017112817A1 (de) Inbetriebnahme-Steuergerät eines Verbunds aus Steuergeräten eines Kraftfahrzeugs und Verfahren zur Inbetriebnahme von Steuergeräten
EP3285162A1 (de) Verfahren zum projektieren eines projektes sowie anordnung zur durchführung des verfahrens
DE102015214389A1 (de) Verfahren und Vorrichtung zum Aktualisieren einer auf einer physischen Maschine unter einem Hypervisor betriebenen virtuellen Maschine
DE102006004599A1 (de) Endgerät und Verfahren zur Aktualisierung von Programmcode eines Endgeräts
DE102019214922A1 (de) Konfigurationsverfahren für eine Eisenbahnsignalanlage und Aktualisierungssystem
EP3988384B1 (de) Computerimplementiertes verfahren und vorrichtung zum lokalen lastmanagement von ladestationen zum laden von elektrofahrzeugen in einem ladestationssystem
DE102019000493A1 (de) Verfahren zur Aktualisierung einer jeweiligen Software mehrerer Steuergeräte eines Fahrzeugs
EP1967920A1 (de) Verfahren zur Durchführung von Softwareupdates in FPGA-basierte Automatisierungsgeräte
DE102016211772A1 (de) Verfahren und Vorrichtung zum Aktualisieren mehrerer Steuergeräte über einen gemeinsamen Feldbus
EP3865962A1 (de) Diagnoseverfahren und diagnoseeinrichtung für eine anlage
WO2017182210A1 (de) Verfahren zur programmierung von steuergeräten eines kraftfahrzeugs

Legal Events

Date Code Title Description
OM8 Search report available as to paragraph 43 lit. 1 sentence 1 patent law
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final