-
A Sierra Monitor Company
Driver Manual
(Supplement to the FieldServer Instruction Manual)
FS-8700-66 GE SNP
APPLICABILITY & EFFECTIVITY
Effective for all systems manufactured after May 1, 2001
Driver Version:
1.02
Document Revision: 9
Page 3 of 29FS-8700-66_GE-SNP Manual
Page 3 of 29
1.
GE_SNP Description
The GE-SNP Serial driver allows the FieldServer to transfer data to and from devices over
either RS-232 or RS-485 using GE-SNP Serial protocol. The FieldServer can emulate either a
Server or Client.
The FieldServer provides functions to read and write PLC memory and change the privilege
level. Standard SNP mailbox messages are used. The driver does not support Datagram
messages and cannot parse them. These messages are defined by the SNP protocol to allow
multiple data types to be packed into one message. They are not commonly used by the HMI
and 3rd party applications and are inconsistent with the FieldServer’s Write Through and Port
Expander capabilities.
The driver can expose communications statistics in a Data Array so that downstream devices
can monitor them.
Page 4 of 29FS-8700-66_GE-SNP Manual
Page 4 of 29
2.
Driver Scope of Supply
2.1. Supplied by FieldServer Technologies for this driver
FieldServer Technologies
PART #
Description
FS-8915-10
FS-8917-03
FS-8700-66
UTP cable (7 foot) for RS-232 use
RJ45 to DB9M connector adapter
Driver Manual.
Page 5 of 29FS-8700-66_GE-SNP Manual
Page 5 of 29
3.
Hardware Connections
The FieldServer is connected to the GE PLC in one of two ways.
Almost every GE PLC has a RS-232 and RS-485 port. Possible cable configurations are
illustrated below.
A converter is required to connect between RS-232 and RS-485. An example of connection
configurations for the Model480TLED connector is depicted overleaf. Any equivalent connector
can be used.
Cable 1
RS-485 port
15 pin female
RS-485 port
FieldServer
GE-PLC
RS-232 port
RJ11
RS-232 port
Cable 2
Cable 1
Pin 1 at bottom
GE
10 +
11 -
12 +
13 -
7
FieldServer
+
Tx
Tx
-
+
Rx
Rx
-
Gnd
Gnd
Cable 2
FieldServer
GE
5
GE SNP
CONNECTION DIAGRAM
Rx
Tx
Rx
Gnd
-
Tx
2
3
4
Gnd
1
6
*
CTS
RTS
BASE NAME:
FILE NAME:
DATE: 2/2/04
BY: MF
Page 6 of 29FS-8700-66_GE-SNP Manual
Page 6 of 29
Remote Serial
Device– 4 wire
TDA(-)
TDB (+)
RDB(+)
RDA(-)
GND
RS- 232 TO RS-422/485
OPTICALLY ISOLATED
CONVERTER
O
N
2
3
2
3
4
1
2
3
4
5
6
7
8
Recceive
TB1
TB2
TDA(-)
TDB(+)
RDA(-)
RDB(+)
5
7
Transmit
7
electronics
MODEL485OTLED
B&B
422/ 485GND
+12V
R-232
GND
J2
Remote Serial
Device– 2 wire
DB25F
21787
91035
+ (B)
-
(A)
GND
From FieldServer
Converter for Cable 3: From RS-232 on FieldServer to RS-485 on device.
RS-232 Device
RS-232 TO RS-422/485
OPTICALLY ISOLATED
O
N
Rx
2
3
4
Rx
Tx
CONVERTER
2
3
5
1
2
3
4
5
6
7
8
Tx
Recceive
TB1
TB2
TDA(-)
TDB(+)
RDA(-)
RDB(+)
422/485
GND
RTS
GND
RTS
Transmit
electronics
MODEL 485OTLED
7
B&B
GND
J2
+12V
R-232
GND
7
DB25F
FieldServer
91035
Note: Pins 4&5 and pins 6,8&20 are
bridged internally to allow for RS-232
devices that need hardware control.
R1 or R2
+ (B)
-
(A)
GND
Converter for Cable 4: From RS-485 on FieldServer to RS-323 on device.
GE SNP
CONNECTION DIAGRAM
RS-485 to RS-232 using
Model4850 TLED connector.
BASE NAME:
FILE NAME:
DATE:
BY:
2/16/08
MC
FS-8700-66-1
Page 7 of 29FS-8700-66_GE-SNP Manual
Page 7 of 29
RJ45
Ethernet cable segment
RJ45
5
3
2
7
6
9 pin
9 pin
Horner
232
to
9 pin
5
3
2
9 pin
422
15 pin
CPU or 2ndary port
25 pin
PLC
null modem
Pri or 2ndary port
GE LOGICMASTER
PC Software to PLC
15 pin
Horner
232
to
9 pin
422
9 pin
9 pin
Com1
PC
RJ45
Typical
FieldServer
Cable
(408)-262-2299
RJ45
P1-P8
GE SNP
CONNECTION DIAGRAM
BASE NAME:
FILE NAME:
DATE: 2/2/04
BY: MF
Page 8 of 29FS-8700-66_GE-SNP Manual
Page 8 of 29
4.
Configuring the FieldServer as a GE_SNP Client
For a detailed discussion on FieldServer configuration, please refer to the FieldServer
Configuration Manual. The information that follows describes how to expand upon the factory
defaults provided in the configuration files included with the FieldServer (See “.csv” sample files
provided with the FieldServer).
This section documents and describes the parameters necessary for configuring the FieldServer
to communicate with a GE_SNP Server.
4.1.
Data Arrays/Descriptors
The configuration file tells the FieldServer about its interfaces, and the routing of data
required. In order to enable the FieldServer for GE_SNP communications, the driver
independent FieldServer buffers need to be declared in the “Data Arrays” section, the
destination device addresses need to be declared in the “Client Side Nodes” section, and
the data required from the Servers needs to be mapped in the “Client Side Map Descriptors”
section. Details on how to do this can be found below.
Note that in the tables, * indicates an optional parameter, with the bold legal value being the
default.
Section Title
Data_Arrays
Column Title
Function
Legal Values
Up to 15 alphanumeric
characters
Data_Array_Name Provide name for Data Array
Float, Bit, UInt16, SInt16,
Provide data format. Each Data Array Packed_Bit,
Byte,
Data_Array_Format
can only take on one format.
Packed_Byte,
Swapped_Byte
Number of Data Objects. Must be
larger than the data storage area
required by the Map Descriptors for
the data being placed in this array.
Data_Array_Length
1-10,000
Example
// Data Arrays
Data_Arrays
Data_Array_Name,
DA_AI_01,
DA_AO_01,
DA_DI_01,
Data_Format,
UInt16,
UInt16,
Bit,
Data_Array_Length
200
200
200
200
DA_DO_01,
Bit,
Page 9 of 29FS-8700-66_GE-SNP Manual
Page 9 of 29
4.2.
Client Side Connection Descriptors
Section Title
Connections
Column Title
Function
Legal Values
P1-P8, R1-R21
Specify which port the device is
connected to the FieldServer
Specify protocol used
Port
Protocol
Baud*
SNP
110 – 19200, standard baud rates
only (Vendor limitation), 19200
Specify baud rate
Parity*
Specify parity
Even, Odd, None, Mark, Space
Data_Bits*
Stop_Bits*
Specify data bits
Specify stop bits
7, 8
1
Handshaking* Hnadshaking is not supported
None
Poll _Delay*
Time between internal polls
0-32000 seconds, 1 second
The timeout specified for the connection is used as the data link layer
timeout. It is also used as the timeout for each Map Descriptor if a timeout
is not explicitly defined for a Map Descriptor.
Timeout
Example
// Client Side Connections
Connections
Port,
P1,
Protocol,
SNP,
Baud,
19200, Odd,
Parity,
Handshaking,
None,
Poll_Delay
0.100s
GE Port Defaults
Series 90-30 PLC’s
Series 90-70 PLC’s
Baud
Data Bits
Parity
19,200
8
Odd
1
19,200
8
Odd
1
Stop Bits
Max Link Idle Time
10 Secs
5 Secs
GE Port Capabilities
Baud
300, 600, 1200, 2400, 4800, 9600, 19200
Data Bits
Parity
Stop Bits
Max Link Idle Time
8
Odd, Even, None
1, 2
1 to 60 Secs
1
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 10 of 29FS-8700-66_GE-SNP Manual
Page 10 of 29
4.3.
Client Side Node Descriptors
Section Title
Nodes
Column Title
Function
Legal Values
Provide name for Node. The driver
uses the Node name to establish a
connection with the Server if the
Node_ID is non-zero.
If the Node_ID is zero then the driver Up
to
32
alphanumeric
Node_Name
ignores the Node name when logging characters
onto the PLC and logs on using a
Null name. Thus by setting the
Node_ID to zero you can allow the
driver to log onto a Node whose
name is not known.
The parameter is used to control how
the driver logs onto the PLC. Read 0,1
the notes above (Node_Name)
Node_ID
Protocol
Port
Specify protocol used
Specify which port the device is
connected to the FieldServer
SNP
P1-P8, R1-R22
Example
// Client Side Nodes
Nodes
Node_Name,
PLC 1,
Node_ID,
1,
Protocol,
SNP,
Port
P8
4.4.
Client Side Map Descriptors
4.4.1.
Column Title
Map_Descriptor_Name Name of this Map Descriptor
FieldServer Related Map Descriptor Parameters
Function Legal Values
Up to 32 alphanumeric
characters
Name of Data Array where One of the Data Array names
data is to be stored in the from “Data Array” section
Data_Array_Name
FieldServer
above
0 to maximum specified in
“Data Array” section above
Data_Array_Offset
Function
Starting location in Data Array
Function of Client Map
Descriptor
RDBC, WRBC, WRBX
2
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 11 of 29FS-8700-66_GE-SNP Manual
Page 11 of 29
4.4.2.
Column
Driver Related Map Descriptor Parameters
Function
Legal Values
Title
One of the Node
names specified in
Node_Name Name of Node to fetch data from
“Client
Node
Descriptor” above
Discrete Inputs (%I)
Discrete Outputs (%Q)
Discrete Temporaries
(%T)
Discrete
(%M)
Internals
Genius Global Data
(%G)
Analog Inputs (%AI)
Data_Type
Data type
Analog
Outputs
(%AQ)
Registers (%R)
%SA Discrete
%SB Discrete
%SC Discrete
%S Discrete (%S)
Length of Map Descriptor. Ensure that the
length does not exceed the table in the PLC
Length
1-1000
Starting address of read block / write block. The 1 , 2 , 3
Address
1st element of each Data type Table is referred Positive
whole
to as address one.
numbers
Use to override the default format for obtaining
data. Bit tables are by default read by reading
whole bytes at a time (If the Length is 10 then Bit, Byte
10 bytes of data are read and placed in 10 Data
Format*
Array locations)
The format for %AI,
%AQ and %R cannot
If you wish to read bits instead then use this be changed.
parameter. (If the Length is 10 then 10 bits are
read and each bit is stored in its own location.)
This parameter is only specified when you
create a write Map Descriptor to change the
privilege level.
GE_Func*
CPL, RW
If it is not specified the driver assumes the
default (RW – Read/Write).
4.4.3.
Timing Parameters
Column Title
Scan_Interval
Function
Rate at which data is polled
Legal Values
≥0.1s
Page 14 of 29FS-8700-66_GE-SNP Manual
Page 14 of 29
5.
Configuring the FieldServer as a GE_SNP Server
For a detailed discussion on FieldServer configuration, please refer to the FieldServer
Configuration Manual. The information that follows describes how to expand upon the factory
defaults provided in the configuration files included with the FieldServer (See “.csv” files
provided with the FieldServer).
This section documents and describes the parameters necessary for configuring the FieldServer
to communicate with a GE_SNP Client.
The configuration file tells the FieldServer about its interfaces, and the routing of data required.
In order to enable the FieldServer for GE_SNP communications, the driver independent
FieldServer buffers need to be declared in the “Data Arrays” section, the FieldServer virtual
Node(s) needs to be declared in the “Server Side Nodes” section, and the data to be provided to
the Clients needs to be mapped in the “Server Side Map Descriptors” section. Details on how to
do this can be found below.
Note that in the tables, * indicates an optional parameter, with the bold legal value being the
default.
5.1.
Server Side Connection Descriptors
Section Title
Connections
Column Title
Function
Legal Values
P1-P8, R1-R23
Specify which port the device is
connected to the FieldServer
Port
Protocol
Baud*
Specify protocol used
SNP
110 – 115200, standard
baud rates only
Specify baud rate
Even, Odd, None, Mark,
Space
Parity*
Specify parity
Data_Bits*
Stop_Bits*
Specify data bits
7, 8
Specify stop bits
1
Handshaking*
Poll Delay
Specify hardware handshaking
Time between internal polls.
RTS, RTS/CTS, None
0-3200s, 1s
Example
// Server Side Connections
Connections
Port,
P1,
Protocol,
SNP,
Baud,
19200,
Parity,
Odd,
Handshaking
None
3
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 15 of 29FS-8700-66_GE-SNP Manual
Page 15 of 29
5.2.
Server Side Node Descriptors
Section Title
Nodes
Column Title
Function
Legal Values
The Node name is used
differently in a Server Node
Provide name for Node. The
driver uses the Node name to
establish a connection with the Up to 32 alphanumeric
Server if the Node_ID is non- characters
zero.
Node_Name
See Section 6.3 for additional
information.
The parameter is used to
control how the driver logs onto
the PLC. Read the notes above
(Node_Name)
Specify protocol used
Node_ID
Protocol
0,1
SNP.
In a number of FieldServer
configurations it is common to
omit the port when defining a
Server Node this cannot be
Server_Hold_Timeout*
done with the SNP protocol P1-P8, R1-R24
unless the FieldServer is to be
used to emulate only one Node
and is not polling any other
SNP devices.
Example
// Server Side Nodes
Nodes
Node_Name,
PLC 1,
Node_ID,
1,
Protocol,
SNP,
Port
P8
4
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 16 of 29FS-8700-66_GE-SNP Manual
Page 16 of 29
5.3.
5.3.1.
Server Side Map Descriptors
FieldServer Specific Map Descriptor Parameters
Column Title
Function
Legal Values
to 32 alphanumeric
Up
characters
Name of Data Array where data One of the Data Array names
Map_Descriptor_Name Name of this Map Descriptor
Data_Array_Name
Data_Array_Offset
Function
is to be stored in the FieldServer
from “Data Array” section above
0 to maximum specified in “Data
Array” section above
Starting location in Data Array
Function
Descriptor
of
Server
Map
Server
5.3.2.
Driver Specific Map Descriptor Parameters
Column Title
Function
Legal Values
One of the Node names
specified in “Client Node
Descriptor” above
Name of Node to fetch data
from
Node_Name
Discrete Inputs (%I)
Discrete Outputs (%Q)
Discrete Temporaries (%T)
Discrete Internals (%M)
Genius Global Data (%G)
Analog Inputs (%AI)
Data type
Data_Type
Use one of the Data Types Analog Outputs (%AQ)
specified in brackets.
Registers (%R)
%SA Discrete
%SB Discrete
%SC Discrete
%S Discrete (%S)
Length of Map Descriptor
Length
Ensure that the length does 1 - 1000
not exceed the table length in
the PLC.
Starting address of read block
/ write block
1 , 2 , 3
Positive whole numbers
Address
The 1st element of each Data
type Table is referred to as
address one.
Has no meaning on the Server
as the driver responds based
on the nature of the request
If the Client requests byte data
then the one byte is obtained
from each array element. If the
Client requests bits then one
bit state is obtained from each
array element.
Format
N/A
Page 17 of 29FS-8700-66_GE-SNP Manual
Page 17 of 29
5.3.3.
Timing Parameters
Column Title
Function
Legal
Values
Specifies time Server side waits before responding to
Client that Node is offline on FieldServer Client side.
Scada_Hold_Timeout
>1.0s
Page 19 of 29FS-8700-66_GE-SNP Manual
Appendix A. Troubleshooting Tips
Page 19 of 29
•
Every 2nd message Times Out A possible cause is that the poll frequency is so low that
the time between polls is greater than the Max Link Idle Time (of the PLC). If the time is
exceeded the connection is closed. Thus when the next poll is received by the PLC it
ignores it and hence it times out in the FieldServer. After timing out, the driver re-establishes
the connection for the next poll.
•
Very slow Comms Rate A timer known as the T1 timer is the minimum time that must pass
before a response to a message can be sent. Both ends of a SNP connection have their
own T1 timer (hard coded in the driver). When a connection is made the timers are
exchanged and the larger of the two is used. The drivers T1 timer is set to a very small
number. SNP message #6 indicates the size of the T1 timer. You may need to configure the
PLC to improve communications.
•
Multidrop RS-485 networks.
on a network at a time. When using nameless Nodes (Node_id=0) there may be one and
only one PLC on the connection.
SNP protocol specifies that their may only be one master
Page 20 of 29FS-8700-66_GE-SNP Manual
Appendix B. Error Messages
Page 20 of 29
Message
SNP:#1 FYI. The MapDesc called The length of the Map Descriptor defined to expose driver
<%s> is too short.
statistics must be at least 660.5
Explanation
SNP:#2 FYI. You could have You may safely ignore this message. Read Appendix B.1
used a MapDesc called <%s> to for information on how to expose the driver’s
expose diagnostic info.
communication statistics using a Data Array.
The driver is required to use the larger of its own or the
PLC’s T1 (Inter message) timer. This message is
produced when the PLC returns a T1 timer that is larger
than the driver’s timeout. Using this timer will mean that
every message will timeout. Increase the timeout for the
Node, connection or Map Descriptor as appropriate.5
A connection request has been received for the Node
SNP:#3 FYI. SNP device requires
inter msg timer
Nid=<%s>.
<
timeout.
SNP:#4 Error. Cant emulate named in the error message but this Node has not been
Node=<%s>
defined in the CSV file. The connection has not been
established.5
This could result from a corrupted message or it may
bytes indicate an unexpected/unsupported aspect of the SNP
protocol. If the message occurs frequently, take a log and
report the error to FieldServer.
SNP:#5
expected/rcvd=%d/%d
Err.
Total
This message requires no action. It reports the T1 timer
SNP:#6 FYI. T1 timer set to value selected by the slave in milliseconds. If the value is
<%ld> mSec.
large then this will slow the communications rate and you
may wish to reconfigure the slave.
SNP:#7 FYI. T1 timer reset to This is the FieldServer slave reporting its T1 timer after a
<%ld> mSec. Client has established a connection No action is required.
SNP:8 FYI. Subsequent connect No action is required. A Client has attempted to re-
response ignored. NName=<%s> establish a connection that is already open.
This message uses two lines of the error log. It is printed
when a slave declines a request. The major and minor
faults are reported. These numbers are printed in
SNP:9 Err. Device declined hexadecimal. See Appendix C.3 for further details. The
request. Mjr=%x(h) Min=%x(h) message reports the Map Descriptor which generated the
Possible Offending Poll =<%s> rejected poll, the data type, the address and the number of
addr=%d length=%d
elements being requested. Often this message will be the
result of a poll that requests data past the end of a PLC
data table or when the length is based on a bit count but
the poll actually requests bytes.5
This message is reported when the driver receives an
unexpected SNP message. Record this information, take
a log and report the error to FieldServer.
SNP:10
type=%d(h) mbox=%x(h)
Err.
Wrong
msg
5 Edit the CSV, correct the problem and reset the FieldServer
Page 21 of 29FS-8700-66_GE-SNP Manual
Page 21 of 29
Message
Explanation
The length of some messages is variable and is
dependent on settings or the particular implementation of
the SNP. Normally this driver adjusts to use the largest
size required by a Client or slave response but this
message indicates that the driver’s maximum had been
reached. The data has been discarded so it is important
that the situation be remedied. The data type, address and
the number of elements being requested are reported.
Two possible solutions exist.
SNP:11 Err. Max Tbuf Len.
FieldServer cant go bigger than
%d bytes
Possible Offending Poll =<%s>
addr=%d length=%d
Change the Client’s communications configuration and
reduce the size of the text buffer length to 4096 bytes.
Create two Map Descriptors that each read half the data.
This message requires no response. It indicates that the
slave requires a longer text buffer than the driver’s default.
The driver has adjusted its buffer to the new length
indicated.
SNP:12 FYI. Max Tbuf Len.
FieldServer != Device. Changed
FieldServer to %d bytes
The driver has received an unexpected reply in response
to a poll. Make a log, record the values reported in this
message and contact FieldServer for support.
SNP:13
type=%d(h) mbox=%x(h)
Err.
Wrong
msg
The driver has been polled by a Client and it has received
an unexpected message. If the error occurs repeatedly
SNP:#14 Error. Attach Response. then make a log, record the values reported in this
Unexpected !
message and contact FieldServer for support. There are a
few variations of this message but they all indicate the
same problem.
SNP:#15 FYI. Node Station - The Node_ID has not been defined for a SNP Node. Read
forcing to 0
the notes in Appendix B.1 and in sections 4.3 and 5.2. 6
SNP:#16 Err. Addresses start at GE devices number the elements of data tables starting at
1. MapDesc=<%s>
element 1.6
SNP:#17 Err. MapDesc=<%s>
has bad data type.
SNP:#18 Err. MapDesc=<%s>
has bad data type.
Refer to section 4.4.2 for a list of valid data types.6
SNP:#19 Err. Mapdesc=<%s> A Map Descriptor must have a length. The minimum
has invalid length.
length is “1”. 6
SNP:#20 Err. do diagnostic x
SNP:#21 Err. do diagnostic x
If you see this error, report it to FieldServer tech support.
The message is produced when a QA diagnostic is
produced and should only ever be seen during testing by
FieldServer Inc.
SNP:#22 Err. do diagnostic x
SNP:#23 Err. Illegal Node_ID
[%d] - Set to 1
Legal Node_ID’s are 0-65535.6
The CPU Id is a max 10 characters including the
terminating Null character. The driver has found one that
isn’t correctly formatted. This error may be ignored. It will
not affect operation of the driver. It does mean the driver
cannot store the name of the connected device in the stats
array.
GE_SNP:#24 FYI. Parse Error:
Attach: CPU ID is not Null
terminated.
6 Edit the CSV, correct the problem and reset the FieldServer
Page 22 of 29FS-8700-66_GE-SNP Manual
Appendix B.1. Driver Stats
Page 22 of 29
The statistics recorded by the GE-SNP Serial Driver are slightly different from the way that
FieldServer driver normally records statistics. This difference arises from the fact that this
driver is not a simple poll response driver. Bear in mind that a single poll can generate a
large number of response fragments.
Fragment Ack/nack messages are NOT counted as messages but the bytes sent/rcvd are
counted.
Connection messages are counted as messages and the bytes sent/rcvd are counted.
This driver can expose these and additional statistics by writing data to a Data Array.
A special Map Descriptor is required. The driver recognizes the Map Descriptor by its name
which must be "SNP-stats”.
Example: Configuration of this special Map Descriptor
Nodes
Node_Name,
Null_Node,
Protocol
SNP
Data_Arrays
Data_Array_Name,
Data_Format,
Data_Array_Length
660
SNP_STATS
,
UINT32
,
Map_Descriptors
Map_Descriptor_Name, Data_Array_Name,
snp-stats SNP_STATS
Node_Name,
Length
660
,
,
Null_Node
,
When the driver sees this Map Descriptor it uses the Data Array SNP_STATS (in this
example) to store driver specific statistics. Only one of these Map Descriptors may be
specified (per tier) per FieldServer.
The driver stores the following stats for each port.. The offset into the Data Array can be
found by multiplying the port number by 60
NoMessage
Description
This is 10 bytes long. The numbers placed
here correspond to the ASCII characters of
the responding Node's name.
0 GE_STAT_CPU_ID
The current value of the T1 timer is
reported here. The driver uses the larger of
its own and the slave T1 Timer.
11 GE_STAT_T1_TIMER
12 GE_STAT_MBOX_NAK_MAJOR
13 GE_STAT_MBOX_NAK_MINOR
14 GE_STAT_MBOX_NAK_CNT
15 GE_STAT_MBOX_PROG_NUM
16 GE_STAT_MBOX_SWEEP
Most recent Mailbox Nak error code. See
additional table below
Mailbox Nak error Count
Most recent Piggyback info
Page 23 of 29FS-8700-66_GE-SNP Manual
NoMessage
Page 23 of 29
Description
17 GE_STAT_MBOX_PLC_STAT
18 GE_STAT_MBOX_PRIV_LVL
If a poll for a SNP Node is received and
there are no Nodes defined or there is no
matching Node.
19 GE_STAT_NO_NODES
Counts the number of time a connection
attempt is made
Counts the number of times the driver
responds to connection attempts when
acting as a Server
Counts the number of connection attempts
that timed out.
Counts the number of connection and poll
messages sent by the Client (whole
messages only)
20 GE_STAT_CONNECT_ATTEMPT
21 GE_STAT_CONNECT_RESPONSE
22 GE_STAT_CONNECT_NO_RESPONSE
23 DRV_DLL_CLIENT_SENDS_MSG
Counts the number of simple ack/nak’s sent
by Client. These ack/nak’s indicate
messages if formatted correctly, however
the device can not necessarily respond to
the request.
24 DRV_DLL_CLIENT_SENDS_ACKNAK
25 DRV_DLL_CLIENT_SENDS_BYTES
Byte count includes ack/nak's sent and all
fragments and connection
26 DRV_DLL_SERVER_SENDS_MSG
27 DRV_DLL_SERVER_SENDS_ACKNAK
28 DRV_DLL_SERVER_SENDS_BYTES
Same as for Client
Counts ack/nak’s, and all message
fragments excluding attach responses
Byte count from above messages
29 DRV_DLL_CLIENT_RCVS_MSG
30 DRV_DLL_CLIENT_RCVS_BYTES
Counts message fragments and ack/nak’s
rcvd from Client but excludes Client
responses to Server fragments
31 DRV_DLL_SERVER_RCVS_MSG
32 DRV_DLL_SERVER_RCVS_BYTES
33 DRV_DLL_TIMEOUT
Byte count for above messages
Count of timeouts caused by no response
or ic_timeout at the DLL layer
Count of the number of times that the DLL
layer went into an error state.
34 DRV_DLL_ERROR
The error code from the most recent DLL
error is stored here.
35 DRV_DLL_ERROR_CODE
Corresponds to slave driver actions in
36 GE_STAT_DRV_ACT_NODE_OFFLINE_Rresponding to a poll. The polled Node is
offline.
Corresponds to slave driver actions in
responding to a poll. There is no Map
Descriptor that can be used to process the
37 GE_STAT_DRV_ACT_NO_MAPDESC_R
poll from the Client.
Page 24 of 29FS-8700-66_GE-SNP Manual
Page 24 of 29
NoMessage
Description
Corresponds to slave driver actions in
38 GE_STAT_DRV_ACT_NO_DATA_R
responding to a poll.
available.
There is no data
Corresponds to slave driver actions in
responding to a poll. This should never
happen as a connection would have been
refused.
39 GE_STAT_DRV_ACT_NO_NODE_R
The slave cannot respond to a poll for one
of the reasons above.
The Server has responded to a poll
normally
40 GE_STAT_DRV_ACT_NAK_R
41 GE_STAT_DRV_ACT_NORMAL_R
42 GE_STAT_CD_UPD_CHECK
43 GE_STAT_CD_UPD_FUNCTION
44 GE_STAT_CD_UPD_NO_START
A
message is invalid because the
checksum failed.
A message is invalid because the message
type is not known.
A message is invalid because it begins with
the wrong codes.
A message is invalid because it is
unexpected in its current context or some
other reason.
45 GE_STAT_CD_UPD_PROTO
Counts the number of read/write message
fragments sent by the Client.
46 GE_STAT_CLIENT_SENDS_FRAG
47 GE_STAT_CD_UPD_IC_TIMEOUT
Counts the number of times that an IC
timeout error occurred at the DLL layer
Counts the number of times a message
was ignored. A message will be printed to
the error log with the reason.
Counts the number of times that the slave
received a short nak from the Client
Counts the number of times the DLL layer's
buffer was too full to process additional
incoming data.
48 GE_STAT_CD_UPD_MSG_IGNORED
49 GE_STAT_CD_UPD_NAK
50 GE_STAT_CD_UPD_STREAMING
Page 25 of 29FS-8700-66_GE-SNP Manual
Page 25 of 29
Appendix C. Advanced Topics
Appendix C.1. SNP Node Names
The following notes describe how the Node name is used when the FieldServer is acting as
a Server.
When a Client attempts to establish a connection it may do so by sending the name of the
Node it wishes to connect to or by sending a Null Node name.
If the Client sends a Null Node name then the FieldServer will connect if any SNP Nodes
have been defined for the same port as the Client using the Null name. In such a case the
Node must be connected to a port (This is not always common with FieldServer Server
configurations).
Example: Client uses Null name connection. In this case Node must be connected to the
Client’s port; the Node name is ignored and only one SNP Node per port.
Ports
Port,
P1 ,
baud
….
Nodes
Node_Name,
Node1,
Port
P1
If the Client uses the Node name during a connection attempt then the FieldServer uses
the name to find a matching Node. The name must be an exact match. If a match is found
then the connection can be established. In this case the Node does not have to be tied to
a particular port and thus one Node could respond to different Clients polling it on different
ports. If this method is used and the Node is tied to a port then the Client must poll on the
same port.
Example: Client uses a specific name to connect. In this case provided there is a Node
with a matching name the connection will be made
Ports
Port,
P1,
baud ….
….
Nodes
Node_Name,
Node1,
Protocol
SNP
Page 26 of 29FS-8700-66_GE-SNP Manual
Page 26 of 29
Appendix C.2. Scaling
Scaling was added in version 1.02a and is not supported for earlier versions.
Scaling is applied by the driver when bytes and registers are stored.
When bit data is transferred in bit format than scaling is not applied. When bit data is
transferred using bye format’s then scaling may be applied.
Scaling is applied using the FieldServer’s standard Map Descriptor parameters.
Data_Array_Low_Scale,
Data_Array_High_Scale,
Device_Low_Scale,
Device_High_Scale
Appendix C.3. Server Response NAK, Major and Minor Error Codes
From version 1.02c the when the Server responds with a MailBox Nak it now allocates
different Major and Minor error codes to differentiate the NAK reasons.
0x05 0xbe No Such Node The request Node is not known by the Server.
0x05 0xbd No Data
The Data age is greater than the CACHE_AGE setting.
0x05 0xbc Other Problems Eg. No Server MD’s defined for requested data.
Major Error Status Codes
Error Status
Description
01h Illegal Service Request:
Either not defined or not supported.
Minor status field contains the privilege level required
for the service request
02h Insufficient Privilege:
04h Protocol Sequence Error:
05h Service Request Error:
The CPU has received a message that is out of order.
Minor status field contains the request specific error
code. See table of Minor Error Status Codes below.
Service request mailbox type is either undefined or
unexpected.
06h Illegal Mailbox Type:
07h The PLC CPU's Service Request
Queue is full. The master should retry
later.
It is recommended that the master wait a minimum of
10 ms before sending another service
Minor Error Status Codes
Decimal Hex Description
-1
-2
-3
-4
-5
-6
-7
-8
-9
0FF Service request has been aborted.
0FE No privilege for attempted operation.
0FD Unable to perform auto configuration.
0FC I/O configuration is invalid.
0FB
0FA
0F9
Cannot clear I/O configuration.
Cannot replace I/O module.
Task address out of range.
0F8 Invalid task name referenced.
0F7 Required to log in to a task for service.
Page 27 of 29FS-8700-66_GE-SNP Manual
Decimal Hex Description
Page 27 of 29
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
49
0F6 Invalid sweep state to set.
0F5 Invalid password.
0F4 Invalid input parameter in request.
0F3 I/O configuration mismatch.
0F2 Invalid program cannot log in.
0F1 Request only valid from programmer.
0F0 Request only valid in stop mode.
0EF Programmer is already attached.
0EE Could not return block sizes.
0ED VMEbus error encountered.
0EC Task unable to be created.
0EB Task unable to be deleted.
0EA Not logged in to process service request.
0E9 Segment selector not valid in context.
0E8 No user memory is available to allocate.
0E7 Configuration is not valid.
0E6 CPU model number does not match.
0E5 DOS file area not formatted.
0E4 Segment for this selector does not exist.
0E3 CPU revision number does not match.
0E2 IOS could not delete configuration or bad type.
0E1 No I/O configuration to read or delete.
0E0 Service in process cannot login.
0DF Invalid Datagram connection address.
0DE Size of Datagram connection invalid.
0DD Unable to locate given connection ID.
0DC Unable to find connection address.
0DB Invalid segment selector in Datagram.
0DA Null pointer to data in segment selector.
0D9 Transfer type invalid for this selector.
0D8 Point length not allowed.
0D7 Invalid Datagram type specified.
0D6 Datagram connection boundary exceeded.
0D5 Invalid block name specified in Datagram.
0D4 Mismatch of configuration checksum.
0D3 User Program Module (UPM) read or write exceeded block end.
0D2 Invalid write mode parameter.
0D1 Packet size or total program size does not match input.
0D0 One or more PLC modules configured have unsupported revision.
0CF Specified device is unavailable in the system (not present).
0CE Specified device has insufficient memory to handle request.
0CD Attempt was made to read a device but no data has been stored on it.
0CC Data stored on device has been corrupted and is no longer reliable.
0CB A comm or write verify error occurred during save or restore.
0CA Device is write protected.
0C9 Login using non-zero buffer size required for block commands.
0C8 Password(s) already enabled and cannot be forced inactive.
0C7 Passwords are set to inactive and cannot be enabled or disabled.
0C6 Control Program (CP) tasks exist but requestor not logged into main CP.
0C5 No task-level Rack/Slot configuration to read or delete.
0C4 Verify with FA Card or EEPROM failed.
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
0C3 Text length does not match traffic type.
Page 28 of 29FS-8700-66_GE-SNP Manual
Decimal Hex Description
Page 28 of 29
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
0C2 The OEM key is NULL (inactive).
0C1 Invalid block state transition.
0C0 Bad OMF record checksum in store.
0BF Illegal OMF record type/data contents.
0B
Bad Block Type given in Load/Store.
0BD Block Set (subblock name) not found.
0BC Block Type (e.g., data) not found.
0B
0B
Maximum length of a partial store exceeded.
Block Set already exists, cannot create.
0B9 Executable flag in TYPDEF record not set.
0B8 Size of the Segment Selector Table in TYPDEF record is not correct.
0B7 Segment length in Verify not equal to the segment length of block in the PLC.
0B6 Cyclic Redundancy Check (CRC) checksum comparison in Verify failed.
0B5 Additive checksum comparison in Verify failed.
0B4 Attempt to alter interrupt list in MAIN DECL BLOCK during RUN MODE.
0B3 Length limit exceeded; includes read past end of transferred data, writes past
ofprogram block.
-78
0B2 Program block already exists and cannot be replaced.
Minor Error Status Codes: Program Load and Store Requests
Decimal, Hex, Description
Problem with sending mail to the slave Service Request task. (Series 90-70 PLC
CPUs only).
Problem with getting mail from the slave Service Request task. (Series 90-70
PLC CPUs only).
Slave SNP task timed out before receiving SRP response. (Series 90-70 PLC
CPUs only).
Slave SNP task could not find the requested Datagram connection. (Series 90-70
PLC CPUs only).
Slave SNP task encountered an error in trying to write the Datagram. (Series 90-
70 PLC CPUs only).
Slave SNP task encountered an error in trying to update the Datagram. Series
90-70 PLC CPUs only).
80
81
85
86
87
88
50
51
55
56
57
58
Page 29 of 29FS-8700-66_GE-SNP Manual
Page 29 of 29
THIS PAGE INTENTIONALLY LEFT BLANK
|