
Communications
configuring
System- and communication configuring D7-SYS - SIMADYN D
3-155
Edition 12.2003
When assigning the offset, the number of all of the values located before
the block involved (blocks) and their data type (assigned memory range
in bytes) are taken into account. It is especially important that possible
overlaps are avoided. Gaps between individual values are not permitted
(e.g. for reserve ranges).
However, the offset is not specified in the number of bytes, but as a
multiple of the data type of the associated function block!
In this case, the offset, starting from an entry in bytes must be divided
by 2 (for INT types) or by 4 (for REAL/DINT types) and this result
must be configured at the offset input.
Using this technique, it is automatically guaranteed, that the data to be
transferred is available at optimum addresses, i.e. addresses which can
be quickly accessed. However, if the data is unfavorably structured, this
can result in memory cells which cannot be used (refer to the example
diagram below). In order to avoid this, for example, BYTE- and INT types
should be individually distributed over the memory area, but should be
arranged one after the other (consecutively).
Absolute addresses are used in the SIMATIC S7 program which are
obtained from the FM 458 address and the offset of the associated
S7RD/S7WR block in bytes (!):
Absolute address = (offset x F) + FM 458 I/O address
FM 458 I/O address
: The start address, configured in HW Config for the
I/O range of the associated FM 458
Offset
= Value at the associated S7RD/S7WR function block
F
= Data type length in number of bytes:
F = 1
for S7WR_B, S7RD_B
F = 2
for S7WR_I, S7RD_I
F = 4
for S7WR, S7RD, S7WR_D, S7RD_D
Absolute address
for SIMATIC-CPU