Loading…

方法名称: perform_tuner_method

方法ID: 0x431A

方法标签: Performance Tuner

方法描述:


  • {
  • float qa;
  • float qb;
  • float qc;
  • float qd;
  • float qe;
  • int q;
  • int q0;
  • int q1;
  • int q2;
  • int q3;
  • char S[3];
  • int packet_byte_0;
  • int packet_byte_num;
  • int num_pts_to_collect;
  • int diag_byte;
  • int num_tvl_reversals;
  • int num_drv_reversals;
  • int start_byte;
  • int packet_index;
  • int TvP;
  • int iDvP;
  • int flag;
  • int num_of_steps;
  • int system_state;
  • int tuning_state;
  • int old_tuning_state;
  • int b8;
  • int i;
  • int bFlag;
  • int iTime;
  • int iSec;
  • float fTravel;
  • int iWait;
  • int iColVar;
  • float fCurrPos1;
  • float fCurrPos2;
  • float fPosDiff;
  • long ids[7];
  • long Stp;
  • float temp;
  • int iTempRamp;
  • float fRoundingFactor;
  • float fsecPerTick;
  • float frampRate;
  • float fRemTvl;
  • float Tv[150];
  • float fDriveSig[150];
  • float fTv0;
  • float fDriveSig0;
  • float Mx;
  • float Mn;
  • int t;
  • float g;
  • float v;
  • float m;
  • float sign;
  • float g_bak;
  • float v_bak;
  • float m_bak;
  • float step_size;
  • float MaxOvershoot;
  • float t80_minus_t10;
  • float write_implied_valve_position;
  • float local_travel_value;
  • float x;
  • float y;
  • float z;
  • float t10;
  • float t80;
  • float Gs;
  • float Ts;
  • float fDeadZone;
  • char st[3];
  • _set_device_status(0xFF,0);
  • _set_xmtr_device_status(0xFF,0);
  • _set_all_resp_code(1);
  • _set_resp_code(8,0);
  • _set_no_device(2);
  • send(151,S);
  • if (_ivar_value(16804) > 1)
  • {
  • ACKNOWLEDGE(literal_string(1930));
  • return;
  • }
  • ;
  • if (!((_ivar_value(16465) & 0x0008) == 0x0008))
  • {
  • ACKNOWLEDGE(literal_string(2189));
  • }
  • else
  • {
  • send_trans(129,34,S);
  • if (0x02 == _ivar_value(16509))
  • {
  • ACKNOWLEDGE(literal_string(2190));
  • return;
  • }
  • send(138,S);
  • if ((_ivar_value(16789) & 0x01) > 0)
  • {
  • ACKNOWLEDGE(literal_string(2191));
  • return;
  • }
  • ;
  • send_trans(129,0,S);
  • _vassign(16452,16427);
  • save_values();
  • if (1 == _ivar_value(167))
  • {
  • ACKNOWLEDGE(literal_string(2180));
  • process_abort();
  • }
  • if (_ivar_value(16427))
  • {
  • if ((_ivar_value(16465) & 0x01C0) == 0x0100)
  • {
  • _get_dev_var_value(literal_string(2181),0,16452);
  • }
  • else
  • {
  • _get_dev_var_value(literal_string(2182),0,16452);
  • }
  • save_values();
  • if (_ivar_value(16452) > 0)
  • {
  • ACKNOWLEDGE(literal_string(2183));
  • 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(literal_string(2162));
  • }
  • else
  • {
  • ACKNOWLEDGE(literal_string(2163));
  • }
  • process_abort();
  • }
  • _add_abort_method(17169);
  • DELAY(1,literal_string(2127));
  • if (1 - SELECT_FROM_LIST(literal_string(2192),literal_string(2136)))
  • {
  • i = 0;
  • send(138,S);
  • if ((_ivar_value(16789) & 0x02) > 0)
  • {
  • send_trans(142,0,S);
  • send_trans(129,29,S);
  • send_trans(142,1,S);
  • if (0x7FA00000 == _lvar_value(16940))
  • i = 0x01;
  • if (0x7FA00000 == _lvar_value(16938))
  • i = i | 0x02;
  • if (0x7FA00000 == _lvar_value(16939))
  • i = i | 0x04;
  • if ((i & 0x01) > 0 && (_ivar_value(16465) & 0x0200) == 0x0200)
  • {
  • ACKNOWLEDGE(literal_string(2193));
  • }
  • if ((i & 0x02) > 0)
  • {
  • ACKNOWLEDGE(literal_string(2194));
  • }
  • if ((i & 0x04) > 0)
  • {
  • ACKNOWLEDGE(literal_string(2195));
  • }
  • }
  • switch (_ivar_value(16434))
  • {
  • case 7:
  • qb = 0.689;
  • qd = 0.1;
  • break;
  • case 12:
  • qb = 68.9;
  • qd = 10.0;
  • break;
  • case 10:
  • qb = 0.703;
  • qd = 0.1;
  • break;
  • default:
  • qb = 10.0;
  • qd = 5.0;
  • break;
  • }
  • if (!(i & 0x01))
  • {
  • qa = _fvar_value(16947);
  • _fassign(16947,qb * 15.0);
  • send_trans(130,88,S);
  • send(42,S);
  • send_trans(142,0,S);
  • send_trans(129,28,S);
  • q = 0;
  • while (_fvar_value(16439) < qb && !q)
  • {
  • send_trans(129,28,S);
  • q = SELECT_FROM_LIST(literal_string(2196),literal_string(2197));
  • }
  • send_trans(142,1,S);
  • qc = _fvar_value(16439);
  • if (qc > qa)
  • {
  • qa = qc + qb / 2.0;
  • q0 = qa / qd;
  • qa = q0 * qd;
  • }
  • _fassign(16947,qa);
  • send_trans(130,88,S);
  • send_command(42);
  • if (1 == q)
  • process_abort();
  • if (_fvar_value(16439) < qb)
  • {
  • i = i | 0x08;
  • }
  • }
  • ;
  • send(138,S);
  • q0 = 0;
  • q1 = 1;
  • while ((_ivar_value(16792) & 0x08) > 0)
  • {
  • if (1 == q1)
  • {
  • send_trans(129,34,S);
  • if (1 == _ivar_value(16464) && _ivar_value(16794) & 0x08)
  • {
  • q0 = SELECT_FROM_LIST(literal_string(2198),literal_string(2199));
  • if (0 == q0)
  • {
  • q == SELECT_FROM_LIST(literal_string(221),literal_string(2200));
  • aux_term_mode = 2 * q;
  • send_trans(130,86,S);
  • }
  • }
  • }
  • if (0 == q0)
  • {
  • q0 = SELECT_FROM_LIST(literal_string(2201),literal_string(2202));
  • }
  • if (1 == q0)
  • {
  • remove_all_abort();
  • _add_abort_method(17169);
  • process_abort();
  • }
  • if (1 == q1)
  • {
  • q2 = _ivar_value(16529);
  • if (2 == q2)
  • q2 = -1;
  • q2 = q2 * (-2 * _ivar_value(16508) + 1);
  • if (0 == 0)
  • {
  • if (_ivar_value(171) == 0)
  • {
  • if (2 == _ivar_value(16529))
  • {
  • qa = 0.0;
  • }
  • else
  • {
  • qa = 1.0;
  • }
  • _fassign(16640,qa);
  • send_trans(130,78,S);
  • }
  • local_inst_mode = 1;
  • save_values();
  • send_trans(130,6,S);
  • }
  • }
  • if (_ivar_value(171) == 0)
  • {
  • if (1 == q1)
  • {
  • q1 = 2;
  • _fassign(16405,qa * 100.0);
  • save_values();
  • send_trans(130,4,S);
  • }
  • if (1 == _ivar_value(16464))
  • {
  • ACKNOWLEDGE(literal_string(2203));
  • }
  • else
  • {
  • ACKNOWLEDGE(literal_string(2204));
  • }
  • }
  • else
  • {
  • if (1 == _ivar_value(16464))
  • {
  • if (q2 < 0)
  • {
  • ACKNOWLEDGE(literal_string(2205));
  • }
  • else
  • {
  • ACKNOWLEDGE(literal_string(2206));
  • }
  • }
  • else
  • {
  • if (q2 < 0)
  • {
  • ACKNOWLEDGE(literal_string(2207));
  • }
  • else
  • {
  • ACKNOWLEDGE(literal_string(2206));
  • }
  • }
  • }
  • send(138,S);
  • }
  • if (0 == 0)
  • {
  • local_inst_mode = 0;
  • save_values();
  • send_trans(130,6,S);
  • send_trans(129,0,S);


请登录以获得完整内容