About Siemens Addressing
The S7 protocol does not support tag browsing. Therefore, you must configure all tags in the Designer. This can be done either manually, as needed, or by importing bulk using the Tags CSV import functionality.
To manually specify each address
-
From the Designer, in the Tag Browser, right-click on Tags folder, and then go to New Tag > OPC Tag.
-
In the Tag Editor window, as an example, you can set the following values:
Name: Tag
Data Type: Int4
OPC Server: choose Ignition OPC-UA Server from the dropdown
OPC Item Path: [S71200]IW0, the S71200 device name goes in the square brackets then you give the address to PLC which in this example is IW0 (Word at Offset 0 in the Inputs area). The Configuring Siemens Addressing section below, explains how your can construct these addresses. -
Click OK.
Now you can see the Temp tag in the Tag Browser.
Configuring Siemens Addressing
You need a device name plus a tag address to create a tag. The device name is a known, but the tag address needs to be configured. Once you have both the device name and tag address you enter them in the in the OPC Item Path field of the Tag Editor window using the [device_name]address format, where device_name is the name of the device and address is the configured tag address which is described here.
Tag addresses are made up of three different components: Area, DataType, and Offset.
|
Area Syntax |
|
DataBlocks |
DBn, |
|
Inputs |
I |
|
Outputs |
Q |
|
Flags |
M |
|
Timers |
T |
|
Counters |
C |
|
|
Data Type Syntax |
Signedness |
Bit |
X |
N/A |
Byte |
B |
Unsigned |
Char |
C |
Signed |
Word |
W |
Unsigned |
Int |
I |
Signed |
DWord |
D |
Unsigned |
DInt |
DI |
Signed |
Real |
REAL |
Signed |
String |
STRING or STRING.LEN |
N/A |
To form an address, you combine syntax for the desired Area and DataType with an Offset into that area.
Examples |
|
Area+Data Type+Offset |
|
IB0 |
Byte at Offset 0 in the Inputs area |
IW0 |
Word at Offset 0 in the Inputs area |
DB500,DI8 |
DInt at Offset 8 in DataBlock 500 |
ISTRING24.50 |
A String of length 50 starting at offset 24 in the |
IX20.3 |
Bit 3 of the Byte at Offset 20 in the Inputs area |
T0 |
Timer at offset 0 (No DataType is specified for |
C0 |
Counter at offset 0 (No DataType is specified for |
Offsets
It is important to note that offsets are absolute. IW0 and IW1 share a byte. To get 2 consecutive, non-overlapping words you need to address IW0 and IW2.
Bits
Bits are addressed by using the Bit DataType (X) and appending .bit to the end, where bit is in the range [0-7]. When addressing a Bit at a given offset, that offset is always treated as a Byte.
Strings
Strings are assumed to be in the S7 string format and have a max length of 210.
Timers
Timers are scaled up to a DWord and converted from S5 time format so they can represent the time in milliseconds without requiring any multipliers. When you write to a timer it is automatically converted from milliseconds into S5 time format for you. A DataType is not specified when accessing Timers.
Counters
Counters in the PLC are stored in BCD. The driver automatically converts to/from BCD for you and exposes any counter tags as UInt16 values. A DataType is not specified when accessing Counters.
Next ...
-
add link here