示例#1
0
        public static void BushingCapacitance(ref MeasurementItemStruct mi, Transformer transformer, JobList Job)
        {
            Parameter.JSstation Jsposition = Parameter.JSstation.高压套管0;
            Thread.Sleep(150);
            if (mi.Winding == WindingType.HV)
            {
                if (mi.Terimal[0] == WindingTerimal.O)
                {
                    if (!transformer.Coupling)
                    {
                        Jsposition = Parameter.JSstation.高压套管0;
                    }
                    else
                    {
                        Jsposition = Parameter.JSstation.耦合高套管0;
                    }
                }
                if (mi.Terimal[0] == WindingTerimal.A)
                {
                    if (!transformer.Coupling)
                    {
                        Jsposition = Parameter.JSstation.高压套管A;
                    }
                    else
                    {
                        Jsposition = Parameter.JSstation.耦合高套管A;
                    }
                }
                if (mi.Terimal[0] == WindingTerimal.B)
                {
                    if (!transformer.Coupling)
                    {
                        Jsposition = Parameter.JSstation.高压套管B;
                    }
                    else
                    {
                        Jsposition = Parameter.JSstation.耦合高套管B;
                    }
                }
                if (mi.Terimal[0] == WindingTerimal.C)
                {
                    if (!transformer.Coupling)
                    {
                        Jsposition = Parameter.JSstation.高压套管C;
                    }
                    else
                    {
                        Jsposition = Parameter.JSstation.耦合高套管C;
                    }
                }
            }
            else
            {
                if (mi.Terimal[0] == WindingTerimal.O)
                {
                    if (!transformer.Coupling)
                    {
                        Jsposition = Parameter.JSstation.中压套管0;
                    }
                    else
                    {
                        Jsposition = Parameter.JSstation.耦合中套管0;
                    }
                }
                if (mi.Terimal[0] == WindingTerimal.A)
                {
                    if (!transformer.Coupling)
                    {
                        Jsposition = Parameter.JSstation.中压套管A;
                    }
                    else
                    {
                        Jsposition = Parameter.JSstation.耦合中套管A;
                    }
                }
                if (mi.Terimal[0] == WindingTerimal.B)
                {
                    if (!transformer.Coupling)
                    {
                        Jsposition = Parameter.JSstation.中压套管B;
                    }
                    else
                    {
                        Jsposition = Parameter.JSstation.耦合中套管B;
                    }
                }
                if (mi.Terimal[0] == WindingTerimal.C)
                {
                    if (!transformer.Coupling)
                    {
                        Jsposition = Parameter.JSstation.中压套管C;
                    }
                    else
                    {
                        Jsposition = Parameter.JSstation.耦合中套管C;
                    }
                }
            }
            switch (mi.state)
            {
            case 0:
                byte[] TestKindData = TZ3310.SetPraJs(Jsposition, Parameter.JSstyle.内接正接, GetParameter.GetPraBushingCapacitanceVoltage(Job), Parameter.JSFrequency._45To_55HZ, 0);
                Thread.Sleep(100);
                TZ3310.StartTest(TestKindData);
                mi.stateText = "正在测试" + mi.Winding + "末屏中...";
                mi.state++;
                Thread.Sleep(4000);
                break;

            case 1:
                string[] Recbuffer = TZ3310.ReadTestData(Parameter.TestKind.介质损耗);
                Thread.Sleep(150);

                if (Recbuffer != null)
                {
                    if (Recbuffer[Recbuffer.Length - 1] == "0")
                    {
                        mi.Result = MeasurementResult.NewBushingCapacitanceResult(mi, NumericsConverter.Text2Value(Recbuffer[1]), null, null
                                                                                  , NumericsConverter.Text2Value(Recbuffer[2]), NumericsConverter.Text2Value(Recbuffer[3]), false);
                    }
                    else if (Recbuffer[Recbuffer.Length - 1] == "1")
                    {
                        mi.Result = MeasurementResult.NewBushingCapacitanceResult(mi, NumericsConverter.Text2Value(Recbuffer[0]),
                                                                                  NumericsConverter.Text2Value(Recbuffer[1]), NumericsConverter.Text2Value(Recbuffer[2])
                                                                                  , NumericsConverter.Text2Value(GetParameter.GetFreQuency(Parameter.JSFrequency._45To_55HZ)), NumericsConverter.Text2Value(Recbuffer[3]), true);
                        mi.completed = true;
                        mi.stateText = "读取" + mi.Winding + "末屏测试完成";
                    }
                    else
                    {
                        mi.failed    = true;
                        mi.completed = true;
                        mi.stateText = mi.Winding + "错误类型:" + Recbuffer[0].ToString();
                    }
                }
                break;
            }
        }