DE102016200322A1 - Verfahren und System zur Informationsübermittlung - Google Patents

Verfahren und System zur Informationsübermittlung Download PDF

Info

Publication number
DE102016200322A1
DE102016200322A1 DE102016200322.4A DE102016200322A DE102016200322A1 DE 102016200322 A1 DE102016200322 A1 DE 102016200322A1 DE 102016200322 A DE102016200322 A DE 102016200322A DE 102016200322 A1 DE102016200322 A1 DE 102016200322A1
Authority
DE
Germany
Prior art keywords
component
data structure
data
information
procedure
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE102016200322.4A
Other languages
English (en)
Inventor
Rainer Baumgaertner
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102016200322.4A priority Critical patent/DE102016200322A1/de
Priority to JP2018536381A priority patent/JP2019505044A/ja
Priority to EP16797817.0A priority patent/EP3403149A1/de
Priority to PCT/EP2016/077346 priority patent/WO2017121513A1/de
Priority to US16/069,649 priority patent/US20190012355A1/en
Priority to CN201680078880.1A priority patent/CN108463781A/zh
Publication of DE102016200322A1 publication Critical patent/DE102016200322A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/465Distributed object oriented systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • G05B19/40Open loop systems, e.g. using stepping motor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30025Format conversion instructions, e.g. Floating-Point to Integer, decimal conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/4493Object persistence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2637Vehicle, car, auto, wheelchair
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system

Abstract

Ein Verfahren zum Übermitteln von Informationen umfasst Schritte des Anordnens von Informationen in einer Datenstruktur, des Übermittelns der Datenstruktur von einer ersten Komponente an eine zweite Komponente mittels einer Transportkomponente und des Umwandelns der Datenstruktur in ein erstes Objekt, das einen vorbestimmten abstrakten Datentyp implementiert. Dabei umfasst die Datenstruktur einen Hinweis zu seiner Umwandlung in das erste Objekt.

Description

  • Die Erfindung betrifft die Übermittlung von Informationen. Insbesondere betrifft die Erfindung die Übermittlung von strukturierten Informationen auf einem Datenbus eines Kraftfahrzeugs.
  • Stand der Technik
  • An Bord eines Kraftfahrzeugs ist ein Datenbus vorgesehen, um unterschiedliche Komponenten miteinander zu koppeln. Eine erste Komponente kann einen Sensor und eine zweite Komponente ein Steuergerät umfassen, wobei der Sensor dem Steuergerät bestimmte Informationen zur Verfügung stellt. Dazu kann der Sensor die Informationen in einer vorbestimmten Datenstruktur zusammenfassen und über den Datenbus an das Steuergerät übermitteln.
  • Klassischerweise umfasst die Datenstruktur eine geordnete Abfolge vorbestimmter Datenfelder. Die einzelnen Datenfelder haben jeweils eine vorbestimmte Menge und folgen unmittelbar aufeinander. Gegebenenfalls sind noch besondere Felder für eine Prüfsumme, eine Sequenznummer oder andere Zwecke vorgesehen. Sowohl das Bilden der Datenstruktur seitens des Sensors als auch das Analysieren der Datenstruktur seitens der Steuervorrichtung erfolgen üblicherweise jeweils mittels eines Verfahrens, das auf der Basis einer Spezifikation erstellt wurde. Die Spezifikation muss üblicherweise für einen Menschen verständlich sein, sodass die Verfahren erstellt und überprüft werden können. Dabei ergeben sich häufig Missverständnisse, sodass die Verfahren des Sensors und des Steuergeräts unter Umständen nicht miteinander kompatibel sind. Das Auffinden einer solchen Inkompatibilität kann aufwendig sein.
  • Der vorliegenden Erfindung liegt daher die Aufgabe zugrunde, eine Technik anzugeben, mittels derer Informationen zwischen einer ersten und einer zweiten Komponente insbesondere an Bord eines Kraftfahrzeugs verbessert ausgetauscht werden können. Die Erfindung löst diese Aufgabe mittels eines Verfahrens, eines Computerprogrammprodukts und eines Systems mit den Merkmalen der unabhängigen Ansprüche. Unteransprüche geben bevorzugte Ausführungsformen wieder.
  • Offenbarung der Erfindung
  • Ein Verfahren zum Übermitteln von Informationen umfasst Schritte des Anordnens von Informationen in einer Datenstruktur, des Übermittelns der Datenstruktur von einer ersten Komponente an eine zweite Komponente mittels einer Transportkomponente und des Umwandelns der Datenstruktur in ein erstes Objekt, das einen vorbestimmten abstrakten Datentyp implementiert. Dabei umfasst die Datenstruktur einen Hinweis zu seiner Umwandlung in das erste Objekt.
  • Dadurch ist es möglich, die Datenstruktur nicht länger als bloße Aneinanderreihung von festen Datentypen, sondern flexibel zu gestalten. Ein Interpretationsspielraum kann dadurch verringert sein. Die Kompatibilität der ersten Komponente mit der zweiten Komponente kann verbessert sein. Die Spezifikation, welcher Hinweis mit welcher Abfolge von Informationen innerhalb der Datenstruktur gekoppelt ist, muss nicht länger von einem Menschen bzw. einem Programmierer interpretiert werden. Vielmehr können das Anordnen von Informationen in der Datenstruktur und das Entnehmen von Informationen aus der Datenstruktur automatisiert mit Bezug auf den Hinweis erfolgen. Mittels des vorgeschlagenen Ansatzes können die Informationen während der Übertragung zwischen den Komponenten verbessert gekapselt sein. Außerdem kann ein Missbrauch der übermittelten Datenstrukturen seitens einer dritten Stelle erschwert werden, die den Zusammenhang zwischen dem Hinweis und der vorgeschlagenen Umwandlung nicht kennt.
  • Der abstrakte Datentyp kann insbesondere einen Verbund von Daten zusammen mit der Definition aller zulässigen Operationen, die auf die Daten zugreifen, umfassen. Eine Applikation seitens der zweiten Komponente kann so unmittelbar auf einem Objekt arbeiten. Die objektorientierte Programmierweise ist in vielen Bereichen bereits etabliert und das Übermitteln von Objekten, die Informationen umfassen, kann diesen Ansatz unterstützen.
  • Das Objekt kann einen Zugriff auf die Informationen ausschließlich mittels einer oder mehrerer vorgesehener Methoden erlauben. Dabei kann auch eine Zugriffssteuerung implementiert sein, die lediglich einer vorbestimmten zweiten Komponente den Zugriff auf eine vorgestimmte Methode erlaubt. Ein Missbrauch von Informationen kann so verhindert werden. Ideen oder Inhalte, auf die sich die Informationen beziehen, können so verbessert geschützt werden. Beispielsweise können unterschiedliche Hersteller Komponenten an Bord des Kraftfahrzeugs herstellen, die mittels der Transportkomponente miteinander kommunizieren können, wobei Informationen spezifisch ausgetauscht werden können, ohne einen beliebigen Zugriff zu erlauben.
  • Es ist besonders bevorzugt, dass die Datenstruktur eine Beschreibung des Objekts umfasst. Die Beschreibung kann beispielsweise in einer bekannten Beschreibungssyntax verfasst sein, beispielsweise mittels ASN.1 oder in einer XML-Variante.
  • In noch einer weiter bevorzugten Ausführungsform umfasst die Datenstruktur das Objekt in einer serialisierten Form. Dabei kann das Objekt samt seiner Methoden in der Datenstruktur abgebildet sein. In einer Ausführungsform kann auch eine Implementation einer Methode Teil des serialisierten Objekts sein. Dadurch können beispielsweise Änderungen an der Datenstruktur seitens der ersten Komponente transparent auf die zweite Komponente übertragen werden.
  • Es ist besonders bevorzugt, dass die Datenstruktur dazu eingerichtet ist, in ein zweites Objekt umgewandelt zu werden, das einen vorbestimmten abstrakten Datentyp implementiert, und sich das zweite Objekt vom ersten Objekt unterscheidet. Insbesondere kann das zweite Objekt eine Erweiterung des ersten Objekts sein. Sollte beispielsweise die erste Komponente zusätzliche Fähigkeiten erwerben, so kann sie die Datenstruktur erweitern, wobei eine ältere zweite Komponente auf der Basis der Datenstruktur unverändert das erste Objekt und eine neuere zweite Komponente auf der Basis der gleichen Datenstruktur ein zweites Objekt bereitstellen kann, wobei das zweite Objekt zusätzliche Methoden, Formate, Eigenschaften oder Merkmale gegenüber dem zweiten Objekt aufweist. Anders ausgedrückt kann das zweite Objekt rückwärtskompatibel zum ersten Objekt sein. Ein Versionsmanagement von Komponenten in einem System, insbesondere an Bord eines Kraftfahrzeugs, kann dadurch massiv vereinfacht werden. Insbesondere ist es möglich, eine der Komponenten zu erneuern, ohne eine andere erneuern zu müssen.
  • Ein Computerprogrammprodukt umfasst Programmcodemittel zur Durchführung des oben beschriebenen Verfahrens, wenn das Computerprogrammprodukt auf einer Verarbeitungseinrichtung abläuft oder auf einem computerlesbaren Datenträger gespeichert ist.
  • Ein System, insbesondere an Bord eines Kraftfahrzeugs, umfasst eine erste und eine zweite Komponente, die mittels einer Transportkomponente miteinander verbunden sind. Die erste Komponente ist dazu eingerichtet, Informationen in einer Datenstruktur anzuordnen und die Datenstruktur an die Transportkomponente zu übergeben, wobei die Transportkomponente den Transport der Datenstruktur erlaubt. Die zweite Komponente ist dazu eingerichtet, die Datenstruktur von der Datenverbindung zu übernehmen, wobei die zweite Komponente einen Umsetzer umfasst, der dazu eingerichtet ist, eine übernommene Datenstruktur in ein erstes Objekt umzuwandeln, das einen vorbestimmten abstrakten Datentyp implementiert.
  • Der Umsetzer kann beispielsweise als Bibliotheksfunktion (Library) bereitgestellt sein. Wird die erste, sendende Komponente verändert, sodass die Datenstruktur ein anderes Format aufweist, so kann auch ein zugehöriger Umsetzer bereitgestellt werden, um in der zweiten Komponente verwendet zu werden. Ein Hersteller der ersten Komponente kann beispielsweise Umsetzer in Bibliotheksform unterschiedlichen Herstellern unterschiedlicher zweiten Komponenten bereitstellen, sodass die Implementation der zweiten Komponenten im Wesentlichen auf den Zugriff auf Objekte beschränkt ist. Der tatsächliche Transport von Informationen bzw. Datenstrukturen kann für die zweite Komponente vollständig transparent erfolgen. Umgekehrt kann die Umsetzung von Informationen in die Datenstruktur und wieder zurück in Informationen vollständig seitens des ersten Herstellers kontrolliert werden, ohne dass er sich mit der Verarbeitung der Informationen seitens der zweiten Komponenten befassen muss. Die Zusammenarbeit zwischen Komponenten und zwischen deren Herstellern kann so verbessert werden. Eine Funktionssicherheit für das System kann erhöht sein. Testzyklen können verkürzt sein.
  • Es ist besonders bevorzugt, dass die erste Komponente einen Sensor, die zweite Komponente ein Steuergerät oder die Transportkomponente einen Datenbus umfasst. In einer anderen Ausführungsform umfassen beide Komponenten jeweils ein Steuergerät. In einer weiteren Variante kann die erste Komponente auch einen Aktuator umfassen, der beispielsweise als „intelligenter Aktuator“ eine entsprechende Kommunikations- und Verarbeitungsfähigkeit umfassen kann. Der Aktuator kann etwa ein Motorsteuergerät, ein Lenkungssteuergerät oder ein Bremssteuergerät umfassen. In noch einer weiteren Variante sind eine oder mehrere der Komponenten als Software definiert und können auf der gleichen Ausführungs- bzw. Verarbeitungseinrichtung ablaufen. Beispielsweise können die Komponenten Programme umfassen, die unabhängig voneinander ablaufen und mittels der Datenstrukturen miteinander kommunizieren können. Die Richtung, in der Informationen zwischen den Komponenten übermittelt werden, ist beliebig wählbar.
  • Kurze Beschreibung von Ausführungsformen
  • Die Erfindung wird nun mit Bezug auf die beigefügten Figuren genauer beschrieben, in denen:
  • 1 ein System und ein Verfahren; und
  • 2 eine Komponente des Systems von 1
    darstellt.
  • Genaue Beschreibung von Ausführungsbeispielen
  • 1 zeigt ein System 100, insbesondere für den Einsatz an Bord eines Kraftfahrzeugs. Das System 100 umfasst eine erste Komponente 105, eine zweite Komponente 110, optional eine dritte Komponente 115 und eine Transportkomponente 120 zur Verbindung der Komponenten 105 bis 115. Die erste Komponente 105 kann insbesondere einen Sensor umfassen, der mit einer Abtasteinrichtung 125 zur Erfassung eines Objekts 130 gekoppelt ist. Beispielsweise kann die Abtasteinrichtung 125 einen Radar- oder Lidarsensor umfassen und das Objekt 130 kann beispielsweise eine Person oder ein Kraftfahrzeug umfassen. In einer anderen Ausführungsform kann die erste Komponente 105 jedoch beispielsweise auch ein Steuergerät umfassen.
  • Die zweite Komponente 110 und die dritte Komponente 115 sind bevorzugterweise jeweils durch eine Steuereinrichtung bzw. ein Steuergerät gebildet. Die zweite Komponente 110 kann beispielsweise zur Implementation eines Geschwindigkeitsassistenten (ACC, Adaptive Cruise Control) und die dritte Komponente 115 zur Implementation eines Parkassistenten vorgesehen sein. Derartige Funktionalitäten sind auch als Middleware bekannt, die auf eine bestehende Infrastruktur, die insbesondere Hardware umfasst, aufbaut, und Teile eines übergeordneten Steuermechanismus, etwa einer autonomen Steuerung des Kraftfahrzeugs, dienen können. Beide Steuergeräte 110, 115 können auf Informationen des Sensors 105 zurückgreifen, wobei unterschiedliche Informationsbedürfnisse vorliegen können.
  • Jede der Komponenten 105 bis 115 umfasst eine Funktionskomponente 135 und einen Umsetzer 140. Die Funktionskomponente 135 implementiert üblicherweise nur die Funktionalität, die zur Verarbeitung von Informationen erforderlich ist, ohne sich um einen Transport von Informationen zu kümmern. Die Umsetzer 140 dienen dazu, die Übermittlung von Informationen über die Transportkomponente 120 zu ermöglichen.
  • Es wird vorgeschlagen, Informationen zwischen der ersten Komponente 105 und einer der beiden Komponenten 110 und 115 mittels einer Datenstruktur durchzuführen, die es den Umsetzern 140 in der zweiten Komponente 110 oder der dritten Komponente 115 erlaubt, die übermittelten Informationen jeweils in Form eines Objekts 130 den Funktionskomponenten 135 bereitzustellen, wobei das Objekt 130 jeweils einen abstrakten Datentyp implementiert.
  • Insbesondere wird vorgeschlagen, in einem Verfahren 150 Informationen 155 in einem Schritt 160 in einer Datenstruktur 165 anzuordnen, in einem Schritt 170 mittels der Transportkomponente 120 zu übermitteln und in einem Schritt 175 in ein erstes Objekt 180 oder ein zweites Objekt 185 umzuwandeln. Dabei ist bevorzugt, dass das zweite Objekt 185 eine Erweiterung des ersten Objekts 180 ist. Beide Objekte 180, 185 umfassen eine Anzahl vorbestimmter Eigenschafen oder Methoden 190. Das zweite Objekt 185 umfasst bevorzugterweise wenigstens eine zusätzliche oder erweiterte Methode 190. Die bereitgestellten Objekte 180, 185 werden bevorzugterweise den Funktionskomponenten 135 der Komponenten 110, 115 bereitgestellt.
  • Der Umsetzer 135 kann in unterschiedlichen Modi arbeiten, die auch gleichzeitig angeboten werden können. In einem ersten Modus wir eine Abwärtskompatibilität hergestellt, indem das erste Objekt 180 im Wesentlichen eine bekannte Abfolge (struct) von Basistypen (z. B. int, float, bool) ist. Es wird das erste Objekt 180 oder eine Referenz auf das erste Objekt 180 bereitgestellt. In einem zweiten Modus wird das erste Objekt 180 mit Zugriffsmethoden bereitgestellt, wobei die Zugriffsmethoden auf Elemente der bekannten Abfolge realisiert sind. Das versteckte Interface wird als detailliertes Dateninterface mit objektorientiertem Zugriff realisiert. In einem dritten Modus erfolgt ein objektorientierter Zugriff mit verstecktem Dateninterface. In einem vierten Modus ist zusätzlich eine Verschlüsselung vorgesehen, sodass der Zugriff auf die Methoden des ersten Objekts 180 vor Missbrauch geschützt sind. Weitere Modi können ebenfalls realisiert werden.
  • Die Datenstruktur 165 ist bevorzugterweise so gewählt, dass sie einen Hinweis darauf enthält, wie die Datenstruktur 165 in das Objekt 180 oder 185 umzuwandeln ist. In einer einfachen Ausführungsform kann hierzu eine Versionsnummer angegeben sein. In einer bevorzugten Ausführungsform umfasst der Hinweis 195 weitergehende Informationen, insbesondere bezüglich wenigstens einer der Methoden 190. In noch einer weiteren Ausführungsform kann der Hinweis 195 auch eine vollständige Definition einer der Methoden 190 umfassen. Das Objekt 180 oder 185 kann in einer weiteren Ausführungsform in der Datenstruktur 165 vollständig linearisiert vorliegen. Dabei können alle Eigenschaften des Objekts 180, 185 einschließlich der Methoden 190 in einer vorbestimmten Beschreibungsform angegeben sein. In einer Ausführungsform sind auch die Informationen 155 beigefügt.
  • In obigem Beispiel des Sensors 105, der Informationen 155 an die erste Komponente 105 des Systems 100 übermittelt, können beispielsweise Entfernungsmessungen zum Objekt 130, die mittels der Abtasteinrichtung 125 bestimmt wurden, als Informationen 155 in der Datenstruktur 165 angeordnet werden. Dann wird die Datenstruktur 165 zur ersten Komponente 105 übermittelt und dort mittels des Umsetzers 140 in das erste Objekt 180 umgewandelt. Der Umsetzer 140 kann in einer Ausführungsform durch einen Hersteller des Sensors 105 bereitgestellt sein, sodass sichergestellt ist, dass das erste Objekt 180 in einer vorbestimmten Weise zur Datenstruktur 165 und zu den Informationen 155 passt. Das erste Objekt 180 kann dann von der Funktionskomponente 135 der ersten Komponente 105 verwendet werden, um beispielsweise zu bestimmen, ob eine Längsgeschwindigkeit des Fahrzeugs, an Bord dessen das System 100 installiert ist, verringert werden muss, um die Gefahr eines Auffahrens auf das Objekt 130 zu verringern.
  • In der gleichen Weise kann auch die dritte Komponente 115 Datenstrukturen 165 empfangen, die mittels des Umsetzers 140 in das erste Objekt 180 umgewandelt werden können. Sollte nun die erste Komponente 105 verändert werden, beispielsweise indem eine im Nahbereich verbessert auflösende Abtasteinrichtung 125 verwendet wird, so kann es vorteilhaft sein, die Datenstruktur 165 anzupassen, um die genaueren Informationen 155 der dritten Komponente 115 bereitzustellen. Es wird vorgeschlagen, dass die Datenstruktur 165 derart angepasst wird, dass sie wie zuvor in das erste Objekt 180 umgewandelt werden kann, zusätzlich jedoch die Möglichkeit besteht, es in das zweite Objekt 185 umzuwandeln, das bevorzugterweise abwärtskompatibel zum ersten Objekt 180 ist. Beispielsweise kann eine zusätzliche Methode 190 bereitgestellt werden, die die Abfrage einer Entfernung zum Objekt 130 mit einer verbesserten Genauigkeit, beispielsweise in der Einheit Zentimeter statt in der Einheit Meter, erlaubt. Die ursprünglichen Methoden 190 des ersten Objekts 180 werden hierbei bevorzugterweise nicht verändert. Bevorzugterweise wird auch der Umsetzer 140 für die dritte Komponente 115 seitens des Herstellers der ersten Komponente 105 bereitgestellt. Die Funktionskomponente 135 der dritten Komponente 115 kann dann objektorientiert auf der Basis des zweiten Objekts 185 arbeiten, ohne von den Einschränkungen des ersten Objekts 180 betroffen zu sein.
  • Mittels der vorgeschlagenen Technologie ist es möglich, die Komponenten 105 bis 115 von unterschiedlichen Herstellern zu beziehen und die Zuständigkeit für eine korrekte Übermittlung der Informationen 155 bzw. die korrekte Bereitstellung von Objekten 180, 185 an einen der Hersteller zu delegieren. Ein Zusammenarbeiten von Entwicklungsabteilungen unterschiedlicher Hersteller, um die korrekte Übermittlung von Informationen 155 zu ermöglichen, kann nicht mehr erforderlich sein. Dadurch kann insbesondere vermieden werden, dass eine für einen Menschen verständliche Spezifikation des Datenformats der Datenstruktur 165 von unterschiedlichen Personen seitens der unterschiedlichen Hersteller verschieden interpretiert wird.
  • 2 zeigt eine Komponente 110, 115 des Systems 100 von 1. Die Komponente 110, 115 empfängt von der Transportkomponente 120 eine Datenstruktur 165, die im rechten Bereich von 2 exemplarisch ansatzweise dargestellt ist. Der Umsetzer 140 ist bevorzugterweise als Bibliothek bereitgestellt. Dazu kann ein Hersteller der ersten Komponente 105 beispielsweise eine Bibliothek oder ein lauffähiges Binärprogramm bereitstellen, das den Umsetzer 140 seitens der zweiten Komponente 110 oder der dritten Komponente 115 implementiert. Der Umsetzer 140 stellt auf der Basis der Datenstruktur 165 ein Objekt 180, 185 bereit, das einen vorbestimmten abstrakten Datentyp implementiert. Der abstrakte Datentyp umfasst einen Verbund von Daten (Informationen) zusammen mit der Definition aller zulässigen Operationen, die auf die Daten zugreifen. Ein Fragment eines Beispiels für eine Struktur eines Objekts 180, 185 ist im rechten Bereich von 2 dargestellt.
  • Das bereitgestellte Objekt 180, 185 kann dann der Funktionskomponente 135 bereitgestellt werden, die höher abstrahierte Ziele verfolgt, wie im obigen Beispiel eine Längssteuerung des Kraftfahrzeugs im Fall des Geschwindigkeitsassistenten auf der zweiten Komponente 110 oder eine beispielsweise akustische oder haptische Abstandswarnung im Fall des Parkassistenten auf der dritten Komponente 115.

Claims (10)

  1. Verfahren (150) zum Übermitteln von Informationen, wobei das Verfahren (150) folgende Schritte umfasst: – Anordnen (160) von Informationen (155) in einer Datenstruktur (165); – Übermitteln (170) der Datenstruktur (165) von einer ersten Komponente (105) an eine zweite Komponente (110) mittels einer Transportkomponente (120); und – Umwandeln (175) der Datenstruktur (165) in ein erstes Objekt (180), das einen vorbestimmten abstrakten Datentyp implementiert, – wobei die Datenstruktur (165) einen Hinweis (195) zu seiner Umwandlung in das erste Objekt (180) umfasst.
  2. Verfahren (150) nach Anspruch 1, wobei der abstrakte Datentyp einen Verbund von Daten zusammen mit der Definition aller zulässigen Operationen, die auf die Daten zugreifen, umfasst.
  3. Verfahren (150) nach Anspruch 1 oder 2, wobei das erste Objekt (180) einen Zugriff auf die Informationen (155) ausschließlich mittels einer oder mehrerer vorgesehener Methoden (190) erlaubt.
  4. Verfahren (150) nach einem der vorangehenden Ansprüche, wobei die Datenstruktur (165) eine Beschreibung des Objekts (180, 185) umfasst.
  5. Verfahren (150) nach einem der vorangehenden Ansprüche, wobei die Datenstruktur (165) das Objekt (180, 185) in einer serialisierten Form umfasst.
  6. Verfahren (150) nach einem der vorangehenden Ansprüche, wobei die Datenstruktur (165) dazu eingerichtet ist, in ein zweites Objekt (185) umgewandelt zu werden, das einen vorbestimmten abstrakten Datentyp implementiert, und sich das zweite Objekt (185) vom ersten Objekt (180) unterscheidet.
  7. Verfahren (150) nach Anspruch 6, wobei das zweite Objekt (185) eine Erweiterung des ersten Objekts (180) ist.
  8. Computerprogrammprodukt mit Programmcodemitteln zur Durchführung des Verfahrens (150) nach einem der vorangehenden Ansprüche, wenn das Computerprogrammprodukt auf einer Verarbeitungseinrichtung (105, 110, 115) abläuft oder auf einem computerlesbaren Datenträger gespeichert ist.
  9. System (100), umfassend: – eine erste (105) und eine zweite Komponente (110), die mittels einer Transportkomponente (120) miteinander verbunden sind; – wobei die erste Komponente (105) dazu eingerichtet ist, Informationen (155) in einer Datenstruktur (165) anzuordnen und die Datenstruktur (165) an die Transportkomponente (120) zu übergeben, – wobei die Transportkomponente (120) den Transport der Datenstruktur (165) erlaubt; – wobei die zweite Komponente (110) dazu eingerichtet ist, die Datenstruktur (165) von der Datenverbindung (120) zu übernehmen, – wobei die zweite Komponente (110) einen Umsetzer (140) umfasst, der dazu eingerichtet ist, eine übernommene Datenstruktur (165) in ein erstes Objekt (180) umzuwandeln, das einen vorbestimmten abstrakten Datentyp implementiert.
  10. System (100) nach Anspruch 9, wobei die erste Komponente (105) einen Sensor, die zweite Komponente (110) ein Steuergerät oder die Transportkomponente (120) einen Datenbus umfasst.
DE102016200322.4A 2016-01-13 2016-01-13 Verfahren und System zur Informationsübermittlung Withdrawn DE102016200322A1 (de)

Priority Applications (6)

Application Number Priority Date Filing Date Title
DE102016200322.4A DE102016200322A1 (de) 2016-01-13 2016-01-13 Verfahren und System zur Informationsübermittlung
JP2018536381A JP2019505044A (ja) 2016-01-13 2016-11-10 情報を伝達するための方法およびシステム
EP16797817.0A EP3403149A1 (de) 2016-01-13 2016-11-10 Verfahren und system zur informationsübermittlung
PCT/EP2016/077346 WO2017121513A1 (de) 2016-01-13 2016-11-10 Verfahren und system zur informationsübermittlung
US16/069,649 US20190012355A1 (en) 2016-01-13 2016-11-10 Process and system for transmitting information
CN201680078880.1A CN108463781A (zh) 2016-01-13 2016-11-10 用于信息传送的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102016200322.4A DE102016200322A1 (de) 2016-01-13 2016-01-13 Verfahren und System zur Informationsübermittlung

Publications (1)

Publication Number Publication Date
DE102016200322A1 true DE102016200322A1 (de) 2017-07-13

Family

ID=57345905

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016200322.4A Withdrawn DE102016200322A1 (de) 2016-01-13 2016-01-13 Verfahren und System zur Informationsübermittlung

Country Status (6)

Country Link
US (1) US20190012355A1 (de)
EP (1) EP3403149A1 (de)
JP (1) JP2019505044A (de)
CN (1) CN108463781A (de)
DE (1) DE102016200322A1 (de)
WO (1) WO2017121513A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11237832B2 (en) 2019-11-29 2022-02-01 Dspace Digital Signal Processing And Control Engineering Gmbh Module with a serialization unit and improved compatibility with deserialization units of different series

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017217663A1 (de) * 2017-10-05 2019-04-11 Bayerische Motoren Werke Aktiengesellschaft Analyse einer Datenstruktur

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08161208A (ja) * 1994-12-08 1996-06-21 Fujitsu Ltd オブジェクト構造変換装置
US6496871B1 (en) * 1998-06-30 2002-12-17 Nec Research Institute, Inc. Distributed agent software system and method having enhanced process mobility and communication in a computer network
US7149965B1 (en) * 1999-08-10 2006-12-12 Microsoft Corporation Object persister
EP1290547B1 (de) * 2000-05-09 2004-01-07 Sun Microsystems, Inc. Transformation von objekten zwischen einer rechnerprogrammiersprache und einer daten-darstellungssprache
US7197512B2 (en) * 2003-03-26 2007-03-27 Microsoft Corporation Type bridges
DE102005014782A1 (de) * 2005-03-31 2006-10-05 Siemens Ag Verfahren und Vorrichtung zum Übertragen von Daten auf einer Datenleitung zwischen einem Steuergerät und einem dezentralen Datenverarbeitungsgerät
CN100458793C (zh) * 2007-05-10 2009-02-04 浪潮集团山东通用软件有限公司 数据访问层Xml格式数据与关系数据间的映射转换方法
US7885292B2 (en) * 2008-02-11 2011-02-08 International Business Machines Corporation Method, system, and computer program product for data exchange
US8495630B2 (en) * 2010-11-03 2013-07-23 International Business Machines Corporation Transferring objects between virtual machines
DE102010043722A1 (de) * 2010-11-10 2012-05-10 Robert Bosch Gmbh Verfahren zur Steuerung einer Informationsausgabe
DE102013217772A1 (de) * 2013-09-05 2015-03-05 Robert Bosch Gmbh Daten- und/oder Kommunikationsgerät sowie Verfahren zu dessen Steuerung
US9727567B2 (en) * 2015-03-25 2017-08-08 Ca, Inc. Transferring data using a data bridge structure

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11237832B2 (en) 2019-11-29 2022-02-01 Dspace Digital Signal Processing And Control Engineering Gmbh Module with a serialization unit and improved compatibility with deserialization units of different series

Also Published As

Publication number Publication date
EP3403149A1 (de) 2018-11-21
US20190012355A1 (en) 2019-01-10
CN108463781A (zh) 2018-08-28
JP2019505044A (ja) 2019-02-21
WO2017121513A1 (de) 2017-07-20

Similar Documents

Publication Publication Date Title
DE102017104830A1 (de) Softwareverwaltungssystem für ein fahrzeug, verwaltungsserver und fahrzeug
DE102017125662A1 (de) System und verfahren zum bestimmen eines anhängewinkels basierend auf einer eingabe von einem sensor und einem kinematischen modell eines fahrzeugs und eines anhängers und zum steuern des fahrzeugs basierend auf dem anhängewinkel
EP3571553B1 (de) Verfahren zum test einer steuergerätefunktion eines steuergeräts eines fahrzeugs
DE102013218678A1 (de) Entwurfssystem und Verfahren zum Entwurf eines Fahrerassistenzsystems
EP3552062B1 (de) Verfahren zum bereitstellen von sensorbasierten fahrzeugfunktionen in einem kraftfahrzeug sowie kraftfahrzeug-recheneinrichtung und kraftfahrzeug
DE102018219976A1 (de) Vorrichtung und Verfahren zur Warnung eines Fahrers eines Fahrzeugs
DE102019127062A1 (de) Transportinfrastrukturkommunikation und -steuerung
DE102016200322A1 (de) Verfahren und System zur Informationsübermittlung
DE102020119083A1 (de) Abgrenzungsdefinition eines erkannten objekts
WO2003050679A2 (de) Transformation von objektbäumen, insbesondere in mes-systemen
DE102021101225A1 (de) Autonomes Fahrzeug und Verfahren zu dessen Betrieb
DE102018219070B3 (de) Übertragen eines Datensatzes und Bereitstellen einer Datenübertragungsinformation
DE102019214482A1 (de) Verfahren zum sicheren zumindest teilautomatisierten Führen eines Kraftfahrzeugs
EP3475772B1 (de) Verfahren zum bereitstellen von aktuatorbasierten fahrzeugfunktionen in einem kraftfahrzeug sowie kraftfahrzeug-recheneinrichtung und kraftfahrzeug
DE102020215657A1 (de) Verfahren und System zum Testen eines Steuergeräts eines Fahrzeugs
DE102016223526A1 (de) Verfahren und Vorrichtung zum Bestimmen einer ersten hochgenauen Position eines Fahrzeugs
DE112018002344T5 (de) Entwicklungsunterstützungsvorrichtung
WO2024013146A1 (de) Verfahren zum steuern eines fahrzeugs
EP1149353B1 (de) Verfahren zur übertragung von simulationsmodellen zwischen simulatoren
EP3324257B1 (de) Verfahren und system zum betrieb technischer geräte der automatisierungstechnik
DE102022001265A1 (de) Verfahren, elektronisches Rechensystem und Computerprogramm zur Zuordnung von fusionierten Objektdarstellungen aus zwei unterschiedlichen Fusionsverfahren
DE102021212681A1 (de) Verfahren zum zumindest teilautomatisierten Führen eines Kraftfahrzeugs
WO2015177226A1 (de) Verfahren zum erzeugen einer hypervisor-einheit für eingebettete systeme
DE102021212489A1 (de) Verfahren zum Überwachen eines Bereichs eines Parkplatzes
DE102019119084A1 (de) Bestimmen eines Signalstatus einer Lichtsignalanlage

Legal Events

Date Code Title Description
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee