Джойстик сделает управление вашим устройством быстрым и удобным. Он отлично встанет на пульт управления роботом или навигации в меню дисплея умного дома. Модуль-джойстик схож с «грибочком» на манипуляторах PlayStation и XBox. Он комбинирует в себе двухосный джойстик и тактовую кнопку.
Показатели отклонения по каждой из осей поставляются в виде отдельных аналоговых сигналов, нажатие — цифровым сигналом.
В нейтральном положении аналоговый сигнал соответствует половине напряжения питания. При перемещении джойстика в одну сторону напряжение будет нарастать, а при движении джойстика в другую сторону — падать. Таким образом можно получать точное положение ручки джойстика и реагировать на угол наклона, а не только на сам факт наклона ручки.
Подключение
На модуле расположены два трёхконтактных разъёма. Один разъём используется для подачи напряжения и чтения положения по оси X. Другой — для чтения положения по оси Y и текущего состояния кнопки.
При подключении к Arduino будет крайне удобно использовать Troyka Shield.
Возьмите Troyka Slot Shield и избавьтесь от проводов — два комплекта ножек надёжно фиксируют модуль на шилде.
Также модуль физически совместим с breadboard’ом.
Комплектация
1× Плата-модуль
2× Трёхпроводной шлейф
Характеристики
Напряжение питания | 3—5 В |
Интерфейс по осям X, Y | аналоговый, линейный |
Интерфейс кнопки | цифровой, бинарный |
Механика внутри | металлическая, а не пластиковая |
Кнопка | потайная, а не сбоку на скотче примотанная |
Габариты | 25×25 мм |
Документация
Подключение и настройка
3D-Джойстик (Troyka-модуль) — сенсор с двумя аналоговыми выходами X и Y, и одним цифровым — Z. В нейтральном положении аналоговый сигнал соответствует половине напряжения питания, нажатие — бинарный цифровой сигнал. При перемещении джойстика в одну сторону напряжение будет нарастать, а при движении джойстика в другую сторону — падать. Таким образом управляющее устройство будет получать данные о точном положении ручки джойстика и реагировать на угол наклона, а не только на сам факт наклона ручки.
Модуль общается с управляющей электроникой по 5 проводам. Для подключения используется два 3-проводных шлейфа. Для быстрого подключения модуля к Arduino используйте Troyka Shield.
Пример работы
В качестве примера выведем в Serial-порт текущее значение отклонения джойстика по двум осям и состояние нажатия кнопки.
- joystick_test.ino
-
// даём разумное имя пинам, к которым подключён джойстик #define X A0 #define Y A1 #define Z A2 void setup() { // открываем последовательный порт для мониторинга действий в программе Serial.begin(9600); } void loop() { // переменные для хранения значений // отклонения джойстика по осям X и Y // и состояния кнопки Z int x, y, z; // считываем текущее значение джойстика x = analogRead(X); y = analogRead(Y); z = digitalRead(Z); // выводим результаты в serial-порт Serial.print(x); Serial.print(","); Serial.print(y); Serial.print(","); Serial.println(z); delay(100); }
Элементы платы
Джойстик
Содержит два переменных резистора с возвратными пружинами, кнопку и прорезиненный колпачок — «грибок».
Контакты подключения 3-проводных шлейфов
1 группа
-
Земля (G) — Чёрный провод. Соедините с пином
GND
микроконтроллера. -
Питание (V) — Красный провод. Соедините с пином
5V
микроконтроллера. -
Сигнальный (X) — Подключите к аналоговому входу микроконтроллера.
2 группа
-
Сигнальный (Y) — Подключите к аналоговому входу микроконтроллера.
-
Сигнальный (Z) — Подключите к аналоговому/цифровому входу микроконтроллера.
-
Не используется.
Принципиальная и монтажная схемы
Характеристики
-
Напряжение внешнего питания: 3–5 В
-
Интерфейс по осям X, Y: аналоговый, линейный
-
Интерфейс кнопки: цифровой, бинарный
-
Габариты: 25×25 мм