unsigned char additive_fcm_com:1; // one or more FCMs that are required for
ADDITIVE status or signals are in comm
error.
Unsigned char additive_permissive:1; // additive permissive not active but
additive is authorized to load.
Unsigned char additive_under_add:1; // recipe additive needed is under actual
additive delivered by
under_adtv_alarm_injects.
Unsigned char additive_over_add:1; // recipe additive needed is over actual
additive delivered by
over_adtv_alarm_injects.
Unsigned char additive_valve_fault:1; // greater than value_fault_alarm_vol has
been metered since flow was stopped.
Unsigned char additive_pump_status:1; // pump status does not agree with
commanded pump state.
Unsigned char additive_injection:1; // piston switch or pulser did not indicate
an injection took place.
Unsigned char additive_unauth_flow:1; // greater than unauth_flow_alarm_vol has
been metered when additive was not
authorized for flow.
Unsigned char additive_line_not_flushed:1; // min_line_flush_volume of product has
not flushed since last inject was completed
and batch was ended.
Unsigned char additive_meter_creep:1; // greater than meter_creep_alarm_vol has
been metered since flow was stopped.
Unsigned char additive_block_valve:1; // block valve status does not agree with
commanded valve position.
Unsigned char unused11:1;
unsigned char unused12:1;
unsigned char unused13:1;
unsigned char unused14:1;
unsigned char unused15:1;
unsigned char unused16-31:1;
} flags;
} additive_alarms;
Modbus:
Where: p = preset (0-11), a = additive (0-15)
Read Only Register=7251+16*p+a, Len=1, 16-Bit Integer (xxxx)
Note: Last Additive Alarm Register Used=7442
6.19 REQUEST SAMPLER ALARMS:
MRSAppp => RSApppxxxx… (this only gives the first 16 alarm bits)
MRSA32 => RSA32xxxxxxxx… (this gives all 32 alarm bits)
Where:
ppp = The specified zero-based preset or load arm number (000-011).
Per sampler(4):
xxxx = sampler alarms in hexadecimal as: