DE102004060301A1 - Method for initializing an electronic system comprising a plurality of plug-ins - Google Patents
Method for initializing an electronic system comprising a plurality of plug-ins Download PDFInfo
- Publication number
- DE102004060301A1 DE102004060301A1 DE102004060301A DE102004060301A DE102004060301A1 DE 102004060301 A1 DE102004060301 A1 DE 102004060301A1 DE 102004060301 A DE102004060301 A DE 102004060301A DE 102004060301 A DE102004060301 A DE 102004060301A DE 102004060301 A1 DE102004060301 A1 DE 102004060301A1
- Authority
- DE
- Germany
- Prior art keywords
- plug
- ins
- size
- interface
- functionality
- 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
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25093—During start, integration into machine, send module functionality to scheduler
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25101—Detect connected module, load corresponding parameters, variables into module
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Stored Programmes (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zum Initialisieren eines elektronischen Systems (1), das eine Basis-Schnittstelle (2) und mehrere daran angeschlossene modulartige Plug-Ins (3.1 bis 3.n) aufweist. Um ein flexibles Hinzufügen und Entfernen von Plug-Ins (3.1 bis 3.f) zu ermöglichen, wird erfindungsgemäß vorgeschlagen, dass im Rahmen der Initialisierung des Systems (1) die Basis-Schnittstelle (2) und die Plug-Ins Informationen austauschen. Die Plug-Ins teilen mit, welche Prozesse (Priorität, Zeitraster ect.) sie enthalten. Außerdem teilen sie mit, welche Größen (Variablen, Funktionen, Strukturen etc.) sie zur Abarbeitung der Prozesse benötigen und welche Größen sie im Rahmen der Abarbeitung der Prozesse zur Verfügung stellen können. Anhand der erhaltenen Informationen führt die Basis-Schnittstelle (2) eine Verknüpfung der einzelnen Plug-Ins untereinander durch, so dass die Plug-Ins entsprechende Verweise enthalten, wo sie während der Abarbeitung der Prozesse auf die benötigten Größen zugreifen können. Die Verweise sind beispielsweise Zeiger (13) auf einen Speicherbereich (14) oder Zeiger (18) auf eine Struktur (19) in einem anderen Plug-In.The invention relates to a method for initializing an electronic system (1) having a base interface (2) and a plurality of plug-in modules (3.1 to 3.n) connected thereto. In order to enable a flexible addition and removal of plug-ins (3.1 to 3.f), the invention proposes that in the context of the initialization of the system (1) the base interface (2) and the plug-ins exchange information. The plug-ins communicate which processes (priority, time grid, etc.) they contain. In addition, they tell you which variables (variables, functions, structures, etc.) they require to process the processes, and which quantities they can provide in the course of processing the processes. On the basis of the information obtained, the base interface (2) performs a linking of the individual plug-ins to one another, so that the plug-ins contain corresponding references, where they can access the required quantities during the processing of the processes. The references are, for example, pointer (13) to one memory area (14) or pointer (18) to a structure (19) in another plug-in.
Description
Die vorliegende Erfindung betrifft ein Verfahren zum Initialisieren eines elektronischen Systems, das eine Basis-Schnittstelle und mehrere daran angeschlossene modulartige Plug-Ins aufweist.The The present invention relates to a method for initialization an electronic system that has a basic interface and several has connected thereto plug-in modular.
Die Erfindung betrifft außerdem ein Kommunikationsprotokoll zur Abarbeitung auf mindestens einem Rechengerät eines elektronischen Systems während der Initialisierung des elektronischen Systems. Das elektronische System umfasst eine Basis-Schnittstelle und mehrere daran angeschlossene modulartige Plug-Ins.The Invention also relates a communication protocol for processing on at least one computing device an electronic system during the initialization of the electronic system. The electronic System comprises a basic interface and several connected modular Plug-ins.
Des weiteren betrifft die Erfindung ein Computerprogramm zur Abarbeitung auf einem Rechengerät einer Datenverarbeitungsanlage. Das Computerprogramm umfasst mehrere Plug-Ins und eine Basis-Schnittstelle, wobei die Plug-Ins an die Basis-Schnittstelle angeschlossen sind.Of Furthermore, the invention relates to a computer program for processing on a computing device a data processing system. The computer program includes several Plug-ins and one Base interface, with the plug-ins to the base interface are connected.
Schließlich betrifft die vorliegende Erfindung auch ein elektronisches System mit einem Rechengerät zur Abarbeitung eines Kommunikationsprotokolls. Das elektronische System umfasst eine Basis-Schnittstelle und mehrere daran angeschlossene modulartige Plug Ins.Finally, concerns the present invention also an electronic system with a computing device for processing a communication protocol. The electronic System comprises a basic interface and several connected modular Plug ins.
Im Automobilbereich wurde Elektronik ursprünglich nur in Form einzelner, elektrifizierter Komponenten eingesetzt, wobei diese Komponenten isoliert und unabhängig voneinander agierten. Später wurden diese Komponenten zunehmend zu Systemen integriert, wobei die Komponenten in den Systemen zum Zwecke eines Datenaustausches und einer gegenseitigen Beeinflussung miteinander in Verbindung gebracht wurden. Beispiele für solche integrierten Systeme sind Motorsteuerungssysteme, Bremsregelungssysteme oder Fahrerinformationssysteme. Derzeit ist ein Trend hin zur Vernetzung aller Fahrzeugsysteme untereinander und zunehmend auch mit der Fahrzeugumwelt zu beobachten.in the In the automotive sector, electronics were originally only in the form of individual, used electrified components, these components isolated and independent acted on each other. Later were These components are increasingly integrated into systems, with the components in the systems for the purposes of data exchange and mutual Influencing each other. Examples for such Integrated systems are engine control systems, brake control systems or driver information systems. Currently there is a trend towards networking all vehicle systems among each other and increasingly with the vehicle environment to observe.
Dieses erkennbare Zusammenwachsen der Systeme bringt nun erhebliche technische und organisatorische Herausforderungen mit sich:
- – neue Fahrzeugfunktionen sind häufig nur noch im Verbund unterschiedlicher Teilsysteme realisierbar und effektiv nutzbar,
- – damit wird eine funktionale Integration von Teilsystemen auch unterschiedlicher Zulieferer erforderlich,
- – die Wertigkeit und der Charakter von Fahrzeugen werden zunehmend durch komplexe Softwarefunktionen bestimmt, und
- – die Beherrschung der wachsenden Systemkomplexität wird für Fahrzeughersteller und Zulieferer in zunehmendem Maße wettbewerbsentscheidend hinsichtlich Geschwindigkeit, Kosten und Qualität der integrierten Systeme.
- New vehicle functions are often only realizable and effectively usable in combination with different subsystems
- - this requires a functional integration of subsystems from different suppliers,
- The valence and character of vehicles are increasingly determined by complex software functions, and
- - Mastering the growing system complexity is becoming increasingly competitive for vehicle manufacturers and suppliers in terms of speed, cost and quality of integrated systems.
Aus
der
Zwischen der Basisschicht und der Schnittstelle ist eine Systemschicht vorgesehen, welche die zweiten Komponenten zur Koordination des Zusammenwirkens der ersten Komponenten zur Durchführung der Steuerungsaufgaben umfasst. In der Systemschicht ist also eine Intelligenz vorhanden, welche zum Einbinden der Plug-Ins in das Gesamtsystem erforderlich ist. Mit anderen Worten, bauen die Funktionalitäten der Plug Ins auf den Funktionalitäten der Systemschicht auf und setzen diese sogar voraus. Die Plug-Ins müssen also auf die Funktionalitäten der Systemschicht abgestimmt sein und können nicht ohne weiteres in anderen elektronischen Systemen mit anderen Funktionalitäten in der Systemschicht eingesetzt werden. Vor dem Einsatz der Plug-Ins in einer anderen Systemumgebung ist eine zeit- und kostenintensive Adaption der Plug-Ins erforderlich. Des weiteren kann es erforderlich sein, bei einer Änderung oder Ergänzung der Funktionalitäten der ersten Komponenten auch die Funktionalitäten der Systemschicht anzupassen, da eine Überarbeitung der ersten Komponenten Auswirkungen auf die Koordination der Komponenten, das heißt auf die Systemschicht, haben kann. In den bekannten Systemen werden also bezüglich der Behandlung von Plug Ins lediglich Insellösungen zur Verfügung gestellt, die ohne umfangreiche Adaptionen nicht einfach auf andere Systeme übertragbar sind.Between the base layer and the interface, a system layer is provided, which are the second components to coordinate the interaction the first components for performing the control tasks includes. There is an intelligence in the system layer which is required to integrate the plug-ins into the overall system is. In other words, the functionalities of plug ins build on the functionalities of System layer on and even require this. The plug-ins must be so on the functionalities be tuned to the system layer and can not readily in other electronic systems with other functionalities in the System layer can be used. Before using the plug-ins in another system environment is time-consuming and expensive Adaptation of plug-ins required. Furthermore, it may be necessary be in a change or supplement the functionalities of first components also adapt the functionalities of the system layer, there a revision the first components affect the coordination of the components, this means on the system layer, may have. In the known systems are So with respect the treatment of plug ins only isolated solutions provided which can not easily be transferred to other systems without extensive adaptations are.
Außerdem wird bei dem bekannten elektronischen System die Initialisierung des Systems und die Verknüpfung der Plug Ins untereinander nicht durch die Plug-Ins selbst, sondern allein durch die Systemschicht und/oder eine darunter liegende Betriebssystemschicht realisiert. Die Initialisierung wird also zentral gesteuert, eine Kommunikation zwischen den Plug-Ins des Systems vor oder während der Initialisierung findet nicht statt.In addition, will in the known electronic system, the initialization of Systems and the link the plug ins are not among each other by the plug-ins themselves, but rather solely through the system layer and / or an underlying operating system layer realized. The initialization is thus controlled centrally, a Communication between the system's plug-ins before or during the Initialization does not take place.
Ausgehend von diesem Stand der Technik liegt der vorliegenden Erfindung die Aufgabe zugrunde, das bekannte Verfahren dahingehend auszugestalten und weiterzubilden, dass die Initialisierung des elektronischen Systems wesentlich flexibler als bisher ausgeführt werden kann. Insbesondere sollen die Verknüpfungen der Plug-Ins untereinander im Rahmen der Initialisierung vollautomatisch erzeugt werden, ohne dass dem elektronischen System die Art und Anzahl der angeschlossenen Plug-Ins und deren Funktionalitäten bzw. Prozesse im Vorfeld bekannt sein müssen.outgoing from this prior art, the present invention is the The object of the invention is to design the known method to such an extent and further that the initialization of the electronic Systems can be performed much more flexible than before. Especially should the shortcuts the plug-ins with each other during the initialization fully automatic be generated without the electronic system, the type and Number of connected plug-ins and their functionalities or Processes must be known in advance.
Zur Lösung dieser Aufgabe wird ausgehend von dem Verfahren der eingangs genannten Art vorgeschlagen, dass
- – beim Initialisieren des elektronischen Systems der Basis-Schnittstelle durch die Plug-Ins jeweils Informationen zur Verfügung gestellt werden betreffend: – mindestens eine von dem jeweiligen Plug-In ausgeführte Funktionalität; – Größen, die von dem jeweiligen Plug-In zur Ausführung der mindestens einen Funktionalität benötigt werden; – Größen, die von dem jeweiligen Plug-In nach Ausführung der mindestens einen Funktionalität zur Verfügung gestellt werden,
- – den einzelnen Plug-Ins durch die Basis-Schnittstelle Informationen zur Verfügung gestellt werden betreffend: – welcher der übrigen Plug-Ins eine von dem Plug-In benötigte Größe zur Verfügung stellt, und
- – ein entsprechender Verweis auf denjenigen Plug-In, der die Größe zur Verfügung stellt, in demjenigen Plug-In abgelegt wird, der die Größe benötigt.
- - When initializing the electronic system of the base interface by the plug-ins information is made available concerning: - at least one executed by the respective plug-in functionality; Sizes required by the respective plug-in to perform the at least one functionality; Sizes which are made available by the respective plug-in after execution of the at least one functionality,
- - The individual plug-ins are provided by the base interface information regarding: - Which of the other plug-ins provides a required size of the plug-in, and
- - a corresponding reference to the plug-in that provides the size is placed in the plug-in that needs the size.
Vorteile der ErfindungAdvantages of invention
Nach dem erfindungsgemäßen Verfahren wird im Rahmen der Initialisierung des elektronischen Systems zunächst jeder der die Basis-Schnittstelle angeschlossenen Plug-Ins nach bestimmten Informationen abgefragt. Diese Informationen betreffen beispielsweise die in dem Plug-In realisierten Funktionalitäten bzw. die entsprechenden Prozesse. Außerdem betreffen die Informationen die durch die Abarbeitung der Prozesse ermittelten und durch den Plug-In zur Verfügung gestellten Größen, sowie die Größen, die der Plug-In zur Ausführung der Funktionalitäten bzw. zur Abarbeitung der Prozesse benötigt. Größen im Sinne der vorliegenden Erfindung sind beispielsweise Variablen, Funktionen, Strukturen, etc. Die Plug-Ins des erfindungsgemäßen elektronischen Systems verfügen also über eine zusätzliche Initialisierungs-Funktionalität, um auf die entsprechenden Anfragen der Basis-Schnittstelle zu antworten und die gewünschten Informationen zu übermitteln.To the method according to the invention is As part of the initialization of the electronic system, first everyone the plug-in connected to the base interface for specific information queried. This information relates to, for example, those in the Plug-in implemented functionalities or the corresponding Processes. Furthermore The information concerns the processing of the processes detected and provided by the plug-in sizes, as well the sizes that the plug-in for execution the functionalities or to process the processes needed. Sizes in the sense of the present Invention are, for example, variables, functions, structures, etc. The plug-ins the inventive electronic Systems So over an additional Initialization functionality to respond to the corresponding requests from the base interface and the desired ones To submit information.
Nach dem Erhalt der Informationen von einem ersten Plug-In fragt die Basis-Schnittstelle die übrigen Plug-Ins, ob sie zumindest eine der benötigten Größen zur Verfügung stellen können.To Getting the information from a first plug-in asks the Basic interface the rest Plug-ins, whether they provide at least one of the required sizes can.
Falls das der Fall ist, werden dem ersten Plug-In durch die Basis-Schnittstelle Informationen zur Verfügung gestellt betreffend welcher der übrigen Plug-Ins die von dem ersten Plug-In benötigte Größen zur Verfügung stellt. Dann wird an einer bestimmten Stelle in dem ersten Plug-In ein entsprechender Verweis auf diejenigen Plug-Ins eingetragen, welche die benötigten Größen zur Verfügung stellen. Ein Plug-In des erfindungsgemäßen elektronischen Systems verfügt also über die zusätzliche Initialisierungs-Funktionalität, um die empfangenen Verweise auf eine oder mehrere Plug-Ins, welche die von dem Plug-In benötigten Größen zur Verfügung stellen, an geeigneter Stelle abzuspeichern.If That is the case, be the first plug-in through the base interface Information available posed regarding which of the other plug-ins the one needed by the first plug-in Sizes to disposal provides. Then it will be at a certain point in the first plug-in a corresponding reference to those plug-ins registered, which the needed Sizes to Make available. A plug-in of the inventive electronic Systems features So over the extra Initialization functionality to the received references to one or more plug-ins, which those needed by the plug-in Sizes to Make available Store at a suitable location.
Vorzugsweise ist in den Plug-Ins mindestens ein leeres Feld vorgesehen, wo der Verweis abgelegt werden kann. Jedes Mal wenn im Rahmen der Abarbeitung eines Prozesses in einem ersten Plug-In eine bestimmte Größe von einem anderen Plug-In benötigt wird, wird die Größe über den Verweis von dem anderen Plug-In geholt. Selbstverständlich können in den Plug-Ins auch mehrere Verweise auf verschiedene andere Plug-Ins abgelegt werden, insbesondere dann wenn in einem Plug-In verschiedene Größen benötigt werden. Die Verweise auf die anderen Plug-Ins können beliebiger Art sein.Preferably At least one empty field is provided in the plug-ins where the Reference can be filed. Every time in the context of the processing a process in a first plug-in a certain size of one needed another plug-in will, the size is over the Referred to by the other plug-in. Of course, in the Plug-ins also have multiple references to various other plug-ins are stored, especially if in a plug-in different Sizes needed. References to the other plug-ins can be of any kind.
Mit dem erfindungsgemäßen Verfahren können in Laufzeit während der Initialisierung des elektrischen Systems die Verknüpfungen zwischen den Plug-Ins erstellt werden und zwar unabhängig davon, welche Plug-Ins tatsächlich an die Basis-Schnittstelle angeschlossen sind, und ohne dass im Vorfeld bekannt sein muss, welche Plug-Ins angeschlossen sind. Das erfindungsgemäße Verfahren ermöglicht ein Höchstmaß an Flexibilität hinsichtlich Hinzufügen, Entfernen und Ändern von Plug-Ins eines elektronischen Systems.With the method according to the invention can in runtime during the initialization of the electrical system the links between the plug-ins, regardless of which Plug-ins actually connected to the base interface, and without that in the It must be known in advance which plug-ins are connected. The inventive method allows one Maximum flexibility in terms of Add, Remove and change of plug-ins of an electronic system.
Die Plug-Ins können als Hardware (bspw. als Einsteckkarten mit zusätzlichen Input/Output-Schnittstellen, zusätzlichen Treibern, zusätzlichen Speicher- oder Rechenkapazitäten, etc. für ein Steuergerät) oder als Software (bspw. als Betriebsteilmodule eines Computerprogramms) ausgebildet sein. Die Basis-Schnittstelle verfügt über keinerlei Funktionalität zur Ergänzung der Funktionalitäten der Plug-Ins. Die Aufgabe der Basis-Schnittstelle betrifft lediglich die Verknüpfung der Plug-Ins während der Initialisierung und die Kommunikation zwischen den Plug-Ins während des Betriebs des elektrischen Systems. Die dazu erforderlichen Informationen über die Plug-Ins erhält die Basis-Schnittstelle direkt von den Plug-Ins während der Initialisierungsphase des elektronischen Systems durch eine Kommunikation mit den Plug-Ins.The plug-ins can be designed as hardware (for example as plug-in cards with additional input / output interfaces, additional drivers, additional memory or computing capacities, etc. for a control unit) or as software (for example as operating submodules of a computer program). The basic interface has no functionality to supplement the functionality of the plug-ins. The purpose of the basic interface concerns only the linking of the plug-ins during initialization and the communication between the plug-ins during operation of the electrical system. The The necessary information about the plug-ins is obtained by the basic interface directly from the plug-ins during the initialization phase of the electronic system through a communication with the plug-ins.
Gemäß einer vorteilhaften Weiterbildung der Erfindung wird vorgeschlagen, dass die mindestens eine Funktionalität durch mindestens einen Prozess realisiert ist. Das heißt die Funktionalitäten der Plug-Ins werden durch einen oder mehrere Prozesse realisiert. Die Übermittlung von Informationen hinsichtlich der Funktionalität der Plug-Ins betrifft somit beliebige Informationen hinsichtlich der in dem Plug-In realisierten Prozesse. Vorteilhafterweise umfassen die Informationen betreffend die Funktionalität der Plug-Ins ein Zeitraster, in dem der mindestens eine Prozess abgearbeitet wird, und eine Priorität des mindestens einen Prozesses.According to one advantageous development of the invention it is proposed that the at least one functionality realized by at least one process. That means the functionalities of the plug-ins are realized by one or more processes. The transmission information regarding the functionality of the plug-ins thus affects any Information regarding the processes implemented in the plug-in. Advantageously, the information concerning the functionality of the plug-ins a time frame in which the at least one process is processed becomes, and a priority of the at least one process.
Gemäß einer bevorzugten Ausführungsform der Erfindung wird vorgeschlagen, dass in dem Plug-In, der eine bestimmte Größe benötigt, als Verweis ein Zeiger auf einen Speicherplatz abgelegt wird, an dem die benötigte Größe durch einen der übrigen Plug-Ins gespeichert wird. Der Speicherplatz, auf den verwiesen wird, kann in einem der Plug-Ins, aber auch in der Basis-Schnittstelle oder einer untergeordneten Basisfunktionalität oder Basissoftware vorgesehen sein. Das Arbeiten mit Zeigern hat mehrere Vorteile. Ein Vorteil besteht darin, dass bei einem Update der Software in einem Plug-In die alte Software im Speicher verbleiben kann, die neue Software an eine andere neue Stelle im Speicher abgelegt wird und der Zeiger einfach auf die neue Speicherstelle umgesetzt wird. Ein erneutes Programmieren (sog. Flashen) des gesamten Speichers (Löschen des alten Inhalts und Beschreiben mit der neuen Software) ist somit nicht erforderlich.According to one preferred embodiment of Invention is proposed that in the plug-in, which has a specific Size needed, as Reference a pointer to a location is dropped on the the needed Size through one of the others Plug-ins is saved. The space referenced can be in one of the plug-ins, but also in the base interface or subordinate base functionality or basic software be. Working with pointers has several advantages. An advantage is that when you update the software in a plug-in the old software can remain in memory, the new software another new location is placed in memory and the pointer is simply converted to the new storage location. Another one Programming (so-called flashing) of the entire memory (deleting the old content and describing it with the new software) is thus not mandatory.
Gemäß einer anderen bevorzugten Ausführungsform der vorliegenden Erfindung wird vorgeschlagen, dass in dem Plug-In, der eine Größe benötigt, als Verweis ein Zeiger auf eine Struktur abgelegt wird, in der an einer vorgegebenen Position die benötigte Größe durch einen der übrigen Plug-Ins gespeichert wird. Gemäß dieser Ausführungsform wird also nicht für jede benötigte Größe ein gesonderter Zeiger auf einen Speicherplatz abgelegt, wo die benötigte Größe abgespeichert ist, sondern lediglich ein einziger Zeiger auf eine Struktur abgelegt, wo sämtliche benötigten Größen abgelegt sind. Die Struktur umfasst eine bestimmte Anzahl an Feldern, wobei in bestimmten Feldern bestimmte Größen abgespeichert sind. So wird beispielsweise vorab definiert, dass eine Größe A immer an der dritten Position in der Struktur abgelegt wird. Wenn in einem Plug-In die Größe A benötigt wird, wird aus dem Plug-In an den Anfang der Struktur gesprungen, auf den der Zeiger zeigt. In Abhängigkeit von der benötigten Größe wird an die entsprechende Position bzw. das entsprechende Feld der Struktur gesprungen, das heißt für die Größe A wird an die dritte Position gesprungen, die benötigte Größe wird ausgelesen und dann wieder zu dem Plug-In zurückgekehrt. Die Struktur kann in der Basis-Schnittstelle oder der untergeordneten Basisfunktionalität oder Basissoftware enthalten sein. Der Inhalt der Struktur wird durch die Plug-Ins, welche die entsprechenden Größen zur Verfügung stellen, kontinuierlich aktualisiert. Diese Ausführungsform hat den Vorteil, dass in den Plug-Ins lediglich ein Feld für den Zeiger, der auf den Anfang der Struktur zeigt, benötigt wird, selbst wenn in dem Plug-In mehr als eine Größe benötigt wird.According to one another preferred embodiment The present invention proposes that in the plug-in, which needs a size than Reference a pointer to a structure is placed in the on a given position the required Size through one of the others Plug-ins is saved. According to this embodiment So it will not work for you every needed Size a separate one Pointer stored on a storage location where the required size is stored is, but only a single pointer to a structure filed, where all required sizes filed are. The structure comprises a certain number of fields, where certain sizes are stored in certain fields. So For example, it is defined in advance that a size A is always is stored at the third position in the structure. If in one Plug-in size A is needed is jumped from the plug-in to the beginning of the structure which the pointer points to. Dependent on from the needed Size is on the corresponding position or the corresponding field of the structure jumped, that is for the Size A will jumped to the third position, the required size is read and then returned to the plug-in again. The structure may be in the base interface or the child base functionality or base software be included. The content of the structure is determined by the plug-ins the corresponding sizes to Make available continuously updated. This embodiment has the advantage that in the plug-ins just a box for the pointer, which is at the beginning the structure shows needed even if more than one size is needed in the plug-in.
Falls eine bestimmte Größe von mehreren Plug-Ins zur Verfügung gestellt wird, stellt sich die Frage, welche der Plug-Ins die Größe für die übrigen Plug-Ins, welche die Größe benötigen, zur Verfügung stellen soll. In einem solchen Fall wird vorteilhafterweise die Größe von demjenigen Plug-In zur Weiterverarbeitung herangezogen, dessen Prozess zur Ermittlung der Größe die höchste Priorität aufweist. Da dieser Prozess die höchste Priorität aufweist, wird er vor den anderen Prozessen die benötigte Größe zur Verfügung stellen können.If a certain size of multiple plug-ins to disposal asked, which of the plug-ins is the size for the other plug-ins, which need the size to Make available should. In such a case, advantageously, the size of the one becomes Plug-in used for further processing, whose process for Determining the size has the highest priority. Because this process is the highest priority it will provide the required size before the other processes can.
Des weiteren kann es unter bestimmten Bedingungen vorteilhaft sein, dass in einem solchen Fall die Größe von demjenigen Plug-In zur Verfügung gestellt wird, von dem die Basis-Schnittstelle als erstes die Information erhält, dass der Plug-In bzw. ein Prozess des Plug-Ins die benötigte Größe zur Verfügung stellen kann. Alternativ wird vorgeschlagen, dass die Größe von demjenigen Plug-In zur Verfügung gestellt wird, von dem die Basis-Schnittstelle als letztes die Information erhält, dass der Plug-In bzw. ein Prozess des Plug-Ins die benötigte Größe zur Verfügung stellen kann.Of further it may be advantageous under certain conditions that in such a case the size of the plug-in for disposal is provided by which the base interface gets the information first, that the plug-in or a process of the plug-in provide the required size can. Alternatively, it is suggested that the size of the plug-in for disposal the base interface is the last to receive the information gets that the plug-in or a process of the plug-in provide the required size can.
Es sinnvoll, dass die Basis-Schnittstelle Zugriff auf eine Initialisierungstabelle mit Informationen hat, wo die einzelnen Plug-Ins abgelegt sind. Diese Tabelle kann – wenn die Plug-Ins als Software ausgebildet sind – beim Flashen neuer Plug-Ins aktualisiert werden. Bei als Software, aber auch als Hardware ausgebildeten Plug-Ins ist es aber auch denkbar, dass zu Beginn der Initialisierung die an die Basis-Schnittstelle angeschlossenen Plug-Ins und ihre (Anfangs-) Adressen ermittelt werden und die Tabelle dementsprechend aktualisiert wird. Die Tabelle ist vorzugsweise in der Basis-Schnittstelle abgespeichert. Anhand dieser Tabelle kann die Basis-Schnittstelle dann die einzelnen Plug-Ins abfragen und die gewünschten Informationen einholen.It makes sense for the base interface to access an initialization table with information on where each plug-in is stored. This table can - if the plug-ins are software-designed - flashing new plug-ins to be updated. When trained as software, but also as hardware Plug-ins, it is also conceivable that at the beginning of the initialization the plug-ins connected to the base interface and their (initial) Addresses are determined and the table updated accordingly becomes. The table is preferably stored in the basic interface. Based on this table, the base interface can then be the individual Query plug-ins and the desired ones To gather information.
Falls das elektronische System als ein Computerprogramm ausgebildet ist, ist eine Strukturierung des Computerprogramms in eine Basis-Software ohne Plug-Ins, eine darüber angeordnete Master-Schnittstelle und daran angeschlossene Plug-Ins und/oder Sub-Schnittstellen, an die weitere Sub-Schnittstellen und/oder weitere Plug-Ins angeschlossen sind, denkbar. Die Basis-Software umfasst einen festen, permanenten Teil der Software, der beispielsweise für die Kommunikation über Bus-Treiber, etc. zuständig ist. Auf diese Weise lässt sich gewissermaßen eine kaskadierte Struktur des elektronischen Systems erzielen. Für diese Struktur kann ein Sichtbarkeitskonzept realisiert werden, durch das es möglich ist, die Sichtbarkeit bestimmter Größen von unten, das heißt von ranghöheren Bereichen aus, auf bestimmte rangniedrigere Bereiche der Struktur zu beschränken. Diesbezüglich wird ein Verfahren zum Initialisieren eines elektronischen Systems umfassend eine Basis-Schnittstelle und mehrere daran angeschlossene modulartige Plug-Ins vorgeschlagen, wobei eine der Basis-Schnittstellen als eine Master-Schnittstelle und die übrigen Basis-Schnittstellen als Sub-Schnittstellen ausgebildet sind und an die Master-Schnittstelle außer den Plug-Ins noch Sub-Schnittstellen angeschlossen sind, an die wiederum weitere Sub-Schnittstellen und/oder weitere Plug-Ins und so weiter angeschlossen sind. Die Schnittstellen sind in unterschiedliche Bereiche (z. B. privat, öffentlich, geschützt, etc.) unterteilt. Lediglich die innerhalb des gleichen Bereichs der Schnittstellen anliegenden Größen (Variablen, Funktionen, etc.) sind für untergeordnete (das heißt höherrangige) Schnittstellen sichtbar und damit auch zugänglich. Die gleiche Größe kann an unterschiedlichen Bereichen einer Schnittstelle anliegen. Dadurch können die Größen in bestimmten Bereichen gekapselt werden und ähneln gewissermaßen lokalen Variablen.If the electronic system is designed as a computer program, a structuring of the computer program into basic software without plug-ins, a Mas arranged above it ter interface and attached plug-ins and / or sub-interfaces to which further sub-interfaces and / or other plug-ins are connected conceivable. The basic software comprises a fixed, permanent part of the software, which is responsible, for example, for communication via bus drivers, etc. In this way, it is possible to achieve a cascaded structure of the electronic system. For this structure, a visibility concept can be realized, by means of which it is possible to limit the visibility of certain variables from below, that is, from higher-ranking areas, to certain lower-ranking areas of the structure. In this regard, a method for initializing an electronic system comprising a base interface and a plurality of plug-ins connected thereto is proposed, wherein one of the base interfaces as a master interface and the remaining base interfaces are designed as sub-interfaces and to the Master interface except the plug-ins are still connected to sub-interfaces, to which in turn further sub-interfaces and / or other plug-ins and so on are connected. The interfaces are divided into different areas (eg private, public, protected, etc.). Only the variables within the same area of the interfaces (variables, functions, etc.) are visible to subordinate (ie higher ranking) interfaces and thus also accessible. The same size can be applied to different areas of an interface. As a result, the sizes can be encapsulated in certain areas and are somewhat similar to local variables.
Vorteilhafterweise sind die Schnittstellen in einen privaten Bereich und einen öffentlichen Bereich unterteilt. Lediglich die an dem öffentlichen Bereich einer Schnittstelle anliegenden öffentlichen Größen (Variablen, Funktionen, etc.) sind für eine untergeordnete Schnittstelle sichtbar und damit auch zugänglich. Die an dem privaten Bereich der Schnittstelle anliegenden privaten Größen sind lediglich in der betreffenden Schnittstelle und öffentlichen Bereichen von darüber angeordneten Schnittstellen sichtbar.advantageously, the interfaces are in a private area and a public area Divided area. Only those at the public area of an interface adjoining public Sizes (variables, Functions, etc.) are for a subordinate interface is visible and thus accessible. The private ones attached to the private area of the interface Sizes are only in the relevant interface and public areas of above it Interfaces visible.
Mit dieser kaskadierten Struktur des elektronischen Systems und der Aufteilung der Schnittstellen in einen privaten und eine öffentlichen Bereich können bspw. bei einem Computerprogramm abgeschlossene Programmbereiche geschaffen werden. Dies ist von Vorteil, wenn ein bestimmter Programmbereich von externen Zulieferern entwickelt und programmiert wird. Wie der Entwurf, die Struktur und die eigentliche Programmierung (welche Größen, Funktionen, Strukturen verwendet wurden, welche Algorithmen ausgeführt werden, etc.) im Detail ausgestaltet ist, ist für den Auftraggeber nicht von Bedeutung. Wichtig ist allein, dass der Programmbereich die von ihm geforderte Funktionalität erfüllt, das heißt dass in ihm die geforderten Prozesse realisiert sind, und dass er untergeordneten (das heißt ranghöheren) Schnittstellen die geforderten öffentlichen Größen zur Verfügung stellt.With this cascaded structure of the electronic system and the Distribution of interfaces in a private and a public Area can For example, completed in a computer program program areas be created. This is beneficial if a specific program area developed and programmed by external suppliers. Again Design, structure and actual programming (which Sizes, functions, Structures were used, which algorithms are executed, etc.) is designed in detail, is not for the client of Importance. The only important thing is that the program area is that of him required functionality Fulfills, this means that in him the required processes are realized, and that he child (that is higher ranking) interfaces the required public Sizes to disposal provides.
Eine untergeordnete Schnittstelle hat nur Zugriff auf die an den öffentlichen Bereichen der übergeordneten Schnittstellen anliegenden Größen. Die an den privaten Bereichen anliegenden Größen sind für die untergeordnete Schnittstelle nicht sichtbar und somit auch nicht zugänglich. Damit wird also auf einfache Weise eine Kapselung von Programmbereichen bzw. der darin realisierten Funktionalitäten ermöglicht. Die fremdentwickelten Programmbereiche können mit Hilfe dieses Sichtbarkeitskonzepts auch einfach und schnell in ein bestehendes Computerprogramm integriert werden.A subordinate interface only has access to the public Areas of the parent Interfaces adjacent sizes. The on The sizes applied to private areas are for the subordinate interface not visible and thus not accessible. So that's going on simple way an encapsulation of program areas or in it realized functionalities allows. The externally developed program areas can be created with the help of this visibility concept also easily and quickly integrated into an existing computer program become.
Zur leichteren Handhabbarkeit der Größen innerhalb der Plug-Ins und der Basis-Schnittstelle wird vorgeschlagen, dass jeder von den Plug-Ins benötigten oder von den Plug-Ins zur Verfügung gestellten Größe eine für einen definierten Bereich des elektronischen Systems eindeutige Kennung zugeordnet wird. Der definierte Bereich ist vorzugsweise der mittels des Sichtbarkeitskonzepts abgeschlossene Bereich des elektronischen Systems. Die Kennung umfasst bspw. eine Identifikationsnummer und eine Angabe, ob die Größe öffentlich oder privat ist. Selbstverständlich ist es denkbar, nicht nur den Variablen, sondern auch Funktionen, Strukturen u. a. eine solche oder eine andere eindeutige Kennung zuzuordnen.to easier handling of the sizes within the plug-ins and the base interface is suggested that everyone needed from the plug-ins or from the plug-ins available Asked size one for one defined area of the electronic system unique identifier is assigned. The defined area is preferably the means of the visibility concept completed area of the electronic System. The identifier includes, for example, an identification number and an indication of whether the size is public or private. Of course it is conceivable not only the variables, but also functions, Structures u. a. such or another unique identifier assigned.
Vorteilhafterweise sind die Kennungen der Größen in einer Kennungsliste abgelegt, auf welche die Basis-Schnittstelle während der Initialisierung des elektronischen Systems zugreifen kann.advantageously, are the identifiers of the sizes in one List of identifiers to which the base interface during the Initialization of the electronic system can access.
Es ist denkbar, dass in der Kennungsliste alle in dem elektronischen System theoretisch verfügbaren Größen (Variablen, Funktionen, etc.) aufgelistet und erläutert sind. Die Liste wird für das Gesamtsystem und nicht für die derzeit angeschlossenen Plug-Ins erstellt. Deshalb hat sie unabhängig von der Art und Anzahl der angeschlossenen Plug-Ins stets den gleichen Inhalt. Insofern kann auch davon gesprochen werden, dass bei der Erfindung die Basis-Schnittstelle vorab keine Informationen über die tatsächlich angeschlossenen Plug-Ins zur Verfügung stehen. Die Liste stellt vorzugsweise die Basis für eine Schnittstellenvereinbarung bzw. Schnittstellendefinition dar und dient sowohl dem Zulieferer von Software bzw. Plug-Ins als auch dem Integrator als Basis.It It is conceivable that in the identification list all in the electronic System theoretically available Sizes (variables, Functions, etc.) are listed and explained. The list will be for the Whole system and not for created the currently connected plug-ins. That's why she's independent of the type and number of connected plug-ins are always the same Content. In this respect can also be said that in the Invention the base interface in advance no information about the actually connected Plug-ins are available. The list preferably forms the basis for an interface agreement or interface definition and serves both the supplier software or plug-ins as well as the integrator as a basis.
Als eine weitere Lösung der Aufgabe der vorliegenden Erfindung wird ausgehend von dem Kommunikationsprotokoll der eingangs genannten Art vorgeschlagen, dass das Kommunikationsprotokoll derart programmiert ist, dass
- – beim Initialisieren des elektronischen Systems der Basis-Schnittstelle durch die Plug-Ins jeweils Informationen zur Verfügung gestellt werden betreffend: – mindestens eine von dem jeweiligen Plug-In ausgeführte Funktionalität; – Größen, die von dem jeweiligen Plug-In zur Ausführung der mindestens einen Funktionalität benötigt werden; – Größen, die von dem jeweiligen Plug-In nach Ausführung der mindestens einen Funktionalität zur Verfügung gestellt werden,
- – den einzelnen Plug-Ins durch die Basis-Schnittstelle Informationen zur Verfügung gestellt werden betreffend: – welcher der übrigen Plug-Ins eine von dem Plug-In benötigte Größe zur Verfügung stellt, und
- – ein entsprechender Verweis auf denjenigen Plug-In, der die Größe zur Verfügung stellt, in demjenigen Plug-In abgelegt wird, der die Größe benötigt.
- - When initializing the electronic system of the base interface by the plug-ins information is made available concerning: - at least one executed by the respective plug-in functionality; Sizes required by the respective plug-in to perform the at least one functionality; Sizes which are made available by the respective plug-in after execution of the at least one functionality,
- - The individual plug-ins are provided by the base interface information regarding: - Which of the other plug-ins provides a required size of the plug-in, and
- - a corresponding reference to the plug-in that provides the size is placed in the plug-in that needs the size.
Als noch eine Lösung der Aufgabe der vorliegenden Erfindung wird ausgehend von dem Computerprogramm der eingangs genannten Art vorgeschlagen, dass
- – beim Initialisieren des elektronischen Systems die Plug Ins der Basis-Schnittstelle jeweils Informationen zur Verfügung stellen betreffend: – mindestens eine von dem jeweiligen Plug-In ausgeführte Funktionalität, – Größen, die von dem jeweiligen Plug-In zur Ausführung der mindestens einen Funktionalität benötigt werden, und – Größen, die von dem jeweiligen Plug-In nach Ausführung der mindestens einen Funktionalität zur Verfügung gestellt werden;
- – die Basis-Schnittstelle den einzelnen Plug-Ins Informationen zur Verfügung stellt betreffend: – welcher der übrigen Plug-Ins eine von dem Plug-In benötigte Größe zur Verfügung stellt; und
- – ein entsprechender Verweis auf denjenigen Plug-In, der die Größe zur Verfügung stellt, in demjenigen Plug-In abgelegt wird, der die Größe benötigt.
- - When initializing the electronic system, the plug-ins provide the base interface information respectively regarding: - at least one of the respective plug-in executed functionality, - sizes that are required by the respective plug-in to perform the at least one functionality , and - quantities provided by the respective plug-in after execution of the at least one functionality;
- The basic interface provides information to the individual plug-ins concerning: which of the remaining plug-ins provides a size required by the plug-in; and
- - a corresponding reference to the plug-in that provides the size is placed in the plug-in that needs the size.
In diesem Fall ist also das elektronische System als ein Computerprogramm ausgebildet, so dass es sich bei den Plug-Ins um Betriebsteilmodule eines Computerprogarmms handelt. Demnach wird also die Erfindung durch das Computerprogramm realisiert.In In this case, therefore, the electronic system is a computer program trained so that it is the plug-ins to operating submodules a computer program. Accordingly, therefore, the invention realized by the computer program.
Als eine weitere Lösung der Aufgabe der vorliegenden Erfindung wird ausgehend von dem elektronischen System der eingangs genannten Art vorgeschlagen, dass
- – die Plug-Ins im Rahmen der Initialisierung des elektronischen Systems der Basis-Schnittstelle jeweils Informationen zur Verfügung stellen betreffend: – mindestens eine von dem jeweiligen Plug-In ausgeführte Funktionalität; – Größen, die von dem jeweiligen Plug-In zur Ausführung der mindestens einen Funktionalität benötigt werden; – Größen, die von dem jeweiligen Plug-In nach Ausführung der mindestens einen Funktionalität zur Verfügung gestellt werden,
- – den einzelnen Plug-Ins durch die Basis-Schnittstelle Informationen zur Verfügung gestellt werden betreffend: – welcher der übrigen Plug-Ins eine von dem Plug-In benötigte Größe zur Verfügung stellt, und
- – ein entsprechender Verweis auf denjenigen Plug-In, der die Größe zur Verfügung stellt, in demjenigen Plug-In abgelegt wird, der die Größe benötigt.
- - The plug-ins in the context of the initialization of the electronic system of the base interface each provide information regarding: - At least one of the plug-in executed functionality; Sizes required by the respective plug-in to perform the at least one functionality; Sizes which are made available by the respective plug-in after execution of the at least one functionality,
- - The individual plug-ins are provided by the base interface information regarding: - Which of the other plug-ins provides a required size of the plug-in, and
- - a corresponding reference to the plug-in that provides the size is placed in the plug-in that needs the size.
Zeichnungendrawings
Nachfolgend werden bevorzugte Ausführungsbeispiele der Erfindung anhand der Figuren näher erläutert. Es zeigen:following become preferred embodiments of the invention explained in more detail with reference to FIGS. Show it:
Beschreibung der Ausführungsbeispieledescription the embodiments
In Steuergeräten, insbesondere in Kraftfahrzeugsteuergeräten, sind aus dem Stand der Technik sowohl für Software als auch für Hardware Plug-and-Play-Mechanismen realisiert. Dadurch kann beispielsweise in einem Steuergerät durch einfaches Programmieren eines Betriebsteilmoduls (eines sogenannten Plug-Ins) eine zusätzliche oder eine andere Funktionalität zur Verfügung gestellt werden. In einem solchen Fall wäre die Plug-In-Komponente als Software ausgebildet.In Control devices, in particular in motor vehicle control units are from the prior Technique for both Software as well for Hardware plug-and-play mechanisms realized. This can, for example in a control unit by simply programming an operating sub-module (a so-called Plug-ins) an additional or another functionality to disposal be put. In such a case, the plug-in component would be software educated.
Ebenso ist es möglich, durch mechanisches Einstecken und elektrisches Kontaktieren eines zusätzlichen Hardwaremoduls die Funktionalität des Steuergerätes zu ändern oder zu erweitern. In einem solchen Fall wäre die Plug-In-Komponente als Hardware ausgebildet. Ein besonders bevorzugter Einsatzbereich von Plug-In-Komponenten ist in einem Steuergeräte-Verbund, wo zusätzliche Steuergeräte hinzugefügt werden können und beispielsweise über einen CAN-Bus mit den übrigen Steuergeräten verbunden werden können. Dadurch können dem Steuergeräte-Verbund zusätzliche oder andere Funktionalitäten zur Verfügung gestellt werden.It is also possible to change or expand the functionality of the control unit by mechanically plugging in and electrically contacting an additional hardware module. In such a case, the plug-in component would be hard ware trained. A particularly preferred field of use of plug-in components is in a control unit network, where additional control units can be added and connected, for example via a CAN bus with the other control units. As a result, additional or different functionalities can be made available to the ECU network.
Die bekannten Plug-In-Mechanismen haben jedoch den Nachteil, dass sowohl die Funktionalitäten als auch die Schnittstellen der Plug-Ins, das heißt welche Größen sie zur Verfügung stellen können und welche Größen sie benötigen, vorab bekannt sein müssen und entsprechende Ressourcen vorgehalten werden müssen, unabhängig davon ob die Plug-In-Komponenten tatsächlich angeschlossen sind oder nicht. Vorab bedeutet in diesem Zusammenhang zum Zeitpunkt der Integration einer neuen Plug-In-Komponente. Mit anderen Worten, bevor das neue Plug-In integriert werden kann, müssen die angegebenen Informationen bekannt sein. Deshalb werden die Informationen an zentraler Stelle in dem elektronischen System vorgehalten und können von dort bei Bedarf abgerufen werden.The However, known plug-in mechanisms have the disadvantage that both the functionalities as well as the interfaces of the plug-ins, that is which ones Size them to disposal can make and what sizes they are need, must be known in advance and resources must be kept, regardless whether the plug-in components indeed connected or not. Advance means in this context at the time of integration of a new plug-in component. With In other words, before the new plug-in can be integrated, the be known information. That's why the information held centrally in the electronic system and can be retrieved from there if necessary.
Ein Beispiel für einen solchen bekannten Plug-In-Mechanismus ist beispielsweise die Integration einer ACC (Adaptive Cruise Control)-Funktion in einen bestehenden Steuergeräteverbund in einem Kraftfahrzeug. Sobald die für die ACC-Funktion erforderlichen Hardware-Bauteile in das Kraftfahrzeug eingebaut werden, senden diese entweder sofort oder erst nach einem erneuten Hochfahren des Systems definierte CAN-Botschaften, die in einer Motorsteuerung die entsprechenden Funktionalitäten in einem Computerprogramm, beziehungsweise die Schnittstellen der Funktionalitäten, aktiviert. Nachteilig ist dabei jedoch, dass unabhängig davon ob die ACC-Hardware in dem Kraftfahrzeug verbaut ist oder nicht, die ACC-Funktionalität in dem Computerprogramm, beziehungsweise die entsprechenden Betriebsteilmodule (Plug-Ins), in der Motorsteuerung immer vorhanden sein muss. Das heißt, dass selbst wenn eine bestimmte Funktionalität in einem Kraftfahrzeug nicht realisiert ist, müssen entsprechende Ressourcen bereitgestellt und vorgehalten werden, um im Bedarfsfall die gewünschte Funktionalität freizuschalten.One example for Such a known plug-in mechanism is for example the Integration of an ACC (Adaptive Cruise Control) function into one existing control unit network in a motor vehicle. As soon as required for the ACC function Hardware components are installed in the vehicle, send this either immediately or only after a restart of the Systems defined CAN messages in an engine control system the corresponding functionalities in a computer program, or the interfaces of functionalities activated. The disadvantage here is that regardless of whether the ACC hardware is installed in the motor vehicle or not, the ACC functionality in the computer program, or the corresponding operating sub-modules (Plug-ins), in which motor control must always be present. The is called, that even if a certain functionality in a motor vehicle is not realized, must appropriate resources are made available and kept to if necessary, the desired functionality unlock.
Darüber hinaus ist es bei den bekannten Plug-In-Mechanismen nachteilig, dass eine zu integrierende Funktionalität immer auch eine manuelle Modifikation des übrigen Systems, beispielsweise ein Einbinden der neuen Prozesse der zusätzlich vorgesehenen Betriebsteilmodule (Plug-Ins), vorgenommen werden muss. Eine nachträgliche Integration einer zusätzlichen Funktionalität in ein bereits programmiertes (geflashtes) Steuergerät, das heißt ein sogenannter Update oder Upgrade im Feld, ist ebenfalls nicht oder nur mit großem Aufwand möglich.Furthermore it is disadvantageous in the known plug-in mechanisms that a to be integrated functionality always a manual modification of the rest of the system, for example integration of the new processes of the additionally provided operating submodules (Plug-ins), must be made. A subsequent integration of an additional functionality in an already programmed (flashed) control unit, that is a so-called Update or upgrade in the field, is also not or only with great effort possible.
Genau hier setzt die vorliegende Erfindung an. Sie ermöglicht eine einfache, vollautomatische, während der Initialisierung des elektronischen Systems in Laufzeit ausgeführte Integration von neuen Plug-Ins in ein bereits bestehendes System. Zudem bietet die Erfindung die Voraussetzung für ein besonders vorteilhaftes Sichtbarkeitskonzept für die in dem System verwendeten Größen (zum Beispiel Variablen, Funktionen, Strukturen, etc.).Exactly This is where the present invention starts. It allows a simple, fully automatic, during the Initialization of the electronic system at runtime from new plug-ins to an existing system. It also offers the invention is the prerequisite for a particularly advantageous Visibility concept for the sizes used in the system (for Example variables, functions, structures, etc.).
Mit Hilfe der Erfindung können über zusätzliche Plug-Ins neue, beziehungsweise geänderte, Funktionalitäten auf einem Steuergerät integriert werden, ohne dass dem restlichen System dieses Steuergerätes die Schnittstellen, beziehungsweise Prozesse, im Vorfeld bekannt sein müssen. Das vorgeschlagene Konzept erlaubt nachträgliche Updates und Upgrades von Funktionalitäten, ohne dass hierfür das komplette Steuergerät, zum Beispiel in einer Werkstatt, neu programmiert (geflasht) werden muss. Nach dem Herunterladen der neuen Funktionalitäten auf das Steuergerät melden sich diese im System automatisch an und sind danach in vollem Umfang funktionsfähig. Insbesondere werden erfindungsgemäß Mechanismen zur automatischen Koordinierung der variablen Zugriffe und zur automatischen Einbindung der Prozesse unter Beachtung von Prioritäten von Prozessen und Variablen vorgeschlagen.With Help of the invention may have additional Plug-ins new or modified functionalities a control unit be integrated, without the remaining system of this controller, the Interfaces, or processes, be known in advance have to. The proposed concept allows for subsequent updates and upgrades functionalities, without that the complete control unit, For example, in a workshop, be reprogrammed (flashed) got to. After downloading the new functionalities the control unit they log in automatically in the system and are then in full Scope functional. In particular, according to the invention mechanisms for automatic Coordination of variable access and automatic integration of the Processes taking into account priorities of processes and variables proposed.
In
Bei
dem in
Unterhalb
der Basis-Schnittstelle
Die
Basis-Schnittstelle
Bei
der vorliegenden Erfindung wird unterschieden zwischen eigentlichem
Plug-In-Teil
Ausgehend
von der Initialisierungsfunktion
In
Die
Schnittstellen
Bei
dem in
Nach
erfolgter Initialisierung sind in dem System
Der öffentliche
Bereich
Das
erfindungsgemäße Initialisierungsverfahren
für ein
elektronisches System
Außerdem teilt
der Plug-In
Sub-Schnittstellen
In
dem Funktionsblock
Sobald
ein Plug-In
Es
ist aber auch denkbar, dass die Suche fortgesetzt wird bis alle
weiteren Plug-Ins
Schließlich ist
es auch denkbar, dass einfach der letzte Plug-In
Bei
der Suche nach einem Plug-In
Entscheidend
ist, dass ein Plug-In
Zu
diesem Zweck werden in einem Funktionsblock
Alternativ
ist es aber auch möglich,
dass in einem Plug-In, beispielsweise in dem Plug-In
In
diesem Fall wird aus dem Plug-In
Durch
den Einsatz von Strukturen
In
einem Abfrageblock
Sobald
das der Fall ist, wird zu einem weiteren Abfrageblock
Selbstverständlich ist
es in Abweichung des in
Unabhängig von
der konkreten Realisierung des erfindungsgemäßen Verfahrens im Einzelnen
ist es entscheidend, dass die an das System
Das
erfindungsgemäße Verfahren
wird durch ein Kommunikationsprotokoll realisiert, das auf mindestens
einem Rechengerät
des elektronischen Systems
Falls
im Rahmen des erfindungsgemäßen Initialisierungsverfahrens
eine Anfrage der Master-Schnittstelle
Um
im Rahmen der Initialisierung aus den verschiedenen Plug-Ins
Die
Anfangsadressen der auszuführenden
Prozesse aus den Plug-Ins
The starting addresses of the processes to be executed from the plug-ins
Während der
Laufzeit des Computerprogramms, das heißt nach erfolgter Initialisierung,
greifen die Plug-In-Funktionen über
die Zeiger
Das
erfindungsgemäße Initialisierungsverfahren
hat einige wesentlichen Vorteile:
Zum einen führt es zu
einer erheblichen Zeitersparnis zum Zeitpunkt der Integration der
verschiedenen Plug-Ins. Wenn einer oder mehrere der Plug-Ins von einem
Zulieferer zugeliefert werden, obliegt dem Zulieferer die Aufgabe,
die Plug-Ins nach dem oben vorgestellten Sichtbarkeitskonzept zu
strukturieren. Zum Zeitpunkt der Integration muss nur noch der Plug-In in
das restliche System
On the one hand, it saves a considerable amount of time at the time of integration of the different plug-ins. If one or more of the plug-ins are supplied by a supplier, the supplier is responsible for structuring the plug-ins according to the visibility concept presented above. At the time of integration, only the plug-in needs to remain in the rest of the system
Nachträgliche Upgrades, das heißt ein Nachladen von Funktionalitäten auf ein Steuergerät im Feld, ist möglich, ohne dieses komplett neu programmieren (flashen) zu müssen. Das oben dargestellte Systemkonzept ermöglicht das nachträgliche Flashen von Funktionalitäten.Subsequent upgrades, this means a reloading of functionalities on a control unit in the field, is possible without having to reprogram it completely (flashing). The The system concept shown above enables the subsequent flashing of functionalities.
Nachträglich bedeutet
hierbei, dass ein Kunde nach Art einer "Software-Tankstelle" neue Programmteile herunterladen kann.
An einer entsprechenden Ladevorrichtung, bspw. bei einer Tankstelle oder
einer Werkstatt, kann eine gewünschte
Funktionalität
in einen definierten Bereich des Steuergeräts heruntergeladen (geflasht)
werden. Nach der Initialisierung gemäß dem erfindungsgemäßen Verfahren ist
diese Funktionalität
im Gesamtsystem
Claims (16)
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102004060301A DE102004060301A1 (en) | 2004-12-15 | 2004-12-15 | Method for initializing an electronic system comprising a plurality of plug-ins |
PCT/EP2005/056224 WO2006063924A1 (en) | 2004-12-15 | 2005-11-25 | Method for initialising an electronic system comprising several plug-in attachments |
EP05811127A EP1828886A1 (en) | 2004-12-15 | 2005-11-25 | Method for initialising an electronic system comprising several plug-in attachments |
CN2005800429552A CN101080692B (en) | 2004-12-15 | 2005-11-25 | Method for initialising an electronic system comprising several plug-in attachments |
JP2007546011A JP2008523519A (en) | 2004-12-15 | 2005-11-25 | Method for initializing an electronic system containing multiple plug-ins |
US11/792,737 US20080155405A1 (en) | 2004-12-15 | 2005-11-25 | Method for Initializing an Electronic System Comprising Several Plug-Ins |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102004060301A DE102004060301A1 (en) | 2004-12-15 | 2004-12-15 | Method for initializing an electronic system comprising a plurality of plug-ins |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102004060301A1 true DE102004060301A1 (en) | 2006-06-22 |
Family
ID=36123565
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102004060301A Withdrawn DE102004060301A1 (en) | 2004-12-15 | 2004-12-15 | Method for initializing an electronic system comprising a plurality of plug-ins |
Country Status (6)
Country | Link |
---|---|
US (1) | US20080155405A1 (en) |
EP (1) | EP1828886A1 (en) |
JP (1) | JP2008523519A (en) |
CN (1) | CN101080692B (en) |
DE (1) | DE102004060301A1 (en) |
WO (1) | WO2006063924A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009024576A1 (en) * | 2007-08-21 | 2009-02-26 | Beckhoff Automation Gmbh | Programming device for a network of control nodes and system with such a programming device |
DE102011012187A1 (en) * | 2011-02-23 | 2012-08-23 | Continental Automotive Gmbh | A method of configuring a control device for a motor vehicle, computer program and control device |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101573255B (en) * | 2006-11-21 | 2011-11-16 | 雷诺卡车公司 | Truck and bodybuilder module for this truck, method, memory and software to configure the bodybuilder module |
JP4924373B2 (en) * | 2007-11-14 | 2012-04-25 | 住友電装株式会社 | Communication unit and communication system |
JP2009129083A (en) * | 2007-11-21 | 2009-06-11 | Denso Corp | Vehicle control device and vehicle control system using the same |
US8155829B2 (en) * | 2007-11-21 | 2012-04-10 | Denso Corporation | Common control apparatus and vehicle control system |
CN101604371B (en) | 2009-07-22 | 2012-02-08 | 阿里巴巴集团控股有限公司 | Method and system for controlling authority of plug-in unit |
JP5891794B2 (en) * | 2011-02-09 | 2016-03-23 | 株式会社リコー | Information processing apparatus and program |
EP3093197B1 (en) | 2014-01-09 | 2022-08-03 | Kawasaki Motors, Ltd. | Vehicle, and method of assisting driving of same |
DE102016009857A1 (en) * | 2016-08-12 | 2018-02-15 | WAGO Verwaltungsgesellschaft mit beschränkter Haftung | Automatic initialization routine in an automation system |
CN115904544A (en) * | 2022-12-27 | 2023-04-04 | 哈尔滨工大卫星技术有限公司 | Plug-in digital satellite system and management method and medium thereof |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5519866A (en) * | 1993-06-28 | 1996-05-21 | Taligent, Inc. | Method and apparatus of incrementally linking components of a modeled computer program |
US6292718B2 (en) * | 1999-01-28 | 2001-09-18 | International Business Machines Corp. | Electronic control system |
EP1176496A1 (en) * | 2000-07-24 | 2002-01-30 | Hewlett-Packard Company, A Delaware Corporation | Voltage regulation in an integrated circuit |
DE10044319A1 (en) * | 2000-09-07 | 2002-03-21 | Bosch Gmbh Robert | Electronic system for a vehicle and system layer for operational functions |
GB2377283B (en) * | 2001-04-10 | 2004-12-01 | Discreet Logic Inc | Initialising modules |
US6842856B2 (en) * | 2001-05-11 | 2005-01-11 | Wind River Systems, Inc. | System and method for dynamic management of a startup sequence |
US7284246B2 (en) * | 2002-04-23 | 2007-10-16 | Canon Kabushiki Kaisha | Extensible device driver |
JP2003330756A (en) * | 2002-05-14 | 2003-11-21 | Mitsubishi Electric Corp | Configuration management method for supervisory control software |
US7584471B2 (en) * | 2002-09-23 | 2009-09-01 | Telefonaktiebolaget L M Ericsson (Publ) | Plug-in model |
US7509638B2 (en) * | 2004-08-02 | 2009-03-24 | International Business Machines Corporation | Method and apparatus for providing a pluggable and extendable J2EE architecture |
-
2004
- 2004-12-15 DE DE102004060301A patent/DE102004060301A1/en not_active Withdrawn
-
2005
- 2005-11-25 CN CN2005800429552A patent/CN101080692B/en not_active Expired - Fee Related
- 2005-11-25 US US11/792,737 patent/US20080155405A1/en not_active Abandoned
- 2005-11-25 WO PCT/EP2005/056224 patent/WO2006063924A1/en active Application Filing
- 2005-11-25 EP EP05811127A patent/EP1828886A1/en not_active Ceased
- 2005-11-25 JP JP2007546011A patent/JP2008523519A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009024576A1 (en) * | 2007-08-21 | 2009-02-26 | Beckhoff Automation Gmbh | Programming device for a network of control nodes and system with such a programming device |
US8892785B2 (en) | 2007-08-21 | 2014-11-18 | Beckhoff Automation Gmbh | Programming device for a network of control nodes and system with such a programming device |
DE102011012187A1 (en) * | 2011-02-23 | 2012-08-23 | Continental Automotive Gmbh | A method of configuring a control device for a motor vehicle, computer program and control device |
US9043084B2 (en) | 2011-02-23 | 2015-05-26 | Continental Automotive Gmbh | Method for configuring a control apparatus for a motor vehicle, computer program and control apparatus |
Also Published As
Publication number | Publication date |
---|---|
CN101080692B (en) | 2010-10-06 |
CN101080692A (en) | 2007-11-28 |
JP2008523519A (en) | 2008-07-03 |
WO2006063924A1 (en) | 2006-06-22 |
EP1828886A1 (en) | 2007-09-05 |
US20080155405A1 (en) | 2008-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1828886A1 (en) | Method for initialising an electronic system comprising several plug-in attachments | |
EP3538960B1 (en) | Sequence control of program modules | |
EP0577919A1 (en) | Access control for coupling mask-programmed micro-controllers | |
EP3273315B1 (en) | Platform for further use of existing software for controlling industrial field devices | |
DE102005010476A1 (en) | Control unit with configurable hardware modules | |
EP3230856A1 (en) | Method for updating firmware of devices | |
EP1700211B1 (en) | Method of loading software modules | |
DE102011007714B4 (en) | Method for use with a battery monitoring system, battery monitoring system and method of use | |
DE102007026602A1 (en) | Device and method for checking the current software installation of field devices of a distributed system, in particular an automation system | |
EP4289123A1 (en) | Method and apparatus for configuring an application | |
EP3832517A1 (en) | Computer-implemented method for integrating at least one signal value in a virtual control device | |
EP3015992B1 (en) | Method for managing prioritized input data | |
EP3662364A1 (en) | System for transferring at least one update packet for at least one control unit of a motor vehicle, and method | |
DE112010005509T5 (en) | Robotic system control method and apparatus thereof | |
DE102016123599A1 (en) | Robot controller with function for communication with a programmable logic controller and communication system | |
DE10330191A1 (en) | System or method for releasing released software programs | |
EP3285162A1 (en) | Method for projecting a project and arrangement for carrying out said method | |
EP3482467B1 (en) | Plug connector component, plug connector, plug connector system and method for assembling and operating a plug connector | |
WO2012072180A2 (en) | Method for operating a working machine, and working machine | |
EP1536328A2 (en) | Data processing system with automatable management and method for automated management of a data processing system | |
DE102012218665B4 (en) | Application system for control units | |
DE60307172T2 (en) | A method and network device consisting of a flexible EEPROM to set configuration settings | |
DE102016121542A1 (en) | Sequence control of program modules | |
DE102006051210A1 (en) | Method for operating a computer arrangement | |
EP1331789B1 (en) | Central configuration of active devices in a network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R005 | Application deemed withdrawn due to failure to request examination |
Effective date: 20111216 |