Тахометр и аналоговый датчик Холла
- Войдите на сайт для отправки комментариев
Вс, 03/09/2017 - 17:02
Здравствуйте.
Подскажите пожалуйста как использовать АНАЛОГОВЫЙ датчик Холла, чтобы сделать из него тахометр?
Здравствуйте.
Подскажите пожалуйста как использовать АНАЛОГОВЫЙ датчик Холла, чтобы сделать из него тахометр?
Подключить к аналоговому входу и считывать/сравнивать значение?
Ну чтобы определять обороты чего-либо, как я понимаю, нужно использовать внешние прерывания (attachInterrupt()). На Uno допустим можно использовать только 2 и 3 выходы и сама функция attachInterrupt() работает с HIGH and LOW, а не с аналоговым сигналом.
Что Вы имели ввиду под считыывать/сравнивать ?
Полагаю, это самое и имел в виду. Считываем аналоговый вход, так, значение 14, значит датчик далеко. Ещё считали, хоп, значение (например) 280, значит магнит уже рядом. Ещё считали, 290, магнит проходит мимо сенсора прямо сейчас. Следующее считывание (например) 270, ага, уже прошёл мимо, удаляется дальше, значит пошёл следующий оборот. Можно подсчитать, сколько [милли]секунд проходит между максимальными значениями и таким образом узнать количество оборотов, а если ещё немного вспомнить геометрию, то даже и высчитать скорость движения.
Интересно, как это программно осуществить. Не кажется ли Вам, что пока магнит будет проходить датчик, это займет времени больше, чем один цикл?
К аналоговому холлу присоеденить компаратор и сделать из аналогового цифровой.
Тогда уж купить заводской будет проще, а то сейчас начнётся "а как выставить опорное, а как работать с открытым коллектором...". Так хоть может через прерывания получится, по примерам из интернета. Но, скорее всего, магнит всё равно будет проходить мимо датчика медленнее, чем крутится главный цикл :)