Troubleshooting/diagnostics
1. In the event of connection problems the PING command can be used to ascertain whether the external controller can be reached via the network connection. If this is not the case, check the configuration/power supply and the network connection of the adapter module. Instructions for configuring the adapter module can be found in the manufacturer documentation for the adapter.
2. Sniffer tools such as Wireshark enable logging of the entire network communication. The log can then be analysed by Beckhoff support staff.
3. Check the hardware and software requirements described in this documentation (adapter manufacturer, model, firmware version).
4. If you access the external controller via the IBH Link S5++ or IBH Link S7++ adapter in conjunction with TCP/IP as transport protocol, no connections have to be configured/parameterised in the external controller. In the event of data access problems, check whether the corresponding data areas (flags, data blocks etc. ) in the external controller are configured correctly and available.
5. Check the input parameters that are transferred to the function blocks (network address, MPI address, data block number etc.) for correctness. Check whether the function block issues an error code. The documentation for the error codes can be found here: Overview of error codes.
6. A simple debug output is integrated in the TwinCAT PLC library. This must be activated before establishing the connection at the FB_NlinkOpen function block. Open the TwinCAT System Manager and activate the LogView window. The following image shows some debug output strings.
Example:
Communication via the IBH Link S7++ (NL-MPI protocol via TCP/IP). Only complete frames are logged (16 byte header + PLC data from the corresponding data area), i.e. byte 15 is followed by the read and written PLC data.
Some explanations regarding the messages:
No |
Message |
Meaning |
---|---|---|
12 |
TcSocketHelper.lib::FB_SocketClose[CLIENT]::Handle:0x1000D Local:172.16.11.83[1232] Remote:172.16.11.17[1099], error:0x00000000 |
TCP/IP connection (internal handle: 0x100D) is closed error-free. |
11 |
NLink.MG[0x1000D]=>MPI-DISCONNECT: 2 |
The internal MPI connection to the device with MPI address 2 is closed. |
10 |
NLink.RX[0x1000D]<=FF 03 12 03 31 00 00 00 02 00 01 00 00 0A 05 01 01 02 03 04 05 06 07 08 09 0A |
READ response was received. |
9 |
NLink.TX[0x1000D]=>03 FF 08 03 00 00 31 00 02 00 01 00 00 0A 05 01 |
READ request was sent… |
8 |
NLink.RX[0x1000D]<=FF 03 08 02 31 00 00 00 02 00 01 00 00 0A 05 02 |
WRITE response was received... |
7 |
NLink.TX[0x1000D]=>03 FF 12 02 00 00 31 00 02 00 01 00 00 0A 05 02 01 02 03 04 05 06 07 08 09 0A |
WRITE request was sent... |
6 |
NLink.RX[0x1000D]<=FF 03 12 01 31 00 00 00 02 00 01 00 00 0A 05 01 01 02 03 04 05 06 07 08 09 0A |
READ response was received... (10 bytes: 01 02 03 04 05 06 07 08 09 0A received successfully). |
5 |
NLink.TX[0x1000D]=>03 FF 08 01 00 00 31 00 02 00 01 00 00 0A 05 01 |
READ request was sent. |
4 |
NLink.MG[0x1000D]<=MPI-CONNECT: 2 |
The internal MPI connection to the device with MPI address 2 is opened. |
3 |
NLink.RX[0x1000D]<=FF 03 08 00 31 00 00 00 02 00 01 00 00 0A 05 02 |
WRITE response was received... (only acknowledgement). |
2 |
NLink.TX[0x1000D]=>03 FF 12 00 00 00 31 00 02 00 01 00 00 0A 05 02 01 02 03 04 05 06 07 08 09 0A |
WRITE request was sent... (10 bytes: 01 02 03 04 05 06 07 08 09 0A are written to the external controller). |
1 |
TcSocketHelper.lib::FB_SocketConnect::Handle:0x1000D Local:172.16.11.83[1232] Remote:172.16.11.17[1099], error:0x00000000 |
TCP/IP connection (internal handle: 0x100D) is established error-free. |