Modbus Registers
The following table shows the Modbus registers for the sensor module. The name of the register, address location, and description are provided.
Register Name |
Register Location |
Description |
|
---|---|---|---|
VERSION_NUMBER |
0 |
current version number of the firmware |
|
UART_1_MODE |
1 |
0 = slave, 1 = Sensor Driver |
|
UART_1_BAUD_RATE |
2 |
Baud Rate: 0=1200,...,5=19200,...10=115200. |
|
UART_2_MODE |
3 |
0 = slave, 1 = Sensor Driver |
|
UART_2_BAUD_RATE |
4 |
Baud Rate: 0=1200,...,5=19200,...10=115200. |
|
UART_3_MODE |
5 |
0 = slave, 1 = Sensor Driver |
|
UART_3_BAUD_RATE |
6 |
Baud Rate: 0=1200,...,5=19200,...10=115200. |
|
UART_4_MODE |
7 |
0 = slave, 1 = Sensor Driver |
|
UART_4_BAUD_RATE |
8 |
Baud Rate: 0=1200,...,5=19200,...10=115200. |
|
UART_5_MODE |
9 |
0 = slave, 1 = Sensor Driver |
|
UART_5_BAUD_RATE |
10 |
Baud Rate: 0=1200,...,5=19200,...10=115200. |
|
BOARD_ADDR |
14 |
Board modbus address (important for slave only) |
|
MODEL_NUM |
15 |
MODEL number Map as reg 900 |
|
SET_FACT_DEF |
16 |
23205 = Full Defaults, 23206 = H2 Defaults, 23207 = Loop 1 Defaults, 23208 = Loop 2 Defaults |
|
DEGREE_REG |
17 |
0 = °F, 1 = °C, 2 = °R, 3 = K |
|
CUR_LOOP_CAL_REG |
18 |
Calibration state. 0 = normal, 1 = prep zero, 2 = store zero, 3 = prep span, 4 = store span |
|
CUR_LOOP_CAL_CHN |
19 |
Calibration channel |
|
CUR_LOOP_CAL_VAL |
20 |
Cal value. 20.12 mA would be 20120 |
|
CUR_LOOP_TARGET_VALUE |
22 |
Actual request value |
|
CUR_LOOP_ZERO_TO_TWENTY |
24 |
0-20 mA enable |
|
CUR_LOOP_SOURCE |
26 |
0 = H2, 1 = DA, 2 = NH3, 3 = KN, 4 = External, 5 = Standard Kn, 6 = NDIR gas |
|
CUR_LOOP_ZERO |
28 |
Zero value. This value equates to either 4 mA or 0 mA |
|
CUR_LOOP_SPAN |
30 |
Span value. This value equates to either 20 mA |
|
CUR_LOOP_MANUAL |
32 |
If manual mode is set, then this register controls (0-20000) |
|
INST_PV_MODE |
34 |
0 = H2, 1 = DA, 2 = NH3, 3 = KN, 4 = Standard Kn, 5 = NDIR single gas |
|
PV_VARIABLE |
35 |
Actual process variable. |
|
H2_SELECTION |
36 |
0 = Single gas OEM, 1 = In-Situ Sensor |
|
DISP_OPT |
37 |
Display option bitmap: bit 0 = H2, 1 = DA, 2 = NH3, 3 = Super KN, 4 = Standard KN |
|
SER_NUM_REG |
444 |
actual mapping from Advantech |
|
MB_SET_TIME_WRITE |
506 |
1 = SNTP server write, 2 = manual write |
|
MB_SET_TM_YEAR |
507 |
set year |
|
MB_SET_TM_MON |
508 |
set month |
|
MB_SET_TM_MDAY |
509 |
set day of month |
|
MB_SET_TM_WDAY |
510 |
set day of week, 0 = Sunday |
|
MB_SET_TM_HOUR |
511 |
set hour |
|
MB_SET_TM_MIN |
512 |
set minute |
|
MB_SET_TM_SEC |
513 |
set second |
|
MB_TM_YEAR |
514 |
year |
|
MB_TM_MON |
515 |
month |
|
MB_TM_MDAY |
516 |
day of month |
|
MB_TM_WDAY |
517 |
day of week, 0 = Sunday |
|
MB_TM_HOUR |
518 |
hour |
|
MB_TM_MIN |
519 |
minute |
|
MB_TM_SEC |
520 |
second |
|
MB_COMP_TIME_YEAR |
580 |
compile year |
|
MB_COMP_TIME_MON |
581 |
compile month |
|
MB_COMP_TIME_MDAY |
582 |
compile day of month |
|
MB_COMP_TIME_WDAY |
583 |
compile day of week, 0 = Sunday |
|
MB_COMP_TIME_HOUR |
584 |
compile hour |
|
MB_COMP_TIME_MIN |
585 |
compile minute |
|
MB_COMP_TIME_SEC |
586 |
compile second |
|
MODEL_NUM_OLD |
900 |
MODEL number |
|
RESET_FACT_DEFAULTS |
909 |
Resets everything to factory settings |
|
MB_IP_ADDR |
914 |
IP Address |
|
MB_IP_MASK |
918 |
Subnet Mask |
|
MB_IP_GTWY |
922 |
Gateway |
|
SENSOR_COMM_STATUS_REG |
1100 |
H2O2 comm status (0-16) |
|
SENSOR_N2_FLOW |
1101 |
N2 flow |
|
SENSOR_NH3_FLOW |
1102 |
NH3 flow |
|
SENSOR_DA_FLOW |
1103 |
DA flow |
|
SENSOR_H2_FLOW |
1104 |
H2 Flow |
|
SENSOR_PV_MODE |
1105 |
Process variable (0 = H2, 1 = DA, 2 = NH3, 3 = Kn, 4 = Standard Kn) |
|
SENSOR_INPUT_TYPE_REG |
1106 |
Input for voltage inputs |
|
SENSOR_MIN_H2 |
1108 |
minimum H2 value |
|
SENSOR_CO2_PRESENT |
1109 |
concentration of CO2 present. Important for H2 measurement only |
|
SENSOR_PV_REMOVE_NEGATIVE |
1110 |
Makes any negative number zero |
|
SENSOR_GEN_QUEUE_ENABLE |
1150 |
Allows for a generic write |
|
SENSOR_NH3_FLOW |
1102 |
NH3 flow |
|
SENSOR_DA_FLOW |
1103 |
DA flow |
|
SENSOR_H2_FLOW |
1104 |
H2 Flow |
|
SENSOR_PV_MODE |
1105 |
Process variable (0 = H2, 1 = DA, 2 = NH3, 3 = Kn, 4 = Standard Kn) |
|
SENSOR_INPUT_TYPE_REG |
1106 |
Input for voltage inputs |
|
SENSOR_MIN_H2 |
1108 |
minimum H2 value |
|
SENSOR_CO2_PRESENT |
1109 |
concentration of CO2 present. Important for H2 measurement only |
|
SENSOR_PV_REMOVE_NEGATIVE |
1110 |
Makes any negative number zero |
|
SENSOR_GEN_QUEUE_ENABLE |
1150 |
Allows for a generic write |
|
SENSOR_GEN_QUEUE_START |
1151 |
Start of write. E.g., register 45. |
|
SENSOR_GEN_QUEUE_ADDRESS |
1152 |
Address of board to write to. |
|
SENSOR_GEN_QUEUE_NUM_WORDS |
1153 |
Number of words to write down up. Up to 30 |
|
SENSOR_GEN_QUEUE_BLOCK |
1154 |
write up to 30 words |
|
SENSOR_READ_REGISTERS |
1200 |
just designates where to start writing |
|
MB_READ_VERSION_NUMBER |
1200 |
current version number of the firmware |
|
MB_READ_PELLISTOR_AVDD |
1201 |
A/D analog voltage supply |
|
MB_READ_PELLISTOR_EXCV |
1202 |
Pellistor bridge excitation voltage |
|
MB_READ_PELLISTOR_VDC |
1203 |
Pellistor voltage |
|
MB_READ_PELLISTOR_NA |
1204 |
Pellistor Normalized Absorbance |
|
MB_READ_PERC_H2 |
1205 |
H2 x 10000 |
|
MB_READ_PER_H2_MANT |
1206 |
H2 mantissa |
|
MB_READ_PER_H2_EXP |
1207 |
H2 exponent |
|
MB_READ_PER_DA |
1208 |
DA value |
|
MB_READ_PER_NH3 |
1209 |
NH3 value |
|
MB_READ_PER_SUPER_KN |
1210 |
Super Kn |
|
MB_READ_STANDARD_KN |
1211 |
Standard Kn |
|
MB_READ_PROC_VAR |
1212 |
Process variable |
|
MB_READ_GAS_TEMP |
1213 |
Gas temperature |
|
MB_READ_BOARD_ADDR |
1214 |
Board modbus address (important for slave only) |
|
MB_READ_MODEL_NUM |
1215 |
MODEL number Map as reg 900 |
|
MB_READ_SET_FACT_DEF |
1216 |
23205 = Full Defaults |
|
MB_READ_DEGREE_REG |
1217 |
Sets the unit used to display temperature. |
|
MB_READ_N2_FLOW |
1218 |
N2 flow |
|
MB_READ_NH3_FLOW |
1219 |
NH3 flow |
|
MB_READ_DA_FLOW |
1220 |
DA flow |
|
MB_READ_H2_FLOW |
1221 |
H2 Flow |
|
MB_READ_PV_MODE |
1222 |
Process variable (0 = H2, 1 = DA, 2 = NH3, 3 = Kn, 4 = Standard Kn) |
|
MB_READ_INPUT_TYPE_REG |
1223 |
Input for voltage inputs |
|
MB_READ_MIN_H2 |
1225 |
minimum H2 value |
|
MB_READ_CO2_PRESENT |
1226 |
Amount of CO2 present up to 10%. |
|
MB_READ_PV_REMOVE_NEG |
1227 |
Remove negative number |
|
MB_READ_SET_TAPS_REG |
1228 |
Sets the digital trim pot |
|
MB_READ_UART_1_BAUD_RATE |
1229 |
Baud Rate: 0=1200,...,5=19200,...10=115200. |
|
MB_READ_UART_2_BAUD_RATE |
1230 |
Baud Rate: 0=1200,...,5=19200,...10=115200. |
|
MB_READ_PV_FP |
1231 |
Process variable in floating point |
|
MB_READ_PELLISTOR_DIAG |
1233 |
Pellistor Diagnostics |
|
MB_READ_AMBIENT_TEMP |
1234 |
Ambient temperature |
|
MB_READ_CJ_TEMP_REG |
1235 |
Cold junction temperature |
|
MB_READ_AD_RAW_VDC |
1237 |
Raw VDC |
|
MB_READ_GAIN_REG |
1239 |
Gain |
|
MB_READ_AD_SCALED_VDC |
1241 |
Scaled VDC |
|
MB_READ_TC_PROC_VAR |
1243 |
TC process variable |
|
MB_READ_PERC_O2 |
1245 |
Based on Nernst equation |
|
MB_READ_PERC_O_DP |
1246 |
decimal point for O2 |
|
MB_READ_PERC_O2_FP |
1247 |
floating point value for O2 (w registers) |
|
MB_READ_LAMBDA_TEMP |
1249 |
Typically 800F |
|
MB_READ_LAMBDA_CNV_MV_EN |
1250 |
Convert mV to probe mV |
|
MB_READ_AMB_PRESSURE_REG |
1251 |
Ambient pressure (absolute) |
|
MB_READ_GAS_PRESSURE_REG |
1252 |
Gas pressure (absolute) |
|
MB_READ_NDIR_GAS_SELECTION |
1253 |
[0-7]. TBD |
|
MB_READ_NDIR_GAS_VPP |
1254 |
Peak-peak voltages |
|
MB_READ_NDIR_GAS_VPP_SF |
1258 |
Peak-peak voltages. No high/low values |
|
MB_READ_NDIR_GAS_VPP_FIR |
1262 |
Peak-peak voltages FIR filtered |
|
MB_READ_NDIR_GAS_NA |
1266 |
Gas Normalized absorbance |
|
MB_READ_NDIR_GAS_NA_TC |
1269 |
Gas Normalized absorbance, temperature compensated |
|
MB_READ_NDIR_GAS_CONC |
1272 |
Gas concentration |
|
MB_READ_NDIR_GAS_CONC_DP |
1275 |
Gas concentration decimal point |
|
MB_READ_NDIR_GAS_CONC_FP |
1278 |
Gas concentration floating point |
|
MB_READ_CAL_ENABLE_REG |
1284 |
enables a calibration |
|
MB_READ_CAL_REQUEST_REG |
1285 |
CJ cal or zero/span voltage cal |
|
MB_READ_CAL_RANGE_REG |
1286 |
Calibration Range register. Sets the voltage gain for a calibration. |
|
MB_READ_CAL_CHANNELS_REG |
1287 |
bitmap of channels to be calibrated |
|
MB_READ_CAL_VALUE_REG |
1288 |
Calibration value |
|
MB_READ_CAL_TIMER_REG |
1293 |
First of 5 calibration timers |
|
MB_READ_CAL_PROGRESS_REG |
1294 |
0 = no calibration, 1 = calibration in progress |
|
MB_READ_CAL_ERROR_REG |
1295 |
First of 5 calibration error calculations |
|
MB_DIGIO_OUTPUT_SET |
1600 |
Bitmap that sets the output of a digital I/O card |
|
MB_DIGIO_COMM_STATUS_REG |
1601 |
Communication status for digital I/O card |
|
MB_DIGIO_VERSION_NUMBER |
1610 |
current version number of the firmware |
|
MB_DIGIO_UART_1_MODE |
1611 |
Determines mode: modbus slave = 0, modbus master = 1 |
|
MB_DIGIO_UART_1_BAUD_RATE |
1612 |
Baud Rate. |
|
MB_DIGIO_UART_2_MODE |
1613 |
Determines mode: modbus slave = 0, modbus master = 1 |
|
MB_DIGIO_UART_2_BAUD_RATE |
1614 |
Baud Rate. |
|
MB_DIGIO_BOARD_ADDR |
1615 |
Board modbus address (important for slave only) |
|
MB_DIGIO_MODEL_NUM |
1616 |
MODEL number Map as reg 900 |
|
MB_DIGIO_RESET_FACT_DEFAULTS |
1618 |
SFD 23205 sets factory defaults Map as reg 909 |
|
MB_DIGIO_UART_3_MODE |
1619 |
Determines mode: modbus slave = 0, modbus master = 1 |
|
MB_DIGIO_UART_3_BAUD_RATE |
1620 |
Baud Rate. 0=1200 ,..., 10=115200 |
|
MB_DIGIO_SER_NUM_0 |
1621 |
Start of Serial number |
|
MB_DIGIO_SER_NUM_1 |
1622 |
serial number 1 |
|
MB_DIGIO_SER_NUM_2 |
1623 |
serial number 2 |
|
MB_DIGIO_SER_NUM_3 |
1624 |
serial number 3 |
|
MB_DIGIO_SER_NUM_4 |
1625 |
serial number 4 |
|
MB_DIGIO_SER_NUM_5 |
1626 |
serial number 5 |
|
MB_DIGIO_SER_NUM_6 |
1627 |
serial number 6 |
|
MB_DIGIO_SER_NUM_7 |
1628 |
serial number 7 |
|
MB_DIGIO_SER_NUM_8 |
1629 |
serial number 8 |
|
MB_DIGIO_SER_NUM_9 |
1630 |
serial number 9 |
|
MB_DIGIO_EVENT_IN_CP |
1636 |
Copy of Event Input |
|
MB_DIGIO_EVENT_OUT_ACT_CP |
1637 |
Actual Output |
|
MB_DIGIO_EVENT_OUT_SP_CP |
1638 |
Copy of Output setpoint |
|
SENSOR_SUB_SERIAL_NUM |
1700 |
serial number of sensor board |