DE102014107072A1 - Method for parallel programming of a plurality of vehicle control devices - Google Patents
Method for parallel programming of a plurality of vehicle control devices Download PDFInfo
- Publication number
- DE102014107072A1 DE102014107072A1 DE102014107072.0A DE102014107072A DE102014107072A1 DE 102014107072 A1 DE102014107072 A1 DE 102014107072A1 DE 102014107072 A DE102014107072 A DE 102014107072A DE 102014107072 A1 DE102014107072 A1 DE 102014107072A1
- Authority
- DE
- Germany
- Prior art keywords
- programming
- vehicle control
- flowchart
- sequences
- control devices
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
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)
Abstract
Die vorliegende Erfindung schlägt ein Verfahren zur parallelen Programmierung einer Mehrzahl von Fahrzeugsteuergeräten vor, welches die folgenden Schritte aufweist: Erfassen der mittels einer zugehörigen Programmiersequenz jeweils zu programmierenden Fahrzeugsteuergeräte; Bestimmen der zur Programmierung eines jeden Fahrzeugsteuergerätes mittels der zugehörigen Programmiersequenz jeweils zu erwartenden Schnittstellenauslastung; Bestimmen der zur Programmierung eines jeden Fahrzeugsteuergerätes mittels der zugehörigen Programmiersequenz jeweils zu erwartenden Programmierdauer; Durchführen eines iterativen Prüfalgorithmus zum Bestimmen eines optimierten Ablaufschemas zum Ausführen der einzelnen Programmiersequenzen in Abhängigkeit der zu programmierenden Fahrzeugsteuergeräte, in Abhängigkeit der jeweils zu erwartenden Schnittstellenauslastungen und in Abhängigkeit der jeweils zu erwartenden Programmierdauer; und Programmieren der Fahrzeugsteuergeräte gemäß dem optimierten Ablaufschema.The present invention proposes a method for the parallel programming of a plurality of vehicle control devices, comprising the following steps: detecting the vehicle control devices to be respectively programmed by means of an associated programming sequence; Determining the respectively to be expected for programming each vehicle control unit by means of the associated programming sequence interface utilization; Determining the respective programming duration to be programmed for programming each vehicle control unit by means of the associated programming sequence; Performing an iterative test algorithm for determining an optimized flowchart for executing the individual programming sequences as a function of the vehicle control devices to be programmed, as a function of the respectively expected interface loadings and depending on the respectively expected programming duration; and programming the vehicle control devices in accordance with the optimized flowchart.
Description
Die vorliegende Erfindung geht aus von einem Verfahren und einem System zur Programmierung einer Mehrzahl von Fahrzeugsteuergeräten. The present invention is based on a method and a system for programming a plurality of vehicle control devices.
Es ist hinlänglich bekannt, dass in Fahrzeugen zunehmend elektronische Module zur Steuerung oder Regelung eingesetzt werden. Solche Module weisen typischerweise eine individuelle Steuersoftware auf, welche die eigentliche Steuerung oder Regelung vornimmt. Bei der Erstinstallation eines jeden Steuergeräts muss daher zunächst die entsprechende Steuersoftware auf das jeweilige Steuergerät gespielt werden. Das Aufspielen der Steuersoftware kann je nach Schnittstelle und Anzahl der zu programmierenden Steuergeräte vergleichsweise zeitintensiv und somit kostenträchtig sein. Es ist daher ein Bestreben, die Zeiten für das Programmieren der Steuergeräte zu reduzieren. It is well known that electronic control modules are increasingly being used in vehicles. Such modules typically have an individual control software, which performs the actual control or regulation. For the first installation of each control unit, therefore, the corresponding control software must first be played on the respective control unit. Depending on the interface and the number of control units to be programmed, the uploading of the control software can be comparatively time-intensive and thus cost-intensive. It is therefore an effort to reduce the times for programming the controllers.
Eine bekannte Lösung zur Beschleunigung der Steuergeräteprogrammierung besteht darin, mehrere Steuergeräte mit entsprechenden Programmiersequenzen parallel zu programmieren. Gegenüber einer seriellen Programmierung kann hierdurch eine für das Programmieren aller Steuergeräte benötigte Gesamtdauer erheblich reduziert werden. Allerdings wird dabei die Gesamtdauer maßgeblich mitbestimmt durch die Programmierdauer derjenigen Programmiersequenz, die unter den parallel geschalteten Programmiersequenzen die meiste Zeit für das Programmieren beansprucht. Erst mit Abschluss dieser Programmiersequenz wird dann in der Regel eine neue Übermittelung von parallel geschalteten Programmiersequenzen an die Schnittstelle gestartet. Typischerweise kann sich die Programmierdauer der einzelnen Programmiersequenzen erheblich voneinander unterscheiden. Das kann in nachteiliger Weise dazu führen, dass ein Teil der maximal möglichen Schnittstellenauslastung vakant bleibt, während die am meisten Zeit beanspruchende Programmiersequenz ihre Programmierung abschließt. One known solution for speeding up ECU programming is to program several ECUs in parallel with corresponding programming sequences. Compared to serial programming, this can significantly reduce the total time needed to program all ECUs. However, the total duration is decisively influenced by the programming duration of that programming sequence which takes up most of the time for programming among the parallel-connected programming sequences. Only with the completion of this programming sequence is a new transfer of parallel programming sequences to the interface started as a rule. Typically, the programming time of the individual programming sequences can differ considerably from one another. This can disadvantageously result in some of the maximum possible interface utilization remaining vacant, while the most time-consuming programming sequence completes its programming.
Es ist Aufgabe der vorliegenden Erfindung die bisherigen Verfahren zur parallelen Programmierung einer Mehrzahl von Fahrzeugsteuergeräten hinsichtlich ihrer Effizienz zu verbessern. Insbesondere soll die für das Programmieren der Mehrzahl von Fahrzeugsteuergeräten benötigte Gesamtdauer reduziert werden. It is an object of the present invention to improve the previous method for parallel programming of a plurality of vehicle control devices in terms of their efficiency. In particular, the total duration required for programming the plurality of vehicle control units is to be reduced.
Die Aufgabe der vorliegenden Erfindung wird gelöst durch ein Verfahren zur parallelen Programmierung einer Mehrzahl von Fahrzeugsteuergeräten mit den Schritten:
- – Erfassen der mittels einer zugehörigen Programmiersequenz jeweils zu programmierenden Fahrzeugsteuergeräte;
- – Bestimmen der zur Programmierung eines jeden Fahrzeugsteuergerätes mittels der zugehörigen Programmiersequenz jeweils zu erwartenden Schnittstellenauslastung;
- – Bestimmen der zur Programmierung eines jeden Fahrzeugsteuergerätes mittels der zugehörigen Programmiersequenz jeweils zu erwartenden Programmierdauer;
- – Durchführen eines iterativen Prüfalgorithmus zum Bestimmen eines optimierten Ablaufschemas zum Ausführen der einzelnen Programmiersequenzen in Abhängigkeit der zu programmierenden Fahrzeugsteuergeräte, in Abhängigkeit der jeweils zu erwartenden Schnittstellenauslastungen und in Abhängigkeit der jeweils zu erwartenden Programmierdauern; und
- – Programmieren der Fahrzeugsteuergeräte gemäß dem optimierten Ablaufschema.
- Detecting the vehicle control devices to be respectively programmed by means of an associated programming sequence;
- Determining the respective interface utilization to be used for programming each vehicle control unit by means of the associated programming sequence;
- Determining the programming duration to be expected for programming each vehicle control device by means of the associated programming sequence;
- - Performing an iterative test algorithm for determining an optimized flowchart for executing the individual programming sequences depending on the vehicle control units to be programmed, depending on the respective expected interface loadings and depending on the respective expected programming times; and
- - Programming the vehicle control units according to the optimized flowchart.
Gegenüber dem Stand der Technik hat das erfindungsgemäße Verfahren den Vorteil des Prüfalgorithmus, der in Abhängigkeit der zu programmierenden Fahrzeugsteuergeräte, der von der Programmiersequenz in Anspruch genommenen Schnittstellenauslastung und der Programmierdauer der einzelnen Programmiersequenzen festlegt, welche Programmiersequenz zu welchem Zeitpunkt zur parallelen Programmierung herangezogen wird. Insbesondere wird durch den Prüfalgorithmus die individuelle Charakteristik der unterschiedlichen Prüfungssequenzen, insbesondere hinsichtlich ihrer unterschiedlichen Schnittstellenauslastung und Programmierdauer, berücksichtigt. Entsprechend wird die durch das Ablaufschema festgelegte zeitliche Abfolge der zu programmierenden Programmiersequenzen derart angepasst sein, dass Zeitspannen, in denen trotz der parallelen Programmierung nur eine einzelne Programmiersequenz programmiert wird, möglichst minimal gehalten werden. Dadurch wird beim Programmieren eine durchschnittliche Schnittstellenauslastung pro Zeiteinheit erhöht, was in vorteilhafter Weise zu einer Verkürzung der Gesamtdauer bei der Programmierung führt. Compared to the prior art, the method according to the invention has the advantage of the test algorithm, which defines the programming sequence used by the programming sequence depending on the program to be programmed and the programming duration of the individual programming sequences, which programming sequence is used at which time for parallel programming. In particular, the test algorithm takes into account the individual characteristics of the different test sequences, in particular with regard to their different interface utilization and programming duration. Accordingly, the time sequence of the programming sequences to be programmed as determined by the flowchart will be adjusted such that periods of time in which only a single programming sequence is programmed despite the parallel programming are kept as minimal as possible. As a result, an average interface load per unit time is increased during programming, which advantageously leads to a shortening of the total programming time.
Vorzugsweise ist es vorgesehen, dass das Verfahren bei einer Erstinstallation von Fahrzeugsteuergeräten durchgeführt wird. Beispielsweise ist eines der Fahrzeugsteuergeräte für ein Infotainmentsystem, einen Parkassistenten oder eine Klimaanlage vorgesehen. Durch die ordnungsgemäße Programmierung mit der zugehörigen Programmiersequenz wird die Funktionalität der Fahrzeugsteuergeräte für deren späteren Betrieb bestimmt und sichergestellt. Insbesondere ist es durch das Erfassen der Fahrzeugsteuergeräte möglich, bei der Programmierung zu berücksichtigen, dass sich die Anzahl und Art der einzelnen Bauteile für die jeweiligen Fahrzeuge, beispielsweise durch unterschiedliche Sonderausstattungen und/oder durch ihren Modelltyp, unterscheiden kann. Weiterhin ist es denkbar, dass zum Bestimmen der Programmierdauer und der Schnittstellenauslastung für das jeweilige Fahrzeugsteuergerät eine Datenbank bemüht wird, in der die entsprechenden Informationen über die Schnittstellenauslastung und die Programmierdauer für die einzelnen Fahrzeugsteuergeräte gespeichert werden und abrufbereit für das Verfahren zur Verfügung stehen. Preferably, it is provided that the method is carried out in an initial installation of vehicle control units. For example, one of the vehicle control units for an infotainment system, a parking assistant or an air conditioning system is provided. By proper programming with the associated programming sequence, the functionality of the vehicle control units is determined and ensured for their subsequent operation. In particular, by detecting the vehicle control devices, it is possible to take into account in the programming that the number and type of the individual components for the respective Vehicles, for example, by different optional equipment and / or by their model type, can distinguish. Furthermore, it is conceivable that for determining the programming duration and the interface load for the respective vehicle control unit, a database is sought, in which the corresponding information about the interface utilization and the programming time for the individual vehicle control units are stored and ready for retrieval available for the process.
Vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung sind den Unteransprüchen sowie der Beschreibung unter Bezugnahme auf die Zeichnungen entnehmbar. Advantageous embodiments and modifications of the invention are the dependent claims and the description with reference to the drawings.
Gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung ist vorgesehen, dass durch den Prüfalgorithmus das Ablaufschema derart festgelegt wird, dass beim Programmieren der Fahrzeugsteuergeräte mindestens zwei Programmiersequenzen zeitversetzt zueinander gestartet werden. Insbesondere ist es vorgesehen, dass durch den Prüfalgorithmus das Ablaufschema derart festgelegt wird, dass neben den mindestens zwei zeitlich zueinander versetzten Programmiersequenzen mindestens zwei Programmiersequenzen zeitgleich, vorzugsweise zu einem gemeinsamen Startpunkt t0, gestartet werden. Dadurch werden Programmiersequenzen in vorteilhafter Weise sequentiell bzw. nacheinander geschaltet, auch wenn die Programmierung einer vorher gestarteten parallelen Programmiersequenz noch nicht abgeschlossen ist. D.h. der sonst vakante Teil der maximalen Schnittstellenauslastung wird in vorteilhafter Weise zum Starten von weiteren Programmiersequenzen genutzt, während beispielsweise parallel noch eine lang dauernde Programmiersequenz programmiert wird. Es ist dabei bevorzugt vorgesehen, dass die nacheinander geschalteten Programmiersequenzen denselben oder zumindest einen Teil desselben Schnittstellenbereichs nutzen. Dadurch lassen sich in vorteilhafter Weise mehr Programmiersequenzen im Vergleich zu einer Programmierung, bei der die parallel laufenden Programmiersequenzen immer nur gleichzeitig gestartet werden, innerhalb eines Ablaufschemas integrieren. According to a preferred embodiment of the present invention, it is provided that the flowchart is determined by the test algorithm in such a way that at least two programming sequences are started with a time offset from one another when the vehicle control devices are programmed. In particular, it is provided that the flowchart is determined by the check algorithm such that in addition to the at least two mutually offset programming sequences at least two programming sequences at the same time, preferably to a common starting point t 0 , are started. As a result, programming sequences are advantageously switched sequentially or successively, even if the programming of a previously started parallel programming sequence has not yet been completed. This means that the otherwise vacant part of the maximum interface utilization is advantageously used for starting further programming sequences, while, for example, a long programming sequence is programmed in parallel. It is preferably provided that the sequentially switched programming sequences use the same or at least a part of the same interface area. As a result, advantageously more programming sequences can be integrated within a flowchart compared to programming in which the programming sequences running in parallel are only ever started simultaneously.
Gemäß einer weiteren bevorzugten Ausführungsform der vorliegenden Erfindung ist vorgesehen, dass der Prüfalgorithmus die folgenden Teilschritte umfasst:
- – Einfügen einer Programmiersequenz in ein Ablaufschema zu einem Startpunkt tl,
- – wobei in einem ersten Teilschritt eine Liste aus allen noch potenziell einsetzbaren Programmiersequenzen zum Zeitpunkt tl erstellt wird und
- – wobei in einem zweiten Teilschritt die Programmiersequenz aus der Liste mit der längsten Programmierdauer in das Ablaufschema eingefügt wird,
- – Wiederholen des ersten und des zweiten Teilschritts in einem dritten Teilschritt, bis die Liste leer ist,
- – Bestimmen eines weiteren Startpunkts tl+1 im Ablaufschema als Zeitpunkt, zu dem eines der bereits integrierten Programmiersequenzen als nächstes beendet wird, in einem vierten Teilschritt und
- – Wiederholung des ersten, zweiten und dritten Teilschritts für den weiteren Startpunkt tl+1 in einem fünften Verfahrensschritt.
- Inserting a programming sequence into a flowchart to a starting point t l ,
- - In a first sub-step, a list of all still potentially usable programming sequences at time t l is created and
- Wherein in a second sub-step the programming sequence from the list with the longest programming duration is inserted into the flowchart,
- Repeating the first and second substeps in a third substep until the list is empty,
- Determining a further starting point t l + 1 in the flowchart as the point in time at which one of the already integrated programming sequences is terminated next, in a fourth sub-step and
- - Repetition of the first, second and third substep for the further starting point t l + 1 in a fifth method step.
Es ist dem Fachmann klar, dass das Erstellen der Liste im ersten Teilschritt einem Bilden eines Ensembles an potenziell einsetzbaren Programmiersequenzen entspricht und sich nicht auf ein explizites Realisieren einer Liste beschränkt. Das Erstellen der Liste versteht sich vielmehr als formelle Eingrenzung auf die Programmiersequenzen, die noch zum jeweiligen Zeitpunkt integrierbar sind. Durch den Prüfalgorithmus wird in vorteilhafter Weise ein Ablaufschema realisiert, mit dem eine effiziente Programmierung der Mehrheit der Fahrzeugsteuergeräte möglich ist, indem dafür gesorgt wird, dass beim parallelen Programmieren möglichst viele Programmiersequenzen durchgeführt werden, solange eine bereits begonnene und entsprechend lange Programmiersequenz noch nicht abgeschlossen ist. It is clear to the person skilled in the art that creating the list in the first sub-step corresponds to forming an ensemble of potentially usable programming sequences and is not limited to an explicit realization of a list. Rather, the creation of the list is a formal limitation to the programming sequences that can still be integrated at any given time. The test algorithm advantageously implements a flowchart with which an efficient programming of the majority of the vehicle control devices is possible by ensuring that as many programming sequences as possible are executed during parallel programming as long as an already started and correspondingly long programming sequence has not yet been completed ,
Gemäß einer weiteren bevorzugten Ausführungsform der vorliegenden Erfindung ist vorgesehen, dass im ersten Teilschritt die Liste gebildet wird durch eine oder mehrere Programmiersequenzen, für deren Einsetzen in das bis dahin zusammengesetzte Ablaufschema ein Einsetzen
- – ohne Überschreiten der maximalen Schnittstellenauslastung,
- – ohne Überschreiten einer erlaubten Maximalanzahl an parallel laufenden Programmiersequenzen und/oder
- – ohne Konflikt zu einer noch zu integrierenden, d. h. einer noch nicht integrierten, Programmiersequenz
- - without exceeding the maximum interface load,
- - Without exceeding an allowed maximum number of parallel programming sequences and / or
- - Without conflict with a still to be integrated, ie a not yet integrated, programming sequence
Gemäß einer weiteren bevorzugten Ausführungsform der vorliegenden Erfindung ist vorgesehen, dass der Prüfalgorithmus beendet wird, wenn
- – die letzte der zu integrierenden Programmiersequenzen eingesetzt wird und/oder
- – als weiterer Startzeitpunkt tl+1 der Zeitpunkt bestimmt wird, zu dem die erste in das Ablaufschema integrierte Programmiersequenz nach einer Programmierdauer td beendet wird.
- - The last of the programming sequences to be integrated is used and / or
- - is determined as a further start time t l + 1, the time at which the first integrated in the flowchart programming sequence is terminated after a programming time t d .
Insbesondere lässt sich in vorteilhafter Weise festlegen, ob die parallele Programmierung mit den Programmiersequenzen ohne oder mit Unterbrechung durchgeführt werden soll. Es ist dabei vorstellbar, dass es unter manchen Umständen von Vorteil ist, die Programmierung der Mehrzahl an Fahrzeugsteuergeräten zu unterbrechen, um beispielsweise einen anderen Fertigungsschritt für das Fahrzeug zwischenzuschalten. In particular, it can be advantageously determined whether the parallel programming with the programming sequences should be performed without or with interruption. It is conceivable that in some circumstances it is advantageous to interrupt the programming of the plurality of vehicle control devices, for example, to interpose another manufacturing step for the vehicle.
Wird das Beenden des Prüfalgorithmus durch die Programmierdauer der als erstes eingesetzten Programmiersequenz bestimmt, lassen sich die zu integrierenden Programmiersequenzen auf mehrere Ablaufschemas verteilen, zwischen denen beim Programmieren eine problemlose Unterbrechung realisierbar ist. Dadurch lässt sich die Programmierung in vorteilhafter Weise möglichst flexibel in einen Fertigungsprozess eines Fahrzeugs integrieren. If the termination of the test algorithm is determined by the programming duration of the programming sequence used first, the programming sequences to be integrated can be distributed over several flowcharts between which a problem-free interruption can be achieved during programming. As a result, programming can advantageously be integrated as flexibly as possible into a production process of a vehicle.
Gemäß einer weiteren bevorzugten Ausführungsform der vorliegenden Erfindung ist vorgesehen, dass die noch zu integrierenden Programmiersequenzen in ein weiteres Ablaufschema eingesetzt werden. Vorzugsweise werden die bereits im Ablaufschema integrierten Programmiersequenzen bei der Realisierung des weiteren Ablaufschemas berücksichtigt bzw. nicht erneut in das Ablaufschema eingesetzt. According to a further preferred embodiment of the present invention, it is provided that the programming sequences still to be integrated are used in a further flowchart. Preferably, the programming sequences already integrated in the flowchart are taken into account in the implementation of the further flowchart or are not reused in the flowchart.
Gemäß einer weiteren bevorzugten Ausführungsform der vorliegenden Erfindung ist vorgesehen, dass die noch zu integrierenden Programmiersequenzen nach aufsteigender Programmierdauer sortiert werden. Dabei ist es vorstellbar, dass die Sortierung unmittelbar nach dem Bestimmen der Programmierdauer erstellt wird. Dadurch wird eine spätere Listenbildung für den ersten Teilschritt in vorteilhafter Weise vereinfacht. According to a further preferred embodiment of the present invention, it is provided that the programming sequences still to be integrated are sorted according to increasing programming duration. It is conceivable that the sorting is created immediately after determining the programming time. As a result, a later list formation for the first sub-step is advantageously simplified.
Gemäß einer weiteren bevorzugten Ausführungsform der vorliegenden Erfindung ist vorgesehen, dass eine Vorauswahl an noch zu integrierenden Programmiersequenzen getroffen wird. Beispielsweise gibt es zu einem Fahrzeugsteuergerät mehrere mögliche Programmiersequenzen und durch die Vorauswahl wird diejenige ausgewählt, die aufgespielt werden soll. Dadurch lässt sich die Programmierung der Fahrzeugsteuergeräte in vorteilhafter Weise weiter individualisieren. According to a further preferred embodiment of the present invention, it is provided that a preselection of programming sequences still to be integrated is made. For example, there are several possible programming sequences for a vehicle control unit, and the pre-selection selects the one that is to be loaded. As a result, the programming of the vehicle control devices can be further customized in an advantageous manner.
Gemäß einer weiteren bevorzugten Ausführungsform der vorliegenden Erfindung ist vorgesehen, dass zur Kommunikation mit einer Schnittstelle eine Ethernet- oder CAN-Verbindung verwendet wird. Dadurch lassen sich möglichst hohe Übertragungsraten der Programmiersequenzen realisieren, um die für die Programmierung der Mehrzahl an Fahrzeugsteuergeräten benötigte Gesamtdauer weiter zu verkürzen. According to a further preferred embodiment of the present invention, it is provided that an Ethernet or CAN connection is used for communication with an interface. As a result, the highest possible transmission rates of the programming sequences can be realized in order to further reduce the total duration required for programming the plurality of vehicle control units.
Gemäß einer weiteren bevorzugten Ausführungsform der vorliegenden Erfindung ist vorgesehen, dass das Ablaufschema für eine die Programmierung steuernde Programmiervorrichtung in eine maschinenlesbare Form konvertiert wird. Dadurch lässt sich das erstellte Ablaufschema in vorteilhafter Weise zur Steuerung der Programmiervorrichtung nutzen. According to a further preferred embodiment of the present invention, it is provided that the flowchart for a programming device controlling programming device is converted into a machine-readable form. As a result, the generated flowchart can advantageously be used to control the programming device.
Ein weiterer Gegenstand der vorliegenden Erfindung ist ein System zur Programmierung einer Mehrzahl von Fahrzeugsteuergeräten, wobei das System neben der Mehrzahl von Fahrzeugsteuergeräten eine Schnittstelle zur Kommunikation mit der Mehrzahl von Fahrzeugsteuergeräten und eine Programmiervorrichtung zur Programmierung der Mehrzahl von Fahrzeugsteuergeräten umfasst, wobei die Schnittstelle, die Programmiervorrichtung und die Mehrzahl von Fahrzeugsteuergeräten derart konfiguriert sind, dass die Fahrzeugsteuergeräte über die Schnittstelle nach dem erfindungsgemäßen Verfahren programmierbar sind. A further subject matter of the present invention is a system for programming a plurality of vehicle control devices, wherein the system comprises, in addition to the plurality of vehicle control devices, an interface for communication with the plurality of vehicle control devices and a programming device for programming the plurality of vehicle control devices, wherein the interface, the programming device and the plurality of vehicle control devices are configured such that the vehicle control devices are programmable via the interface according to the inventive method.
Weitere Einzelheiten, Merkmale und Vorteile der Erfindung ergeben sich aus den Zeichnungen sowie aus der nachfolgenden Beschreibung von bevorzugten Ausführungsformen anhand der Zeichnungen. Die Zeichnungen illustrieren dabei lediglich beispielhafte Ausführungsformen der Erfindung, welche den Erfindungsgedanken nicht einschränken. Further details, features and advantages of the invention will become apparent from the drawings and from the following description of preferred embodiments with reference to the drawings. The drawings illustrate only exemplary embodiments of the invention, which do not limit the inventive concept.
In den verschiedenen Figuren sind gleiche Teile stets mit den gleichen Bezugszeichen versehen und werden daher in der Regel auch jeweils nur einmal benannt bzw. erwähnt. In the various figures, the same parts are always provided with the same reference numerals and are therefore usually named or mentioned only once in each case.
In
- – welche
Programmiersequenzen 2 parallel andie Schnittstelle 1 übermittelt werden, - – welche
Programmiersequenzen 2 aufeinanderfolgend andie Schnittstelle 1 übermittelt werden und/oder - – bevorzugt welche Programmiersequenzen
2 zu welcher Zeit6 gestartet werden. Die Ordnung der individuellen Programmiersequenzen2 im Ablaufschema 8 wird dann zeitbestimmender Faktor für eine Gesamtdauer, die für das Programmieren der Mehrzahl der Fahrzeugsteuergeräte2 benötigt wird. ZurOptimierung des Ablaufschemas 8 ist es insbesondere vorgesehen, dass mehrere Programmiersequenzen2 im Ablaufschema 8 zeitversetzt zueinander angeordnet sind. Insbesondere werden dieProgrammiersequenzen 2 derart indas Ablaufschema 8 integriert, dass beim parallelen Programmierenmindestens zwei Programmiersequenzen 2 aufeinanderfolgend gestartet werden, während parallel dazu eine andere Programmiersequenz übermittelt wird.
- - which
programming sequences 2 parallel to theinterface 1 be transmitted - - which
programming sequences 2 consecutively to theinterface 1 be transmitted and / or - - prefers which
programming sequences 2 at whattime 6 to be started. The order of theindividual programming sequences 2 in the flowchart8th then becomes the time-determining factor for a total time required for programming the majority of thevehicle control devices 2 is needed. To optimize the flowchart8th In particular, it is provided thatseveral programming sequences 2 in the flowchart8th are arranged offset in time to each other. In particular, the programming sequences become2 so in the flowchart8th integrated, that during parallel programming at least twoprogramming sequences 2 be started sequentially while another programming sequence is transmitted in parallel.
Insbesondere ist es vorgesehen, dass für ein Bestimmen eines effektiven Ablaufschemas
In
- –
Einfügen einer Programmiersequenz 2 inein Ablaufschema 8 zu einem Startpunkt tl, wobei in einem ersten Teilschritt eine Liste aus allen noch potenziell einsetzbaren Programmiersequenzen2 zum Zeitpunkt tl erstellt wird und wobei in einem zweitenTeilschritt die Programmiersequenz 2 aus der Liste mit der längsten Programmierdauer indas Ablaufschema 8 eingefügt wird, - – Wiederholen des ersten und des zweiten Teilschritts in einem dritten Teilschritt, bis die Liste leer ist,
- – Bestimmen eines weiteren Startpunkts tl+1 im Ablaufschema als der Zeitpunkt, zu dem eines der integrierten Programmiersequenzen
2 als nächstes endet in einem vierten Teilschritt und - – Wiederholung des ersten, zweiten und dritten Teilschritts für den weiteren Startpunkt tl+1 in einem fünften Verfahrensschritt. Insbesondere ist es vorgesehen, dass, nachdem alle zu programmierenden Fahrzeugsteuergeräte
3 erfasst wurden, die individuell bestimmten Programmiersequenzen2 hinsichtlich ihrer Programmierdauer sortiert werden.Die Programmiersequenz 2 mit der längsten Programmierdauer wird dann als erste Programmiersequenz31 indas Ablaufschema 8 zum Startpunkt t0 integriert. Dabei belegt die erste Programmiersequenz31 mit ihrer Schnittstellenauslastung einen Teil der maximalen (zur Verfügung stehenden)Schnittstellenauslastung 7 . Um den noch vakanten Teil der maximalen Schnittstellenauslastung mit weiterenProgrammiersequenzen 32 ,32‘ zu bestücken, ist es vorgesehen zu prüfen, ob und welche der noch zu integrierenden Programmiersequenzen zum selben Startpunkt t0 indas Ablaufschema 8 integrierbar sind. Beispielsweise kommen solche Programmiersequenzen nicht in Frage, deren erforderte Schnittstellenauslastung größer ist als der noch vakante Teil der maximalen Schnittstellenauslastung. Es ist auch denkbar, dass andere Programmiersequenzen zurückgestellt werden sollen, wenn sie zum Beispiel die Existenz eines vorher mit einerProgrammiersequenz 2 programmierten Fahrzeuggeräts benötigen. Insbesondere werden die inFrage kommenden Programmiersequenzen 2 in einer Liste zusammengefasst. Es ist dem Fachmann klar, dass das Erstellen der Liste einem Bilden eines Ensembles an potenziell einsetzbaren Programmiersequenzen2 entspricht und sich nicht auf ein explizites Realisieren der Liste beschränkt. Das Erstellen der Liste versteht sich vielmehr als Eingrenzung auf die Programmiersequenzen, die noch zum jeweiligen Zeitpunkt integrierbar sind. Beispielsweise ist es auch denkbar, dass der erste und der zweite Teilschritt zusammengefasst werden durch einen Suchalgorithmus, der unter allen noch zu integrierenden Programmiersequenzen2 diejenige sucht, deren Programmierdauer am längsten ist und gleichzeitig noch kompatibel zum vakanten Teil der maximalen Schnittstellenauslastung ist. Die entsprechend dem ersten und zweiten Teilschritt ermittelte weitere Programmiersequenz32 ,32‘ wird eingefügt. Anschließend wird die Auswahl unter Verwendung des ersten und zweiten Teilschritts zusammen mit dem Einfügen wiederholt, bis die Liste leer ist. Damit sind dieProgrammiersequenzen 2 festgelegt, deren Übermittelung an die Schnittstelle bei t0 beginnen soll. Dabei ist es vorstellbar, dass die maximale Schnittstellenauslastung7 nicht vollständig belegt ist und stattdessen eine Schnittstellenvakanz15 übrig bleibt.
- - Insert a
programming sequence 2 into a flowchart8th to a starting point t l , wherein in a first sub-step a list of all still potentiallyusable programming sequences 2 is created at the time t l and wherein in a second sub-step theprogramming sequence 2 from the list with the longest programming time in the flowchart8th is inserted - Repeating the first and second substeps in a third substep until the list is empty,
- Determining a further starting point t l + 1 in the flowchart as the time at which one of the
integrated programming sequences 2 next ends in a fourth sub-step and - - Repetition of the first, second and third substep for the further starting point t l + 1 in a fifth method step. In particular, it is provided that, after all to be programmed
vehicle control units 3 were recorded, the individually determinedprogramming sequences 2 be sorted in terms of their programming time. Theprogramming sequence 2 with the longest programming time is then as thefirst programming sequence 31 into the flowchart8th integrated to the starting point t 0 . The first programming sequence occupies this31 with their interface utilization a part of the maximum (available)interface utilization 7 , To the still vacant part of the maximum interface utilization withfurther programming sequences 32 .32 ' It is intended to check whether and which of the programming sequences still to be integrated at the same starting point t 0 in the flowchart8th can be integrated. For example, such programming sequences are out of the question whose required interface utilization is greater than the still vacant part of the maximum interface utilization. It is also conceivable that other programming sequences should be reset if, for example, they have the existence of a previous one with aprogramming sequence 2 require programmed vehicle unit. In particular, thecandidate programming sequences 2 summarized in a list. It will be apparent to those skilled in the art that creating the list involves forming an ensemble of potentiallyusable programming sequences 2 corresponds and is not limited to an explicit realization of the list. Rather, the creation of the list is intended as a limitation to the programming sequences which can still be integrated at the respective time. For example, it is also conceivable for the first and the second sub-step to be combined by a search algorithm which is among all programming sequences still to be integrated2 searches for the one whose programming duration is the longest and at the same time still compatible with the vacant part of the maximum interface load. The further programming sequence determined in accordance with the first andsecond sub-steps 32 .32 ' is inserted. Then, the selection is repeated using the first and second substeps along with the insertion until the list is empty. This is theprogramming sequences 2 whose transmission to the interface is to start at t 0 . It is conceivable that themaximum interface load 7 is not fully occupied and instead aninterface vacancy 15 remains.
Weiterhin ist es hierbei vorgesehen, dass das Auffüllen des Ablaufschemas
Insbesondere ist beispielhaft auf der linken Seite der
Claims (11)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102014107072.0A DE102014107072A1 (en) | 2014-05-20 | 2014-05-20 | Method for parallel programming of a plurality of vehicle control devices |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102014107072.0A DE102014107072A1 (en) | 2014-05-20 | 2014-05-20 | Method for parallel programming of a plurality of vehicle control devices |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102014107072A1 true DE102014107072A1 (en) | 2015-11-26 |
Family
ID=54431562
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102014107072.0A Withdrawn DE102014107072A1 (en) | 2014-05-20 | 2014-05-20 | Method for parallel programming of a plurality of vehicle control devices |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102014107072A1 (en) |
-
2014
- 2014-05-20 DE DE102014107072.0A patent/DE102014107072A1/en not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19744230B4 (en) | Control units for a system and method for operating a control unit | |
EP3180969B1 (en) | Population of printed circuit boards | |
EP3510456B1 (en) | Method for assembling an object | |
DE102005010476A1 (en) | Control unit with configurable hardware modules | |
DE102005010477A1 (en) | Device and method for processing prioritized control processes | |
EP3487032B1 (en) | Method and charging column to charge multiple electric vehicles | |
EP3311550B1 (en) | Method for communication between software components in a vehicle | |
EP3015992B1 (en) | Method for managing prioritized input data | |
DE102014106774A1 (en) | Electronic Machine Management System | |
EP1799986B1 (en) | Apparatus and method for reading adaptive values out of motor vehicle control devices | |
DE102015100566A1 (en) | Method and light mechanism for mixed critical applications | |
DE3318410A1 (en) | Method for changing and optimising data and program cycles for programmed control devices in motor vehicles | |
EP1899773B1 (en) | Method for determination of the processing sequence of components of a function plan and electronic data processing unit for carrying out said method | |
WO2020074650A1 (en) | Method for data processing and programmable logic controller | |
EP3474650B1 (en) | Method for producing a retrofitting set for an assembly machine | |
DE102015226184A1 (en) | Improved method and apparatus for configuring and controlling vehicle electrical equipment | |
DE102014107072A1 (en) | Method for parallel programming of a plurality of vehicle control devices | |
WO2008101916A1 (en) | Method for the conversion of ladder diagrams | |
EP2071245A2 (en) | Heating system | |
WO2005096108A2 (en) | Control system for operating functions on interacting appliances | |
EP2962162B1 (en) | Method for setting up and/or implementing a programming process of a control device of a transport means | |
DE102005012255A1 (en) | Method for controlling a controllable aggregate | |
DE10065498A1 (en) | Reconstructing control program process flow, involves generating table from contents of tables generated during process containing identity of last process carried out before each new task | |
DE102018129816B4 (en) | METHOD OF CONTROLLING A SHIFT TIMING IN THE FULL THROTTLE CONDITION AND AUTOMATIC TRANSMISSION CONTROLLED BY SUCH | |
DE10158939A1 (en) | Controlling vehicle operating processes, involves controller receiving input parameters, allocating parameter sets for adapting controller to input parameters; allocation is variable |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |