FieldServer FS-8700-123 Computer Drive User Manual


 
FS-8700-123 MetOne Particle Counter Serial Driver Manual Page 17 of 26
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web:www.fieldServer.com
Tel: 408 262-2299 Fax: 408-262-2269 Toll_Free: 888-509-1970 email: support@fieldServer.com
4.13. Map Descriptor Example 9 – An alternate way of storing the current record.
This example is similar to the one in example 7 where the current record was read. Here passive Map Descriptors have been added
to store specifically labeled count records in specific places. In addition to the normal storage of the response data, the driver
examines the label which precedes each count value and looks for a matching Map Descriptor. Examples 7, 8 and 9 can be
combined and the current record stored in all 3 ways.
In this example a number of passive Map Descriptors are related to the active RDBC Map Descriptor in that they belong to the same
device (Node Names are the same and both the active and the passives are ‘Device’) as well as all being ‘Current Record’ Map
Descriptors. When the driver receives a response to the poll sent by the active Map Descriptor, then it also looks for matching
passive Map Descriptors. As it looks at the label information for each count info it searches for a Map Descriptor whose Met1_Label
matches the count label. In this example those labels are “0.1” , “0.3” , “0.5” , “1.0” , “3.0” , “5.0”, “10.” , “FLO” and “LOC”. If there
was a count whose label was different from one of these then the driver would not find a matching Map Descriptor and thus would
not perform this additional storage for that count.
Example: If the current record contained this fragment …0.1 000123 LOC 000009 STA 000101 … then the driver would use passive
Map Descriptors to store the value 123 at offset 0 in the Data Array, store the value 9 at offset 8 in DA= DA_CURR_D01_LBL and
would not perform additional storage of the value 101 because it cannot find a label = “STA” . However all these values would be
stored in the Data Array called DA_CURR_01 as described in example 7.
Map_Descriptors
Map_Descriptor_Name ,Scan_Interval ,Data_Array_Name ,Data_Array_Offset ,Length ,DA_Byte_Name ,Function ,Node_Name ,Met1_Function ,Met1_SubDev_or_Port
Rd_CurretVals ,0s ,DA_CURR_D01 ,0 ,20 ,DA_DUMP_D01 ,Rdbc ,MET1 ,Current Record ,Device
Map_Descriptors
Map_Descriptor_Name ,Scan_Interval ,Data_Array_Name ,Data_Array_Offset ,Length ,Function ,Node_Name ,Met1_Function ,Met1_SubDev_or_Port ,Met1_Label
Rd_CurretVals1 ,0s ,DA_CURR_D01_LBL ,0 ,1 ,passive ,MET1 ,Current Record ,Device ,0.1
Rd_CurretVals2 ,0s ,DA_CURR_D01_LBL ,1 ,1 ,passive ,MET1 ,Current Record ,Device ,0.3
Rd_CurretVals3 ,0s ,DA_CURR_D01_LBL ,2 ,1 ,passive ,MET1 ,Current Record ,Device ,0.5
Rd_CurretVals4 ,0s ,DA_CURR_D01_LBL ,3 ,1 ,passive ,MET1 ,Current Record ,Device ,1.0
Rd_CurretVals5 ,0s ,DA_CURR_D01_LBL ,4 ,1 ,passive ,MET1 ,Current Record ,Device ,3.0
Rd_CurretVals6 ,0s ,DA_CURR_D01_LBL ,5 ,1 ,passive ,MET1 ,Current Record ,Device ,5.0
Rd_CurretVals7 ,0s ,DA_CURR_D01_LBL ,6 ,1 ,passive ,MET1 ,Current Record ,Device ,10.
Rd_CurretVals8 ,0s ,DA_CURR_D01_LBL ,7 ,1 ,passive ,MET1 ,Current Record ,Device ,FLO
Rd_CurretVals9 ,0s ,DA_CURR_D01_LBL ,8 ,1 ,passive ,MET1 ,Current Record ,Device ,LOC