Энкодер (Troyka-модуль)
Забудьте про бесконечный клик по кнопкам. Используйте датчик угла поворота в качестве пульта управления в меню вашего девайса, например навигация «вверх/вниз» или «влево/вправо».
Энкодер так же поможет задавать параметры для настройки устройства — установить яркость светодиодной ленты или изменить скорость вращения мотора.
Видеообзор
Принцип работы
Не перепутайте сенсор угла поворота с потенциметром. В отличии от переменного резистора, энкодер не имеет границ по вращению — крутите ручку до бесконечности.
В основе модуля расположен инкрементный энкодер. Датчик угла поворота преобразует вращение ручки в электрические сигналы.
При вращении вала, энкодер формирует по импульсу на контактах A
и B
. При повороте по часовой стрелке сигнал появляется сначала на контакте А
, затем на B
. При вращении против часовой — выходы меняются местами.
Количество импульсов на контактах пропорционально углу поворота.
Примеры для Espruino
Схема подключения
Подключите энкодер к любым цифровым контактам на плате Iskra JS.
Для быстрой сборки используйте Troyka Shield.
Чтобы полностью избавиться от проводов, возьмите Troyka Slot Shield.
Пример работы
Для упрощения работы с датчиком угла поворота воспользуемся библиотекой Encoder.
В качестве примера при вращении ручки энкодера будем выводить текущий шаг и угол поворота.
- counter.js
var pulse = 0; var step = 0; require("Encoder").connect(P3,P6,function (direction) { pulse += direction; if (pulse % 4 === 0) { step = pulse / 4; print("step: " + step); } });
Элементы платы
Энкодер
Основой модуля выступает инкрементный энкодер EC12E24204A9, который преобразовывает вращательное движение вала в электрические сигналы.
При каждом вращении ручки, датчик угла поворота формирует по одному импульсу на контактах A
и B
. Сигналы смещены по времени относительно направления вращения.
Количество импульсов на любом из контактов пропорционально углу поворота. А за счёт дублирование сигналов в смещении по времени, легко определить направления вращения.
Troyka-контакты
На модуле выведено две пары Troyka-контактов.
Нижняя группа
- Сигнальный (A) — импульсная линия
A
, сигнализирующая о вращении энкодера. ЛинияA
смещена по времени относительно линииB
. Подключите к цифровому пину микроконтроллера - Питание (V) — соедините с рабочим напряжением микроконтроллера.
- Земля (G) — соедините с землёй микроконтроллера.
Верхняя группа
- Сигнальный (B) — импульсная линия
B
, сигнализирующая о вращении энкодера. ЛинияB
смещена по времени относительно линииA
. Подключите к цифровому пину микроконтроллера.
Принципиальная и монтажная схемы
Характеристики
- Модуль: EC12E24204A9
- Тип: инкрементный
- Количество шагов на оборот: 24
- Диаметр вала: 6 мм
- Длина вала: 25 мм
- Напряжение питания: 3.3–5 В
- Габариты: 25,4×25,4 мм