DE102023107070A1 - Kompatibilität von fahrzeugsoftware - Google Patents

Kompatibilität von fahrzeugsoftware Download PDF

Info

Publication number
DE102023107070A1
DE102023107070A1 DE102023107070.3A DE102023107070A DE102023107070A1 DE 102023107070 A1 DE102023107070 A1 DE 102023107070A1 DE 102023107070 A DE102023107070 A DE 102023107070A DE 102023107070 A1 DE102023107070 A1 DE 102023107070A1
Authority
DE
Germany
Prior art keywords
feature
ecus
vehicle
central gateway
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.)
Pending
Application number
DE102023107070.3A
Other languages
English (en)
Inventor
Karl Nathan Clark
Jason Michael Miller
John Cardillo
Vijayababu Jayaraman
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.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies LLC
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 Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Publication of DE102023107070A1 publication Critical patent/DE102023107070A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • G06V40/1365Matching; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0739Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/64Retargetable
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Small-Scale Networks (AREA)

Abstract

Es ist ein Verfolgen einer Steuerungskonfiguration bereitgestellt. Es wird eine Abfrage von Merkmalscodes, die auf Elemente der Funktionalität hinweisen, die durch die jeweilige ECU umgesetzt werden, von jeder ECU einer Vielzahl von ECUs vorgenommen. Jeder der Merkmalscodes entspricht einer Sollmenge an ECUs, die an der Umsetzung der Funktionalität beteiligt sind. Eine Warnung wird als Reaktion darauf angegeben, dass das Abfragen eine andere Menge an ECUs, welche die Funktionalität umsetzen, als die Sollmenge zurückgibt.

Description

  • GEBIET DER TECHNIK
  • Die veranschaulichenden Ausführungsformen betreffen im Allgemeinen Verfahren und Einrichtungen zum Verfolgen von Fahrzeugkonfigurationen über den Fahrzeuglebenszyklus.
  • ALLGEMEINER STAND DER TECHNIK
  • Um eine Software-Version einer Komponente eines Fahrzeugs zu aktualisieren, kann das Fahrzeug zu einem Händler gefahren und durch einen Techniker gewartet werden. Der Techniker kann ein System nutzen, welches die einzelnen Software-Ebenen von jeder Komponente in dem Fahrzeug sowie verfügbare Software-Aktualisierungen verfolgt. Der Techniker kann die durch das System angegebenen Software-Aktualisierungen manuell anwenden und alle Änderungen in dem System aufzeichnen.
  • Kabellose (over-the-air - OTA) Software-Aktualisierungen sind eine Technik, durch welche die Software eines Fahrzeugs über eine drahtlose Verbindung aktualisiert werden kann. Unter Verwendung eines eingebetteten Modems oder einer anderen drahtlosen Datenverbindung zu dem Fahrzeug ermöglichen OTA-Aktualisierungen Änderungen an der Software von elektronischen Steuereinheiten (electronic control units - ECUs) des Fahrzeugs ohne einen Wartungsbesuch.
  • KURZDARSTELLUNG
  • In einer ersten veranschaulichenden Ausführungsform ist ein System zum Verfolgen einer Steuerungskonfiguration bereitgestellt. Das System beinhaltet ECUs und ein zentrales Gateway. Das zentrale Gateway ist dazu programmiert, Merkmalscodes, die auf Elemente der Funktionalität hinweisen, die durch die jeweilige ECU umgesetzt werden, von jeder ECU der ECUs abzufragen, wobei jeder Merkmalscode einer Sollmenge an ECUs entspricht, die an der Umsetzung der Funktionalität beteiligt sind, und als Reaktion darauf, dass die Abfrage eine andere Menge an ECUs, welche die Funktionalität umsetzen, zurückgibt als die Sollmenge, eine Warnung anzugeben.
  • In einer zweiten veranschaulichenden Ausführungsform ist ein Verfahren zum Verfolgen einer Steuerungskonfiguration bereitgestellt. Es wird eine Abfrage von Merkmalscodes, die auf Elemente der Funktionalität hinweisen, die durch die jeweilige ECU umgesetzt werden, von jeder ECU einer Vielzahl von ECUs vorgenommen. Jeder der Merkmalscodes entspricht einer Sollmenge an ECUs, die an der Umsetzung der Funktionalität beteiligt sind. Eine Warnung wird als Reaktion darauf angegeben, dass das Abfragen eine andere Menge an ECUs, welche die Funktionalität umsetzen, als die Sollmenge zurückgibt.
  • In einer dritten veranschaulichenden Ausführungsform beinhaltet ein nicht transitorisches computerlesbares Medium Anweisungen zum Verfolgen einer Steuerungskonfiguration, die bei Ausführung durch ein zentrales Gateway in Kommunikation über einen oder mehrere Busse mit einer Vielzahl von ECUs das zentrale Gateway dazu veranlassen, Vorgänge durchzuführen, einschließlich zum Abfragen von Merkmalscodes, die auf Elemente der Funktionalität hinweisen, die durch die jeweilige ECU umgesetzt werden, von jeder ECU der ECUs, wobei jeder Merkmalscode einer Sollmenge an ECUs entspricht, die an der Umsetzung der Funktionalität beteiligt sind; und Angeben einer Warnung als Reaktion darauf, dass die Abfrage eine andere Menge an ECUs, welche die Funktionalität umsetzen, zurückgibt als die Sollmenge.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
    • 1 veranschaulicht ein beispielhaftes System, das ein zentrales Gateway beinhaltet, das zur Verwendung beim Verfolgen von Fahrzeugkonfigurationen über den Fahrzeuglebenszyklus konfiguriert ist;
    • 2 veranschaulicht ein Beispiel für ein Merkmalswörterbuch des Fahrzeugs, das weitere Aspekte der Merkmalscodes veranschaulicht; und
    • 3A veranschaulicht ein Beispiel für Merkmalscodes für eine erste Version eines Merkmals über die ECUs des Fahrzeugs;
    • 3B veranschaulicht ein Beispiel für Merkmalscodes für eine zweite Version des Merkmals über die ECUs des Fahrzeugs;
    • 4 veranschaulicht einen beispielhaften Prozess zum Verfolgen von Fahrzeugkonfigurationen über den Fahrzeuglebenszyklus; und
    • 5 veranschaulicht eine beispielhafte Rechenvorrichtung zum Verfolgen von Fahrzeugkonfigurationen über den Fahrzeuglebenszyklus.
  • DETAILLIERTE BESCHREIBUNG
  • Den Anforderungen entsprechend sind in dieser Schrift detaillierte Ausführungsformen der vorliegenden Offenbarung offenbart; es versteht sich jedoch, dass die offenbarten Ausführungsformen lediglich beispielhaft für die Offenbarung sind, die in verschiedenen und alternativen Formen umgesetzt werden kann. Die Figuren sind nicht zwingend maßstabsgetreu; einige Merkmale können stark vergrößert oder verkleinert sein, um Details konkreter Komponenten zu zeigen. Daher sind in dieser Schrift offenbarte spezifische strukturelle und funktionelle Details nicht als einschränkend auszulegen, sondern lediglich als repräsentative Grundlage, um den Fachmann den vielfältigen Einsatz des vorliegenden Ansatzes zu lehren.
  • Das Ausgestalten von durch Software aktualisierten Merkmalen ist in der Fahrzeugumgebung komplex, da die Funktionalität über viele Fahrzeug-ECUs verteilt sein kann. Da ECU-Software unabhängig OTA oder in einer Wartungsumgebung aktualisiert werden kann, ist es wichtig, die Kompatibilität von Fahrzeug-Software während des gesamten Lebenszyklus des Produkts sicherzustellen. Zusätzlich zu OTA-Software-Verteilungen kann es bei Fahrzeugen von Zeit zu Zeit zum Austauschen von ECUs aufgrund von Reparaturen, Aufrüstungen, Arbeiten von Heimwerkern oder anderen Situationen kommen. Wenn Händler oder Werkstätten ECUs austauschen, können sie die geeignete Software und Konfigurationsparameter installieren, um die Kompatibilität mit anderen ECUs in dem Fahrzeug sicherzustellen. Einige Reparaturen können jedoch unter Verwendung einer Hardware-kompatiblen ECU von einem Donor-Fahrzeug durchgeführt werden, ohne dass verstanden wird, dass eine Software-Inkompatibilität vorliegen könnte. Aspekte der Offenbarung betreffen einen Ansatz zur Validierung kompatibler Fahrzeugsoftware. Diese Validierung kann in einem Beispiel als Reaktion auf das Auftreten des Zündzyklus durchgeführt werden.
  • 1 veranschaulicht ein beispielhaftes System 100, das ein zentrales Gateway 110 beinhaltet, das zur Verwendung beim Verfolgen von Fahrzeugkonfigurationen über den Fahrzeuglebenszyklus konfiguriert ist. Das zentrale Gateway 110 kann über einen oder mehrere Fahrzeugbusse 106 mit einer Vielzahl von ECUs 104 verbunden sein. Das zentrale Gateway 110 kann außerdem einen oder mehrere Diagnoseanschlüsse 108 beinhalten. Das zentrale Gateway 110 kann außerdem einen Prozessor 112, einen Arbeitsspeicher 114 und einen Datenspeicher 116 für Anwendungen und/oder Daten beinhalten. Wenngleich in 1 ein beispielhaftes System 100 gezeigt ist, sollen die beispielhaften Komponenten, wie veranschaulicht, nicht einschränkend sein. Tatsächliche kann das System 100 mehr oder weniger Komponenten aufweisen und können zusätzliche oder alternative Komponenten und/oder Umsetzungen verwendet werden.
  • Das Fahrzeug 102 kann verschiedene Arten von Kraftfahrzeugen, Softroadern (crossover utility vehicle - CUV), Geländewagen (sport utility vehicle - SUV), Trucks, Wohnmobilen (recreational vehicle - RV), Booten, Flugzeugen oder anderen mobilen Maschinen zum Befördern von Personen oder Gütern beinhalten. In vielen Fällen kann das Fahrzeug 102 durch eine Brennkraftmaschine mit Leistung versorgt werden. Als eine andere Möglichkeit kann das Fahrzeug 102 ein Hybridelektrofahrzeug (hybrid electric vehicle - HEV) sein, das sowohl durch eine Brennkraftmaschine als auch einen oder mehrere Elektromotoren mit Leistung versorgt wird. In einem anderen Beispiel kann das Fahrzeug 102 ein reines Elektrofahrzeug sein, das ausschließlich durch Elektromotoren angetrieben wird.
  • Das Fahrzeug 102 kann eine Vielzahl von ECUs 104 beinhalten, die dazu konfiguriert ist, mithilfe der Fahrzeugbatterie und/oder des Fahrzeugantriebsstrangs unterschiedliche Funktionen des Fahrzeugs 102 durchzuführen und zu managen. Wie dargestellt, werden die beispielhaften Fahrzeug-ECUs 104 als diskrete ECUs 104-A bis 104-H dargestellt. Die Fahrzeug-ECUs 104 können jedoch physische Hardware, Firmware und/oder Software gemein haben, sodass die Funktionalität von mehreren ECUs 104 in eine einzige ECU 104 integriert oder über eine Vielzahl von ECUs 104 verteilt sein kann. Die Fahrzeug-ECUs 104 können verschiedene Komponenten des Fahrzeugs 102 beinhalten, die dazu konfiguriert sind, Aktualisierungen assoziierter Software, Firmware oder Konfigurationseinstellungen zu empfangen.
  • Nicht einschränkende Bespiele für Fahrzeug-ECUs 104 sind folgende: ein Leistungsstrangsteuermodul (powertrain control module - PCM) 104-A kann dazu konfiguriert sein, Motor- und Getriebekomponenten zu steuern; eine Steuerung eines Antiblockierbremssystems (ABS-Steuerung) 104-B, die dazu konfiguriert ist, Brems- und Traktionssteuerkomponenten zu steuern; eine Steuerung einer elektrisch unterstützten Lenkung (electronic power-assisted steering - EPAS) 104-C, die dazu konfiguriert ist, Lenkunterstützung und Zug- oder Driftkompensationsfunktionen einzustellen; fortschrittliche Fahrerassistenzsysteme (driver assistance systems - ADAS) 104-D, wie etwa adaptive Geschwindigkeitsregelung oder automatisches Bremsen; und ein Scheinwerfersteuermodul (headlamp control module - HCM) 104-E, das dazu konfiguriert ist, Einstellungen zum Einschalten/Ausschalten von Leuchten zu steuern. Die ECUs 104 können außerdem Folgendes beinhaltet: andere Komponenten des Leistungsstrangs 104-F oder des Fahrgestells 104-D, ein Infotainment-System 104-H, das dazu konfiguriert ist, Sprachbefehle und BLUETOOTH-Schnittstellen mit dem Fahrer und Fahrermobilvorrichtungen zu unterstützen (z. B. das SYNC-System, das durch die Ford Motor Company in Dearborn, MI, bereitgestellt wird), eine Konnektivitätssteuerung 104-I, wie etwa eine Telematiksteuereinheit (telematics control unit - TCU), die dazu konfiguriert ist, ein eingebettetes Modem zu nutzen, um auf vernetzte Vorrichtungen zuzugreifen, die extern zu dem Fahrzeug 102 sind, elektromechanische Karosseriesteuerungen 104-J, wie etwa Fenster- oder Verriegelungsaktoren, und Komponenten einer Anhängersteuerung 104-K, wie etwa Leuchtensteuerung und Sensordaten, um verbundene Anhänger zu unterstützen.
  • Der Fahrzeugbus 106 kann verschiedene Kommunikationsverfahren beinhalten, die zwischen den Fahrzeug-ECUs 104 verfügbar sind. Der Fahrzeugbus 106 kann außerdem Kommunikation zwischen dem zentralen Gateway 110 und den Fahrzeug-ECUs 104 unterstützen. Als einige nicht einschränkende Beispiele kann der Fahrzeugbus 106 ein Controller Area Network (CAN) des Fahrzeugs, ein Ethernet-Netzwerk oder ein Media-Oriented-System-Transfer-Netzwerk (MOST-Netzwerk) sein. Das CAN-Netzwerk oder die CAN-Netzwerke können von verschiedener Art sein, darunter unter anderem Highspeed-CAN (HS-CAN), das eine Datenkapazität von bis zu 500 Kbit/s aufweist, Midspeed-CAN (MS-CAN), das eine Datenkapazität von bis zu 125 Kbit/s aufweist, und/oder CAN mit flexibler Datenrate (FD-CAN), das eine Datenkapazität von bis zu 2.000 Kbit/s oder mehr aufweist. Es ist anzumerken, dass die veranschaulichte Bustopologie lediglich ein Beispiel ist und eine andere Anzahl an und andere Anordnungen von Fahrzeugbussen 106 verwendet werden können. Diese Fahrzeugbusse 106 können als eine Reihe von Verdrahtungssegmenten umgesetzt sein. Zum Beispiel kann ein Fahrzeugbus 106 eine Vielzahl von Verdrahtungssegmenten von dem zentralen Gateway 110 zu einer Endstelle beinhalten.
  • Das Fahrzeug 102 kann ferner Diagnoseanschlüsse 108 beinhalten, die durch externe Vorrichtungen verwendet werden können, um den Status des Fahrzeugs 102 zu überwachen. In einem Beispiel kann der Diagnoseanschluss 108 ein bordeigener Diagnoseanschluss (onboard diagnostics port - OBD-Anschluss) sein, der mit dem Fahrzeugbus 106 verbunden ist. Ein Benutzer kann einen Dongle, eine Codelesevorrichtung oder andere Scanvorrichtung mit dem Diagnoseanschluss 108 verbinden und kann die durch den Diagnoseanschluss 108 bereitgestellte Verbindung verwenden, um sich Zugriff auf Nachrichten zu verschaffen, die den Fahrzeugbus 106 durchqueren. Sobald sie verbunden ist, kann ein Benutzer diese verbundene Scanvorrichtung nutzen, um Diagnosecodes zu erfassen, den Fahrzeugzustand zu überwachen oder in einigen Fällen Fahrzeugeinstellungen einzustellen. Ähnlich der Geschwindigkeit des HS-CAN können die CAN-Diagnoseanschlüsse 108 eine Datenkapazität von bis zu 500 Kbit/s unterstützen. In einem anderen Beispiel kann der Diagnoseanschluss 108 ein Diagnostic-over-Internet-Protocol-Anschluss (DoIP-Anschluss) 124 sein und kann Zugriff auf Nachrichten bereitstellen, die den Fahrzeugbus 106 über Ethernet anstatt über den OBD-Standard durchqueren. Ein DoIP-Anschluss 124 kann eine höhere Datenrate unterstützen als das CAN, da Ethernet unter Verwendung einer TCP/IP-Nutzlast von 64 Byte Datenraten von etwa ungefähr 45 Mbit/s unterstützen kann und bei Nutzlasten von 1460 Byte Datenraten von etwa 95 Mbit/s unterstützen kann.
  • Das zentrale Gateway 110 kann dazu konfiguriert sein, eine elektrische Schnittstelle zwischen den Fahrzeugbussen 106 bereitzustellen, die verwendet wird, um innerhalb des Fahrzeugs 102 zu kommunizieren. In einem Beispiel kann das zentrale Gateway 110 dazu konfiguriert sein, Signale und Befehle zwischen dem CAN und/oder den fahrzeuginternen Ethernet-Fahrzeugbussen 106, die mit dem zentrale Gateway 110 verbunden sind, zu übersetzen. Beispielsweise kann das zentrale Gateway 110 eine Verbindung von bis zu zehn CAN-Fahrzeugbussen 106 und bis zu sieben Ethernet-Fahrzeugbussen 106 unterstützen. Durch Unterstützten von Ethernet zusätzlich zu dem CAN kann das zentrale Gateway 110 dazu in der Lage sein, Unterstützung von fahrzeuginterner Netzwerkkommunikation mit höherer Geschwindigkeit bereitzustellen, während weiterhin bestehende Gateway-Funktionen oder Vorgänger-Gateway-Funktionen innerhalb des Fahrzeugs 102 durchgeführt werden.
  • Als ein spezifisches nicht einschränkendes Beispiel kann das zentrale Gateway 110 wie folgt verbunden sein: über einen HS-CAN-Fahrzeugbus 106 mit den Komponenten des Leistungsstrangs 104-F; über einen zweiten HS-CAN-Fahrzeugbus 106 mit den Komponenten des Fahrgestells 104-G, Sicherheitssystemen und einem Cluster; über einen dritten HS-CAN Fahrzeugbus 106 mit dem Infotainment-System 104-G; über einen vierten HS-CAN-Fahrzeugbus 106 mit der Konnektivität 104-1 und dem Ethernet-Sicherheitsbackupsystem; über einen ersten MS-CAN-Bus mit den elektromechanischen Karosseriesteuerungen 104-J; über einen zweiten MS-CAN-Fahrzeugbus 106 mit der Anhängersteuerung 104-K und/oder Knoten, auf die leicht von außerhalb des Fahrzeugs 102 zugegriffen werden kann; über eine erste und zweite Verbindung eines Diagnosedaten-Fahrzeugbusses 106 mit einem Diagnoseanschluss 108; über einen ersten FD-CAN-Fahrzeugbus 106 mit dem PCM 104-A, ABS 104-B, EPAS 104-C und anderen Steuerungen; und über einen zweiten FD-CAN-Fahrzeugbus 106 mit dem ADAS 104-D, HCM 104-E und anderen Steuerungen. Zum Beispiel sind das Infotainment-System 104-H, die Konnektivität 104-I, das Cluster 104-L, die Frontanzeige 104-M und das ADAS 104-D jeweils über getrennte 2-Draht-Ethernet-Busse 106 mit 100 Mbit/s mit dem zentralen Gateway 110 verbunden. In einem noch anderen Beispiel kann die Frontanzeige 104-M in das Cluster 104-L integriert sein.
  • Das zentrale Gateway 110 kann ferner dazu konfiguriert sein, eine Rechenfunktionalität zur Unterstützung des Nachrichtenverkehrs im CAN-Bereich des Fahrzeugs 102 zu unterstützen. Zum Beispiel kann das zentrale Gateway 110 einen oder mehrere Prozessoren 112 beinhalten, die dazu konfiguriert sind, Anweisungen, Befehle und andere Routinen durchzuführen, um die in dieser Schrift beschriebenen Prozesse zu unterstützen. In einem Beispiel kann das zentrale Gateway 110 dazu konfiguriert sein, Anweisungen von Anwendungen 118 auszuführen, die von einem Datenspeichermedium 116 des zentralen Gateways 110 in einen Arbeitsspeicher 114 des zentralen Gateways 110 geladen wurden. Die Anwendungen 118 können Software-Code beinhalten, der dazu programmiert ist, den Betrieb des in dieser Schrift ausführlich erörterten zentralen Gateways 110 zu unterstützen.
  • Zum Beispiel können die Anwendungen 118 Software-Code beinhalten, um das Verfolgen von Fahrzeugkonfigurationen über den Fahrzeuglebenszyklus zu erleichtern, wie in dieser Schrift ausführlich erörtert. Das computerlesbare Datenspeichermedium 116 (auch als prozessorlesbares Medium oder prozessorlesbarer Datenspeicher bezeichnet) beinhaltet ein nicht transitorisches (z. B. materielles) Medium, das an der Bereitstellung von Anweisungen oder anderen Daten beteiligt ist, die durch den Prozessor 112 des zentralen Gateways 110 ausgelesen werden können. Computerausführbare Anweisungen können von Computerprogrammen kompiliert oder interpretiert werden, die unter Verwendung einer Vielfalt von Programmiersprachen und/oder -technologien hergestellt werden, einschließlich unter anderem und entweder allein oder in Kombination Java, C, C++, C#, Objective C, Fortran, Pascal, Java Script, Python, Perl und strukturierte Abfragesprache (structured query language - SQL). Als ein spezifisches Beispiel kann das zentrale Gateway 110 mit mindestens 128 Megabyte Direktzugriffsspeicher (random-access memory - RAM) sowie einem 2-4-Core-Prozessor 112 für Verarbeitungsleistung ausgestattet sein, um verschiedene Rechenaufgaben zu ermöglichen.
  • Ein Merkmal eines Fahrzeugs 102 kann sich auf ein diskretes Element der Hardware- und/oder Software-Funktionalität beziehen. Beispielhafte Merkmale können ein Glasschiebedach, beheizte Sitze, eine Rückfahrkamera, ein Navigationssystem, eine BLUETOOTH-Konnektivität, einen Fernstart, eine Überwachung des toten Winkels usw. beinhalten. Jedes Merkmal des Fahrzeugs 102 kann einem eindeutigen technischen Merkmalscode 120 zugewiesen sein. Diese Merkmalscodes 120 können je nach Version und Variante des Merkmals variieren. Jeder der Merkmalscodes 120, die durch eine ECU 104 umgesetzt werden, kann in einem nicht flüchtigen Arbeitsspeicher der jeweiligen ECU 104 vorgegeben sein.
  • Das zentrale Gateway 110 kann dazu konfiguriert sein, eine Anwendung 118 zu nutzen, um die vollständige Liste der in dem Fahrzeug 102 installierten Merkmale zu verfolgen. Um dies zu tun, kann das zentrale Gateway 110 ein Merkmalswörterbuch 122 verwalten, das eine Zusammenstellung von zulässigen Kombinationen von Merkmalscodes 120 über die ECUs 104 beinhaltet. In einigen Beispielen kann das Merkmalswörterbuch 122 durch Durchführen einer Abfrage der ECUs 104 nach ihren Versionsinformationen konstruiert werden. In einem anderen Beispiel kann das Merkmalswörterbuch 122 gemäß einem Aufbaublatt des Fahrzeugs 102, das die richtige Ausrüstung für das Fahrzeug 102 vorgibt (z. B. gemäß der Ausgestaltungsabsicht), an das zentrale Gateway 110 übertragen werden. In noch einem weiteren Beispiel kann das Merkmalswörterbuch 122 auf das zentrale Gateway 110 heruntergeladen werden (z. B. als ursprüngliche Software, als Software-Aktualisierung usw.) und kann dieses eine Liste von mehreren zulässigen Kombinationen von Merkmalscodes 120 beinhalten, die in das Fahrzeug 102 installiert werden können.
  • Die Software-Kompatibilität des Fahrzeugs kann durch die Anwendung 118 des zentralen Gateways 110 durchgeführt werden. In einem Beispiel kann die Anwendung 118 über den einen oder die mehreren Fahrzeugbusse 106 Merkmalscodes 120, die in den Konfigurationsteilen der ECUs 104 eingebettet sind, von den ECUs 104 abfragen und diese abgefragten Informationen mit der zulässigen Kombination oder Kombinationen vergleichen, die durch das Merkmalswörterbuch 122 des zentralen Gateways 110 vorgegeben sind.
  • Die Anwendung 118 kann dazu programmiert sein, sicherzustellen, dass der gleiche Satz von Merkmalscodes 120 von den ECUs 104 in dem Merkmalswörterbuch 122 des zentralen Gateways 110 enthalten ist. Wenn eine nicht autorisierte ECU 104 mit inkompatibler Software installiert ist, ist diese ECU 104 unter Umständen nicht mit dem Rest des Fahrzeugs 102 abgestimmt. Dies kann dadurch ersichtlich werden, dass die Merkmalscodes 120 für diese ECU 104 nicht mit den Merkmalscodes 120 des Merkmalswörterbuchs 122 übereinstimmen.
  • 2 veranschaulicht ein Beispiel für ein Merkmalswörterbuch 122 des Fahrzeugs 102, das weitere Aspekte der Merkmalscodes 120 veranschaulicht. Jeder Merkmalscode 120 kann einem Fahrzeugprogramm 202 zugeordnet sein. Ein Fahrzeugprogramm 202 kann sich auf eine erstellbare Kombination eines Satzes von Merkmalen beziehen, auf die durch die Merkmalscodes 120 Bezug genommen wird. Die Fahrzeugprogramme 202 können auch durch Kennungen identifiziert werden, die für die konkreten Fahrzeugprogramme 202 spezifisch sind. Die Programminformationen können außerdem ein Modelljahr 204 oder eine andere zeitliche Angabe der Erstellung beinhalten, da Programme je nach Modelljahr 204, Auftrag usw. variieren können.
  • Einige Merkmale können vorgeschrieben oder standardmäßig sein, was bedeutet, dass sie im Allgemeinen an dem Fahrzeug 102 installiert sind. Diese Merkmale können als eine Merkmalszuordnung zwischen dem Merkmalscode 120 für dieses Merkmal und einem generischen Fahrzeugprogrammcode 202 definiert sein. Andere Merkmale können optionale, aber bestellbare Merkmale sein. Diese optionalen Merkmale können eine Zuordnung des optionalen Merkmalscodes 120 zu einem erstellbaren Code 206 beinhalten. Die Merkmalszuordnung kann außerdem eine durch Menschen lesbare Merkmalsbezeichnung 210 beinhalten, um das Verständnis der Informationen in dem Merkmalswörterbuch 122 zu unterstützen. Jeder der Merkmalscodes 120 kann betroffenen Steuerungen 212 zugeordnet werden, die zur Umsetzung des Merkmals erforderlich sind. Das Merkmalswörterbuch 122 kann außerdem eine ECU-Zuordnung 214 der erforderlichen Hardware- und Software-Teilenummern sowie der erforderlichen Konfigurationsparameter beinhalten. Zum Beispiel können, wie gezeigt, unterschiedliche Versionen des Leistungsausgangsmerkmals unterschiedliche Software-Konfigurationen der Fahrzeug-ECUs 104 erforderlich machen (z. B. Power!, Power2, Power3, Power4, wie veranschaulicht).
  • 3A veranschaulicht ein Beispiel für Merkmalscodes 120 für eine erste Version eines Merkmals über die ECUs 104 des Fahrzeugs 102. In einem Beispiel kann das Merkmal ein Fernstartmerkmal RS-1A für das Fahrzeug 102 sein. Wie gezeigt, kann das beispielhafte Fernstartmerkmal Konnektivitäts-, Karosserie-, Antriebsstrang- und Funk-ECUs 104 des Fahrzeugs 102 einschließen. Da das Merkmal vier der ECUs 104 einschließt, kann der Merkmalscode 120 diese Informationen ebenfalls codieren (z. B. als RS-1A4, wie gezeigt).
  • Es ist anzumerken, dass in anderen Beispielen die Menge an ECUs 104, die den Merkmalscode 120 aufweisen soll, in einem anderen Abschnitt des Merkmalswörterbuchs 122 oder in einer anderen Datenstruktur gespeichert sein kann, anstatt dass es sich hierbei um eingebettete Informationen innerhalb des Merkmalscodes 120 selbst handelt. Zum Beispiel kann das zentrale Gateway 110 das Merkmalswörterbuch 122 nutzen, um die Zahl an ECUs 104 unter Verwendung der Informationen der betroffenen Steuerungen 212 oder der ECU-Zuordnung 214 zu bestimmen. Es ist jedoch auch anzumerken, dass, wenn die Menge in den Merkmalscodes 120 beinhaltet ist, die Informationen der betroffenen Steuerungen 212 und ECU-Zuordnungen 214 möglicherweise nicht in dem zentralen Gateway 110 gespeichert werden müssen, wodurch weniger Datenspeicher 116 genutzt wird.
  • 3B veranschaulicht ein Beispiel für Merkmalscodes 120 für eine zweite Version des Merkmals über die ECUs 104 des Fahrzeugs 102. Diese zweite Version des Fernstartmerkmals (RS-2A) kann eine Kabinenvorklimatisierung beinhalten. Um diese zusätzliche Funktionalität zu ermöglichen, kann die zweite Version des Fernstartmerkmals zusätzlich Software der ECU 104 zur Heizung, Lüftung und Klimatisierung (HLK) einschließen. Wie gezeigt, schließt die revidierte Version nun Konnektivitäts-, Karosserie-, HLK-, Antriebsstrang- und Funk-ECUs 104 des Fahrzeugs 102 ein. Da das aktualisierte Merkmal vier der ECUs 104 einschließt, kann der Merkmalscode 120 diese ebenfalls codieren (z. B. als RS-2A5, wie gezeigt).
  • Wie vorstehend angemerkt, kann das zentrale Gateway 110 die Merkmalscodes 120 der ECUs 104 von diesen abfragen. Diese Informationen können analysiert werden, um Probleme zu identifizieren. Um das Beispiel aus 3A zu verwenden, kann das zentrale Gateway 110 bestätigen, dass der RS-lA-Code zu sehen ist und dass keine andere(n) Version(en) desselben Codes ebenfalls zu sehen ist (z. B. keine Instanzen von RS-2A, RS-3A usw.). Als eine weitere Bestätigung kann das zentrale Gateway 110 auch bestätigen, dass die Menge an ECUs 104, die den Merkmalscode 120 zurückgeben, richtig ist. Weiter mit dem Beispiel aus 3A kann das zentrale Gateway 110 bestätigen, dass vier ECUs 104 vorhanden sind, die den Code RS-1A zurückgeben.
  • Wenn die Konfiguration falsch ist, kann das zentrale Gateway 110 dazu konfiguriert sein, eine Warnung bereitzustellen, die das Problem angibt. Darüber hinaus kann das zentrale Gateway 110, da das Problem mit der Verifizierung eines Merkmalscodes 120 verbunden ist, zusätzlich in der Warnung angeben, welche Merkmale von dem Problem betroffen sind. Die Warnung kann zum Beispiel nicht übereinstimmende Software-Versionen für ein Merkmal und/oder eine falsche Menge an ECUs 104 für ein Merkmal angeben. Das zentrale Gateway 110 kann ECUs 104 des Fahrzeugs 102 nutzen, um die Warnung in der Mensch-Maschine-Schnittstelle (human machine interface - HMI) des Fahrzeugs 102, an eine mobile Vorrichtung in Kommunikation mit dem Fahrzeug 102, an einen entfernten Server über ein Netzwerk, an einen Server einer Wartungseinrichtung, an eine Diagnosevorrichtung, die über den Diagnoseanschluss 108 mit dem Fahrzeug 102 verbunden ist, usw. bereitzustellen. In einem anderen Beispiel kann, wenn kompatible Software verfügbar ist, um die Warnung zu beheben, diese Software automatisch installiert werden (um z. B. eine gültige Satz von Merkmalen gemäß dem Merkmalswörterbuch 122 zu installieren). Wenn zum Beispiel eine der ECUs 104 eine falsche oder fehlende Software-Version aufweist, kann die richtige Version auf dieser ECU 104 installiert werden.
  • 4 veranschaulicht einen beispielhaften Prozess 400 zum Verfolgen von Konfigurationen des Fahrzeugs 102 über den Lebenszyklus des Fahrzeugs 102. In einem Beispiel kann der Prozess 400 im Rahmen des Systems 100 durch das zentrale Gateway 110 des Fahrzeugs 102 durchgeführt werden.
  • Bei Vorgang 402 bestimmt das zentrale Gateway 110, ob die Verifizierung der ECU 104 ausgelöst wird. In einem Beispiel kann die Verifizierung als Reaktion darauf ausgelöst werden, dass ein Benutzer die Fahrzeuge 102 einschaltet (z. B. als Reaktion auf einen Zyklus des Einschaltens mit dem Zündschlüssel). In einem anderen Beispiel kann die Verifizierung durch Auswahl einer Verifizierungsfunktion von der HMI des Fahrzeugs 102 ausgelöst werden, wobei die Funktion die Anwendung 118 des zentralen Gateways 110 informiert, um die Verifizierung durchzuführen. In noch einem anderen Beispiel kann die Verifizierung durch ein mit dem Diagnoseanschluss 108 verbundenes Werkzeug ausgelöst werden, das eine Verifizierungsnachricht zur Verarbeitung durch die Anwendung 118 an das zentrale Gateway 110 sendet, um die Verifizierung durchzuführen.
  • Bei Vorgang 404 fragt das zentrale Gateway 110 Merkmalscodes 120 von den ECUs 104 ab. In einem Beispiel kann die Anwendung 118 über den einen oder die mehreren Fahrzeugbusse 106 Merkmalscodes 120, die in den Konfigurationsteilen der ECUs 104 eingebettet sind, von den ECUs 104 abfragen.
  • Bei Vorgang 406 vergleicht das zentrale Gateway 110 die Merkmalscodes 120 mit den Informationen in dem Merkmalswörterbuch 122. In einem Beispiel kann das zentrale Gateway 110 den empfangenen Satz von Informationen von den ECUs 104 vergleichen, um sicherzustellen, dass die Merkmalscodes 120 von den ECUs 104 mit den akzeptablen Kombinationen von Merkmalscodes 120 übereinstimmen, die in dem Merkmalswörterbuch 122 vorgegeben sind.
  • Bei Vorgang 408 bestimmt das zentrale Gateway 110, ob ein Problem identifiziert wurde. In einem Beispiel kann das zentrale Gateway 110 bestätigen, dass eine einzelne Version eines Merkmalscodes 120 in den abgefragten Merkmalscodes 120 zu sehen ist. In einem anderen Beispiel kann das zentrale Gateway 110 zusätzlich oder alternativ bestätigen, dass die Menge an ECUs 104, die den Merkmalscode 120 zurückgeben, richtig ist.
  • Bei Vorgang 410 gibt das zentrale Gateway 110 das Problem an. Zum Beispiel kann das zentrale Gateway 110 angeben, welche Merkmale gemäß den Merkmalscodes 120 von dem Problem betroffen sind. Die Warnung kann zum Beispiel nicht übereinstimmende Software-Versionen für ein Merkmal und/oder eine falsche Menge an ECUs 104 für ein Merkmal angeben. In einigen Beispielen kann das Merkmalswörterbuch 122 verwendet werden, um zusätzliche Informationen (falls verfügbar) bereitzustellen, wie etwa durch Menschen lesbare Merkmalsbezeichnungen 210 der Merkmale, die Probleme aufweisen können, und/oder welche der ECUs 104 die falsche, fehlende oder unnötige Software aufweisen. Das Problem kann als eine Warnung an eines oder mehrere von der HMI des Fahrzeugs 102, an eine mobile Vorrichtung in Kommunikation mit dem Fahrzeug 102, über ein Netzwerk an einen entfernten Server, an einen Server einer Serviceeinrichtung, an ein Diagnosevorrichtung, die über den Diagnoseanschluss 108 mit dem Fahrzeug 102 verbunden ist, um die Software-Konfiguration automatisch zu korrigieren, usw. bereitgestellt werden. Nach Vorgang 410 endet der Prozess 400.
  • 5 veranschaulicht eine beispielhafte Rechenvorrichtung 502 zum Verfolgen von Konfigurationen des Fahrzeugs 102 über den Lebenszyklus des Fahrzeugs 102. In Bezug auf 5 und unter Bezugnahme auf 1-4 können das Fahrzeug 102, die ECUs 104 und das zentrale Gateway 110 Beispiele für derartige Rechenvorrichtungen 502 sein. Rechenvorrichtungen 502 beinhalten im Allgemeinen computerausführbare Anweisungen, wie etwa die der Anwendungen 118, wobei die Anweisungen durch eine oder mehrere der Rechenvorrichtungen 502 ausführbar sein können. Computerausführbare Anweisungen können von Computerprogrammen kompiliert oder interpretiert werden, die unter Verwendung einer Vielfalt von Programmiersprachen und/oder -techniken hergestellt werden, einschließlich unter anderem und entweder allein oder in Kombination Java™, C, C++, C#, Visual Basic, JavaScript, Python, Perl usw. Im Allgemeinen empfängt ein Prozessor (z. B. ein Mikroprozessor) Anweisungen z. B. von einem Arbeitsspeicher, einem computerlesbaren Medium usw. und führt diese Anweisungen aus, wodurch ein oder mehrere Prozesse, einschließlich eines oder mehrerer der in dieser Schrift beschriebenen Prozesse, durchgeführt werden. Derartige Anweisungen und andere Daten, wie etwa die Merkmalscodes 120 und das Merkmalswörterbuch 122, können unter Verwendung einer Vielzahl von computerlesbaren Medien gespeichert und übertragen werden.
  • Wie gezeigt, kann die Rechenvorrichtung 502 einen Prozessor 504 beinhalten, der mit einem Datenspeicher 506, einer Netzwerkvorrichtung 508, einer Ausgabevorrichtung 510 und einer Eingabevorrichtung 512 wirkverbunden ist. Es ist anzumerken, dass dies lediglich ein Beispiel ist und Rechenvorrichtungen 502 mit mehr, weniger oder anderen Komponenten verwendet werden können.
  • Der Prozessor 504 kann eine oder mehrere integrierte Schaltungen beinhalten, welche die Funktionalität einer zentralen Verarbeitungseinheit (central processing unit - CPU) und/oder Grafikverarbeitungseinheit (graphics processing unit - GPU) umsetzen. In einigen Beispielen handelt es sich bei den Prozessoren 504 um ein System auf einem Chip (system on a chip - SoC), in dem die Funktionalität der CPU und der GPU integriert ist. Das SoC kann gegebenenfalls andere Komponenten, wie zum Beispiel den Datenspeicher 506 und die Netzwerkvorrichtung 508, in einer einzigen integrierten Vorrichtung beinhalten. In anderen Beispielen sind die CPU und die GPU über eine Peripherie-Verbindungsvorrichtung, wie etwa Peripheral-Component-Interconnect-Express (PCI-Express) oder eine andere geeignete Peripherie-Datenverbindung, miteinander verbunden. In einem Beispiel handelt es sich bei der CPU um eine handelsübliche zentrale Verarbeitungsvorrichtung, die einen Anweisungssatz umsetzt, wie etwa eine von der x86-, ARM- oder Power-Anweisungssatzfamilie oder eine Anweisungssatzfamilie für Mikroprozessoren ohne verschränkte Pipeline-Stufen (microprocessor without interlocked pipeline stages - MIPS).
  • Unabhängig von den Einzelheiten führt der Prozessor 504 während des Betriebs gespeicherte Programmanweisungen aus, die aus dem Datenspeicher 506 abgerufen werden. Die gespeicherten Programmanweisungen beinhalten dementsprechend Software, die den Betrieb der Prozessoren 504 steuert, um die in dieser Schrift beschriebenen Vorgänge durchzuführen. Der Datenspeicher 506 kann sowohl nicht flüchtige als auch flüchtige Arbeitsspeichervorrichtungen beinhalten. Der nicht flüchtige Arbeitsspeicher beinhaltet Festkörperspeicher, wie etwa Nicht-UND-(Not AND -NAND-)Flash-Arbeitsspeicher, magnetische und optische Datenspeichermedien oder eine beliebige andere geeignete Datenspeichervorrichtung, die Daten speichert, wenn das System deaktiviert oder dessen Stromversorgung unterbrochen ist. Der flüchtige Arbeitsspeicher beinhaltet einen statischen und dynamischen RAM, auf dem während des Betriebs des Systems 100 Programmanweisungen und Daten gespeichert werden.
  • Die GPU kann Hardware und Software zur Anzeige von mindestens zweidimensionalen (2D-) und gegebenenfalls dreidimensionalen (3D-)Grafiken auf der Ausgabevorrichtung 510 beinhalten. Die Ausgabevorrichtung 510 kann eine grafische oder visuelle Anzeigevorrichtung, wie etwa einen elektronischen Anzeigebildschirm, einen Projektor, einen Drucker oder eine beliebige andere geeignete Vorrichtung, die eine grafische Anzeige wiedergibt, beinhalten. Als ein anderes Beispiel kann die Ausgabevorrichtung 510 eine Audiovorrichtung, wie etwa einen Lautsprecher oder einen Kopfhörer, beinhalten. Als ein noch weiteres Beispiel kann die Ausgabevorrichtung 510 eine taktile Vorrichtung, wie etwa eine mechanisch erhöhbare Vorrichtung, beinhalten, die in einem Beispiel dazu konfiguriert sein kann, Blindenschrift oder eine andere physische Ausgabe anzuzeigen, die berührt werden kann, um einem Benutzer Informationen bereitzustellen.
  • Die Eingabevorrichtung 512 kann eine beliebige von verschiedenen Vorrichtungen beinhalten, die es der Rechenvorrichtung 502 ermöglichen, Steuereingaben von Benutzern zu empfangen. Beispiele für geeignete Eingabevorrichtungen 512, die Eingaben über eine menschliche Schnittstelle empfangen, können Tastaturen, Mäuse, Trackballs, Touchscreens, Mikrofone, Grafiktablets und dergleichen beinhalten.
  • Die Netzwerkvorrichtungen 508 können jeweils eine beliebige von verschiedenen Vorrichtungen beinhalten, die es den beschriebenen Komponenten ermöglichen, Daten von externen Vorrichtungen über Netzwerke zu senden und/oder zu empfangen. Beispiele für geeignete Netzwerkvorrichtungen 508 beinhalten eine Ethernet-Schnittstelle, einen Wi-Fi-Sendeempfänger, einen Mobilfunk-Sendeempfänger, einen BLUETOOTH- oder BLUETOOTH-Low-Energy-Sendeempfänger (BLE-Sendeempfänger) oder einen anderen Netzwerkadapter oder eine andere Peripherie-Verbindungsvorrichtung, der/die Daten von einem anderen Computer oder einer externen Datenspeichervorrichtung empfängt, was zum Empfangen großer Datensätze auf effiziente Weise nützlich sein kann.
  • Hinsichtlich der in dieser Schrift beschriebenen Prozesse, Systeme, Verfahren, Heuristiken usw. versteht es sich, dass obwohl die Schritte derartiger Prozesse usw. als gemäß einer gewissen geordneten Abfolge erfolgend beschrieben worden sind, derartige Prozesse praktisch umgesetzt werden könnten, wobei die beschriebenen Schritte in einer Reihenfolge durchgeführt werden, die von der in dieser Schrift beschriebenen Reihenfolge abweicht. Ferner versteht es sich, dass gewisse Schritte gleichzeitig durchgeführt, andere Schritte hinzugefügt oder gewisse in dieser Schrift beschriebene Schritte weggelassen werden könnten. Anders ausgedrückt, dienen die Beschreibungen von Prozessen in dieser Schrift dem Zweck der Veranschaulichung gewisser Ausführungsformen und sollten keinesfalls dahingehend ausgelegt werden, dass sie die Patentansprüche einschränken.
  • Dementsprechend versteht es sich, dass die vorstehende Beschreibung veranschaulichend und nicht einschränkend sein soll. Aus der Lektüre der vorangehenden Beschreibung ergeben sich viele andere Ausführungsformen und Anwendungen als die aufgeführten Beispiele. Der Umfang sollte nicht unter Bezugnahme auf die vorstehende Beschreibung, sondern stattdessen unter Bezugnahme auf die beigefügten Patentansprüche bestimmt werden, zusammen mit dem gesamten Umfang an Äquivalenten, zu denen diese Patentansprüche berechtigen. Es ist davon auszugehen und beabsichtigt, dass es zukünftige Entwicklungen in den Techniken, die in dieser Schrift erörtert sind, geben wird und dass die offenbarten Systeme und Verfahren in derartige zukünftige Ausführungsformen aufgenommen werden. Insgesamt versteht es sich, dass die Anmeldung modifiziert und variiert werden kann.
  • Allen in den Patentansprüchen verwendeten Ausdrücken sollen deren umfassendste nachvollziehbare Konstruktionen und deren allgemeine Bedeutungen zugeordnet sein, wie sie den mit den in dieser Schrift beschriebenen Techniken vertrauten Fachleuten bekannt sind, sofern in dieser Schrift kein ausdrücklicher Hinweis auf das Gegenteil erfolgt. Insbesondere ist die Verwendung der Singularartikel, wie etwa „ein“, „eine“, „der“, „die“, „das“ usw., dahingehend zu verstehen, dass eines oder mehrere der angegebenen Elemente genannt werden, es sei denn, ein Patentanspruch nennt eine ausdrückliche gegenteilige Einschränkung.
  • Die Zusammenfassung der Offenbarung wird bereitgestellt, um dem Leser einen schnellen Überblick über den Charakter der technischen Offenbarung zu ermöglichen. Sie wird in der Auffassung eingereicht, dass sie nicht dazu verwendet wird, den Umfang oder die Bedeutung der Patentansprüche auszulegen oder einzuschränken. Außerdem geht aus der vorstehenden detaillierten Beschreibung hervor, dass zum Zweck der vereinfachten Darstellung der Offenbarung verschiedene Merkmale in verschiedenen Ausführungsformen zusammengefasst wurden. Dieses Verfahren der Offenbarung ist nicht dahingehend zu interpretieren, dass es eine Absicht widerspiegelt, dass die beanspruchten Ausführungsformen mehr Merkmale erfordern, als in jedem Patentanspruch ausdrücklich genannt sind. Wie die folgenden Patentansprüche widerspiegeln, liegt der Gegenstand der Erfindung vielmehr in weniger als allen Merkmalen einer einzelnen offenbarten Ausführungsform. Somit werden die folgenden Patentansprüche hiermit in die detaillierte Beschreibung aufgenommen, wobei jeder Patentanspruch für sich als getrennt beanspruchter Gegenstand steht.
  • Während vorstehend beispielhafte Ausführungsformen beschrieben sind, ist nicht beabsichtigt, dass diese Ausführungsformen alle möglichen Formen der Offenbarung beschreiben. Die in der Beschreibung verwendeten Ausdrücke sind vielmehr beschreibende als einschränkende Ausdrücke, und es versteht sich, dass diverse Änderungen vorgenommen werden können, ohne vom Geist und Umfang der Offenbarung abzuweichen. Zusätzlich können die Merkmale verschiedener umsetzender Ausführungsformen kombiniert werden, um weitere Ausführungsformen der Offenbarung zu bilden.
  • Gemäß der vorliegenden Erfindung ist ein System zum Verfolgen einer Steuerungskonfiguration bereitgestellt, das Folgendes aufweist: elektronische Steuereinheiten (ECUs); und ein zentrales Gateway, das zu Folgendem programmiert ist: Abfragen von Merkmalscodes, die auf Elemente der Funktionalität hinweisen, die durch die jeweilige ECU umgesetzt werden, von jeder ECU der ECUs, wobei jeder Merkmalscode einer Sollmenge an ECUs entspricht, die an der Umsetzung der Funktionalität beteiligt sind, und Angeben einer Warnung als Reaktion darauf, dass die Abfrage eine andere Menge an ECUs, welche die Funktionalität umsetzen, zurückgibt als die Sollmenge.
  • Gemäß einer Ausführungsform hat jeder der Merkmalscodes die Sollmenge als einen Abschnitt des jeweiligen Merkmalscodes eingebettet.
  • Gemäß einer Ausführungsform ist die Sollmenge ein Suffix des jeweiligen Merkmalscodes.
  • Gemäß einer Ausführungsform steht das zentrale Gateway über einen oder mehrere Busse in Kommunikation mit den ECUs, wobei das zentrale Gateway ferner dazu programmiert ist, die Merkmalscodes über den einen oder die mehreren Busse von den ECUs abzufragen.
  • Gemäß einer Ausführungsform ist das System ein Fahrzeug und ist das zentrale Gateway ferner dazu programmiert, die Merkmalscodes als Reaktion auf ein Einschalten des Fahrzeugs mit dem Zündschlüssel von den ECUs abzufragen.
  • Gemäß einer Ausführungsform ist das zentrale Gateway ferner zu Folgendem programmiert: Abfragen der Merkmalscodes von den ECUs als Reaktion auf eine Anforderung von einer Diagnosevorrichtung, die über einen Diagnoseanschluss mit dem zentralen Gateway verbunden ist; und Angeben der Warnung als eine Nachricht, die von dem zentralen Gateway an die Diagnosevorrichtung gesendet wird.
  • Gemäß einer Ausführungsform gibt die Warnung die Merkmalscodes an, für welche die Sollmenge nicht mit der Menge an ECUs übereinstimmt, welche die Funktionalität umsetzen.
  • Gemäß einer Ausführungsform beinhaltet das zentrale Gateway einen Datenspeicher, der dazu konfiguriert ist, ein Merkmalswörterbuch zu verwalten, das zulässige Merkmalscodekombinationen über die ECUs vorgibt, und ist das zentrale Gateway ferner dazu programmiert, das Merkmalswörterbuch zu nutzen, um Angaben davon, welchen der ECUs Merkmalscodes für ein Merkmal fehlen, oder Angaben, die Merkmalscodes melden, die für das Merkmal nicht vorgegeben sind, in die Warnung einzuschließen.
  • Gemäß einer Ausführungsform beinhaltet das Merkmalswörterbuch durch Menschen lesbare Bezeichnungen für das Merkmal und beinhaltet die Warnung die durch Menschen lesbaren Bezeichnungen, für welche die Merkmalscodes für welche die Sollmenge nicht mit der Menge an ECUs übereinstimmt, welche die Funktionalität umsetzen.
  • Gemäß der vorliegenden Erfindung beinhaltet ein Verfahren zum Verfolgen einer Steuerungskonfiguration Folgendes: Abfragen von Merkmalscodes, die auf Elemente der Funktionalität hinweisen, die durch die j eweilige ECU umgesetzt werden, von jeder ECU einer Vielzahl von ECUs, wobei jeder Merkmalscode einer Sollmenge an ECUs entspricht, die an der Umsetzung der Funktionalität beteiligt sind; und Angeben einer Warnung als Reaktion darauf, dass das Abfragen eine andere Menge an ECUs, welche die Funktionalität umsetzen, zurückgibt als die Sollmenge.
  • In einem Aspekt der Erfindung hat jeder der Merkmalscodes die Sollmenge als einen Abschnitt des jeweiligen Merkmalscodes eingebettet.
  • In einem Aspekt der Erfindung ist die Sollmenge ein Suffix des jeweiligen Merkmalscodes.
  • In einem Aspekt der Erfindung steht ein zentrales Gateway über einen oder mehrere Busse in Kommunikation mit den ECUs, und ferner umfassend Abfragen der Merkmalscodes von den ECUs durch das zentrale Gateway über den einen oder die mehreren Busse.
  • In einem Aspekt der Erfindung sind die ECUs Komponenten eines Fahrzeugs, und ferner umfassend Abfragen der Merkmalscodes von den ECUs als Reaktion auf ein Einschalten des Fahrzeugs mit dem Zündschlüssel.
  • In einem Aspekt der Erfindung beinhaltet das Verfahren Folgendes: Abfragen der Merkmalscodes von den ECUs als Reaktion auf eine Anforderung von einer Diagnosevorrichtung; und Angeben der Warnung als eine Nachricht an die Diagnosevorrichtung als Reaktion auf die Anforderung.
  • In einem Aspekt der Erfindung gibt die Warnung die Merkmalscodes an, für welche die Sollmenge nicht mit der Menge an ECUs übereinstimmt, welche die Funktionalität umsetzen.
  • In einem Aspekt der Erfindung beinhaltet das Verfahren Folgendes: Verwalten eines Merkmalswörterbuchs, das zulässige Merkmalscodekombinationen über die ECUs vorgibt; und Nutzen des Merkmalswörterbuchs, um Angaben davon, welchen der ECUs Merkmalscodes für ein Merkmal fehlen, oder Angaben, die Merkmalscodes melden, die nicht für das Merkmal vorgegeben sind, in die Warnung einzuschließen.
  • In einem Aspekt der Erfindung beinhaltet das Merkmalswörterbuch durch Menschen lesbare Bezeichnungen für das Merkmal und beinhaltet die Warnung die durch Menschen lesbaren Bezeichnungen, für welche die Merkmalscodes für welche die Sollmenge nicht mit der Menge an ECUs übereinstimmt, welche die Funktionalität umsetzen.
  • Gemäß der vorliegenden Erfindung ist ein nicht transitorisches computerlesbares Medium bereitgestellt, das Anweisungen zum Verfolgen einer Steuerungskonfiguration aufweist, die bei Ausführung durch ein zentrales Gateway in Kommunikation über einen oder mehrere Busse mit einer Vielzahl von ECUs das zentrale Gateway dazu veranlassen, Vorgänge durchzuführen, einschließlich zu Folgendem: Abfragen von Merkmalscodes, die auf Elemente der Funktionalität hinweisen, die durch die jeweilige ECU umgesetzt werden, von jeder ECU der ECUs, wobei jeder Merkmalscode einer Sollmenge an ECUs entspricht, die an der Umsetzung der Funktionalität beteiligt sind; und Angeben einer Warnung als Reaktion darauf, dass die Abfrage eine andere Menge an ECUs, welche die Funktionalität umsetzen, zurückgibt als die Sollmenge.
  • Gemäß einer Ausführungsform hat jeder der Merkmalscodes die Sollmenge als einen Abschnitt des jeweiligen Merkmalscodes eingebettet.

Claims (15)

  1. System zum Verfolgen einer Steuerungskonfiguration, umfassend: elektronische Steuereinheiten (ECUs); und ein zentrales Gateway, das zu Folgendem programmiert ist: Abfragen von Merkmalscodes, die auf Elemente der Funktionalität hinweisen, die durch die j eweilige ECU umgesetzt werden, von j eder ECU der ECUs, wobei jeder Merkmalscode einer Sollmenge an ECUs entspricht, die an der Umsetzung der Funktionalität beteiligt sind, und Angeben einer Warnung als Reaktion darauf, dass die Abfrage eine andere Menge an ECUs, welche die Funktionalität umsetzen, zurückgibt als die Sollmenge.
  2. System nach Anspruch 1, wobei jeder der Merkmalscodes die Sollmenge als einen Abschnitt des jeweiligen Merkmalscodes eingebettet hat.
  3. System nach Anspruch 2, wobei die Sollmenge ein Suffix des j eweiligen Merkmalscodes ist.
  4. System nach Anspruch 1, wobei das zentrale Gateway über einen oder mehrere Busse in Kommunikation mit den ECUs steht, wobei das zentrale Gateway ferner dazu programmiert ist, die Merkmalscodes über den einen oder die mehreren Busse von den ECUs abzufragen.
  5. System nach Anspruch 1, wobei das System ein Fahrzeug ist und das zentrale Gateway ferner dazu programmiert ist, die Merkmalscodes als Reaktion auf ein Einschalten des Fahrzeugs mit dem Zündschlüssel von den ECUs abzufragen.
  6. System nach Anspruch 1, wobei das zentrale Gateway ferner zu Folgendem programmiert ist: Abfragen der Merkmalscodes von den ECUs als Reaktion auf eine Anforderung von einer Diagnosevorrichtung, die über einen Diagnoseanschluss mit dem zentralen Gateway verbunden ist; und Angeben der Warnung als eine Nachricht, die von dem zentralen Gateway an die Diagnosevorrichtung gesendet wird.
  7. System nach Anspruch 1, wobei die Warnung die Merkmalscodes angibt, für welche die Sollmenge nicht mit der Menge an ECUs übereinstimmt, welche die Funktionalität umsetzen.
  8. System nach Anspruch 1, wobei das zentrale Gateway einen Datenspeicher beinhaltet, der dazu konfiguriert ist, ein Merkmalswörterbuch zu verwalten, das zulässige Merkmalscodekombinationen über die ECUs vorgibt, und das zentrale Gateway ferner dazu programmiert ist, das Merkmalswörterbuch zu nutzen, um Angaben darüber, welchen der ECUs Merkmalscodes für ein Merkmal fehlen, oder Angaben, die Merkmalscodes melden, die für das Merkmal nicht vorgegeben sind, in die Warnung einzuschließen.
  9. System nach Anspruch 8, wobei das Merkmalswörterbuch durch Menschen lesbare Bezeichnungen für das Merkmal beinhaltet und die Warnung die durch Menschen lesbaren Bezeichnungen beinhaltet, für die Merkmalscodes, für welche die Sollmenge nicht mit der Menge an ECUs übereinstimmt, welche die Funktionalität umsetzen.
  10. Verfahren zum Verfolgen einer Steuerungskonfiguration, umfassend: Abfragen von Merkmalscodes, die auf Elemente der Funktionalität hinweisen, die durch die jeweilige ECU umgesetzt werden, von jeder ECU einer Vielzahl von ECUs, wobei jeder Merkmalscode einer Sollmenge an ECUs entspricht, die an der Umsetzung der Funktionalität beteiligt sind; und Angeben einer Warnung als Reaktion darauf, dass das Abfragen eine andere Menge an ECUs, welche die Funktionalität umsetzen, zurückgibt als die Sollmenge.
  11. Verfahren nach Anspruch 10, wobei jeder der Merkmalscodes die Sollmenge als einen Abschnitt des jeweiligen Merkmalscodes eingebettet hat.
  12. Verfahren nach Anspruch 10, wobei ein zentrales Gateway über einen oder mehrere Busse in Kommunikation mit den ECUs steht, und ferner umfassend Abfragen der Merkmalscodes von den ECUs durch das zentrale Gateway über den einen oder die mehreren Busse.
  13. Verfahren nach Anspruch 10, wobei die ECUs Komponenten eines Fahrzeugs sind, und ferner umfassend Abfragen der Merkmalscodes von den ECUs als Reaktion auf ein Einschalten des Fahrzeugs mit dem Zündschlüssel.
  14. Verfahren nach Anspruch 10, ferner umfassend: Abfragen der Merkmalscodes von den ECUs als Reaktion auf eine Anforderung von einer Diagnosevorrichtung; und Angeben der Warnung als eine Nachricht an die Diagnosevorrichtung als Reaktion auf die Anforderung, wobei die Warnung die Merkmalscodes angibt, für welche die Sollmenge nicht mit der Menge an ECUs übereinstimmt, welche die Funktionalität umsetzen.
  15. Verfahren nach Anspruch 10, ferner umfassend: Verwalten eines Merkmalswörterbuchs, das zulässige Merkmalscodekombinationen über die ECUs vorgibt; und Nutzen des Merkmalswörterbuchs, um Angaben davon, welchen der ECUs Merkmalscodes für ein Merkmal fehlen, oder Angaben, die Merkmalscodes melden, die nicht für das Merkmal vorgegeben sind, in die Warnung einzuschließen, wobei das Merkmalswörterbuch durch Menschen lesbare Bezeichnungen für das Merkmal beinhaltet und die Warnung die durch Menschen lesbaren Bezeichnungen beinhaltet, für die Merkmalscodes, für welche die Sollmenge nicht mit der Menge an ECUs übereinstimmt, welche die Funktionalität umsetzen.
DE102023107070.3A 2022-04-05 2023-03-21 Kompatibilität von fahrzeugsoftware Pending DE102023107070A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/714,000 US20230315440A1 (en) 2022-04-05 2022-04-05 Vehicle software compatibility
US17/714,000 2022-04-05

Publications (1)

Publication Number Publication Date
DE102023107070A1 true DE102023107070A1 (de) 2023-10-05

Family

ID=88018809

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102023107070.3A Pending DE102023107070A1 (de) 2022-04-05 2023-03-21 Kompatibilität von fahrzeugsoftware

Country Status (3)

Country Link
US (1) US20230315440A1 (de)
CN (1) CN116935448A (de)
DE (1) DE102023107070A1 (de)

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4692231B2 (ja) * 2005-11-04 2011-06-01 株式会社デンソー 車両用の電子制御装置
US9639344B2 (en) * 2014-12-11 2017-05-02 Ford Global Technologies, Llc Telematics update software compatibility
JP6216730B2 (ja) * 2015-03-16 2017-10-18 日立オートモティブシステムズ株式会社 ソフト更新装置、ソフト更新方法
JP2016218932A (ja) * 2015-05-26 2016-12-22 京セラ株式会社 ソフトウェア更新装置およびソフトウェア更新システム
US11119757B2 (en) * 2015-08-05 2021-09-14 EZ Lynk SEZC System and method for remote ECU reprogramming
JP6361671B2 (ja) * 2016-03-02 2018-07-25 住友電気工業株式会社 プログラム更新システム、プログラム更新方法、中継装置及びコンピュータプログラム
JP6380461B2 (ja) * 2016-06-02 2018-08-29 住友電気工業株式会社 中継装置、プログラム更新システム、およびプログラム更新方法
US20190129710A1 (en) * 2016-06-02 2019-05-02 Sumitomo Electric Industries, Ltd. Control apparatus, method for determining whether or not a control program is updatable, and computer program
JP6724717B2 (ja) * 2016-10-25 2020-07-15 株式会社オートネットワーク技術研究所 車載機器判定システム
JP6915500B2 (ja) * 2017-11-06 2021-08-04 トヨタ自動車株式会社 更新システム、電子制御装置、更新管理装置、及び更新管理方法
JP7081223B2 (ja) * 2018-03-07 2022-06-07 トヨタ自動車株式会社 マスタ装置、マスタ、ソフトウェアの整合性を確認するための方法及びプログラム、車両
US10909050B2 (en) * 2018-03-19 2021-02-02 Toyota Jidosha Kabushiki Kaisha Gateway apparatus and communication method
US10845800B2 (en) * 2018-10-08 2020-11-24 Ford Global Technologies, Llc Vehicle software check
WO2020115818A1 (ja) * 2018-12-04 2020-06-11 三菱電機株式会社 更新管理装置、更新管理システム及び更新管理方法
US11528330B2 (en) * 2018-12-06 2022-12-13 Ford Global Technologies, Llc Upgradeable vehicle
US20200274927A1 (en) * 2019-02-22 2020-08-27 Byton North America Corporation Vehicle network topology scheme and systems for implementing the same
WO2021039795A1 (ja) * 2019-08-28 2021-03-04 株式会社デンソー 車両用電子制御システム、車両用マスタ装置、コンフィグ情報の書戻しによる書換え指示方法及びコンフィグ情報の書戻しによる書換え指示プログラム
JP7283359B2 (ja) * 2019-11-19 2023-05-30 株式会社オートネットワーク技術研究所 車載更新装置、及び更新処理プログラム
US11727271B2 (en) * 2020-02-27 2023-08-15 Calamp Corp. Systems and methods for identifying a vehicle platform using machine learning on vehicle bus data
JP7328928B2 (ja) * 2020-04-06 2023-08-17 株式会社オートネットワーク技術研究所 車載中継装置、情報処理方法及びプログラム
JP7367626B2 (ja) * 2020-07-08 2023-10-24 トヨタ自動車株式会社 ソフトウェア更新装置、方法、プログラムおよび車両
JP7509059B2 (ja) * 2021-03-05 2024-07-02 トヨタ自動車株式会社 センタ、更新管理方法、及び更新管理プログラム
JP7548069B2 (ja) * 2021-03-05 2024-09-10 トヨタ自動車株式会社 センタ、更新制御方法、更新制御プログラム、otaマスタ、ソフトウェア更新システム
JP7540382B2 (ja) * 2021-04-01 2024-08-27 トヨタ自動車株式会社 センタ、配信制御方法、及び配信制御プログラム

Also Published As

Publication number Publication date
CN116935448A (zh) 2023-10-24
US20230315440A1 (en) 2023-10-05

Similar Documents

Publication Publication Date Title
DE102018103187A1 (de) Erweitertes zentrales Gateway zur Fahrzeugvernetzung
DE102018100095A1 (de) Softwareaktualisierungs-verwaltung
DE102014114606B4 (de) Programmierung von Fahrzeugmodulen mit Remotevorrichtungen und zugehörige Methoden und Systeme
DE102018100015A1 (de) Wechselverifizierung vor abschaltung
DE112012007250B4 (de) Fahrzeuginterne Vorrichtung und Programm
DE102016115545A1 (de) Mehrstufige sichere fahrzeug-softwareaktualisierung
DE102015121091A1 (de) Telematik-Update-Softwarekompatibilität
DE102018120915A1 (de) Fahrzeuginterne Gruppenschlüsselverteilung
DE102020214378A1 (de) Vorrichtung und verfahren zum steuern von aktualisierungen von ecus von einem fahrzeug
DE112018001894T5 (de) Steuervorrichtung, Übertragungsverfahren und Computerprogramm
DE102017208532A1 (de) Elektronische Fahrzeugsteuereinheit und Fahrzeugdienstverwaltungssystem
DE102019126804A1 (de) Fahrzeugsoftwareprüfung
DE102021209039A1 (de) Vorrichtung und verfahren zum verwalten einer aktualisierung einer ecu eines fahrzeugs
DE102019115450A1 (de) Optimierte TCU-Sendeleistung
DE102015118295A1 (de) Fahrerzentriertes Lernen
DE102018127702A1 (de) VIN-ESN-signierte Befehle und lokales Vertrauensnetz auf Fahrzeugebene
DE102019127068A1 (de) Planungsvereinfachung über eine geofence-zeitzonenauflösung
DE102020104551A1 (de) Sicherung und wiederherstellung einer fahrzeugsteuerungskonfiguration unter verwendung von datenschnappschüssen
WO2020094346A1 (de) Datenvermittlungsvorrichtung und datenvermittlungsverfahren für ein fahrzeug, vorrichtung und verfahren für eine fahrzeugkomponente eines fahrzeugs und computerprogramm
DE102012205353A1 (de) Heiz-, Ventilier- und Luftkonditionierungsmodul für ein Fahrzeug
DE112022002574T5 (de) Elektronische Steuervorrichtung für ein Fahrzeug, elektronisches Steuersystem für ein Fahrzeug, und Aktualisierte-Konfigurationsinformationen-Bestimmungsprogramm
DE102023107659A1 (de) Unleugbarer verlauf von fahrzeugänderungen
DE102020208536A1 (de) Gateway-vorrichtung, abnormitätsüberwachungsverfahren und speichermedium
DE102020126320A1 (de) Fahrzeugsoftwareprüfung
DE102023107070A1 (de) Kompatibilität von fahrzeugsoftware

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: ETL IP PATENTANWALTSGESELLSCHAFT MBH, DE