private void SetPSData(CFGData _CFGData) { mPSData.Clear(); for (int i = 0; i < _CFGData.A_Amount; i++) { PSData _PSData = new PSData(); if (_CFGData.arrAnalogyData[i].PrimaryOrSecondary == "P") { _PSData.P = _CFGData.arrAnalogyData[i].Magnification1; _PSData.PerUnit = _CFGData.arrAnalogyData[i].Magnification1 * _CFGData.arrAnalogyData[i].Magnification1; _PSData.S = _PSData.PerUnit / _CFGData.arrAnalogyData[i].Magnification2; } else if (_CFGData.arrAnalogyData[i].PrimaryOrSecondary == "S") { _PSData.S = _CFGData.arrAnalogyData[i].Zoom; _PSData.PerUnit = 1 / _CFGData.arrAnalogyData[i].Magnification2 * _CFGData.arrAnalogyData[i].Zoom; _PSData.P = _CFGData.arrAnalogyData[i].Magnification1 / _CFGData.arrAnalogyData[i].Magnification2 * _CFGData.arrAnalogyData[i].Zoom; } mPSData.Add(_PSData); } }
private void bgGrp1_DataChanged(object sender, DataChangeEventArgs e) { try { foreach (OPCItemState rslt in e.sts) { if (rslt.HandleClient == 0) { if (rslt.Quality == 0) { continue; } int resValue = int.Parse(rslt.DataValue.ToString()); if (resValue != 0) { PSData ps = new PSData(); ps.machineCode = this.MachineCode; ps.position = resValue; this.OnPositionChanged(ps, new EventArgs()); } } else if (rslt.HandleClient == 1) { bool resValue = bool.Parse(rslt.DataValue.ToString()); pallet.Dispatcher.BeginInvoke(new InvokeDelegate(SetPalletPresentStatus), resValue); } } } catch (NullReferenceException ex) { } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void PSCalc_Click(object sender, EventArgs e) { double.TryParse(txt_Ua.Text, out double Ua); double.TryParse(txt_UaPhi.Text, out double PhiUa); double.TryParse(txt_Ub.Text, out double Ub); double.TryParse(txt_UbPhi.Text, out double PhiUb); double.TryParse(txt_Uc.Text, out double Uc); double.TryParse(txt_UcPhi.Text, out double PhiUc); double.TryParse(txt_Ia.Text, out double Ia); double.TryParse(txt_IaPhi.Text, out double PhiIa); double.TryParse(txt_Ib.Text, out double Ib); double.TryParse(txt_IbPhi.Text, out double PhiIb); double.TryParse(txt_Ic.Text, out double Ic); double.TryParse(txt_IcPhi.Text, out double PhiIc); string format = "F3"; PhaseSequence sequence = new PhaseSequence(); { Polar vUa = new Polar(Ua, PhiUa); Polar vUb = new Polar(Ub, PhiUb); Polar vUc = new Polar(Uc, PhiUc); PSData vPositiveU = sequence.CalcPositive(vUa, vUb, vUc); txt_UPositive.Text = vPositiveU.Amplitude.ToString(format); txt_PhiUPositive.Text = vPositiveU.Phase.ToString(format); PSData vNegativeU = sequence.CalcNegative(vUa, vUb, vUc); txt_UNegative.Text = vNegativeU.Amplitude.ToString(format); txt_PhiUNegative.Text = vNegativeU.Phase.ToString(format); PSData vZeroU = sequence.CalcZero(vUa, vUb, vUc); txt_UZero.Text = vZeroU.Amplitude.ToString(format); txt_PhiUZero.Text = vZeroU.Phase.ToString(format); } { Polar vIa = new Polar(Ia, PhiIa); Polar vIb = new Polar(Ib, PhiIb); Polar vIc = new Polar(Ic, PhiIc); PSData vPositiveI = sequence.CalcPositive(vIa, vIb, vIc); txt_IPositive.Text = vPositiveI.Amplitude.ToString(format); txt_PhiIPositive.Text = vPositiveI.Phase.ToString(format); PSData vNegativeI = sequence.CalcNegative(vIa, vIb, vIc); txt_INegative.Text = vNegativeI.Amplitude.ToString(format); txt_PhiINegative.Text = vNegativeI.Phase.ToString(format); PSData vZeroI = sequence.CalcZero(vIa, vIb, vIc); txt_IZero.Text = vZeroI.Amplitude.ToString(format); txt_PhiIZero.Text = vZeroI.Phase.ToString(format); } }
/// <summary> /// PS /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void ucPS_OnPositionChanged(object sender, EventArgs e) { PSData ps = (PSData)sender; garrageGrid.Dispatcher.BeginInvoke(new InvokeDelegate(SetPSPosition), ps.machineCode, ps.position); }