AMS Header
Datenfeld | Größe | Beschreibung |
---|---|---|
AMSNetId Target | 6 Bytes | Dieses ist die AMS-NetId der Station, für die das Paket bestimmt ist. Anmerkung siehe unten. |
AMSPort Target | 2 Bytes | Dieses ist der AMSPort derjenigen Station, für die das Paket bestimmt ist. |
AMSNetId Source | 6 Bytes | Hier steht die AMSNetId der Station, von dem aus das Paket geschickt wurde. |
AMSPort Source | 2 Bytes | Hier steht der AMSPort der Station, von dem aus das Paket geschickt wurde. |
Command Id | 2 Bytes | |
State Flags | 2 Bytes | |
Data Length | 4 Bytes | Größe des Datenbereichs. Die Einheit ist Byte. |
Error Code | 4 Bytes | AMS-Fehlernummer. Siehe ADS Return Codes. |
Invoke Id | 4 Bytes | Frei benutzbares 32-Bit Feld. Üblicherweise dient dieses Feld dazu eine Id zu übertragen, die es ermöglicht ein empfangenden Response einen zuvor gesendeten Request wieder zuzuordnen. |
Data | n Bytes | Datenbereich. Im Datenbereich sind die Parameter der entsprechenden ADS-Kommandos enthalten. |
AMS Net Id
Die AMS-NetId besteht aus 6 Bytes und adressiert den Sender oder den Empfänger. Eine mögliche AMS-NetId wäre z.B. 172.16.17.10.1.1. Bei diesem Beispiel ist die Speicheranordnung wie folgt:
Die AMS-NetId ist rein logisch und hat in der Regel keinen Bezug zur IP-Adresse. Die AMS-NetId wird am Zielsystem konfiguriert. Beim PC wird hierzu das TwinCAT System Control benutzt. Verwenden Sie andere Hardware, so finden Sie in der entsprechenden Dokumentation Hinweise zum Einstellen der AMSNetId.
Command Id
Cmd | Beschreibung |
---|---|
0x0000 | Invalid |
0x0001 | |
0x0002 | |
0x0003 | |
0x0004 | |
0x0005 | |
0x0006 | |
0x0007 | |
0x0008 | |
0x0009 |
Andere Kommandos sind nicht definiert oder werden intern benutzt. Deshalb darf die Command Id auch nur die oben aufgezählten Werte enthalten!
State Flags
Flag | Beschreibung |
---|---|
0x0001 | 0: Request / 1: Response |
0x0004 | ADS Kommando |
Das erste Bit kennzeichnet, ob es sich um ein Request oder um ein Response handelt. Das dritte Bit muss auf 1 gesetzt werden, um Daten per ADS-Kommandos auszutauschen. Die anderen Bits sind nicht definiert oder werden zu anderen Zwecken intern benutzt. Deshalb müssen die restlichen Bits auf 0 gesetzt werden!
Flag | Beschreibung |
---|---|
0x000x | TCP Protokoll |
0x004x | UDP Protokoll |
Bit Nr. 7 kennzeichnet, ob es über TCP oder UDP Übertragen werden soll.