Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

TCP vs UDP: Differences between the protocols. The main difference between TCP (transmission control protocol) and UDP (user datagram protocol) is that TCP is a connection-based protocol and UDP is connectionless. While TCP is more reliable, it transfers data more slowly. UDP is less reliable but works more quickly. 


NVL or Network Variables List


AdvantagesDisadvantages
Easy to useUses UDP protocol, UDP provides a simpler and less reliable form of data transmission
Data transmission efficiency: NVL sends data in packets

Delivery is not guaranteed

Absence of a main node: NVL does not have a binding to a main or subordinate node, making it more flexible in usage and managementOnly UDP protocol or it's limited protocol support

Optional data reading: Since data can be available to all nodes, there is no guarantee that all nodes will read or use this data


Modbus TCP

AdvantagesDisadvantages
Reliability: Modbus TCP protocol ensures reliable data transmission with acknowledgment of receiptUse of master and slave in data transmission
Wide supportLimited data transmission speed: More complex data transmission protocol.
Delivery is guaranteed

...

A Modbus address is a 16-bit unsigned integer that is transmitted with every request to indicate which data should be read or written. Address occupies two characters in the Modbus message and the most significant byte is sent first (big-endian).


Supported function codes

Functions codeFunctionsSpesifics
FC01Read CoilsThis function code allows the master to query the state of slave’s coils.read coils request is always 8 bytes long. 
read coils response is at least 6 bytes long.
FC02Read Discrete InputsThis function code allows the master to query the state of slave’s discrete inputs.read discrete inputs request is always 8 bytes long.
read discrete inputs response is at least 6 bytes long.
FC03Read Holding RegistersThis function code allows the master to query the state of slave’s holding registers.read holding registers request is always 8 bytes long. 
read holding registers response is at least 7 bytes long.
FC04Read Input RegistersWith this function code, master queries the state of slave’s input registers.read input registers request is always 8 bytes long. 
read holding registers response is at least 7 bytes long.
FC05Write Single CoilSets the value of a single slave’s coil.write single coil request is always 8 bytes long.
response?
FC15Write Multiple CoilsSets the value of a single slave’s holding register.
FC06Write Single RegisterSets the value of a consecutive range of slave’s coils.
FC16Write Multiple RegistersSets the value of a consecutive range of slave’s holding registers.
FC23Read/Write Multiple RegistersIt combines reading and writing functions, allowing the master to read and write values of multiple holding registers in a single request


To send and receive data we need to use 2 channels:

  • Write Multiple Registers (Function Code 16)
  • Read Holding Registers (Function Code 03)



Start configuration with a client/master Modbus TCP Client/Master

...