Beispiel #1
0
        public void SSA_START(int a)
        {
            Console.WriteLine("Вызов SSA_START!");
            SSA      = new CFSUP_SSA("FSUP");
            SSA.host = MASTER.cfg.SSA_IP;
            SSA.port = SSA_PORT;
            SSA.CONNECT(1);

            if (a == 0)
            {
                SSA.FREQ_START(SSA_FREQ_START_LOW);
                SSA.FREQ_STOP(SSA_FREQ_STOP_LOW);
                SSA.SET_BW(SSA_BW_LOW);       //в Гц устанавливаем полосу пропускания анализатора спектра
                SSA.SET_VBW(SSA_VBW_LOW);     //в Гц устанавливаем полосу видеофильтра анализатора спектра
                SSA.SET_SWEEP(SSA_SWEEP_LOW); //в мс >2.5 мс  устанавливаем свиип
            }
            else
            if (a == 1)
            {
                SSA.FREQ_START(SSA_FREQ_START_HIGH);
                SSA.FREQ_STOP(SSA_FREQ_STOP_HIGH);
                SSA.SET_BW(SSA_BW_HIGH);       //в Гц устанавливаем полосу пропускания анализатора спектра
                SSA.SET_VBW(SSA_VBW_HIGH);     //в Гц устанавливаем полосу видеофильтра анализатора спектра
                SSA.SET_SWEEP(SSA_SWEEP_HIGH); //в мс >2.5 мс  устанавливаем свиип
            }
            else
            if (a == 2)
            {
                SSA.FREQ(FREQ);
                SSA.SET_SPAN(10000);
                SSA.SET_BW(SSA_BW);       //в Гц устанавливаем полосу пропускания анализатора спектра
                SSA.SET_VBW(SSA_VBW);     //в Гц устанавливаем полосу видеофильтра анализатора спектра
                SSA.SET_SWEEP(SSA_SWEEP); //в мс >2.5 мс  устанавливаем свиип
            }
            else
            if (a == 3)
            {
                SSA.FREQ(435000000);
                SSA.SET_SPAN(10000);
                SSA.SET_BW(SSA_BW);       //в Гц устанавливаем полосу пропускания анализатора спектра
                SSA.SET_VBW(SSA_VBW);     //в Гц устанавливаем полосу видеофильтра анализатора спектра
                SSA.SET_SWEEP(SSA_SWEEP); //в мс >2.5 мс  устанавливаем свиип
            }

            SSA.SET_ATTEN(SSA_ATTEN);//0..75 Дб
            SSA.SET_REF(SSA_REF);
            SSA.FUNC();
            SSA.SEND();
            if (a == 3)
            {
                SSA.CONT(1);
            }
            else
            {
                SSA.CONT(1);
            }
        }
Beispiel #2
0
        void SSA_START()
        {
            SSA = new CFSUP_SSA("FSUP");

            SSA.host = MASTER.cfg.SSA_IP;
            SSA.port = SSA_PORT;
            SSA.CONNECT(1);
            SSA.REQ("*RST;INST SAN;");
            SSA.FREQ(Convert.ToInt32("435000000")); //устанавливаем центральную частоту анализатора спектра
            SSA.SET_SPAN(SSA_SPAN);                 //в KГц    устанавливаем спан анализатора спектра
                                                    // int ATT = Convert.ToInt32(textBox.Text);
            SSA.SET_BW(SSA_BW);                     //в Гц устанавливаем полосу пропускания анализатора спектра
            SSA.SET_VBW(SSA_VBW);                   //в Гц устанавливаем полосу видеофильтра анализатора спектра
            SSA.SET_SWEEP(SSA_SWEEP);               //в мс >2.5 мс  устанавливаем свиип
            SSA.SET_ATTEN(SSA_ATTEN);               //0..75 Дб
            SSA.SET_REF(SSA_REF);
            SSA.FUNC();
            SSA.SEND();
        }
Beispiel #3
0
        public void STATE_NEXT()
        {
            string error  = "";
            double step_p = 60 / ((FREQ_END - FREQ_START) / FREQ_STEP);

            switch (st)
            {
            case STATE.START:
                Console.WriteLine("Шаг1: подготовка анализатора спектра");
                SSA_START();
                MASTER.SWITCH(false);    //выключаем ключи на входе
                MASTER.ATT_CONTROL(0);   //выключаем аттенюаторы
                FREQ        = FREQ_START;
                TIMER_DELAY = 3000;
                st          = st + 1;
                FLAG_END    = false;
                PROGRESS    = 1;
                break;

            case STATE.ST1:    //устанавливаем сигнал на определённую частоту
                Console.WriteLine("Шаг2: формирование кода реального времени и отправка в синтезатор");
                //                Console.WriteLine("FREQ:"+FREQ);
                var z = CMD_REALTIME_UPDATE(FREQ);
                MASTER.panel_Sint.FUNC_LIST_UPDATE(z);
                SSA.SET_SWEEP(SSA_SWEEP);    //в мс >2.5 мс  устанавливаем свиип
                SSA.SEND();
                TIMER_DELAY = 500;
                st          = st + 1;
                break;

            case STATE.ST2:
                SSA.PEAK_SEARCH(0);    //устанавливаем маркеры
                TIMER_DELAY = 3500;    //
                st          = st + 1;
                break;

            case STATE.ST3:
                Console.WriteLine("Шаг4:устанавливаем маркеры");
                //                 SSA.PEAK_SEARCH();//устанавливаем маркеры
                SSA.MRK_REQ(1);    //запрашиваем значение первого маркера
                TIMER_DELAY = 500; //
                st          = st + 1;
                break;

            case STATE.ST4:    //обрабатываем значение пика сигнала
                Console.WriteLine("Шаг5:измерение параметров");
                if (!ANALIZ(0))
                {
                    if (sch < 3)
                    {
                        st = STATE.ST1; sch++; break;
                    }
                }
                ;                    //измеряем уровень сигнала
                TIMER_DELAY = 10;    //
                sch         = 0;
                st          = st + 1;
                break;

            case STATE.ST5:
                Console.WriteLine("Шаг6:устанавливаем маркеры");
                SSA.PEAK_SEARCH(0); //устанавливаем маркеры
                SSA.MRK_REQ(1);     //запрашиваем значение первого маркера
                TIMER_DELAY = 3500; //
                st          = st + 1;
                break;

            case STATE.ST6:    //измеряем уровень сигнала
                Console.WriteLine("Шаг7:измерение параметров");
                if (!ANALIZ(1))
                {
                    if (sch < 3)
                    {
                        st = STATE.ST1; sch++; break;
                    }
                }
                ;                     //измеряем тишину в паузе
                TIMER_DELAY = 100;    //
                st          = st + 1;
                break;

            case STATE.ST7:
                Console.WriteLine("Шаг8:смена частоты");
                if (FREQ < FREQ_END)
                {
                    PROGRESS = PROGRESS + step_p;
                    FREQ     = FREQ + FREQ_STEP;
                    st       = STATE.ST1;
                }
                else
                {
                    st = STATE.END;
                }
                TIMER_DELAY = 100;    //
                break;

            case STATE.END:    //измеряем уровень сигнала
                Console.WriteLine("Шаг9:подведение итогов");
                PROGRESS = 100;
                FINAL();
                TIMER_DELAY = 10;    //
                st          = st + 1;
                FLAG_END    = true;
                break;
            }
        }