====== 3D-джойстик (Troyka-модуль) ====== Используйте [[amp>product/troyka-3d-joystick?utm_source=man&utm_campaign=joystick&utm_medium=wiki|3D-Джойстик (Troyka-модуль)]] для управления роботом, видеоигрой и даже домашним питомцем. Модуль комбинирует в себе аналоговый двухосный джойстик и тактовую кнопку. {{ :продукты:troyka-3d-joystick:joystick_overview.jpg?nolink |}} ===== Видеообзор ===== {{youtube>LxprWaJWNfQ?large}} ===== Подключение и настройка ===== [[amp>product/troyka-3d-joystick?utm_source=man&utm_campaign=joystick&utm_medium=wiki|3D-Джойстик (Troyka-модуль)]] — сенсор с двумя аналоговыми выходами ''X'' и ''Y'', и одним цифровым — ''Z''. В нейтральном положении аналоговый сигнал соответствует половине напряжения питания, нажатие — бинарный цифровой сигнал. При перемещении джойстика в одну сторону напряжение будет нарастать, а при движении джойстика в другую сторону — падать. Таким образом управляющее устройство будет получать данные о точном положении ручки джойстика и реагировать на угол наклона, а не только на сам факт наклона ручки. Модуль общается с управляющей электроникой по 5 проводам. Для подключения используется два [[amp>product/3-wire-cable-digital-troyka?utm_source=man&utm_campaign=joystick&utm_medium=wiki|3-проводных шлейфа]]. Для быстрого подключения модуля к Arduino используйте [[amp>product/arduino-troyka-shield?utm_source=man&utm_campaign=joystick&utm_medium=wiki|Troyka Shield]]. {{ :продукты:troyka-3d-joystick:joystick_scheme.png?nolink |}} ==== Пример работы ==== В качестве примера выведем в Serial-порт текущее значение отклонения джойстика по двум осям и состояние нажатия кнопки. // даём разумное имя пинам, к которым подключён джойстик #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); } ===== Элементы платы ===== {{ :продукты:troyka-3d-joystick:joystick_annotation.png?nolink |}} ==== Джойстик ==== Содержит два переменных резистора с возвратными пружинами, кнопку и прорезиненный колпачок — «грибок». ==== Контакты подключения 3-проводных шлейфов ==== //1 группа// * Земля (G) — Чёрный провод. Соедините с пином ''GND'' микроконтроллера. * Питание (V) — Красный провод. Соедините с пином ''5V'' микроконтроллера. * Сигнальный (X) — Подключите к аналоговому входу микроконтроллера. //2 группа// * Сигнальный (Y) — Подключите к аналоговому входу микроконтроллера. * Сигнальный (Z) — Подключите к аналоговому/цифровому входу микроконтроллера. * Не используется. ===== Принципиальная и монтажная схемы ===== {{:продукты:troyka-3d-joystick:joystick_schematic.png?direct&350 |}} {{ :продукты:troyka-3d-joystick:joystick_layout.png?direct&300|}} ===== Характеристики ===== {{ :продукты:troyka-3d-joystick:gabariti.png?nolink |}} * Напряжение внешнего питания: 3–5 В * Интерфейс по осям X, Y: аналоговый, линейный * Интерфейс кнопки: цифровой, бинарный * Габариты: 25×25 мм