Как начать написание кода для датчика эффекта Холла?

Один из моих самых больших вопросов касается кодирования датчика эффекта Холла для определения скорости вращения колеса с помощью arduino mega.

У меня есть ЖК-дисплей с цифровыми выводами (7,8,9,10,11,12) и датчик эффекта Холла с цифровым выводом 2.

Я просто понятия не имею, как закодировать фактический процесс измерения оборотов в минуту. Есть ли у кого-нибудь какие-нибудь идеи или опыт, которые могут мне помочь? Моя форма измерения заключается в том, чтобы вращать что-то с помощью установленного рядом магнита. Конечная цель игры - измерить частоту вращения автомобильного колеса. Указатели? Чаевые?

, 👍0

Обсуждение

да, у многих людей есть идеи и опыт... это все, что ты хотел спросить?, @jsotola

разбейте программу на отдельные разделы ... начните с считывания показаний датчика и включения и выключения светодиода при обнаружении сигнала .... затем изучите, как отображать числовые данные, @jsotola

В Интернете есть множество обучающих программ. Примером может служить https://maker.pro/arduino/tutorial/how-to-use-a-hall-effect-sensor-with-arduino, @RowanP


1 ответ


1

Вы можете измерить это либо в оборотах в минуту (оборотах в минуту), либо в частоте (циклах в секунду).

Будь то минута или секунда, вы подсчитываете, сколько раз вы получаете импульс, и в конце минуты / секунды вы копируете общее количество в свою переменную и сбрасываете переменную счетчика. Если вам нужна частота обновления fasster, вы можете посчитать доли минуты / секунды и выполнить вычисление, чтобы показать его в терминах оборотов / частоты.

Моя первая забота при решении этой проблемы заключается в том, как быстро магнит проходит мимо датчика (т. е. Сколько импульсов в секунду).

Если это происходит медленно, вы можете сделать это в своем основном цикле, если у вас нет никаких блокирующих инструкций (таких как delay()).

Если это происходит быстро, вам, вероятно, придется изучить прерывание. Когда PIN становится высоким, он переходит к функции прерывания и увеличивает счетчик. Проверьте раздел ввода на наличие библиотек, которые упрощают процесс прерывания (или сделайте это по старинке, на ваш выбор). Некоторые библиотеки кнопок имеют специфические функции прерывания.

,

Убедитесь, что вы считаете пульс только один раз. Например, вы могли бы добиться этого, ища восходящий фронт импульса., @sa_leinad