_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 unsigned 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 ist mit Gruppe verbunden. Bei der Änderung eines Subindizes bekommt der Treiber die Werte von allen Subindizes im Hotlink und baut daraus das Telegramm für die Peripherie auf. Mit anderen Worten, bekommt der Treiber immer alle Werte, wenn sich eines der Subindizes ändert.

Das ist der Standardmodus für Ausgänge.

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 für Einzelabfragen. Bei der Änderung eines Subindizes bekommt der Treiber nur den Wert des geänderten Subindizes im Hotlink. D.h. wenn das Telegramm aus mehreren Subindizes besteht, werden die Daten der fehlenden Subindizes mit 0 belegt.
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_INTERNAL 32 Treiberintern. Spezielle Adresse für treiberinterne Verwendung. Die Verwendung hängt vom spezifischen Treiber ab.
DPATTR_ADDR_MODE_LOW_LEVEL_FLAG 64 LowLevel Alt/Neu-Vergleich

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).