Пример #1
0
        /// <summary>
        /// Метод добавления в коллекцию измерений
        /// </summary>
        /// <param name="Cur">Ток</param>
        public void AddInCollection(double Cur)
        {
            TextBlockMessageFromServer = "  Статус: " + "Идет измерение...";
            //Годность
            bool   valid;
            Device b    = SelectedDeviceInComboBox as Device;
            var    Umin = context.GetUmin(b);
            var    Umax = context.GetUmax(b);
            var    Unom = context.GetUnom(b);
            //Отклонение от номинального значения
            var    Deviat = Math.Abs(Umax - Umin) / 2;
            double Uizm   = 0;

            //Добавление в коллекцию Oscs и определение наибольшего напряжения
            for (int q = 0; q < 1000; q++)
            {
                double temp = 0;
                temp = masVoltageFromServer[q];
                if (temp > Uizm)
                {
                    Uizm = temp;
                }

                Oscs.Add(new Osc()
                {
                    U = masVoltageFromServer[q], T = masVoltageFromServer[q + 1000]
                });
            }
            //Вызов метода построения осциллограмм
            LoadData(CounterAmountMeasurement);
            //Обновить график
            PlotModel.InvalidatePlot(true);
            //Вывод измеренного напряжения
            TextBlockOfVoltage = Uizm.ToString() + " B";
            valid = (Math.Abs(Unom - Uizm) <= Deviat);
            //Создание нового экземпляра измерения
            var measure = new Measurement {
                device = b, NumberSupressor = Convert.ToInt32(TextBoxNumberOfSupressor), Date = DateTime.Now, Fio = TextBlockOfSurnameInMainWindow, Voltage = Uizm, Valid = valid, Current = Cur
            };

            //Добавление в коллекцию
            Measurements.Add(measure);
            //В БД
            context.AddMeasurementsInDb(measure);
            //Сохранение изменений
            context.SaveDb();
        }
Пример #2
0
 /// <summary>
 /// Метод, запускающий таймер и сохранябщий настройки при нажатии кнопки "Запуск"
 /// </summary>
 public void IsButtonWillClick()
 {
     //Старт таймера
     stopwatch.Start();
     //Метод, сохраняющий настройки
     IsButtonInDialogClick();
     //Сохранение настроек
     Properties.Settings.Default.SettingNumber = Convert.ToInt32(TextBoxNumberOfSupressor) + 1;
     Properties.Settings.Default.Save();
     //Закрытие доступа к элементам
     IsTextBoxNumberSupEnabled           = false;
     IsComboBoxForNumberOfMeasureEnabled = false;
     IsButtonStartEnabled     = false;
     IsRadioButtOnceEnabled   = false;
     IsRadioButtSerialEnabled = false;
     //Очищение коллекций и области графика
     Oscs.Clear();
     ComboColl.Clear();
     PlotModel.Series.Clear();
 }