DE112011102688T5 - Kommunikationssystem und Kommunikationsvorrichtung - Google Patents

Kommunikationssystem und Kommunikationsvorrichtung Download PDF

Info

Publication number
DE112011102688T5
DE112011102688T5 DE112011102688T DE112011102688T DE112011102688T5 DE 112011102688 T5 DE112011102688 T5 DE 112011102688T5 DE 112011102688 T DE112011102688 T DE 112011102688T DE 112011102688 T DE112011102688 T DE 112011102688T DE 112011102688 T5 DE112011102688 T5 DE 112011102688T5
Authority
DE
Germany
Prior art keywords
message
communication
ecu
slot
transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE112011102688T
Other languages
English (en)
Inventor
Hiroaki Takada
Ryo Kurachi
Masanobu Nishimura
Satoshi Horihata
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.)
Nagoya University NUC
Sumitomo Wiring Systems Ltd
AutoNetworks Technologies Ltd
Sumitomo Electric Industries Ltd
Original Assignee
Nagoya University NUC
Sumitomo Wiring Systems Ltd
AutoNetworks Technologies Ltd
Sumitomo Electric Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nagoya University NUC, Sumitomo Wiring Systems Ltd, AutoNetworks Technologies Ltd, Sumitomo Electric Industries Ltd filed Critical Nagoya University NUC
Publication of DE112011102688T5 publication Critical patent/DE112011102688T5/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/08Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
    • 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/407Bus networks with decentralised control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • 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/407Bus networks with decentralised control
    • H04L12/417Bus networks with decentralised control with deterministic access, e.g. token passing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0094Bus

Landscapes

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

Abstract

In einem Netzwerk, in dem mehrere ECUs 1 über einen gemeinsamen Bus 5 miteinander verbunden sind, sind jeder ECU 1 ein oder mehrere Schlitze im Voraus zugewiesen, und die ECUs 1 übertragen zyklisch Nachrichten in einer Reihenfolge, die in Bezug auf die Schlitze vorgeschrieben ist. Wenn eine jeweilige ECU 1 die Nachricht, die einen Schlitz betrifft, überträgt, erzeugt und überträgt sie eine Nachricht, die Daten, die an andere ECUs 1 zu übertragen sind, und Informationen, die jeweils einen Erfolg/Fehler eines Nachrichtenempfangs, der andere Schlitze betrifft, repräsentieren, enthält. Jede ECU 1 überprüft Informationen eines ACK-Felds, das in einer Nachricht enthalten ist, die während eines Zyklus von einer Nachrichtenübertragung, die einen Schlitz betrifft, zu einer nächsten Nachrichtenübertragung, die den einen Schlitz betrifft, empfangen wird. Wenn die Nachricht, die den einen Schlitz betrifft, von den anderen ECUs 1 nicht richtig empfangen wurde, wird die Nachricht in der nächsten Übertragung, die den einen Schlitz betrifft, wieder übertragen.

Description

  • KOMMUNIKATIONSSYSTEM UND KOMMUNIKATIONSVORRICHTUNG
  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft ein Kommunikationssystem, in dem mehrere Kommunikationsvorrichtungen wie beispielsweise eine elektronische Steuereinheit (ECU), die in einem Fahrzeug montiert ist, Daten über eine gemeinsame Kommunikationsleitung (einen Bus) übertragen und empfangen, und die Kommunikationsvorrichtung.
  • Stand der Technik
  • Im Stand der Technik sind mehrere elektronische Vorrichtungen, die verschiedene Arten von Verarbeitungen durchführen, in einem Fahrzeug montiert. Zum Steuern eines Betriebs dieser elektronischen Vorrichtungen sind mehrere ECUs in einem Fahrzeug montiert. Außerdem ist jede ECU mit den anderen über ein Netzwerk verbunden, und die ECUs teilen Informationen durch die Übertragung und den Empfang von Daten, damit die ECUs in Kooperation miteinander betrieben werden können. In diesem Fall ist ein Steuerbereichsnetzwerk (CAN) (siehe Nicht-Patentdokument 1, Nicht-Patentdokument 2) als Kommunikationsprotokoll weit verbreitet.
  • Gemäß dem CAN-Protokoll sind die ECUs mit einem Bus verbunden, der aus einem verdrillten Kabelpaar ausgebildet ist, das Betriebssignale überträgt, und jede ECU überträgt und empfängt digitale Daten, die durch die Betriebssignale repräsentiert werden. Außerdem ist das CAN ein Protokoll einer seriellen Kommunikation, und nur eine ECU der ECUs, die mit dem CAN-Bus verbunden sind, kann Daten übertragen, und die anderen ECUs werden derart gesteuert, dass sie warten, bis die eine ECU die Übertragung von Daten beendet hat. Wenn die ECUs Daten gleichzeitig übertragen, führen die ECUs eine Arbitrierung auf der Grundlage von IDs, die den Daten zugeordnet sind, durch und werden derart gesteuert, dass sie Daten, die eine hohe Priorität aufweisen, übertragen.
  • Dokumente des Stands der Technik
  • Nicht-Patentdokumente
    • Nicht-Patentdokument 1: ISO 11898-1: 2003 Straßenfahrzeuge – Steuerbereichsnetzwerk (CAN) – Teil 1: Datenverbindungsschicht und physikalische Signalisierung
    • Nicht-Patentdokument 2: ISO 11519-1: 1994 Straßenfahrzeuge – Serielle Datenkommunikation mit niedriger Geschwindigkeit – Teil 1: Allgemeines und Definitionen
  • Beschreibung der Erfindung
  • Von der Erfindung zu lösende Probleme
  • Seit Kurzem hat sich entsprechend dem hohen Niveau von elektronischen Steuerungen, die in modernen Fahrzeugen durchgeführt werden, die Forderung nach Hochfunktions-ECUs, die in Fahrzeugen montiert sind, vergrößert, und die Datenmenge, die zwischen den ECUs übertragen und empfangen wird, und die Erzeugungshäufigkeit des Übertragens und Empfangens zwischen den ECUs haben sich erhöht. Daher kann keine ausreichende Datenmenge mit einer Kommunikationsrate (etwa 1 Mbps) des Kommunikationssystems entsprechend einem vorhandenen CAN-Protokoll übertragen und empfangen werden, und eine Kommunikationskapazität des derzeitigen Kommunikationssystems für ein Fahrzeug hat seine Grenze erreicht.
  • Als Kommunikationsprotokolle zum Erzielen einer hohen Kommunikationsrate wurden Protokolle wie beispielsweise FlexRay vorgeschlagen. Die Kommunikationen mit hoher Rate können durch Verwenden anderer derartiger Protokolle erzielt werden, aber die Änderung des vorhandenen Gesamtkommunikationssystems von dem CAN-Protokoll in andere Protokolle bedeutet eine Erhöhung der Entwicklungskosten der Vorrichtungen, eine Belastung für die Zuverlässigkeit der Systeme und Ähnliches.
  • Daher besteht der Bedarf, einen Mechanismus zu erzeugen, der in der Lage ist, einen langsamen Übergang von Anwendungen, in denen Kommunikationen mit hoher Rate benötigt werden, zu oberen Protokollen mit hoher Rate, die mit dem CAN-Protokoll kompatibel sind, im Vergleich zu Kommunikationssystemen, die auf dem vorhandenen CAN-Protokoll basieren, zu ermöglichen. Die Probleme, die die Entwicklungskosten, die Zuverlässigkeit und Ähnliches betreffen, können so weit wie möglich durch Erzeugung eines derartigen Mechanismus beseitigt werden.
  • Gemäß dem vorhandenen CAN-Protokoll kann eine Verarbeitungszeit, die benötigt wird, um eine Arbitrierungsverarbeitung (im Folgenden als „Arbitrierung” bezeichnet) durchzuführen, die durchgeführt wird, wenn die ECUs gleichzeitig Daten übertragen, ein Faktor sein, der die Verbesserung der Kommunikationsrate einschränkt. Um die Arbitrierung durchzuführen, gibt beispielsweise jede Kommunikationsvorrichtung ein Signal betreffend ihre eigenen Übertragungsdaten an einen Bus aus, und dann erfasst sie, ob Signale auf dem Bus aufgrund einer Kollision von Signalen, die von anderen Kommunikationsvorrichtungen ausgegeben werden, geändert sind. Es besteht jedoch ein Bedarf, Signale nach einiger Wartezeit unter Berücksichtung von Situationen wie beispielsweise einer Fortpflanzungsverzögerung von Signalen, die von anderen Kommunikationsvorrichtungen ausgegeben werden, zu erfassen. In diesem Fall ist die Wartezeit ein Faktor, der die Verbesserung der Kommunikationsrate behindert.
  • Unter Berücksichtigung der oben beschriebenen Umstände ist es eine Aufgabe der vorliegenden Erfindung, durch Beseitigen von Beschränkungsfaktoren, die eine Geschwindigkeitsverbesserung betreffen, beispielsweise eine Verarbeitungszeit einer Arbitrierung, ein Kommunikationssystem, das es ermöglicht, dass mehrere Kommunikationsvorrichtungen, die mit einem Bus verbunden sind, Daten mit hoher Geschwindigkeit auf der Grundlage eines CAN-Protokolls übertragen und empfangen, und die Kommunikationsvorrichtung zu schaffen.
  • Mittel zum Lösen der Probleme
  • Gemäß einem Aspekt der vorliegenden Erfindung wird ein Kommunikationssystem bereitgestellt, in dem mehrere Kommunikationsvorrichtungen mit einer gemeinsamen Kommunikationsleitung verbunden sind und eine Nachricht, die von einer Kommunikationsvorrichtung unter den Kommunikationsvorrichtungen übertragen wird, von den anderen Kommunikationsvorrichtungen empfangen wird, wobei eines oder mehrere Übertragungsrechte jeder Kommunikationsvorrichtung im Voraus zugeordnet bzw. zugewiesen werden und die Kommunikationsvorrichtungen zyklisch Nachrichten in einer Reihenfolge, die in Bezug auf die zugewiesenen Übertragungsrechte vorgeschrieben ist, übertragen, und wobei jede Kommunikationsvorrichtung enthält: eine Nachrichtenübertragungseinrichtung zum Erzeugen und Übertragen einer Nachricht, die mehrere Erfolgs-/Fehlerinformationen eines Empfangs, die jeweils einen Erfolg/Fehler eines Nachrichtenempfangs, der ein jeweiliges Übertragungsrecht betrifft, repräsentieren, und an eine andere Kommunikationsvorrichtung zu übertragende Daten enthält; und eine Nachrichtenwiederübertragungseinrichtung zum Wiederübertragen einer Nachricht entsprechend den Erfolgs-/Fehlerinformationen eines Empfangs, die in der Nachricht, die von einer anderen Kommunikationsvorrichtung empfangen wird, enthalten sind.
  • In dem Kommunikationssystem gemäß der vorliegenden Erfindung fügt die Nachrichtenübertragungseinrichtung jeder Kommunikationsvorrichtung in einer zu übertragenden Nachricht einen Erfolg/Fehler eines Empfangs einer Nachricht, die ein anderes Übertragungsrecht betrifft und während eines Zyklus von einer Nachrichtenübertragung, die ein Übertragungsrecht der Nachrichtenübertragungseinrichtung betrifft, zu der nächsten Nachrichtenübertragung, die das eine Übertragungsrecht betrifft, übertragen wird, als die Erfolgs-/Fehlerinformationen eines Empfangs hinzu.
  • Außerdem überträgt oder empfängt jede Kommunikationsvorrichtung in dem Kommunikationssystem gemäß der vorliegenden Erfindung eine Nachricht, die das nächste Kommunikationsrecht betrifft, wenn eine Nachricht, die ein Kommunikationsrecht betrifft, während einer vorbestimmten Zeitdauer nicht übertragen wurde.
  • Außerdem erzeugt und überträgt die Nachrichtenübertragungseinrichtung jeder Kommunikationsvorrichtung in dem Kommunikationssystem gemäß der vorliegenden Erfindung eine Nachricht, die Identifikationsinformationen zum Identifizieren des Übertragungsrechts enthält, und jede Kommunikationsvorrichtung synchronisiert eine Nachrichtenübertragung und einen Nachrichtenempfang auf der Grundlage der Identifikationsinformationen der empfangenen Nachricht.
  • Außerdem erzeugt und überträgt die Nachrichtenübertragungseinrichtung jeder Kommunikationsvorrichtung in dem Kommunikationssystem gemäß der vorliegenden Erfindung eine Nachricht, die Informationen zum Erfassen oder Korrigieren eines Fehlers der Identifikationsinformationen enthält.
  • Weiterhin enthält jede Kommunikationsvorrichtung in dem Kommunikationssystem gemäß der vorliegenden Erfindung einen Fehlerzähler, der die Anzahl von Fehlern, die eine Nachrichtenübertragung und einen Nachrichtenempfang betreffen, zählt, und die Nachrichtenübertragungseinrichtung jeder Kommunikationsvorrichtung verringert eine Häufigkeit einer Nachrichtenübertragung, wenn die Anzahl (Auftrittsanzahl) von Fehlern, die von dem Fehlerzähler gezählt wird, einen vorbestimmten Wert überschreitet.
  • Außerdem überträgt jede Kommunikationsvorrichtung in dem Kommunikationssystem gemäß der vorliegenden Erfindung keine Nachricht während eines vorbestimmten Zyklus nach einem Aufwachen, und jede Kommunikationsvorrichtung enthält eine Kommunikationsstarteinrichtung zum Starten einer Nachrichtenübertragung und eines Nachrichtenempfangs zu und von einer anderen Kommunikationsvorrichtung durch Übertragen, wenn eine Nachricht von einer anderen Kommunikationsvorrichtung während des vorbestimmten Zyklus nach dem Aufwachen empfangen wird, der nächsten Nachricht synchron zu der empfangenen Nachricht, und Übertragen einer Nachricht, wenn eine Nachricht von einer anderen Kommunikationsvorrichtung nicht während des vorbestimmten Zyklus nach dem Aufwachen empfangen wird.
  • Außerdem enthält jede Kommunikationsvorrichtung in dem Kommunikationssystem gemäß der vorliegenden Erfindung eine Zeitmesseinrichtung zum Messen einer Wartezeit bis zu einer Nachrichtenübertragung, die Kommunikationsstarteinrichtung jeder Kommunikationsvorrichtung überträgt eine Nachricht, nachdem die Wartezeit entsprechend dem zugewiesenen Übertragungsrecht von der Zeitmesseinrichtung gemessen wurde, wenn die Kommunikationsstarteinrichtung eine Nachricht übertragen hat oder wenn die Kommunikationsvorrichtung eine abnorme Nachricht von einer anderen Kommunikationsvorrichtung während des vorbestimmten Zyklus empfangen hat, und die Kommunikationsvorrichtungen messen unterschiedliche Wartezeiten unter Verwendung der Zeitmesseinrichtung.
  • Außerdem enthält jede Kommunikationsvorrichtung in dem Kommunikationssystem gemäß der vorliegenden Erfindung eine Zeitmesseinrichtung zum Messen einer Wartezeit bis zu einer Nachrichtenübertragung und eine Kommunikationswiederaufnahmeeinrichtung zum Wiederaufnehmen einer Nachrichtenübertragung, nachdem die Wartezeit entsprechend dem zugewiesenen Übertragungsrecht von der Zeitmesseinrichtung gemessen wurde, wenn keine Nachricht von einer anderen Kommunikationsvorrichtung während eines vorbestimmten Zyklus empfangen wurde, und die Kommunikationsvorrichtungen messen unterschiedliche Wartezeiten unter Verwendung der Zeitmesseinrichtung.
  • Außerdem enthält jede Kommunikationsvorrichtung in dem Kommunikationssystem gemäß der vorliegenden Erfindung eine Kommunikationsstoppanforderungsübertragungseinrichtung zum Übertragen einer Nachricht zum Anfordern eines Stopps einer Nachrichtenübertragung, eine Kommunikationsstoppanforderungsempfangseinrichtung zum Empfangen einer Nachricht zum Anfordern eines Stopps einer Kommunikationsverarbeitung von einer anderen Kommunikationsvorrichtung und eine Kommunikationsstoppsteuereinrichtung zum Stoppen einer Nachrichtenübertragung, wenn die Kommunikationsstoppanforderungsempfangseinrichtung die Nachricht zum Anfordern eines Stopps der Kommunikationsverarbeitung von der anderen Kommunikationsvorrichtung während eines vorbestimmten Zyklus empfängt.
  • Gemäß einem weiteren Aspekt der vorliegenden Erfindung wird eine Kommunikationsvorrichtung zum Übertragen und Empfangen einer Nachricht zu und von einer anderen Vorrichtung über eine gemeinsame Kommunikationsleitung bereitgestellt, wobei der Kommunikationsvorrichtung eines oder mehrere Übertragungsrechte im Voraus zugewiesen werden und wobei die Kommunikationsvorrichtung aufweist: eine Nachrichtenübertragungseinrichtung zum Erzeugen und Übertragen einer Nachricht, die mehrere Erfolgs-/Fehlerinformationen eines Empfangs, die jeweils einen Erfolg/Fehler eines Nachrichtenempfangs jeweiliger Übertragungsrechte einschließlich einem Übertragungsrecht, das einer anderen Kommunikationsvorrichtung zugewiesen ist, repräsentieren, und an eine andere Vorrichtung zu übertragende Daten enthält; und eine Nachrichtenwiederübertragungseinrichtung zum Wiederübertragen einer Nachricht entsprechend den Erfolgs-/Fehlerinformationen eines Empfangs, die in der Nachricht, die von der anderen Vorrichtung empfangen wird, enthalten sind.
  • Gemäß der vorliegenden Erfindung werden in der Netzwerkkonfiguration, bei der die Kommunikationsvorrichtungen mit der gemeinsamen Kommunikationsleitung (dem Bus) verbunden sind, jeder Kommunikationsvorrichtung im Voraus eines oder mehrere Übertragungsrechte (im Folgenden als „Schlitz”” bezeichnet) zugewiesen, und jede Kommunikationsvorrichtung überträgt zyklisch Nachrichten in einer vorgeschriebenen Reihenfolge entsprechend ihrer eigenen Schlitze. Daher übertragen die Kommunikationsvorrichtungen Daten unter Verwendung des Busses in einer vorgeschriebenen Reihenfolge auf Zeitteilungsweise derart, dass die Kommunikationsvorrichtungen wie bei dem vorhandenen CAN-Protokoll Daten nicht gleichzeitig übertragen und die Arbitrierung nicht durchführen müssen. Dementsprechend ist es möglich, Zeitbeschränkungen, die benötigt werden, um die Arbitrierung durchzuführen, zu beseitigen und eine Kommunikation mit hoher Rate zu erzielen.
  • Wenn jede Kommunikationsvorrichtung Nachrichten betreffend einen Schlitz überträgt, erzeugt und überträgt alternativ jede Kommunikationsvorrichtung eine Nachricht, die mehrere Erfolgs-/Fehlerinformationen eines Empfangs, die jeweils den Erfolg/Fehler des Nachrichtenempfangs, der andere Schlitze betrifft, repräsentieren, und an eine andere Kommunikationsvorrichtung zu übertragende Daten enthält. Wenn keine Daten, die an eine andere Kommunikationsvorrichtung zu übertragen sind, vorhanden sind, kann jede Kommunikationsvorrichtung Nachrichten erzeugen und übertragen, die keine Daten, aber Erfolgs-/Fehlerinformationen eines Empfangs enthalten. Jede Kommunikationsvorrichtung überträgt eine Nachricht, die die Erfolgs-/Fehlerinformationen eines Empfangs und Daten wie beispielsweise, dass jede Kommunikationsvorrichtung in gültiger Weise einen Schlitz, der ihr zugewiesen ist, verwenden kann, enthält, wodurch eine andere Kommunikationsvorrichtung hinsichtlich des Erfolgs/Fehlers des Nachrichtenempfangs informiert wird und Daten, die in einer jeweiligen Kommunikationsvorrichtung enthalten sind, einer anderen Kommunikationsvorrichtung bereitgestellt werden.
  • Eine Nachricht, die von einer Kommunikationsvorrichtung übertragen wird, wird von sämtlichen anderen Kommunikationsvorrichtungen, die mit dem Bus verbunden sind, empfangen. Jede Kommunikationsvorrichtung, die eine Nachricht empfängt, kann Daten, die in der Nachricht enthalten sind, erlangen und kann auf der Grundlage der Erfolgs-/Fehlerinformationen eines Empfangs, die in der Nachricht enthalten sind, bestimmen, ob die Nachrichten, die zuvor von jeder Kommunikationsvorrichtung übertragen wurden, genau empfangen wurden. Daher überprüft jede Kommunikationsvorrichtung die Erfolgs-/Fehlerinformationen eines Empfangs, die in einer Nachricht enthalten sind, die während eines Zyklus von einer Nachrichtenübertragung, die einen Schlitz betrifft, zu der nächsten Nachrichtenübertragung, die denselben Schlitz betrifft, empfangen wird, und in dem Fall, in dem eine Nachricht, die bei einer Übertragungsgelegenheit, die einen Schlitz betrifft, übertragen wird, nicht genau empfangen wird, kann die jeweilige Kommunikationsvorrichtung die Nachricht bei der nächsten Übertragungsgelegenheit, die denselben Schlitz betrifft, wieder übertragen.
  • Daher wird die Arbitrierung gemäß dem vorhandenen CAN-Protokoll nicht durchgeführt, so dass eine Kollision von Nachrichten zu dem Zeitpunkt einer Übertragung der Nachrichten nicht auftreten kann und die Kommunikationsvorrichtungen effizient und zyklisch Nachrichten übertragen können. Sogar wenn die Nachrichten aufgrund irgendeines Problems nicht genau empfangen werden, ist es möglich, die Nachrichten richtig wieder zu übertragen.
  • Außerdem enthält die Nachricht gemäß der vorliegenden Erfindung, die von einer jeweiligen Kommunikationsvorrichtung erzeugt wird, als Erfolgs-/Fehlerinformationen eines Empfangs einen Erfolg/Fehler eines Empfangs einer Nachricht, die einen anderen Schlitz betrifft und die während eines Zyklus von einer Nachrichtenübertragung, die ein Übertragungsrecht betrifft, zu der nächsten Nachrichtenübertragung, die das eine Übertragungsrecht betrifft, übertragen und empfangen wird. Das heißt, die Nachricht enthält die Erfolgs-/Fehlerinformationen eines Empfangs, die einer Gesamtanzahl von Schlitzen des Kommunikationssystems entsprechen, als Informationen, die einem Zyklus entsprechen (jede Kommunikationsvorrichtung kann jedoch in einer Nachricht die Erfolgs-/Fehlerinformationen eines Empfangs, die ihren eigenen Schlitz betreffen, nicht hinzufügen, und in diesem Fall sind die Informationen, die Schlitze betreffen, mit einer Anzahl, die durch Subtrahieren von eins von der Gesamtanzahl von Schlitzen erhalten wird, in der Nachricht enthalten). Wie es oben beschrieben wurde, kann jede Kommunikationsvorrichtung wissen, ob sämtliche anderen Kommunikationsvorrichtungen, die einen Bus teilen, die Nachricht, die von der Kommunikationsvorrichtung übertragen wird, richtig empfangen, da jede Kommunikationsvorrichtung die Erfolgs-/Fehlerinformationen eines Empfangs in einem Zyklus an sämtliche anderen Kommunikationsvorrichtungen überträgt und die Erfolgs-/Fehlerinformationen eines Empfangs, die von den anderen Kommunikationsvorrichtungen während eines Zyklus übertragen werden, empfängt.
  • Wenn gemäß der vorliegenden Erfindung die Nachricht, die einen Schlitz betrifft, in der Übertragungsfolge die nächste ist und dann die Nachrichten, die diesen Schlitz betreffen, nicht übertragen werden, wird angenommen, dass die Verarbeitung für die Kommunikationsvorrichtung, der dieser Schlitz zugewiesen ist, aus irgendeinem Grund gestoppt hat (beispielsweise aufgrund von Problemen wie beispielsweise einem Fehler, einem Schlafmodus oder Ähnlichem). Wenn daher eine Nachricht, die einen Schlitz betrifft, während einer vorbestimmten Zeitdauer nicht übertragen wird, lässt jede Kommunikationsvorrichtung die Übertragungs- und Empfangsverarbeitung einer Nachricht, die diesen Schlitz betrifft, weg und verarbeitet die Übertragung und den Empfang der Nachrichten, die einen nächsten Schlitz betreffen. Dieses kann zu einer größtmöglichen Verringerung einer Zeitdauer, während der die Nachrichten nicht übertragen und empfangen werden, und zu der Erzielung einer hohen Kommunikationsrate beitragen. Sogar wenn ein reservierter Schlitz bereitgestellt wird, um optional eine Vorrichtung zu dem Kommunikationssystem hinzuzufügen, kann die Verarbeitung, die den reservierten Schlitz betrifft, in dem Zustand, in dem die optionale Vorrichtung nicht hinzugefügt ist, weggelassen werden.
  • Außerdem enthält gemäß der vorliegenden Erfindung die Nachricht, die von einer jeweiligen Kommunikationsvorrichtung erzeugt wird, Identifikationsinformationen (beispielsweise Schlitznummer) zum Identifizieren eines Schlitzes. Damit die Kommunikationsvorrichtungen, die an dem derzeitigen Kommunikationssystem teilnehmen, den Bus auf Zeitteilungsweise teilen, müssen die Kommunikationsvorrichtungen erfassen, welcher der Schlitze auf dem Bus verwendet wird, und Nachrichten synchron zueinander übertragen. Demzufolge synchronisiert jede Kommunikationsvorrichtung die Verarbeitungen, die die Übertragung und den Empfang der Nachrichten betreffen, um einen Empfangszeitpunkt einer Schlitznummer, die in den empfangenen Nachrichten enthalten ist, zu erfüllen. Dadurch können die Kommunikationsvorrichtungen die Verarbeitungen synchron zueinander durchführen und eine Nachricht korrekt übertragen und empfangen.
  • Außerdem enthält gemäß der vorliegenden Erfindung die Nachricht, die von einer jeweiligen Kommunikationsvorrichtung erzeugt wird, Identifikationsinformationen wie die Schlitznummer und Informationen zum Erfassen oder Korrigieren eines Fehlers dieser Identifikationsinformationen. Sogar bei dem vorhandenen CAN-Protokoll sind die Informationen (zyklische Redundanzüberprüfungsfolge (CRC-Folge)) zum Erfassen eines Fehlers einer gesamten Nachricht in der Nachricht enthalten, und abgesehen davon sind die Informationen zum Erfassen oder Korrigieren eines Fehlers nur der Schlitznummer und Ähnlichem in der Nachricht enthalten. In dem vorliegenden Kommunikationssystem übertragen die Kommunikationsvorrichtungen zyklisch auf Zeitteilungsweise Nachrichten unter Verwendung des Busses. Daher ist die Bestimmung, welcher der Schlitze die übertragene Nachricht betrifft, eine wichtige Verarbeitung. In dem Fall, in dem ein Fehler in den Identifikationsinformationen wie der Schlitznummer, die für diese Bestimmung verwendet werden können, auftritt, besteht das Risiko, dass die Übertragungsreihenfolge der Nachrichten und Ähnliches nicht eingehalten wird. Daher ist es möglich, durch Hinzufügen der Informationen zum Erfassen oder Korrigieren eines Fehlers der Identifikationsinformationen in der Nachricht die Nachricht in der richtigen Reihenfolge korrekt zu übertragen und zu empfangen. Sogar wenn ein Fehler in der gesamten Nachricht erfasst wird, kann bestimmt werden, ob ein Fehler in den Identifikationsinformationen auftritt. Daher ist es möglich, später auf einfache Weise eine Verarbeitung, die die Nachrichtenwiederübertragung betrifft, durchzuführen.
  • Außerdem zählt in der vorliegenden Erfindung jede Kommunikationsvorrichtung die Anzahl von Fehlern, die zu dem Zeitpunkt des Übertragens und Empfangens der Nachrichten auftreten, unter Verwendung eines Fehlerzählers. Wenn die Auftrittsanzahl von Fehlern groß ist, kann die jeweilige Kommunikationsvorrichtung eine Fehlfunktion aufweisen, so dass die jeweilige Kommunikationsvorrichtung die Übertragungshäufigkeit von Nachrichten verringert, wenn die Auftrittsanzahl von Fehlern, die gezählt wurde, einen vorbestimmten Wert überschreitet. Die Verringerung der Übertragungshäufigkeit von Nachrichten kann durch ein Verfahren eines Übertragens einer Nachricht nur einmal in mehreren Zyklen beispielsweise sogar dann, wenn die Nachricht ihren eigenen Zeitpunkt in Übertragungsreihenfolge erreicht hat, erzielt werden. Sogar nachdem die Übertragungshäufigkeit von Nachrichten verringert wurde, kann ein Fehler auftreten, so dass die Nachrichtenübertragung der Kommunikationsvorrichtung stoppen kann, wenn die Auftrittsanzahl von Fehlern, die von dem Fehlerzähler gezählt wird, einen oberen Grenzwert überschreitet.
  • Als solches ist es möglich, zu verhindern, dass die Nachricht, die von der Kommunikationsvorrichtung, die eine Fehlfunktion aufweist, übertragen wird, einen nachteiligen Einfluss auf die Verarbeitung einer anderen Kommunikationsvorrichtung ausübt, und die Zuverlässigkeit des Kommunikationssystems durch Steuern der Nachrichtenübertragung entsprechend der Auftrittsanzahl von Fehlern zu verbessern.
  • Außerdem müssen die Kommunikationsvorrichtungen gemäß der vorliegenden Erfindung, die den Bus teilen, Verarbeitungen synchron durchführen (insbesondere die Verarbeitungen hinsichtlich der Schlitze). Die Kommunikationsvorrichtungen befinden sich unmittelbar nach dem Aufwachen des Kommunikationssystems durch einen Energie-Reset (ein Energie-Rücksetzen) oder ein Zurückkehren aus einem Schlafzustand und Ähnliches nicht in einem synchronen Zustand, so dass jede Kommunikationsvorrichtung zunächst aufwacht, die Synchronisation mit einer anderen Kommunikationsvorrichtung herstellt und dann die Kommunikationsverarbeitung startet.
  • Wenn zu diesem Zeitpunkt eine jeweilige Kommunikationsvorrichtung konsistent die Nachricht von einer anderen Kommunikationsvorrichtung während eines vorbestimmten Zyklus unmittelbar nach dem Aufwachen der Kommunikationsvorrichtung empfängt und eine jeweilige Kommunikationsvorrichtung eine Nachricht während eines vorbestimmten Zyklus empfängt, kann bestimmt werden, dass eine andere Kommunikationsvorrichtung, die eine Kommunikation im Voraus gestartet hat, vorhanden ist. Daher überträgt die jeweilige Kommunikationsvorrichtung die nächste Nachricht synchron zu der empfangenen Nachricht und startet die Kommunikationsverarbeitung, um sich mit der anderen Kommunikationsvorrichtung zu synchronisieren. Wenn eine jeweilige Kommunikationsvorrichtung eine Nachricht während des vorbestimmten Zyklus nicht empfängt, kann bestimmt werden, dass keine andere Kommunikationsvorrichtung, die eine Kommunikation im Voraus gestartet hat, vorhanden ist, so dass die jeweilige Kommunikationsvorrichtung eine Nachricht überträgt, um die Kommunikationsverarbeitung zu starten.
  • Daher werden die Kommunikationsvorrichtungen miteinander synchronisiert, um die Kommunikationsverarbeitung zu starten, nachdem das Kommunikationssystem aufgewacht ist.
  • Die Kommunikationsvorrichtungen können jedoch eine Nachrichtenübertragung auf der Grundlage der Bestimmung, dass keine Nachrichten während des vorbestimmten Zyklus empfangen werden, gleichzeitig starten. In diesem Fall kollidieren mehrere Nachrichten auf dem Bus, so dass eine andere Kommunikationsvorrichtung eine normale Nachricht nicht empfangen kann. Daher enthält jede Kommunikationsvorrichtung gemäß der vorliegenden Erfindung eine Zeitmesseinrichtung. Wenn Nachrichten übertragen oder abnorme Nachrichten empfangen werden, nachdem die Wartezeit, die dem Schlitz entspricht, der der jeweiligen Kommunikationsvorrichtung zugewiesen wurde, von der Zeitmesseinrichtung gemessen wurde, überträgt jede Kommunikationsvorrichtung eine Nachricht.
  • Durch die Wartezeit, die dem Schlitz entspricht, der der jeweiligen Kommunikationsvorrichtung zugewiesen wurde, messen die Kommunikationsvorrichtungen in dem Kommunikationssystem unterschiedliche Wartezeiten unter Verwendung der Zeitmesseinrichtung. Daher überträgt die Kommunikationsvorrichtung, für die die kürzeste Wartezeit eingestellt ist, nach der Kollision von Nachrichten die nächste Nachricht alleine, und eine andere Kommunikationsvorrichtung kann diese Nachricht normal empfangen und mit der Kommunikationsvorrichtung, die die Nachricht übertragen hat, synchronisiert werden.
  • Außerdem kann, nachdem das Kommunikationssystem aufgewacht ist, um eine Synchronisation zwischen den Kommunikationsvorrichtungen zu errichten, eine Abweichung der Synchronisation in einer oder mehreren Kommunikationsvorrichtungen aufgrund von Problemen mit Kommunikationen und Ähnlichem auftreten. Daher enthält jede Kommunikationsvorrichtung gemäß der vorliegenden Erfindung die Zeitmesseinrichtung, und wenn sie keine Nachricht von einer anderen Kommunikationsvorrichtung während einer vorbestimmten Dauer wie beispielsweise zwei Zyklen empfängt, überträgt sie die Nachricht, nachdem die Wartezeit, die dem Schlitz entspricht, die ihr zugewiesen wurde, von der Zeitmesseinrichtung gemessen wurde.
  • Mit der Wartezeit, die dem Schlitz entspricht, der der jeweiligen Kommunikationsvorrichtung zugewiesen wurde, messen die Kommunikationsvorrichtungen in dem Kommunikationssystem unterschiedliche Wartezeiten unter Verwendung der Zeitmesseinrichtung. Daher überträgt sogar dann, wenn die Nachrichten, die von den Kommunikationsvorrichtungen übertragen werden, aufgrund einer Abweichung in der Synchronisation kollidieren und jede Kommunikationsvorrichtung die Nachricht nicht von einer anderen Kommunikationsvorrichtung empfängt, die Kommunikationsvorrichtung, für die die kürzeste Wartezeit eingestellt ist, die nächste Nachricht alleine. Daher kann eine andere Kommunikationsvorrichtung diese Nachricht normal empfangen und mit der Kommunikationsvorrichtung, die die Nachricht übertragen hat, synchronisiert werden.
  • Außerdem überträgt gemäß der vorliegenden Erfindung, wenn das Kommunikationssystem in einen Energiesparbetriebszustand wie beispielsweise einen Schlafmodus übergeht, jede Kommunikationsvorrichtung eine Anforderung (eine Schlafanforderung) zum Stoppen der Nachrichtenübertragung an eine andere Kommunikationsvorrichtung und empfängt eine Schlafanforderung von anderen Kommunikationsvorrichtungen. Wenn eine jeweilige Kommunikationsvorrichtung die Schlafanforderung von den anderen Kommunikationsvorrichtungen innerhalb des Kommunikationssystems während des vorbestimmten Zyklus empfängt, stoppt sie die Nachrichtenübertragung und geht in den Schlafmodus über. Daher führen die Kommunikationsvorrichtungen innerhalb des Kommunikationssystems eine Vorbereitung des Übergangs in den Schlafmodus durch, und dann können die Kommunikationsvorrichtungen gleichzeitig in den Schlafmodus übergehen.
  • Wirkungen der Erfindung
  • Wenn gemäß der vorliegenden Erfindung die Schlitze den Kommunikationsvorrichtungen, die mit dem Bus verbunden sind, zugewiesen werden, und jede Kommunikationsvorrichtung zyklisch die Nachrichten in einer vorgeschriebenen Reihenfolge überträgt, erzeugt und überträgt jede Kommunikationsvorrichtung eine Nachricht, die Erfolgs-/Fehlerinformationen eines Empfangs, die jeweils einen Erfolg/Fehler des Nachrichtenempfangs betreffend einen anderen Schlitz repräsentieren, und an eine andere Kommunikationsvorrichtung zu übertragende Daten enthält. Wenn eine jeweilige Kommunikationsvorrichtung eine Nachricht empfängt, führt sie eine Wiederübertragung entsprechend den Erfolgs-/Fehlerinformationen eines Empfangs, die in der empfangenen Nachricht enthalten sind, durch. Daher besteht keine Notwendigkeit, eine Arbitrierung des vorhandenen CAN-Protokolls durchzuführen, und es ist möglich, eine hohe Kommunikationsrate zwischen den Kommunikationsvorrichtungen, die mit dem Bus verbunden sind, zu erzielen.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Blockdiagramm, das eine Hardwarekonfiguration eines Kommunikationssystems und einer Kommunikationsvorrichtung gemäß der vorliegenden Erfindung darstellt.
  • 2 ist ein Blockdiagramm, das eine Funktionskonfiguration der Kommunikationsvorrichtung gemäß der vorliegenden Erfindung darstellt.
  • 3A ist eine schematische Ansicht zum Skizzieren eines Kommunikationsprotokolls des Kommunikationssystems gemäß der vorliegenden Erfindung.
  • 3B ist eine schematische Ansicht Skizzieren des Kommunikationsprotokolls des Kommunikationssystems gemäß der vorliegenden Erfindung.
  • 4A ist eine schematische Ansicht, die eine Konfiguration einer Nachricht basierend auf dem Kommunikationsprotokoll des Kommunikationssystems gemäß der vorliegenden Erfindung darstellt.
  • 4B ist eine schematische Ansicht, die eine Konfiguration einer Nachricht basierend auf dem Kommunikationsprotokoll des Kommunikationssystems gemäß der vorliegenden Erfindung darstellt.
  • 5 ist eine schematische Ansicht zum Beschreiben einer Antwortverarbeitung, die in dem Kommunikationssystem gemäß der vorliegenden Erfindung durchgeführt wird.
  • 6 ist eine schematische Ansicht zum Beschreiben der Antwortverarbeitung, die in dem Kommunikationssystem gemäß der vorliegenden Erfindung durchgeführt wird.
  • 7 ist eine schematische Ansicht zum Beschreiben einer Aktionspunktversatzzeit, einer Leerschlitzzeit und einer maximalen Übertragungsschlitzzeit.
  • 8 ist eine schematische Ansicht zum Beschreiben eines Basisbetriebs einer Schlitzverwaltung mittels einer Schlitzverwaltungseinrichtung.
  • 9 ist eine schematische Ansicht zum Beschreiben des Basisbetriebs der Schlitzverwaltung mittels der Schlitzverwaltungseinrichtung.
  • 10 ist ein Zeitdiagramm zum Beschreiben einer Synchronisationsverarbeitung eines Schlitz-Zählers mittels der Schlitzverwaltungseinrichtung.
  • 11 ist eine schematische Ansicht zum Beschreiben der Erfolgs-/Fehlerbestimmung der Nachrichtenübertragung mittels einer Protokollsteuereinrichtung.
  • 12 ist eine schematische Ansicht zum Beschreiben einer Nachrichtenwiederübertragungsverarbeitung mittels der Protokollsteuereinrichtung.
  • 13 ist eine schematische Ansicht zum Beschreiben der Nachrichtenwiederübertragungsverarbeitung mittels der Protokollsteuereinrichtung.
  • 14 ist eine Tabelle, die eine Liste von Kommunikationsfehlern zeigt, die in dem Kommunikationssystem gemäß der vorliegenden Erfindung erfasst werden.
  • 15 ist eine Tabelle, die Schwankungsbedingungen eines Fehlerzählers zeigt.
  • 16 ist ein Zustandsübergangsdiagramm zum Beschreiben eines Betriebs einer Fehlersteuereinrichtung.
  • 17 ist ein Zustandsübergangsdiagramm zum Beschreiben eines Betriebs hinsichtlich einer Kommunikationssteuerverarbeitung einer ECU.
  • 18 ist ein Flussdiagramm, das eine Verarbeitungsprozedur der ECU in einem Anfangszustand darstellt.
  • 19 ist ein Flussdiagramm, das eine Verarbeitungsprozedur der ECU in einem synchronen Bereit-Zustand darstellt.
  • 20 ist ein Flussdiagramm, das die Verarbeitungsprozedur der ECU in dem synchronen Bereit-Zustand darstellt.
  • 21 ist ein Flussdiagramm, das die Verarbeitungsprozedur der ECU in einem synchronen Wartezustand darstellt.
  • 22 ist ein Flussdiagramm, das die Verarbeitungsprozedur der ECU in einem synchronen Zustand darstellt.
  • 23 ist ein Flussdiagramm, das die Verarbeitungsprozedur der ECU in dem synchronen Zustand darstellt.
  • 24 ist ein Flussdiagramm, das die Verarbeitungsprozedur der ECU in einem Schlaf-Bereit-Zustand darstellt.
  • 25 ist ein Flussdiagramm, das die Verarbeitungsprozedur der ECU in einem Bus-Aus-Zustand darstellt.
  • 26 ist ein Flussdiagramm, das die Verarbeitungsprozedur der ECU in dem Bus-Schlafzustand darstellt.
  • 27 ist ein Zeitdiagramm, das ein Verarbeitungsbeispiel einer Startfolge darstellt.
  • 28 ist ein Zeitdiagramm, das das Verarbeitungsbeispiel der Startfolge darstellt.
  • 29 ist ein Zeitdiagramm, das das Verarbeitungsbeispiel der Startfolge darstellt.
  • 30 ist ein Zeitdiagramm, das ein Verarbeitungsbeispiel einer Resynchronisationsfolge darstellt.
  • 31 ist ein Zeitdiagramm, das das Verarbeitungsbeispiel der Resynchronisationsfolge darstellt.
  • 32 ist eine schematische Ansicht, die eine Nachrichtenkonfiguration eines Kommunikationssystems gemäß einem modifizierten Beispiel darstellt.
  • Modus um Ausführen der Erfindung
  • Im Folgenden wird die vorliegende Erfindung genauer mit Bezug auf die Zeichnungen, die Ausführungsformen darstellen, beschrieben.
  • <Konfiguration des Kommunikationssystems>
  • 1 ist ein Blockdiagramm, das eine Hardwarekonfiguration eines Kommunikationssystems und einer Kommunikationsvorrichtung gemäß der vorliegenden Erfindung darstellt. In 1 bezeichnet das Bezugszeichen 1 eine ECU (Kommunikationsvorrichtung), und mehrere ECUs 1 sind an geeigneten Stellen eines Fahrzeugs (nicht gezeigt) angeordnet. Jede ECU 1 führt Verarbeitungen wie beispielsweise eine Steuerung verschiedener elektronischer Vorrichtungen, die in dem Fahrzeug vorgesehen sind, oder eine Erfassung eines Fahrzustands des Fahrzeugs unter Verwendung von Sensoren durch. Außerdem können die ECUs 1 mit einer gemeinsamen Kommunikationsleitung bzw. Bus 5, der in dem Fahrzeug vorgesehen ist, verbunden sein, um Nachrichten über den Bus 5 zu übertragen und empfangen.
  • Der Bus 5 ist wie ein Bus aufgebaut, der in dem vorhandenen CAN-Protokoll verwendet wird und ein verdrilltes Kabelpaar enthält, das ein Betriebssignal überträgt. Ein Signal, das über den Bus 5 übertragen wird, wird durch „dominant” repräsentiert, der ein dominanter Wert ist, der „0” eines logischen Bits entspricht, und durch „rezessiv” repräsentiert, der ein rezessiver Wert ist, der „1” des logischen Bits entspricht. In dem Kommunikationssystem gemäß der vorliegenden Erfindung müssen jedoch Signalwerte von dominant und rezessiv nicht als der dominante Wert und der rezessive Wert gehandhabt werden, sondern es wird derselbe Signalwert verwendet, um eine Kompatibilität mit dem vorhanden CAN-Protokoll aufrechtzuerhalten.
  • Jede ECU 1, die eine Komponente des Kommunikationssystems ist, enthält einen Eingangsteil 12, der mit Sensoren verbunden ist, die einen Fahrzustand des Fahrzeugs oder Ähnliches erfassen, um Signale, die von den Sensoren eingegeben werden, zu erlangen, einen Ausgangsteil 13, der mit einer elektronischen Vorrichtung (nicht gezeigt) verbunden ist, die ein Steuerobjekt ist, das in dem Fahrzeug vorgesehen ist, um ein Steuersignal und Ähnliches auszugeben, einen Speicherteil 14, der ein Programm, Daten und Ähnliches, die für eine Steuerfunktion benötigt werden, speichert, eine Energieversorgungsschaltung 15, die Energie jedem Teil innerhalb der ECU 1 zuführt, einen Kommunikationsteil 16, der mit dem Bus 5 verbunden ist, um Daten zu übertragen und empfangen, und eine Steuerung 11, die einen Betrieb jedes Teils innerhalb der ECU 1 steuert. Auch wenn 1 eine detaillierte interne Konfiguration nur einer ECU 1 darstellt, weisen weitere ECUs 1 dieselbe Konfiguration auf, und daher wird deren detaillierte interne Konfiguration nicht beschrieben.
  • Der Eingangsteil 12 der ECU 1 ist mit verschiedenen Sensoren verbunden, die eine Geschwindigkeit eines Fahrzeugs, eine Beschleunigung des Fahrzeugs, eine Temperatur eines Verbrennungsmotors, einen Lenkwinkel eines Lenkrads oder Ähnliches erfassen. Erfassungswerte von den Sensoren werden als ein jeweiliges Signal in den Eingangsteil 12 eingegeben. Der Eingangsteil 12 erlangt die Erfassungswerte, die von den Sensoren erfasst werden, speichert die erlangten Erfassungswerte in dem Speicherteil 14 und informiert die Steuerung 11 über die Beendigung der Erlangung der erfassten Werte von den Sensoren. Der Ausgangsteil 13 ist mit elektronischen Vorrichtungen zum elektronischen Steuern verschiedener Vorrichtungen wie beispielsweise eines Verbrennungsmotors oder einer Bremse des Fahrzeugs verbunden. Der Ausgangsteil 13 gibt ein Steuersignal zum Steuern des Betriebs verschiedener Vorrichtungen entsprechend dem Steuern der Steuerung 11 aus. Die ECU 1 kann auch nur den Eingangsteil 12 oder den Ausgangsteil 13 enthalten.
  • Der Speicherteil 14 enthält eine wiederbeschreibbare nichtflüchtige Datenspeichervorrichtung wie beispielsweise einen elektrisch löschbaren, programmierbaren Nur-Lese-Speicher (EEPROM) oder einen Flash-Speicher. Der Speicherteil 14 speichert das Programm, das von der Steuerung 11 ausgeführt wird, Daten und Ähnliches im Voraus und zu dem Zeitpunkt eines Energie-Reset der ECU 1, und die ECU 1 liest ein Programm, Daten und Ähnliches aus dem Speicherteil 14 aus, um eine Verarbeitung zu starten. Außerdem speichert der Speicherteil 14 verschiedene Daten, die während der Verarbeitung der Steuerung 11 erzeugt werden, die Erfassungswerte, die von den Sensoren erfasst werden, Daten, die an andere ECUs 1 durch Kommunikationen übertragen werden, Daten, die von anderen ECUs 1 empfangen werden, und Ähnliches. Der Speicherteil 14 kann getrennt mit einem sogenannten ROM und einem Speicher mit wahlfreiem Zugriff (RAM) aufgebaut sein.
  • Die Energieversorgungsschaltung 15 ist mit einer Energieversorgungsquelle (nicht gezeigt) wie beispielsweise einem Wechselstromgenerator oder einer Batterie des Fahrzeugs verbunden, um eine Energie von der Energieversorgungsquelle an eine Spannung oder einen Strom anzupassen, die für ein jeweiliges Element geeignet ist, und die angepasste Energie dem jeweiligen Element zuzuführen.
  • Der Kommunikationsteil 16 ist mit dem Bus 5 verbunden und liest Übertragungsdaten aus dem Speicherteil 14 entsprechend dem Steuern der Steuerung 11 aus, erzeugt eine Nachricht durch Hinzufügen von vorbestimmten Informationen zu den gelesenen Daten und gibt die erzeugte Nachricht an den Bus 5 aus, wodurch die Nachrichten übertragen werden. Der Kommunikationsteil 16 empfängt Nachrichten, die von anderen ECUs 1 übertragen werden, extrahiert die benötigten Daten aus der empfangenen Nachricht, speichert die extrahierten Daten in dem Speicherteil 14 und informiert die Steuerung 11 über die Beendigung des Empfangs. Außerdem führt der Kommunikationsteil 16 verschiedene Steuerverarbeitungen hinsichtlich Kommunikationen und verschiedene Verarbeitungen wie beispielsweise eine Steuerverarbeitung zum Übertragen und Empfangen einer Nachricht unter Verwendung des Busses 5 auf Zeitteilungsweise synchron zu anderen ECUs 1, eine Verarbeitung zum Bestimmen des Erfolgs/Fehlers des Nachrichtenempfangs von anderen ECUs 1, eine Verarbeitung, die auf den Nachrichtenempfang von anderen ECUs 1 antwortet, oder eine Verarbeitung zum Wiederübertragen ihrer eigenen Nachricht entsprechend Inhalten der Nachrichten, die von anderen ECUs 1 empfangen werden, durch. Die Details der Übertragungs- und Empfangsverarbeitung der Nachricht, die von der ECU 1 durchgeführt wird, werden später beschrieben.
  • Die Steuerung 11 erlangt Informationen auf der Grundlage des Signals, das in den Eingangsteil 12 eingegeben wird, und Informationen, die von anderen ECUs 1 über den Bus 5 und Ähnliches empfangen werden, wird auf der Grundlage der erlangten Informationen betrieben, um ein Steuersignal zu erzeugen, und gibt das Steuersignal von dem Ausgangsteil 13 an elektronische Steuervorrichtungen, die in dem Fahrzeug vorgesehen sind, aus. In diesem Fall, in dem die Steuerung 11 die Informationen, die von dem Sensor in den Eingangsteil 12 eingegeben werden, ein Betriebsergebnis oder Ähnliches mit anderen ECUs 1 teilen muss, erzeugt die Steuerung 11 die Nachricht, die diese Informationen als Daten enthält, und überträgt die erzeugte Nachricht über den Kommunikationsteil 16 zu den anderen ECUs 1.
  • <Funktionskonfiguration der Kommunikationsvorrichtung>
  • 2 ist ein Blockdiagramm, das eine Funktionskonfiguration der Kommunikationsvorrichtung gemäß der vorliegenden Erfindung darstellt, und stellt eine Konfiguration hinsichtlich der Kommunikationsfunktion dar, die von der Steuerung 11 und dem Kommunikationsteil 16 der ECU 1 erzielt wird. Die Funktion der ECU 1 kann in drei Schichten unterteilt werden, d. h. eine Anwendungsschicht, eine Protokollsteuerschicht und eine physikalische Schicht. Die Anwendungsschicht enthält Anwendungssoftware (im Folgenden als „Anwendungen” bezeichnet) 101. Die Protokollsteuerschicht enthält eine Protokollsteuereinrichtung 102, eine Fehlersteuereinrichtung 103, eine Nachrichtenerzeugungseinrichtung 104, eine Schlitzverwaltungseinrichtung 105 und eine Bit-Abtasteinrichtung 106. Außerdem enthält die physikalische Schicht einen Bustreiber 107.
  • Die physikalische Schicht ist eine Schicht, die ein physikalische Verbindung mit dem Bus 5 und ein Übertragen und Empfangen von elektrischen Signalen zu und von dem Bus betrifft. Die physikalische Schicht der ECU 1 entspricht einer physikalischen Schicht eines Referenzmodells einer offenen Systemverbindung (OSI). Der Bustreiber 107 der physikalischen Schicht gibt ein Signal entsprechend einem Wert (dominant/rezessiv) einer Übertragungsnachricht, die von der Protokollsteuerschicht bereitgestellt wird, an den Bus 5 aus, erfasst einen Signalpegel des Busses 5, wandelt den erfassten Signalpegel in einen dominanten/rezessiven Wert um und stellt den umgewandelten dominanten/rezessiven Wert der Protokollsteuerschicht bereit. Der Bustreiber 107 ist in dem Kommunikationsteil 16 vorgesehen.
  • Die Anwendungsschicht ist eine Schicht, die detaillierte Dienste hinsichtlich der Steuerung elektronischer Vorrichtungen, die in dem Fahrzeug vorgesehen sind, bereitstellt. Die Anwendungsschicht der ECU 1 entspricht einer Anwendungsschicht des OSI-Referenzmodells. Jede Anwendung 101 der Anwendungsschicht verwendet eine vorbestimmte Anwendungsprogrammierungsschnittstelle (API), um Informationen mit der Protokollsteuerschicht auszutauschen. Die Anwendung 101 wird durch Ermöglichen, dass die Steuerung 11 die Programme und die Daten, die in dem Speicherteil 14 gespeichert sind, ausführt, erzielt.
  • Der Bustreiber 107 der physikalischen Schicht und die Anwendung 101 der Anwendungsschicht in der ECU 1 gemäß der vorliegenden Ausführungsform können dieselbe Konfiguration wie die Konfiguration des vorhandenen CAN-Protokolls aufweisen. Die Kommunikationsvorrichtung gemäß der vorliegenden Erfindung und die Kommunikationsvorrichtung des vorhandenen CAN-Protokolls unterscheiden sich hinsichtlich der Konfiguration der Protokollsteuerschicht und des Kommunikationsprotokolls voneinander. Das Kommunikationsprotokoll der Kommunikationsvorrichtung gemäß der vorliegenden Erfindung ist jedoch in Bezug auf das vorhandene CAN-Protokoll, das als Basis dient, verbessert.
  • Das Kommunikationsprotokoll des Kommunikationssystems gemäß der vorliegenden Erfindung wird vorzugsweise in einem Netzwerk einer Busverbindung verwendet, bei dem die Kommunikationsvorrichtungen wie in 1 gezeigt mit der gemeinsamen Kommunikationsleitung verbunden sind. Das Kommunikationsprotokoll des Kommunikationssystems gemäß der vorliegenden Erfindung kann jedoch in einem Netzwerk verwendet werden, das andere Konfigurationen aufweist. Sogar in einem Netzwerk, das eine Konfiguration aufweist, bei der die Kommunikationsvorrichtungen in einem Stern verbunden sind und ein Gateway in der Mitte angeordnet ist, kann beispielsweise die Kommunikationsverarbeitung, die zwischen dem Gateway und der Kommunikationsvorrichtung durchgeführt wird, mittels des Kommunikationsprotokolls der vorliegenden Erfindung durchgeführt werden. Bei dem Kommunikationsprotokoll der vorliegenden Erfindung weisen die Kommunikationsvorrichtungen, die Kommunikationen durchführen, keine vertikale Beziehung eines Master/Slave und Ähnliches auf, sondern sämtliche Kommunikationsvorrichtungen kommunizieren auf einer Gleichheitsbasis miteinander.
  • Gemäß dem vorhandenen CAN-Protokoll führt, wenn die Kommunikationsvorrichtungen gleichzeitig Nachrichten an den Bus übertragen, jede Kommunikationsvorrichtung eine Arbitrierungsverarbeitung (im Folgenden als „Arbitrierung” bezeichnet) entsprechend einer Priorität von Identifizierern (IDs), die in den Nachrichten enthalten sind, durch, und es wird die Nachricht, die die höchste Priorität aufweist, übertragen. Andererseits wird in dem Kommunikationsprotokoll der vorliegenden Erfindung die obige Arbitrierung nicht durchgeführt. In dem Kommunikationsprotokoll der vorliegenden Erfindung übertragen die ECUs 1, die mit dem Bus 5 verbunden sind, zyklisch die Nachrichten (das heißt, übertragen die Nachrichten periodisch in einer vorbestimmten Reihenfolge). Daher wird der Bus 5 auf Zeitteilungsweise verwendet, und die Kollision von Nachrichtenübertragungen wird vermieden.
  • <Skizzierung des Kommunikationsprotokolls>
  • Die 3A und 3B sind schematische Ansichten zum Skizzieren des Kommunikationsprotokolls des Kommunikationssystems gemäß der vorliegenden Erfindung. In der folgenden Beschreibung wird eine Konfiguration, bei der vier ECUs 1 mit dem Bus 5 verbunden sind, betrachtet, und die vier ECUs 1 werden durch jeweilige Bezugszeichen 1a bis 1d voneinander unterschieden. Gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung sind ein oder mehrere Schlitze (Schlitznummer) im Voraus (statistisch) den ECUs 1a bis 1d, die an der Kommunikation teilnehmen, zugewiesen. Ein Schlitz repräsentiert ein Übertragungsrecht, wenn die Nachrichten zyklisch übertragen werden, und die Nachricht, die den Schlitz mit der kleineren Nummer betrifft, wird früher übertragen. Außerdem ist eine Überdeckung der Schlitznummern nicht erlaubt, und für eine Schlitznummer kann nur eine ECU der ECUs 1a bis 1d eine Übertragung durchführen.
  • Wie es in 3A gezeigt ist, sind der ECU 1a beispielsweise Schlitze 1 und 5 zugewiesen, der ECU 1b ist der Schlitz 2 zugewiesen, der ECU 1c sind die Schlitze 3 und 6 zugewiesen, und der ECU 1d ist der Schlitz 4 zugewiesen. Jede der ECUs 1a bis 1d erhält im Voraus gemeinsame Informationen wie beispielsweise eine Gesamtanzahl von Schlitzen in dem Netzwerk und eine maximale Zeit (als eine Schlitzzeit bezeichnet), während der der Bus 5 für eine Nachrichtenübertragung hinsichtlich eines Schlitzes verwendet werden kann.
  • Die ECU, der die niedrigste Schlitznummer unter den ECUs 1a bis 1d zugewiesen ist, überträgt eine Nachricht während eines Zyklus, dessen Zeit bzw. Dauer gleich der Gesamtanzahl von Schlitzen x einer Schlitzzeit bzw. -dauer beträgt. Wie es in 3B gezeigt ist, überträgt beispielsweise die ECU 1a, der der Schlitz 1 zugewiesen ist, zunächst eine Nachricht (als Msg in der Zeichnung abgekürzt) A, die ECU 1b, der der Schlitz 2 zugewiesen ist, überträgt als Zweites die Nachricht B, die ECU 1c, der der Schlitz 3 zugewiesen ist, überträgt als Drittes die Nachricht C, und die ECU 1d, der der Schlitz 4 zugewiesen ist, überträgt als Viertes die Nachricht D. Anschließend überträgt die ECU 1a, der der Schlitz 5 zugewiesen ist, als Fünftes die Nachricht E, und die ECU 1c, der der Schlitz 6 zugewiesen ist, überträgt als Sechstes die Nachricht F. Ein Zyklus endet aufgrund der Beendigung der Nachrichtenübertragung hinsichtlich des Schlitzes, der die größte Nummer aufweist, und die ECU 1a, der der Schlitz 1 zugewiesen ist, überträgt die Nachricht G in dem nächsten Zyklus.
  • Wie es oben beschrieben wurde, übertragen die ECUs 1a bis 1d, die mit dem Bus 5 verbunden sind, zyklisch Nachrichten entsprechend der Schlitznummer synchron zueinander, so dass die Nachrichten auf dem Bus nicht miteinander kollidieren. Daher muss jede ECU 1a bis 1d keine Arbitrierung wie bei dem vorhandenen CAN-Protokoll durchführen. Daher gibt die Kommunikationsvorrichtung gemäß dem vorhandenen CAN-Protokoll, wenn sie eine Nachricht überträgt, die Nachricht an den Bus aus und muss dann für jedes Bit erfassen, ob sich ein Signal auf dem Bus geändert hat. Gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung besteht jedoch keine Notwendigkeit, die Erfassungsverarbeitung für jedes Bit durchzuführen, und es kann eine hohe Kommunikationsrate erzielt werden. Die obige Steuerung des Übertragens und des Empfangens der Nachrichten entsprechend den Schlitzen wird von der Protokollsteuereinrichtung 102, der Schlitzverwaltungseinrichtung 105 und Ähnlichem in jeder der ECUs 1a bis 1d durchgeführt.
  • Die Nachricht, die von irgendeiner ECU aus den ECUs 1a bis 1d übertragen wird, kann von sämtlichen anderen ECUs aus den ECUs 1a bis 1d, die mit dem Bus 5 verbunden sind, empfangen werden. Die anderen ECUs, die die Nachricht empfangen, müssen eine Antwort (Übertragung einer sogenannten Bestätigung (ACK)/negativen Bestätigung (NAK)) hinsichtlich dessen, ob die Nachrichten richtig empfangen wurden, an die ECU, die eine Nachrichtenübertragungsquelle ist, geben. Gemäß dem vorhandenen CAN-Protokoll kann das Ausgeben der Antwort auf der Grundlage eines ACK-Schlitzes von 1 Bit, der in der Nachricht enthalten ist, durchgeführt werden, und die Kommunikationsvorrichtung, die die Nachrichtenübertragungsquelle ist, kann erfassen, ob sich das Signal in der ACK-Schlitzperiode geändert hat, um zu bestimmen, ob die Nachricht richtig empfangen wurde.
  • Wie es oben beschrieben wurde, wird, da gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung nicht die Änderung des Signals für jedes Bit zu dem Zeitpunkt der Übertragung der Nachricht erfasst wird, die Antwort des Nachrichtenempfangs mittels eines Verfahrens, das sich von dem vorhandenen CAN-Protokoll unterscheidet, ausgegeben. Daher kann gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung die Konfiguration der Nachricht, die unter den ECUs 1a bis 1d übertragen und empfangen wird, in einigen Aspekten im Vergleich zu der Konfiguration einer Nachricht gemäß dem vorhandenen CAN-Protokoll erweitert sein.
  • <Erzeugung der Nachricht>
  • Im Folgenden wird ein Betrieb der Nachrichtenerzeugungseinrichtung 104, die in der Protokollsteuerschicht der ECU 1 enthalten ist, beschrieben. Die 4A und 4B sind schematische Ansichten, die die Konfiguration von Nachrichten basierend auf dem Kommunikationsprotokoll des Kommunikationssystems gemäß der vorliegenden Erfindung darstellen. Die Nachrichten, die in den 4A und 4B gezeigt sind, können durch die Nachrichtenerzeugungseinrichtung 104 der ECU 1 erzeugt werden. In dem Kommunikationsprotokoll der vorliegenden Erfindung werden zwei Arten von Nachrichten, d. h. ein Datenrahmen und ein ACK-Rahmen, verwendet. Der Datenrahmen gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung entspricht dem Datenrahmen gemäß dem vorhandenen CAN-Protokoll, und der ACK-Rahmen gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung ist unter den Rahmen, die auf dem vorhandenen CAN-Protokoll basieren, nicht vorhanden. Der Datenrahmen wird verwendet, um die Datenübertragung an andere ECUs 1 durchzuführen und die Antwort hinsichtlich des Erfolgs/Fehlers eines Datenempfangs auszugeben. Der ACK-Rahmen wird verwendet, wenn keine Daten, die an andere ECUs 1 zu übertragen sind, vorhanden sind, ebenso wie wenn das Starten und Schlafen des Kommunikationssystems durchgeführt werden.
  • Der Datenrahmen, der auf dem vorliegenden Kommunikationsprotokoll basiert, enthält ein Feld eines Start eines Rahmens (SOF), ein ID-Feld, ein Steuerfeld, ein Schlafbit, ein Fehleraktivbit (als „EA” in den 4A und 4B abgekürzt), ein ACK-Feld, ein Schlitznummerfeld, (als „SLOT” in den 4A und 4B abgekürzt), ein Datenfeld, ein Feld einer zyklischen Redundanzüberprüfung (CRC) und Feld eines Endes eines Rahmens (EOF). Weiterhin ist der ACK-Rahmen ein Rahmen, in dem das Datenfeld aus dem Datenrahmen entfernt ist. Das SOF, das Steuerfeld, das Datenfeld, das EOF und das IFS sind dieselben wie bei dem vorhandenen CAN-Protokoll.
  • Das SOF ist dasselbe wie ein SOF, das in dem Datenrahmen des vorhandenen CAN-Protokolls bereitgestellt wird. Das SOF ist ein Bit, das den Start der Nachricht repräsentiert, und ist „dominant” in 1 Bit. Jede ECU 1 in dem Kommunikationssystem erfasst das SOF auf dem Bus 5, um die Nachricht synchron zu empfangen.
  • Das ID-Feld weist dieselbe Konfiguration wie das Arbitrierungsfeld auf, das in dem Datenrahmen des vorhandenen CAN-Protokolls bereitgestellt wird, aber in dem Kommunikationsprotokoll der vorliegenden Erfindung wird, wie es oben beschrieben wurde, die Arbitrierung nicht durchgeführt. Daher wird der Wert des ID-Felds nur als die ID der Nachricht verwendet. Das ID-Feld enthält ID-Daten und ein Fernübertragungsanforderungsbit (RTR). Die ID-Daten, die einen Typ einer Nachricht repräsentieren, bestehen aus 11 Bits in einem Standardformat und aus 29 Bits in einem erweiterten Format. Das RTR besteht aus Daten von 1 Bit und ist dasselbe wie bei dem vorhandenen CAN-Protokoll.
  • Das Steuerfeld ist dasselbe wie ein Steuerfeld des vorhandenen CAN-Protokolls und enthält Informationen wie beispielsweise ein Identifizierererweiterungsbit (IDE) zum Unterscheiden zwischen dem Standardformat und dem erweiterten Format, und einen Datenlängencode (DLC) von vier Bits, die eine Datenlänge des Datenrahmens repräsentieren. In dem Fall, in dem jede der ECUs 1a bis 1d den Datenrahmen und den ACK-Rahmen identifiziert, werden die ID-Daten des ID-Felds verwendet, und der normalerweise empfangene Rahmen mit ID-Daten = 1 wird als der ACK-Rahmen festgelegt (der Wert der ID-Daten ist jedoch nur ein Beispiel, und es können andere Werte verwendet werden). Außerdem führt jede der ECUs 1a bis 1d die Übertragung durch Setzen von DLC = 0 in dem ACK-Rahmen durch. Die ECUs 1a bis 1d, die den ACK-Rahmen empfangen, führen die Empfangsverarbeitung durch Annehmen von DLC = 0 durch, auch wenn der empfangene Rahmen, wenn der Rahmen mit ID-Daten = 1 empfangen wird, DLC ≠ 0 aufweist.
  • Das Schlafbit besteht aus Informationen von 1 Bit, die zu dem Zeitpunkt der Verarbeitung hinsichtlich des Schlafs des Kommunikationssystems verwendet werden, und wird nur in dem ACK-Rahmen verwendet. Wenn das Schlafbit als dominant gesetzt ist, wird ein allgemeiner Betrieb durchgeführt. Wenn das Schlafbit als rezessiv gesetzt ist, wird der ACK-Rahmen als die Schlafanforderung empfangen, und die Verarbeitung hinsichtlich des Schlafs startet. Außerdem wird das Schlafbit in dem Datenrahmen zu sämtlichen Zeiten als dominant gesetzt.
  • Das Fehleraktivbit besteht aus Informationen von 1 Bit und wird verwendet, um Informationen über einen Fehlerzustand anzugeben, wenn Fehler hinsichtlich der Kommunikationsverarbeitung auftreten. Wenn das Fehleraktivbit als dominant gesetzt ist, ist der Fehlerzustand fehleraktiv. Wenn das Fehleraktivbit als rezessiv gesetzt ist, ist der Fehlerzustand fehlerpassiv (eine detaillierte Beschreibung von fehleraktiv, fehlerpassiv und Ähnlichem wird unten gegeben).
  • Das ACK-Feld besteht aus Informationen derselben Anzahl von Bits wie die Gesamtanzahl von Schlitzen in dem Kommunikationssystem. Jedes Bit des ACK-Felds entspricht einem Schlitz, und die Erfolgs-/Fehlerinformationen des Nachrichtenempfangs des Schlitzes in einem Zyklus werden in dem entsprechenden Bit gesetzt. Wenn beispielsweise die Gesamtanzahl der Schlitze 16 beträgt, besteht das ACK-Feld aus Informationen von 16 Bits, und die Erfolgs-/Fehlerinformationen eines Empfangs von Schlitz 1 werden in einem ersten Bit gesetzt, die Erfolgs-/Fehlerinformationen eines Empfangs von Schlitz 2 werden in einem zweiten Bit gesetzt, ..., und die Erfolgs-/Fehlerinformationen eines Empfangs von Schlitz 16 werden in einem sechzehnten Bit gesetzt. Außerdem entspricht in jedem Bit des ACK-Felds der Wert, der rezessiv repräsentiert, dem Erfolg eines Empfangs (ACK), und der Wert, der dominant repräsentiert, entspricht dem Fehler eines Empfangs (NAK).
  • Die Funktionen wie beispielsweise die Arbitrierung und ein ACK-Bit des vorhandenen CAN-Protokolls werden in dem Kommunikationssystem der vorliegenden Erfindung jedoch nicht benötigt. Daher kann in dem Kommunikationssystem der vorliegenden Erfindung dominant dem ACK entsprechen und rezessiv kann dem NAK entsprechen. Das heißt, wenn die Kombinationen aus ACK und NAK des ACK-Felds und rezessiv und dominant innerhalb des Kommunikationssystems einheitlich sind, sind die Kombinationen nicht speziell beschränkt, und daher kann jede Kombination verwendet werden.
  • Die Nummer eines Schlitzes, den die Nachrichtenübertragung betrifft, wird in der Schlitznummer festgelegt, und die Schlitznummer wird verwendet, wenn eine jeweilige ECU 1 eine Synchronisationskorrektur (eine detaillierte Beschreibung erfolgt später) in dem Kommunikationssystem durchführt. Die Datengröße der Schlitznummer wird durch die Gesamtanzahl von Schlitzen definiert, und wenn die Gesamtanzahl von Schlitzen beispielsweise 16 beträgt, besteht die Schlitznummer aus Informationen von 4 Bits.
  • Das Datenfeld ist dasselbe wie das Datenfeld, das in dem Datenrahmen des vorhandenen CAN-Protokolls bereitgestellt wird. Das Datenfeld enthält Daten von 0 bis 8 Bytes und wird in einem Format des signifikantesten Bit zuerst (MSB) übertragen. Jede ECU 1 fügt beliebige Daten, die an andere ECUs 1 zu übertragen sind, dem Datenfeld hinzu und überträgt die Nachricht, deren Datenfeld die hinzugefügten Daten enthält.
  • Das CRC-Feld enthält eine CRC-Folge von 15 Bits und einen CRC-Begrenzer von 1 Bit (Bits zur Begrenzung) und wird verwendet, um einen Fehler der empfangenen Nachricht zu erfassen. Die CRC-Folge kann durch eine Operation hinsichtlich der Werte beginnend von dem SOF bis zu dem Datenfeld unter Verwendung eines vorbestimmten Generatorpolynoms erlangt werden. Man beachte, dass das Generatorpolynom, das bei der Operation verwendet wird, dasselbe wie dasjenige sein kann, das bei dem vorhandenen CAN-Protokoll verwendet wird. Die ECU 1, die die Nachricht empfängt, kann die Werte der CRC-Folge der empfangenen Nachricht mit den Werten, die durch das Generatorpolynom für die empfangenen Nachrichten berechnet werden, vergleichen, um Fehler zu erfassen. Wenn diese beiden Werte nicht übereinstimmen, wird bestimmt, dass ein Fehler aufgetreten ist. Der CRC-Begrenzer ist gemäß dem vorhandenen CAN-Protokoll ein rezessives Bit, besteht jedoch in dem Kommunikationsprotokoll der vorliegenden Erfindung aus insgesamt von 2 Bits, die aus einem rezessiven Bit und einem dominanten Bit bestehen. Man beachte, dass die Länge der CRC-Folge nicht auf 15 Bits begrenzt ist und 14 Bits oder weniger oder 16 Bits oder mehr betragen kann.
  • Das EOF ist dasselbe wie das EOF, das in dem Datenrahmen des vorhandenen CAN-Protokolls bereitgestellt wird. Das EOF besteht aus einem Bit, das das Ende des Datenrahmens repräsentiert, und ist ein rezessives aus 7 Bits.
  • Die Nachrichtenerzeugungseinrichtung 104 der ECU 1 erzeugt den Datenrahmen und den ACK-Rahmen, die oben beschrieben wurden, gemäß der Steuerung der Protokollsteuereinrichtung 102. Die Nachrichtenerzeugungseinrichtung 104 überträgt die erzeugte Nachricht an den Bustreiber 107 über eine Bit-Abtasteinrichtung 106, um die Nachricht an den Bus 5 auszugeben und die Nachricht an sämtliche anderen ECUs 1, die mit dem Bus 5 verbunden sind, zu übertragen. Außerdem extrahiert die Nachrichtenerzeugungseinrichtung 104 die Daten jedes Felds, das in 4A oder 4B gezeigt ist, aus dem Abtastergebnis der Bit-Abtasteinrichtung 106, d. h. der empfangenen Nachricht, und stellt die extrahierten Daten für die Protokollsteuereinrichtung 102 bereit.
  • Die 5 und 6 sind schematische Ansichten zum Beschreiben der Antwortverarbeitung, die in dem Kommunikationssystem gemäß der vorliegenden Erfindung durchgeführt wird. 5 stellt ein Beispiel der Nachrichtenübertragung innerhalb des Kommunikationssystems dar, und 6 stellt die Inhalte des ACK-Felds, das in jeder Nachricht enthalten ist, dar. Man beachte, dass die Beispiele, die in den 5 und 6 gezeigt sind, auf der Konfiguration (vier ECUs 1a bis 1d übertragen Nachrichten unter Verwendung von sechs Schlitzen) des Kommunikationssystems, das in 3A gezeigt ist, basieren.
  • Wie es in 5 gezeigt ist, wird in dem Fall, in dem die Kommunikation durch Aufwachen jeder der ECUs 1 in dem Kommunikationssystem startet, die Nachrichtenübertragung von der ECU 1a, der der Schlitz 1 zugewiesen ist, gestartet, und die ECUs 1a bis 1d übertragen Nachrichten in der numerischen Reihenfolge der Schlitze. In dem dargestellten Beispiel überträgt die ECU 1a, der der Schlitz 1 zugewiesen ist, die Nachricht A, die ECU 1b, der der Schlitz 2 zugewiesen ist, überträgt die Nachricht B, die ECU 1c, der der Schlitz 3 zugewiesen ist, überträgt die Nachricht C, die ECU 1d, der der Schlitz 4 zugewiesen ist, überträgt die Nachricht D, die ECU 1a, der der Schlitz 5 zugewiesen ist, überträgt die Nachricht E, und die ECU 1c, der der Schlitz 6 zugewiesen ist, überträgt die Nachricht F, und damit ist ein Zyklus beendet. Im nächsten Zyklus überträgt die ECU 1a, der der Schlitz 1 zugewiesen ist, die Nachricht G, die ECU 1b, der der Schlitz 2 zugewiesen ist, überträgt die Nachricht H, und die ECU 1c, der der Schlitz 3 zugewiesen ist, überträgt die Nachricht I, und es wird dieselbe Verarbeitung wiederholt.
  • Wie es in 6 gezeigt ist, enthält die Nachricht, die von jeder der ECUs 1a bis 1d übertragen wird, Informationen (ACKs 1 bis 6) von 6 Bits (= Anzahl der Schlitze) in dem ACK-Feld, und der Erfolg/Fehler des Nachrichtenempfangs für die Schlitze 1 bis 6 wird in ACK 1 bis ACK 6 jeweils als das rezessive (ACK) oder das dominante (NAK) Bit gesetzt. Außerdem setzt jede der ECUs 1a bis 1d ACK für die Bits der ACK-Felder für diejenigen Schlitze, die ihr selbst zugewiesen sind, um die Nachrichten zu übertragen.
  • Unmittelbar nach dem Start der Kommunikation in dem Kommunikationssystem führt jede der ECUs 1a bis 1d noch keine Übertragung und keinen Empfang von Nachrichten durch und empfängt keine Nachricht. In einem Zyklus unmittelbar nach dem Start der Kommunikation überträgt jede der ECUs 1a bis 1d Nachrichten durch Setzen von ACKs in den Bits des ACK-Felds, die die Schlitze betreffen, deren Nachrichtenübertragung und Nachrichtenempfang nicht durchgeführt werden.
  • In der Kommunikation, die den Schlitz 1 eines ersten Zyklus nach dem Start der Kommunikation betrifft, erzeugt und überträgt die ECU 1a die Nachricht A, in der ACKs in ACK 1 und ACK 5 entsprechend dem Schlitz 1 und dem Schlitz 5, die der ECU 1a zugewiesen sind, sowie ACKs in den ACKs 2 bis 4 und 6 entsprechend den Schlitzen 2 bis 4 und 6, deren Nachrichtenübertragung und Nachrichtenempfang nicht durchgeführt werden bzw. wurden, gesetzt sind.
  • Anschließend erzeugt und überträgt die ECU 1b in der Kommunikation, die den Schlitz 2 des ersten Zyklus betrifft, die Nachricht B, in der der Erfolg/Fehler (ACK/NAK) eines Empfangs der Nachricht A, die mittels Kommunikation, die den Schlitz 1 betrifft, übertragen wurde, in ACK 1 gesetzt ist, ACK in ACK 2 entsprechend dem Schlitz 2, der der ECU 1b zugewiesen ist, gesetzt ist und ACKs in den ACKs 3 bis 6 entsprechend den Schlitzen 3 bis 6 gesetzt sind, deren Nachrichtenübertragung und Nachrichtenempfang nicht durchgeführt werden bzw. wurden.
  • Anschließend erzeugt und überträgt die ECU 1c in der Kommunikation, die den Schlitz 3 des ersten Zyklus betrifft, die Nachricht C, in der der Erfolg/Fehler eines Empfangs, der die Nachrichten A und B betrifft, die in den Kommunikationen, die die Schlitze 1 und 2 betreffen, übertragen wurden, jeweils in den ACKs 1 und 2 angegeben ist, ACKs in den ACKs 3 und 6 entsprechend den Schlitzen 3 und 6, die der ECU 1c zugewiesen sind, gesetzt sind und ACKs in den ACKs 4 und 5 entsprechend den Schlitzen 4 und 5 gesetzt sind, deren Nachrichtenübertragung und Nachrichtenempfang nicht durchgeführt werden bzw. wurden.
  • Auf ähnliche Weise werden die Übertragung der Nachricht D der ECU 1d, die den Schlitz 4 des ersten Zyklus betrifft, die Übertragung der Nachricht E der ECU 1a, die den Schlitz 5 betrifft, und die Übertragung der Nachricht F der ECU 1c, die den Schlitz 6 betrifft, durchgeführt. Wenn die Übertragung und der Empfang der Nachrichten eines Zyklus enden, hat jede der ECUs 1a bis 1d mindestens eine Nachricht übertragen, und die ECU 1a kann durch Überprüfen des ACK-Felds der Nachrichten B, C, D und F der anderen ECUs 1b bis 1d, d. h. durch Bestimmen, ob ACK in ACK 1 sämtlicher Nachrichten gesetzt ist, bestimmen, ob die Nachricht A, die in dem Schlitz 1 des ersten Zyklus übertragen wurde, von den anderen ECUs 1b bis 1d richtig empfangen wurde.
  • Wenn die ACKs 1 sämtlicher Nachrichten als ACK gesetzt sind, bestimmt die ECU 1a, dass die Nachricht A, die in dem Schlitz 1 übertragen wurde, von sämtlichen ECUs 1b bis 1d normal empfangen wurde, und überträgt die Nachricht G weiterer Daten in dem Schlitz 1 des nächsten Zyklus. Wenn andererseits irgendeiner der ACKs als NAK gesetzt ist, bestimmt die ECU 1a, dass die Nachricht A, die in dem Schlitz 1 übertragen wurde, nicht richtig empfangen wurde, und überträgt die Nachricht A in dem Schlitz 1 des nächsten Zyklus wieder. In dem Beispiel, das in 6 gezeigt ist, wird die Nachricht A von sämtlichen anderen ECUs 1b bis 1d normal empfangen.
  • In der Kommunikation, die den Schlitz 1 eines zweiten Zyklus betreffen, erzeugt und überträgt die ECU 1a die Nachricht G, in der der Erfolg/Fehler eines Empfangs, der die Nachrichten B bis D und F betrifft, die die Schlitze 2 bis 4 und 6 des ersten Zyklus betreffen, in den ACKs 2 bis 4 und 6 angegeben ist und ACKs in den ACKs 1 und 5, die den Schlitzen 1 und 5 entsprechen, die der ECU 1a zugewiesen sind, gesetzt sind.
  • Auf ähnliche Weise kann die ECU 1b durch Überprüfen des ACK-Felds der während eines Zyklus von dem Schlitz 3 des ersten Zyklus zu dem Schlitz 1 des zweiten Zyklus empfangenen Nachrichten bestimmen, ob die Nachricht B, die von der ECU 1b in dem Schlitz 2 des ersten Zyklus übertragen wurde, von den anderen ECUs 1a, 1c und 1d richtig empfangen wurde. In den Kommunikationen, die den Schlitz 2 des zweiten Zyklus betreffen, erzeugt und überträgt die ECU 1b eine neue Nachricht H, die in 6 gezeigt ist, wenn die Nachricht B richtig empfangen wurde, während die ECU 1b die Nachricht B wieder überträgt, wenn die Nachricht B nicht richtig empfangen wurde.
  • Auf ähnliche Weise kann die ECU 1c durch Überprüfen des ACK-Felds der während eines Zyklus von dem Schlitz 4 des ersten Zyklus zu dem Schlitz 2 des zweiten Zyklus empfangenen Nachrichten bestimmen, ob die Nachricht C, die von der ECU 1c in dem Schlitz 3 des ersten Zyklus übertragen wurde, von den anderen ECUs 1a, 1b und 1d richtig empfangen wurde. In den Kommunikationen, die den Schlitz 3 des zweiten Zyklus betreffen, erzeugt und überträgt die ECU 1c eine neue Nachricht I, die in 6 gezeigt ist, wenn die Nachricht C richtig empfangen wurde, während die ECU 1c die Nachricht C wieder überträgt, wenn die Nachricht C nicht richtig empfangen wurde.
  • Jede der ECUs 1a bis 1d erzeugt eine Nachricht, die die Daten (das Datenfeld), die an die anderen ECUs 1a bis 1d zu übertragen sind, und die Informationen (das ACK-Feld), die den Erfolg/Fehler des Nachrichtenempfangs von den anderen ECUs 1a bis 1d repräsentieren, enthält. Jede der ECUs 1a bis 1d überträgt die erzeugte Nachricht an sämtliche anderen ECUs 1a bis 1d in den Schlitzen, die ihr zugewiesen sind. Daher kann jede der ECUs 1a bis 1d die Nachrichten von sämtlichen ECUs 1a bis 1d während eines Zyklus empfangen, kann durch Überprüfen der ACK-Felder, die in den Nachrichten enthalten sind, bestimmen, ob die zuvor übertragene Nachricht von sämtlichen anderen ECUs 1a bis 1d richtig empfangen wurde, und kann bestimmen, ob jede der ECUs 1a bis 1d die übertragene Nachricht wieder übertragen muss. Außerdem kann jede der ECUs 1a bis 1d den ACK-Rahmen in dem Schlitz, der ihr zugewiesen ist, übertragen, wenn keine Daten, die an andere ECUs 1a bis 1d zu übertragen sind, vorhanden sind.
  • Gemäß dem vorhandenen CAN-Protokoll führt jede Kommunikationsvorrichtung, die in dem Kommunikationssystem enthalten ist, das Schreiben (Verarbeitung zum Ändern von rezessiv in dominant) für den ACK-Schlitz, der in der Nachricht enthalten ist, die auf dem Bus ausgegeben wird, durch, so dass die Kommunikationsvorrichtung der Nachrichtenübertragungsquelle den Erfolg/Fehler des Nachrichtenempfangs bestimmen kann. Die vorliegende Erfindung gibt eine Antwort auf den Nachrichtenempfang wie oben beschrieben in den Protokollsteuerschichten jeder der ECUs 1a bis 1d aus, so dass in dem Kommunikationssystem Fehler wie bei dem vorhandenen CAN-Protokoll erfasst werden können. Jede Anwendung 101 der Anwendungsschicht kann die Verarbeitung hinsichtlich der Kommunikationen mit demselben Verfahren unabhängig von dem vorhandenen CAN-Protokoll oder dem Kommunikationsprotokoll der vorliegenden Erfindung durchführen, und ein Entwickler der Anwendung 101 kann die Entwicklung unabhängig von dem vorhandenen CAN-Protokoll oder dem Kommunikationsprotokoll der vorliegenden Erfindung durchführen.
  • <Bitabtastung>
  • Im Folgenden wird ein Betrieb der Bit-Abtasteinrichtung 106, die in der Protokollsteuerschicht der ECU 1 enthalten ist, beschrieben. In dem Kommunikationssystem der vorliegenden Erfindung wird das Signal auf dem Bus 5 als zweiwertiges Signal gehandhabt, das als logischer Wert von dominant oder rezessiv wie bei dem vorhandenen CAN-Protokoll repräsentiert wird. Die Bit-Abtasteinrichtung 106 stellt die zweiwertigen Daten (d. h. die Nachricht), die durch periodisches Abtasten des Signals auf dem Bus 5 erhalten werden, für die Nachrichtenerzeugungseinrichtung 104 und die Schlitzerzeugungseinrichtung 105 bereit und stellt die zweiwertigen Daten der Protokollsteuereinrichtung 102 über diese Einrichtungen bereit.
  • Wenn die ECUs 1, die mit dem gemeinsamen Bus verbunden sind, die Nachrichten empfangen, müssen sämtliche ECUs die Empfangsverarbeitung synchron zueinander durchführen. Die Bit-Abtasteinrichtung 106 führt die Verarbeitung zum Synchronisieren anderer ECUs 1 entsprechend der Änderung des Signals auf dem Bus 5 durch. Das Synchronisationsverfahren mittels der Bit-Abtasteinrichtung 106 weist zwei Arten von Synchronisationen, d. h. eine harte Synchronisation und eine Resynchronisation, auf.
  • Bei der harten Synchronisation bestimmt die Bit-Abtasteinrichtung 106, wenn das Signal auf dem Bus 5 während einer vorbestimmten Zeitdauer oder länger rezessiv ist, dass eine Nachricht nicht übertragen und empfangen wird, und dann wird die Synchronisation für den Zeitpunkt (den Zeitpunkt von SOF der Nachricht), bei dem das Signal auf dem Bus 5 sich von rezessiv nach dominant ändert, durchgeführt. Die Bit-Abtasteinrichtung 106 führt das Abtasten des Signalwerts auf dem Bus 5 unter Verwendung der Flanke der Änderung des Signals des SOF als Synchronisationspunkt durch. Die harte Synchronisation mittels der Bit-Abtasteinrichtung 106 wird durchgeführt, als ob sie gemäß dem vorhandenen CAN-Protokoll durchgeführt wird.
  • Bei der Resynchronisation führt die Bit-Abtasteinrichtung 106 eine Synchronisationskorrektur entsprechend der Änderung in anderen Bits als dem Bit, das die harte Synchronisation durchführt, durch. Die Bit-Abtasteinrichtung 106 vergleicht eine Position der Änderung in dem Signal, das von der Bit-Abtasteinrichtung 106 betrachtet wird, mit der Position der Änderung in dem Signal, das tatsächlich auf dem Bus 5 erfasst wird, um Fehler zu berechnen, und korrigiert den Zeitpunkt der Abtastung, um diese Fehler zu entfernen. Gemäß dem vorhandenen CAN-Protokoll wird die Resynchronisation sowohl bei der Übertragung als auch bei dem Empfang der Nachricht durchgeführt, aber gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung wird der Signalpegel des Busses 5 zu dem Zeitpunkt der Übertragung der Nachricht nicht erfasst, so dass die Resynchronisationsverarbeitung nur zu dem Zeitpunkt des Empfangs der Nachricht durchgeführt wird.
  • <Schlitzverwaltung>
  • Im Folgenden wird ein Betrieb der Schlitzverwaltungseinrichtung 105, die in der Protokollsteuerschicht der ECU 1 enthalten ist, beschrieben. Die Schlitzverwaltungseinrichtung 105 der ECU 1 verwaltet die Schlitze, die jeder ECU 1 im Voraus zugewiesen werden, so dass die ECUs 1 wie oben beschrieben die Nachrichten zyklisch übertragen. Gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung müssen die ECUs 1 gemeinsam wissen, welcher der Schlitze mit der Übertragung der Nachricht zu irgendeinem Zeitpunkt autorisiert ist. Die Schlitzverwaltungseinrichtung 105 führt die Schlitzverwaltungsverarbeitung zur gemeinsamen Kenntnis des Schlitzes, der die Nachrichtenübertragung betrifft, d. h. die Synchronisationsverarbeitung, durch. Wenn eine Nachrichtenübertragung für einen Schlitz überhaupt nicht durchgeführt wird, überspringt die Schlitzverwaltungseinrichtung 105 den einen Schlitz und führt die Schlitzverwaltung durch, bei der die Nachricht, die den nächsten Schlitz betrifft, übertragen und empfangen wird.
  • Gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung führt jede ECU 1 die Empfangsverarbeitung der Nachrichten, die den einen Schlitz betreffen, nicht durch und führt die Verarbeitung des nächsten Schlitzes durch, wenn sie erfasst, dass keine Nachricht in einem Schlitz übertragen wird, so dass die Übertragungs- und Empfangsverarbeitung der Nachrichten, die die ECU 1 betreffen, die die Nachrichten aufgrund eines Fehler oder Ähnlichem nicht überträgt, weggelassen wird und nur die ECUs 1, die die Nachrichten übertragen können, miteinander kommunizieren.
  • Daher wird sogar dann, wenn eine ECU 1 mit einer Fehlfunktion, die keine Nachrichten übertragen kann, in dem Kommunikationssystem enthalten ist, die Verarbeitung des Schlitzes, der diese ECU 1 betrifft, weggelassen, so dass andere ECUs 1 in dem Kommunikationssystem Nachrichten zu- und voneinander übertragen und empfangen können. Sogar wenn reservierte Schlitze vorgesehen sind, um optional eine ECU 1 zu dem Kommunikationssystem hinzuzufügen, und keine optionale ECU hinzugefügt wird, kann die Verarbeitung, die die reservierten Schlitze betrifft, weggelassen werden.
  • Um die obigen Verarbeitungen durchzuführen, werden in der Schlitzverwaltungseinrichtung 105 jeder ECU 1 für eine Schlitzzeit, zu der die Nachricht übertragen werden kann, die Aktionspunktversatzzeit, die Leerschlitzzeit und die maximale Übertragungsschlitzzeit im Voraus eingestellt. Die Schlitzverwaltungseinrichtung 105 jeder ECU 1 bestimmt auf der Grundlage dieser vorbestimmten Zeiten, dass die Nachricht, die den Schlitz betrifft, der einer jeweiligen anderen ECU 1 zugewiesen ist, nicht übertragen wird. Die Schlitzverwaltungseinrichtung 105 jeder ECU 1 führt die Verarbeitung zum Weglassen der Empfangsverarbeitung der Nachrichten, die den Schlitz betreffen, dessen Übertragung nicht durchgeführt wird, durch. 7 ist eine schematische Ansicht zum Beschreiben der Aktionspunktversatzzeit, der Leerschlitzzeit und der maximalen Übertragungsschlitzzeit.
  • Jede ECU 1 wartet, bis die vorbestimmte Aktionsversatzzeit verstrichen ist, und startet die Nachrichtenübertragung, wenn die Zeit einen Startpunkt des Schlitzes, der ihr zugewiesen ist, erreicht. Der Startpunkt der Nachrichtenübertragung, die den Schlitz betrifft, wird als der Aktionspunkt bezeichnet, und die Zeit von dem Startpunkt des Schlitzes zu dem Aktionspunkt ist die Aktionspunktversatzzeit.
  • Wenn die Zeit den Startpunkt des Schlitzes, der einer der ECUs 1 zugewiesen ist, erreicht und keine Nachricht, die diesen Schlitz betrifft, übertragen wird, während die Leerschlitzzeit verstreicht, nimmt jede ECU 1 an, dass die ECU 1, der dieser Schlitz zugewiesen ist, die Nachricht aus irgendeinem Grund nicht überträgt, und führt die Kommunikationsverarbeitung, die den nächsten Schlitz betrifft, durch.
  • Außerdem überträgt jede ECU 1 die Nachricht zwischen dem Startpunkt des Schlitzes, der ihr zugewiesen ist, und dem Zeitpunkt, zu dem die maximale Übertragungsschlitzzeit verstrichen ist. Die Nachricht, die von jeder ECU 1 übertragen wird, kann eine variable Länge aufweisen, aber jede ECU 1 kann eine Nachricht, die die maximale Übertragungsschlitzzeit überschreitet, nicht übertragen. Daher wird sogar dann, wenn die ECU 1 kontinuierlich eine abnorme Nachricht aufgrund eines Fehlers und Ähnlichem überträgt, die Nachrichtenübertragung gestoppt, nachdem die maximale Übertragungsschlitzzeit verstrichen ist, und die ECU 1 führt die Kommunikationsverarbeitung, die den nächsten Schlitz betrifft, durch.
  • Die obige vorbestimmte Zeit wird im Voraus während der Entwurfsphase des Kommunikationssystems derart eingestellt, dass die folgenden Bedingungen erfüllt sind. Leerschlitzzeit > Aktionspunktversatzzeit + Rahmenerfassungsbestätigungszeit + RTT ± ⌷ Maximale Übertragungsschlitzzeit > maximale Übertragungszeit von 1 Rahmen + Aktionspunktversatzzeit ± ⌷
  • Bei den obigen Bedingungen ist die Umlaufzeit (RTT) die Zeit, die die Nachricht benötigt, um zwischen zwei ECUs hin- und herzulaufen. Außerdem ist die Rahmenerfassungsbestätigungszeit, nachdem die Nachricht, die von einer ECU 1 übertragen wird, andere ECUs 1 erreicht, die Zeit, die andere ECUs 1 benötigen, um den Nachrichtenempfang zu erkennen. Die Rahmenerfassungsbestätigungszeit enthält die innere Verzögerungszeit des Kommunikationsteils 16 der ECU 1 und die Zeit, die benötigt wird, um die Änderung in dem Signal zu erfassen. Außerdem ist ⌷ ein Spielraum, der die Ansammlung der Taktfehler unter den ECUs 1 ermöglicht.
  • Die 8 und 9 sind schematische Ansichten zum Beschreiben eines Basisbetriebs der Schlitzverwaltung mittels der Schlitzverwaltungseinrichtung 105. 8 stellt ein Zeitdiagramm von Signalen dar, die von der Schlitzverwaltungseinrichtung verwendet werden, und 9 stellt die Definition jedes Signals in einer Tabelle dar. Jede ECU 1 enthält einen Oszillator, wobei der interne Betriebstakt, der von dem Oszillator ausgegeben wird, Sample_clock ist (8 stellt nur die ansteigende Flanke (kann auch die abfallende sein) des Betriebstakts dar) und jedes Element (jede Einrichtung) innerhalb der ECU 1 die Verarbeitung auf der Grundlage dieses Betriebstakts durchführt. Die ECUs 1, die mit dem gemeinsamen Bus 5 verbunden sind, werden mit einem Betriebstakt von im Wesentlichen derselben Frequenz betrieben. Außerdem ist das Signal, das den Abtastpunkt der empfangenen Nachricht mittels der Bit-Abtasteinrichtung 106 repräsentiert, Sample_point.
  • Die Schlitzverwaltungseinrichtung 105 weist zwei Zähler, d. h. einen Bit-Zähler (Slot_bit_cnt) und einen Schlitz-Zähler (Slot_cnt), auf. Der Bit-Zähler ist ein Zähler, der repräsentiert, dass das n-te Bit der übertragenen oder empfangenen Nachricht verarbeitet wurde. Der Bit-Zähler zählt für jeden Abtastpunkt der Bit-Abtasteinrichtung 106 aufwärts (das heißt, zählt durch Erfassen, dass sich der Wert von Sample_point in 1 (hoher Pegel) geändert hat, aufwärts) (siehe Pfeil (1) in der Zeichnung).
  • Der Schlitz-Zähler der Schlitzverwaltungseinrichtung 105 ist ein Zähler, der den Schlitz repräsentiert, der ein Recht aufweist, die Nachricht zu diesem Zeitpunkt zu übertragen. Der Schlitz-Zähler zählt aufwärts, wenn Slot_cnt_ena einen hohen Pegel aufweist und der Bit-Zähler einen vorbestimmten Wert überschreitet (der vorbestimmte Wert ist „2” in 8) (siehe Pfeil (2) in der Zeichnung). Außerdem initialisiert der Schlitz-Zähler den Wert, wenn Slot_cnt_ena einen hohen Pegel aufweist und die Anzahl der Schlitze, in denen eine Verarbeitung durchgeführt wird, die Anzahl der Schlitze je Zyklus überschreitet.
  • Wenn der Wert des Schlitz-Zählers geändert wird, weist das Signal Slot_cnt_point für einen Takt einen hohen Pegel auf (siehe Pfeil (3) in der Zeichnung), und jedes Element in der ECU 1 wird durch dieses Signal über die Änderung des Schlitzes informiert. Außerdem repräsentiert das Signal Slot_acpoint den Aktionspunkt in dem Schlitz. Wenn die vorbestimmte Aktionspunktversatzzeit (Slot_acpoint_bit) seit dem Start des Schlitzes verstrichen ist (in dem Beispiel der 8 beträgt die Aktionspunktversatzzeit 1 und ist der Zeitpunkt, zu dem der Wert des Bit-Zählers sich in 1 ändert), weist das Signal Slot_acpoint für einen Takt einen hohen Pegel auf (siehe Pfeil (4) in der Zeichnung).
  • Das Signal Slot_wrcnt und das Signal Slot_wrcnt_cmd sind Signale, die von außerhalb der Schlitzverwaltungseinrichtung 105 eingegeben und für beispielsweise eine Synchronisationsverarbeitung, die später beschrieben wird, verwendet werden. Das Signal Slot_wrcnt wird verwendet, um es der Protokollsteuereinrichtung 102 zu ermöglichen, die Schlitznummer und Ähnliches, die in der normal empfangenen Nachricht enthalten ist, für die Schlitzverwaltungseinrichtung 105 bereitzustellen. Außerdem wird das Signal Slot_wrcnt_cmd verwendet, um den Zeitpunkt anzugeben, zu dem die Schlitzverwaltungseinrichtung 105 die Schlitznummer, die mit dem Signal Slot_wrnct bezeichnet wird, schreibt (empfängt).
  • Die Schlitzverwaltungseinrichtung 105 zählt aufwärts oder initialisiert den Wert des Schlitz-Zählers entsprechend den oben genannten Signalen und dem Wert des Bit-Zählers, um die Schlitznummer, die die Nachricht zu diesem Zeitpunkt übertragen kann, zu verwalten. Außerdem müssen in den ECUs 1, die mit dem gemeinsamen Bus 5 verbunden sind, die Schlitzverwaltungseinrichtungen 105 die Schlitznummer teilen, und die Schlitzverwaltungseinrichtungen 105 führen die Synchronisationsverarbeitung des jeweiligen Schlitz-Zählers zu dem Zeitpunkt des Nachrichtenempfangs durch.
  • 10 zeigt ein Zeitdiagramm zum Beschreiben der Synchronisationsverarbeitung des Schlitz-Zählers mittels der Schlitzverwaltungseinrichtung 105. Die Signale, die in 10 gezeigt sind, sind dieselben wie diejenigen, die in den 8 und 9 gezeigt sind, und das Signal Slot_cnt_ena_q ist ein Signal, das gegenüber dem Signal Slot_cnt_ena um einen Takt verzögert ist. Zu dem Zeitpunkt, der durch eine gestrichelte Linie (1) in der Zeichnung gezeigt ist, erreicht die Bitzahl einen vorbestimmten Wert, so dass die Schlitzverwaltungseinrichtung 105 den Schlitz-Zähler von dem Schlitz 1 auf den Schlitz 2 erhöht. Anschließend startet der Nachrichtenempfang von anderen ECUs 1, und die Schlitzverwaltungseinrichtung 105 ändert zu diesem Zeitpunkt das Signal Slot_cnt_ena von einem hohen Pegel in einen niedrigen Pegel, und der Wert des Schlitz-Zählers wird fixiert (siehe Pfeil (2) in der Zeichnung).
  • Wenn die Empfangsverarbeitung der Nachricht normal endet, wird von der Protokollsteuereinrichtung 102 hinsichtlich des Empfangsendes mittels des Signals Slot_wrcnt_cmd informiert. In diesem Fall wird die Schlitznummer, die in der normal empfangenen Nachricht enthalten ist, von der Protokollsteuereinrichtung 102 als das Signal Slot_wrcnt für die Schlitzverwaltungseinrichtung 105 bereitgestellt. Die Schlitzverwaltungseinrichtung 105 importiert bzw. empfängt die bereitgestellte Schlitznummer entsprechend dem Zeitpunkt zum Informieren hinsichtlich des Empfangsendes mittels des Signals Slot_wrcnt_cmd, und stellt die empfangene Schlitznummer in dem Schlitz-Zähler ein (siehe Pfeil (3) in der Zeichnung). Daher wird die Synchronisation des Schlitz-Zählers durchgeführt.
  • Nachdem die Schlitzverwaltungseinrichtung 105 mittels des Signals Slot_wrcnt_cmd informiert wurde, ändert die Schlitzverwaltungseinrichtung 105 das Signal Slot_cnt_ena in einen hohen Pegel und erlaubt die Erneuerung des Schlitz-Zählers. Durch Ändern des Signals Slot_cnt_ena_q von dem niedrigen Pegel in den hohen Pegel wird der Wert des Bit-Zählers initialisiert (siehe Pfeil (4) in der Zeichnung), und der Wert des Schlitz-Zählers wird zu dem nächsten Abtastzeitpunkt inkrementiert (siehe Pfeil (5) in der Zeichnung).
  • Außerdem führt die Schlitzverwaltungseinrichtung 105 jeder ECU 1 die obige Synchronisationsverarbeitung jedes Mal durch, wenn der Nachrichtenempfang durchgeführt wird. In der Schlitzverwaltungseinrichtung 105 der ECU 1, die die Nachricht überträgt, wird die Synchronisationsverarbeitung jedoch nicht durchgeführt.
  • <Protokollsteuerung>
  • Im Folgenden wird ein Betrieb der Protokollsteuereinrichtung 102, die in der Protokollsteuerschicht der ECU 1 enthalten ist, beschrieben. Wie es oben beschrieben wurde, synchronisieren die ECUs 1, die mit dem gemeinsamen Bus 5 verbunden sind, gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung die Schlitznummer und die Schlitzzeit, und jede ECU 1 überträgt die Nachricht, wenn sie die Übertragungsreihenfolge bzw. Übertragungsordnung der Schlitznummer, die ihr zugewiesen ist, erreicht, wodurch eine Kollision der Nachrichten vermieden wird. Die Protokollsteuereinrichtung 102 führt die Nachrichtenübertragung und die Empfangsverarbeitung entsprechend den Schlitznummern, die Verarbeitung der Einstellung bzw. des Setzens von ACK oder NAK in dem ACK-Feld in der zu übertragenden Nachricht, die Verarbeitung eines Wiederübertragens der Nachricht entsprechend den Werten des ACK-Felds in der empfangenen Nachricht und Ähnliches durch, wie es in den 3A, 4B, 5, 6 und Ähnlichem gezeigt ist. Außerdem führt die Protokollsteuereinrichtung 102 die Verarbeitung (Startfolge) zum Starten einer Kommunikation durch Durchführen der Synchronisation der ECUs 1 zu dem Zeitpunkt, zu dem das Kommunikationssystem aufwacht, die Resynchronisationsverarbeitung (Resynchronisationsfolge), die in dem Fall durchgeführt wird, in dem eine Abweichung der Synchronisation zwischen den ECUs 1 aufgrund einer Kommunikationsstörung und Ähnlichem auftritt, die Verarbeitung (Schlaffolge), die in dem Fall durchgeführt wird, in dem der Betrieb des Kommunikationssystems stoppt, und Ähnliches durch.
  • Nachdem die jeweilige ECU 1 in dem vorliegenden Kommunikationssystem mittels Energie-Reset und Ähnlichem aufgewacht ist, führt die Protokollsteuereinrichtung 102 die Verarbeitung zum Synchronisieren der Schlitze mit anderen ECUs 1, die den Bus 5 teilen, als Startfolge durch. In der Startfolge bestimmt die ECU 1, ob die Kommunikation durch andere ECUs 1 gestartet wurde, durch Überprüfen, ob ein Signal auf dem Bus 5 vorhanden ist. Wenn bestimmt wird, dass die Kommunikation nicht gestartet wurde, startet die Protokollsteuereinrichtung 102 der ECU 1 ihre eigene Nachrichtenübertragung, um das Aufwachen der anderen ECUs 1 voranzutreiben. Wenn bestimmt wird, dass Kommunikationen gestartet wurden, empfängt die Protokollsteuereinrichtung 102 Nachrichten von anderen ECUs 1 und führt die nächste Kommunikationsverarbeitung synchron zu der Schlitznummer, die in der empfangenen Nachricht enthalten ist, durch.
  • Wenn jedoch die ECUs 1 bestimmen, dass keine Kommunikation gestartet wurde, können die Nachrichtenübertragungen der ECUs 1 miteinander kollidieren. In diesem Fall betrachten andere ECUs 1, die eine kollidierte Nachricht empfangen, diese Nachricht als eine, die in Schlitz 1 enthalten ist, um die Kommunikationsverarbeitung nach dem nächsten Schlitz durchzuführen. Die ECU 1, die eine Abnormität in der nächsten Kommunikationsverarbeitung erfasst, korrigiert die Verarbeitung, um das Auftreten einer Nachrichtenkollision zu vermeiden.
  • Außerdem führt in dem Kommunikationssystem, nachdem die Nachrichtenübertragung und der Nachrichtenempfang normal gestartet wurden, jede ECU 1 die Synchronisation von Schlitzen zu dem Zeitpunkt des Nachrichtenempfangs wie oben beschrieben durch, so dass die Synchronisation der Nachrichtenübertragung und des Nachrichtenempfangs der ECUs 1 in dem Kommunikationssystem aufrechterhalten wird. Es können jedoch Abweichungen in den Schlitznummern aufgrund einer Kommunikationsstörung und Ähnlichem auftreten. Jede ECU 1 des vorliegenden Kommunikationssystems setzt die Kommunikationsverarbeitung sogar dann fort, wenn eine Abweichung auftritt. Jede ECU 1, die eine Abnormität in der nächsten Kommunikationsverarbeitung erfasst, führt eine Resynchronisationsverarbeitung durch. Die Protokollsteuereinrichtung 102 einer jeweiligen ECU 1 bestimmt, dass eine Kommunikationsabnormität auftritt, wenn keine normal empfangene Nachricht von dem Schlitz, der von der Protokollsteuereinrichtung 102 übertragen wird, zu dem Schlitz nach zwei Zyklen vorhanden ist, und führt die Resynchronisationsfolge durch.
  • Wenn der Betrieb des Kommunikationssystems stoppt und in den Niedrigenergieverbrauchszustand (den Schlafmodus) übergeht, ist es notwendig, dass jede ECU 1 in dem Kommunikationssystem eine Übereinkunft mit den anderen ECUs 1 hinsichtlich des Übergangs in den Schlafmodus trifft und dann jede ECU 1 in den Schlafmodus übergeht. Die Bestimmung, ob jede ECU 1 in den Schlafmodus übergeht, wird von der Anwendung 101 der Anwendungsschicht durchgeführt. Wenn der Protokollsteuerschicht die Schlafanforderung der Protokollsteuereinrichtung 102 von der Anwendung 101 bereitgestellt wird, führt die Protokollsteuereinrichtung 102 die Verarbeitung zum Erhalten der Übereinkunft hinsichtlich des Übergangs in den Schlafmodus durch. Im Detail überträgt die Protokollsteuereinrichtung 102, für die die Schlafanforderung bereitgestellt wird, den ACK-Rahmen, in dem rezessiv in dem Schlafbit gesetzt ist, um andere ECUs 1 hinsichtlich des Übergangs in den Schlafmodus zu informieren. Anschließend bestimmt die Protokollsteuereinrichtung 102, dass die Übereinkunft hinsichtlich des Übergangs in den Schlafmodus erzielt wurde, und geht in den Schlafmodus über, wenn für sämtliche Schlitze, die andere ECUs 1 betreffen, der ACK-Rahmen, in dem das Schlafbit als rezessiv gesetzt ist, während eines vorbestimmten Zyklus empfangen wird. Das heißt, in dem vorliegenden Kommunikationssystem gehen sämtliche ECUs 1 in den Schlafmodus über, wenn bestimmt wird, dass sämtliche ECUs 1 in den Schlafmodus übergehen und das Schlafbit in sämtlichen ACK-Rahmen, die von jeder ECU 1 übertragen werden, auf rezessiv gesetzt ist. Wenn andererseits bestimmt wird, dass mindestens eine ECU 1 nicht in den Schlafmodus übergeht und die ECU 1, die nicht in den Schlafmodus übergeht, den ACK-Rahmen, in dem das Schlafbit als rezessiv gesetzt ist, nicht überträgt, gehen die ECUs 1 in dem Kommunikationssystem nicht in den Schlafmodus über. Die ECU 1, die in den Schlafmodus übergeht, verringert den Energieverbrauch beispielsweise Verringern der Abtastfrequenz der Bitabtastung durch die Bit-Abtasteinrichtung 106. Die ECU 1 wacht auf, wenn eine Nachricht, die von einer der anderen ECUs 1 übertragen wird, auf dem Bus 5 erfasst wird.
  • Die Protokollsteuereinrichtung 102 jeder ECU 1 führt die Übertragungs- und Empfangsverarbeitung der Nachrichten entsprechend den Schlitznummern, die Verarbeitung zum Einstellen von ACK oder NAK in dem ACK-Feld in der zu übertragenden Nachricht, die Verarbeitung zum Wiederübertragen der Nachricht entsprechend den Werten des ACK-Felds in der empfangenen Nachricht und Ähnliches, wie es in den 3A, 3B, 5 und 6 und Ähnlichen gezeigt ist, zusätzlich zu den Ausnahmeverarbeitungen wie beispielsweise der obigen Startfolge, der Resynchronisationsfolge, der Schlaffolge und Ähnliches durch. Die Protokollsteuereinrichtung 102 jeder ECU 1 bestimmt, dass die Nachricht, die von der Protokollsteuereinrichtung 102 übertragen wurde, normal empfangen wurde, wenn die Protokollsteuereinrichtung 102 die Nachricht, die keine Antwort NAK aufweist, von anderen ECUs 1 während eines Zyklus nach der Beendigung ihrer eigenen Nachrichtenübertragung empfängt, und die Nachricht, die die Antwort ACK enthält, von mindestens einer anderen ECU 1 empfangen wird. Wenn die Protokollsteuereinrichtung 102 bestimmt, dass die Nachricht normal empfangen wurde, überträgt sie eine neue Nachricht. Wenn andererseits die Protokollsteuerung 102 mindestens eine Nachricht, die die Antwort NAK enthält, von anderen ECUs 1 empfängt oder niemals eine Nachricht, die die Antwort ACK enthält, empfängt, bestimmt sie, dass die Nachricht, die von ihr übertragen wurde, nicht richtig empfangen wurde. Wenn die Protokollsteuereinrichtung 102 bestimmt, dass die Nachricht nicht richtig empfangen wurde, überträgt sie die Nachricht wieder. Sogar wenn die Protokollsteuerung 102 einer jeweiligen ECU 1 eine abnorme Nachricht wie beispielsweise eine, bei der sie nicht in der Lage ist, ACK/NAK von anderen ECUs 1 zu bestimmen, empfängt, bestimmt sie, dass die Nachricht, die von ihr übertragen wurde, nicht richtig empfangen wurde. Wenn die Protokollsteuereinrichtung 102 bestimmt, dass die Nachricht nicht richtig empfangen wurde, überträgt sie die Nachricht wieder.
  • 11 ist eine schematische Ansicht zum Beschreiben der Erfolgs-/Fehlerbestimmung der Nachrichtenübertragung mittels der Protokollsteuereinrichtung 102. 11 stellt den Fall dar, bei dem die ECU 1, der der Schlitz 1 zugewiesen ist, die Bestimmung des Erfolgs/Fehlers der Nachrichtenübertragung in dem Kommunikationssystem durchführt, in dem nacheinander jeweils ein Schlitz sechs ECUs 1 zugewiesen wird. 11 stellt ebenfalls das Antwortergebnis von ACK/NAK hinsichtlich des Schlitzes 1, das in dem ACK-Feld der empfangenen Nachricht enthalten ist, während einer Zeitdauer von dem Schlitz 2 bis zu dem Schlitz 6 dar.
  • Die Protokollsteuereinrichtung 102 der ECU 1, der der Schlitz 1 zugewiesen ist, überprüft den Wert von ACK 1 des ACK-Felds, das in der empfangenen Nachricht enthalten ist, jeweils während der Zeitdauer des Schlitzes 2 bis zum Schlitz 6, nachdem die Nachricht von der Protokollsteuereinrichtung 102 übertragen wurde. Die Protokollsteuereinrichtung 102 bestimmt, dass ihre eigene Nachrichtenübertragung erfolgreich war, wenn in den ACKs 1 für sämtliche Nachrichten ACK gesetzt bzw. eingestellt ist (siehe Fall 1 in 11). Wenn ACK in der Nachricht, die von mindestens einer ECU 1 empfangen wird, gesetzt ist und die Nachrichten von den anderen ECUs 1 nicht empfangen werden, bestimmt die Protokollsteuereinrichtung 102, dass ihre eigene Nachrichtenübertragung erfolgreich war (siehe Fall 2 der 11).
  • Wenn andererseits NAK in mindestens einer der empfangenen Nachrichten während der Zeitdauer von dem Schlitz 2 bis zum Schlitz 6 gesetzt ist, bestimmt die Protokollsteuereinrichtung 102, dass ihre eigene Nachrichtenübertragung fehlgeschlagen ist (siehe Fall 3 der 11), und überträgt die Nachricht wieder. Sogar wenn die Nachrichten während der Zeitdauer vom Schlitz 2 bis zum Schlitz 6 überhaupt nicht empfangen werden, bestimmt die Protokollsteuereinrichtung 102, dass ihre eigene Nachrichtenübertragung fehlgeschlagen ist (siehe Fall 4 der 11), und überträgt die Nachricht wieder. Wenn eine abnorme Nachricht, bei der es nicht möglich ist, ACK/NAK zu bestimmen, während der Zeitdauer von dem Schlitz 2 bis zum Schlitz 6 empfangen wird, bestimmt die Protokollsteuereinrichtung 102, dass ihre eigene Nachrichtenübertragung fehlgeschlagen ist (siehe Fall 5 der 11), und überträgt die Nachricht wieder.
  • Die 12 und 13 sind schematische Ansichten zum Beschreiben der Nachrichtenwiederübertragungsverarbeitung durch die Protokollsteuereinrichtung 102. Die 12 und 13 stellen in dem Kommunikationssystem, in dem ein Zyklus einer Kommunikation aus 6 Schlitzen besteht, Nachrichten entsprechend drei Zyklen dar, die über den Bus 5 in zeitlicher Folge übertragen und empfangen werden.
  • Zunächst werden in dem Beispiel, das in 12 gezeigt ist, in den Schlitzen 1 bis 6 des ersten Zyklus (Zyklus 1) und den Schlitzen 1 und 2 des zweiten Zyklus (Zyklus 2) die Nachrichten A bis H richtig übertragen und empfangen, und ACK werden in sämtlichen Bits des ACK-Felds der Nachrichten B bis I gesetzt. Wenn die Nachricht I, die in dem Schlitz 3 des Zyklus 2 übertragen wird, nicht von (sämtlichen) den ECUs 1 der Empfangsseite richtig empfangen wird, wird NAK in einem Bit gesetzt, das dem Schlitz 3 des ACK-Felds der Nachrichten J bis N, die in den Schlitzen 4 bis 6 des nächsten Zyklus 2 und den Schlitzen 1 und 2 des dritten Zyklus (Zyklus 3) übertragen werden, entspricht. Die ECU 1, der der Schlitz zugewiesen ist, überträgt die Nachricht I in dem Schlitz 3 des Zyklus 3 entsprechend NAK, das in den Nachrichten J bis N gesetzt ist, wieder.
  • In dem Beispiel der 13 werden in den Schlitzen 1 bis 6 des Zyklus 1 und den Schlitzen 1 und 2 des Zyklus 2 die Nachrichten A bis H richtig übertragen und empfangen, und ACK wird in sämtlichen Bits des ACK-Felds der Nachrichten B bis I gesetzt. Wenn die Nachricht I, die in dem Schlitz 3 des Zyklus 2 übertragen wird, von (sämtlichen) den ECUs 1 der Empfangsseite empfangen wird und eine abnorme Nachricht hinsichtlich dessen, dass es nicht möglich ist, zu bestimmen, ob jedes Bit des ACK-Felds ACK oder NAK angibt, kann jede ECU 1 den Erfolg/Fehler eines Empfangs durch Überprüfen des ACK-Felds der Nachricht I in den Schlitzen 4 bis 6 des nächsten Zyklus 2 und den Schlitzen 1 bis 3 des Zyklus 3 nicht bestimmen, und daher werden die Nachrichten D bis I wieder übertragen.
  • Wie es oben beschrieben wurde, ist jede ECU 1 in dem Kommunikationssystem derart aufgebaut, dass sie den Erfolg/Fehler des Nachrichtenempfangs von anderen ECUs 1 in dem ACK-Feld der Nachricht, die zu übertragen ist, setzt und die Nachricht entsprechend ACK/NAK, das in dem ACK-Feld der empfangenen Nachrichten gesetzt ist, wieder überträgt, so dass sämtliche ECUs 1 in dem Kommunikationssystem die Nachricht richtig empfangen können.
  • <Fehlersteuerung>
  • 14 ist eine Tabelle, die eine Liste von Kommunikationsfehlern zeigt, die in dem Kommunikationssystem gemäß der vorliegenden Erfindung erfasst werden. Das Kommunikationsprotokoll der vorliegenden Erfindung erfasst einen Staff-Fehler, einen CRC-Fehler, einen Form-Fehler und einen ACK-Fehler wie bei dem vorhandenen CAN-Protokoll, erfasst aber den Bit-Fehler, der bei dem vorhandenen CAN-Protokoll erfasst wird, nicht. Man beachte, dass der ACK-Fehler des Kommunikationsprotokolls der vorliegenden Erfindung sich von dem ACK-Fehler des vorhandenen CAN-Protokolls hinsichtlich des Erfassungsverfahrens und Ähnlichem unterscheidet.
  • Wie in dem vorhandenen CAN-Protokoll wird in dem Kommunikationsprotokoll der vorliegenden Erfindung, wenn von SOF bis CRC-Folge des CRC-Felds in der Nachricht übertragen wird, in dem Fall, in dem derselbe Signalpegel kontinuierlich 5 Bits andauert, die Verarbeitung zum Addieren der invertierten Daten von 1 Bit zu dem nächsten Bit durchgeführt. Diese Verarbeitung wird als Bit-Staff bezeichnet, und der Staff-Fehler ist ein Fehler, der erfasst wird, wenn derselbe Signalpegel von SOF bis CRC-Folge in der empfangenen Nachricht kontinuierlich 6 Bits andauert.
  • Der CRC-Fehler ist ein Fehler, der erfasst wird, wenn sich der Wert der CRC-Folge, die in der empfangenen Nachricht enthalten ist, von dem Wert der CRC, der von der empfangenen Nachricht berechnet wird, unterscheidet. Der Form-Fehler ist ein Fehler, der erfasst wird, wenn für ein Bit (CRC-Begrenzer und EOF), für das der Wert auf dominant oder rezessiv fixiert ist, sich der Bitwert in der empfangenen Nachricht von dem fixierten Wert, der im Voraus eingestellt wird, unterscheidet.
  • Der ACK-Fehler ist ein Fehler, der erfasst wird, wenn irgendein Bit, das in dem ACK-Feld der empfangenen Nachricht enthalten ist, auf NAK gesetzt ist. In dem vorhandenen CAN-Protokoll wird der ACK-Fehler erfasst, wenn der ACK-Schlitz von einem Bit in der Nachricht rezessiv ist. Wenn die Nachricht von mindestens einer Kommunikationsvorrichtung in dem vorhandenen Kommunikationssystem empfangen wird, wird der ACK-Schlitz als dominant gesetzt. Daher kann die Kommunikationsvorrichtung der Übertragungsseite nicht bestätigen, welche Kommunikationsvorrichtung der Empfangsseite die Nachricht normal empfängt und welche Kommunikationsvorrichtung die Nachricht nicht richtig empfängt. Andererseits kann gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung die ECU 1 der Übertragungsseite durch Überprüfen des ACK-Felds der Nachrichten, die in einem Zyklus empfangen werden, nachdem die ECU 1 die Nachricht übertragen hat, individuell bestimmen, ob andere ECUs 1 die Nachricht normal empfangen haben, da in diesem Fall das ACK-Bit in dem Schlitz, der einer jeweiligen ECU 1 zugewiesen ist, in dem ACK-Feld der Nachricht bereitgestellt wird.
  • Außerdem überträgt jede Kommunikationsvorrichtung gemäß dem vorhandenen CAN-Protokoll ein Signal an den Bus und führt dann die Verarbeitung zum Erfassen des Signalpegels des Busses aus. Wenn der Signalpegel des übertragenen Signals nicht mit dem erfassten Signalpegel übereinstimmt, wird ein Bit-Fehler erfasst. Gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung überträgt jede ECU 1 ein Signal und erfasst dann den Signalpegel des Busses 5 nicht, so dass der Bit-Fehler nicht erfasst wird.
  • Jede ECU 1 in dem Kommunikationssystem erfasst die obigen Fehler, wenn sie die Nachricht von anderen ECUs 1 empfängt. Wenn irgendein Fehler erfasst wird, setzt die ECU 1 NAK in dem Bit, das dem ACK-Feld entspricht, das in der Nachricht enthalten ist, die von der ECU 1 zu übertragen ist, innerhalb einer Zeitdauer eines Zyklus, nachdem der Fehler erfasst wurde, und überträgt die Nachricht.
  • Im Folgenden wird ein Betrieb der Fehlersteuereinrichtung 103, die in der Protokollsteuerschicht der ECU 1 enthalten ist, beschrieben. Gemäß dem vorhandenen CAN-Protokoll weist eine Kommunikationsvorrichtung, die ein Fehlfunktionsproblem und Ähnliches aufgrund von häufigen Fehlern aufweisen kann, eine Funktion zum Stoppen der Verarbeitung der Nachrichtenübertragung und des Nachrichtenempfangs auf, um eine nachteilige Beeinflussung auf das Kommunikationssystem insgesamt zu verhindern. Das Kommunikationsprotokoll der vorliegenden Erfindung weist dieselbe Funktion wie das vorhandene Kommunikationsprotokoll auf. Die Steuerverarbeitungen, die den Fehler betreffen, werden von der Fehlersteuereinrichtung 103 jeder ECU 1 durchgeführt.
  • Die Fehlersteuereinrichtung 103 enthält zwei Zähler, d. h. einen Übertragungsfehlerzähler (TEC) und einen Empfangsfehlerzähler (REC), um die Auftrittsanzahl von Fehlern zu zählen. 15 ist eine Tabelle, die Schwankungsbedingungen des Fehlerzählers zeigt. Jede ECU 1 überprüft die Werte von Bits, die ihre eigene Nachrichtenübertragung betreffen und in dem ACK-Feld der empfangenen Nachrichten enthalten sind, für einen Zyklus nach der Übertragung ihrer eigenen Nachricht. Hier addiert jede ECU 1 den Wert 8 zu dem Wert von TEC hinzu, wenn die Werte von Bits, die ihre eigene Nachrichtenübertragung betreffen, in dem ACK-Feld der Nachrichten, die von anderen ECUs 1 empfangen werden, NAK aufweisen. Demzufolge subtrahiert jede ECU 1 den Wert 1 von dem Wert des TEC (wenn jedoch TEC = 0 gilt, gibt es keine Schwankung bzw. Änderung), wenn die Werte der Bits, die ihre eigene Nachrichtenübertragung betreffen, in dem ACK-Feld der Nachrichten, die von sämtlichen anderen ECUs 1 empfangen werden, ACK aufweisen und ihre eigene Nachrichtenübertragung erfolgreich war.
  • Jede ECU 1 addiert 1 zu dem Wert des REC, wenn sie den Formfehler, den CRC-Fehler oder den Staff-Fehler in der empfangenen Nachricht erfasst. Außerdem erfasst jede ECU 1 einen beliebigen Fehler in der empfangenen Nachricht und führt die Bestimmung dahingehend durch, ob NAK als Antwort auf diese Nachricht gesetzt ist. Wenn danach die Nachricht, die von einer jeweiligen ECU 1 als NAK bestimmt wird, von anderen ECUs 1 auf der Grundlage der Nachricht, die von den anderen ECUs 1 empfangen wird, als ACK bestimmt wird, addiert jede ECU 1 den Wert 8 zu dem Wert des REC.
  • Umgekehrt empfängt jede ECU 1 eine Nachricht und überprüft dann das ACK-Feld, das in anderen Nachrichten, die zusätzlich empfangen werden, enthalten ist, in einem Zyklus, um zu überprüfen, ob die eine Nachricht von den anderen ECUs 1 normal empfangen wurde. Jede ECU 1 verringert den Wert des REC, wenn sämtliche anderen ECUs 1 die Nachricht normal empfangen haben. In diesem Fall subtrahiert jede ECU 1 den Wert 1 von dem Wert des REC, wenn 1 ≤ REC ≤ 127 gilt, und setzt den Wert des REC auf 119 bis 127, wenn REC > 127 gilt (wenn jedoch REC = 0 gilt, gibt es keine Schwankung bzw. Änderung).
  • Außerdem löscht jede ECU 1 die Werte des TEC und des REC zu null, wenn sie von einem Nachrichtenübertragungsstoppzustand (einem Bus-Aus-Zustand, der später beschrieben wird), bei dem die Nachrichtenübertragung durch Erfassen einer vorbestimmten Anzahl von Fehlern oder mehr gestoppt wird, zurückkehrt.
  • 16 ist ein Zustandsübergangsdiagramm zum Beschreiben des Betriebs der Fehlersteuereinrichtung 103. Die Fehlersteuereinrichtung 103 verwaltet den Zustand hinsichtlich der Fehlersteuerung der ECU 1 entsprechend den Werten der beiden Zähler, d. h. des TEC und des REC. Die Fehlersteuereinrichtung 103 informiert die Protokollsteuereinrichtung 102 hinsichtlich dieser Zustände, so dass die Protokollsteuereinrichtung 102 die Übertragungs- und Empfangsverarbeitungen der Nachricht, die für den Fehlerzustand geeignet sind, durchführen kann. Es gibt drei Zustände, die die Fehlersteuerung betreffen, d. h. einen Fehleraktivzustand, einen Fehlerpassivzustand und einen Bus-Aus-Zustand. Der Zustand (d. h. Anfangszustand) unmittelbar nach dem Aufwachen der ECU 1 ist ein Fehleraktivzustand. Außerdem werden die Werte des TEC und des REC auf null gelöscht, wenn die ECU 1 aufwacht.
  • Der Fehleraktivzustand ist ein normaler Betriebszustand der ECU 1 und ist ein Zustand, in dem die ECU 1 Nachrichten ohne jegliche Beschränkung übertragen und empfangen kann. In dem Fehleraktivzustand ist das Fehleraktivbit der Nachricht, die von der ECU 1 übertragen wird, auf dominant gesetzt. In dem Fehleraktivzustand geht die Fehlersteuereinrichtung 103 von dem Fehleraktivzustand in den Fehlerpassivzustand über, wenn der Wert des TEC oder der Wert des REC den Wert 127 überschreitet.
  • Der Fehlerpassivzustand ist ein Zustand, in dem die Nachrichtenübertragung eingeschränkt wird, da der Wert des Fehlerzählers einen vorbestimmten Wert überschreitet. In dem Fehlerpassivzustand beschränkt die ECU 1 die Nachrichtenübertragung, um die Nachricht, die einen zugewiesenen Schlitz betrifft, nur einmal in zwei Zyklen zu übertragen. Daher wird eine gegenseitige Beeinflussung zwischen der Nachrichtenübertragung der ECU 1, die ein Fehlfunktionsproblem und Ähnliches aufweisen kann, und der Nachrichtenübertragung und dem Nachrichtenempfang der anderen ECUs 1 unterdrückt.
  • Außerdem wird in dem Fehlerpassivzustand das Fehleraktivbit der Nachricht, die von der ECU 1 übertragen wird, auf rezessiv gesetzt. Die ECU 1, die die Nachricht empfängt, in der das Fehleraktivbit auf rezessiv gesetzt ist, missachtet die Antwort von NAK (das heißt, berücksichtigt nicht, dass der Nachrichtenempfang fehlgeschlagen ist) sogar dann, wenn NAK in dem ACK-Feld dieser Nachricht gesetzt ist, und führt die Verarbeitung durch. Sogar in dem Fall, in dem die empfangene Nachricht die Nachricht ist, in der das Fehleraktivflag als rezessiv gesetzt ist, führt, wenn die empfangene Nachricht eine Nachricht ist, in der ACK in dem ACK-Feld gesetzt ist, die ECU 1, die die Nachricht empfängt, dieselbe Verarbeitung wie in dem Fall durch, in dem die Nachricht, in der das allgemeine ACK gesetzt ist, empfangen wird. Das heißt, gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung wird die Nachricht als Ersatz des Fehlerrahmens (ein passives Fehlerflag) des vorhandenen CAN-Protokolls durch Einstellen bzw. Setzen des Fehleraktivbits der Nachricht auf rezessiv und Setzen des ACK-Felds auf NAK verwendet.
  • In dem Fehlerpassivzustand geht die Fehlersteuereinrichtung 103 von dem Fehlerpassivzustand in den Fehleraktivzustand über, wenn die Werte des TEC und des REC gleich oder kleiner als 127 sind. Außerdem geht die Fehlersteuereinrichtung von dem Fehlerpassivzustand in den Bus-Aus-Zustand über, wenn der Wert des TEC den Wert 255 überschreitet.
  • Es wird angenommen, dass die ECU 1 eine abnormen Zustand wie beispielsweise einen Systemfehler erreicht, wenn der Wert des Fehlerzählers sich weiter erhöht und einen vorbestimmten Wert überschreitet, und die ECU 1 wird daran gehindert, die Nachricht zu übertragen. Der Bus-Aus-Zustand ist der Zustand, in dem die Nachrichtenübertragung auf diese Weise verhindert wird. Daher kann die ECU 1 in dem Bus-Aus-Zustand die Nachrichten nicht übertragen und empfangen, bis die vorbestimmte Bedingung, bei der Bus-Aus-Zustand freigegeben wird, erfüllt ist. In der ECU 1 des Bus-Aus-Zustands geht die Fehlersteuereinrichtung 103 von dem Bus-Aus-Zustand in den Fehleraktivzustand über und löscht die Werte des TEC und des REC, wenn der Protokollsteuereinrichtung 102 die Anforderung zum Bus-Aus-Löschen von der Anwendung 101 zugeführt wird (wenn die Bus-Aus-Löschbedingung erfüllt ist).
  • Jede ECU 1 der vorliegenden Erfindung führt die obige Fehlersteuerverarbeitung durch, um eine zu dem vorhandenen CAN-Protokoll äquivalente Fehlersteuerung zu erzielen.
  • <Details der Protokollsteuerung>
  • Im Folgenden werden die Details der Steuerverarbeitung mittels des Kommunikationsprotokolls der vorliegenden Erfindung mit Bezug auf ein Zustandsübergangsdiagramm beschrieben. 17 ist ein Zustandsübergangsdiagramm zum Beschreiben eines Betriebs hinsichtlich der Kommunikationssteuerverarbeitung einer ECU 1. In der folgenden Beschreibung repräsentiert „X” den Wert des Zählers, der beim Starten der Kommunikationsverarbeitung verwendet wird, und der Wert des Zählers X wird entsprechend der Erneuerung des Schlitz-Zählers verringert. Wenn der Wert des Zählers X gleich null wird, überträgt die ECU 1 die Nachrichten wieder. Der Zähler X entspricht der Zeitmesseinrichtung zum Messen der Wartezeit bis zur Nachrichtenübertragung. Außerdem repräsentiert „N” die Anzahl der Schlitze eines Zyklus, und „i” repräsentiert die minimale Nummer unter den Schlitznummern, die jeweils den ECUs 1 zugewiesen sind.
  • Gemäß dem Kommunikationsprotokoll der vorliegenden Erfindung geht jede ECU 1 in acht Betriebszustände über, d. h. einen Anfangszustand, einen Anfangsabnormzustand, einen synchronen Bereit-Zustand, einen synchronen Wartezustand, einen synchronen Zustand, einen Schlaf-Bereit-Zustand, einen Bus-Schlafzustand und einen Bus-Aus-Zustand, um die Kommunikationssteuerverarbeitung durchzuführen. Der Anfangszustand ist ein Zustand, bevor die ECU 1 eine Kommunikation startet. Die ECU 1 befindet sich in dem Anfangszustand nach einem Energie-Reset bzw. Rücksetzen der Vorrichtung, nachdem das Rücksetzsignal in diese eingegeben wurde. In dem Anfangszustand erlangt die ECU 1 die für die Kommunikation benötigten Informationen (die Anzahl der Schlitze, die Schlitznummer und Ähnliches) durch die Eingabe von einer externen Vorrichtung oder durch Lesen der zuvor gespeicherten Daten und beendet die Anfangseinstellung. Nach Beendigung der Anfangseinstellung geht die ECU 1 in den synchronen Bereit-Zustand über, um die Kommunikation mit anderen ECUs 1 zu synchronisieren. Die ECU 1 geht jedoch von dem Anfangszustand in den Anfangsabnormzustand über, wenn eine Abnormität in dem Anfangszustand aufgetreten ist, die Anfangseinstellung fehlschlägt oder Ähnliches, und wartet in dem Anfangsabnormzustand.
  • 18 ist ein Flussdiagramm, das die Verarbeitungsprozedur der ECU 1 in dem Anfangszustand darstellt. In den Flussdiagrammen, die in den 18 bis 26 gezeigt sind, sind die Ausnahmeverarbeitungen wie beispielsweise die Verarbeitung zum Übergehen in den Anfangszustand, wenn das Rücksetzsignal eingegeben wird, und die Verarbeitung zum Übergehen in den Bus-Aus-Zustand, wenn die Bus-Aus-Bedingung erfüllt ist, nicht gezeigt. Die Verarbeitungen, die in den Flussdiagrammen der 18 bis 26 dargestellt sind, sind Verarbeitungen, die von der Protokollsteuereinrichtung 102 der Protokollsteuerschicht der ECU 1 durchgeführt werden.
  • Die ECU 1, die sich in dem Anfangszustand befindet, erlangt zunächst die Informationen wie beispielsweise die Anzahl der Schlitze, die Schlitznummer und Ähnliches, um die Anfangseinstellung durchzuführen (Schritt S1). Anschließend bestimmt die ECU 1, ob eine Abnormität bei der Anfangseinstellung auftritt (Schritt S2), und wenn eine Abnormität auftritt (JA in S2), bestimmt die ECU 1 den Übergang in den Anfangsabnormzustand (Schritt S3) und beendet die Verarbeitung. Wenn keine Abnormität auftritt und die Anfangseinstellung beendet ist (NEIN in S2), setzt die ECU 1 den Wert des Zählers X auf 3N (Schritt S4), startet den Betrieb des Schlitz-Zählers (Schritt S5), geht in den synchronen Bereit-Zustand über (Schritt S6) und beendet die Verarbeitung des Anfangszustands.
  • Der synchrone Bereit-Zustand ist ein Zustand, der bestimmt, ob andere ECUs 1 die Nachricht im Voraus übertragen haben. Die ECU 1 in dem synchronen Bereit-Zustand empfängt konsistent die Nachrichten während maximal zwei Zyklen. Die ECU 1 überprüft, ob eine Nachricht über den Bus 5 übertragen wird. Wenn die ECU 1 eine Nachricht, die von einer anderen ECU 1 übertragen wird, erfasst, führt sie die Empfangsverarbeitung durch, um sich mit der empfangenen Nachricht zu synchronisieren. Das heißt, wenn die ECU 1 die Nachricht normal empfängt, geht die ECU 1 in den synchronen Zustand über und führt die folgende Verarbeitung synchron zu der empfangenen Nachricht durch. Wenn die ECU 1 die Nachricht nicht normal empfängt (das heißt, wenn die ECU 1 eine abnorme Nachricht empfängt), geht die ECU 1 in den synchronen Wartezustand über und setzt den Zähler „X” zurück, um auf einen normalen Nachrichtenempfang zu warten. Wenn andere ECUs 1 keine Nachrichtenübertragung starten und die ECU 1 während zwei Zyklen keine Nachrichten auf dem Bus 5 erfasst (wenn der Zähler „X” gleich null wird), geht die ECU 1 in den synchronen Bereit-Zustand über, um ihre eigene Übertragung einer Nachricht zu starten, und überträgt den ACK-Rahmen in dem synchronen Wartezustand.
  • Die 19 und 20 sind Flussdiagramme, die die Verarbeitungsprozedur der ECU 1 in dem synchronen Bereit-Zustand darstellen, und die ECU 1 führt wiederholt die Verarbeitung der 19 und 20 in dem synchronen Bereit-Zustand durch. In dem synchronen Bereit-Zustand überprüft die ECU 1 den Wert des Schlitz-Zählers, um zu bestimmen, ob der Schlitz erneuert wurde (ob sich die Schlitznummer geändert hat) (Schritt S11). Wenn der Schlitz nicht erneuert wurde (NEIN in S11), wartet die ECU 1, bis der Schlitz erneuert wurde. Wenn der Schlitz erneuert wurde (JA in S11), subtrahiert die ECU 1 den Wert 1 von dem Wert des Zählers X (Schritt S12) und bestimmt außerdem, ob der Wert des Zählers X gleich null ist (Schritt S13). Wenn der Wert des Zählers X gleich null ist (JA in S13), das heißt, wenn der Wert des Zählers X null erreicht hat, ohne dass eine Nachricht empfangen wurde, geht die ECU 1 in den synchronen Wartezustand über (Schritt S14) und beendet die Verarbeitung des synchronen Bereit-Zustands. (Die ECU 1 geht in den synchronen Wartezustand über und überträgt dann den ACK-Rahmen.)
  • Wenn der Wert des Zählers X nicht gleich null ist (NEIN in S13), wird bestimmt, ob die ECU 1 eine normale Nachricht empfängt (Schritt S17). Wenn die ECU 1 die normale Nachricht nicht empfängt (NEIN in S17), wird außerdem bestimmt, ob die ECU 1 eine abnorme Nachricht empfängt (Schritt S20). Wenn die ECU 1 die abnorme Nachricht nicht empfängt (NEIN in S20), das heißt, wenn die ECU 1 überhaupt keine Nachrichten von anderen ECUs 1 empfängt, beendet die ECU 1 die Verarbeitung (die dargestellten Verarbeitungen werden jedoch in dem synchronen Bereit-Zustand wiederholt durchgeführt, und die Verarbeitung der ECU 1 kehrt zum Schritt S11 zurück).
  • Wenn die ECU 1 die normale Nachricht empfängt (JA in S17), setzt die ECU 1 den Wert des Zählers X auf 2N (Schritt S18), geht in den synchronen Zustand über (Schritt S19) und beendet die Verarbeitung des synchronen Bereit-Zustands. Wenn die ECU 1 die abnorme Nachricht empfängt (JA in S20), bestimmt sie außerdem, ob der Wert des Zählers X größer als (N + i – 2) ist (Schritt S21). Wenn der Wert des Zählers X größer als (N + i – 2) ist (JA in S21), setzt die ECU 1 den Wert des Zählers X auf (2N + i – 2) (Schritt S22), geht in den synchronen Wartezustand über (Schritt S23) und beendet die Verarbeitung des synchronen Bereit-Zustands. Wenn der Wert des Zählers X gleich oder kleiner als (N + i – 2) ist (NEIN in S21), setzt die ECU 1 den Wert des Zählers X auf (N + i – 2) (Schritt S24), geht in den synchronen Wartezustand über (Schritt S23) und beendet die Verarbeitung.
  • Der synchrone Wartezustand ist ein Zustand, in dem auf den Nachrichtenempfang von anderen ECUs 1 gewartet wird, und wenn die ECU 1 eine Nachricht von einer anderen ECU 1 normal empfängt, startet die ECU 1 die Verarbeitung synchron zu der empfangenen Nachricht und geht in den synchronen Zustand über. Wenn die ECU 1 die abnorme Nachricht in dem synchronen Wartezustand empfängt, wartet sie auf die Wiederübertragung der empfangenen Nachricht. Wenn die ECU 1 überhaupt keine Nachrichten von anderen ECUs 1 in dem synchronen Wartezustand empfängt (wenn der Zähler „X” gleich null wird), überträgt die ECU 1 den ACK-Rahmen. Wenn der Wert des Zählers X gleich null wird, so dass die ECU 1 in den synchronen Wartezustand übergeht, überträgt die ECU 1 in dem synchronen Bereit-Zustand zunächst den ACK-Rahmen.
  • 21 ist ein Flussdiagramm, das die Verarbeitungsprozedur der ECU 1 in dem synchronen Wartezustand darstellt. Die ECU 1, die sich in dem synchronen Wartezustand befindet, überprüft zunächst, ob der Wert des Zählers X gleich null ist (Schritt S30), und daher wird bestimmt, dass die ECU 1 in den synchronen Wartezustand aufgrund dessen übergeht, dass der Wert des Zählers X in dem synchronen Bereit-Zustand gleich null wird. Wenn der Wert des Zählers X gleich null ist (JA in S30), setzt die ECU 1 den Wert des Zählers X auf (2N + i – 2) (Schritt S34), überträgt den ACK-Rahmen (Schritt S35) und schreitet zu der Verarbeitung in Schritt S31 fort. Wenn der Wert des Zählers X nicht gleich null ist (NEIN in S30), schreitet die ECU 1 zur Verarbeitung in Schritt S31 fort.
  • In Schritt S31 überprüft die ECU 1 in dem synchronen Wartezustand den Wert des Schlitz-Zählers, um zu bestimmen, ob der Schlitz erneuert wurde (Schritt S31), und wenn der Schlitz nicht erneuert wurde (NEIN in S31), wartet die ECU 1, bis der Schlitz erneuert wurde. Wenn der Schlitz erneuert wurde (JA in S31), subtrahiert die ECU 1 den Wert 1 von dem Wert des Zählers X (Schritt S32) und bestimmt außerdem, ob der Wert des Zählers X gleich null ist (Schritt S33). Wenn der Wert des Zählers X gleich null ist (JA in S33), setzt die ECU 1 den Wert des Zählers X auf (2N + i – 2) (Schritt S34), überträgt den ACK-Rahmen (Schritt S35) und kehrt zu der Verarbeitung in Schritt S31 zurück.
  • Wenn der Wert des Zählers X nicht gleich null ist (NEIN in S33), wird bestimmt, ob die ECU 1 eine normale Nachricht empfängt (Schritt S36). Wenn die ECU 1 keine normale Nachricht empfängt (NEIN in S36), wird außerdem bestimmt, ob die ECU 1 eine abnorme Nachricht empfängt (Schritt S39). Wenn die ECU 1 keine abnorme Nachricht empfängt (NEIN in S39), kehrt die ECU 1 zu der Verarbeitung in Schritt S31 zurück.
  • Wenn die ECU 1 die normale Nachricht empfängt (JA in S36), setzt die ECU 1 den Wert des Zählers X auf 2N (Schritt S47), geht in den synchronen Zustand über (Schritt S38) und beendet die Verarbeitung des synchronen Wartezustands. Wenn die ECU 1 die abnorme Nachricht empfängt (JA in S39), setzt die ECU 1 den Wert des Zählers X auf (N + i – 2) (Schritt S40) und kehrt zu der Verarbeitung in Schritt S31 zurück.
  • Der synchrone Zustand ist ein Zustand, in dem die ECU 1 mit mindestens einer anderen ECU 1 synchronisiert ist und die ECU 1 die Nachricht (den Datenrahmen oder den ACK-Rahmen) in dem Schlitz, der ihr zugewiesen ist, überträgt. Außerdem weist der synchrone Zustand entsprechend den Werten des TEC und des REC zwei Zustände auf, d. h. den Fehleraktivzustand oder den Fehlerpassivzustand. Die Nachrichtenübertragung wird in dem Fehlerpassivzustand auf einmal in zwei Zyklen begrenzt. Die ECU 1 wird in diesem synchronen Zustand in dem normalen Betriebszustand betrieben. Wenn die ECU 1 überhaupt keine Nachrichten von sämtlichen anderen ECUs 1 während zwei Zyklen empfängt, überträgt die ECU 1 den ACK-Rahmen und geht in den synchronen Wartezustand über. Wenn die Schlafanforderung von der Anwendung 101 der Anwendungsschicht bereitgestellt wird, geht die ECU 1 in den Schlafübergangszustand über. Außerdem geht die ECU 1 entsprechend der Eingabe des Rücksetzsignals in den Anfangszustand über und geht entsprechend der Erfüllung der Bus-Aus-Bedingung in den Bus-Aus-Zustand über.
  • Die 22 und 23 sind Flussdiagramme, die die Verarbeitungsprozedur der ECU 1 in dem synchronen Zustand darstellen, und die ECU 1 führt die Verarbeitung der 22 und 23 in dem synchronen Zustand wiederholt durch. In dem synchronen Zustand bestimmt die ECU 1, ob eine Schlafanweisung bzw. -anforderung von der Anwendung 101 bereitgestellt wird (Schritt S51), und wenn die Schlafanweisung bereitgestellt wird (JA in S51), geht die ECU in den Schlaf-Bereit-Zustand über (Schritt S52) und beendet die Verarbeitung des synchronen Zustands.
  • Wenn keine Schlafanweisung von der Anwendung 101 bereitgestellt wird (NEIN in S51), bestimmt die ECU 1, ob die Zeit den Aktionspunkt des Schlitzes, der der ECU 1 zugewiesen ist, erreicht hat (Schritt S53). Wenn die Zeit den Aktionspunkt erreicht hat (JA in S53), bestimmt die ECU 1 außerdem, ob der Fehlerzustand der ECU 1 der Fehlerpassivzustand ist (Schritt S54). Wenn der Fehlerzustand der Fehlerpassivzustand ist, wird die Nachrichtenübertragung auf einmal in zwei Zyklen begrenzt. Wenn daher der Fehlerzustand der Fehlerpassivzustand ist (JA in S54), wird außerdem bestimmt, ob sich die ECU 1 selbst in einem Zyklus befindet, in dem sie die Nachricht übertragen kann (Schritt S55). Wenn bestimmt wird, dass sich die ECU 1 nicht in dem Zyklus befindet, in dem sie die Nachricht übertragen kann (NEIN in S55), beendet die ECU 1 die Verarbeitung (die dargestellte Verarbeitung wird jedoch in dem synchronen Zustand wiederholt durchgeführt, und die Verarbeitung der ECU 1 kehrt zum Schritt S51 zurück).
  • Wenn der Fehlerzustand nicht der Fehlerpassivzustand ist (NEIN in S54), das heißt, wenn der Fehlerzustand der Fehleraktivzustand ist oder wenn sich die ECU 1 in dem Fehlerpassivzustand in einem Zyklus befindet, in dem sie die Nachricht übertragen kann (JA in S55), überprüft die ECU 1, ob Daten, die an andere ECUs 1 zu übertragen sind, vorhanden sind (Schritt S56). Wenn Daten, die an andere ECUs 1 zu übertragen sind, vorhanden sind (JA in S56), erzeugt und überträgt die ECU 1 den Datenrahmen einschließlich dieser Daten (Schritt S57) und beendet die Verarbeitung. Wenn Daten, die an andere ECUs 1 zu übertragen sind, nicht vorhanden sind (NEIN in S56), erzeugt und überträgt die ECU 1 den ACK-Rahmen (Schritt S58) und beendet die Verarbeitung.
  • Wenn die Zeit den Aktionspunkt des Schlitzes, der der ECU 1 zugewiesen ist, nicht erreicht hat (NEIN in S53), überprüft die ECU 1 den Wert des Schlitz-Zählers, um zu bestimmen, ob der Schlitz erneuert wurde (Schritt S59). Wenn der Schlitz nicht erneuert wurde (NEIN in S59), kehrt die ECU 1 zu der Verarbeitung in Schritt S51 zurück und führt die Bestimmung in den Schritten S51, S53 und S59 wiederholt durch, bis die Schlafanweisung für die ECU 1 bereitgestellt wird, bis die Zeit den Aktionspunkt erreicht hat oder bis der Schlitz erneuert wurde.
  • Wenn der Schlitz erneuert wurde (JA in S59), subtrahiert die ECU 1 den Wert 1 von dem Wert des Zählers X (Schritt S60) und bestimmt außerdem, ob der Wert des Zählers X gleich null ist (Schritt S61). Wenn der Wert des Zählers X gleich null ist (JA in S61), setzt die ECU 1 den Wert des Zählers X auf (2N + i – 2) (Schritt S62), überträgt den ACK-Rahmen (Schritt S63), geht in den synchronen Wartezustand über (Schritt S64) und beendet die Verarbeitung des synchronen Zustands. Wenn der Wert des Zählers X nicht gleich null ist (NEIN in S61), wird bestimmt, ob die ECU 1 eine normale Nachricht empfängt (Schritt S65). Wenn die ECU 1 die normale Nachricht empfängt (JA in S65), setzt die ECU 1 den Wert des Zählers X auf 2N (Schritt S66) und beendet die Verarbeitung. Wenn die ECU 1 keine normale Nachricht empfängt (NEIN in S65), das heißt, wenn die ECU 1 eine abnorme Nachricht empfängt oder keine Nachricht empfängt, beendet die ECU 1 die Verarbeitung.
  • In dem Schlaf-Bereit-Zustand geht die ECU 1 in einen anderen Zustand über, wenn die Schlafanforderung von der Anwendung 101 bereitgestellt wird und die Übereinkunft über den Schlaf mit den anderen ECUs 1 erzielt wird oder wenn die Schlafanforderung von der Anwendung 101 gelöscht wird. In dem Schlaf-Bereit-Zustand kann die ECU 1 den Datenrahmen nicht übertragen und überträgt nur den ACK-Rahmen, in dem das Schlafbit auf rezessiv gesetzt ist. Wenn die ECU 1 von anderen ECUs 1 für die Dauer von M (vorbestimmte ganze Zahl) Zyklen den ACK-Rahmen empfängt, in dem das Schlafbit auf rezessiv gesetzt ist, geht die ECU 1 in den Bus-Schlafzustand über. Wenn das Löschen der Schlafanforderung von der Anwendung 101 bereitgestellt wird, geht die ECU 1 in den synchronen Zustand über.
  • 24 ist ein Flussdiagramm, das die Verarbeitungsprozedur der ECU 1 in dem Schlaf-Bereit-Zustand darstellt. Bei der dargestellten Verarbeitung führt die ECU 1 die Verarbeitung unter Verwendung eines Schlaf-Bereit-Zählers durch, aber der Wert dieses Zählers wird zu dem Zeitpunkt der Anfangseinstellung und Ähnlichem auf null initialisiert. Zunächst bestimmt die ECU 1, die sich in dem Schlaf-Bereit-Zustand befindet, ob die Schlafanforderung von der Anwendung 101 gelöscht wurde (Schritt S71). Wenn die Schlafanforderung nicht gelöscht wurde (NEIN in S71), bestimmt die ECU 1, ob ein ACK-Rahmen von anderen ECUs 1 in einem Zyklus empfangen wurde (Schritt S74). Wenn die ECU 1 keinen ACK-Rahmen in einem Zyklus empfangen hat (NEIN in S74), kehrt die ECU 1 zu der Verarbeitung in Schritt S71 zurück und führt wiederholt die Bestimmung der Schritte S71 und S74 durch, wenn die Schlafanforderung gelöscht wurde oder bis der ACK-Rahmen in einem Zyklus empfangen wird.
  • Wenn die Schlafanforderung von der Anwendung 101 gelöscht wurde (JA in S71), setzt die ECU 1 den Wert des Schlaf-Bereit-Zählers auf null (Schritt S72), geht in den synchronen Zustand über (Schritt S73) und beendet die Verarbeitung des Schlaf-Bereit-Zustands.
  • Wenn die ECU 1 den ACK-Rahmen in einem Zyklus empfängt (JA in S74), inkrementiert die ECU 1 den Wert des Schlaf-Bereit-Zählers (Schritt S75), um zu bestimmen, ob der Wert des Schlaf-Bereit-Zählers den vorbestimmten Wert M erreicht (Schritt S76). Wenn der Wert des Schlaf-Bereit-Zählers den Wert M nicht erreicht (NEIN in S76), kehrt die ECU 1 zu der Verarbeitung in Schritt 71 zurück und führt wiederholt die obigen Verarbeitungen durch. Wenn der Wert des Schlaf-Bereit-Zählers den Wert M erreicht (JA in S76), setzt die ECU 1 den Wert des Schlaf-Bereit-Zählers auf null (Schritt S77). Anschließend verhindert die ECU 1 die allgemeine Abtastung der Bit-Abtasteinrichtung 106 (Schritt S78), das heißt, die ECU 1 führt die Energiespareinstellung wie beispielsweise eine Verringerung der Frequenz der Abtastung, die von der Bit-Abtasteinrichtung 106 durchgeführt wird, durch. Nachdem die ECU 1 das allgemeine Abtasten verhindert hat, geht die ECU 1 in den Bus-Schlafzustand über (Schritt S79) und beendet die Verarbeitung des Schlaf-Bereit-Zustands.
  • Der Bus-Aus-Zustand ist ein Zustand, in den in dem Fall übergegangen wird, in dem die Bus-Aus-Bedingung, dass TEC > 255 gilt, in den anderen Zuständen erfüllt ist. Die ECU 1, die sich in dem Bus-Aus-Zustand befindet, wartet, bis die Bus-Aus-Bedingung gelöscht wird. Wenn die Bus-Aus-Bedingung gelöscht wird, geht die ECU 1 in den Anfangszustand über.
  • 25 ist ein Flussdiagramm, das die Verarbeitungsprozedur der ECU 1 in dem Bus-Aus-Zustand darstellt. Die ECU 1 geht von einem anderen Zustand in den Bus-Aus-Zustand aufgrund dessen über, dass die Bus-Aus-Bedingung von TEC > 255 erfüllt ist, und bestimmt, ob die Bus-Aus-Bedingung gelöscht ist (ob die Bus-Aus-Bedingung nicht erfüllt ist) (Schritt S81). Wenn die Bus-Aus-Bedingung nicht gelöscht ist (NEIN in S81), wartet die ECU 1, bis die Bus-Aus-Bedingung gelöscht ist. Wenn die Bus-Aus-Bedingung gelöscht ist (JA in S81), geht die ECU 1 in den Anfangszustand über (Schritt S82) und beendet die Verarbeitung des Bus-Aus-Zustands.
  • Wenn die Übereinkunft hinsichtlich des Schlafens zwischen der ECU 1 und den anderen ECUs 1 in dem Kommunikationssystem getroffen wurde, befindet sich die ECU 1 in einem Niedrigenergieverbrauchszustand, in dem die Energie beispielsweise durch Verringerung der Abtastfrequenz eingespart wird. Der Bus-Schlafzustand ist ein Zustand, in dem die ECU 1 den Bus 5 in dem Niedrigenergieverbrauchszustand überwacht. In dem Bus-Schlafzustand überträgt die ECU 1 keine Nachricht. In dem Bus-Schlafzustand führt die ECU 1, wenn sie dominant (die Aufwachanforderung) auf dem Bus 5 erfasst oder wenn die Schlafanforderung von der Anwendung 101 gelöscht wird, eine Rückkehrverarbeitung von dem Niedrigenergieverbrauchszustand wie beispielsweise ein Zurückkehren der Abtastfrequenz zu der allgemeinen Frequenz durch und geht in den Anfangszustand über.
  • 26 ist ein Flussdiagramm, das die Verarbeitungsprozedur der ECU 1 in dem Bus-Schlafzustand darstellt. Die ECU 1, die sich in dem Bus-Schlafzustand befindet, bestimmt, ob die Aufwachanforderung von der Anwendung 101 bereitgestellt wird (Schritt S91). Wenn die Aufwachanforderung nicht bereitgestellt wird (NEIN in S91), bestimmt die ECU 1 außerdem, ob das dominante Signal auf dem Bus 5 erfasst wird (Schritt S92). Wenn das dominante Signal nicht erfasst wird (NEIN in S92), kehrt die ECU 1 zur Verarbeitung in Schritt 91 zurück und wiederholt die Bestimmungsverarbeitung, bis die Aufwachanforderung bereitgestellt wird oder bis das dominante Signal erfasst wird.
  • Wenn die Aufwachanforderung von der Anwendung 101 bereitgestellt wird (JA in S91) oder wenn das dominante Signal auf dem Bus 5 erfasst wird (JA in S92), geht die ECU 1 in den Anfangszustand über (Schritt S93) und beendet die Verarbeitung des Bus-Schlafzustands.
  • <Startfolge>
  • Im Folgenden werden einige Beispiele der Startfolge, die von jeder ECU 1 in dem Kommunikationssystem gemäß der vorliegenden Erfindung durchgeführt wird, beschrieben. Jede ECU 1 in dem Kommunikationssystem gemäß der vorliegenden Erfindung wacht auf und geht von dem Anfangszustand in den synchronen Bereit-Zustand über und empfängt dann nur die Nachrichten während der Zeitdauer von drei Zyklen, um zu bestimmen, ob andere ECUs 1, die die Nachrichtenübertragung im Voraus gestartet haben, vorhanden sind. Wenn die ECU 1 eine normale Nachricht von anderen ECUs 1 während dieser Zeitdauer empfängt, wird die ECU 1 mit der Schlitznummer, die in der empfangenen Nachricht enthalten ist, synchronisiert und geht in den synchronen Zustand über, um allgemein die Nachrichten zu übertragen und zu empfangen. Wenn die ECU 1 eine abnorme Nachricht während dieser Zeitdauer empfängt, betrachtet die ECU 1 den Schlitz, der den Empfang der abnormen Nachricht betrifft, als einen ersten Schlitz (Schlitz 1) in dem Zyklus, geht in den synchronen Wartezustand über, setzt einen Wert des Zählers X, der als ein Zeitnehmer verwendet wird, und wartet dann auf die Nachrichtenwiederübertragung in dem folgenden Zyklus. Wenn die ECU 1 keine Nachricht von anderen ECUs 1 während dieser Zeitdauer empfängt, überträgt sie den ACK-Rahmen, setzt einen Wert in dem Zähler X, betrachtet den Schlitz, in dem die ECU 1 die Nachricht überträgt, als den Schlitz 1, geht in den synchronen Wartezustand über und wartet auf die Antwort von anderen ECUs 1.
  • Die 27 bis 29 sind Zeitdiagramme, die ein Verarbeitungsbeispiel der Startfolge darstellen. Das vorliegende Beispiel stellt eine Startfolge in dem Kommunikationssystem dar, bei dem ein Zyklus aus vier Schlitzen besteht und die Schlitze 1 bis 4 den ECUs 1a bis 1d jeweils nacheinander zugewiesen sind. Außerdem sind in jeder Zeichnung die übertragenen Nachrichten (ein Rechteck, in dem eine Buchstabenkette von Msg geschrieben ist), der Betriebszustand (ein Oval einer gestrichelten Linie), der Wert (SC =) des Schlitz-Zählers und der Wert (X =) des Zählers X jeweils für die ECUs 1a bis 1d dargestellt.
  • 27 stellt ein Beispiel dar, bei dem die Startfolge normal durchgeführt wird. Die ECU 1b, der der Schlitz 2 zugewiesen ist, überträgt die Nachricht A zu dem Zeitpunkt, zu dem der Zähler X in dem synchronen Wartezustand gleich null ist. Diese Nachricht A wird von den anderen ECUs 1a, 1c und 1d normal empfangen, die Schlitz-Zähler der ECUs 1a, 1c und 1d werden synchron zu der Schlitznummer (Schlitz 2), die in der Nachricht A enthalten ist, erneuert, und die ECUs 1a, 1c und 1d gehen in den synchronen Zustand über.
  • Die ECU 1c überträgt die Nachricht B in dem nächsten Schlitz (Schlitz 3) und die ECU 1b empfängt diese Nachricht B normal, erneuert den Schlitz-Zähler synchron zu der Schlitznummer (Schlitz 3), die in der Nachricht B enthalten ist, und geht von dem synchronen Wartezustand in den synchronen Zustand über. Daher können sämtliche ECUs 1a bis 1d zyklisch die folgenden Nachrichten C bis K in dem Zustand übertragen, in dem die Werte der Schlitz-Zähler miteinander synchronisiert sind.
  • 28 stellt ein Beispiel dar, bei dem die ECUs 1a und 1b gleichzeitig die Nachrichten in der Startfolge übertragen und zwei Nachrichten auf dem Bus 5 miteinander kollidieren. Wenn in den beiden ECUs 1a und 1b in dem synchronen Wartezustand die Werte der Zähler X gleich null werden und die Nachrichten A und B gleichzeitig übertragen werden, überprüfen die ECUs 1a und 1b, die die Nachrichten übertragen, die übertragenen Nachrichten nicht, und daher wissen sie nicht, dass die Nachrichten A und B miteinander kollidieren, und setzen jeden Wert der Zähler X auf (2N + i – 2) (das heißt, die ECU 1a setzt den Wert des Zählers X auf 7 und die ECU 1b setzt den Wert des Zählers X auf 8). Außerdem setzen die ECUs 1a und 1b, die die Nachrichten übertragen, die Schlitz-Zähler unter Betrachtung des Übertragungszeitpunkts der Nachrichten als den Schlitz 1, so dass die nächsten Schlitze für beide der Schlitz 2 werden.
  • Außerdem bestimmen die ECUs 1c und 1d, die jeweils die kollidierenden Nachrichten A und B in dem synchronen Bereit-Zustand empfangen, dass die empfangene Nachricht eine abnorme Nachricht ist. In diesem Fall betrachten die ECUs 1c und 1d jeweils den Zyklus, in dem die abnorme Nachricht empfangen wird, als den Zyklus 1, um den Wert des Schlitz-Zählers einzustellen. Außerdem setzen die ECUs 1c und 1d die Werte der Zähler X auf (2N + i – 2) (das heißt, die ECU 1c setzt den Wert des Zählers X auf 9 und die ECU 1d setzt den Wert des Zählers X auf 10) und gehen in den synchronen Wartezustand über.
  • Die vier ECUs 1a bis 1d setzen den Zähler X auf unterschiedliche Werte entsprechend den zugewiesenen Schlitznummern, so dass nur die ECU 1a, deren Zähler X als Erstes gleich null wird, die Nachricht C übertragen wird. Die Nachricht C wird von den anderen ECUs 1b bis 1d normal empfangen, und die ECUs 1b bis 1d synchronisieren den jeweiligen Wert der Schlitz-Zähler mit der Schlitznummer (Schlitz 1), die in der Nachricht C enthalten ist, und gehen in den synchronen Zustand über. Anschließend überträgt die ECU 1b in dem nächsten Schlitz 2 die Nachricht D, wobei die Nachricht D von den anderen ECUs 1a, 1c und 1d normal empfangen wird, und die ECU 1a, die sich in dem synchronen Wartezustand befindet, synchronisiert den Schlitz-Zähler mit der Schlitznummer (Schlitz 2), die in der Nachricht D enthalten ist, und geht in den synchronen Zustand über.
  • 29 stellt ein weiteres Beispiel dar, bei dem die ECUs 1a und 1b gleichzeitig die Nachrichten in der Startfolge übertragen und zwei Nachrichten auf dem Bus 5 miteinander kollidieren. Wie es in der oben beschriebenen 28 gezeigt ist, übertragen die ECUs 1a und 1b gleichzeitig die Nachrichten, bei denen der Wert des Zählers X auf (2N + i – 2) gesetzt wird (das heißt, die ECU 1a setzt den Wert des Zählers X auf 7 und die ECU 1b setzt den Wert des Zählers X auf 8) und der Schlitz-Zähler durch Betrachten des Übertragungszeitpunkts der Nachrichten als den Schlitz 1 eingestellt wird.
  • Wenn die ECUs 1c und 1d die kollidierenden Nachrichten A und B in dem synchronen Wartezustand empfangen, bestimmen sie, dass die empfangene Nachricht eine abnorme Nachricht ist, setzen den Wert des Schlitz-Zählers durch Betrachten des Zyklus, der die Nachrichten empfängt, als den Zyklus 1 und setzen den Wert des Zählers X auf (N + i – 2) (das heißt, die ECU 1c setzt den Wert des Zählers X auf 5 und die ECU 1c setzt den Wert des Zählers X auf 6).
  • Die ECUs 1c und 1d, die die abnorme Nachricht empfangen, setzen den Wert des Zählers X auf (2N + i – 2) oder (N + i – 2) entsprechend dem synchronen Bereit-Zustand oder dem synchronen Wartezustand. Das heißt, wenn die ECUs 1c und 1d die abnorme Nachricht in dem synchronen Wartezustand empfangen, setzen sie den Wert des Zählers X auf einen kleineren Wert als den Wert, der in dem Fall gesetzt wird, in dem sie die abnorme Nachricht in dem synchronen Bereit-Zustand empfangen. Daher wird dann der Wert des Zählers X der ECU 1c als Erstes gleich null, und die ECU 1c überträgt die Nachricht C. Die Nachricht C wird von den anderen ECUs 1a, 1b und 1d normal empfangen, und die ECUs 1a, 1b und 1d synchronisieren den jeweiligen Wert der Schlitz-Zähler mit der Schlitznummer (Schlitz 3), die in der Nachricht C enthalten ist, und gehen in den synchronen Zustand über. Danach überträgt die ECU 1d in dem nächsten Schlitz 2 die Nachricht D, wobei die Nachricht D von den anderen ECUs 1a bis 1c normal empfangen wird, und in dem synchronen Wartezustand synchronisiert die ECU 1c den Schlitz-Zähler mit der Schlitznummer (Schlitz 4), die in der Nachricht D enthalten ist, und geht in den synchronen Zustand über.
  • Wie es oben beschrieben wurde, wird sogar dann, wenn eine Kollision der Nachrichten in der Startfolge auftritt, der Zähler X in jeder der ECUs 1a bis 1d des Kommunikationssystems auf einen anderen Wert gesetzt, und die nächste Nachrichtenübertragung startet von derjenigen ECU 1a bis 1d, in der der kleinste Wert gesetzt ist, so dass sämtliche ECUs 1a bis 1d synchron zueinander starten können.
  • <Resynchronisationsfolge>
  • Im Folgenden werden einige Beispiele der Resynchronisationsfolge, die von jeder ECU 1 in dem Kommunikationssystem gemäß der vorliegenden Erfindung durchgeführt wird, beschrieben. In der Resynchronisationsfolge wird die Startfolge erneut durch die Bestimmung in jeder ECU 1 in dem Fall, in dem sich die ECUs 1 aufgrund irgendeines Kommunikationsproblems und Ähnlichem nicht miteinander synchronisieren, nachdem jede ECU 1 in dem Kommunikationssystem die Startfolge beendet hat, durchgeführt, um die synchronisierte Kommunikation zu starten. Jede ECU 1 geht in den synchronen Wartezustand über, wenn sie die Nachricht von anderen ECUs 1 von dem Schlitz, in dem sie die Nachricht überträgt, zu demselben Schlitz nach zwei Zyklen nicht normal empfangen hat, und führt die Resynchronisation durch.
  • Die 30 und 31 sind Zeitdiagramme, die ein Verarbeitungsbeispiel der Resynchronisationsfolge darstellen. Das vorliegende Beispiel stellt eine Resynchronisationsfolge in dem Kommunikationssystem ähnlich wie die 27 bis 29 dar, bei dem ein Zyklus aus vier Schlitzen besteht und die Schlitze 1 bis 4 jeweils den ECUs 1a bis 1d nacheinander zugewiesen sind. Außerdem sind in jeder Zeichnung die übertragene Nachricht (ein Rechteck, in dem eine Zeichenkette von Msg geschrieben ist), der Betriebszustand (ein Oval einer gestrichelten Linie), der Wert (SC =) des Schlitz-Zählers und der Wert (X =) des Zählers X für die ECUs 1a bis 1d jeweils dargestellt. Der Wert des Zählers X in dem Fall, in dem sich die ECUs 1a bis 1d in dem synchronen Zustand befinden, ist jedoch nicht gezeigt.
  • 30 stellt ein Beispiel eines Falls dar, bei dem die ECUs 1a und 1b die Nachrichten A und B aufgrund einer Abweichung in der Synchronisation zwischen einer ECU 1b und den anderen ECUs 1a, 1c und 1d gleichzeitig übertragen. In dem Fall, in dem die ECUs 1a und 1b die Nachrichten A und B aufgrund dessen, dass der Schlitz-Zähler der ECU 1b dem Schlitz 2 zu dem Zeitpunkt entspricht, zu dem die Schlitz-Zähler der ECUs 1a, 1c und 1d dem Schlitz 1 entsprechen, gleichzeitig übertragen, empfangen die anderen ECUs 1c und 1d eine abnorme Nachricht. In dem nächsten Schlitz entsprechen die Schlitz-Zähler der ECUs 1a, 1c und 1d dem Schlitz 2, aber der Schlitz-Zähler der ECU 1b entspricht dem Schlitz 2, so dass die ECU 1b die Nachricht nicht überträgt.
  • Anschließend überträgt die ECU 1c die Nachricht C zu dem Zeitpunkt, zu dem die Schlitz-Zähler der ECUs 1a, 1c und 1d dem Schlitz 3 entsprechen. Daher synchronisiert die ECU 1b, die die Nachricht C normal empfängt, die Schlitznummer, die in der Nachricht C enthalten ist, mit dem Schlitz-Zähler, so dass sämtliche ECUs 1a bis 1d in den synchronisierten Zustand zurückkehren können.
  • 31 stellt ein Beispiel eines Falls dar, bei dem sämtliche ECUs 1a bis 1d gleichzeitig die Nachrichten A bis D aufgrund einer Abweichung in der Synchronisationen sämtlicher ECUs 1a bis 1d übertragen. Wenn sämtliche ECUs 1a bis 1d gleichzeitig die Nachrichten A bis D übertragen, werden die nächsten Nachrichten nicht übertragen, bis sämtliche ECUs 1a bis 1d den nächsten Zyklus erreichen. Nach einem Zyklus übertragen sämtliche ECUs 1a bis 1d gleichzeitig die Nachrichten E bis H. Auf ähnliche Weise übertragen nach einem weiteren Zyklus sämtliche ECUs 1a bis 1d gleichzeitig die Nachrichten I bis L.
  • Wenn jede der ECUs 1a bis 1d die Nachrichten von den anderen ECUs 1a bis 1d während der Zeitdauer von zwei Zyklen nicht empfängt, wie es oben beschrieben wurde, setzen die ECUs 1a bis 1d die Werte des Zählers X auf (2N + i – 2) und gehen in den synchronen Wartezustand über. In diesem Fall wird der Zähler X jeder der ECUs 1a bis 1d entsprechend dem zugewiesenen Schlitz auf einen anderen Wert gesetzt, und die Nachricht wird von der ECU 1a, in der der kleinste Wert in dem Zähler X gesetzt ist, übertragen, so dass die Schlitz-Zähler sämtlicher ECUs 1a bis 1d miteinander synchronisiert werden können, wodurch die zyklische Nachrichtenübertragung wieder aufgenommen wird.
  • Das Kommunikationssystem gemäß der vorliegenden Erfindung weist eine Netzwerkkonfiguration auf, bei der die ECUs 1 mit dem gemeinsamen Bus verbunden sind. In dem Kommunikationssystem gemäß der vorliegenden Erfindung werden ein oder mehrere Schlitze (Übertragungsrecht) jeder ECU 1 im Voraus zugewiesen, und die ECUs 1 übertragen zyklisch die Nachrichten in der in Bezug auf die Schlitze vorgeschriebenen Reihenfolge. Daher besteht keine Notwendigkeit, eine Arbitrierung wie bei dem vorhandenen CAN-Protokoll durchzuführen, da die ECUs 1 die Nachrichten nicht gleichzeitig übertragen. Es ist möglich, eine hohe Kommunikationsrate zu erzielen.
  • Wenn jede ECU 1 die Nachricht, die einen Schlitz betrifft, überträgt, erzeugt und überträgt sie die Nachricht einschließlich der an die anderen ECUs 1 zu übertragenden Daten und der Informationen, die den Erfolg/Fehler des Nachrichtenempfangs, der die anderen Schlitze betrifft, repräsentieren. Daher kann die ECU 1 wirksam die Schlitze, die ihr zugewiesen sind, verwenden, um andere ECUs 1 hinsichtlich des Erfolgs/Fehlers des Nachrichtenempfangs zu informieren und die Daten, die darin enthalten sind, anderen ECUs 1 bereitzustellen.
  • Die Nachricht, die von einer ECU 1 übertragen wird, wird von sämtlichen anderen ECUs 1, die mit dem Bus 5 verbunden sind, empfangen, und die ECU 1, die die Nachricht empfängt, kann die benötigten Daten aus dem Datenfeld der Nachricht erlangen und aus dem ACK-Feld der Nachricht bestimmen, ob die Nachricht, die zuvor von ihr übertragen wurde, richtig empfangen wurde. Daher kann jede ECU 1 die Informationen des ACK-Felds, das in der Nachricht enthalten ist, die während eines Zyklus von der Übertragung einer Nachricht, die einen Schlitz betrifft, zu der nächsten Übertragung der Nachricht, die den einen Schlitz betrifft, empfangen wird, überprüfen. Wenn die Nachricht, die den einen Schlitz betrifft, von den anderen ECUs 1 nicht richtig empfangen wird, kann die ECU 1 die Nachricht in der nächsten Übertragung, die den einen Schlitz betrifft, wieder übertragen.
  • Daher tritt keine Übertragungskollision der Nachrichten auf und die ECUs 1 können wirksam die Nachrichten zyklisch übertragen, und sogar wenn die Nachrichten aufgrund irgendeines Problems nicht richtig empfangen werden, kann die Nachricht richtig wieder übertragen werden.
  • Außerdem enthält die Nachricht, die von der ECU 1 erzeugt und übertragen wird, den Erfolg/Fehler des Nachrichtenempfangs, der den Schlitz betrifft, der einem Zyklus in dem ACK-Feld entspricht. Daher überprüft jede Kommunikationsvorrichtung die ACK-Felder der Nachrichten, die jeweils während eines Zyklus empfangen werden, um sich zu informieren, ob ihre eigenen übertragenen Nachrichten von sämtlichen anderen Kommunikationsvorrichtungen, die den Bus 5 teilen, richtig empfangen wurden.
  • Wenn die Nachricht für einen Schlitz überhaupt nicht übertragen wird, lässt jede ECU 1 des Kommunikationssystems die Empfangsverarbeitung der Nachrichten, die diesen Schlitz betreffen, weg und führt die Verarbeitung, die den nächsten Schlitz betrifft, durch. Wenn die ECU 1, der dieser Schlitz zugewiesen ist, die Nachrichtenübertragung aus irgendeinem Grund stoppt, kann daher die Zeit, während der die Nachrichtenübertragung und der Nachrichtenempfang für den Zyklus nicht durchgeführt werden, maximal verringert werden, und es kann eine hohe Kommunikationsrate erzielt werden.
  • Außerdem enthält die Nachricht, die von jeder ECU 1 erzeugt und übertragen wird, die Informationen der Schlitznummer, um zu identifizieren, welcher der Schlitze die übertragene Nachricht betrifft, und jede ECU 1 synchronisiert ihre Kommunikationsverarbeitung mittels der Schlitznummer der empfangenen Nachricht. Daher können die ECUs 1 in dem Kommunikationssystem die Nachrichten synchron zu den Schlitzen richtig übertragen und empfangen.
  • Außerdem enthält jede ECU 1 die Fehlerzähler, d. h. TEC und REC, und jede ECU 1 zählt die Auftrittsanzahl von Fehlern, die die Nachrichtenübertragung und den Nachrichtenempfang betreffen. Wenn die Auftrittsanzahl von Fehlern die vorbestimmte Anzahl überschreitet, verringert die jeweilige ECU 1 die Häufigkeit der Nachrichtenübertragung auf einmal in zwei Zyklen. Daher ist es möglich, zu verhindern, dass die Nachrichtenübertragung der ECU 1, die wahrscheinlich eine Fehlfunktion aufweist, die Verarbeitung anderer ECUs nachteilig beeinflusst, und es ist möglich, die Zuverlässigkeit des Kommunikationssystems zu verbessern.
  • Außerdem empfängt jede ECU 1 in der Startfolge, die nach dem Aufwachen und Ähnlichem durchgeführt wird, konsistent die Nachricht von anderen ECUs 1 während drei Zyklen unmittelbar nach der Ansteuerung. Wenn eine jeweilige ECU 1 die Nachricht innerhalb von drei Zyklen empfängt, startet sie die Verarbeitung synchron zu dem Schlitz der empfangenen Nachricht. Wenn eine jeweilige ECU 1 die Nachricht innerhalb von drei Zyklen nicht empfängt, überträgt sie die Nachricht (den ACK-Rahmen). Daher werden die ECUs 1 in dem Kommunikationssystem nach dem Aufwachen richtig miteinander synchronisiert, um die die Kommunikationsverarbeitung zu starten.
  • Außerdem setzt jede ECU 1 in der Startfolge den Wert des Zählers X entsprechend der Schlitznummer, die diesem zugewiesen ist, nachdem die Nachricht übertragen wurde und nachdem die abnorme Nachricht empfangen wurde. Wenn der Wert des Zählers X durch Verringern null erreicht, überträgt die jeweilige ECU 1 die Nachricht. Daher können die ECUs 1 in dem Kommunikationssystem jeweils unterschiedliche Werte in den Zählern X einstellen, und die ECU 1, in der der kleinste Wert eingestellt ist, kann die nächste Nachricht alleine übertragen, und daher empfangen die anderen ECUs 1 die übertragene Nachricht, um die Synchronisation durchzuführen.
  • Hinsichtlich der Probleme (der Abweichung in der Synchronisation) nach der Beendigung der Startfolge setzt jede ECU 1, um die Synchronisation zu erzielen, wenn sie innerhalb von zwei Zyklen keine Nachricht von den anderen ECUs 1 empfängt, die Werte der Zähler X entsprechend der Schlitznummer, die ihr zugewiesen ist, und führt die Resynchronisation durch eine Verarbeitung wie der Startfolge durch. Sogar wenn die Abweichung in der Synchronisation bei den Kommunikationsvorrichtungen aufgrund von Kommunikationsproblemen und Ähnlichem auftritt und die Kommunikationsvorrichtungen die Nachrichten gleichzeitig übertragen, kann eine Resynchronisation der Kommunikationsvorrichtungen richtig durchgeführt werden.
  • Wenn das Kommunikationssystem in den Schlafmodus übergeht, überträgt und empfängt jede ECU 1 als Schlafanforderung den ACK-Rahmen, in dem das Schlafbit auf rezessiv gesetzt ist. Wenn jede ECU 1 die Schlafanforderung für sämtliche Schlitze während eines Zyklus empfängt, stoppt sie die Nachrichtenübertragung und geht in den Schlafmodus (den Bus-Schlafzustand) über. Nach der Übereinkunft über den Übergang in den Schlafmodus sämtlicher ECUs 1, die mit dem Bus 5 verbunden sind, kann jede ECU 1 in den Schlafmodus übergehen.
  • Das Kommunikationssystem gemäß der vorliegenden Erfindung weist im Wesentlichen dieselben Funktionen wie die Funktionen des vorhandenen CAN-Protokolls auf, und diese Funktionen werden in der Protokollsteuerschicht jeder ECU 1 erzielt, so dass eine Anwendung, die entsprechend dem vorhandenen CAN-Protokoll erzeugt wird, verwendet werden kann wie sie ist (oder eine Anwendung, die so modifiziert wurde, dass sie klein ist, kann verwendet werden). Außerdem besteht in dem Kommunikationssystem gemäß der vorliegenden Erfindung keine Notwendigkeit, eine Arbitrierung wie bei dem vorhandenen CAN-Protokoll durchzuführen, und es besteht keine Notwendigkeit, den Signalpegel für jedes Bit zu dem Zeitpunkt der Nachrichtenübertragung zu erfassen. Daher kann das Kommunikationsprotokoll der vorliegenden Erfindung die Hindernisse beim Erzielen einer hohen Kommunikationsrate mit dem vorhandenen CAN-Protokoll beseitigen und eine Nachrichtenübertragung und einen Nachrichtenempfang mit höherer Geschwindigkeit als mit dem vorhandene CAN-Protokoll erzielen.
  • Außerdem wird in der vorliegenden Ausführungsform die Zuweisung der Schlitze zu jeder ECU 1 statistisch durchgeführt, aber die Zuweisung der Schlitze ist nicht auf die obige Weise beschränkt. Die Zuweisung der Schlitze zu jeder ECU 1 kann dynamisch zu einem beliebigen Zeitpunkt nach dem Aufwachen des Kommunikationssystems und Ähnlichem durchgeführt werden. Außerdem können in der vorliegenden Ausführungsform mehrere Schlitze einer ECU 1 zugewiesen werden, aber die Zuweisung ist nicht auf die obige Weise beschränkt. Es kann nur ein Schlitz jeweils einer ECU 1 zugewiesen werden. Außerdem ist das Kommunikationssystem der vorliegenden Erfindung nicht auf die Montage in einem Fahrzeug beschränkt und kann für verschiedene Systeme verwendet werden.
  • (Modifiziertes Beispiel)
  • Außerdem ist die Konfiguration der Nachricht, die von der ECU 1 übertragen und empfangen wird, nicht auf die in den 4A und 4B gezeigte beschränkt und kann unterschiedliche Konfigurationen wie beispielsweise diejenige, die in dem folgenden modifizierten Beispiel dargestellt ist, aufweisen. 32 ist eine schematische Ansicht, die eine Nachrichtenkonfiguration eines Kommunikationssystems gemäß dem modifizierten Beispiel darstellt. 32 stellt nur die Konfiguration des Datenrahmens dar, und da die Konfiguration des ACK-Rahmens (die andere Konfiguration als die Konfiguration des Datenfelds in dem Datenrahmen) dieselbe ist, ist die Konfiguration des ACK-Rahmens nicht gezeigt.
  • Der Datenrahmen des modifizierten Beispiels weist eine Konfiguration auf, die durch Hinzufügen der CRC für die Schlitznummer (in 32 mit CRC abgekürzt) zwischen der Schlitznummer und dem Datenfeld des Datenrahmens, der in 4A gezeigt ist, erhalten wird. Auch wenn es nicht gezeigt ist, ist die CRC für die Schlitznummer in dem ACK-Rahmen zwischen der Schlitznummer und dem CRC-Feld des ACK-Rahmens, der in 4B gezeigt ist, hinzugefügt. Die CRC für die Schlitznummer wird verwendet, um den Fehler der Schlitznummer, die in der empfangenen Nachricht enthalten ist, zu erfassen, und wird durch Durchführen einer Operation, die das vorbestimmte Generatorpolynom verwendet, für den Wert der Schlitznummer erlangt. Die ECU 1, die die Nachrichten empfängt, vergleicht den Wert, der durch das Generatorpolynom mit der Schlitznummer, die in der empfangenen Nachricht enthalten ist, berechnet wird, mit dem Wert der CRC für die Schlitznummer der empfangenen Nachricht, wodurch der Fehler erfasst wird. Die ECU 1 bestimmt, dass ein Fehler aufgetreten ist, wenn die beiden Werte nicht übereinstimmen.
  • Die CRC für die Schlitznummer zum Erfassen eines Fehlers der Schlitznummer wird in der Nachricht, die von der ECU 1 übertragen und empfangen wird, bereitgestellt, so dass die ECU 1 außerdem überprüfen kann, ob ein Fehler in der Schlitznummer enthalten ist, wenn der Fehler auf der Grundlage des CRC-Felds erfasst wird. Sogar wenn jede ECU 1 die Nachricht, die den Fehler enthält, empfängt, kann sie die synchrone Verarbeitung der Kommunikation mittels der Schlitznummer der empfangenen Nachricht durchführen, wenn der Fehler nicht in der Schlitznummer enthalten ist. Dementsprechend können die ECUs 1 problemlos zyklisch die Nachrichten übertragen und empfangen.
  • Außerdem wird in dem obigen modifizierten Beispiel die CRC für die Schlitznummer zum Erfassen des Fehlers der Schlitznummer in der Nachricht bereitgestellt, aber der Ort, wo die CRC für die Schlitznummer bereitgestellt wird, ist nicht auf den obigen Ort begrenzt. Die Daten zum Korrigieren des Fehlers der Schlitznummer können in der Nachricht bereitgestellt werden.
  • Bezugszeichenliste
  • 1, 1a bis 1d
    ECU (Kommunikationsvorrichtung)
    5
    Bus (Kommunikationsleitung)
    11
    Steuerung
    12
    Eingangsteil
    13
    Ausgangsteil
    14
    Speicherteil
    15
    Energieversorgungsschaltung
    16
    Kommunikationsteil
    101
    Anwendung
    102
    Protokollsteuereinrichtung (Nachrichtenübertragungseinrichtung, Nachrichtenwiederübertrag ungseinrichtung, Kommunikationsstarteinrichtung, Kommunikationswiederaufnahmeeinrichtung, Kommunikationsstoppanforderungsübertragungseinrichtung Kommunikationsstoppanforderungsempfangseinrichtung, Kommunikationsstoppsteuereinrichtung)
    103
    Fehlersteuereinrichtung
    104
    Nachrichtenerzeugungseinrichtung
    105
    Schlitzverwaltungseinrichtung
    106
    Bit-Abtasteinrichtung
    107
    Bustreiber
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Nicht-Patentliteratur
    • ISO 11898-1: 2003 Straßenfahrzeuge – Steuerbereichsnetzwerk (CAN) – Teil 1: Datenverbindungsschicht und physikalische Signalisierung [0004]
    • ISO 11519-1: 1994 Straßenfahrzeuge – Serielle Datenkommunikation mit niedriger Geschwindigkeit – Teil 1: Allgemeines und Definitionen [0004]

Claims (11)

  1. Kommunikationssystem, in dem mehrere Kommunikationsvorrichtungen mit einer gemeinsamen Kommunikationsleitung verbunden sind und eine Nachricht, die von einer Kommunikationsvorrichtung aus den Kommunikationsvorrichtungen übertragen wird, von den anderen Kommunikationsvorrichtungen empfangen wird, dadurch gekennzeichnet, dass jeder Kommunikationsvorrichtung eines oder mehrere Übertragungsrechte im Voraus zugewiesen werden und die Kommunikationsvorrichtungen zyklisch Nachrichten in einer Reihenfolge, die in Bezug auf die zugewiesenen Übertragungsrechte vorgeschrieben ist, übertragen, und jede Kommunikationsvorrichtung enthält: eine Nachrichtenübertragungseinrichtung zum Erzeugen und Übertragen einer Nachricht, die mehrere Erfolgs-/Fehlerinformationen eines Empfangs, die jeweils einen Erfolg/Fehler eines Nachrichtenempfangs, der ein jeweiliges Übertragungsrecht betrifft, repräsentieren, und an eine andere Kommunikationsvorrichtung zu übertragende Daten enthält; und eine Nachrichtenwiederübertragungseinrichtung zum Wiederübertragen einer Nachricht entsprechend den Erfolgs-/Fehlerinformationen eines Empfangs, die in der Nachricht enthalten sind, die von der anderen Kommunikationsvorrichtung empfangen wird.
  2. Kommunikationssystem nach Anspruch 1, wobei die Nachrichtenübertragungseinrichtung jeder Kommunikationsvorrichtung in einer zu übertragenden Nachricht einen Erfolg/Fehler eines Empfangs einer Nachricht, die ein anderes Übertragungsrecht betrifft und während eines Zyklus von einer Nachrichtenübertragung, die ein Übertragungsrecht der Nachrichtenübertragungseinrichtung betrifft, zu der nächsten Nachrichtenübertragung, die das eine Übertragungsrecht betrifft, übertragen wird, als die Erfolgs-/Fehlerinformationen eines Empfangs hinzufügt.
  3. Kommunikationssystem nach Anspruch 1 oder 2, wobei jede Kommunikationsvorrichtung eine Nachricht, die das nächste Kommunikationsrecht betrifft, überträgt oder empfängt, wenn eine Nachricht, die ein Kommunikationsrecht betrifft, während einer vorbestimmten Zeit nicht übertragen wurde.
  4. Kommunikationssystem nach einem der Ansprüche 1 bis 3, wobei die Nachrichtenübertragungseinrichtung jeder Kommunikationsvorrichtung eine Nachricht erzeugt und überträgt, die Identifikationsinformationen zum Identifizieren des Übertragungsrechts enthält, und jede Kommunikationsvorrichtung eine Nachrichtenübertragung und einen Nachrichtenempfang auf der Grundlage der Identifikationsinformationen der empfangenen Nachricht synchronisiert.
  5. Kommunikationssystem nach Anspruch 4, wobei die Nachrichtenübertragungseinrichtung jeder Kommunikationsvorrichtung eine Nachricht erzeugt und überträgt, die Informationen zum Erfassen oder Korrigieren eines Fehlers der Identifikationsinformationen enthält.
  6. Kommunikationssystem nach einem der Ansprüche 1 bis 5, wobei jede Kommunikationsvorrichtung einen Fehlerzähler enthält, der die Auftrittsanzahl von Fehlern, die eine Nachrichtenübertragung und einen Nachrichtenempfang betreffen, zählt, und die Nachrichtenübertragungseinrichtung jeder Kommunikationsvorrichtung eine Häufigkeit einer Nachrichtenübertragung verringert, wenn die Auftrittsanzahl von Fehlern, die von dem Fehlerzähler gezählt wird, einen vorbestimmten Wert überschreitet.
  7. Kommunikationssystem nach einem der Ansprüche 1 bis 6, wobei jede Kommunikationsvorrichtung keine Nachricht während eines vorbestimmten Zyklus nach einem Aufwachen überträgt, jede Kommunikationsvorrichtung eine Kommunikationsstarteinrichtung zum Starten einer Nachrichtenübertragung und eines Nachrichtenempfangs zu und von einer anderen Kommunikationsvorrichtung durch Übertragen, wenn eine Nachricht von einer anderen Kommunikationsvorrichtung während des vorbestimmten Zyklus nach einem Aufwachen empfangen wird, der nächsten Nachricht synchron zu der empfangenen Nachricht; und Übertragen einer Nachricht, wenn keine Nachricht von einer anderen Kommunikationsvorrichtung während des vorbestimmten Zyklus nach dem Aufwachen empfangen wird, enthält.
  8. Kommunikationssystem nach Anspruch 7, wobei jede Kommunikationsvorrichtung eine Zeitmesseinrichtung zum Messen einer Wartezeit bis zu einer Nachrichtenübertragung enthält, die Kommunikationsstarteinrichtung jeder Kommunikationsvorrichtung eine Nachricht überträgt, nachdem die Wartezeit entsprechend dem zugewiesenen Übertragungsrecht von der Zeitmesseinrichtung gemessen wurde, wenn die Kommunikationsstarteinrichtung während des vorbestimmten Zyklus eine Nachricht überträgt oder die Kommunikationsvorrichtung eine abnorme Nachricht von einer anderen Kommunikationsvorrichtung empfängt, und die Kommunikationsvorrichtungen jeweils unterschiedliche Wartezeiten unter Verwendung der Zeitmesseinrichtung messen.
  9. Kommunikationssystem nach einem der Ansprüche 1 bis 8, wobei jede Kommunikationsvorrichtung enthält: eine Zeitmesseinrichtung zum Messen einer Wartezeit bis zu einer Nachrichtenübertragung; und eine Kommunikationswiederaufnahmeeinrichtung zum Wiederaufnehmen einer Nachrichtenübertragung, nachdem die Wartezeit entsprechend dem zugewiesenen Übertragungsrecht von der Zeitmesseinrichtung gemessen wurde, wenn keine Nachricht von einer anderen Kommunikationsvorrichtung während eines vorbestimmten Zyklus empfangen wurde, und die Kommunikationsvorrichtungen jeweils unterschiedliche Wartezeiten unter Verwendung der Zeitmesseinrichtung messen.
  10. Kommunikationssystem nach einem der Ansprüche 1 bis 9, wobei jede Kommunikationsvorrichtung enthält: eine Kommunikationsstoppanforderungsübertragungseinrichtung zum Übertragen einer Nachricht zum Anfordern eines Stopps einer Nachrichtenübertragung; eine Kommunikationsstoppanforderungsempfangseinrichtung zum Empfangen einer Nachricht zum Anfordern eines Stopps einer Kommunikationsverarbeitung von einer anderen Kommunikationsvorrichtung; und eine Kommunikationsstoppsteuereinrichtung zum Stoppen einer Nachrichtenübertragung, wenn die Kommunikationsstoppanforderungsempfangseinrichtung die Nachricht zum Anfordern des Stopps der Kommunikationsverarbeitung von anderen Kommunikationsvorrichtungen während eines vorbestimmten Zyklus empfängt.
  11. Kommunikationsvorrichtung zum Übertragen und Empfangen einer Nachricht zu und von einer anderen Vorrichtung über eine gemeinsame Kommunikationsleitung, dadurch gekennzeichnet, dass der Kommunikationsvorrichtung eines oder mehrere Übertragungsrechte im Voraus zugewiesen wird, und die Kommunikationsvorrichtung aufweist: eine Nachrichtenübertragungseinrichtung zum Erzeugen und Übertragen einer Nachricht, die mehrere Erfolgs-/Fehlerinformationen eines Empfangs, die jeweils einen Erfolg/Fehler eines Nachrichtenempfangs, der ein jeweiliges Übertragungsrecht einschließlich eines Übertragungsrechts, das einer anderen Kommunikationsvorrichtung zugewiesen ist, betrifft, repräsentieren, und an eine andere Vorrichtung zu übertragende Daten enthält; und eine Nachrichtenwiederübertragungseinrichtung zum Wiederübertragen einer Nachricht entsprechend den Erfolgs-/Fehlerinformationen eines Empfangs, die in der Nachricht enthalten sind, die von einer anderen Vorrichtung empfangen wurde.
DE112011102688T 2010-08-09 2011-08-09 Kommunikationssystem und Kommunikationsvorrichtung Withdrawn DE112011102688T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2010178681A JP5717240B2 (ja) 2010-08-09 2010-08-09 通信システム及び通信装置
JP2010-178681 2010-08-09
PCT/JP2011/068168 WO2012020761A1 (ja) 2010-08-09 2011-08-09 通信システム及び通信装置

Publications (1)

Publication Number Publication Date
DE112011102688T5 true DE112011102688T5 (de) 2013-05-29

Family

ID=45567723

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112011102688T Withdrawn DE112011102688T5 (de) 2010-08-09 2011-08-09 Kommunikationssystem und Kommunikationsvorrichtung

Country Status (5)

Country Link
US (1) US9209942B2 (de)
JP (1) JP5717240B2 (de)
CN (1) CN103155492B (de)
DE (1) DE112011102688T5 (de)
WO (1) WO2012020761A1 (de)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2695075B1 (de) 2011-04-06 2015-05-13 Robert Bosch GmbH Verfahren und vorrichtung zur erhöhung der datenübertragungskapazität in einem seriellen bussystem
EP2695074B1 (de) 2011-04-06 2016-07-06 Robert Bosch GmbH Verfahren und vorrichtung zur anpassung der datenübertragungssicherheit in einem seriellen bussystem
ES2549640T3 (es) 2011-04-26 2015-10-30 Robert Bosch Gmbh Método y dispositivo de transmisión en serie de datos adaptada a la capacidad de memoria
CN103782283B (zh) 2011-06-29 2017-01-18 罗伯特·博世有限公司 用于具有灵活的消息大小和可变的位长的数据传输的方法和装置
JP5626266B2 (ja) * 2012-06-05 2014-11-19 株式会社デンソー 通信システム
DE102012017386B4 (de) * 2012-09-01 2020-10-15 Volkswagen Aktiengesellschaft Verfahren zum Überwachen einer mit einem Kommunikationskanal verbundenen Vorrichtung
KR101438978B1 (ko) * 2012-12-31 2014-09-11 현대자동차주식회사 리프로그래밍 방법 및 시스템
US9419737B2 (en) * 2013-03-15 2016-08-16 Concio Holdings LLC High speed embedded protocol for distributed control systems
JP6039522B2 (ja) * 2013-09-06 2016-12-07 株式会社東芝 外部入出力装置および調停設定結果格納方法
DE102013015370A1 (de) * 2013-09-13 2015-03-19 Wabco Gmbh Verfahren zur Bereitstellung und Übertragung von Daten, insbesondere in Verbindung mit einem Fahrzeug
BR112015008318A2 (pt) 2013-09-23 2017-07-04 Farmobile Llc dispositivo de retransmissão, e, sistemas de troca de dados de agricultura e de servidor
CN104635549A (zh) * 2013-11-07 2015-05-20 北汽福田汽车股份有限公司 Can总线错误处理方法和can控制器
CN104717113B (zh) * 2013-12-14 2018-09-21 中国航空工业集团公司第六三一研究所 一种同步多主对等总线通信系统
JP2015139093A (ja) * 2014-01-22 2015-07-30 株式会社デンソー 中継装置
JP5958975B2 (ja) 2014-03-10 2016-08-02 トヨタ自動車株式会社 通信装置、通信方法及び通信システム
CN110610092B (zh) * 2014-04-17 2023-06-06 松下电器(美国)知识产权公司 车载网络系统、网关装置以及不正常检测方法
JP6336328B2 (ja) * 2014-05-02 2018-06-06 キヤノン株式会社 通信装置とその制御方法、及びプログラム
CN111464414A (zh) * 2014-07-10 2020-07-28 松下电器(美国)知识产权公司 车载网络系统、电子控制单元、接收方法以及发送方法
JP6323296B2 (ja) * 2014-10-23 2018-05-16 株式会社デンソー 制御装置
JP6282216B2 (ja) * 2014-11-20 2018-02-21 国立大学法人名古屋大学 通信システム及び通信装置
US9843597B2 (en) * 2015-01-05 2017-12-12 International Business Machines Corporation Controller area network bus monitor
JP6497142B2 (ja) * 2015-03-13 2019-04-10 富士通株式会社 通信監視装置、通信監視プログラム、および通信監視方法
US9768977B2 (en) * 2015-07-01 2017-09-19 QUALCOMM Technologies International, Ltd Low-power can management
JP6836340B2 (ja) * 2015-09-29 2021-02-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 不正検知電子制御ユニット、車載ネットワークシステム及び通信方法
JP6732799B2 (ja) * 2015-12-25 2020-07-29 パナソニックセミコンダクターソリューションズ株式会社 不正メッセージ検知装置、不正メッセージ検知装置を備える電子制御装置、不正メッセージ検知方法、及び不正メッセージ検知プログラム
DE112016006679B4 (de) * 2016-04-01 2021-10-14 Mitsubishi Electric Corporation Steuerungsvorrichtung und Recovery-Verarbeitungsverfahren für Steuerungsvorrichtung
JP6845628B2 (ja) 2016-07-07 2021-03-17 任天堂株式会社 情報処理装置、情報処理方法、情報処理システム、および、制御プログラム
CN106789694A (zh) * 2016-11-12 2017-05-31 驭联智能科技发展(上海)有限公司 新型车载设备通信控制方法及系统
KR102592204B1 (ko) * 2016-12-29 2023-10-20 현대자동차주식회사 차량 및 그의 통신 제어 방법
CN106911426B (zh) * 2017-02-16 2020-07-28 华为技术有限公司 一种灵活以太网中传输数据的方法及设备
EP3625914B1 (de) * 2017-05-16 2021-04-28 ABB Power Grids Switzerland AG Kommunikationsnetz zur kommunikation zwischen einer steuereinheit und einem leistungselektronikelement
JP6543307B2 (ja) * 2017-08-08 2019-07-10 東芝エレベータ株式会社 エレベータシステム
EP3499806B1 (de) * 2017-12-13 2020-08-05 Nxp B.V. Knoten und verfahren zur durchführung von messungen und signalanalysen auf einem multi-master-zugangsbus
JP7010087B2 (ja) * 2018-03-16 2022-01-26 トヨタ自動車株式会社 プログラム更新管理装置、プログラム更新管理方法、およびプログラム
KR101988171B1 (ko) * 2018-04-27 2019-06-11 벨로넥트 인코퍼레이션 접속된 노드들에 향상된 속도의 버스를 제공하기 위한 기기
JP7018827B2 (ja) * 2018-06-13 2022-02-14 本田技研工業株式会社 通信システム及び車両
WO2020021715A1 (ja) * 2018-07-27 2020-01-30 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 不正対処方法、不正対処装置および通信システム
US10439840B1 (en) 2018-07-27 2019-10-08 Nxp B.V. Method and device for communicating data frames on a multi-master bus
FR3089729B1 (fr) * 2018-12-05 2021-08-06 Renault Sas Système de sélection de trames, nœud de communication et procédé de mise en oeuvre associés
DE102019205487A1 (de) * 2019-04-16 2020-10-22 Robert Bosch Gmbh Teilnehmerstation für ein serielles Bussystem und Verfahren zur Kommunikation in einem seriellen Bussystem
US11843667B2 (en) 2020-08-17 2023-12-12 Toyota Motor North America, Inc. Real time boot for secure distributed systems
CN115733849A (zh) * 2021-08-27 2023-03-03 北京车和家信息技术有限公司 电子控制单元的刷写方法、装置、系统、设备和存储介质
WO2024009633A1 (ja) * 2022-07-05 2024-01-11 パナソニックIpマネジメント株式会社 コントローラ、制御方法及びプログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0677963A (ja) * 1992-07-07 1994-03-18 Hitachi Ltd 通信方式および端末装置
JP2004363761A (ja) * 2003-06-03 2004-12-24 Nissan Motor Co Ltd データ通信方法
JP4341466B2 (ja) * 2004-05-21 2009-10-07 株式会社デンソー 同期通信システム
JP4852246B2 (ja) * 2005-01-04 2012-01-11 パナソニック株式会社 通信装置、集積回路、及び通信方法
JP2007081628A (ja) * 2005-09-13 2007-03-29 Nec Electronics Corp ネットワークの設計方法、ネットワーク設計プログラム、及びネットワーク設計装置
DE102005061403A1 (de) 2005-12-22 2007-06-28 Robert Bosch Gmbh Überwachungseinheit zur Überwachung und Steuerung des Zugriffs eines Teilnehmers auf einen Datenbus und Teilnehmer mit einer solchen Überwachungseinheit
US8503343B2 (en) 2006-08-21 2013-08-06 Panasonic Corporation Wireless communication system, communication control method and communication node
JP4781940B2 (ja) * 2006-08-21 2011-09-28 パナソニック株式会社 無線通信システム及び通信制御方法並びに通信ノード
JP4988475B2 (ja) * 2007-08-02 2012-08-01 パナソニック株式会社 輻輳制御方法、無線通信システム及び無線通信装置
JP5086725B2 (ja) 2007-08-01 2012-11-28 パナソニック株式会社 無線通信方法、無線通信システム及び無線通信装置
JP4988472B2 (ja) 2007-08-01 2012-08-01 パナソニック株式会社 無線通信方法、無線通信システム及び無線通信装置
JP4988474B2 (ja) 2007-08-02 2012-08-01 パナソニック株式会社 無線通信方法、無線通信システム及び無線通信装置
US20100118698A1 (en) 2007-08-01 2010-05-13 Panasonic Corporation Radio communication method, radio communication system, radio communication device, and congestion control method
JP2010081152A (ja) * 2008-09-25 2010-04-08 Nec Electronics Corp 通信装置および通信システム並びに通信方法、canノード

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ISO 11519-1: 1994 Straßenfahrzeuge - Serielle Datenkommunikation mit niedriger Geschwindigkeit - Teil 1: Allgemeines und Definitionen
ISO 11898-1: 2003 Straßenfahrzeuge - Steuerbereichsnetzwerk (CAN) - Teil 1: Datenverbindungsschicht und physikalische Signalisierung

Also Published As

Publication number Publication date
WO2012020761A1 (ja) 2012-02-16
JP2012039446A (ja) 2012-02-23
CN103155492A (zh) 2013-06-12
JP5717240B2 (ja) 2015-05-13
CN103155492B (zh) 2015-11-25
US20130139018A1 (en) 2013-05-30
US9209942B2 (en) 2015-12-08

Similar Documents

Publication Publication Date Title
DE112011102688T5 (de) Kommunikationssystem und Kommunikationsvorrichtung
EP0570557B1 (de) Verfahren zur erzeugung einer systemzeitbasis in einer anlage mit verteilten rechnereinheiten
EP2786513B1 (de) Verfahren zur synchronisation von uhren in knoten eines fahrzeugnetzes und zur durchführung des verfahrens eingerichteter knoten
EP2283616B1 (de) Kommunikationssystem mit einem can-bus und verfahren zum betreiben eines solchen kommunikationssystems
DE102006027378B4 (de) Kommunikationssystem
DE102005046350B4 (de) Anordnung bei einer CAN-Verbindung in einem CAN-System
DE102014001197B4 (de) Kompatibler Netzwerkknoten, insbesondere für CAN-Bussysteme
DE112015005263B4 (de) Kommunikationssystem und Kommunikationsvorrichtung
DE112008001599T5 (de) Kommunikationssystem für ein Fahrzeug, Kommunikationsvorrichtung für ein Fahrzeug und Kommunikationsverfahren für ein Fahrzeug
DE112016006755B4 (de) Netzwerksystem und Kommunikationsverfahren
EP2751956A1 (de) Verfahren und vorrichtung zur prüfung der korrekten funktion einer seriellen datenübertragung
EP1512254A1 (de) Kommunikationsverfahren und system zur übertragung von zeitgesteuerten und ereignisgesteuerten ethernet-nachrichten
DE102008000562A1 (de) Kommunikationssystem umfassend einen Datenbus und mehrere daran angeschlossene Teilnehmerknoten sowie Verfahren zum Betreiben eines solchen Kommunikationssystems
WO2013139662A1 (de) Gateway, knoten und verfahren für ein fahrzeug
DE69433232T2 (de) Digitales Nachrichtennetz mit Auswahlprozess einer Moderatorstation
DE102011080476A1 (de) Verfahren und Vorrichtung zur Verbesserung der Datenübertragungssicherheit in einer seriellen Datenübertragung mit flexibler Nachrichtengröße
WO2011032979A1 (de) Verfahren und vorrichtung zum aufwecken von teilnehmern eines bussystems und entsprechender teilnehmer
WO2012038493A1 (de) Vorrichtung und verfahren zur bereitstellung einer globalen zeitinformation in ereignisgesteuerter buskommunikation
EP3531629A1 (de) Teilnehmerstation für ein bussystem und verfahren zur erhöhung der datenrate eines bussystems
DE102019204115A1 (de) Teilnehmerstation für ein serielles Bussystem und Verfahren zur Kommunikation in einem seriellen Bussystem
DE102010028665A1 (de) Verfahren zum Wechseln eines Betriebszustands mindestens einer Vorrichtung
EP1639758B1 (de) Verfahren und vorrichtung zum austausch von daten über ein bussystem
DE102016200105B4 (de) Kommunikationssystem und sub-master-knoten
EP1428340B1 (de) Verfahren und vorrichtung zur erzeugung von programmunterbrechungen bei teilnehmern eines bussystems und bussystem
DE102018203680A1 (de) Teilnehmerstation für ein serielles Bussystem und Verfahren zur Datenübertragung in einem seriellen Bussystem

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee