Connection Timeout Options - ADT A1-ETHERNET Instruction Manual

Multiprotocol ethernet interface
Table of Contents

Advertisement

into various bits of existing registers. What this means is that when a discrete is accessed, that discrete
is resolved by the interface into a specific register, and a specific bit within that register. The pattern of
discrete-to-register/bit relationships can be described as follows:
Discrete 1...16 map to register #1, bit0...bit15 (bit0=LSB, bit15=MSB)
Discrete 17...32 map to register #2, bit0...bit15, and so on.
Arithmetically, the discrete-to-register/bit relationship can be described as follows: For any given
discrete, the register in which that discrete resides can be determined by:
Where the bracket symbols " " indicate the "floor" function, which means that any fractional result (or
"remainder") is to be discarded, with only the integer value being retained.
Also, for any given discrete, the targeted bit in the register in which that discrete resides can be
determined by:
Where "discrete" ∈[1...65535], "bit" ∈[0...15], and "%" is the modulus operator, which means that any
fractional result (or "remainder") is to be retained, with the integer value being discarded (i.e. it is the
opposite of the "floor" function).
For clarity, let's use Equation 3 and Equation 4 in a calculation example. Say, for instance, that we are
going to read coil #34. Using Equation 3, we can determine that coil #34 resides in register #3, as
3.0625 = 3 r1 = 3. Then, using Equation 4, we can determine that the bit within register #3 that coil
#34 targets is (34-1)%16 = 1, as 33%16 = mod(2 r1) = 1. Therefore, reading coil #34 will return the value
of register #3, bit #1.

9.1.4 Connection Timeout Options

In the studio's Project panel, navigate to A1-ETHERNET...Ethernet...Modbus/TCP Server. The
following configuration options will determine the actions to be taken if the connection is abnormally
terminated or lost. While this feature provides an additional level of fail-safe functionality for those
applications that require it, there are several ramifications that must be understood prior to enabling this
capability. Note that a certain degree of caution must be exercised when using the timeout feature to
avoid "nuisance" timeouts from occurring.
Enable Supervisory Timer
This timer provides the ability for the driver to monitor timeout occurrences on the overall receive activity
for all connections.
The timer will start after receiving the first request. Once the timer is started, it cannot be disabled.
If the driver experiences no receive activity for more than the Timeout time setting, then the driver
assumes that the client or network has experienced some sort of unexpected problem, and will
perform the Timeout Action.
Enable Connection Timer
This timer provides the ability for the driver to monitor timeout occurrences and errors within the scope of
each client connection.
If a particular open socket experiences no activity for more than the Timeout time setting, then the
driver assumes that the client or network has experienced some sort of unexpected problem, and
will close that socket and perform the Timeout Action.
If a socket error occurs (regardless of whether the error was due to a communication lapse or
abnormal socket error), the driver will perform the Timeout Action. Specifically, do not perform
inadvisable behavior such as sending a request from the client device, and then closing the socket
prior to successfully receiving the server's response. The reason for this is because the server will
experience an error when attempting to respond via the now-closed socket. Always be sure to
manage socket life cycles "gracefully", and do not abandon outstanding requests.
Timeout
Defines the maximum number of milliseconds for a break in network communications before a timeout
event will be triggered.
discrete
+
15
register
=
16
bit
=
(
discrete
1
)
%
16
46
Equation 3
Equation 4

Advertisement

Table of Contents
loading

This manual is also suitable for:

Imaster a1

Table of Contents