FieldServer Configuration Manual
FieldServer Configuration Manual
Configuration Manual
Description
FS-X30 Series FieldServer
QuickServer FieldServer
Document Revision: 2
FieldServer Configuration Manual
Technical Support
Thank you for purchasing the FieldServer.
Contact Information:
Sierra Monitor Corporation
1991 Tarob Court
Milpitas, CA 95035
Contact number:
+1 408 262-6611
+1 800 727-4377
Email: [email protected]
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 .................................................................................................................................... 7
1.3.1 Nodes ...................................................................................................................................... 7
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 ............................................................................................................ 13
3.4 Testing Configuration Files with DSW32.EXE .............................................................................. 14
3.4.1 Additional Worthwhile DSW32 Checks ................................................................................. 15
4 Map Descriptor Functions ................................................................................................................ 16
4.1 Active vs. Passive functions ......................................................................................................... 16
4.2 Passive Map Descriptor Functions ............................................................................................... 16
4.2.1 Passive .................................................................................................................................. 16
4.2.2 Passive Client (Passive_Client) ............................................................................................ 16
4.2.2.1 Working with Passive Client – Passive Server Applications ........................................ 17
4.3 Active Map Descriptor Functions .................................................................................................. 18
4.3.1 Read Block Continuous (Rdbc) ............................................................................................. 18
4.3.2 Active Read Continuous with Sequencing (Arcs) .................................................................. 18
4.3.3 Write Block on Change (Wrbx) .............................................................................................. 18
4.3.4 Write Block on Change of Value (WRBCOV) ........................................................................ 18
4.3.5 Write Block Continuous (Wrbc) ............................................................................................. 18
4.3.6 Active Write on Trigger (AWT) .............................................................................................. 19
4.3.7 Active Read Discovery on Startup (ARDS) ........................................................................... 19
4.3.8 Read Block (RDB) ................................................................................................................. 20
4.3.9 Active Read Continuous with Offset (ARCO) ........................................................................ 20
4.3.10 Active Read at Startup (ARS)................................................................................................ 20
4.3.11 Active Write at Startup (AWS) ............................................................................................... 20
4.3.12 Write block (WRB) ................................................................................................................. 20
5 Data Manipulation Features .............................................................................................................. 21
5.1 Moves ........................................................................................................................................... 21
5.1.1 Simple Moves ........................................................................................................................ 22
5.1.1.1 Simple Move Example .................................................................................................. 22
5.1.1.2 Special Application – Grouping Data ............................................................................ 23
5.1.1.3 Special Application – Separating Responsible Map Descriptors.................................. 24
5.1.1.4 Special Application – Creating a LonWorks SNVT_Switch from 2 Modbus Registers 24
5.2 Function Moves – Type Casting ................................................................................................... 25
5.2.1 Functions Available For Type Casting .................................................................................. 25
5.2.2 Converting Two Integers to a Float ....................................................................................... 26
5.2.3 Using Moves to Pack and Unpack Bits to or from a Register ............................................... 26
5.2.4 Example 1 – Simple Bit Extraction ........................................................................................ 27
5.2.5 Example 2 - Simple Bit Packing ............................................................................................ 27
5.2.6 Example 3 - Extracting Bit Groups ........................................................................................ 28
5.2.7 Bit Extraction – Application Example..................................................................................... 28
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 ........................................................................................................... 14
Figure 4 – DSW32 Error Screen with Driver Versions ................................................................................ 15
Figure 5 – Typical Network architecture ..................................................................................................... 17
Figure 6 – Grouping Data Process ............................................................................................................. 23
Figure 7 – Separating Responsible Map Descriptors ................................................................................. 24
Figure 8 – Creating a LonWorks SNVT_Switch from 2 Modbus Registers ................................................ 24
Figure 9 – Packed Bits Activated ................................................................................................................ 29
Figure 10 – Static Server Side Node_ID ..................................................................................................... 50
Figure 11 – Remote Client finds a Node with Node_ID dependent on the data read from the remote
Server device...................................................................................................................................... 51
Figure 12 – FieldServer Timing Diagram .................................................................................................... 59
Figure 13 – Timing Diagram: Line Drive On/Off, Tx and Rx Squelch, Poll Delay, Turnaround Delay ........ 61
Table of Contents
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 Sierra Monitor provides a wide range of interoperability solutions. For a current list of available
drivers visit our website at www.sierramonitor.com.
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
®1
LonWorks ports as well as various Fieldbus ports. The internal poll-block caching capability insures 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
Enote0002 for details.
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, Arcnet, Ethernet or other communication busses. Two-way
communication is easily available between the various process and control systems.
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.
1
LONWORKS® is a trademark of Echelon Corporation registered in the United States and other countries.
2
Nodes may have the same Node_ID value, so long as they are connected to different ports.
Page 7 of 86
FieldServer Configuration Manual
MASTER
Client Node
Server Side
FieldServer
Client Side
Server Node
SLAVE
Figure 1 – Client/Server
Page 8 of 86
FieldServer Configuration Manual
Client Node
Dat a Hi ghway Pl us
Data Arrays
Location
Client Map Descriptors Client
Side
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 86
FieldServer Configuration Manual
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 86
FieldServer Configuration Manual
//==========================================================
//
// Client Side Connections This section contains the parameters that describe the
// nature of the physical connection to the Server Nodes.
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 The protocol for the Timing parameters on the
defined in terms of connection network connected to connection allow for fine
speed and properties. this port. tuning of communications.
//==========================================================
//
// Client Side Nodes This section defines the logical connection parameters for
// the Server Nodes communicating with the FieldServer.
Nodes
Node_Name , Node_ID , Protocol , Port
PLC 1 ,1 , Modbus_RTU , P1
Page 11 of 86
FieldServer Configuration Manual
//==============================================================
The Map Descriptor parameters describe the address details required to move data
//
between the FieldServer and an external device and the nature of the data transfer.
// Client Side Map Descriptors
//
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
Timing
Map_Descriptors
parameters
Map_Descriptor_Name , Data_Array_Name , Data_Array_Offset , Function , Node_Name , Address , Length , Scan_Interval
CMD_DI_01 , DA_DI_01 ,0 , Rdbc , PLC 1 , 10001 , 20 , 1.000s assist with
CMD_DO_01 , DA_DO_01 ,0 , Rdbc , PLC 1 , 00001 , 20 , 1.000s pacing of data.
Page 12 of 86
FieldServer Configuration Manual
/==========================================================
// Settings for how the FieldServer
// Server Side Connections communicates with Client Nodes.
//
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
A Node name for reference by
the Map Descriptors.
//==============================================================
//
// 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
It is recommended that the CONFIG.CSV file be backed up before editing. Once edited, the file can
saved and uploaded in the Graphic User Interface (see FieldServer_GUI_Manual for details).
Refer to Appendix C.4 for the parameters that are usually filled out in the configuration file. Only the
specified values may be used - other values may affect FieldServer performance or functioning.
Not all parameters are compulsory for every driver (See the related driver manual for details). The bold
legal value is the value that will be used if the parameter is not specified.
Not all variables need be defined for every configuration. Depending on the protocol and configuration,
some variables might not be necessary. More detailed information is located in the relevant Driver
Manual, including settings specific to the drivers being used for a particular application.
Most FieldServer parameters are specified in a configuration file and are fixed. A growing number,
however, may be changed dynamically using values found in Data Arrays. We call these Dynamic
Parameters. Refer to Section 6.3 for more information on Dynamic Parameters.
Page 13 of 86
FieldServer Configuration Manual
Open an MS-DOS prompt and navigate to the directory containing the configuration file.
Type: "dsw32.exe -c<configuration file>", where <configuration file> is the name of the file to
be tested. For example, to test the CONFIG.CSV file, type " DSW32 –cconfig.csv".
To test specific sections of a configuration file it is possible to ignore certain sections:
To ignore a block use the "ignore" keyword at the start and the "process" keyword at the end of the
block.
To ignore individual lines use “//”.
The "end" keyword will stop processing the file, and anything after this keyword will be ignored.
The following is an example of the interface when using DSW32.exe.
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 14 of 86
FieldServer Configuration Manual
NOTE: a number of "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.
Check the Data Arrays to ensure that all Data Arrays defined are there. If too many Data
Arrays exist, this usually signifies that a spelling error exists in the configuration, and that
incorrect Data Arrays were specified in the Map Descriptors.
NOTE: The first few lines of the error screen are merely informative and relevant information used for
fault finding and do not represent errors. Errors are shown as “System Error” or “Configuration
Error” in the error screen.
Page 15 of 86
FieldServer Configuration Manual
NOTE: By design, it is necessary that all active Map Descriptors communicate to a point that has a
passive mapping on the remote device, and that passive Map Descriptors are controlled by an
active mapping on the remote device.
There is a loose relationship between Active/Passive and Client/Server. Clients usually use active
mappings and Servers usually use passive mappings, however Active Servers and Passive Clients do
exist. Points that send an update to a network on change (e.g.: Alarm panels) are a good example of
Active Servers.
Another set of terminology used in this area is solicited vs. unsolicited messages. A Client receives a
solicited message from a Server when it asks for it (i.e.: the point is polled). A Client receives an
unsolicited message from a Server when the Server sends the point without the Client asking for it.
Clients that send solicited messages are Active Clients communicating with Passive Servers. Clients that
receive unsolicited messages are Passive Clients communicating with Active Servers.
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.
3
Note that not all functions are supported by all drivers. Refer to the specific Driver Manual for information on functions supported
by individual drivers.
Page 16 of 86
FieldServer Configuration Manual
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.
Page 17 of 86
FieldServer Configuration Manual
The Rdbc function also has the ability to perform what is known as “write throughs”. If the driver allows
writing to the point related to the Map Descriptor where Rdbc is specified, then the Rdbc function will write
the data in the Data Array back to the point when an update in the associated Data Array is detected.
This makes Rdbc the ideal function for read/write points.
Modbus_RTU
Lutron_Machine
BACnet MS/TP, BACnet Arcnet, BACnet
Metasys N2
Page 18 of 86
FieldServer Configuration Manual
In the example below (from the Lutron eLumen Driver) the driver watches the Data Array called ‘Lut_triggers’ (offset 13). If that Data Array element
is updated (even if the value remains unchanged) the the write is triggered. The driver extracts the data from the Secondary Data Array called
‘Set_tlck’ (offset 0) and forms a message to write this data to the field device.
Only certain drivers support/require the use of this function. For other drivers, awt is a synonym for wrbx since there is no secondary Data Array to
extract information from.
NOTE: The driver may extract more data from the array than specified by the ‘length’ parameter. The only way to know how much data is to read
that specific driver’s manual.
Map_Descriptors
Map_Descriptor_Name , Data_Array_Name , Data_Array_Offset , Function , Node_Name , GRAFIK_command , DA_Lut_List , DA_Lut_List_Offset , Length
Set_tck , Lut_triggers , 13 , Awt , LUT_GRF6_0 , Set_tclk , Set_tclk ,0 ,1
This function is used for discovering known Modbus RTU devices. A register will be read and if a known value is received, a profile configuration
will be loaded.
Page 19 of 86
FieldServer Configuration Manual
Page 20 of 86
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, e.g: Logic operation, Integer to
floating point conversion, etc. Scaling, Logic and Math are also possible while moving data
With the exception of Conditional Moves (see 5.2.9), 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
name but no scan interval is defined, a default scan interval of 1s is assumed.
Page 21 of 86
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 22 of 86
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
possible large poll lengths
Client side Data Array 2 Server Side Data without fear of
Array hitting undefined
registers.
Example
Consider a Modbus Client needing registers 40001 through 40050 from the FieldServer. The poll lengths
used to obtain this data are unknown.
Page 23 of 86
FieldServer Configuration Manual
Page 24 of 86
FieldServer Configuration Manual
Join_Int16, Split_Int16
Join_Int32, Split_Int32
The following legacy functions have been replaced by the functions listed above. They are simply
presented in the table below for reverse compatibility.
Page 25 of 86
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
Ten 16 Bit Integers are Length refers to the data type referenced in the
taken from Source_DA and Function.
combined in two’s to make eg: If n is the value shown in Length, then:
up 5 floating point values Join_Float creates n Floats
Split_Float disassembles n Floats
Join_Int16 Creates n Integers
Bit_Extract extracts n Bits, etc.
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.
Page 26 of 86
FieldServer Configuration Manual
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
(e.g: 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 Default
a bit move. For Bit_Extract operations, the source bit offset in the word pointed 0
Bit_Offset*
to by the Source_Offset parameter is implied. For Bit_Pack operations, the bit
offset within the word pointed to by Target_Offset is implied.
Default
Length* The length parameter specifies the number of bits to be extracted/packed.
1
Moves
Function , Source_Data_Array , Source_Offset , Target_Data_Array , Target_Offset , Length
Bit_Extract , Source_DA ,5 , Target_DA ,0 , 48
In this example, 12 bits are packed into the 3rd and 4th register of the target byte array, starting at the
eleventh bit in the source array. Note that the second target register will only be half populated, leaving
the last 4 bits empty.
Data_Arrays
Data_Array_Name , Data_Format , Data_Array_Length
Source_DA , Bit , 200
Target_DA , Byte , 200
Moves
Function , Source_Data_Array , Source_Offset , Target_Data_Array , Target_Offset , Length
Bit_Pack , Source_DA , 10 , Target_DA ,2 , 12
Page 27 of 86
FieldServer Configuration Manual
Data_Arrays
Data_Array_Name , Data_Format , Data_Array_Length
Source_DA , Uint32 , 200
Target_DA , Byte , 200
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
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.
Page 28 of 86
FieldServer Configuration Manual
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.
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
Target_DA offsets 0 to 9
now contain the first 10 bits
of Register 40289. These
can now be served as bits
to the protocol of choice.
Page 29 of 86
FieldServer Configuration Manual
Data Arrays
Data_Array_Name , Data_Format , Data_Array_Length , Data_Array_Function
DA_Comm_OK , Bit , 256 , Node_Status
Target_DA , Bit , 200 ,-
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 , Task_Name , Scan_Interval
Move_Only , DA_Comm_OK ,0 , Target_DA , 40 , PLC1_Status ,1
Page 30 of 86
FieldServer Configuration Manual
5.2.9 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.
Page 31 of 86
FieldServer Configuration Manual
Offset_Table
Offset_Table_Name , Table_String , Table_Index_Value ,Table_User_Value , Length
The “Status” Data Array will contain only the numbers 0 thru 8 or 111 depending upon the combinations
existing in the “Tokens” Data Array.
Page 32 of 86
FieldServer Configuration Manual
A useful feature of the conditional move is that data is able to be moved to the same target offset as
defined by another conditional move. The user is thus able to move data from different sources into the
same target based on the status of a bit in a Data Array.
The conditional bit can be placed in any Data Array and can also be in the source or destination Data
Array. It simply needs to be declared in the Move instruction parameters.
A conditional move needs to be scheduled by the kernel for processing and therefore requires a task
name and scan interval. The Parameters for a Conditional move are as follows:
4
You could insert “*” in place of any token if the value for that token is unimportant.
5
2550 is negative; -- two negative signs, one is considered as delimiter
Page 33 of 86
FieldServer Configuration Manual
Moves
Source_Data_Array , Source_Offset , Target_Data_Array , Target_Offset , Length , Conditional_Data_Array , Conditional_Offset , Task_Name , Scan_Interval
Source_1 ,0 , Target , 00 ,1 , Status ,1 ,a ,1
Source_2 ,0 , Target , 01 ,1 , Status ,2 ,b ,1
Moves
Source_Data_Array , Source_Offset , Target_Data_Array , Target_Offset , Length , Conditional_Data_Array , Conditional_Offset , Task_Name , Scan_Interval
DA_GV_01 , 192 , Gas_Snapshot , 00 ,1 , DA_GL_PW_01 , 192 ,a ,1
DA_GV_01 , 192 , Gas_Snapshot , 01 ,1 , DA_GL_PA_01 , 192 ,b ,1
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 34 of 86
FieldServer Configuration Manual
The following table shows the Mathematics functions and their text representation:
Page 35 of 86
FieldServer Configuration Manual
NOTE: Output of GTE, LTE, GT, LT, EQ, NE, AND, OR, and NOT is binary either 1 or 0.
AND, OR, and NOT work the same way as Logic.
The following fields are specific to the Math & Logic definition:
DAI1...DAI4 input Data Arrays 1 through 4
DOI1...DOI4 input Data Array offsets 1 through 4
DAO output Data Array
DOO output Data Array offset
logic functions 1...4 (permitted values: ADD, SUB, MULT, DIV, GTE, LTE, GT, LT, EQ, NE, SQRT, SQ, AND , OR, NOT, - (no
FN1...FN4
setting))
Math
Task_Name , Scan_Interval , DAI1 , DOI1 , DAI2 , DOI2 , DAI3 , DOI3 , DAI4 , DOI4 , FN1 , FN2 , FN3 , FN4 , DAO , DOO
Task_105, ,1 ,DA_1 ,0 ,DA_2 ,1 ,DA_3 ,2 ,DA_4 ,3 ,Div ,Sub ,Mult ,Sq ,DA_5 ,21
Page 36 of 86
FieldServer Configuration Manual
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
i.e. 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 37 of 86
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 38 of 86
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:
Page 39 of 86
FieldServer Configuration Manual
Moves
Function , Source_Data_Array , Source_Offset , Target_Data_Array , Target_Offset , Length , Source_Low_Scale , Source_High_Scale , Target_Low_Scale , Target_High_Scale
Scale , DA_Unscaled , 00 , DA_Scaled , 00 ,5 , 00 , 10 , 00 , 100
Page 40 of 86
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.
It is also possible to use the FieldServer scripting language to have the FieldServer load a configuration
file and then poke values into the Data Arrays. For more information on this technique call Support.
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 41 of 86
FieldServer Configuration Manual
The Data Array named ‘DA_SDA1’ Format specified with a dash, therefore the
must have been previously defined value 11 will be type cast to an unsigned 32-bit
in the configuration file or else integer. Omitting the value altogether would
there will be a configuration error. 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.
Page 42 of 86
FieldServer Configuration Manual
Data_Arrays
Data_Array_Name , Data_Format , Data_Array_Length
DA_1 , FLOAT , 20
Preloads
Data_Array_Name , Preload_Data_Value , Preload_Data_Format , Preload_Data_Index
DA_1 , -1 , FLOAT ,0
Data_Arrays
Data_Array_Name Data_Format Data_Array_Length
DA_1 FLOAT 20
Preloads
Data_Array_Name, Preload_Data_Value, Preload_Data_Format, Preload_Data_Index
DA_1, 123.456, FLOAT, 10
Data_Arrays
Data_Array_Name, , Data_Format, , Data_Array_Length
DA_1, , FLOAT, , 20
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.
Page 43 of 86
FieldServer Configuration Manual
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.
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.
Data_Arrays
Data_Array_Name , Data_Format , Data_Array_Length
DA_1 , AO , 20
Preloads
Data_Array_Name , Preload_Data_Value , Preload_Data_Format , Preload_Data_Index
DA_1 , ABCDEFGHIJKLMNOPQRSTUV , String ,0
Page 44 of 86
FieldServer Configuration Manual
There is a limit to the number of values that can be stored from a single data array:
UINT32: 9
FLOAT: 9
SINT32: 9
UINT16: 19
SINT16: 19
BYTE: 39
Example
Data_Arrays
Data_Array_Name , Data_Format , Data_Array_Length , DA_Function_After_Store
DA_NV_UINT32 , UINT32 ,1 , Non_Volatile
Page 45 of 86
FieldServer Configuration Manual
6 NODE MANAGEMENT
Example
If seven Nodes are connected to the FieldServer, when the Node with ID 5 is online, the sixth bit of the
Data Array configured for the function Node Status will be set to 1. (zero bit is unused)
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 1 to 256
Data_Array_Function Special function for Data Array Node_Status
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.
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 46 of 86
FieldServer Configuration Manual
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
Page 47 of 86
FieldServer Configuration Manual
6.1.4 Node_Online_Bits
This Data Array function allows the user to specify Nodes and Subnets for which communication status is
required.
Example
Typical Data Array Parameters are:
Section Title
Data_Arrays
Column Title Function Legal Values
Up to 15
Data_Array_Name Provide name for Data Array. alphanumeric
characters
Data_Format Provides Data format Bit
If specified, this allows the user to configure the number
Data_Array_Length 1 to 256
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 to
Node_ID* determine the number of Node addresses starting from 1 to 256, -
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 excluded.
Subnet_ID* 0 to 256, -
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 48 of 86
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 FiledServer 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.
Example
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
Page 49 of 86
FieldServer Configuration Manual
7 DYNAMIC PARAMETERS
Most FieldServer parameters are specified in a configuration file and are fixed. A growing number,
however, may be changed dynamically using values found in Data Arrays. We call these Dynamic
Parameters.
The following parameters can be dynamically configured.
Parameter Section Title Notes
This parameter typically describes the Server device
Node_ID Nodes
address of a communications session.
Many drivers use this parameter and the ‘meaning’ of the
parameter is dependent on its context.
System_Node_ID FieldServer
e.g. BACnet: Used as the MAC address
DNP3: Used as the local station ID
Similar to changing the System_Node_ID but specifically
designed for use on ProtoCessors because it also writes
BACnet_MAC_Address FieldServer
the new ID down to the PIC where BACnet is
implemented.
The Baud rate on a connection can be changed
Baud Connections
dynamically from the value in a data array.
Load_csv
Config Table This parameter is used to load a profile config.
Load_csv_with_parameter
Remote Client
Server Side
Client Side
It is possible to control the Node_ID of the Server Node by including a special task in the Configuration
file that watches the value of a single element of a Data Array. When the value is updated then this task
Page 50 of 86
FieldServer Configuration Manual
takes the value and replaces the Node_ID of a designated Node so that its new Node_ID is the value
found in the Data Array. This is illustrated in the following diagram.
This new Node_ID can be saved to the Non-Volatile Memory so that it isn’t lost on a power cycle. When
the device starts up again, the stored value will be used.
7.1.1.2 Remote Client finds a Node with Node_ID dependent on the data read from
the remote Server device
Remote Client
Figure 11 – Remote Client finds a Node with Node_ID dependent on the data read from the remote
Server device
Page 51 of 86
FieldServer Configuration Manual
7.1.3 Examples
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
Page 52 of 86
FieldServer Configuration Manual
Dynamic_Parameters
Function , Descriptor_Name , Data_Array_Name , Data_Array_Offset , Low_Limit , High_Limit , Save
Change_System_Node_ID , NODE_1 , DA_NODE_ID_NEW , 0 ,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.
Dynamic_Parameters
Function , Descriptor_Name , Data_Array_Name , Data_Array_Offset , Low_Limit , High_Limit , Save
Change_System_MAC_Addr , Bridge1 , DA_NODE_ID_NEW , 0 ,0 , 255 , Yes
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 53 of 86
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
000
Node_Name , Node_ID , Protocol , Port
MB_RTU , 11 , Modbus_RTU , R1
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
Only for this method specify a dynamic parameter of Function Baud_Rate to allow the use of actual Baud
Rate values in the Data Array to change the Baud Rate Dynamically e.g. Values of 110, 300, 600, ...
115200 (if supported) stored in the Data Array will cause the Baud Rate to be changed.
Dynamic_Parameters
Function ,Descriptor_Name ,Data_Array_Name ,Data_Array_offset
Baud_Rate ,R1 ,DA_BAUD ,0
Page 54 of 86
FieldServer Configuration Manual
8
Edit the configuration, download the modified configuration and reset the FieldServer for the changes to take effect.
Page 55 of 86
FieldServer Configuration Manual
If the FieldServer is used as a Pure Port Expander (Single Protocol) there is no restriction at all, e.g.
Modbus RTU Port Expander.
The following families of drivers support Port Expansion within the family:
Modbus RTU
Allen Bradley PCCC
®
Metasys 9
The Node parameter Write_Ack_Option needs to be configured. By default, the FieldServer will wait for a
write to complete before sending an acknowledgement of a write. However, it is possible to configure the
FieldServer to send acknowledgement of the write when the write is received and not wait for upstream
device to acknowledge it. Refer to Appendix C.4.
9
Metasys is a registered trademark of Johnson Controls, Inc
Page 56 of 86
FieldServer Configuration Manual
There are two fundamental ways of dealing with the potential accumulation of successive writes to the
same point:
Overwrite – any pending write values that have not yet been sent to the Server are overwritten
with the latest write value. This is the default option and it ensures that the last value that was
received from the Client is written to the Server. Intervening writes may be lost.
Blocking – if it is important to preserve the sequence of write values to the same point (e.g. a
switching sequence of on/off transitions), then the Server can be configured to handle writes in a
blocking mode. Here successive writes to the same point are queued to a configurable maximum
length. Writes are accepted from the Client until the queue is full, at which point further writes will
be rejected. This option must be configured on the Server using the following Connection
parameters and values:
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
Connection
Port , Protocol , Server_Hold_Timeout
P1 , mb_rtu , 12
P2 , mb_rtu ,-
Nodes
Node_Name , Node_ID , Protocol , Port , Timeout , Write_Ack_Option
Dev1 ,1 , mb_rtu , P2 , 12 , Ack_Complete
Page 57 of 86
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.
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. Thus 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. Thus during the Retry_Interval the other Node will
get 100% of the service.
Page 58 of 86
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 59 of 86
FieldServer Configuration Manual
If R1 or R2 are declared as ports in the configuration file, then Line_Drive_On and Line_Drive_Off are set
to 1ms by default, and need not be declared in the connection parameters unless the application requires
that the line drive times are adjusted.
If Line Drive times are set incorrectly, truncated messages and noise occur. If the time set is too long it
could truncate a message from another device. If the time set is too short, the FieldServer’s message will
be truncated.
For P1-P2 or R2 on the RS-232 QuickServer, the Line_Drive parameters default to 0. Line Drive is
implemented on FieldServers using the RTS (Request to send) line on the RS-232 connection.
Example
// Client Side Connections
Connections
Port , Baud , Parity , Data_Bits , Stop_Bits , Protocol , Poll_Delay , Line_drive_on , Line_drive_off
P1 , 9600 , None , 8 ,1 , Modbus_RTU , 0.100s , 0.001s , 0.001s
NOTE: Line_Drive_On and Line_Drive_Off are not supported in the FS-X30 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.
When the transmission ceases and releases the channel, noise can be generated at both the transmitting
and receiving end. In a master-slave situation using poll and response messages this leads to four
possible instances of squelch generation:
Squelch received by the master at the end of a master to slave poll transmission.
Squelch received by the slave at the end of a slave to master response transmission.
Squelch received by the slave at the end of a master to slave poll transmission.
Squelch received by the master at the end of a slave to master response transmission.
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.
Page 60 of 86
FieldServer Configuration Manual
The timing diagram illustrates the four instances of squelch, and identifies time intervals controlled by two
connection parameters, i.e. Squelch_Timer_Tx and Squelch_Timer_Rx. 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
Figure 13 – Timing Diagram: Line Drive On/Off, Tx and Rx Squelch, Poll Delay, Turnaround Delay
.
NOTE: Squelch_Timer_Tx and Squelch_Timer_Rx are not supported in the FS-X30 Series.
Page 61 of 86
FieldServer Configuration Manual
Turnaround_delay This is the time the Server takes to initiate a response after having received a poll.
The Client connection must have a Squelch_Timer_Tx value less than the
turnaround delay.
Poll_Delay This is the shortest time the Client will wait between receiving a response message
and initiating the next poll. The Server connection must have a Squelch_Timer_Tx
value less than the poll delay.
Example
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.
Connections
Port , Baud , Parity , Data_Bits , Stop_Bits , Protocol , Poll_Delay , Line_drive_On , Line_drive_Off
P1 , 9600 , None , 8 ,1 , mb_rtu , 0.1 , 0.001 , 0.001
Page 62 of 86
FieldServer Configuration Manual
SSL/TLS (Secure Sockets Layer/Transport Layer Security) is a security technology for establishing an
encrypted connection between a server and a client. This allows the secure transfer of data across
untrusted networks.
The following example sets the FieldServer to accept a secure Modbus/TCP connection on port 1502.
Add TLS_Port parameter in the connections section of the configuration file and set to a port number
between 1 – 65535.
Connections
Adapter , Protocol , TLS_Port
N1 , Modbus/TCP , 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.
If a remote client requires a certificate, then request the smc_cert.pem certificate from Sierra Monitor
Technical Support and update the remote client’s authority as per vendor instructions.
Page 63 of 86
FieldServer Configuration Manual
In addition to TLS_Port parameter also add Validate_Client_Cert in the connections section of the
configuration file and set it to “Yes”.
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.
Page 64 of 86
FieldServer Configuration Manual
If connections must be limited to only a particular domain (vendor devices), include Check_Remote_Host
to specify the domain/host name.
Connections
Adapter , Protocol , TLS_Port , Validate_Client_Cert , Cert_Authority_File , Check_Remote_Host
N1 , Modbus/TCP , 1502 , Yes , my_authorized_clients.pem , SMC
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
Make sure the certificate is in PEM format. Otherwise, convert it to PEM format (reference the link below).
support.ssl.com/Knowledgebase/Article
Configure the FieldServer to use a custom certificate as shown below:
Connections
Adapter , Protocol , TLS_Port , Server_Cert_File
N1 , Modbus/TCP , 1502 , my_server_cert.pem
Page 65 of 86
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.
Add Remote_Node_TLS_Port parameter in the nodes section of the configuration file and set to a port
number between 1 – 65535.
Nodes
Node_Name , Node_ID , Protocol , Adapter , IP_Address , Remote_Node_TLS_Port
PLC_11 , 11 , Modbus/TCP , N1 , 10.11.12.13 , 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.
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 (e.g 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.
Page 66 of 86
FieldServer Configuration Manual
Make sure the certificate is in PEM format. Otherwise, convert it to PEM format (reference the link below).
support.ssl.com/Knowledgebase/Article
Page 67 of 86
FieldServer Configuration Manual
Nodes
Node_Name, Node_ID, Protocol
// Main building Node
Test_A, 1, Modbus_RTU
Keyword Function
Ignore All lines will be ignored after this statement until a process statement is encountered.
Process Causes lines after this statement to be processed again.
End Configuration stops here, ignoring all further lines.
Page 68 of 86
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 69 of 86
FieldServer Configuration Manual
Setting the No_Stats option on a Map Descriptor will disable the display of statistics for that Map
Descriptor in FS-GUI, and will cause zero values to be reflected for all statistics relating to that Map
Descriptor in FieldServer Diagnostics Logs.
Example: This example will disable statistics on SMD_11_AI_01 but not on SMD_11_MI_02.
Map_Descriptors
Map_Descriptor_Name , Data_Array_Name , Data_Array_Offset , Function , Node_Name , Object_Type
SMD_11_AI_01 , DA_AI_01 ,0 , Passive , Virtual_Dev_11 , AI
SMD_11_MI_02 , DA_AI_01 ,1 , Passive , Virtual_Dev_11 , MI
, Object_Instance , MD_Option
, 01 , No_Stats
, 02 ,-
The FieldServer DHCP (Dynamic Host Configuration Protocol) Client can be enabled to obtain an IP
Address lease from a networked DHCP server. Currently, the DHCP hostname option can be enabled to
report the FieldServer’s network hostname to a DHCP Server. This is done by creating a text file named
hostname.ini containing a single line of text e.g.: Boiler_Bridge_A. This file must be sent to the
FieldServer and restarted to take effect. This hostname will be visible in the DHCP Server’s list of IP
leases and could be optionally, manually added to a DNS server (a Static lease IP Address should be
reserved in the DHCP Server), in order to address the FieldServer by its hostname. For more information
on enabling the FieldServer DHCP Client, refer to the FieldServer GUI Manual.
Page 70 of 86
FieldServer Configuration Manual
Appendix B. Troubleshooting
Page 71 of 86
FieldServer Configuration Manual
Appendix C. Reference
The Driver Manual contains a section for both the Client and Server side software drivers. Each section of
this supplement is split into two parts. The first describes the hardware and software included with the
FieldServer, as well as providing additional information relating to getting the FieldServer set-up and
connected. The next part discusses the configuration file in detail, and provides all the information needed
to configure the driver related parameters.
Page 72 of 86
FieldServer Configuration Manual
In transferring data points from one protocol to another via the Data Arrays in the FieldServer, the
integrity of the data format is retained. E.g. if a point representing a bit data type is transferred into a Data
Array of type Float, the value will be a 32 bit floating point value that will only take on the values of 0 and
1. If this is transferred to an integer point in another protocol, the value will still only ever take on the
values of 0 and 1 despite the type conversions. This can be overcome using Moves – refer to Section
5.2.
While this list contains acceptable variables for the FieldServer, some are not suitable for all
configurations, depending on the drivers used. Please see the Driver Manual for complete information
regarding acceptable variable values for specific drivers.
Page 73 of 86
FieldServer Configuration Manual
Page 74 of 86
FieldServer Configuration Manual
Keyword Description
Node_Online_Bits
Bit 0 is unused. Every bit corresponds to the Node with that number up to 255. E.g.: Bit 3 corresponds
to Node 3, etc. Refer to Section 6.1.4.
Node_Error_Bits
Cable_Status_Bits See Enote0002.
Hot_Standby_Status_Bits See Enote0002.
A Data Array is created to reflect Node details. Handle can be set.
Node_Detail_Stat
Values are reflected in the following order:
(Dev_Detail_Stat)
0 = Device handle, 1 = Node port; 2 = connection; 3 = old station; 4 = station.
Connection information f
Chan_Detail_Stat 0 = First value handle; 1 = port; 2 = old port; 5 = error count.
Values in Data Array will reflect these values.
Gives overview of all devices configured on the FieldServer. Cycles through all the devices on the
FieldServer in the order that they are configured.
NOTE: The Data Array needs to be long enough to store all device information.
0 = Handle; 1 = station; 2 = port; 3 = adapter; 4 = status; 6 = old station;
Node_Overview_Stat
10 = Historical message count; 11 = minutes; 12 = hour; 13 = day; 14 = month;
15 = Historical error count; 16 = minutes; 17= hour; 18 = day; 19 = month.
The next device starts at position 20 and the same structure is repeated. Reporting will stop after all the
devices have been reported or when the Data Array is full.
Same except
Chan_Overview_Stat 0 = handle; 1 = port; 2 = adapter; 3 = status; 8 = old port; 9 = old adapter. Thereafter follow Historical
message and Error blocks in the same format as above.
Reports the number of errors per hour for each Node. Location in the Data Array is the station of the
Dev_Error_Rates device i.e. if the device station is configured to be 10, position 10 in the Data Array will show the
number of errors per hour. Errors for the past 60 minutes are stored.
Dev_Msg_Rates Same as above, except counting messages not errors.
Dev_Error_Percentage Percentage of messages generating errors over the past hour.
Page 75 of 86
FieldServer Configuration Manual
Keyword Description
Provides the communication status between the FieldServer and the actively mapped Nodes. Refer to
Node_Status
Section 6.1.1.
Where 2 nodes have the same Node_ID or Node_ID’s are longer than 255, each Node can be assigned
Alias_Node_Status
an Alias_Node_ID which can be used to provide Node Status. Refer to Section 6.1.2.
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.
This parameter can access the system clock via Data Array. The suggested Data Array format is
UINT32, with a minimum length of 9. The Data Array calculates system time in the following format:
Offset Description
0 Seconds since 1 Jan 1970 00:00:00
1 Milliseconds past the second
2 Year ( e.g. 2014 )
Get_System_Time
3 Month ( 1-12)
4 Day
5 Hour
6 Minute
7 Seconds
8 Milliseconds
10
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 76 of 86
FieldServer Configuration Manual
The length of the queue can be configured if blocking mode is set. Blocking
will occur when there is no more space on the Write_Queue.
Write_Queue_Size* Non-negative integer, 0
If size=0 every successive write is blocked. A message will be displayed
when blocking occurs, except if the Queue_Size=0.
Only relevant to ProtoNode. If this parameter is set to Yes or Enabled, it
loads the RS-485 line by placing additional resistance on it This has the Enabled, Yes, Disabled,
Bias_Mode*
benefit of making the signals cleaner in a noisy environment but may reduce No
the maximum number of devices possible in a multidrop configuration.
The minimum amount of time that must pass between one Client Map
Poll_Delay* Descriptor completing its task and the next Client Map Descriptor being .05 seconds
serviced. Refer to Driver Manuals.
Low_Pri_Poll_Delay* The poll delay used for lower priority Map Descriptors. Protocol dependent
When an upstream device polls the FieldServer, and the data is unavailable
or too old, the driver generates a poll to the downstream device for fresh
Server_Hold_Timeout* 2 seconds
data, (port expansion). The Server_Hold_Timeout defines the time available
for this transaction to complete before an error is returned.
IP_Address* An IP Address for the connection if applicable.
Remote_IP_Address* A remote IP Address for the connection if applicable.
Timeout* The timeout defined for the connection. 2 seconds
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 Arcnet, DH+, Modbus+, PROFIBUS, etc
MAC_Address (Net_number) Specify Network MAC address
Page 77 of 86
FieldServer Configuration Manual
Section Title
Nodes
Column Title Function Legal Values
Host_Name* Specifies the host name of the remote device. Any valid host name11, -
Specifies how many sequential errors must occur before
marking a data buffer and poll block bad, and marking a device
offline. The FieldServer will poll the device and if it receives no
Retries* response will retry polling the device the number of times Count default 3
specified by the retries parameter. The FieldServer will attempt
to recover the connection once the recovery interval has
elapsed.
The amount of time in seconds that the driver should wait
Retry_Interval* Interval in Seconds
before retrying a poll after a timeout has occurred.
A Server Node could send contradictory information if its data
comes from multiple Client Nodes, some of which are offline
and others online, causing it to respond differently depending
on what data is polled. This confuses some systems. This
setting allows the user to select whether the Server Node
should appear online or offline if there is a mix of Client Node
Statuses.
Ignore_Clients - causes the Server to behave explicitly – not
to depend on the status of the Client Node, but on the data Ignore_Clients
validity only. i.e. non-expired data will be served whether or not Any_Offline
Srv_Offline_Method*
the responsible Client Nodes are online. All_Offline
Any_Offline - suppress a data response if ANY of the Always_Respond
responsible Client Nodes for the data range concerned are
offline
All_Offline - only suppress a data response if ALL of the
responsible Client Nodes for the data range concerned are
offline.
Always_Respond - overrides the data validity as well. i.e. it
forces the Server Node to regard data as valid even if the
Client Node is offline or the data has expired.
Ack_Complete - the Server waits for the Client Side write
transaction to complete before acknowledging the Write
request. This makes for good reliability but has a cost in terms
of throughput.
Ack_Immediate (default) - fast, but less reliable. The Server
immediately acknowledges a Write request before queuing the
Client Side Write. The acknowledgement is thus not affected
by the success or failure of the Client Side Write. Only Ack_Complete,
Write_Ack_Option*
recommended if the same points are updated regularly. (In Ack_Immediate, Ack_Verified
PEX mode Ack_Immediate is the same as Ack_Complete).
Ack_Verified - most reliable, and slowest. The Server waits for
a Client Side Write and Readback to be completed, and only
updates the data value if a data comparison between the Client
Side Write and Read values passes. If the transaction fails for
any reason or if the data comparison fails, the Server responds
with a negative acknowledgement.
11
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 78 of 86
FieldServer Configuration Manual
Section Title
Nodes
Column Title Function Legal Values
Default write behavior is to attempt a write operation (WRB or
WRBX) only once. If the write times out then the write
operation is aborted. If set to yes, this parameter enables failed
write requests to be retried. The number and timing of the write
Enable_Write_Retries* retries are decided via Retries and Retry_Interval parameters. Yes, No
Warning: Ensure that repeated writes are safe for your
application since a Write may be retried because of a
transmission error in the Write acknowledgement, in which
case the remote device will see two similar write requests.
If this parameter is defined, when a Client Node goes offline,
Clear_Data_Array, No_Action, -
Node_Offline_Action* all Data Array values of Map Descriptors defined on this Node
will be set to zero.
Remote_IP_Address* The remote IP Address used by this node. Required for protocols that use it
Specified in the configuration file as the PLC_Type. - Consult
Node_Type* Required for protocols that use it.
the driver manual for additional information.
Port* Port number for a serial connection.
This Client Side parameter enables the user to configure the
timing of a read after a write. The Readback operation will
apply to all drivers that support Active Reads and Write-
Through operations.
Readback_Asynchronously - When a write occurs, the read
Readback_On_Write,
will occur when scheduled.
Readback_Option* Readback_Asynchronously,
Readback_On_Write - When a write occurs, set the timer to 0,
Readback_Immediately_On_Write
so Responsible Map Descriptor gets queued in the next cycle.
Readback_Immediately_On_Write - Prioritize both write and
read to happen in a higher priority queue than normal reads.
The Readback operation will apply to all drivers that support
Active Reads and Write-Through operation.
Required for protocols that use it, not needed for other.
MAC_Address* Required for protocols that use it
Specified by remote Mac Address of the device.
No_Response, Old_Data,
The type of response the Server side of the driver sends when
Node_Offline_response* Zero_Data, FFFF_Data, (Not valid for
it finds the Server node to be offline.
all protocols)
Timeout* The timeout specified for the node. 2 seconds
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
Ports_on_PLC* See Enote0002.
port on a PLC to poll.
Remote_Node_TLS_Port
Validate_Server_Cert
Cert_Authority_File Refer to Section 10.
Check_Remote_Host
Client_Cert_File
Page 79 of 86
FieldServer Configuration Manual
Page 80 of 86
FieldServer Configuration Manual
Page 81 of 86
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 82 of 86
FieldServer Configuration Manual
Page 83 of 86
FieldServer Configuration Manual
Page 84 of 86
FieldServer Configuration Manual
Page 85 of 86
FieldServer Configuration Manual
Term Description
In OSI terminology, a gateway is a hardware and software device that connects two dissimilar systems such
Gateway as a LAN and a mainframe. It operates at the fourth through seventh layers of the OSI model. In Internet
terminology, a gateway is another name for a router.
GUI (FS-GUI) Graphical User Interface.
A concentrator is a hub repeater or concentrator that brings together the connections from multiple network
Hub Nodes. Hubs have moved past their origins as wire concentrator centers, and often house FieldServers,
routers, and network-management devices.
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.
RUI Remote User Interface.
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 86 of 86