-
Technisches Gebiet
-
Die vorliegende Offenbarung betrifft eine Kommunikationsvorrichtung, ein Kommunikationsverfahren und ein Programm.
-
Hintergrund
-
Einrichtungen, wie beispielsweise Fabriken, werden unter Verwendung eines Industrienetzwerks zur Steuerung mehrerer Vorrichtungen betrieben. Das Industrienetzwerk bezieht mehrere Vorrichtungen mit ein, die basierend auf Informationen, die in Echtzeit zwischen den Vorrichtungen gesendet werden, so betrieben werden, dass sie präzise zusammenarbeiten. Kommunikationsschemata zum Integrieren eines solchen Industrienetzwerks in einem Allzweckinformationsnetzwerk, das nicht auf eine Echtzeitleistungsfähigkeit fokussiert ist, sind standardisiert worden und haben Anerkennung erhalten. Ein Beispiel solcher Kommunikationsschemata ist das IEEE 802.1 Time-Sensitive Networking (TSN). Das IEEE 802.1 TSN wird im Folgenden auch als die TSN-Standards bezeichnet.
-
Bekannte Vorrichtungen können unter Umständen jedoch nicht in einfacher Weise mit den obigen Kommunikationsschemata konform sein. Demnach wurden Techniken entwickelt, um Vorrichtungen, die keine Kommunikationsfähigkeiten in Übereinstimmung mit den obigen Kommunikationsschemata aufweisen, mit Vorrichtungen mit solchen Kommunikationsfähigkeiten zu verwenden (siehe beispielsweise Patentliteratur 1).
-
Die Patentliteratur 1 beschreibt einen Switching-Hub, der eine durch einen Puffer erzeugte Funktionalität aufrechterhält, wenn sich der Switching-Hub in einem Netzwerk befindet, das Vorrichtungen umfasst, die nicht mit den TSN-Standards konform sind. Insbesondere stellt eine Zeiteinteilung bei den TSN-Standards Zeit für Low-Level-Kommunikation und Zeit für High-Level-Kommunikation bereit. Ein Switching-Hub kann in einem eingebauten Puffer Daten für eine angemessene Kommunikationszeit speichern, die von Vorrichtungen gesendet werden, die nicht mit den TSN-Standards konform sind. Solche Daten können den Platz in dem Puffer belegen. Im Gegensatz dazu werden mit der in der Patentliteratur 1 beschriebenen Technik solche Daten an eine zentrale Verarbeitungseinheit (CPU) gesendet und in einem Pufferspeicher gespeichert, bei denen bestimmt wird, dass diese ein wichtiges Datenpaket sind, wohingegen Daten, die ein normales Datenpaket sind, das weniger wichtig als das wichtige Datenpaket ist, an einen Zielanschluss gesendet werden, ohne zu der CPU gesendet zu werden. Dadurch wird die Last des Pufferspeichers verringert.
-
Zitierungsliste
-
Patentliteratur
-
Patenliteratur 1: Offenlegung der ungeprüften
japanischen Patentanmeldung Nr. 2020-017877
-
Überblick über die Erfindung
-
Technisches Problem
-
Bei der in der Patentliteratur 1 beschriebenen Technik verifiziert die CPU ferner, ob die von der Schaltungsmaschine empfangenen Datenpakete zu verwerfen sind. Wenn wichtige Datenpakete, die von den Vorrichtungen gesendet werden, die nicht mit den TSN-Standards konform sind, in einer kurzen Zeitspanne häufig vorkommen, verwirft die CPU einige solcher wichtiger Datenpakete. Wenn normale Datenpakete, die keine wichtigen Datenpakete sind, empfangen werden, aber der Pufferspeicher keinen Platz aufweist, werden auch die normalen Datenpakete verworfen. Dadurch wird ein Problem des Datenverlusts verursacht.
-
Hinsichtlich des obigen Problems ist es ein Ziel der vorliegenden Offenbarung, den Datenverlust in einem Netzwerk zu verringern, das sowohl eine Vorrichtung mit Zeiteinteilungs-Kommunikationsfähigkeiten, als auch eine Vorrichtung ohne Zeiteinteilungs-Kommunikationsfähigkeiten aufweist.
-
Lösung des Problems
-
Um das obige Ziel zu erreichen, ist eine Kommunikationsvorrichtung gemäß einem Aspekt der vorliegenden Offenbarung eine Kommunikationsvorrichtung zur Kommunikation mit einer ersten Vorrichtung und einer zweiten Vorrichtung. Die Kommunikationsvorrichtung umfasst Kommunikationsmittel zum Kommunizieren mit der ersten Vorrichtung, indem, in einem Segment für erste Daten, das in einer Vielzahl von Zeitsegmenten umfasst ist, die durch eine gemeinsame Zeit definiert ist, die mit der ersten Vorrichtung geteilt ist, wenigstens erste Daten an die erste Vorrichtung übertragen oder die ersten Daten von der ersten Vorrichtung empfangen werden, wobei das Segment für erste Daten ein Zeitsegment ist, das einem Typ der ersten Daten entspricht, Empfangsmittel zum Empfangen von zweiten Daten, die von der zweiten Vorrichtung unabhängig von der Vielzahl von Zeitsegmenten gesendet werden, Weiterleitungsmittel zum Weiterleiten der zweiten Daten, die in einem in der Vielzahl von Zeitsegmenten umfassten Segment für zweite Daten an die erste Vorrichtung zu senden sind, wenn ein Ziel der von den Empfangsmitteln empfangenen zweiten Daten die erste Vorrichtung umfasst, wobei das Segment für zweite Daten ein Zeitsegment ist, das einem Typ der zweiten Daten entspricht, und Sendemittel zum Senden von Anweisungsdaten zum Bestimmen einer Zeitdauer, in der ein Senden der zweiten Daten ausgesetzt wird, in einem Anweisungssegment an die zweite Vorrichtung, um die zweite Vorrichtung anzuweisen, das Senden der zweiten Daten auszusetzen. Das Anweisungssegment ist ein Zeitsegment zum Senden der Anweisungsdaten. Die von den Anweisungsdaten bestimmte Zeitdauer ist größer oder gleich einer Zeitdauer zwischen einem Zeitpunkt, ab dem die zweite Vorrichtung das Senden der zweiten Daten in Übereinstimmung mit den Anweisungsdaten aussetzt, und einem Zeitpunkt, bei dem wenigstens ein Teil eines Zeitsegments vergangen ist, das dem Anweisungssegment direkt nachfolgt und dem Segment für zweite Daten vorangeht.
-
Vorteilhafte Wirkungen der Erfindung
-
Bei der Struktur gemäß den obigen Aspekten der vorliegenden Offenbarung senden die Sendemittel Anweisungsdaten in dem Anweisungssegment an die zweite Vorrichtung, um die zweite Vorrichtung anzuweisen, das Senden der zweiten Daten auszusetzen. Die von den Anweisungsdaten bestimmte Zeitdauer ist größer oder gleich einer Zeitdauer zwischen einem Zeitpunkt, ab dem die zweite Vorrichtung das Senden der zweiten Daten in Übereinstimmung mit den Anweisungsdaten aussetzt, und einem Zeitpunkt, bei dem wenigstens ein Teil eines Zeitsegments vergangen ist, das dem Anweisungssegment direkt nachfolgt und dem Segment für zweite Daten vorangeht. Die zweite Vorrichtung setzt demnach das Senden der zweiten Daten in Übereinstimmung mit den Anweisungsdaten in wenigstens einem Teil des Zeitsegments aus, das dem Segment für zweite Daten vorangeht, und kann die zweiten Daten in dem Segment für zweite Daten senden. Dadurch kann eine übermäßige Last reduziert werden, die durch temporäres Speichern der zweiten Daten in der Kommunikationsvorrichtung zum Senden in angemessenen Zeitsegmenten verursacht wird. Die Kommunikationsvorrichtung kann demnach einen Datenverlust in dem Netzwerk reduzieren, das sowohl eine Vorrichtung mit Zeiteinteilungs-Kommunikationsfähigkeiten, als auch eine Vorrichtung ohne Zeiteinteilungs-Kommunikationsfähigkeiten umfasst.
-
Figurenliste
-
- 1 ist ein Blockdiagramm eines Kommunikationssystems gemäß Ausführungsform 1;
- 2 ist ein Blockdiagramm einer Netzwerkvorrichtung gemäß Ausführungsform 1, das die Hardware-Konfiguration zeigt;
- 3 ist ein schematisches Diagramm, das eine Kommunikation unter Verwendung einer Zeiteinteilung in Ausführungsform 1 beschreibt;
- 4 ist ein Diagramm, das ein Puffern in dem Kommunikationssystem gemäß Ausführungsform 1 beschreibt;
- 5 ist ein funktionelles Blockdiagramm einer Kommunikationsvorrichtung gemäß Ausführungsform 1;
- 6 ist ein Diagramm, das ein Aussetzen des Sendens der zweiten Daten bei Ausführungsform 1 beschreibt;
- 7 ist eine Tabelle, die die Entsprechung zwischen einem Zeitsegment und eines Kommunikationstyps in Ausführungsform 1 zeigt, der dem Zeitsegment entspricht;
- 8 ist ein Flussdiagramm eines Empfangsprozesses, der von der Kommunikationsvorrichtung gemäß Ausführungsform 1 durchgeführt wird;
- 9 ist ein Diagramm, das ein Puffern in der Kommunikationsvorrichtung gemäß Ausführungsform 1 beschreibt;
- 10 ist ein Flussdiagramm eines Anweisungsprozesses, der von der Kommunikationsvorrichtung gemäß Ausführungsform 1 durchgeführt wird;
- 11 ist ein Diagramm, das ein Senden von Anweisungsdaten beschreibt, das von der Kommunikationsvorrichtung gemäß Ausführungsform 1 durchgeführt wird;
- 12 ist ein funktionelles Blockdiagramm einer Kommunikationsvorrichtung gemäß Ausführungsform 2;
- 13 ist ein Diagramm, das eine Berechnung einer Sendeverzögerung bei Ausführungsform 2 beschreibt;
- 14 ist ein Diagramm, das ein Aussetzen des Sendens von zweiten Daten bei Ausführungsform 2 beschreibt;
- 15 ist ein Diagramm, das verschiedene Dauern von Zeitfenstern in Ausführungsform 2 beschreibt;
- 16 ist ein Diagramm, das ein Aussetzen des Sendens von zweiten Daten in Ausführungsform 3 beschreibt;
- 17 ist ein Diagramm, das verschiedene Zeitpunkte zum Senden von Anweisungsdaten in Ausführungsform 3 beschreibt;
- 18 ist ein Diagramm, das ein Aussetzen des Sendens von zweiten Daten in Ausführungsform 4 beschreibt;
- 19 ist eine Tabelle, die eine Entsprechung zwischen einem Zeitsegment und einem Kommunikationstyp in Ausführungsform 4 zeigt, der dem Zeitsegment entspricht;
- 20 ist ein Blockdiagramm eines Kommunikationssystems gemäß Ausführungsform 5;
- 21 ist ein Diagramm, das ein Aussetzen des Sendens von zweiten Daten bei Ausführungsform 5 beschreibt;
- 22 ist ein Diagramm, das ein Aussetzen des Sendens von zweiten Daten bei einer Modifikation beschreibt.
-
Beschreibung von Ausführungsformen
-
Im Folgenden wird eine Kommunikationsvorrichtung 100 gemäß einer oder mehreren Ausführungsformen der vorliegenden Offenbarung mit Bezug auf die Zeichnungen im Detail beschrieben.
-
Ausführungsform 1
-
Wie in 1 gezeigt ist die Kommunikationsvorrichtung 100 gemäß der vorliegenden Ausführungsform mit einer ersten Vorrichtung 110 und einer zweiten Vorrichtung 120 über ein Netzwerk zur gegenseitigen Kommunikation verbunden. Die Kommunikationsvorrichtung 100, die erste Vorrichtung 110, die zweite Vorrichtung 120 und eine Weiterleitungsvorrichtung 130 sind in einem Kommunikationssystem 1000 umfasst. Das Kommunikationssystem 1000 entspricht einem Teil eines Fabrikautomatisierungssystems (FA-Systems), das in einer Fabrik installiert ist. Das FA-System kann beispielsweise ein Herstellungssystem, ein Überwachungssystem, ein Bearbeitungssystem oder jedwedes andere System sein. Das Kommunikationssystem 1000 setzt wenigstens einen Teil von Pseudo-Kommunikationsfähigkeiten mit Zeiteinteilung um, indem die Vorrichtungen, die keine Kommunikationsfähigkeiten mit Zeiteinteilung aufweisen, dazu veranlasst werden, ein Senden von Daten temporär auszusetzen.
-
Die Kommunikationsvorrichtung 100, die erste Vorrichtung 110, die zweite Vorrichtung 120 und die Weiterleitungsvorrichtung 130 weisen jeweils eine gemeinsame Hardware-Konfiguration auf, die in 2 gezeigt ist. Die Kommunikationsvorrichtung 100, die erste Vorrichtung 110, die zweite Vorrichtung 120 und die Weiterleitungsvorrichtung 130 werden jeweils ohne Unterscheidung als Netzwerkvorrichtung 30 bezeichnet, wie in 2 gezeigt. Die Netzwerkvorrichtung 30 umfasst als Hardware-Komponenten einen Prozessor 31, einen Hauptspeicher 32, einen Hilfsspeicher 33, einen Taktgeber 34, eine Eingabevorrichtung 35, eine Ausgabevorrichtung 36 und einen Kommunikator 37. Der Hauptspeicher 32, der Hilfsspeicher 33, der Taktgeber 34, die Eingabevorrichtung 35, die Ausgabevorrichtung 36 und der Kommunikator 37 sind mit dem Prozessor 31 über einen internen Bus 38 verbunden.
-
Der Prozessor 31 umfasst eine zentrale Verarbeitungseinheit (CPU) oder einen Mikroprozessor (MPU), der eine integrierte Schaltung ist. Der Prozessor 31 führt ein in dem Hilfsspeicher 33 gespeichertes Programm P1 aus, um die verschiedenen Funktionen der Netzwerkvorrichtung 30 umzusetzen und die später beschriebene Verarbeitung durchzuführen.
-
Der Hauptspeicher 32 umfasst einen Direktzugriffsspeicher (RAM). Der Hauptspeicher 32 speichert das Programm P 1, das von dem Hilfsspeicher 33 geladen wird. Der Hauptspeicher 32 wird von dem Prozessor 31 als ein Arbeitsbereich verwendet.
-
Der Hilfsspeicher 33 umfasst einen nichtflüchtigen Speicher, üblicherweise einen elektrisch löschbaren programmierbaren Festwertspeicher (EEPROM) und einen Festplattenspeicher (HDD). Der Hilfsspeicher 33 speichert zusätzlich zu dem Programm P1 verschiedene Datensätze, die in der von dem Prozessor 31 durchgeführten Verarbeitung verwendet werden. Der Hilfsspeicher 33 stellt dem Prozessor 31, wie von dem Prozessor 31 angewiesen, von dem Prozessor 31 zu verwendende Daten bereit und speichert die dem Prozessor 31 bereitgestellten Daten.
-
Der Taktgeber 34 umfasst beispielsweise einen Taktgenerator, der einen Quartzresonator, einen Silikonresonator, einen Quartzoszillator, oder eine andere Oszillatorschaltung umfasst. Der Taktgeber 34 erzeugt ein Taktsignal basierend auf einem Takt, der von dem Taktgenerator erzeugt wird, und gibt das Taktsignal aus. Das Taktsignal umfasst einen Taktpuls und wird von dem Prozessor 31 dazu verwendet, eine Zeit durch Zählen der Male, die der Taktpuls ansteigt, unter Verwendung einer eingebauten Hardwarevorrichtung oder durch eine Softwareverarbeitung zu messen.
-
Die Eingabevorrichtung 35 umfasst Eingabevorrichtungen, wie typischerweise Eingabetasten und eine Zeigervorrichtung. Die Eingabevorrichtung 35 erhält von dem Benutzer der Netzwerkvorrichtung eingegebene Informationen und stellt die erhaltenen Informationen dem Prozessor 31 bereit.
-
Die Ausgabevorrichtung 36 umfasst Ausgabevorrichtungen, wie typischerweise eine Leuchtdiode (LED), eine Flüssigkristallanzeige (LCD) und einen Lautsprecher. Die Ausgabevorrichtung 36 präsentiert dem Benutzer verschiedene Informationselemente in Übereinstimmung mit einer Anweisung von dem Prozessor 31.
-
Der Kommunikator 37 umfasst eine Netzwerkschnittstellenschaltung, um Ethernet-Datenrahmen zu und von externen Vorrichtungen zu senden und zu empfangen. Der Kommunikator 37 empfängt ein Signal von einer externen Vorrichtung und gibt Daten aus, die von dem Signal an den Prozessor 31 getragen wurden. Der Kommunikator 37 sendet auch ein Signal, das Daten trägt, die von dem Prozessor 31 ausgegeben wurden, an eine externe Vorrichtung. Obwohl die 2 den einzelnen Kommunikator 37 zeigt, kann die Netzwerkvorrichtung 30 mehrere Kommunikatoren 37 für eine Verbindung mit verschiedenen Übertragungsleitungen umfassen.
-
Es wird sich erneut auf 1 bezogen. Die Kommunikationsvorrichtung 100, die erste Vorrichtung 110 und die Weiterleitungsvorrichtung 130 sind TSN-konforme Vorrichtungen, die mit den TSN-Standards konform sind. Beispielsweise sind die Kommunikationsvorrichtung 100 und die erste Vorrichtung 110 Netzwerkeinheiten, die jeweils in einer programmierbaren Logiksteuerung (PLC) umfasst sind, die eine Industriesteuervorrichtung ist, und die Weiterleitungsvorrichtung ist ein Switching-Hub. Die Kommunikationsvorrichtung 100, die erste Vorrichtung 110 und die Weiterleitungsvorrichtung 130 kommunizieren miteinander in Übereinstimmung mit den TSN-Standards über einen Kommunikationskanal 22.
-
Die zweite Vorrichtung 120 ist nicht mit den TSN-Standards konform. Die zweite Vorrichtung 120 ist beispielsweise ein Industriepersonalcomputer (IPC), der über einen Kommunikationskanal 21 mit der Weiterleitungsvorrichtung 130 verbunden ist, die als ein Switching-Hub dient, eine PLC, die nicht mit den TSN-Standards konform ist, oder eine in der PLC umfasste Einheit, ein Aktuator oder ein Roboter, der durch die PLC zu steuern ist, eine Sensorvorrichtung, die einen Sensor umfasst, oder eine andere Vorrichtung. In dem oben beschriebenen Beispiel führt die nicht mit den TSN-Standards konforme zweite Vorrichtung 120 eine IP-Kommunikation durch.
-
Im Folgenden wird ein Überblick über die Kommunikation in Übereinstimmung mit den TSN-Standards beschrieben, die von der Kommunikationsvorrichtung 100, der ersten Vorrichtung 110 und der Weiterleitungsvorrichtung 130 durchgeführt wird.
-
Die Kommunikationsvorrichtung 100, die erste Vorrichtung 110 und die Weiterleitungsvorrichtung 130, die TSN-konforme Vorrichtungen sind, können über den Kommunikationskanal 22 mit einer synchronisierten Zeit betrieben werden. Genauer gesagt teilt jede der TSN-konformen Vorrichtungen die Zeit mit den anderen Vorrichtungen in Übereinstimmung mit einem Synchronisierungsprotokoll. Das Synchronisierungsprotokoll wird dazu verwendet, die Vorrichtungen in einem Kommunikationsnetzwerk mit hoher Genauigkeit zu synchronisieren. Beispielsweise mit dem IEEE802.1AS als das Synchronisierungsprotokoll verbreitet ein übergeordneter Master, der einem Knoten in dem Netzwerk entspricht, periodisch einen präzisen Referenztakt in dem Kommunikationsnetzwerk. Wenn die Daten von dem übergeordneten Master und von einem Slave, der einem anderen Knoten entspricht, zu dem übergeordneten Master zurück gesendet wird, wird eine Kommunikationsverzögerung gemessen. Der Slave bezieht einen Referenztakt durch Korrektur dieser Kommunikationsverzögerung. Demnach wird die Zeit geteilt, bei der die Kommunikationsverzögerung korrigiert ist.
-
Das Teilen der Zeit und das Synchronisieren von mehreren Vorrichtungen beziehen sich auf eine Synchronisation von Taktgebern, die in den jeweiligen Vorrichtungen umfasst sind. Wenn die Taktgeber in den jeweiligen Vorrichtungen dieselbe Zeit messen und jeweils die gemessene Zeit miteinander teilen, sind die Vorrichtungen synchronisiert. Die Zeit, die zwischen den Vorrichtungen geteilt wird, wird im Nachfolgenden als eine gemeinsame Zeit bezeichnet.
-
Jede TSN-konforme Vorrichtung sendet oder empfängt Daten mit der gemeinsamen Zeit basierend auf einem vorbestimmten Zeitplan. Insbesondere führen die Kommunikationsvorrichtung 100, die erste Vorrichtung 110 und die Weiterleitungsvorrichtung 130, wie in 3 gezeigt, eine Kommunikation unter Verwendung von Zeitmultiplexing in Zeitspannen 41 und 42 durch, die jeweils eine Dauer aufweisen, die in Übereinstimmung mit der gemeinsamen Zeit vorbestimmt sind.
-
Die Zeitspannen 41 und 42 grenzen aneinander an. Insbesondere folgt die Zeitspanne 42 direkt der Zeitspanne 41 nach, wobei der letzte Zeitpunkt mit dem Anfangszeitpunkt der Zeitspanne 42 zusammenfällt. Obwohl zwei Zeitspannen, oder die Zeitspannen 41 und 42, in 3 gezeigt sind, gehen Zeitspannen, die zu den Zeitspannen 41 und 42 äquivalent sind, der Zeitspanne 41 periodisch voran und folgen der Zeitspanne 42 periodisch nach.
-
Die Zeitspannen 41 und 42 umfassen jeweils ein Zeitfenster TS1 und ein Zeitfenster TS2, die aneinander angrenzen. Wenn die Zeitfenster TS1 und TS2 in dieser Reihenfolge in der Zeitspanne 41 auftreten, wie es in 3 gezeigt ist, so fällt der Anfangszeitpunkt des Zeitfensters TS1 mit dem Anfangszeitpunkt der Zeitdauer 41 zusammen, der letzte Zeitpunkt des Zeitfensters TS1 fällt mit dem Anfangszeitpunkt des Zeitfensters TS2 zusammen und der letzte Zeitpunkt des Zeitfensters TS2 fällt mit dem letzten Zeitpunkt der Zeitdauer 41 zusammen. Dem Zeitfenster TS2 in der Zeitdauer 41 folgt das Zeitfenster TS1 in der Zeitdauer 42 direkt nach.
-
Die Zeitfenster TS1 und TS2 sind Zeitsegmente zum Senden verschiedener Typen vorbestimmter Daten. Genauer gesagt sind das Zeitfenster TS1 und das Zeitfenster TS2 zum Durchführen einer Kommunikation bezüglich vorbestimmten Moden, Kanälen, oder Protokollen definiert. In dem Zeitfenster TS1 werden Daten zum Synchronisieren der Zeit mit dem Synchronisierungsprotokoll von der Kommunikationsvorrichtung 100, die einem übergeordneten Master entspricht, an die erste Vorrichtung 110 und die Weiterleitungsvorrichtung 130, die Slaves entsprechen, gesendet, wie es durch gestrichelte Pfeile in 3 dargestellt ist. In dem Zeitfenster TS2 wird eine Internet-Protokoll-Kommunikation (IP-Kommunikation) durchgeführt, wie es mit durchgezogenen Pfeilen in 3 dargestellt ist. Die Zeitspannen 41 und 42 weisen eine gleiche Dauer auf, um eine zyklische Kommunikation in jedem Zeitfenster zu ermöglichen. Wenn in jedem Zeitfenster Daten des Typs gesendet werden, der dem Zeitfenster entspricht, werden von jeder Vorrichtung Daten wenigstens gesendet oder empfangen, oder es wird keine Kommunikation durchgeführt, wenn keine Daten zu senden sind.
-
Bei der Kommunikation zwischen der Kommunikationsvorrichtung 100 und der zweiten Vorrichtung 120, wie sie in 1 gezeigt ist, sendet die zweite Vorrichtung 120, die keine Kommunikationsfähigkeiten in Übereinstimmung mit den TSN-Standards aufweist, Daten unabhängig von jeglichen Zeitfenstern. Obwohl die TSN-konformen Vorrichtungen Daten des entsprechenden Typs senden, der für jedes Zeitfenster vorbestimmt ist, kann die zweite Vorrichtung 120 Daten eines Typs senden, der von dem dem Zeitfenster entsprechenden Typ verschieden ist. Der dem Zeitfenster entsprechende Datentyp bezeichnet eine Klassifikation von Daten, die innerhalb des Zeitfensters weitergeleitet werden können, ohne dass gepuffert wird, wenn die Daten in dem Zeitfenster weitergeleitet werden. Der Datentyp, der nicht dem Zeitfenster entspricht, bezeichnet eine Klassifikation von Daten, die ein Puffern miteinbeziehen, wenn an die TSN-konforme Vorrichtung weiterzuleitende Daten von einer anderen TSN-konformen Vorrichtung empfangen werden.
-
Bei dem mit Bezug auf einen oberen Teil von 4 beschriebenen Beispiel sendet die zweite Vorrichtung 120 Daten zur IP-Kommunikation, die zur Kommunikationsvorrichtung 100 gerichtet sind, in einem Zeitfenster T2, das für die IP-Kommunikation definiert ist. Die Weiterleitungsvorrichtung 130 empfängt Daten von der zweiten Vorrichtung 120 und leitet die Daten weiter, indem sie die empfangenen Daten in dem Zeitfenster T2 an die Kommunikationsvorrichtung 100 sendet.
-
Bei dem mit Bezug auf einen unteren Teil der 4 beschriebenen Beispiel sendet die zweite Vorrichtung 120 IP-Kommunikationsdaten, die zur ersten Vorrichtung 110 gerichtet sind, in einem Zeitfenster T1. Die Weiterleitungsvorrichtung 130 empfängt Daten von der zweiten Vorrichtung 120 in dem Zeitfenster T1. In dem Zeitfenster T1, das kein Zeitsegment für die IP-Kommunikation ist, puffert und speichert die Weiterleitungsvorrichtung 130 jedoch temporär die empfangenen Daten und sendet die empfangenen Daten an die Kommunikationsvorrichtung 100 in dem Zeitfenster T2, um die Daten weiterzuleiten. Die Kommunikationsvorrichtung 100 empfängt die Daten von der Weiterleitungsvorrichtung 130 und leitet die Daten durch Senden der empfangenen Daten an die erste Vorrichtung 110 in dem Zeitfenster T2 weiter. Wenn Daten eines Typs empfangen werden, die nicht dem Zeitfenster entsprechen, leitet die Kommunikationsvorrichtung 100, ähnlich zu der Weiterleitungsvorrichtung 130, die Daten durch temporäres Puffern der Daten und nachfolgendes Senden der Daten weiter, obwohl dies nicht in 4 gezeigt ist.
-
Wenn sich die Menge von weiterzuleitenden Daten erhöht und die Pufferkapazität übersteigt, können Daten verworfen werden und gehen verloren. Dadurch kann ein Datenverlust verursacht werden, der beispielsweise als Datenrahmenverlust oder Paketverlust bekannt ist. Im Gegensatz dazu ist die Kommunikationsvorrichtung 100 dazu imstande, die zweite Vorrichtung 120 vor dem Zeitfenster T1 anzuweisen, das Senden von Daten für eine vorbestimmte Zeitspanne auszusetzen.
-
5 zeigt die funktionellen Komponenten der Kommunikationsvorrichtung 100, der ersten Vorrichtung 110, der zweiten Vorrichtung 120 und der Weiterleitungsvorrichtung 130. Wie in 5 gezeigt, umfasst die Kommunikationsvorrichtung 100 als funktionelle Komponenten eine Steuerung 51, der die Komponenten der Kommunikationsvorrichtung 100 steuert, einen Speicher 52, der verschiedene Datensätze speichert, und einen Kommunikator 53, der mit anderen Vorrichtungen kommuniziert.
-
Die Steuerung 51 ist hauptsächlich durch den Prozessor 31 umgesetzt, der in der Kommunikationsvorrichtung 100 umfasst ist. Die Steuerung 51 steuert den Speicher 52 und den Kommunikator 53, sodass diese den Speicher 52 und den Kommunikator 53 dazu veranlasst, zusammenzuarbeiten.
-
Der Speicher 52 ist durch den Hauptspeicher 32 und/oder den Hilfsspeicher 33 in der Kommunikationsvorrichtung 100 umgesetzt. Der Speicher 52 speichert Daten, die von der Kommunikationsvorrichtung 100 an andere Vorrichtungen zu senden sind, und Daten, die von anderen Vorrichtungen empfangen werden. Der Speicher 52 kann Daten speichern, die beim Weiterleiten der Daten temporär von der Kommunikationsvorrichtung 100 gespeichert werden.
-
Der Kommunikator ist hauptsächlich durch den Prozessor 31 und den Kommunikator 37 in der Kommunikationsvorrichtung 100 umgesetzt, die miteinander zusammenarbeiten. Der Kommunikator 53 sendet und empfängt Daten an die und von der ersten Vorrichtung 110 und der Weiterleitungsvorrichtung 130. Der Kommunikator 53 umfasst ein Empfangsmodul 531, das Daten von der zweiten Vorrichtung 120 empfängt, ein Weiterleitungsmodul 532, das von der zweiten Vorrichtung empfangene Daten weiterleitet, ein Sendemodul 533, das Anweisungsdaten sendet, um die zweite Vorrichtung 120 anzuweisen, das Senden von Daten auszusetzen, und ein Kommunikationsmodul 534, das in Übereinstimmung mit den TSN-Standards kommuniziert.
-
Bei dem nachfolgend beschriebenen Beispiel werden Daten, die von der Kommunikationsvorrichtung 100 an eine und von einer TSN-konformen Vorrichtung gesendet und empfangen werden, als erste Daten bezeichnet und Daten, die von der zweiten Vorrichtung 120 gesendet werden, als zweite Daten bezeichnet. Das Zeitfenster T1 entspricht einem Beispiel für ein Segment für erste Daten, das ein Zeitsegment ist, das einem Typ der ersten Daten entspricht. Das Zeitfenster T2 entspricht einem Beispiel für ein Segment für zweite Daten, das ein Zeitsegment ist, das einem Typ der zweiten Daten entspricht. Das Empfangsmodul 531 entspricht einem Beispiel für Empfangsmittel zum Empfangen der zweiten Daten, die von der zweiten Vorrichtung 120 unabhängig von jeglichen Zeitsegmenten gesendet werden. Das Weiterleitungsmodul 532 entspricht einem Beispiel für Weiterleitungsmittel in der Kommunikationsvorrichtung 100 zum Weiterleiten der zweiten Daten, die in dem Segment für zweite Daten an die erste Vorrichtung zu senden sind, wenn ein Ziel der von den Empfangsmitteln empfangenen zweiten Daten die erste Vorrichtung umfasst. Das Kommunikationsmodul 534 entspricht einem Beispiel für Kommunikationsmittel in der Kommunikationsvorrichtung 100 zum Kommunizieren mit der ersten Vorrichtung durch wenigstens Senden von ersten Daten an die erste Vorrichtung oder empfangen der ersten Daten von der ersten Vorrichtung in dem Segment für erste Daten, das in mehreren Zeitsegmenten umfasst ist, die durch die gemeinsame Zeit definiert sind, die mit der ersten Vorrichtung geteilt wird.
-
Anweisungsdaten, die von dem Anweisungsmodul 533 gesendet werden, umfassen einen bestimmten Wert, der die Zeitdauer angibt, in der das Senden von Daten auszusetzen ist. Beim Empfangen der Anweisungsdaten setzt die zweite Vorrichtung 120 das Senden von Daten ab dem Zeitpunkt, zu dem die Anweisungsdaten empfangen werden, für die Zeitdauer aus, die in den Anweisungsdaten bestimmt ist. Die Anweisungsdaten sind beispielsweise ein PAUSE-Datenrahmen, wie er in IEEE802.3x bestimmt ist. Der PAUSE-Datenrahmen sind Daten, die von einer Vorrichtung verwendet werden, die einen Ethernet-Datenrahmen empfängt, um die Quellenvorrichtung anzuweisen, das Senden für eine Zeitspanne auszusetzen, wenn die Datenmenge die Pufferkapazität übersteigt.
-
Die Kommunikationsvorrichtung 100, die das Sendemodul 533 umfasst, sendet die Anweisungsdaten in einem Zeitfenster T3 rund, wie in 6 gezeigt. Das Zeitfenster T3 ist ein Zeitsegment zum Senden von Anweisungsdaten, wie in 7 gezeigt. Das Zeitfenster T3 geht dem Zeitfenster T1 direkt voran, in dem ein Pufferprozess auftritt, wenn die zweiten Daten gesendet werden. Dieses Zeitsegment wird im Nachfolgenden, soweit angemessen, als ein Anweisungssegment bezeichnet. In dem Anweisungssegment sendet eine TSN-konforme Vorrichtung keine Daten, die von den Anweisungsdaten verschieden sind. Beim Empfang von Anweisungsdaten setzt eine TSN-konforme Vorrichtung die Kommunikation in Übereinstimmung mit den TSN-Standards fort, ohne das Senden von Daten in Übereinstimmung mit den Anweisungsdaten auszusetzen.
-
Es wird sich erneut auf 6 bezogen. Beim Empfang von Anweisungsdaten über die Weiterleitungsvorrichtung 130 setzt die zweite Vorrichtung 120 das Senden der zweiten Daten in Übereinstimmung mit den empfangenen Anweisungsdaten aus. Die zweite Vorrichtung 120 setzt das Senden der zweiten Daten sofort beim Empfang der Anweisungsdaten aus. Demnach fällt der Anfangszeitpunkt zum Aussetzen des Sendens der zweiten Daten im Wesentlichen mit dem Zeitpunkt zusammen, bei dem die Anweisungsdaten empfangen werden. Eine Zeitdauer TL1, in der das Senden ausgesetzt wird, ist gleich der Summe der Zeitdauer des Zeitfensters T3 und der Zeitdauer des Zeitfensters T1. Die zweite Vorrichtung 120 startet das Senden der zweiten Daten, nachdem die Zeitdauer TL1 ab dem Empfang der Anweisungsdaten vergangen ist. Der Zeitpunkt zum Starten eines solchen Sendens liegt innerhalb des Zeitfensters T2, das den zweiten Daten entspricht. Demnach leiten die Weiterleitungsvorrichtung 130 und die Kommunikationsvorrichtung 100 die zweiten Daten an die erste Vorrichtung 110 ohne Puffern der zweiten Daten weiter.
-
Das Sendemodul 533 entspricht einem Beispiel für Sendemittel zum Senden von Anweisungsdaten an die zweite Vorrichtung, um die Zeitdauer zu bestimmen, in der das Senden der zweiten Daten ausgesetzt wird, um die zweite Vorrichtung anzuweisen, das Senden der zweiten Daten in einem Anweisungssegment auszusetzen, das in den Zeitsegmenten bei der Kommunikationsvorrichtung 100 umfasst ist. Das Anweisungssegment ist ein Zeitsegment zum Senden der Anweisungsdaten.
-
Es wird sich erneut auf 5 bezogen. Die erste Vorrichtung 110 umfasst einen Speicher 111, der verschiedene Datensätze speichert, und einen Kommunikator 112, der mit anderen Vorrichtungen kommuniziert. Die zweite Vorrichtung 120 umfasst einen Speicher 121, der verschiedene Datensätze speichert, und einen Kommunikator 122, der mit anderen Vorrichtungen kommuniziert. Die Weiterleitungsvorrichtung 130 umfasst einen Speicher 131, der Daten, die beim Weiterleiten temporär zu speichern sind, und andere Daten speichert, und einen Kommunikator 132, der mit anderen Vorrichtungen kommuniziert. Die Kommunikatoren 112 und 132 in der ersten Vorrichtung 110 und der Weiterleitungsvorrichtung 130, die TSN-konforme Vorrichtungen sind, weisen dieselben Funktionen wie das Empfangsmodul 531, das Weiterleitungsmodul 532 und das Kommunikationsmodul 534 in der Kommunikationsvorrichtung 100 auf.
-
Im Folgenden wird ein von der Kommunikationsvorrichtung 100 durchgeführter Prozess mit Bezug auf die 8 und 9 beschrieben. 8 zeigt einen Empfangsprozess, der von der Kommunikationsvorrichtung 100 durchgeführt wird, um von der zweiten Vorrichtung 120 gesendete zweite Daten zu empfangen und zu verarbeiten.
-
Wie in 8 gezeigt, bestimmt die Kommunikationsvorrichtung 100, ob Daten in dem Empfangsprozess empfangen wurden (Schritt S1). Insbesondere bestimmt das Empfangsmodul 531 in dem Kommunikator 53, ob von einer anderen Vorrichtung gesendete Daten empfangen wurden.
-
Wenn keine Daten empfangen wurden (Nein in Schritt S1), wird die Bestimmung in Schritt S1 wiederholt. Wenn Daten empfangen wurden (Ja in Schritt S1), bestimmt das Empfangsmodul 531, ob die empfangenen Daten weiterzuleiten sind (Schritt S2). Wenn das Ziel der durch die Kommunikationsvorrichtung 100 von der zweiten Vorrichtung 120 empfangenen Daten die erste Vorrichtung 110 umfasst, ist das Ergebnis der Bestimmung in Schritt S2 bejahend.
-
Wenn die Daten nicht weiterzuleiten sind (Nein in Schritt S2), führt das Empfangsmodul 531 eine Datenverarbeitung mit den empfangenen Daten durch, die zu der Kommunikationsvorrichtung 100 gerichtet sind (Schritt S3). Insbesondere speichert das Empfangsmodul 531 die empfangenen Daten in dem Speicher 52, damit die Steuerung 51 die empfangenen Daten verarbeiten kann. Die Kommunikationsvorrichtung 100 wiederholt dann die Verarbeitung in Schritt S1 und den nachfolgenden Schritten.
-
Wenn die Daten weiterzuleiten sind (Ja in Schritt S2), bestimmt das Weiterleitungsmodul 532, ob die Daten in dem Zeitsegment weitergeleitet werden können, das den Daten entspricht (Schritt S4). Wenn die Daten zweite Daten sind, die von der zweiten Vorrichtung 120 mit der IP-Kommunikation an die erste Vorrichtung 110 gesendet werden, so bestimmt das Weiterleitungsmodul 532, ob die zweiten Daten in dem Zeitfenster T2 für die IP-Kommunikation an die erste Vorrichtung 110 gesendet werden können. Insbesondere bestimmt das Weiterleitungsmodul 532, ob ein Zeitpunkt, zu dem die von der Kommunikationsvorrichtung 100 für die interne Durchführung der Weiterleitungsverarbeitung benötigte Zeit ab dem momentanen Zeitpunkt vergangen ist, in dem Zeitfenster T2 für die IP-Kommunikation umfasst ist, das durch die gemeinsame Zeit vorbestimmt ist.
-
Wenn die Daten in dem entsprechenden Zeitsegment weitergeleitet werden können (Ja in Schritt S4), kann das Weiterleitungsmodul 532 einen Weiterleitungsprozess durchführen (Schritt S5). Das Weiterleitungsmodul 532 leitet beispielsweise die zweiten Daten, bei denen in Schritt S2 bestimmt wurde, dass diese empfangen wurden, weiter, indem es die zweiten Daten an die erste Vorrichtung 110 sendet. Die Kommunikationsvorrichtung 100 wiederholt dann die Verarbeitung in Schritt S1 und den nachfolgenden Schritten.
-
Wenn die Daten nicht in dem entsprechenden Zeitsegment weitergeleitet werden können (Nein in Schritt S4), führt das Weiterleitungsmodul 532 einen Pufferprozess durch (Schritt S6). Insbesondere speichert das Weiterleitungsmodul 533 die Daten, bei denen in Schritt S2 bestimmt wurde, dass diese empfangen wurden, temporär in dem Speicher 52.
-
Das Weiterleitungsmodul 532 führt einen Sendeprozess durch (Schritt S7). Insbesondere liest das Weiterleitungsmodul 532 die Daten von dem Speicher 52 und sendet die Daten in dem Zeitsegment, das den in Schritt S6 gepufferten Daten entspricht, an die Zielvorrichtung. Beispielsweise sendet das Weiterleitungsmodul 532 die gepufferten zweiten Daten in dem Zeitfenster T2 an die erste Vorrichtung 110. Die Kommunikationsvorrichtung 100 wiederholt dann die Verarbeitung des Schritts S1 und der nachfolgenden Schritte.
-
Bei dem Kommunikationssystem 1000 mit der in 1 gezeigten Konfiguration puffert und leitet die Weiterleitungsvorrichtung 130 hauptsächlich die zweiten Daten, die jederzeit von der zweiten Vorrichtung 120 gesendet werden. Demnach wird derselbe Empfangsprozess, der in 8 gezeigt ist, von der Weiterleitungsvorrichtung 130 durchgeführt. Bei dem Kommunikationssystem 1000, bei dem die Weiterleitungsvorrichtung 130 ausgelassen ist, kann die Kommunikationsvorrichtung 100, wie in 9 gezeigt, den oben beschriebenen Empfangsprozess durchführen, um die zweiten Daten zu puffern, die jederzeit gesendet werden, bevor die zweiten Daten in Übereinstimmung mit den TSN-Standards weitergeleitet werden. Wenn entweder die Kommunikationsvorrichtung 100, oder die Weiterleitungsvorrichtung 130, die hauptsächlich das Puffern durchführt, eine große Menge von zweiten Daten in einem Zeitsegment empfängt, in dem die zweiten Daten nicht gesendet werden können, so kann eine große Menge von zu puffernden Daten die Pufferkapazität übersteigen.
-
Im Folgenden wird ein Anweisungsprozess mit Bezug auf 10 beschrieben, der von der Kommunikationsvorrichtung 100 zum Senden von Anweisungsdaten durchgeführt wird. Wie in 10 gezeigt, sendet das Sendemodul 533 Anweisungsdaten in einem Anweisungssegment in dem Anweisungsprozess (Schritt S11). Insbesondere sendet das Sendemodul Anweisungsdaten rund, die die Summe der Zeitdauer des Anweisungssegments und der Zeitdauer des nächsten Zeitsegments als einen bestimmten Wert umfasst, der die Zeit angibt, wann das Senden von Daten auszusetzen ist. Das Sendemodul 533 kann die Anweisungsdaten an die zweite Vorrichtung 120, die nicht mit den TSN-Standards konform ist, senden, ohne die Daten rundzusenden.
-
Das Sendemodul 533 wartet dann in einem Zeitsegment, das von dem Anweisungssegment verschieden ist (Schritt S12). Das Sendemodul 533 wiederholt dann die Verarbeitung in Schritt S11 und den nachfolgenden Schritten. Bei dem Kommunikationssystem 1000, bei dem die Weiterleitungsvorrichtung 130 ausgelassen ist, kann das Sendemodul 533 in der Kommunikationsvorrichtung 100 das Senden der zweiten Daten in dem Zeitfenster T1 durch Senden von Anweisungsdaten an die zweite Vorrichtung 120 aussetzen, wie es in 11 gezeigt ist.
-
Wie oben beschrieben sendet das Sendemodul 533 die Anweisungsdaten in dem Anweisungssegment an die zweite Vorrichtung 120 und die Zeitdauer, die durch die Anweisungsdaten bestimmt ist, ist gleich der Summe der Dauer des Anweisungssegments und der Dauer des Zeitfensters T1, das dem Anweisungssegment direkt nachfolgt. Das den zweiten Daten entsprechende Zeitfenster T2 folgt direkt dem Zeitfenster T1 nach. Das Zeitfenster T1 ist ein Zeitsegment, das einem Datentyp entspricht, der von dem Typ der zweiten Daten verschieden ist. Demnach wird ein Puffern durchgeführt, wenn die zweite Vorrichtung 120 die zweiten Daten in dem Zeitfenster T1 sendet. Die zweite Vorrichtung 120 setzt jedoch das Senden der zweiten Daten in Übereinstimmung mit den Anweisungsdaten in dem Zeitfenster T1 aus und kann die zweiten Daten in dem Zeitfenster T2 senden. Dadurch wird eine übermäßige Last umgangen, die dadurch verursacht wird, dass die zweiten Daten zum Senden in einem geeigneten Zeitsegment in der Vorrichtung, die die zweiten Daten weiterleitet, temporär gehalten werden. Die Kommunikationsvorrichtung kann demnach einen Datenverlust in dem Netzwerk reduzieren, das sowohl eine Kommunikationsvorrichtung mit Zeiteinteilungskommunikationsfähigkeiten, als auch eine Vorrichtung ohne Zeiteinteilungskommunikationsfähigkeiten umfasst.
-
Obwohl das Zeitsegment für die Kommunikation zwischen TSN-konformen Vorrichtungen definiert ist, verwendet die Struktur gemäß der vorliegenden Ausführungsform ein Anweisungssegment, um zweite Daten von Vorrichtungen, die nicht mit den TSN-Standards konform sind, in dem Zeitsegment zu empfangen, das den zweiten Daten entspricht. Die Kommunikationsvorrichtung 100, die ohne Anweisungssegment Anweisungsdaten innerhalb des Zeitsegments vor dem Zeitfenster T1 zusammen mit anderen Daten sendet, kann unter Umständen nicht in einfacher Weise eine vorbestimmte Zeit zum Senden der Anweisungsdaten verwenden. In diesem Fall kann die Zeitspanne, in der die zweite Vorrichtung 120 das Senden von Daten in Übereinstimmung mit den Anweisungsdaten aussetzt, nicht oder nur wenig mit dem Zeitsegment zusammenfallen, in dem das Puffern auftritt, wenn die zweiten Daten gesendet werden.
-
Im Gegensatz dazu verwendet die Struktur gemäß der vorliegenden Ausführungsform ein Anweisungssegment zum Senden von Anweisungsdaten und kann demnach Anweisungsdaten für jedes periodische Anweisungssegment zu einem vorbestimmten Zeitpunkt unabhängig von anderen Daten senden, die gesendet werden.
-
Ausführungsform 2
-
Eine Ausführungsform 2 wird mit Hinblick auf die Unterschiede zur Ausführungsform 1 beschrieben. Dieselben Bezugszeichen bezeichnen die Komponenten, die zu denen in Ausführungsform 1 identisch oder ähnlich sind. In der oben beschriebenen Ausführungsform 1 liegt, wie in 6 gezeigt, der Zeitpunkt, zu dem die zweite Vorrichtung 120 das Senden der zweiten Daten startet, nachdem die zweite Vorrichtung 120 das Senden der zweiten Daten ausgesetzt hat, innerhalb des Zeitfensters T2, das den zweiten Daten entspricht, aber das Senden der zweiten Daten ist in einem anfänglichen Teil des Zeitfensters T2 gesperrt. Insbesondere ist das Senden von Daten ausgesetzt, obwohl die zweiten Daten gesendet werden können. Die vorliegende Ausführungsform unterscheidet sich von der Ausführungsform 1 dahingehend, dass die zweite Vorrichtung 120 die zweiten Daten ab dem Start des Zeitfensters T2 sendet. Bei dem im Folgenden beschriebenen Beispiel wird die Zeitdauer, in der das Senden von Daten ausgesetzt wird, basierend auf einer Sendeverzögerung bestimmt.
-
Der Kommunikator 53 in der Kommunikationsvorrichtung 100 gemäß der vorliegenden Ausführungsform umfasst ein Messmodul 535, das eine Sendeverzögerung von Daten misst, die an die und von der zweiten Vorrichtung 120 gesendet werden, wie es in 12 gezeigt ist.
-
13 zeigt einen Überblick über eine Messung einer Sendeverzögerung, die von dem Messmodul 535 durchgeführt wird. Wie in 13 gezeigt sendet die das Messmodul 535 umfassende Kommunikationsvorrichtung 100 Anfragedaten, die eine Antwort von der zweiten Vorrichtung 120 anfragen, um eine Sendeverzögerung zu messen, zum Zeitpunkt T11 an die zweite Vorrichtung 120. Die Anfragedaten werden von der zweiten Vorrichtung 120 zum Zeitpunkt T12 empfangen.
-
Beim Empfang der Anfragedaten antwortet die zweite Vorrichtung 120 der Kommunikationsvorrichtung 100, indem sie Antwortdaten an die Kommunikationsvorrichtung 100 sendet. Die Antwortdaten sind Informationen, die den Zeitpunkt T12, zu dem die Anfragedaten empfangen wurden, und den Zeitpunkt T13 angeben, zu dem die Antwortdaten gesendet wurden.
-
Wenn die Kommunikationsvorrichtung 100 die Antwortdaten empfängt, berechnet das Messmodul 535 eine Sendeverzögerung D mit der untenstehenden Formel 1 unter Verwendung des Zeitpunkts T11, zu dem die Anfragedaten gesendet wurden, der Zeitpunkte T12 und T13, die von den Antwortdaten angegeben werden, und des Zeitpunkts T 14, zu dem die Antwortdaten empfangen werden.
-
-
Die Anfragedaten und die Antwortdaten können in den entsprechenden Zeitsegmenten gesendet werden.
-
Das Sendemodul 533 berechnet einen bestimmten Wert für den Zeitpunkt, zu dem das Senden von Daten auszusetzen ist, basierend auf der Sendeverzögerung, die von dem Messmodul 535 gemessen wird, und sendet Anweisungsdaten, die den berechneten bestimmten Wert umfassen, an die zweite Vorrichtung 120. Ein Beispiel für diesen bestimmten Wert ist als eine Zeitdauer TL2 in 14 gezeigt. Die Zeitdauer TL2 ist gleich der Differenz, die durch Subtrahieren der Sendeverzögerung D von der Summe der Zeitdauer des Zeitfensters T3, das das Anweisungssegment ist, und der Zeitdauer des Zeitfensters T1 erhalten wird, das das Zeitfenster angrenzend an das Anweisungssegment ist.
-
Das Anweisungssegment ist ein Zeitsegment zum Senden von Anweisungsdaten, in dem keine anderen Datentypen gesendet werden. Die Kommunikationsvorrichtung 100 sendet Anweisungsdaten direkt nach dem Start des Anweisungssegments. Nach dem Empfang der Anweisungsdaten, setzt die zweite Vorrichtung 120 das Senden von Daten für die Zeitdauer TL2 aus, bevor sie die zweiten Daten sendet.
-
Wie oben beschrieben ist die von den Anweisungsdaten bestimmte Zeitdauer gleich der Differenz, die durch Subtrahieren der Sendeverzögerung der Anweisungsdaten von der Summe der Dauer des Anweisungssegments und der Dauer des Zeitsegments angrenzend an das Anweisungssegment erhalten wird. Der letzte Zeitpunkt der Zeitspanne, in der die zweite Vorrichtung 120 das Senden der zweiten Daten aussetzt, fällt mit dem letzten Zeitpunkt des Zeitsegments zusammen, das dem Anweisungssegment nachfolgt und nicht den zweiten Daten entspricht. Dadurch wird der zweiten Vorrichtung 120 ermöglicht, die zweiten Daten nach dem Start des für die zweiten Daten vorgesehenen Zeitsegments sofort zu senden.
-
Die Kommunikationsvorrichtung 100 kann in angemessener Weise die Zeitdauer anpassen, für die das Senden von Daten ausgesetzt wird, indem sie eine von dem Messmodul 535 durchgeführte Messung einer Sendeverzögerung und ein Senden von Anweisungsdaten basierend auf der gemessenen Sendeverzögerung abwechselnd wiederholt. Beispielsweise kann eine solche Zeitdaueranpassung nützlich sein, wenn verschiedene Sendeverzögerungen während einer Tages- und einer Nachtzeit auftreten.
-
Obwohl die von dem Messmodul 535 durchgeführte Messung einer beispielhaften Sendeverzögerung beschrieben ist, ist die Ausführungsform nicht darauf beschränkt. Bei manchen Ausführungsformen kann die Zeitdauer zum Aussetzen des Sendens von Daten basierend auf dem geschätzten Wert einer Sendeverzögerung bestimmt werden, die von dem Nutzer eingegeben wird.
-
Die Dauer des Zeitfensters T3 als das Anweisungssegment kann geringer sein als die Sendeverzögerung der Anweisungsdaten. Beispielsweise können die Anweisungsdaten, wie in 15 gezeigt, in einem Zeitsegment weitergeleitet und empfangen werden, das dem Zeitfenster T3 zum Senden der Anweisungsdaten nachfolgt. In einem Anweisungssegment ist das Senden von jeglichen Datentypen gesperrt, die von den Anweisungsdaten verschieden sind. Die Dauer des Anweisungssegments kann demnach kurz sein. Wenn die Dauer des Anweisungssegments geringer ist als die Sendeverzögerung der Anweisungsdaten, können die ersten Daten von einer TSN-konformen Vorrichtung in einer relativ kurzen Zeit nach dem Senden der Anweisungsdaten von der Kommunikationsvorrichtung 100 gesendet werden.
-
Bei den ersten Daten und den zweiten Daten kann das Senden in einem Zeitsegment abgeschlossen werden, das dem Datentyp entspricht, beziehungsweise das Senden, die Weiterleitung und der Empfang können insbesondere in dem entsprechenden Zeitsegment abgeschlossen werden. Die Ausführungsform ist jedoch nicht darauf beschränkt. Das Zeitfenster T1 zum Senden der ersten Daten kann unter Umständen nicht den Abschluss des Empfangs der ersten Daten umfassen. In ähnlicher Weise kann das Zeitfenster T2 zum Senden der zweiten Daten unter Umständen nicht den Abschluss des Empfangs der zweiten Daten umfassen.
-
Bei dem Beispiel in 15 kann die zweite Vorrichtung 120 die zweiten Daten nach dem Start des Zeitfensters T1 sofort senden, bis die Anweisungsdaten empfangen werden. Dadurch kann ein Durchführen eines Pufferns der Weiterleitungsvorrichtung 130 und der Kommunikationsvorrichtung 100 veranlasst werden. Während einer Zeitspanne nach dem Empfang der Anweisungsdaten setzt die zweite Vorrichtung 120 jedoch das Senden der zweiten Daten aus, wodurch ein Puffern in dieser Zeitspanne verhindert wird. Dadurch wird ein Datenverlust weiter reduziert. Demnach kann die Zeitspanne, in der das Senden der zweiten Daten von der zweiten Vorrichtung 120 in Übereinstimmung mit den Anweisungsdaten ausgesetzt ist, einen Teil des Zeitsegments umfassen, das dem Anweisungssegment direkt nachfolgt. Insbesondere kann die Zeitdauer, die von den Anweisungsdaten bestimmt ist, wenigstens die Zeitdauer zwischen einem Zeitpunkt, ab dem die zweite Vorrichtung 120 das Senden der zweiten Daten aussetzt, und einem Zeitpunkt sein, zu dem wenigstens ein Teil des Zeitsegments vergangen ist, das dem Anweisungssegment direkt nachfolgt und dem Segment für zweite Daten vorangeht.
-
Ausführungsform 3
-
Eine Ausführungsform 3 wird hinsichtlich der Unterschiede zu der Ausführungsform 1 beschrieben. Dieselben Bezugszeichen bezeichnen Komponenten, die zu denen der Ausführungsform 1 identisch oder ähnlich sind. Die vorliegende Ausführungsform unterscheidet sich von der Ausführungsform 1 darin, dass der Zeitpunkt, bei dem das Senden der zweiten Daten von der zweiten Vorrichtung 120 fortgesetzt wird, in dem Zeitsegment umfasst ist, das dem Zeitfenster T2 direkt nachfolgt.
-
In dem in 16 gezeigten Beispiel sendet die Kommunikationsvorrichtung 100 Anweisungsdaten sofort nach dem Start des Zeitfensters T3 und eine von diesen Anweisungsdaten bestimmte Zeitdauer TL3 ist gleich der Dauer des Zeitfensters T1. Bei diesem Beispiel sendet die zweite Vorrichtung 120 die zweiten Daten in dem Zeitfenster T1. Wenn das Senden der zweiten Daten jedoch für den größten Teil des Zeitfensters T1 ausgesetzt ist, verringert sich die Menge von zu puffernden zweiten Daten stark und reduziert den Datenverlust.
-
Demnach kann der Zeitpunkt, zu dem das Senden der zweiten Daten von der zweiten Vorrichtung 120 fortgesetzt wird, wie in den Ausführungsformen 1 und 2 in dem Zeitfenster T2 umfasst sein, oder kann wie in der vorliegenden Ausführungsform in dem Zeitfenster T1 umfasst sein, das dem Zeitfenster T2 direkt vorangeht. Mit anderen Worten kann die von den Anweisungsdaten bestimmte Zeitdauer gleich der Dauer zwischen einem Zeitpunkt, ab dem die zweite Vorrichtung 120 das Senden der zweiten Daten startet, und dem Zeitpunkt sein, der in dem Zeitfenster T2 umfasst ist, wie es in 6 gezeigt ist, oder dem Zeitpunkt sein, der in dem Zeitsegment umfasst ist, der dem Zeitfenster T2 direkt vorangeht, wie es in 16 gezeigt ist.
-
Wenn das Sendemodul 533 in der Kommunikationsvorrichtung 100 die Anweisungsdaten zu dem Zeitpunkt T31 sendet, der dem Ende des Zeitfensters T3 um eine Sendeverzögerung D vorangeht, setzt die zweite Vorrichtung 120, wie in 17 gezeigt, das Senden der zweiten Daten einfach während dem Zeitfenster T1 aus. Der Zeitpunkt T31 kann basierend auf der Sendeverzögerung bestimmt werden, die von dem Messmodul 535 in Ausführungsform 2 gemessen wird, oder der Zeitpunkt T31 kann anhand eines Parameters bestimmt werden, der von dem Nutzer eingegeben wird.
-
Ausführungsform 4
-
Eine Ausführungsform 4 wird hinsichtlich der Unterschiede zur Ausführungsform 1 beschrieben. Dieselben Bezugszeichen bezeichnen die Komponenten, die zu denen der Ausführungsform 1 identisch oder ähnlich sind. Die vorliegende Ausführungsform unterscheidet sich von der Ausführungsform 1 darin, dass die zweite Vorrichtung 120 das Senden der zweiten Daten in mehreren aufeinander folgenden Zeitsegmenten auszusetzen hat.
-
18 ist ein Diagramm, das eine von den Anweisungsdaten bestimmte Zeitdauer TL4 in der vorliegenden Ausführungsform zeigt. Die Zeitdauer TL4 ist eine Dauer mehrerer aufeinanderfolgender Zeitsegmente, die ein Zeitfenster T1-1, das dem Zeitfenster T3 als das Anweisungssegment direkt nachfolgt, bis zu einem Zeitfenster T1-N umfassen, das dem Zeitfenster T2 als das Zeitfenster direkt nachfolgt, das den zweiten Daten entspricht. In dem Zeitfenster T1-N werden Daten zum zyklischen Senden, wie in 19 gezeigt, gesendet. Zyklisches Senden ist ein Kommunikationsschema zum Synchronisieren von Daten, die in dem in jeder Vorrichtung umfassten Speicher gespeichert sind, in jedem aufeinanderfolgenden Zyklus, indem die Kommunikation in Zyklen durchgeführt wird, um gemeinsame Daten in dem Speicher zu speichern.
-
Wie oben beschrieben kann die von den Anweisungsdaten bestimmte Zeitdauer durch die Dauer der mehreren Zeitsegmente definiert sein, in denen die zweite Vorrichtung 120 das Senden der zweiten Daten auszusetzen hat. Insbesondere kann die von den Anweisungsdaten bestimmte Zeitdauer gleich der Summe der Dauern der mehreren aufeinanderfolgenden Zeitsegmente ab dem Zeitfenster T1-1, das dem Anweisungssegment direkt nachfolgt, bis zu dem Zeitfenster T1-N sein, das dem Zeitfenster T1 direkt nachfolgt, in dem das Senden der zweiten Daten erlaubt ist. Bei den oben beschriebenen Anweisungsdaten setzt die zweite Vorrichtung 120 das Senden der zweiten Daten in dem Zeitsegment aus, das einem Datentyp entspricht, der von den zweiten Daten verschieden ist, und sendet die zweiten Daten in dem Zeitsegment, das den zweiten Daten entspricht.
-
Die Zeitdauer, die eine Sendeverzögerung wiedergibt, kann in der vorliegenden Ausführungsform wie in der oben beschriebenen Ausführungsform 2 bestimmt sein. Insbesondere kann die von den Anweisungsdaten bestimmte Zeitdauer gleich der Differenz sein, die durch Subtrahieren der Sendeverzögerung von der Dauer der mehreren aufeinanderfolgenden Zeitsegmente erhalten wird. Wie oben in Ausführungsform 3 beschrieben, kann die von den Anweisungsdaten bestimmte Zeitdauer gleich der Dauer der mehreren aufeinanderfolgenden Zeitsegmente zwischen dem Anweisungssegment und dem Zeitfenster T2 sein. Die Zeitdauer, für die die zweite Vorrichtung 120 das Senden von Daten auszusetzen hat, kann größer oder gleich der Dauer einer Zeitspanne ohne zweite Daten und kleiner oder gleich der Summe sein, die durch Addieren der Dauer des Anweisungssegments zu der Dauer der Zeitspanne ohne zweite Daten erhalten wird. Die Zeitspanne ohne zweite Daten kann ein einzelnes Zeitsegment oder mehrere aufeinanderfolgende Zeitsegmente umfassen, die nicht den zweiten Daten entsprechen.
-
Ausführungsform 5
-
Eine Ausführungsform 5 wird hinsichtlich der Unterschiede zur Ausführungsform 4 beschrieben. Dieselben Bezugszeichen bezeichnen Komponenten, die zu denen der Ausführungsform 4 identisch oder ähnlich sind. Die vorliegende Ausführungsform unterscheidet sich von der Ausführungsform 4 darin, dass das Zeitsegment, das dem Typ der zweiten Daten entspricht, in der Zeitspanne umfasst ist, in der die zweite Vorrichtung 120 das Senden von Daten aussetzt.
-
20 ist ein Blockdiagramm eines Kommunikationssystems 1000 gemäß der vorliegenden Ausführungsform. Das Kommunikationssystem 1000 umfasst eine dritte Vorrichtung 130a, die eine nicht TSN-konforme Vorrichtung ist. Die dritte Vorrichtung 130a kann, ähnlich zur Vorrichtung 120, die zweiten Daten unabhängig von jeglichen Zeitsegmenten senden. Die von der dritten Vorrichtung 130a gesendeten zweiten Daten können jedoch ein Puffern erlauben.
-
Wie in 21 gezeigt, folgt dem Anweisungssegment ein Zeitfenster T1-1, das dem Typ der ersten Daten entspricht, ein Zeitfenster T2-1, das dem Typ der zweiten Daten entspricht, ein dem Typ der ersten Daten entsprechendes T1-N und ein dem Typ der zweiten Daten entsprechendes T2-N in dieser Reihenfolge nach. Die Kommunikationsvorrichtung 100 sendet dann die Anweisungsdaten, die die Zeitdauer TL4 bestimmen, in dem Zeitfenster T3 an die zweite Vorrichtung 120. In 21 ist die dritte Vorrichtung 130a nicht gezeigt.
-
Das Zeitfenster T2-1 und das Zeitfenster T2-N sind Zeitsegmente, die den zweiten Daten entsprechen. In diesen Zeitsegmenten wird das Senden der zweiten Daten von der zweiten Vorrichtung 120 ausgesetzt und das Senden der zweiten Daten von der dritten Vorrichtung 130a wird nicht ausgesetzt.
-
Obwohl die Zeitspanne, in der das Senden der zweiten Daten von der zweiten Vorrichtung 120 ausgesetzt wird, ein Zeitsegment umfasst, das dem Typ der zweiten Daten entspricht, kann ein durch Senden der zweiten Daten von der zweiten Vorrichtung 120 verursachtes Puffern, wie oben beschrieben, den Datenverlust reduzieren. Demnach können alle Zeitspannen, die dem Anweisungssegment nachfolgen und dem Zeitsegment vorangehen, in dem das Senden der zweiten Daten von der zweiten Vorrichtung 120 erlaubt ist, unter Umständen keine Zeitsegmente sein, die einem Datentyp entsprechen, der von dem Typ der zweiten Daten verschieden ist. Insbesondere kann wenigstens ein Zeitsegment, das einem Datentyp entspricht, der von dem Typ der zweiten Daten verschieden ist, dem Anweisungssegment nachfolgen und dem Zeitsegment vorangehen, das dem Typ der zweiten Daten entspricht.
-
Das Zeitfenster T1-1 und das Zeitfenster T1-N können bei dem in 21 gezeigten Beispiel ausgelassen werden. Alle Zeitspannen, die dem Anweisungssegment nachfolgen und dem Zeitsegment vorangehen, in dem das Senden der zweiten Daten von der zweiten Vorrichtung 120 erlaubt ist, können Zeitsegmente sein, die einem Typ der zweiten Daten entsprechen.
-
Obwohl das Kommunikationssystem 1000 bei dem in 22 gezeigten Beispiel zusätzlich zu der zweiten Vorrichtung 120 eine nicht TSN-konforme Vorrichtung umfasst, wird das Senden der zweiten Daten in den Zeitfenstern T4 und T1 ausgesetzt, die dem Zeitfenster T3 als das Anweisungssegment nachfolgen.
-
Das Zeitfenster T1 ist ein Zeitsegment für ein Synchronisierungsprotokoll, wie in den obigen Ausführungsformen. Das Zeitfenster T4 entspricht einer IP-Kommunikation. Das Zeitfenster T4 ist ein Zeitsegment, das kein Puffern basierend auf der Entsprechung zwischen dem Zeitsegment und dem Kommunikationstyp einbezieht, sondern ist ein Zeitsegment, in dem das Senden von Daten von der zweiten Vorrichtung 120 nicht vorgesehen ist. In einem solchen Zeitsegment wird die IP-Kommunikation zwischen TSN-konformen Vorrichtungen gegenüber zweiten Daten bevorzugt, die von der zweiten Vorrichtung 120 gesendet werden.
-
Obwohl oben eine oder mehrere Ausführungsformen der vorliegenden Offenbarung beschrieben wurden, ist die vorliegende Offenbarung nicht auf die obigen Ausführungsformen beschränkt.
-
Bei den oben beschriebenen Ausführungsformen sind beispielsweise das Weiterleitungsmodul 532 und das Kommunikationsmodul 534 getrennte Komponenten, aber die Ausführungsformen sind nicht darauf beschränkt. Das Kommunikationsmodul 534 kann als das Weiterleitungsmodul 532 fungieren.
-
Die Funktionen der Kommunikationsvorrichtung 100 können entweder durch dedizierte Hardware, oder ein herkömmliches Computersystem umgesetzt sein.
-
Beispielsweise kann das Programm P1, das durch den Prozessor 31 ausführbar ist, zum Vertrieb in einem nicht-flüchtigen computerlesbaren Speichermedium gespeichert sein. Das Programm P1 ist auf einem Computer installiert, um eine Vorrichtung bereitzustellen, die die oben beschriebene Verarbeitung durchführt. Beispiele eines solchen nicht-flüchtigen Speichermediums umfassen eine Diskette, einen Compact Disk Read-Only-Memory (CD-ROM), eine Digital Versatile Disk (DVD) und eine Magneto-Optical Disk (MO-Disk).
-
Das Programm P1 kann in einer Speichervorrichtung gespeichert sein, die in einem Server in einem Kommunikationsnetzwerk umfasst ist, wie typischerweise das Internet, und kann beispielsweise zum Herunterladen auf einen Computer mit einer Trägerwelle überlagert sein.
-
Die oben beschriebene Verarbeitung kann auch durch Aktivieren und Ausführen des Programms P1 durchgeführt werden, während dieses über ein Kommunikationsnetzwerk übertragen wird.
-
Die oben beschriebene Verarbeitung kann gänzlich oder teilweise durch Ausführen des Programms P1 auf einer Server-Vorrichtung durchgeführt werden, während ein Computer Informationen zu der Verarbeitung über ein Kommunikationsnetzwerk sendet und empfängt.
-
Bei dem System mit den obigen Funktionen, das teilweise von einem Betriebssystem (OS) oder durch Zusammenarbeit zwischen dem OS und Anwendungen umsetzbar ist, können Teile, die von Anwendungen ausgeführt werden, die von dem OS verschieden sind, in einem nicht-flüchtigen Speichermedium gespeichert sein, das vertrieben wird, oder kann auf den Computer heruntergeladen werden.
-
Mittel zum Umsetzen der Funktionen der Kommunikationsvorrichtung 100 sind nicht auf Software beschränkt und können teilweise oder gänzlich durch dedizierte Hardware umgesetzt sein, die eine Schaltung umfasst.
-
Das Vorangehende beschreibt einige Ausführungsformen zu erläuternden Zwecken. Obwohl die vorangehende Diskussion bestimmte Ausführungsformen vorstellt, wird der Fachmann erkennen, dass Änderungen in Form und Detail angestellt werden können, ohne von dem breiteren Gedanken und Umfang der Erfindung abzuweichen. Dementsprechend sind die Beschreibung und die Zeichnungen in einem veranschaulichenden Sinne statt eines beschränkenden Sinnes zu verstehen. Diese detaillierte Beschreibung ist demnach nicht in einem beschränkenden Sinn zu verstehen und der Umfang der Erfindung ist nur durch die beigefügten Ansprüche definiert, zusammen mit der gesamten Breite von Äquivalenten, die in den Ansprüche umfasst sind.
-
Industrielle Anwendbarkeit
-
Die vorliegende Offenbarung ist auf ein Kommunikationssystem anwendbar, in dem Vorrichtungen miteinander in Zeitsegmenten kommunizieren, die durch eine Zeit definiert sind, die zwischen den Vorrichtungen geteilt wird.
-
Bezugszeichenliste
-
- 1000
- Kommunikationssystem
- 100
- Kommunikationsvorrichtung
- 110
- erste Vorrichtung
- 111,121,131
- Speicher
- 112, 122, 132
- Kommunikator
- 120
- zweite Vorrichtung
- 130
- Weiterleitungsvorrichtung
- 130a
- dritte Vorrichtung
- 21, 22
- Kommunikationskanal
- 30
- Netzwerkvorrichtung
- 31
- Prozessor
- 32
- Hauptspeicher
- 33
- Hilfsspeicher
- 34
- Taktgeber
- 35
- Eingabevorrichtung
- 36
- Ausgabevorrichtung
- 37
- Kommunikator
- 38
- interner Bus
- 41, 42
- Zeitspanne
- 51
- Steuerung
- 52
- Speicher
- 53
- Kommunikator
- 531
- Empfangsmodul
- 532
- Weiterleitungsmodul
- 533
- Sendemodul
- 534
- Kommunikationsmodul
- 535
- Messmodul
- TS1, TS2, T1 bis T4, T1-1, T1-N, T2-N
- Zeitfenster
- T11 bis T41, T31
- Zeitpunkt
- TL1 bis TL4
- Zeitdauer
- P1
- Programm
-
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 Patentliteratur
-