Inhaltsverzeichnis
Profinet IO-Device
The PROFINET IO device driver allows to provide datapoint/bytes as PROFINET IO device. 340 bytes can be transferred in each direction.
Please find the required GSD-file here:
for Version 2.31, up to gateway firmware version V4, size 9 KB, the:
https://www.mbs-solutions.de/s/GSDML-V231-MBS-MICRO3004-20150206.zip
and for Version 2.35, from gateway firmware version V5, size 10 KB, the:
https://www.mbs-solutions.de/s/GSDML-V235-MBS-MICRO3004-20210316.zip
The name of the gateway in Profinet (NameOfStation) is 'ugw-micro' when delivered. See profinet-name.
The name of the PROFINET IO device drivers is: pnetd
The routing address of the PROFINET IO device driver is: 1190
The data point file for the first PROFINET driver is: pnetd1.txt
The configuration file for global settings of the PROFINET driver is: pnetd1.cfg
The PROFINET IO-device driver as well as all other gateway drivers following data point definitions are valid:
Type | Description |
---|---|
M | Integer value (binary data points, counters) which can/shall only be read by the gateway |
S | Integer value which can be either read or written by the gateway. (to M-BUS writing is not possible) |
X | Floating point value (with decimal place) which can/shall only be read by the gateway |
Y | Floating point value (with decimal place) which can be either read or written by the gateway. (to M-BUS writing is not possible) |
A | String, is used e.g. with BACnet Trends and ESPA4.4.4 data points |
Addresses are defined like this:
„<type> <byte>[.<bit>]“
Depending on whether values or single bits must be transferred, the following definition is used:
Range of value | Description | |
---|---|---|
Typ | inbyte inbit outbyte outbit | byte value that can be read from the controller single bit that can be read from the controller byte value that can be written from the controller single bit that can be written from the controller |
byte | 0 - 339 | up to version 4, x byte in in- resp. output register |
byte | 0 - 1007 | from version 5, x byte in in- resp. output register |
bit | 0 - 7 | single bit within the x byte |
The address of the first byte that can be transferred to the controller is defined in the file pnetd1.txt like this:
[Y inbyte 0]
To tell the driver how to interpret the values found at the named address, a format must be defined for each data point:
format = <format> [F:<fact>]
<format> can have following options:
<format> | Description |
---|---|
BIT | single bit |
UINT8 | 8bit unsigned |
SINT8 | 8bit signed |
UINT16 | 16bit unsigned |
SINT16 | 16bit signed |
UINT32 | 32bit unsigned |
SINT32 | 32bit signed |
FLOAT32 | 32bit floating point (IEEE) |
FLOAT64 | 64bit floating point (IEEE) |
Formats exceeding 8 bits require more than one byte, successive bytes are used. Those bytes cannot be used for other data points anymore!
For the interpretation of the data points of some devices it may be necessary to swap the byte order. This can be defined in the file pnet1.cfg as parameter.
The parameter „F:“ allows for each data point to define a certain factor. The value received will be diverted by the given factor.
In case integer values shall be converted to floating point value, the data point on the sending side is multiplied by 10 and divided by 10 on receiver's side. A temperature value of 20.5 °C is shifted to „205“ and transmitted as an integer value. Factor can be any floating point value. If no factor is set, the default is 1.
Typical data point definitions can be:
[S inbit 1.0] name = digital mode query = pe format = BIT writecache = yes
[M outbit 1.0] name = digital given value query = pe format = BIT
[S inbyte 15] name = multistate value e.g. 0, 1, 2 for Off, On, Auto query = pe format = UINT8 writecache = yes
[M outbyte 16] name = multistate given value z.B. level switch 0, 1, 2 for Off, On, Auto query = pe format = UINT8
[Y inbyte 17] name = Temperature value (Byte 17+18+19+20) query = pe format = FLOAT32 writecache = yes
[X outbyte 17] name = Temperature given value, one decimal point (Byte 17+18) query = pe format = SINT16 F:10
From version 5 additional predefined data points, that provide information about the status of the device LEDs:
[M led_bf] name = led bus failure query = pe
[M led_sf] name = led software failure query = pe
[M led_mt] name = led maintenance query = pe
[M led_rdy] name = led ready query = pe
[M led_link 1] name = led link 1 query = pe
[M led_link 2] name = led link 2 query = pe
Data transfer
In Step7 or TIA you have to take care that the data have to be transferred to the periphery. With TIA, a „:P“ must be added after the actual address (e.g. „E700“). In Step7 this would be e.g. „PED700“.
IP addresses and device names
The IP address of the gateway has nothing to do with the IP address of the ProfiNet side. A setting of the IP address on the ProfiNet side must be done via Step7 or TIA, an adjustment via the interface of the gateway is not possible.
If the network interface of the gateway and the network interface of the ProfiNet are located in the same network (e.g. on the same VLAN/switch), the IP addresses must be different, otherwise communication problems may occur.
If several ProfiNet gateways are in use in a network, it must also be ensured that the names of the devices must also be changed. It is not allowed to operate several devices with identical names in one network.
When delivered, the IP address of the ProfiNet card is 192.168.16.227 (/24 or 255.255.255.0) and the device name is „ugw-micro“.
Procedure for changes to the hardware configuration
When changing the hardware configuration of the gateway, a reboot of the system is usually sufficient.
It may sometimes happen that no communication is established after a reboot, although both sides are configured identically. In this case, it is sufficient to switch the gateway off for a longer time (approx. 30 seconds). If this workaround does not work, please contact support.
Notes, possible problems
Communication is not established, bus error LED lights up
If the bus error LED lights up at the gateway, or alternatively the communication only works partially, the device in Step7/TIA does not go online, then most likely the hardware configuration of S7 and gateway do not match. The blocks used in the S7 must also be created in the same order in the ProfiNet configuration file (pnetd1.cfg). It should also be ensured that no empty lines are defined on the S7 side in the hardware configuration, these also prevent a correct communication setup.