Esempio n. 1
0
        public override void Run()
        {
            SCPI_PNA.ScpiCommand("*RST");
            SCPI_PNA.ScpiCommand(":OUTPut:STATe 0");
            SCPI_PNA.ScpiCommand(":FORMat:DATA " + Format_Data);

            if (Ch1)
            {
                uint Channel = 1u;
                if (Ch1_S11)
                {
                    RepeatScpiCmdForChannel(Channel, "S11");
                }
                if (Ch1_S12)
                {
                    RepeatScpiCmdForChannel(Channel, "S12");
                }
                if (Ch1_S21)
                {
                    RepeatScpiCmdForChannel(Channel, "S21");
                }
                if (Ch1_S22)
                {
                    RepeatScpiCmdForChannel(Channel, "S22");
                }
            }

            if (Ch2)
            {
                uint Channel = 2u;
                if (Ch2_S11)
                {
                    RepeatScpiCmdForChannel(Channel, "S22");
                }
                if (Ch2_S12)
                {
                    RepeatScpiCmdForChannel(Channel, "S12");
                }
                if (Ch2_S21)
                {
                    RepeatScpiCmdForChannel(Channel, "S21");
                }
                if (Ch2_S22)
                {
                    RepeatScpiCmdForChannel(Channel, "S22");
                }
            }

            //QTime = SCPI_PNA.ScpiQuery<System.Double>(Scpi.Format(":SENSe{0}:SWEep:TIME?", Sweep_Channel), true);
            //Q_Time = SCPI_PNA.ScpiQuery<System.Double>(Scpi.Format(":SENSe{0}:SWEep:TIME?", Sweep_Channel), true);
            this.ProcessResults();
        }
Esempio n. 2
0
        public void RepeatScpiCmdForChannel(uint Calc_Channel, string Calc_Param)
        {
            string Calc_Name = "Ch" + Calc_Channel.ToString() + "_" + Calc_Param;

            SCPI_PNA.ScpiCommand(":CALCulate{0}:PARameter:DEFine:EXTended {1},{2}", Calc_Channel, Calc_Name, Calc_Param);
            SCPI_PNA.ScpiCommand(":CALCulate{0}:PARameter:SELect {1}", Calc_Channel, Calc_Name);
            SCPI_PNA.ScpiCommand(":SENSe{0}:SWEep:TYPE {1}", Calc_Channel, Sweep_Type);
            SCPI_PNA.ScpiCommand(":SENSe{0}:FREQuency:STARt {1}", Calc_Channel, Start_Sweep_Freq * 1.0E06);
            SCPI_PNA.ScpiCommand(":SENSe{0}:FREQuency:STOP {1}", Calc_Channel, Stop_Sweep_Freq * 1.0E06);
            SCPI_PNA.ScpiCommand(":SENSe{0}:SWEep:POINts {1}", Calc_Channel, Sweep_Points);
            SCPI_PNA.ScpiCommand(":SENSe{0}:SWEep:TIME {1}", Calc_Channel, Sweep_Time);
            SCPI_PNA.ScpiCommand(":CALCulate{0}:FORMat {1}", Calc_Channel, Calc_Format);
        }