Измерение времени дребезга контактов

Добрый вечер, есть задача измерить время включение\выключение контактов реле. Т.е измерить дребезг контактов, сколько пройдет до полного замыкания. Вот и вопрос по ардуинке, какой длительности(минимум) сможет схватить по прерыванию. Еще не смотрел осликом дребезг, но думаю что это в районе нескольких микросекунд, точнее сказать не могу пока. Теперь по ардуинке, справится ли она, или переходить на стм-ку. Там хоть скорость обработки гораздо поболя. Кто че может подсказать, как подойти к этой задачи?

Использовать input cspture и защелкивать значения таймера …

1 лайк

Это время измеряется от подачи напряжения на обмотку реле до полного замыкания контактов после дребезга. Отследить дребезг можно по фиксации времени изменения уровня сигнала за контактами реле и брать время последнего изменения например после таймаута большего максимально ожидаемого значения. Получить время на нане можно с точностью до 4 микросекунд. Учитывая что время включение\выключение контактов реле на 3 порядка длиннее можно получить время с большой точностью.

1 лайк

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

2 лайка

Так что нужно?
То, что указано в заголовке темы, или то, что написано в цитате?
Какое отношение имеет прерывание к дребезгу контактов?

Соглашусь с оратором выше про осциллограф. Осциллографом посмотреть - самое правильное и прямое измерение.

На картинке как раз и увидишь свой дребезг и его ширину.

Я думаю, он хочет измерить расстояние от первого замыкания контактов реле до полного устаканивания

А зачем тогда ардуина, если есть осциллограф?

Как обычно говориться - давайте договоримся о терминах. Думать за других вредно. Можно много лишнего надумать. Лучше спросить ТС что он конкретно имеет в виду.

2 лайка

Это да.
Только ведь он ведет себя в лучших традициях - закинул сообщение с вопросом и молчит

ЗЫ
Вообще, по формулировкам вопроса и по самому стилю общения у меня есть большие вопросы, стоит ли принимать ТС всерьез

1 лайк

Посмотрел статистику ТС, полностью согласен.

Неправда.

Дискретность измерений 62.5нс.

Остальное зависит от программы.

Ну эт смотря какая нана.)

Используя продвинутое программирование AVR можно и быстрее. Если только средства ардуины 4 мкс. Похоже что у ТС с продвинутым не очень.

Добрый день. Только с работы :(, По поводу моих вопросов, решается задача(ТЗ) собрать схему устройства и реализовать готовое по тестированию релюшек(разных!), вот и собираю предложения. За измерение дребезга осликом я сразу хочу сначала узреть а потом плясать, прибор обещают вернуть на днях. Как я планировал для измерения дребезга, ну старт подачи питания на реле(по прерыванию включаю таймер), а дальше фиксировать прерыванием каждый фронт таймером(вот такие мысли). После там еще и другие процессы, но это уже отдельная тема. А вот по ардуине 4 микросекуны!!! на мой взгляд это чет слишком круто, 62.5нс. это уже ближее, этих данных я не нашел. Если есть какие замечания\предложения по логики измерения, буду только рад, спасибо всем отозвавшимся!!!

вы приставки не путаете? наносекунды это круче чем микро

Абсолютно бессмысленный набор слов…

Вы реальный человек или бот?

В 64 раза круче :slight_smile:

Это как ?

Разгонять ?

62.5нс это такт процессора…

Или прямая работа с регистрами на “Ардуино” запрещена ? В какой версии IDE ?

Это прям вызов какой то…

Задача решается в лоб так:

Настраиваем таймер-счетчик на частоту процессора.

По первому RISING включаем счётчик, по последнему FALLING смотрим значение сколько натикало. (На самом деле смотрим все FALLING, но значение сохраняем в одно и то же место)

Полученное значение умножаем на время такта процессора 0.0000000625 сек.

В коде описывать не хочу, но могу.

Можно поиграть с мотивацией.

Но это уже в раздел : “Ищу исполнителя”