...
or for structured I/O tags with configured Destination column
{;}{S7:[connectionname]}DB<no>,<type><address>{, <items>} {;}{S7:[connectionname]}DI<no>,<type><address>{, <items>} {;}{S7:[connectionname]}<object>{<type>}<address>{, <items>}
...
; | Optional parameter. It disables the I/O tag from communication, stops I/O tag address check when it is saved, and can be useful when the communication with device is activated or debugged. | ||||||||||||||||||||||||||||
S7:[connectionname] | Optional parameter. It does not contains any useful information but it is supported only because of backward compatibility with Siemens SimaticNET OPC server. | ||||||||||||||||||||||||||||
DB | Data block. S7 variable identifier from "Data block". | ||||||||||||||||||||||||||||
DI | Instance data block. S7 variable identifier from " Instance data block". | ||||||||||||||||||||||||||||
<no> | Number of "data block" or "instance data block". | ||||||||||||||||||||||||||||
<object> | Specification of block or area in S7 PLC. Possible values:
| ||||||||||||||||||||||||||||
<type> | Data type of S7. It is not specified for T, C and S objects.
| ||||||||||||||||||||||||||||
<address> | Address of variable. Possible types:
| ||||||||||||||||||||||||||||
<items> | number of elements for structured I/O tags with configured Destination column. Every read element (1,2,3 .. items) will be written to one item of destination column. Structured I/O tags are not supported for objects of type T (timers), C (counters) and S (system status lists) nor for data type STRING. Note: All items elements are read at once. If e.g. 100 elements of type D (double word) are configured, it means reading of a block of 400 bytes. If a smaller size of packet (S7 PDU size) is agreed on during establishment of connection, reading of this I/O tag will not be performed and trace file of line will contain an error message. Agreed S7 PDU size is minimum of size offered by D2000 (parameter S7 PDU Size) and supported size of specific device. Note: syntax of address when specifying number of elements is compatible with Siemens S7 OPC server (e.g. S7:[MyPLC]DB120,INT1050, 24), which facilitates simple transition from OPC communication to Siemens SIMATIC S7 ISO on TCP protokol by configuring a new line, a new station and then changing parent of I/O tags (e.g. via CSV or XML export and import). Example of addresses:
|
...
There have been reported cases when a communication with a device (specifically, Simatic S7-1200) was established, but after sending a read request the device didn't send required data but a packet with ResultCode = 0x8104, that is 33028 decimal.
According to http://stackoverflow.com/questions/23745407/libnodave-error-while-reading-from-siemens-s7-1200-0x8104 the problem is insufficient access rights. The cause is a new security option that was added to TIA Portal 12 and higher that by default disallows remote access to read/update blocks. Without this option disabled, only Siemens tools have access to the data.
Configuration: in TIA, under the properties for the CPU project, select "Protection"; there is an option for "Permit access with PUT/GET communications from remote partner" and set also "Access level" according to the following screenshot.
In case of TIA Portal version 14 the setting "Permit access with PUT/GET communications from remote partner" is on a dedicated tab "Connection mechanisms" under "Protection & Security":
...