Подключение джойстика к ардуино: Страница не найдена » Ардуино Уроки

Содержание

Подключение геймпада \ джойстика к Arduino , беспроводной джойстик 2 4 dualshock от PS2


Беспроводной контроллер 2.4 который я заказа визуально полная копия контроллера от  PS2 \ PlayStation 2 и идентичен оригинальному контроллеру DualShock для консоли PlayStation. Он имеет двенадцать аналоговых (чувствительных к нажатию) кнопок (Χ, O, Π, Δ, L1, R1, L2, R2, Вверх, вниз, влево и вправо), пять цифровых кнопок (L3, R3 Start, Select и аналоговый режим ) . Контроллер также оснащен двумя моторчиками , которые могут взаимодействовать с «игроком». Так же контроллер беспроводной и  работает от двух батареек типа ААА либо можно установить аккумуляторы. Связь с приемником осуществляется по радиочастотному протоколу 2,4 ГГц.
Так же я вскрыл приемник что бы определить распиновку и нарисовал схему и описание платы :

DATA\DI: Это линия обмена данных от  контроллера  PS2 к ардуино  . 
СM\D0: Это линия обмена в обратную сторону от PS2 к контроллеру.
VIBRATION MOTOR POWER \ управление вибрацией геймпада 

GND: земля
VCC: Питание VCC может варьироваться от 5 до 3 В.
ATT: ATT линия «Chip Select» или «Slave Select», которая используется для адресации разных контроллеров на одной шине.
CLK: SPI-шина.
NC:Нет соединения (пустой контакт)
ACK: подтверждение сигнала от контроллера к PS2 


Ну а теперь пришло время установить батарейки в геймпад и подключить его к ардуино : 
После чего скачивает прошивку для платы и библиотеку геймпада с моего гитхаба и прошиваем на плату https://github.com/DenisGeek0/ps2gamepadrc

Так же для нашего стенда был добавлен дисплей 1602 для отображения данных и активности клавиш для теста.

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

Готово ))) 
Таким же способом можно подключать и другие беспроводные (джойстики) устройства и использовать их для управления например RC моделями, машинками,радиоуправляемыми катерами и самолетами .
Или такими штуками ))) 

Комплектующие заказывал на алиэкспресс : 
Геймпад  http://ali.pub/35d697
Комплект или по раздельности геймпад \электроника \шасси http://ali.pub/35d63y
Так же будет видео работы  :  

Geek каналы

➤ VK — https://vk.com/denis_geek


➤ VK — https://vk.com/club_arduino
➤ VK — https://vk.com/chinagreat
➤ VK — https://vk.com/solar_pover
➤ VK — https://vk.com/my_vedroid
➤ VK — https://vk.com/3dprintsumy 
➤ Youtube  — http://www.youtube.com/c/Denisgeek 

 

★ Моя партнёрка с Aliexpress ★

★ Получай 10.5% скидку с любой покупки на Aliexpress! ★

★ Полезное браузерное приложение для кэшбэка  ★


Похожие статьи

Распиновка самых популярных плат ардуино Arduino board pinmaping

В посте собраны практически все платы ардуино с распиновкой в хорошем качестве !

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

Ардуино может использоваться для разработки интерактивных систем, управляемых различными датчиками и переключателями. Такие системы, в свою очередь, могут управлять работой различных индикаторов, двигателей и других устройств. Проекты Ардуино могут быть как самостоятельными, так и взаимодействовать с программным обеспечением, работающем на персональном компьютере (например, приложениями Flash, Processing, MaxMSP). Любую плату Ардуино можно собрать вручную или же купить готовое устройство; среда разработки для программирования такой платы имеет открытый исходный код и полностью бесплатна.

Язык программирования Ардуино является реализацией похожей аппаратной платформы «Wiring», основанной на среде программирования мультимедиа «Processing».


Игра на LCD Keypad Shield D1robot и Arduino UNO , делаем простую игру на ардуино

Приехал мне из китая вот такой удобный ЛСД шилд для ардуино Уно , но так же он подходит и для версии MEGA .

Шил по сути удобная платформа с дисплеем 1602 и 6ю кнопками для подключения к ардуино — Бутербродом . 

Все это легко монтируется , как я раньше без него то жил ? 

Теги: Подключение геймпада, джойстика к Arduino, беспроводной джойстик 2.4, dualshock от PS2 к ардуино, джойстик к ардуино, беспроводной джойстик подключение, контроллер подключение, пульт к ардуино, ps2 gamepade arduino, денис, гиик, китайчик, клуб, ардуино, клуб_ардуино, обзоры, алиэкспресс, denis_geek, denis, geek, chinagreat, club_arduino, arduino, club, aliexpress, денис гиик

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

Описание

Модуль джойстика (рисунок 1), входящий в состав ARDUINO SENSOR KIT, предназначен для управления различными устройствами (шасси, роботами), и состоит из двух потенциометров на 10 кОм (расположенных перпендикулярно), и одной тактовой кнопкой. Средняя нога каждого потенциометра выведена на разъем J1 (контакты VRX и VRY), а две другие подключены соответственно к питанию и массе. Показания снимаются с разъема J1 (контакт SW), так же предусмотрено посадочное место для подтягивающего резистора (R1). Технические характеристики модуля джойстика представлены в таблице.

Рисунок 1 — Модуль джойстика Arduino.

Таблица – Технические характеристики модуля джойстика.

ПараметрЗначение
Номинальное рабочее напряжение5 В
Поворот ручки360°
Габаритные размеры34 мм х 26 мм х 34 мм
Подключение модуля джойстика

На модуле имеется 5 выходов — VCC (+5V), GND, X, Y и SWICH (обозначения могут различаться в зависимости от устройства). Распиновка модуля джойстика представлена на рисунке 2.

Рисунок 2 – Распиновка модуля джойстика Arduino.

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

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • кабель USB 2.0 A-B для подключения платы Arduino к персональному компьютеру с установленной средой Arduino IDE;
  • провод DuPont типа «папа-мама»;
  • модуль джойстика.

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

Рисунок 3 – Подключение модуля джойстика к Arduino UNO.

Схемы подключения модуля джойстика к микроконтроллерам Arduino Uno, Arduino Nano или Arduino Mega принципиально ничем не отличаются.

При подключении модуля джойстика к Arduino Uno подключаем, VRX к аналоговому порту А0, VRY к аналоговому порту A1, SW к цифровому порту 3, питание +5В к выводу 5V и GND к GND на плате Arduino.

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

Следует отметить, что джойстик Arduino не лишен некоторых недостатков. В первую очередь, наличие пружины не позволяет ручке точно вернуться в центральное положение из-за трения в механических деталях. Это приводит к тому, что приходится программно определять центральное положение, вернее диапазон значений, в которых любая точка будет условно считаться серединой.

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

Применение

Модуль джойстика при простейшем применении можно использовать для управления движками и приводами, электромоторами или сервоприводами. Более сложное использование модуля джойстика включают в себя управление сложными механизмами: управление моделью машины, роботом, механической рукой (например, управление поворотной платформой на основе сервопривода).

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

В видео рассказано как подключить джойстик к Ардуино и управлять движением 2-х сервомоторов. Управление сервомоторами будет по двум осям. По горизонтали и по вертикали. Управление джойстиком  самый удобный способ управлять серво приводом. Подключение джойстика к arduino к аналоговым входам даёт интервал в 1024 градации, которые можно перевести в 180 градусов.

Сегодня мой рассказ будет как подключить модуль джойстика к Ардуино.  
Этот пример можно использовать для поворотной панели, на которую можно установить камеру или лазер. В этом случае получится лазерный прицел. Так же можно управлять движением робота или машины и многое другое.

В одном из следующих видео я покажу как добавить в этот пример модули NRF24 и управлять устройствами удалённо, без проводов. Если вы не знаете что это за модули, то можете посмотреть примеры использования такого модуля.
В видео будет представлено 2 примера. 
Первый это просто движение сервомоторов вверх и вниз и вправо и влево. Движение будет пока ручка джойстика отклонена от центральной точки. После того как отпустили джойстик сервомоторы вернутся в изначальное положение. Движение возможно по двум осям. Горизонтальной и вертикальной.
Второй пример – это движение с памятью. По окончании движения положение сервомотора будет запоминаться, сохраняться в переменную, а после того как отпустили ручку управления джойстика сервомотор останется в той точке где он прекратил движение. Если снова переместить джойстик, то положение мотора продолжится из последней точки.
Этот пример мы более подробно рассмотрим дальше в видео.

А ещё на джойстике есть кнопка. Я буду использовать её для зажигания светодиода, ну а вы можете придумать что-то более полезное. Главное что в скетче уже есть код управления кнопкой, а что включать изменяется всего одной строчкой кода.

Теперь давайте рассмотрим сам модуль джойстика.

Устройство джойстика.
Из модуля выходят 5 проводов.

  • Два из которых питание. Джойстик работает от 5 вольт.
  • Ещё два — это оси x и y. Эти контакты подключаются к аналоговым входам и имеют значение от 0 до 1023. Средняя точка установлена на заводе и имеет значение примерно 510. Правда имеется небольшой разброс. Поэтому лучше сначала проверить какое значение по центру.
  • И последний вывод это кнопка. В игрушках её можно использовать для выстрела, а при работе с фотокамерой можно сделать нажатие на спуск фотоаппарата. 

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

  • Землю джойстика подключаем к земле, а питание подключаем к выходу +5 вольт Ардуино.
  • Ось X подключаем к аналоговому входу А1, а Ось Y подключаем к аналоговому входу А2.
  • Кнопку подключаем к цифровому входу D4.

Сервомоторы желательно питать от отдельного источника напряжения +5 вольт. Земли обоих источников должны быть соединены вместе.
Нижняя серва которая отвечает за движение по оси Х подключается к цифровому выходу D2, а верхняя которая движется вверх и вниз подключаем к цифровому выходу D3.
Светодиод в примере используется параллельно тому, что распаян на плате, то есть на цифровом выходе D13.
Вот и вся схема. Она довольно простая.

Конструкцию поворотного механизма можно купить, можно сделать на 3д принтере, а можно просто разместить друг на друге. Получится не очень красиво, зато бесплатно и просто. И можно сделать буквально за 5 минут.

Теперь давайте подробнее посмотрим как это всё работает.
Начнём с определения координат центральной точки. Для этого запускаем скетч Joystick_Servo. Подробно как и что, я расскажу дальше. Здесь нас всего лишь интересуют вот эти строчки. Чтобы он не мельтишили я вставил паузу в полсекунды.
Как видите при центральном положении джойстика мы получаем координаты по оси х 91 градус, а по осу Y 87 градусов. Это нам пригодиться в следующем примере. Теперь отклоним ручку сервера по оси y до конца и получим 179 градусов, теперь в другую сторону и получим 0. Тоже самое проделаем с осью х.
Теперь загружаем следующий скетч и остановимся на нём более подробно.
В начале нам надо подключить библиотеку Servo. Думаю, что с этим проблем быть не должно. Создаём 2 класса для двух сервомоторов. Это классы MyServo1 и MyServo2.
Переменные a и b нужны для хранения текущего положения по осям  x и y сервомоторов.
Переменным X и Y будут присвоены считанные значения с джойстика и переведённые в градусы. Это будут значения от 0 до 180 градусов.
Здесь указываем к каким контактам будет подключен джойстик, кнопка и в моём случае светодиод.
Переменная флаг нужна для работы с кнопкой на модуле.

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

В цикле loop мы постоянно считываем текущее положение с обоих сервомоторов и присваиваем их переменным a и b.  А здесь мы принимаем положение ручки джойстика. Так как джойстик подключён к аналоговому входу, то  он может иметь значение от 0 до 1023. 

Функция map преобразует их в интервал от 0 до 180. Так мы получаем градусы. Например для сервомотора по оси Y можно уменьшить этот интервал и сделать от 45 до 135 этим мы уменьшим повороты мотора.
Рассмотрим ось X. В начале мы определили, что при центральном положении джойстика оно было равно 91. Делаем небольшой зазор. Если его не сделать, или он будет маленьким, то у вас при включении джойстик будет двигаться непрерывно в какую-нибудь сторону. Так, что этот интервал придётся подобрать самостоятельно.

Теперь если положение выше центрального, то уменьшаем его с шагом 1, а если ниже, то увеличиваем.
Отправляем значение на сервомотор и он перемещает свой вал в эту позицию. Это небольшая пауза, что бы мотор успел переместиться. Чем меньше это значение, тем быстрее и более плавно будет двигаться мотор, но тяжелее остановить в определённом месте. Он будет его проскакивать.

Ось Y мы рассматривать не будем, здесь всё тоже самое что и по оси х. Единственное что центр у нас был в позиции 87.

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

Ну я думаю, что всё понятно объяснил. Если нет, то спрашивайте. По возможности отвечу.


 

Беспроводной джойстик от PlayStation + Arduino

Если у вас есть беспроводной джойстик от PlayStation, то вы сможете подключить его к Arduino и управлять своими поделками. Для этого вам не понадобится USB Host. В данной инструкции используется аналог беспроводного джойстика от PS3 купленного на eBay.

Список необходимых компонентов:


1. Беспроводной PS3 джойстик с радиоприемником.
2. Провода 6 шт.
3. Разъёмы.
4. Вилка штыревая.
5. Arduino Uno или Mega.

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

1. Изготовление проводов.

Возьмите провода, я использовал «джамперы» из набора. К одному концу припаяйте разъём, если нет одинарных, тогда отрежьте неиспользуемую часть разъема. Так как контакты в радиомодуле толстые, вам придётся увеличить отверстие в разъеме. Если вы используете простые провода, тогда к другому концу припаяйте штыревую вилку. У вас должен получиться вот такой провод.


Для корректной работы джойстика вам понадобится добавить как минимум два резистора. Это связано с тем, что радиомодуль работает от 3.3В, а рабочее напряжение на пинах Ардуино Уно и Мега 5В. Сам автор библиотеки пишет, что у одних пользователей работает с резисторами, у других без резисторов. В моем случае, ниже указанная схема самая стабильная.

Для пинов Command и Clock добавьте резисторы номиналом 5.6 КОм. Провода будут выглядеть так.


Радиомодуль с подключенными проводами.
2. Подключение радиомодуль к Ардуино:

Распиновка радиомодуля от PS3 джойстика (обозначены только нужные нам пины):


Подключите провода к указанным пинам на приемнике. После этого, подключите приемник к Ардуино по следующей схеме. Пины на Ардуино можно будет изменить в скетче.
Настройка и запуск программы для работы с джойстиком:

1. Скачайте и установите библиотеку PS2X_lib
2. Откройте пример из библиотеки. Если вам нужен пример с комментариями на русском языке скачайте его тут PS2X_Example_RUS
3. Настройте нужные вам пины в скетче.
4. Загрузить скетч на Ардуино.
5. Откройте монитор портов
6. Библиотека не поддерживает подключение на горячую, по этому если радиомодуль не переходит в режим поиска вам нужно: Отключить питание от радиомодуля, затем подключить питание снова снова. При необходимости  перезагрузить ардуино кнопкой ресет.
7. Включите джойстик. Некоторые клоны джойстиков могут не работать или работать не правильно. Возможно вам поможет отключение проверки ошибок. if(error == 1) — Проверка ошибок. Если ваш джойстик обнаруживается как неизвестный контроллер, но на нажатия кнопок не реагирует, попробуйте в скетче закрыть комментариями две строки. Выглядеть это будет примерно так:

// if(error == 1) //Цикл «loop» пропускается если джойстик не найден
// return;

Применение:

Сделал для вас готовую программу для управления машиной с двумя моторами. Но в скетче вам возможно придется поменять некоторые данные, так как подключение моторов может отличаться. Скачать скетч для управление машиной беспроводным джойстиком от PlayStation — RC_PSX_Bot

Видео с демонстрацией управления машинкой при использовании беспроводного джойстика и данного кода.


Оцените Материал!

Понравилась запись? — поставь лайк.


Это может быть вам интересно:

Джойстик управления Arduino (KY-023) — по лучшей цене в интернете

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

Джойстик для Ардуино: распиновка

Прежде чем использовать модуль, следует заранее изучить его технические характеристики и сопоставить их с условиями, предусмотренными проектом. 

  • Требуемое напряжение — 5 В.
  • Возможность поворота ручки — 360 градусов.
  • Размеры — 40*32*26 мм.

Чтобы подключить джойстик в Ардуино, нужно знать особенности его распиновки, что гарантирует качество соединения с элементами проекта и 100% его работы.

  • GND — общий вход, “Земля”.
  • VCC — “+5V”, означает величину питания, которым нужно обеспечить систему.
  • SW —цифровой вход;
  • VRY — выход от потенциометра, отвечающего за движения по оси Y.
  • VRX — аналогично, но по оси X.

Джойстик для Arduino включает в себя два потенциометра, каждый из них рассчитан на 10 кОм. Именно эти приборы определяют положение устройства на оси X и Y, фиксирование сопротивляемости осуществляются рычагом. У потенциометров средний контакт выведен к входам VRY и VRX, а 2 и 3 соединены с массой и электропитанием. Кнопка SW снимает изменяющиеся показания. 

Для тех, кто планирует создание проекта на базе Arduino, аналоговый джойстик может быть также дополнительно оснащен резистором через гнездо R1. То есть, когда джойстик из Arduino подключен правильно, один вывод кнопки SW подключается к земле, поэтому при нажатии на джойстик в какую-либо сторону фиксируется замыкание. Для исключения фальшивых срабатываний и получения только стабильных данных, вывод SW подтягивают к питанию с 5В через резистор R1. Также допускается применение встроенного резистора.

Чтобы получать данные с выводов Y и X KY-023 Arduino, нужно использовать аналоговый порт микропроцессора Ардуино, при этом следует позаботиться о сохранении значения 0-5В или от 0-1023. Когда в работе используется вывод SW, следует сохранять значения 0-5В, то есть чередования 0 и 1. 

Прежде чем использовать KY-023, datasheet обязателен к изучению. Техническая документация на устройство позволит точно определить функционал и сферу применения джойстика.

Джойстик для ПК из Ардуино: область применения

  • Ардуино джойстик и серво — их комплексное применение позволяет варьировать скоростью передвижения элементов в разных плоскостях. Возможности собранной схемы зависят от вида сервопривода.
  • Джойстик Денди Ардуино — позволяет собрать простейший пульт для управления в электронных играх для организации движения вверх/вниз или вправо/влево. 
  • Джойстик и шаговый двигатель Ардуино — применяются для сборки роботизированных устройств и организации движения отдельными элементами конструкций.

Используя Arduino джойстик, двигатель робота или шасси другого функционального устройства становится легко управляемым и более функциональным. Порядок подключения прост и понятен даже начинающему ардуинщику.

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

Итак, чтобы считывать показатели с потенциометров модуля, нужно использовать аналоговые выходы на Arduino A0 и A1, цифровой вывод применяется для считывания значений с кнопки. Таким образом, используя джойстик Ардуино, подключение осуществляется к контактам:

  • 5V;
  • GND;
  • VRY — на A1;
  • VRX —  на A0;
  • SW — на 3.

Если дополнительно используется резистор R1, следует применять размер устройства типа 0805. Далее с KY-023 подключение осуществляется следующим образом:

  • подключаем соединительные провода VRX к порту A0;
  • соединяем VRY с портом A1;
  • SW присоединяем к порту 3.

Затем подключаем питание 5В к выводу 5V, соединяем “Землю” с таким же выходом на микроконтроллере Arduino. Можно вставить джойстик в Arduino Uno, Pro Mini или другую плату, по сложности подходящую к проекту.

Работа с джойстиком Ардуино: пример скетча

Используя джойстик KY-023, пользователю нужно предварительно прописать скетч в среде Arduino IDE. Правильно указанные функции позволят устройству постоянно считывать данные с потенциометров и преобразовывать их в значения напряжения. Принцип считывания следующий:

  • Нажатие кнопок вверх/вниз увеличивает или уменьшает значения X.
  • Перемещение джойстика вправо/влево уменьшает или увеличивает значения по оси Y. 

Есть множество разъяснений по поводу скетча Arduino (примеры), джойстик KY-023 в сети представлен в большом разнообразии. Чаще всего прописание скетча следующее:

  • Указание пинов — VRX, VRY и SW.
  • В блоке Void setup() прописываем выход pinMode (SW, INPUT) и активируем резистор digitalWrite (SW, HIGH). На этом же этапе задается скорость в строке “Serial.begin”.
  • Блок Void loop() необходим для указания переменных показателей для всех портов и данных сбора информации. В таком случае, когда джойстик на Ардуино для ПК работает и устройство движется, все показатели по осям Y и X должны передаваться пользователю.  

Джойстик KY-023: купить в интернет-магазине Ekot

Если вам нужен джойстик Arduino, купить устройство вы можете в режиме онлайн, на данной странице нашего интернет-магазина Ekot.com.ua. Подробное техническое описание и фото гарантируют простоту процесса оформления заказа. Действуют доступные цены, при этом вся продукция поставляется от производителей и их официальных поставщиков напрямую. Кроме того, в других разделах нашего магазина вы сможете подобрать все необходимое для создания функционального проекта. Например, если используйте плату Arduino, джойстик и сервопривод, необходимо собрать робота с колесной или гусеничной базой и т.п. Для удобства весь ассортимент разделен на разделы.

Если прежде, чем джойстик Ардуино купить, вы хотели бы задать вопросы, свяжитесь с нами по указанным телефонам или в режиме онлайн.

Подключение джойстика к аппаратуре через тренерский разъем — Паркфлаер


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

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

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

Суть в том, чтобы объединить их крайние контакты и подключить их к +5в и gnd ардуино, а выходы к а0..а3 соответственно.

Скорее всего, на алате джойстика они будут объединены и так.
отрывать их от платы не надо, это не помешает. нужно просто найти точки соединений и подпаять их к ардуине.
Важно! не перепутайте полярность контактов на джойстике. чтобы это проверить — включите его в комп и проверьте мультиметром.
Если перепутаете, то микросхема джойстика может сгореть.
В моем случае соединение выглядит так:

Еще понадобится миниджек или гнездо, для соединения аккустическим проводом:

На схеме выше видно, какие контакты необходимо задействовать.
Дальше в ардуину надо залить скетч:
(cppm_out.ino)
Для компиляции скетча нужна эта библиотека: http://playground.arduino.cc/Code/Timer1
и соединить пульт с ардуиной по получившемуся миниджеку.

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

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

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

Еще добавлю, что провод до тренерского разъема надо брать мягкий. жесткий отходит.

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

и, напоследок, видео работы этой штуки.

Манипулятор с захватом 2 DOF [База знаний «УмныеЭлементы»]

Описание

Набор предназначен для самостоятельной сборки манипулятора на 2 степени свободы с механическим захватом. Первая степень отвечает за наклон захвата, вторая непосредственно отвечает за работу захвата. С помощью захвата можно перемещать различные предметы. Максимальная рабочая ширина захвата 55 мм. Манипулятор может быть установлен на шасси робота.

Манипулятор приводится в движение с помощью сервоприводов. Всего в данном манипуляторе их используется 2. Чем мощнее сервоприводы, тем больший груз сможет переместить манипулятор. Например, при использовании сервоприводов с крутящим моментом около 10 кг⋅см — грузоподъемность захвата будет около 300 грамм. Мы специально не стали добавлять сервоприводы в данный набор, чтобы каждый смог подобрать их под свои индивидуальные требования.

Для работы с манипулятором подойдут сервоприводы стандартного типоразмера 54х20 мм с 4 посадочными отверстиями 50х10 мм. К таковым относятся MG995, MG996R, S3003, DS04-NFC 360, TD8120 и многие другие. Подбор сервоприводов должен осуществляться на основе необходимых требований к грузоподъемности, причем чем больше рабочее плечо, тем мощнее должен быть сервопривод. Например, для работы захвата может быть использован менее мощный сервопривод, а для его наклона потребуется наоборот более мощный, поскольку рабочее плечо уже будет больше.

Максимальная длина манипулятора составляет 21 см.

Манипулятор выполнен из сплава алюминия с нанесенным защитным покрытием. Общий вес манипулятора без сервоприводов составляет 140 г.

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

Обратите внимание, что при использовании мощных сервоприводов потребуется внешнее питание — подключать все сервоприводы напрямую к контроллеру небезопасно. Требуемая мощность источника тока определяется на основе выбранных вами сервоприводов.

Для управления манипулятором можно использовать любой контроллер, в том числе и Arduino. Для удобства работы с Arduino Uno и Arduino Mega используйте модуль джойстика — с его помощью можно управлять манипулятором вручную. Также вы можете задать программно определенный алгоритм работы манипулятора без ручного управления.

Комплектация

  • комплект деталей для сборки манипулятора x1

  • инструкция по сборке х1

  • пакет упаковочный х1

  • Сервоприводы в комплект не входят.

Ресурсы для загрузки:

Пример работы с манипулятором

Пример №1

Описание: В примере управление сервоприводами манипулятора производится с помощью модуля джойстика. Каждое изменение положения джойстика, влияет на поворот сервопривода.

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

#include <Servo.h> // подключение библиотеки для работы с сервоприводом
 
#define SERVOS_COUNT 2 // количество сервоприводов
 
Servo myservos[SERVOS_COUNT];  // создание объектов для работы с сервоприводами
int servos_pins[SERVOS_COUNT] = {6, 5}; // выводы подключения сервоприводов 
int joy_pins[SERVOS_COUNT] = {A0, A1}; // выводы подключения джойстика
 
void setup() {
 
  for (byte i = 0; i < SERVOS_COUNT; i++) { // цикл по количеству сервоприводов
    myservos[i].attach(servos_pins[i], 500, 2500);  // подключение и инициализация сервоприводов
  }
 
}
 
void loop() {
 
  for (byte i = 0; i < SERVOS_COUNT; i++) { // в цикле:
    int ang = analogRead(joy_pins[i]); // получить текущее значение от джойстика
    ang = map(ang, 0, 1024, 0, 180); // ограничить значение от 0 до 180
    myservos[i].write(ang); // повернуть сервопривод на полученное значение
  }  
 
}

Минусом данного варианта управления джойстиком является то, что когда джойстик возвращается «домой», сервопривод повторяет его движение. Таким образом невозможно зафиксировать положение манипулятора. Исправить эту особенность мы постараемся в примере №2.

Пример №2

Описание: В примере управление сервоприводами манипулятора производится с помощью модуля джойстика. Каждое изменение положения джойстика, влияет на поворот сервопривода, но при этом одно сервопривод фиксируется в определённом положении. Каждое движение джойстика, поворачивает сервопривод на ту или иную позицию.

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

#include <Servo.h> // подключение библиотеки для работы с сервоприводом
 
#define SERVOS_COUNT 2 // количество сервоприводов
 
Servo myservos[SERVOS_COUNT];  // создание объектов для работы с сервоприводами
int servos_pins[SERVOS_COUNT] = {6, 5}; // выводы подключения сервоприводов 
int joy_pins[SERVOS_COUNT] = {A0, A1}; // выводы подключения джойстика
int angs[SERVOS_COUNT] = {90, 90}; // хранение текущих углов поворота
 
void setup() {
 
  Serial.begin(9600); // инициализация сериал порта для вывода отладочной информации
  for (byte i = 0; i < SERVOS_COUNT; i++) { // в цикле
    myservos[i].attach(servos_pins[i], 500, 2500);  // подключение сервопривода
  }
 
}
 
void loop() {
 
  for (byte i = 0; i < SERVOS_COUNT; i++) { // в цикле (по количеству сервоприводов)
 
    int x = analogRead(joy_pins[i]); // получение текущей позиции джойстика
 
    int new_ang = angs[i]; // чтение текущего угла поворота сервопривода
 
    if (x < 100) { // если значение джойстика меньше 100
      new_ang += 1; // увеличить угол на 1 градус
    } else if (x > 924) { // если значение джойстика больше 924
      new_ang -= 1; // уменьшить угол на 1 градус
    } else { // иначе
      continue; // считается что джойстик не двигался
    }
 
    if (i == 0) { // если это первый сервопривод (сам захват) 
      new_ang = constrain(new_ang, 80, 145); // то ограничить угол между 80 и 145 градусами
    } else { // иначе
      new_ang = constrain(new_ang, 0, 180); // ограничить между 0 и 180
    }
 
 
    if (new_ang != angs[i]) { // если новый угол отличается от старого
      angs[i] = new_ang; // зафиксировать новое значение
      Serial.print("New ang joy #"); // вывести отладочную информацию
      Serial.print(i); // вывести отладочную информацию
      Serial.print(" is "); // вывести отладочную информацию
      Serial.println(new_ang); // вывести отладочную информацию
      myservos[i].write(new_ang); // повернуть сервопривод на новый угол
    }    
  }  
}

Как использовать аналоговый джойстик в Arduino


В следующем руководстве вы узнаете о джойстике Arduino. Аналоговый джойстик похож на два потенциометра, соединенных вместе, это может быть очень удобно для ретро игры, управление роботом или радиоуправляемые автомобили. В руководстве содержится основная информация о как работает джойстик Arduino, тогда вы сможете увидеть, как вы можете работать с джойстик, подключенный к Ozeki 10. Во-первых, давайте начнем с основ работы с джойстиком Arduino.

Что такое джойстик Arduino?

Джойстик на картинке — это не что иное, как два потенциометра, которые позволяют нам управлять движение ручки в 2-D. Потенциометры представляют собой переменные резисторы и, в Таким образом, они действуют как датчики, обеспечивая переменное напряжение в зависимости от вращение устройства вокруг вала.

Как работает джойстик Arduino?

Джойстик отправляет два аналоговых значения на плату Arduino.Эти значения представляют собой положение джойстика по осям X и Y от 0 до 1023. Это означает, что когда джойстик находится посередине, эти значения равны 511 511. Если ты повернешься джойстика на горизонтальной линии, значение X изменяется между диапазоном и Значение Y изменяется при повороте джойстика на вертикальной линии.

Как использовать джойстик Arduino?

Для работы с джойстиком Arduino вам необходимо подключить несколько проводов к Arduino. как показано на схеме подключения (Рисунок 1).Контакт GND джойстика должен быть подключенным к земле (Gnd). Вывод + 5V подключается к выводу 5V Arduino. Затем выводы VRx и VRy идут на два аналоговых входа, и, наконец, вывод SW подключает к цифровому входу.

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

Arduino

Рисунок 1 — Схема подключения джойстика Arduino

Как использовать аналоговый джойстик в Ozeki

Подключение аналогового джойстика гарантирует, что все взаимодействия джойстика перенаправляются на выбранное соединение в вашем программном обеспечении Ozeki.Вы можете протестировать свой собственный джойстик через графический интерфейс, как показано в 3-м видео ниже. Большинство аналоговых джойстиков также имеют верхнюю кнопку, которой можно управлять через это соединение. Чтобы использовать джойстик Arduino в Ozeki, вам сначала нужно загрузить Ozeki Robot Developer. Озэки Robot Developer установит библиотеки Arduino, необходимые для эффективного использования этого датчика.

Скачать Ozeki Robot Developer

После того, как разработчик Ozeki Robot будет установлен, вам необходимо загрузить код управления джойстиком. к вашему Arduino.Вы можете найти код и инструкции по загрузке на следующих страницах. Процесс загрузки состоит из двух шагов: сначала вам нужно отформатировать EEPROM Arduino, тогда вам нужно загрузить контрольный код. Процедура очень проста, требуется всего лишь несколько секунд.

Загрузите код джойстика в Arduino Uno
Загрузите код джойстика в Arduino Mega 2560
Загрузите код джойстика в Arduino Nano

Джойстик Arduino и Ozeki будут обмениваться данными через порт USB с использованием протокола Ozeki Joystick.Этот Протокол позволяет вам использовать джойстик прямо на вашем ПК. Вы сможете управлять этим джойстиком через Интернет. пользовательский интерфейс или вы сможете общаться с ним с помощью Ozeki Chat. Вы можете узнать больше об управлении чатом на следующей странице.

Как общаться с джойстиком в чате

Важно понимать управление чатом, потому что когда вы создаете робота, вы хотите управлять этим джойстиком, отправляя и получая сообщения.если ты откройте приложение Ozeki Robot Developer, вы увидите, кому вы можете написать C # .Net программа для работы с этим джойстиком.

Шаги подключения

  1. Следуйте схеме подключения, чтобы подключить джойстик к Arduino
  2. .
  3. Подключите Arduino к компьютеру с помощью USB-кабеля для передачи данных
  4. Проверьте COM-порты в списке устройств Windows
  5. Откройте приложение Arduino на вашем компьютере
  6. Загрузить пример кода в Arduino
  7. Откройте графический интерфейс Ozeki 10 в своем браузере
  8. Выбрать подключение джойстика Arduino
  9. Переместите джойстик и проверьте движения в Ozeki 10

Обзор системы

Предлагаемая нами система состоит из джойстика, подключенного к аналоговому порту. вашего Arduino.Arduino будет отвечать за чтение данных с этого устройства. в реальном времени. Мозг системы будет работать на ПК (рисунок 2). На ПК Озэки 10 смогут управлять общением. Вы можете легко запустить Ozeki 10 с помощью веб-браузера.

Рисунок 2 — Системная конфигурация джойстика, подключенного к ПК с помощью Arduino

Предварительные требования

  • Аналоговый джойстик
  • Резистор 1кОм
  • Ozeki 10 установлен на вашем компьютере
  • Программируемая плата (Arduino Mega / Nano / Uno)
  • Кабель USB между платой и компьютером

Шаг 1. Подключите аналоговый джойстик к Arduino

.

Вы можете увидеть, как подключить аналоговый джойстик на любую из следующих досок:

Ваш браузер не поддерживает видео тег.

После подключения подключите плату к компьютеру!

Шаг 2 — Загрузите код в микроконтроллер

(Вот код для загрузки)

Ваш браузер не поддерживает видео тег.

Шаг 3 — Запустите Ozeki 10, чтобы попробовать джойстик

Ваш браузер не поддерживает видео тег.

Шаг 4 — Настройте джойстик в Ozeki 10

Чтобы настроить джойстик (прикрепленный к вашему Arduino) в Ozeki 10, который установлен на вашем компьютере, вам необходимо открыть графический интерфейс пользователя (GUI) Ozeki 10.Вы можете открыть графический интерфейс, введя URL-адрес компьютера в свой веб-браузер. Например, если у нашего ПК IP-адрес 192.168.1.5, мы бы введите http://192.168.1.5:9513 в наш веб-браузер.

Шаг 5 — Изучите протокол джойстика

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

Ссылки:
https://www.arduino.cc
https://exploreembedded.com

Дополнительная информация


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

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

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

Подключение джойстика к Arduino — относительно простая задача.Обычно джойстики оснащены двумя потенциометрами; один предназначен для вертикального перемещения, а другой — для горизонтального перемещения.

То, что вы будете делать, это добавить 5 вольт питания к одному потенциометру и 0 вольт к оставшемуся потенциометру. Как только это будет сделано, стеклоочиститель примет значение между напряжениями.

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

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

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

  • Первое, что вам нужно сделать, это подключить VCC на модуле джойстика к 5-вольтовому выводу на плате Arduino.
  • После этого вы подключите контакт заземления (GND) на джойстике к контакту заземления (GND), который находится на вашей плате Arduino.
  • Как только это будет сделано, вы продолжите и подключите вывод VER на модуле джойстика к выводу A0 на плате Arduino.
  • Затем вы подключите контакт HOR, имеющийся на модуле джойстика, к A1 на плате Arduino.

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

  • Возьмите черный провод серводвигателя и подключите его к контакту GND на плате Arduino.
  • Затем вы подключите красный провод серводвигателя и подключите его к 5-вольтовому контакту на Arduino.
  • Как только это будет сделано, возьмем желтый провод на первом двигателе и подключим его к контакту 8 на плате Arduino.
  • Затем возьмите желтый провод на втором двигателе и подключите его к контакту 9 на плате Arduino.

Как только это будет сделано, подключите джойстик к плате Arduino.

Соедините компоненты! 🙂

Как управлять джойстиком с помощью Arduino?

Управление джойстиком с помощью платы Arduino — простая задача.Всякий раз, когда ваш модуль джойстика движется в горизонтальном или вертикальном направлении, вы предлагаете значение в диапазоне от 0 до 1023. Таким образом, вы можете применить условие в коде, которое, когда значение меньше 300 или больше 700, тогда ваши сервоприводы сможет двигаться.

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

Как настроить джойстик с Arduino?

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

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

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

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

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

С другой стороны, когда значение для горизонтального направления больше 700, ваш сервопривод пойдет влево. Это будет похоже на вертикальное направление вашего модуля джойстика; когда значение ниже 300, ваш второй сервопривод сможет перемещаться влево, а когда оно больше 700, ваш второй сервопривод будет двигаться вправо.

Окончательный приговор

При настройке джойстика с Arduino первое, что вам нужно будет учесть, это библиотека. Это очень важно, поскольку позволяет откалибровать джойстик Arduino, что позволяет относительно легко определять направления вниз, вверх, вправо и влево. Параметры High, Low и Division определяют, насколько чувствителен ваш код к значению джойстика Arduino.

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

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

joystick_module_for_arduino_sku_dfr0061-DFRobot

  • ДОМ
  • СООБЩЕСТВО
  • ФОРУМ
  • БЛОГ
  • ОБРАЗОВАНИЕ
ДОМ ФОРУМ БЛОГ
  • Контроллер
    • DFR0010 Arduino Nano 328
    • DFR0136 Сервоконтроллер Flyduino-A 12
    • DFR0225 Romeo V2-Все в одном контроллере R3
    • Arduino_Common_Controller_Selection_Guide
  • DFR0182 Беспроводной геймпад V2.0
  • DFR0100 Комплект для начинающих DFRduino для Arduino V3
  • DFR0267 Блуно
  • DFR0282 Жук
  • DFR0283 Мечтатель клен V1.0
  • DFR0296 Блуно Нано
  • DFR0302 MiniQ 2WD Plus
  • DFR0304 Беспроводной геймпад BLE V2
  • DFR0305 RoMeo BLE
  • DFR0351 Romeo BLE mini V2.0
  • DFR0306 Блуно Мега 1280
  • DFR0321 Узел Wido-WIFI IoT
  • DFR0323 Блуно Мега 2560
  • DFR0329 Блуно М3
  • DFR0339 Жук Блуно
  • DFR0343 Контроллер с низким энергопотреблением UHex
  • DFR0355 SIM808 с материнской платой Leonardo
  • DFR0392 DFRduino M0 материнская плата, совместимая с Arduino
  • DFR0398 Контроллер роботов Romeo BLE Quad
  • DFR0416 Bluno M0 Материнская плата
  • DFR0575 Жук ESP32
  • DFR0133 X-Доска
  • DFR0162 X-Board V2
  • DFR0428 3.5-дюймовый сенсорный TFT-экран для Raspberry Pi
  • DFR0494 Raspberry Pi ШАПКА ИБП
  • DFR0514 DFR0603 IIC 16X2 RGB LCD KeyPad HAT V1.0
  • DFR0524 5.5 HDMI OLED-дисплей с емкостным сенсорным экраном V2.0
  • DFR0550 5-дюймовый TFT-дисплей с сенсорным экраном V1.0
  • DFR0591 модуль дисплея raspberry pi e-ink V1.0
  • DFR0592 Драйвер двигателя постоянного тока HAT
  • DFR0604 HAT расширения ввода-вывода для Pi zero V1.0
  • DFR0566 Шляпа расширения ввода-вывода для Raspberry Pi
  • DFR0528 Шляпа ИБП для Raspberry Pi Zero
  • DFR0331 Romeo для контроллера Edison
  • DFR0453 DFRobot CurieNano — мини-плата Genuino Arduino 101
  • TEL0110 CurieCore Intel® Curie Neuron Module
  • DFR0478 Микроконтроллер FireBeetle ESP32 IOT (V3.0) с поддержкой Wi-Fi и Bluetooth
  • DFR0483 FireBeetle Covers-Gravity I O Expansion Shield
  • FireBeetle Covers-24 × 8 светодиодная матрица
  • TEL0121 FireBeetle Covers-LoRa Radio 433 МГц
  • TEL0122 FireBeetle Covers-LoRa Radio 915 МГц
  • TEL0125 FireBeetle охватывает LoRa Radio 868MHz
  • DFR0489 FireBeetle ESP8266 Микроконтроллер IOT
  • DFR0492 FireBeetle Board-328P с BLE4.1
  • DFR0498 FireBeetle Covers-Camera & Audio Media Board
  • DFR0507 FireBeetle Covers-OLED12864 Дисплей
  • DFR0508 FireBeetle Covers-Двигатель постоянного тока и шаговый драйвер
  • DFR0511 FireBeetle Covers-ePaper Черно-белый дисплейный модуль
  • DFR0531 FireBeetle Covers-ePaper Черно-белый и красный дисплейный модуль
  • DFR0536 Плата расширения геймпада с микробитами
  • DFR0548 Плата расширения микробитового драйвера
  • ROB0148 micro: Maqueen для micro: bit
  • ROB0150 Microbit Круглая плата расширения для светодиодов RGB
  • MBT0005 Micro IO-BOX
  • SEN0159 Датчик CO2
  • DFR0049 DFRobot Датчик газа
  • TOY0058 Датчик атмосферного давления
  • SEN0220 Инфракрасный датчик CO2 0-50000ppm
  • SEN0219 Гравитационный аналоговый инфракрасный датчик CO2 для Arduino
  • SEN0226 Датчик барометра Gravity I2C BMP280
  • SEN0231 Датчик гравитации HCHO
  • SEN0251 Gravity BMP280 Датчики атмосферного давления
  • SEN0132 Датчик угарного газа MQ7
  • SEN0032 Трехосный акселерометр — ADXL345
  • DFR0143 Трехосевой акселерометр MMA7361
  • Трехосный акселерометр серии FXLN83XX
  • SEN0072 CMPS09 — Магнитный компас с компенсацией наклона
  • SEN0073 9 степеней свободы — бритва IMU
  • DFR0188 Flymaple V1.1
  • SEN0224 Трехосевой акселерометр Gravity I2C — LIS2DH
  • SEN0140 Датчик IMU с 10 степенями свободы, версия 2.0
  • SEN0250 Gravity BMI160 6-осевой инерционный датчик движения
  • SEN0253 Gravity BNO055 + BMP280 интеллектуальный 10DOF AHRS
  • SEN0001 URM37 V5.0 Ультразвуковой датчик
  • SEN0002 URM04 V2.0
  • SEN0004 SRF01 Ультразвуковой датчик
  • SEN0005 SRF02 Ультразвуковой датчик
  • SEN0006 SRF05 Ультразвуковой датчик
  • SEN0007 SRF08 Ультразвуковой датчик
  • SEN0008 SRF10 Ультразвуковой датчик
  • SEN0149 URM06-RS485 Ультразвуковой
  • SEN0150 URM06-UART Ультразвуковой
  • SEN0151 URM06-PULSE Ультразвуковой
  • SEN0152 URM06-ANALOG Ультразвуковой
  • SEN0153 Ультразвуковой датчик URM07-UART
  • SEN0246 URM08-RS485 Водонепроницаемый гидролокатор-дальномер
  • SEN0304 Ультразвуковой датчик URM09 (Gravity-I2C) (V1.0)
  • SEN0304 Ультразвуковой датчик URM09 (Gravity-I2C) (V1.0)
  • SEN0300 Водонепроницаемый ультразвуковой датчик ULS
  • SEN0301 Водонепроницаемый ультразвуковой датчик ULA
  • SEN0307 URM09 Аналог ультразвукового датчика силы тяжести
  • SEN0311 A02YYUW Водонепроницаемый ультразвуковой датчик
  • SEN0312 ME007YS Водонепроницаемый ультразвуковой датчик
  • SEN0313 A01NYUB Водонепроницаемый ультразвуковой датчик
  • DFR0066 SHT1x Датчик влажности и температуры
  • DFR0067 DHT11 Датчик температуры и влажности
  • SEN0137 DHT22 Модуль температуры и влажности
  • DFR0023 Линейный датчик температуры DFRobot LM35
  • DFR0024 Gravity DS18B20 Датчик температуры, совместимый с Arduino V2
  • DFR0024 Gravity DS18B20 Датчик температуры, совместимый с Arduino V2
  • SEN0114 Датчик влажности
  • Датчик температуры TOY0045 TMP100
  • TOY0054 SI7021 Датчик температуры и влажности
  • SEN0206 Датчик инфракрасного термометра MLX
  • SEN0227 SHT20 Водонепроницаемый датчик температуры и влажности I2C
  • SEN0236 Gravity I2C BME280 Датчик окружающей среды Температура, влажность, барометр
  • SEN0248 Gravity I2C BME680 Датчик окружающей среды VOC, температура, влажность, барометр
  • DFR0558 Цифровой высокотемпературный датчик силы тяжести типа К
  • SEN0308 Водонепроницаемый емкостный датчик влажности почвы
  • SEN0019 Регулируемый переключатель инфракрасного датчика
  • SEN0042 DFRobot Инфракрасный датчик прорыва
  • SEN0143 SHARP GP2Y0A41SK0F ИК-датчик рейнджера 4-30 см
  • SEN0013 Sharp GP2Y0A02YK ИК-датчик рейнджера 150 см
  • SEN0014 Sharp GP2Y0A21 Датчик расстояния 10-80 см
  • SEN0085 Sharp GP2Y0A710K Датчик расстояния 100-550 см
  • Модуль цифрового ИК-приемника DFR0094
  • DFR0095 Модуль цифрового ИК-передатчика
  • SEN0018 Цифровой инфракрасный датчик движения
  • DFR0107 ИК-комплект
  • SEN0264 TS01 ИК-датчик температуры (4-20 мА)
  • SEN0169 Аналоговый pH-метр Pro
  • DFR0300-H Gravity: аналоговый датчик электропроводности (K = 10)
  • DFR0300 Гравитационный аналоговый датчик электропроводности V2 K = 1
  • SEN0165 Аналоговый измеритель ОВП
  • SEN0161-V2 Комплект гравитационного аналогового датчика pH V2
  • SEN0161 PH метр
  • SEN0237 Гравитационный аналоговый датчик растворенного кислорода
  • SEN0204 Бесконтактный датчик уровня жидкости XKC-Y25-T12V
  • SEN0205 Датчик уровня жидкости-FS-IR02
  • SEN0244 Gravity Analog TDS Sensor Meter для Arduino
  • SEN0249 Комплект измерителя pH с аналоговым наконечником копья силы тяжести для применения в почве и пищевых продуктах
  • SEN0121 Датчик пара
  • SEN0097 Датчик освещенности
  • DFR0026 Датчик внешней освещенности DFRobot
  • TOY0044 УФ-датчик
  • SEN0172 LX1972 датчик внешней освещенности
  • SEN0043 TEMT6000 датчик внешней освещенности
  • SEN0175 УФ-датчик v1.0-ML8511
  • SEN0228 Gravity I2C VEML7700 Датчик внешней освещенности
  • SEN0101 Датчик цвета TCS3200
  • DFR0022 Датчик оттенков серого DFRobot
  • Датчик отслеживания линии SEN0017 для Arduino V4
  • SEN0147 Интеллектуальный датчик оттенков серого
  • SEN0212 TCS34725 Датчик цвета I2C для Arduino
  • SEN0245 Gravity VL53L0X Лазерный дальномер ToF
  • SEN0259 TF Mini LiDAR ToF Laser Range Sensor
  • SEN0214 Датчик тока 20A
  • SEN0262 Гравитационный аналоговый преобразователь тока в напряжение для приложений 4 ~ 20 мА
  • SEN0291 Gravity: Цифровой ваттметр I2C
  • DFR0027 Цифровой датчик вибрации DFRobot V2
  • DFR0028 DFRobot Датчик наклона
  • DFR0029 Цифровая кнопка DFRobot
  • DFR0030 DFRobot емкостный датчик касания
  • Модуль цифрового зуммера DFR0032
  • DFR0033 Цифровой магнитный датчик
  • DFR0034 Аналоговый звуковой датчик
  • SEN0038 Колесные энкодеры для DFRobot 3PA и 4WD Rovers
  • DFR0051 Аналоговый делитель напряжения
  • DFR0052 Аналоговый пьезодисковый датчик вибрации
  • DFR0076 Датчик пламени
  • DFR0053 Аналоговый датчик положения ползуна
  • DFR0054 Аналоговый датчик вращения V1
  • DFR0058 Аналоговый датчик вращения V2
  • Модуль джойстика DFR0061 для Arduino
  • DFR0075 AD Клавиатурный модуль
  • Модуль вентилятора DFR0332
  • SEN0177 PM2.5 лазерный датчик пыли
  • Модуль датчика веса SEN0160
  • SEN0170 Тип напряжения датчика скорости ветра 0-5 В
  • TOY0048 Высокоточный двухосевой датчик инклинометра, совместимый с Arduino Gadgeteer
  • SEN0187 RGB и датчик жестов
  • SEN0186 Метеостанция с анемометром Флюгер Дождь ведро
  • SEN0192 Датчик микроволн
  • SEN0185 датчик Холла
  • FIT0449 DFRobot Speaker v1.0
  • Датчик сердечного ритма SEN0203
  • DFR0423 Самоблокирующийся переключатель
  • SEN0213 Датчик монитора сердечного ритма
  • SEN0221 Датчик угла Холла силы тяжести
  • Датчик переключателя проводимости SEN0223
  • SEN0230 Инкрементальный фотоэлектрический датчик угла поворота — 400P R
  • SEN0235 Модуль поворотного энкодера EC11
  • SEN0240 Аналоговый датчик ЭМГ от OYMotion
  • SEN0232 Гравитационный аналоговый измеритель уровня звука
  • SEN0233 Монитор качества воздуха PM 2.5, формальдегид, датчик температуры и влажности
  • DFR0515 FireBeetle Covers-OSD Модуль наложения символов
  • SEN0257 Датчик гравитационного давления воды
  • SEN0289 Gravity: Цифровой датчик встряхивания
  • SEN0290 Gravity: Датчик молнии
  • DFR0271 GMR Плата
  • ROB0003 Pirate 4WD Мобильная платформа
  • Мобильная платформа ROB0005 Turtle 2WD
  • ROB0025 NEW A4WD Мобильный робот с кодировщиком
  • ROB0050 4WD MiniQ Полный комплект
  • ROB0111 4WD MiniQ Cherokey
  • ROB0036 Комплект роботизированной руки с 6 степенями свободы
  • Комплект наклонно-поворотного устройства FIT0045 DF05BB
  • ROB0102 Мобильная платформа Cherokey 4WD
  • ROB0117 Базовый комплект для Cherokey 4WD
  • ROB0022 4WD Мобильная платформа
  • ROB0118 Базовый комплект для Turtle 2WD
  • Робот-комплект ROB0080 Hexapod
  • ROB0112 Мобильная платформа Devastator Tank
  • ROB0114 Мобильная платформа Devastator Tank
  • ROB0124 Мобильная платформа HCR с всенаправленными колесами
  • ROB0128 Devastator Tank Мобильная платформа Металлический мотор-редуктор постоянного тока
  • ROB0137 Explorer MAX Робот
  • ROB0139 Робот FlameWheel
  • DFR0270 Accessory Shield для Arduino
  • DFR0019 Щит для прототипирования для Arduino
  • DFR0265 IO Expansion Shield для Arduino V7
  • DFR0210 Пчелиный щит
  • DFR0165 Mega IO Expansion Shield V2.3
  • DFR0312 Плата расширения Raspberry Pi GPIO
  • DFR0311 Raspberry Pi встречает Arduino Shield
  • DFR0327 Arduino Shield для Raspberry Pi 2B и 3B
  • DFR0371 Экран расширения ввода-вывода для Bluno M3
  • DFR0356 Щит Bluno Beetle
  • DFR0412 Gravity IO Expansion Shield для DFRduino M0
  • DFR0375 Cookie I O Expansion Shield V2
  • DFR0334 GPIO Shield для Arduino V1.0
  • DFR0502 Gravity IO Expansion & Motor Driver Shield V1.1
  • DFR0518 Micro Mate — мини-плата расширения для микробита
  • DFR0578 Gravity I O Expansion Shield для OpenMV Cam M7
  • DFR0577 Gravity I O Expansion Shield для Pyboard
  • DFR0626 MCP23017 Модуль расширения с IIC на 16 цифровых IO
  • DFR0287 LCD12864 Экран
  • DFR0009 Экран ЖК-клавиатуры для Arduino
  • DFR0063 I2C TWI LCD1602 Модуль, совместимый с Gadgeteer
  • Модуль DFR0154 I2C TWI LCD2004, совместимый с Arduino Gadgeteer
  • Светодиодная матрица DFR0202 RGB
  • DFR0090 3-проводной светодиодный модуль
  • TOY0005 OLED 2828 модуль цветного дисплея.Совместимость с NET Gadgeteer
  • Модуль дисплея TOY0006 OLED 9664 RGB
  • Модуль дисплея TOY0007 OLED 2864
  • Модуль дисплея FIT0328 2.7 OLED 12864
  • DFR0091 3-проводной последовательный ЖК-модуль, совместимый с Arduino
  • DFR0347 2.8 TFT Touch Shield с 4 МБ флэш-памяти для Arduino и mbed
  • DFR0348 3.5 TFT Touch Shield с 4 МБ флэш-памяти для Arduino и mbed
  • DFR0374 Экран LCD клавиатуры V2.0
  • DFR0382 Экран со светодиодной клавиатурой V1.0
  • DFR0387 TELEMATICS 3.5 TFT сенсорный ЖК-экран
  • DFR0459 Светодиодная матрица RGB 8×8
  • DFR0460 Светодиодная матрица RGB 64×32 — шаг 4 мм / Гибкая светодиодная матрица 64×32 — Шаг 4 мм / Гибкая светодиодная матрица 64×32 — Шаг 5 мм
  • DFR0461 Гибкая светодиодная матрица 8×8 RGB Gravity
  • DFR0462 Гибкая светодиодная матрица 8×32 RGB Gravity
  • DFR0463 Gravity Гибкая светодиодная матрица 16×16 RGB
  • DFR0471 Светодиодная матрица RGB 32×16 — шаг 6 мм
  • DFR0472 Светодиодная матрица RGB 32×32 — шаг 4 мм
  • DFR0464 Gravity I2C 16×2 ЖК-дисплей Arduino с подсветкой RGB
  • DFR0499 Светодиодная матрица RGB 64×64 — шаг 3 мм
  • DFR0506 7-дюймовый дисплей HDMI с емкостным сенсорным экраном
  • DFR0555 \ DF0556 \ DFR0557 Gravity I2C LCD1602 Модуль ЖК-дисплея Arduino
  • DFR0529 2.2-дюймовый ЖК-дисплей TFT V1.0 (интерфейс SPI)
  • DFR0605 Gravity: Цифровой светодиодный модуль RGB
  • FIT0352 Цифровая светодиодная водонепроницаемая лента с RGB-подсветкой 60LED м * 3 м
  • DFR0645-G DFR0645-R 4-цифровой светодиодный сегментный модуль дисплея
  • Артикул DFR0646-G DFR0646-R 8-цифровой светодиодный сегментный модуль дисплея
  • DFR0597 Гибкая светодиодная матрица RGB 7×71
  • DFR0231 Модуль NFC для Arduino
  • Модуль радиоданных TEL0005 APC220
  • TEL0023 BLUETOOH BEE
  • TEL0026 DF-BluetoothV3 Bluetooth-модуль
  • Модуль беспроводного программирования TEL0037 для Arduino
  • TEL0044 DFRduino GPS Shield-LEA-5H
  • TEL0047 WiFi Shield V2.1 для Arduino
  • TEL0051 GPS GPRS GSM модуль V2.0
  • TEL0067 Wi-Fi Bee V1.0
  • TEL0073 BLE-Link
  • TEL0075 RF Shield 315 МГц
  • TEL0078 WIFI Shield V3 PCB Антенна
  • TEL0079 WIFI Shield V3 RPSMA
  • TEL0084 BLEmicro
  • TEL0086 DF-маяк EVB
  • TEL0087 USBBLE-LINK Bluno Адаптер для беспроводного программирования
  • TEL0080 UHF RFID МОДУЛЬ-USB
  • TEL0081 УВЧ RFID МОДУЛЬ-RS485
  • TEL0082 UHF RFID МОДУЛЬ-UART
  • TEL0083-A GPS-приемник для Arduino Model A
  • TEL0092 WiFi Bee-ESP8266 Wirelss модуль
  • Модуль GPS TEL0094 с корпусом
  • TEL0097 SIM808 GPS GPRS GSM Shield
  • DFR0342 W5500 Ethernet с материнской платой POE
  • DFR0015 Xbee Shield для Arduino без Xbee
  • TEL0107 WiFiBee-MT7681 Беспроводное программирование Arduino WiFi
  • TEL0089 SIM800C GSM GPRS Shield V2.0
  • Модуль приемника RF TEL0112 Gravity 315MHZ
  • TEL0113 Gravity UART A6 GSM и GPRS модуль
  • TEL0118 Gravity UART OBLOQ IoT-модуль
  • Модуль TEL0120 DFRobot BLE4.1
  • Bluetooth-адаптер TEL0002
  • TEL0108 Модуль аудиоприемника Bluetooth
  • TEL0124 SIM7600CE-T 4G (LTE) Shield V1.0
  • DFR0505 SIM7000C Arduino NB-IoT LTE GPRS Expansion Shield
  • DFR0013 IIC для GPIO Shield V2.0
  • Плата привода двигателя датчика DFR0057 — Версия 2.2
  • DFR0062 Адаптер WiiChuck
  • DFR0233 Узел датчика RS485 V1.0
  • DFR0259 Arduino RS485 щит
  • DFR0370 Экран CAN-BUS V2
  • DFR0627 IIC для двойного модуля UART
  • TEL0070 Multi USB RS232 RS485 TTL преобразователь
  • DFR0064 386AMP модуль аудиоусилителя
  • DFR0273 Экран синтеза речи
  • DFR0299 DFPlayer Mini
  • TOY0008 DFRduino Плеер MP3
  • SEN0197 Диктофон-ISD1820
  • DFR0420 Аудиозащитный экран для DFRduino M0
  • DFR0534 Голосовой модуль
  • SD2403 Модуль часов реального времени SKU TOY0020
  • TOY0021 SD2405 Модуль часов реального времени
  • DFR0151 Модуль Gravity I2C DS1307 RTC
  • DFR0469 Модуль Gravity I2C SD2405 RTC
  • DFR0316 MCP3424 18-битный канал АЦП-4 с усилителем с программируемым усилением
  • DFR0552 Gravity 12-битный модуль I2C DAC
  • DFR0553 Gravity I2C ADS1115 16-битный модуль АЦП, совместимый с Arduino и Raspberry Pi
  • DFR0117 Модуль хранения данных Gravity I2C EEPROM
  • Модуль SD DFR0071
  • Плата привода двигателя датчика DFR0057 — Версия 2.2
  • DFR0360 XSP — Программист Arduino
  • DFR0411 Двигатель постоянного тока Gravity 130
  • DFR0438 Яркий светодиодный модуль
  • DFR0439 Светодиодные гирлянды красочные
  • DFR0440 Модуль микровибрации
  • DFR0448 Светодиодные гирлянды, теплый белый цвет
  • Встроенный термопринтер DFR0503 — последовательный TTL
  • DFR0504 Гравитационный изолятор аналогового сигнала
  • DFR0520 Двойной цифровой потенциометр 100K
  • DFR0565 Гравитационный цифровой изолятор сигналов
  • DFR0563 Гравитация 3.Датчик уровня топлива литиевой батареи 7V
  • DFR0576 Гравитационный цифровой мультиплексор I2C с 1 по 8
  • DFR0117 Модуль хранения данных Gravity I2C EEPROM
  • DRI0001 Моторный щит Arduino L293
  • DRI0002 MD1.3 2A Двухмоторный контроллер
  • DRI0009 Моторный щит Arduino L298N
  • DRI0021 Драйвер двигателя постоянного тока Veyron 2x25A Brush
  • DRI0017 2A Моторный щит для Arduino Twin
  • Драйвер двигателя постоянного тока DRI0018 2x15A Lite
  • Микродвигатель постоянного тока FIT0450 с энкодером-SJ01
  • FIT0458 Микродвигатель постоянного тока с энкодером-SJ02
  • DFR0399 Микро-металлический мотор-редуктор постоянного тока 75 1 Вт Драйвер
  • DRI0039 Quad Motor Driver Shield для Arduino
  • DRI0040 Двойной 1.Драйвер двигателя 5A — HR8833
  • DRI0044 2×1.2A Драйвер двигателя постоянного тока TB6612FNG
  • Драйвер двигателя постоянного тока DFR0513 PPM 2x3A
  • DFR0523 Гравитационный цифровой перистальтический насос
  • DRI0027 Digital Servo Shield для Arduino
  • DRI0029 Сервопривод Veyron, 24 канала
  • SER0044 DSS-M15S 270 ° 15KG Металлический сервопривод DF с аналоговой обратной связью
  • DRI0023 Экран шагового двигателя для Arduino DRV8825
  • DRI0035 TMC260 Щиток драйвера шагового двигателя
  • DFR0105 Силовой щит
  • DFR0205 Силовой модуль
  • DFR0457 Контроллер мощности Gravity MOSFET
  • DFR0564 Зарядное устройство USB для 7.Литий-полимерная батарея 4 В
  • DFR0535 Менеджер солнечной энергии
  • DFR0559 Солнечная система управления мощностью 5 В для подсолнечника
  • DFR0559 Менеджер солнечной энергии 5 В
  • DFR0580 Solar Power Manager для свинцово-кислотных аккумуляторов 12 В
  • DFR0222 Реле X-Board
  • Релейный модуль DFR0017, совместимый с Arduino
  • DFR0289 Релейный контроллер RLY-8-POE
  • DFR0290 RLY-8-RS485 8-релейный контроллер
  • DFR0144 Релейный экран для Arduino V2.1
  • DFR0473 Gravity Digital Relay Module Совместимость с Arduino и Raspberry Pi
  • KIT0003 EcoDuino — Комплект для автомобильных заводов
  • KIT0071 MiniQ Discovery Kit
  • KIT0098 Пакет компонентов подключаемого модуля Breadboard
  • Артикул DFR0748 Цветок Китти
  • SEN0305 Гравитация: HUSKYLENS — простой в использовании датчик машинного зрения AI
  • Подключение датчика к Raspberry Pi
  • DFR0677 ШЛЯПА ONPOWER UPS для Raspberry Pi
    Интерфейс управления серводвигателем на основе джойстика

    с использованием Arduino

    Модуль джойстика для Arduino: Это руководство посвящено управлению сервомотором на основе джойстика.В этом руководстве по управлению серводвигателем на основе джойстика мы сначала узнаем, как использовать модуль джойстика и как взаимодействовать с ним с Arduino, а затем мы увидим пример управления серводвигателем на основе джойстика с использованием двух серводвигателей. Модуль джойстика — самый простой в использовании модуль, который добавляет большую гибкость вашим проектам. Его можно использовать со многими микроконтроллерами, но мы используем Arduino . Аналоговые джойстики возвращают аналоговые значения. Это в основном потенциометры.Эти значения варьируются от 0 до 1023. Когда джойстик находится в положении покоя, аналоговое значение будет 512. Аналоговые выводы Arduino будут считывать данные с горизонтальных и вертикальных выводов, а цифровой вывод будет использоваться для чтения кнопки. . Модуль джойстика имеет 5 контактов:

    • Напряжение питания (VCC)
    • Земля
    • Клавиша X (горизонтальная клавиша).
    • Клавиша Y (вертикальная клавиша)

    Также имеется кнопка «нажать для выбора», которую можно активировать, нажав джойстик вниз.Они могут отличаться для вашего модуля в зависимости от того, где вы его покупаете. Джойстик, который мы используем, является аналоговым, и он обеспечивает более точные показания, чем простые направленные джойстики. Чтобы разработать проект управления серводвигателем на основе джойстика, вы должны знать, как использовать модуль джойстика и как взаимодействовать с серводвигателем с Arduino. Вы также можете проверить:

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

    Схема подключения очень проста. Подключите Arduino 5 v к VCC джойстика.Затем подключите A0 и A1 к VER и HOR джойстика. В последнем подключите контакт 2 Arduino к SEL джойстика и GND Arduino к GND джойстика.

    Джойстик Arduino

    A0 VER

    A1 HOR

    Контакт 2 SEL

    GND GND

    Код интерфейса джойстика с Arduino

    // Код для модуля джойстика

    910 A1 // инициализация A1 для хранения значения ключа x джойстика int y_key = A0; // инициализация A0 для хранения значения клавиши y джойстика int Push_Button = 2; // инициализируем цифровой контакт 2 для нажатия кнопки выбора джойстика int Horizontal_Position = 0; // Объявление переменной для хранения значения int y_Position = 0; // Объявление переменной для хранения значения int button_State = 0; // Объявление переменной для хранения значения void setup () { Серийный.begin (9600); // инициализация последовательной связи со скоростью 9600 бит / с: pinMode (x_key, ВХОД); // Выбор аналогового вывода A1 Arduino в качестве входа pinMode (y_key, ВХОД); // Выбор аналогового вывода A0 Arduino в качестве входа pinMode (Push_Button, INPUT_PULLUP); // Это активирует подтягивающий резистор на выводе кнопки // Если у вас есть версия Arduino до Arduino 1.0.1, используйте эти команды для активации подтягивающего резистора.// pinMode (button_Pin, INPUT); // digitalWrite (button_Pin, HIGH); } void loop () { Horizontal_Position = аналоговое чтение (x_key); // Считываем значение из A1 и сохраняем в Horizontal_Position y_Position = analogRead (y_key); // Считываем значение из A0 и сохраняем в y_Position button_State = digitalRead (Push_Button); // Чтение цифрового вывода 2 высокое или низкое Serial.print («Значение ключа X равно»); // Вывод на дисплей «Значение ключа X» Серийный.печать (Горизонтальное положение); // Вывод значения клавиши x на дисплей Serial.print («| Значение ключа Y равно»); // Вывод на экран «Значение клавиши Y» Serial.print (y_Position); // Вывод значения клавиши y на дисплей Serial.print («| Состояние кнопки равно»); // Вывод «состояния кнопки» на дисплей Serial.println (button_State); // Печать кнопки высоко или низко на дисплее задержка (1000); // Это добавит задержку между чтениями }

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

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

    и фактическая реализация показаны выше и ниже.Для управления серводвигателем на основе джойстика вам необходимо знать, как взаимодействовать серводвигатель с Arduino, если вы не знаете, я рекомендую вам сначала проверить следующую статью:

    Итак, теперь мы увидим, как мы можем управлять двумя серводвигателями с помощью помощь модуля джойстика. Мы используем два серводвигателя. Одним серводвигателем можно управлять с помощью оси x модуля джойстика, а другим серводвигателем можно управлять с помощью оси Y модуля джойстика. В этом примере мы будем управлять двумя серводвигателями с помощью джойстика.Этот пример используется во многих проектах, таких как игровые контроллеры и игрушечные машинки с электроникой.

    Компоненты, необходимые для управления серводвигателем с помощью джойстика

    Необходимые компоненты:

    • 2 сервопривода
    • Джойстик
    • Arduino uno (вы можете использовать любой)
    • Макет

    Серводвигатель имеет три соединения которые

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

    Код управления серводвигателем на основе джойстика

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

     // Управление 2 сервоприводами с помощью джойстика.
    
    #include  // включая библиотеку серводвигателя
    
    int First_Signal_Pin = 6; // инициализируем вывод 6 для первого сервопривода
    
    int Second_Signal_Pin = 7; // инициализируем вывод 7 для первого сервопривода
    
    int Horizontal_Joystick_Pin = A0; // инициализация A0 для горизонтального движения
    
    int Vertical_Joystick_Pin = A1; // инициализация A1 для вертикального движения
    
    // инициализация минимального и максимального значений для горизонтального и вертикального движения
    
    int Horizontal_Min = 0;
    
    int Horizontal_Max = 180;
    
    int Vertical_Min = 0;
    
    int Vertical_Max = 180;
    
    Сервопривод First_Servo;
    
    Servo Second_Servo;
    
    // Объявление переменных для хранения значений
    
    int Horizontal_Value;
    
    int Horizontal_Servo_Value;
    
    int Vertical_Value;
    
    int Vertical_Servo_Value;
    
    void  setup  ()
    
    {
    
    First_Servo.прикрепить (First_Signal_Pin); // Включение вывода 6 для первого сервопривода
    
    Second_Servo.attach (Second_Signal_Pin); // Включение вывода 7 для первого сервопривода
    
    }
    
    пустота  петля  ()
    
    {
    
    Horizontal_Value = analogRead (Horizonta_Joystick_Pin); // Считываем значение из A0
    
    Vertical_Value = analogRead (Vertical_Joystick_Pin); // Считываем значение из A1
    
    // Отображение значений для горизонтального и вертикального движения джойстика.
    
    Horizontal_Servo_Value = карта (Horizontal_Value, 0, 1023, ServoH_Min, ServoH_Max);
    
    Vertical_Servo_Value = карта (Vertical_Value, 0, 1023, ServoH_Min, ServoH_Max);
    
    // Перемещение сервоприводов
    
    First_Servo.написать (Horizontal_Servo_Value);
    
    Second_Servo.write (Vertical_Servo_Value);
    
    задержка (2000); // Задержка 2 секунды
    
    } 

    Как видите, очень легко использовать джойстик с кодом управления Arduino и серводвигателем и принципиальной схемой с использованием Arduino uno R3.

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

    Для демонстрации посмотрите видео

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

    Распиновка модуля джойстика, особенности, схема Arduino и техническое описание

    Конфигурация контактов

    Контактный №

    Имя контакта

    Описание

    1

    Земля

    Клемма заземления модуля

    2

    + 5в

    Положительный вывод питания модуля

    3

    VRx

    Напряжение пропорционально оси X

    4

    VRy

    Напряжение пропорционально оси Y

    5

    SW

    Переключатель

    Характеристики
    • Два независимых потенциометра: по одному для каждой оси (X и Y)
    • Автоматический возврат в центральное положение
    • Малый вес
    • Ручка чашечного типа
    • Совместимость с Arduino или большинством микроконтроллеров

    Технические характеристики
    • Рабочее напряжение: 5 В
    • Значение внутреннего потенциометра: 10к
    • 2.54-миллиметровые интерфейсные выводы
    • Размеры: 1,57 дюйма x 1,02 дюйма x 1,26 дюйма (4,0 см x 2,6 см x 3,2 см)
    • Рабочая температура: от 0 до 70 ° C

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

    Внутренняя структура

    На изображении ниже представлена ​​внутренняя схема модуля джойстика .Он состоит из двух потенциометров, каждый для одной оси (X и Y). Оба потенциометра 10 кОм могут двигаться в своем конкретном направлении независимо друг от друга. Контакт SW (переключатель) внутренне подключен к кнопке.

    Где используются джойстики?

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

    Как пользоваться джойстиком?

    Мы можем использовать модуль джойстика с Arduino, Raspberry Pi и любыми другими микроконтроллерами. Нам просто нужно подключить выводы оси VRx и VRy к выводам АЦП микроконтроллера. Если вы хотите использовать переключатель, подключите его к цифровому контакту микроконтроллера.Следуйте приведенной ниже блок-схеме для соединения модуля джойстика с микроконтроллером .

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

    После подключения модуля джойстика к Arduino мы получим аналоговый выход. Диапазон вывода фиксирован для каждого направления.На изображении ниже показано значение аналогового выхода для осей X и Y, основанное на движении модуля джойстика во всех четырех направлениях (+ X, -X, + Y, -Y). Вы также получите некоторое аналоговое значение при перемещении ручки по диагонали.

    Заявка
    • Управление панорамированием / наклоном камеры
    • Игровой ввод / управление
    • Управление роботом
    • Аналоговый ввод параметров
    • Широко используется в проектах DIY

    2D-модель

    Управление скоростью двигателя с помощью джойстика с драйвером двигателя L298N, взаимодействующим с Arduino Uno — KT882

    ВВЕДЕНИЕ:

    L298N — это высоковольтный, сильноточный двойной полномостовой драйвер, предназначенный для приема стандартных логических уровней TTL и управления индуктивными нагрузками такие как реле, соленоиды, двигатели постоянного тока и шаговые двигатели.Предусмотрены два входа включения для включения или отключения устройства независимо от входного сигнала

    Arduino IDE (программируемая платформа для Arduino)

    Ссылка для загрузки программного обеспечения: https://www.arduino.cc/en/Main/Software

    МОДУЛЬ ДЖОЙСТИКА
    • Интерфейс Grove
    • Совместимость с 5 В / 3,3 В
    • Аналоговый выход

    МОДУЛЬ ДРАЙВЕРА ДВИГАТЕЛЯ L298N
    • Драйвер: L298N
    • Драйвер питания: + 5V ~ + 46 Io: 2A
    • Выходная логическая мощность Vss: + 5 ~ + 7 В (внутреннее питание + 5 В)
    • Логический ток: 0 ~ 36 мА
    • Уровень управления: низкий -0.3 В ~ 1,5 В, высокий: 2,3 В ~ Vss
    • Уровень сигнала включения: низкий -0,3 ~ 1,5 В, высокий: 2,3 В ~ Vss
    • Максимальная мощность: 25 Вт (температура 75 Цельсия)
    • Рабочая температура: -25 ° C ~ + 130C
    • Размер: 60 мм * 54 мм
    • Вес драйвера: ~ 48 г
    • Другие удлинители: датчик тока, индикатор направления управления, переключатель подтягивающего резистора, источник питания логической части.

    МОДУЛЬ ДЖОЙСТИКА

    L298N МОДУЛЬ ДРАЙВЕРА ДВИГАТЕЛЯ

    ВЫХОД 1

    010 Вывод двигателя

    O1075 для двигателя A4 2

    Вывод двигателя A (отрицательный / для выхода двигателя A)

    OUT 3

    Вывод вывода двигателя B (положительный / для выхода двигателя B)

    OUT 4

    Выход вывода двигателя B (отрицательный / для выхода двигателя A)

    12 В

    Вход 12 В от источника постоянного тока (перемычка 12 В — удалите это, если используется напряжение питания более 12 В постоянного тока.Это включает питание встроенного регулятора 5 В).

    GND

    Земля (заземляет вход и замыкает цепь)

    5 В

    Вход 5 В (не требуется, если у вас источник питания 7–35 В, если источник питания 7–35 В) -35 В, затем он может действовать как выход 5 В)

    ENA

    Включает сигнал ШИМ (для включения выхода двигателя A)

    IN1

    Контакты включения двигателя A (логический Порты управления направлением двигателя)

    IN2

    Включить двигатель A (логические выводы для портов управления направлением двигателя)

    IN3

    Включить двигатель B (выводы управления направлением двигателя для )

    IN4

    Включить двигатель B (логические выводы для портов управления направлением двигателя)

    EN B

    Включает сигнал ШИМ (для включения выхода двигателя A)

    L298N Модуль драйвера двигателя Библиотека.Щелкните здесь, чтобы загрузить библиотеку: https://github.com/yohendry/arduino_L298N


    • Сначала мы подключаем модуль джойстика к Arduino Uno.
    • Подключите GND джойстика к GND Arduino, вывод 5V модуля джойстика подключается к выводу Arduino 5V, вывод VRx джойстика подключается к аналоговому выводу A0 Arduino Uno, а вывод VRy модуля джойстика к аналоговому выводу A1 Arduino Uno. Сначала мы подключаем модуль джойстика с Arduino Uno.
    • Теперь мы подключаем драйвер двигателя L298N к Arduino Uno.Подключите два двигателя постоянного тока к выходу двигателя A и выходу двигателя B, как показано на схеме подключения.
    • Подключите вывод 9 Arduino к контакту ENA, контакт 8 к IN1, контакт 7 к IN2, контакт 5 к IN3, контакт 4 к IN4 и контакт 3 к ENB модуля драйвера двигателя L298N.

    Теперь подключите питание к приводу двигателя L298N. Подключите контактный вход питания драйвера к контакту Arduino Uno 5V, подключите контакт GND модуля драйвера двигателя L298N к заземлению батареи и заземлению Arduino Uno. Подключите выход 5 В к внешнему источнику питания (аккумуляторному источнику питания).

    Щелкните здесь, чтобы увидеть код: https://docs.google.com/document/d/e/2PACX-1vR2gMfDKQws9y9LavsyRdGsnuz2_Ko0J8XDTSaOrqayIn6FuCJNr25dLcDTSaOrqayIn6FuCJNr25dLcDOrqayIn6FuCJNr25dLcDOrqayIn6FuCJNr25dLcDoVtUMEQ1 Модуль драйвера, модуль джойстика и двигатели постоянного тока. В этом проекте мы использовали модуль драйвера двигателя L298N для подключения двигателей, а также для управления направлением двигателей с помощью модуля джойстика.

    Модуль драйвера двигателя L298N позволяет с легкостью управлять скоростью и направлением двух двигателей постоянного тока или одним биполярным шаговым двигателем.Модуль H-моста L298N может использоваться с двигателями, имеющими напряжение от 5 до 35 В постоянного тока (источник питания).

    Также имеется встроенный стабилизатор 5 В, поэтому, если у вас напряжение питания до 12 В, вы также можете подавать 5 В с платы.

    Модуль джойстика позволяет одному двигателю двигаться вперед и назад по одной оси. Здесь мы заставим оба двигателя работать одновременно, но не вперед и назад по каждой оси. Таким образом, благодаря функциональности как модуля драйвера двигателя L298N, так и модуля джойстика, мы можем управлять двумя двигателями постоянного тока одновременно.

    Gary’s MicroPanoply — Джойстик Arduino

    Адаптер USB-джойстика Arduino на 4 канала

    Спасибо за покупку!

    1: Подключите адаптер к приемнику, а адаптер к компьютеру. Уведомление об установке драйверов может / должно появиться и произойти автоматически, как при первом подключении любого USB-устройства к вашему ПК.

    • Канал 1: белый / красный / черный, как обычно

    • Канал 2: белый (в положении «сигнал», тот же ряд, что и белый, от канала 1)

    • Канал 3: красный (в Положение контакта «сигнал», тот же ряд, что и белый из канала 1)

    • Канал 4: Черный (в положении контакта «сигнал», тот же ряд, что и белый из канала 1)

    2: Настройка передатчика

    I рекомендую использовать новую модель в вашем передатчике, со всеми настройками по умолчанию для начала.Таким образом, параметры обрезки и экспоненциального увеличения не мешают настройке. Убедитесь, что в вашем EPA установлено значение 100% (или 150% на некоторых радиостанциях), чтобы обеспечить полный диапазон сигнала ШИМ адаптеру и ПК при калибровке.

    3: Калибровка

    Самый простой способ добраться до калибровки и убедиться, что она работает, — это запустить игру VRC. В игре VRC выберите Параметры> Параметры управления> Калибровка, и вы выйдете из игры в диалоговое окно калибровки USB-контроллера. Вы также можете ввести «контроллер» или «игровой USB-контроллер» в поиске Windows, выбрать «Настроить USB-контроллер», выбрать контроллер Arduino Micro (или Leonardo), затем «Свойства»> «Настройки»> «Калибровать» и следовать инструкциям по калибровке контроллера. .

    4: Настройка

    Вы можете перейти в меню «Параметры»> «Параметры управления»> «Настроить» и установить команды «Маршал поворота» и «Яма / дозаправка», щелкнув эти команды в меню с помощью мыши, одновременно нажимая кнопку / переключатель на радио.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *