Ejemplo n.º 1
0
 /// <summary>
 /// 添加单通道
 /// </summary>
 /// <param name="chnID">通道物理序号</param>
 /// <param name="sampleRate">每通道采样率</param>
 /// <param name="recordLength">流盘时间长度,单位为秒</param>
 /// <param name="rangelow">通道量程下限</param>
 /// <param name="rangeHigh">通道量程上限</param>
 public override void Record(int chnID, double sampleRate, double recordLength, double rangelow = -10, double rangeHigh = 10)
 {
     channelNumbers    = new int[1];
     channelNumbers[0] = chnID;
     aitask.AddChannel(chnID, rangelow, rangeHigh);
     aitask.Mode       = AIMode.Continuous;
     _recordLength     = recordLength;
     aitask.SampleRate = sampleRate;
     range             = GetVendorRange(rangelow, rangeHigh);
 }
Ejemplo n.º 2
0
        /// <summary>
        /// 使用AIChannelConfiguration进行简仪采集卡通道配置
        /// </summary>
        /// <param name="jyTask">需要配置的简仪采集卡任务</param>
        /// <param name="channelConfiguration">通道配置</param>
        public static void MapAndConfigChannel(JYPXI62022AITask jyTask, AIChannelConfiguration channelConfiguration)
        {
            if (channelConfiguration.TerminalConfigType != AITerminalType.Differential)
            {
                throw new Exception("该简仪采集卡只能配置为差分输入!");
            }
            //简仪采集卡通道用int表示,应该是一个int的集合
            //var channels = ((JArray)channelConfiguration.ChannelName).ToObject<List<int>>(); 当ChannelName还是Object的时候
            var channels = ChannelNameTranslator.StringToListInt(channelConfiguration.ChannelName);

            for (int i = 0; i < channels.Count(); i++)
            {
                jyTask.AddChannel(channels[i], channelConfiguration.MinimumValue, channelConfiguration.MaximumValue);
            }
        }