The datatype is used to determine how to convert to or from a binary to a physical value.
Linear data conversion in the 1st and 3rd quadrants.
The formula used for database to physical units conversion is:
Y = MX + B.
Limits checking uses the rule: PhyMin <= Y <= PhyMax.
IncVal usually is a positive value.
Linear data conversion in the 2nd and 4th quadrants.
The formula used for database to physical units conversion is:
Y = MX + B.
Limits checking uses the rule: PhyMax <= Y <= PhyMin.
IncVal usually is a negative value.
Logarithmic data conversion for positive physical quantities.
The formula used for database to physical units conversion is:
Y = exp(MX+B).
Limits checking uses the rule: PhyMin <= Y <= PhyMax.
IncVal usually is a positive value. However, it is unusual to have controlled devices with this datatype, most of the time they are readbacks.
Logarithmic data conversion for negative physical quantities.
The formula used for database to physical units conversion is:
Y = -exp(MX+B).
Limits checking uses the rule: PhyMax <= Y <= PhyMin.
IncVal usually is a negative value. However, it is unusual to have controlled devices with this datatype, most of the time they are readbacks.
BCD data format. This type is presently supported only for readback. It treats 4 bit fields in a word as BCD digits.
Conversion routine for a Fredricks Model 2A Thermocouple Vacuum Gauge now more commonly known as an MDC type 2A (NEC P/N 3JW222060).
This is the type commonly used for the gas stripper pressure read.
The formulae used for the conversion are:
Yi = MX+B
Y = TCGpiece(Yi)
The conversion is performed in two steps.
The first step scales the binary value to a value between 0-10.
The second step "looks up" the newly scaled value in a piecewise approximation table to determine the physical value.
If Yi is greater than 10, 1e3 is returned.
The value is returned in microns.
buildMB() sets M and B to the correct values to provide a scaler between 0-10 for the conversion routine.
Limits checking uses the rule: PhyMin <= Y <= PhyMax.
SpanMin and SpanMax are ignored by buildMB. However they should be set as follows;
SpanMin = 0.0
SpanMax = 1000.0
PhyMin and PhyMax may be set to the same values as SpanMin and SpanMax or they may be set to values inside of the limits imposed by SpanMin and SpanMax in order to make the display turn red if the vacuum isn’t inside of the acceptable limits for the application.
This type is supported only for readback.
Some bits of useful information:
1 Torr = 1mm of Hg
760 Torr = 1 atmosphere
1 micron = 1.0e-3 Torr
Conversion routine for a Convectron model 275 Vacuum Gauge.
The formulae used for the conversion are:
Yi = MX+B
Y = CVGpiece(Yi)
The conversion is performed in two steps.
The first step scales the binary value to a value between 0-10.
The second step "looks up" the newly scaled value in a piecewise approximation table to determine the physical value.
If Yi is greater than 10, 1e3 is returned.
The value is returned in microns.
buildMB() sets M and B to the correct values to provide a scaler between 0-10 for the conversion routine.
Limits checking uses the rule: PhyMin <= Y <= PhyMax.
SpanMin and SpanMax are ignored by buildMB. However they should be set as follows;
SpanMin = 0.0
SpanMax = 1000.0
PhyMin and PhyMax may be set to the same values as SpanMin and SpanMax or they may be set to values inside of the limits imposed by SpanMin and SpanMax in order to make the display turn red if the vacuum isn’t inside of the acceptable limits for the application.
This type is supported only for readback.
Conversion routine for a Balzers 300C9 Cold Cathode Vacuum Gauge.
The formulae used for the conversion are:
Yi = MX+B
Y = CCVGpiece(Yi)
The conversion is performed in two steps.
The first step scales the binary value to a value between 0-10.
The second step "looks up" the newly scaled value in a piecewise approximation table to determine the physical value.
If Yi is greater than 10, 0.0 is returned.
The value appears to returned in microns. However, this should be double checked sometime.
buildMB() sets M and B to the correct values to provide a scaler between 0-10 for the conversion routine.
Limits checking uses the rule: PhyMin <= Y <= PhyMax.
SpanMin and SpanMax are ignored by buildMB. However they should be set as follows;
SpanMin = 1.0e-9
SpanMax = 5.0e-3
PhyMin and PhyMax may be set to the same values as SpanMin and SpanMax or they may be set to values inside of the limits imposed by SpanMin and SpanMax in order to make the display turn red if the vacuum isn’t inside of the acceptable limits for the application.
This type is supported only for readback.
Conversion routine for a Balzers 300DL Pirani Vacuum Gauge.
The formulae used for the conversion are:
Yi = MX+B
Y = PVGpiece(Yi)
The conversion is performed in two steps.
The first step scales the binary value to a value between 0-10.
The second step "looks up" the newly scaled value in a piecewise approximation table to determine the physical value.
If Yi is greater than 10, 0.0 is returned.
The value appears to returned in microns. However, this should be double checked sometime.
buildMB() sets M and B to the correct values to provide a scaler between 0-10 for the conversion routine.
Limits checking uses the rule: PhyMin <= Y <= PhyMax.
SpanMin and SpanMax are ignored by buildMB. However they should be set as follows;
SpanMin = 0
SpanMax = 1000
PhyMin and PhyMax may be set to the same values as SpanMin and SpanMax or they may be set to values inside of the limits imposed by SpanMin and SpanMax in order to make the display turn red if the vacuum isn’t inside of the acceptable limits for the application.
This type is supported only for readback.
Logical Message Display.
The formula used for database to physical units conversion is:
Y = MX.
Usually M = 1 however, it is possible to have other values.
When translation from the Postgres database to the runtime database is done the Message field is used to arrive at a value for B. Y + B is then used by the Display formatting routine as an index into a message table. The message table to use is determined by the CrtKey.
Limits checking uses the rule: PhyMin <= Y <= PhyMax.
DRkey should be set to "U" when using this datatype.
Granville Phillips Ion gauge conversion.
The formulae used for the conversion are:
Yi = MX+B
Y = IGCgppiece(Yi)
The conversion is performed in two steps.
The first step scales the binary value to a value between 0-10.
The second step "looks up" the newly scaled value in a piecewise approximation table to determine the physical value.
If Yi is greater than 10, 0.0 is returned.
The value is returned in Torr.
buildMB() sets M and B to the correct values to provide a scaler between 0-10 for the conversion routine.
Limits checking uses the rule: PhyMin <= Y <= PhyMax.
SpanMin and SpanMax are ignored by buildMB. However they should be set as follows;
SpanMin = 1.0e-8
SpanMax = 1.0e-3
This type is supported only for readback.
Granville Phillips 275 Convectron gauge conversion.
The formulae used for the conversion are:
Yi = MX+B
Y = CVG_275piece(Yi)
The conversion is performed in two steps.
The first step scales the binary value to a value between 0-10.
The second step "looks up" the newly scaled value in a piecewise approximation table to determine the physical value.
If Yi is greater than 10, 0.0 is returned.
The value is returned in Torr.
buildMB() sets M and B to the correct values to provide a scaler between 0-10 for the conversion routine.
Limits checking uses the rule: PhyMin <= Y <= PhyMax.
SpanMin and SpanMax are ignored by buildMB. However they should be set as follows;
SpanMin = 0
SpanMax = 1000
This type is supported only for readback.
MKS model 941 Cold Cathode gauge conversion.
The formulae used for the conversion are:
Yi = MX+B
Y = MKS_941piece(Yi)
The conversion is performed in two steps.
The first step scales the binary value to a value between 0-10.
The second step "looks up" the newly scaled value in a piecewise approximation table to determine the physical value.
If Yi is greater than 10, 1.0 is returned.
The value is returned in Torr.
buildMB() sets M and B to the correct values to provide a scaler between 0-10 for the conversion routine.
Limits checking uses the rule: PhyMin <= Y <= PhyMax.
SpanMin and SpanMax are ignored by buildMB. However they should be set as follows;
SpanMin = 0
SpanMax = 2.0e-2
This type is supported only for readback.
The SpanMin/Max suggested values for the piecewise datatypes may not be quite right. We may have used other values in practice. In that case we will need to consider how to go forward.