Тахометр и аналоговый датчик Холла

Dragal
Offline
Зарегистрирован: 04.09.2015

Здравствуйте.

Подскажите пожалуйста как использовать АНАЛОГОВЫЙ датчик Холла, чтобы сделать из него тахометр?

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Подключить к аналоговому входу и считывать/сравнивать значение?

Dragal
Offline
Зарегистрирован: 04.09.2015

Ну чтобы определять обороты чего-либо, как я понимаю, нужно использовать внешние прерывания (attachInterrupt()). На Uno допустим можно использовать только 2 и 3 выходы и сама функция attachInterrupt() работает с HIGH and LOW, а не с аналоговым сигналом.

Что Вы имели ввиду под считыывать/сравнивать ?

negavoid
Offline
Зарегистрирован: 09.07.2016

Dragal пишет:
Что Вы имели ввиду под считыывать/сравнивать ?

Полагаю, это самое и имел в виду. Считываем аналоговый вход, так, значение 14, значит датчик далеко. Ещё считали, хоп, значение (например) 280, значит магнит уже рядом. Ещё считали, 290, магнит проходит мимо сенсора прямо сейчас. Следующее считывание (например) 270, ага, уже прошёл мимо, удаляется дальше, значит пошёл следующий оборот. Можно подсчитать, сколько [милли]секунд проходит между максимальными значениями и таким образом узнать количество оборотов, а если ещё немного вспомнить геометрию, то даже и высчитать скорость движения.

Dragal
Offline
Зарегистрирован: 04.09.2015

Интересно, как это программно осуществить. Не кажется ли Вам, что пока магнит будет проходить датчик, это займет времени больше, чем один цикл?

nik182
Offline
Зарегистрирован: 04.05.2015

К аналоговому холлу присоеденить компаратор и сделать из аналогового цифровой.

negavoid
Offline
Зарегистрирован: 09.07.2016

Тогда уж купить заводской будет проще, а то сейчас начнётся "а как выставить опорное, а как работать с открытым коллектором...". Так хоть может через прерывания получится, по примерам из интернета. Но, скорее всего, магнит всё равно будет проходить мимо датчика медленнее, чем крутится главный цикл :)