private void Test_Click(object Sender, RoutedEventArgs E) { if (tabControl.SelectedIndex != 1) { return; } var paramGate = new Types.Gate.TestParameters { IsEnabled = false }; var paramBvt = new Types.BVT.TestParameters { IsEnabled = false }; var paramVtm = new Types.VTM.TestParameters { IsEnabled = false }; var paramATU = new Types.ATU.TestParameters { IsEnabled = false }; var paramQrrTq = new Types.QrrTq.TestParameters { IsEnabled = false }; var paramIH = new Types.IH.TestParameters { IsEnabled = false }; var paramRCC = new Types.RCC.TestParameters { IsEnabled = false }; var paramTOU = new Types.TOU.TestParameters { IsEnabled = false }; switch (tabControl.SelectedIndex) { case 1: paramVtm.IsEnabled = true; paramVtm.IsSelfTest = true; break; } var started = Cache.Net.Start(paramGate, paramVtm, paramBvt, paramATU, paramQrrTq, paramIH, paramRCC, new Types.Commutation.TestParameters { BlockIndex = Types.Commutation.HWBlockIndex.Block1, CommutationType = Types.Commutation.HWModuleCommutationType.Direct, Position = Types.Commutation.HWModulePosition.Position1 }, new Types.Clamping.TestParameters { SkipClamping = true }, paramTOU, true); var stopped = Cache.Net.IsStopButtonPressed; if (stopped || !started) { return; } IsRunning = true; }
private void FillGateParameters(Types.Gate.TestParameters parameters, long testTypeId) { var results = new List <Tuple <string, float?, float?> >(); FillParametersResults(testTypeId, results); foreach (var result in results) { switch (result.Item1) { case "RG": if (result.Item3.HasValue) { parameters.Resistance = result.Item3.Value; } break; case "IGT": if (result.Item3.HasValue) { parameters.IGT = result.Item3.Value; } if (result.Item2.HasValue) { parameters.MinIGT = result.Item2.Value; } break; case "VGT": if (result.Item3.HasValue) { parameters.VGT = result.Item3.Value; } break; case "IH": if (parameters.IsIhEnabled && result.Item3.HasValue) { parameters.IH = result.Item3.Value; } break; case "IL": if (parameters.IsIlEnabled && result.Item3.HasValue) { parameters.IL = result.Item3.Value; } break; } } }
private void BtnStart_OnClick(object sender, RoutedEventArgs e) { if (VM.IsRunning) { return; } VM.IsRunning = true; var paramGate = new Types.Gate.TestParameters { IsEnabled = false }; var paramVtm = new Types.VTM.TestParameters { IsEnabled = false }; var paramBvt = new Types.BVT.TestParameters { IsEnabled = false }; var paramATU = new Types.ATU.TestParameters { IsEnabled = false }; var paramQrrTq = new Types.QrrTq.TestParameters { IsEnabled = false }; var paramIH = new Types.IH.TestParameters { IsEnabled = false }; var paramRCC = new Types.RCC.TestParameters { IsEnabled = false }; //если пресс был зажат вручную - не стоит пробовать зажимать его ещё раз VM.Clamping.SkipClamping = Cache.Clamp.ManualClamping; Types.Commutation.TestParameters commutation = new Types.Commutation.TestParameters() { BlockIndex = (!Cache.Clamp.UseTmax) ? Types.Commutation.HWBlockIndex.Block1 : Types.Commutation.HWBlockIndex.Block2, CommutationType = ConverterUtil.MapCommutationType(VM.CommutationType), Position = ConverterUtil.MapModulePosition(VM.Position) }; if (!Cache.Net.Start(paramGate, paramVtm, paramBvt, paramATU, paramQrrTq, paramIH, paramRCC, commutation, VM.Clamping, VM.TOU)) { return; } ClearStatus(); }
internal void Start() { if (IsRunning) { return; } var paramGate = new Types.Gate.TestParameters { IsEnabled = false }; var paramVtm = new Types.SL.TestParameters { IsEnabled = false }; var paramAtu = new Types.ATU.TestParameters { IsEnabled = false }; var paramQrrTq = new Types.QrrTq.TestParameters { IsEnabled = false }; var paramRAC = new Types.RAC.TestParameters { IsEnabled = false }; var paramIH = new Types.IH.TestParameters { IsEnabled = false }; var paramRCC = new Types.RCC.TestParameters { IsEnabled = false }; ClampParameters.SkipClamping = Cache.Clamp.ManualClamping; Parameters.VoltageFrequency = (ushort)Settings.Default.BVTVoltageFrequency; Parameters.MeasurementMode = Types.BVT.BVTMeasurementMode.ModeV; if (!Cache.Net.Start(paramGate, paramVtm, Parameters, paramAtu, paramQrrTq, paramRAC, paramIH, paramRCC, new Types.Commutation.TestParameters { BlockIndex = (!Cache.Clamp.clampPage.UseTmax) ? Types.Commutation.HWBlockIndex.Block1 : Types.Commutation.HWBlockIndex.Block2, CommutationType = ConverterUtil.MapCommutationType(CommType), Position = ConverterUtil.MapModulePosition(ModPosition) }, ClampParameters)) { return; } ClearStatus(); IsRunning = true; }
internal void Start() { if (IsRunning) { return; } var paramGate = new Types.Gate.TestParameters { IsEnabled = false }; var paramVtm = new Types.VTM.TestParameters { IsEnabled = false }; var paramBvt = new Types.BVT.TestParameters { IsEnabled = false }; var paramATU = new Types.ATU.TestParameters { IsEnabled = false }; var paramIH = new Types.IH.TestParameters { IsEnabled = false }; var paramRCC = new Types.RCC.TestParameters { IsEnabled = false }; var paramTOU = new Types.TOU.TestParameters { IsEnabled = false }; //если пресс был зажат вручную - не стоит пробовать зажимать его ещё раз ClampParameters.SkipClamping = Cache.Clamp.ManualClamping; if (!Cache.Net.Start(paramGate, paramVtm, paramBvt, paramATU, Parameters, paramIH, paramRCC, new Types.Commutation.TestParameters { BlockIndex = (!Cache.Clamp.clampPage.UseTmax) ? Types.Commutation.HWBlockIndex.Block1 : Types.Commutation.HWBlockIndex.Block2, CommutationType = ConverterUtil.MapCommutationType(CommType), Position = ConverterUtil.MapModulePosition(ModPosition) }, ClampParameters, paramTOU)) { return; } ClearStatus(); IsRunning = true; }
internal void Start() { if (IsRunning) { return; } var paramGate = new Types.Gate.TestParameters { IsEnabled = false }; var paramBvt = new Types.BVT.TestParameters { IsEnabled = false }; var paramATU = new Types.ATU.TestParameters { IsEnabled = false }; var paramQrrTq = new Types.QrrTq.TestParameters { IsEnabled = false }; var paramIH = new Types.IH.TestParameters { IsEnabled = false }; var paramRCC = new Types.RCC.TestParameters { IsEnabled = false }; var paramTOU = new Types.TOU.TestParameters { IsEnabled = false }; ClampParameters.SkipClamping = Cache.Clamp.ManualClamping; ClearStatus(); if (!Cache.Net.Start(paramGate, Parameters, paramBvt, paramATU, paramQrrTq, paramIH, paramRCC, new Types.Commutation.TestParameters { BlockIndex = (!Cache.Clamp.UseTmax) ? Types.Commutation.HWBlockIndex.Block1 : Types.Commutation.HWBlockIndex.Block2, CommutationType = ConverterUtil.MapCommutationType(CommType), Position = ConverterUtil.MapModulePosition(ModPosition) }, ClampParameters, paramTOU)) { return; } IsRunning = true; }
internal GatePage() { Parameters = new Types.Gate.TestParameters { IsEnabled = true }; ClampParameters = new Types.Clamping.TestParameters { StandardForce = Types.Clamping.ClampingForceInternal.Custom, CustomForce = 5.0f }; CommType = Settings.Default.SinglePositionModuleMode ? Types.Commutation.ModuleCommutationType.Direct : Types.Commutation.ModuleCommutationType.MT3; InitializeComponent(); m_XRed = (SolidColorBrush)FindResource("xRed1"); m_XGreen = (SolidColorBrush)FindResource("xGreen1"); m_XOrange = (SolidColorBrush)FindResource("xOrange1"); ClearStatus(); }
internal DeviceState Start(Types.Gate.TestParameters parameters, Types.Commutation.TestParameters commParameters) { m_Parameter = parameters; if (m_State == DeviceState.InProcess) { throw new Exception("Gate test is already started"); } m_Stop = false; m_Result = new Types.Gate.TestResults { TestTypeId = parameters.TestTypeId }; ClearWarning(); if (!m_IsGateEmulation) { var devState = (Types.Gate.HWDeviceState)ReadRegister(REG_DEVICE_STATE); if (devState == Types.Gate.HWDeviceState.Fault) { var faultReason = (Types.Gate.HWFaultReason)ReadRegister(REG_FAULT_REASON); FireNotificationEvent(Types.Gate.HWProblemReason.None, Types.Gate.HWWarningReason.None, faultReason, Types.Gate.HWDisableReason.None); throw new Exception(string.Format("Gate is in fault state, reason: {0}", faultReason)); } if (devState == Types.Gate.HWDeviceState.Disabled) { var disableReason = (Types.Gate.HWDisableReason)ReadRegister(REG_DISABLE_REASON); FireNotificationEvent(Types.Gate.HWProblemReason.None, Types.Gate.HWWarningReason.None, Types.Gate.HWFaultReason.None, disableReason); throw new Exception(string.Format("Gate is in disabled state, reason: {0}", disableReason)); } } MeasurementLogicRoutine(commParameters); return(m_State); }
private Types.Gate.TestParameters FillGateConditions(long testTypeId) { var results = new Dictionary <string, object>(3); var testParams = new Types.Gate.TestParameters() { IsEnabled = true, TestTypeId = testTypeId }; FillOrder(testTypeId, testParams); FillConditionsResults(testTypeId, results); foreach (var result in results) { switch (result.Key) { case "Gate_En": testParams.IsEnabled = Convert.ToBoolean(result.Value); break; case "Gate_IHEn": testParams.IsIhEnabled = Boolean.Parse(result.Value.ToString()); break; case "Gate_ILEn": testParams.IsIlEnabled = Boolean.Parse(result.Value.ToString()); break; case "Gate_EnableCurrent": testParams.IsCurrentEnabled = Boolean.Parse(result.Value.ToString()); break; case "Gate_EnableIHStrike": testParams.IsIhStrikeCurrentEnabled = Boolean.Parse(result.Value.ToString()); break; } } return(testParams); }
private (string typeName, Dictionary <string, object> conditions, Dictionary <string, (object Min, object Max)> parameters) TypeConditionsParameters(Types.Gate.TestParameters gate) { var gateCondtions = new Dictionary <string, object>() { { "Gate_En", gate.IsEnabled }, { "Gate_EnableCurrent", gate.IsCurrentEnabled }, { "Gate_IHEn", gate.IsIhEnabled }, { "Gate_ILEn", gate.IsIlEnabled }, { "Gate_EnableIHStrike", gate.IsIhStrikeCurrentEnabled }, }; var gateParameters = new Dictionary <string, (object Min, object Max)> { { "RG", (DBNull.Value, gate.Resistance) }, { "IGT", (gate.MinIGT, gate.IGT) },
bool IExternalControl.Start(Types.Gate.TestParameters ParametersGate, Types.VTM.TestParameters ParametersSL, Types.BVT.TestParameters ParametersBvt, Types.ATU.TestParameters ParametersAtu, Types.QrrTq.TestParameters ParametersQrrTq, Types.IH.TestParameters ParametersIH, Types.RCC.TestParameters ParametersRCC, Types.Commutation.TestParameters ParametersComm, Types.Clamping.TestParameters ParametersClamp, Types.TOU.TestParameters ParametersTOU) { return(_IoMain.Start(ParametersGate, ParametersSL, ParametersBvt, ParametersAtu, ParametersQrrTq, ParametersIH, ParametersRCC, ParametersComm, ParametersClamp, ParametersTOU)); }