Exemplo n.º 1
0
 public void ProcessAutoCalbrationDetails(Models.Feedback.AutoCalibrationDetails model)
 {
     if (IsReadly)
     {
         HandleCalbrationState(model);
     }
 }
Exemplo n.º 2
0
 public void ProcessAutoCalbrationDetails(Models.Feedback.AutoCalibrationDetails model)
 {
 }
Exemplo n.º 3
0
 private void ShowCalibarationResult(Models.Feedback.AutoCalibrationDetails model)
 {
     if (model.AutoCalibrationResult == 0)
     {
         labTipCalibration.Text = LangWords["631"];
     }
     else if ((model.AutoCalibrationResult & 0x01) == 0x01)
     {
         labTipCalibration.Text = LangWords["643"];
     }
     else if ((model.AutoCalibrationResult & 0x02) == 0x02)
     {
         labTipCalibration.Text = LangWords["644"];
     }
     else if ((model.AutoCalibrationResult & 0x04) == 0x04)
     {
         labTipCalibration.Text = LangWords["645"];
     }
     else if ((model.AutoCalibrationResult & 0x08) == 0x08)
     {
         labTipCalibration.Text = LangWords["623"];
     }
     else if ((model.AutoCalibrationResult & 0x40) == 0x40)
     {
         labTipCalibration.Text = LangWords["646"];
     }
     else
     {
         labTipCalibration.Text = LangWords["626"];
     }
     //switch (model.AutoCalibrationResult)
     //{
     //    case IGT.Models.Enums.AutoCalibrationResult.Successed:
     //        if (model.InjectorBoreValue < -50)
     //            labTipCalibration.Text = LangWords["627"];
     //        else if (model.InjectorBoreValue < -20)
     //            labTipCalibration.Text = LangWords["628"];
     //        else if (model.InjectorBoreValue < 20)
     //            labTipCalibration.Text = LangWords["631"];
     //        else if (model.InjectorBoreValue < 50)
     //            labTipCalibration.Text = LangWords["629"];
     //        else
     //            labTipCalibration.Text = LangWords["630"];
     //        break;
     //    case IGT.Models.Enums.AutoCalibrationResult.NoMAPSensor:
     //        labTipCalibration.Text = LangWords["620"];
     //        break;
     //    case IGT.Models.Enums.AutoCalibrationResult.MAPPressLower:
     //        labTipCalibration.Text = LangWords["621"];
     //        break;
     //    case IGT.Models.Enums.AutoCalibrationResult.MAPPressHigher:
     //        labTipCalibration.Text = LangWords["622"];
     //        break;
     //    case Models.Enums.AutoCalibrationResult.RPMLower:
     //        labTipCalibration.Text = LangWords["623"];
     //        break;
     //    case Models.Enums.AutoCalibrationResult.RPMHigher:
     //        labTipCalibration.Text = LangWords["624"];
     //        break;
     //    case IGT.Models.Enums.AutoCalibrationResult.PertolSignalError:
     //        labTipCalibration.Text = LangWords["625"];
     //        break;
     //    case Models.Enums.AutoCalibrationResult.UnknowageError:
     //        labTipCalibration.Text = LangWords["626"];
     //        break;
     //}
 }
Exemplo n.º 4
0
        void HandleCalbrationState(Models.Feedback.AutoCalibrationDetails model)
        {
            if (btnStop.Enabled == false)
            {
                return;
            }
            //if (model.State == Models.Enums.AutoCalibrationState.Error)
            //    model.State = Models.Enums.AutoCalibrationState.Finished;
            switch (model.State)
            {
            //case IGT.Models.Enums.AutoCalibrationState.NotEnter:
            case 0x00:    //还没进入自动标定
                if (WaitExit4CalbrationState == false)
                {
                    pBarCalibration.Value = 0;
                    //   injectorsMeasurement1.Value = -10;
                    labTipCalibration.Text = LangWords["615"];    //615=按"开始"自动标定
                }
                else
                {
                    Services.Device.EndOnTimeTask(Service.PLC.OnTimeTasks.GetAutoCalibrationDetails);
                    WaitExit4CalbrationState = false;
                    ShowCalibarationResult(model);
                    //   injectorsMeasurement1.Value = -10;
                    btnStop.Enabled       = false;
                    btnStart.Enabled      = true;
                    pBarCalibration.Value = 100;
                    MessageBox.Show(LangWords["632"], "");    //632=标定出错
                }
                break;

            //case IGT.Models.Enums.AutoCalibrationState.WaitEngineStart:
            case 0x01:
                pBarCalibration.Value  = model.State * 10;
                labTipCalibration.Text = LangWords["616"];    //616=请启动发动机
                break;

            case 0x02:
                pBarCalibration.Value  = model.State * 10;
                labTipCalibration.Text = LangWords["617"];    //617=等待减压器温度达到50℃  加油到2500-3100转
                break;

            case 0x05:
                pBarCalibration.Value  = model.State * 10;
                labTipCalibration.Text = LangWords["619"];    //619=正在自动标定,保持发动机转速在2500-3100转
                break;

            //case IGT.Models.Enums.AutoCalibrationState.Error:
            //    if (WaitExit4CalbrationState == true) return;
            //    WaitExit4CalbrationState = true;
            //    var mode = cbAllWork.Checked ? Models.Enums.AutoCalibrationCMD.AutoFull : Models.Enums.AutoCalibrationCMD.Auto;
            //    Services.Device.SendAndRead("AutoCalibrationPage", UIHelper.CancelBit_AutoCalibPage, Service.PLC.InstructionSet.SetAutoCalibrationCMD
            //        , Service.PLC.ValueConvert.AutoCalibrationCMDValue(mode));
            //    break;
            case 0x0c:
                if (WaitExit4CalbrationState == true)
                {
                    return;
                }
                WaitExit4CalbrationState = true;
                btnStop.Enabled          = false;
                btnStart.Enabled         = true;
                //Services.Device.EndOnTimeTask(Service.PLC.OnTimeTasks.GetAutoCalibrationDetails);
                //var mode2 = cbAllWork.Checked ? Models.Enums.AutoCalibrationCMD.AutoFull : Models.Enums.AutoCalibrationCMD.Auto;
                //Services.Device.SendAndRead("AutoCalibrationPage", UIHelper.CancelBit_AutoCalibPage, Service.PLC.InstructionSet.SetAutoCalibrationCMD
                //    , Service.PLC.ValueConvert.AutoCalibrationCMDValue(mode2));
                //Services.Stroe.LoadItem(Service.Storage.SettingItems.ECUCorrectionParams);
                if (model.AutoCalibrationResult != 0)
                {
                    ShowCalibarationResult(model);    //标定结果
                    break;
                }
                Services.Stroe.LoadItem(Service.Storage.SettingItems.MAPCalibrationParams);
                //     injectorsMeasurement1.Value = -10;
                int temp = 0;
                for (int i = 0; i < 12; i++)
                {
                    for (int j = 0; j < 12; j++)
                    {
                        temp += Store.MAPCalibrationParams.MAPValues[i][j];
                    }
                }
                temp = temp / 144;
                injectorsMeasurement1.Value = temp;
                pBarCalibration.Value       = 100;
                ShowCalibarationResult(model);    //标定结果
                Services.ActionMsg.Enqueue(Actions.Goto);
                MessageBox.Show(LangWords["631"]);
                this.ParentForm.Close();
                break;

            default: break;
            }
        }