DE102009047974B4 - Procedure for programming a control unit - Google Patents
Procedure for programming a control unit Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
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.Method for programming a control unit (3) arranged in a motor vehicle, with the steps:• Providing a gateway (2) also arranged in the motor vehicle, which is connected to a data interface of the motor vehicle via a first bus connection (B1) and which via a second bus connection (B2) is connected to the control device (3),• providing a programming device (1) which can be connected to the gateway (2) via the data interface and the first bus connection (B1),• providing an update application (121) in the programming device ( 1),• connecting the programming device (1) to the data interface,• transferring the update application (121) from the programming device (1) via the data interface and the first bus connection (B1) to the gateway (2), before transferring the update application (121) from the programming device (1) to the gateway (2) at least one previously stored in a data memory of the gateway (2) application from the data memory is deleted in order to free up storage space in the data memory,• execution of the update application (121) by the gateway (2) in order to program the control unit (3) via the second bus connection (B2),• deletion of the update application ( 121) in the gateway.
Description
Die Erfindung betrifft ein Verfahren zur Programmierung eines in einem Kraftfahrzeug angeordneten Steuergeräts.The invention relates to a method for programming a control unit arranged in a motor vehicle.
Moderne Kraftfahrzeuge verfügen in der Regel über eine Vielzahl von Steuergeräten.Modern motor vehicles generally have a large number of control units.
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.Changed requirements and/or improvements sometimes make it necessary to program a control device that is already installed in a motor vehicle. The provision of externally accessible data interfaces for reprogramming each individual control unit would be extremely uneconomical. The provision of so-called programming gateways and/or programming applications for diagnostic gateways ties up resources.
Es ist eine Aufgabe der Erfindung, ein einfaches und wirtschaftliches Verfahren zur Programmierung eines in einem Kraftfahrzeug angeordneten Steuergeräts zu schaffen.It is an object of the invention to create a simple and economical method for programming a control device arranged in a motor vehicle.
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.This object is achieved by a method according to
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.Accordingly, a gateway which is also arranged in the motor vehicle is first provided, which is connected to a data interface of the motor vehicle via a first bus connection and which is connected to the control device via a second bus connection. The gateway is therefore connected in a manner known per se between the data interface and the control device.
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.Outside of the vehicle, a programming device is provided that can be connected to the gateway via the data interface, which can be designed in particular as a (preferably standardized) diagnostic interface of the motor vehicle, and the first bus connection. The programming device is preferably a so-called diagnostic tester.
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.An update application is provided with the programming device. An update application is to be understood as a computer program by means of which a computing unit is able to reprogram a control device connected to it. The update application preferably contains control unit-specific software to be transferred to the control unit to be programmed, as well as programming sequences for implementing the transfer. The update application is preferably designed specifically for execution by the gateway, e.g. compiled accordingly.
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.The programming device is connected to the data interface and the update application is transmitted from the programming device via the data interface and the first bus connection to the gateway.
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.The update application is then executed by the gateway. The controller is programmed by the gateway via the second bus connection as a result of the execution. To a certain extent, the gateway acts as a programming unit for the control unit.
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.After running the update application or as the last step in running the update application, the update application is deleted from the gateway.
Vorzugsweise werden die Verfahrensschritte gemäß Anspruch 1 in der Reihenfolge ihrer Nennung im Anspruch ausgeführt.The method steps according to
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.The invention avoids a permanent binding of resources in the gateway. The method according to the invention can therefore also be used for gateways with little storage space. The gateway is only used temporarily and/or as a programming unit if required. This eliminates the need for the costly and time-consuming permanent provision of resources for possible programming. Permanent modifications to the gateway, for example to provide changed programming functionalities, are avoided by the invention, which reduces the protection effort. The invention can even be used to carry out a so-called technical action in the field at low cost, without the gateway having to be prepared for this in advance. Finally, thanks to the invention, the gateway can subsequently be made usable for programming purposes.
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.The invention has no influence on the implementation of the so-called boot loader of the control unit. A control unit can thus be programmed in different ways without modification. A control unit can thus be programmed, for example, using the same interfaces and the same protocol either “directly” (i.e. directly connected) using a diagnostic tester, programmed “indirectly” using a diagnostic tester connected via a diagnostic gateway or also, according to the invention, actively programmed by the gateway temporarily acting as a programming unit.
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.In view of the prior art, the invention surprises the person skilled in the art insofar as the programming effort and the number of necessary steps are increased compared to the prior art. Finally, with the invention, in addition to the actual programming of the control unit, at least programming (possibly even two programmings, see below) of the gateway is required. With regard to the resource restrictions in the gateway, however, the invention offers a cost-optimal possibility of using the gateway only temporarily for programming.
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.According to a preferred embodiment of the invention, before the update application is transmitted from the programming device to the gateway, at least one application previously stored in a data memory of the gateway is deleted from the data memory in order to free memory space in the data memory. The data memory in which the update application is stored at the gateway can thus be designed and dimensioned particularly sparingly. The application previously stored in the data memory of the gateway can be deleted or triggered, for example, by the programming device via the data interface and the first bus connection.
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.A backup of the application is usually not necessary. The programming device, e.g. a diagnostic tester designed as an industrial PC with access to a large data memory (e.g. on a hard drive, DVD or via the Internet), preferably has access to a database with preferably the most up-to-date applications for the respective motor vehicle, e.g. provided directly by a development department.
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.If, however, a backup is to be made, this can be done as follows: The application previously stored in the data memory of the gateway can be backed up before it is deleted and restored after the update application has been deleted. This can be done in a variety of ways. A stringent and safe process sequence results when the application is saved in the programming device. Less data traffic results when the application is relocated within the gateway for backup purposes, for example to another data memory of the gateway or, possibly in compressed form, to another storage location of the same data memory. Outsourcing to another gateway or another control unit of the motor vehicle for backup purposes can also be advantageous.
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.The deletion of the update application from the gateway can be carried out or triggered by the programming device via the data interface and the first bus connection, in particular after it has been executed. Alternatively, the deletion can be automatic, to a certain extent a self-deletion as the last step in the execution.
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.If the update application is deleted in the gateway without the intervention of the programming device and other interactions between the gateway and the programming device are avoided while the update application is running, the programming device can be disconnected from the data interface while the update application is running without the affecting the programming of the control unit. The programming device is therefore only required for a relatively short period of time.
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.If an application previously stored in the data memory of the gateway was saved or deleted in the programming device, the saved application - or a replacement application that may have been updated - is preferably (even after the programming device has been separated from the data interface during execution of the update application) to a can be played back into the gateway at a later point in time and after the programming device has been reconnected to the data interface.
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.Multiple control devices of the motor vehicle can preferably be programmed using a single update application and a single gateway. For this purpose, the gateway is preferably connected to at least one further control device via the second bus connection and/or a further bus connection, and the at least one further control device is preferably also programmed by executing the update application.
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.
- Method for programming a control unit arranged in a motor vehicle with the steps:
- • Provision of a gateway which is also arranged in the motor vehicle and which is connected to a data interface of the motor vehicle via a first bus connection and which is connected to the control device via a second bus connection,
- • Provision of a programming device that can be connected to the gateway via the data interface and the first bus connection,
- • Providing an update application and a diagnostic gateway application on the programming device,
- • connecting the programming device to the data interface,
- • Transmission of the diagnostic gateway application from the programming device via the data interface and the first bus connection to the gateway,
- • Execution of the diagnostic gateway application through the gateway,
- • Execution of the update application by the programming device in order to program the control unit via the data interface, the first bus connection, the gateway and the second bus connection, mediated by the diagnosis gateway application running on the gateway,
- • Delete the diagnostic gateway application in the 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.
-
1 the signal flow when programming a control unit using a method according to the prior art, -
2 an exemplary signal flow in the programming of a control unit according to the invention.
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.The starting point for the following statements is the task of reprogramming a
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).
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.
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].To control the programming, a diagnostic program (referred to below as an update application) on the
Die in
Die Pfeile B1 und B2 in
Die an der Programmierung beteiligten Software-Komponenten sind in
Damit das Gateway 2 die notwendige Vermittlungsrolle gemäß der oben beschriebenen und in
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.A known alternative to this state of the art is to completely dispense with the provision of an option for the software update of control units for reasons of cost. In the medium and long term, however, this harbors the risk that, in the event of a fault, high warranty costs will arise or that the control unit will need to be replaced.
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.The invention avoids the cost-relevant resource binding in the gateway in the form of storage space and CPU capacity in a much more elegant manner. The aim of the invention is the resource-optimized programming of control units in the vehicle for control units with a programmable memory.
Die in
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).In this solution, an update application 121 (related to the control unit 3) is introduced into the
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.In contrast to the prior art, the update application 121 (relating to the control unit 3) runs (i.e. is executed) not on the
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.The permanent storage of the
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.A sequence of several programming steps is therefore used in order to avoid permanent resource binding in the gateway. As a rule, these will be three programming steps, namely: programming the
Auch in
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.When importing the
Der oben bereits umrissene Verfahrensablauf umfasst die folgenden Schritte:
- (a) (Optional) Löschen der Applikationssoftware im Gateway, um freien Speicher auf dem Gateway zu erhalten.
- (b) Einspielen der Update-
Applikation 121 in das Gateway (vgl.Pfeile 112 und 124 in2 ). Die Update-Applikation 121 beinhaltet die aufdas Steuergerät 3 zu übertragende steuergerätespezifische Software sowie die „eigentliche“ Update-Applikation (d.h. die Programmierabläufe zur Umsetzung der Übertragung). - (c) Starten der Update-
Applikation 121im Gateway 2. - (d) Die Update-
Applikation 121programmiert das Steuergerät 3 sowie gegebenenfalls weitere assoziierte Steuergeräte (Pfeil 125 in2 ) - (e) Nach der Programmierung des Steuergerätes 3 (bzw. aller assoziierten Steuergeräte)
durch das Gateway 2 wird die Update-Applikation 121im Gateway 2durch den Tester 1 gelöscht. - (f) (Optional) Wiederherstellen der ursprünglichen Applikationssoftware
im Gateway 2, sofern bzw. soweit diese in Schritt (a) gelöscht worden ist.
- (a) (Optional) Delete the application software in the gateway to get free memory on the gateway.
- (b) Importing the
update application 121 into the gateway (seearrows 112 and 124 in2 ). Theupdate application 121 contains the control unit-specific software to be transferred to thecontrol unit 3 as well as the "actual" update application (ie the programming processes for implementing the transfer). - (c) Start the
update application 121 inGateway 2. - (d) The
update application 121 programs thecontrol unit 3 and possibly other associated control units (arrow 125 in2 ) - (e) After
gateway 2 has programmed controller 3 (or all associated controllers),update application 121 ingateway 2 is deleted bytester 1 . - (f) (Optional) Restoring the original application software in
Gateway 2 if or to the extent that it was deleted in step (a).
Ein wesentlicher Unterschied des Verfahrens gemäß
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102009047974.0A DE102009047974B4 (en) | 2009-10-01 | 2009-10-01 | Procedure for programming a control unit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102009047974.0A DE102009047974B4 (en) | 2009-10-01 | 2009-10-01 | Procedure for programming a control unit |
Publications (2)
Publication Number | Publication Date |
---|---|
DE102009047974A1 DE102009047974A1 (en) | 2011-04-07 |
DE102009047974B4 true DE102009047974B4 (en) | 2022-09-01 |
Family
ID=43705642
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102009047974.0A Active DE102009047974B4 (en) | 2009-10-01 | 2009-10-01 | Procedure for programming a control unit |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102009047974B4 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102012214793A1 (en) * | 2012-08-21 | 2014-02-27 | BSH Bosch und Siemens Hausgeräte GmbH | COMMUNICATION MODULE WITH A LOWER MODULE |
FR3140690A1 (en) | 2022-10-07 | 2024-04-12 | F.B.I. | CAN BUS box for professional vehicles |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4211650A1 (en) | 1992-04-07 | 1993-10-14 | Bosch Gmbh Robert | Method for variant coding in the case of a plurality of control units networked with one another and a control unit for carrying out the method |
DE4332499A1 (en) | 1993-09-24 | 1995-03-30 | Bosch Gmbh Robert | Procedure for completely reprogramming an erasable, non-volatile memory |
DE19821500A1 (en) | 1997-06-18 | 1999-01-28 | Siemens Ag | Controller of data transmission for e.g. airbag in motor vehicle |
EP0997347A2 (en) | 1998-10-29 | 2000-05-03 | Mannesmann VDO Aktiengesellschaft | Procedure and device for programming a vehicle control apparatus |
EP1003106A2 (en) | 1998-10-29 | 2000-05-24 | Mannesmann VDO Aktiengesellschaft | Apparatus for adapting operating data and/or operating programs |
DE10237715A1 (en) | 2002-08-17 | 2004-02-26 | Robert Bosch Gmbh | Remote equipment accessing vehicle control system through wireless connection, flexibly re-configures vehicle gateway unit |
DE102004005680A1 (en) | 2004-02-05 | 2005-08-25 | Bayerische Motoren Werke Ag | Device and method for controlling control units in a vehicle electrical system of a motor vehicle |
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 |
-
2009
- 2009-10-01 DE DE102009047974.0A patent/DE102009047974B4/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4211650A1 (en) | 1992-04-07 | 1993-10-14 | Bosch Gmbh Robert | Method for variant coding in the case of a plurality of control units networked with one another and a control unit for carrying out the method |
DE4332499A1 (en) | 1993-09-24 | 1995-03-30 | Bosch Gmbh Robert | Procedure for completely reprogramming an erasable, non-volatile memory |
DE19821500A1 (en) | 1997-06-18 | 1999-01-28 | Siemens Ag | Controller of data transmission for e.g. airbag in motor vehicle |
EP0997347A2 (en) | 1998-10-29 | 2000-05-03 | Mannesmann VDO Aktiengesellschaft | Procedure and device for programming a vehicle control apparatus |
EP1003106A2 (en) | 1998-10-29 | 2000-05-24 | Mannesmann VDO Aktiengesellschaft | Apparatus for adapting operating data and/or operating programs |
DE10237715A1 (en) | 2002-08-17 | 2004-02-26 | Robert Bosch Gmbh | Remote equipment accessing vehicle control system through wireless connection, flexibly re-configures vehicle gateway unit |
DE102004005680A1 (en) | 2004-02-05 | 2005-08-25 | Bayerische Motoren Werke Ag | Device and method for controlling control units in a vehicle electrical system of a motor vehicle |
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 (en) | 2011-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1967435B1 (en) | Method for adaptive configuration recognition | |
DE102019109672A1 (en) | CANCELLATION AFTER PARTIAL FAILURE IN MULTIPLE ELECTRONIC CONTROL UNITS BY OVER THE AIR UPDATE | |
WO2013171122A2 (en) | Functionally expandable vehicle control device and method for supplementing the functionality of a vehicle control device | |
DE102015216265A1 (en) | Method and subsystem for installing a software update in a vehicle | |
DE102017212109A1 (en) | Method for operating a rail vehicle | |
DE112013003521B4 (en) | Method and device for exchanging data in a motor vehicle for operating an actuator of an automated friction clutch and / or an automated transmission | |
DE102009047974B4 (en) | Procedure for programming a control unit | |
DE112013003240B4 (en) | Method for controlling a motor vehicle transmission | |
DE102016201769A1 (en) | Method for updating software of a control unit, preferably for a motor vehicle | |
EP1665031A2 (en) | Method for the installation of a program component | |
DE102016106572A1 (en) | METHOD FOR OPERATING A CONTROL DEVICE FOR A VEHICLE, CONTROL UNIT, OPERATING SYSTEM, MOTOR VEHICLE | |
DE102013214795A1 (en) | Tachograph arrangement and method for operating a tachograph arrangement | |
EP3647794B1 (en) | Method for controlling communication between a recording unit and a speed sensor of a tachograph system of a motor vehicle and corresponding tachograph system and recording unit for said tachograph system | |
DE102017112817A1 (en) | Commissioning control unit of a composite of control units of a motor vehicle and method for commissioning of control units | |
EP3797352B1 (en) | Method for exchanging a first executable program code and a second executable program code, and control unit | |
EP3285162A1 (en) | Method for projecting a project and arrangement for carrying out said method | |
DE102006004599A1 (en) | Terminal and method for updating program code of a terminal | |
DE102019214922A1 (en) | Configuration procedure for a railway signal system and update system | |
EP3988384B1 (en) | Computer-implemented method and device for local load management of charging stations for charging electric vehicles in a charging station system | |
DE102015214389A1 (en) | Method and device for updating a virtual machine operated on a physical machine under a hypervisor | |
WO2017182210A1 (en) | Method for programming control devices of a motor vehicle | |
EP1967920A1 (en) | Softwareupdate method for FPGA-based automation systems | |
EP3865962A1 (en) | Diagnostic method and diagnostic device for an installation | |
WO2021244868A1 (en) | System for transmitting at least one update packet, and method | |
DE102012218665A1 (en) | Application system for control device of vehicle, has adapter for converting network protocols into wireless protocols, where network protocols serves for communication with control device |
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 |