ADS-Zugriff einer übergeordneten Steuerung

Der Building-Automation-Raum-Controller unterstützt die Protokolle Beckhoff ADS und Modbus TCP.
Die TCP-Port-Nummer beträgt für das ADS-Protokoll 48898. Die UDP-Port-Nummer beträgt für das ADS-Protokoll 48899.
Die TCP-Port-Nummer von Modbus TCP wurde auf den Wert 502 standardisiert

In diesem Teil der Dokumentation wird der Zugriff über das Beckhoff ADS-Protokoll beschrieben. ADS ist die Abkürzung für Automation Device Specification und beschreibt eine geräte- und feldbusunabhängige Schnittstelle. Das Beckhoff ADS-Protokoll ist auf das TCP/IP- oder UDP/IP-Protokoll aufgesetzt. Es ermöglicht dem Benutzer innerhalb des Beckhoff-Systems über nahezu beliebige Verbindungswege mit allen angeschlossenen Geräten zu kommunizieren und diese zu parametrieren. Dafür können ADS-Funktionsbausteine im TwinCAT PLC Control verwendet werden. Die Funktionsbausteine sind in der Bibliothek TcSystem.lib enthalten.

ADS-Zugriff einer übergeordneten Steuerung 1:
Bibliothek TcSystem.lib

Aufbau des ADS-Protokolls

ADS-Zugriff einer übergeordneten Steuerung 2:
Aufbau des ADS-Protokolls

AMSNetID

Die AMSNetID beschreibt das anzusprechende Gerät. Diese wird aus der eingestellten TCP/IP-Adresse und zusätzlichen 2 Byte erstellt. Diese zusätzlichen 2 Byte bestehen aus "1.1" und sind nicht veränderbar.
Beispiel von einem BC9191 :

IP-Adresse 172.16.21.10
AMSNetID 172.16.21.10.1.1

Port-Nummer

Die Portnummer unterscheidet im angeschlossenen Gerät Unterelemente.
Port 800: lokale Prozessdaten (z. B. BC9191)

Index Group

Die Index Group unterscheidet innerhalb eines Ports verschiedene Daten.
0x4020 Merker
0x4021 Merker Bit

Index Offset (Wertebereich)

Gibt den Offset an, ab welchem Byte gelesen oder geschrieben werden soll.
Merker 0...4095
Merker Bit 0...32760

Beispiel Merker: Port 800 / Index Group 16#4020 / Byte Offset 100

ADS-Zugriff einer übergeordneten Steuerung 3:
Beispiel: schreiben von Merkern mit dem FB ADSWrite

Beispiel Merker Bit: Port 800 / Index Group 16#4021 / Bit Offset 792

ADS-Zugriff einer übergeordneten Steuerung 4:
Beispiel: schreiben von Merkerbits mit dem FB ADSWrite