Форум: Техническая поддержка

Тема: Считывание данных с нескольких АЦП?

Вы не вошли.

 Поиск | Регистрация | Вход 

Вячеслав
20.12.2016 13:32:29
#1

Гость

Считывание данных с нескольких АЦП?

        public double[] ReadChannels()
        {

            uint cnt = _handler.RecvReadyCount;
            uint[] dataReceived = new uint[_ADCCount];
            int dataReceivedSize = _handler.Recv(dataReceived, (uint)_ADCCount, 0);
            double[] adcData = new double[_ADCCount];
            uint sizeConvertableData = (uint)dataReceivedSize;
           
            lpcie.Errs err = _handler.ProcessAdcData(dataReceived, adcData, ref sizeConvertableData, X502.ProcFlags.VOLT);

            if (err != lpcie.Errs.OK)
                throw new LcardException($"Ошибка обработки данных с устройства: {X502.GetErrorString(err)}");

            return adcData;
        }

Вот код которые считывает данных из Lcard502, настроено 3 канала и при запросе возвращается 3 канала, но сами дынные поступают в 3 раза меньше, к примеру при частоте 10Гц и времени измерения 5сек каждый канал получает примерно 15 значений, остальные 0, если уменьшить число каналов до 2 то значений 25, а если до одного, то все 50 значений, где я не понимаю логику работы устройства?

20.12.2016 17:33:24
#2

Сотрудник "Л Кард"
Здесь с 17.04.2014
Сообщений: 1,256

Re: Считывание данных с нескольких АЦП?

L502/E502 - АЦП с коммутацией каналов, т.е. реально один АЦП выполняет преобразование с разных каналов последовательно, меняя просто подключение входного коммутатора. При этом у Вас есть две настройки при программировании - частота АЦП и частота кадров. Частота АЦП по сути есть частота одного любого измерения и определяет время между измерениями соседних разных каналов, поэтому если 10 Гц - это частота именно АЦП, а не кадров, то максимальная частота на канал - 10/N, где N - разрешенное кол-во каналов. Т.е. Вам надо задавать частоту АЦП не меньше, чем требуемая частота на канал, умноженная на кол-во разрешенных каналов.

Вячеслав
20.12.2016 23:45:22
#3

Гость

Re: Считывание данных с нескольких АЦП?

т.е мне нужно задать частоту 30Гц, если я хочу на 3х каналах иметь по 10ГЦ. а как производить считывание? В буфере будут лежать данные в таком порядке 123123123... ?

21.12.2016 09:25:33
#4

Сотрудник "Л Кард"
Здесь с 17.04.2014
Сообщений: 1,256

Re: Считывание данных с нескольких АЦП?

Да, все правильно (и по частоте АЦП и по порядку прихода данных)

Контакты

Адрес: 117105, Москва, Варшавское шоссе, д. 5, корп. 4, стр. 2

Многоканальный телефон:
+7 (495) 785-95-25
Факс: +7 (495) 785-95-14

Отдел продаж: sale@lcard.ru
Техническая поддержка: support@lcard.ru

Время работы: с 9-00 до 19-00 мск