Beschreibung
Im folgenden Bild ist dargestellt, wie die zu übertragenden Konfigurationsdaten im Konfigurations-DB abgelegt werden.
Die Konfigurationsdaten bestehen also aus genau einem Feld und mehreren Teilfeldern:
-
Das Feld besteht aus einem Kopf und den Teilfeldern. Der Kopf wiederum besteht aus folgenden Elementen:
-
field_type_id (Datentyp INT): Null
-
field_id (Datentyp INT): Null
-
subfield_cnt (Datentyp INT): Anzahl der Teilfelder
-
-
Jedes Teilfeld besteht wiederum aus einem Kopf (subfield_type_id, subfield_length, subfield_mode) und den teilfeldspezifischen Parametern. Jedes Teilfeld muss aus einer geraden Anzahl von Bytes bestehen.
Für subfield_mode sind die folgenden Werte zulässig:
-
1: permanente Gültigkeit der Konfigurationsdaten
-
2: temporäre Gültigkeit der Konfigurationsdaten einschließlich Löschen bestehender permanenter Konfigurationsdaten
Hinweis
Derzeit ist genau ein Feld zulässig. Dessen Parameter field_type_id und field_id müssen den Wert Null haben. Weitere Felder mit anderen Werten für field_type_id und field_id bleiben zukünftigen Erweiterungen vorbehalten.
-
Zulässige Teilfelder
|
subfield_type_id |
Name des Teilfelds |
Erläuterung |
|---|---|---|
|
30 |
SUB_IP_SUITE_IPV4 |
IP-Parameter: IP-Adresse, Subnetzmaske, Router-Adresse |
|
40 |
SUB_NOS |
PROFINET IO-Gerätename (Name of Station) |
Typdefinitionen für das Teilfeld "SUB_IP_SUITE_IPV4"
|
Name |
Datentyp |
Startwert |
Beschreibung |
|
|---|---|---|---|---|
|
SUB_IP_SUITE_V4 |
Struct |
|||
|
Id |
INT |
30 |
subfield_type_id |
|
|
len |
INT |
18 |
subfield_length |
|
|
mode |
INT |
1 |
subfield_mode (1: permanent, 2: temporär) |
|
|
ipaddr_3 |
BYTE |
b#16#C8 |
IP-Adresse high byte: 200 |
|
|
ipaddr_2 |
BYTE |
b#16#0C |
IP-Adresse high byte: 12 |
|
|
ipaddr_1 |
BYTE |
b#16#01 |
IP-Adresse low byte: 1 |
|
|
ipaddr_0 |
BYTE |
b#16#90 |
IP-Adresse low byte: 144 |
|
|
snmask_3 |
BYTE |
b#16#FF |
Subnetzmaske high byte: 255 |
|
|
snmask_2 |
BYTE |
b#16#FF |
Subnetzmaske high byte: 255 |
|
|
snmask_1 |
BYTE |
b#16#FF |
Subnetzmaske low byte: 255 |
|
|
snmask_0 |
BYTE |
b#16#00 |
Subnetzmaske low byte: 0 |
|
|
router_3 |
BYTE |
b#16#C8 |
Router high byte: 200 |
|
|
router_2 |
BYTE |
b#16#0C |
Router high byte: 12 |
|
|
router_1 |
BYTE |
b#16#01 |
Router low byte: 1 |
|
|
router_0 |
BYTE |
b#16#01 |
Router low byte: 1 |
|
Typdefinitionen für das Teilfeld "SUB_NOS"
|
Name |
Datentyp |
Startwert |
Beschreibung |
|
|---|---|---|---|---|
|
SUB_NOS |
Struct |
|||
|
id |
INT |
40 |
subfield_type_id |
|
|
len |
INT |
246 |
subfield_length |
|
|
mode |
INT |
1 |
subfield_mode (1: permanent, 2: temporär) |
|
|
nos |
ARRAY[1..240] of BYTE |
0 |
Gerätename: Sie müssen das ARRAY ab dem ersten Byte belegen. Wenn das ARRAY länger ist als der zu vergebende Gerätename, müssen Sie nach dem eigentlichen Gerätenamen ein Nullbyte eintragen (konform zu IEC 61158-6-10). Andernfalls wird nos zurückgewiesen, und die Anweisung "IP_CONF" trägt den Fehlercode DW#16#C0809400 in STATUS ein. Wenn Sie das erste Byte mit Null belegen, wird der Gerätename gelöscht. |
|
Der Gerätename unterliegt folgenden Einschränkungen:
-
Beschränkung auf 240 Zeichen insgesamt (Kleinbuchstaben, Ziffern, Bindestrich oder Punkt)
-
Ein Namensbestandteil innerhalb des Gerätenamens, d. h. eine Zeichenkette zwischen zwei Punkten, darf maximal 63 Zeichen lang sein. Ein Namensbestandteil darf nicht mit dem Zeichen "-" beginnen und auch nicht mit diesem Zeichen enden.
-
Keine Sonderzeichen wie Umlaute, Klammern, Unterstrich, Schrägstrich, Blank etc. Der Bindestrich ist das einzige erlaubte Sonderzeichen.
-
Der Gerätename darf nicht mit den Zeichen "-" und "." beginnen und auch nicht mit diesen Zeichen enden.
-
Der Gerätename darf nicht mit Ziffern beginnen.
-
Der Gerätename darf nicht die Form n.n.n.n haben (n = 0, ... 999).
-
Der Gerätename darf nicht mit der Zeichenfolge "port-xyz" oder "port-xyz-abcde" beginnen (a, b, c, d, e, x, y, z = 0, ... 9).
-
Die Zeichenfolge ".." innerhalb des Gerätenamens ist nicht zulässig.
Hinweis
Sie können das ARRAY "nos" auch kürzer als 240 Bytes anlegen, wobei die Mindestlänge 2 Bytes beträgt. In diesem Fall müssen Sie die Variable "len" (Länge des Teilfelds) entsprechend anpassen.