Hinweise zur Dokumentation

Diese Beschreibung wendet sich ausschließlich an ausgebildetes Fachpersonal der Steuerungs- und Automatisierungstechnik, das mit den geltenden nationalen Normen vertraut ist.
Zur Installation und Inbetriebnahme der Komponenten ist die Beachtung der Dokumentation und der nachfolgenden Hinweise und Erklärungen unbedingt notwendig.
Das Fachpersonal ist verpflichtet, für jede Installation und Inbetriebnahme die zu dem Zeitpunkt veröffentlichte Dokumentation zu verwenden.

Das Fachpersonal hat sicherzustellen, dass die Anwendung bzw. der Einsatz der beschriebenen Produkte alle Sicherheitsanforderungen, einschließlich sämtlicher anwendbaren Gesetze, Vorschriften, Bestimmungen und Normen erfüllt.

Disclaimer

Diese Dokumentation wurde sorgfältig erstellt. Die beschriebenen Produkte werden jedoch ständig weiter entwickelt.
Wir behalten uns das Recht vor, die Dokumentation jederzeit und ohne Ankündigung zu überarbeiten und zu ändern.
Aus den Angaben, Abbildungen und Beschreibungen in dieser Dokumentation können keine Ansprüche auf Änderung bereits gelieferter Produkte geltend gemacht werden.

Marken

Beckhoff®, TwinCAT®, EtherCAT®, EtherCAT G®, EtherCAT G10®, EtherCAT P®, Safety over EtherCAT®, TwinSAFE®, XFC®, XTS® und XPlanar® sind eingetragene und lizenzierte Marken der Beckhoff Automation GmbH.
Die Verwendung anderer in dieser Dokumentation enthaltenen Marken oder Kennzeichen durch Dritte kann zu einer Verletzung von Rechten der Inhaber der entsprechenden Bezeichnungen führen.

Patente

Die EtherCAT Technologie ist patentrechtlich geschützt, insbesondere durch folgende Anmeldungen und Patente:
EP1590927, EP1789857, EP1456722, EP2137893, DE102015105702
mit den entsprechenden Anmeldungen und Eintragungen in verschiedenen anderen Ländern.

EtherCAT® ist eine eingetragene Marke und patentierte Technologie lizenziert durch die Beckhoff Automation GmbH, Deutschland.

Copyright

© Beckhoff Automation GmbH & Co. KG, Deutschland.
Weitergabe sowie Vervielfältigung dieses Dokuments, Verwertung und Mitteilung seines Inhalts sind verboten, soweit nicht ausdrücklich gestattet.
Zuwiderhandlungen verpflichten zu Schadenersatz. Alle Rechte für den Fall der Patent-, Gebrauchsmuster- oder Geschmacksmustereintragung vorbehalten.


Übersicht

Mit den Funktionsbausteinen der SPS-Bibliothek TcS5S7Comm.Lib kann ein Datenaustausch zwischen der lokalen TwinCAT SPS und einer S5/S7 Steuerung über einen Ethernet-LAN-Adapter der Fa. IBHsoftec realisiert werden. Dieser Adapter ist nicht Bestandteil des Beckhoff Produktes und muss direkt bei IBHsoftec gekauft werden.

Systemvoraussetzungen:

  • Unterstützte Adapter:
    • IBH Link S5++ Adapter der Firma IBHsoftec (ab Firmwareversion 1.39, die Firmwareversion können Sie mit der mitgelieferten Konfigurationssoftware auslesen).
      Ältere Adapter (ohne ++) werden zur Zeit nicht unterstützt.
    • IBH Link S7++ Adapter der Firma IBHsoftec (ab Firmwareversion NL50MPI V02.004 05.06.09, die Firmwareversion können Sie mit der mitgelieferten Konfigurationssoftware auslesen).
  • Programmierumgebung:
    • Windows NT (XP, XPe/WES, Vista, W7, WES7, ... );
    • TwinCAT Installation: Level TwinCAT PLC oder höher;
    • TwinCAT System Version 2.11.0 Build >= 1537 oder höher;
  • Zielplattform:
    • Industrie PC oder Embedded PC/CX (x86, ARM);
    • Betriebssystem:
      • Windows NT (XP, XPe/WES, Vista, W7, WES7, ... );
      • Windows CE (x86) (image v3.08c oder höher);
      • Windows CE (ARM) (image v2.22c oder höher);
    • TwinCAT SPS-Laufzeitsystem Version 2.10.0 oder höher;

Produktkomponenten

  • TcS5S7Comm.Lib (Bibliothek mit den Kommunikationsbausteinen die Sie in Ihrer SPS-Applikation einbinden müssen);
  • TcpIp.Lib (implementiert basic TCP/IP- und UDP-Funktionen);
  • TcSocketHelper.Lib (implementiert TCP/IP-Hilfsfunktionen);
  • TwinCAT TCP/IP Connection Server (TwinCAT Server);

Installation

Windows NT (XP, XPe/WES, Vista, W7, WES7, ... )

Die SPS-Bibliotheken werden in den ...\TwinCAT\PLC\Lib-Ordner kopiert. Der TwinCAT TCP/IP Connection Server wird in die Liste der TwinCAT Server eingetragen. Beim TwinCAT Start wird der TCP/IP Connection Server automatisch gestartet und beim TwinCAT Stop gestoppt.

Windows CE

Führen Sie folgende Schritte aus wenn Sie eine Produktversion für Windows CE erworben haben:

  • Installieren Sie das Produkt zuerst wie gewohnt auf Ihrem Programmier-PC. Die SPS-Bibliotheken werden in den ...\TwinCAT\PLC\Lib-Ordner kopiert.
  • X86 CPU (CX1000, CX1020, ...):
    • Nach der Installation finden Sie im Ordner: ...\TwinCAT\CE\TCPIP\Install\ ein Cabinet-File für das CE-Laufzeitsystem.
    • Kopieren Sie die darin befindliche Datei: TcTCPIPSvrCe.I586.CAB in einen Ordner auf dem CE-Laufzeitsystem.
  • ARM CPU (CX9000, ...):
    • Nach der Installation finden Sie im Ordner: ...\TwinCAT\CE\TCPIP\Install\ ein Cabinet-File für das CE-Laufzeitsystem.
    • Kopieren Sie die darin befindliche Datei: TcTCPIPSvrCe.ARMV4I.CAB in einen Ordner auf dem CE-Laufzeitsystem.
  • Auf dem CE-System: Installieren Sie (durch einen Doppelklick auf das Cabinet-File) die CE-Komponenten.
  • Führen Sie ein Reeboot des CE-Geräts durch. Der TwinCAT TCP/IP Connection Server wird mit dem CE-Betriebssystem automatisch gestartet.


Einführung

In der Herstellerdokumentation finden Sie eine detaillierte Beschreibung zu Konfiguration der Module.

Installationshinweise finden Sie auf der Übersichtsseite.

Auf der Beispiele-Seite finden Sie einfache SPS-Projektbeispiele inklusive aller Sourcen.

Konfiguration eines IBH Link S5++ Adapters

Im folgenden Beispiel wurde eine feste IP-Adresse: '172.16.11.16' eingestellt:

Konfiguration eines IBH Link S7++ Adapters

Im folgenden Beispiel wurde eine feste IP-Adresse: '172.16.11.17' eingestellt:


Datenbereich-Zugriffsparameter

TS6610 | TwinCAT PLC Lib: S5/S7 Communication

Beschreibung der SPS-Datenbereich-Parameterwerte

Abhängig von dem Typ der verwendeten Fremdsteuerung, des Adapters oder Kommunikationsprotokolls unterscheiden sich die zu verwendenden Parameterwerte für den Schreib-/Lesebefehl. Einige Datenbereiche sind möglicherweise nicht verfügbar oder die Daten müssen wortweise statt byteweise gelesen/geschrieben werden. Weiterführende Informationen finden Sie in der Dokumentation der Fremdsteuerung.

Wichtiger Hinweis!

Beim Lesezugriff auf Wort-Variablen in der S5/S7 Steuerung liefert diese die Daten im Motorola-Format (Hi und Lo-Bytes) vertauscht. Die gelesenen Daten müssen für die Auswertung zuerst in das im TwinCAT System üblichen Intel-Format konvertiert werden. Daten, die vom TwinCAT System zur S5/S7-Steuerung geschrieben werden sollen müssen vor dem Schreibzugriff zuerst in das Motorola-Format konvertiert werden! Das BCD-Zahlensystem wird in der S5/S7-Steuerung zur Darstellung der Zähler/Timer-Variablen benutzt. Die Daten müssen dann ggf. auch entsprechend konvertiert werden.

Die TwinCAT SPS-Bibliothek: TcUtilities.Lib bietet entsprechende Funktionen zur Konvertierung zwischen Motorola und Intel-Format (z.B.: BE16_TO_HOST, HOST_TO_BE16...).

Folgende Tabelle gibt eine Übersicht über die verfügbaren Kommunikationswege:

Steuerung | LAN-Adapter | Transportprotokoll | LAN-Adapter-Kommunikationsprotokoll | Hinweise
S5 | IBH Link S5++ | TCP/IP | IBH S5 Lan Link Protokoll = FETCH/WRITE-Telegramme | Keine Verbindungsparametrierung in der Fremdsteuerung erforderlich!
S7 | IBH Link S7++ | TCP/IP | NetLink MPI-Protokoll (NL-MPI) der Fa. Hilscher | Keine Verbindungsparametrierung in der Fremdsteuerung erforderlich!

IBH S5 Lan Link Protokoll = FETCH/WRITE-Telegramme

  • Dieses Protokoll kann zur Zeit nur mit S5-Steuerungen verwendet werden;
  • Die TCP/IP-Portnummer hat den Defaultwert: 2002;
  • Der Parameter devAddr wird nicht ausgewertet;
  • Die Datenbausteinnummer (nDB) wird nur beim Zugriff auf Datenbereich: Datenbausteine (DB) und erweiterte Datenbausteine (DX) ausgewertet. Zulässiger Bereich: 1..255;
  • Der Bereich P (Peripherie) und OS (Operating state) wird nicht unterstützt;
Datenbereich (eArea) | Startadresse (nOffset) | Zulässige Datenlänge (cbBuffer)
DB | Datenwort-Offset: 0..2047 | 1..2048 Worte lesen/schreiben
M | Merkerbyte-Offset: 0..255 | 1..256 Bytes lesen/schreiben
I | Eingangsbyte-Offset: 0..127 | 1..128 Bytes lesen
Q | Ausgangsbyte-Offset: 0..127 | 1..128 Bytes schreiben
P | I/O Peripheriebyte-Offset: 0..127 (digital I/Os), 128..255 (analog I/Os) | 1..256 Bytes lesen/schreiben
C | Zähler Start-Offset: 0..255 | 1 Wort lesen/schreiben
T | Timer Start-Offset: 0..255 | 1 Wort lesen/schreiben
DX | Datenwort-Offset | 1..2048 Worte lesen/schreiben

NetLink MPI-Protokoll (NL-MPI) der Fa. Hilscher

  • Dieses Protokoll kann nur mit S7 Steuerungen verwendet werden;
  • Die TCP/IP-Portnummer hat den Defaultwert: 1099
  • Die MPI-Adresse (devAddr) hat den Defaultwert: 2. Zulässige Werte: 1..126;
  • Die Datenbausteinnummer (nDB) wird nur beim Zugriff auf Datenbereich: Datenbausteine (DB) ausgewertet. Zulässige Werte: 0..65534;
  • Der Bereich P (Peripherie) und DX (erweiterter Datenbaustein) wird nicht unterstützt;
  • Beim Parameter für die Datenlänge (cbBuffer) muss immer Bytelänge angegeben werden;
  • Beim Bereich OS (Operating state) ist nur lesender Zugriff möglich;
Datenbereich (eArea) | Startadresse (nOffset) | Zulässige Datenlänge (cbBuffer)
DB | Datenbyte-Offset: 0..65534 | max. 222 Bytes lesen und 216 schreiben
M | Merkerbyte-Offset: 0..65534
I | Eingangsbyte-Offset: 0..65534
Q | Ausgangsbyte-Offset: 0..65534
C | Zähler Start-Offset: 0..65534 | Max. 111 Wort-Zähler lesen und max. 108 Zähler schreiben
T | Timer Start-Offset: 0..65534 | Max. 111 Wort-Timer lesen und max. 108 Timer schreiben
OS | Operating state: Irrelevant | 1 Wort (0=STOP, 1=START, 2=RUN, 3=UNKNOWN)


FB_NLinkOpen

FUNCTION_BLOCK FB_NLinkOpen

Dieser Funktionsbaustein baut (aktiv) eine Netzwerkverbindung zum Fremdsystem auf. Beim Erfolg werden die internen Parameter der hLink-Variablen initialisiert. Die selbe hLink-Variableninstanz muss dann an die anderen Instanzen der Kommunikationsbausteine: FB_NLinkFetch, FB_NLinkWrite oder FB_NLinkClose übergeben werden. In einer SPS-Applikation wird pro Netzwerkverbindung (TwinCAT System<->Ethernet-LAN-Adapter<->Fremdsteuerung) eine Instanz von dieser Variablen benötigt.

VAR_IN_OUT

VAR_IN_OUT
        hLink : T_HNLINK;
END_VAR

hLink : Netzwerkverbindungshandle. Die Instanz dieser Variable wird von den anderen Kommunikationsbausteinen benötigt und wird an sie auch per VAR_IN_OUT übergeben.

VAR_INPUT

VAR_INPUT
        stSettings : ST_NLinkSettings := ( sHost := '127.0.0.1', nPort := 2002 );(* Link/connection parameter/settings *)
 nOpt    : DWORD := 0; (* Additional options (reserved) *)
        bExecute : BOOL; (* Rising edge at this input starts command execution *)
        tTimeout : TIME := T#45s;(* Maximum time allowed for the execution of the command *)
END_VAR

stSettings: Struktur mit Konfigurationseinstellungen der Kommunikationsverbindung. Besetzen Sie die Membervariablen dieser Struktur mit den Parametern wie Portnummer, Hostname usw.

nOpt: Reserviert für zukünftige Anwendungen.

bExecute: Über eine positive Flanke an diesem Eingang wird der Baustein aktiviert.

tTimeout: Gibt die Timeout-Zeit an, die bei der Annahme des Kommandos nicht überschritten werden darf.

VAR_OUTPUT

VAR_OUTPUT
        bBusy   : BOOL;
        bError  : BOOL;
        nErrID  : UDINT;
END_VAR

bBusy: Bei der Aktivierung des Funktionsbausteins wird dieser Ausgang gesetzt und bleibt gesetzt, bis eine Rückmeldung erfolgt. Während Busy = TRUE wird an den Eingängen kein neuer Befehl angenommen. Bitte beachten Sie, dass nicht die Ausführung des Kommandos, sondern nur dessen Annahme zeitlich überwacht wird.

bError: Sollte ein Fehler bei der Übertragung des Kommandos erfolgen, dann wird dieser Ausgang gesetzt, nachdem der bBusy-Ausgang zurückgesetzt wurde.

nErrID: Liefert bei einem gesetzten bError-Ausgang die Fehlernummer.

Beispiel:

Siehe unter Beispiele.

Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC or CX (x86, ARM) | TcS5S7Comm.Lib


FB_NLinkClose

FUNCTION_BLOCK FB_NLinkClose

Dieser Funktionsbaustein baut die Netzwerkverbindung zum Fremdsystem ab.

VAR_IN_OUT

VAR_IN_OUT
        hLink : T_HNLINK;
END_VAR

hLink : Netzwerkverbindungshandle. Hier übergeben Sie die Instanz der Variablen die bei der Verbindungsherstellung von dem FB_NLinkOpen-Funktionsbaustein verwendet wurde.

VAR_INPUT

VAR_INPUT
        nOpt    : DWORD := 0; (* Additional options (reserved) *)
        bExecute : BOOL; (* Rising edge at this input starts command execution *)
        tTimeout : TIME := DEFAULT_ADS_TIMEOUT;(* Maximum time allowed for the execution of the command *)
END_VAR

nOpt: Reserviert für zukünftige Anwendungen.

bExecute: Über eine positive Flanke an diesem Eingang wird der Baustein aktiviert.

tTimeout: Gibt die Timeout-Zeit an, die bei der Annahme des Kommandos nicht überschritten werden darf.

VAR_OUTPUT

VAR_OUTPUT
        bBusy   : BOOL;
        bError  : BOOL;
        nErrID  : UDINT;
END_VAR

bBusy: Bei der Aktivierung des Funktionsbausteins wird dieser Ausgang gesetzt und bleibt gesetzt, bis eine Rückmeldung erfolgt. Während Busy = TRUE wird an den Eingängen kein neuer Befehl angenommen. Bitte beachten Sie, dass nicht die Ausführung des Kommandos, sondern nur dessen Annahme zeitlich überwacht wird.

bError: Sollte ein Fehler bei der Übertragung des Kommandos erfolgen, dann wird dieser Ausgang gesetzt, nachdem der bBusy-Ausgang zurückgesetzt wurde.

nErrID: Liefert bei einem gesetzten bError-Ausgang die Fehlernummer.

Beispiel:

Siehe unter Beispiele.

Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC or CX (x86, ARM) | TcS5S7Comm.Lib


FB_NLinkFetch

FUNCTION_BLOCK FB_NLinkFetch

Dieser Funktionsbaustein liest Daten vom Fremdsystem und schreibt diese ins lokale TwinCAT System (FETCH-Dienst).

VAR_IN_OUT

VAR_IN_OUT
        hLink : T_HNLINK;
END_VAR

hLink : Netzwerkverbindungshandle. Hier übergeben Sie die Instanz der Variablen die bei der Verbindungsherstellung von dem FB_NLinkOpen-Funktionsbaustein verwendet wurde.

VAR_INPUT

VAR_INPUT
        devAddr         : BYTE := 2;(* Device address, MPI address of the remote component or its PROFIBUS address *)
 eArea   : E_NLinkArea := eNLinkArea_DB;(* PLC data area *)
 nDB     : WORD := 0; (* Data block number from which the data is read (DB, DX only). *)
 nOffset         : WORD := 0; (* Start byte/word address from which the data are taken to *)
 cbBuffer        : UDINT(0..MAX_NLink_DATALENGTH) := 0; (* Contains the max. number of destination bytes to be received *)
 pBuffer         : DWORD := 0; (* Contains the address of the destination buffer for the received data *)
 nOpt    : DWORD := 0; (* Additional options (reserved) *)
        bExecute        : BOOL; (* Rising edge at this input starts command execution *)
 tTimeout        : TIME := DEFAULT_ADS_TIMEOUT;(* Maximum time allowed for the execution of the command *)
END_VAR

devAddr: Geräteadresse, MPI-Adresse der Komponente auf dem Fremdsystem.

eArea: SPS Datenbereich auf dem Fremdsystem (Eingänge, Ausgänge, Datenbaustein usw.) aus dem Daten gelesen werden sollen.

nDB: Datenbausteinnummer auf dem Fremdsystem. Aus diesem Datenbaustein sollen Daten gelesen werden (nur relevant beim Zugriff auf Datenbausteine und erweiterte Datenbausteine).

nOffset: Die Start-Byteadresse oder Wortadresse ab der in dem Fremdsystem Daten gelesen werden sollen. Ob Byte- oder Wortadresse angegeben werden soll ist abhängig von dem Typ der verwendeten Fremdsteuerung/Protokoll und Datenbereich auf den Sie zugreifen möchten. Weitere Informationen finden Sie hier: Beschreibung der SPS-Datenbereich-Parameterwerte.

cbBuffer: Maximale Anzahl der Datenbytes die gelesen werden soll. Auch beim Zugriff auf Wortadressen wird hier immer die Bytelänge angegeben!

pBuffer: Pointer/Adresse des Zieldatenpuffers auf dem TwinCAT System. In diesen Puffer werden die gelesenen Daten geschrieben. Die Adresse kann mit dem ADR-Operator ermittelt werden. Der Zieldatenpuffer darf nicht kleiner sein als die angegebene Länge der zu lesenden Daten.

nOpt: Reserviert für zukünftige Anwendungen.

bExecute: Über eine positive Flanke an diesem Eingang wird der Baustein aktiviert.

tTimeout: Gibt die Timeout-Zeit an, die bei der Annahme des Kommandos nicht überschritten werden darf.

VAR_OUTPUT

VAR_OUTPUT
        bBusy   : BOOL;
        bError  : BOOL;
        nErrID  : UDINT;
        cbRead  : UDINT := 0; (* Number of recend realy returned data bytes *)
END_VAR

bBusy: Bei der Aktivierung des Funktionsbausteins wird dieser Ausgang gesetzt und bleibt gesetzt, bis eine Rückmeldung erfolgt. Während Busy = TRUE wird an den Eingängen kein neuer Befehl angenommen. Bitte beachten Sie, dass nicht die Ausführung des Kommandos, sondern nur dessen Annahme zeitlich überwacht wird.

bError: Sollte ein Fehler bei der Übertragung des Kommandos erfolgen, dann wird dieser Ausgang gesetzt, nachdem der bBusy-Ausgang zurückgesetzt wurde.

nErrID: Liefert bei einem gesetzten bError-Ausgang die Fehlernummer.

cbRead: Bei Erfolg Anzahl der erfolgreich gelesenen Datenbytes.

Beispiel:

Siehe unter Beispiele.

Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC or CX (x86, ARM) | TcS5S7Comm.Lib


FB_NLinkWrite

FUNCTION_BLOCK FB_NLinkWrite

Dieser Funktionsbaustein sendet Daten vom lokalen TwinCAT System zum Fremdsystem (WRITE-Dienst).

VAR_IN_OUT

VAR_IN_OUT
        hLink : T_HNLINK;
END_VAR

hLink : Netzwerkverbindungshandle. Hier übergeben Sie die Instanz der Variablen die bei der Verbindungsherstellung von dem FB_NLinkOpen-Funktionsbaustein verwendet wurde.

VAR_INPUT

VAR_INPUT
        devAddr         : BYTE := 2;(* Device address, MPI address of the remote component or its PROFIBUS address *)
 eArea   : E_NLinkArea := eNLinkArea_DB;(* PLC data area *)
 nDB     : WORD := 0; (* Data block number to which the data is written (DB, DX only) *)
 nOffset         : WORD := 0; (* Start byte/word address to which the data is send *)
 cbBuffer        : UDINT(0..MAX_NLink_DATALENGTH) := 0;(* Contains the number of source bytes to be send *)
 pBuffer         : DWORD := 0; (* Contains the address of the source buffer containing the data to be send *)
 nOpt    : DWORD := 0; (* Additional options (reserved) *)
        bExecute        : BOOL; (* Rising edge at this input starts command execution *)
 tTimeout        : TIME := DEFAULT_ADS_TIMEOUT;(* Maximum time allowed for the execution of the command *)
END_VAR

devAddr: Geräteadresse, MPI-Adresse der Komponente auf dem Fremdsystem.

eArea: SPS Datenbereich auf dem Fremdsystem (Eingänge, Ausgänge, Datenbaustein usw.) in den Daten geschrieben werden sollen.

nDB: Datenbausteinnummer auf dem Fremdsystem. In diesen Baustein sollen Daten geschrieben werden (nur relevant beim Zugriff auf Datenbausteine und erweiterte Datenbausteine).

nOffset: Die Start-Byteadresse oder Wortadresse ab der auf dem Fremdsystem Daten geschrieben werden sollen. Ob Byte- oder Wortadresse angegeben werden soll ist abhängig von dem Typ der verwendeten Fremdsteuerung/Protokoll und dem Datenbereich auf den Sie zugreifen möchten. Weitere Informationen finden Sie hier: Beschreibung der SPS-Datenbereich-Parameterwerte.

cbBuffer: Maximale Bytelänge der Daten die vom Quelldatepuffer auf dem lokalen TwinCAT System zum Fremdsystem übertragen werden soll. Auch beim Zugriff auf Wortadressen wird hier die Bytelänge angegeben!

pBuffer: Pointer/Adresse auf den Quelldatenpuffer. Daten aus diesem Puffer werden zum Fremdsystem übertragen. Die Adresse kann mit dem ADR-Operator ermittelt werden. Der Quelldatenpuffer darf nicht kleiner sein als die angegebene Länge der zu sendenden Daten.

nOpt: Reserviert für zukünftige Anwendungen.

bExecute: Über eine positive Flanke an diesem Eingang wird der Baustein aktiviert.

tTimeout: Gibt die Timeout-Zeit an, die bei der Annahme des Kommandos nicht überschritten werden darf.

VAR_OUTPUT

VAR_OUTPUT
        bBusy   : BOOL;
        bError  : BOOL;
        nErrID  : UDINT;
        cbWrite         : UDINT := 0;(* Number of successfull written data bytes *)
END_VAR

bBusy: Bei der Aktivierung des Funktionsbausteins wird dieser Ausgang gesetzt und bleibt gesetzt, bis eine Rückmeldung erfolgt. Während Busy = TRUE wird an den Eingängen kein neuer Befehl angenommen. Bitte beachten Sie, dass nicht die Ausführung des Kommandos, sondern nur dessen Annahme zeitlich überwacht wird.

bError: Sollte ein Fehler bei der Übertragung des Kommandos erfolgen, dann wird dieser Ausgang gesetzt, nachdem der bBusy-Ausgang zurückgesetzt wurde.

nErrID: Liefert bei einem gesetzten bError-Ausgang die Fehlernummer.

cbWrite: Bei Erfolg Anzahl der erfolgreich geschriebenen Datenbytes.

Beispiel:

Siehe unter Beispiele.

Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC or CX (x86, ARM) | TcS5S7Comm.Lib


F_GetVersionTcS5S7Comm

FUNCTION F_GetVersionTcS5S7Comm

Mit dieser Funktion können Versionsinformationen der SPS-Bibliothek ausgelesen werden.

FUNCTION F_GetVersionTcS5S7Comm : UINT

VAR_INPUT
        nVersionElement : INT;
END_VAR

nVersionElement : Versionselement, das gelesen werden soll. Mögliche Parameter:

  • 1 : major number;
  • 2 : minor number;
  • 3 : revision number;
Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC oder CX (x86, ARM) | TcS5S7Comm.Lib


E_NLinkArea

TYPE E_NLinkArea

TYPE E_NLinkArea:
(
        eNLinkArea_DB := 16#01, (* Source/dest. data from/to data block in main memory. *)
 eNLinkArea_M := 16#02, (* Source/dest. data from/to flag area. *)
 eNLinkArea_I := 16#03, (* Source/dest. data from/to process image of the inputs. *)
 eNLinkArea_Q := 16#04, (* Source/dest. data from/to process image of the outputs. *)
 eNLinkArea_P := 16#05, (* Source/dest. data from/to in I/O modules (S7 only PI, PQ). *)
 eNLinkArea_C := 16#06, (* Source/dest. data from/to counter cells. *)
 eNLinkArea_T := 16#07, (* Source/dest. data from/to timer cells. *)
 eNLinkArea_DX := 16#0A (* Source/dest. data from/to extended data block. *)
 eNLinkArea_OS := 16#100 (* Read PLC operational status information *)
);
END_TYPE

SPS Datenbereich (Eingänge, Ausgänge, Merker, Datenbaustein usw.) auf den zugegriffen werden soll. Abhängig von dem Typ der verwendeten Fremdsteuerung, des Adapters oder Kommunikationsprotokolls unterscheiden sich die zu verwendenden Parameterwerte. Einige Datenbereiche sind möglicherweise nicht verfügbar oder die Daten müssen wortweise statt byteweise gelesen/geschrieben werden.

Genauere Informationen zu diesem Thema finden Sie hier: Beschreibung der SPS-Datenbereich-Parameterwerte.

Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC or CX (x86, ARM) | TcS5S7Comm.Lib


E_NLinkProtocol

TYPE E_NLinkProtocol

TYPE E_NLinkProtocol:
(
        eNLinkProtocol_IBH_SX_PP := 0, (* IBH Link protocol (used by IBH Link S5++ adater) *)
 eNLinkProtocol_MPI (* Hilscher NL-MPI protocol (used only by IBH Link S7++ adapter) *)
);
END_TYPE

Kommunikationsprotokoll (hängt von der verwendeten Hardware ab).

Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC or CX (x86, ARM) | TcS5S7Comm.Lib


E_NLinkTransport

TYPE E_NLinkTransport

TYPE E_NLinkTransport:
(
        eNLinkTransport_TCPIP := 0
);
END_TYPE

Transportprotokoll (bestimmt wie Daten transportiert werden sollen). Zur Zeit wird nur das streamorientierte TCP/IP-Protokoll unterstützt.

Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC or CX (x86, ARM) | TcS5S7Comm.Lib


E_NLinkOpState

TYPE E_NLinkOpState

TYPE E_NLinkOpState:
(
        eNLinkOpState_STOP := 0,
        eNLinkOpState_START := 1,
        eNLinkOpState_RUN := 2,
        eNLinkOpState_UNKNOWN := 3
);
END_TYPE

Operational state (nur S7);

Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC or CX (x86, ARM) | TcS5S7Comm.Lib


ST_NLinkDebug

TYPE ST_NLinkDebug

Über diese Parameter können bei der Fehlersuche die Debugausgaben aktiviert/deaktiviert werden (Standardeinstellung: deaktiviert).
Die Debugausgaben werden im Logview vom TwinCAT System Manager ausgegeben.

TYPE ST_NLinkDebug:
STRUCT
        eTx : E_DbgDirection := eDbgDirection_OFF;(* Enable/disable debug output of data-requests/responses. *)
 eRx : E_DbgDirection := eDbgDirection_OFF;(* Enable/disable debug output of data-indications/confirmations. *)
 bState : BOOL := TRUE;(* TRUE => Enable debug output *)
END_STRUCT
END_TYPE

eTx: Aktiviert/deaktiviert die Debugausgabe des Sendepuffers.

eRx: Aktiviert/deaktiviert die Debugausgabe des Empfangspuffers.

bState: Aktiviert/deaktiviert Statusmeldungen beim Aufbauen oder Abbauen der Socketverbindung.

Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC or CX (x86, ARM) | TcS5S7Comm.Lib


ST_NLinkSettings

TYPE ST_NLinkSettings

TYPE ST_NLinkSettings:
STRUCT
        sSrvNetID       : T_AmsNetID := ''; (* The network address of the TcpIpServer.exe. If empty string=>server runs on local system *)
 eProtocol       : E_NLinkProtocol := eNLinkProtocol_IBH_SX_PP; (* Lan link protocol type *)
 eTransport      : E_NLinkTransport := eNLinkTransport_TCPIP;(* Used transport protocol *)
 sHost           : T_IPv4Addr := '127.0.0.1'; (* Remote (server) address. String containing an (Ipv4) Internet Protocol dotted address. *)
 nPort           : UDINT := 2002; (* Remote (server) Internet Protocol (IP) port. *)
 local_T_selector        : STRING := '00 01';(* local-transport-selector *)
 remote_T_selector       : STRING := '00 01';(* remote-transport-selector *)
 bServer                 : BOOL := FALSE; (* Reserved: TRUE = server connection, FALSE = client connection *)
 bThrottle       : BOOL := FALSE; (* If set reduces the number of polling socket read requests *)
 debug           : ST_NLinkDebug;
END_STRUCT
END_TYPE

sSrvNetID: Die TwinCAT Netzwerkadresse des TwinCAT TCP/IP Connection servers (default = Leerstring).

eProtocol: Über diesen Parameter wird das zu verwendende Kommunikationsprotokoll eingestellt.

eTransport: Über diesen Parameter wird das zu verwendende Transportprotokoll eingestellt.

sHost: String mit der Netzwerkadresse (Ipv4) des Kommunikationspartners (default = '127.0.0.1' ).

nPort: Internet Protocol (IP) port (default = 2002).

local_T_selector : Lokale TSAP-Adresse (reserviert).

remote_T_selector : Remote TSAP-Adresse (reserviert).

bServer: FALSE = Client (aktive) Verbindung. TRUE = Server (passive) Verbindung. Zur Zeit werden nur Clientverbindungen zugelassen.

bThrottle: Wenn dieser Parameter gesetzt ist dann reduziert sich die Anzahl der pollenden Socket-Aufrufe wenn keine oder Wenig Daten empfangen werden. D.h. der Poll-Zyklus wird verlangsamt und dadurch die Systemauslastung verringert (default = FALSE ).

debug: Optionale Einstellungen der Debugausgabe.

Hinweis!

Hintergrundinformation zur Konfiguration der eProtocol- und eTransport-Parameter:

Der IBHsoftec S7++ Adapter kann theoretisch über mehr als einen Kommunikationsweg (Protokoll) mit der S7-Hardware kommunizieren.

  • Über das Hilscher MPI-Protokoll + TCP/IP als Transportprotokoll.
  • Über das IBHsoftec S5++/S7++-Protokoll + RFC1006 als Transportprotokoll.

Die TwinCAT S5/S7 Kommunikationsbibliothek unterstützt zur Zeit nur den ersten Kommunikationsweg, da zur Zeit nur das TCP/IP als Transportprotokoll unterstützt wird.
D.h für die Kommunikation mit S7 Geräten bitte folgende Einstellung setzen:

eProtocol := eNLinkProtocol_MPI;
eTransport := eNLinkTransport_TCPIP;

Für die Kommunikation mit den S5 Geräten bitte folgende Einstellung setzen:

eProtocol := eNLinkProtocol_IBH_SX_PP;
eTransport := eNLinkTransport_TCPIP;

Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC or CX (x86, ARM) | TcS5S7Comm.Lib


T_HNLINK

TYPE T_HNLINK

Eine Variable von diesem Typ repräsentiert ein Netzwerkverbindungshandle. Die Strukturelemente sollen nicht direkt beschrieben oder verändert werden. Variablen von diesem Typ werden für den internen Datenaustausch benutzt.
Pro Netzwerkverbindung (TwinCAT System<->Ethernet-LAN-Adapter<->Fremdsteuerung) wird eine Instanz benötigt. Die selbe Instanz wird dann als VAR_IN_OUT-Parameter an andere Kommunikationsbausteine übergeben.

TYPE T_HNLINK :
STRUCT
END_STRUCT
END_TYPE
Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC or CX (x86, ARM) | TcS5S7Comm.Lib


Konstanten

Name | Wert | Beschreibung
MAX_NLINK_BUFFER_SIZE | 16#FFFF | Max. interne Tx/Rx-Puffergröße (64K)
MAX_NLINK_DATALEN | 2048 | Max. Länge der zu übertragenen Daten die von den SPS-Bausteinen unterstützt wird. Die tatsächliche max. Länge der zu übertragenen Daten kann aber durch Geräteeigenschaften kleiner sein!
MAX_NLINK_HEADERLEN | 16 | Max. Länge des Frame-Headers beim NL-MPI und IBHNet-Protokoll.
MAX_NLINK_MPI_CONNECTIONS | 16 | Max. Anzahl der offenen MPI-Verbindungen. Beim Überschreiten dieser Anzahl werden die ältesten Verbindungen automatisch wieder geschlossen.

Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC or CX (x86, ARM) | TcS5S7Comm.Lib


Übersicht

Übersicht der Fehlercodes

Fehlercodes (Hex) | Fehlercodes (Dez) | Fehlerquelle | Beschreibung
0x00000000-0x00007800 | 0-30720 | TwinCAT System Fehler | TwinCAT System Fehler (ADS-Fehlercodes inklusive)
0x00008000-0x000080FF | 32768-33023 | Interne TwinCAT TCP/IP Connection Server Fehler | Interne Fehler des TwinCAT TCP/IP Connection Servers
0x00008300-0x000085FF | 33536-34303 | Interne TwinCAT S5/S7 Communication Fehler | Interne Fehler im S5/S7 Ehternet/Lan Modul oder der TwinCAT SPS-Bibliothek
0x80070000-0x8007FFFF | 2147942400-2148007935 | Fehlerquelle = Fehlercode - 0x80070000 = Win32 System Fehler | Win32 Systemfehler (Windows Sockets Fehlercodes inklusive)


Interne Net Link Fehlercodes

Interne S5/S7 Kommunikations-Fehlercodes

Fehlercode (Hex) | Fehlercode (Dez) | Symbolische Konstante | Beschreibung
 |  | General error codes | Offset 0x8300 + Fehlercode
0x00000000 | 0 | NLINK_COMMERR_NOERROR | Kein Fehler
0x00008300 | 33536 | NLINK_COMMERR_TIMEOUT | Timeout während der Kommunikation (Transaktion)
0x00008301 | 33537 | NLINK_COMMERR_TXOVERFLOW | Sendepuffer Überlauf
0x00008302 | 33538 | NLINK_COMMERR_RXOVERFLOW | Empfangspuffer Überlauf
0x00008303 | 33539 | NLINK_COMMERR_FATAL | Fataler interner Fehler
0x00008304 | 33540 | NLINK_COMMERR_SYSTEMID | Fehlerhafte System-ID
0x00008305 | 33541 | NLINK_COMMERR_HEADERLEN | Fehlerhafter Header-Längenparameter
0x00008306 | 33542 | NLINK_COMMERR_OPCODE | Fehlerhafter OP-Code, OP-Codelänge oder OP-Codewort
0x00008307 | 33543 | NLINK_COMMERR_INVALIDSIZE | Fehlerhafte Datenlänge
0x00008308 | 33544 | NLINK_COMMERR_INVALIDSTATE | Gerät oder Verbindung befindet sich im fehlerhaften/unzulässigen Zustand
0x00008309 | 33545 | NLINK_COMMERR_INVALIDVALUE | Es wurde ein falscher Parameterwert angegeben
0x0000830A | 33546 | NLINK_COMMERR_INVALIDAREA | Falscher/nicht unterstützter Datenbereich
0x0000830B | 33547 | NLINK_COMMERR_UNEXPTECTED | Unerwarteter Fehler
 |  | IBH Link S5++ specific error codes | Offset 0x8400 + Fehlercode
0x00008402 | 33794 | NLINK_COMMERR_IBH_AREA_NOT_AVAILABLE | Datenbereich in der Steuerung nicht vorhanden, Datenbaustein nicht vorhanden
0x00008403 | 33795 | NLINK_COMMERR_IBH_AREA_TO_SMALL | Angeforderter Bereich ist zu klein
0x00008406 | 33798 | NLINK_COMMERR_IBH_INVALID_HEADER | Falsches Frame-/Header-Format
0x00008407 | 33799 | NLINK_COMMERR_IBH_DATA_OVERFLOW | Zulässige Datengröße überschritten, Datenpuffer zu klein
0x00008409 | 33801 | NLINK_COMMERR_IBH_TIMEOUT | Timeout während der Kommunikation mit der Steuerung
0x0000840A | 33802 | NLINK_COMMERR_IBH_DATA_UNDERFLOW | Es wurden zu wenig Daten empfangen
 |  | Hilscher NL-MPI interface error codes | Offset 0x8500 + MPI Response Message Fehlercode
0x00008501 | 34049 | NLINK_COMMERR_MPI_UE | Timeout from remote station remote station remote station has not responded within 1 sec.timeout
0x00008502 | 34050 | NLINK_COMMERR_MPI_RR | Resource unavailable remote station remote station has no left buffer space for the requested service
0x00008503 | 34051 | NLINK_COMMERR_MPI_RS | Requested function of master is not activated within the remote station. The connection seems to be closed in the remote station. Try to send command again
0x00008511 | 34065 | NLINK_COMMERR_MPI_NA | No response of the remote station remote station check network wiring, check remote address, check baud rate
0x00008512 | 34066 | NLINK_COMMERR_MPI_DS | Master not into the logical token ring network in general check master DP-Address or highest-station-Addres s of other masters. Examine bus wiring to bus short circuits
0x00008514 | 34068 | NLINK_COMMERR_MPI_LR | Resource of the local FDL controller not available or not sifficient. HOST too many messages. no more segments in DEVICE free
0x00008515 | 34069 | NLINK_COMMERR_MPI_IV | The specified msg.data_cnt parameter invalid HOST check the limit of 222 bytes (read) respectively 216 bytes (write) in msg.data_cnt
0x00008530 | 34096 | NLINK_COMMERR_MPI_TO | Timeout, the request message was accepted but no indication is sent back by the remote station remote station MPI protocol error, or station not presentor
0x00008539 | 34105 | NLINK_COMMERR_MPI_SE | Sequence fault, internal state machine error. Remote station does not react like awaited or a reconnection was retried while connection is already open or device has no SAPs left to open connection channel
0x00008585 | 34181 | NLINK_COMMERR_MPI_REJ_IV | Specified offset address out of limits or not known in the remote station HOST please check msg.data_adr if present or offset parameter in request message
0x00008586 | 34182 | NLINK_COMMERR_MPI_REJ_PDU | Wrong PDU coding in the MPI response of the remote station DEVICE contact hotline
0x00008587 | 34183 | NLINK_COMMERR_MPI_REJ_OP | Specified length to write or to read results in an access outside the limits HOST please check msg.data_cnt length in request message
0x00008588 | 34184 | NLINK_COMMERR_MPI_REJ_OP | Specified address not defined in the remote station, please check msg.data_adr in the request message
0x00008589 | 34185 | NLINK_COMMERR_MPI_REJ_OP | MPI remote station not in the right operational mode, bring S7 into RUN-P Mode

Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build > 1536 | PC oder CX (x86, ARM) | TcS5S7Comm.Lib


Fehlersuche

Fehlersuche/Diagnose

1. Bei Verbindungsproblemen kann der PING-Befehl dazu benutzt werden, um festzustellen ob die Fremdsteuerung über die Netzwerkverbindung erreichbar ist. Wenn dies nicht der Fall ist überprüfen Sie die Konfiguration/Stromversorgung und den Netzwerkanschluss des Adaptermoduls. Hinweise zur Konfiguration der Adaptermodule finden Sie in der Herstellerdokumentation des Adapters.

2. Eine komplette Aufzeichnung der Netzwerkkommunikation kann mit Sniffer-Tools wie Wireshark durchgeführt werden. Die Aufnahme kann dann vom Beckhoff-Supportpersonal analysiert werden.

3. Überprüfen Sie die in dieser Dokumentation beschriebenen Hardware- und Softwareanforderungen (Adapter-Hersteller, -Model, -Firmwareversion).

4. Wenn Sie über den IBH Link S5++ oder IBH Link S7++ Adapter in Verbindung mit TCP/IP als Transportprotokoll auf die Fremdsteuerung zugreifen dann müssen in der Fremdsteuerung keinerlei Verbindungen konfiguriert/parametriert werden! Wenn Sie trotzdem Probleme beim Datenzugriff haben, dann überprüfen Sie ob die entsprechenden Datenbereiche (Merker, Datenbausteine usw. ) in der Fremdsteuerung richtig konfiguriert und vorhanden sind.

5. Überprüfen Sie ob die Eingangsparameter, die Sie an die Funktionsbausteine übergeben, richtig sind (Netzwerkadresse, MPI-Adresse, Datenbausteinnummer usw..). Überprüfen Sie ob der Funktionsbaustein einen Fehlercode ausgibt. Die Dokumentation zu den Fehlercodes finden Sie hier: Übersicht der Fehlercodes.

6. In der TwinCAT SPS-Bibliothek ist bereits eine einfache Debugausgabe integriert. Diese muss vor dem Herstellen der Verbindung am FB_NLinkOpen-Funktionsbaustein aktiviert werden. Öffnen Sie den TwinCAT System Manager und aktivieren das LogView-Fenster. Auf folgendem Bild sehen Sie einige Debug-Ausgabestrings.

Beispiel:

Kommunikation über den IBH Link S7++ (NL-MPI-Protokoll über TCP/IP). Es werden immer komplette Frames geloggt (16 Byte header + SPS-Daten aus dem entsprechenden Datenbereich). D.h. ab Byte 16 folgen die gelesenen bzw. geschriebenen SPS-Daten.

Einige Erklärungen zu den Meldungen:

Nr | Meldung | Bedeutung
12 | TcSocketHelper.lib::FB_SocketClose[CLIENT]::Handle:0x1000D Local:172.16.11.83[1232] Remote:172.16.11.17[1099], error:0x00000000 | TCP/IP-Verbindung (internes Handle: 0x100D) wird Fehlerfrei geschlossen.
11 | NLink.MG[0x1000D]=>MPI-DISCONNECT: 2 | Die interne MPI-Verbindung zum Gerät mit der MPI-Adresse 2 wird geschlossen.
10 | NLink.RX[0x1000D]<=FF 03 12 03 31 00 00 00 02 00 01 00 00 0A 05 01 01 02 03 04 05 06 07 08 09 0A | READ-Response wurde empfangen...
9 | NLink.TX[0x1000D]=>03 FF 08 03 00 00 31 00 02 00 01 00 00 0A 05 01 | READ-Request wurde gesendet...
8 | NLink.RX[0x1000D]<=FF 03 08 02 31 00 00 00 02 00 01 00 00 0A 05 02 | WRITE-Response wurde empfangen...
7 | NLink.TX[0x1000D]=>03 FF 12 02 00 00 31 00 02 00 01 00 00 0A 05 02 01 02 03 04 05 06 07 08 09 0A | WRITE-Request wurde gesendet...
6 | NLink.RX[0x1000D]<=FF 03 12 01 31 00 00 00 02 00 01 00 00 0A 05 01 01 02 03 04 05 06 07 08 09 0A | READ-Response wurde empfangen (10 Byte: 01 02 03 04 05 06 07 08 09 0A erfolgreich empfangen).
5 | NLink.TX[0x1000D]=>03 FF 08 01 00 00 31 00 02 00 01 00 00 0A 05 01 | READ-Request wurde gesendet.
4 | NLink.MG[0x1000D]<=MPI-CONNECT: 2 | Die interne MPI-Verbindung zum Gerät mit der MPI-Adresse 2 wird geöffnet.
3 | NLink.RX[0x1000D]<=FF 03 08 00 31 00 00 00 02 00 01 00 00 0A 05 02 | WRITE-Response wurde empfangen (nur Quittierung).
2 | NLink.TX[0x1000D]=>03 FF 12 00 00 00 31 00 02 00 01 00 00 0A 05 02 01 02 03 04 05 06 07 08 09 0A | WRITE-Request wurde gesendet (10 Byte: 01 02 03 04 05 06 07 08 09 0A werden in die Fremdsteuerung geschrieben).
1 | TcSocketHelper.lib::FB_SocketConnect::Handle:0x1000D Local:172.16.11.83[1232] Remote:172.16.11.17[1099], error:0x00000000 | TCP/IP-Verbindung (internes Handle: 0x100D) wird Fehlerfrei hergestellt.


Sample

Beispiele

Die Kommunikationsparameter in den Beispielprojekten müssen passend zu Ihrer Konfiguration eingestellt werden.

SPS Project Fremdsystem Adapter Kommunikationsparameter Datenbereich-Parameterwerte Beschreibung
Sample01.zip S5 Ethernet-Adapter: IBH Link S5++
  • Protokoll: IBH S5 Lan Link Protokoll
  • Transport: TCP/IP
  • IP-Adresse: '172.16.11.16'
  • Portnummer: 2002
  • Datenbereich: DB
  • Datenbausteinnummer: 16
  • 1 Wort (2 Bbyte) schreiben ab Startadresse (Wortoffset): 9
  • 10 Worte (20 Byte) lesen ab Startadresse (Wortoffset): 0
 Es wird auf die Daten vom Datenbaustein Wortweise zugegriffen.
Sample02.zip S7 Ethernet-Adapter: IBH Link S7++
  • Protokoll: NetLink MPI-Proltokoll (NL-MPI)
  • Transport: TCP/IP
  • IP-Adresse: '172.16.11.17'
  • Portnummer: 1099
  • MPI-Adresse: 2
  • Datenbereich: DB
  • Datenbausteinnummer: 1
  • 10 Byte schreiben ab Startadresse (Byteoffset): 0
  • 10 Byte lesen ab Startadresse (Byteoffset): 0
 Es wird auf die Daten vom Datenbaustein Byteweise zugegriffen.

Zusätzlich zu dem angewählten Datenbereich wird auch der Betriebsstatus der Steuerung ausgelesen (STOP, RUN, START...).