Как подсчитать количество импульсов за единицу времени?
Доброго времени суток.
Встал вопрос по поводу подсчёта количества импульсов со счётчика Гейгера-Мюллера с помощью ардуины.
На вход цифрового пина подключен вывод транзистора, который при пробое трубки подает +3.3В(логическую единицу).
Как подсчитать количество импульсов - тут проще простого. А как сделать подсчет за определенный промежуток(1сек, 10сек, 100...)?дабы сделать разные режимы подсчёта и точности.
Инкрементим по каждому импульсу переменную, а по таймеру с нужным интервалом читаем и обнуляем эту переменную.
То бишь "в лоб" читаем-обнуляем каждую минуту => число импульсов в минуту
Понятное дело что будет неблагодарным занятием читать-обнулять этот счетчик каждую секунду, если импульсы приходят раз в минуту (то бишь чаще чем прилетают импульсы).
Чувствительность сбм-20 ≈60импульсов на 1мкР/ч. То есть даже при фоновых 15мкР/ч это будет примерно 1 импульс в 4 секунды. Но это при фоне. На максимально измеряемом пределе это 40 импульсов в секунду. По этому разброс очень большой.
Игорь Михайлов, но отсюда сразу вылезает что чаще чем раз в 8 секунд (притягивая за уши Котельникова с Найквистом) измерять нельзя... - это своего рода нижняя планка. Иначе на фоновом уровне в одну секунду насчитаем 1 импульс в секунду, а в следующую - ноль... притом и то и то окажется неверным.
Дальше уже можно полезть в характеристики излучения, вспомнить Гаусса и все подойдет к тому что считывать-обнулять надо бы не чаще чем раз в минуту....
Игорь Михайлов,
1. я бы вначале брал данные [и перекладывал в сухое и надежное место] а потом их обнулял - пригодится для реализации подсчета средних показателей
2. делал бы это по прерыванию от таймера эаточенного генерить прерывание раз в минуту (а не напрягал бы проц делать "ничего" на полной нагрузке целую минуту)
Как мне кажется, проще всего считать за секунду и складывать в массив, длину которого выбрать по максимальному времени подчета. Нужно за 10 секунд? Складываешь 10 последних элементов. К тому же по массиву можно график во времени нарисовать, а это очень наглядно.
Как вариант - измерять не частоту, а период следования импульсов. И считать по скользящему среднему за N щелчков. Фон будет считаться медленно, потому что щелчков мало, но если данных будет много - то показания будут изменяться быстрее. Но в любом случае, точность будет предсказуема и примерно одинакова на любой скорости щелчков.