DE102017012250A1 - Transferring data on a local bus - Google Patents

Transferring data on a local bus Download PDF

Info

Publication number
DE102017012250A1
DE102017012250A1 DE102017012250.4A DE102017012250A DE102017012250A1 DE 102017012250 A1 DE102017012250 A1 DE 102017012250A1 DE 102017012250 A DE102017012250 A DE 102017012250A DE 102017012250 A1 DE102017012250 A1 DE 102017012250A1
Authority
DE
Germany
Prior art keywords
data
identifier
bus
data packet
local bus
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.)
Granted
Application number
DE102017012250.4A
Other languages
German (de)
Other versions
DE102017012250B4 (en
Inventor
Daniel JEROLM
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.)
Wago Verwaltungs GmbH
Original Assignee
Wago Verwaltungs GmbH
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 Wago Verwaltungs GmbH filed Critical Wago Verwaltungs GmbH
Priority to DE102017012250.4A priority Critical patent/DE102017012250B4/en
Publication of DE102017012250A1 publication Critical patent/DE102017012250A1/en
Application granted granted Critical
Publication of DE102017012250B4 publication Critical patent/DE102017012250B4/en
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/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/427Loop networks with decentralised control
    • H04L12/43Loop networks with decentralised control with synchronous transmission, e.g. time division multiplex [TDM], slotted rings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/427Loop networks with decentralised control
    • H04L12/433Loop networks with decentralised control with asynchronous transmission, e.g. token ring, register insertion

Landscapes

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

Abstract

Ein Verfahren zum Betrieb eines Lokalbusses (6), insbesondere eines Ringbusses, mit Datenbusteilnehmern (7a, 7b, ..., 7n) ist beschrieben. Des Weiteren ist ein Lokalbusmaster (3) sowie die Datenbusteilnehmer (7a, 7b, ..., 7n) beschrieben. Das Verfahren weist auf Übertragen einer ersten Kennung (18) eines Zyklusrahmens (17) über den Lokalbus (6), wobei die erste Kennung (18) den Beginn des Zyklusrahmens (17) definiert, Übertragen von Prozessdaten (28) über den Lokalbus (6) in zumindest einem isochronen Datenpaket (25), wobei das zumindest eine isochronen Datenpaket (25) eine zweite Kennung (26) aufweist, wobei die zweite Kennung (26) unterschiedlich ist zur ersten Kennung (18), Übertragen von Managementdaten (34, 39b, 40b) über den Lokalbus (6) in zumindest einem asynchronen Datenpaket (30, 35), wobei das zumindest eine asynchronen Datenpaket (30, 35) eine dritte Kennung (31, 36) aufweist, wobei die dritte Kennung (31, 36) unterschiedlich ist zur ersten Kennung (18) und zweiten Kennung (26) und wobei das isochrone Datenpaket (25) und das asynchrone Datenpaket (30, 35) innerhalb des Zyklusrahmens (17) übertragen werden.

Figure DE102017012250A1_0000
A method for operating a local bus (6), in particular a ring bus, with data bus users (7a, 7b, ..., 7n) is described. Furthermore, a local bus master (3) and the data bus users (7a, 7b,..., 7n) are described. The method comprises transmitting a first identifier (18) of a cycle frame (17) via the local bus (6), the first identifier (18) defining the beginning of the cycle frame (17), transmitting process data (28) via the local bus (6 ) in at least one isochronous data packet (25), wherein the at least one isochronous data packet (25) has a second identifier (26), the second identifier (26) being different from the first identifier (18), transmitting management data (34, 39b , 40b) via the local bus (6) in at least one asynchronous data packet (30, 35), wherein the at least one asynchronous data packet (30, 35) has a third identifier (31, 36), wherein the third identifier (31, 36) different from the first identifier (18) and second identifier (26) and wherein the isochronous data packet (25) and the asynchronous data packet ( 30 , 35 ) are transmitted within the cycle frame (17).
Figure DE102017012250A1_0000

Description

Gebiet der ErfindungField of the invention

Die Erfindung betrifft im Allgemeinen das Übertragen von Daten auf einem Lokalbus.The invention generally relates to transmitting data on a local bus.

Stand der TechnikState of the art

Prozessdaten und Managementdaten werden zumeist im Kontext von Automatisierungsanlagen verwendet sind aber nicht darauf beschränkt.Process data and management data are mostly used in the context of automation equipment but are not limited thereto.

Automatisierungsanlagen werden insbesondere zur Steuerung von industriellen Anlagen, Gebäuden sowie von Verkehrsmitteln eingesetzt. Für die Steuerung einer Automatisierungsanlage sind zumeist mehrere Sensoren und Aktoren notwendig. Diese überwachen und steuern den von der Anlage ausgeführten Prozess. Die unterschiedlichen Sensoren und Aktoren einer Automatisierungsanlage werden dabei häufig auch als Automatisierungsgeräte bezeichnet.Automation systems are used in particular for the control of industrial plants, buildings and means of transport. For the control of an automation system usually several sensors and actuators are necessary. These monitor and control the process performed by the plant. The different sensors and actuators of an automation system are often referred to as automation devices.

Diese Automatisierungsgeräte können entweder direkt mit einer Steuerung der Automatisierungsanlage verbunden werden, oder können zunächst mit Ein- und Ausgangsmodulen, die häufig auch als E/A-Module bezeichnet werden, verbunden werden. Diese können dann wiederum direkt mit der Steuerung verbunden werden. Die Automatisierungsgeräte können dabei entweder direkt in den E/A-Modulen integriert sein oder können mit diesen über Kabel oder kabellos verbunden sein.These automation devices can either be connected directly to a control system of the automation system, or can first be connected to input and output modules, which are often referred to as I / O modules. These can in turn be connected directly to the controller. The automation devices can either be integrated directly in the I / O modules or can be connected to them via cable or wirelessly.

Die Steuerung einer Automatisierungsanlage wird in der Regel mit Hilfe einer oder mehrerer speicherprogrammierbaren Steuerungen, SPS, bewerkstelligt. Die SPSen können dabei hierarchisch oder dezentral in einer Automatisierungsanlage angeordnet sein. Dabei gibt es bei den SPS unterschiedliche Leistungsklassen, so dass diese je nach Rechen- und Speicherkapazität unterschiedliche Steuerungen und Regelungen übernehmen können. Eine SPS hat im einfachsten Fall Eingänge, Ausgänge, ein Betriebssystem (Firmware) und eine Schnittstelle, über die ein Anwenderprogramm geladen werden kann. Das Anwenderprogramm legt fest, wie die Ausgänge in Abhängigkeit von den Eingängen geschaltet werden sollen. Dabei können die Eingänge und Ausgänge mit den Automatisierungsgeräten und/oder den E/A-Modulen verbunden werden und anhand der im Anwenderprogramm hinterlegten Logik kann der Prozess, der von der Automatisierungsanlage durchgeführt wird, überwacht beziehungsweise gesteuert werden. Dabei wird die Überwachung des Prozesses durch die Sensoren bewerkstelligt und die Steuerung des Prozesses durch die Aktoren. Die Steuerung kann auch als zentrale Steuerung oder Zentraleinheit bezeichnet werden und übernimmt zumindest für ein mit der Steuerung verbundenes Automatisierungsgerät oder E/A-Modul die Steuerung.The control of an automation system is usually accomplished with the help of one or more programmable logic controllers, PLC. The PLCs can be arranged hierarchically or decentrally in an automation system. There are different performance classes for the PLC, so that they can take over different controls and regulations depending on the computing and storage capacity. In the simplest case, a PLC has inputs, outputs, an operating system (firmware) and an interface via which a user program can be loaded. The user program defines how the outputs are to be switched depending on the inputs. The inputs and outputs can be connected to the programmable controllers and / or the I / O modules, and the logic stored in the user program can be used to monitor or control the process performed by the automation system. In this case, the monitoring of the process is accomplished by the sensors and the control of the process by the actuators. The controller can also be referred to as a central controller or central unit and assumes control of at least one automation device or I / O module connected to the controller.

Allerdings ist das direkte Verbinden der Automatisierungsgeräte mit der zumindest einen Steuerung oder der E/A-Module mit der zumindest einen Steuerung in Form einer parallelen Verdrahtung, d.h. von jedem Automatisierungsgerät oder jedem E/A-Modul wird je eine Leitung zur übergeordneten Steuerung verlegt, sehr aufwendig. Gerade bei steigendem Automatisierungsgrad einer Automatisierungsanlage wächst der Verkabelungsaufwand bei paralleler Verdrahtung. Dies ist mit großem Aufwand bei der Projektierung, Installation, Inbetriebnahme und Wartung verbunden.However, the direct connection of the automation devices to the at least one controller or the I / O modules to the at least one controller in the form of a parallel wiring, i. Each automation device or each I / O module relocates one line to the higher-level control, which is very expensive. Especially with increasing degree of automation of an automation system, the cabling effort increases with parallel wiring. This is associated with great effort in the design, installation, commissioning and maintenance.

Daher werden heutzutage in der Automatisierungstechnik zumeist Bussysteme eingesetzt, mit denen die Automatisierungsgeräte beziehungsweise die E/A-Module an die Steuerung angeschlossen werden können. Derartige Teilnehmer eines Bussystems werden auch als Busteilnehmer bezeichnet. Weil auf dem Bussystem Daten ausgetauscht werden, werden die Busteilnehmer auch häufig als Datenbusteilnehmer bezeichnet. Um die Anbindung der einzelnen Automatisierungsgeräte beziehungsweise der E/A-Module mit dem Bussystem noch weiter zu vereinfachen, werden heutzutage häufig einzelne Gruppen von Automatisierungsgeräten beziehungsweise E/A-Modulen mit Hilfe eines spezialisierten Lokalbusses zunächst untereinander zu einem Lokalbussystem verbunden und anschließend wird zumindest ein Teilnehmer dieses Lokalbusses mit dem Bussystem verbunden, welches mit der Steuerung verbunden ist. Dabei kann sich das Lokalbussystem von dem Bussystem unterscheiden, welches eingesetzt wird, um die Verbindung mit der Steuerung zu realisieren.For this reason, automation systems usually use bus systems today, with which the automation devices or the I / O modules can be connected to the controller. Such subscribers of a bus system are also referred to as bus subscribers. Because data is exchanged on the bus system, bus subscribers are also often referred to as data bus subscribers. In order to simplify the connection of the individual automation devices or the I / O modules with the bus system even more, nowadays individual groups of automation devices or I / O modules with the help of a specialized local bus are initially connected to each other to a local bus system and then at least one Subscriber of this local bus connected to the bus system, which is connected to the controller. In this case, the local bus system may differ from the bus system, which is used to realize the connection with the controller.

Der mit dem Bussystem der Steuerung verbundene Teilnehmer einer Gruppe von Lokalbusteilnehmern wird häufig auch als Lokalbusmaster bezeichnet. Alternativ wird auch die Bezeichnung Kopfstation des Lokalbussystems verwendet. Dieser Lokalbusmaster kann gegenüber anderen Lokalbusteilnehmer weitere Logiken, Schaltungen oder Funktionalitäten beinhalten, die zur Anbindung an das Bussystem der Steuerung notwendig sind. Auch kann der Lokalbusmaster selbst eine SPS beinhalten. Auch kann dieser Teilnehmer Logiken und Schaltungen zur Umsetzung zwischen den zwei Bussystemen aufweisen. Der Lokalbusmaster kann daher auch als Gateway oder Busumsetzer ausgebildet sein und sorgt für eine Umsetzung der im Format des einen Bussystems vorliegenden Daten in das Format des Lokalbussystems und umgekehrt. Zumeist aber nicht zwingend, ist der Lokalbusmaster auf die Anbindung des Lokalbusses an den übergeordneten Bus spezialisiert.The subscriber of a group of local bus subscribers connected to the bus system of the controller is often referred to as a local bus master. Alternatively, the term headend of the local bus system is used. In comparison to other local bus subscribers, this local bus master can contain further logic, circuits or functionalities which are necessary for connection to the bus system of the controller. Also, the local bus master itself may include a PLC. This subscriber can also have logic and circuits for conversion between the two bus systems. The local bus master can therefore also be designed as a gateway or bus converter and ensures conversion of the data present in the format of the one bus system into the format of the local bus system and vice versa. In most cases, however, not mandatory, the local bus master is specialized in the connection of the local bus to the parent bus.

Die zum Einsatz kommenden Lokalbusse sind zumeist auf die speziellen Einsatzerfordernisse der Automatisierungsgeräte beziehungsweise E/A-Module abgestimmt oder berücksichtigen deren spezielle Hardwareausgestaltung. Dabei bilden die Gruppen an Automatisierungsgeräten beziehungsweise E/A-Modulen des Lokalbussystems zumeist eine Untergruppe der Automatisierungsanlage zur Ausführung einer speziellen Aufgabe in dem von der Automatisierungsanlage ausgeführten Prozess. Die auf den Bussen ausgetauschten Daten für den Prozess werden auch häufig als Lokalbusdaten oder Prozessdaten bezeichnet, weil diese Daten Informationen zur Regelung beziehungsweise Steuerung des von der Automatisierungsanlage ausgeführten Prozesses beinhalten. Diese Daten können dabei unter anderem Messdaten, Steuerungsdaten, Zustandsdaten und/oder andere Informationen umfassen, die Regelungen oder Steuerungen an den Datenbusteilnehmern innerhalb einer genau definierten Zeitspanne oder eines genau definierten Zeitpunktes hervorrufen. Entsprechend des verwendeten Busprotokolls können diesen Daten andere Daten vorangestellt (engl. Header) oder angehängt (engl. Trailer) sein. Diese anderen Daten können Informationen bezüglich der Daten beinhalten, oder Informationen bezüglich einer internen Kommunikation auf dem Lokalbus beinhalten. Hierbei ist eine Vielzahl von unterschiedlichen Informationen bekannt, die entsprechend des verwendeten Busprotokolls den Daten vorangestellt oder angefügt werden können. Weiterhin gibt es Daten, die eine Steuerung, Regelung oder Programmierung der Datenbusteilnehmer außerhalb einer definierten Zeitspanne oder außerhalb eines genau definierten Zeitpunktes hervorrufen. Prozessdaten können im Kontext der Automatisierungsanlagen auch häufig als zyklische Daten bezeichnet werden, weil der Prozess der in der Automatisierungsanlage gesteuert bzw. geregelt wird auf zyklische Prozessdaten angewiesen ist, die den Datenbusteilnehmern erlauben Steuerungen und / oder Regelungen der beispielsweise an den Datenbusteilnehmern angeschlossenen Aktoren und Sensoren zu bewerkstelligen. Im Gegensatz hierzu werden Managementdaten dazu verwendet die Datenbusteilnehmer zu programmieren oder beispielsweise deren Fehlermeldungen, Status etc., abzufragen. The local buses used are mostly tailored to the specific application requirements of the automation devices or I / O modules or take into account their special hardware design. The groups of automation devices or I / O modules of the local bus system usually form a subgroup of the automation system for performing a specific task in the process performed by the automation system. The data exchanged on the buses for the process are also often referred to as local bus data or process data, because these data include information for controlling or controlling the executed by the automation system process. These data may include, among other things, measurement data, control data, status data and / or other information that cause regulations or controls on the data bus users within a precisely defined time period or a precisely defined time. Depending on the bus protocol used, this data may be preceded by other data (English: headers) or attached (English: Trailer). These other data may include information regarding the data or include information regarding internal communication on the local bus. Here, a variety of different information is known, which can be preceded or added to the data according to the bus protocol used. Furthermore, there is data that cause control, regulation or programming of the data bus participants outside of a defined period of time or outside a precisely defined time. Process data can often be referred to as cyclic data in the context of automation systems, because the process is controlled in the automation system relies on cyclic process data that allow the data bus participants controls and / or regulations of the example connected to the data bus participants actuators and sensors to accomplish. In contrast, management data is used to program the data bus users or, for example, to query their error messages, status, etc.

Ein Ringbus ist dabei eine spezialisierte Form eines Lokalbusses, wie zum Beispiel aus US 5,472,347 A bekannt. In einem Ringbus sind die Datenbusteilnehmer, zum Beispiel die Automatisierungsgeräte beziehungsweise E/A-Module, jeweils mit ihren direkt benachbarten Datenbusteilnehmern verbunden und Daten werden der Reihe nach von einem zum anderen Datenbusteilnehmer weitergeleitet. Die auf dem Lokalbus übertragenen Daten können auch als Lokalbusdaten bezeichnet werden. Es werden also nicht allen Datenbusteilnehmern gleichzeitig die Daten zugesandt, sondern der Reihe nach, wobei ein Datenbusteilnehmer von seinem vorgelagerten Datenbusteilnehmer Daten erhält und Daten an seinen nachgelagerten Datenbusteilnehmer weiterleitet. Zwischen dem Erhalt der Daten und der Weiterleitung kann der Datenbusteilnehmer die erhaltenen Daten verarbeiten. Wenn die Daten den letzten Datenbusteilnehmer in der Reihe erreicht haben, so werden die Daten vom letzten Datenbusteilnehmer wieder der Reihe nach zurück an den ersten Datenbusteilnehmer zurückgeleitet. Das Zurückleiten kann dabei entweder durch alle Datenbusteilnehmer geschehen oder an diesen vorbei mit Hilfe einer Bypassleitung. Der Ringbus hat also einen Abwärtsstrom und Aufwärtsstrom von Daten. Die Daten in einem Ringbus werden meist in Form von Datenpaketen übertragen, die alle Datenbusteilnehmer durchlaufen.A ring bus is a specialized form of local bus, such as US 5,472,347 A known. In a ring bus, the data bus users, for example the automation devices or I / O modules, are each connected to their directly adjacent data bus users and data is forwarded in succession from one to the other data bus user. The data transmitted on the local bus can also be referred to as local bus data. Thus, not all data bus subscribers are sent the data at the same time, but in turn, with a data bus subscriber receiving data from his upstream data bus subscriber and forwarding data to his downstream data bus subscriber. Between receiving the data and forwarding, the data bus user can process the received data. When the data has reached the last data bus subscriber in the series, the data from the last data bus subscriber is returned back to the first data bus subscriber in turn. The return can be done either by all data bus participants or past them with the help of a bypass line. So the ring bus has a down stream and up stream of data. The data in a ring bus are usually transmitted in the form of data packets that pass through all data bus users.

In einem Ringbus wird das Datenpaket von einem zum anderen Datenbusteilnehmer weitergegeben. Dabei empfängt zu jeder gegebenen Zeit ein Datenbusteilnehmer von seinem vorgelagerten Datenbusteilnehmer immer nur einen Teil des Datenpakets. Wenn die in diesem Teil enthaltenen Daten vom Datenbusteilnehmer verarbeitet worden sind, wird der Teil an den nachgelagerten Datenbusteilnehmer weitergeleitet und gleichzeitig wird von dem vorgelagerten Datenbusteilnehmer ein neuer Teil des Datenpakets empfangen. Auf diese Weise passieren alle Teile des Datenpakets sequentiell alle Datenbusteilnehmer.In a ring bus, the data packet is forwarded from one to the other data bus subscriber. At any given time, a data bus subscriber always receives only a portion of the data packet from its upstream data bus subscriber. When the data contained in this part has been processed by the data bus subscriber, the part is forwarded to the downstream data bus subscriber and at the same time a new part of the data packet is received by the upstream data bus subscriber. In this way, all parts of the data packet pass sequentially all data bus users.

Aufgabe der vorliegenden Erfindung ist es ein Verfahren sowie einen Lokalbusmaster zum verbesserten Zeitmanagement in Ringbussystemen bereitzustellen.The object of the present invention is to provide a method and a local bus master for improved time management in ring bus systems.

Zusammenfassung der ErfindungSummary of the invention

Diese Aufgabe wird mit einem Verfahren und einem Lokalbusmaster entsprechend der unabhängigen Ansprüche gelöst. Vorteilhafte Ausführungsformen sind in den Unteransprüchen beschrieben.This object is achieved with a method and a local bus master according to the independent claims. Advantageous embodiments are described in the subclaims.

Ein erfindungsgemäßes Verfahren zum Betrieb eines Lokalbusses mit Datenbusteilnehmern ist beschrieben, wobei der Lokalbus insbesondere ein Ringbus ist. Das Verfahren weist dabei den Schritt des Übertragens einer ersten Kennung eines Zyklusrahmens auf, wobei die erste Kennung den Beginn des Zyklusrahmens definiert. Ein Zyklusrahmen kann dabei beispielsweise ein wiederkehrendes (zyklisches) vorzugsweise äquidistantes Zeitintervall sein, innerhalb dessen Daten auf dem Lokalbus übertragbar sind. Der Zyklusrahmen weist dabei beispielsweise zumindest eine erste Kennung auf, die auch als Startkennung SOC (engl. Start Of Cycle) bezeichnet werden kann, und die mit einer folgenden ersten Kennung einen Zeitbereich zur Übertragung der Daten definiert. Mehrere erste Kennungen aufeinander folgender Zyklusrahmen sind dabei vorteilhafterweise in einem zeitlich äquidistanten Abstand zueinander. Die erste Kennung kann dabei ein eindeutiges Bitmuster SOC enthalten. Wenn dieses Bitmuster von den Datenbusteilnehmern erkannt wird, so wissen diese, dass ein Zyklusrahmen begonnen hat, d.h. in bestimmten zeitlichen Abständen zum SOC Prozessdaten folgen werden und in nicht bestimmten Abständen zum SOC Managementdaten folgen. Zeitlich kann sich im Kontext der Erfindung auf die absolute Zeit beziehen oder auf entsprechende Arbeitstakte.An inventive method for operating a local bus with data bus participants is described, wherein the local bus is in particular a ring bus. The method comprises the step of transmitting a first identifier of a cycle frame, wherein the first identifier defines the start of the cycle frame. A cycle frame can be, for example, a recurring (cyclic) preferably equidistant time interval within which data can be transmitted on the local bus. In this case, the cycle frame has, for example, at least one first identifier, which can also be referred to as the start identifier SOC (Start Of Cycle), and which defines a time range for transmitting the data with a following first identifier. Several first identifiers consecutive cycle frames are advantageously at a time equidistant from each other. The first identifier can contain a unique bit pattern SOC. If this bit pattern is detected by the data bus users, they know that a cycle frame has started, ie at certain time intervals to the SOC process data will follow and follow SOC management data at fixed intervals. In the context of the invention, time can refer to the absolute time or to corresponding work cycles.

Das erfindungsgemäße Verfahren weist weiter den Schritt des Übertragens von den Prozessdaten und Managementdaten über den Lokalbus auf, wobei die Prozessdaten und Managementdaten innerhalb des Zyklusrahmens übertragen werden. Die Prozessdaten werden an den Datenbusteilnehmern verwendet, um eine Steuerung und / oder Regelung eines Prozesses hervorzurufen. Sie steuern beispielsweise die Sollwerte für an die Datenbusteilnehmer angeschlossene Aktoren, oder regeln Grenzwerte für aufgenommene Sensorwerte. Die Managementdaten weisen Daten auf, die zum Management der Datenbusteilnehmer verwendet werden, also beispielsweise die Programmierung der Datenbusteilnehmer beinhalten oder beispielweise Zustände abfragen. Managementdaten können aber auch zur Initialisierung des Lokalbusses verwendet werden, um den Datenbusteilnehmern beispielsweise Adressen zuzuweisen oder deren Adressen abzufragen. Managementdaten enthalten vorzugsweise keine Prozessdaten.The inventive method further comprises the step of transmitting the process data and management data via the local bus, wherein the process data and management data are transmitted within the cycle frame. The process data is used at the data bus users to provide control and / or regulation of a process. For example, they control the setpoints for actuators connected to the data bus users or regulate limit values for recorded sensor values. The management data has data that is used to manage the data bus subscribers, ie, for example, to include the programming of the data bus subscribers or, for example, to interrogate states. However, management data can also be used to initialize the local bus, for example, to assign addresses to the data bus subscribers or to query their addresses. Management data preferably contains no process data.

In dem erfindungsgemäßen Verfahren wird in einem ersten zeitlichen Abstand zur ersten Kennung, zumindest ein isochrones Datenpaket übertragen, welches die Prozessdaten beinhaltet, und wenn innerhalb des Zyklusrahmens Managementdaten übertragen werden sollen, so werden diese Managementdaten disjunkt zu den Prozessdaten übertragen. D.h. die Managementdaten werden nicht in dem zumindest einen isochronen Datenpaket zusammen mit den Prozessdaten übertragen, sehr wohl aber innerhalb des gleichen Zyklusrahmens. Dabei werden Managementdaten und Prozessdaten nicht gemischt.In the method according to the invention, at least one isochronous data packet containing the process data is transmitted at a first time interval to the first identifier, and if management data is to be transmitted within the cycle frame, then this management data is transmitted disjointly to the process data. That the management data is not transmitted in the at least one isochronous data packet together with the process data, but within the same cycle frame. At the same time, management data and process data are not mixed.

Mit anderen Worten, zunächst wird die erste Kennung von dem Lokalbusmaster auf den Lokalbus gesendet. Der erste Datenbusteilnehmer empfängt die erste Kennung und hat Kenntnis darüber, dass ein Zyklusrahmen beginnt. Der erste Datenbusteilnehmer sendet dann nach einer vorzugsweise definierten vorher bestimmten oder festgelegten Zeit - z.B. zwölf Takte - die erste Kennung weiter an den nachfolgenden Datenbusteilnehmer usw. Die erste vorbestimmte Zeit ist daher beispielsweise die bestimmte oder feste Verzögerung durch einen Datenbusteilnehmer zur Weiterleiterleitung jedes Symbols an den folgenden Datenbusteilnehmer. D.h. es kann gesagt werden, die erste Kennung wird auf dem Lokalbus übertragen, weil diese erste Kennung alle Datenbusteilnehmer des Lokalbusses durchläuft. In einem ersten zeitlichen Abstand zur ersten Kennung sendet der Lokalbusmaster das erste Symbol des zumindest einen isochronen Datenpakets. Auch dieses Symbol wird von dem ersten Datenbusteilnehmer empfangen und nach einer definierten vorher bestimmten oder festen Zeit an den jeweils nachfolgenden Datenbusteilnehmer weitergeleitet usw. Das gleiche geschieht mit den weiteren Symbolen des zumindest einen isochronen Datenpakets. D.h. es kann gesagt werden, dass das zumindest eine isochrone Datenpaket auf dem Lokalbus übertragen wird, weil alle Teile des zumindest einen isochronen Datenpakets alle Datenbusteilnehmer durchlaufen.In other words, first the first identifier is sent from the local bus master to the local bus. The first data bus subscriber receives the first identifier and is aware that a cycle frame is starting. The first data bus subscriber then transmits after a preferably defined predetermined or fixed time - e.g. Thus, the first predetermined time is, for example, the particular or fixed delay by a data bus subscriber for relaying each symbol to the following data bus subscriber. That it can be said that the first identifier is transmitted on the local bus because this first identifier passes through all the data bus users of the local bus. At a first time interval from the first identifier, the local bus master sends the first symbol of the at least one isochronous data packet. This symbol is also received by the first data bus subscriber and forwarded to the respectively following data bus subscriber after a defined, predetermined or fixed time, etc. The same happens with the further symbols of the at least one isochronous data packet. That it can be said that the at least one isochronous data packet is transmitted on the local bus because all parts of the at least one isochronous data packet pass through all the data bus users.

Ist die definierte vorher bestimmte Zeit an allen Datenbusteilnehmern konstant, so bleibt auch der zeitliche Abstand zwischen der ersten Kennung und dem ersten Symbol des zumindest einen isochronen Datenpakets immer gleich. Hierbei kann auch gesagt werden, die erste Kennung und die Teile des zumindest einen isochronen Datenpakets durchlaufen den Lokalbus, also die Datenbusteilnehmer mit einer konstanten Geschwindigkeit. Disjunkt zu dem zumindest einen isochronen Datenpaket sendet der Lokalbusmaster Managementdaten, diese können also entweder zeitlich gesehen vor dem zumindest einen isochronen Datenpaket gesendet werden oder nach dem zumindest einen isochronen Datenpaket, sofern das isochrone Datenpaket nicht an die erste Kennung oder an eine folgende erste Kennung grenzt. Auch die Managementdaten werden von den Datenbusteilnehmern empfangen und nach einer definierten vorher bestimmten Zeit an den jeweils nachfolgenden Datenbusteilnehmer weitergeleitet usw. D.h. es kann gesagt werden, dass die Managementdaten auf dem Lokalbus übertragen werden.If the defined predetermined time is constant at all data bus subscribers, the time interval between the first identifier and the first symbol of the at least one isochronous data packet also remains the same. It can also be said that the first identifier and the parts of the at least one isochronous data packet pass through the local bus, that is to say the data bus users, at a constant speed. Disjunkt to the at least one isochronous data packet sends the local bus master management data, so these can either be sent in time before the at least one isochronous data packet or after the at least one isochronous data packet, if the isochronous data packet is not adjacent to the first identifier or to a subsequent first identifier , The management data is also received by the data bus subscribers and forwarded to the respective subsequent data bus subscriber after a defined predetermined time, and so on. it can be said that the management data is transmitted on the local bus.

Bedingt dadurch, dass Prozessdaten und Managementdaten zusammen innerhalb eines Zyklusrahmens übertragen werden, ergibt sich der Vorteil, dass die Kommunikation mit den Datenbusteilnehmern nicht unterbrochen werden muss, wenn zwischen isochronen Prozessdaten und Managementdaten gewechselt wird. Es ist des Weiteren auch möglich, die Programmierung der Datenbusteilnehmer für beispielsweise jedes isochrone Datenpaket zu ändern, nämlich dadurch, dass dem isochronen Datenpaket Managementdaten vorangestellt werden. Durch das Übertragen von isochronen Prozessdaten und Managementdaten innerhalb eines Zyklusrahmens ohne Unterbrechung der Kommunikation kann ein bestmöglichstes Zeitmanagement gewährleistet werden.Due to the fact that process data and management data are transmitted together within a cycle frame, there is the advantage that the communication with the data bus users does not have to be interrupted when switching between isochronous process data and management data. Furthermore, it is also possible to change the programming of the data bus subscribers for, for example, each isochronous data packet, namely by prefacing the isochronous data packet with management data. By transferring isochronous process data and management data within a cycle frame without interrupting communication, the best possible time management can be ensured.

In einer bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens weist das zumindest eine isochrone Datenpaket eine zweite Kennung auf, die unterschiedlich ist zur ersten Kennung. Diese Kennung des isochronen Datenpakets kann ein eineindeutiges Bitmuster IDE sein. Die Datenbusteilnehmer wissen, dass wenn dieses Bitmuster auftritt, isochrone Daten also Prozessdaten folgen. Der Lokalbusmaster kann angepasst sein, diese zweite Kennung in dem ersten zeitlichen Abstand von der ersten Kennung auf den Lokalbus zu senden gefolgt von den Prozessdaten. Die zweite Kennung und die Prozessdaten werden jeweils von den Datenbusteilnehmern empfangen und zu einer definierten vorher bestimmten oder festen Zeit weitergeleitet an den jeweils nachfolgenden Datenbusteilnehmer usw., so dass auf diese Weise das isochrone Datenpaket auf dem Lokalbus übertragen wird.In a preferred embodiment of the method according to the invention, this is at least an isochronous data packet has a second identifier that is different from the first identifier. This identifier of the isochronous data packet may be a one-to-one bit pattern IDE. The data bus users know that if this bit pattern occurs, isochronous data will follow process data. The local bus master may be adapted to send this second identifier at the first time interval from the first identifier to the local bus followed by the process data. The second identifier and the process data are each received by the data bus subscribers and forwarded at a defined predetermined or fixed time to the respective subsequent data bus subscriber etc., so that in this way the isochronous data packet is transmitted on the local bus.

In einer bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens werden anstelle einer isochronen Übertragung der Managementdaten, die Managementdaten in zumindest einem asynchronen Datenpaket übertragen. Ein asynchrones Datenpaket wird nur bei Bedarf, also bei anstehenden zu übertragenden Managementdaten übertragen. Liegen keine Managementdaten zur Übertragung an, werden innerhalb eines Zyklusrahmens keine asynchronen Datenpakete übertragen. Ein Datenpaket wird dann asynchron übertragen, wenn es von Zyklusrahmen zu nachfolgenden Zyklusrahmen nicht zwingend immer in demselben zeitlichen Abstand zur ersten Kennung ist. Isochrone Datenpakete müssen demgegenüber innerhalb jedes Zyklusrahmens immer in demselben zeitlichen Abstand zur ersten Kennung übertragen werden. Sowohl isochrone Datenpakete als auch asynchrone Datenpakete sind vorzugsweise an einem Taktsignal des Lokalbusses ausgerichtet.In a preferred embodiment of the method according to the invention, instead of an isochronous transmission of the management data, the management data is transmitted in at least one asynchronous data packet. An asynchronous data packet is transmitted only when necessary, that is, when pending transfer of management data. If no management data is available for transmission, no asynchronous data packets are transmitted within a cycle frame. A data packet is transmitted asynchronously if it is not necessarily always at the same time interval from the cycle frame to subsequent cycle frames in the same time interval to the first identifier. In contrast, isochronous data packets must always be transmitted within each cycle frame at the same interval from the first identifier. Both isochronous data packets and asynchronous data packets are preferably aligned with a clock signal of the local bus.

Das asynchrone Datenpaket kann eine dritte Kennung aufweisen, die verschieben ist zur ersten Kennung, also der Kennung die den Beginn eines Zyklusrahmens anzeigt und der zweiten Kennung, also der Kennung, die ein isochrones Datenpaket anzeigt. Die dritte Kennung kann dabei ebenfalls ein zugehöriges Bitmuster sein, welches den Datenbusteilnehmern bekannt ist, so dass diese bei Erhalt der dritten Kennung wissen, dass ein asynchrones Datenpaket vorliegt und dass dementsprechend der dritten Kennung asynchrone Daten also Managementdaten folgen. Der Lokalbusmaster kann angepasst sein, diese dritte Kennung auf den Lokalbus zu senden. Die dritte Kennung und die Managementdaten werden jeweils von den Datenbusteilnehmern empfangen und zu einer definierten vorher bestimmten oder festen Zeit weitergeleitet an den jeweils nachfolgenden Datenbusteilnehmer usw., so dass auf diese Weise das asynchrone Datenpaket auf dem Lokalbus übertragen wird.The asynchronous data packet may have a third identifier which is to be shifted to the first identifier, ie the identifier which indicates the start of a cycle frame and the second identifier, ie the identifier which indicates an isochronous data packet. The third identifier can also be an associated bit pattern, which is known to the data bus users, so that they know on receipt of the third identifier that an asynchronous data packet is present and accordingly the third identifier asynchronous data thus follow management data. The local bus master may be adapted to send this third identifier to the local bus. The third identifier and the management data are respectively received by the data bus subscribers and forwarded at a defined predetermined or fixed time to the respective subsequent data bus subscriber etc., so that in this way the asynchronous data packet is transmitted on the local bus.

In einer bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens weist dieses weiter den Schritt des Ermittelns des ersten zeitlichen Abstandes auf. D.h. es wird ermittelt, wie viel Zeit zwischen dem Senden der ersten Kennung und dem Senden des ersten Symbols des zumindest einen isochronen Datenpakets liegt. Der erste zeitliche Abstand wird vorzugsweise basierend auf der Anzahl der Datenbusteilnehmer und einer vorgegebenen oder errechneten Verzögerung der Übertragung der Prozessdaten bestimmt.In a preferred embodiment of the method according to the invention, this further comprises the step of determining the first time interval. That It is determined how much time is between the transmission of the first identifier and the transmission of the first symbol of the at least one isochronous data packet. The first time interval is preferably determined based on the number of data bus subscribers and a predetermined or calculated delay in the transmission of the process data.

Das Ermitteln kann dabei beispielsweise von dem Lokalbusmaster bewerkstelligt werden. Der erste zeitliche Abstand gibt vorzugsweise an, welche Zeit zwischen dem Senden der ersten Kennung und dem Senden der zweiten Kennung liegt. Wenn alle Datenbusteilnehmer angepasst sind, das jeweilige empfangene Symbol nur für eine konstante Zeit vorliegen zu haben und anschließend an den nachfolgenden Datenbusteilnehmer weiterzuleiten, so bleibt dieser zeitliche Abstand zwischen dem Senden bzw. Weiterleiten der ersten Kennung und dem Senden bzw. Weiterleiten der zweiten Kennung gleich.The determination can be accomplished, for example, by the local bus master. The first time interval preferably indicates what time is between the transmission of the first identifier and the transmission of the second identifier. If all data bus users are adapted to have the respective received symbol only for a constant time and then forward it to the subsequent data bus subscriber, this time interval remains the same between the transmission or forwarding of the first identifier and the transmission or forwarding of the second identifier ,

Wie viel Zeit zwischen dem Senden der ersten Kennung und dem Senden des ersten Symbols des zumindest einen isochronen Datenpakets verstreichen darf richtet sich in einer vorteilhaften Ausgestaltung danach, wann die im isochronen Datenpaket enthaltenen Prozessdaten an den Datenbusteilnehmern vorliegen müssen, um eine Steuerung und / oder Regelung durchzuführen. Insbesondere kann eine möglichst geringe Latenz gefordert sein. Der Lokalbusmaster kann beispielsweise Kenntnis darüber haben, wann die Prozessdaten an den jeweiligen Datenbusteilnehmern vorliegen müssen, so dass alle Datenbusteilnehmer gleichzeitig oder zumindest innerhalb einer beschränkten Zeitspanne Steuerungen und /oder Regelungen durchführen können. Aus dieser Kenntnis und der Kenntnis wie viel Zeit es benötigt das isochrone Datenpaket zu übertragen, was abhängig ist von der Anzahl an Datenbusteilnehmern, kann der Lokalbusmaster ermitteln, wann das zumindest eine isochrone Datenpaket übertragen werden muss, bzw. wann das erste Symbol des zumindest einen isochronen Datenpakets gesendet werden muss, so dass alle Datenbusteilnehmer rechtzeitig ihre jeweiligen Prozessdaten vorliegen haben. Dem Fachmann ist dabei bewusst, dass das Vorliegen der Prozessdaten an den jeweiligen Datenbusteilnehmern auch abhängig ist von der Verteilung der Prozessdaten innerhalb des zumindest einen isochronen Datenpakets.How much time must elapse between the transmission of the first identifier and the transmission of the first symbol of the at least one isochronous data packet is directed in an advantageous embodiment according to when the process data contained in the isochronous data packet must be present at the data bus participants, a control and / or regulation perform. In particular, the lowest possible latency may be required. For example, the local bus master may have knowledge as to when the process data must be present at the respective data bus subscribers, so that all data bus subscribers may perform controls and / or controls simultaneously or at least within a limited amount of time. From this knowledge and the knowledge of how much time it takes to transmit the isochronous data packet, which depends on the number of data bus subscribers, the local bus master can determine when the at least one isochronous data packet has to be transmitted or when the first symbol of the at least one Isochronous data packets must be sent so that all data bus users have their respective process data in time. The person skilled in the art is aware that the presence of the process data at the respective data bus users is also dependent on the distribution of the process data within the at least one isochronous data packet.

Der Lokalbusmaster kann dabei angepasst sein, den ermittelten zeitlichen Abstand zu speichern. Des Weiteren kann der Lokalbusmaster angepasst sein, den gleichen zeitlichen Abstand so lange zu verwenden, bis sich die Konfiguration des Lokalbusses wieder ändert, d.h. bis Datenbusteilnehmer hinzugefügt oder entfernt werden. Der Lokalbusmaster kann dabei derart angepasst sein, dass dieser den zeitlichen Abstand ermittelt, wenn der Lokalbus das erste Mal initialisiert wird. Auch kann der Lokalbusmaster angepasst sein nach der Initialisierung den zeitlichen Abstand in festen zeitlichen Abständen zu überprüfen oder getriggert durch eine Konfigurationsänderung des Lokalbusses. Der erste zeitliche Abstand kann alternativ durch ein externes Programm beispielweise auf einem Desktop-PC oder auf der über einen Feldbus angebundenen SPS berechnet werden.The local bus master can be adapted to store the determined time interval. Furthermore, the local bus master may be adapted to use the same time interval until the configuration of the local bus again, ie, until data bus users are added or removed. The local bus master can be adapted in such a way that it determines the time interval when the local bus is initialized for the first time. Also, the local bus master may be adapted after initialization to check the time interval at fixed time intervals or triggered by a configuration change of the local bus. The first time interval can alternatively be calculated by an external program, for example on a desktop PC or on the PLC connected via a fieldbus.

Der Zeitpunkt an dem die Prozessdaten den Datenbusteilnehmern vorliegen müssen kann auch als Ausgabezeitpunkt bezeichnet werden, weil zu diesem Zeitpunkt die Prozessdaten an den Ausgängen der Datenbusteilnehmer ausgegeben werden. Durch die Ausgabe der Prozessdaten an den Ausgängen der Datenbusteilnehmer können beispielsweise Aktoren gesteuert oder geregelt werden. Dieser Ausgabezeitpunkt kann fix vorgegeben sein und einen zweiten zeitlichen Abstand von der ersten Kennung haben. Dabei definiert der zweite zeitliche Abstand die Zeit die verstreicht, zwischen dem Senden der ersten Kennung durch den Lokalbusmaster und dem Ausgabezeitpunkt. Der zweite zeitliche Abstand ist dabei für jeden Datenbusteilnehmer unterschiedlich. Der zweite zeitliche Abstand wird dabei für jeden Datenbusteilnehmer in Abhängigkeit von der Position des Datenbusteilnehmers im Lokalbus bestimmt. Vorzugsweise wird jedem Datenbusteilnehmer sein individueller zweiter zeitlicher Abstand mittels der Managementdaten mitgeteilt.The point in time at which the process data must be available to the data bus users can also be referred to as the output time, because at this time the process data is output at the outputs of the data bus users. By outputting the process data at the outputs of the data bus users, for example, actuators can be controlled or regulated. This output time can be fixed and have a second time interval from the first identifier. In this case, the second time interval defines the time that elapses between the transmission of the first identifier by the local bus master and the output time. The second time interval is different for each data bus subscriber. The second time interval is determined for each data bus subscriber in dependence on the position of the data bus subscriber in the local bus. Preferably, each data bus subscriber is informed of his individual second time interval by means of the management data.

In einer weiteren Ausgestaltung erfolgt die Vorgabe des Ausgabezeitpunkts mit Hilfe einer absoluten Zeitangabe. Die Datenbusteilnehmer arbeiten in diesem Fall alle mit einer gemeinsamen Zeitbasis. Beispielsweise sind alle auf einen Zeitgeber synchronisiert. Gemäß einer vorteilhaften Ausgestaltung enthält die erste Kennung einen Zeitstempel, der von den Datenbusteilnehmern ausgewertet wird, um beispielweise ihre eigene Zeitbasis zu korrigieren.In a further embodiment, the specification of the output time point takes place with the aid of an absolute time specification. The data bus users all work in this case with a common time base. For example, all are synchronized to a timer. According to an advantageous embodiment, the first identifier contains a time stamp, which is evaluated by the data bus users, for example, to correct their own time base.

Entsprechend eines festgelegten Ausgabezeitpunktes, kann es auch einen festgelegten Eingabezeitpunkt geben, der eine Eingabe von Prozessdaten an den Eingängen der Datenbusteilnehmer festlegt. Dieser Eingabezeitpunkt kann beispielsweise der Zeitpunkt sein, an dem die Datenbusteilnehmer von den mit den Datenbusteilnehmern verbundenen Sensoren Werte aufnehmen. Der Eingabezeitpunkt kann dabei einen dritten zeitlichen Abstand vom Senden der ersten Kennung entfernt sein. Die aufgenommenen Werte können ebenfalls Prozessdaten darstellen und können mit Hilfe eines weiteren isochronen Datenpakets innerhalb des Zyklusrahmens von den Datenbusteilnehmern abgefragt werden, so dass der Lokalbusmaster die entsprechenden Prozessdaten an eine übergeordnete Steuerung weiterleiten kann. Der Lokalbusmaster kann dabei beispielsweise derart angepasst sein, ein weiteres isochrones Datenpakt auf dem Lokalbus zu senden, und zwar mit einem vierten zeitlichen Abstand zur ersten Kennung, wobei der vierte zeitliche Abstand ermittelt wird basierend auf dem Eingabezeitpunkt an den Datenbusteilnehmern, so dass das weitere isochrone Datenpaket, bzw. Teile des isochronen Datenpaktes an den Datenbusteilnehmern zu einer Zeit vorliegen, wenn diese bereits die Werte von ihren Eingängen gelesen haben und bereit sind diese in das weitere isochrone Datenpaket bzw. den ihnen vorliegenden Teil des weiteren isochronen Datenpakets zu schreiben.In accordance with a fixed output time, there may also be a fixed input time which specifies an input of process data to the inputs of the data bus users. This input time may be, for example, the time at which the data bus users receive values from the sensors connected to the data bus users. The input time may be a third time interval away from sending the first identifier. The recorded values can also represent process data and can be queried by the data bus users within the cycle frame with the aid of a further isochronous data packet, so that the local bus master can forward the corresponding process data to a higher-level controller. The local bus master can be adapted, for example, to transmit a further isochronous data packet on the local bus with a fourth time interval to the first identifier, the fourth time interval being determined based on the input time at the data bus users, so that the further isochronous Data packet, or parts of the isochronous data packet present to the data bus participants at a time when they have already read the values from their inputs and are ready to write this in the other isochronous data packet or the part of the further isochronous data packet available to them.

Die oben genannte Aufgabe wird auch gelöst durch einen erfindungsgemäßen Lokalbusmaster eines Lokalbusses, insbesondere eines Ringbusses, mit Datenbusteilnehmern. Der Lokalbusmaster weist dabei auf ein Mittel zum Senden einer ersten Kennung eines Zyklusrahmens, wobei die erste Kennung den Beginn des Zyklusrahmens definiert. Das Mittel zum Senden ist angepasst, Prozessdaten und Managementdaten über den Lokalbus zu senden, wobei die Prozessdaten und Managementdaten innerhalb des Zyklusrahmens übertragbar sind. Beim erfindungsgemäßen Lokalbusmaster ist das Mittel zum Senden angepasst, in einem ersten zeitlichen Abstand zur ersten Kennung zumindest ein isochrones Datenpaket zu senden, welches die Prozessdaten beinhaltet. Wenn innerhalb des Zyklusrahmens Managementdaten übertragen werden, so ist das Mittel zum Senden angepasst, diese Managementdaten disjunkt zu den Prozessdaten zu senden. Das Mittel zum Senden kann beispielsweise eine Schaltung, insbesondere eine Transceiverschaltung sein. Die Schaltung kann in einem anwendungsspezifischen integrierten Schaltkreis (engl. ASIC) oder in einer Feld programmierbaren (Logik-) Gatter-Anordnung (engl. FPGA) implementiert sein. Das Mittel zum Senden kann auch einen Kodierer aufweisen, der die zu sendenden Daten auf dem Lokalbus kodiert. Das Mittel zum Senden kann auch einen Modulierer aufweisen, der die zu sendenden Daten auf dem Lokalbus moduliert.The above-mentioned object is also achieved by a local bus master according to the invention of a local bus, in particular a ring bus, with data bus users. The local bus master has a means for transmitting a first identifier of a cycle frame, wherein the first identifier defines the beginning of the cycle frame. The means for sending is adapted to send process data and management data over the local bus, the process data and management data being transferable within the cycle frame. In the case of the local bus master according to the invention, the means for transmitting is adapted to send at least one isochronous data packet containing the process data at a first time interval from the first identifier. If management data is transmitted within the cycle frame, the means for sending is adapted to send this management data disjoint to the process data. The means for transmitting may be, for example, a circuit, in particular a transceiver circuit. The circuit may be implemented in an application specific integrated circuit (ASIC) or field programmable (logic) gate array (FPGA). The means for transmitting may also comprise an encoder which encodes the data to be transmitted on the local bus. The means for transmitting may also comprise a modulator which modulates the data to be transmitted on the local bus.

In einer bevorzugten Ausführungsform des erfindungsgemäßen Lokalbusmasters ist das Mittel zum Senden weiter angepasst, die Managementdaten in einem asynchronen Datenpaket zu senden.In a preferred embodiment of the local bus master according to the invention, the means for sending is further adapted to send the management data in an asynchronous data packet.

In einer bevorzugten Ausführungsform des erfindungsgemäßen Lokalbusmasters weist dieser weiter ein Mittel auf zum Ermitteln des ersten zeitlichen Abstandes basierend auf einem Ausgabezeitpunkt, der ein Ausgeben von Prozessdaten an einem Ausgang der jeweiligen Datenbusteilnehmer festlegt, wobei der Ausgabezeitpunkt in einem zweiten zeitlichen Abstand zur ersten Kennung vorgegeben ist. In a preferred embodiment of the local bus master according to the invention, the latter also has a means for determining the first time interval based on an output time, which specifies outputting of process data at an output of the respective data bus users, wherein the output time is predetermined at a second time interval to the first identifier ,

In einer bevorzugten Ausführungsform des erfindungsgemäßen Lokalbusmasters ist das Mittel zum Ermitteln angepasst, einen vierten zeitlichen Abstand zur ersten Kennung basierend auf einem Eingabezeitpunkt, der eine Eingabe von Prozessdaten an einem Eingang der jeweiligen Datenbusteilnehmer festlegt, zu ermitteln. Dabei ist der Eingabezeitpunkt in einem dritten zeitlichen Abstand zur ersten Kennung vorgegeben oder bestimmt. Das Mittel zum Übertragen ist angepasst, zumindest ein weiteres isochrones Datenpaket im Zyklusrahmen in einem vierten zeitlichen Abstand zur ersten Kennung zu senden. Dabei kann das weitere isochrone Datenpaket verwendet werden, zur Abfrage der Werte an den Eingängen der jeweiligen Datenbusteilnehmer. Dabei kann der Lokalbusmaster des Weiteren ein Mittel zum Empfangen von Prozessdaten aufweisen.In a preferred embodiment of the local bus master according to the invention, the means for determining is adapted to determine a fourth time interval to the first identifier based on an input time which specifies an input of process data at an input of the respective data bus users. In this case, the input time is predetermined or determined at a third time interval to the first identifier. The means for transmitting is adapted to send at least one further isochronous data packet in the cycle frame at a fourth time interval to the first identifier. In this case, the further isochronous data packet can be used to query the values at the inputs of the respective data bus users. In this case, the local bus master can furthermore have a means for receiving process data.

Figurenlistelist of figures

Die Erfindung wird nachfolgend anhand von Ausführungsbeispielen mit den beigefügten Zeichnungen näher erläutert. Aus den beschriebenen Ausführungsbeispielen ergeben sich weitere Einzelheiten, Merkmale und Vorteile des Gegenstands der Erfindung. Es zeigen:

  • 1 ein schematisches Blockdiagramm einer beispielhaften Automatisierungsanlage mit einer speicherprogrammierbaren Steuerung und einem beispielhaften Ringbus;
  • 2 eine schematische Darstellung eines Zyklusrahmens;
  • 3 eine schematische Darstellung eines isochronen Datenpakets bestehend aus Symbolen, wobei einige Symbole Prozessdaten tragen;
  • 4 eine schematische Darstellung eines asynchronen Datenpakets bestehend aus Symbolen, wobei einige Symbole Managementdaten tragen;
  • 5 eine schematische Darstellung eines weiteren asynchronen Datenpakets bestehend aus Symbolen, wobei einige Symbole Managementdaten tragen; und
  • 6 eine beispielhafte zeitliche Abfolge von asynchronen und isochronen Datenpaketen innerhalb eines Zyklusrahmens.
The invention will be explained in more detail with reference to embodiments with the accompanying drawings. From the described embodiments, further details, features and advantages of the subject invention. Show it:
  • 1 a schematic block diagram of an exemplary automation system with a programmable logic controller and an exemplary ring bus;
  • 2 a schematic representation of a cycle frame;
  • 3 a schematic representation of an isochronous data packet consisting of symbols, some symbols carry process data;
  • 4 a schematic representation of an asynchronous data packet consisting of symbols, some symbols carry management data;
  • 5 a schematic representation of another asynchronous data packet consisting of symbols, some symbols carry management data; and
  • 6 an exemplary time sequence of asynchronous and isochronous data packets within a cycle frame.

Beschreibung bevorzugter AusführungsbeispieleDescription of preferred embodiments

1 zeigt ein schematisches Blockdiagramm einer Automatisierungsanlage. Es wird vom Fachmann verstanden werden, dass die gezeigte Automatisierungsanlage nur beispielhaft ist und alle zu der Automatisierungsanlage gehörenden Elemente, Module, Bauteile, Teilnehmer und Einheiten verschieden ausgestaltet sein können aber dennoch die hier beschriebenen Grundfunktionalitäten erfüllen können. 1 shows a schematic block diagram of an automation system. It will be understood by those skilled in the art that the automation system shown is only an example and all the elements, modules, components, participants and units belonging to the automation system can be configured differently but can nevertheless fulfill the basic functions described here.

Die in 1 gezeigte Automatisierungsanlage weist eine übergeordnete Steuerung 1 auf, die beispielsweise mit einer speicherprogrammierbaren Steuerung, SPS, realisiert werden kann. Eine derartige SPS 1 dient grundsätzlich zur Steuerung und Regelung des von der Automatisierungsanlage ausgeführten Prozesses. Heutzutage übernehmen SPSen 1 in Automatisierungsanlagen allerdings auch weitergehende Funktionen, wie zum Beispiel die Visualisierung, Alarmierung und Aufzeichnung aller den Prozess betreffenden Daten und als solche fungiert die SPS 1 als eine Mensch-Maschine Schnittstelle. Es gibt SPS 1 in unterschiedlichen Leistungsklassen, die unterschiedliche Ressourcen (Rechenkapazität, Speicherkapazität, Anzahl und Art von Ein- und Ausgängen, und Schnittstellen) aufweisen, die es der SPS 1 ermöglichen den Prozess der Automatisierungsanlage zu steuern und zu regeln. Eine SPS 1 hat zumeist einen modularen Aufbau und besteht aus einzelnen Komponenten, die jeweils eine andere Aufgabe erfüllen. Üblicherweise besteht eine SPS 1 aus einer zentralen Rechenbaugruppe (mit einem oder mehreren Hauptprozessoren und Speichermodulen) und mehreren Baugruppen mit Eingängen und Ausgängen. Derartige modular aufgebaute SPS 1 lassen sich durch Hinzufügen von Baugruppen leicht erweitern. Hierbei hängt es von der Komplexität des Prozesses und der Komplexität des Aufbaus der Automatisierungsanlage ab, welche Baugruppen in der SPS 1 integriert sein müssen. In heutigen Automatisierungsanlagen ist die SPS 1 auch zumeist kein unabhängiges System mehr, sondern die SPS 1 ist über entsprechende Schnittstellen - hier nicht dargestellt - mit dem Internet oder Intranet verbunden. Dies bedeutet, die SPS 1 ist Teil eines Netzwerks über welches oder von welchem die SPS 1 Informationen, Instruktionen, Programmierungen etc. erhalten kann. Zum Beispiel kann die SPS 1 über eine Verbindung zu einem sich im Intranet oder Internet befindlichen Computer Informationen über dem Prozess zugeführte Materialien bekommen, so dass beispielsweise durch die Kenntnis deren Anzahl oder Beschaffenheit der Prozess optimal gesteuert werden kann. Es ist auch denkbar, dass die SPS 1 durch einen Zugriff aus dem Intranet oder Internet von einem Anwender gesteuert wird. So kann beispielsweise ein Anwender mit Hilfe eines Computers, auch Leitrechner genannt, auf die SPS 1 zugreifen und deren Anwenderprogrammierung überprüfen, ändern, oder korrigieren. Dementsprechend ist der Zugriff auf die SPS 1 von einer oder mehreren Fernwarten oder Leitstellen möglich. Die Leitrechner können gegebenenfalls Visualisierungseinrichtungen zur Darstellung von Prozessabläufen haben.In the 1 shown automation system has a higher-level control 1 on, which can be realized for example with a programmable logic controller, PLC. Such a PLC 1 basically serves to control and regulate the process performed by the automation system. Nowadays PLCs take over 1 In automation systems, however, also more extensive functions, such as the visualization, alarm and recording of all process related data and as such, the PLC acts 1 as a human-machine interface. There are PLCs 1 in different performance classes, which have different resources (computing capacity, memory capacity, number and type of inputs and outputs, and interfaces) that the PLC 1 allow to control and regulate the automation system process. A PLC 1 Mostly has a modular design and consists of individual components, each fulfilling a different task. Usually there is a PLC 1 a central processing unit (with one or more main processors and memory modules) and several modules with inputs and outputs. Such modular PLC 1 can be easily expanded by adding assemblies. It depends on the complexity of the process and the complexity of the structure of the automation system, which modules in the PLC 1 must be integrated. In today's automation systems, the PLC 1 also usually no independent system, but the PLC 1 is connected via appropriate interfaces - not shown here - to the Internet or intranet. This means the PLC 1 is part of a network over which or from which the PLC 1 Information, instructions, programming, etc. can receive. For example, the SPS 1 Receive information about the process supplied materials via a connection to a computer located on the intranet or Internet, so that, for example, by knowing the number or nature of the process can be optimally controlled. It is also conceivable that the SPS 1 is controlled by an access from the intranet or Internet by a user. Thus, for example, a user with the help of a computer, also called host computer, on the PLC 1 access and check their user programming, change or correct. Accordingly, the access to the PLC 1 from one or more remote control or control centers. If necessary, the master computers can have visualization devices for displaying process sequences.

Zur Steuerung des Prozesses der Automatisierungsanlage ist die SPS 1 mit Automatisierungsgeräten verbunden. Um den Verdrahtungsaufwand gering zu halten werden für diese Verbindungen Bussysteme verwendet. In dem in 1 gezeigten Ausführungsbeispiel ist die SPS 1 mittels eines übergeordneten Busses 2, der in dem hier gezeigten Ausführungsbeispiel ein Feldbus sein kann, mit einem Lokalbusmaster 3 eines untergeordneten Lokalbussystems verbunden. An den übergeordneten Bus 2 können aber nicht nur wie in dem hier gezeigten Ausführungsbeispiel ein Lokalbusmaster 3 eines Lokalbusses angeschlossen werden, sondern auch andere beliebige Teilnehmer - hier nicht gezeigt -, die zur Kommunikation mit der SPS 1 ausgestaltet sind.The PLC is used to control the process of the automation system 1 With Automation devices connected. In order to keep the wiring costs low, bus systems are used for these connections. In the in 1 embodiment shown is the PLC 1 by means of a higher-level bus 2 which may be a field bus in the embodiment shown here, with a local bus master 3 a subordinate local bus system connected. To the parent bus 2 But not only as in the embodiment shown here, a local bus master 3 A local bus can be connected, but also any other participants - not shown here - to communicate with the PLC 1 are designed.

Der übergeordnete Bus 2 ist in dem hier gezeigten Ausführungsbeispiel mit dem Lokalbusmaster 3 verbunden. Hierzu weist der Lokalbusmaster 3 eine erste Schnittstelle 4 auf, die derart ausgelegt ist, dass diese mit dem übergeordneten Bus 2 verbunden werden kann. Die Schnittstelle 4 kann hierzu beispielsweise eine Aufnahme in Form einer Buchse aufweisen und der übergeordnete Bus 2 kann einen Stecker aufweisen, der von der Buchse aufgenommen werden kann. Dabei können der Stecker und die Buchse zum Beispiel ein Modularstecker und eine Modularbuchse sein, d.h. jede Ader des übergeordneten Busses 2 wird mit einer Verbindung in der Modularbuchse elektrisch oder optisch verbunden. Dem Fachmann sind aber auch andere Möglichkeiten bekannt, wie eine Schnittstelle 4 auszulegen ist, so dass der Lokalbusmaster 3 elektrisch oder optisch mit dem übergeordneten Bus 2 verbunden werden kann. Dem Fachmann sind dabei Schraub-, Dreh-, Klick- oder Steckverbindungen bekannt, mit deren Hilfe sich eine elektrische oder optische Verbindung herstellen lassen kann. Dabei wird zumeist ein männlicher Stecker von einem weiblichen Gegenstück aufgenommen. Diese Aufnahme stellt zumeist nicht nur die elektrische oder optische Verbindung her, sondern sorgt auch dafür, dass die beiden Teile mechanisch gekoppelt werden und nur mit Aufwendung einer bestimmten Kraft wieder voneinander gelöst werden können. Es ist aber auch denkbar, dass der übergeordnete Bus 2 fest mit der Schnittstelle 4 verdrahtet ist.The parent bus 2 is in the embodiment shown here with the local bus master 3 connected. For this purpose, the local bus master 3 a first interface 4 which is designed so that this with the parent bus 2 can be connected. the interface 4 For this purpose, for example, have a recording in the form of a socket and the parent bus 2 may have a plug which can be received by the socket. In this case, the plug and the socket may be, for example, a modular plug and a modular jack, ie, each wire of the parent bus 2 is electrically or optically connected to a connection in the modular jack. The person skilled in the art, however, also knows other possibilities, such as an interface 4 is to be interpreted, so that the local bus master 3 electrically or optically with the higher-level bus 2 can be connected. The person skilled in the art screw, turn, click or plug connections are known, with the help of which can make an electrical or optical connection. In most cases, a male plug is picked up by a female counterpart. This recording usually does not only produce the electrical or optical connection, but also ensures that the two parts are mechanically coupled and can only be released from each other again with the application of a certain force. But it is also conceivable that the parent bus 2 stuck with the interface 4 wired.

Der Lokalbusmaster 3 in dem hier gezeigten Ausführungsbeispiel weist eine weitere zweite Schnittstelle 5a, 5b auf, um den Lokalbusmaster 3 mit dem Lokalbus zu verbinden. An den Lokalbus sind Datenbusteilnehmer 7a, 7b, ..., 7n angeschlossen bzw. bilden diesen. Der Lokalbus ist vorteilhafterweise derart ausgebildet, dass ein vom Lokalbusmaster 3 gesendetes Datenpaket durch alle mit dem Lokalbus verbundenen Datenbusteilnehmer 7a, 7b, ..., 7n und an den Lokalbusmaster 3 zurück übertragen wird. Dabei empfängt ein Datenbusteilnehmer 7a, 7b, ..., 7n von seinem vorgelagerten Datenbusteilnehmer 7a, 7b, ..., 7n immer nur einen Teil des Datenpakets. Nach einer Zeitspanne in der die in diesem Teil enthaltenen Daten vom Datenbusteilnehmer 7a, 7b, ..., 7n verarbeitet werden können, wird der Teil an den nachgelagerten Datenbusteilnehmer 7a, 7b, ..., 7n weitergeleitet und gleichzeitig wird von dem vorgelagerten Datenbusteilnehmer 7a, 7b, ..., 7n ein neuer Teil des Datenpakets empfangen. Auf diese Weise passieren alle Teile des Datenpakets sequentiell alle Datenbusteilnehmer 7a, 7b, ..., 7n. Der Lokalbus ist vorteilhafterweise in einer ringförmigen Struktur ausgebildet. Derartige Lokalbusse können auch als Ringbus 6 bezeichnet werden. Der Lokalbus kann alternativ auch strangförmig oder sternförmig oder aus einer Kombination oder Mischform der zuvor genannten ausgebildet sein. Das Senden und Empfangen der Datenpakete wird dabei über die zweite Schnittstelle des Lokalbusmasters 3 bewerkstelligt. In dem hier gezeigten Ausführungsbeispiel teilt sich die zweite Schnittstelle in einen ersten Teil 5a und einen zweiten Teil 5b auf. Der erste Teil 5a der zweiten Schnittstelle stellt die Abwärtsverbindung im Ringbus 6 her und der zweite Teil 5b der zweiten Schnittstelle stellt die Aufwärtsverbindung im Ringbus 6 her.The local bus master 3 in the embodiment shown here has a further second interface 5a . 5b on to the local bus master 3 to connect to the local bus. To the local bus are data bus users 7a . 7b , ..., 7n connected or form this. The local bus is advantageously designed such that one from the local bus master 3 data packet sent by all data bus users connected to the local bus 7a . 7b , ..., 7n and to the local bus master 3 is transferred back. In this case, a data bus subscriber receives 7a . 7b , ..., 7n from its upstream data bus subscriber 7a . 7b , ..., 7n only a part of the data package. After a period of time in which the data contained in this part of the data bus subscriber 7a . 7b , ..., 7n can be processed, the part to the downstream data bus participants 7a . 7b , ..., 7n forwarded and at the same time is from the upstream data bus subscriber 7a . 7b , ..., 7n receive a new part of the data packet. In this way, all parts of the data packet pass sequentially all data bus users 7a . 7b , ..., 7n , The local bus is advantageously formed in an annular structure. Such local buses can also be used as a ring bus 6 be designated. Alternatively, the local bus can also be formed in a strand-shaped or star-shaped manner or from a combination or mixed form of the aforementioned. The sending and receiving of the data packets is via the second interface of the local bus master 3 accomplished. In the embodiment shown here, the second interface is divided into a first part 5a and a second part 5b on. The first part 5a the second interface provides the downlink in the ring bus 6 here and the second part 5b The second interface provides the uplink in the ring bus 6 ago.

Der Ringbus 6, dessen Datensenderichtung mit Pfeilen in dem in 1 gezeigten Ausführungsbespiel gezeigt ist, weist in dem hier gezeigten Ausführungsbeispiel die Datenbusteilnehmer 7a, 7b, ..., 7n auf. Diese Datenbusteilnehmer 7a, 7b, ..., 7n weisen in dem hier gezeigten Ausführungsbeispiel jeweils eine Schnittstelle 8 auf, um Daten von einem vorgelagerten oder vorangehenden Datenbusteilnehmer 7a, 7b, ..., 7n zu empfangen. Im Fall von Datenbusteilnehmer 7a, empfängt dieser über die Schnittstelle 8 Daten von dem vorgelagerten Lokalbusmaster 3. Die Daten auf dem Lokalbus 6 können auch als Lokalbusdaten bezeichnet werden. Des Weiteren weisen die Datenbusteilnehmer 7a, 7b, ..., 7n in dem hier gezeigten Ausführungsbeispiel jeweils eine Schnittstelle 9 auf, um Daten an einen nachgelagerten oder nachfolgenden Datenbusteilnehmer 7a, 7b, ..., 7n weiterzuleiten. In Fall von Datenbusteilnehmer 7a sendet dieser Daten an den nachgelagerten Datenbusteilnehmer 7b über die Schnittstelle 9. Die Schnittstellen 8 und 9 dienen dabei zum Propagieren von Daten in Abwärtsrichtung des Ringbusses 6, d.h. von dem Lokalbusmaster 3 weg. Des Weiteren weisen die Datenbusteilnehmer 7a, 7b, ..., 7n in diesem Ausführungsbeispiel auch Schnittstellen 10 und 11 auf, zum Propagieren von Daten in Aufwärtsrichtung des Ringbusses 6, d.h. zum Lokalbusmaster 3 hin. Im Fall des Datenbusteilnehmers 7a ist Schnittstelle 10 dabei dazu ausgelegt, Daten von dem nachgelagerten oder nachfolgenden Datenbusteilnehmer 7b zu empfangen und Schnittstelle 11 ist dazu ausgelegt, Daten an den vorgelagerten oder vorangehenden Datenbusteilnehmer, hier den Lokalbusmaster 3, weiterzuleiten. Es kann also auch gesagt werden, dass die Schnittstellen 9 und 11 Senderschnittstellen sind, wohingegen die Schnittstellen 8 und 10 Empfängerschnittstellen sind.The ring bus 6 whose data sending direction is indicated by arrows in the in 1 shown Ausführungsbespiel shown, in the embodiment shown here, the data bus participants 7a . 7b , ..., 7n on. These data bus participants 7a . 7b , ..., 7n each have an interface in the embodiment shown here 8th on to data from an upstream or previous data bus subscriber 7a . 7b , ..., 7n to recieve. In the case of data bus users 7a , this receives via the interface 8th Data from the upstream local bus master 3 , The data on the local bus 6 can also be referred to as local bus data. Furthermore, the data bus users 7a . 7b , ..., 7n in the embodiment shown here in each case an interface 9 on to data to a downstream or downstream data bus subscriber 7a . 7b , ..., 7n forward. In the case of data bus users 7a sends this data to the downstream data bus user 7b over the interface 9 , The interfaces 8th and 9 serve to propagate data in the downward direction of the ring bus 6 ie from the local bus master 3 path. Furthermore, the data bus users 7a . 7b , ..., 7n in this embodiment also interfaces 10 and 11 on, to propagate data in the upward direction of the ring bus 6 ie to the local bus master 3 out. In the case of the data bus subscriber 7a is interface 10 It is designed to receive data from the downstream or downstream data bus subscriber 7b to receive and interface 11 is designed to transfer data to the upstream or previous data bus user, here the local bus master 3 to forward. So it can also be said that the interfaces 9 and 11 Transmitter interfaces are, whereas the interfaces 8th and 10 Are receiver interfaces.

In dem hier gezeigten Ausführungsbeispiel werden die Verbindungen der Schnittstellen und der SPS 1 beziehungsweise den Datenbusteilnehmern 7a, 7b, ..., 7n mit Hilfe von Kabeln oder Leiterplatten zur direkten oder indirekten Kontaktierung mittels elektrischen Kontakten realisiert. Eine andere Alternative ist, dass die einzelnen Verbindungen kabellos hergestellt werden, und die Schnittstellen die notwendigen Umsetzungen auf die verwendeten Funkstandards bereitstellen. In the embodiment shown here, the connections of the interfaces and the PLC 1 or the data bus users 7a . 7b , ..., 7n implemented by means of cables or printed circuit boards for direct or indirect contacting by means of electrical contacts. Another alternative is that the individual connections are made wirelessly, and the interfaces provide the necessary conversions to the radio standards used.

Auch wenn der Lokalbusmaster 3 und die einzelnen Datenbusteilnehmer 7a, 7b, ..., 7n in dem hier gezeigten Ausführungsbeispiel voneinander beabstandet gezeigt sind, der Lokalbusmaster 3 also dezentral angeordnet ist von den Datenbusteilnehmern 7a, 7b, ..., 7n, ist dem Fachmann bewusst, dass die Datenbusteilnehmer 7a, 7b, ..., 7n und der Lokalbusmaster 3 - der auch einen Datenbusteilnehmer des Ringbusses 6 darstellt - auch direkt miteinander verbunden werden können. Dabei können beispielsweise Kontakte des einen Datenbusteilnehmers in entsprechende Aufnahmen oder Aufnahmekontakte eines direkt benachbarten Datenbusteilnehmers greifen, um so eine elektrische Verbindung zwischen den Datenbusteilnehmern herzustellen, damit Daten in Abwärts- und Aufwärtsrichtung gesendet werden können. Beispielsweise können die Datenbusteilnehmer 7a, 7b, ...,7n an der dem Master abgewandten Seite Aufnahmen und an der dem Master zugewandten Seite Kontakte aufweisen. Werden die Datenbusteilnehmer 7a, 7b, ...,7n dann entsprechend aneinandergereiht, so greifen die Kontakte des einen Datenbusteilnehmers 7a, 7b, ..., 7n jeweils in die Aufnahmen des anderen Datenbusteilnehmers 7a, 7b, ..., 7n ein und es kann eine elektrische Verbindung erzeugt werden. Der Lokalbusmaster 3 weist dann entsprechend Aufnahmen an der Seite auf, die in die Kontakte des ersten Datenbusteilnehmers 7a greifen, um so zwischen den Schnittstellen 5a und 8 beziehungsweise den Schnittstellen 5b und 11 eine elektrische Verbindung zu erzeugen. Dem Fachmann sind aber auch noch andere Möglichkeiten, z.B. Druckkontakte, Messer- und Gabelkontakte bekannt, wie zwei direkt aneinander angeordnete Datenbusteilnehmer 7a, 7b, ..., 7n eine elektrische oder optische Verbindung herstellen können.Even if the local bus master 3 and the individual data bus users 7a . 7b , ..., 7n are shown spaced apart in the embodiment shown here, the local bus master 3 that is decentralized arranged by the data bus participants 7a . 7b , ..., 7n , the person skilled in the art is aware that the data bus users 7a . 7b , ..., 7n and the local bus master 3 - The also a data bus participant of the ring bus 6 represents - can also be connected directly with each other. In this case, for example, contacts of a data bus subscriber can access corresponding receptacles or receptacle contacts of a directly adjacent data bus subscriber so as to establish an electrical connection between the data bus users so that data can be transmitted in the downward and upward direction. For example, the data bus users 7a . 7b , ..., 7n have on the side facing away from the master recordings and on the side facing the master contacts. Become the data bus participants 7a . 7b , ..., 7n then strung together accordingly, so grab the contacts of a data bus participant 7a . 7b , ..., 7n in each case in the recordings of the other data bus subscriber 7a . 7b , ..., 7n and an electrical connection can be created. The local bus master 3 then has corresponding recordings on the page which are in the contacts of the first data bus subscriber 7a grabbing so between the interfaces 5a and 8th or the interfaces 5b and 11 to create an electrical connection. However, the person skilled in the art also knows of other possibilities, for example pressure contacts, blade and fork contacts, such as two data bus users arranged directly next to one another 7a . 7b , ..., 7n can make an electrical or optical connection.

Im Falle dessen, dass die Datenbusteilnehmer 7a, 7b, ..., 7n und der Lokalbusmaster 3 direkt miteinander verbunden werden sollen, können diese auch mechanische Aufnahmen oder mechanische Befestigungsmittel aufweisen, mit denen die einzelnen Datenbusteilnehmer 7a, 7b, ..., 7n und der Lokalbusmaster 3 miteinander verbunden werden können. Hierbei kann zum Beispiel ein Datenbusteilnehmer 7a, 7b, ..., 7n an einer Seite einen Vorsprung aufweisen und an der anderen Seite eine Hinterschneidung aufweisen. Werden die Datenbusteilnehmer 7a, 7b, ..., 7n dann aneinandergereiht, so greift ein Vorsprung in eine Hinterschneidung des anderen Datenbusteilnehmers 7a, 7b, ..., 7n ein, so dass eine mechanische Kopplung entsteht. Zur einfachen Aneinanderreihung der Datenbusteilnehmer 7a, 7b, ..., 7n können diese auch auf einer gemeinsamen Aufnahme, zum Beispiel einer Hutschiene angeordnet werden. Zur Befestigung auf der Hutschiene können die Datenbusteilnehmer 7a, 7b, ..., 7n entsprechende Befestigungsmittel aufweisen. Alternativ oder zusätzlich können die Datenbusteilnehmer 7a, 7b, ..., 7n auch beispielsweise lösbar verbindbare Befestigungsmittel aufweisen, mit denen die Datenbusteilnehmer 7a, 7b, ..., 7n entweder an der Hutschiene oder an einer anderen Aufnahme befestigt werden können. Dazu kann das lösbar verbindbare Befestigungsmittel austauschbar sein und ein entsprechendes Befestigungsmittel für die gewünschte Aufnahme kann mit den Datenbusteilnehmern 7a, 7b, ..., 7n verbunden werden, so dass diese an der gewünschten Aufnahme befestigt werden können.In the case of the data bus users 7a . 7b , ..., 7n and the local bus master 3 be directly connected to each other, they may also have mechanical recordings or mechanical fasteners with which the individual Datenbusteilnehmer 7a . 7b , ..., 7n and the local bus master 3 can be connected to each other. In this case, for example, a data bus subscriber 7a . 7b , ..., 7n have a projection on one side and an undercut on the other side. Become the data bus participants 7a . 7b , ..., 7n then strung together, so engages a projection in an undercut of the other data bus subscriber 7a . 7b , ..., 7n so that a mechanical coupling is created. For simple juxtaposition of data bus users 7a . 7b , ..., 7n These can also be arranged on a common recording, for example, a DIN rail. The data bus users can be attached to the DIN rail 7a . 7b , ..., 7n have corresponding fastening means. Alternatively or additionally, the data bus users 7a . 7b , ..., 7n Also, for example, releasably connectable fastening means, with which the data bus participants 7a . 7b , ..., 7n can be attached either to the DIN rail or to another recording. For this purpose, the releasably connectable fastening means can be exchangeable and a corresponding fastening means for the desired recording can with the Datenbusteilnehmern 7a . 7b , ..., 7n be connected so that they can be attached to the desired recording.

Des Weiteren weisen die Datenbusteilnehmer 7a, 7b, ..., 7n in dem in 1 gezeigten Ausführungsbeispiel auch eine Verarbeitungseinheit 12 auf, die beispielsweise aus einer Verarbeitungskomponente und einer Logikeinheit besteht, die in 3 näher gezeigt sind. Die Verarbeitungseinheit 12 kann auch als Gesamtschaltung des Datenbusteilnehmers bezeichnet werden. D.h. die Verarbeitungseinheit 12 empfängt Daten über die Eingänge 8 und 10 und gibt Daten auf den Ausgängen 9 und 11 aus. Des Weiteren kann die Verarbeitungseinheit 12 Daten von den Ein-/und Ausgängen 13 und 14 empfangen beziehungsweise ausgeben. Weiterhin hat die Verarbeitungseinheit 12 Zugriff auf einen Speicher 12' des Datenbusteilnehmers 7a, 7b, ..., 7n in dem beispielsweise Daten, Prozessdaten, oder Instruktionslisten gespeichert sind.Furthermore, the data bus users 7a . 7b , ..., 7n in the 1 embodiment shown, a processing unit 12 on, which consists for example of a processing component and a logic unit, which in 3 are shown in more detail. The processing unit 12 may also be referred to as the overall circuit of the data bus subscriber. That is, the processing unit 12 receives data through inputs 8 and 10 and outputs data to the outputs 9 and 11 out. Furthermore, the processing unit 12 Data from the inputs and outputs 13 and 14 receive or spend. Furthermore, the processing unit has 12 Access to a memory 12 ' of the data bus subscriber 7a . 7b , ..., 7n in which, for example, data, process data, or instruction lists are stored.

Die Verarbeitungseinheit 12 kann dazu ausgelegt sein, empfangene Daten zu verarbeiten und Daten auszugeben. Empfangen werden können zu verarbeitende Daten entweder von einem vorgelagerten Datenbusteilnehmer oder von Eingängen 13 des Datenbusteilnehmers 7a, 7b, ..., 7n. Dabei können die Eingänge 13 des Datenbusteilnehmers 7a, 7b, ..., 7n mit Sensoren 15 verbunden sein, die zum Beispiel Messdaten, Zustandsdaten, etc. senden. Ausgegeben werden können verarbeitete Daten entweder an einen nachgelagerten Datenbusteilnehmer oder an Ausgängen 14 des Datenbusteilnehmers 7a, 7b, ..., 7n. Dabei können die Ausgänge 14 des Datenbusteilnehmers 7a, 7b, ..., 7n mit Aktoren 16 verbunden sein, die zum Beispiel mit Hilfe der an sie gerichteten Daten eine bestimmte Aktion durchführen. Wenn in Aufwärtsrichtung auch eine Verarbeitung der Daten stattfinden soll, so können Daten auch von einem nachgelagerten Datenbusteilnehmer 7a, 7b, ..., 7n empfangen werden und verarbeitete Daten an einen vorgelagerten Datenbusteilnehmer 7a, 7b, ..., 7n gesendet werden.The processing unit 12 may be configured to process received data and output data. Data to be processed can be received either from an upstream data bus subscriber or from inputs 13 of the data bus subscriber 7a . 7b , ..., 7n , The inputs can 13 of the data bus subscriber 7a . 7b , ..., 7n with sensors 15 be connected, for example, the measurement data, status data, etc. send. Processed data can be output either to a downstream data bus subscriber or to outputs 14 of the data bus subscriber 7a . 7b , ..., 7n , The outputs can be 14 of the data bus subscriber 7a . 7b , ..., 7n with actuators 16 be connected, for example, perform a specific action using the data directed to them. If data processing is to take place in the upward direction as well, data can also be transmitted from a downstream data bus user 7a . 7b , ..., 7n be received and processed Data to an upstream data bus subscriber 7a . 7b , ..., 7n be sent.

Einfachheitshalber sind in dem hier gezeigten Ausführungsbeispiel die Datenbusteilnehmer 7a, 7b, ..., 7n nur mit einem Eingang 13 und einem Ausgang 14 gezeigt und auch nur Datenbusteilnehmer 7b ist mit Sensor 15 und Aktor 16 verbunden. Es ist dem Fachmann aber bewusst, dass die Datenbusteilnehmer 7a, 7b, ..., 7n eine Vielzahl von Ein- und Ausgängen 13 und 14 aufweisen können, und mit einer Vielzahl von unterschiedlichen Sensoren 15 und Aktoren 16 verbunden werden können. Dabei ist das die Sensoren 15 charakterisierende Merkmal, dass die Sensoren 15 Daten oder Signale aufnehmen und an den Datenbusteilnehmer 7a, 7b, ..., 7n senden, wohingegen Aktoren 16 Daten oder Signale von den Datenbusteilnehmern 7a, 7b,..., 7n empfangen und basierend auf diesen Daten oder Signalen eine Aktion ausführen.For the sake of simplicity, the data bus users are in the exemplary embodiment shown here 7a . 7b , ..., 7n only with one entrance 13 and an exit 14 shown and also only data bus participants 7b is with sensor 15 and actor 16 connected. However, those skilled in the art are aware that the data bus users 7a . 7b , ..., 7n a variety of inputs and outputs 13 and 14 and with a variety of different sensors 15 and actuators 16 can be connected. And that's the sensors 15 characterizing feature that the sensors 15 Record data or signals and to the data bus subscriber 7a . 7b , ..., 7n send, whereas actors 16 Data or signals from the data bus users 7a . 7b , ..., 7n receive and perform an action based on these data or signals.

Alternativ können die Schnittstellen 8, 9, 10 und 11 in einer Moduleinheit integriert sein und die Datenbusteilnehmer 7a, 7b, ..., 7n können auf diese Moduleinheit aufgesteckt werden. Die Moduleinheiten können auch als Basiselemente des Ringbusses 6 bezeichnet werden. Die Ringbusinfrastruktur wird dabei durch die Moduleinheiten aufgebaut und die Datenbusteilnehmer 7a, 7b, ..., 7n sind auswechselbar, so dass der Ringbus 6 mit beliebigen Datenbusteilnehmern 7a, 7b, ..., 7n aufgebaut werden kann. Mit Hilfe der Moduleinheiten ist auch sichergestellt, dass auch wenn ein Datenbusteilnehmer 7a, 7b, ..., 7n entfernt wird, die Kommunikation zwischen den restlichen Datenbusteilnehmern 7a, 7b, ..., 7n nicht unterbrochen wird, weil die Kommunikation über die noch vorhandenen Moduleinheiten geschieht.Alternatively, the interfaces 8th . 9 . 10 and 11 be integrated in a module unit and the data bus users 7a . 7b , ..., 7n can be plugged onto this module unit. The module units can also be used as basic elements of the ring bus 6 be designated. The ring bus infrastructure is built up by the module units and the data bus users 7a . 7b , ..., 7n are interchangeable, so the ring bus 6 with any data bus users 7a . 7b , ..., 7n can be built. With the help of modular units is also ensured that even if a data bus subscriber 7a . 7b , ..., 7n is removed, the communication between the remaining data bus users 7a . 7b , ..., 7n is not interrupted, because the communication is done on the remaining module units.

Die in diesem Ausführungsbeispiel gezeigten Datenbusteilnehmer 7a, 7b, ..., 7n werden auf Grund ihrer Ein- und Ausgänge 13, 14, die mit Sensoren 15 beziehungsweise Aktoren 16 verbunden werden können, auch häufig als E/A-Module bezeichnet. Auch wenn die Datenbusteilnehmer 7a, 7b, ..., 7n in dem hier gezeigten Ausführungsbeispiel als räumlich getrennt von den Sensoren 15 beziehungsweise Aktoren 16 dargestellt sind, so können die Sensoren 15 beziehungsweise Aktoren 16 auch in dem E/A-Modul integriert sein.The data bus users shown in this embodiment 7a . 7b , ..., 7n are due to their inputs and outputs 13 , 14, with sensors 15 or actuators 16 often referred to as I / O modules. Even if the data bus participants 7a . 7b , ..., 7n in the embodiment shown here as spatially separated from the sensors 15 or actuators 16 are shown, so the sensors 15 or actuators 16 also be integrated in the I / O module.

Der in dem hier gezeigten Ausführungsbeispiel gezeigte Ringbus 6 basiert auf einer Zyklusrahmenkommunikation. Ein Zyklusrahmen kann dabei beispielsweise als ein wiederkehrendes (zyklisches) vorzugsweise äquidistantes Zeitintervall, in dem Daten auf dem Ringbus 6 übertragbar sind, definiert werden. Der Zyklusrahmen weist beispielsweise zumindest eine erste Kennung (SOC) und einen Zeitbereich zur Übertragung von Daten auf. Mehrere erste Kennungen (SOC) aufeinander folgender Zyklusrahmen sind dabei vorteilhafterweise in einem zeitlich äquidistanten Abstand zueinander. Der genannte Zeitbereich ist für die Übertragung der Daten vorgesehen, die innerhalb des Zyklusrahmens in Form von Datenpaketen übertragen werden können. Die erste Kennung (SOC) und die Datenpakete werden über den Ringbus 6 übertragen und durchlaufen alle Datenbusteilnehmer 7a, 7b, ..., 7n. Vorteilhafterweise wird der Zyklusrahmen durch den Lokalbusmaster 3 im Ringbus 6 initiiert. Die erste Kennung (SOC) ist separat, also als eigenständiges Symbol übertragbar oder vorteilhafterweise in einem Startdatenpaket (SOC-Paket) enthalten.The ring bus shown in the embodiment shown here 6 is based on a cycle frame communication. A cycle frame may, for example, as a recurring (cyclic) preferably equidistant time interval in the data on the ring bus 6 are transferable. The cycle frame has, for example, at least a first identifier (SOC) and a time range for the transmission of data. Several first identifiers (SOC) of successive cycle frames are advantageously at a time equidistant from each other. The said time range is intended for the transmission of the data which can be transmitted within the cycle frame in the form of data packets. The first identifier (SOC) and the data packets are transmitted via the ring bus 6 transmit and go through all data bus users 7a . 7b , ..., 7n , Advantageously, the cycle frame is determined by the local bus master 3 in the ring bus 6 initiated. The first identifier (SOC) is separate, ie transferable as an independent symbol or advantageously contained in a start data packet (SOC packet).

Innerhalb des Zeitbereichs des Zyklusrahmens werden keine, ein oder mehrere Datenpakete übertragen. Vorteilhafterweise werden in einem Zyklusrahmen Leerlauf-Daten (Idle-Data) eingefügt, insbesondere angrenzend an zumindest ein Datenpaket. Vorteilhafterweise bewirkt die Übertragung der Datenpakete und/oder der Leerlauf-Daten ein ununterbrochenes Signal auf dem Ringbus 6. Das Signal ermöglicht es den Datenbusteilnehmern 7a, 7b, ..., 7n, sich auf dieses zeitlich zu synchronisieren. Vorteilhafterweise sind innerhalb eines Zyklusrahmens zusätzlich Leerlauf-Daten am Ende des Zyklusrahmens (Trailer). Der Trailer hat eine variable Länge und folgt auf den Zeitbereich zur Datenübertragung vorzugsweise bis zur folgenden ersten Kennung (SOC) des nächsten Zyklusrahmens. Ein entsprechender Zyklusrahmen ist beispielhaft in 2 gezeigt.Within the time range of the cycle frame, none, one or more data packets are transmitted. Advantageously, idle data (idle data) are inserted in a cycle frame, in particular adjacent to at least one data packet. Advantageously, the transmission of the data packets and / or the idle data causes an uninterrupted signal on the ring bus 6 , The signal allows the data bus users 7a . 7b , ..., 7n to synchronize on this time. Advantageously, idle data is also available at the end of the cycle frame (trailer) within a cycle frame. The trailer has a variable length and preferably follows the time range for data transmission until the next first identifier (SOC) of the next cycle frame. A corresponding cycle frame is exemplary in FIG 2 shown.

Jedes Datenpaket wird von dem Lokalbusmaster 3 in Abwärtsrichtung an den ersten Datenbusteilnehmer 7a des Ringbusses 6 gesendet. Dieser empfängt einen ersten Teil des Datenpakets über die Schnittstelle 8. Ein derartiger Teil des Datenpakets wird im Folgenden auch als Stück, Einheit, oder Symbol bezeichnet. Der Datenbusteilnehmer 7a führt dann eine Verarbeitung des Teils aus, und leitet den Teil dann an den nächsten Datenbusteilnehmer 7b über Schnittstelle 9 weiter, vorzugsweise gleichzeitig empfängt der erste Datenbusteilnehmer 7a einen zweiten Teil des Datenpakets usw. Die Größe der Teile des Datenpakets, also die Stückelung des Datenpakets, hängt dabei von der Aufnahmekapazität der Datenbusteilnehmer 7a, 7b, ..., 7n ab, beispielsweise können zur Verarbeitung gleichzeitig eine feste Anzahl von Bits, beispielsweise 8 Bits des Datenpakets am Datenbusteilnehmer 7a, 7b, ..., 7n vorliegen. Wenn die Datenübertragung auf dem Lokalbus 6 seriell ist, so können die Schnittstellen 8 und 10 angepasst sein, eine seriell zu parallel Umsetzung durchzuführen und die Schnittstellen 9 und 11 eine parallel zu seriell Umsetzung. Hierzu können die Schnittstellen 8, 9, 10, 11 entsprechende Register - hier nicht gezeigt - aufweisen. Die Schnittstellen 8, 9, 10, 11 können auch dazu angepasst sein, eventuell nötige Kodierungen und Enkodierungen durchzuführen. Beispielsweise kann auf dem Lokalbus ein 8b10b-Code verwendet werden, deren Umsetzung durch die Schnittstellen 8, 9, 10 und 11 bewerkstelligt werden kann.Each data packet is sent by the local bus master 3 in the downward direction to the first data bus subscriber 7a of the ring bus 6 Posted. This receives a first part of the data packet via the interface 8th , Such a part of the data packet is also referred to below as a piece, unit, or symbol. The data bus participant 7a then performs processing of the part and then passes the part to the next data bus subscriber 7b via interface 9 further, preferably simultaneously receives the first data bus subscriber 7a a second part of the data packet, etc. The size of the parts of the data packet, ie the denomination of the data packet, depends on the capacity of the data bus participants 7a . 7b , ..., 7n For example, at the same time a fixed number of bits, for example 8th Bits of the data packet at the data bus subscriber 7a . 7b , ..., 7n available. When the data transfer on the local bus 6 serial, so can the interfaces 8th and 10 be adapted to perform a serial to parallel implementation and the interfaces 9 and 11 a parallel to serial implementation. For this purpose, the interfaces 8th . 9 . 10 . 11 corresponding registers - not shown here - have. The interfaces 8th . 9 . 10 . 11 may also be adapted to perform any necessary coding and encoding. For example, an 8b10b code can be used on the local bus, its implementation by the interfaces 8th . 9 . 10 and 11 can be accomplished.

Das Datenpaket durchläuft einheitenweise, stückchenweise, oder Teile weise, zum Beispiel in Teilen oder Symbolen von 8 Bits, die Datenbusteilnehmer 7a, 7b, ..., 7n. Der Teil des Datenpakets, welcher vom letzten Datenbusteilnehmer, in dem hier gezeigten Ausführungsbeispiel Datenbusteilnehmer 7n, verarbeitet worden ist, durchläuft dann in Aufwärtsrichtung den Ringbus 6, so dass die Teile ausgehend von dem letzten Datenbusteilnehmer 7n wieder in Richtung Lokalbusmaster 3 durch alle Datenbusteilnehmer 7a, 7b, ..., 7n aufwärts gesendet werden. Hierzu weist der letzte Datenbusteilnehmer 7n entweder eine schaltbare Brücke auf, die die Schnittstelle 9 mit der Schnittstelle 9 verbindet oder an den letzten Datenbusteilnehmer 7n wird eine schaltbare Brücke - hier nicht gezeigt - angeschlossen, die die Funktion übernimmt die Teile des Datenpakets von der Schnittstelle 9 auf die Schnittstelle 10 zu leiten. Alternativ kann die Schnittstelle 10 des Datenbusteilnehmers 7n auch mit Hilfe einer Bypassleitung - hier nicht gezeigt - direkt mit der Schnittstelle 5b des Lokalbusmasters 3 verbunden werden.The data package goes through units, pieces, or pieces, for example, in parts or symbols of 8th Bits, the data bus users 7a . 7b , ..., 7n , The part of the data packet, which from the last data bus subscriber, in the embodiment shown here data bus users 7n , has been processed, then goes through the ring bus in the upward direction 6 so that the parts starting from the last data bus participant 7n again in the direction of local bus master 3 through all data bus users 7a . 7b , ..., 7n be sent upwards. For this, the last data bus subscriber points 7n either a switchable bridge on which the interface 9 with the interface 9 connects or to the last data bus subscriber 7n a switchable bridge - not shown here - is connected, which takes over the parts of the data packet from the interface 9 on the interface 10 to lead. Alternatively, the interface 10 of the data bus subscriber 7n also with the help of a bypass line - not shown here - directly with the interface 5b of the local bus master 3 get connected.

In der Aufwärtsrichtung können die Einheiten des Datenpakets beziehungsweise der Datenpakete, wie in dem hier gezeigten Ausführungsbeispiel durch die einzelnen Datenbusteilnehmer 7a, 7b, ..., 7n zurück an den Lokalbusmaster 3 geschleift werden, ohne dass eine weitere Verarbeitung stattfindet. Es ist aber auch denkbar, dass in der Aufwärtsrichtung erneut eine Verarbeitung der Einheiten des Datenpakets stattfindet, so dass das Datenpaket zweimal verarbeitet werden kann, einmal auf der Abwärtsrichtung zum letzten Datenbusteilnehmer 7n und einmal in Aufwärtsrichtung zum Lokalbusmaster 3. Beispielsweise kann in Aufwärtsrichtung eine Verarbeitung durch Signalauffrischung und/oder Phasenschiebung erfolgen.In the upward direction, the units of the data packet or of the data packets, as in the exemplary embodiment shown here, can be used by the individual data bus users 7a . 7b , ..., 7n back to the local bus master 3 be looped without any further processing taking place. However, it is also conceivable that processing of the units of the data packet takes place again in the upward direction, so that the data packet can be processed twice, once in the downward direction to the last data bus subscriber 7n and once in the upward direction to the local bus master 3 , For example, upstream processing may be signal refresh and / or phase shift processing.

Bei der Verarbeitung der Datenpakete in Abwärtsrichtung, d.h. von dem Lokalbusmaster 3 weg, oder in Aufwärtsrichtung, d.h. zum Lokalbusmaster 3 hin, wird die Verarbeitung mit Hilfe von Instruktionslisten bewerkstelligt, wobei die Instruktionslisten Sätze von Instruktionen beinhalten, die von der Verarbeitungseinheit 12 der Datenbusteilnehmer 7a, 7b, ..., 7n ausgeführt werden können. Die Instruktionslisten selbst können den einzelnen Datenbusteilnehmern 7a, 7b, ..., 7n in einer Initialisierungsphase vom Lokalbusmaster 3 zugesandt werden oder vorteilhaft während der laufenden Kommunikation den Datenbusteilnehmern 7a, 7b, ..., 7n zugesandt werden, so dass eine Programmierung der Datenbusteilnehmer 7a, 7b, ..., 7n ohne Unterbrechung der Kommunikation stattfindet.In the processing of the data packets in the downward direction, ie by the local bus master 3 away, or in the upward direction, ie to the local bus master 3 In addition, the processing is accomplished by means of instruction lists, the instruction lists containing sets of instructions issued by the processing unit 12 of the Datenbusteilnehmer 7a . 7b , ..., 7n can be executed. The instruction lists themselves can be used by individual data bus users 7a . 7b , ..., 7n in an initialization phase from the local bus master 3 be sent or beneficial during the ongoing communication the data bus users 7a . 7b , ..., 7n be sent, so that programming the data bus participants 7a . 7b , ..., 7n without interruption of communication takes place.

Welche der Instruktionslisten die Datenbusteilnehmer 7a, 7b, ..., 7n verwenden sollen kann den Datenbusteilnehmern 7a, 7b, ..., 7n anhand von einem Instruktionslistenindex mitgeteilt werden. Dieser Instruktionslistenindex informiert den Datenbusteilnehmer darüber, welche gespeicherte Instruktionsliste verwendet werden soll. Ein Instruktionslistenindex ist also einer Instruktionsliste zugeordnet oder umgekehrt, so dass mit Hilfe des Instruktionslistenindexes die zu verwendende Instruktionsliste identifiziert werden kann. Hierzu weist der Instruktionslistenindex bevorzugt einen Wert auf, der zugeordnet ist zu einer Instruktionsliste, beispielsweise weist der Wert auf eine bestimmte Instruktionsliste hin oder auf deren Speicherplatz. Dazu kann der Wert selbst die Speicheradresse sein, wo die Instruktionsliste gespeichert ist oder wo zumindest eine erste Instruktion der Instruktionsliste gespeichert ist. Alternativ oder zusätzlich kann der Wert auch auf einen Speicherbereich hinweisen, in dem die entsprechende Instruktionsliste abgespeichert ist. In den zuvor genannten Fällen kann auch von einer direkten Zuordnung gesprochen werden. Der Wert des Instruktionslistenindex kann beispielsweise aber auch verwendet werden, als Eingabe einer Umsetzungstabelle (engl. Lookup-Tabelle, LUT). Dabei ist der Wert des Instruktionslistenindex der Eingangswert der Umsetzungstabelle. Der Ausgangswert der Umsetzungstabelle kann die Speicheradresse der ersten Instruktion in der zugehörigen Instruktionsliste sein oder anderweitig die Instruktionsliste identifizieren. Die Umsetzungstabelle kann softwaretechnisch sowie hardwaretechnisch in Form von beispielsweise Logiken hinterlegt sein und eine eineindeutige Umsetzung von einem Eingangswert in einen Ausgangswert angeben, wobei der Ausgangswert einen Hinweis auf die zu verwendende Instruktionsliste gibt. Dabei hängt es von der Umsetzungstabelle ab, wie ein Zusammenhang zwischen dem Instruktionslistenindex und der Instruktionsliste hergestellt wird. Bei der Verwendung einer Umsetzungstabelle kann auch von einer indirekten Zuordnung gesprochen werden. Bei der direkten sowie indirekten Zuordnung ist aber über den Instruktionslistenindex die von dem Datenbusteilnehmer zu verwendende Instruktionsliste eineindeutig identifizierbar, d.h. auffindbar. Der Instruktionslistenindex kann vor den zu verarbeitenden Lokalbusdaten in das Datenpaket eingefügt werden, so dass die Datenbusteilnehmer 7a, 7b, ..., 7n entsprechend der Reihenfolge der Lokalbusdaten im Datenpaket die entsprechende Instruktionsliste verwenden können. Die Instruktionslisten weisen dabei Instruktionen auf, die an die Reihenfolge der Lokalbusdaten im Datenpaket angepasst sind. Die Instruktionslisten können dabei beispielsweise für Lokalbusdaten, die nicht an den Datenbusteilnehmer 7a, 7b, ..., 7n gerichtet sind eine „SKIP“ Instruktion aufweisen, also den Datenbusteilnehmer 7a, 7b, ..., 7n anweisen den entsprechenden Teil des Datenpakets zu überspringen, wohingegen die Instruktionsliste für Lokalbusdaten, die an den Datenbusteilnehmer 7a, 7b, ..., 7n gerichtet sind entsprechende Instruktionen zum Verarbeiten der Lokalbusdaten aufweisen kann. Die Datenpakete zum Senden der Prozessdaten und der Managementdaten der Datenbusteilnehmer 7a, 7b,..., 7n sind in den 3 bis 5 gezeigt.Which of the instruction lists the data bus users 7a . 7b , ..., 7n It should be able to use the data bus users 7a . 7b , ..., 7n be communicated on the basis of an instruction list index. This instruction list index informs the data bus user which stored instruction list to use. An instruction list index is thus assigned to an instruction list or vice versa, so that the instruction list to be used can be identified with the aid of the instruction list index. For this purpose, the instruction list index preferably has a value which is assigned to an instruction list, for example, the value indicates a specific instruction list or its memory location. For this purpose, the value itself may be the memory address where the instruction list is stored or where at least a first instruction of the instruction list is stored. Alternatively or additionally, the value can also indicate a memory area in which the corresponding instruction list is stored. In the cases mentioned above can also be spoken of a direct assignment. The value of the instruction list index, however, can also be used, for example, as input of a look-up table (LUT). The value of the instruction list index is the input value of the conversion table. The output of the translation table may be the memory address of the first instruction in the associated instruction list or otherwise identify the instruction list. The conversion table can be stored in terms of software technology and hardware in the form of, for example, logics and specify a one-to-one conversion from an input value to an output value, the output value giving an indication of the instruction list to be used. It depends on the conversion table how a connection between the instruction list index and the instruction list is established. When using a conversion table, it is also possible to speak of an indirect assignment. In the case of direct and indirect assignment, however, the instruction list to be used by the data bus subscriber is uniquely identifiable via the instruction list index, ie can be found. The instruction list index can be inserted in the data packet before the local bus data to be processed, so that the data bus users 7a . 7b , ..., 7n according to the order of the local bus data in the data packet can use the appropriate instruction list. The instruction lists have instructions that are adapted to the order of the local bus data in the data packet. The instruction lists can be used, for example, for local bus data that is not sent to the data bus subscriber 7a . 7b , ..., 7n are addressed have a "SKIP" instruction, so the data bus subscriber 7a . 7b , ..., 7n instructing to skip the corresponding part of the data packet, whereas the instruction list for local bus data sent to the data bus user 7a . 7b , ..., 7n directed instructions may have for processing the local bus data. The data packets for sending the process data and the management data of the data bus users 7a . 7b , ..., 7n are in the 3 to 5 shown.

Zunächst wird aber in 2 schematisch ein Zyklusrahmen 17 gezeigt. Am Anfang des Zyklusrahmens 17 ist eine eineindeutige ersten Kennung 18 als Teil eines SOC-Pakets vorgesehen (SOC - engl. Start Of Cycle). Die erste Kennung 18 ist ein Bitmuster, das den Beginn des Zyklusrahmens 17 definiert. Der Kennung 18 folgend sind innerhalb des SOC-Pakets mehrere Teile 19, 20, 21, 22 des SOC-Pakets zeitlich angeordnet, die beispielsweise zur Steuerung und zur zeitlichen Synchronisation zwischen dem Lokalbusmaster 3 und den Datenbusteilnehmern 7a, 7b, ..., 7n verwendet werden können. Beispielsweise ist im SOC-Paket ein Feld 19 zeitlich angeordnet, in dem zumindest ein Wert zur Ver- bzw. Entschlüsselung der auf dem Lokalbus 6 übertragenen Daten vorhanden ist. Des Weiteren kann das SOC-Paket ein Feld 20 aufweisen, welches die Zeitgebung des Lokalbusmasters 3 enthält, so dass sich die Datenbusteilnehmern 7a, 7b, ..., 7n hierauf synchronisieren können. Des Weiteren kann das SOC-Paket ein Feld 21 als Zeitstempel enthalten, welches angibt wann die erste Kennung 18 von dem Lokalbusmaster 2 gesendet wurde. Das SOC-Paket kann des Weiteren eine erste Prüfsumme in Feld 22 enthalten, mit der geprüft werden kann, ob die in den Feldern 19, 20, 21, 22 des SOC-Pakets übertragenen Daten ohne Fehler empfangen wurden. Innerhalb des Zyklusrahmens 17 ist des Weiteren ein Informationszeitbereich 23 zeitlich angeordnet. Innerhalb dieses Informationszeitbereichs 23, werden isochrone und asynchrone Daten an die Datenbusteilnehmer übertragen. Innerhalb des Zyklusrahmens 17 kann am Ende des Zyklusrahmens 17 ein Zeitbereich (Trailer) 24 mit Idle-Daten vorgesehen sein. Der Zeitbereich 24 kann eine variable Länge haben und auf den Informationszeitbereich zur Datenübertragung folgen. Vorzugsweise ist die Länge des Zeitbereichs 24 bis zur folgenden ersten Kennung 18 des nächsten Zyklusrahmens 17 ausgedehnt. Vorteilhafterweise weist der Trailer 24 Leerlauf-Daten auf, also Daten die keine Steuerung oder Regelung an den Datenbusteilnehmern 7a, 7b, ..., 7n hervorrufen, und dennoch eine Synchronisation ermöglichen.First, but in 2 schematically a cycle frame 17 shown. At the beginning of the cycle frame 17 is a one-to-one first identifier 18 provided as part of an SOC package (SOC - Start Of Cycle). The first identifier 18 is a bit pattern that is the beginning of the cycle frame 17 Are defined. The identifier 18 Following are several parts within the SOC package 19 . 20 . 21 . 22 of the SOC packet arranged, for example, for the control and the temporal synchronization between the local bus master 3 and the data bus users 7a . 7b , ..., 7n can be used. For example, in the SOC package is a field 19 arranged in time, in which at least one value for encryption or decryption on the local bus 6 transmitted data is present. Furthermore, the SOC packet can field one 20 have the timing of the local bus master 3 contains, so that the data bus participants 7a . 7b , ..., 7n synchronize to it. Furthermore, the SOC packet can field one 21 as a timestamp, which indicates when the first identifier 18 from the local bus master 2 was sent. The SOC packet may further include a first checksum in field 22 included, with which it can be checked if the in the boxes 19 . 20 . 21 . 22 SOC packet data received without error. Within the cycle frame 17 is also an informational time range 23 arranged in time. Within this informational time range 23 , isochronous and asynchronous data is transmitted to the data bus users. Within the cycle frame 17 can be at the end of the cycle 17 a time range (trailer) 24 be provided with idle data. The time range 24 can have a variable length and follow the information time range for data transmission. Preferably, the length of the time domain 24 until the following first identifier 18 of the next cycle frame 17 extended. Advantageously, the trailer 24 Idle data, so data that no control or regulation on the data bus users 7a . 7b , ..., 7n and still allow synchronization.

Innerhalb des Informationszeitbereichs 23 zur Datenübertragung können isochrone Daten beispielsweise in isochronen Datenpaketen enthalten sein sowie asynchrone Daten in asynchronen Datenpaketen. 3 zeigt ein Beispiel eines isochronen Datenpakets und die 4 und 5 zeigen jeweils ein Beispiel für ein asynchrones Datenpaket mit dem entweder ein spezieller Datenbusteilnehmer 7a, 7b, ..., 7n adressiert werden kann oder eine Vielzahl von Datenbusteilnehmern 7a, 7b, ..., 7n.Within the informational time range 23 For data transmission, isochronous data can be contained, for example, in isochronous data packets and asynchronous data in asynchronous data packets. 3 shows an example of an isochronous data packet and the 4 and 5 each show an example of an asynchronous data packet with either a special data bus subscriber 7a . 7b , ..., 7n can be addressed or a variety of data bus users 7a . 7b , ..., 7n ,

Das in 3 gezeigte isochrone Datenpaket 25 besteht aus einem Kopfteil, einem Informationsteil und einem Prüfsummenteil. Der Kopfteil beinhaltet ein Feld 26, welches ein eineindeutiges Bitmuster IDE enthält, welches auch als Codewort oder Paketkennung bezeichnet werden kann. Die Anzahl und die Ausgestaltung von Bitmustern hängen ab von der auf dem Ringbus 6 verwendeten Kodierung. Es ist dabei nur von Bedeutung, dass die Datenbusteilnehmer 7a, 7b, ..., 7n aus dem Bitmuster des Feldes 26 erkennen können, um welche Art von Datenpaket es sich handelt. In dem hier gezeigten Ausführungsbeispiel haben die Datenbusteilnehmer 7a, 7b, ..., 7n Kenntnis darüber, dass wenn ein Feld 26 mit einem Bitmuster IDE empfangen wird, dass es sich um ein isochrones Datenpaket 25 handelt, das Prozessdaten 28a, 28b, 28c trägt.This in 3 shown isochronous data packet 25 consists of a header, an information part and a checksum part. The header contains a box 26 which contains a one-to-one bit pattern IDE, which may also be referred to as a codeword or packet identifier. The number and design of bit patterns depend on that on the ring bus 6 used coding. It is only important that the data bus users 7a . 7b , ..., 7n from the bit pattern of the field 26 can recognize what kind of data packet it is. In the embodiment shown here, the data bus users 7a . 7b , ..., 7n Aware that if a field 26 with a bit pattern IDE is received, that this is an isochronous data packet 25 acts, the process data 28a . 28b . 28c wearing.

Der Kopfteil kann auch noch weitere Informationen beinhalten, die beispielsweise anzeigen, ob sich das isochrone Datenpaket 25 in Abwärtsrichtung oder Aufwärtsrichtung bewegt. Hierzu kann beispielsweise der letzte Datenbusteilnehmer 7n in den Kopfteil eine Information schreiben, dass das isochrone Datenpaket 25 bereits diesen Datenbusteilnehmer 7n passiert hat und zurückgesendet wurde in Richtung Lokalbusmaster 3. Des Weiteren kann der Kopfteil auch noch eine Information über die Länge des isochronen Datenpakets 25 enthalten, so dass die Datenbusteilnehmer 7a, 7b,..., 7n die Integrität des isochronen Datenpakets 25 überprüfen können beziehungsweise Kenntnis darüber haben, wie viele Teile des isochronen Datenpakets 25 noch vom Datenbusteilnehmer 7a, 7b, ..., 7n empfangen werden. Dem Fachmann sind aber auch noch andere Felder bekannt, die in einen Kopfteil eines isochronen Datenpakets 25 vorhanden sein können, die z.B. zur Steuerung oder Fehlererkennung durch die Datenbusteilnehmer 7a, 7b, ..., 7n genutzt werden können.The header may also contain other information indicating, for example, whether the isochronous data packet 25 moved in the downward direction or upward direction. For this purpose, for example, the last data bus subscriber 7n in the header write an information that the isochronous data packet 25 already this data bus user 7n happened and was sent back towards local bus master 3 , Furthermore, the header can also contain information about the length of the isochronous data packet 25 included, so the data bus users 7a . 7b , ..., 7n the integrity of the isochronous data packet 25 or know how many parts of the isochronous data packet 25 still from the data bus user 7a . 7b , ..., 7n be received. However, the person skilled in the art also knows of other fields which are in a header of an isochronous data packet 25 may be present, for example, to control or error detection by the data bus participants 7a . 7b , ..., 7n can be used.

Der Informationsteil des isochronen Datenpakets 25 kann als erstes einen Instruktionslistenindexfeld 27, ILI, aufweisen welches angibt, welche Instruktionsliste die Datenbusteilnehmer 7a, 7b, ..., 7n verwenden sollen. Beispielsweise kann im Normalbetrieb des Ringbusses 6 vorgesehen sein, dass alle Datenbusteilnehmer 7a, 7b, ..., 7n ihre erste Instruktionsliste verwenden, wohingegen im Fehlerfall die zweite Instruktionsliste verwendet werden soll. Dabei kann der Instruktionslistenindex auf den Speicherplatz der im Datenbusteilnehmer 7a, 7b, ..., 7n gespeicherten Instruktionsliste direkt hinweisen, oder der Instruktionslistenindex kann einen Wert aufweisen, mit dem der Datenbusteilnehmer 7a, 7b, ..., 7n beispielsweise über eine Umsetzungstabelle die entsprechende Instruktionsliste auffinden kann. Der Informationsteil weist des Weiteren die eigentlichen Prozessdaten 28a, 28b und 28c auf.The information part of the isochronous data packet 25 can first get an instruction list index field 27 , ILI, which indicates which instruction list the data bus subscribers 7a . 7b , ..., 7n should use. For example, in normal operation of the ring bus 6 be provided that all data bus users 7a . 7b , ..., 7n use their first instruction list, whereas in case of error the second instruction list should be used. The instruction list index can refer to the memory location of the data bus user 7a . 7b , ..., 7n directly referenced instruction list, or the instruction list index may have a value with which the data bus subscriber 7a . 7b , ..., 7n For example, the corresponding instruction list can be found via a conversion table. Of the Information part also has the actual process data 28a . 28b and 28c on.

In dem hier gezeigten Ausführungsbeispiel ist das isochrone Datenpaket 25 in Symbole von jeweils 8 Bit eingeteilt. Das isochrone Datenpaket 25 wird auch in dieser Stückelung von den Datenbusteilnehmer 7a, 7b, ..., 7n empfangen und verarbeitet. D.h. als erstes sendet der Lokalbusmaster 3 das Symbol 26 an den ersten Datenbusteilnehmer 7a, nach einer vorher bestimmten Zeit, sendet der Lokalbusmaster 3 ein weiteres Symbol des Kopfteiles des isochronen Datenpakets 25 an den ersten Datenbusteilnehmer 7a, dieser wiederum sendet gleichzeitig das Symbol 26 an den zweiten Datenbusteilnehmer 7b in der Reihe der Datenbusteilnehmer 7a, 7b, ..., 7n. Diese vorher bestimmte Zeit zwischen Senden und Empfangen der Symbole des isochronen Datenpakets 25, ist in einer vorteilhaften Ausgestaltung abhängig von einer Taktung des Lokalbusses, insbesondere eine feste Anzahl von Takten, beispielweise zwei Takte.In the embodiment shown here is the isochronous data packet 25 in symbols of each 8th Bit divided. The isochronous data packet 25 is also used in this denomination by the data bus users 7a . 7b , ..., 7n received and processed. That is, the local bus master sends first 3 the symbol 26 to the first data bus user 7a After a predetermined time, the local bus master sends 3 another symbol of the header of the isochronous data packet 25 to the first data bus user 7a , this in turn sends the symbol at the same time 26 to the second data bus subscriber 7b in the row of data bus users 7a . 7b , ..., 7n , This predetermined time between sending and receiving the symbols of the isochronous data packet 25 , Is in an advantageous embodiment depending on a clocking of the local bus, in particular a fixed number of clocks, for example two clocks.

Des Weiteren weist das isochrone Datenpaket 25 im Informationsteil noch ein Feld 29 auf, welches als Zähler ausgestaltet sein kann, und welches von jedem Datenbusteilnehmer 7a, 7b, ..., 7n durch welchen dieser Teil des isochronen Datenpakets 25 bereits geleitet wurde inkrementiert oder dekrementiert werden kann. Der Zählerwert des Feldes 29 kann von dem Lokalbusmaster 3 verwendet werden, um zu überprüfen, ob das isochrone Datenpaket 25 alle Datenbusteilnehmer 7a, 7b, ..., 7n durchlaufen hat.Furthermore, the isochronous data packet 25 in the information part still a field 29 which may be configured as a counter and that of each data bus subscriber 7a . 7b , ..., 7n through which this part of the isochronous data packet 25 already been routed could be incremented or decremented. The counter value of the field 29 can from the local bus master 3 used to check if the isochronous data packet 25 all data bus users 7a . 7b , ..., 7n has gone through.

Dem Fachmann ist bewusst, dass das hier dargestellte Ausführungsbeispiel des isochronen Datenpakets 25 nur exemplarisch zu verstehen ist und die Ausgestaltung des isochronen Datenpakets 25 sich ansonsten nach den Bedürfnissen und Anforderungen des speziellen Lokalbusses richten kann, wo es implementiert wird.The person skilled in the art is aware that the exemplary embodiment of the isochronous data packet illustrated here 25 is to be understood only as an example and the design of the isochronous data packet 25 otherwise it can be tailored to the needs and requirements of the particular local bus where it will be implemented.

4 zeigt eine schematische Darstellung eines asynchronen Datenpakets 30, beispielsweise zum Programmieren eines Datenbusteilnehmers 7a, 7b, ..., 7n ohne dass die laufende Kommunikation unterbrochen werden muss. Das asynchrone Datenpaket 30 kann dabei in einer laufenden zyklischen Kommunikation zeitlich disjunkt zu isochronen Datenpaketen übertragen werden und beispielsweise zur Programmierung eines Datenbusteilnehmers 7a, 7b, ..., 7n verwendet werden. Die Programmierung des einen Datenbusteilnehmers 7a, 7b, ..., 7n findet dabei mit Hilfe von Instruktionslisteninformation statt, die mittels des asynchronen Datenpakets 30 an den zu programmierenden Datenbusteilnehmer 7a, 7b, ..., 7n gesendet wird. 4 shows a schematic representation of an asynchronous data packet 30 For example, for programming a data bus subscriber 7a . 7b , ..., 7n without having to interrupt the ongoing communication. The asynchronous data packet 30 can be transmitted disjointly in time to isochronous data packets in a current cyclic communication and, for example, for programming a data bus subscriber 7a . 7b , ..., 7n be used. The programming of the one data bus participant 7a . 7b , ..., 7n takes place with the help of instruction list information provided by means of the asynchronous data packet 30 at the data bus users to be programmed 7a . 7b , ..., 7n is sent.

Das asynchrone Datenpaket 30 besteht dabei aus einem allgemeinen Kopfteil, einem Informationsteil und einem Prüfsummenteil. Der Kopfteil beinhaltet ein Feld 31, welches ein eindeutiges Bitmuster MWR enthält, welches auch als Codewort oder Kennung bezeichnet werden kann. Die Datenbusteilnehmer 7a, 7b, ..., 7n haben die Kenntnis, dass wenn das Bitmuster MWR auftritt, Daten den Datenbusteilnehmern 7a, 7b, ..., 7n zur Verfügung gestellt werden. Dabei können diese Daten eben die Instruktionslisten für die Datenbusteilnehmer 7a, 7b, ..., 7n sein, um die Datenbusteilnehmer 7a, 7b, ..., 7n zu programmieren. Auch wenn hier als Beispiel die Instruktionslisten angeführt werden, ist dem Fachmann bewusst, dass auch andere Daten in dem asynchronen Datenpaket 30 enthalten sein können, mit denen die Datenbusteilnehmer 7a, 7b, ..., 7n programmiert werden können. Der Kopf des asynchronen Datenpakets 30 kann auch noch weitere Informationen enthalten, die zur Steuerung oder Fehlererkennung nötig sind - hier nicht gezeigt.The asynchronous data packet 30 consists of a general header, an information part and a checksum part. The header contains a box 31 which contains a unique bit pattern MWR, which may also be referred to as a codeword or identifier. The data bus participants 7a . 7b , ..., 7n have the knowledge that when the bit pattern MWR occurs, data is sent to the data bus users 7a . 7b , ..., 7n to provide. In the process, these data can just be the instruction lists for the data bus users 7a . 7b , ..., 7n be to the data bus users 7a . 7b , ..., 7n to program. Even though the instruction lists are given as an example here, the person skilled in the art is aware that other data in the asynchronous data packet is also available 30 may be included with which the data bus users 7a . 7b , ..., 7n can be programmed. The head of the asynchronous data packet 30 may also contain other information needed to control or error detection - not shown here.

Der Informationsteil des asynchronen Datenpakets 30 beinhaltet ein Feld 32, in dem die Adresse des anzusprechenden Datenbusteilnehmers 7a, 7b, ..., 7n hinterlegt ist. Nur der Datenbusteilnehmer 7a, 7b, ..., 7n, dessen Adresse mit der in dem Feld 32 hinterlegten Adresse übereinstimmt, liest die Instruktionslistendaten 34 des Informationsteils des asynchronen Datenpakets 30. Der Informationsteil kann auch noch ein weiteres Feld 33 aufweisen, welches von dem entsprechenden Datenbusteilnehmer 7a, 7b, ..., 7n, dessen Adresse in Feld 32 hinterlegt ist, verwendet werden kann zur Fehlererkennung, Fehlerpropagierung, oder dieses Feld 33 kann Anweisungen enthalten, wohin die Instruktionslistendaten 34 gespeichert werden sollen. Die Instruktionslistendaten 34 können zumindest eine Instruktionsliste oder mehrere Instruktionslisten beinhalten. Nach Abspeicherung der Instruktionsliste oder der Instruktionsliste in dem jeweiligen Datenbusteilnehmer 7a, 7b, ..., 7n kann auch davon gesprochen werden, dass die Programmierung des jeweiligen Datenbusteilnehmers 7a, 7b, ..., 7n erfolgt ist. Die Instruktionslisten weisen dabei Sätze von Instruktionen auf, die die von den Datenbusteilnehmern 7a, 7b, ..., 7n durchzuführende Verarbeitung definieren. Dies ist beispielsweise die Verarbeitung, die mit den Prozessdaten 28a, 28b, 28c eines isochronen Datenpakets 25 durchgeführt werden sollen. Wird das asynchrone Datenpaket 30 vor dem isochronen Datenpaket 25 innerhalb des Zyklusrahmens 17 übertragen, so können die Datenbusteilnehmer 7a, 7b, ..., 7n vor dem Erhalt der Prozessdaten 28a, 28n, 28c programmiert werden, dies kann beispielsweise im gleichen oder in zwei verschiedenen Zyklusrahmen geschehen. D.h. bevor die Prozessdaten 28a, 28b, 28c an den jeweiligen Datenbusteilnehmern 7a, 7b, ..., 7n ankommen, können diese mit Informationen darüber versorgt werden, wie die Prozessdaten 28a, 28b, 28c zu verarbeiten sind. In dem hier gezeigten Ausführungsbeispiel können die Datenbusteilnehmer 7a, 7b, ..., 7n mit dem asynchronen Datenpaket 30 jeweils Instruktionslistendaten 34 gesendet bekommen. Diese Instruktionslistendaten 34 können in den jeweiligen Datenbusteilnehmern 7a, 7b, ..., 7n abgespeichert werden und zwar derart, dass diese über einen Instruktionslistenindex auffindbar sind. Das isochrone Datenpaket 25 beinhaltet einen Instruktionslistenindex 27, der in jedem Datenbusteilnehmer 7a, 7b, ..., 7n jeweils auf genau eine gespeicherte Instruktionsliste hinweist, die zur Verarbeitung der Prozessdaten 28a, 28b, 28c verwendet werden soll.The information part of the asynchronous data packet 30 includes a field 32 in which the address of the data bus subscriber to be addressed 7a . 7b , ..., 7n is deposited. Only the data bus participant 7a . 7b , ..., 7n whose address with the in the field 32 stored address reads the instruction list data 34 the information part of the asynchronous data packet 30 , The information part can also have another field 33 that of the corresponding data bus subscriber 7a . 7b , ..., 7n whose address in field 32 can be used for error detection, error propagation, or this field 33 can contain instructions to where the instruction list data 34 should be saved. The instruction list data 34 may include at least one instruction list or multiple instruction lists. After storing the instruction list or the instruction list in the respective data bus subscriber 7a . 7b , ..., 7n can also be said that the programming of the respective data bus subscriber 7a . 7b , ..., 7n is done. In this case, the instruction lists have sets of instructions which are those of the data bus users 7a . 7b , ..., 7n Define processing to be performed. For example, this is the processing that works with the process data 28a . 28b . 28c an isochronous data packet 25 to be carried out. Will the asynchronous data packet 30 before the isochronous data packet 25 within the cycle frame 17 transmit, so the data bus users 7a . 7b , ..., 7n before receiving the process data 28a . 28n . 28c This can be done, for example, in the same or in two different cycle frames. That is, before the process data 28a . 28b . 28c at the respective data bus participants 7a . 7b , ..., 7n arrive, they can be provided with information about how the process data 28a . 28b . 28c to be processed. In the embodiment shown here, the data bus users 7a . 7b , ..., 7n with the asynchronous data packet 30 each Instruction list data 34 get sent. This instruction list data 34 can in the respective data bus participants 7a . 7b , ..., 7n be stored in such a way that they can be found on an instruction list index. The isochronous data packet 25 includes an instruction list index 27 that is in each data bus participant 7a . 7b , ..., 7n indicates exactly one stored instruction list, which is used to process the process data 28a . 28b . 28c should be used.

Auch wenn in dem hier gezeigten Ausführungsbeispiel des asynchronen Datenpakets 30 dieses über das Feld 32 nur an einen Datenbusteilnehmer 7a, 7b, ..., 7n adressiert werden kann, so ist dem Fachmann bewusst, dass das asynchrone Datenpaket 30 auch mehrere Adressen, Broadcast- oder Multicast-Adressen aufweisen kann, so dass die Instruktionslistendaten 34 nicht nur an einen Datenbusteilnehmer 7a, 7b, ..., 7n adressiert werden können, sondern an mehrere Datenbusteilnehmer 7a, 7b, ..., 7n Dem Fachmann ist auch bewusst, dass das hier dargestellte Ausführungsbeispiel des asynchronen Datenpakets 30 nur exemplarisch zu verstehen ist und die Ausgestaltung des asynchronen Datenpakets 30 sich ansonsten nach den Bedürfnissen und Anforderungen des speziellen Lokalbusses richten kann, wo es implementiert wird.Even if in the embodiment of the asynchronous data packet shown here 30 this over the field 32 only to one data bus user 7a . 7b , ..., 7n can be addressed, the skilled person is aware that the asynchronous data packet 30 may also have multiple addresses, broadcast or multicast addresses, such that the instruction list data 34 not just to a data bus user 7a . 7b , ..., 7n can be addressed, but to multiple data bus users 7a . 7b , ..., 7n The person skilled in the art is also aware that the exemplary embodiment of the asynchronous data packet illustrated here 30 is to be understood only as an example and the design of the asynchronous data packet 30 otherwise it can be tailored to the needs and requirements of the particular local bus where it will be implemented.

5 zeigt eine schematische Darstellung eines weiteren asynchronen Datenpakets 35, beispielsweise zum Abfragen mehrerer Datenbusteilnehmer 7a, 7b, ..., 7n ohne dass die laufende Kommunikation unterbrochen werden muss. Das asynchrone Datenpaket 35 kann dabei in einer Abfolge von Datenpaketen der laufenden zyklischen Kommunikation eingebettet werden. 5 shows a schematic representation of another asynchronous data packet 35 For example, to query multiple data bus users 7a . 7b , ..., 7n without having to interrupt the ongoing communication. The asynchronous data packet 35 can be embedded in a sequence of data packets of the current cyclic communication.

Das asynchrone Datenpaket 35 besteht dabei aus einem allgemeinen Kopfteil, einem Informationsteil und einem Prüfsummenteil. Der Kopfteil beinhaltet ein Feld 36, welches ein eindeutiges Bitmuster MRD enthält, welches auch als Codewort oder Kennung bezeichnet werden kann. Die Datenbusteilnehmer 7a, 7b, ..., 7n haben die Kenntnis, dass wenn das Bitmuster MRD auftritt, Daten aus den Datenbusteilnehmern 7a, 7b, ..., 7n ausgelesen werden sollen. Der Kopf des asynchronen Datenpakets 35 kann auch noch weitere Informationen enthalten, die zur Steuerung oder Fehlererkennung nötig sind - hier nicht gezeigt.The asynchronous data packet 35 consists of a general header, an information part and a checksum part. The header contains a box 36 which contains a unique bit pattern MRD, which may also be referred to as a codeword or identifier. The data bus participants 7a . 7b , ..., 7n have the knowledge that when the bit pattern MRD occurs, data from the data bus users 7a . 7b , ..., 7n should be read. The head of the asynchronous data packet 35 may also contain other information needed to control or error detection - not shown here.

Der Informationsteil des asynchronen Datenpakets 35 beinhaltet in dem hier gezeigten Ausführungsbeispiel zwei Felder 37 und 38, die zur Steuerung verwendet werden können. Diese Felder können beispielsweise angeben welche Information abgefragt werden soll und die Priorität des asynchronen Datenpakets 35 angeben. Es ist dem Fachmann klar, dass im Informationsteil eine beliebige Anzahl oder aber auch keine Steuerfelder enthalten sein können.The information part of the asynchronous data packet 35 includes two fields in the embodiment shown here 37 and 38 that can be used for control. For example, these fields may indicate which information should be queried and the priority of the asynchronous data packet 35 specify. It is clear to the person skilled in the art that any number or even no control fields can be contained in the information part.

Der Master sendet das asynchrone Datenpaket 35 mit einem Bereich, in dem die Datenbusteilnehmer 7a, 7b, ..., 7n jeweils ihre Informationen schreiben können. Im gezeigten Ausführungsbeispiel weist das asynchrone Datenpaket ein erstes Feld 39a auf, in dem die Adresse des Datenbusteilnehmers 7a, 7b, ..., 7n ist. Der zur Adresse zugehörige Datenbusteilnehmer 7a, 7b, ..., 7n, schreibt in das oder die folgenden Felder 39b die zu sendenden Informationen. In dem hier gezeigten Ausführungsbeispiel ist die Adresse in Feld 39a die Adresse des ersten Datenbusteilnehmer 7a. Zusätzlich schreibt dieser in das folgende Feld 39b die zu sendende Information. Informationen eines zweiten Datenbusteilnehmers 7a, 7b, ..., 7n können mit einem weiteren Datenpaket 35' abgefragt werden, welches beispielsweise in Feld 40a die Adresse des zweiten Datenbusteilnehmers 7a, 7b, ..., 7n aufweist von dem Informationen abgefragt werden sollen. Der zweite Datenbusteilnehmers 7a, 7b, ..., 7n kann dann seine zu sendenden Information in das Feld 40b schreiben usw. Dabei muss der zweite Datenbusteilnehmers 7a, 7b, ..., 7n nicht einer sein der dem ersten Datenbusteilnehmer 7a direkt folgt, sondern kann einer sein, der sich an einer beliebigen Stelle nach dem ersten Datenbusteilnehmer befindet, dessen Adresse aber zu der in Feld 40a enthaltenen Adresse passt.The master sends the asynchronous data packet 35 with an area where the data bus users 7a . 7b , ..., 7n each can write their information. In the exemplary embodiment shown, the asynchronous data packet has a first field 39a in which the address of the data bus subscriber 7a . 7b , ..., 7n is. The data bus subscriber associated with the address 7a . 7b , ..., 7n , write in the box (s) below 39b the information to be sent. In the embodiment shown here, the address is in field 39a the address of the first data bus subscriber 7a , In addition, this writes in the following box 39b the information to be sent. Information of a second data bus subscriber 7a . 7b , ..., 7n can with another data packet 35 ' be queried, which, for example, in field 40a the address of the second data bus subscriber 7a . 7b , ..., 7n has to be queried from the information. The second data bus participant 7a . 7b , ..., 7n can then send his information to be sent in the field 40b Write, etc. This must be the second data bus participant 7a . 7b , ..., 7n Do not be one of the first data bus users 7a directly, but may be one that is anywhere after the first data bus subscriber, but whose address is in the field 40a contained address fits.

Dem Fachmann ist bewusst, dass das hier dargestellte Ausführungsbeispiel des asynchronen Datenpakets 35 nur exemplarisch zu verstehen ist und die Ausgestaltung des asynchronen Datenpakets 35 sich ansonsten nach den Bedürfnissen und Anforderungen des speziellen Lokalbusses richten kann, wo es implementiert wird.The person skilled in the art is aware that the exemplary embodiment of the asynchronous data packet illustrated here 35 is to be understood only as an example and the design of the asynchronous data packet 35 otherwise it can be tailored to the needs and requirements of the particular local bus where it will be implemented.

6 zeigt eine beispielhafte zeitliche Abfolge von asynchronen und isochronen Datenpaketen 25 und 30, wie beispielsweise in den 3 und 4 gezeigt, innerhalb eines Zyklusrahmens 17, wie beispielsweise in 2 gezeigt. Der Zyklusrahmen 17 sowie die Datenpakete 25, 30, sind einfachheitshalber jeweils nur mit ihren eineindeutigen Bitmustern SOC 18 für den Start des Zyklusrahmens 17, MWR 31 für den Start des asynchronen Datenpakets 30, IDE 26 für den Start des ersten isochronen Datenpakets 25 und IDE 26 für den Start des zweiten isochronen Datenpakets 25 gekennzeichnet. In dem hier gezeigten Ausführungsbeispiel wird vor dem ersten isochronen Datenpaket 25, welches durch das eineindeutige Bitmuster IDE 26 gekennzeichnet ist ein asynchrones Datenpaket 30 gesendet, welches durch das eineindeutige Bitmuster MWR 31 gekennzeichnet ist. 6 shows an exemplary time sequence of asynchronous and isochronous data packets 25 and 30 , such as in the 3 and 4 shown within a cycle frame 17 , such as in 2 shown. The cycle frame 17 as well as the data packages 25 . 30 , For the sake of simplicity, are each only with their one-to-one bit patterns SOC 18 for the start of the cycle frame 17 , MWR 31 for starting the asynchronous data packet 30 , IDE 26 for the start of the first isochronous data packet 25 and IDE 26 for the start of the second isochronous data packet 25 characterized. In the embodiment shown here, before the first isochronous data packet 25 which is represented by the one-bit pattern IDE 26 characterized as an asynchronous data packet 30 which is indicated by the one-bit pattern MWR 31 is marked.

Mit diesem asynchronen Datenpaket 30 können die Datenbusteilnehmer 7a, 7b, ..., 7n programmiert werden, diesen kann also beispielsweise mit dem asynchronen Datenpaket 30 Instruktionslistendaten gesendet werden. Diese Daten können Instruktionslisten beinhalten, wobei jede Instruktion in der Liste angepasst sein kann, eine Verarbeitung der im folgenden isochronen Datenpaket 25 enthaltenen Prozessdaten 28 zu verarbeiten.With this asynchronous data packet 30 can the data bus users 7a . 7b , ..., 7n can thus be programmed, for example, with the asynchronous data packet 30 Instruction list data are sent. These data may include instruction lists, where each instruction in the list may be adapted, a processing of the following isochronous data packet 25 contained process data 28 to process.

In einem zeitlichen Abstand τ1 von dem ersten Bitmuster SOC 18 folgt das Bitmuster IDE 26, welches das isochrone Datenpaket 25 anzeigt. D.h. der Lokalbusmaster 3 sendet beispielsweise zur Zeit to das Bitmuster SOC 18 auf den Lokalbus 6 und im zeitlichen Abstand τ1 von to aus gesehen sendet der Lokalbusmaster 3 das Bitmuster IDE 26 und folgend die Symbole des isochronen Datenpakets 25. Da die Datenbusteilnehmer 7a, 7b, ..., 7n derart angepasst sind, dass diese die einzelnen Symbole des Zyklusrahmens 17 nur für eine definierte vorher bestimmte Zeit vorliegen haben bevor die Symbole weitergeleitet werden, und wenn diese Zeit an allen Datenbusteilnehmern 7a, 7b, ..., 7n konstant ist, so ändert sich der erste zeitliche Abstand τ1 zwischen dem Bitmuster SOC 18 und dem Bitmuster IDE 26 nicht. D.h. wenn der i-te Datenbusteilnehmer 7i das Bitmuster SOC 18 zur Zeit τi an den nachfolgenden Datenbusteilnehmer 7i+1 weiterleitet, so wird der Datenbusteilnehmer 7i auch das Bitmuster IDE 26 zur Zeit τi + τ1 senden usw., wobei i ∈ {a, ...,n} ist. Dabei ist der erste zeitliche Abstand τ1 so vom Lokalbusmaster 3 ermittelt bzw. bestimmt, dass alle Symbole des Datenpakets 25 an den jeweiligen Datenbusteilnehmern 7a, 7b, ..., 7n angekommen sind, vor dem Ausgabezeitpunkt. Der Ausgabezeitpunkt ist ein Zeitpunkt an dem alle Datenbusteilnehmer 7a, 7b, ..., 7n die in dem isochronen Datenpaket 25 enthaltenen Prozessdaten 28 an ihre Ausgänge 14 weiterleiten, beispielsweise an angeschlossene Aktoren 16, und zwar alle Datenbusteilnehmer 7a, 7b, ... 7n gleichzeitig. D.h. der Ausgabezeitpunkt ist ein fester Zeitpunkt, der in einem bestimmten zeitlichen Abstand, hier τ2, von dem Senden des Bitmusters SOC 18 durch den Lokalbusmaster 3 liegt. Der Ausgabezeitpunkt kann dabei beispielweise von dem Lokalbusmaster 3 bestimmt werden. Der Lokalbusmaster 3 ist dabei derart angepasst, dass dieser den ersten zeitlichen Abstand τ1, also den Zeitpunkt wann das isochrone Datenpaket 25 gesendet wird, so wählt, dass alle Datenbusteilnehmer 7a, 7b, ..., 7n ihre Prozessdaten 28 vorliegen haben bevor der Ausgabezeitpunkt erreicht wird. D.h. τ1+ τDatenpaket ≤ τ2, wobei τDatenpaket die Dauer angibt, bis alle Datenbusteilnehmer 7a, 7b, ..., 7n ihre jeweiligen Prozessdaten 28 aus dem isochronen Datenpaket 25 für ihre Ausgänge vorliegen haben. Es ist dem Fachmann bewusst, dass diese Dauer von der Länge des isochronen Datenpakets 25 und/oder von der Anzahl der Datenbusteilnehmer 7a, 7b, ..., 7n im Lokalbus 6 sowie und/oder von der Verteilung der Prozessdaten im isochronen Datenpaket 25 und/oder von einer Dauer der Bereitstellung der Daten innerhalb eines Datenbusteilnehmers abhängig ist. Wenn beispielsweise die Prozessdaten 28 des letzten Datenbusteilnehmers 7n auch als letztes im isochronen Datenpaket 25 übertragen werden, so müssen diese Prozessdaten zunächst alle anderen Datenbusteilnehmer 7a, 7b, ..., 7n-1 durchlaufen bevor diese am letzten Datenbusteilnehmer 7n ankommen. D.h. die anderen Datenbusteilnehmer 7a, 7b, ..., 7n-1 haben bereits vorher ihre Prozessdaten 28 erhalten und müssen warten, bis auch der letzte Datenbusteilnehmer 7n seine Prozessdaten 28 vorliegen hat, bis es zur Ausgabe kommen kann. In diesem Fall entspricht die Dauer τDatenpaket der Zeit, die das isochrone Datenpaket 25 benötig, um den kompletten Lokalbus 6 zu durchlaufen. Es ist dem Fachmann klar, dass wenn die Prozessdaten 28 in umgekehrter Reihenfolge zu der Anordnung der Datenbusteilnehmer 7a, 7b, ..., 7n in dem isochronen Datenpaket 25 enthalten sind, die Dauer τDatenpaket am kürzesten ist. D.h. wenn das isochrone Datenpaket 25 als erstes Prozessdaten 28 für den letzten Datenbusteilnehmer 7n enthält und als letztes Prozessdaten 28 für den Datenbusteilnehmer 7a, so haben in einem Ausführungsbeispiel der Erfindung alle Datenbusteilnehmer 7a, 7b, ..., 7n ihre jeweiligen Prozessdaten 28 zur gleichen Zeit vorliegen und kein Datenbusteilnehmer 7a, 7b, ..., 7n muss warten. Dies ist insbesondere dann vorteilhaft, wenn durch die Datenbusteilnehmer 7a, 7b, ..., 7n kein CRC über das gesamte isochrone Datenpaket 25 durchgeführt werden muss. Der Lokalbusmaster 3 kann durch Kenntnis der Anzahl von Datenbusteilnehmern 7a, 7b, ..., 7n und eventuell durch Kenntnis der Verteilung der Prozessdaten 28 innerhalb des isochronen Datenpakets 25 den ersten zeitlichen Abstand τ1 derart ermitteln und wählen, dass τ1+ τDatenpaket ≤ τ2.At a time interval τ 1 from the first bit pattern SOC 18 follows the bit pattern IDE 26 which is the isochronous data packet 25 displays. That means the local bus master 3 For example, at time t 0, it sends the bit pattern SOC 18 on the local bus 6 and seen at time interval τ 1 from t o sends the local bus master 3 the bit pattern IDE 26 and following the symbols of the isochronous data packet 25 , As the data bus participants 7a . 7b , ..., 7n are adapted so that these are the individual symbols of the cycle frame 17 have only been present for a defined predetermined time before the symbols are forwarded, and if that time on all data bus subscribers 7a . 7b , ..., 7n is constant, the first time interval τ 1 between the bit pattern SOC changes 18 and the bit pattern IDE 26 Not. That is, if the ith data bus subscriber 7i the bit pattern SOC 18 at the time τ i to the following data bus subscriber 7i +1, then becomes the data bus subscriber 7i also the bit pattern IDE 26 at the time τ i + τ 1 , etc., where i ∈ {a, ..., n}. In this case, the first time interval τ 1 is so from the local bus master 3 determines or determines that all symbols of the data packet 25 at the respective data bus participants 7a . 7b , ..., 7n arrived before the issue date. The output time is a time at which all data bus users 7a . 7b , ..., 7n in the isochronous data packet 25 contained process data 28 forward to their outputs 14, for example to connected actuators 16 , and all data bus users 7a . 7b , ... 7n at the same time. That is, the output time is a fixed point in time, in a certain time interval, here τ 2 , from the transmission of the bit pattern SOC 18 through the local bus master 3 lies. The output time can be, for example, from the local bus master 3 be determined. The local bus master 3 is adapted in such a way that it is the first time interval τ 1 , ie the time when the isochronous data packet 25 is sent, so that selects all data bus users 7a . 7b , ..., 7n their process data 28 have existed before the issue time is reached. That is, τ 1 + τ data packet ≤ τ 2 , where τ data packet indicates the duration until all data bus users 7a . 7b , ..., 7n their respective process data 28 from the isochronous data packet 25 have available for their outputs. It is well known to those skilled in the art that this duration depends on the length of the isochronous data packet 25 and / or the number of data bus users 7a . 7b , ..., 7n in the local bus 6 as well as and / or the distribution of the process data in the isochronous data packet 25 and / or depends on a duration of provision of the data within a data bus subscriber. For example, if the process data 28 of the last data bus subscriber 7n also last in the isochronous data packet 25 be transferred, this process data must first all other data bus users 7a . 7b , ..., 7n - 1 go through before this on the last data bus subscriber 7n Arrive. That means the other data bus users 7a . 7b , ..., 7n - 1 already have their process data before 28 get and have to wait until even the last data bus subscriber 7n his process data 28 is available until it can come to the issue. In this case, the duration τ data packet corresponds to the time that the isochronous data packet 25 need to get the complete local bus 6 to go through. It is clear to the person skilled in the art that if the process data 28 in reverse order to the arrangement of the data bus users 7a . 7b , ..., 7n in the isochronous data packet 25 are included, the duration τ data packet is the shortest. That is, if the isochronous data packet 25 as first process data 28 for the last data bus subscriber 7n contains and last but not least process data 28 for the data bus subscriber 7a Thus, in one embodiment of the invention, all data bus subscribers 7a . 7b , ..., 7n their respective process data 28 exist at the same time and not a data bus subscriber 7a . 7b , ..., 7n have to wait. This is particularly advantageous if by the data bus users 7a . 7b , ..., 7n no CRC over the entire isochronous data packet 25 must be performed. The local bus master 3 can by knowing the number of data bus subscribers 7a . 7b , ..., 7n and possibly by knowing the distribution of the process data 28 within the isochronous data packet 25 determine and select the first time interval τ 1 in such a way that τ 1 + τ data packet ≤ τ 2 .

Ähnlich zum Ausgabezeitpunkt kann es auch einen festgelegten oder festen Eingabezeitpunkt geben, also einen Zeitpunkt, an dem Prozessdaten 28 an den Eingängen 13 der Datenbusteilnehmer 7a, 7b, ..., 7n vorliegen, beispielsweise von angeschlossenen Sensoren 15. Der Lokalbusmaster 3 kann Kenntnis über diesen Zeitpunkt haben, der von dem Senden des Bitmusters SOC 18 einen dritten Abstand τ3 entfernt ist. Der Lokalbusmaster 3 kann angepasst sein, ein weiteres isochrones Datenpaket 25 auf dem Lokalbus 6 zu senden und zwar in einem vierten zeitlichen Abstand τ4 von dem Bitmuster SOC 18. Dieses weitere isochrone Datenpaket 25 liegt dabei derart an den Datenbusteilnehmern 7a, 7b, ..., 7n vor, dass diese nach der Verarbeitung der Prozessdaten 28 am Eingabezeitpunkt in der Lage sind, die verarbeiteten Prozessdaten 28 in das ihnen jeweils vorliegende Symbol des weiteren isochronen Datenpakets 25 zu schreiben. Somit werden die aufgenommenen Prozessdaten 28 an den Lokalbusmaster 3 übertragen, der diese weiterleiten kann an die SPS 1.Similar to the output time, there may also be a fixed or fixed input time, ie a time at which process data 28 at the entrances 13 the data bus subscriber 7a . 7b , ..., 7n present, for example, from connected sensors 15 , The local bus master 3 can have knowledge of this point in time, from sending the bit pattern SOC 18 a third distance τ 3 is removed. The local bus master 3 can be adapted to another isochronous data packet 25 on the local bus 6 to send and that at a fourth time interval τ 4 of the bit pattern SOC 18 , This further isochronous data packet 25 is doing so on the data bus participants 7a . 7b , ..., 7n before that after processing the process data 28 at the time of entry are capable of processing the processed process data 28 in each of them present symbol of further isochronous data packet 25 to write. Thus, the recorded process data 28 to the local bus master 3 transfer, which can forward this to the PLC 1 ,

In einer bevorzugten Ausführung werden die Bitmuster 18, 31, 26 durch jeden Datenbusteilnehmer konstant verzögert. Beispielsweise verzögert der ersten Datenbusteilnehmer 7a das Bitmuster SOC 18 um 10 Takte. Der zweite Datenbusteilnehmer 7b empfängt das Bitmuster SOC 18 entsprechend um die konstante Verzögerung (10 Takte) später als der ersten Datenbusteilnehmer 7a. Damit in einer vorteilhaften Ausgestaltung der Erfindung der Ausgabezeitpunkt des ersten Datenbusteilnehmers 7a_mit dem Ausgabezeitpunkt des zweiten Datenbusteilnehmers 7b taktgenau übereinstimmt, unterscheidet sich der zweite Abstand τ2 beim ersten Datenbusteilnehmer 7a und zweiten Datenbusteilnehmer 7b insbesondere um genau diese konstante Verzögerung (10 Takte). Damit in einer vorteilhaften Ausgestaltung der Erfindung der Eingabezeitpunkt des ersten Datenbusteilnehmers 7a mit dem Eingabezeitpunkt des zweiten Datenbusteilnehmers 7b taktgenau übereinstimmt, unterscheidet sich der dritte Abstand τ3 beim ersten Datenbusteilnehmer 7a und zweiten Datenbusteilnehmer 7b insbesondere um genau diese konstante Verzögerung (10 Takte). Entsprechendes gilt für in der Übertragungskette folgenden Datenbusteilnehmer 7c usw. In a preferred embodiment, the bit patterns become 18 . 31 . 26 Constantly delayed by each data bus subscriber. For example, the first data bus subscriber is delayed 7a the bit pattern SOC 18 around 10 Bars. The second data bus participant 7b receives the bit pattern SOC 18 corresponding to the constant delay ( 10 Clocks) later than the first data bus subscriber 7a , Thus, in an advantageous embodiment of the invention, the output time of the first data bus 7a_mit the output time of the second data bus 7b coincides clock exactly, the second distance τ 2 differs in the first data bus 7a and second data bus users 7b in particular by exactly this constant delay ( 10 Bars). Thus, in an advantageous embodiment of the invention, the input time of the first data bus subscriber 7a with the input time of the second data bus subscriber 7b matches clock exactly, the third distance τ 3 differs at the first data bus 7a and second data bus users 7b in particular by exactly this constant delay ( 10 Bars). The same applies to data bus users following in the transmission chain 7c etc.

In dem in 6 gezeigten Ausführungsbeispiel endet der Zyklusrahmen 17 vor einer erneuten Übertragung eines Bitmusters SOC 18, welches den Beginn des folgenden Zyklusrahmens 17 anzeigt.In the in 6 embodiment shown, the cycle frame ends 17 before retransmission of a bit pattern SOC 18 , which is the beginning of the following cycle frame 17 displays.

Auch wenn in dem in 6 gezeigten Ausführungsbeispiel der Ausgabezeitpunkt und der Eingabezeitpunkt als feste Zeiten vorgegeben sind, so ist dem Fachmann bewusst, dass die Ausgabe und die Eingabe nicht zwingend an einem Zeitpunkt geschehen müssen, sondern auch in einer gewissen Zeitspanne erfolgen können, die sich um den Ausgabezeitpunkt bzw. Eingabezeitpunkt herum erstreckt.Although in the in 6 As shown embodiment, the output time and the input time are given as fixed times, the skilled person is aware that the output and the input does not necessarily have to happen at a time, but can also be done in a certain period of time, which is the issue time or input time extends around.

Auch wenn in der obigen Beschreibung von Daten die Rede ist, so ist dem Fachmann bewusst, dass hier auch der Singular von Daten, also ein einzelnes Datum, umfasst sein soll.Even if data is mentioned in the above description, the person skilled in the art is aware that the singular of data, ie a single date, should also be included here.

Die in dem beschriebenen Ausführungsbeispiel als separate Einheiten, Module oder Schnittstellen beschriebenen Bauteile der erfindungsgemäßen Vorrichtung können als separate Hardware implementiert sein, sind jedoch vorzugsweise auf demselben Halbleiterchip integriert. Vorzugsweise ist deren Funktion durch eine Hardware aus Logikgattern implementiert. Zum Beispiel können die Einheiten, Module, oder Schnittstellen auf einem FPGA/ASIC implementiert sein.The components of the device according to the invention described as separate units, modules or interfaces in the described embodiment can be implemented as separate hardware, but are preferably integrated on the same semiconductor chip. Preferably, their function is implemented by hardware of logic gates. For example, the units, modules, or interfaces may be implemented on an FPGA / ASIC.

BezugszeichenlisteLIST OF REFERENCE NUMBERS

11
speicherprogrammierbare Steuerung (SPS)programmable logic controller (PLC)
22
übergeordneter Bushigher-level bus
33
LokalbusmasterLokalbusmaster
44
erste Schnittstellefirst interface
5a,b5a, b
zweite Schnittstellesecond interface
66
Ringbusringbus
7a, b, n7a, b, n
DatenbusteilnehmerDatenbusteilnehmer
88th
EingangsschnittstelleInput interface
99
AusgangsschnittstelleOutput interface
1010
AbwärtsdateneingangsschnittstelleDownstream data input interface
1111
AbwärtsdatenausgangsschnittstelleDownlink data output interface
1212
Verarbeitungseinheitprocessing unit
13, 1413, 14
Ein-/AusgängeInput / Output
1515
Sensorsensor
1616
Aktoractuator
1717
Zyklusrahmencycle frame
1818
SOC CodewortSOC codeword
1919
Steuerdaten des ZyklusrahmensControl data of the cycle frame
20, 2120, 21
Synchronisationsdatensynchronization data
2222
Prüfsumme des Kopfteils des ZyklusrahmensChecksum of the header of the cycle frame
2323
Informationsteil des ZyklusrahmensInformation part of the cycle frame
2424
Trailertrailer
2525
isochrones Datenpaketisochronous data packet
2626
IDE CodewortIDE codeword
2727
InstruktionslistenindexInstruction List Index
2828
Prozessdatenprocess data
2929
Zählerwertcount
3030
asynchrones Datenpaketasynchronous data packet
3131
MRW CodewortMRW codeword
3232
Adressfeldaddress field
3333
Steuerdaten des asynchronen DatenpaketsControl data of the asynchronous data packet
3434
InstruktionslistendatenInstruction list data
3535
weiteres asynchrones Datenpaketanother asynchronous data packet
3636
MRD CodewortMRD codeword
37, 3837, 38
Steuerdaten des weiteren asynchronen DatenpaketsControl data of the further asynchronous data packet
39a39a
erstes Adressfeldfirst address field
39b 39b
erstes Datenfeldfirst data field
40a40a
zweites Adressfeldsecond address field
40b40b
zweites Datenfeldsecond data field

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturCited patent literature

  • US 5472347 A [0010]US 5472347A [0010]

Claims (14)

Ein Verfahren zum Betrieb eines Lokalbusses (6), insbesondere eines Ringbusses, mit Datenbusteilnehmern (7a, 7b, ..., 7n), das Verfahren aufweisend: Übertragen einer ersten Kennung (18) eines Zyklusrahmens (17) über den Lokalbus (6), wobei die erste Kennung (18) den Beginn des Zyklusrahmens (17) definiert; Übertragen von Prozessdaten (28) über den Lokalbus (6) in zumindest einem isochronen Datenpaket (25), wobei das zumindest eine isochronen Datenpaket (25) eine zweite Kennung (26) aufweist, wobei die zweite Kennung (26) unterschiedlich ist zur ersten Kennung (18); Übertragen von Managementdaten (34, 39b, 40b) über den Lokalbus (6) in zumindest einem asynchronen Datenpaket (30, 35), wobei das zumindest eine asynchronen Datenpaket (30, 35) eine dritte Kennung (31, 36) aufweist, wobei die dritte Kennung (31, 36) unterschiedlich ist zur ersten Kennung (18) und zweiten Kennung (26); und wobei das isochrone Datenpaket (25) und das asynchrone Datenpaket (30, 35) innerhalb des Zyklusrahmens (17) übertragen werden.A method of operating a local bus (6), in particular a ring bus, with data bus users (7a, 7b, ..., 7n), the method comprising: Transmitting a first identifier (18) of a cycle frame (17) over the local bus (6), the first identifier (18) defining the beginning of the cycle frame (17); Transmission of process data (28) via the local bus (6) in at least one isochronous data packet (25), wherein the at least one isochronous data packet (25) has a second identifier (26), wherein the second identifier (26) is different from the first identifier (18); Transmission of management data (34, 39b, 40b) via the local bus (6) in at least one asynchronous data packet (30, 35), wherein the at least one asynchronous data packet (30, 35) has a third identifier (31, 36), wherein the third identifier (31, 36) is different from the first identifier (18) and second identifier (26); and wherein the isochronous data packet (25) and the asynchronous data packet (30, 35) are transmitted within the cycle frame (17). Das Verfahren nach Anspruch 1, wobei das zumindest eine asynchrone Datenpaket (30, 35) vor dem zumindest einen isochronen Datenpaket (25) gesendet wird.The procedure according to Claim 1 wherein the at least one asynchronous data packet (30, 35) is transmitted before the at least one isochronous data packet (25). Das Verfahren nach einem der vorhergehenden Ansprüche, wobei die erste Kennung (18) in einem Startdatenpaket enthalten ist.The method according to one of the preceding claims, wherein the first identifier (18) is contained in a start data packet. Das Verfahren nach Anspruch 3, wobei das Startdatenpaket zumindest ein Feld (19, 20, 21) und eine Prüfsumme (22) aufweist, wobei das zumindest eine Feld (19, 20, 21) verwendet wird zur Steuerung und/oder zur zeitlichen Synchronisation zwischen einem Lokalbusmaster (3) des Lokalbusses (6) und Datenbusteilnehmern (7a, 7b, ..., 7n) des Lokalbusses (6) und wobei die Prüfsumme (22) verwendet wird zur Bestimmung des fehlerfreien Empfangs des zumindest einen Feldes (19, 20, 21).The procedure according to Claim 3 in which the start data packet has at least one field (19, 20, 21) and a checksum (22), wherein the at least one field (19, 20, 21) is used for controlling and / or synchronizing the timing between a local bus master (3). the local bus (6) and data bus subscribers (7a, 7b, ..., 7n) of the local bus (6) and wherein the checksum (22) is used to determine the error-free reception of the at least one field (19, 20, 21). Das Verfahren nach einem der vorherigen Ansprüche, wobei die erste Kennung (18), die zweite Kennung (26) und die dritte Kennung (31, 36) jeweils eineindeutige Bitmuster sind.The method of one of the preceding claims, wherein the first identifier (18), the second identifier (26) and the third identifier (31, 36) are each a one-to-one bit pattern. Das Verfahren nach einem der vorherigen Ansprüche, wobei die Managementdaten (34, 39b, 40b) die Programmierung zumindest eines Datenbusteilnehmers (7a, 7b, ..., 7n) des Lokalbusses (6) enthalten.The method according to one of the preceding claims, wherein the management data (34, 39b, 40b) contain the programming of at least one data bus subscriber (7a, 7b, ..., 7n) of the local bus (6). Das Verfahren nach einem der vorherigen Ansprüche, wobei die Prozessdaten (28) Daten zur Regelung und/oder Steuerung von einem Prozess ausgeführt von zumindest einem Datenbusteilnehmer (7a, 7b, ..., 7n) enthalten.The method according to one of the preceding claims, wherein the process data (28) contain data for the regulation and / or control of a process executed by at least one data bus user (7a, 7b, ..., 7n). Ein Lokalbusmaster (3) eines Lokalbusses (6), insbesondere eines Ringbusses, mit Datenbusteilnehmern (7a, 7b, ..., 7n), wobei der Lokalbusmaster (3) aufweist: ein Mittel zum Senden einer ersten Kennung (18) eines Zyklusrahmens (17) über den Lokalbus (6), wobei die erste Kennung (18) den Beginn des Zyklusrahmens (17) definiert; ein Mittel zum Senden von Prozessdaten (28) über den Lokalbus (6) in zumindest einem isochronen Datenpaket (25), wobei das zumindest eine isochronen Datenpaket (25) eine zweite Kennung (26) aufweist, wobei die zweite Kennung (26) unterschiedlich ist zur ersten Kennung (18); ein Mittel zum Senden von Managementdaten (34, 39b, 40b) über den Lokalbus (6) in zumindest einem asynchronen Datenpaket (30, 35), wobei das zumindest eine asynchronen Datenpaket (30, 35) eine dritte Kennung (31, 36) aufweist, wobei die dritte Kennung (31, 36) unterschiedlich ist zur ersten Kennung (18) und zweiten Kennung (26); und wobei das isochrone Datenpaket (25) und das asynchrone Datenpaket (30, 35) innerhalb des Zyklusrahmens (17) übertragen werden.A local bus master (3) of a local bus (6), in particular of a ring bus, with data bus users (7a, 7b, ..., 7n), the local bus master (3) having: means for transmitting a first identifier (18) of a cycle frame (17) over the local bus (6), the first identifier (18) defining the beginning of the cycle frame (17); a means for transmitting process data (28) via the local bus (6) in at least one isochronous data packet (25), wherein the at least one isochronous data packet (25) has a second identifier (26), wherein the second identifier (26) is different to the first identifier (18); a means for transmitting management data (34, 39b, 40b) via the local bus (6) in at least one asynchronous data packet (30, 35), the at least one asynchronous data packet (30, 35) having a third identifier (31, 36) wherein the third identifier (31, 36) is different from the first identifier (18) and second identifier (26); and wherein the isochronous data packet (25) and the asynchronous data packet (30, 35) are transmitted within the cycle frame (17). Der Lokalbusmaster (3) nach Anspruch 8, wobei das Mittel zum Senden der ersten Kennung (18), das Mittel zum Senden der Prozessdaten (28) und das Mittel zum Senden von Managementdaten (34, 39b, 40b) das gleiche Mittel zum Senden ist.The local bus master (3) to Claim 8 wherein the means for sending the first identifier (18), the means for transmitting the process data (28) and the means for sending management data (34, 39b, 40b) is the same means for transmitting. Einen Datenbusteilnehmer (7a, 7b, ..., 7n), insbesondere eines Ringbusses, wobei der Datenbusteilnehmer (7a, 7b, ..., 7n) aufweist: ein Mittel zum Empfangen einer ersten Kennung (18) eines Zyklusrahmens (17) über den Lokalbus (6), wobei die erste Kennung (18) den Beginn des Zyklusrahmens (17) definiert; ein Mittel zum Empfangen von zumindest einem isochronen Datenpaket (25), wobei das zumindest eine isochronen Datenpaket (25) eine zweite Kennung (26) aufweist, wobei die zweite Kennung (26) dem Datenbusteilnehmer (7a, 7b, ..., 7n) anzeigt, dass das empfangene isochrone Datenpaket (25) Prozessdaten (28) beinhaltet; und ein Mittel zum Empfangen von zumindest einem asynchronen Datenpaket (30, 35), wobei das zumindest eine asynchronen Datenpaket (30, 35) eine dritte Kennung (31, 36) aufweist, wobei die dritte Kennung (31, 36) dem Datenbusteilnehmer (7a, 7b, ..., 7n) anzeigt, dass das empfangene asynchrone Datenpaket (30, 35) Managementdaten (34, 39b, 40b) beinhaltet.A data bus subscriber (7a, 7b, ..., 7n), in particular a ring bus, wherein the data bus subscriber (7a, 7b, ..., 7n) has: means for receiving a first identifier (18) of a cycle frame (17) via the local bus (6), the first identifier (18) defining the beginning of the cycle frame (17); a means for receiving at least one isochronous data packet (25), the at least one isochronous data packet (25) having a second identifier (26), the second identifier (26) being assigned to the data bus subscriber (7a, 7b, ..., 7n) indicating that the received isochronous data packet (25) includes process data (28); and a means for receiving at least one asynchronous data packet (30, 35), the at least one asynchronous data packet (30, 35) having a third identifier (31, 36), the third identifier (31, 36) being assigned to the data bus user (7a, 7b, ..., 7n) indicates that the received asynchronous data packet (30, 35) includes management data (34, 39b, 40b). Der Datenbusteilnehmer (7a, 7b, ..., 7n) nach Anspruch 10, wobei das Mittel zum Empfangen der ersten Kennung (18), das Mittel zum Empfangen von zumindest einem isochronen Datenpaket (25) und das Mittel zum Empfangen von zumindest einem asynchronen Datenpaket (30, 35) das gleiche Mittel zum Empfangen ist.The data bus subscriber (7a, 7b, ..., 7n) after Claim 10 in which the means for receiving the first identifier (18), the means for receiving at least one isochronous data packet (25) and the means for receiving at least one asynchronous data packet (30, 35) is the same means for receiving. Der Datenbusteilnehmer (7a, 7b, ..., 7n) nach einem der Ansprüche 10 oder 11, weiter aufweisend: ein Mittel zum Senden der empfangenen ersten Kennung (18) an einen nachfolgenden Datenbusteilnehmer (7a, 7b, ..., 7n) nach einer vorherbestimmten Zeit nach dem Empfang; ein Mittel zum Senden des zumindest einen empfangenen isochronen Datenpakets (25) an den nachfolgenden Datenbusteilnehmer (7a, 7b, ..., 7n) nach einer vorherbestimmten Zeit nach dem Empfang; ein Mittel zum Senden des zumindest einen asynchronen Datenpakets (30, 35) an den nachfolgenden Datenbusteilnehmer (7a, 7b, ..., 7n) nach einer vorherbestimmten nach dem Empfang.The data bus subscriber (7a, 7b, ..., 7n) according to one of Claims 10 or 11 , further comprising: means for transmitting the received first identifier (18) to a subsequent data bus subscriber (7a, 7b, ..., 7n) after a predetermined time after receipt; means for transmitting the at least one received isochronous data packet (25) to the subsequent data bus subscriber (7a, 7b, ..., 7n) after a predetermined time after receipt; means for transmitting the at least one asynchronous data packet (30, 35) to the subsequent data bus subscriber (7a, 7b, ..., 7n) after a predetermined one after the reception. Der Datenbusteilnehmer (7a, 7b, ..., 7n) nach Anspruch 12, wobei das Mittel zum Senden der empfangenen ersten Kennung (18), das Mittel zum Senden des zumindest einen empfangenen isochronen Datenpakets (25) und das Mittel zum Senden des zumindest einen asynchronen Datenpakets (30, 35) das gleiche Mittel zum Senden ist.The data bus subscriber (7a, 7b, ..., 7n) after Claim 12 wherein the means for transmitting the received first identifier (18), the means for transmitting the at least one received isochronous data packet (25) and the means for transmitting the at least one asynchronous data packet (30, 35) is the same means for transmitting. Der Datenbusteilnehmer (7a, 7b, ..., 7n) nach einem der Ansprüche 10 bis 13, weiter aufweisend: ein Mittel zum Verarbeiten der identifizierten Prozessdaten (28).The data bus subscriber (7a, 7b, ..., 7n) according to one of Claims 10 to 13 , further comprising: means for processing the identified process data (28).
DE102017012250.4A 2017-05-24 2017-05-24 Transfer of data on a local bus Active DE102017012250B4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102017012250.4A DE102017012250B4 (en) 2017-05-24 2017-05-24 Transfer of data on a local bus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102017012250.4A DE102017012250B4 (en) 2017-05-24 2017-05-24 Transfer of data on a local bus

Publications (2)

Publication Number Publication Date
DE102017012250A1 true DE102017012250A1 (en) 2019-01-10
DE102017012250B4 DE102017012250B4 (en) 2020-10-15

Family

ID=64665963

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017012250.4A Active DE102017012250B4 (en) 2017-05-24 2017-05-24 Transfer of data on a local bus

Country Status (1)

Country Link
DE (1) DE102017012250B4 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5472347A (en) 1993-09-17 1995-12-05 Allen-Bradley Company, Inc. System for interconnecting I/O modules for data communications over a common backplane

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6111888A (en) * 1997-05-27 2000-08-29 Micro Motion, Inc. Deterministic serial bus communication system
US6381647B1 (en) * 1998-09-28 2002-04-30 Raytheon Company Method and system for scheduling network communication
DE10000305B4 (en) * 2000-01-05 2011-08-11 Robert Bosch GmbH, 70469 Method and device for exchanging data between at least two subscribers connected to a bus system
JP4097891B2 (en) * 2000-11-27 2008-06-11 三菱電機株式会社 Synchronization system using IEEE 1394
DE102005053103B4 (en) * 2005-11-04 2008-04-24 Phoenix Contact Gmbh & Co. Kg Method and system for transmitting cyclic and acyclic data

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5472347A (en) 1993-09-17 1995-12-05 Allen-Bradley Company, Inc. System for interconnecting I/O modules for data communications over a common backplane

Also Published As

Publication number Publication date
DE102017012250B4 (en) 2020-10-15

Similar Documents

Publication Publication Date Title
DE102017208833B4 (en) module unit
DE102017208831A1 (en) Processing of process data
EP3632050B1 (en) Bus converter
EP3632056B1 (en) Initalization of a local bus
EP3632049B1 (en) Status signal output
DE102017208825B4 (en) Transferring data on a local bus
EP3632053B1 (en) Processing of process data
EP3632054B1 (en) Determination of nodes of a local data bus
DE102017012250B4 (en) Transfer of data on a local bus
EP3631630B1 (en) Distributed processing of process data
EP3632066B1 (en) Pre-loading of instructions
DE102017208818A1 (en) Initialization of data bus users
DE102017012228A1 (en) module unit

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R129 Divisional application from

Ref document number: 102017208825

Country of ref document: DE

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final