Loading…
Loading…
方法名称: press_sensor_calib_method
方法ID: 0x432E
方法标签: Pressure Sensors
方法描述:
- {
- float qa, qb, qc, qd, qe; int q, q0, q1, q2, q3; char S[3];
- int s, j, c, a, b, f, t, bs, user_input;
- long ids[2];
- float max_supply,
- newMaxSupply;
- _set_device_status(0xFF,0);
- _set_xmtr_device_status(0xFF,0);
- _set_all_resp_code(1);
- _set_resp_code((8),0);
- send(151,S); if(_ivar_value(16804) > 1) { ACKNOWLEDGE("|en|The DD revision is not compatible with the firmware in the device.\nContact your Fisher sales office for an upgrade to your Device Description."); return; };
- if(1 == _ivar_value(167))
- {
- ACKNOWLEDGE("|en|Protection must be disabled to perform this operation.");
- process_abort();
- }
- user_input = SELECT_FROM_LIST("|en|This sensor is adjusted at the factory and generally does not require adjustment in the field.","|en|Continue;Exit");
- if(0 == user_input)
- {
- send_trans(129,0,S); _vassign(16452,16427); save_values(); if(1==_ivar_value(167)) { ACKNOWLEDGE("|en|Protection must be disabled to perform this operation."); process_abort(); } if((_ivar_value(16427))) { if(((_ivar_value(16465) & 0x01C0) == 0x0100)) { _get_dev_var_value(("|en|WARNING! Output will not track input and the SIS safety function will be disabled when Instrument Mode is Out of Service."),0,16452); } else { _get_dev_var_value(("|en|WARNING! Output will not track input when Instrument Mode is Out of Service."),0,16452); } save_values(); if(_ivar_value(16452)>0) { ACKNOWLEDGE("|en|Instrument Mode is still In Service."); process_abort(); } else { send_trans(130,6,S); } } send_trans(129,0,S); if((1==_ivar_value(16472)) || (5==_ivar_value(16472))) { if(1==_ivar_value(16472)) { ACKNOWLEDGE("|en|Access restricted\n\nInstrument was set to 'Out of Service' by a secondary master."); } else { ACKNOWLEDGE("|en|Access restricted\n\nInstrument was set to 'Out of Service' by a primary master."); } process_abort(); } _add_abort_method(17167); DELAY(1,"|en|Please wait...");
- send(3,S);
- send(138,S); if((_ivar_value(171) > 0)) { send(3,S); while (_fvar_value(16418) < 3.8) { if(select_from_list("|en|Input must exceed 3.8 mA (7.8 mA if loop powered local control panel is attached.)", ids,"|en|Adjust Analog Input and continue;Exit")) { process_abort(); } send(3,S); } };
- if(1 - SELECT_FROM_LIST("|en|WARNING! Calibration will cause sudden changes in instrument output and loss of process control.","|en|Continue;Exit"))
- {
- DELAY(1,"|en|Please wait...");
- send(138,S); send_trans(129,0,S); if(((_ivar_value(16790) & 0x31) > 0) || (_ivar_value(10098) == 0)) { send_trans(142,6,S); send_trans(142,1,S); send_trans(157,0,S); if(1 != _ivar_value(167)) { _iassign(16622,(0)); save_values(); send_trans(130,74,S); } if((_ivar_value(171) == 0)) _iassign(16453,(2)); else _iassign(16453,(3)); save_values(); send_trans(130,7,S); send_trans(129,0,S); DELAY(1,"|en|Please wait..."); };
- send_trans(129,0,S);
- _vassign(16942,10098);
- save_values();
- bs = 0;
- send(138,S);
- if((_ivar_value(16789) & 0x02) > 0)
- {
- send_trans(142,0,S);
- send_trans(129,29,S);
- save_values();
- send_trans(142,1,S);
- if(0x7FA00000 == _lvar_value(16940)) bs = 0x01;
- if(0x7FA00000 == _lvar_value(16938)) bs = bs | 0x02;
- if(0x7FA00000 == _lvar_value(16939)) bs = bs | 0x04;
- }
- send_trans(129,34,S);
- t = _ivar_value(16532);
- if(((_ivar_value(16465) & 0x0200) == 0x0200))
- {
- if(((_ivar_value(16530) & 0x01) > 0) || (t > 1))
- {
- s = SELECT_FROM_LIST("|en|Select the desired sensor for calibration","|en|Supply Press;Pressure A;Pressure B");
- }
- else if(((_ivar_value(16532) & 0x01) == 0))
- {
- s = SELECT_FROM_LIST("|en|Select the desired sensor for calibration","|en|Supply Press;Pressure A");
- }
- else
- {
- s = SELECT_FROM_LIST("|en|Select the desired sensor for calibration","|en|Supply Press;Pressure B");
- if(s) s++;
- }
- }
- else
- {
- if(((_ivar_value(16530) & 0x01) > 0) || t > 1)
请登录以获得完整内容