Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Промышленные технологии

Модуль джойстика Arduino:как эффективно его создать

Модуль джойстика

В настоящее время вы занимаетесь проектами, связанными с движением и робототехникой? Тогда есть шанс, что вы, вероятно, слышали о модуле джойстика Arduino, но не знаете, как его сделать.

Или, возможно, вы хотите получить больше информации о том, как работает модуль джойстика Arduino?

Тогда вы попали по адресу.

Цель джойстика Arduino — передать движение Arduino. И делает это в 2D (две оси), что делает его подходящим для приложений движения и робототехники.

Итак, в этой статье вы узнаете все о модуле джойстика Arduino, о том, как он работает, и как сделать простую схему джойстика Arduino.

Вы готовы? Присоединяйтесь!

Что такое модуль джойстика?

Вряд ли найдется роботизированный проект, для которого не требуется джойстик. Иногда сложно получить контроллер, который будет работать для ваших проектов, и это может быть даже дорого. Но модуль джойстика обеспечивает более доступный способ добиться того же результата.

Кроме того, модуль джойстика работает аналогично джойстикам аналоговых геймпадов. Его ключевыми компонентами являются два потенциометра, наклоненных под углом 90 градусов. Кроме того, есть связь между коротким джойстиком (с пружинами в центре) и потенциометрами.

Потенциометры

Модуль джойстика может выдавать около 2,5 В по осям X и Y, когда он находится в состоянии покоя. Теперь, когда вы перемещаете джойстик, выходное напряжение будет варьироваться от 0 В до 5 В. Однако это зависит от направления.

Кроме того, если вы используете микроконтроллер с модулем джойстика, реальное значение в исходном положении будет около 512. Таким образом, когда вы перемещаете этот джойстик, вы можете увидеть изменение значений от 0 до 1023, но это зависит от его положения.

Конфигурация PIN-кода

Вот конфигурация контактов модуля джойстика:

Пин-код Пин-код Описание
1 Земля Клемма заземления модуля
2 +5В Плюс питания модуля
3 VRx Напряжение, пропорциональное оси X
4 VRy Напряжение, пропорциональное оси Y
5 ПО Переключатель модуля

Fэлементы

Вот ключевые особенности модуля джойстика Arduino:

Технические характеристики

Спецификации модуля джойстика включают:

Схема

На изображении ниже показана полная схема модуля джойстика. Как мы упоминали ранее, модуль оснащен двумя потенциометрами, которые управляют осями X и Y.

Схема модуля джойстика

Плюс оба потенциометра (10k) двигаются независимо. Другими словами, вы можете перемещать их по отдельности и в их направлениях. Кроме того, имеется внутреннее соединение контакта переключателя (SW) с кнопкой.

Взаимодействие джойстика с Arduino

Модули джойстика совместимы со многими микроконтроллерами, такими как Raspberry Pi, Arduino и другими. Кроме того, его легко подключить, и вам сначала нужно подключить выводы осей VRx и VRy к контактам ADC микроконтроллера.

Кроме того, если вы планируете использовать переключатель, вам следует подключить кнопку к цифровым контактам микроконтроллера.

Посмотрите на схему ниже, чтобы понять, как подключить модуль джойстика к любому микроконтроллеру.

От модуля джойстика к микроконтроллеру

Теперь на следующей диаграмме показано, как подключить модуль джойстика к Arduino. С помощью этой схемы вы сможете подключить модуль к Arduino. Кроме того, вы получите выходные данные в зависимости от направления, в котором вы перемещаете ручку джойстика.

Модуль джойстика для Arduino

Как только вы закончите взаимодействие, мы обнаружим, что каждое направление имеет фиксированный выходной диапазон. На следующем изображении показаны выходные данные для осей X и Y в зависимости от перемещения модуля джойстика в четырех направлениях:+X, -X, +Y и –Y. Также будут некоторые аналоговые значения, когда вы переместите ручку по диагонали.

Направления движения

Если вы хотите знать, когда вы нажимаете ручку джойстика, вы также можете подключить контакт SW к цифровому контакту 8 Arduino.

Кроме того, для правильной работы джойстика требуется питание. Итак, подключите контакт VCC к клемме 5V Arduino, а GND — к клемме GND Arduino.

Код Arduino

Эту программу довольно легко написать в Arduino IDE. Таким образом, чтобы получить наилучшие результаты, вы будете измерять движение джойстика с одного цифрового входа и двух аналоговых входов. Затем Arduino отобразит воздействие на ваш монитор.

Вот лучшая часть

Вам не нужна библиотека для кодирования этой программы. Он просто считывает аналоговый вход и отображает полученные от него значения. Кроме того, он также показывает результат нажатия кнопки.

Вот набросок кода:

  1. #define радостьX A0
  2. #define радость A1
  3. пусто настройка () <сильный> {
  4. Серийный . начать ( 9600 );
  5. пусто цикл () <сильный> {
  6. // поместите сюда свой основной код для многократного запуска:
  7. xValue = аналогЧитать ( радостьX );
  8. Значение у = аналогЧитать ( Радость );
  9. //печать значений для построения или просмотра
  10. Серийный . распечатать ( xValue );
  11. Серийный . распечатать ( ”\t” );
  12. Серийный . печать ( yValue );

Изображение, показывающее код Arduino

Сопоставление

Иногда речь идет не только о чтении аналоговых значений, и может возникнуть необходимость сопоставить ваш модуль с дисплеем или другими интерфейсами. Итак, чтобы помочь вам в этом, мы покажем, как сопоставить значения приведенного выше кода со светодиодной матрицей 8×8.

Сопоставление Arduino

Результатом этого процесса является перемещение пикселей на дисплее с помощью джойстика. Кроме того, код легко изменить, чтобы сопоставить его с OLED-дисплеем или графическим дисплеем.

  1. #include <сильный> «LedControl.h»
  2. #define радостьX A0
  3. #define радость A1
  4. целое xMap , Карта , xValue , YValue ;
  5. Светодиод ЛК = Светодиод ( 12 , 11 , 10 , 1 );
  6. пусто настройка () <сильный> {
  7. Серийный . начать ( 115200 );
  8. кк . выключение ( 0 , ложь );
  9. /* Устанавливаем средние значения яркости */
  10. кк . установить интенсивность ( 0 , 8 );
  11. /* и очистить дисплей */
  12. кк . clearDisplay ( 0 );
  13. пусто цикл () <сильный> {
  14. // поместите сюда свой основной код для многократного запуска:
  15. xValue = аналогЧитать ( радостьX );
  16. Значение у = аналогЧитать ( Радость );
  17. xMap = карта ( xValue , <сильный> 0 , 1023 , <сильный> 0 , <сильный> 7 );
  18. Карта = карта ( yValue , 0 , 1023 , 7 , 0 );
  19. кк . установить светодиод ( 0 , xMap , yMap , правда );
  20. кк . clearDisplay ( 0 );

Изображение кода, необходимого для подключения Arduino к OLED или графическому дисплею

Примечание:приведенный выше код показывает, что вы можете использовать функцию map() для сопоставления диапазонов в соответствии с вашими предпочтениями.

Итак, если вы все сделали правильно, вывод на ваш последовательный монитор должен выглядеть так:

Приложения

Вот некоторые приложения модуля джойстика Arduino:

Робот-дрон

Подвижная камера

Округление

Когда вы слышите слово «джойстик», первое, что может прийти на ум, это игровые контроллеры. Тем не менее, есть так много интересных применений модуля джойстика, когда дело доходит до электроники своими руками.

Игровые контроллеры

Кроме того, эти модули в основном работают для проектов DIY, основанных на Arduino и управлении роботами. Как мы уже обсуждали ранее, модуль джойстика сначала освобождал аналоговый выход для подачи аналогового ввода в зависимости от горизонтального или вертикального движения джойстика.

Ну, это округляет эту статью. Если у вас есть какие-либо вопросы или предложения, не стесняйтесь обращаться к нам. Мы всегда рады помочь.


Промышленные технологии

  1. Как создать настраиваемую перфорированную кнопку клавиатуры
  2. Как связать Arduino Mega с GPS-модулем NEO-6M
  3. Джойстик Arduino
  4. Как создавать музыку с помощью Arduino
  5. Как сделать автоматическое открывание дверей на базе Arduino
  6. Как сделать автомобиль с управлением по Bluetooth на Arduino
  7. Как сделать мини-осциллограф дома с помощью Arduino Nano
  8. Учебное пособие по Arduino:JARVIS v1 | Как сделать домашнюю автоматизацию
  9. rDUINOScope
  10. Как сделать дома робота для управления жестами