void GEN_START() { GEN.SOURCE(1);//всегда вызывается перед параметрами!!! GEN.POW(LEVEL.ToString()); GEN.OUT1(1); GEN.SEND(); }
public void STATE_NEXT() { double n_sch = (FREQ_END - FREQ_START) / FREQ_STEP; double step_p = 70 / n_sch; switch (st) { case STATE.START: Console.WriteLine("Шаг1: подготовка генератора сигналов и блока 072"); GEN_START(); MASTER.SWITCH(false); //выключаем ключи на входе MASTER.ATT_CONTROL(0); //выключаем аттенюаторы FUN1(); var z = CMD_REALTIME_UPDATE(FREQ); //готовим блок 072 MASTER.panel_Sint.FUNC_LIST_UPDATE(z); TIMER_DELAY = 1000; st = st + 1; FLAG_END = false; PROGRESS = 10; break; case STATE.ST1: Console.WriteLine("Шаг1:устанавливаем генератор на центральную частоту для измерения опорного сигнала"); GEN.FREQ(435000000); GEN.SEND(); TIMER_DELAY = 500; st = st + 1; PROGRESS = 20; break; case STATE.ST2: Console.WriteLine("Шаг2:измерение параметров сигнала установленного в центр спектра"); Analize_OP(); GEN.FREQ(FREQ); GEN.SEND(); A_oporn = dat.A; //запоминаем опорный уровень WriteLine("A_oporn:" + A_oporn); TIMER_DELAY = 500; //500 st = st + 1; PROGRESS = 30; break; case STATE.ST3: Console.WriteLine("Шаг3:перебираем частоты"); WriteLine("FREQ:" + FREQ); GEN.FREQ(FREQ); GEN.SEND(); TIMER_DELAY = TIME_DELAY - 50; st = st + 1; PROGRESS += step_p; break; case STATE.ST4: Console.WriteLine("Шаг4:измерение параметров"); Analize(); WriteLine("dat.A:" + dat.A); TIMER_DELAY = 50; //500 st = st + 1; break; case STATE.ST5: Console.WriteLine("Шаг5:смена частоты"); if (FREQ < FREQ_END) { FREQ = FREQ + FREQ_STEP; st = STATE.ST3; } else { st = STATE.Calc; } TIMER_DELAY = 10; // break; case STATE.Calc: Console.WriteLine("Шаг4:расчёт"); // Analize2(); FINAL(); SAVE_DATA(); //сохраняем измеренные данные в файл FLAG_END = true; PROGRESS = 100; st = STATE.END; break; } }
public void STATE_NEXT() { string error = ""; string msg = ""; int CHANAL = 0; double step_proces1 = 0; double N_step = 0; N_step = (((double)(FREQ_END - FREQ_START)) / FREQ_STEP); step_proces1 = 90 / N_step; switch (st) { case STATE.START: Console.WriteLine("Шаг1: подготовка генератора сигналов и блока 072"); GEN_START(1); MASTER.SWITCH(false); //выключаем ключи на входе //if (Number_chanal == 1) MASTER.ATT_CH_CONTROL(0, 31,31, 31);// //if (Number_chanal == 2) MASTER.ATT_CH_CONTROL(31, 0,31, 31);// //if (Number_chanal == 3) MASTER.ATT_CH_CONTROL(31,31, 0, 31);// //if (Number_chanal == 4) MASTER.ATT_CH_CONTROL(31,31,31, 0);// MASTER.ATT_CORR_CONTROL(0, 0, 0, 0); FUN1(); var z = CMD_REALTIME_UPDATE(FREQ); //готовим блок 072 MASTER.panel_Sint.FUNC_LIST_UPDATE(z); TIMER_DELAY = 1000; st = st + 1; FLAG_END = false; PROGRESS = 1; break; case STATE.ST1: Console.WriteLine("Шаг1:устанавливаем генератор на заданную частоту"); // WriteLine("FREQ:"+FREQ); GEN.FREQ(FREQ); GEN.SEND(); TIMER_DELAY = TIME_DELAY - 10; st = st + 1; break; case STATE.ST2: Console.WriteLine("Шаг2:измерение параметров"); ERROR_MEAS = Analize(sch); if (ERROR_MEAS == 1) { sch++; TIMER_DELAY = 10; st = STATE.ST1; break; } // WriteLine("dat.A:"+ dat.A); TIMER_DELAY = 10; //500 st = st + 1; break; case STATE.ST3: Console.WriteLine("Шаг3:смена частоты"); if (FREQ < FREQ_END) { FREQ = FREQ + FREQ_STEP; st = STATE.ST1; } else { st = STATE.Calc; } PROGRESS = PROGRESS + step_proces1; TIMER_DELAY = 10; // break; case STATE.Calc: Console.WriteLine("Шаг4:расчёт неравномерности АЧХ"); GEN_START(0); Analize2(); SAVE_DATA(); //сохраняем измеренные данные в файл FLAG_END = true; st = STATE.END; break; } }
public void STATE_NEXT() { string error = ""; string msg = ""; int CHANAL = 0; double step_proces1 = 0; double N_step = 0; N_step = (((double)(FREQ_END - FREQ_START)) / FREQ_STEP); step_proces1 = 75 / N_step; switch (st) { case STATE.START: Console.WriteLine("Шаг1: подготовка генератора сигналов и блока 072"); GEN_START(1); MASTER.SWITCH(false); //выключаем ключи на входе if (Number_chanal == 1) { MASTER.ATT_CH_CONTROL(0, 31, 31, 31); // } if (Number_chanal == 2) { MASTER.ATT_CH_CONTROL(31, 0, 31, 31); // } if (Number_chanal == 3) { MASTER.ATT_CH_CONTROL(31, 31, 0, 31); // } if (Number_chanal == 4) { MASTER.ATT_CH_CONTROL(31, 31, 31, 0); // } FUN1(); var z = CMD_REALTIME_UPDATE(FREQ); //готовим блок 072 MASTER.panel_Sint.FUNC_LIST_UPDATE(z); TIMER_DELAY = 1000; st = st + 1; FLAG_END = false; PROGRESS = 1; break; case STATE.ST1: Console.WriteLine("Шаг1:устанавливаем генератор на заданную частоту"); // WriteLine("FREQ:"+FREQ); GEN.FREQ(FREQ); GEN.SEND(); TIMER_DELAY = TIME_DELAY - 10; st = st + 1; break; case STATE.ST2: Console.WriteLine("Шаг2:измерение параметров"); Analize(); WriteLine("dat.A:" + dat.A); TIMER_DELAY = 10; //500 st = st + 1; PROGRESS = PROGRESS + step_proces1; break; case STATE.ST3: Console.WriteLine("Шаг3:смена частоты"); if (FREQ < FREQ_END) { FREQ = FREQ + FREQ_STEP; st = STATE.ST1; } else { st = STATE.ST4; } TIMER_DELAY = 10; // break; case STATE.ST4: Console.WriteLine("Шаг4:Калибровка коэффициента передачи"); LEVEL = int.Parse(cfg.LEVEL_1); //используем уровень сигнала генератора предназначенного для измерения коэффициента передачи GEN_START(1); FREQ = Convert.ToInt32(FREQ_A_MAX); //ставим сигнал на частоту с мин. АЧХ GEN.FREQ(FREQ); GEN.SEND(); TIMER_DELAY = 500; //500 st = st + 1; PROGRESS = PROGRESS + step_proces1; break; case STATE.ST5: Console.WriteLine("Шаг4:измерение параметров"); Analize3(); WriteLine("dat.A:" + dat.A); A_MAX = dat.A; if ((Din_izm < 60) && (ATTEN < (double.Parse(cfg.ATT_CORRECT_MAX)))) { ATTEN = ATTEN + 0.5; MASTER.ATT_CONTROL(ATTEN); Console.WriteLine("ATTEN:" + ATTEN); st = STATE.ST5; } else { if (ATTEN > double.Parse(cfg.ATT_CORRECT_MAX)) { FLAG_CAL_KU_ERROR = 1; } ATT_COR = ATTEN; st = STATE.Calc; } TIMER_DELAY = 2000; // PROGRESS = PROGRESS + 4; break; case STATE.Calc: Console.WriteLine("Шаг4:расчёт неравномерности АЧХ"); GEN_START(0); FLAG_END = true; st = STATE.END; SAVE_DATA(); //сохраняем измеренные данные в файл Analize2(); break; } }
void STATE_MASHINE1() { string error = ""; string msg = ""; double step_proces1 = 0; double step_proces2 = 0; double N_step = 0; N_step = (((double)(FREQ_END - FREQ_START)) / FREQ_STEP); step_proces1 = 90 / N_step; switch (st) { case STATE.START: Console.WriteLine("Шаг1:включаем блок 072"); GEN_STOP(); //MASTER.BP.PWR_ALL(1);//все каналы выключить! //MASTER.BP.PWR_8(0);//включаем восьмой канал TIMER_DELAY = 6000; st = st + 1; FLAG_END = false; break; case STATE.ST0_1: ERROR_MSG += "Переводим блок в рабочий режим.\r\n"; // MASTER.DUT_072_START();//запускаем тестируемый блок 072 msg = "."; ERROR_MSG += msg; TIMER_DELAY = 10; // sch = 0; //счётчик числа попыток sch1 = 0; //st = st + 1; st = STATE.ST0_5; PROGRESS = 3; break; case STATE.ST0_2: MASTER.DUT_072_START(); //запускаем тестируемый блок 072 TIMER_DELAY = 4000; // msg = ""; st = st + 1; PROGRESS = 4; break; case STATE.ST0_3: // TIMER_DELAY = 100; // st = st + 1; //STATE.ST0_5 PROGRESS = 5; break; case STATE.ST0_4: if (MASTER.b072.STATUS != 1) { if (sch < 5) { msg += "."; st = STATE.ST0_3; sch++; ERROR_MSG += msg; TIMER_DELAY = 1000; // break; } else if (sch1 < 3) { msg += "."; st = STATE.ST0_2; sch = 0; sch1++; ERROR_MSG += msg; TIMER_DELAY = 100; // break; } else { msg += "\r\n"; msg += " - Блок не переводится в рабочий режим!\r\n"; error += msg; ERROR_MSG += msg; st = STATE.Final; TIMER_DELAY = 100; // break; } } else { msg = "\r\n - Блок в рабочем режиме.\r\n"; } ERROR_MSG += msg; TIMER_DELAY = 100; // st = st + 1; PROGRESS = 6; break; case STATE.ST0_5: Console.WriteLine("Шаг2: подготовка генератора сигналов и блока 072"); MASTER.SWITCH(false); //выключаем ключи на входе MASTER.ATT_CONTROL(31); //включаем аттенюаторы на максимум FUN1(); var z = CMD_REALTIME_UPDATE(435000000); //готовим блок 072 MASTER.panel_Sint.FUNC_LIST_UPDATE(z); PROGRESS = 7; TIMER_DELAY = 1000; st = st + 1; break; case STATE.ST0_6: Console.WriteLine("Шаг3:устанавливаем генератор на заданную частоту и включаем максимальный сигнал"); LEVEL_MAX = double.Parse(cfg.LEVEL_MAX); LEVEL = LEVEL_MAX; GEN.SOURCE(2); GEN.FREQ(FREQ_TEST); GEN.SEND(); GEN_START(LEVEL.ToString()); TIMER_DELAY = 3000; PROGRESS = 8; st = st + 1; break; case STATE.ST0_7: Console.WriteLine("Шаг4:выключаем максимальный сигнал"); GEN_STOP(); TIMER_DELAY = 1000; st = st + 1; PROGRESS = 9; break; case STATE.ST0_8: Console.WriteLine("Шаг5:Готовимся к проверке параметров канала"); LEVEL = LEVEL_TEST; GEN_START(LEVEL.ToString()); MASTER.ATT_CONTROL(0); //включаем аттенюаторы на минимум sch = 0; TIMER_DELAY = 100; st = st + 1; PROGRESS = 10; break; case STATE.ST1: Console.WriteLine("Устанавливаем генератор на заданную частоту"); WriteLine("FREQ:" + FREQ); GEN.SOURCE(2); GEN.FREQ(FREQ); GEN.SEND(); TIMER_DELAY = TIME_DELAY; st = st + 1; break; case STATE.ST2: Console.WriteLine("Измерение параметров"); if (Analize(ref sch) != 0) { if (sch < 3) { st = STATE.ST1; TIMER_DELAY = 50; // break; } } WriteLine("dat.A:" + dat.A); TIMER_DELAY = 50; //500 st = st + 1; break; case STATE.ST3: Console.WriteLine("Смена частоты"); if (FREQ < FREQ_END) { sch = 0; PROGRESS = PROGRESS + step_proces1; FREQ = FREQ + FREQ_STEP; st = STATE.ST1; } else { st = STATE.Calc; } TIMER_DELAY = 10; // break; case STATE.Calc: Console.WriteLine("Шаг6:расчёт неравномерности АЧХ"); Analize2(); SAVE_DATA(); //сохраняем измеренные данные в файл FLAG_END = true; st = STATE.END; break; case STATE.Final: Console.WriteLine("END"); MessageBox.Show("Блок 072 не отвечает!"); FLAG_END = true; break; } }