Энкодер — это устройство преобразующее линейное или угловое перемещение в последовательность сигналов, позволяющих определить величину перемещения.
Т.о. можно выделить линейные и поворотные энкодеры.
Поворотный энкодер (иначе — датчик угла поворота) — устройство, преобразующее угол поворота вращающегося объекта (вала) в электрические сигналы, позволяющие определить этот угол.
Датчики угла поворота широко применяются в автоматике (например — в сервоприводах).
Энкодеры бывают двух типов:
1. абсолютный — энкодер возвращает своё абсолютное положение.
Пример: переменный резистор в сервомашинке.
2. инкрементный — энкодер выдаёт импульсы, означающие изменение его положения
Пример: энкодер используемый на колёсике компьютерной мышки.
Кроме того, энкодеры различаются по принципу действия:
1) с щеточными контактами;
2) резисторные (потенциометры);
3) оптические;
4) магнитные (на датчиках Холла);
5) индуктивные;
6) ёмкостные.
Пример использования магнитного энкодера мы видели у робота-пылесоса Neato XV-11,
— на валу двигателя закреплён пластиковый диск с магнитиками, на которые реагирует датчик Холла.
А стандартный оптический энкодер мы можем наблюдать у роботов-пылесосов iRobot Roomba 400-серии (iRobot Create),
< img src="/files/robots/iRobot/Roomba/roomba_wheel_optical_encoder.jpg" />
или в компьютерных мышках.
Принцип действия оптического энкодера:
направленный на фотодетектор, луч света периодически прерывается диском со специальными прорезями, вращающимся на валу двигателя/колеса.
В любительской робототехнике, наибольшее распростронение получили именно оптические энкодеры, которые могут быть либо в виде диска со специальными прорезями/щелями (или прозрачный диск с непрозрачными штрихами), либо в виде диска/ленты с областями с разной отражающей способностью.
Т.о., оптические энкодеры работают по двум принципам:
* на просвет;
* на отражение.
В обоих случаях, фотоприёмник, фиксирует переход от одной области к другой и энкодер может сгенерировать импульс, инкрементирующий «счётчик положения».
Так же, можно разделить энкодеры по типу считываемой информации:
* Одиночный энкодер — считаем количество импульсов
Плюсы:
+ самый простой и доступный вариант энкодера (только один датчик — излучатель+приёмник).
Минусы:
— ошибки инициализации (при старте системы, не ясно в каком положении находтся энкодер);
— ошибки при подсчете импульсов на границах ( возможны ложные срабатывания из-за «дребезга»;
— невозможность определить направление движения.
* Сдвоенный (квадратурный) энкодер — считаем количество импульсов, учитывая направление.
Разновидность инкрементального энкодера, которая состоит из двух датчиков срабатывающих со смещением в полшага, что позволяет практически полностью гарантировать отсутствие ложных срабатываний на границе одного из энкодеров.
Плюсы:
+ относительная простота реализации (два датчика);
+ отсутствие ошибок при подсчете импульсов;
+ возможно определить направление вращения.
Минусы:
— ошибки инициализации (при старте системы, не ясно в каком положении находимся).
* Энкодер на двоичных кодах — позволяет считывать точное положение в каждый момент времени.
Плюсы:
+ отсутствие ошибок инициализации (при старте системы, ясно в каком положении находимся);
+ нет ошибок при подсчете импульсов, т.к. такой задачи просто нет;
+ возможно определить направление вращения.
Минусы:
— относительная сложность реализации (несколько датчиков);
— проблемы с граничными положениями (если меняется одновременно более 1 бита, то можно временно получить некорректное положение);
— ограничения в разрешающей способности (для большей точности требуется больше каналов).
* Энкодер на кодах Грэя — позволяет считывать точное положение в каждый момент времени.
Плюсы:
+ отсутствие ошибок инициализации (при старте системы, ясно в каком положении находимся);
+ отсутствие ошибок при подсчете импульсов на границах;
+ возможно определить направление вращения;
+ отсутствие проблемы с граничными положениями (одновременно меняется не более 1 бита).
Минусы:
— относительная сложность реализации (несколько датчиков);
— ограничения в разрешающей способности (для большей точности требуется больше каналов).
Для самостоятельного изготовления энкодера потребуются:
1. диск с прорезями (можно изготовить самостоятельно — например, травлением) или найти готовый (например, в компьютерной мышке)), а можно наоборот — распечатать на плёнке для принтеров чёрные штрихи по кругу или диск с контрастным рисунком (просто распечатать на бумаге и приклеить к диску или колесу)
2. фото-датчик (светодиод + фото-приёмник).
Для энкодеров «на отражение» можно использовать фотопрерыватель (photo-interrupter), который в одном корпусе содержит оба элемента.
различные варианты паттернов энкодеров:
Пример энкодера в колесе от Pololu
На плате стоят фотопрерыватели, фиксирующие отражённый сигнал от белых зубцов внутри колеса.
Ссылки
http://ru.wikipedia.org/wiki/Датчик_угла_поворота
http://roboforum.ru/wiki/Энкодеры
http://ru.wikipedia.org/wiki/Код_Грея
Building a Self-Balancing Robot: Motor Driver and Wheel Encoder
По теме
Энкодер и шкала
Датчики Холла
Одометрия
0 комментариев на «“Энкодер”»
Отменная статья! Большое спасибо! Отличный обзор.
Как раз покажу своим студакам.
Спасибо )