_address
Attribut (neutral) | Typ | Beschreibung |
---|---|---|
_active | bool |
Eine Peripherieadresse kann mit dem Attribut _address.._active aktiv bzw. inaktiv geschaltet werden. Eine inaktive Adresse existiert zwar, die Attribute können auch gesetzt und abgefragt werden, der Treiber verwendet diese aber nicht. Das heißt, bei inaktiver Adresse können für diesen DP keine Werte an die SPS geschickt bzw. von der SPS empfangen werden. Es wird für diesen DP keine Verbindung zur SPS aufgebaut. Ebenso wenig werden Konflikte mit anderen Adresskonfigs geprüft. |
_connection | string | In Verwendung durch manche Treiber. |
_datatype | int | Bestimmt den Datentyp des Wertes in der Peripherie und legt damit die notwendige Typkonvertierung (Transfomation) des Wertes zwischen WinCC OA und Peripherie fest. Die Bedeutung der Werte ist treiberspezifisch (siehe Tabellen unten). |
_direction | int | Setzt den Eingangs- bzw. Ausgangsmodus der Adresse. Die verschiedene Moden sind in Tabelle "Peripherieadresse "_address..direction" unten angegeben. Das Attribut repräsentiert die Bits 0-4 des _mode Attributes. |
_drv_ident | string | Dieses Attribut enthält den Treibertyp (Z.B. „MODBUS“ für den Modbus Treiber). |
_internal | bool |
Setzt das Internal-Bit. Mögliche Werte: TRUE/FALSE Dieses Bit kann verwendet werden, um eine Adresse speziell zu behandeln. Ob es verwendet wird und wie, hängt vom spezifischen Treiber ab. Dieses Attribut repräsentiert das Bit 5 des _mode Attributes. |
_interval | time | Intervall. Obsolet. |
_lowlevel | bool | Setzt das LowLevel Filter-Bit. Mögliche Werte: TRUE/FALSE. Damit wird der LowLevel Alt/Neuvergleich ein bzw. ausgeschaltet. Dieses Attribut repräsentiert Bit 6 des _mode Attributes. |
_mode | char | Dieses Attribut enthält den Adressmodus. Es kombiniert die Attribute _direction, _internal und _lowlevel. D.h. das Attribut _mode wird durch die drei Attribute ersetzt. |
_offset | uint16 | Dieses Attribut dient für die Speicherung optionaler Adressinformationen des spezifischen Treibers. |
_poll_group | dpid |
Dieses Attribut enthält den Verweis auf eine Pollgruppe. In dieser Pollgruppe sind die Polling-Parameter definiert. Dadurch werden die Attribute _interval und _start obsolete. Für Pollgruppen siehe Kapitel Pollgruppen. ACHTUNG: Beachten Sie, dass beim Anlegen von Pollgruppen das _address-Panel erneut geöffnet werden muss, da die erstellte Pollgruppe möglicherweise nicht gleich angezeigt wird. Die Pollgruppe wird hier nur dann gesetzt, wenn sie korrekt mit Systemnamen + Datenpunktnamen für das Zielsystem angegeben wurde. Ansonsten wird die Pollgruppe auch nicht im Para angezeigt. |
_reference | string | Der Referenzstring gibt die Adresse der Daten in der Peripherie an. Der Aufbau des Adressstrings ist treiberspezifisch. Siehe z.B. Definition der Peripherieadressen des Modbus/TCP Treibers |
_start | time | Startzeit. Dieses Attribute ist obsolete |
_subindex | uint16 | Der Subindex erlaubt einen Zugriff auf Daten, die zu einer Peripherieadresse gehören. Also z.B. individuelle Bits in einem 16Bit Wort. |
_type | int | Art der Peripherieanbindung. |
Konstanten für .._type
CTRL Konstante | Int Wert | Beschreibung |
---|---|---|
DPCONFIG_NONE | 0 | Keine Peripherieadresse |
DPCONFIG_PERIPH_ADDR_MAIN | 16 | Allgemeine Peripherieadresse |
Peripherieadresse "_address.._datatype"
Im Folgenden werden die Integer-Konstanten der Transfomationsarten für die verschiedenen Treiber aufgelistet. Diese Konstanten werden im jeweiligen Adresspanel des Treibers gesetzt und dann vom Treiber ausgewertet. D.h. der Treiber führt die entsprechende Umwandlung durch.
BACnet
Transformationsart | Integer | Beschreibung |
---|---|---|
DEFAULT | 800 | Default. Die notwendige Transformation wird automatisch bestimmt. |
BOOLEAN | 801 | Boolean |
UNSIGNED INTEGER | 802 | 32bit unsigned integer |
SIGNED INTEGER | 803 | 32bit signed integer |
REAL | 804 | 32bit floating point number |
DOUBLE | 805 | 64bit double precision floating point number |
OCTETS | 806 | Byte string |
STRING | 807 | Text string |
BITSTRING | 808 | Bit string |
ENUMERATED | 809 | Enumeration type |
DATE | 810 | BACnet date |
TIME | 811 | BACnet time |
DATETIME | 822 | BACnet date time |
DNP3
Transformationsart | Integer | Beschreibung |
---|---|---|
ANALOGINPUT | 210 | Analog input |
ANALOGOUTPUT | 211 | Analog output |
BINARYINPUT | 212 | Binary output |
BINARYCOMMAND | 213 | Command |
COUNTER | 214 | Counter |
ASSIGNCLASS | 215 | Assign class |
EIP
Transformationsart | Integer | Beschreibung |
---|---|---|
UNDEFINED | 770 | undefiniert |
INT16 | 771 | 16-Bit Integer signed |
INT32 | 772 | 32-Bit Integer signed |
UINT16 | 773 | 16-Bit Integer unsigned |
UINT32 | 774 | 32-Bit Integer unsigned |
CHAR | 775 | Charakter |
FLOAT | 776 | Fließkommazahl |
BIT | 777 | Bit |
Bit in WORD | 778 | Bit eines 16Bit Wortes |
BIT in DWORD | 779 | Bit eines 32Bit Wortes |
STRING | 780 | String |
BLOB | 781 | Blob |
IEC
Transformationsart | Integer | Beschreibung |
---|---|---|
UNDEFINED | 520 | Undefiniert |
SIQ | 521 | Einzelmeldung mit Qualitätskennung |
DIQ | 522 | Doppelmeldung mit Qualitätskennung |
VTI | 523 | Wert mit Zwischenstellungsanzeige |
NVA | 524 | Normierter Wert |
SVA | 525 | Skalierter Wert |
R32 | 526 | R32-IEEE, verkürzte Gleitkommazahl |
BCR | 527 | Dualer Zählerstand |
SEP | 528 | Einzelne Schutzmeldung |
SPE | 529 | Schutzanregungsmeldungen |
OCI | 530 | Meldungen zum Ausgangsstromkreis der Schutzeinrichtung |
BSI | 531 | Binär dargestellte Zustandsinformation |
SCO | 532 | Einzelbefehl |
DCO | 533 | Doppelbefehl |
RCO | 534 | Schrittschaltbefehl |
SCD | 535 | Zustands und Zustandsänderungs-Erkennung |
COI | 536 | Initialisierungsursache |
PRIVAT | 537 | Private Nutzdaten mit applikationsspezifischem Aufbau. |
EMPTY | 538 | Transformationstyp für ein Telegramm, das keine Nutzdaten enthält. |
INTERROGATION | 539 | GQ, Counter Request |
FBP | 540 | Prüfbitmuster |
CP16 | 541 | 2-Byte Zeit |
CP24 | 542 | 3-Byte Zeit |
CP56 | 543 | 7-Byte Zeit |
DBCR | 545 | Zählwert 6 Octet BCD |
FBCR | 546 | 8 Octet Gleitkommazahl |
MODBUS
Transformationsart | Integer | Beschreibung |
---|---|---|
UNDEFINED | 560 | undefiniert |
INT16 | 561 | 16-Bit Integer signed |
INT32 | 562 | 32-Bit Integer signed |
INT64 | 571 | 64-Bit Integer signed |
UINT16 | 563 | 16-Bit Integer unsigned |
UINT32 | 564 | 32-Bit Integer unsigned |
CHAR | 565 | Charakter |
FLOAT | 566 | Fließkommazahl |
BIT | 567 | Bit |
BOOLEAN_AS_BYTE | 568 | Bit als Byte |
STRING | 569 | Text |
BLOB | 570 | Blob |
DOUBLE | 572 | 64-Bit IEEE 754 Fließkommazahl |
FLOAT with timestamp | 573 | Fließkommazahl mit Zeitstempel |
Transformation type | Integer | Description |
---|---|---|
UNDEFINED | 560 | undefiniert |
INT16 | 561 | 16-Bit integer signed |
INT32 | 562 | 32-Bit integer signed |
INT64 | 571 | 64-Bit integer signed |
UINT16 | 563 | 16-Bit integer unsigned |
UINT32 | 564 | 32-Bit integer unsigned |
UINT64 | 574 | 64-Bit integer unsigned |
CHAR | 565 | Character |
FLOAT | 566 | Fließkommazahl |
BIT | 567 | Bit |
BOOLEAN_AS _BYTE | 568 | Bit als Byte |
STRING | 569 | Text |
BLOB | 570 | Blob |
DOUBLE | 572 | 64-Bit IEEE 754 Fließkommazahl |
FLOAT with timestamp | 573 | Fließkommazahl mit Zeitstempel |
MOD10 SIZE 2 | 575 | SPS spezifische Transformationsart MOD10 mit der größe von 2 Registern. |
MOD10 SIZE 3 | 576 | SPS spezifische Transformationsart MOD10 mit der größe von 3 Registern. |
MOD10 SIZE 4 | 577 | SPS spezifische Transformationsart MOD10 mit der größe von 4 Registern. |
OPC
Transformationsart | Integer | Beschreibung |
---|---|---|
DEFAULT | 0 | Default |
UNDEFINED | 480 | Undefiniert |
INT16 | 481 | 16-Bit Integer signed |
INT32 | 482 | 32-Bit Integer signed |
UCHAR | 483 | Character unsigned |
FLOAT32 | 484 | 32-Bit Float |
FLOAT64 | 485 | 64-Bit Float |
BOOL | 486 | Bool |
STRING | 487 | String |
UINT16 | 488 | 16-Bit Integer unsigned |
UINT32 | 489 | 32-Bit Integer unsigned |
TIME | 490 | Zeit |
BITSTRING | 491 | Bitmuster |
OPC UA
Transformationsart | Integer | Beschreibung |
---|---|---|
DEFAULT | 750 | Default |
BOOLEAN | 751 | Bool |
SBYTE | 752 | Short Byte |
BYTE | 753 | Byte |
INT16 | 754 | 16-Bit Integer signed |
UINT16 | 755 | 16-Bit Integer unsigned |
INT32 | 756 | 32-Bit Integer signed |
UINT32 | 757 | 32-Bit Integer unsigned |
INT64 | 758 | 64-Bit Integer signed |
UINT64 | 759 | 64-Bit Integer unsigned |
FLOAT | 760 | Fließkommazahl |
DOUBLE | 761 | Fließkommazahl, doppelte Genauigkeit |
STRING | 762 | String |
DATETIME | 763 | Datum & Uhrzeit |
GUID | 764 | Unique Identifier |
BYTESTRING | 765 | Byte String |
XMLELEMENT | 766 | XML Element |
NODEID | 767 | Knoten ID |
LOCALIZEDTEXT | 768 | Lokalisierter Text |
RK512
Transformationsart | Integer | Beschreibung |
---|---|---|
UNDEFINED | 240 | undefiniert |
BYTE | 241 | Byte |
UBYTE | 242 | unsigned Byte |
WORD | 243 | Wort |
UWORD | 244 | Unsigned Wort |
DWORD | 245 | Doppelwort |
UDWORD | 246 | Doppelwort unsigned |
FLOAT | 247 | Float |
BCD | 248 | 2-Byte BCD |
BCD4 | 249 | 4-Byte BCD |
KC | 250 | Counterformat |
KT | 251 | Timerformat |
BIT | 252 | Bit |
STRING | 253 | String |
LBYTE | 254 | lower Byte eines Wortes |
RBYTE | 255 | upper Byte eines Wortes |
SBUS
Transformationsart | Integer | Beschreibung |
---|---|---|
UNDEFINED | 1001 | undefiniert |
BOOLEAN | 1002 | 16-Bit Integer signed |
INT32 | 1003 | 32-Bit Integer signed |
UINT32 | 1004 | 32-Bit Integer unsigned |
FLOAT | 1005 | Fließkommazahl |
STRING | 1006 | String |
SIM
Transformationsart | Integer | Beschreibung |
---|---|---|
UNDEFINED | 0 | undefiniert |
BOOLEAN | 1 | Bit (boolscher Wert) |
INT8 | 2 | 8-Bit Integer signed |
INT16 | 3 | 16-Bit Integer signed |
INT32 | 4 | 32-Bit Integer signed |
UINT8 | 5 | 8-Bit Integer unsigned |
UINT16 | 6 | 16-Bit Integer unsigned |
UINT32 | 7 | 32-Bit Integer unsigned |
FLOAT | 8 | Fließkommawert |
VISIBLE | 9 | Text |
OCTET | 10 | Oktet string |
DATE | 11 | Datum |
TIME | 12 | Die Zeit |
TIME DIFF | 13 | Die Zeitdifferenz |
BITSTRING | 14 | Bitstring |
REVERSE BITSTRING | 15 | Bitstring mit umgekehrter Bitreihenfolge |
SINAUT
Transformationsart | Integer | Beschreibung |
---|---|---|
DEFAULT | 720 | Default |
BIT | 721 | Bit |
BIT32 | 722 | 32-Bit |
FLOAT32 | 723 | 32-Bit Fließkommawert |
INT16 | 724 | 16-Bit Integer |
INT32 | 725 | 32-Bit Integer |
UINT28 | 726 | 28-Bit Integer unsigned |
SNMP
Transformationsart | Integer | Beschreibung |
---|---|---|
UNDEFINED | 660 | Undefinierter Datentyp |
INT32 | 661 | 32-Bit integer signed |
UINT32 | 662 | 32-Bit integer unsigned |
UIN64 | 663 | 64-Bit integer unsigned |
OID | 664 | Objekt Identifier (int-Array oder String) |
OCTET | 665 | Octal number |
DISPLAYSTRING | 666 | Octet string, C-artiger string 0-255, string Repräsentation, nicht druckbare Zeichen werden ignoriert |
DATETIME | 667 | Oktett string, Länge: 8 oder 11 |
MACADDRESS | 668 | Oktett string, Länge: 6 |
IPADDRESS | 669 | Oktett string, Länge: 4 |
BITS | 670 | Bitstring (SNMP v2) |
DISPLAYHEXSTRING | 673 | Oktett, C-artiger string 0-255, hex Repräsentation |
SSI
Transformationsart | Integer | Beschreibung |
---|---|---|
UNDEFINED | 40 | undefiniert |
UINT32 | 41 | 32-Bit Integer unsigned |
INT32 | 42 | 32-Bit Integer signed |
TRAFO | 43 | Trafostufenstellung |
FLOAT | 44 | Float |
COMBVAL | 45 | Kombinationswert |
STRTRANSP | 46 | String mit transparenten Daten |
SINGLEALARMS | 47 | 16 Einzelmeldungen |
8DOUBLEIND | 48 | 8 Doppelmeldungen |
4DOUBLEIND | 49 | 4 Doppelmeldungen |
1DOUBLEIND | 50 | Einzeldatenpunktmeldung |
BINARYCOMMAND | 51 | Befehl |
S7
Transformationsart | Integer | Beschreibung |
---|---|---|
UNDEFINED | 700 | Default |
INT16 | 701 | 16-Bit Integer signed |
INT32 | 702 | 32-Bit Integer signed |
UINT16 | 703 | 16-Bit Integer unsigned |
BYTE | 704 | Byte |
FLOAT | 705 | Fließkommawert |
BIT | 706 | Bit (boolscher Wert) |
STRING | 707 | Text |
UINT32 | 708 | 32-Bit Integer unsigned |
DATETIME | 709 | Datum/Zeit Variable (verwendbar für S7 300 bzw. S7 400 Modelle) |
BLOB | 710 | Blob |
BITSTRING | 711 | Bitmuster |
TimeOfDay | 713 | Zeit |
S5Time | 714 | Zeit für S5 Kompatibilität |
DATETIMELONG | 718 | Datum/Zeit Variable (verwendbar für S7 1200 Modelle) |
Int32WithQuality | 719 | 32-Bit Integer signed mit (optionaler) Qualitätsinformation |
UInt32WithQuality | 720 | 32-Bit Integer unsigned mit (optionaler) Qualitätsinformation |
FloatWithQuality | 721 | Fließkommawert mit (optionaler) Qualitätsinformation |
S7Plus
Transformationsart | Integer | Beschreibung |
---|---|---|
DEFAULT | 1001 | Default |
BOOL | 1002 | Boolscher Wert |
BYTE | 1003 | 8-Bit Integer unsigned |
WORD | 1004 | Bitfeld (16-Bit) |
DWORD | 1005 | Bitfeld (32-Bit) |
LWORD | 1006 | Bitfeld (64-Bit) |
USINT | 1007 | 8-Bit Integer unsigned |
UINT | 1008 | 16-Bit Integer unsigned |
UDINT | 1009 | 32-Bit Integer unsigned |
ULINT | 1010 | 64-Bit Integer unsigned |
SINT | 1011 | 8-Bit Integer signed |
INT | 1012 | 16-Bit Integer signed |
DINT | 1013 | 32-Bit Integer signed |
LINT | 1014 | 64-Bit Integer signed |
REAL | 1015 | 32-Bit Float |
LREAL | 1016 | 64-Bit Float |
DATE | 1017 | Datum, Anzahl der seit 1.1.1970 verstrichenen Tage |
DATETIME | 1018 | Datum und Zeit |
TIME | 1019 | Zeit in Millisekunden (32-Bit), Wertebereich von -24d 20h 31m 23s 648ms bis +24d 20h 31m 23s 647ms |
TIME_OF_DAY | 1020 | Anzahl der Millisekunden seit Tagesbeginn (32-Bit) |
LDATETIME | 1021 | Datum und Zeit |
LTIME | 1022 | Zeit in Nanosekunden (64-Bit), Wertebereich von -106751d 23h 47m 16s 854ms 775us 808ns bis +106751d 23h 47m 16s 854ms 775us 807ns |
LTOD | 1023 | Anzahl der Millisekunden seit Tagesbeginn (64-Bit) |
DTL | 1024 | 12 Byte Struct, Wertebereich von 1970-01-01-00:00:00.0 bis 2554-12-31-23:59:59.999999999 |
S5TIME | 1025 | Zeit in Millisekunden (16-Bit), Wertebereich von 0h 0m 0s 0ms bis 2h 46m 30s 0ms |
STRING | 1026 | String |
WSTRING | 1027 | String |
Peripherieadresse "_address.._direction"
CTRL-Konstante | Int-Wert | Beschreibung |
---|---|---|
DPATTR_ADDR_MODE_UNDEFINED | 0 | Undefiniert |
DPATTR_ADDR_MODE_OUTPUT | 1 | Ausgang. Dieser Modus verwendet eine Gruppenverbindung auf Adress-Subindizes. Ändert sich der Wert eines Subindexes, ruft der Treiber alle Werte aller Subindizes in einem Hotlink ab und erzeugt ein Telegramm mit diesen Werten für die Peripherie. Mit anderen Worten: Der Treiber erhält immer alle Werte, wenn sich einer der Subindizes ändert. |
DPATTR_ADDR_MODE_INPUT_SPONT | 2 | Eingang für spontane Daten |
DPATTR_ADDR_MODE_INPUT_SQUERY | 3 | Eingang für Einzelabfragen |
DPATTR_ADDR_MODE_INPUT_POLL | 4 | Eingang für Polling (zyklische Abfrage). |
DPATTR_ADDR_MODE_OUTPUT_SINGLE | 5 | Ausgang mit Einzelverbindung auf Adress-Subindizes. Ändert sich ein Subindex, erhält der Treiber nur den Wert des geänderten Subindex in einem Hotlink. Das heißt, wenn die Nachricht aus mehreren Subindizes besteht, werden die Daten der fehlenden Subindizes mit 0 belegt. Wenn für eine Adresse nur ein Subindex existiert, verhalten sich die Adressmodi OUTPUT und OUTPUT_SINGLE gleich. |
DPATTR_ADDR_MODE_IO_SPONT | 6 | Ein-/Ausgang für spontane Daten |
DPATTR_ADDR_MODE_IO_POLL | 7 | Ein-/Ausgang für Polling (zyklische Abfrage). |
DPATTR_ADDR_MODE_IO_SQUERY | 8 | Ein-/Ausgang für Einzelabfragen |
DPATTR_ADDR_MODE_AM_ALERT | 9 | HW-Alarmbehandlung. Über diese Adresse werden externe Alarme ausgelöst |
DPATTR_ADDR_MODE_INPUT_ON_DEMAND | 10 | Momentan nicht in Verwendung. |
DPATTR_ADDR_MODE_INPUT_CYCLIC_ON_USE | 11 | Eingang für Polling, Abfrage erfolgt nur, wenn eine Anmeldung (z.B. dpConnect() oder dpQueryConnect() ) auf das Element vorhanden ist. |
DPATTR_ADDR_MODE_IO_ON_DEMAND | 12 | Momentan nicht in Verwendung. |
DPATTR_ADDR_MODE_IO_CYCLIC_ON_USE | 13 | Ein-/Ausgang für Polling, Abfrage erfolgt nur, wenn eine Anmeldung auf das Element vorhanden ist. |
DPATTR_ADDR_MODE_INPUT_SPONT_ON_USE |
14 | Eingabe, Adresse wird nur dann zur Übertragung abonniert, wenn für das Element eine Abfrage (z.B. dpConnect() oder dpQueryConnect() ) existiert. |
DPATTR_ADDR_MODE_IO_SPONT_ON_USE |
15 | Input/Output, Adresse wird nur zur Übertragung abonniert, wenn eine Abfrage (z.B. dpConnect() oder dpQueryConnect() ) für das Element existiert. |
DPATTR_ADDR_MODE_INTERNAL | 32 | Obsolet. Verwenden Sie stattdessen das Attribut _internal. |
DPATTR_ADDR_MODE_LOW_LEVEL_FLAG | 64 | Obsolet. Verwenden Sie stattdessen das Attribut _lowlevel. |
Beispiel
Legt ein "_address" Config an, zur Einstellung der Parameter für die Peripherie-Adresse eines DPEs und setzt den Treibertyp auf „ABB.
main()
{
dpSetWait("TestDP_1.element:_address.._type", DPCONFIG_PERIPH_ADDR_MAIN,
"TestDP_1.element:_address.._drv_ident", "ABB");
}
Weitere Details zum Config "_address" finden Sie im Kapitel Modul PARA - _address (Peripherie-Adresse).