/// <summary>
        /// 修改单个信号设置信息
        /// </summary>
        /// <param name="name">原信号名称</param>
        /// <param name="changesetting">修改后的信号设置信息</param>
        /// <returns></returns>
        public static bool ChangeValue(string name, OneListSetting changesetting)
        {
            var onesetting = _Settings.Find((x) => x.SignalName == name);

            if (onesetting == null)
            {
                cards[onesetting.OneCardSetting.cardname.Value].DelChannel(onesetting.OneCardSetting.channel.channel.Value);
                CardSettingError.RaiseError(001);
                return(false);
            }
            //  setting修改
            onesetting = changesetting;
            //  采集卡修改
            cards[changesetting.OneCardSetting.cardname.Value].SetSamplerate(changesetting.OneCardSetting.channel.channel.Value, changesetting.OneCardSetting.samplerate);
            cards[changesetting.OneCardSetting.cardname.Value].SetValuesRange(changesetting.OneCardSetting.channel.channel.Value, changesetting.OneCardSetting.range.Value);
            //  数据库修改
            var        info     = CollectDataSet.GetSignal(name);
            SignalInfo new_info = new SignalInfo();

            new_info.cardname         = changesetting.OneCardSetting.cardname.Value;
            new_info.name             = changesetting.SignalName;
            new_info.position         = changesetting.SensorPosition;
            new_info.resolution       = (ushort)cards[changesetting.OneCardSetting.cardname.Value].GetResolution();
            new_info.sensortype       = changesetting.SensorType;
            new_info.signalrange      = changesetting.OneCardSetting.range.Value;
            new_info.detectequipment  = changesetting.DetectEquipment;
            new_info.resolutiondouble = cards[changesetting.OneCardSetting.cardname.Value].GetDoubleResolution(changesetting.OneCardSetting.range.Value, out new_info.basevalue);
            CollectDataSet.ChgSignal(info, new_info);

            ListChanged?.Invoke("Chg", changesetting);
            return(true);
        }
Exemple #2
0
        private void Settingfrm_ChgConfirmEvent(OneListSetting obj)
        {
            CardSettingManager.ChangeValue(selectname, obj);
            int idx = CardSettingDataGridView.CurrentRow.Index;

            _InputOneSignal(idx, obj);
        }
        /// <summary>
        /// 添加单行信号设置
        /// </summary>
        /// <param name="onesetting">单个信号设置</param>
        /// <returns>是否添加成功</returns>
        public static bool AddSetting(OneListSetting onesetting)
        {
            //  setting添加
            _Settings.Add(onesetting);

            //  采集卡进行设置采样频率以及电信号范围
            cards[onesetting.OneCardSetting.cardname.Value].SetSamplerate(onesetting.OneCardSetting.channel.channel.Value, onesetting.OneCardSetting.samplerate);
            cards[onesetting.OneCardSetting.cardname.Value].SetValuesRange(onesetting.OneCardSetting.channel.channel.Value, onesetting.OneCardSetting.range.Value);

            //  将该行信号设置添加到数据库母表,并建立对应子表
            SignalInfo info = new SignalInfo();

            info.cardname         = onesetting.OneCardSetting.cardname.Value;
            info.name             = onesetting.SignalName;
            info.position         = onesetting.SensorPosition;
            info.resolution       = (ushort)cards[onesetting.OneCardSetting.cardname.Value].GetResolution();
            info.sensortype       = onesetting.SensorType;
            info.signalrange      = onesetting.OneCardSetting.range.Value;
            info.detectequipment  = onesetting.DetectEquipment;
            info.resolutiondouble = cards[onesetting.OneCardSetting.cardname.Value].GetDoubleResolution(onesetting.OneCardSetting.range.Value, out info.basevalue);
            CollectDataSet.AddSignal(info);

            //  事件
            ListChanged?.Invoke("Add", onesetting);
            return(true);
        }
Exemple #4
0
        private void Settingfrm_AddConfirmEvent(OneListSetting obj)
        {
            OneListSetting a = obj;

            CardSettingManager.AddSetting(a);
            int idx = CardSettingDataGridView.Rows.Add();

            _InputOneSignal(idx, a);
        }
Exemple #5
0
 private void _InputOneSignal(int idx, OneListSetting onesetting)
 {
     CardSettingDataGridView[0, idx].Value = onesetting.SignalName;
     CardSettingDataGridView[1, idx].Value = onesetting.OneCardSetting.cardname.Value;
     CardSettingDataGridView[2, idx].Value = onesetting.OneCardSetting.channel.channel.Value;
     CardSettingDataGridView[3, idx].Value = onesetting.OneCardSetting.samplerate;
     CardSettingDataGridView[4, idx].Value = onesetting.OneCardSetting.range.Value;
     CardSettingDataGridView[5, idx].Value = onesetting.SensorType;
     CardSettingDataGridView[6, idx].Value = onesetting.DetectEquipment;
     CardSettingDataGridView[7, idx].Value = onesetting.SensorPosition;
 }
        /// <summary>
        /// 选择添加采集卡设置后,所需要的空模板
        /// </summary>
        /// <returns></returns>
        public static OneListSetting GetNewCardSetting()
        {
            string name  = "信号";
            int    count = 0;

            while (_Settings.Exists(x => x.SignalName == name + count.ToString()))
            {
                count++;
            }
            var onesetting = new OneListSetting(name + count.ToString());

            onesetting.OneCardSetting.cardname.AllowList.AddRange(cards.Keys);
            onesetting.OneCardSetting.channel.channeltype = ChannelType.单通道;
            return(onesetting);
        }
        private static bool LoadOneSetting(OneListSetting onesetting)
        {
            if (cards.ContainsKey(onesetting.OneCardSetting.cardname.Value))
            {
                //  setting添加
                _Settings.Add(onesetting);

                //  采集卡进行设置
                cards[onesetting.OneCardSetting.cardname.Value].SetSamplerate(onesetting.OneCardSetting.channel.channel.Value, onesetting.OneCardSetting.samplerate);
                cards[onesetting.OneCardSetting.cardname.Value].SetValuesRange(onesetting.OneCardSetting.channel.channel.Value, onesetting.OneCardSetting.range.Value);

                //  事件
                ListChanged?.Invoke("Add", onesetting);
                return(true);
            }
            return(false);
        }
Exemple #8
0
 public OneSignalSettingFrm(OneListSetting onesetting)
 {
     InitializeComponent();
     this.setting = onesetting;
     OneSignalSettingPropertyGrid.SelectedObject = this.setting;
 }