Herunterladen Inhalt Inhalt Diese Seite drucken

Transport Der Nutzdaten Und Der Controlbytes; Bitstruktur Eines Controlbytes - B&R X20 System Anwenderhandbuch

Vorschau ausblenden Andere Handbücher für X20 System:
Inhaltsverzeichnis

12.10.4.2.2 Transport der Nutzdaten und der Controlbytes

Die Tx- bzw. Rx-Bytes sind zyklische Register, die zum Transport der Nutzdaten und der notwendigen Con-
trolbytes dienen. Die Anzahl aktiver Tx- bzw. Rx-Bytes ergibt sich aus der Konfiguration der Register "Out-
putMTU" bzw. "InputMTU".
Im Programmablauf des Anwenders können nur die Tx- bzw. Rx-Bytes der Steuerung genutzt werden. Inner-
halb des Moduls gibt es die entsprechenden Gegenstücke, welche für den Anwender nicht zugänglich sind.
Aus diesem Grund wurden die Bezeichnungen aus Sicht der Steuerung gewählt.
• "T" - "transmit" → Steuerung sendet Daten an das Modul
• "R" - "receive" → Steuerung empfängt Daten vom Modul
12.10.4.2.2.1 Controlbytes
Neben den Nutzdaten übertragen die Tx- bzw. Rx-Bytes auch die sogenannten Controlbytes. Sie enthalten
zusätzliche Informationen über den Datenstrom, damit der Empfänger die übertragenen Segmente wieder
korrekt zur ursprünglichen Nachricht zusammensetzen kann.

Bitstruktur eines Controlbytes

Bit
Bezeichnung
0 - 5
SegmentLength
6
nextCBPos
7
MessageEndBit
SegmentLength
Die Segmentlänge kündigt dem Empfänger an, wie lang das kommende Segment ist. Wenn die eingestellte
Segmentlänge für eine Nachricht nicht ausreicht, muss die Mitteilung auf mehrere Segmente verteilt wer-
den. In diesen Fällen kann das tatsächliche Ende der Nachricht über Bit 7 (Controlbyte) erkannt werden.
Information:
Bei der Bestimmung der Segmentlänge wird das Controlbyte nicht mitgerechnet. Die Seg-
mentlänge ergibt sich rein aus den Bytes der Nutzdaten.
nextCBPos
Mit diesem Bit wird angezeigt, an welcher Position das nächste Controlbyte zu erwarten ist. Diese Informa-
tion ist vor allem bei Anwendung der Option "MultiSegmentMTU" wichtig.
Bei der Flatstream-Kommunikation mit MultiSegmentMTUs ist das nächste Controlbyte nicht mehr auf dem
ersten Rx-Byte der darauffolgenden MTU zu erwarten, sondern wird direkt im Anschluss an das Segment
übertragen.
MessageEndBit
Das "MessageEndBit" wird gesetzt, wenn das folgende Segment eine Nachricht abschließt. Die Mitteilung
ist vollständig übertragen und kann weiterverarbeitet werden.
Information:
In Output-Richtung muss dieses Bit auch dann gesetzt werden, wenn ein einzelnes Segment
ausreicht, um die vollständige Nachricht aufzunehmen. Das Modul verarbeitet eine Mittei-
lung intern nur, wenn diese Kennzeichnung vorgenommen wurde.
Die Größe einer übertragenen Mitteilung lässt sich berechnen, wenn alle Segmentlängen
der Nachricht addiert werden.
Flatstream-Formel zur Berechnung der Nachrichtenlänge:
Nachricht [Byte] = Segmentlängen (aller CBs ohne ME) + Segmentlänge (des ersten CB mit
ME)
X20 System Anwenderhandbuch 4.30
Wert
Information
0 - 63
Bytegröße des folgenden Segments (Standard: max. MTU-Größe - 1)
0
Nächstes Controlbyte zu Beginn der nächsten MTU
1
Nächstes Controlbyte direkt nach Ende des Segments
0
Nachricht wird nach dem folgenden Segment fortgesetzt
1
Nachricht wird durch das folgende Segment beendet
Zusätzliche Informationen
CB
Controlbyte
ME
MessageEndBit
245
Inhaltsverzeichnis
loading

Inhaltsverzeichnis