Российский производитель и разработчик сертифицированного измерительного оборудования с 1987 года


Форум

Вы не вошли.

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

#1 Re: Техническая поддержка » Подсчет количества импульсов » 18.09.2014 12:57:24

Александр Е пишет:

P.S. Но только важно, чтобы промежуток между импульсами был тоже больше периода АЦП, иначе триггер не сбросится.
Если он не ограничен снизу достижимым значением (5 мкс для E14-140M), то придется измерять длительность импульсов.
В этом смысле Ваш прямой подсчет единичек выигрывает, но он ненадежен из-за попадания на границу импульса.

Частота АЦП увеличена до 80 кГц. На данный момент потеря одного-другого импульса допускается, вероятность этого похоже небольшая.
Задачи среагировать на событие нет, пока надо оценить общее количество в разных ситуациях. Пишу на Delphi, не программист, поэтому ищу простые решения.
Хотелось бы уяснить - когда ReadData считывает буфер, что происходит с содержимым буфера? Он очищается или данные сохраняются?

#2 Re: Техническая поддержка » Подсчет количества импульсов » 18.09.2014 12:41:38

Гарманов Александр пишет:

А синхросигнал опорной частоты 40 кГц можно ли снять с источника импульсов? Или, наоборот, можно ли засинхронизировать источник импульсов от внешней опорной частоты 40 кГц? Импульсы имеют постоянную фазу относительно некой опорной частоты?
Если да, то возможно ведь засинхронизировать E14-140М с источником импульсов и тогда будет вполне приемлем Ваш вариант с периодом преобразования АЦП, равным длительности импульса...

Источник импульсов - сигнал газоразрядного датчика пламени, прошедший обработку и выведенный на ножку микроконтроллера. Имеет вид случайно появляющихся импульсов длительностью 25 мкс. Синхросигнала к сожалению нет.
Частоту преобразования АЦП увеличил до 80 кГц. Хотелось 120 кГц, но получается только 100 кГц.

#3 Re: Техническая поддержка » Подсчет количества импульсов » 17.09.2014 14:55:50

Удалось посчитать импульсы.  wink
Алгоритм такой.
1. АЦП работает с частотой 40 кГц, соответственно отсчеты идут раз в 25 мксек. Сигнальный импульс тоже 25 мксек, поэтому хотя бы один отсчет должен попасть на него.
2. Данные заносятся в FIFO буфер АЦП. Буфер раз в 10 мсек по таймеру считывается  в программу на компьютере. Функция ReadData работает с синхронном режиме.
3. Массив отсчетов (30000 элементов) из буфера проверяется поэлементно на значение, сравнивая с порогом 2,5 В. В итоге получаем количество импульсов за время ( 30000*25 мксек= 750 мсек ).

#5 Re: Техническая поддержка » Подсчет количества импульсов » 09.09.2014 09:40:44

Скорее всего подойдет простой вариант подсчета на цифровом входе.
Спасибо за помощь.

#6 Re: Техническая поддержка » Подсчет количества импульсов » 08.09.2014 16:15:20

Спасибо за рекомендации.
Импульсы идут от ножки микроконтроллера, после обработки сигнала газоразрядного датчика. Что касается интервала между импульсами, то его сложно определить.
В идеале желательно периодически подсчитывать количество импульсов появившихся  за время, например, 0,5 сек и выводить число на экран.

#7 Техническая поддержка » Подсчет количества импульсов » 08.09.2014 13:05:49

GIRICOND21
Ответов: 15

Добрый день,
Стоит задача определения количества импульсов в единицу времени.
Импульсы цифровые, амплитуда 5 в, длительность 25 мкс, идут случайным образом.
В наличии есть LCard E-154 и LCard E14-140-M-D.
Есть ли стандартные решения данной задачи?