Zum Inhalt springen
DE EN

Protokolle und Feldgeräte

  • absolute Adressierung
  • TIA, symbolische Adressierung
  • S7 300/400 und 1200 & 1500

Die Unterstützten Datentypen sind von der Adressierungsart (absolut oder symbolisch) anhängig. Sie können diese der folgenden Tabelle entnehmen.

DatentypIm Edge (nur Lesen)Von SPS unterstützt
Edge VarTypeEdge InfluxTypeBitsSymbolischAbsolutS7-300/400S7-1200S7-1500
Binärzahlen
S7_BoolFLOAT1
S7_ByteFLOAT8
S7_WordFLOAT16
S7_DWordFLOAT32
S7_LWordFLOAT64  
Ganzzahlen
S7_SIntFLOAT8 
S7_IntFLOAT16
S7_DIntFLOAT32
S7_USIntFLOAT8 
S7_UIntFLOAT16 
S7_UDIntFLOAT32 
S7_LIntFLOAT64  
S7_ULIntFLOAT64  
Gleitpunktzahlen
S7_RealFLOAT32
S7_LRealFLOAT64 
Zeiten
S7_S5TimeSTRING16 
S7_TimeSTRING32
FLOAT
(Millisek.)
S7_LTimeSTRING64  
FLOAT
(Nanosek.)
Datum und Uhrzeit
S7_DateSTRING16
FLOAT
(Tage)
S7_Time_Of_DaySTRING32
FLOAT
(Millisek.)
S7_LTODSTRING64  
FLOAT
(Ticks)
S7_Date_And_TimeSTRING64 
S7_LDTSTRING64  
S7_DTLSTRING96 
Zeichen
S7_CharSTRING8
S7_WCharSTRING16 
S7_StringSTRINGn+2 Bytes
S7_WStringSTRINGn+2 Words 
Array
S7_Array  
Einzelzugriff auf jedes Element mit seiner spezifischen Adresse

Max. Dimensionen: 6
Max. Anzahl Bytes: 32.767
Max. Dimensionen: 6
Max. Anzahl Bytes: 65.535
Max. Dimensionen: 6
Max. Anzahl Bytes: 16.777.216
Zeiger
Pointer 48 
Any 80 
Variant 0 

Werden die Messgrößen manuell über das UI oder über einen Import mittels CSV-Datei, sind bei der Angabe der Adressen folgende Dinge zu beachten.

Für absolut adressierten Datenzugriff muss das Adressschema dem gängigen, vollqualifizierten Schema aus Datenblock-Nummer, Operand und Byte-/Bit-Offset folgen.

Aufbau: DB<Nr>.DB<B|W|D|X><ByteOffset>.<BitOffset>; wobei zu beachten ist:

  • Der durch DBB, DBD, DBX oder DBW beschriebene Operandentyp kann gegenwärtig beliebig genutzt werden, könnte auch bei allen Datentypen auf DBB stehen (dient lediglich der gewohnten Lesbarkeit durch den SPS-Programmierer)
  • Der Bit-Offset ist optional, kann (inklusive des trennenden Punkts) bedarfsweise weggelassen werden
  • Leerzeichen sind zu entfernen

Beispiele:

  • DB9.DBX200.2 Adressiert das zweite Bit des 200. Bytes im Datenblock Nr. 9
  • DB30.DBW558 Adressiert das 558. Byte des Datenblocks Nr. 30

Symbolische Adressierung

Für symbolisch adressierten Datenzugriff setzt sich die Adresse hierarchisch aus der Programmstruktur, Gruppen, mit einem Punkt getrennt, zusammen. Sie beginnt immer mit den beiden Gruppenelementen PLC (nicht dem Gerätenamen wie bspw. PLC_1 !) und Blocks. Zu beachten:

  • Enthalten Gruppenelemente oder Variablen einen Punkt, so ist dieser Adressteil in doppelte Anführungszeichen (ASCII-Code 0x22) zu setzen
  • Enthalten Gruppenelemente oder Variablen ein doppeltes Anführungszeichen, so ist dieser Adressteil in doppelte Anführungszeichen zu setzen und zusätzlich das enthaltene Anführungszeichen zu verdoppeln
  • Die Groß-/Kleinschreibung ist zu beachten
  • Gewissen Sonderzeichen erfordern ebenfalls die Maskierung mit doppeltes Anführungszeichen (z.B.: <>[ ] . { } )

Beispiele:

  • PLC.Blocks.TestDB.MyFunkyVariable Adressiert eine Variable namens MyFunkyVariable im (direkt der Hauptstruktur untergeordneten) Datenblock namens TestDB
  • PLC.Blocks.TestDB."My.Funky.Struktur".MyFunkyVariable Adressiert eine Variable namens MyFunkyVariable in einer UDT-Instanz My.Funky.Struktur im (direkt der Hauptstruktur untergeordneten) Datenblock namens TestDB
  • PLC.Blocks.TestDB."My""Funky""Struktur"."My""Funky""Variable" Adressiert eine Variable namens My"Funky"Variable in einer UDT-Instanz My"Funky"Struktur im (direkt der Hauptstruktur untergeordneten) Datenblock namens TestDB 
  • PLC.Blocks.TestDB.TestArray.MyFunkyElement[28] Adressiert das 28. Element des eindimensionalen Arrays TestArray im (direkt der Hauptstruktur untergeordneten) Datenblock namens TestDB
  • PLC.Blocks.TestDB.TestArray.MyFunkyElement[2,1,28] Adressiert das Element Nr. [2,1,28] des mehrdimensionalen Arrays TestArray im (direkt der Hauptstruktur untergeordneten) Datenblock namens TestDB
FunktionKommentar
Unterstützte ZugriffsmethodenREAD_COIL, READ_DISCRETE_INPUT, READ_INPUT_REGISTER, READ_HOLDING_REGISTER
Unterstützte DatentypenBOOLEAN*, INT16, UINT16, INT32, UINT32, INT64, UINT64, FLOAT, DOUBLE, STRING**
*Boolean nur für Bit-level Zugriffsmethoden (read coils, read discrete input) unterstützt.
** Der Datentyp STRING ist standardmäßig auf 8 Zeichen eingestellt. Wird eine andere Zeichenanzahl gewünscht, muss aktuell Kontakt mit dem Support aufgenommen werden.
**Slave ID **
(Modbus RTU)Bei Modbus RTU kann die “Slave ID” angegeben werden. Standard = 1
 
Byte-Reihenfolge
(endianness)Big-endian*, little-endian* (Standard)
* Für Datentypen größer als 16 Bit (INT32, UINT32, INT64, UINT64, FLOAT, DOUBLE, STRING). Definiert in welchem REGISTER (nicht Bytes) das höchste Bit enthält.
Byte-Reihenfolge ist ein optionaler Konfigurationsparameter, welcher aktuell nicht im UI eingerichtet werden kann. Ist eine Abweichung vom Standard erforderlich, kontaktieren Sie bitte den Support.