Fieldserver Configuration Manual: This Manual Provides Instructions For The Following Products
Fieldserver Configuration Manual: This Manual Provides Instructions For The Following Products
Configuration Manual
Description
FS-B35 Series FieldServer
QuickServer FieldServer
Technical Support
Please call us for any technical support needs related to the FieldServer product.
MSA Safety
1991 Tarob Court
Milpitas, CA 95035
Website: www.sierramonitor.com
Contact Information
FieldServer Configuration Manual
TABLE OF CONTENTS
1 FieldServer Concepts .......................................................................................................................... 7
1.1 Introduction ..................................................................................................................................... 7
1.2 Application ...................................................................................................................................... 7
1.3 Terminology .................................................................................................................................... 8
1.3.1 Nodes ...................................................................................................................................... 8
1.3.2 Clients and Servers ................................................................................................................. 8
2 Overall Operation Philosophy ............................................................................................................ 9
3 Getting Started – Basic Configuration............................................................................................. 10
3.1 Configuration File Overview ......................................................................................................... 10
3.2 Configuration File Structure .......................................................................................................... 10
3.3 Editing Configuration Files ............................................................................................................ 12
3.4 Testing Configuration Files with DSW32.EXE .............................................................................. 13
3.4.1 Additional Worthwhile DSW32 Checks ................................................................................. 14
4 Map Descriptor Functions ................................................................................................................ 15
4.1 Active vs. Passive Functions ........................................................................................................ 15
4.2 Passive Map Descriptor Functions ............................................................................................... 16
4.2.1 Passive .................................................................................................................................. 16
4.2.2 Passive Client (Passive_Client) ............................................................................................ 16
4.2.2.1 Passive Server Applications ......................................................................................... 16
4.3 Active Map Descriptor Functions .................................................................................................. 17
4.3.1 Read Functions ..................................................................................................................... 17
4.3.1.1 Read Block Continuous (RDBC) .................................................................................. 17
4.3.1.2 Read Block (RDB) ........................................................................................................ 17
4.3.1.3 Active Read Continuous with Sequencing (ARCS) ...................................................... 17
4.3.1.4 Active Read Continuous with Offset (ARCO) ............................................................... 17
4.3.1.5 Active Read at Startup (ARS) ....................................................................................... 17
4.3.1.6 Read Block Continuous Expedite (RDBCE) ................................................................. 17
4.3.1.7 Active Read Discovery on Startup (ARDS) .................................................................. 18
4.3.2 Write Functions...................................................................................................................... 18
4.3.2.1 Write Block on Change (WRBX) ................................................................................... 18
4.3.2.2 Write Block on Change of Value (WRBCOV) ............................................................... 18
4.3.2.3 Write Block Continuous (WRBC) .................................................................................. 18
4.3.2.4 Write Block (WRB) ........................................................................................................ 18
4.3.2.5 Active Write at Startup (AWS) ...................................................................................... 18
4.3.2.6 Active Write on Trigger (AWT) ...................................................................................... 19
5 Data Manipulation Features .............................................................................................................. 20
5.1 Moves ........................................................................................................................................... 20
5.1.1 Simple Moves ........................................................................................................................ 21
5.1.1.1 Simple Move Example .................................................................................................. 21
5.1.1.2 Grouping Data .............................................................................................................. 22
5.1.1.3 Separating Responsible Map Descriptors .................................................................... 23
5.1.1.4 Creating a LonWorks SNVT_Switch from 2 Modbus Registers ................................... 23
5.2 Function Moves – Type Casting ................................................................................................... 24
5.2.1 Functions Available for Type Casting .................................................................................... 24
5.2.2 Converting Two Integers to a Float ....................................................................................... 24
5.2.3 Using Moves to Pack and Unpack Bits to/or from a Register ............................................... 25
5.2.4 Examples ............................................................................................................................... 26
5.2.4.1 Simple Bit Extraction..................................................................................................... 26
5.2.4.2 Simple Bit Packing ........................................................................................................ 26
5.2.4.3 Extracting Bit Groups .................................................................................................... 26
5.2.5 Bit Extraction Application Example........................................................................................ 27
5.2.5.1 Example Configuration ................................................................................................. 28
5.2.6 Task Moves ........................................................................................................................... 29
5.2.6.1 Node Status .................................................................................................................. 29
5.2.7 Match-Pattern ........................................................................................................................ 30
Table of Contents
FieldServer Configuration Manual
Table of Contents
FieldServer Configuration Manual
Table of Contents
FieldServer Configuration Manual
LIST OF FIGURES
Figure 1: Client/Server .................................................................................................................................. 8
Figure 2: FieldServer Operation Theory ....................................................................................................... 9
Figure 3: DSW32 Interface Screen ............................................................................................................. 13
Figure 4: DSW32 Error Screen with Driver Versions .................................................................................. 14
Figure 5: Typical Network Architecture ....................................................................................................... 16
Figure 6: Grouping Data Process ............................................................................................................... 22
Figure 7: Separating Responsible Map Descriptors ................................................................................... 23
Figure 8: Creating a LonWorks SNVT_Switch from 2 Modbus Registers .................................................. 23
Figure 9: Packed Bits Activated .................................................................................................................. 27
Figure 10: Static Server Side Node_ID ....................................................................................................... 48
Figure 11: Dynamic Server Side Node_ID .................................................................................................. 49
Figure 12: FieldServer Timing Diagram ...................................................................................................... 58
Figure 13: Timing Diagram.......................................................................................................................... 60
List of Figures
FieldServer Configuration Manual
1 FIELDSERVER CONCEPTS
1.1 Introduction
The FieldServer functions as a gateway enabling different devices utilizing different protocols to interface
with each other. The FieldServer solves communication and protocol conversion problems and improves
response times in distributed data acquisition and control systems. The extensive driver library available
from MSA Safety provides a wide range of interoperability solutions. For a current list of available drivers
visit the Sierra Monitor website.
The FieldServer also acts as an Ethernet gateway, enabling new and legacy PLCs, RTUs and SCADA
devices to link to Ethernet for plant-wide communications.
Depending on the model, the FieldServer is equipped with combinations of Serial, Ethernet and
LonWorks®1 ports as well as various Fieldbus ports. The internal poll-block caching capability ensures
that data from Server devices is immediately available to the Client devices when needed. Data can be
cached from slower devices or remote units for immediate access by the Client device. See Section 8 for
details.
The Hot Standby option for the FieldServer is available when dual redundancy is required. See ENOTE-
Configuring a FS-B35 FieldServer for Hot Standby Mode for details.
The FieldServer is cloud ready and connects with the SMC Cloud.
NOTE: For details on the SMC Cloud, refer to the SMC Cloud Start-up Guide on the Sierra Monitor
website.
1.2 Application
Today’s plants are integrated, intelligent facilities requiring multiple mechanical and electrical systems to
be controlled from a central processor. Many of these devices are not part of the central automation
system, but that system still needs data input from these devices.
Through its powerful protocol conversion capability, the FieldServer allows system designers and
managers to connect unique instrumentation and sensor devices onto common protocol systems and into
the plant Ethernet backbone. Due to its internal poll-block caching, multiple protocol capability and high
port count, the FieldServer improves data and machine update time compared to conventional HMI
packages using multiple drivers and port expanders.
The FieldServer is designed to enable devices within a facility to communicate with each other or to a
central control station via Serial, Ethernet or other communication busses. Two-way communication is
easily available between the various process and control systems.
1
LONWORKS® is a trademark of Echelon Corporation registered in the United States and other countries.
Page 7 of 84
FieldServer Configuration Manual
1.3 Terminology
1.3.1 Nodes 2
The devices communicating with the FieldServer may be referred to as “Stations”, “Nodes”, “RTU’s”,
“DCS’s”, “Workstations”, “SCADA Systems”, “MMI’s”, “Field Devices”, etc. To prevent confusion these
devices are always referred to as Nodes in this manual.
Similarly, “Device Address”, “Station Address”, “Station ID” is always referred to as “Node ID” in this
manual.
MASTER
Client Node
Server Side
FieldServer
Client Side
Server Node
SLAVE
Figure 1: Client/Server
2
Nodes may have the same Node_ID value, so long as they are connected to different ports.
Page 8 of 84
FieldServer Configuration Manual
Client Node
Dat a Hi ghway Pl us
Data Arrays
Location
Client Map Descriptors Client
Side
For example, consider a Modbus PLC with a set of 10 high alarms in address 00001 to 00010.
A Map Descriptor is allocated to fetch Data Objects from Modbus address 00001 length 10 and save this
data to a Data Array named PLC1, offset 20. The high alarm for sensor number 5 on PLC1 is thus stored
in Data Array PLC1; offset 24 (the fifth location starting at offset 20).
A DCS using Allen Bradley DH+ protocol can be configured to access the FieldServer and read the Data
Array. The FieldServer will appear to the DCS as another DH+ PLC. If the Virtual Node PLC1 is
configured to contain the data on sensor 5/PLC1 as a DH+ address B3:57, then the data needed for
address B3:57 will be retrieved from Data Array PLC1, offset 24.
Page 9 of 84
FieldServer Configuration Manual
The Common Information Section allows for the determination of parameters not directly related to any of
the connections.
//===========================================================
//
// Common Information
This title appears on the top line of the FS-GUI screen. It
//
may be used to indicate the configuration version loaded,
Bridge
and the relevant customer/project.
Title
DCC030 CC00103400 V1.00a
//===========================================================
//
Data_Arrays
Data_Array_Name , Data_Format , Data_Array_Length
DA_AI_01 , UInt16 , 200
DA_AO_01 , UInt16 , 200
DA_DI_01 , Bit , 200
DA_DO_01 , Bit , 200
Data Arrays:
Data Arrays are “protocol neutral” data buffers for storage of data to be passed between protocols. It is
necessary to declare the data format of each of the Data Arrays to facilitate correct storage of the relevant
data. More information is available in Appendix C.3.
Page 10 of 84
FieldServer Configuration Manual
The Client Side Connections Section contains the parameters that describe the nature of the physical
connection to the Server Nodes.
//==========================================================
//
// Client Side Connections
//
Connections
Port , Baud , Parity , Data_Bits , Stop_Bits , Protocol , Poll_Delay
P1 , 9600 , None ,8 ,1 , Modbus_RTU , 0.100s
The port to be connected to, defined The protocol for the Timing parameters on the
in terms of connection speed and network connected to this connection allow for fine tuning
properties. port. of communications.
The Client Side Nodes Section defines the logical connection parameters for the Server Nodes
communicating with the FieldServer.
//==========================================================
//
// Client Side Nodes The Node ID of the Server.
//
Nodes
Node_Name , Node_ID , Protocol , Port
PLC 1 ,1 , Modbus_RTU , P1
The Map Descriptor Section contains parameters that describe the address details required to move data
between the FieldServer and an external device and the nature of the data transfer.
//==============================================================
Timing parameters
// Offset in relevant Data Array Node being assist with pacing
// Client Side Map Descriptors to start data access/storage. accessed. of data.
//
Map_Descriptors
Map_Descriptor_Name, Data_Array_Name, Data_Array_Offset , Function, Node_Name, Address, Length, Scan_Interval
CMD_AI_01 , DA_AI_01 ,0 , RDBC , PLC 1 , 30001 , 20 , 1.000s
CMD_AO_01 , DA_AO_01 ,0 , RDBC , PLC 1 , 40001 , 20 , 1.000s
Name assigned to the Map Data Array to be Determines how data is to Number of points
Descriptor. In some used for storage of be fetched/written. The in poll request.
protocols the name data being passed FieldServer is either
becomes the variable name. between protocols. reading, being read, or
writing data. This can be
continuous, or on change.
Page 11 of 84
FieldServer Configuration Manual
The Server Side Sections are functionally the same as their Client Side equivalents, except that Server
parameters are being defined.
/==========================================================
//
// Server Side Connections
//
Connections The protocol for the network
Adapter , Protocol connected to this port.
N1 , Modbus/TCP
//==========================================================
Since the FieldServer is a Server here, this is the ID of
//
the FieldServer (virtual) Node. The FieldServer can
// Server Side Nodes
represent multiple Virtual Node_ID’s in most protocols.
//
Nodes
Node_Name , Node_ID , Protocol
MBP_Srv_11 , 11 , Modbus/TCP
//==============================================================
//
// Server Side Map Descriptors
//
Map_Descriptors
Map_Descriptor_Name , Data_Array_Name , Data_Array_Offset , Function , Node_Name , Address , Length
SMD_DI_01 , DA_DI_01 ,0 , Passive , MBP_Srv_11 , 10001 , 200
SMD_DO_01 , DA_DO_01 ,0 , Passive , MBP_Srv_11 , 00001 , 200
Page 12 of 84
FieldServer Configuration Manual
Check all screens to see if the file is working correctly, paying particular attention to the Error screen.
From the main menu, press "E" to enter the error display screen, and examine the errors listed (refer to
Figure 4). Take note of System Errors or Configuration Errors. These indicate configuration problems in
the configuration file.
Page 13 of 84
FieldServer Configuration Manual
NOTE: "System Overrun" errors may occur in this screen. They are caused as a result of the
simulation and will not cause any problems on the FieldServer.
When the file is free from errors (with the exception of "System Overrun" Errors), download it using the
"D" command from the main menu of the Remote User Interface.
Page 14 of 84
FieldServer Configuration Manual
3
Not all functions are supported by all drivers. Refer to the specific Driver Manual for information on functions supported by
individual drivers.
Page 15 of 84
FieldServer Configuration Manual
4.2.1 Passive
The Passive function will not initiate any communications but waits to be solicited by a remote device and
responds with data accordingly. The Passive function will also accept writes and update the associated
Data Array.
Network Network
Protocol A Protocol B
FieldServer
Some applications require the data Server to actively write data to and from the FieldServer. To do this it
is necessary to change the Client side of the configuration to be passive.
Individual drivers have specific requirements for managing passive communications, but the following
steps are typically required to change the Active Client side of a configuration file to make it a Passive
Client.
• Remove Adapter/Port to Client side Node
• Change Function from RDBC to Passive
• Remove Scan_Interval
• Change Node ID to remote device’s target Device ID
If the Server side remains passive, then every Map Descriptor should have “Passive” as its function.
Consequently, the Server device will write data to the FieldServer’s Data Arrays, and the Client device will
read that data from the same Data Arrays, making the operation of the FieldServer much like that of a
normal data Server on an office network.
Page 16 of 84
FieldServer Configuration Manual
Page 17 of 84
FieldServer Configuration Manual
Page 18 of 84
FieldServer Configuration Manual
Page 19 of 84
FieldServer Configuration Manual
5.1 Moves
The Moves function permits data to be moved from one Data Array to another. The function parameter
within moves allows data manipulation to occur while moving the data. Examples of this are Logic
operation, Integer to floating point conversion, etc. Scaling, Logic and Math are also possible while
moving data.
With the exception of Conditional Moves (Section 5.2.7), each Data Array location may only act as the
target location of one Responsible Move. This ensures that the data source can be uniquely determined
in order to establish source data validity, and so that a write through the target data location is directed to
the appropriate location.
Moves will execute whenever the source data changes or the scan interval (if specified) expires. If a task
move does not have a scan interval defined, a default scan interval of one second is assumed.
A Move operation must specify the following elements:
Data Elements
Source_Data_Array The name of the Data Array from which data is to be copied.
Source_Offset The offset within the Data Array from which data is to be copied.
Target_Data_Array The name of the Data Array to which data is to be copied.
The offset within the Data Array to which data is to be copied. The offset can
Target_Offset be either a hardcoded value or can be obtained from another data array. See
Moves example in Section 5.1.1.1 for more information.
Optional Elements
The number of consecutive source Data Array values to be moved to
Length
consecutive target locations, starting at the respective offsets.
If a task name is specified, the move operation becomes a continuous task on
Task_Name
the FieldServer that is executed at the scan interval specified.
The time interval at which the task will be repeated. A task name must be
Scan_Interval
specified if a scan interval is specified.
Defines move functionality (for example byte order manipulation). Functions
Function
are summarized in Section 5.2.
The name of a Data Array to be used for conditional moves. See Section
Conditional_Data_Array
5.1.1.3 for more information.
The offset into the Conditional_Data_Array where the conditional bits for the
Conditional_Offset move are defined. The value found at this specified location must be non-zero
for the move to be executed. If the value is zero, the move is inhibited.
Page 20 of 84
FieldServer Configuration Manual
Moves
Function , Source_Data_Array , Source_Offset , Target_Data_Array , Target_Offset , Length
Move_Only , Source_DA ,0 , Target_DA , 40 ,5
Page 21 of 84
FieldServer Configuration Manual
One Server
Data Array
Client side Data Array 1 means One Remote Client can
Server Map now poll the
Descriptor is FieldServer using
Server Side Data possible. large poll lengths
Client side Data Array 2 Array without fear of
hitting undefined
registers.
For example, consider a Modbus Client needing registers 40001 through 40050 from the FieldServer. The
poll lengths used to obtain this data are unknown.
This could be configured in the FieldServer Server side as follows:
Configuration 1 Map Descriptor 1 serves up 40001 Length 25
Map Descriptor 2 serves up 40026 Length 25
If the two poll blocks fall within these two address spans, the poll will be successful,
however, if all 50 registers are polled in a single poll it will fail
Page 22 of 84
FieldServer Configuration Manual
Page 23 of 84
FieldServer Configuration Manual
Moves
Function , Source_Data_Array , Source_Offset , Target_Data_Array , Target_Offset , Length
Join_Float , Source_DA ,0 , Target_DA , 40 ,5
Page 24 of 84
FieldServer Configuration Manual
5.2.3 Using Moves to Pack and Unpack Bits to/or from a Register
A register provided by a device often consists of a set of binary values packed together for efficient data
transfer. These registers are normally 16 bits in size but may also be 8 or 32 bits long. Since a register is
read as an analog value by most protocols, these binary values need to be extracted out of the register
into a bit data array before they can be read as useful data. The Bit_Extract Move function has been
created for this purpose.
The Bit_Pack function can be used to pack bits into a register.
The Bit_Move function allows the user the ability to extract a group of bits in one register and place them
singly into another register.
The Bit_Offset keyword can be used to start moving a group of bits from a specified offset within the
register. This keyword may also be used in conjunction with the Bit_Extract and Bit_Pack functions to
specify the first register offset to Extract or Pack.
The Length keyword will always specify the number of bits to be moved in the move operation when using
these three functions. If the length keyword is not used, then only one bit will be moved.
NOTE: The Data_Array_Type being used in source and target Data_Arrays can produce varying results
and care should be taken to use the correct type. For example, when using the Bit_Extract
function, it makes sense to use Byte, UInt16, or Uint32 source Data_Array_Types to extract 8, 16
or 32 bits per register respectively. It also makes sense to use the Bit Data Type for target
Data_Array_Type. However, the FieldServer will allow other types to be used and follow a routine
choice of conversion that may not be considered predictable to all users. For example, if the Float
Data_Type is used as a source type in Bit_Extract, 32 bits per register will be extracted according
to the rounded Integer number being represented in the Float Register. If the Float Data_Type
was used as a target type in Bit_Extract, then each float register would store one binary value
and would only ever represent 1 or 0.
Parameter Function
The function extracts bits out of the source Data_Array Registers at the Data Array offset
specified. The bits are placed into the destination array in sequence. Only one bit is
Bit_Extract
allocated per offset. If the source array is of Bit Data Array type, a straight move is
performed.
The function extracts the binary version of each source offset and packs the bits into the
Data Array offset specified. The number of bits packed depends on the target Data type
Bit_Pack (for example, Bytes will get 8 bits, Floats will get 32, etc.). The length will specify the
number of bits to pack. If the destination Array is a Bit data type, a straight move is
performed.
The function extracts a subset of bits out of a source Register offset and transfers these to
Bit_Move a destination Register offset in packed form. Length specifies the number of bits to be
extracted.
Legal
Keywords Function
Values
The parameter specifies the bit offset within a word to start at when
performing a bit move. For Bit_Extract operations, the source bit offset in the
Bit_Offset* word pointed to by the Source_Offset parameter is implied. For Bit_Pack 0 (default)
operations, the bit offset within the word pointed to by Target_Offset is
implied.
Length* The length parameter specifies the number of bits to be extracted/packed. 1 (default)
Page 25 of 84
FieldServer Configuration Manual
5.2.4 Examples
Moves
Function , Source_Data_Array , Source_Offset , Target_Data_Array , Target_Offset , Length
Bit_Extract , Source_DA ,5 , Target_DA ,0 , 48
Moves
Function , Source_Data_Array , Source_Offset , Target_Data_Array , Target_Offset , Length
Bit_Pack , Source_DA , 10 , Target_DA ,2 , 12
Moves
Function , Source_Data_Array , Source_Offset , Bit_Offset , Target_Data_Array , Target_Offset , Length
Bit_Move , Source_DA ,0 ,8 , Target_DA ,0 ,3
Page 26 of 84
FieldServer Configuration Manual
0 Communications 1
1 Battery Discharge 2
2 Input Failure 4
3 Hardware Shutdown 8
4 DC Ground Fault 16
5 Input CB Open 32
6 Output CB Open 64
7 DC Cap Fuse Blown 128
8 Low Battery Reserve 256
9 Output Overload 512
10 Rectifier Fuse Blown 1024
11-15 Unused
Bits 0 - 10 are each used to specify a unique event, and each has a corresponding integer value
determined by the binary contribution it makes to the integer value. For example, bit 10 has an integer
value of 1024 as its weighting in the integer value is 2 to the power 10.
A single packed bit integer with a value of 1034 signifies a blown rectifier fuse, a hardware shutdown, and
a battery discharge (sum of the values for the corresponding events). The value “1034” has no meaning
as such, but when the integer is “unpacked” the individual data bits communicate the required
information. This is depicted in the following diagram.
Page 27 of 84
FieldServer Configuration Manual
Data Arrays
Data_Array_Name , Data_Format , Data_Array_Length
Source_DA , Uint16 , 200
Target_DA , Bit , 200
Map Descriptors
Map_Descriptor_Name , Data_Array_Name , Data_Array_Offset , Node_Name , Function , Address , Length
CMD_PI_Alarm01_01 , Source_DA ,0 , UPS_01 , RDBC , 40289 , 1
Moves
Function , Source_Data_Array , Source _Offset , Target_Data_Array , Target_Offset , Length
Bit_Extract , Source_DA ,0 , Target_DA ,0 , 10
Page 28 of 84
FieldServer Configuration Manual
Node status bits are only evaluated by the FieldServer when the data is accessed. Since the data is only
accessed on update, the data will be neither accessed nor updated and a move would never occur. This
can be circumvented by giving the move a Task_Name and specifying a Scan_Interval.
Moves
Function , Source_Data_Array , Source_Offset , Target_Data_Array , Target_Offset
Move_Only , DA_Comm_OK ,0 , Target_DA , 40
, Task_Name , Scan_Interval
, PLC1_Status ,1
Page 29 of 84
FieldServer Configuration Manual
5.2.7 Match-Pattern
The match pattern move is used at run time to move a customized single value based on combinations of
values in a Data Array as compared with preloaded customized criteria.
• The user builds a table of patterns (strings of tokens separated by “-“) each linked to a particular
location in a target Data Array.
• A “PATTERN DID NOT MATCH” string may also be defined and linked to a Data Array location.
• A pattern is built based on the values in the Data Array at run time by the move function.
• The pattern built at run time is compared with the preloaded table of patterns. The tokens in each
pattern must match exactly. If the preloaded pattern contains a wildcard (*), that token would not
be compared.
• If the pattern matches a pattern in the table, its value will be stored in the target Data Array at the
specified location.
• If the pattern does not match any of the preloaded patterns in the table a check is done for a
“PATTERN DID NOT MATCH” string in table. If found, the corresponding value will be stored in
the target Data Array.
• If a “PATTERN DID NOT MATCH” string is not defined, a default value of –1 will be stored and an
SDO will be generated prompting the user to add a “PATTERN DID NOT MATCH” record to the
table.
In the example below, a combination of 4 values in a “Tokens” Data Array shows the status. The
FieldServer can perform “match-pattern” arithmetic and store the status as a single number 0 thru 8.
Data_Arrays
Data_Array_Name , Data_Format , Data_Array_Length
Tokens , Byte ,4
Status , Int ,1
Consider the following combinations of 4 values, here * is a wildcard. The token starting with the wildcard
will not be compared.
Data Array Values Status Description Status Value for Device
37 46 46 20 Good 0
36 * * 20 Channel disabled 1
* 45 * 20 Fault indicated2 2
* 43 * 20 Fault, aeration indicated 3
* * 45 20 Spacing indicator 4
* * 43 20 Zeromatc channel fault 5
* * 42 20 Empty Pipe 6
* * 37 20 hi/lo flowrate 7
00 00 00 00 comm. Error 8
None of the above 111
Page 30 of 84
FieldServer Configuration Manual
Offset_Table
Offset_Table_Name , Table_String , Table_Index_Value , Table_User_Value , Length
SPR4052 , 37-46-46-20 ,0 , 10 ,4
SPR4052 , 36-*-*-20 ,1 , 20 ,4
SPR4052 , *-45-*-20 ,2 , 30 ,4
SPR4052 , *-43-*-20 ,3 , 40 ,4
SPR4052 , *-*-45-20 ,4 , 50 ,4
SPR4052 , *-*-43-20 ,5 , 60 ,4
SPR4052 , *-*-42-20 ,6 , 70 ,4
SPR4052 , *-*-37-20 ,7 , 80 ,4
SPR4052 , 00-00-00-00 ,8 , 90 ,4
SPR4052 , PATTERN DID NOT MATCH , 111 , 100 ,1
The “Status” Data Array will contain only the numbers 0 thru 8 or 111 depending upon the combinations
existing in the “Tokens” Data Array.
4
“*” can be inserted in place of any token, if the value for that token is unimportant.
5
2550 is a negative value; there are two dashes in front of it “--“; one of these is considered a delimiter.
Page 31 of 84
FieldServer Configuration Manual
Page 32 of 84
FieldServer Configuration Manual
The Conditional Move that executed last becomes the Responsible Move by which data validity is
determined, and through which write operations are routed. If none of the Conditional Moves targeting a
specific location have executed, the Conditional Move defined last acts as the Responsible Move.
Page 33 of 84
FieldServer Configuration Manual
Page 34 of 84
FieldServer Configuration Manual
Math
Task_Name , Scan_Interval , DAI1 , DOI1 , DAI2 , DOI2 , DAI3 , DOI3 , DAI4 , DOI4 , FN1 , FN2
Task_105, ,1 , DA_1 ,0 , DA_2 ,1 , DA_3 ,2 , DA_4 ,3 , Div , Sub
Math
Task_Name , Scan_Interval , DAI1 , DOI1 , DAI2 , DOI2 , FN1 , DAO , DOO
Task_105 ,1 , DA_1 ,0 , DA_2 ,0 , Per , DA_5 ,0
For example, if DA_1[0] = 10 and DA_2[0] = 20 then this means Da_1[0] is 50 % of Da_2[0] so DA_5[0]
will contain 50.
Page 35 of 84
FieldServer Configuration Manual
Math
DAI1 , DAI2 , DAI3 , FN1 , FN2 , DAO , DOI1 , DOI2 , DOI3 , DOO , Length , Truncate_Results
DA_X , DA_17 , DA_17 , DIV , MULT , DA_Z , 0 ,0 ,0 ,0 ,1 , Yes
Page 36 of 84
FieldServer Configuration Manual
5.4 Logic
Logic functions implement Boolean functions (True/False statements) of bit Data Array values. Single-
operator logic can be incorporated into Moves, but Multi-operator/operand logic must be defined in the
Logic block.
Page 37 of 84
FieldServer Configuration Manual
5.5 Scaling
When writing a configuration file for the FieldServer, it may be required for the FieldServer to scale data
before passing it on to the receiving devices. This can be accomplished in three different places in the
FieldServer configuration:
• In the Client Side Map Descriptor section by adding scaling parameters.
• In the Server Side Map Descriptor section by adding scaling parameters.
• In the Moves section by adding scaling parameters.
In all cases, four keywords are added to the section that needs to be populated with the necessary
scaling parameters. The FieldServer makes use of the four scaling parameters to calculate a slope and
offset for scaling all incoming values. It is possible therefore, to do any linear value conversion that may
be required.
Page 38 of 84
FieldServer Configuration Manual
Page 39 of 84
FieldServer Configuration Manual
5.6.1 Introduction
Preloads provide a technique which allows parts of one or more Data Arrays to be initialized to specified
values. The Preloads are defined in a configuration file and loaded once when the configuration file is
loaded as the FieldServer starts.
6
Strings: This has been tested with strings up to 320 characters long. Leading and trailing spaces and tabs are ignored; commas
cannot be used and support for other special characters is unknown. Format must be specified as ‘STRING’. The case of the
characters is preserved.
7
Must be specified as String if Preload_Value is String.
Page 40 of 84
FieldServer Configuration Manual
The Data Array named ‘DA_SDA1’ must have Format specified with a dash, therefore the value 11
been previously defined in the configuration file will be type cast to an unsigned 32-bit integer. Omitting
or else there will be a configuration error. the value altogether would have the same effect.
NOTE: If the format of the Target Data Array is “Bit”, then the value 11 will not be stored as Bit
arrays can only store 1 and 0.
Preloads
Data_Array_Name , Preload_Data_Value , Preload_Data_Format , Preload_Data_Index
DA_1 , 257 , FLOAT ,0
DA_2 , 257 , FLOAT ,0
The value 257 will be stored. The value 257 is cast to a floating point number.
Page 41 of 84
FieldServer Configuration Manual
Preloads
Data_Array_Name , Preload_Data_Value , Preload_Data_Format , Preload_Data_Index
DA_1 , -1 , FLOAT ,0
Preloads
Data_Array_Name , Preload_Data_Value , Preload_Data_Format , Preload_Data_Index
DA_1 , 123.456 , FLOAT , 10
Preloads
Data_Array_Name , Preload_Data_Value , Preload_Data_Format , Preload_Data_Index
DA_1 , Revision 123aA , STRING ,1
The string ‘Revision 123aA’ is stored starting in the 2nd element (index 1) of the Data Array named DA_1.
Preloads
Data_Array_Name , Preload_Data_Value , Preload_Data_Format , Preload_Data_Index
DA_1 , ABCD , String ,0
The value found in the 1st element of the Data Array will be 0x4241 (Ascii value of A) and the value found
in the 2nd element will be 0x4443 (Ascii value of B). A UINT32 Data Array can store 2 characters per
element.
Page 42 of 84
FieldServer Configuration Manual
5.6.4.7 Casting
Data_Arrays
Data_Array_Name , Data_Format , Data_Array_Length
Both Data Arrays are formatted as
DA_1 , FLOAT , 20
FLOAT and are therefore capable
DA_2 , FLOAT , 20
of storing the value 257.
Preloads
Data_Array_Name , Preload_Data_Value , Preload_Data_Format , Preload_Data_Index
DA_1 , 257 , FLOAT ,0
DA_2 , 257 , BYTE ,0
The value 257 will be cast to a byte before it is stored. Only numbers in the range 0-255 inclusive can
be stored in a BYTE. The kernel chops off the part of the number that exceeds the byte and then
stores this truncated value in the FLOAT array. Thus, the value 257 will be stored in the 1st element of
DA_1 and the value 1 in the 1st element of DA_2.
Preloads
Data_Array_Name , Preload_Data_Value , Preload_Data_Format , Preload_Data_Index
DA_1 , ABCDEFGHIJKLMNOPQRSTUV , String ,0
Page 43 of 84
FieldServer Configuration Manual
6 NODE MANAGEMENT
Data Arrays
Data_Array_Name , Data_Format , Data_Array_Length , Data_Array_Function
DA_Comm_OK , Bit , 256 , Node_Status
6.1.2 Alias_Node_ID
If you have two Nodes with the same Node_ID or your Node_ID’s are longer than 255, the Node Status
Function as described above will not work correctly. In such cases, each Node can be assigned an
Alias_Node_ID which can be used to provide Node Status.
Typical Data Array Parameters are:
Section Title
Data_Arrays
Column Title Function Legal Values
Data_Array_Name Provide name for Data Array Up to 15 alphanumeric characters
Data_Format Provides data format BIT
Data_Array_Length Number of Data Objects Minimum of 256 bits
Data_Array_Function* Special function for the Data Array Alias_Node_Status, None
Page 44 of 84
FieldServer Configuration Manual
6.1.2.1 Example
A Data Array has been defined to report the status of the Nodes in the configuration using the
Alias_Node_ID. Each Node that has been allocated an Alias_Node_ID will have the corresponding bit in
the Data Array set/unset based on the Node’s status.
Data Arrays
Data_Array_Name , Data_Format , Data_Array_Length , Data_Array_Function
Comm_Bits , Bit , 900 , Alias_Node_Status
Nodes
Node_Name , Node_ID , Alias_Node_ID , Protocol , Port , Retry_Interval , Recovery_Interval
N1 ,1 ,3 , Modbus_RTU , P1 , 0.1s , 0.1s
N3 ,1 , 300 , Modbus_RTU , P2 , 0.1s , 0.1s
6.1.3 Node_Online_Bits
This Data Array function allows the user to specify Nodes and Subnets for which communication status is
required. Typical Data Array Parameters are:
Section Title
Data_Arrays
Column Title Function Legal Values
Up to 15 alphanumeric
Data_Array_Name Provide name for Data Array.
characters
Data_Format Provides Data format. Bit
If specified, this allows the user to configure the
Data_Array_Length 1 to 256
number subsequent nodes after the Node_ID.
Node_Online_Bits,
Data_Array_Function Special function for Data Array.
None
If configured, the Node address of the specified Node
will be at offset 0. The length parameter will be used
Node_ID* to determine the number of Node addresses starting 1 to 256, -
from the Node_ID. If not declared or specified as -,
Node_ID 0 will be at offset 0.
This allows the subnet of the Node to be declared. If
subnets are not used, this parameter can be
Subnet_ID* 0 to 256, -
excluded. If specified as -, the subnet is ignored, and
all Nodes will be found.
Data_Arrays
Data_Array_Name , Data_Format , Data_Array_Length , Data_Array_Function , Node_ID , Subnet_ID
Node_on_Net , Bit , 30 , Node_Online_Bits ,1 ,-
Node_on_Net1 , Bit , 30 , Node_Online_Bits ,1 ,1
Node_on_Net2 , Bit , 30 , Node_Online_Bits , 10 ,2
Node_on_Net3 , Bit , 30 , Node_Online_Bits , 10 ,3
Node_on_Net4 , Bit , 30 , Node_Online_Bits , 10 ,4
Node_on_Net5 , Bit , 30 , Node_Online_Bits , 10 ,5
Page 45 of 84
FieldServer Configuration Manual
6.2.1 Node_Retire_Delay
When a FieldServer is started up, it polls all Nodes. Nodes that respond within the specified timeout
period (seconds) will be marked online. Nodes failing to respond within the timeout period will be
repeatedly polled for the length of time specified in the Node_Retire_Delay parameter (seconds). Once
this period has expired, there will be one further poll and if the Node does not respond within the specified
timeout period, it will be retired. The FieldServer must be restarted for retired or new Nodes to be
identified. This is an optional parameter. If not set, the FieldServer will continue retrying indefinitely. This
would be useful in a situation where there are plans for expansion and some Nodes have not yet been
installed and so would never respond.
Connections
Port , Timeout , Node_Retire_Delay
P1 , 0.2 , 10
P2 , 0.2 , 10
P3 , 0.2 , 10
Nodes
Node_Name , Node_ID , Protocol , Port , Retry_Interval , Recovery_Interval
Dev1 ,1 , Modbus_RTU , P1 ,0 ,0
Dev2 ,2 , Modbus_RTU , P2 ,0 ,0
Dev3 ,3 , Modbus_RTU , P3 ,0 ,0
6.2.2 Backup_Port
The FieldServer will initially poll using the port defined under the Port parameter. If no communication
occurs, it will use the port defined under the Backup_Port parameter. The FieldServer will continue to
switch between the ports until communications are established. This is an optional parameter. If not set,
the FieldServer will only use the port defined under the Port parameter.
Connections
Port , Timeout , Backup_Port
P1 , 0.2 , P2
Page 46 of 84
FieldServer Configuration Manual
Page 47 of 84
FieldServer Configuration Manual
Remote Client
Server Side
Client Side
Page 48 of 84
FieldServer Configuration Manual
Remote Client
Page 49 of 84
FieldServer Configuration Manual
Page 50 of 84
FieldServer Configuration Manual
7.1.5 Profiles
Section Title
Profiles
Column Title Function Legal Values
Profile_Name Name of profile table. Up to 32 alpha numeric characters
Profile_Filename Name of csv file to load. Filename ending with “.csv”
Name of parameters used to load into
Profile_Parameters Up to 32 alpha numeric characters
profile.
Profile_Group Name of group used to load a profile. Up to 32 alpha numeric characters
Expected value(s) that will be used to load
Profile_Selector Any integer value
profile.
Page 51 of 84
FieldServer Configuration Manual
7.1.6.1 Node ID
The parameter value is taken from the specified Data Array and Data Array Offset, and is used to modify
the parameter specified under Function of the object (example: Node) specified under Descriptor_Name,
subject to the limits set by Low_Limit and High_Limit.
In this example, when the value of Node_Array offset 160 is updated (presumably by a driver) then the
FieldServer will check the value is in the range 0 to 255 inclusive. If it is, it will look for the Node called
‘PLC_1’. If found, the Node_ID will be changed to the new value.
Dynamic_Parameters
Function , Descriptor_Name , Data_Array_Name , Data_Array_Offset , Low_Limit , High_Limit , Save
Change_Node_ID , PLC_1 , Node_Array , 160 ,0 , 255 , Yes
The Low_Limit and High_Limit parameters may be omitted in which case the Node_ID is not validated
against them.
The save value enables or disables making the change permanent. If yes, the value will be stored and
used next time on start-up as the Node_ID. If no, the change will only remain until the next power cycle,
at which time the value in the configuration file will be used.
In the example above, the FieldServer watches offset zero of the Data Array called DA_NODE_ID_NEW.
If it changes and the new number is valid (in range) then the ‘Bridge’ section of the configuration file is
scanned until a bridge whose ‘Title’ matches the descriptor name’ is found. Once found, the value of the
System_Node_ID is updated, and the driver writes the new ID down to the PIC on which the BACnet
driver has been implemented.
The Low_Limit and High_Limit parameters may be omitted in which case the Node_ID is not validated
against them.
The save value enables or disables making the change permanent. If Yes, the value will be stored and
used next time on start-up as the System_MAC_Addr. If No, the change will only remain until the next
power cycle, at which time the value in the configuration file will be used.
Page 52 of 84
FieldServer Configuration Manual
Specify the Data Format as Baud. This forces the use of the Values/Baud Rate table above.
Data_Arrays
Data_Array_Name , Data_Format , Data_Array_Length
DA_BAUD , BAUD ,1
The Connection, Node and Map Descriptor examples below apply to both methods.
Connections
Port , Baud , Parity , Data_Bits , Stop_Bits , Protocol
R1 , 9600 , None ,8 ,1 , Modbus_RTU
Map_Descriptors
Map_Descriptor_Name , Scan_Interval , Data_Array_Name , Data_Array_Offset , Function , Node_Name , Address , Length
CMD_AO1 , 1.0s , DA_BAUD ,0 , RDBC , MB_RTU , 40001 ,1
Page 53 of 84
FieldServer Configuration Manual
8
Edit the configuration, download the modified configuration and reset the FieldServer for the changes to take effect.
Page 54 of 84
FieldServer Configuration Manual
Page 55 of 84
FieldServer Configuration Manual
Connections
Port , Baud , Parity , Data_Bits , Stop_Bits , Protocol , Poll_Delay , Write_Queue_Mode , Write_Queue_Size , Timeout
P1 , 9600 , None , 8 ,1 , Modbus_RTU , 0.100s , Blocking ,5 , 8s
Nodes
Node_Name , Node_ID , Protocol , Port , Timeout , Write_Ack_Option
Dev1 ,1 , mb_rtu , P2 , 12 , Ack_Complete
Page 56 of 84
FieldServer Configuration Manual
9 TIMING PARAMETERS
Under normal operation, the FieldServer will send a poll request to a Server device and that device will
reply with a response. The amount of time between successive poll requests is called the Scan_Interval.
The time between receiving a response from a Server device and the next poll request is called the
Poll_Delay.
If the FieldServer sends a poll request, and the Server device does not send a response, it is considered
a timeout. The time the FieldServer waits before declaring a timeout can be adjusted by the Timeout
parameter. If a timeout occurs, then the FieldServer will retry the poll request (number of times retried is
specified by the retries parameter). The interval between Retries is specified by the Retry_Interval. The
FieldServer will send poll requests at the end of each Retry_Interval. Once the specified numbers of
Retries have been sent, the FieldServer will mark the Node offline. Once a Node has been marked
offline, it will wait for a period specified by Recovery_Interval before sending another poll request.
Once the communications have been re-established, the FieldServer will wait for a period called
Probation_Delay, before marking the Node as online.
NOTE: The Ic_Timeout parameter monitors the time between characters in a response. If the time
exceeds the Ic_Timeout, the response is discarded and is considered a Timeout.
NOTE: All parameters in bold above are configurable. See table below for where they are configured,
and what the defaults will be if they are not configured. Refer also to Appendix C.2.
Parameter Default Value Where Used
Scan_Interval 2 seconds Map Descriptor, Node, Connection
Poll_Delay 0.05 seconds Connection
Timeout 2 seconds Map Descriptor, Node, Connection
Retry_Interval 10 seconds Node
Retries 3 times Node
Recovery_Interval 30 seconds Node
Probation_Delay 1 minute Node
Ic_Timeout 0.5 seconds Map Descriptor, Node, Connection
Node_Inactivity_Timeout 0 seconds Node (see Section 6.3.2)
NOTE: In the case of parameters that may be declared at the Connection, Node or Map Descriptor level,
when the parameter is declared at more than one level, the Map Descriptor declaration takes
highest priority, followed by the Node declaration and then the Connection declaration.
NOTE: A non-response from the remote Server device causes a Timeout. The driver does nothing until a
response is received or the timeout period has expired. If a connection has two Nodes and one
Node is producing Timeouts this will have the effect of slowing down communication for the other
Node in the sense that the driver does nothing while the timeout timer is counting up to its
setpoint. Once there is a timeout on one Node, the driver will not retry any Map Descriptors on
that Node until the Retry_Interval has expired. During the Retry_Interval the other Node will get
100% of the service.
Page 57 of 84
FieldServer Configuration Manual
Poll
Scan-Interval Response
Poll-Delay
Poll
Response
Retry-interval
Poll Retries
Poll
Recovery-Interval
Poll
Response
Poll
Poll
Response
Time
Page 58 of 84
FieldServer Configuration Manual
NOTE: Line_Drive_On and Line_Drive_Off are not supported in the FS-B35 Series.
NOTE: Handshaking is not supported. The RTS line can be enabled by specifying Line_Drive_On
and Line_Drive_Off as non-zero values.
Page 59 of 84
FieldServer Configuration Manual
The first two are examples of what is termed TX squelch, received by the transmitting port at the end of a
message; the last two are examples of RX squelch, received by the receiving port at the end of a
message.
The timing diagram illustrates the four instances of squelch and identifies time intervals controlled by two
connection parameters. These timers are activated at the appropriate moment, and for their duration
prevent reception of data. Squelch_Timer_Tx starts at the end of a transmission (as defined by RTS
becoming inactive), and Squelch_Timer_Rx starts at the end of a valid received message (as determined
by the protocol driver).
NOTE: The Squelch_Timer_Rx is only relevant to Servers as Clients will in any event disregard
any spurious data received after a response.
1 2 3 6
RTS
Poll Next Poll
Legend:
Master Response 1 Line_drive_on
TX
2 Line_drive_off
3 Squelch_timer_TX
4 Squelch_timer_RX
RX 5 Turnaround_delay
6 Poll_delay
7 8
7 Squelch received by master after
poll.
8 Deleted by Squelch_timer_TX
1 2 Squelch received by master after
response.
9 Deleted by Kernel before next poll
Squelch received by slave after poll.
10 Deleted by Squelch_timer_RX
RTS
Squelch received by slave after
Response
response.
Deleted by Squelch_timer_TX.
Poll
TX
Slave
9 10
RX
4 3
Page 60 of 84
FieldServer Configuration Manual
Connections
Port , Squelch_Timer_Tx , Squelch_Timer_Rx , Turnaround_Delay , Line_drive_On , Line_drive_Off
P1 , 0.06 , 0.01 , 0.050 , 0.001 , 0.001
9.2.2 Statistics
Each connection keeps track of the number of bytes suppressed as a result of TX and Rx squelch timers.
These may be viewed in the connection statistics screen.
Page 61 of 84
FieldServer Configuration Manual
The following example sets the FieldServer to accept a secure Modbus/TCP connection on port 1502.
This configuration sets the FieldServer to accept any incoming connection but will not request a client’s
certificate for verification. This means that the FieldServer end point communication will be encrypted but
not authenticated.
The FieldServer will send an embedded self-signed certificate if one is requested by a connecting client.
NOTE: If a remote client requires a certificate, then request the smc_cert.pem certificate from
FieldServer Technical Support and update the remote client’s authority as per vendor
instructions.
Page 62 of 84
FieldServer Configuration Manual
Connections
Adapter , Protocol , TLS_Port , Validate_Client_Cert
N1 , Modbus/TCP , 1502 , Yes
The configuration above sets the FieldServer to request and verify a client’s certificate against its internal
authority file before accepting connection. By default, this means the FieldServer will only accept
connections from other FieldServers.
In order to load an authority file so that the FieldServer will accept connections from a chosen list of
remote clients, configure the FieldServer with the following connection settings:
Connections
Adapter , Protocol , TLS_Port , Validate_Client_Cert , Cert_Authority_File
N1 , Modbus/TCP , 1502 , Yes , my_authorized_clients.pem
This configuration has the FieldServer accept connections from clients who have the correct certificate.
The authority file is a collection of client certificates in PEM format. This file can be edited using any text
file editor.
NOTE: Cert_Authority_File is useful only if Validate_Client_Cert is set to ‘Yes’.
Page 63 of 84
FieldServer Configuration Manual
The configuration above tells the FieldServer to only accept connections that have the correct certification
and is coming from the specified host.
The Check_Remote_Host value is synonymously known as common name, host name or domain etc.
The common name can be obtained by the following methods:
• Ask the certificate issuer for the host name.
• Use online tools to decode the certificate (for example: https://www.sslshopper.com/certificate-
decoder.html).
• If the program openssl is installed on the local PC, then run the following command to get the
common name: openssl x509 -in certificate.pem -text -noout
Page 64 of 84
FieldServer Configuration Manual
The following Node configurations set the FieldServer to open a secure Modbus/TCP connection to
Server at IP Address 10.11.12.13 on port 1502.
The above configurations set the FieldServer to connect to a remote server but not request a server’s
certificate for verification. This means the FieldServer end point communication will be encrypted but not
authenticated.
If requested by a remote server, the FieldServer will send an embedded self-signed certificate.
The above configuration sets the FieldServer to request and verify server’s certificate against its internal
authority file before finalizing the connection. By default, this means the FieldServer will only establish
connections to other FieldServers.
……. , Remote_Node_TLS_Port , Validate_Server_Cert , Cert_Authority_File
…….. , 1502 , Yes , my_authorized_servers.pem
The above configuration sets the FieldServer to use a specified PEM file to allow custom server
connections.
Authority file is simply a collection of server certificates in PEM format. This file can be edited using any
text file editor (such as notepad) then copy and paste public PEM formatted server certificate. Now
FieldServer will connect to server if it can find server’s certificate in authority file.
NOTE: Cert_Authority_File is useful only if Validate_Client_Cert is set to ‘Yes’.
To download Certificate to the FieldServer, refer to Section 10.1.3.
Page 65 of 84
FieldServer Configuration Manual
Using Comments
Configuration file comments are either lines or line segments that start with “//”. These allow notation
within the code for reference or organization. See Examples below.
Nodes // Main building Node
Node_Name , Node_ID , Protocol
Test_A ,1 , Modbus_RTU
Page 66 of 84
FieldServer Configuration Manual
Connections
Port , Baud , Parity , Data_Bits , Stop_Bits , Protocol
P1 , 9600 , None , 8 ,1 , Modbus_RTU
Nodes
Node_Name , Node_ID , Protocol
RTU_Srv_11 , 11 , Modbus_RTU
Map_Descriptors
Map_Descriptor_Name , Data_Array_Name , Data_Array_Offset , Function , Node_Name , Address , Length
SMD_DO1 , DA_DO_01 ,0 , Passive , RTU_Srv_11 , 00001 ,1
ignore
//=======================================================================
//
// Set up the Modbus Client side
//
Connections
Port
P2
Nodes
Node_Name , Node_ID , Protocol , Port
DEV11 , 11 , Modbus_RTU , P2
Map_Descriptors
Map_Descriptor_Name , Data_Array_Name , Data_Array_Offset , Function , Node_Name , Address , Length
SMB_BO1 , DA_DO_01 ,0 , RDBC , DEV11 ,1 ,1
Process
Page 67 of 84
FieldServer Configuration Manual
, Object_Instance , MD_Option
, 01 , No_Stats
, 02 ,-
Page 68 of 84
FieldServer Configuration Manual
Appendix B. Troubleshooting
Moves Performance
Suppose we need to read 1000 points from a PLC and transfer it to another data array, there are several
ways to do it using moves. The table below shows the impact on the time it takes to complete the moves
using different configuration methods:
Page 69 of 84
FieldServer Configuration Manual
Appendix C. Reference
Page 70 of 84
FieldServer Configuration Manual
Page 71 of 84
FieldServer Configuration Manual
Page 72 of 84
FieldServer Configuration Manual
Page 73 of 84
FieldServer Configuration Manual
Keyword Description
Provides the states of the system’s hardware LEDs with a 1 indicating an LED is on and a 0 indicating
an LED is off. The target data array for this function should be of type “BIT” and needs to have a
minimum length of 5. The system LEDs correspond to the following bit offsets:
Bit 0 = Run LED. Toggles every second while the FieldServer is running.
System_LED_Status Bit 1 = HSB Active LED.
Bit 2 = Node Offline LED.
Bit 3 = Configuration Error LED.
Bit 4 = System Error LED.
9
Not all ports shown are necessarily supported by the hardware. Consult the appropriate Instruction manual for details of the ports
available on specific hardware.
Page 74 of 84
FieldServer Configuration Manual
The time after a node goes off-line before the driver tries to poll the device
Recovery_Interval* 30 seconds
again.
The length of time communication needs to be re-established for before an
Probation_Delay* 1 minute
offline Client node is marked on-line again.
Indicates whether Multidrop mode is enabled or not. Multidrop mode allows a Enabled for RS-485,
Multidrop_Mode*
server to ignore requests to nodes that are not configured. disabled for RS-232
IP_port*
Remote_IP_Port*
Max_Master*
Determined by specific driver or protocol used. See Driver Manual.
Max_Info_Frames*
Connection_Type*
Application*
TLS_Port
Validate_Client_Cert
Cert_Authority_File Refer to Section 10.
Check_Remote_Host
Server_Cert_File
Section Title
Adapter
Column Title Function Legal Values
Adapter Adaptor name. DH+, Modbus+, PROFIBUS, etc
MAC_Address (Net_number) Specify Network MAC address.
10
▪ If a Host name is used instead of an IP Address, the FieldServer will try to resolve it to an IP_Address before starting to poll the
remote device.
▪ If using an IP_Address and a Host_Name, the FieldServer will try to resolve the host name to get the latest IP_Address to use,
otherwise the configured IP_Address will be used.
▪ The FieldServer will try to re-resolve the host name before starting node recovery to get the latest IP_Address. If a host name
cannot be resolved, the last known IP_Address will remain in use.
Page 75 of 84
FieldServer Configuration Manual
Page 76 of 84
FieldServer Configuration Manual
The time in seconds after a node goes off-line before the driver
Recovery_Interval* 30 seconds
tries to poll the device again.
The length of time communication needs to be re-established
Probation_Delay* 1 minute
for before an offline Client node is marked on-line again.
An alternate to specifying the IP Address. Used when the user
wants two nodes to talk to each other. When specified, the
FieldServer sends out a broadcast with the server name and
Server_Name* uses the reply to fill in the IP Address for the node. Until the Only applies to the SMT protocol
reply has been received all polling for the node is disabled. The
server name given should correspond to the pair_name
specified in the remote FieldServer’s bridge settings.
Used to distinguish between different nodes connected to the
FieldServer when a PLC does not support the allocation of
Alias_Node_ID* different None_ID’s. Each node is given a different alias. Any integer, -
Upstream devices poll the Alias_Node_ID and the FieldServer
routes the poll to the correct PLC, polled using the Node_ID.
For hot standby operation. This field is used to control which See ENOTE-Configuring a FS-B35
Ports_on_PLC*
port on a PLC to poll. FieldServer for Hot Standby Mode
Remote_Node_TLS_Port
Validate_Server_Cert
Cert_Authority_File Refer to Section 10.
Check_Remote_Host
Client_Cert_File
Page 77 of 84
FieldServer Configuration Manual
Page 78 of 84
FieldServer Configuration Manual
Page 79 of 84
FieldServer Configuration Manual
Move overruns Data Array. This usually means that the offset
10045 PLUS the length of the Move command is larger than the length
of the Data Array. Check Data_Array Length,
Check Move settings
Move Offset lies outside the Data Array. This usually means
10046 that the offset of the Move command is larger than the length of
the Data Array.
10047 Could not find Source Data Array for Move.
10048 Could not find Target Data Array for Move.
10049 Could not find Client Data Array for Move. Make sure that the specified Data Array exists before
10050 Could not find Server Data Array for Move. specifying move.
10051 Could not find Feedback Data Array for Move.
10052 Could not find Mode Data Array for Move.
10053 Data Array already has a responsible move
10054 Setpoint Moves are only allowed to be 1 item in length.
Page 80 of 84
FieldServer Configuration Manual
Page 81 of 84
FieldServer Configuration Manual
Page 82 of 84
FieldServer Configuration Manual
Page 83 of 84
FieldServer Configuration Manual
Term Description
The Internet is a collection of over 2, 000 packet-switched networks located all over the world, all linked using
Internet
the TCP/IP protocol. It links many university, government and research sites.
Internet Protocol (IP) IP is part of the TCP/IP suite. It is a session layer protocol that governs packet forwarding.
Interoperability is the ability of one manufacturer’s computer equipment to operate alongside, communicate
Interoperability
with, and exchange information with another vendor’s dissimilar computer equipment.
A leased line is a transmission line reserved by a communications carrier for the private use of a customer.
Leased line
Examples of leased line services are 56 Kbps or T-1 lines.
A LAN is a group of computers, each equipped with the appropriate network adapter card and software and
Local Area Network
connected by a cable, that share applications, data and peripherals. All connections are made by cable or
(LAN)
wireless media, but a LAN does not use telephone services. It typically spans a single building or campus.
LUI Local User Interface.
A network is a system of computers, hardware and software that is connected over which data, files, and
Network
messages can be transmitted. Networks may be local or wide area.
In open systems, no single manufacturer controls specifications for the architecture. The specifications are in
Open Systems
the public domain, and developers can legally write to them. Open systems are crucial for interoperability.
A packet is a collection of bits comprising data and control information, which is sent from one Node to
Packet
another.
In packet switching, data is segmented into packets and sent across a circuit shared by multiple subscribers.
Packet Switching As the packet travels over the network, switches read the address and route the packet to its proper
destination. X.25 and frame relay are types of packet-switching services.
PFE Protocol Front End.
A protocol is a standardized set of rules that specify how a conversation is to take place, including the format,
Protocol
timing, sequencing and/or error checking.
A router is a network layer device that connects networks using the same Network-Layer protocol, for
example TCP/IP or IPX. A router uses a standardized protocol, such as RIP, to move packets efficiently to
Router
their destination over an internetwork. A router provides greater control over paths and greater security than
a FieldServer; however, it is more difficult to set up and maintain.
A Server is a computer that provides shared resources to network users. A Server typically has greater CPU
Server power, number of CPUs, memory, cache, disk storage, and power supplies than a computer that is used as a
single-user workstation.
SUI System User Interface.
TCP/IP, TCP/IP is the protocol suite developed by the Advanced Research Projects Agency (ARPA), and is almost
Transmission Control exclusively used on the Internet. It is also widely used in corporate internetworks, because of its superior
Protocol/ design for WANs. TCP governs how packets are sequenced for transmission. IP provides a connectionless
Internet Protocol datagram service. “TCP/IP” is often used to generically refer to the entire suite of related protocols.
Wide Area Network A WAN consists of multiple LANs that are tied together via telephone services and/or fiber optic cabling.
(WAN) WANs may span a city, state, a country or even the world.
A wireless LAN does not use cable, but rather radio or infrared to transmit packets through the air. Radio
Wireless LAN
frequency (RF) and infrared are the most common types of wireless transmission.
Page 84 of 84