FieldServer FS-8700-41 Computer Drive User Manual


 
FS-8700-41 Simplex 4100 Driver Manual Page 25 of 58
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web:www.fieldserver.com
Tel: (408) 262-2299 Fax: (408) 262-2296 Toll_Free: 888-509-1970 email: support@fieldserver.com
Appendix A.3. How to use Data Arrays to map to/from Card-Point-Sub
addresses
Some commands derive a card-point-sub address by inspecting a FieldServer Data Array.
Others receive data from a device with a card-point-sub address and modify the data in an
array based on the card-point-sub address. This section explains how to make the
connection between an index into a Data Array and a card-point-sub address.
In a simple world the Data Array index would be
Index = card * max point per card * max sub point per point + point * max sub point per point
+ sub
Where max point per card and max sub point per point could be large numbers.
As you can imagine this would require huge sparse Data Arrays. To reduce the Data Array
size the FieldServer uses a mapping algorithm which can be optimized based on the
addresses of the Simplex devices. The map is manipulated by using the
sim4100_card/point/sub parameter values.
Example:
Consider the following Map Descriptor fragment.
… , sim4100_func,
sim4100_card,
sim4100_point,
sim4100_sub,
data_array_offset
Xpoint,
10,
5, 10, 0
If data is received for point <c>-<p>-<s> = 9-0-0
This data will NOT be processed because the card number does not match the value of the
sim4100-card
If data is received for point <c>-<p>-<s> = 10-20-0, however, the data will be processed.
The array location is derived using the following formula (sim4100_sub is to be read as the
“number of sub-points per point”; sim4100_card’s value will be ignored.)
Location = data_array_offset + <p> * sim4100_sub + <s>
= 0 + 20 * 10 + 0 = 200
Appendix A.4. Simplex Point Status Data Format
When a point status is obtained the FieldServer will write one byte of data to a Data Array.
The byte will contain the following information. Because each point can report a number it
only makes sense to use Data Arrays that are not bit arrays.
Bit Identifier Description
0 (First Bit) F Fire Alarm
1 P Priority 2
2 S Supervisory
3 T Trouble
4 U Utility
5 C Control
6 D Disable
7 A Primary state (based on point type - F if smoke detector, C if signal
circuit, etc.)