Если так, то напр. с 20-шаговый опт. энкодер с full-step state (выдает код только в 00) получаете 20, с half-step state получаете 40 шагов (выдает код в 00 и 11). И в документациях параметры приведены, но с оригинальными комплектующими. А там цены другие. Ниже: случайно выбранный тип.
Нет, буду искать энкодеры с качественным откликом. Жаль, что в ценниках не всегда пишут число щелков на поворот. Моделей уйма, фильтров на витрине нет, а даташиты все не перечитаешь. А обозначения типа 20/20 ничего не дают иногда.
Из собственного опыта с энкодерами: На своём радио уже сменил несколько штук этих энкодеров. Проблема - через несколько месяцев (полгода-год) использования, начинают плохо работать - пропуски состояний и т.п. Разбирал их (китайские с али). Выяснилось, что там внутри металлический лепесток контакта скользит по пластиковому кольцу (с ямками). Смазки нет (сэкономил производитель ). Со временем всё внутри покрывается мелкой пластиковой крошкой (из-за износа пластикового кольца). И из-за этого начинаются проблемы с контактом. Поэтому очередной энкодер, перед установкой я разобрал, смазал контакты внутри вазелином. И теперь вот уже пару лет работает нормально. Даже китайский с али. Советую также - разобрать и проверить наличие смазки.
PS: А количество шагов на оборот имхо - не особо важный показатель. Пробовал разные, с разным числом шагов - практически без разницы для такого использования.
Реально, с тем же механическим энкодером (KY-040 Rotary Encoder?) "продлите" срок работы примерно на 5х время. Напр. если выйдет из строя "зуб" енкодера, он просто не будет считаться. Если два, тоже будут пропущены. На третьем можно поменять энкодер. Фильтрующие конденсаторы и анализ дребезга вообще не нужны. Для себя портировал код на несколько типов микроконтроллеров и не использоваю других методов.
Можно настроить на вн. прерывание, можно настроить на прерывание при изменении состояния пина, а также можно установить в базовом цикле.
Напр. при использовании других методов энкодер работает ровно столько времени, сколько упомянули (3-5 месяцев: VFO на основном радио), а затем требует нового. Для меня ето пример о том, как матем. обработка может изменить функциональность устройства до неузнаваемости (с положительной стороны).
Контактные энкодеры имеют ограничение по току снизу. Спойлер Поэтому в упомянутом выше модуле, заменив резисторы на 1кОм можно существенно поднять качество работы энкодера.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Напр. при использовании других методов энкодер работает ровно столько времени, сколько упомянули (3-5 месяцев: VFO на основном радио), а затем требует нового. Для меня ето пример о том, как матем. обработка может изменить функциональность устройства до неузнаваемости (с положительной стороны).
Как именно может помочь любая мат.обработка (какой бы чудесной она ни была) при пропуске щелчков? Очевидно - никак. Они всё равно будут пропускаться.
Пара капель смазки на скользящие контакты намного полезнее любых библиотек и программных костылей. Смазанный энкодер работает уже около 2-х лет нормально. И без чудесных библиотек.
jcxz, чудес не бывает, но могу продемонстрировать, как напр. 5 из 6 методов управления, с поврежденным энкодером (через 3-5 месяцев эксплуатации), напр. каждые 10 шагов "вперед" дают примерно 2-3 "назад" (без изменения направления вращения). При приведенном приведенный выше алгоритм такой реакции нет, а поврежденный/или находящийся в процессе повреждения) "зуб" просто пропускается. А смазка - временное решение. Через 3 месяцев: новая смазка ... (пока механические зажимы на нижней базе не выйдут из строя).
напр. первой мой мех. енкодер KY-040: (VFO, частое использование, основной КВ TRX) работал 2015/08 - 2018/12.
В моей мышке X-750BF энкодер колесика (средней кнопки) проработал 15 лет. Работал бы и дальше, если бы я его не свернул, по глупости провернув с наискосок вставленной осью. Года через 3 после покупки колесико стало подглючивать, я промыл энкодер спиртом и силиконового масла закапал. Он после этого еще 12 лет функционировал.
_________________ Астролябия-сама меряет, было бы что мерять!!!
...числа импульсов на щелчок. И решил, что этот вопрос решается программным путем, а прежде надо решить по юзабельности конструкции. ... кто знает, такой энкодер с гаечным креплением обязательно...
Чего-то я не понимаю. Из цитаты следует, что с программной обработкой проблем нет. Но тогда и разрешающую способность, и качество сигнала от энкодера не стоит обсуждать - всё можно решить программно. ТС хочет получить от энкодера "точное позиционирование". Это решается, как здесь уже отметили, программно - ценой импульса, которая тоже изменяется программно и аппаратно - редуктор, ручка большого диаметра. Как только будут решены перечисленные проблемы, встанёт вопрос повторяемости - долговременного гарантированного получения одинакового кол-ва импульсов от энкодера при повороте на один и тот-же угол. От простейшего энкодера с ползунковыми контактами ожидать такого - утопия. Механизм формирования импульсов надёжного энкодера бесконтактный. Промышленные энкодеры имеют высокую стоимость и не имеют механизма нажатия. Бесконтактный надёжный энкодер можно сделать на базе микросхемы AS5600. Готовый модуль с магнитом в комплекте на базе этой МС стОит в районе 100руб. С энкодером на базе такой МС решаются все проблемы, озвученные ТС.
jcxz, чудес не бывает, но могу продемонстрировать, как напр. 5 из 6 методов управления, с поврежденным энкодером (через 3-5 месяцев эксплуатации), напр. каждые 10 шагов "вперед" дают примерно 2-3 "назад" (без изменения направления вращения).
Какие бы ни были пропуски срабатываний в энкодере, но это именно просто пропуски. Если же у вас при этом вдруг определяется обратное вращение - то проблема в вашем алгоритме обработки. При нормальном алгоритме никаких "назад" быть не должно по определению.
А смазка - временное решение. Через 3 месяцев: новая смазка
Вы видимо из тех, которые "писатели, а не читатели". Тогда повторю ещё раз: 2 года назад вскрыл китайский механический энкодер, капнул пару капель вазелина на контакты, закрыл его обратно и с тех пор он работает практически без пропусков. Кручу его почти каждый день. "2 года назад" означает, что работает он уже около 2-х лет, а не 3 месяца.
От простейшего энкодера с ползунковыми контактами ожидать такого - утопия. Механизм формирования импульсов надёжного энкодера бесконтактный. Промышленные энкодеры
Тоже так думал. Поэтому когда сдох очередной китайский энкодер, заказал несколько нормальных с digikey. На время ожидания их прихода, поставил очередной китайский, но уже вскрыв и смазав его предварительно (думал - хотя-бы на чуть большее время его хватит). С тех пор прошло более двух лет. Пока китайский так и продолжает работать. И пришедшие хорошие лежат в шкафу, ждут. Пока китайский не сдохнет - менять его не буду, лень. Так что для такой задачи как у ТС (покрутить иногда ручку регулировки домашнего радио) думаю вполне хватить и китайского. К тому же их можно штучек 5 закупить про запас (на замену) и лет на 10 хватит. А там и само радио рассыпется или закроют последнюю радиостанцию на Земле.
Прежде чем написать предыдущий пост, представьте, что я тоже капал масло на энкодер. И через месяцы - снова капля масла, и через месяцы - снова капля масла. 3 раза. Пока не выбросил енкодер и не вставил "следующий енкодер". То же самое и со вторым энкодером - опять же с маслом. 3 раза (потом повреждаются клипсы на основании). Поэтому и писал, что масло - это не "решение", а "временное решение". (Да, наверное наше масло более низкого качества чем вазелин ).
Окончательное решение за базовой TRX было (без сбоев, уже много лет, почти-forever): оптический энкодер Bourns с теми же шаги, с фиксацией и с кнопкой. Но ... цена другая. (частично пользуюсь переводчиком БГ->РУ)
Смазочные масла обычно агрессивны по отношению к пластику, если это не полиэтилен. И для пластиковых трущихся деталей смазка маслом скорее сделает хуже. Для пластика используют вазелин или консистентную силиконовую смазку.
Карма: 1
Рейтинг сообщений: 127
Зарегистрирован: Вт мар 03, 2015 20:13:46 Сообщений: 533 Откуда: рядом с "не резиновой" живу в деревне
Рейтинг сообщения:0
Если кому нибудь нужен по настоящему надёжный энкодер используйте с оптическим датчиком - работают очень надёжно годами в тяжких условиях 24*7 их вращают и кнопелем жмут.. Например greyhill как самый самый Смотри, что есть на AliExpress! Фотоэлектрический кодировщик GRAYHILL 62AGY22034 за 2 098 ₽ - уже со скидкой -8% https://sl.aliexpress.ru/p?key=yuo4O6R Цена очень адекватная за это качество.
Если кому нибудь нужен по настоящему надёжный энкодер используйте с оптическим датчиком - работают очень надёжно годами в тяжких условиях 24*7 их вращают и кнопелем жмут..
При батарейном питании такой вряд ли сгодится. Просто лёжа на полке батарейку скурит.
По теме. Не так давно приделывал энеодер к есп8266.
Не понимаю какая связь между шагом и выходом энкодера.
Там основная проблема отстроиться от дребезга. Но она решается очень простым алгоритмом. Одна линия энкодера вешается на прерывание, вторая просто считывается.
Исходное состояние линий 11. Если возникло прерывание, то считываем обе линии.
00 это шаг в одну сторону. Счётчик шагов +1 01 это шаг в другую сторону. Счётчик шагов -1 11 это исходное состояние. Остальное игнорируется. Если считанное значение линий равно предыдущему, то тоже игнорируем его.
А дальше домножаете счётчик шагов на любой удобный коэффициент. Хоть дробный, хоть отрицательный.
И можно растягивать и сжимать как угодно шаг энкодера
Добавлено after 2 minutes 57 seconds: Обязательно на линии энкодера надо вешать rc-цепочки. Но в модулях для ардуины они уже есть.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 15
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения