DE102014105207B4 - Verfahren zum Betreiben eines Kommunikationsnetzwerks und Kommunikationsnetzwerk - Google Patents

Verfahren zum Betreiben eines Kommunikationsnetzwerks und Kommunikationsnetzwerk Download PDF

Info

Publication number
DE102014105207B4
DE102014105207B4 DE102014105207.2A DE102014105207A DE102014105207B4 DE 102014105207 B4 DE102014105207 B4 DE 102014105207B4 DE 102014105207 A DE102014105207 A DE 102014105207A DE 102014105207 B4 DE102014105207 B4 DE 102014105207B4
Authority
DE
Germany
Prior art keywords
data
telegram
subscriber
field
data field
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.)
Active
Application number
DE102014105207.2A
Other languages
English (en)
Other versions
DE102014105207A1 (de
Inventor
Thomas Rettig
Hans Beckhoff
Thorsten Bunte
Holger Büttner
Erik Vonnahme
Dirk Janssen
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.)
Beckhoff Automation GmbH and Co KG
Original Assignee
Beckhoff Automation GmbH and Co KG
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 Beckhoff Automation GmbH and Co KG filed Critical Beckhoff Automation GmbH and Co KG
Priority to DE102014105207.2A priority Critical patent/DE102014105207B4/de
Priority to US14/684,169 priority patent/US10069641B2/en
Publication of DE102014105207A1 publication Critical patent/DE102014105207A1/de
Application granted granted Critical
Publication of DE102014105207B4 publication Critical patent/DE102014105207B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1854Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with non-centralised forwarding system, e.g. chaincast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1886Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with traffic restrictions for efficiency improvement, e.g. involving subnets or subdomains
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/06Message adaptation to terminal or network requirements
    • H04L51/063Content adaptation, e.g. replacement of unsuitable content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5069Address allocation for group communication, multicast communication or broadcast communication

Landscapes

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

Abstract

Verfahren zum Betreiben eines Kommunikationsnetzwerks (301, 401) umfassend einen Master-Teilnehmer (305) und mehrere Slave-Teilnehmer (303a, b, c, d), die über eine Datenleitung (311) miteinander verbunden sind, wobei der Master-Teilnehmer (305) Telegramme auf der Datenleitung (311) versendet, die über die Datenleitung (311) von einem Slave-Teilnehmer zum nächsten Slave-Teilnehmer weitergeleitet werden, wobei ein Telegramm (101, 201) wenigstens ein Datagramm (205) mit einem Kopfabschnitt (209) und einem Datenfeld (217) umfasst, wobei der Kopfabschnitt (209) ein Kommandofeld (211) und zwei Adressfelder (213, 215) aufweist, wobei das eine Adressfeld (213) eine Adresse eines ersten Slave-Teilnehmers und das andere Adressfeld (215) eine Adresse eines zweiten Slave-Teilnehmers umfasst, wobei das Kommandofeld (211) ein Kommando aufweist, das dem ersten Slave-Teilnehmer befiehlt, Daten aus dem Datenfeld (217) zu lesen, und das dem zweiten Teilnehmer befiehlt, Daten in das Datenfeld (217) zu schreiben, wobei der erste Slave-Teilnehmer (303a, b, c, d) bei einem Empfang des Telegramms (201) Daten aus dem Datenfeld (217) des Telegramms liest und nach dem Auslesen das Telegramm (201) weiterleitet, und wobei der zweite Slave-Teilnehmer (303a, b, c, d) bei einem Empfang des vom erste Slave-Teilnehmer weitergeleiteten Telegramms (201) Daten in das Datenfeld (217) schreibt. Die Erfindung betrifft weiter ein zugehöriges Kommunikationsnetzwerk.

Description

  • Die Erfindung betrifft ein Verfahren zum Betreiben eines Kommunikationsnetzwerks umfassend mehrere Teilnehmer. Die Erfindung betrifft weiter ein zugehöriges Kommunikationsnetzwerk.
  • Um azyklische Kommunikation in einem Ethernet-Netzwerk, beispielsweise in einem EtherCAT-Netzwerk gemäß IEC-Norm „IEC 61158” so zu realisieren, dass die zyklische Echtzeitkommunikation nicht gestört wird, gibt es üblicherweise zwei Möglichkeiten. Bei der Möglichkeit 1 kontrolliert ein Master die komplette azyklische Kommunikation, das heißt, dass auch die azyklischen Telegramme, die von einem Slave zum Master übertragen werden müssen, vom Master abgeholt werden (zum Beispiel bei einem aus dem Stand der Technik bekannten EtherCAT-Kommunikationsnetzwerk). Bei der zweiten Möglichkeit werden Phasen festgelegt, in denen azyklische Kommunikation stattfinden darf (zum Beispiel bei einem ebenfalls aus dem Stand der Technik bekannten PROFINET IRT-Kommunikationsnetzwerk). Bei der Möglichkeit 1 kann während der Übertragung der azyklischen Telegramme die Leitung nicht in beiden Richtungen benutzt werden, da entweder ein azyklisches Telegramm zum Slave übertragen (Write, in dem Fall ist das zurückkommende Telegramm ohne Inhalt) oder vom Slave gelesen (Read, in dem Fall ist das hinkommende Telegramm unbenutzt) wird. Bei der Möglichkeit 2 können leicht Überlastsituationen auftreten, wenn mehrere Slaves gleichzeitig Telegramme zu senden haben. Außerdem ist die Konfiguration der verschiedenen Phasen aufwändig.
  • Bei einer zyklischen Kommunikation wird die Datenübertragung in wiederkehrenden, gleich langen Zeitabschnitten durchgeführt, den Zyklen. Zyklische Kommunikation tritt üblicherweise in jedem Zyklus immer wieder auf dieselbe Art und Weise auf, zum Beispiel für den Prozeßdatenaustausch (Eingänge/Ausgänge), aber auch zur Statusüberwachung. Die ausgetauschte Datenmenge zwischen einzelnen Teilnehmern ist jeweils eher gering, es liegen in der Regel Echtzeitanforderungen vor.
  • Azyklische Kommunikation tritt in der Regel nicht in jedem Zyklus auf, sondern üblicherweise nur nach Bedarf. Die Datenmenge ist dafür häufig größer als bei den Prozeßdaten, die Übertragung hat keine oder nur geringe Echtzeitanforderungen. Die größere Datenmenge muss häufig in kleineren Einheiten zwischen den Zyklischen Daten übertragen werden, um deren Echtzeitanforderungen nicht zu beeinträchtigen.
  • Aus der DE 10 2004 068 213 ist ein Master-Slave-Steuerungssystem bekannt, bei dem die Kommunikation so erfolgt, dass vom Master versandte Bustelegramme nacheinander durch einzelnen Slave-Stationen durchlaufen. Wenn das Bustelegramm an der letzten Slave-Station angekommen ist, nimmt es dann den gleichen Weg wieder zurück zum Master. Auf einem Hinweg können die einzelnen Slave-Stationen Sendedaten in für sie reservierte Datenfelder im Bustelegramm einschreiben. Auf dem Rückweg können die Slave-Stationen dann die Daten aus anderen Datenfeldern im Bustelegramm auslesen.
  • Aus der EP 1 748 338 A1 ist Master-Slave-Bussystem, bei dem ein Slave-Teilnehmer beim Durchlauf eines Bustelegramm zum Datenaustausch das vorderste Datensegment abtrennt und am Ende des Bustelegramms dafür eine weiteres Datensegment anfügt.
  • Die US 2011/0205886 A1 zeigt ein Master-Slave-Kommunikationsnetzwerk auf EtherCAT-Basis.
  • Die der Erfindung zugrunde liegende Aufgabe kann daher darin gesehen werden, ein verbessertes Verfahren zum Betreiben eines Kommunikationsnetzwerks umfassend mehrere Teilnehmer bereitzustellen, das die bekannten Nachteile überwindet.
  • Die der Erfindung zugrunde liegende Aufgabe kann des Weiteren darin gesehen werden, ein entsprechendes Kommunikationsnetzwerk bereitzustellen.
  • Diese Aufgaben werden mittels des jeweiligen Gegenstands der unabhängigen Ansprüche gelöst. Vorteilhafte Ausgestaltungen der Erfindung sind Gegenstand von jeweils abhängigen Unteransprüchen.
  • Nach einem Aspekt wird ein Verfahren zum Betreiben eines Kommunikationsnetzwerks bereitgestellt, umfassend einen Master-Teilnehmer und mehrere Slave-Teilnehmer, die über eine Datenleitung miteinander verbunden sind, wobei der Master-Teilnehmer Telegramme auf der Datenleitung versendet, die über die Datenleitung von einem Slave-Teilnehmer zum nächsten Slave-Teilnehmer weitergeleitet werden, wobei ein Telegramm wenigstens ein Datagramm mit einem Kopfabschnitt und einem Datenfeld umfasst, wobei der Kopfabschnitt ein Kommandofeld und zwei Adressfelder aufweist, wobei das eine Adressfeld eine Adresse eines ersten Slave-Teilnehmers und das andere Adressfeld eine Adresse eines zweiten Slave-Teilnehmers umfasst, wobei das Kommandofeld ein Kommando aufweist, das dem ersten Slave-Teilnehmer befiehlt, Daten aus dem Datenfeld zu lesen, und das dem zweiten Teilnehmer befiehlt, Daten in das Datenfeld zu schreiben, wobei der erste Slave-Teilnehmer bei einem Empfang des Telegramms Daten aus dem Datenfeld des Telegramms liest und nach dem Auslesen das Telegramm weiterleitet, und wobei der zweite Slave-Teilnehmer bei einem Empfang des vom erste Slave-Teilnehmer weitergeleiteten Telegramms Daten in das Datenfeld schreibt.
  • Nach noch einem Aspekt wird ein Kommunikationsnetzwerk bereitgestellt, umfassend einen Master-Teilnehmer und mehrere Slave-Teilnehmer, die über eine Datenleitung miteinander verbunden sind, wobei der Master-Teilnehmer ausgelegt ist, Telegramme auf der Datenleitung zu versenden, die über die Datenleitung von einem Slave-Teilnehmer zum nächsten Slave-Teilnehmer weitergeleitet werden, wobei ein Telegramm wenigstens ein Datagramm mit einem Kopfabschnitt und einem Datenfeld umfasst, wobei der Kopfabschnitt ein Kommandofeld und zwei Adressfelder aufweist, wobei das eine Adressfeld eine Adresse eines ersten Slave-Teilnehmers und das andere Adressfeld eine Adresse eines zweiten Slave-Teilnehmers umfasst, wobei das Kommandofeld ein Kommando aufweist, das dem ersten Slave-Teilnehmer befiehlt, Daten aus dem Datenfeld zu lesen, und das dem zweiten Teilnehmer befiehlt, Daten in das Datenfeld zu schreiben, wobei der erste Slave-Teilnehmer ausgelegt ist, bei einem Empfang des Telegramms Daten aus dem Datenfeld des Telegramms auszulesen und nach dem Auslesen das Telegramm weiterzuleiten, und wobei der zweite Slave-Teilnehmer ausgelegt ist, bei einem Empfang des vom erste Slave-Teilnehmer weitergeleiteten Telegramms Daten in das Datenfeld zu schreiben.
  • Die Erfindung umfasst also insbesondere den Gedanken, ein gemeinsames Datenfeld in einem Telegramm vorzusehen, in welchen Teilnehmer des Kommunikationsnetzwerks Daten sowohl hineinschreiben als auch Daten aus dem Datenfeld auslesen können. Dadurch ist insbesondere in vorteilhafter Weise eine effiziente Nutzung des Datenfelds gegeben. Denn so können beispielsweise die Teilnehmer mittels des Datenfelds Daten untereinander austauschen. So kann ein Teilnehmer Daten in das Datenfeld reinschreiben, die von einem anderen Teilnehmer ausgelesen werden. Den Teilnehmern steht somit in vorteilhafter Weise ein gemeinsames Datenfeld für einen Austausch von Daten zur Verfügung. Das Telegramm kann somit stets genutzt werden unabhängig davon, ob es von einem Master, der insbesondere auch ein Teilnehmer des Kommunikationsnetzwerks ist, an die Teilnehmer, also die Slaves, gesendet wird oder ob es von einem Slave an den Master gesendet wird. Stets kann das Telegramm genutzt werden. Dies im Gegensatz zum bekannten Stand der Technik, in dem abhängig von einem Schreib- oder Lesezugriff auf die Teilnehmer das Telegramm entweder auf dem Weg vom Master oder auf dem Weg zurück zum Master ungenutzt bleibt.
  • Erfindungsgemäß ist vorgesehen, dass das Telegramm mehrere Adressfelder mit zugeordneten Adressen der Teilnehmer aufweist, die Daten aus dem Datenfeld lesen oder in das Datenfeld schreiben sollen. Dadurch wird insbesondere der technische Effekt bewirkt, dass bekannt ist, welcher Teilnehmer Daten aus dem Datenfeld lesen soll und welcher Teilnehmer Daten in das Datenfeld hineinschreiben soll. Somit weiß jeder Teilnehmer, wenn er das Telegramm empfängt, ob er Daten in das Datenfeld schreiben oder Daten aus dem Datenfeld lesen soll. Das heißt also insbesondere, dass die Adressfelder eine Kennung, beispielsweise ein Flag, aufweisen, die anzeigt, ob der Teilnehmer, dem die Adresse des Adressfelds zugeordnet ist, Daten aus dem Datenfeld lesen oder Daten in das Datenfeld schreiben soll. Insbesondere kann ein Adressfeld ein Broadcastflag und/oder eine Gruppenadresse umfassen, das respektive die anzeigt, dass das Telegramm von denjenigen Teilnehmern, die von der Gruppenadresse oder dem Broadcastflag umfasst oder adressiert sind, bearbeitet (Lesen von Daten aus dem Datenfeld und/oder Schreiben von Daten in das Datenfeld) werden soll.
  • In einer weiteren Ausführungsform kann vorgesehen sein, dass das Telegramm zumindest einen Zähler aufweist, der beim Lesen aus dem und/oder beim Schreiben in das Datenfeld inkrementiert (also hochgezählt) wird. Dadurch wird beispielsweise der technische Effekt bewirkt, dass ein Protokoll über einen erfolgreichen Lesevorgang und/oder über ein erfolgreichen Schreibvorgang geführt wird, so dass sich auch nachträglich jederzeit feststellen lässt, wie viele Schreibvorgänge und/oder Lesevorgänge durchgeführt wurden. Ein solcher Zähler kann beispielsweise auf Englisch als ein „Working Counter”, also als ein Arbeitszähler, bezeichnet werden. Der Zähler wird insbesondere nur inkrementiert, wenn der Lesevorgang und/oder der Schreibvorgang erfolgreich durchgeführt wurden. Der Zähler für Lesevorgänge kann insbesondere als ein Lesezähler bezeichnet werden. Der Zähler für Schreibvorgänge kann beispielsweise als ein Schreibzähler bezeichnet werden. Wenn nur ein Zähler vorgesehen ist, kann dieser insbesondere als ein Schreib-/Lesezähler bezeichnet werden.
  • Nach einer weiteren Ausführungsform kann vorgesehen sein, dass das Telegramm zwei Zähler aufweist, wobei der eine Zähler ausschließlich beim Lesen aus dem Datenfeld und der andere Zähler ausschließlich beim Schreiben in das Datenfeld inkrementiert wird. Dadurch wird beispielsweise der technische Effekt bewirkt, dass ein noch genaueres Protokoll über erfolgreiche Schreibvorgänge und/oder Lesevorgänge geführt werden kann, welches besonders einfach auszulesen. Denn aufgrund der beiden Zähler steht unmittelbar die Information zur Verfügung, wie viele Schreibvorgänge und wie viele Lesevorgänge durchgeführt wurden.
  • Gemäß einer anderen Ausführungsform kann vorgesehen sein, dass abhängig davon, ob gelesen oder geschrieben wird, mit unterschiedlichen Inkrementen inkrementiert wird. Dadurch wird insbesondere der technische Vorteil bewirkt, dass beispielsweise nur ein Zähler benötigt wird. Denn aus dem Zählerwert kann aufgrund der unterschiedlichen Inkremente rückgerechnet werden, wie viele Schreibvorgänge und wie viele Lesevorgänge durchgeführt wurden. Bei zwei Zählern wird insbesondere der technische Effekt bewirkt, dass allein die Angabe des Zählerwerts reicht, um festzustellen, ob es sich bei dem entsprechenden Zähler um den Zähler für Schreibvorgänge oder um den Zähler für Lesevorgänge handelt. Der Zähler (Lesezähler oder Schreib-/Lesezähler) wird also bei einem Lesevorgang um einen ersten Inkrementen inkrementiert, also hochgezählt. Bei einem Schreibvorgang wird der Zähler (Schreibzähler oder Schreib-/Lesezähler) um einen zweiten Inkrementen inkrementiert, also hochgezählt. Der erste Inkrement und der zweite Inkrement sind unterschiedlich.
  • In einer weiteren Ausführungsform kann vorgesehen sein, dass bei einem Schreiben von Daten in das Datenfeld die zu schreibenden Daten mit im Datenfeld bereits vorhandenen Daten verknüpft werden. Dadurch wird beispielsweise der technische Effekt bewirkt, dass weitere Daten in das Datenfeld geschrieben werden können, obwohl bereits Daten in dem Datenfeld vorhanden sind. Die Verknüpfung kann zum Beispiel eine Veroderung der zu schreibenden Daten mit den bereits vorhandenen Daten umfassen. Insbesondere kann die Verknüpfung auch andere logische und/oder arithmetische Operationen und/oder beliebige Kombinationen zwischen logischen und arithmetischen Operationen zwischen den zu schreibenden Daten und den bereits vorhandenen Daten umfassen. Die logische Operation kann beispielsweise ein logisches UND umfassen, um zum Beispiel in vorteilhafter Weise zu ermitteln, ob alle Teilnehmer im selben Zustand sind. Die arithmetische Operation kann beispielsweise eine arithmetische SUMME umfassen, um zum Beispiel in vorteilhafter Weise Zähler, insbesondere Fehlerzähler, zu einem Gesamtzählerwert, insbesondere zu einem Gesamtfehlerwert, zusammenzuziehen oder zusammenzuführen.
  • Gemäß einer anderen Ausführungsform respektive einem anderen Aspekt kann vorgesehen sein, dass
    • – das Telegramm von einem ersten Teilnehmer empfangen wird,
    • – welcher Daten aus dem Datenfeld ausliest, so dass das Datenfeld nach dem Lesen leer ist, wobei
    • – der erste Teilnehmer nach dem Auslesen das Telegramm mit dem leeren Datenfeld weitersendet, wobei
    • – das Telegramm mit dem leeren Datenfeld von einem zweiten Teilnehmer empfangen wird, welcher Daten in das leere Datenfeld schreibt.
  • Dadurch wird insbesondere der technische Effekt bewirkt, dass mit einem Telegramm effizient ein Lesevorgang bei einem Teilnehmer und ein Schreibvorgang bei einem zweiten Teilnehmer vorgenommen werden kann, wobei hierfür keine Konfiguration von Phasen, in denen eine azyklische Kommunikation vorgesehen ist, notwendig ist, und dass der Master bei jedem neuen Senden des Telegramms entscheiden kann, welche Teilnehmer des Kommunikationsnetzwerks er adressieren möchte. Durch das leere Datenfeld steht dem zweiten Teilnehmer der gesamte Speicherplatz zur Verfügung, um Daten in das Datenfeld zu schreiben. Da bei einem leeren Datenfeld keine Verknüpfung von zu schreibenden Daten mit bereits vorhandenen Daten durchgeführt werden muss, werden somit eine Bearbeitungszeit und ein Rechenaufwand verringert. Das Telegramm kann somit in vorteilhafter Weise nach dem Schreiben der Daten in das Datenfeld schnell und mit einer geringeren Verzögerung relativ zu einer Bearbeitung umfassend eine Verknüpfung weitergeleitet werden. „Leer” im Sinne der vorliegenden Erfindung kann beispielsweise bedeuten, dass das Datenfeld keinen Inhalt hat. „Leer” im Sinne der vorliegenden Erfindung kann beispielsweise bedeuten, dass das Datenfeld eine logische Null (0) als einzigen Inhalt hat.
  • Nach einer Ausführungsform kann vorgesehen sein, dass ein Master das Telegramm an einen Teilnehmer, insbesondere den ersten Teilnehmer oder den zweiten Teilnehmer, sendet.
  • In einer Ausführungsform kann vorgesehen sein, dass die Teilnehmer ein empfangenes Telegramm zum nächsten Teilnehmer weiterleiten.
  • In einer weiteren Ausführungsform kann vorgesehen sein, dass der Teilnehmer, insbesondere der erste Teilnehmer oder der zweite Teilnehmer, das Telegramm an einen weiteren Teilnehmer, insbesondere den zweiten Teilnehmer oder den ersten Teilnehmer, sendet.
  • In einer anderen Ausführungsform kann vorgesehen sein, dass der Teilnehmer, insbesondere der erste Teilnehmer oder der zweite Teilnehmer, das Telegramm an den Master sendet.
  • Sofern nach einer Ausführungsform ein Datenaustausch mit dem Telegramm zwischen den Teilnehmern nur in eine Richtung (zum Beispiel eine Hin- oder eine Rückrichtung; Hinrichtung oder Hinweg ist die Richtung vom Master zum Teilnehmer, Rückrichtung oder Rückweg ist die Richtung vom Teilnehmer zum Master) erfolgen oder durchgeführt werden kann, so ist insbesondere vorgesehen, dass ein Teilnehmer (zum Beispiel der erste Teilnehmer), der Daten aus dem Datenfeld auslesen soll, vor dem Teilnehmer (zum Beispiel dem zweiten Teilnehmer) bezogen auf eine Datenaustauschrichtung oder eine Laufrichtung des Telegramms liegt, der Daten in das Datenfeld hineinschreiben soll. Denn wenn keine Verknüpfung durchgeführt werden soll, so muss das Datenfeld erst leer sein, bevor wieder Daten in das Datenfeld hineingeschrieben werden können. Somit müssen zuerst die Daten aus dem Datenfeld mittels eines Teilnehmers (zum Beispiel erster Teilnehmer) gelesen werden, bevor Daten von einem weiteren Teilnehmer (zum Beispiel zweiter Teilnehmer) in das Datenfeld geschrieben werden können. In dieser Ausführungsform verläuft eine Datenleitung vom Teilnehmer zurück zum Master nicht mehr durch die Teilnehmer, so dass diese auf dem Rückweg des Telegramms das Telegramm nicht mehr empfangen und bearbeiten können.
  • Sofern nach einer Ausführungsform ein Datenaustausch mit dem Telegramm zwischen den Teilnehmern in beiden Richtungen (also Hin- und Rückrichtung) erfolgen oder durchgeführt werden kann, so kann insbesondere vorgesehen sein, dass eine Positionierung eines Teilnehmers (zum Beispiel der erste Teilnehmer), der lesen soll, und eines Teilnehmers (zum Beispiel der zweite Teilnehmer), der schreiben soll, beliebig ist. Denn so kann das Auslesen der Daten aus dem Datenfeld auf der Hinrichtung oder auf dem Hinweg, also die Richtung vom Master in Richtung Teilnehmer, durchgeführt werden. Das Schreiben von Daten in das Datenfeld kann auf der Rückrichtung oder auf dem Rückweg, also die Richtung vom letzten Teilnehmer des Kommunikationsnetzwerks zurück zum Master, durchgeführt werden. In dieser Ausführungsform verläuft eine Datenleitung vom Teilnehmer zurück zum Master durch die Teilnehmer, so dass diese auf dem Rückweg des Telegramms das Telegramm empfangen und bearbeiten können.
  • Nach einer Ausführungsform kann vorgesehen sein, dass die Teilnehmer Teilnehmer einer Automatisierungsanlage oder einer Automatisierungseinrichtung sind. Die Automatisierungsanlage oder -einrichtung kann beispielsweise eine Steuerungsanlage und/oder Steuerungseinrichtung umfassen. Die Teilnehmer können vorzugsweise Teilnehmer einer Steuerungsanlage und/oder einer Steuerungseinrichtung sein. Das heißt also, dass die entsprechende vorstehend genannte Anlage und/oder Einrichtung mehrere Teilnehmer aufweist, die über ein Kommunikationsnetzwerk miteinander verbunden sind. Zum Beispiel verbindet eine Datenleitung die Teilnehmer untereinander. Beispielsweise verbindet die Datenleitung den Master mit den Teilnehmern. Über das Kommunikationsnetzwerk können Telegramme übertragen werden, so dass Telegramme von einem Teilnehmer zum nächsten Teilnehmer weitergeleitet werden können.
  • Nach einer Ausführungsform ist das Kommunikationsnetzwerk ein Ethernet-Kommunikationsnetzwerk. Das Telegramm kann beispielsweise ein Ethernettelegramm sein.
  • Nach einer anderen Ausführungsform ist das Kommunikationsnetzwerk ein EtherCAT-Kommunikationsnetzwerk. Das Telegramm kann beispielsweise ein EtherCAT-Telegramm sein.
  • Das Telegramm kann beispielsweise ein Datagramm umfassen, wobei das Datagramm den vorstehend genannten Zähler oder die vorstehend genannten Zähler und/oder das Datenfeld und/oder die vorstehend genannten Adressfelder umfassen kann. Das Telegramm kann beispielsweise analog zum Telegramm 201 der 2 gebildet sein, wie noch nachstehend erläutert.
  • Nach einer anderen Ausführungsform können Teilnehmer einen Aktor und/oder einen Sensor steuern und/oder auslesen. Dies insbesondere basierend auf einem empfangenen Telegramm, insbesondere basierend auf Daten des Datenfelds. Das heißt also insbesondere, dass ein Teilnehmer einen Aktor und/oder einen Sensor steuern und/oder auslesen kann. Dies basierend auf einem empfangenen Telegramm, insbesondere basierend auf Daten des Datenfelds. So kann beispielsweise ein Teilnehmer Daten in das Datenfeld schreiben, die Informationen über einen Status des Aktors und/oder des Sensors umfassen. So kann beispielsweise ein Teilnehmer Daten aus dem Datenfeld lesen, die eine Information umfassen, wie der Teilnehmer den Aktor und/oder den Sensor steuern soll.
  • Wenn der Teilnehmer Daten aus dem Datenfeld ausliest, so werden diese ausgelesenen Daten vorzugsweise in den Teilnehmer geschrieben, insbesondere in einen Speicher des Teilnehmers und/oder des zugehörigen Aktors und/oder Sensors. Ein Auslesen von Daten aus dem Datenfeld bewirkt also insbesondere ein Schreiben von Daten in den Teilnehmer, also einen Schreibzugriff auf den Teilnehmer.
  • Wenn der Teilnehmer Daten in das Datenfeld hineinschreibt, so werden diese zu schreibende Daten insbesondere aus dem Teilnehmer ausgelesen, insbesondere aus einem Speicher des Teilnehmers und/oder des zugehörigen Aktors und/oder Sensors. Ein Schreiben von Daten in das Datenfeld bewirkt also insbesondere ein Auslesen von Daten aus dem Teilnehmer, also einen Lesezugriff auf den Teilnehmer.
  • Nach einer Ausführungsform kann ein Teilnehmer ein empfangenes Telegramm verarbeiten. Ein Verarbeiten kann beispielsweise ein Lesen von Daten aus dem Telegramm, insbesondere aus dem Datenfeld, umfassen. Ein Verarbeiten kann beispielsweise ein Schreiben von Daten in das Telegramm, insbesondere in das Datenfeld, umfassen. Der Teilnehmer kann beispielsweise das verarbeitete Telegramm weitersenden.
  • Nach einer Ausführungsform kann vorgesehen sein, dass ein Teilnehmer ein empfangenes Telegramm lediglich weiterleitet, also nicht verarbeitet.
  • Nach einer Ausführungsform kann das Kommunikationsnetzwerk eine Topologie ausgewählt aus der folgenden Gruppe von Topologien aufweisen: Ring, Linie, Stern, Baum und eine Kombination hiervon.
  • Die im Zusammenhang mit dem Verfahren gemachten Ausführungen gelten analog für Teilnehmer und für das Kommunikationsnetzwerk und umgekehrt. Das heißt also insbesondere, dass sich Ausführungsformen hinsichtlich eines Teilnehmers und/oder eines Kommunikationsnetzwerks aus Ausführungsformen hinsichtlich des Verfahrens und umgekehrt in jeder möglichen Kombination ergeben können. Wenn der Singular für „Teilnehmer” verwendet wird, so soll stets der Plural mitgelesen werden und umgekehrt.
  • Die Erfindung wird im Folgenden anhand von bevorzugten Ausführungsbeispielen näher erläutert. Hierbei zeigen
  • 1 ein EtherCAT-Telegramm,
  • 2 ein EtherCAT-Telegramm mit einem Datenfeld,
  • 3 ein Kommunikationsnetzwerk,
  • 4 ein weiteres Kommunikationsnetzwerk und
  • 5 ein Ablaufdiagramm eines Verfahrens zum Betreiben eines Kommunikationsnetzwerks.
  • Im Folgenden können für gleiche Merkmale gleiche Bezugszeichen verwendet werden.
  • 1 zeigt ein EtherCAT-Telegramm 101.
  • Das EtherCAT-Telegramm 101 umfasst einen Ethernet-Kopfabschnitt 103, auch Ethernet-Header genannt. Ferner umfasst das EtherCAT-Telegramm 101 mehrere Datagramme 105. Explizit gezeigt sind zwei Datagramme. Das Bezugszeichen 107 zeigt auf ein Kästchen des EtherCAT-Telegramms 101, in dem fünf Punkte eingezeichnet sind. Damit soll symbolisch dargestellt werden, dass anstelle des Kästchens 107 weitere Datagramme 105 vorgesehen sein können.
  • Die Datagramme 105 umfassen jeweils einen Datagramm-Kopfabschnitt 109, auch Datagramm-Header genannt. Der Datagramm-Kopfabschnitt 109 umfasst eine Zieladresse (also ein Adressfeld mit einer Zieladresse eines Teilnehmers) eines Teilnehmers eines Kommunikationsnetzwerks, für den das Datagramm 105 mit dem der Zieladresse entsprechenden Datagramm-Kopfabschnitt 109 bestimmt ist. Ferner umfasst der Datagramm-Kopfabschnitt 109 ein Kommando oder mehrere Kommandos (nicht gezeigt), die der Teilnehmer mit der Zieladresse ausführen soll.
  • Des Weiteren umfassen die Datagramme 105 jeweils Daten 111 für den Teilnehmer mit der entsprechenden Zieladresse. Ferner umfassen die Datagramme 105 jeweils einen Zähler 113, auch Working-Counter oder Arbeitszähler genannt, der anzeigt, ob eine Bearbeitung des entsprechenden Datagramms 105 mittels des Teilnehmers mit der entsprechenden Zieladresse erfolgreich war. Es ist vorzugsweise möglich, mittels jeden Datagramms 105 ein oder mehrere Teilnehmer zu adressieren.
  • Das EtherCAT-Telegramm 101 umfasst ferner eine Prüfsumme 115, die beispielsweise über die Daten 111 gebildet werden kann. Die Prüfsumme 115 kann beispielsweise eine CRC(Cycle Redundancy Check, auf Deutsch: Zyklische Redundanzprüfung)-Prüfsumme sein.
  • 2 zeigt ein weiteres EtherCAT-Telegramm 201.
  • Das EtherCAT-Telegramm 201 umfasst analog zum EtherCAT-Telegramm 101 der 1 einen Ethernet-Kopfabschnitt 103. Die geschweifte Klammer mit dem Bezugszeichen 203 umfasst ein oder zeigt auf ein Datagramm 205 des EtherCAT-Telegramms 201. Die geschweifte Klammer mit dem Bezugszeichen 207 umfasst ein oder zeigt auf einen Datagramm-Kopfabschnitt 209, oder Datagramm-Header, des Datagramms 205. Der Datagramm-Kopfabschnitt 209 umfasst ein Kommandofeld 211, ein erstes Adressfeld 213 und ein zweites Adressfeld 215. Das Datagramm 205 umfasst ferner ein Datenfeld 217, in welches Daten geschrieben und aus welchem Daten gelesen werden können. Hierbei umfasst das erste Adressfeld 213 eine Adresse eines ersten Teilnehmers eines EtherCAT-Kommunikationsnetzwerks, welcher Daten aus dem Datenfeld 217 lesen soll. Das zweite Adressfeld 215 umfasst eine Adresse eines zweiten Teilnehmers des EtherCAT-Kommunikationsnetzwerks, welcher Daten in das Datenfeld 217 schreiben soll. Das Kommandofeld 211 umfasst ein Kommando, welches dem ersten Teilnehmer befiehlt, Daten aus dem Datenfeld 217 zu lesen, und welches dem zweiten Teilnehmer befiehlt, Daten in das Datenfeld 217 zu schreiben. Das Kommando kann beispielsweise ein FMRW-Kommando sein. „FMRW” steht für die englischen Begriffe: Fixed Address Multiple Read Write, also auf Deutsch: Mehreres Lesen und/oder Schreiben an festen Adressen. Hierbei ist vorzugsweise vorgesehen, dass der erste Teilnehmer die Daten aus dem Datenfeld 217 liest, so dass nach dem Lesen der Daten das Datenfeld 217 leer ist. Der zweite Teilnehmer schreibt somit Daten in ein leeres Datenfeld 217. Das Telegramm 201 umfasst ferner eine Prüfsumme 115, die insbesondere über die Daten in dem Datenfeld 217 gebildet sein kann. Die Prüfsumme 115 kann beispielsweise eine CRC-Prüfsumme 115 sein. Die Reihenfolge der einzelnen Elemente (Adressfelder und Kommandofeld) oder Bestandteile des Datagramm-Kopfabschnitts 209 kann beispielsweise beliebig sein und muss nicht zwangsläufig der in 2 gezeigten Reihenfolge entsprechen. Diese gezeigte Reihenfolge ist lediglich beispielhaft, nicht aber einschränkend. Dies gilt auch für den Datagramm-Kopfabschnitt 109 der 1. Das Kommando im Kommandofeld 211 kann beispielsweise ein Lese-, Schreib- oder Schreib/Lese-Kommando oder eine beliebige Kombination hiervon sein, jeweils mit unterschiedlichen Adressierungsarten, also mit Adressen, welcher Teilnehmer, welches Kommando ausführen soll.
  • Ferner umfasst das Datagramm 205 eine Zähler 113, also einen Arbeitszähler oder Working-Counter, der anzeigt, ob ein Schreibvorgang in das und/oder ein Lesevorgang aus dem Datenfeld 217 erfolgreich durchgeführt wurde. Hierfür ist vorzugsweise vorgesehen, dass der Zähler 113 nach einem erfolgreichen Schreibvorgang und nach einem erfolgreichen Lesevorgang inkrementiert wird. Insbesondere wird bei nur einem Zähler 113 der Zähler 113 mit unterschiedlichen Inkrementen abhängig davon inkrementiert, ob erfolgreich in das Datenfeld 217 geschrieben oder aus dem Datenfeld 217 gelesen wurde.
  • In einer nicht gezeigten Ausführungsform können zwei Zähler 113 vorgesehen sein, wobei einer der beiden Zähler ausschließlich bei einem erfolgreichen Schreibvorgang in das Datenfeld 217 inkrementiert wird und wobei der andere Zähler ausschließlich bei einem erfolgreichen Lesevorgang aus dem Datenfeld 217 inkrementiert wird.
  • In einer nicht gezeigten Ausführungsform kann das EtherCAT-Telegramm 201 zusätzlich zum Datagramm 205 noch Datagramme 105 analog zu 1 aufweisen. Das heißt also insbesondere, dass das EtherCAT-Telegramm 101 der 1 mit einem Datagramm 205 der 2 erweitert werden kann. Insbesondere kann vorgesehen sein, dass ein Datagramm-Kopfabschnitt 109 der 1 gemäß dem Datagramm-Kopfabschnitt 209 der 2 gebildet ist.
  • 3 zeigt ein Kommunikationsnetzwerk 301.
  • Das Kommunikationsnetzwerk 301 umfasst mehrere Teilnehmer 303, die ausgebildet sind, das erfindungsgemäße Verfahren durchzuführen. Gezeigt sind 4 Teilnehmer 303a, b, c, d. Es können aber vorzugsweise zwei, drei oder mehr als 4 Teilnehmer 303a, b, c, d vorgesehen sein. Das Kommunikationsnetzwerk 301 umfasst einen weiteren Teilnehmer 305, der als Master konfiguriert ist. Die vier Teilnehmer 303a, b, c, d sind als Slaves konfiguriert. Der Master 305 und die Teilnehmer 303a, b, c, d sind über eine Datenleitung 311 miteinander verbunden.
  • Der Master 305 weist eine Sendeschnittstelle 307 auf, mittels welcher der Master 305 Telegramme an die Teilnehmer 303a, b, c, d senden kann. Ein solches Telegramm kann beispielsweise das Telegramm 101 der 1 oder das Telegramm 201 der 2 sein. Der Master 305 umfasst eine Empfangsschnittstelle 309, mittels welcher der Master 305 Telegramme von den Teilnehmern 303a, b, c, d empfangen kann. Die Übertragung eines Telegramms über das Kommunikationsnetzwerk 301 kann beispielsweise wie folgt durchgeführt werden.
  • Der Master 305 sendet über seine Sendeschnittstelle 307 das Telegramm 201 (die Ausführungen gelten analog für das Telegramm 101) an denjenigen der Teilnehmer 303, der dem Master 305 über die Datenleitung 311 unmittelbar nachgeschaltet ist, hier der Teilnehmer 303a. Eine Laufrichtung des ausgesendeten Telegramms 201 ist mit einem Pfeil mit dem Bezugszeichen 313 dargestellt. Das Telegramm 201 durchläuft nun nacheinander in Laufrichtung von links nach rechts die vier Teilnehmer 303a, b, c, d. Nach dem Durchlauf des vierten Teilnehmers, hier der Teilnehmer 303d, wird das Telegramm 201 von dem letzten der vier Teilnehmer, also dem Teilnehmer 303d, zurück an den Master 305 gesendet. Der Master empfängt das Telegramm 201 über seine Empfangsschnittstelle 309.
  • Im ersten Adressfeld 213 des Datagramms 205 kann beispielsweise die Adresse des Teilnehmers 303b stehen. Im zweiten Adressfeld 215 des Datagramms 205 kann beispielsweise die Adresse des Teilnehmers 303d stehen. Der Master 305 kann vorzugsweise diese Adressierung durchführen. Der Master 305 kann beispielsweise Daten in das Datenfeld 217 schreiben. Beim Übertragen des Telegramms 201 über das Kommunikationsnetzwerks 301, also beim Durchlauf des Telegramms 201 durch die Teilnehmer 303a, b, c, d, wird das Telegramm 201 vom Teilnehmer 303b empfangen. Der Teilnehmer 303b liest die Daten aus dem Datenfeld 217 aus, so dass das Datenfeld 217 nach dem Auslesen leer ist. Beispielsweise weist das Datenfeld 217 eine logische Null auf. Der Teilnehmer 303b sendet das Telegramm 201 weiter an den Teilnehmer 303c. Diese sendet das Telegramm 201 weiter an den Teilnehmer 303d. Der Teilnehmer 303d schreibt Daten in das Datenfeld 217 und sendet anschließend das Telegramm 201 weiter an den Master 305. Der Master 305 empfängt das Telegramm 201 über seine Empfangsschnittstelle 309.
  • In dem Kommunikationsnetzwerk 301 der 3 durchläuft ein Abschnitt 311a der Datenleitung 311, der vom letzten Teilnehmer 303d zurück zum Master 305 führt, nicht mehr die vier Teilnehmer 303a, b, c, d. Ein Datenaustausch ist somit nur in eine Richtung, der Laufrichtung, möglich. Daher muss in dieser Ausführungsform der Teilnehmer, welcher Daten aus dem Datenfeld 217 lesen soll, bezogen auf die Laufrichtung vor dem Teilnehmer angeordnet sein, der Daten in das Datenfeld 217 schreiben soll. Dies allerdings nur unter der Prämisse, dass Daten in ein leeres Datenfeld 217 geschrieben werden sollen. Sofern eine Verknüpfung der zu schreibenden Daten mit bereits im Datenfeld 217 vorhandenen Daten vorgesehen ist, kann eine Position der Teilnehmer, die schreiben sollen, und der Teilnehmer, die lesen sollen, zueinander beliebig sein.
  • Obwohl nicht explizit gezeigt, weisen die vier Teilnehmer 303a, b, c, d ebenfalls jeweils eine Sendeschnittstelle zum Senden von und eine Empfangsschnittstelle zum Empfangen von Telegrammen auf.
  • 4 zeigt ein weiteres Kommunikationsnetzwerk 401.
  • Das Kommunikationsnetzwerk 401 ist im Wesentlichen analog zu dem Kommunikationsnetzwerk 301 der 3 aufgebaut. Auf die entsprechenden Ausführungen wird verwiesen. Als ein Unterschied durchläuft der Abschnitt 311a der Datenleitung 311, der vom letzten Teilnehmer 303d zurück zum Master 305 führt, auf seinem Rückweg die vier Teilnehmer 303a, b, c, d. Ein Datenaustausch ist somit sowohl auf einem Hinweg des Telegramms 201 von der Sendeschnittstelle 307 des Masters 305 durch die Teilnehmer 303a, b, c, d als auch auf einem Rückweg vom letzten Teilnehmer 303d durch die vier Teilnehmer 303a, b, c, d zur Empfangsschnittstelle 309 des Masters 305 möglich. In dieser Konfiguration ist daher eine Positionierung des Teilnehmers, der lesen soll, zu dem Teilnehmer, der schreiben soll, beliebig. Dies unabhängig davon, ob in ein leeres Datenfeld 217 geschrieben werden soll oder ob eine Verknüpfung zwischen zu schreibenden Daten und bereits im Datenfeld 217 vorhandenen Daten vorgesehen ist.
  • So kann beispielsweise der Teilnehmer, der Daten aus dem Datenfeld 217 lesen soll, der Teilnehmer 303d sein. Der Teilnehmer, der Daten in das Datenfeld 217 schreiben soll, kann beispielsweise der Teilnehmer 303a sein. Die Übertragung des Telegramms 201 über das Kommunikationsnetzwerk 401 kann dann wie folgt sein.
  • Der Master 305 sendet über seine Sendeschnittstelle 307 das Telegramm 201 aus. Im ersten Adressfeld 213 des Datagramms 205 steht die Adresse des Teilnehmers 303d. Im zweiten Adressfeld 215 des Datagramms 205 steht die Adresse des Teilnehmers 303a. Im Datenfeld 217 stehen Daten, die der Teilnehmer 303d lesen soll. Das Telegramm 201 durchläuft nacheinander die Teilnehmer 303a, b, c, d. Wenn der Teilnehmer 303d das Telegramm 201 empfängt, liest er die Daten aus dem Datenfeld 217 aus. Dieses kann beispielsweise nach dem Auslesen leer sein und daher beispielsweise eine logische Null aufweisen. Das Telegramm 201 durchläuft dann über den Abschnitt 311a der Datenleitung 311 nochmals den Teilnehmer 303d, dann den Teilnehmer 303c, dann den Teilnehmer 303b und wird dann vom Teilnehmer 303a empfangen. Der Teilnehmer 303a schreibt Daten in das Datenfeld 217 und sendet das Telegramm 201 anschließend an den Master 305, der das Telegramm 201 mittels seiner Empfangsschnittstelle 309 empfängt.
  • 5 zeigt ein Ablaufdiagramm eines Verfahrens zum Betreiben eines Kommunikationsnetzwerks, das mehrere Teilnehmer umfasst.
  • Gemäß einem Schritt 501 wird ein Telegramm umfassend ein Datenfeld von einem ersten Teilnehmer empfangen. Das Telegramm kann beispielsweise analog zum Telegramm 201 der 2 gebildet sein. In einem Schritt 503 liest der erste Teilnehmer Daten aus dem Datenfeld aus, so dass das Datenfeld nach dem Lesen leer ist. Gemäß einem Schritt 505 sendet der erste Teilnehmer nach dem Auslesen das Telegramm mit dem leeren Datenfeld weiter. In einem Schritt 507 wird das Telegramm mit dem leeren Datenfeld von einem zweiten Teilnehmer empfangen, welcher gemäß einem Schritt 509 Daten in das leere Datenfeld schreibt. In einer nicht gezeigten Ausführungsform kann vorgesehen sein, dass nach dem Schreiben der zweite Teilnehmer das Telegramm an einen weiteren Teilnehmer oder an einen Master sendet. Der zweite Teilnehmer kann beispielsweise unmittelbar dem ersten Teilnehmer folgen. Vorzugsweise sind zwischen dem ersten und dem zweiten Teilnehmer noch weitere Teilnehmer angeordnet, so dass das Telegramm erst diese weiteren Teilnehmer durchlaufen muss, bevor es dann zum zweiten Teilnehmer gelangt.
  • In einer nicht gezeigten Ausführungsform kann das Verfahren auch für eine Slave-to-Slave Kommunikation genutzt oder verwendet werden, indem von einem Teilnehmer gelesen und in einen später von dem Telegramm (Frame) durchlaufenen Teilnehmer geschrieben wird.
  • In einer nicht gezeigten Ausführungsform kann das Verfahren erweitert werden, um eine sogenannten „One-to-Many(einer für alle)-Kommunikation” zu ermöglichen. In dieser Ausführungsform wird von einem Teilnehmer gelesen und bei mehreren oder allen folgenden Teilnehmern geschrieben. Dazu wird der Datagramm-Kopfabschnitt 209 (Datagramm-Header) um entsprechende Kennzeichen erweitert. Der Datagramm-Kopfabschnitt 209 weist also ein entsprechendes Kennzeichen auf. Zum Beispiel kann das Kennzeichen oder die Kennung ein Broadcastflag und/oder eine Gruppenadresse sein.
  • In einer nicht gezeigten Ausführungsform kann vorgesehen sein, dass Daten von mehreren Teilnehmern gelesen werden, wobei die jeweiligen zu lesenden Daten jeweils in das Datenfeld geschrieben werden und dabei mit den im Datenfeld bereits vorhandenen Daten verknüpft werden, wobei diese verknüpften Daten vorzugsweise in einen weiteren Teilnehmer geschrieben werden können. Der weitere Teilnehmer liest also die verknüpften Daten aus. Die Verknüpfung kann zum Beispiel durch eine Veroderung der Daten im Datenfeld 217 des Telegramm 201 mit den aus den Teilnehmern zu lesenden Daten erfolgen (also den Daten, die in das Datenfeld 217 geschrieben werden sollen). Grundsätzlich können beispielsweise auch andere logische und/oder arithmetische Operationen als Verknüpfung durchgeführt oder verwendet werden.

Claims (10)

  1. Verfahren zum Betreiben eines Kommunikationsnetzwerks (301, 401) umfassend einen Master-Teilnehmer (305) und mehrere Slave-Teilnehmer (303a, b, c, d), die über eine Datenleitung (311) miteinander verbunden sind, wobei der Master-Teilnehmer (305) Telegramme auf der Datenleitung (311) versendet, die über die Datenleitung (311) von einem Slave-Teilnehmer zum nächsten Slave-Teilnehmer weitergeleitet werden, wobei ein Telegramm (101, 201) wenigstens ein Datagramm (205) mit einem Kopfabschnitt (209) und einem Datenfeld (217) umfasst, wobei der Kopfabschnitt (209) ein Kommandofeld (211) und zwei Adressfelder (213, 215) aufweist, wobei das eine Adressfeld (213) eine Adresse eines ersten Slave-Teilnehmers und das andere Adressfeld (215) eine Adresse eines zweiten Slave-Teilnehmers umfasst, wobei das Kommandofeld (211) ein Kommando aufweist, das dem ersten Slave-Teilnehmer befiehlt, Daten aus dem Datenfeld (217) zu lesen, und das dem zweiten Teilnehmer befiehlt, Daten in das Datenfeld (217) zu schreiben, wobei der erste Slave-Teilnehmer (303a, b, c, d) bei einem Empfang des Telegramms (201) Daten aus dem Datenfeld (217) des Telegramms liest und nach dem Auslesen das Telegramm (201) weiterleitet, und wobei der zweite Slave-Teilnehmer (303a, b, c, d) bei einem Empfang des vom erste Slave-Teilnehmer weitergeleiteten Telegramms (201) Daten in das Datenfeld (217) schreibt.
  2. Verfahren nach Anspruch 1, wobei das Datagramm (205) des Telegramms (201) zumindest einen Zähler (113) aufweist, der beim Lesen aus dem und/oder beim Schreiben in das Datenfeld (217) inkrementiert wird.
  3. Verfahren nach Anspruch 1, wobei das das Datagramm (205) des Telegramms (201) zwei Zähler aufweist, wobei der eine Zähler ausschließlich beim Lesen aus dem Datenfeld (217) und der andere Zähler ausschließlich beim Schreiben in das Datenfeld (217) inkrementiert wird.
  4. Verfahren nach Anspruch 2 oder 3, wobei abhängig davon, ob gelesen oder geschrieben wird, mit unterschiedlichen Inkrementen inkrementiert wird.
  5. Verfahren nach einem der vorherigen Ansprüche, wobei bei einem Schreiben von Daten in das Datenfeld (217) des Datagramms (205) im Telegramm (201) die zu schreibenden Daten mit im Datenfeld (217) bereits vorhandenen Daten verknüpft werden.
  6. Verfahren nach einem der vorherigen Ansprüche, wobei das Telegramm (201) von dem ersten Slave-Teilnehmer empfangen (501) wird, der Daten aus dem Datenfeld (217) des Datagramms (205) im Telegramm (201) ausliest (503), so dass das Datenfeld (217) nach dem Lesen leer ist, wobei der erste Slave-Teilnehmer nach dem Auslesen das Telegramm (201) mit dem leeren Datenfeld (217) im Datagramms (205) weitersendet (505), wobei das Telegramm (201) mit dem leeren Datenfeld (217) im Datagramm (205) von einem zweiten Teilnehmer empfangen (507) wird, welcher Daten in das leere Datenfeld (217) des Datagramms (205) im Telegramm (201) schreibt (509).
  7. Kommunikationsnetzwerk (301, 401) mit einen Master-Teilnehmer (305) und mehrere Slave-Teilnehmer (303a, b, c, d), die über eine Datenleitung (311) miteinander verbunden sind, wobei der Master-Teilnehmer (305) ausgelegt ist, Telegramme auf der Datenleitung (311) zu versenden, die über die Datenleitung (311) von einem Slave-Teilnehmer zum nächsten Slave-Teilnehmer weitergeleitet werden, wobei ein Telegramm (101, 201) wenigstens ein Datagramm (205) mit einem Kopfabschnitt (209) und einem Datenfeld (217) umfasst, wobei der Kopfabschnitt (209) ein Kommandofeld (211) und zwei Adressfelder (213, 215) aufweist, wobei das eine Adressfeld (213) eine Adresse eines ersten Slave-Teilnehmers und das andere Adressfeld (215) eine Adresse eines zweiten Slave-Teilnehmers umfasst, wobei das Kommandofeld (211) ein Kommando aufweist, das dem ersten Slave-Teilnehmer befiehlt, Daten aus dem Datenfeld (217) zu lesen, und das dem zweiten Teilnehmer befiehlt, Daten in das Datenfeld (217) zu schreiben, wobei der erste Slave-Teilnehmer (303a, b, c, d) ausgelegt ist, bei einem Empfang des Telegramms (201) Daten aus dem Datenfeld (217) des Telegramms auszulesen und nach dem Auslesen das Telegramm (201) weiterzuleiten, und wobei der zweite Slave-Teilnehmer (303a, b, c, d) ausgelegt ist, bei einem Empfang des vom erste Slave-Teilnehmer weitergeleiteten Telegramms (201) Daten in das Datenfeld (217) zu schreiben.
  8. Kommunikationsnetzwerk (301, 401) nach Anspruch 7, wobei das Datagramm (205) des Telegramms (201) zumindest einen Zähler (113) aufweist, der beim Lesen aus dem und/oder beim Schreiben in das Datenfeld (217) inkrementiert wird.
  9. Kommunikationsnetzwerk (301, 401) nach Anspruch 7, wobei das das Datagramm (205) des Telegramms (201) zwei Zähler aufweist, wobei der eine Zähler ausschließlich beim Lesen aus dem Datenfeld (217) und der andere Zähler ausschließlich beim Schreiben in das Datenfeld (217) inkrementiert wird.
  10. Kommunikationsnetzwerk (301, 401) nach Anspruch 8 oder 9, wobei, abhängig davon, ob gelesen oder geschrieben wird, mit unterschiedlichen Inkrementen inkrementiert wird.
DE102014105207.2A 2014-04-11 2014-04-11 Verfahren zum Betreiben eines Kommunikationsnetzwerks und Kommunikationsnetzwerk Active DE102014105207B4 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102014105207.2A DE102014105207B4 (de) 2014-04-11 2014-04-11 Verfahren zum Betreiben eines Kommunikationsnetzwerks und Kommunikationsnetzwerk
US14/684,169 US10069641B2 (en) 2014-04-11 2015-04-10 Method for operating a communication network and communication network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102014105207.2A DE102014105207B4 (de) 2014-04-11 2014-04-11 Verfahren zum Betreiben eines Kommunikationsnetzwerks und Kommunikationsnetzwerk

Publications (2)

Publication Number Publication Date
DE102014105207A1 DE102014105207A1 (de) 2015-10-15
DE102014105207B4 true DE102014105207B4 (de) 2015-10-22

Family

ID=54193040

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014105207.2A Active DE102014105207B4 (de) 2014-04-11 2014-04-11 Verfahren zum Betreiben eines Kommunikationsnetzwerks und Kommunikationsnetzwerk

Country Status (2)

Country Link
US (1) US10069641B2 (de)
DE (1) DE102014105207B4 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6679568B2 (ja) 2014-08-08 2020-04-15 ジェンサーム ゲーエムベーハー バスシステム、空調装置およびバスシステムを制御する方法
KR102023534B1 (ko) * 2015-04-17 2019-09-23 엘에스산전 주식회사 슬레이브 디바이스 및 이의 제어 방법
DE102017208827A1 (de) * 2017-05-24 2018-11-29 Wago Verwaltungsgesellschaft Mbh Verteilte Verarbeitung von Prozessdaten
DE102018129774A1 (de) 2018-11-26 2020-05-28 Beckhoff Automation Gmbh Verfahren zum Betreiben eines Netzwerkteilnehmers und Netzwerkteilnehmer
DE102019207220A1 (de) * 2019-05-17 2020-11-19 Baumüller Nürnberg GmbH Verfahren zum Betrieb eines Feldbusses

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004063213A1 (de) * 2004-12-24 2006-07-13 Pilz Gmbh & Co. Kg Steuerungssystem mit einer Vielzahl von räumlich verteilten Stationen sowie Verfahren zum Übertragen von Daten in einem solchen Steuerungssystem
EP1748338A1 (de) * 2005-07-28 2007-01-31 Siemens Aktiengesellschaft Verfahren zur Optimierung der Bandbreitenausnutzung bei Bussystemen
US20110205886A1 (en) * 2010-02-25 2011-08-25 Hitachi, Ltd. Information processor and control network system

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7251199B2 (en) * 2001-12-24 2007-07-31 Agilent Technologies, Inc. Distributed system time synchronization including a timing signal path
AT500350B8 (de) * 2003-10-03 2007-02-15 Bernecker & Rainer Ind Elektro Anlage zum übertragen von daten in einem seriellen, bidirektionalen bus
JP4847469B2 (ja) * 2004-12-24 2011-12-28 ピルツ ゲーエムベーハー アンド コー.カーゲー 複数個のステーションを有するコントロールシステムにおけるデータ送信方法、及び該コントロールシステム
US7649912B2 (en) * 2005-04-27 2010-01-19 Rockwell Automation Technologies, Inc. Time synchronization, deterministic data delivery and redundancy for cascaded nodes on full duplex ethernet networks
CN101132328A (zh) * 2007-08-15 2008-02-27 北京航空航天大学 实时工业以太网EtherCAT通信控制器
DE102008050102B4 (de) * 2008-10-06 2010-11-04 Phoenix Contact Gmbh & Co. Kg Kommunikationsentität zur Kommunikation über ein busorientiertes Kommunikationsnetzwerk
FR2939923B1 (fr) * 2008-12-15 2011-03-11 Converteam Tech Ltd Systeme electronique avec redondance d'elements, et chaine de controle d'un moteur mettant en oeuvre un tel systeme
US20130173868A1 (en) * 2011-12-29 2013-07-04 Texas Instruments Incorporated Generation of Activation List for Memory Translation and Memory Access Protection in Industrial Ethernet Standard
US9621483B2 (en) * 2012-07-02 2017-04-11 Nxp Usa, Inc. Ethercat packet forwarding with distributed clocking
US9438537B2 (en) * 2012-07-03 2016-09-06 Freescale Semiconductor, Inc. Method for cut through forwarding data packets between electronic communication devices
US9952995B2 (en) * 2012-11-27 2018-04-24 Nxp Usa, Inc. Redundant packet forwarding system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004063213A1 (de) * 2004-12-24 2006-07-13 Pilz Gmbh & Co. Kg Steuerungssystem mit einer Vielzahl von räumlich verteilten Stationen sowie Verfahren zum Übertragen von Daten in einem solchen Steuerungssystem
EP1748338A1 (de) * 2005-07-28 2007-01-31 Siemens Aktiengesellschaft Verfahren zur Optimierung der Bandbreitenausnutzung bei Bussystemen
US20110205886A1 (en) * 2010-02-25 2011-08-25 Hitachi, Ltd. Information processor and control network system

Also Published As

Publication number Publication date
US10069641B2 (en) 2018-09-04
US20150295727A1 (en) 2015-10-15
DE102014105207A1 (de) 2015-10-15

Similar Documents

Publication Publication Date Title
DE102014108457B3 (de) Netzwerkverteiler
DE102007004044B4 (de) Verfahren und Anlage zur optimierten Übertragung von Daten zwischen einer Steuereinrichtung und mehreren Feldgeräten
DE4104601C2 (de) Empfangsdatenverarbeitungsanlage
DE102014105207B4 (de) Verfahren zum Betreiben eines Kommunikationsnetzwerks und Kommunikationsnetzwerk
EP3679691B1 (de) Datenübertragungsverfahren und kommunikationsnetzwerk
DE102014108455A1 (de) Verfahren zum Betreiben eines Netzwerks
EP1729454B1 (de) Vorrichtung und Verfahren zur kombinierten Übertragung von Ein-/Ausgabedaten in Automatisierungs-Bussystemen
EP2961106A1 (de) Netzwerk, kopf-teilnehmer und datenübertragungsverfahren
EP2119124B1 (de) Verfahren zum betrieb einer netzwerkkomponente in einem automatisierungssystem, automatisierungssystem mit einer nach dem verfahren betriebbaren netzwerkkomponente, verfahren zur datenübermittlung in einem automatisierungssystem mit kommunikationsteilnehmern von denen zumindest einzelne nach dem verfahren zum betrieb einer netzwerkkomponente als netzwerkkomponente betrieben sind sowie korrespondierendes computerprogramm und computerprogrammprodukt
EP3151476B1 (de) Verfahren zum querverkehr zwischen zwei slaves eines ringförmigen datennetzwerks
EP1043867A2 (de) Verfahren und Vorrichtung zur seriellen Daten-übertragung
AT514714A1 (de) Verfahren zur Übertragung von Nachrichten in einem Computernetzwerk sowie Computernetzwerk
EP3363165B1 (de) Verfahren und computersystem zur schnellen übertragung von zeitgesteuerten echtzeitnachrichten
EP3157201B1 (de) Zeitgesteuertes cut-through verfahren zum datentransport in verteilten echtzeitsystemen
EP3172869B1 (de) Verfahren zur nachbildung von laufzeiten in netzwerken, sowie entsprechendes gateway
DE102011088812A1 (de) Verfahren zum Übertragen von Nutzdaten
EP1103022B1 (de) Kommunikationsverfahren
DE10308953A1 (de) Kommunikation in einem Datennetz
EP2159959B1 (de) Verfahren zur Ermittlung einer Topologie, Netzwerkkomponente und Zentraleinheit
WO2012022317A2 (de) Verfahren zur übermittlung von multicast-datenpaketen durch einen switch
DE10343796B4 (de) Verfahren zur Verwaltung einer Gruppe von Netzzugangsservern
EP3590235B1 (de) Datenübertragungsverfahren und automatisierungskommunikationsnetzwerk
EP1921805B1 (de) Bussystem und Verfahren zum sicheren Übermitteln von Telegrammen in einem Bussystem
DE102020207794A1 (de) Verfahren zum Betreiben eines Kommunikationssystems und Kommunikationssystem
DE102020100987A1 (de) Verfahren zur Datenkommunikation zwischen Teilnehmern eines Automatisierungssystems

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final