DE10235436A1 - Verfahren zur Übertragung von Echtzeit-Datentelegrammen in einem zyklischen Kommunikationssystem - Google Patents
Verfahren zur Übertragung von Echtzeit-Datentelegrammen in einem zyklischen KommunikationssystemInfo
- Publication number
- DE10235436A1 DE10235436A1 DE10235436A DE10235436A DE10235436A1 DE 10235436 A1 DE10235436 A1 DE 10235436A1 DE 10235436 A DE10235436 A DE 10235436A DE 10235436 A DE10235436 A DE 10235436A DE 10235436 A1 DE10235436 A1 DE 10235436A1
- Authority
- DE
- Germany
- Prior art keywords
- cycle
- real
- transmission
- time
- data
- 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.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
- H04L2012/6483—Video, e.g. MPEG
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zur Übertragung von Echtzeit-Datentelegrammen in einem zyklischen Kommunikationssystem, wobei jeder Übertragungszyklus einen ersten Teil-Zyklus (IRT-Z.) für die Echtzeit-Kommunikation und einen zweiten Teil-Zyklus (NRT-Z.) für die Nichtechtzeit-Kommunikation aufweist, mit folgenden Schritten: DOLLAR A - Bestimmung (118) einer Zyklusnummer, DOLLAR A - Bearbeitung einer Übertragungssequenz von Echtzeit-Datentelegrammen in dem ersten Teil-Zyklus, wobei die Übertragungssequenz aus ein oder mehreren Teil-Sequenzen (1, 2, 3, 4, 5) zusammengesetzt wird und die Zusammensetzung von der Zyklusnummer abhängt.
Description
- Die Erfindung betrifft ein Verfahren zur Übertragung von Echtzeit-Datentelegrammen in einem zyklischen Kommunikationssystem, welches Übertragungszyklen aufweist, die sowohl für die Echtzeit-Kommunikation als auch für die Nichtechtzeit- Kommunikation verwendet werden können. Ferner betrifft die Erfindung ein entsprechendes Kommunikationssystem und einen Teilnehmer eines solchen Kommunikationssystems.
- Unter einem synchronen, getakteten Kommunikationssystem mit Äquidistanz-Eigenschaften versteht man ein System aus wenigstens zwei Teilnehmern, die über ein Datennetz zum Zweck des gegenseitigen Austausches von Daten bzw. der gegenseitigen Übertragung von Daten miteinander verbunden sind. Dabei erfolgt der Datenaustausch zyklisch in äquidistanten Kommunikationszyklen, die durch den vom System verwendeten Kommunikationstakt vorgegeben werden.
- Teilnehmer sind beispielsweise zentrale Automatisierungsgeräte, Programmier-, Projektierungs- oder Bediengeräte, Peripheriegeräte wie z. B. Ein-/Ausgabe-Baugruppen, Antriebe, Aktoren, Sensoren, speicherprogrammierbare Steuerungen (SPS) oder andere Kontrolleinheiten, Computer, oder Maschinen, die elektronische Daten mit anderen Maschinen austauschen, insbesondere Daten von anderen Maschinen verarbeiten. Teilnehmer werden auch Netzwerkknoten oder Knoten genannt.
- Unter Kontrolleinheiten werden im folgenden Regler- oder Steuerungseinheiten jeglicher Art verstanden, aber auch beispielsweise Koppeleinheiten (sog. Switches) und/oder Switch- Controller. Als Datennetze werden beispielsweise Bussysteme wie z. B. Feldbus, Profibus, Ethernet, Industrial Ethernet, FireWire oder auch PC-interne Bussysteme (PCI), etc., insbesondere aber auch isochrones Realtime Ethernet verwendet.
- Datennetze ermöglichen die Kommunikation zwischen mehreren Teilnehmern durch die Vernetzung, also Verbindung der einzelnen Teilnehmer untereinander. Kommunikation bedeutet dabei die Übertragung von Daten zwischen den Teilnehmern. Die zu übertragenden Daten werden dabei als Datentelegramme verschickt, d. h. die Daten werden zu mehreren Paketen zusammengepackt und in dieser Form über das Datennetz an den entsprechenden Empfänger gesendet. Man spricht deshalb auch von Datenpaketen. Der Begriff Übertragung von Daten wird dabei in diesem Dokument völlig synonym zur oben erwähnten Übertragung von Datentelegrammen oder Datenpaketen verwendet.
- In verteilten Automatisierungssystemen, beispielsweise im Bereich Antriebstechnik, müssen bestimmte Daten zu bestimmten Zeiten bei den dafür bestimmten Teilnehmern eintreffen und von den Empfängern verarbeitet werden. Man spricht dabei von echtzeitkritischen Daten bzw. Datenverkehr, da ein nicht rechtzeitiges Eintreffen der Daten am Bestimmungsort zu unerwünschten Resultaten beim Teilnehmer führt, im Gegensatz zur nicht echtzeitkritischen, beispielsweise inter- bzw. intranetbasierten Datenkommunikation. Gemäss IEC 61491, EN61491 SERCOS interface - Technische Kurzbeschreibung (http:/ / www.sercos.de/deutsch/index_deutsch.htm) kann ein erfolgreicher echtzeitkritischer Datenverkehr der genannten Art in verteilten Automatisierungssystemen gewährleistet werden.
- Automatisierungskomponenten (z. B. Steuerungen, Antriebe, . . .) verfügen heute im Allgemeinen über eine Schnittstelle zu einem zyklisch getakteten Kommunikationssystem. Eine Ablaufebene der Automatisierungskomponente (Fast-cycle) (z. B. Lageregelung in einer Steuerung, Drehmomentregelung eines Antriebs) ist auf den Kommunikationszyklus synchronisiert. Dadurch wird der Kommunikationstakt festgelegt. Andere, niederperformante Algorithmen (Slow-cycle) (z. B. Temperaturregelungen) der Automatisierungskomponente können ebenfalls nur über diesen Kommunikationstakt mit anderen Komponenten (z. B. Binärschalter für Lüfter, Pumpen, . . .) kommunizieren, obwohl ein langsamerer Zyklus ausreichend wäre. Durch Verwendung nur eines Kommunikationstaktes zur Übertragung von allen Informationen im System entstehen hohe Anforderungen an die Bandbreite der Übertragungsstrecke.
- Ein Peripherieabbild setzt sich aus einer Summe von Datensätzen zusammen, die über Echtzeitkommunikation mit anderen Automatisierungsgeräten ausgetauscht werden. Datensätze, die von einem Automatisierungsgerät über die Echtzeitkommunikation empfangen werden sind Eingangsdaten. Datensätze, die von einem Automatisierungsgerät über die Echtzeitkommunikation gesendet werden, sind Ausgangsdaten. In einem Automatisierungsgerät werden in einem Anwendungsprogramm, das zyklisch aufgerufen wird, Eingangsdaten verarbeitet und neue Ausgangsdaten erzeugt. Das Anwendungsprogramm kann sich aus mehreren verschiedenen Funktionen zusammensetzen, die zu unterschiedlichen Zeiten mit verschiedenen Datensätzen arbeiten. Es ist nicht zwingend, dass in jedem Anwendungszyklus alle Funktionen des Anwendungsprogramms aufgerufen werden. Dadurch werden nicht in jedem Anwendungszyklus alle Eingangsdaten verarbeitet und neue Ausgangsdaten generiert.
- Bisher werden bei einer zyklischen Echtzeitkommunikation in jedem Kommunikationszyklus alle Daten eines Peripherieabbildes ausgetauscht, unabhängig davon, ob die Eingangsdaten in jedem Anwendungszyklus verarbeitet bzw. neue Ausgangsdaten generiert wurden.
- Der Erfindung liegt daher die Aufgabe zu Grunde ein verbessertes Verfahren für die Übertragung von Echtzeit- Datentelegrammen über ein zyklisches Kommunikationssystem, insbesondere Realtime Ethernet, zu schaffen sowie ein entsprechend verbessertes Kommunikationssystem und einen Teilnehmer eines solches Kommunikationssystems.
- Die der Erfindung zu Grunde liegenden Aufgaben werden jeweils mit den Merkmalen der entsprechenden unabhängigen Patentansprüche gelöst. Bevorzugte Ausführungsformen der Erfindung sind in den abhängigen Patentansprüchen angegeben.
- Erfindungsgemäß wird ein Übertragungszyklus in einen Teil- Zyklus für die geplante Echtzeit-Kommunikation und in einem weiteren Teil-Zyklus für die ungeplante Nichtechtzeit- Kommunikation unterteilt. Die in einem Teilzyklus für die Echtzeit-Kommunikation abzuarbeitende Übertragungssequenz ist dabei nicht für alle Übertragungszyklen statisch, sondern ist dynamisch in Abhängigkeit von der Zyklusnummer programmierbar.
- Nach einer bevorzugten Ausführungsform der Erfindung sind für den Teil-Zyklus für die Echtzeit-Kommunikation verschiedene Teil-Sequenzen vorgegeben, wobei eine in einem aktuellen Teil-Zyklus abzuarbeitende Übertragungssequenz in Abhängigkeit von der Zyklusnummer dynamisch aus den vorgegebenen Teil-Sequenzen zusammengesetzt wird. Dadurch ermöglicht die Erfindung, dass nicht jede Übertragungssequenz alle vorkommenden Datentelegramme beinhaltet, sondern dass Datentelegramme, deren Nutzdaten sich nicht geändert haben, ausgelassen werden können.
- Nach einer bevorzugten Ausführungsform der Erfindung ist die Übertragungssequenz als Empfangssequenz und/oder Sendesequenz eines Teilnehmers des Kommunikationssystems ausgebildet.
- Nach einer weiteren bevorzugten Ausführungsform der Erfindung wird die Unterteilung eines Übertragungszyklus in einen Teil- Zyklus für die Echtzeit-Kommunikation und einen Teil-Zyklus für die Nichtechtzeit-Kommunikation an die aktuell abzuarbeitende Übertragungssequenz adaptiert. Auf diese Art und Weise kann die Länge des Teil-Zyklus für die Echtzeitkommunikation, die für die Bearbeitung der Übertragungssequenz erforderlich ist, in jedem Übertragungszyklus minimiert werden, so dass eine maximale Länge für den zweiten Teil-Zyklus für die Nichtechtzeit-Kommunikation verbleibt.
- Nach einer weiteren bevorzugten Ausführungsform der Erfindung wird die Übertragungssequenz aus einer dynamischen Übertragungsliste generiert, die vorgegebene Teil-Sequenzen von zu übertragenden Echtzeit-Datentelegrammen und bedingte Steuerungskommandos aufweist. Die bedingten Steuerungskommandos beinhalten bedingte Sprünge oder Stopkommandos, wobei die Bedingung auf der Zyklusnummer basiert.
- Nach einer weiteren bevorzugten Ausführungsform der Erfindung kommt ein Kommunikationssystem zur Anwendung, wie es aus der deutschen Patentanmeldung DE 100 58 524.8 bekannt ist. Ein solches Kommunikationssystem ermöglicht einen Mischbetrieb von echtzeitkritischer und nichtechtzeitkritischer, insbesondere Inter- bzw. Intranet-basierter Datenkommunikation.
- Dies ermöglicht sowohl eine echtzeitkritische (RT; Real-Time) als auch eine nicht echtzeitkritische Kommunikation (NRT; Non-Real-Time) in einem schaltbaren Datennetz, bestehend aus Teilnehmern und Koppeleinheiten, beispielsweise eines verteilten Automatisierungssystems durch einen zyklischen Betrieb. In einem sogenannten Übertragungszyklus existiert für alle Teilnehmer und Koppeleinheiten des schaltbaren Datennetzes jeweils wenigstens ein Bereich zur Übermittlung echtzeitkritischer und wenigstens ein Bereich zur Übermittlung nicht echtzeitkritischer Daten, wodurch die echtzeitkritische von der nicht echtzeitkritischen Kommunikation getrennt wird.
- Da alle Teilnehmer und Koppeleinheiten immer auf eine gemeinsame Zeitbasis synchronisiert sind, finden die jeweiligen Bereiche zur Übermittlung von Daten für alle Teilnehmer und Koppeleinheiten jeweils zum selben Zeitpunkt statt, d. h. die echtzeitkritische Kommunikation findet zeitlich unabhängig von der nicht echtzeitkritischen Kommunikation statt und wird deshalb nicht von dieser beeinflusst. Die echtzeitkritische Kommunikation wird im Voraus geplant. Einspeisen der Datentelegramme beim originären Sender sowie deren Weiterleitung mittels der beteiligten Koppeleinheiten erfolgt zeitbasiert. Durch Zwischenspeicherung in den jeweiligen Koppeleinheiten wird erreicht, dass zu beliebiger Zeit auftretende, spontane, internetfähige, nicht echtzeitkritische Kommunikation in den für die nicht echtzeitkritische Kommunikation vorgesehenen Übertragungsbereich eines Übertragungszyklus verschoben und auch nur dort übertragen wird.
- Ein Übertragungszyklus ist beispielsweise in einen ersten Bereich, der zur Übertragung echtzeitkritischer Daten vorgesehen ist, und einen zweiten Bereich, der zur Übertragung nicht echtzeitkritischer Daten vorgesehen ist, aufgeteilt. Die Länge des dargestellten Übertragungszyklus symbolisiert dessen zeitliche Dauer, die vorteilhafterweise je nach Anwendungszweck zwischen einer Mikrosekunde und zehn Sekunden beträgt.
- Die Zeitdauer eines Übertragungszyklus ist veränderbar, wird aber vor dem Zeitpunkt der Datenübertragung, beispielsweise durch einen Steuerungsrechner, wenigstens einmal festgelegt und ist für alle Teilnehmer und Koppeleinheiten des schaltbaren Datennetzes jeweils gleich lang. Die Zeitdauer eines Übertragungszyklus und/oder die Zeitdauer des ersten Bereichs, der zur Übertragung von echtzeitkritischen Daten vorgesehen ist, kann jederzeit, beispielsweise zu vorher geplanten, festen Zeitpunkten und/oder nach einer geplanten Anzahl von Übertragungszyklen, vorteilhafterweise vor Beginn eines Übertragungszyklus verändert werden, indem der Steuerungsrechner beispielsweise auf andere geplante, echtzeitkritische Übertragungszyklen umschaltet.
- Darüber hinaus kann der Steuerungsrechner jederzeit im laufenden Betrieb eines Automatisierungssystems je nach Erfordernis Neuplanungen der Echtzeitkommunikation durchführen, wodurch ebenfalls die Zeitdauer eines Übertragungszyklus verändert werden kann. Die absolute Zeitdauer eines Übertragungszyklus ist ein Maß für den zeitlichen Anteil, bzw. die Bandbreite der nicht echtzeitkritischen Kommunikation während eines Übertragungszyklus, also die Zeit, die für die nicht echtzeitkritische Kommunikation zur Verfügung steht. So hat die nicht echtzeitkritische Kommunikation beispielsweise bei einer Zeitdauer eines Übertragungszyklus von 500 us eine Bandbreite von 30%, bei 10 ms eine Bandbreite von 97%.
- Im ersten Bereich, der zur Übertragung echtzeitkritischer Daten vorgesehen ist, ist vor dem Senden der eigentlichen echtzeitkritischen Datentelegramme eine gewisse Zeitdauer zum Senden von Datentelegrammen zur Organisation der Datenübertragung reserviert.
- Die Datentelegramme zur Organisation der Datenübertragung enthalten beispielsweise Daten zur Zeitsynchronisation der Teilnehmer und Koppeleinheiten des Datennetzes und/oder Daten zur Topologieerkennung des Netzwerks. Nachdem diese Datentelegramme gesendet wurden, werden die echtzeitkritischen Datentelegramme gesendet.
- Da die Echtzeitkommunikation durch den zyklischen Betrieb im Voraus planbar ist, sind für alle zu übertragenden, echtzeitkritischen Datentelegramme die Sendezeitpunkte bzw. die Zeitpunkte für die Weiterleitung der echtzeitkritischen Datentelegramme vor Beginn der Datenübertragung bekannt, d. h. die Zeitdauer des Bereichs zur Übertragung von nicht echtzeitkritischen Daten ist automatisch durch die Zeitdauer des Bereichs zur Übertragung von echtzeitkritischen Daten festgelegt.
- Vorteil dieser Anordnung ist, dass jeweils nur die notwendige Übertragungszeit für den echtzeitkritischen Datenverkehr verwendet wird und nach dessen Beendigung die restliche Zeit automatisch für die nicht echtzeitkritische Kommunikation, beispielsweise für die nicht planbare Internetkommunikation bzw. andere, nicht echtzeitkritische Anwendungen zur Verfügung steht.
- Besonders vorteilhaft ist, dass die Zeitdauer des Bereichs zur Übertragung von echtzeitkritischen Daten jeweils durch die verbindungsspezifisch zu übertragenden Daten bestimmt wird, d. h., die Zeitdauer der beiden Bereiche wird für jede einzelne Datenverbindung durch die jeweils notwendige Datenmenge der zu übertragenden echtzeitkritischen Daten bestimmt, wodurch die zeitliche Aufteilung der beiden Bereiche für jede einzelne Datenverbindung für jeden Übertragungszyklus verschieden sein kann. Es wird jeweils nur die notwendige Übertragungszeit für den echtzeitkritischen Datenverkehr verwendet und die restliche Zeit eines Übertragungszyklus steht automatisch für die nicht echtzeitkritische Kommunikation, beispielsweise für die nicht planbare Internetkommunikation bzw. andere, nicht echtzeitkritische Anwendungen für alle Teilnehmer des schaltbaren Datennetzes zur Verfügung.
- Da die Echtzeitkommunikation im Voraus entsprechend so geplant ist, dass die betrachteten, echtzeitkritischen Datentelegramme spätestens zum Weiterleitungszeitpunkt oder früher in den entsprechenden Koppeleinheiten ankommen, können die echtzeitkritischen Datentelegramme ohne zeitlichen Zwischenraum gesendet bzw. weitergeleitet werden, so dass durch das dicht gepackte Senden, bzw. Weiterleiten, die zur Verfügung stehende Zeitdauer bestmöglich genutzt wird. Selbstverständlich ist es aber auch möglich bei Bedarf Sendepausen zwischen der Übertragung der einzelnen Datentelegramme einzubauen.
- Nach einer bevorzugten Ausführungsform der Erfindung hat ein geschaltetes Netzwerk mindestens zwei Teilnehmer, beispielsweise einen Antrieb und einen Steuerrechner, mit jeweils integrierten Koppeleinheiten und einem weiteren Teilnehmer ohne Koppeleinheit, die durch Datenverbindungen miteinander verbunden sind. Die Koppeleinheiten besitzen jeweils lokale Speicher, die über interne Schnittstellen mit den Teilnehmern verbunden sind. Über die Schnittstellen tauschen die Teilnehmer Daten mit den entsprechenden Koppeleinheiten aus.
- Die lokalen Speicher sind innerhalb der Koppeleinheiten über die Datenverbindungen mit den Steuerwerken verbunden. Die Steuerwerke empfangen Daten bzw. leiten Daten weiter über die internen Datenverbindungen von bzw. zu den lokalen Speichern oder über eine oder mehrere der externen Ports. Durch Anwendung des Verfahrens der Zeitsynchronisation haben die Koppeleinheiten stets eine gemeinsame, synchrone Zeitbasis.
- Hat ein Teilnehmer echtzeitkritische Daten, so werden diese zum vorausgeplanten Zeitpunkt während des, für die echtzeitkritische Kommunikation reservierten Bereichs über die entsprechende Schnittstelle und den lokalen Speicher vom entsprechenden Steuerwerk abgeholt und von dort über den vorgesehenen externen Port zur nächsten verbundenen Koppeleinheit gesendet. Sendet ein anderer Teilnehmer zur gleichen Zeit, also während der echtzeitkritischen Kommunikation, nicht echtzeitkritische Daten, beispielsweise für eine Internetabfrage, so werden diese vom Steuerwerk über den externen Port empfangen und über eine interne Verbindung an den lokalen Speicher weitergeleitet und dort zwischengespeichert.
- Von dort werden sie erst im, für die nicht echtzeitkritische Kommunikation reservierten Bereich wieder abgeholt und an den Empfänger weitergeleitet, d. h. sie werden in den zweiten Bereich des Übertragungszyklus verschoben, der für die spontane, nicht echtzeitkritische Kommunikation vorbehalten ist. Störungen der Echtzeitkommunikation werden dadurch ausgeschlossen.
- Für den Fall, dass nicht alle zwischengespeicherten, nicht echtzeitkritischen Daten während des, für die Übertragung der nicht echtzeitkritischen Daten vorgesehenen Bereichs eines Übertragungszyklus übertragen werden können, werden sie im lokalen Speicher der entsprechenden Koppeleinheit solange zwischengespeichert, bis sie während eines, für die Übertragung der nicht echtzeitkritischen Daten vorgesehenen Bereichs eines späteren Übertragungszyklus übertragen werden können, wodurch Störungen der Echtzeitkommunikation ebenfalls in jedem Fall ausgeschlossen werden.
- Die echtzeitkritischen Datentelegramme, die über entsprechende Datenverbindungen über die externen Ports beim Steuerwerk der zugehörigen Koppeleinheit eintreffen, werden unmittelbar über die entsprechenden externen Ports weitergeleitet. Dies ist möglich, da die Echtzeitkommunikation im Voraus geplant ist und deshalb für alle zu übertragenden, echtzeitkritischen Datentelegramme Sende- und Empfangszeitpunkt, alle jeweils beteiligten Koppeleinheiten sowie alle Zeitpunkte für die Weiterleitung und alle Empfänger der echtzeitkritischen Datentelegramme bekannt sind.
- Durch die im Voraus erfolgte Planung der Echtzeitkommunikation ist auch sichergestellt, dass es auf den Datenverbindungen zu keinen Datenkollisionen kommt. Die Weiterleitungszeitpunkte aller echtzeitkritischen Datenpakete von den jeweils beteiligten Koppeleinheiten sind ebenfalls vorher geplant und damit eindeutig festgelegt. Das Ankommen der echtzeitkritischen Datentelegrammen ist deshalb so geplant, dass die betrachteten, echtzeitkritischen Datentelegramme spätestens zum Weiterleitungszeitpunkt oder früher im Steuerwerk der entsprechenden Koppeleinheit ankommen. Damit ist das Problem von Zeitunschärfen, die sich insbesondere bei langen Übertragungsketten bemerkbar machen, eliminiert. Wie oben ausgeführt ist folglich ein gleichzeitiger Betrieb von echtzeitkritischer und nicht echtzeitkritischer Kommunikation im selben schaltbaren Datennetz, sowie ein beliebiger Anschluss von zusätzlichen Teilnehmern an das schaltbare Datennetz möglich, ohne die Echtzeitkommunikation selbst störend zu beeinflussen.
- In Anwendung des oben geschilderten Prinzips liegen die Echtzeitdaten, die zwischen Knoten (z. B. Steuerungen, Regelungen, usw.) zyklisch ausgetauscht werden, in einem Peripherieabbildspeicher und werden von einem Anwendungsprogramm, das auf dem Knoten läuft, zyklisch verarbeitet. Die zyklische Verarbeitung kann in jedem Zyklus zum Kommunikationszyklus, bzw. zum Vielfachen eines Kommunikationszyklus synchron erfolgen. Bei Steuerungen kann die Verarbeitung der Echtzeitdaten auch asynchron zum Kommunikationszyklus erfolgen. Es ist nicht zwingend notwendig, dass in einem Kommunikationszyklus alle Echtzeitdaten eines Peripherieabbildes ausgetauscht werden.
- Die Erfindung ermöglicht es also, dass nicht alle Daten aus dem Peripherieabbild in jedem Kommunikationszyklus ausgetauscht werden müssen. Dies kann insbesondere die folgenden Vorteile haben:
- - Der Kommunikationszyklus ist erheblich schneller als die Änderungsfrequenz von Daten, wie zum Beispiel der Temperatur, im Peripherieabbild. Auf die Übertragung von Datentelegrammen mit unveränderten Nutzdaten kann erfindungsgemäß durch dynamische Anpassung der Übertragungssequenz verzichtet werden.
- - Nicht in jedem Kommunikationszyklus werden alle Daten des Peripherieabbildes durch ein Anwendungsprogramm verarbeitet. Das Anwendungsprogramm kann zum Beispiel aus mehreren Funktionen bestehen, die nicht in jedem Kommunikationszyklus ausgeführt werden. Auch wenn sich Nutzdaten eines Datentelegramms ändern, werden diese unter Umständen nicht benötigt, da das Anwendungsprogramm gerade eine andere Funktion ausführt.
- - Bei einem isochronen Realtime Ethernet (IRTE) kann eine sehr hohe Bandbreite für die Standard-Ethernet Kommunikation im NRT-Zeitbereich zur Verfügung gestellt werden.
- Nach einer bevorzugten Ausführungsform der Erfindung wird das aus der DE 100 58 524.8 bekannte Kommunikationssystem so weitergebildet, dass der Echtzeitbereich bzw. isochrone Realtime (IRT)-Zeitbereich eines Übertragungszyklus in Teil-Sequenzen unterteilt wird. Der IRT-Zeitbereich eines Übertragungszyklus wird im Folgenden als Makro-Zyklus und die Teil-Sequenzen werden als Mikro-Zyklen bezeichnet.
- In jedem Makrozyklus müssen bestimmte Echtzeitdaten aus dem Peripherieabbild ausgetauscht werden. Um die Echtzeitdaten zyklisch zu versenden, gibt es Auftragslisten. Eine Auftragsliste setzt sich aus verketteten Kontrollstrukturen zusammen. Jede Kontrollstruktur der Auftragsliste beschreibt an wen, zu welchem Zeitpunkt im Kommunikationszyklus, welche Daten aus dem Peripherieabbild zu versenden sind. In der Auftragsliste gibt es noch zusätzliche Kontrollstrukturen, die festlegen, ob im aktuellen Kommunikationszyklus weitere Echtzeittelegramme versendet werden sollen bzw. das Ende der Abarbeitung der Auftragsliste für den aktuellen Kommunikationszyklus erreicht ist.
- Über die Steuerungskommandos in der Auftragsliste kann gesteuert werden, welche Echtzeitdaten in welchem isochronen Kommunikationszyklus übertragen werden. Bei einer Isochrones Realtime Ethernet (IRTE)-Koppeleinheit gibt es für die IRTE- Kommunikation an jedem Sende- und Empfangsport jeweils eine Auftragsliste.
- Von besonderem Vorteil ist es darüber hinaus, dass die offenbarten Verfahren in Automatisierungssystemen, insbesondere bei und in Verpackungsmaschinen, Pressen, Kunststoffspritzmaschinen, Textilmaschinen, Druckmaschinen, Werkzeugmaschinen, Robotor, Handlingssystemen, Holzverarbeitungsmaschinen, Glasverarbeitungsmaschinen, Keramikverarbeitungsmaschinen sowie Hebezeugen eingesetzt bzw. verwendet werden können.
- Im Weiteren werden bevorzugte Ausführungsbeispiele der Erfindung mit Bezugnahme auf die Zeichnungen näher erläutert. Es zeigen:
- Fig. 1 ein Blockdiagramm einer Ausführungsform eines erfindungsgemäßen Teilnehmers,
- Fig. 2 eine Ausführungsform einer dynamischen Übertragungsliste mit Teilsequenzen und bedingten Steuerungskommandos,
- Fig. 3 die dynamische Aufteilung aufeinanderfolgender Übertragungszyklen.
- Die Fig. 1 zeigt einen Teilnehmer 100 eines isochronen, zyklischen Kommunikationssystems, in dem die Übertragungszyklen in einen IRT-Teil und einen NRT-Teil aufteilbar sind. Das Kommunikationssystem hat weitere Teilnehmer, die prinzipiell gleich wie der Teilnehmer 100 aufgebaut sind.
- Der Teilnehmer 100 hat verschiedene Sende- und/oder Empfangs-Ports 102, 104, 106 und 108. Über die Ports 102 bis 108 sendet und/oder empfängt der Teilnehmer 100 Echtzeit- und Nichtechtzeit-Datentelegramme von anderen Teilnehmern des Kommunikationssystems.
- Der Teilnehmer 100 hat ein Anwendungsprogramm 110, welches beispielsweise ein Steuerungs- oder Regelungsverfahren implementiert. Für die Steuerung oder Regelung benötigt das Programm 110 fortlaufend Nutzdaten und greift dazu auf den Speicher 112 zu. Ebenso legt das Programm 110 Ausgabedaten in dem Speicher 112 ab. Entsprechend wird der Speicher 112 auch als Kommunikationsspeicher bezeichnet.
- Der Teilnehmer 100 hat ferner ein Modul 114, welches für die Erzeugung einer Übertragungssequenz von in einem Übertragungszyklus zu sendenden oder zu empfangenden IRT- Datentelegrammen dient. Das Modul 114 ist dabei dem Port 102 zugeordnet. Vorzugsweise hat jeder der Ports des Teilnehmers 100 ein dediziertes Modul 114.
- Das Modul 114 beinhaltet eine Anzahl von Teil-Sequenzen von zu sendenden oder zu empfangenden Datentelegrammen. Diese Teil-Sequenzen sind als Mikro-Zyklen 1, 2, 3, . . . in dem Modul 114 abgespeichert. Jeder der Mikro-Zyklen 1, 2, 3, . . . besteht dabei aus einer Liste von zu sendenden oder zu empfangenden Datentelegrammen, wobei jeder Listeneintrag die Kennung des betreffenden Datentelegramms und eine Adresse für die entsprechenden Nutzdaten in dem Speicher 112 aufweist.
- Das Modul 114 hat ferner eine Logik 116, die beispielsweise durch einen entsprechend programmierten Mikroprozessor oder durch eine anwendungsspezifische integrierte Schaltung (ASIC) zur Verfügung gestellt wird. Die Logik 116 ist mit einem Zykluszähler 118 verknüpft.
- Beim Betrieb des Teilnehmers 100 greift die Logik 116 auf den aktuellen Zählerstand des Zykluszählers 118 zu, um die Zyklusnummer des folgenden Übertragungszyklus zu ermitteln. Basierend auf dieser Zyklusnummer stellt die Logik 116 die in dem IRT-Teil des folgenden Übertragungszyklus abzuarbeitende Übertragungssequenz zusammen, indem ein oder mehrere der Mikro-Zyklen 1, 2, 3, . . . ausgewählt und zu der Übertragungssequenz zusammengestellt werden.
- Die Zusammensetzung einer aktuell in einem Übertragungszyklus abzuarbeitenden Übertragungssequenz aus Mikro-Zyklen 1, 2, 3, . . . ist also nicht statisch, sondern dynamisch von der Zyklusnummer abhängig. Auf diese Art und Weise variiert die Art und die Anzahl der in dem IRT-Teil der Kommunikationszyklen zu übertragenden Datentelegramme je nach der Änderungsfrequenz der Nutzdaten und/oder nach den Anforderungen des Programms 110.
- Die Fig. 2 zeigt eine Ausführungsform des Moduls 114 der Fig. 1:
In dieser Ausführungsform basiert das Modul 114 auf einer dynamischen Übertragungsliste 120, die die Mikro-Zyklen 1, 2, 3, . . . beinhaltet, sowie zusätzlich bedingte Steuerungskommandos. - In dem hier betrachteten Beispielsfall beginnt die Übertragungsliste 120 mit dem Mikrozyklus 1, der von einem Steuerungskommando 122 gefolgt wird.
- Auf das Steuerungskommando 122 folgt der Mikro-Zyklus 2, auf den das Steuerungskommando 124 folgt, danach kommt der Mikro- Zyklus 3, das Steuerungskommando 126, der Mikro-Zyklus 4, das Steuerungskommando 128 und der Mikro-Zyklus 5.
- Jedes der Steuerungskommandos beinhaltet ein oder mehrere bedingte Sprünge in der Übertragungsliste 120 und/oder einen bedingten Stop. Die Bedingung hängt jeweils von der Zyklusnummer ab.
- Beispielsweise beinhaltet das Steuerungskommando 122 einen bedingten Sprung 130 auf den Mikro-Zyklus 4 sowie einen bedingten Sprung 132 auf den Mikro-Zyklus 2 sowie weitere der Übersichtlichkeit halber in der Fig. 2 nicht dargestellte bedingte Sprünge.
- Die Fig. 3 veranschaulicht die dynamische Zusammensetzung der Übertragungssequenzen in aufeinanderfolgenden Übertragungszyklen.
- Die Mikro-Zyklen 1 bis 5 sind dabei durch unterschiedliche Schraffuren symbolisiert. Entlang der Zeitachse t sind die Übertragungszyklen mit den Zyklusnummern 0, 1 und 2 dargestellt. Die entsprechenden Übertragungszyklen sind in der Fig. 3 als Isochronzyklus Zt_0, Isochronzyklus Zt_1, Isochronzyklus Zt_2, . . . bezeichnet.
- Jeder der Isochronzyklen setzt sich dabei aus einem Teil- Zyklus für die Echtzeit-Kommunikation "IRT-Z." und einen Teil-Zyklus für die Nichtechtzeit-Kommunikation "NRT-Z." zusammen.
- Die Aufteilung eines Isochronzyklus in den IRT-Teil und den NRT-Teil ist dynamisch von der Zyklusnummer abhängig. Beispielsweise besteht der IRT-Teil des Isochronzyklus Zt_0 aus den Mikro-Zyklen 1 und 4, die den Makro-Zyklus 134 ergeben, worauf der NRT-Teil des Übertragungszyklus folgt, der die verbleibende Zeitdauer in dem Übertragungszyklus mit der Zyklusnummer 0 ausfüllt.
- Dies entspricht einer Abarbeitung der Übertragungsliste 120 beginnend mit dem Mikro-Zyklus 1, worauf das Steuerungskommando 122 durchgeführt wird, das heißt wegen der Zyklusnummer "0" ein bedingter Sprung 130 (vgl. Fig. 2) auf den Mikro- Zyklus 4. Das Steuerungskommando 122 beendet dann die Übertragungsliste 120 für den Zyklus mit der Zyklusnummer 0.
- Entsprechend wird der Makro-Zyklus 136 des danach folgenden Isochronzyklus mit der Zyklusnummer 1 aus den Mikro-Zyklen 1, 2, und 3 zusammengesetzt. In dem Makro-Zyklus 136 des Übertragungszyklus mit der Zyklusnummer 1 erfolgt also der Sprung 132 (vgl. Fig. 2).
- Der Makro-Zyklus 138 des Übertragungszyklus der Zyklusnummer 2 setzt sich dagegen aus den Mikro-Zyklen 1 und 5 zusammen; der danach folgende Übertragungszyklus der Zyklusnummer 3 hat den Makro-Zyklus 140 mit den Mikro-Zyklen 1 und 4.
Claims (12)
1. Verfahren zur Übertragung von Echtzeit-Datentelegrammen
in einem zyklischen Kommunikationssystem, wobei jeder
Übertragungszyklus einen ersten Teil-Zyklus (IRT-Z.) für
die Echtzeit-Kommunikation und einen zweiten Teil-
Zyklus (NRT-Z.) für die Nichtechtzeit-Kommunikation
aufweist, mit folgenden Schritten:
- Bestimmung (118) einer Zyklusnummer,
- Bearbeitung einer Übertragungssequenz von Echtzeit-
Datentelegrammen in dem ersten Teil-Zyklus, wobei die
Übertragungssequenz aus ein oder mehreren Teil-
Sequenzen (1, 2, 3, 4, 5) zusammengesetzt wird, und
die Zusammensetzung von der Zyklusnummer abhängt.
2. Verfahren nach Anspruch 1, wobei es sich bei der
Übertragungssequenz um eine Empfangssequenz oder eine
Sendesequenz eines Teilnehmers (100) des Kommunikationssystems
handelt.
3. Verfahren nach Anspruch 1 oder 2, wobei die Länge des
ersten Teil-Zyklus in Abhängigkeit von der
Übertragungssequenz gewählt wird.
4. Verfahren nach Anspruch 1, 2 oder 3, wobei die
Übertragungssequenz aus einer dynamischen Übertragungsliste
(120) mit Teil-Sequenzen und bedingten
Steuerungskommandos (122, 124, 126, 128) erzeugt wird, wobei die
Bedingung auf der Zyklus-Nummer basiert.
5. Teilnehmer für ein zyklisches Kommunikationssystem, wobei
jeder Übertragungszyklus einen ersten Teil-Zyklus (IRT-
Z.) für die Echtzeit-Kommunikation und einen zweiten
Teil-Zyklus (NRT-Z.) für die Nichtechtzeit-Kommunikation
aufweist, mit
Mitteln (118) zur Bestimmung einer Zyklus-Nummer,
Mitteln zur Bearbeitung einer Übertragungssequenz in dem ersten Teil-Zyklus, wobei die Übertragungssequenz aus ein oder mehreren Teil-Sequenzen (1, 2, 3, 4, 5) zusammengesetzt wird, und die Zusammensetzung von der Zyklus-Nummer abhängt.
Mitteln (118) zur Bestimmung einer Zyklus-Nummer,
Mitteln zur Bearbeitung einer Übertragungssequenz in dem ersten Teil-Zyklus, wobei die Übertragungssequenz aus ein oder mehreren Teil-Sequenzen (1, 2, 3, 4, 5) zusammengesetzt wird, und die Zusammensetzung von der Zyklus-Nummer abhängt.
6. Teilnehmer nach Anspruch 5, wobei die Übertragungssequenz
als Empfangssequenz oder Sendesequenz des Teilnehmers
ausgebildet ist.
7. Teilnehmer nach Anspruch 5 oder 6 mit Mitteln zur Wahl
der Länge des ersten Teil-Zyklus in Abhängigkeit von der
Übertragungssequenz.
8. Teilnehmer nach Anspruch 5, 6 oder 7, mit Mitteln zur
Generierung der Übertragungssequenz aus einer dynamischen
Übertragungsliste (120) mit Teilsequenzen und bedingten
Steuerungskommandos (122, 124, 126, 128), wobei die
Bedingung auf der Zyklusnummer basiert.
9. Zyklisches Kommunikationssystem, wobei jeder
Übertragungszyklus einen ersten Teil-Zyklus (IRT-Z.) für die
Echtzeit-Kommunikation und einen zweiten Teil-Zyklus
(NRT-Z.) für die Nichtechtzeit-Kommunikation aufweist,
und mit mindestens einem ersten und einem zweiten
Teilnehmer (100), wobei die ersten und zweiten Teilnehmer
aufweisen:
Mittel (118) zur Bestimmung einer Zyklus-Nummer,
Mittel zur Bearbeitung einer Übertragungssequenz in dem ersten Teil-Zyklus, wobei die Übertragungssequenz aus ein oder mehreren Teil-Sequenzen (1, 2, 3, 4, 5) zusammengesetzt wird, und die Zusammensetzung von der Zyklus-Nummer abhängt.
Mittel (118) zur Bestimmung einer Zyklus-Nummer,
Mittel zur Bearbeitung einer Übertragungssequenz in dem ersten Teil-Zyklus, wobei die Übertragungssequenz aus ein oder mehreren Teil-Sequenzen (1, 2, 3, 4, 5) zusammengesetzt wird, und die Zusammensetzung von der Zyklus-Nummer abhängt.
10. Zyklisches Kommunikationssystem nach Anspruch 9, wobei
die Übertragungssequenz als Empfangssequenz oder
Sendesequenz ausgebildet ist.
11. Zyklisches Kommunikationssystem nach Anspruch 9 oder 10
mit Mitteln zur Wahl der Länge des ersten Teil-Zyklus in
Abhängigkeit von der Übertragungssequenz.
12. Zyklisches Kommunikationssystem nach Anspruch 9, 10 oder
11, mit Mitteln zur Generierung der Übertragungssequenz
aus einer dynamischen Übertragungsliste (120) mit
Teilsequenzen und bedingten Steuerungskommandos, wobei die
Bedingung auf der Zyklus-Nummer basiert.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10235436A DE10235436A1 (de) | 2001-09-26 | 2002-08-02 | Verfahren zur Übertragung von Echtzeit-Datentelegrammen in einem zyklischen Kommunikationssystem |
AT02774355T ATE531155T1 (de) | 2001-09-26 | 2002-09-13 | Verfahren zur übertragung von echtzeit- datentelegrammen in einem zyklischen kommunikationssystem |
PCT/DE2002/003434 WO2003028289A2 (de) | 2001-09-26 | 2002-09-13 | Verfahren zur übertragung von echtzeit-datentelegrammen in einem zyklischen kommunikationssystem |
EP02774355A EP1430643B1 (de) | 2001-09-26 | 2002-09-13 | Verfahren zur übertragung von echtzeit-datentelegrammen in einem zyklischen kommunikationssystem |
US10/809,457 US7852879B2 (en) | 2001-09-26 | 2004-03-26 | Method for transmitting real-time data messages in a cyclic communications system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10147435 | 2001-09-26 | ||
DE10235436A DE10235436A1 (de) | 2001-09-26 | 2002-08-02 | Verfahren zur Übertragung von Echtzeit-Datentelegrammen in einem zyklischen Kommunikationssystem |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10235436A1 true DE10235436A1 (de) | 2003-09-11 |
Family
ID=27740179
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10235436A Ceased DE10235436A1 (de) | 2001-09-26 | 2002-08-02 | Verfahren zur Übertragung von Echtzeit-Datentelegrammen in einem zyklischen Kommunikationssystem |
Country Status (2)
Country | Link |
---|---|
AT (1) | ATE531155T1 (de) |
DE (1) | DE10235436A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10324925A1 (de) * | 2003-06-03 | 2004-12-23 | Elau Elektronik Automations Ag | Verpackungsmaschine |
-
2002
- 2002-08-02 DE DE10235436A patent/DE10235436A1/de not_active Ceased
- 2002-09-13 AT AT02774355T patent/ATE531155T1/de active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10324925A1 (de) * | 2003-06-03 | 2004-12-23 | Elau Elektronik Automations Ag | Verpackungsmaschine |
Also Published As
Publication number | Publication date |
---|---|
ATE531155T1 (de) | 2011-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1368942B1 (de) | Verfahren und system zur kopplung von datennetzen | |
EP1388238B1 (de) | System und verfahren zur parallelen übertragung von echtzeitkritischen und nicht echtzeitkritischen daten über schaltbare datennetze, insbesondere ethernet | |
DE10147422A1 (de) | Kommunikationssystem und Verfahren zur Synchronisation eines Kommunikationszyklus | |
EP3679691B1 (de) | Datenübertragungsverfahren und kommunikationsnetzwerk | |
EP1430643B1 (de) | Verfahren zur übertragung von echtzeit-datentelegrammen in einem zyklischen kommunikationssystem | |
WO2003096637A2 (de) | Verfahren und system zur übertragung von daten über schaltbare datennetze | |
EP1370916B1 (de) | Anwendungen eines schaltbaren datennetzes für echtzeit- und nichtechtzeitkommunikation | |
EP1826646B1 (de) | Verfahren, Knoten und Netzwerk zum zyklischen Versenden von Ethernet-Telegrammen | |
EP1435027B1 (de) | Verfahren zur übertragung eines datentelegramms zwischen einer echtzeit-domain und einer nicht-echtzeit-domain und koppeleinheit | |
DE10147421A1 (de) | Anwendungen eines schaltbaren Datennetzes für Echtzeit- und Nichtechtzeitkommunikation | |
EP1436924B1 (de) | Verfahren zum betrieb eines endteilnehmers eines isochronen, zyklischen kommunikationssystems | |
EP1436950B1 (de) | Teilnehmergerät für ein hochperformantes kommunikationssystem | |
EP1540905B1 (de) | Verfahren zur übertragung von datentelegrammen in einem geschalteten, zyklischen kommunikationssystem | |
DE10140861A1 (de) | Verfahren und System zur Kopplung von Datennetzen | |
DE10235436A1 (de) | Verfahren zur Übertragung von Echtzeit-Datentelegrammen in einem zyklischen Kommunikationssystem | |
DE10141187B4 (de) | Elektronischer Schaltkreis und Verfahren für eine Kommunikationsschnittstelle mit Zwischenspeicherung | |
DE10241183A1 (de) | Verfahren zur Übertragung eines Datentelegramms zwischen einer Echtzeit-Domain und einer Nicht-Echtzeit-Domain und Koppeleinheit | |
EP1371193B1 (de) | Electronical switch and method for a communication interface with cut through buffer memory | |
DE10241191A1 (de) | Verfahren zum Betrieb eines Endteilnehmers eines isochronen, zyklischen Kommunikationssytems | |
DE10147434A1 (de) | System und Verfahren zur Diagnose von Kommunikationssystemen, insbesondere Real-time Ethernet | |
DE10234148A1 (de) | Teilnehmer für ein hochperformantes Kommunikationssystem | |
DE10234149A1 (de) | Empfang von Datentelegrammen in Kommunikationssystemen mit redundanten Netzwerkpfaden | |
DE10147429A1 (de) | System und Verfahren zur Planung des Datenverkehrs in Kommunikationssystemen, insbesondere Real-time Ethernet | |
DE10228823A1 (de) | Verfahren zum Betrieb eines isochronen, zyklischen Kommunikationssystems | |
DE10141424A1 (de) | Elektronischer Schaltkreis und Verfahren für eine Kommunikationsschnittstelle mit cut-through Pufferspeicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
R002 | Refusal decision in examination/registration proceedings | ||
R003 | Refusal decision now final |
Effective date: 20130611 |