[go: up one dir, main page]

DE102014114783B4 - PROCEDURE FOR MONITORING A CONTROLLER AREA NETWORK - Google Patents

PROCEDURE FOR MONITORING A CONTROLLER AREA NETWORK Download PDF

Info

Publication number
DE102014114783B4
DE102014114783B4 DE102014114783.9A DE102014114783A DE102014114783B4 DE 102014114783 B4 DE102014114783 B4 DE 102014114783B4 DE 102014114783 A DE102014114783 A DE 102014114783A DE 102014114783 B4 DE102014114783 B4 DE 102014114783B4
Authority
DE
Germany
Prior art keywords
error
communication links
controller
link
supervisory controller
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.)
Expired - Fee Related
Application number
DE102014114783.9A
Other languages
German (de)
Other versions
DE102014114783A1 (en
Inventor
Shengbing Jiang
Yilu Zhang
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.)
GM Global Technology Operations LLC
Original Assignee
GM Global Technology Operations 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
Priority claimed from US14/333,374 external-priority patent/US9354965B2/en
Application filed by GM Global Technology Operations LLC filed Critical GM Global Technology Operations LLC
Publication of DE102014114783A1 publication Critical patent/DE102014114783A1/en
Application granted granted Critical
Publication of DE102014114783B4 publication Critical patent/DE102014114783B4/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0677Localisation of faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40169Flexible bus arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0847Transmission error

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

Verfahren zum Überwachen eines Controller Area Network (CAN) (50, 200, 500) an einem mobilen System, das mehrere verbundene Knoten umfasst, die einen bordeigenen Überwachungscontroller (40, 208, 308) umfassen, umfassend, dass:Kommunikationsverbindungen (51, 53, 55, 201) und zugehörige Knoten zwischen den Knoten des CAN (50, 200, 500) identifiziert werden;die Kommunikationsverbindungen (51, 53, 55, 201) gemäß ihrer Reihenfolge der Verbindung mit dem Überwachungscontroller (40, 208, 308) eingestuft werden, was umfasst, dass niedrigere Stufen jenen der Kommunikationsverbindungen (51, 53, 55, 201) zugeordnet werden, die nahe bei dem Überwachungscontroller (40, 208, 308) angeordnet sind, und höhere Stufen jenen der Kommunikationsverbindungen (51, 53, 55, 201) zugeordnet werden, die fern von dem Überwachungscontroller (40, 208, 308) angeordnet sind;für jede der Kommunikationsverbindungen (51, 53, 55, 201) identifiziert wird, welcher der zugehörigen Knoten fern von dem Überwachungscontroller (40, 208, 308) angeordnet ist; undunter Verwendung des Überwachungscontrollers (40, 208, 308) eine Fehlersignatur für jede der Kommunikationsverbindungen (51, 53, 55, 201) auf der Grundlage des für jede der Kommunikationsverbindungen (51, 53, 55, 201) identifizierten Knotens, der fern von dem Überwachungscontroller (40, 208, 308) angeordnet ist, ermittelt wird.A method of monitoring a controller area network (CAN) (50, 200, 500) on a mobile system comprising a plurality of interconnected nodes comprising an onboard monitoring controller (40, 208, 308), comprising: communication links (51, 53 , 55, 201) and associated nodes between the nodes of the CAN (50, 200, 500); the communication links (51, 53, 55, 201) are ranked according to their order of connection to the supervisory controller (40, 208, 308). including that lower levels are assigned to those of the communication links (51, 53, 55, 201) located close to the supervisory controller (40, 208, 308) and higher levels to those of the communication links (51, 53, 55 , 201) located remote from the supervisory controller (40, 208, 308); for each of the communication links (51, 53, 55, 201) identifying which of the associated nodes is remote from the supervisory controller (40, 208, 308); andusing the supervisory controller (40, 208, 308) a fault signature for each of the communication links (51, 53, 55, 201) based on the node identified for each of the communication links (51, 53, 55, 201) remote from the Monitoring controller (40, 208, 308) is arranged, is determined.

Description

TECHNISCHES GEBIETTECHNICAL AREA

Diese Offenbarung bezieht sich auf eine Kommunikationen in Controller Area Networks zugehörige Fehlerisolierung.This disclosure relates to fault isolation associated with communications in controller area networks.

HINTERGRUNDBACKGROUND

Die Aussagen in diesem Abschnitt stellen lediglich Hintergrundinformationen bezüglich der vorliegenden Offenbarung bereit. Derartige Aussagen stellen dementsprechend keinen Stand der Technik dar.The statements in this section merely provide background information related to the present disclosure. Accordingly, such statements do not represent state of the art.

Fahrzeugsysteme umfassen mehrere Subsysteme, die beispielsweise Motor, Getriebe, Fahrgefühl/Handhabung, Bremsung, HLK und Insassenschutz umfassen. Es können mehrere Controller eingesetzt werden, um den Betrieb der Subsysteme zu überwachen und zu steuern. Die Controller können ausgestaltet sein, um über ein Controller Area Network (CAN) zu kommunizieren, um den Betrieb des Fahrzeugs in Ansprechen auf Bedienerbefehle, Fahrzeugbetriebszustände und externe Bedingungen zu koordinieren. In einem der Controller kann ein Fehler auftreten, der Kommunikationen über einen CAN-Bus beeinflusst.Vehicle systems include multiple subsystems including, for example, engine, transmission, ride/handling, braking, HVAC, and occupant protection. Multiple controllers can be used to monitor and control the operation of the subsystems. The controllers may be configured to communicate over a controller area network (CAN) to coordinate operation of the vehicle in response to operator commands, vehicle operating conditions, and external conditions. A fault may occur in one of the controllers affecting communications over a CAN bus.

Die Topologie eines Netzes, wie beispielsweise eines CAN, bezieht sich auf eine verbindende Anordnung zwischen Netzelementen und umfasst vorzugsweise mehrere Knoten mit gekoppelten oder verteilten Leistungs-, Masse- oder Kommunikationsverbindungen. Eine physikalische Topologie beschreibt die Anordnung oder Aufteilung physikalischer Elemente, die Verbindungen und Knoten umfassen, wobei Knoten Controller umfassen und andere verbundene Einrichtungen und Verbindungen entweder Leistungs-, Masse- oder Kommunikationsverbindungen in Form von geeigneten Kabeln, Leitungen, Platinen (PWBs von printed wiring boards), Leiterplatten (PCBs von printed circuit boards), flexiblen Bändern und dergleichen umfassen. Eine logische Topologie beschreibt den Fluss von Datennachrichten, Leistung oder Masse in einem Netz zwischen Knoten, wobei Leistungs-, Masse- oder Kommunikationsverbindungen eingesetzt werden. Bekannte CAN-Systeme setzen eine Bustopologie für die Kommunikationsverbindung zwischen allen Controllern ein, die eine Linientopologie, eine Sterntopologie oder eine Kombination aus Stern- und Linientopologie umfassen kann. Bekannte CAN-Systeme für hohe Geschwindigkeit setzen eine Linientopologie ein, wohingegen bekannte CAN-Systeme für niedrige Geschwindigkeit eine Kombination aus Stern- und Linientopologie einsetzen. Bekannte CAN-Systeme setzen separate Leistungs- und Massetopologien für die Leistungs- und Masseleitungen zu allen Controllern ein. Bekannte Controller kommunizieren über Nachrichten miteinander, die in verschiedenen Perioden an dem CAN-Bus gesendet werden.The topology of a network, such as a CAN, refers to an interconnecting arrangement between network elements and preferably includes multiple nodes with coupled or distributed power, ground or communication links. A physical topology describes the arrangement or division of physical elements comprising links and nodes, where nodes comprise controllers and other connected devices and links either power, ground or communication links in the form of appropriate cables, wires, printed wiring boards (PWBs). ), printed circuit boards (PCBs), flexible tapes, and the like. A logical topology describes the flow of data messages, power, or ground in a network between nodes using power, ground, or communication links. Known CAN systems use a bus topology for the communication connection between all controllers, which can include a linear topology, a star topology or a combination of star and linear topology. Known high-speed CAN systems employ a line topology, whereas known low-speed CAN systems employ a combination of star and line topologies. Known CAN systems employ separate power and ground topologies for the power and ground lines to all controllers. Known controllers communicate with each other via messages sent at different periods on the CAN bus.

Bekannte Systeme detektieren Fehler an einem Nachrichtenempfangscontroller, wobei die Fehlerdetektion für die Nachricht unter Verwendung einer Signalkontrolle und einer Signalzeitüberschreitungsüberwachung an einer Interaktionsschicht des Controllers erreicht wird. Die Fehler können als Verlust von Kommunikationen, z.B. als Verlust einer übermittelten Datennachricht, berichtet werden. Solche Detektionssysteme sind im Allgemeinen nicht dazu in der Lage, eine Grundursache eines Fehlers zu identifizieren, und sind nicht dazu in der Lage, transiente und intermittierende Fehler zu unterscheiden. Ein bekanntes System erfordert eine separate Überwachungshardware und dimensionale Details einer physikalischen Topologie eines Netzes, um Kommunikationsfehler in dem Netz effektiv zu überwachen und zu detektieren.Known systems detect errors at a message receiving controller, error detection for the message being achieved using signal control and signal timeout monitoring at an interaction layer of the controller. The errors may be reported as a loss of communications, e.g., loss of a transmitted data message. Such detection systems are generally unable to identify a root cause of a fault and are unable to distinguish transient and intermittent faults. A known system requires separate monitoring hardware and dimensional details of a network's physical topology to effectively monitor and detect communication errors in the network.

Eine Fehlersignatur für eine Netztopologie kann extern erzeugt und während der Fahrzeugfertigung und -montage in ein System flash-programmiert werden. Bei einer Ausführungsform eines Fahrzeugsystems kann es aufgrund unterschiedlicher Fahrzeug- und Controllerausgestaltungen mehrere Topologievarianten geben. Dies erhöht die Komplexität des Zeitmanagements in einer Fahrzeugfertigungsstätte und kann den Fertigungsdurchsatz reduzieren.A fault signature for a network topology can be generated externally and flash programmed into a system during vehicle manufacture and assembly. In one embodiment of a vehicle system, there may be multiple topology variations due to different vehicle and controller designs. This increases the complexity of time management in a vehicle manufacturing facility and can reduce manufacturing throughput.

DE 195 23 483 C2 offenbart ein Verfahren für eine Rechnergestützte Fehlerdiagnose für ein komplexes technisches System aus einzelnen Teilsystemen mit mehreren zu diagnostizierenden Funktionen. Hierbei umfassen Diagnoseablaufbereitstellungsmittel ein Strukturmodell, ein Wirkungsmodell und ein Fehlermodell, das automatisch aus dem Strukturmodell und dem Wirkungsmodell erstellt wird. Zudem erstellen die Diagnoseablaufbereitstellungsmittel aus dem Strukturmodell und dem Wirkungsmodell automatisch ein Basis-Fehlermodell, indem für jeweilige Teilsysteme Wurzelobjekte und Fehlerobjekte abgeleitet werden, wobei das Fehlermodell auf dem Basis-Fehlermodell basiert. Auf der Grundlage des Basis-Fehlermodells werden Diagnosen durchgeführt. Weiterer Stand der Technik ist aus DE 103 07 365 A1 bekannt. DE 195 23 483 C2 discloses a method for computer-assisted fault diagnosis for a complex technical system made up of individual subsystems with a number of functions to be diagnosed. Here, diagnostic flow providing means include a structure model, an effect model, and an error model that is automatically created from the structure model and the effect model. In addition, the diagnosis sequence provision means automatically create a basic error model from the structural model and the effect model by deriving root objects and error objects for respective subsystems, the error model being based on the basic error model. Diagnoses are performed on the basis of the basic error model. Further state of the art is out DE 103 07 365 A1 known.

ZUSAMMENFASSUNGSUMMARY

Aufgabe der Erfindung ist es, ein verbessertes Verfahren zum Überwachen eines Controller Area Network (CAN) bereitzustellen.The object of the invention is to provide an improved method for monitoring a controller area network (CAN).

Zur Lösung der Aufgabe sind Verfahren mit den Merkmalen der Ansprüche 1 und 8 vorgesehen. Vorteilhafte Ausbildungen der Erfindung sind den Unteransprüchen, der Beschreibung und den Zeichnungen zu entnehmen.Methods with the features of claims 1 and 8 are provided to solve the problem. Advantageous developments of the invention can be found in the dependent claims, the description and the drawings.

Es wird ein Controller Area Network (CAN) an einem mobilen System beschrieben, das mehrere verbundene Kommunikationsknoten umfasst, die einen bordeigenen Überwachungscontroller umfassen. Ein Verfahren zum Überwachen des CAN umfasst, dass Verbindungen und zugehörige Knoten zwischen allen Knoten des CAN identifiziert werden und alle Verbindungen gemäß ihrer Reihenfolge der Verbindung mit dem Überwachungscontroller eingestuft werden, was umfasst, dass jenen der Verbindungen, die nahe bei dem Überwachungscontroller angeordnet sind, niedrigere Stufen zugeordnet werden, und jenen der Verbindungen, die fern von dem Überwachungscontroller angeordnet sind, höhere Stufen zugeordnet werden. Für jede der Verbindungen wird der zugehörige Knoten, der fern von der Überwachungseinrichtung angeordnet ist, identifiziert. Der bordeigene Überwachungscontroller ermittelt eine Fehlersignatur für jede der Verbindungen, wobei mit der Verbindung begonnen wird, die die höchste Einstufung aufweist, wobei die Fehlersignatur identifizierte der zugehörigen Knoten, die fern von der Überwachungseinrichtung angeordnet sind, für jede der entsprechenden Verbindungen umfasst.A controller area network (CAN) is described on a mobile system that includes multiple interconnected communication nodes that include an onboard supervisory controller. A method for monitoring the CAN includes identifying links and associated nodes between all nodes of the CAN and ranking all links according to their order of connection to the monitoring controller, which includes that those of the links located close to the monitoring controller are assigned lower levels and those of the connections located remote from the supervisory controller are assigned higher levels. For each of the links, the associated node remote from the monitor is identified. The onboard monitor controller determines a fault signature for each of the links, starting with the link having the highest severity, the fault signature including identified associated nodes remote from the monitor for each of the corresponding links.

Figurenlistecharacter list

Nachstehend werden eine oder mehrere Ausführungsformen beispielhaft in Bezug auf die begleitenden Zeichnungen beschrieben, in denen:

  • 1 ein mobiles Fahrzeug, das ein Controller Area Network (CAN) umfasst, welches einen CAN-Bus und mehrere Knoten, z.B. Controller, umfasst, und eine externe Einrichtung gemäß der Offenbarung zeigt;
  • 2 ein beispielhaftes CAN, das Controller, einen Überwachungscontroller, eine Leistungsversorgung, eine Batteriesterneinrichtung und eine Masse, die jeweils über eine Verbindung verbunden sind wie gezeigt, umfasst, gemäß der Offenbarung zeigt;
  • 3 eine bordeigene CAN-Überwachungsroutine, die inaktive Controller in einem CAN detektiert, gemäß der Offenbarung zeigt;
  • 4 eine bordeigene Routine, um Fehlersignaturen für ein CAN abzuleiten, gemäß der Offenbarung zeigt; und
  • 5-1 bis 5-10 eine Ausführung der bordeigenen Routine zum Ableiten von Fehlersignaturen für eine Ausführungsform eines CAN, was umfasst, dass der Ablauf der bordeigenen Routine zum Ableiten der Fehlersignaturen gezeigt wird, gemäß der Offenbarung zeigen.
One or more embodiments are described below by way of example with reference to the accompanying drawings, in which:
  • 1 a mobile vehicle including a controller area network (CAN) including a CAN bus and multiple nodes, eg, controllers, and showing an external device according to the disclosure;
  • 2 FIG. 10 shows an example CAN including controllers, a supervisory controller, a power supply, a battery star device, and a ground, each connected via a link as shown, according to the disclosure;
  • 3 Figure 12 shows an onboard CAN monitor routine that detects inactive controllers in a CAN, according to the disclosure;
  • 4 Figure 12 shows an onboard routine to derive fault signatures for a CAN, according to the disclosure; and
  • 5-1 until 5-10 10 shows an execution of the onboard routine for deriving error signatures for an embodiment of a CAN, including showing the flow of the onboard routine for deriving the error signatures, according to the disclosure.

DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION

Nun auf die Zeichnungen Bezug nehmend, wobei die Darstellungen lediglich dem Zweck des Erläuterns bestimmter beispielhafter Ausführungsformen und nicht dem Zweck des Einschränkens dieser dienen, zeigt 1 schematisch ein mobiles Fahrzeug 8, das ein Controller Area Network (CAN) 50 mit einem CAN-Bus 15 und mehreren Knoten, d.h. Controllern 10, 20, 30 und 40, umfasst. Der Begriff „Knoten“ bezieht sich auf jede aktive elektronische Einrichtung, die über Signale mit dem CAN-Bus 15 verbunden ist und eine Information über den CAN-Bus 15 senden, empfangen und/oder weiterleiten kann. Jeder der Controller 10, 20, 30 und 40 ist über Signale mit dem CAN-Bus 15 verbunden und elektrisch mit einem Leistungsnetz 60 und einem Massenetz 70 verbunden. Jeder der Controller 10, 20, 30 und 40 umfasst einen elektronischen Controller oder eine andere fahrzeugeigene elektronische Einrichtung, die ausgestaltet ist, um in einem Subsystem des Fahrzeugs 8 den Betrieb zu überwachen und/oder zu steuern und/oder Kommunikationen zu steuern und über den CAN-Bus 15 zu kommunizieren. Bei einer Ausführungsform ist einer der Controller, z.B. Controller 40, ausgestaltet, um das CAN 50 und den CAN-Bus 15 zu überwachen, und er kann hierin als Überwachungseinrichtung, CAN- Überwachungseinrichtung oder Überwachungsknoten bezeichnet werden. Alternativ oder zusätzlich kann jeder der Controller 10, 20, 30 und 40 ausgestaltet sein, um das CAN 50 und den CAN-Bus 15 zu überwachen. Der Controller 40 ist über Signale mit einer Kommunikationseinrichtung 42 verbunden, die ausgestaltet ist, um eine digitale Nachricht an eine externe Einrichtung 45 zu übermitteln, wobei eine direkte drahtgebundene Verbindung 43 und/oder eine drahtlose Telematikverbindung 44 eingesetzt werden. Die direkte drahtgebundene Verbindung 43 und die drahtlose Telematikverbindung 44 setzen ein beliebiges geeignetes Kommunikationsprotokoll/beliebige geeignete Kommunikationsprotokolle ein.Referring now to the drawings, which shows the illustrations for the purpose of explaining certain example embodiments only and not for the purpose of limiting them 1 Schematically a mobile vehicle 8 comprising a Controller Area Network (CAN) 50 with a CAN bus 15 and a plurality of nodes, ie controllers 10, 20, 30 and 40. The term "node" refers to any active electronic device that is connected to the CAN bus 15 via signals and can transmit, receive and/or forward information via the CAN bus 15 . Each of the controllers 10 , 20 , 30 and 40 is signally connected to the CAN bus 15 and electrically connected to a power grid 60 and a ground grid 70 . Each of the controllers 10, 20, 30 and 40 comprises an electronic controller or other onboard electronic device configured to monitor and/or control operation and/or control communications in a subsystem of the vehicle 8 and via which CAN bus 15 to communicate. In one embodiment, one of the controllers, eg, controller 40, is configured to monitor the CAN 50 and the CAN bus 15 and may be referred to herein as a monitor, CAN monitor, or monitor node. Alternatively or additionally, each of the controllers 10 , 20 , 30 and 40 can be configured to monitor the CAN 50 and the CAN bus 15 . The controller 40 is connected via signals to a communication device 42, which is designed to transmit a digital message to an external device 45, wherein a direct wired connection 43 and/or a wireless telematics connection 44 can be used. Direct wired connection 43 and wireless telematics connection 44 employ any suitable communication protocol(s).

Die dargestellte Ausführungsform des CAN 50 ist ein nicht einschränkendes Beispiel eines CAN, das bei einer beliebigen mehrerer Systemausgestaltungen eingesetzt werden kann. Jedes CAN setzt eine Netztopologie ein, die eine physikalische Anordnung von Leistungs-, Masse- und Kommunikationsverbindungen zwischen den Knoten umfasst, die Controller und andere elektronische Einrichtungen umfassen. Eine Netztopologie, wie beispielsweise ein CAN, bezieht sich auf eine verbindende Anordnung zwischen Netzelementen und umfasst vorzugsweise mehrere Knoten mit gekoppelten oder verteilten Leistungs-, Masse- oder Kommunikationsverbindungen dazwischen. Es werden Topologiediagramme entwickelt, die eine Kommunikationstopologie, eine Leistungstopologie und eine Massetopologie umfassen. Die Netztopologie bezieht sich auf eine Kommunikations-, Leistungs- und Massekonnektivität zwischen den Knoten und anderen Elementen, z.B. Leistungs- und Massequellen, und physikalische oder lineare Distanzen zwischen Knoten, physikalische Kopplungen, Übertragungsraten und/oder Signaltypen sind sekundäre Betrachtungen. Somit kann eine gemeinsame Netztopologie an unterschiedlichen Fahrzeugausgestaltungen zu finden sein, die ähnliche oder gemeinsame Funktionen bereitstellen.The illustrated embodiment of the CAN 50 is a non-limiting example of a CAN that may be employed in any of a number of system configurations. Each CAN employs a network topology that includes a physical arrangement of power, ground, and communication connections between nodes that contain controllers and other electronic devices. A network topology, such as a CAN, refers to an interconnecting arrangement between network elements and preferably includes multiple nodes with coupled or distributed power, ground, or communication links therebetween. Topology diagrams are developed that include a communication topology, a power topology, and a ground topology. Network topology refers to communication, power, and ground connectivity between nodes and other elements, e.g., power and ground sources, and physical or linear distances between nodes, physical couplings, transmission rates, and/or signal types are secondary considerations. Thus, a common network topology may be found on different vehicle designs that provide similar or common functionality.

Der CAN-Bus 15 umfasst mehrere Kommunikationsverbindungen, die eine erste Kommunikationsverbindung 51 zwischen den Controllern 10 und 20, eine zweite Kommunikationsverbindung 53 zwischen den Controllern 20 und 30 und eine dritte Kommunikationsverbindung 55 zwischen den Controllern 30 und 40 umfassen. Das Leistungsnetz 60 umfasst eine Leistungsversorgung 62, z.B. eine Batterie, die elektrisch mit einem ersten Leistungsbus 64 und einem zweiten Leistungsbus 66 verbunden ist, um den Controllern 10, 20, 30 und 40 über Leistungsverbindungen elektrische Leistung bereitzustellen. Wie gezeigt ist die Leistungsversorgung 62 mit dem ersten Leistungsbus 64 und dem zweiten Leistungsbus 66 über Leistungsverbindungen, die in einer seriellen Ausgestaltung angeordnet sind, verbunden, wobei eine Leistungsverbindung 69 den ersten und den zweiten Leistungsbus 64 und 66 verbindet. Der erste Leistungsbus 64 ist mit den Controllern 10 und 20 über Leistungsverbindungen verbunden, die in einer Sternkonfiguration angeordnet sind, wobei Leistungsverbindung 61 den ersten Leistungsbus 64 und den Controller 10 verbindet und Leistungsverbindung 63 den ersten Leistungsbus 64 mit dem Controller 20 verbindet. Der zweite Leistungsbus 66 ist mit den Controllern 30 und 40 über Leistungsverbindungen verbunden, die in einer Sternkonfiguration angeordnet sind, wobei Leistungsverbindung 65 den zweiten Leistungsbus 66 und den Controller 30 verbindet und Leistungsverbindung 67 den zweiten Leistungsbus 66 mit dem Controller 40 verbindet. Das Massenetz 70 umfasst eine Fahrzeugmasse 72, die mit einem ersten Massebus 74 und einem zweiten Massebus 76 verbunden ist, um den Controllern 10, 20, 30 und 40 über Masseverbindungen eine elektrische Masse bereitzustellen. Wie gezeigt ist die Fahrzeugmasse 72 über Masseverbindungen, die in einer seriellen Ausgestaltung angeordnet sind, mit dem ersten Massebus 74 und dem zweiten Massebus 76 verbunden, wobei Masseverbindung 79 den ersten und zweiten Massebus 74 und 76 verbindet. Der erste Massebus 74 ist mit den Controllern 10 und 20 über Masseverbindungen verbunden, die in einer Sternkonfiguration angeordnet sind, wobei Masseverbindung 71 den ersten Massebus 74 und den Controller 10 verbindet und Masseverbindung 73 den ersten Massebus 74 mit dem Controller 20 verbindet. Der zweite Massebus 76 ist mit den Controllern 30 und 40 über Masseverbindungen verbunden, die in einer Sternkonfiguration angeordnet sind, wobei Masseverbindung 75 den zweiten Massebus 76 und den Controller 30 verbindet und Masseverbindung 77 den zweiten Massebus 76 mit dem Controller 40 verbindet. Andere Topologien für die Verteilung von Kommunikationen, Leistung und Masse für die Controller 10, 20, 30 und 40 und den CAN-Bus 15 können mit einer ähnlichen Auswirkung eingesetzt werden.The CAN bus 15 includes a plurality of communication links, including a first communication link 51 between the controllers 10 and 20, a second communication link 53 between the controllers 20 and 30, and a third communication link 55 between the controllers 30 and 40. Power grid 60 includes a power supply 62, such as a battery, electrically connected to a first power bus 64 and a second power bus 66 for providing electrical power to controllers 10, 20, 30, and 40 via power connections. As shown, the power supply 62 is connected to the first power bus 64 and the second power bus 66 via power links arranged in a serial configuration, with a power link 69 connecting the first and second power buses 64 and 66 . First power bus 64 is connected to controllers 10 and 20 via power links arranged in a star configuration, with power link 61 connecting first power bus 64 and controller 10 and power link 63 connecting first power bus 64 to controller 20 . The second power bus 66 is connected to the controllers 30 and 40 via power links arranged in a star configuration, with power link 65 connecting the second power bus 66 and the controller 30 and power link 67 connecting the second power bus 66 to the controller 40. The ground network 70 includes a vehicle ground 72 connected to a first ground bus 74 and a second ground bus 76 to provide an electrical ground to the controllers 10, 20, 30 and 40 through ground connections. As shown, vehicle ground 72 is connected to first ground bus 74 and second ground bus 76 via ground connections arranged in a series configuration, with ground connection 79 connecting first and second ground buses 74 and 76 . First ground bus 74 is connected to controllers 10 and 20 via ground connections arranged in a star configuration, with ground connection 71 connecting first ground bus 74 and controller 10 and ground connection 73 connecting first ground bus 74 to controller 20 . The second ground bus 76 is connected to the controllers 30 and 40 via ground connections arranged in a star configuration, with ground connection 75 connecting the second ground bus 76 and the controller 30 and ground connection 77 connecting the second ground bus 76 to the controller 40 . Other topologies for distributing communications, power, and ground for the controllers 10, 20, 30, and 40 and the CAN bus 15 may be employed with a similar effect.

Die externe Einrichtung 45 kann ein in der Hand gehaltenes Abtastwerkzeug umfassen, das an einer Servicestelle in einer Fahrzeugdiagnose- und -reparaturwerkstatt eingesetzt wird. Die externe Einrichtung 45 kann auch eine entfernt angeordnete Servicewerkstatt umfassen. Die externe Einrichtung 45 ist ausgestaltet, um mit der Kommunikationseinrichtung 42 zu kommunizieren, was das Abfragen des Controllers 40 hinsichtlich Nachrichten umfasst. Die externe Einrichtung 45 umfasst vorzugsweise ein Controllerelement, ein Speicherelement, das eine Systemspezifische Netztopologie umfasst, die mit dem CAN 50 in Korrelation gebracht werden kann, und ein analytisches Element, das wie hierin beschrieben arbeitet, um aus der Ferne einen Fehler in dem CAN 50 zu identifizieren. Wie hierin beschrieben erzeugt der bordeigene Überwachungscontroller, z.B. Controller 40, eine Fehlersignatur für jede der Verbindungen für die systemspezifische Netztopologie, die an die externe Einrichtung 45 übermittelt werden kann, und die externe Einrichtung 45 kann eingesetzt werden, um auf der Grundlage davon einen Fehler zu detektieren und zu isolieren.External device 45 may include a hand-held scanning tool used at a service station in a vehicle diagnostic and repair facility. External facility 45 may also include a remote service facility. External device 45 is configured to communicate with communication device 42, including querying controller 40 for messages. The external device 45 preferably comprises a controller element, a memory element comprising a system-specific network topology that can be correlated with the CAN 50, and an analytical element that operates as described herein to remotely detect a fault in the CAN 50 to identify. As described herein, the onboard monitoring controller, e.g., controller 40, generates a fault signature for each of the links for the native network topology that can be communicated to the external device 45, and the external device 45 can be used to report a fault based thereon detect and isolate.

Steuermodul, Modul, Steuerung, Controller, Steuereinheit, ECU, Prozessor und ähnliche Begriffe umfassen eines oder verschiedene Kombinationen eines/r oder mehrerer anwendungsspezifischen/r integrierten/r Schaltkreise(s) (ASIC von Application Specific Integrated Circuit), elektronischen/r Schaltkreise(s), zentralen/r Verarbeitungseinheit(en) (vorzugsweise Mikroprozessor(en)) und einen zugeordneten Speicher (Nur-Lese-Speicher, programmierbarer Nur-Lese-Speicher, Direktzugriffsspeicher, Festplatte etc.), die ein(e) oder mehrere Software- oder Firmwareprogramme oder Routinen ausführen, Schaltkreise(s) einer kombinatorischen Logik, Eingabe/Ausgabe-Schaltkreise(s) und -Einrichtungen, geeigneten Signalkonditionierungs- und -pufferschaltung und andere Komponenten, um die beschriebene Funktionalität bereitzustellen. Software, Firmware, Programme, Anweisungen, Routinen, Code, Algorithmen und ähnliche Begriffe umfassen jegliche Anweisungssätze, die Kalibrierungen und Nachschlagetabellen umfassen. Das Steuermodul weist einen Satz von Steuerroutinen auf, die ausgeführt werden, um die gewünschten Funktionen bereitzustellen. Routinen werden beispielsweise durch eine zentrale Verarbeitungseinheit ausgeführt und dienen dazu, Eingänge von Erfassungseinrichtungen und anderen vernetzten Steuermodulen zu überwachen und Steuer- und Diagnoseroutinen auszuführen, um den Betrieb von Aktoren zu steuern. Routinen können in regelmäßigen Intervallen, beispielsweise alle 100 Mikrosekunden, 3,125, 6,25, 12,5, 25 und 100 Millisekunden, während des fortwährenden Maschinen- und Fahrzeugbetriebs ausgeführt werden. Alternativ können Routinen in Ansprechen auf das Auftreten eines Ereignisses ausgeführt werden.Control module, module, controller, controller, control unit, ECU, processor, and similar terms include one or various combinations of one or more Application Specific Integrated Circuit(s) (ASIC), electronic circuit(s)( s), central processing unit(s) (preferably microprocessor(s)) and associated memory (read only memory, programmable read only memory, random access memory, hard disk, etc.) containing one or more software - or execute firmware programs or routines, combinational logic circuit(s), input/output circuit(s) and devices, appropriate signal conditioning and buffering circuitry, and other components to provide the described functionality. Software, firmware, programs, instructions, routines, code, algorithms, and similar terms include any set of instructions that include calibrations and look-up tables. The control module has a set of control routines that are executed to provide the desired functions. Routines are executed, for example, by a central processing unit and are used to monitor inputs from detectors and other networked control modules and to execute control and diagnostic routines to control the operation of actuators. Routines may be executed at regular intervals, for example, every 100 microseconds, 3.125, 6.25, 12.5, 25, and 100 milliseconds during ongoing engine and vehicle operation. Alternatively, routines can be executed in response to the occurrence of an event.

Jeder der Controller 10, 20, 30 und 40 überträgt und empfängt Nachrichten über das CAN 50 über den CAN-Bus 15, wobei Nachrichtenübertragungsraten entweder mit der gleichen oder mit verschiedenen Perioden für verschiedene der Controller erfolgen. Eine CAN-Nachricht weist ein bekanntes, vorbestimmtes Format auf, das bei einer Ausführungsform einen Frame-Start (SOF von start of frame), einen Identifikator (11-Bit-ldentifikator), eine einzelne Fernübertragungsanforderung (RTR von remote transmission request), eine dominante einzelne Identifikatorerweiterung (IDE von identifier extension), ein Reservebit (r0), einen Datenlängencode (DLC von data length code) mit 4 Bit, bis zu 64 Bit Daten (DATA), eine zyklische Redundanzprüfung (CDC von cyclic redundancy check) mit 16 Bit, eine Bestätigung (ACK von acknowledgement) mit 2 Bit, ein Frame-Ende (EOF von end-of-frame) mit 7 Bit und einen Zwischen-Frame-Raum (IFS von interframe space) mit 3 Bit umfasst. Eine CAN-Nachricht kann beschädigt sein, wobei bekannte Störungen Füllstörungen, Formstörungen, ACK-Störungen, Bit-1-Störungen, Bit-0-Störungen und CRC-Störungen umfassen. Die Störungen werden verwendet, um einen Störungswarnungsstatus zu erzeugen, der einen Störung-Aktiv-Status oder einen Störung-Passiv-Status oder einen Bus-Aus-Störungsstatus umfasst. Der Störung-Aktiv-Status, der Störung-Passiv-Status und der Bus-Aus-Störungsstatus werden auf der Grundlage einer zunehmenden Menge an detektierten Busstörungs-Frames, d.h. eines sich erhöhenden Bus-Störungszählwerts, zugeordnet. Bekannte CAN-Busprotokolle umfassen das Bereitstellen einer Netzweitendatenkonsistenz, was zu einer Globalisierung von lokalen Störungen führen kann. Dies ermöglicht einem fehlerhaften, nicht stillstehenden Controller, eine Nachricht an dem CAN-Bus 15 zu beschädigen, die von einem anderen der Controller stammt.Each of the controllers 10, 20, 30 and 40 transmits and receives messages over the CAN 50 over the CAN bus 15, with message transmission rates being either at the same or different periods for different of the controllers. A CAN message has a known, predetermined format that, in one embodiment, includes a start of frame (SOF), an identifier (11-bit identifier), a remote transmission request (RTR), a dominant single identifier extension (IDE), a spare bit (r0), a data length code (DLC) with 4 bits, up to 64 bits of data (DATA), a cyclic redundancy check (CDC) with 16 bit, a 2-bit acknowledgment (ACK), a 7-bit end-of-frame (EOF) and a 3-bit interframe space (IFS). A CAN message can be corrupted, with known errors including fill errors, shape errors, ACK errors, bit 1 errors, bit 0 errors, and CRC errors. The faults are used to generate a fault warning status, which includes a fault-active status or a fault-passive status or a bus-off fault status. The fault active status, fault passive status, and bus off fault status are assigned based on an increasing amount of detected bus fault frames, i.e. an increasing bus fault count. Known CAN bus protocols include providing network-wide data consistency, which can lead to globalization of local disturbances. This allows a faulty non-idle controller to corrupt a message on the CAN bus 15 originating from another of the controllers.

Ein Kommunikationsfehler, der zu einer verlorenen Nachricht an dem CAN-Bus führt, kann das Ergebnis eines Fehlers bei einem der Controller, eines Fehlers bei einer der Kommunikationsverbindungen des CAN-Busses, eines Fehlers bei einer der Leistungsverbindungen des Leistungsnetzes und eines Fehlers bei einer der Masseverbindungen des Massenetzes sein. Es können Topologiediagramme entwickelt werden, die eine Kommunikationstopologie, eine Leistungstopologie und eine Massetopologie umfassen. Es wird eine Erreichbarkeitsanalyse für jedes der Topologiediagramme mit entfernter Verbindungsunterbrechung durchgeführt. Eine Ausführungsform einer Erreichbarkeitsanalyse eines Topologiediagramms wird nachstehend in Bezug auf 2 beschrieben.A communication failure that results in a lost message on the CAN bus can be the result of a failure in one of the controllers, a failure in one of the communication links of the CAN bus, a failure in one of the power connections of the power grid, and a failure in one of the ground connections of the ground network. Topology diagrams can be developed that include a communication topology, a power topology, and a ground topology. A reachability analysis is performed for each of the topology diagrams with disconnection removed. An embodiment of a topology diagram reachability analysis is described below with reference to FIG 2 described.

2 zeigt eine Netztopologie für ein beispielhaftes CAN 200, die die Controller ECU1 202, ECU2 204 und ECU3 206, einen Überwachungscontroller (Überwachungseinrichtung) 208, eine Leistungsversorgung 210, eine Batteriesterneinrichtung 212 und Masse 214 umfasst, die über Kommunikationsverbindungen 201, Leistungsverbindungen 211 und Masseverbindungen 221 wie gezeigt verbunden sind. Die Überwachungseinrichtung 208 beobachtet Symptome, die verschiedene Fehlersätze angeben, wobei jeder Fehlersatz eine entsprechende Fehlersignatur aufweist, die einen Satz von inaktiven Controllern umfasst. Die Überwachungsfunktion ist als durch die Überwachungseinrichtung 208 ausgeführt gezeigt, wobei jedoch zu verstehen ist, dass jeder beliebige oder alle der Controller ECU1 202, ECU2 204, ECU3 206 und die Überwachungseinrichtung 208 an dem Kommunikationsbus ausgestaltet sein können, um eine Fehlerdiagnose auszuführen, da jede Nachricht an dem CAN-Bus an einem beliebigen der und allen Controllerknoten beobachtet werden kann. 2 shows a network topology for an example CAN 200, which includes the controllers ECU1 202, ECU2 204 and ECU3 206, a monitoring controller (monitoring device) 208, a power supply 210, a battery star device 212 and ground 214, via communication links 201, power links 211 and ground links 221 connected as shown. Monitor 208 observes symptoms indicative of various fault sets, each fault set having a corresponding fault signature that includes a set of inactive controllers. The monitoring function is shown as being performed by the monitor 208, however it is to be understood that any or all of the controllers ECU1 202, ECU2 204, ECU3 206 and the monitor 208 on the communication bus may be configured to perform fault diagnosis as each Message can be observed on the CAN bus at any and all controller nodes.

Für die Netztopologie wird ein Fehlermodell erzeugt, das mehrere Symptome, die durch den Überwachungscontroller für jeden mehrerer Fehler beobachtet werden, und einen entsprechenden Fehlersignaturvektor Vf inactive umfasst, der einen Satz von beobachteten inaktiven Controllern, die diesem zugehörig sind, umfasst. Ein beispielhaftes Fehlermodell, das der in Bezug auf 2 gezeigten Netztopologie zugehörig ist, umfasst folgendes in Bezug auf Tabelle 1, wobei die Netztopologie für das CAN 200 die Controller 202 [ECU1], ECU2 204 [ECU2] und ECU3 206 [ECU3], die Überwachungseinrichtung 208 [ECUM], die Leistungsversorgung 210 [PS], die Batteriesterneinrichtung 212 [BS] und die Masse 214 [G] umfasst. Das Fehlermodell wird unter Einsatz einer Erreichbarkeitsanalyse der Netztopologie abgeleitet, wobei Symptome einzeln hervorgerufen werden und Kommunikationen überwacht werden, um für jedes Symptom zu ermitteln, welcher der Controller inaktiv ist. Tabelle 1 Fehlersatz Symptom Inhalte von Fehlersignaturvektor Vf inactive f1 Unterbrochene Verbindung [ECU1]-[ECU2] Unterbrochene Verbindung [ECU1]-[PS] Unterbrochene Verbindung [ECU1]-[G] [ECU1]-Fehler [ECU1] f2 Unterbrochene Verbindung [ECU2]-[PS] Unterbrochene Verbindung [ECU2]-[G] [ECU2]-Fehler [ECU2] f3 Unterbrochene Verbindung [ECU3]-[BS] Unterbrochene Verbindung [ECU3]-[G] [ECU3]-Fehler [ECU3] f4 Unterbrochene Verbindung [ECU2]-[ECU3] [ECU1], [ECU2] f5 Unterbrochene Verbindung [PS]-[BS] [ECU1], [ECU3] f6 Unterbrochene Verbindung [ECU1]-[ECU2] CAN-Bus-Kurzschluss [ECU1], [ECU2], [ECU3] A fault model is generated for the network topology that includes a plurality of symptoms observed by the monitoring controller for each of a plurality of faults and a corresponding fault signature vector V f inactive that includes a set of observed inactive controllers associated with it. An example error model that is related to 2 associated network topology shown includes the following with respect to Table 1, wherein the network topology for the CAN 200 the controllers 202 [ECU1], ECU2 204 [ECU2] and ECU3 206 [ECU3], the monitor 208 [ECU M ], the power supply 210 [PS], the battery star device 212 [BS] and the mass 214 [G]. The fault model is derived using a reachability analysis of the network topology, invoking symptoms one at a time and monitoring communications to determine which of the controllers is down for each symptom. Table 1 error set symptom Contents of error signature vector V f inactive f1 Broken connection [ECU1]-[ECU2] Broken connection [ECU1]-[PS] Broken connection [ECU1]-[G] [ECU1] error [ECU1] f2 Broken connection [ECU2]-[PS] Broken connection [ECU2]-[G] [ECU2] error [ECU2] f3 Broken connection [ECU3]-[BS] Broken connection [ECU3]-[G] [ECU3] error [ECU3] f4 Broken connection [ECU2]-[ECU3] [ECU1], [ECU2] f5 Broken connection [PS]-[BS] [ECU1], [ECU3] f6 Broken connection [ECU1]-[ECU2] CAN bus short circuit [ECU1], [ECU2], [ECU3]

Ein erster Fehlersatz f1 kann ein Symptom einer unterbrochenen Leistungsverbindung 211 zwischen Controller ECU1 202 und Batteriesterneinrichtung 212, einer unterbrochenen Masseverbindung 221 zwischen Controller ECU1 202 und Masse 214, einer unterbrochenen Kommunikationsverbindung 201 zwischen Controller ECU1 202 und Controller ECU2 204 und einen Fehler bei Controller ECU1 202 umfassen, wobei ein entsprechender Fehlersignaturvektor vf inactive Controller ECU1 202 als inaktiv umfasst. Ein zweiter Fehlersatz f2 kann ein Symptom einer unterbrochenen Leistungsverbindung 211 zwischen Controller ECU2 204 und Batterie 210, einer unterbrochenen Masseverbindung 221 zwischen Controller ECU2 204 und Masse 214 und einen Fehler bei Controller ECU2 204 umfassen, wobei ein entsprechender Fehlersignaturvektor Vf inactive Controller ECU2 204 als inaktiv umfasst. Ein dritter Fehlersatz f3 kann ein Symptom einer unterbrochenen Leistungsverbindung 211 zwischen Controller ECU3 206 und Batteriesterneinrichtung 212, einer unterbrochenen Masseverbindung 221 zwischen Controller ECU3 206 und Masse 214 und einen Fehler bei Controller ECU3 206 umfassen, wobei ein entsprechender Fehlersignaturvektor Vfinactive Controller ECU3 206 als inaktiv umfasst. Ein vierter Fehlersatz f4 kann ein Symptom einer unterbrochenen Kommunikationsverbindung 201 zwischen Controller ECU2 204 und Controller ECU3 206 umfassen, wobei ein entsprechender Fehlersignaturvektor Vf inactive die Controller ECU1 202 und ECU2 204 als inaktiv umfasst. Ein fünfter Fehlersatz f5 kann ein Symptom einer unterbrochenen Leistungsverbindung 211 zwischen Batterie 210 und Batteriesterneinrichtung 212 umfassen, wobei ein entsprechender Fehlersignaturvektor Vf inactive die Controller ECU1 202 und ECU3 206 als inaktiv umfasst. Ein sechster Fehlersatz f6 kann ein Symptom einer unterbrochenen Kommunikationsverbindung 201 zwischen Überwachungseinrichtung 208 und Controller ECU3 206 umfassen, wobei ein entsprechender Fehlersignaturvektor Vf inactive die Controller ECU1 202, ECU2 204 und ECU3 206 als inaktiv umfasst. Andere Fehlersignaturvektoren Vf inactivekönnen gemäß einer spezifischen Architektur eines CAN-Systems entwickelt werden, wobei eine Erreichbarkeitsanalyse eines Topologiediagramms des CAN eingesetzt wird. Die Überwachungsfunktion, die eine Fehlerdiagnose umfasst, kann in einem beliebigen der oder allen Controllern ECU1 202, ECU2 204, ECU3 206 und der Überwachungseinrichtung 208 ausgeführt werden, um (einen) Fehler bei den Kommunikationsverbindungen 201, den Leistungsverbindungen 211 und den Masseverbindungen 221 zu identifizieren und einen inaktiven Controller/inaktive Controller zu identifizieren, falls vorhanden. Dies ermöglicht eine Entwicklung von geeigneten Fehlersätzen und Symptomen und entsprechenden Fehlersignaturvektoren vf inactive, um einen einzelnen verfolgbaren Fehler in dem CAN zu isolieren.A first error set f1 can be a symptom of an interrupted power connection 211 between controller ECU1 202 and battery star device 212, an interrupted ground connection 221 between controller ECU1 202 and ground 214, an interrupted communication link 201 between controller ECU1 202 and controller ECU2 204 and a fault in controller ECU1 202 where a corresponding fault signature vector v f includes inactive controller ECU1 202 as inactive. A second fault set f2 may include a symptom of a broken power connection 211 between controller ECU2 204 and battery 210, a broken ground connection 221 between controller ECU2 204 and ground 214, and a fault at controller ECU2 204, with a corresponding fault signature vector V f inactive controller ECU2 204 as includes inactive. A third fault set f3 may include a symptom of a broken power connection 211 between controller ECU3 206 and battery star device 212, a broken ground connection 221 between controller ECU3 206 and ground 214 and a fault at controller ECU3 206, with a corresponding fault signature vector Vf inactive controller ECU3 206 as inactive includes. A fourth fault set f4 may include a symptom of a broken communication link 201 between controller ECU2 204 and controller ECU3 206, with a corresponding fault signature vector V f inactive including controllers ECU1 202 and ECU2 204 as inactive. A fifth fault set f5 may include a symptom of a broken power connection 211 between battery 210 and battery star device 212, with a corresponding fault signature vector V f inactive including controllers ECU1 202 and ECU3 206 as inactive. A sixth set of errors f6 can be a symptom of a broken comm communication link 201 between monitor 208 and controller ECU3 206, wherein a corresponding fault signature vector V f inactive includes controllers ECU1 202, ECU2 204 and ECU3 206 as inactive. Other error signature vectors V f inactive can be developed according to a specific architecture of a CAN system using a reachability analysis of a topology diagram of the CAN. The monitoring function, which includes fault diagnosis, can be carried out in any or all of the controllers ECU1 202, ECU2 204, ECU3 206 and the monitor 208 in order to identify faults in the communication links 201, the power links 211 and the ground links 221 and identify inactive controller(s), if any. This allows development of appropriate fault sets and symptoms and corresponding fault signature vectors v f inactive to isolate a single traceable fault in the CAN.

Nachstehend wird eine bordeigene Routine zum Ableiten von Fehlersignaturen für ein CAN für ein fahrzeuginternes Kommunikationsnetz beschrieben. Die abgeleiteten Fehlersignaturen ermöglichen eine Fehlerdiagnose für fahrzeuginterne Kommunikationsfehler, die Fehler umfassen, die der Kommunikationsverbindung 201, der Leistungsverbindung 211 und der Masseverbindung 221 in Form von Verbindungsunterbrechungsfehlern und/oder Controllerfehlern und/oder Verbindungskurzschlussfehlern zugehörig sind. Der Algorithmus benötigt viel weniger Speicher und CPU-Zeit für eine bordeigene Realisierung als bekannte Ansätze einer Erreichbarkeitsanalyse, welche Multiplikationen der Verbindungsmatrix umfassen. Ein Komplexitätsvergleich gibt an, dass die Komplexität eines Kommunikationsnetzes mit N Knoten beim Einsetzen des hierin beschriebenen Systems gemäß O(N2) ermittelt werden kann, im Gegensatz zu einem Komplexitätsfaktor , der für bekannte Systeme gemäß O(N5) ermittelt werden kann. Diese Reduzierung der Komplexität führt zu einer Kostenreduktion einer bordeigenen Realisierung von Controllern und einer entsprechenden Verbesserung der Zuverlässigkeit.An onboard routine for deriving fault signatures for a CAN for an in-vehicle communication network is described below. The derived fault signatures enable fault diagnosis for in-vehicle communication faults, including faults associated with the communication link 201, the power link 211, and the ground link 221 in the form of open link faults and/or controller faults and/or short link faults. The algorithm requires much less memory and CPU time for an on-board implementation than known approaches to reachability analysis involving multiplications of the connection matrix. A complexity comparison indicates that the complexity of a communication network with N nodes using the system described herein can be determined according to O(N 2 ), in contrast to a complexity factor , which can be determined according to O(N 5 ) for known systems. This reduction in complexity leads to a cost reduction of on-board implementation of controllers and a corresponding improvement in reliability.

3 zeigt schematisch eine Netztopologie 300, die einen Überwachungscontroller (eine Überwachungseinrichtung) 308 und mehrere kommunizierende Knoten umfasst, welche Knoten k 304, Knoten j 302 und die Knoten ni 306, d.h. n1, n2, ..., nm, umfassen. Es kann beobachtet werden, dass eine durch Überwachungseinrichtung 308 detektierte Fehlersignatur, die einem Fehler in der Verbindung 303 zwischen Knoten j 302 und Knoten k 304 zugehörig ist, alle Controller und anderen Knoten, die sich in den Fehlersignatursätzen der Verbindungen zwischen den Knoten ni (i = 1, 2, ..., m) 306 und Knoten j 302 befinden, umfasst, da jene Verbindungen über die Verbindung 303 mit der Überwachungseinrichtung 308 verbunden sind. Ferner befindet sich Knoten j 302 auch in dem Fehlersignatursatz, wenn er ein Controller ist. Ein Kommunikationsfehler, der zu einer verlorenen Nachricht an dem CAN-Bus führt, kann das Ergebnis eines Fehlers bei einem der Controller, eines Fehlers bei einer der Kommunikationsverbindungen des CAN-Busses, eines Fehlers bei einer der Leistungsverbindungen des Leistungsnetzes und eines Fehlers bei einer der Masseverbindungen des Massenetzes sein. 3 Figure 1 shows schematically a network topology 300 comprising a supervisory controller (monitor) 308 and several communicating nodes comprising node k 304, node j 302 and node n i 306, ie n 1 , n 2 , ..., n m . It can be observed that a failure signature detected by monitor 308 associated with a failure in the link 303 between node j 302 and node k 304, all controllers and other nodes included in the failure signature sets of the links between nodes ni (i = 1, 2, ..., m) 306 and node j 302 since those links are connected to monitor 308 via link 303. Furthermore, node j 302 is also in the error signature set if it is a controller. A communication failure that results in a lost message on the CAN bus can be the result of a failure in one of the controllers, a failure in one of the communication links of the CAN bus, a failure in one of the power connections of the power grid, and a failure in one of the ground connections of the ground network.

4 zeigt schematisch eine Ausführungsform einer bordeigenen Routine 400 zum Ableiten von Fehlersignaturen für ein CAN, die an einem mobilen System eingesetzt werden kann, welches mehrere CAN-Elemente umfasst, die mehrere verbundene Knoten umfassen, wobei ein bordeigener Überwachungscontroller (Überwachungseinrichtung) umfasst ist. Dies umfasst, dass Kommunikationsverbindungen und zugehörige Knoten zwischen allen Knoten des CAN identifiziert werden. Jede der Verbindungen wird gemäß ihrer Reihenfolge der Verbindung mit dem Überwachungscontroller eingestuft. Niedrigere Stufen werden jenen der Kommunikationsverbindungen zugeordnet, die nahe bei dem Überwachungscontroller angeordnet sind, und höhere Stufen werden jenen der Verbindungen zugeordnet, die fern von dem Überwachungscontroller angeordnet sind. Ferner wird für jede Verbindung der zugehörige Knoten, der fern von der Überwachungseinrichtung angeordnet ist, identifiziert. Der bordeigene Überwachungscontroller ermittelt eine Fehlersignatur für jede der Verbindungen, beginnend mit der Verbindung, die die höchste Einstufung aufweist, wobei jede der Fehlersignaturen identifizierte der zugehörigen Knoten, die fern von der Überwachungseinrichtung angeordnet sind, für jede der entsprechenden Verbindungen umfasst. Die Nähe eines Knotens zu dem Überwachungscontroller wird im Kontext einer Menge an Knoten und Verbindungen ermittelt, die zwischen oder eingreifend zwischen dem entsprechenden Knoten und der Überwachungseinrichtung angeordnet sind. 4 FIG. 4 schematically shows an embodiment of an onboard routine 400 for deriving fault signatures for a CAN, which may be deployed on a mobile system comprising multiple CAN elements comprising multiple connected nodes, wherein an onboard monitor controller (monitor) is included. This includes identifying communication links and associated nodes between all nodes of the CAN. Each of the connections is ranked according to its order of connection to the supervisory controller. Lower levels are assigned to those of the communication links that are located close to the supervisory controller, and higher levels are assigned to those of the links that are remotely located from the supervisory controller. Further, for each connection, the associated node remote from the monitor is identified. The onboard monitor controller determines a fault signature for each of the links beginning with the link having the highest severity, each of the fault signatures including identified ones of associated nodes remote from the monitor for each of the corresponding links. The proximity of a node to the monitoring controller is determined in the context of a set of nodes and links interposed between or intervening between the corresponding node and the monitoring device.

Die bordeigene Routine 400 leitet Fehlersignaturen für ein CAN, z.B. das in Bezug auf 1 beschriebene CAN, ab. Zu Beginn wird die Stufe jeder der Verbindungen auf Null gesetzt (Irank(i) = 0, für i = 1, ..., nlink). Die Überwachungseinrichtung wird als fnode[0] identifiziert und ist der erste bewertete Knoten. Die Stufe k=1 wird als erste Stufe ausgewählt, und es wird ein Zähler n initialisiert (n=0), und es wird ein iterativer Prozess ausgeführt, um die Knoten zu bewerten und einzustufen (405).The onboard routine 400 passes error signatures for a CAN, eg that related to 1 described CAN, from. Initially, the level of each of the links is set to zero (Irank(i)=0, for i=1,...,nlink). The monitor is identified as fnode[0] and is the first node evaluated. Level k=1 is selected as the first level and a counter n is initialized (n=0) and an iterative process is performed to evaluate and rank the nodes (405).

Die Subroutine 410 arbeitet, um alle Verbindungen gemäß ihrer Nähe und Reihenfolge der Verbindung zu der Überwachungseinrichtung einzustufen. Niedrigere Stufen werden jenen der Verbindungen zugeordnet, die nahe bei der Überwachungseinrichtung angeordnet sind, und höhere Stufen werden jenen der Verbindungen zugeordnet, die fern von der Überwachungseinrichtung angeordnet sind. Subroutine 410 operates to rank all connections according to their proximity and order of connection to the monitor. Lower levels are assigned to those of the links located close to the monitor, and higher levels are assigned to those of the links located far from the monitor.

Eine Ausführungsform der Subroutine 410, die arbeitet, um alle Verbindungen gemäß ihrer Reihenfolge der Verbindung zu der Überwachungseinrichtung einzustufen, wird in Bezug auf 4 und Tabelle 2 beschrieben, welche als Legende bereitgestellt wird, wobei die numerisch bezeichneten Kasten und die entsprechenden Funktionen wie folgt ausgeführt werden. Tabelle 2 KASTEN KASTENINHALTE 410 Subroutine 1 411 n<nlink? 412 m=1 413 n=n+1 414 m>nlink? 415 m=m+1 416 lrank[m]=0? 417 node1 [m] = fnode[n]? 418 fnode[k] = node2[m] 419 node2[m] = fnode[n]? 420 fnode[k] = node1 [m] 421 Irank[m]=k; rlrank[k]=m; k=k+1 422 k>nlink? One embodiment of subroutine 410 that operates to rank all connections according to their order of connection to the monitor is described with respect to FIG 4 and Table 2, which is provided as a legend, the numerically labeled boxes and the corresponding functions are performed as follows. Table 2 CRATE BOX CONTENTS 410 sub routine 1 411 n<nlink? 412 m=1 413 n=n+1 414 m>nlink? 415 m=m+1 416 lrank[m]=0? 417 node1[m] = fnode[n]? 418 fnode[k] = node2[m] 419 node2[m] = fnode[n]? 420 fnode[k] = node1 [m] 421 Iran[m]=k; rlrank[k]=m; k=k+1 422 k>klink?

Die Parameter umfassen Zähler (n), Index (m), Knoten (node), Fehlerknoten (fnode), Verbindungsstufe (Irank), Menge an Verbindungen (nlink). Der Zähler wird mit der Menge an Verbindungen verglichen, um zu ermitteln, ob alle Verbindungen bewertet wurden (n<nlink?) (411), und wenn dies der Fall ist (411)(0), fährt der Betrieb mit der zweiten Subroutine 430 fort. Andernfalls (411)(1) wird der Index auf 1 gesetzt (m=1)(412), und wird der Index m mit der Menge an Verbindungen verglichen (m>nlink?)(414). Wenn der Index größer als die Menge an Verbindungen ist (414)(1), wird der Zähler n inkrementiert (n=n+1)(413), und die Routine beginnt von Neuem (411). Wenn der Index kleiner als die Menge an Verbindungen ist (414)(1), wird die Verbindungsstufe abgefragt, um zu ermitteln, ob sie Null ist (Irank[m]=0?)(416), und wenn dies nicht der Fall ist (416)(0), wird der Index m inkrementiert (m=m+1) (415), und der Betrieb springt zu Schritt 414 zurück. Wenn dies der Fall ist (416)(1), wird der erste Knoten mit dem Fehlerknoten verglichen (node1[m] = fnode[n]?) (417), und wenn sie gleich sind (417)(1), wird der nachfolgende Knoten gleich dem Fehlerknoten gesetzt (node2[m] = fnode[n])(418), und der Betrieb fährt mit Schritt 421 fort. Andernfalls (417)(0) wird der nächste Knoten mit node2 verglichen (node2[m] = fnode[n]?) (419). Wenn der nächste Knoten nicht gleich node2 ist (419)(0), wird Index m inkrementiert (m=m+1) (415), und der Betrieb springt zu Schritt 414 zurück. Wenn der nächste Knoten gleich node2 ist (419)(1), wird der Fehlerknoten gleich dem aktuellen Knoten gesetzt (fnode[k] = node1[m])(420), und der Betrieb setzt die Verbindungsstufe und indiziert den k-Term (lrank[m]=k; rlrank[k]=m; k=k+1) (421). Der k-Index wird mit der Anzahl an Verbindungen verglichen (k>nlink?) (422), und wenn er kleiner ist (422)(0), wird Index m inkrementiert (m=m+1) (415), und der Betrieb springt zu Schritt 414 zurück. Andernfalls (422)(1) endet die aktuelle Iteration von Subroutine 1 410, und der Betrieb fährt mit Subroutine 2 430 fort.The parameters include counter (n), index (m), node (node), error node (fnode), link level (Irank), amount of links (nlink). The counter is compared to the set of links to determine whether all links have been evaluated (n<nlink?) (411), and if so (411)(0), operation continues with the second subroutine 430 away. Otherwise (411)(1) the index is set to 1 (m=1)(412), and the index m is compared to the set of links (m>nlink?)(414). If the index is greater than the amount of connections (414)(1), the counter n is incremented (n=n+1)(413) and the routine starts over (411). If the index is less than the amount of links (414)(1), the link rank is queried to see if it is zero (Irank[m]=0?)(416) and if it is not (416)(0), the index m is incremented (m=m+1) (415) and the operation returns to step 414. If they are (416)(1), the first node is compared to the fault node (node1[m] = fnode[n]?) (417), and if they are equal (417)(1), the subsequent nodes are set equal to the error node (node2[m] = fnode[n])(418), and operation proceeds to step 421. Otherwise (417)(0) the next node is compared to node2 (node2[m] = fnode[n]?) (419). If the next node is not equal to node2 (419)(0), index m is incremented (m=m+1) (415) and the operation returns to step 414. If the next node is equal to node2 (419)(1), the fault node is set equal to the current node (fnode[k] = node1[m])(420), and the operation sets the connection level and indexes the k term ( lrank[m]=k;rlrank[k]=m;k=k+1) (421). The k-index is compared to the number of links (k>nlink?) (422), and if it is smaller (422)(0), index m is incremented (m=m+1) (415), and the Operation loops back to step 414. Otherwise (422)(1) the current iteration of subroutine 1 410 ends and operation continues with subroutine 2 430.

Auf diese Weise wird der Knoten fnode[n] (außer für fnode[0] = Überwachungseinrichtung, fnode[n] als der Knoten identifiziert, der in der Verbindung mit Stufe-n, n=1, ..., nlink weiter von der Überwachungseinrichtung entfernt ist). Es wird die Verbindung (Verbindung-m) gefunden, die nicht eingestuft wurde (Irank[m]=0) und mit der Überwachungseinrichtung über die Verbindung mit Stufe-n bei Knoten fnode[n], d.h. entweder node1 [m]=fnode[n] oder node2[m]= fnode[n], verbunden ist. Der Knoten, der in der obigen Verbindung-m weiter von der Überwachungseinrichtung entfernt ist, wird in fnode[k] gespeichert, die Stufe von Verbindung-m wird als Stufe-k gesetzt (Irank[m]=k), Verbindung-m wird als die Verbindung mit Stufe-k gesetzt (rlrank[k]=m), und die Stufe k wird für die nächste Verbindung, die eingestuft werden soll, inkrementiert.In this way, the node fnode[n] (except for fnode[0] = monitor, fnode[n] is identified as the node connected in the link with stage-n, n=1, ..., nlink further from the monitoring device is removed). Find the link (link-m) which is not ranked (Irank[m]=0) and connected to the monitor via the link with rank-n at node fnode[n], ie either node1[m]=fnode[ n] or node2[m]= fnode[n], is connected. The node that is farther from the monitor in the above connection-m is stored in fnode[k], the stage of connection dung-m is set as rank-k (Irank[m]=k), link-m is set as the link with rank-k (rlrank[k]=m), and rank k is used for the next link, the to be classified is incremented.

Die bordeigene Routine 400 zum Erzeugen von Fehlersignaturen für das CAN identifiziert für jede Verbindung, nachdem alle Verbindungen eingestuft wurden (n=nlink), welcher der Knoten weiter von der Überwachungseinrichtung entfernt ist. Dies umfasst, dass mit der Verbindung begonnen wird, die am weitesten von der Überwachungseinrichtung entfernt ist (k=nlink), und überprüft wird, ob der Knoten, der in der Verbindung am weitesten von der Überwachungseinrichtung entfernt ist (fnode[k]), ein Controller ist. Wenn dies der Fall ist, wird der Knoten zu dem Fehlersignatursatz des Verbindungsunterbrechungsfehlers für die Verbindung mit Stufe-k hinzugefügt, d.h. die Verbindung-rlrank[k]. Es werden alle Verbindungen (Verbindung-m) gefunden, die einen höheren Stufenwert haben als Stufe-k (lrank[m]>k) und mit der Überwachungseinrichtung über die Verbindungrlrank[k] verbunden sind, und die Controller in dem Fehlersignatursatz des Verbindungsunterbrechungsfehlers für jene Verbindungen werden zu dem Fehlersignatursatz des Verbindungsunterbrechungsfehlers für Verbindung-rlrank[k] hinzugefügt.The onboard CAN error signature generation routine 400 identifies for each link, after all links have been ranked (n=nlink), which node is farther from the monitor. This involves starting with the link farthest from the monitor (k=nlink) and checking that the node farthest from the monitor in the link (fnode[k]) is a controller. If so, the node is added to the error signature set of the link-breaking error for the link with level-k, i.e. link-rlrank[k]. It finds all the links (link-m) that have a higher level value than level-k (lrank[m]>k) and are connected to the monitor via the linklrank[k] and the controllers in the error signature set of the link disconnection error for those links are added to the error signature set of the link break error for link-rlrank[k].

Subroutine 430 arbeitet, um Fehlersignaturen zu erzeugen. Nachdem alle Verbindungsunterbrechungsfehlersignaturen abgeleitet wurden, wird die ECU-Fehlersignatur für jeden Controller gesetzt. Dann wird die Fehlersignatur für den Buskurzschlussfehler gesetzt, und die Subroutine endet. Eine Ausführungsform von Subroutine 430 wird in Bezug auf 4 und Tabelle 3 beschrieben, welche als Legende bereitgestellt wird, wobei die numerisch bezeichneten Kasten und die entsprechenden Funktionen wie folgt ausgeführt werden. Tabelle 3 KASTEN KASTENINHALTE 430 Subroutine 2 431 k=nlink 432 k=0? 433 Ist fnode[k] eine ECU? 434 Füge fnode[k] zu dem Fehlersignatursatz von Verbindung rlrank[k] hinzu 435 m=1 436 m>nlink? 437 k=k-1 438 Irank[m]>k? 439 m=m+1 440 node1 [m]=fnode[k] ODER node2[m]=fnode[k]? 441 Füge ECUs in dem Signatursatz von Verbindung-m dem Fehlersignatursatz von Verbindung-rlrank[k]hinzu Subroutine 430 operates to generate error signatures. After all disconnection error signatures are derived, the ECU error signature is set for each controller. Then the fault signature for the bus short fault is set and the subroutine ends. An embodiment of subroutine 430 is provided with reference to FIG 4 and Table 3, which is provided as a legend, the numerically labeled boxes and the corresponding functions are performed as follows. Table 3 CRATE BOX CONTENTS 430 Sub routine 2 431 k=nlink 432 k=0? 433 Is fnode[k] an ECU? 434 Add fnode[k] to the error signature set of connection rlrank[k]. 435 m=1 436 m>nlink? 437 k=k-1 438 Iran[m]>k? 439 m=m+1 440 node1[m]=fnode[k] OR node2[m]=fnode[k]? 441 Add ECUs in link-m's signature set to link-rlrank[k]'s error signature set

Subroutine 2 430 umfasst, dass Index k mit der Anzahl an Verbindungen initialisiert wird (k=nlink) (431). Index k wird überprüft, um zu ermitteln, ob er Null erreicht hat (k=0?) (432). Wenn dies nicht der Fall ist, was angibt, dass nicht alle Knoten bewertet wurden, wird der aktuelle Knoten (fnode[k]) bewertet, um zu ermitteln, ob er ein Controller ist (Ist fnode[k] eine ECU?) (433), und wenn dies der Fall ist (433)(1), wird der aktuelle knoten (fnode[k]) zu dem Fehlersignatursatz von Verbindung rlrank[k] hinzugefügt (434). Andernfalls (433)(0) wird Index m mit 1 initialisiert (m=1) (435). Index m wird mit der Anzahl an Verbindungen verglichen (m>nlink?)(436), und wenn er größer als die Anzahl von Verbindungen ist (436)(1), wird Index k dekrementiert (k=k-1) (437), und Index k wird überprüft, um zu ermitteln, ob er Null erreicht hat (k=0?) (432). Wenn Index k nicht größer als die Anzahl an Verbindungen ist (436)(0), wird die Verbindungsstufe bewertet, um zu ermitteln, ob sie größer als Index k ist (438). Wenn dies der Fall ist (438)(1) wird Index m inkrementiert (m=m+1) (439), und Index m wird wieder mit der Anzahl von Verbindungen verglichen (m>nlink?) (436). Wenn dies nicht der Fall ist (438)(0), werden die Knoten 1 und 2 bewertet, um zu ermitteln, ob sie Fehlerknoten sind (node1 [m]=fnode[k] ODER node2[m]=fnode[k]?) (440). Wenn dies nicht der Fall ist (440)(0), wird Index m inkrementiert (m=m+1) (439), und Index m wird wieder mit der Anzahl an Verbindungen verglichen (m>nlink?) (436). Wenn dies der Fall ist (440)(1), werden die Controller in dem Satz von Verbindung-m zu dem Fehlersignatursatz von Verbindung-rlrank[k] hinzugefügt (441), und Index m wird inkrementiert (m=m+1) (439), und Index m wird wieder mit der Anzahl von Verbindungen verglichen (m>nlink?) (436). Der Betrieb von Subroutine 430 endet, wenn Index k Null erreicht hat (k=0?) (432)(1). Somit wird die ECU-Fehlersignatur, nachdem alle Verbindungsunterbrechungsfehlersignaturen abgeleitet wurden, für jeden Controller gesetzt. Dann wird die Fehlersignatur für den Buskurzschlussfehler gesetzt, und die Routine endet.Subroutine 2 430 involves initializing index k to the number of links (k=nlink) (431). Index k is checked to see if it has reached zero (k=0?) (432). If not, indicating that not all nodes have been evaluated, the current node (fnode[k]) is evaluated to determine if it is a controller (Is fnode[k] an ECU?) (433 ), and if it is (433)(1), the current node (fnode[k]) is added to the error signature set of link rlrank[k] (434). Otherwise (433)(0) index m is initialized to 1 (m=1) (435). Index m is compared to the number of links (m>nlink?)(436), and if it is greater than the number of links (436)(1), index k is decremented (k=k-1) (437) , and index k is checked to see if it has reached zero (k=0?) (432). If index k is not greater than the number of links (436)(0), the link level is evaluated to determine if it is greater than index k (438). If this is the case (438)(1), index m is incremented (m=m+1) (439), and index m is again compared to the number of links (m>nlink?) (436). If not (438)(0), nodes 1 and 2 are evaluated to determine if they are fault nodes (node1[m]=fnode[k] OR node2[m]=fnode[k]? ) (440). If this is not the case (440)(0), index m is incremented (m=m+1) (439), and index m is again compared to the number of links (m>nlink?) (436). If this is the case (440)(1), the controllers in the set of connection-m to added to the error signature set of link-rlrank[k] (441), and index m is incremented (m=m+1) (439), and index m is again compared to the number of links (m>nlink?) (436) . The operation of subroutine 430 ends when index k has reached zero (k=0?) (432)(1). Thus, after all disconnection error signatures have been derived, the ECU error signature is set for each controller. Then the fault signature for the bus short fault is set and the routine ends.

Der nachfolgende Betrieb umfasst, dass jeder Controller (ECU) zu seinem eigenen Fehlersignatursatz hinzugefügt wird und alle Controller zu dem Signatursatz des Buskurzschlussfehlers hinzugefügt werden (450), und die Fehlersignaturen in einem programmierbaren Nur-Lese-Speicher eines bordeigenen Controllers gespeichert werden (452) und die Ausführung endet (454). Die Fehlersignaturen können nachfolgend eingesetzt werden, um unter Verwendung eines geeigneten Fehlerdetektions- und -isolierungsalgorithmus einen Fehler in dem CAN 500 zu isolieren. Dies kann umfassen, dass die Fehlersignaturen an die in Bezug auf 1 beschriebene externe Einrichtung 45 übermittelt werden, um aus der Ferne einen Fehler in dem CAN 50 zu identifizieren.Subsequent operation includes each controller (ECU) being added to its own fault signature set and all controllers being added to the bus short fault signature set (450), and the fault signatures being stored in programmable read only memory of an onboard controller (452) and execution ends (454). The error signatures can subsequently be used to isolate an error in the CAN 500 using an appropriate error detection and isolation algorithm. This may include sending the error signatures to the related 1 described external device 45 are transmitted in order to remotely identify an error in the CAN 50.

Die 5-1 bis 5-10 zeigen die Ausführung der bordeigenen Routine 500 zum Ableiten von Fehlersignaturen für eine Ausführungsform eines CAN 500, was umfasst, dass der Ablauf der bordeigenen Routine 400 zum Ableiten der Fehlersignaturen gezeigt ist. Jede der 5-1 bis 5-10 zeigt eine Ausführungsform des CAN 500, die die Überwachungseinrichtung 508, die Controller ECU1 501, ECU2 502, ECU3 503 und ECU4 504, die Inline-Verbindung 505 und die Kommunikationsverbindungen link_1 511 zwischen Inline 505 und ECU3 503, link_2 512 zwischen Inline 505 und ECU2 502, link_3 513 zwischen Überwachungseinrichtung 508 und Inline 505, link_4 514 zwischen ECU1 501 und Überwachungseinrichtung 508 und link_5 515 zwischen ECU2 502 und ECU4 504 umfasst. Die Eingänge umfassen nlink, was die Gesamtanzahl an Busverbindungen ist, und die Knotenpaare (node1[i], node2[i]) für jede Verbindung-i, i=1, ..., nlink.the 5-1 until 5-10 12 shows the execution of the onboard routine 500 for deriving error signatures for an embodiment of a CAN 500, including showing the flow of the onboard routine 400 for deriving the error signatures. Each of the 5-1 until 5-10 Figure 12 shows an embodiment of the CAN 500 that includes the monitor 508, the controllers ECU1 501, ECU2 502, ECU3 503, and ECU4 504, the inline link 505, and the communication links link_1 511 between inline 505 and ECU3 503, link_2 512 between inline 505 and ECU2 502, link_3 513 between monitor 508 and inline 505, link_4 514 between ECU1 501 and monitor 508, and link_5 515 between ECU2 502 and ECU4 504. The inputs include nlink, which is the total number of bus links, and the node pairs (node1[i], node2[i]) for each link-i, i=1,..., nlink.

Variablen umfassen vorzugsweise die folgenden:

  • Irank[i] - die Stufe von Verbindung-i, i=1,...nlink;
  • rlrank[j] - die Verbindung mit der Stufe j, j=1 nlink;
  • fnode[i] - der Knoten, der in der Verbindung mit Stufe-i, i=1,...nlink, weiter von der Überwachungseinrichtung entfernt ist; und
  • fnode[0]=Überwachungseinrichtung
Variables preferably include the following:
  • Irank[i] - the level of link-i, i=1,...nlink;
  • rlrank[j] - link with level j, j=1 nlink;
  • fnode[i] - the node further from the monitor in the link with stage-i, i=1,...nlink; and
  • fnode[0]=Monitor

Eingänge umfassen vorzugsweise die folgenden Verbindungen und zugehörigen Knoten:

  • nlink=5;
  • link_1=(Inline 505, ECU3 503);
  • link_2=(lnline 505, ECU2 502);
  • link_3=(Überwachungseinrichtung 508, Inline 505);
  • link_4=(ECU1 501, Überwachungseinrichtung 508); und
  • link_5=(ECU2 502, ECU4 504).
Inputs preferably include the following links and associated nodes:
  • nlink=5;
  • link_1=(Inline 505, ECU3 503);
  • link_2=(Inline 505, ECU2 502);
  • link_3=(monitor 508, inline 505);
  • link_4=(ECU1 501, monitor 508); and
  • link_5=(ECU2 502, ECU4 504).

Variablen umfassen vorzugsweise die folgenden:

  • Irank[m] - die Stufe von link_m, m=1,...,5;
  • rlrank[k] - die Verbindung mit Stufe k, k=1,...,5, d.h. Irank[rlrank[k]]=k;
  • fnode[k] - der Knoten, der in der Verbindung mit Stufe-k, k=1, ..., 5, weiter von der Überwachungseinrichtung entfernt ist, wobei fnode[0] = Überwachungseinrichtung 508.
Variables preferably include the following:
  • Irank[m] - the level of link_m, m=1,...,5;
  • rlrank[k] - the connection with level k, k=1,...,5, ie Irank[rlrank[k]]=k;
  • fnode[k] - the node that is farther from the monitor in the connection to stage-k, k=1,...,5, where fnode[0] = monitor 508.

5-1 zeigt die Ergebnisse von Schritt 0, was umfasst, dass anfänglich Irank[m]=0 für m=1,...,5 und Stufe k=1, n=0 gesetzt werden. Fnode[0] = Überwachungseinrichtung 508 (520). Schritt 1 umfasst, dass für fnode[n] (=Überwachungseinrichtung 508, da n=0) alle Verbindungen (link_m) gefunden werden, die nicht eingestuft wurden (d.h. Irank[m]=0 und mit fnode[n] (=Überwachungseinrichtung 508) verbunden sind. 5-1 shows the results of step 0, which involves initially setting Irank[m]=0 for m=1,...,5 and rank k=1, n=0. Fnode[0] = monitor 508 (520). Step 1 involves for fnode[n] (=monitor 508, since n=0) finding all links (link_m) that have not been ranked (i.e. Irank[m]=0 and with fnode[n] (=monitor 508 ) are connected.

5-2 zeigt die Ergebnisse von Schritt 2 nach der Ausführung der Subroutine 410 in 4 mit n=0 und m=3. Dies umfasst das Finden der ersten Verbindung, die link_3 513 ist. Deren Stufe wird auf die aktuelle Stufe k (k=1) gesetzt, d.h. Irank[3]=1 und rlrank[1]=3 (521), und der Knoten in link_3 513, der nicht fnode[n] (=Überwachungseinrichtung 508) ist und weiter von der Überwachungseinrichtung 508 entfernt ist, wird in fnode[k] gespeichert, d.h. fnode[1]=lnline 505 (522), und die Stufe k wird inkrementiert, d.h. k=k+1=2. 5-2 shows the results of step 2 after execution of subroutine 410 in 4 with n=0 and m=3. This involves finding the first link, which is link_3 513 . Their level will be set to the current level k (k=1) is set, ie Irank[3]=1 and rlrank[1]=3 (521), and the node in link_3 513 that is not fnode[n] (=monitor 508) and further from removed from monitor 508 is stored in fnode[k], ie fnode[1]=Inline 505 (522), and level k is incremented, ie k=k+1=2.

5-3 zeigt die Ergebnisse von Schritt 3 nach der Ausführung der Subroutine 410 in 4 mit n=0 und m=4. Dies umfasst das Finden der nächsten Verbindung, welche link_4 514 ist. Deren Stufe wird auf die aktuelle Stufe k (k=2) gesetzt, d.h. Irank[4]=2 und rlrank[2]=4 (523), und der Knoten in link_4 514, der nicht fnode[n] ist (welcher weiter von der Überwachungseinrichtung 508 entfernt ist), wird in fnode[k] gespeichert, d.h. fnode[2]=ECU1 (524), und Stufe k wird inkrementiert, d.h. k=k+1=3; 5-3 shows the results of step 3 after execution of subroutine 410 in 4 with n=0 and m=4. This involves finding the next link, which is link_4 514 . Its level is set to the current level k (k=2), i.e. Irank[4]=2 and rlrank[2]=4 (523), and the node in link_4 514 that is not fnode[n] (which is further away from monitor 508) is stored in fnode[k], ie fnode[2]=ECU1 (524), and stage k is incremented, ie k=k+1=3;

Schritt 4 umfasst folgendes. Da keine anderen nicht eingestuften Verbindungen mit fnode[0] (=Überwachungseinrichtung 508) verbunden sind, wird n inkrementiert, d.h. n=n+1=1. Schritt 2 wird mit fnode[n]=fnode[1]=Inline 505 wiederholt, um alle nicht eingestuften Verbindungen zu finden, die mit fnode[n]=lnline 505 verbunden sind.Step 4 includes the following. Since no other unclassified connections are connected to fnode[0] (=monitor 508), n is incremented, i.e. n=n+1=1. Step 2 is repeated with fnode[n]=fnode[1]=Inline 505 to find all unranked links that are connected with fnode[n]=Inline 505 .

5-4 zeigt das Ergebnis vor der Ausführung der Subroutine 410 in 4 mit n=1 und m=1. 5-4 shows the result before executing subroutine 410 in 4 with n=1 and m=1.

5-5 zeigt die Ergebnisse von Schritt 5 nach der Ausführung der Subroutine 410 in 4 mit n=1 und m=1, wobei die erste gefundene Verbindung link_1 511 ist. Deren Stufe wird auf die aktuelle Stufe k (k=3) gesetzt, d.h. rlrank[1] =3 und rlrank[3]=1 (525), und der Knoten in link_1 511, der nicht fnode[1] (=Inline 505) ist und weiter von der Überwachungseinrichtung 508 entfernt ist, wird in fnode[k] gespeichert, d.h. fnode[3]=ECU3 (526), und die Stufe k wird inkrementiert, k=k+1 =4. 5-5 shows the results of step 5 after the execution of subroutine 410 in 4 with n=1 and m=1, where the first link found is link_1 511. Its level is set to the current level k (k=3), i.e. rlrank[1] =3 and rlrank[3]=1 (525), and the node in link_1 511 that is not fnode[1] (=Inline 505 ) and is further away from the monitor 508 is stored in fnode[k], ie fnode[3]=ECU3 (526), and the stage k is incremented, k=k+1=4.

5-6 zeigt die Ergebnisse von Schritt 6 nach der Ausführung der Subroutine 410 in 4 mit n=1 und m=2, wobei die nächste gefundene Verbindung link_2 512 ist. Deren Stufe wird auf die aktuelle Stufe k (k=4) gesetzt, d.h. Irank[2] =4 und rlrank[4]=2 (527), und der Knoten in link_2 512, der nicht fnode[1] ist und weiter von der Überwachungseinrichtung 508 entfernt ist, wird in fnode[k] gespeichert, d.h. fnode[4]=ECU2 (528), und die Stufe k wird inkrementiert, d.h. k=k+1=5. 5-6 shows the results of step 6 after execution of subroutine 410 in 4 with n=1 and m=2, where the next link found is link_2 512. Its level is set to the current level k (k=4), ie Irank[2] =4 and rlrank[4]=2 (527), and the node in link_2 512 that is not fnode[1] and further from removed from monitor 508 is stored in fnode[k], ie fnode[4]=ECU2 (528), and stage k is incremented, ie k=k+1=5.

5-7 zeigt die Ergebnisse von Schritt 7 nach der Ausführung der Subroutine 410 in 4 mit n=2 und m=5. Dies umfasst folgendes. Da keine anderen nicht eingestuften Verbindungen mit fnode[1] (=Inline 505) verbunden sind, wird n inkrementiert (n=n+1=2), und Schritt 2 wird mit fnode[n]=fnode[2]=ECU1 wiederholt, um alle nicht eingestuften Verbindungen zu finden, die mit fnode[2]=ECU1 verbunden sind. 5-7 shows the results of step 7 after execution of subroutine 410 in 4 with n=2 and m=5. This includes the following. Since no other unclassified connections are connected to fnode[1] (=Inline 505), n is incremented (n=n+1=2), and step 2 is repeated with fnode[n]=fnode[2]=ECU1, to find all unclassified connections connected to fnode[2]=ECU1.

5-8 zeigt Schritt 8 nach der Ausführung der Subroutine 410 in 4 mit n=3 und m=5. Dies umfasst folgendes. Da keine nicht eingestuften Verbindungen mit fnode[2] (=ECU1) verbunden sind, wird n inkrementiert (n=n+1=3), und Schritt 2 wird mit fnode[n]=fnode[3]=ECU3 wiederholt, um alle nicht eingestuften Verbindungen zu finden, die mit fnode[3]=ECU3 verbunden sind. 5-8 shows step 8 after execution of subroutine 410 in 4 with n=3 and m=5. This includes the following. Since no non-ranked links are connected to fnode[2] (=ECU1), n is incremented (n=n+1=3) and step 2 is repeated with fnode[n]=fnode[3]=ECU3 to get all Find unclassified connections connected to fnode[3]=ECU3.

5-9 zeigt Schritt 9 vor der Ausführung der Subroutine 410 in 4 mit n=4 und m=1. Dies umfasst folgendes. Da keine nicht eingestuften Verbindungen mit fnode[3] (=ECU3) verbunden sind, wird n inkrementiert (n=n+1=4), und Schritt 2 wird mit fnode[n]=fnode[4]=ECU2 wiederholt, um alle nicht eingestuften Verbindungen zu finden, die mit fnode[4]=ECU2 verbunden sind. 5-9 shows step 9 before execution of subroutine 410 in 4 with n=4 and m=1. This includes the following. Since no unclassified links are connected to fnode[3] (=ECU3), n is incremented (n=n+1=4) and step 2 is repeated with fnode[n]=fnode[4]=ECU2 to all Find unclassified connections connected to fnode[4]=ECU2.

5-10 zeigt Schritt 10 nach der Ausführung der Subroutine 410 in 4 mit n=4 und m=5, was folgendes umfasst. Die erste gefundene Verbindung ist link_5 515, und deren Stufe wird auf die aktuelle Stufe k (k=5) gesetzt, d.h. Irank[5]=5 und rlrank[5]=5 (529), und der Knoten in link_5 515, der nicht fnode[4] (=ECU2) ist (welcher weiter von der Überwachungseinrichtung 508 entfernt ist), wird in fnode[k] gespeichert, d.h. fnode[5]=ECU4 (530), und die Stufe k wird inkrementiert, k=k+1=6. 5-10 shows step 10 after the execution of subroutine 410 in FIG 4 with n=4 and m=5, which includes the following. The first link found is link_5 515, and its level is set to the current level k (k=5), ie Irank[5]=5 and rlrank[5]=5 (529), and the node in link_5 515, the is not fnode[4] (=ECU2) (which is farther from monitor 508) is stored in fnode[k], ie fnode[5]=ECU4 (530), and stage k is incremented, k=k +1=6.

Schritt 11 bezieht sich auf den Übergang von Subroutine 410 zu Subroutine 430 in 4 und umfasst folgendes. Da k=6>nlink=5 wurden alle Verbindungen eingestuft. Die Fehlersignaturen können für jeden Verbindungsunterbrechungsfehler erhalten werden, beginnend von der Verbindung, die mit nlink=5 eingestuft wurde, indem für jede Verbindung zuerst identifiziert wird, welcher der Knoten weiter von der Überwachungseinrichtung 508 entfernt ist.Step 11 relates to the transition from subroutine 410 to subroutine 430 in 4 and includes the following. Since k=6>nlink=5, all links were classified. The error signatures can be obtained for each link break error starting from the link rated nlink=5 by first identifying which of the nodes is further away from the monitor 508 for each link.

Die Schritte 12-16 beziehen sich auf die Ergebnisse, die nach den Iterationen von Subroutine 430 in 4 erhalten wurden.Steps 12-16 relate to the results obtained after iterations of subroutine 430 in 4 were received.

Schritt 12 umfasst folgendes. Da rlrank[5]=5, ist die am höchsten eingestufte Verbindung link_5 515. Da fnode[5]=ECU4 und er ein Controller ist, wird ECU4 zu dem Fehlersignatursatz link_5 515 unterbrochen hinzugefügt. Da keine anderen Verbindungen mit fnode[5]=ECU4 verbunden sind, gibt es keine anderen Aktualisierungen für die Fehlersignatur von link_5 515, und die Fehlersignatur für link_5 515 unterbrochen ist {ECU4}.Step 12 includes the following. Since rlrank[5]=5, the highest ranked link is link_5 515. Since fnode[5]=ECU4 and it is a controller, ECU4 is added to the fault signature set link_5 515 broken. Because no other links are connected to fnode[5]=ECU4, there are no other updates to the link_5 515 error signature, and the link_5 515 error signature is broken {ECU4}.

Schritt 13 umfasst folgendes. Da rlrank[4]=2 ist die nächste Verbindung link_2 512. ECU2 wird zu dem Fehlersignatursatz von link_2 512 hinzugefügt, da fnode[4]=ECU2 und es sich um einen Controller handelt. Die Fehlersignatur von link_5 515 wird hinzugefügt, da link_5 515 mit fnode[4] verbunden ist und eine höhere Stufe aufweist als link_2 512, und die letztliche Fehlersignatur für link_2 512 unterbrochen ist {ECU2, ECU4}.Step 13 includes the following. Since rlrank[4]=2, the next link is link_2 512. ECU2 is added to the error signature set of link_2 512 since fnode[4]=ECU2 and it is a controller. The error signature of link_5 515 is added because link_5 515 is connected to fnode[4] and has a higher level than link_2 512, and the final error signature for link_2 512 is broken {ECU2,ECU4}.

Schritt 14 umfasst folgendes. Da rlrank[3]=1, ist die nächste Verbindung link_1 511. ECU3 wird zu dem Fehlersignatursatz von link_1 511 hinzugefügt, da fnode[3]=ECU3 und es sich um einen Controller handelt. Da keine anderen Verbindungen mit fnode[3]=ECU3 verbunden sind, gibt es keine anderen Aktualisierungen für die Fehlersignatur von link_1 511, und die Fehlersignaturfür link_1 511 unterbrochen ist {ECU3}.Step 14 includes the following. Since rlrank[3]=1, the next link is link_1 511. ECU3 is added to the error signature set of link_1 511 because fnode[3]=ECU3 and it is a controller. Since no other links are connected to fnode[3]=ECU3, there are no other updates to the link_1 511 error signature, and the link_1 511 error signature is broken {ECU3}.

Schritt 15 umfasst folgendes. Da rlrank[2]=4, ist die nächste Verbindung link_4 514. ECU1 wird zu dem Fehlersignatursatz von link_4 514 hinzugefügt, da fnode[2]=ECU1 und es sich um einen Controller handelt. Da keine anderen Verbindungen mit fnode[2]=ECU1 verbunden sind, gibt es keine anderen Aktualisierungen für die Fehlersignatur von link_4 514, und die Fehlersignatur für link_4 514 unterbrochen ist {ECU1}.Step 15 includes the following. Since rlrank[2]=4, the next link is link_4 514. ECU1 is added to the error signature set of link_4 514 because fnode[2]=ECU1 and it is a controller. Because no other links are connected to fnode[2]=ECU1, there are no other updates to the link_4 514 error signature, and the link_4 514 error signature is broken {ECU1}.

Schritt 16 umfasst folgendes. Da rlrank[1]=3, ist die nächste Verbindung link_3 513. Da fnode[1]=lnline 505 und es sich nicht um einen Controller handelt, ist es nicht notwendig, ihn zu dem Fehlersignatursatz hinzuzufügen. Die Fehlersignaturen von link_1 511 und link_2 512 werden hinzugefügt, da sie beide mit fnode[1] = Inline 505 verbunden sind und beide eine höhere Stufe aufweisen als link_3 513. Die letztliche Fehlersignatur für link_3 513 unterbrochen ist {ECU2, ECU3, ECU4}.Step 16 includes the following. Since rlrank[1]=3, the next link is link_3 513. Since fnode[1]=Inline 505 and it is not a controller, there is no need to add it to the error signature set. The link_1 511 and link_2 512 fault signatures are added because they are both connected to fnode[1] = Inline 505 and both are higher level than link_3 513. The final fault signature for link_3 513 is broken {ECU2, ECU3, ECU4}.

Schritt 17 ist der Ausführung von Subroutine 530 von 4 zugehörig und umfasst folgendes. Jeder Controller wird seinem eigenen Controllerfehlersignatursatz hinzugefügt, d.h. die Fehlersignatur für einen ECU_i-Fehler ist {ECU_i}, i = 1, 2, 3, 4. Alle Controller werden zu der Fehlersignatur des Buskurzschlussfehlers hinzugefügt, d.h. die Fehlersignatur für den Buskurzschlussfehler ist {ECU_i, i=1, 2, 3, 4}.Step 17 is the execution of subroutine 530 of 4 associated and includes the following. Each controller is added to its own controller error signature set, i.e. the error signature for an ECU_i error is {ECU_i}, i = 1, 2, 3, 4. All controllers are added to the error signature of the bus short error, i.e. the error signature for the bus short error is {ECU_i , i=1, 2, 3, 4}.

Die Fehlersignaturen können in einem Speicher gespeichert werden und/oder an eine externe Einrichtung 45 übermittelt werden, um in Ansprechen auf einen angegebenen Fehler einen Fehler in dem CAN 50 aus der Ferne zu isolieren. Das Isolieren eines Fehlers in dem CAN 50 umfasst, dass ein oder mehrere Controller und/oder eine oder mehrere Kommunikationsverbindungen, an denen der Fehler auftritt, identifiziert werden, wobei die Fehlersignatursätze verwendet werden.The fault signatures may be stored in memory and/or communicated to an external device 45 to remotely isolate a fault in the CAN 50 in response to an indicated fault. Isolating a fault in the CAN 50 includes identifying one or more controllers and/or one or more communication links at which the fault occurs using the fault signature sets.

Die Offenbarung beschrieb bestimmte bevorzugte Ausführungsformen und Abwandlungen dieser. Weitere Abwandlungen und Änderungen können für Dritte beim Lesen und Verstehen der Beschreibung ersichtlich werden. Daher soll die Offenbarung nicht auf die bestimmte Ausführungsform/die bestimmten Ausführungsformen beschränkt sein, die als die Ausführungsform(en) offenbart ist/sind, die zum Ausführen dieser Offenbarung als am geeignetsten betrachtet wird/werden, sondern soll die Offenbarung alle Ausführungsformen umfassen, die innerhalb des Schutzumfangs der beigefügten Ansprüche liegen.The disclosure described certain preferred embodiments and modifications thereof. Other modifications and changes may become apparent to others upon reading and understanding the specification. Therefore, the disclosure is not intended to be limited to the particular embodiment(s) disclosed as the embodiment(s) considered most suitable for carrying out this disclosure, but rather the disclosure is intended to encompass all embodiments that are within the scope of the appended claims.

Claims (10)

Verfahren zum Überwachen eines Controller Area Network (CAN) (50, 200, 500) an einem mobilen System, das mehrere verbundene Knoten umfasst, die einen bordeigenen Überwachungscontroller (40, 208, 308) umfassen, umfassend, dass: Kommunikationsverbindungen (51, 53, 55, 201) und zugehörige Knoten zwischen den Knoten des CAN (50, 200, 500) identifiziert werden; die Kommunikationsverbindungen (51, 53, 55, 201) gemäß ihrer Reihenfolge der Verbindung mit dem Überwachungscontroller (40, 208, 308) eingestuft werden, was umfasst, dass niedrigere Stufen jenen der Kommunikationsverbindungen (51, 53, 55, 201) zugeordnet werden, die nahe bei dem Überwachungscontroller (40, 208, 308) angeordnet sind, und höhere Stufen jenen der Kommunikationsverbindungen (51, 53, 55, 201) zugeordnet werden, die fern von dem Überwachungscontroller (40, 208, 308) angeordnet sind; für jede der Kommunikationsverbindungen (51, 53, 55, 201) identifiziert wird, welcher der zugehörigen Knoten fern von dem Überwachungscontroller (40, 208, 308) angeordnet ist; und unter Verwendung des Überwachungscontrollers (40, 208, 308) eine Fehlersignatur für jede der Kommunikationsverbindungen (51, 53, 55, 201) auf der Grundlage des für jede der Kommunikationsverbindungen (51, 53, 55, 201) identifizierten Knotens, der fern von dem Überwachungscontroller (40, 208, 308) angeordnet ist, ermittelt wird. A method of monitoring a controller area network (CAN) (50, 200, 500) on a mobile system comprising a plurality of interconnected nodes including an onboard monitoring controller (40, 208, 308), comprising: communication links (51, 53 , 55, 201) and associated nodes between the nodes of the CAN (50, 200, 500) are identified; the communication links (51, 53, 55, 201) are ranked according to their order of connection to the supervisory controller (40, 208, 308), including assigning lower tiers to those of the communication links (51, 53, 55, 201), which are located close to the supervisory controller (40, 208, 308) and are assigned higher levels to those of the communication links (51, 53, 55, 201) which are located remote from the supervisory controller (40, 208, 308); for each of the communication links (51, 53, 55, 201), identifying which of the associated nodes is remote from the supervisory controller (40, 208, 308); and using the supervisory controller (40, 208, 308), a fault signature for each of the communication links (51, 53, 55, 201) based on the node identified for each of the communication links (51, 53, 55, 201) remote from the Monitoring controller (40, 208, 308) is arranged, is determined. Verfahren nach Anspruch 1, wobei das Ermitteln, unter Verwendung des Überwachungscontrollers (40, 208, 308), einer Fehlersignatur für jede der Kommunikationsverbindungen (51, 53, 55, 201) auf der Grundlage des für jede der Kommunikationsverbindungen (51, 53, 55, 201) identifizierten Knotens, der fern von dem Überwachungscontroller (40, 208, 308) angeordnet ist, umfasst, dass unter Verwendung des Überwachungscontrollers (40, 208, 308) eine Fehlersignatur für jede der Kommunikationsverbindungen (51, 53, 55, 201), beginnend mit der Kommunikationsverbindung (51, 53, 55, 201) mit der höchsten Einstufung, ermittelt wird, wobei die Fehlersignatur identifizierte der zugehörigen Knoten, die fern von dem Überwachungscontroller (40, 208, 308) angeordnet sind, für jede der entsprechenden Kommunikationsverbindungen (51, 53, 55, 201) umfasst.procedure after claim 1 wherein determining, using the supervisory controller (40, 208, 308), an error signature for each of the communication links (51, 53, 55, 201) based on the identified for each of the communication links (51, 53, 55, 201). Node located remotely from the supervisory controller (40, 208, 308) comprises using the supervisory controller (40, 208, 308) to generate an error signature for each of the communication links (51, 53, 55, 201), beginning with the communication link (51, 53, 55, 201) with the highest rating, the fault signature identifying associated nodes remote from the supervisory controller (40, 208, 308) for each of the corresponding communication links (51, 53 , 55, 201). Verfahren nach Anspruch 1, das ferner umfasst, dass die Fehlersignatur zum Isolieren eines Fehlers in dem CAN (50, 200, 500) in Ansprechen auf einen angegebenen Fehler eingesetzt wird.procedure after claim 1 , further comprising using the error signature to isolate an error in the CAN (50, 200, 500) in response to an indicated error. Verfahren nach Anspruch 3, wobei das Einsetzen der Fehlersignatur zum Isolieren eines Fehlers in dem CAN (50, 200, 500) in Ansprechen auf einen angegebenen Fehler umfasst, dass die Fehlersignatur zum Isolieren des Fehlers in dem CAN (50) hinsichtlich einer Kommunikationsverbindung (51, 53, 55, 201) in Ansprechen auf den angegebenen Fehler eingesetzt wird.procedure after claim 3 , wherein using the error signature to isolate an error in the CAN (50, 200, 500) in response to an indicated error comprises using the error signature to isolate the error in the CAN (50) with respect to a communication link (51, 53, 55 , 201) in response to the indicated error. Verfahren nach Anspruch 1, das ferner umfasst, dass: die Fehlersignaturen für die Kommunikationsverbindungen (51, 53, 55, 201) an eine externe Einrichtung (45) übermittelt werden; und in Ansprechen auf einen angegebenen Fehler die externe Einrichtung (45) zum Isolieren des Fehlers in dem CAN (50, 200, 500) auf der Grundlage der Fehlersignaturen für die Kommunikationsverbindungen (51, 53, 55, 201) eingesetzt wird.procedure after claim 1 The further comprising: transmitting the error signatures for the communication links (51, 53, 55, 201) to an external device (45); and in response to an indicated error, employing the external means (45) to isolate the error in the CAN (50, 200, 500) based on the error signatures for the communication links (51, 53, 55, 201). Verfahren nach Anspruch 1, wobei das Ermitteln, unter Verwendung des Überwachungscontrollers (40, 208, 308), einer Fehlersignatur für jede der Kommunikationsverbindungen (51, 53, 55, 201), beginnend mit der Kommunikationsverbindung (51, 53, 55, 201) mit der höchsten Einstufung, wobei die Fehlersignatur identifizierte der zugehörigen Knoten, die fern von dem Überwachungscontroller (40, 208, 308) angeordnet sind, für jede der entsprechenden Kommunikationsverbindungen (51, 53, 55, 201) umfasst, umfasst, dass: die zugehörigen Knoten, die fern von dem Überwachungscontroller (40, 208, 308) angeordnet sind, für die Kommunikationsverbindung (51, 53, 55, 201) mit der höchsten Einstufung identifiziert werden, und ein entsprechender Fehlersatz erzeugt wird, der die identifizierten zugehörigen Knoten umfasst; und iterativ die Einstufung dekrementiert wird, wobei die zugehörigen Knoten, die fern von dem Überwachungscontroller (40, 208, 308) angeordnet sind, für die Kommunikationsverbindung (51, 53, 55, 201), die der dekrementierten Einstufung zugehörig ist, identifiziert werden, und ein entsprechender Fehlersatz erzeugt wird, der die identifizierten zugehörigen Knoten umfasst.procedure after claim 1 , wherein determining, using the supervisory controller (40, 208, 308), a fault signature for each of the communication links (51, 53, 55, 201) starting with the highest ranked communication link (51, 53, 55, 201). , wherein the fault signature comprises identified ones of associated nodes remotely located from the supervisory controller (40, 208, 308) for each of the corresponding communication links (51, 53, 55, 201), comprising that: the associated nodes remotely located located by the supervisory controller (40, 208, 308), are identified for the communication link (51, 53, 55, 201) with the highest rating and a corresponding error record is generated that includes the identified associated nodes; and iteratively decrementing the rating, identifying associated nodes remote from the supervisory controller (40, 208, 308) for the communication link (51, 53, 55, 201) associated with the decremented rating, and generating a corresponding error record that includes the identified associated nodes. Verfahren nach Anspruch 1, wobei das Ermitteln, unter Verwendung des Überwachungscontrollers (40, 208, 308), einer Fehlersignatur für jede der Kommunikationsverbindungen (51, 53, 55, 201) umfasst, dass eine Fehlersignatur ermittelt wird, die einen Busverbindungsunterbrechungsfehler oder einen Controllerfehler oder einen Buskurzschlussfehler umfasst.procedure after claim 1 , wherein determining, using the monitoring controller (40, 208, 308), an error signature for each of the communication links (51, 53, 55, 201) comprises determining an error signature comprising a bus connection open error or a controller error or a bus short circuit error . Fahrzeugeigenes Verfahren zum Überwachen eines Controller Area Network (CAN) (50, 200, 500), das mehrere verbundene Kommunikationsknoten umfasst, umfassend, dass: Kommunikationsverbindungen (51, 53, 55, 201) zwischen den verbundenen Kommunikationsknoten des CAN (50, 200, 500), die einen bordeigenen Überwachungscontroller (40, 208, 308) umfassen, identifiziert werden; Paare der Kommunikationsknoten, die jeder der Kommunikationsverbindungen (51, 53, 55, 201) zugehörig sind, identifiziert werden; für jede Kommunikationsverbindung (51, 53, 55, 201) identifiziert wird, welcher der zugehörigen Kommunikationsknoten fern von dem Überwachungscontroller (40, 208, 308) angeordnet ist; die Kommunikationsverbindungen (51, 53, 55, 201) gemäß ihrer Reihenfolge der Verbindung mit dem Überwachungscontroller (40, 208, 308) eingestuft werden, was umfasst, dass den Kommunikationsverbindungen (51, 53, 55, 201), die nahe bei dem Überwachungscontroller (40, 208, 308) angeordnet sind, niedrigere Stufen zugeordnet werden, und den Kommunikationsverbindungen (51, 53, 55, 201), die fern von dem Überwachungscontroller (40, 208, 308) angeordnet sind, höhere Stufen zugeordnet werden; und unter Verwendung des Überwachungscontrollers (40, 208, 308) eine Fehlersignatur für jede der Kommunikationsverbindungen (51, 53, 55, 201), beginnend mit der Kommunikationsverbindung (51, 53, 55, 201), die die höchste Einstufung aufweist, ermittelt wird, wobei die Fehlersignatur identifizierte der zugehörigen Kommunikationsknoten, die fern von dem Überwachungscontroller (40, 208, 308) angeordnet sind, für jede der entsprechenden Kommunikationsverbindungen (51, 53, 55, 201) umfasst.In-vehicle method for monitoring a controller area network (CAN) (50, 200, 500) comprising a plurality of connected communication nodes, comprising that: communication links (51, 53, 55, 201) between the connected communication nodes of the CAN (50, 200, 500) comprising an onboard supervisory controller (40, 208, 308); identifying pairs of the communication nodes associated with each of the communication links (51, 53, 55, 201); identifying for each communication link (51, 53, 55, 201) which of the associated communication nodes is remote from the supervisory controller (40, 208, 308); the communication links (51, 53, 55, 201) are ranked according to their order of connection to the supervisory controller (40, 208, 308), including the communication links (51, 53, 55, 201) proximate to the supervisory controller (40, 208, 308) are arranged, lower Stu assigned to fen and assigned higher levels to the communication links (51, 53, 55, 201) located remote from the supervisory controller (40, 208, 308); and using the supervisory controller (40, 208, 308) to determine a fault signature for each of the communication links (51, 53, 55, 201) beginning with the communication link (51, 53, 55, 201) having the highest rating wherein the fault signature comprises identified ones of the associated communication nodes remote from the supervisory controller (40, 208, 308) for each of the corresponding communication links (51, 53, 55, 201). Verfahren nach Anspruch 8, das ferner umfasst, dass die Fehlersignatur zum Isolieren eines Fehlers in dem CAN (50, 200, 500) in Ansprechen auf einen angegebenen Fehler eingesetzt wird.procedure after claim 8 , further comprising using the error signature to isolate an error in the CAN (50, 200, 500) in response to an indicated error. Verfahren nach Anspruch 8, das ferner umfasst, dass: die Fehlersignaturen für die Kommunikationsverbindungen (51, 53, 55, 201) an eine externe Einrichtung (45) übermittelt werden; und in Ansprechen auf einen angegebenen Fehler die externe Einrichtung (45) zum Isolieren des Fehlers hinsichtlich einer Kommunikationsverbindung (51, 53, 55, 201) in dem CAN (50, 200, 500) auf der Grundlage der Fehlersignaturen für die Kommunikationsverbindungen (51, 53, 55, 201) eingesetzt wird.procedure after claim 8 The further comprising: transmitting the error signatures for the communication links (51, 53, 55, 201) to an external device (45); and in response to an indicated error, the external means (45) for isolating the error with respect to a communication link (51, 53, 55, 201) in the CAN (50, 200, 500) based on the error signatures for the communication links (51, 53, 55, 201) is used.
DE102014114783.9A 2013-10-18 2014-10-13 PROCEDURE FOR MONITORING A CONTROLLER AREA NETWORK Expired - Fee Related DE102014114783B4 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201361892506P 2013-10-18 2013-10-18
US61/892,506 2013-10-18
US14/333,374 2014-07-16
US14/333,374 US9354965B2 (en) 2013-10-18 2014-07-16 Method and apparatus for isolating a fault in a controller area network

Publications (2)

Publication Number Publication Date
DE102014114783A1 DE102014114783A1 (en) 2015-04-23
DE102014114783B4 true DE102014114783B4 (en) 2022-01-27

Family

ID=52775320

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014114783.9A Expired - Fee Related DE102014114783B4 (en) 2013-10-18 2014-10-13 PROCEDURE FOR MONITORING A CONTROLLER AREA NETWORK

Country Status (1)

Country Link
DE (1) DE102014114783B4 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102024104159A1 (en) * 2024-02-14 2025-08-14 Daimler Truck AG CAN bus system

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116094906B (en) * 2023-01-03 2025-03-14 深圳华为云计算技术有限公司 Fault root cause positioning method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19523483C2 (en) 1995-06-28 1998-10-22 Daimler Benz Ag Computer-aided fault diagnosis device for a complex technical system
DE10307365A1 (en) 2003-02-21 2004-09-09 Volkswagen Ag Motor vehicle fault diagnosis system has a fault diagnosis model that used error codes or fault symptoms as input and calculates the most likely cause, optimally using a fault database in an expert system analogous manner

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19523483C2 (en) 1995-06-28 1998-10-22 Daimler Benz Ag Computer-aided fault diagnosis device for a complex technical system
DE10307365A1 (en) 2003-02-21 2004-09-09 Volkswagen Ag Motor vehicle fault diagnosis system has a fault diagnosis model that used error codes or fault symptoms as input and calculates the most likely cause, optimally using a fault database in an expert system analogous manner

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102024104159A1 (en) * 2024-02-14 2025-08-14 Daimler Truck AG CAN bus system
DE102024104159B4 (en) * 2024-02-14 2025-09-11 Daimler Truck AG CAN bus system

Also Published As

Publication number Publication date
DE102014114783A1 (en) 2015-04-23

Similar Documents

Publication Publication Date Title
DE102014112095B4 (en) Method for monitoring a fault in a controller area network
DE102015108342B4 (en) WIRE OPEN FAULT DETECTION AND DIAGNOSTICS IN A CONTROLLER AREA NETWORK
DE102015108333B4 (en) SHORT CIRCUIT FAULT ISOLATION IN A CONTROLLER AREA NETWORK
US9354965B2 (en) Method and apparatus for isolating a fault in a controller area network
DE102015108315B4 (en) SHORT CIRCUIT FAULT DETECTION IN A CONTROLLER AREA NETWORK
DE102012102770B4 (en) System and method for error isolation and error mitigation based on network modeling
DE102012221633B4 (en) Method for diagnosing a fault in an in-vehicle communication system
DE112010001370T5 (en) Signal transmission device for an elevator
DE102018122152A1 (en) SYSTEMS AND METHOD FOR IMPACT DETECTION INTO THE NETWORK IN THE VEHICLE
DE102013205390B4 (en) DATA OUTPUT DEVICE FOR A VEHICLE
EP2759096B1 (en) Method and apparatus for coupling a first sensor to at least one second sensor
DE102014017095A1 (en) In-vehicle sensor, onboard sensor system, and method of configuring identifications of in-vehicle sensors in an on-board sensor system
DE102014111361A1 (en) Method for operating a safety control and automation network with such a safety control
DE102017223665A1 (en) Electric battery module
DE102014114783B4 (en) PROCEDURE FOR MONITORING A CONTROLLER AREA NETWORK
DE112006002202T5 (en) System and method for optimizing the bandwidth of a time-triggered communication protocol with homogeneous slot sizes
DE102013209953A1 (en) Methods and systems for monitoring a vehicle for errors
DE102010028485B4 (en) Method and device for securing data packets to be transmitted via an interface
DE102019110884A1 (en) Method for changing control software of an automation system
DE102014112103B4 (en) Method for isolating a fault in a controller area network
DE102014112102B4 (en) Method for monitoring a controller area network for fault detection
DE102016216728A1 (en) Fault diagnosis in a vehicle electrical system
DE10252109B4 (en) Method for parameterization
DE102022205943A1 (en) Method for checking a system having a plurality of individual components for the joint performance of a function by the plurality of individual components
DE102023210682A1 (en) Method for error detection in a communication system

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: MANITZ, FINSTERWALD & PARTNER GBR, DE

Representative=s name: MANITZ FINSTERWALD PATENTANWAELTE PARTMBB, DE

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012260000

Ipc: H04L0043000000

R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee