
EC155 CO
2
and H
2
O Closed-Path Gas Analyzer
34
The final data element in each row or output array is the signature, a four
character hexadecimal value that is a function of the specific sequence and
number of bytes in the output array. The recording device (such as a PC or
datalogger) calculates its own signature using each transmitted byte until
encountering the transmitted signature. The computed signature and the
transmitted signature are compared. If they match, the data were received
correctly. This is very similar to a Cyclic-Redundancy-Check (CRC).
In most situations, a PC begins by reading in the ASCII data and extracting the
last four ASCII characters, casting them as Long data type. The signature is
then calculated on the science data sent from the EC155, starting with CO
2
and
ending on the counter. All the characters after the counter are not part of the
signature. Once the signature is computed using the algorithm below, it is
compared to the transmitted signature. If signatures do not match, the data
should be disregarded.
The following block of code is an example implementation of Campbell
Scientific’s signature algorithm in the programming language C. To generate
the signature of an output array of bytes, the
seed
needs to be initialized to
0xaaaa and a pointer passed to the first byte of the output array. The number of
bytes in the output array should be entered in as the
swath
. The returned value
is the computed signature.
//signature(), signature algorithm.
// Standard signature is initialized with a seed of 0xaaaa.
// Returns signature.
unsigned short signature( unsigned char* buf, int swath,
unsigned short seed ) {
unsigned char msb, lsb;
unsigned char b;
int i;
msb = seed >> 8;
lsb = seed;
for( i = 0; i < swath; i++ ) {
b = (lsb << 1) + msb + *buf++;
if( lsb & 0x80 ) b++;
msb = lsb;
lsb = b;
}
return (unsigned short)((msb << 8) + lsb);
}
8.3 Analog Outputs
If analog output is enabled, the EC100 will output two analog signals that
correspond to CO
2
and H
2
O molar mixing ratios. The signals range from 0 to 5
below, gives the multipliers and offsets for the analog outputs.
TABLE 8-2. Multipliers and Offsets for Analog Outputs
Mixing Ratio
Voltage Output Multiplier Offset
CO
2
(µmol·mol
–1
)
211.27 (µmol·mol
–1
V
–1
)
–56.34 (µmol·mol
–1
)
H
2
O (mmol·mol
–1
) 11.31 (µmol·mol
–1
V
–1
)
–3.04 (mmol·mol
–1
)
Summary of Contents for EC155
Page 78: ...E 1 Appendix E Safety Data Sheets SDS E 1 Molecular Sieve Type 13X ...
Page 79: ...Appendix E Safety Data Sheets SDS E 2 ...
Page 80: ...Appendix E Safety Data Sheets SDS E 3 ...
Page 81: ...Appendix E Safety Data Sheets SDS E 4 ...
Page 82: ...Appendix E Safety Data Sheets SDS E 5 E 2 Magnesium Perchlorate ...
Page 83: ...Appendix E Safety Data Sheets SDS E 6 ...
Page 84: ...Appendix E Safety Data Sheets SDS E 7 ...
Page 85: ...Appendix E Safety Data Sheets SDS E 8 ...
Page 86: ...Appendix E Safety Data Sheets SDS E 9 ...
Page 87: ...Appendix E Safety Data Sheets SDS E 10 ...
Page 88: ...Appendix E Safety Data Sheets SDS E 11 ...
Page 89: ...Appendix E Safety Data Sheets SDS E 12 E 3 Decarbite ...
Page 90: ...Appendix E Safety Data Sheets SDS E 13 ...
Page 91: ...Appendix E Safety Data Sheets SDS E 14 ...
Page 92: ...Appendix E Safety Data Sheets SDS E 15 ...