Управление мотором через джойстик ардуино

Один из подписчиков решил сделать привод для телескопа, и попросил меня помочь с написанием скетча.

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

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

Для его сборки понадобится:

Плата Arduino UNO, модуль двух осевой джойстик, два униполярных шаговых двигателя 28BYJ-48 5V, два драйвера на базе микросхемы ULN2003 и соединительные провода.

Загрузите на плату Arduino UNO этот скетч.

В скетче есть 4 настройки!

Переменная t12 отвечает за скорость вращения первого шагового двигателя при первоначальном отведении джойстика.

Переменная t11 отвечает за скорость вращения первого шагового двигателя при отведении джойстика в крайнее положение.

Переменная t22 отвечает за скорость вращения второго шагового двигателя при первоначальном отведении джойстика.

Переменная t21 отвечает за скорость вращения второго шагового двигателя при отведении джойстика в крайнее положение.

Чем больше значение этих переменных тем медленнее скорость вращения шагового двигателя!

//Начало скетча

//Конец скетча

После настройки и загрузки скетча соберите все согласно этой схемы.

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

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

Чтобы инвертировать направление вращения вала шагового двигателя:

Поменяйте местами контакты 5, 6 или 4, 7 для 1 шагового двигателя.

Поменяйте местами контакты 11, 12 или 10, 13 для 2 шагового двигателя.

Чтобы поменять местами оси X, Y поменяйте местами контакты A0, A1.

Видео:Управление двумя униполярными шаговыми двигателями с помощью джойстика на базе Arduino uno.Скачать

Управление двумя униполярными шаговыми двигателями с помощью джойстика на базе Arduino uno.

Видео версия проекта «Управление двумя шаговыми двигателями с помощью джойстика на базе Arduino UNO.»

Творческая мастерская Мастер Колотушкин 2021

Проекты на базе Arduino для начинающих, электронные самоделки своими руками.

Видео:Управление моторами с ArduinoСкачать

Управление моторами с Arduino

Как подключить джойстик к Ардуино

Подключение джойстика к Arduino ► позволит сделать дистанционное управление машинкой или роботом. Рассмотрим, как джойстиком управлять сервоприводом на Ардуино.

Подключение джойстика к Arduino позволит сделать дистанционное управление с помощью джойстика машинкой или роботом на Ардуино. Рассмотрим в статье, как подключить джойстик шилд самостоятельно и сделать управление светодиодами с помощью джойстика на Ардуино. Представим несколько скетчей и дадим схему подключения джойстика к микроконтроллеру Arduino Nano или Arduino Uno.

Видео:Уроки Arduino. Управление моторами с библиотекой GyverMotorСкачать

Уроки Arduino. Управление моторами с библиотекой GyverMotor

Джойстик схема подключения к Ардуино

Аналоговый джойстик представляет собой ручку, которая крепится на шарнире с двумя потенциометрами, определяющими положение джойстика по оси X и Y, и кнопкой Z. Наклон ручки вращает потенциометры и изменяет выходное напряжение, позволяя отследить степень отклонения ручки от центральной точки. При отпускании ручки джойстика, она плавно возвращается в центральное (нулевое) положение.

Как подключить джойстик к Arduino Nano и Arduino Uno

У модуля джойстика KY-023 есть свои недостатки. Дело в том, что ручка джойстика не всегда точно возвращается в центральное положение, поэтому следует учитывать в программе центральное положение ручки, как некоторый диапазон значений, а не точное значение. То есть, при положении ручки джойстика в центре, значение X и Y координат может находиться в диапазоне от 490 до 530, вместо 512.

Видео:🕹️ Подключение ДЖОЙСТИКА к ARDUINOСкачать

🕹️ Подключение ДЖОЙСТИКА к ARDUINO

Подключение джойстика к Arduino UNO

Для этого занятия нам потребуется:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • модуль джойстика ky-023;
  • 2 светодиода и 2 резистора;
  • макетная плата;
  • провода «папа-мама», «папа-папа».

Читайте также: Запасной мотор для катера

После подключения к Ардуино джойстика, загрузите следующий скетч. В данном примере на монитор порта будут выводиться данные с джойстика, а при нажатии кнопки будет выключаться светодиод на плате, подключенный параллельно к Pin 13. Соберите схему с джойстиком на Arduino Uno, как показано на схеме выше, загрузите скетч и откройте монитор порта программы Arduino IDE на компьютере.

Скетч. Подключение джойстика к Ардуино

Скетч. Управление джойстиком светодиодами

Теперь можно усложнить схему, сделав плавное включение светодиода, управляемое от джойстика. Для этого подключите два светодиода через резистор к аналоговым портам 5 и 6. В следующем скетче, с помощью функции map(), переменные X и Y преобразуются из диапазона чисел от 0 до 1023 в диапазон чисел от 0 до 255. Подключите светодиоды к пинам 5 и 6 Ардуино и загрузите следующий скетч.

Пояснения к коду:

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

Заключение. Мы рассмотрели схему подключения джойстика к Arduino и несколько вариантов управления светодиодами от микроконтроллера. Как вы убедились сами, что работа с джойстиком Ардуино доступна любому начинающему мейкеру, так как принцип работы модуля ky-023 схож с простым потенциометром. Данный модуль может использоваться во многих интересных DIY проектах.

Видео:Подключение джойстика к Arduino Управление сервоприводами.Скачать

Подключение джойстика к Arduino Управление сервоприводами.

Управление сервоприводом джойстиком Ардуино

Управление серво джойстиком от Ардуино ► рассмотрим, как подключить к Arduino микро сервомотор и управлять им от джойстика ky-023 с готовыми примерами скетчей.

Как подключить к Ардуино сервопривод с джойстиком и написать программу для управления сервоприводом джойстиком от Arduino Uno рассмотрим в этом обзоре. Мы уже рассказывали, как управлять светодиодами с помощью модуля джойстика ky-023 и в данном примере скетч для микроконтроллера будет практически таким же, за одним небольшим исключением. А что изменилось в программе — читайте далее.

Видео:Плавное управление Джойстиком в программе FlprogСкачать

Плавное управление Джойстиком в программе Flprog

Управление сервоприводом джойстиком Ардуино

Для того, чтобы сделать управление сервомотора с помощью джойстика, необходимо первым делом подключить к аналоговым входам платы Arduino модуль ky-023. Это необходимо, чтобы АЦП микроконтроллера получало данные о положении джойстика по координатам X и Y в режиме реального времени. Затем, с помощью строчек кода, эти данные мы преобразуем в соответствующее положение микро сервопривода.

Джойстик представляет собой два потенциометра, которые меняют сопротивление в электрической цепи при изменении положения ручки. Поэтому на аналоговых входах Ардуино, куда мы подключим джойстик, будут цифровые значения от 0 до 1023, т.е. АЦП микроконтроллера преобразует значения напряжения от 0 до 5 Вольт в цифровые значения. Именно эти значения мы будем использовать для управления серво.

Видео:ПОДКЛЮЧАЕМ ШАГОВЫЙ ДВИГАТЕЛЬ К ARDUINO [Уроки Ардуино #14]Скачать

ПОДКЛЮЧАЕМ ШАГОВЫЙ ДВИГАТЕЛЬ К ARDUINO [Уроки Ардуино #14]

Как подключить к Ардуино серво с джойстиком

Для этого занятия нам потребуется:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • микро сервопривод;
  • джойстик ky-023;
  • провода «папа-папа», «папа-мама».

Подключите к плате Ардуино сервомотор и джойстик, согласно схеме, изображенной на картинке выше. И загрузите следующий скетч в микроконтроллер, позволяющий сделать плавное управление сервоприводом с помощью джойстика на Ардуино. В программе мы используем функцию map(), которая преобразует числовой диапазон значений 0-1023, в новый диапазон чисел 0-180 (угол поворота серво).

Читайте также: Мотор самолета ан 2 описание устройства

Скетч. Управление сервоприводом с помощью джойстика

Пояснения к коду:

  1. с помощью map() можно задать любой диапазон чисел, в том числе обратный;
  2. обратите внимание, что у разных производителей распиновка джойстика может отличаться, от представленной выше схемы подключения модуля к плате.

Схема подключения двух сервоприводов к Ардуино с джойстиком

Скетч. Управление двумя серво с помощью джойстика

Пояснения к коду:

  1. в данной программе мы лишь добавили новую локальную переменную int Y; для значений оси Y джойстика, чтобы управлять вторым серво.

Заключение. Таким образом, мы подробно рассмотрели, как используется Ардуино джойстик в управлении одним и двумя сервоприводами. Полученную информацию вы можете использовать для создания простых мини роботов на Arduino или машинок с дистанционным управлением от джойстика. Если у вас остались еще вопросы по рассмотренной теме — вы можете оставить их в комментариях под этой записью.

Видео:Ардуино. Управление двигателем через джойстикСкачать

Ардуино. Управление двигателем через джойстик

Подключаем к плате Ардуино джойстик

Джойстики – отличный источник входных данных для проекта по робототехнике. Создатели электроники всегда любили подобные вещи. Однако новичкам может показаться трудным понять концепцию во время кодирования и тому подобное. В статье ниже подробно описан механизм сборки ардуино джойстика и принцип его работы.

Управление мотором через джойстик ардуино

Видео:Подключаем к Arduino джойстик. Управление servo сервоприводомСкачать

Подключаем к Arduino джойстик.  Управление servo сервоприводом

Смысл подключения джойстика к ардуино

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

Этот модуль производит на выходе около 2,5 В от X и Y, когда он находится в положение покоя. Перемещение джойстика приведет к изменению выходного сигнала от 0 В до 5 В в зависимости от его направления. Если вы подключите этот модуль к микроконтроллеру, вы можете ожидать, что значение будет около 512 в положении покоя.

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

Видео:Уроки Ардуино #11 - плавное управление нагрузкой, ШИМ сигналСкачать

Уроки Ардуино #11 - плавное управление нагрузкой, ШИМ сигнал

Принцип действия

В приведенном ниже коде мы определили оси X и Y модуля джойстика для аналогового вывода A0 и A1 соответственно:

Теперь в приведенном ниже коде мы инициализируем PIN 2 для аrduino для коммутатора модуля Joystick, а значение buttonsdtate и buttonsdtate1 будет 0 в начале описываемой программы:

В приведенном ниже коде устанавливаем необходимую скорость передачи до 9600 и определяем Pin 7, как выходной вывод, и контакт кнопки в качестве входного контакта. Первоначально контактная кнопка остается высокой, пока пользователь не нажмет на соответствующий переключатель.

Здесь, в этом коде считываем значения из аналогового вывода A0 и A1 и последовательно выводим на устройство:

Условия включения и выключения светодиода в соответствии с движением вала джойстика определяются в приведенном ниже коде. Здесь мы просто принимаем аналоговые значения напряжения на выводах A0 и A1 аrduino. Эти аналоговые значения будут меняться при перемещении джойстика, и светодиод будет светиться в соответствии с движением джойстика.

Это условие для перемещения вала джойстика в направлении оси Y:

Управление мотором через джойстик ардуино

Это условие для перемещения вала джойстика в направлении оси X:

Это условие для перемещения вала джойстика в направлении оси X:

Нижеописанный код – это условие для перемещения вала сконструированного прибора в направлении оси Y:

Читайте также: Как промыть мотор внутри

Когда мы перемещаем ось джойстика по диагонали, тогда одно положение приходит, когда аналоговое значение X и Y будет равно 1023 и 1023 соответственно, и светодиоды Pin 9, и Pin 8 будут светиться. Потому что он удовлетворяет условию светодиода. Итак, для устранения этого несоответствия указывается условие, что если значение (X, Y) равно (1023, 1023), то оба светодиода остаются в выключенном состоянии:

Нижеследующее условие используется для управления светодиодом, подключенным к кнопочному переключателю. Когда мы нажимаем джойстик, светодиод включается и фиксируется до тех пор, пока кнопка не опустится. Лучше использовать кнопочный переключатель.

Видео:Шаговые двигатели, и как ими управлять с помощью микроконтроллераСкачать

Шаговые двигатели, и как ими управлять с помощью микроконтроллера

Необходимые инструменты, материалы и программы

Для осуществления проекта “аrduino joystick” потребуются следующие материалы:

  • аrduino UNO;
  • модуль джойстика;
  • светодиоды – 5 штук;
  • резистор на 100 ом — 3 штуки;
  • соединительные провода;
  • макет.

Видео:Драйвер двигателей L298N - Обзор, Тест, Подключение к ArduinoСкачать

Драйвер двигателей L298N - Обзор, Тест, Подключение к Arduino

Сборка устройства

Джойстики доступны в разных формах и размерах. Типичный модуль описываемого прибора показан на рисунке ниже. Этот модуль обычно обеспечивает аналоговые выходы, а выходные напряжения, обрабатываемые этим модулем, изменяются в соответствии с направлением, в котором его перемещает пользователь. Можно получить направление движения, интерпретируя эти изменения с помощью некоторого микроконтроллера.

Управление мотором через джойстик ардуино

Этот модуль джойстика имеет две оси. Они представляют собой ось X и ось Y. Каждая ось монтируется на потенциометр или горшок. Средние точки этих горшков определяются, как Rx и Ry. Таким образом, Rx и Ry являются переменными точками для этих горшков. Когда прибор находится в режиме ожидания, Rx и Ry действуют, как делитель напряжения.

Управление мотором через джойстик ардуино

Когда arduino джойстик перемещается вдоль горизонтальной оси, напряжение на контакте Rx изменяется. Аналогично, когда он перемещается вдоль вертикальной оси, напряжение на пикселе Ry изменяется. Таким образом, у нас есть четыре направления устройства на двух выходах ADC. Когда палочка перемещается, напряжение на каждом штыре должно быть высоким или низким, в зависимости от направления.

Видео:Arduino джойстикСкачать

Arduino джойстик

Настройка и отладка

После загрузки кода в аrduino и подключения компонентов в соответствии с электрической схемой, мы теперь управляем светодиодами с помощью джойстика. Можно включить четыре светодиода в каждом направлении в соответствии с движением вала устройства. Он имеет два потенциометра внутри, один – для перемещения по оси X, а другой – для перемещения по оси Y. Каждый потенциометр получает 5v от аrduino. Так как мы перемещаем устройство, значение напряжения изменится, и аналоговое значение в выводах A0 и A1 также станет иным.

Итак, из микроконтроллера аrduino мы считываем аналоговое значение для оси X и Y и включаем светодиоды в соответствии с движением оси устройства. Нажимаем переключатель на модуле и используем для управления одиночным светодиодом в цепи.

Видео:Подключаем мотор-колесо к контроллеру ArduinoСкачать

Подключаем мотор-колесо к контроллеру Arduino

Тестирование

Для тестирования джойстика для ардуино понадобятся следующие компоненты:

  1. Микроконтроллер (любой, совместимый arduino).
  2. Модуль джойстика.
  3. 1 контактный разъем MM.
  4. Макет.
  5. USB-кабель.
  1. Подключите компоненты, используя MM-штырьковый разъем. + 5В подключается к источнику питания 5 В, вывод GND подключен к GND, контакты VRx и VRy подключены к аналоговому входу, контакты и штырьковый разъем подключены к цифровому выводу ввода/вывода.
  2. Номер контакта будет основан по фактическому программному коду.
  3. После аппаратного соединения вставьте образец эскиза в среду разработки аrduino.
  4. Используя USB-кабель, подключите порты от микроконтроллера к компьютеру.
  5. Загрузите программу.
  6. Смотрите результаты на последовательном мониторе.
  • Свежие записи
    • Чем отличается двухтактный мотор от четырехтактного
    • Сколько масла заливать в редуктор мотоблока
    • Какие моторы бывают у стиральных машин
    • Какие валы отсутствуют в двухвальной кпп
    • Как снять стопорную шайбу с вала


    📸 Видео

    Уроки Arduino - управление бесколлекторным моторомСкачать

    Уроки Arduino - управление бесколлекторным мотором

    Как подключить шаговый двигатель к ArduinoСкачать

    Как подключить шаговый двигатель к Arduino

    NEMA17 Управление шаговым двигателем - Stepper motor with ArduinoСкачать

    NEMA17 Управление шаговым двигателем  - Stepper motor with Arduino

    Arduino Проекты #2 "Управление сервоприводом"Скачать

    Arduino Проекты #2 "Управление сервоприводом"

    Управление колесами гироскутера с помощью джойстикаСкачать

    Управление колесами гироскутера с помощью джойстика

    ДИСТАНЦИОННАЯ АППАРАТУРА УПРАВЛЕНИЯ НА АРДУИНОСкачать

    ДИСТАНЦИОННАЯ АППАРАТУРА УПРАВЛЕНИЯ НА АРДУИНО
Поделиться или сохранить к себе:
Технарь знаток