Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

Содержание

Подключения сервопривода к Arduino и управление им с помощью потенциометра.

2015-11-24

Всі статті →

Автор Андрей Чепурко [email protected]

Детали, требуемые для сборки:

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

Итак, приступим.

Для начала берем наш breadboard, потенциометр и провода. Как мы видим на картинке, потенциометр имеет три вывода, к которым мы присоединяем провода следующим образом: красный провод – к выводу 5V, черный к выводу GND, а синий – к выводу А0 . Обратные концы проводом присоединяем к макетной плате таким же образом.

5V иGND будут обеспечивать питание, а через выход А0 значения поворота потенциометра будут поступать на нашу плату. Напомним, гнезда-контакты на макетной плате размещены следующим образом:

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

Теперь пришло время для сервопривода. Он также имеет 3 вывода: черный – это минус питания, красный – плюс питания, и третий вывод, в данном примере – белого цвета, который мы подключаем на любой PWM(ШИМ) вывод Ардуино. В нашем случае мы подключим его к 11 выводу на плате. Таким образом, наше “создание” будет выглядеть примерно так:

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

Скачиваем по этой ссылке и кидаем ее в папку libraries:

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

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

Дякуємо Вам за звернення! Ваш відгук з'явиться після модерації адміністратором.

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

Железо

Содержание1 Кому это будет полезно?2 Как делается резервная копия роутера3 Получение пароля для доступа

Железо

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

Железо

В небольшой фирме для удобства документооборота, взаимодействия и предоставления доступа в сеть Интернет практически

Железо

Технология (протокол связи) Zigbee регламентируется стандартом IEEE 802.15.4 предназначен для обеспечения беспроводной связи между

Железо

Содержание1 А как быть с готовыми изделиями?2 Заказ плат на аутсорсе3 А как же

СРОЧНЫЙ РЕМОНТ ТЕЛЕФОНОВ В ВОЛЖСКОМ Сложно вообразить современного человека, который выходит из дома, не

Плоттер на GRBL + arduino nano + cnc shield v4 + servo (sg-90) Помогите

sergeyvoronkov
Загрузка

20.02.2019

5751

Вопросы и ответы Собираю плоттер по схеме h-bot (core xy) на комплектующих GRBL + arduino nano + cnc shield v4 + servo (sg-90) . В прошивке поменял пины для драйверов - двигатели вращаются, все хорошо.

НО! Как управлять сервоприводом через порт я не понимаю, хоть убей. Если кто-то работал с этим, прошу ответ (и желательно фаил с корректированной прошивкой)

Ответы на вопросы

Популярные вопросы

Zheka1980
Загрузка

09.05.2021

1405

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

А то...

Читать дальше alex9111
Загрузка

19.05.2021

667

Мужики помогите кто нибудь решить проблему, в чём дело??? Начинает печатать нормально, потом как с ума сходит, точками серет , сопло чистое, поток по...

Читать дальше Alex-S
Загрузка

22.02.2018

17257

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

Пр...

Читать дальше

Как использовать серводвигатель в Arduino


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

Что такое серводвигатель?

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

Как работает серводвигатель?

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

Как использовать серводвигатель Arduino?

Серводвигатели имеют три провода: питание, заземление и сигнал. Провод питания обычно красный, и должен быть подключен к выводу 5V на плате Arduino. Земля провод обычно черный или коричневый и должен быть подключен к контакту заземления на Плата Arduino. Сигнальный контакт обычно бывает желтого, оранжевого или белого цвета и должен быть подключен к цифровому выводу на плате Arduino. Обратите внимание, что сервоприводы потребляют значительные мощность, поэтому, если вам нужно проехать более одного или двух, вам, вероятно, понадобится питание их из отдельного источника (т.е. а не вывод + 5V на вашем Arduino). Будь уверен соедините вместе земли Arduino и внешнего источника питания.

Схема подключения серводвигателя

Arduino

Рисунок 1 - Схема подключения серводвигателя Arduino

Как использовать серводвигатель Arduino в Ozeki

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

Скачать Ozeki Robot Developer

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

Загрузите код серводвигателя в Arduino Uno
Загрузите код серводвигателя в Arduino Mega 2560
Загрузите код серводвигателя в Arduino Nano
Загрузите код серводвигателя в Ozeki Matrix

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

Как общаться с серводвигателем с помощью чата

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

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

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

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

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

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

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

  • От 1 до 6 серводвигателей (например, SG90, MG996R или SM-S8330M)
  • Ozeki 10 установлен на вашем компьютере
  • Программируемая плата (Arduino Mega / Nano / Uno или сервомодуль Ozeki)
  • 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://en.wikipedia.org
https://www.arduino.cc

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


Управляйте сервоприводом с помощью телефона с помощью Bluetooth! - Maker Challenge

Итоги конкурса Maker Challenge

Bluetooth везде - от смартфонов до компьютеров и автомобилей.Несмотря на то, что учащиеся знакомятся с этой технологией, многие не знают, как сами могут использовать ее для беспроводного управления своими творческими проектами! Выполняя эту задачу, учащиеся работают в процессе инженерного проектирования, опираясь на то, что они узнали во время предыдущей задачи производителя Arduino, «Создание сервопривода и управление им с помощью компьютера», и узнают, как управлять сервоприводом с помощью телефона Android (iPhone делают не работать с компонентами, используемыми в этой задаче). Ожидайте, что к концу упражнения ученики будут управлять сервоприводом по беспроводной сети с помощью простого телефонного приложения!

Материалы и принадлежности для производителей

  • компьютер, Windows или Mac
  • Программное обеспечение
  • Arduino; скачать с https: // www.arduino.cc/en/main/software
  • SparkFun RedBoard или Arduino Uno микроконтроллер и кабель для программирования; рекомендуется комплект Arduino Inventor’s Kit (некоторые из его многочисленных компонентов перечислены ниже), например, за 99 долларов в SparkFun
  • макеты
  • 180-градусные сервоприводы; один поставляется с рекомендованным выше набором Arduino Inventor's Kit - обычным сервоприводом субмикро-размера за 9 долларов от SparkFun или приобретите сервоприводы более высокого качества, такие как Hitec HS-422 стандартного размера за 10 долларов от SparkFun
  • .
  • перемычки
  • аккумулятор 9В, например за 1 доллар.95 в SparkFun
  • 9В соединительный провод
  • Sparkfun Bluetooth Mate Silver, доступный по цене 24,95 долларов в SparkFun; или SparkFun Bluetooth Mate Gold, доступный за 34,95 доллара в SparkFun
  • Телефон Android
  • ; примечание: iPhone не будет работать с Bluetooth Mate для этого упражнения
  • Приложение
  • Bluetooth SPP или приложение Bluetooth SPP Pro от Джерри Ли в магазине Google Play; конкретное приложение зависит от используемого телефона

Рабочие листы и приложения

Посетите [www.teachengineering.org/makerchallenges/view/cub-2217-servo-bluetooth-phone-arduino-wireless], чтобы распечатать или загрузить.

Больше подобной учебной программы

Введение в Arduino: подключение и мигающие светодиоды

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

Средняя школа Maker Challenge

Беспроводное управление освещением и двигателями с помощью связи XBee!

Студенты узнают, как отправлять сигналы (например, от кнопок или датчиков) из одной системы в другую с помощью модулей радиосвязи XBee.К концу деятельности они могут управлять светодиодами и двигателями по беспроводной сети с помощью микроконтроллеров Arduino и экранов XBee. Представляет концепцию Интернета тонких ...

Средняя школа Maker Challenge

Подать мяч

Заранее: Присвоение имен модулям Bluetooth займет немного времени, поэтому сделайте это заранее.В качестве альтернативы, добавьте в упражнение расширенную концепцию (и ~ 60 минут), попросив учащихся настроить свои собственные модули Bluetooth. Следуйте инструкциям по подключению Bluetooth , чтобы дать каждому Bluetooth Mate уникальное имя и PIN-код (личный идентификационный номер). Без уникального имени и PIN-кода может быть сложно определить, какой Bluetooth Mate какой. Поскольку это легко забыть, прикрепите к каждому Mate небольшую этикетку с его именем и PIN-кодом. Путеводитель насыщен информацией; инструкции по присвоению имен и настройке выводов можно найти в разделе «Пример кода - Использование командного режима ».

Только для настройки: Подключите контакты 2 и 3 Arduino к контактам TX-RX вашего модуля Bluetooth. Сделайте это только в эскизе; во время упражнения учащиеся подключают контакты 0 и 1 Arduino к контактам TX-RX.

Подсказка для учеников: Удалось ли вам управлять сервоприводом с помощью компьютера? Большой! Теперь давайте поднимем это понимание на новый уровень и будем управлять сервоприводом по беспроводной сети ! Харальд Блютуз был легендарным королем Скандинавии, объединившим Данию с Норвегией.Bluetooth - технология - объединяет разрозненные технологии, такие как подключение мобильного телефона к автомобилю или компьютеру. С помощью обычного канала связи - Bluetooth - мы можем использовать последовательную связь для управления сервоприводом по беспроводной сети.

Ресурсы

Maker Time

Задача производителя заключается в подключении модулей Bluetooth. Настоятельно рекомендуется выполнить и / или просмотреть задание «Создание сервопривода и управление им с помощью производителя компьютера», прежде чем приступать к выполнению этого задания.Студенты часто обнаруживают, что аспект Bluetooth относительно прост, в то время как понимание последовательного интерфейса намного сложнее!

Первым шагом в этой задаче производителя является загрузка кода, который управляет сервоприводом из последовательного монитора на Arduino из предыдущего задания. Этот код с несколькими важными поправками - это все, что нужно, чтобы «отрезать шнур» от проекта сервоуправления и перейти к использованию беспроводного Bluetooth.

Когда ученики запускают код и управляют сервоприводом, следующим шагом является подключение Bluetooth.Основная проблема на этом этапе заключается в том, что TX переходит на RX, а RX на TX . Поначалу это кажется немного странным, но главное - думать об этом как о телефоне - ваш голос идет в динамик - чтобы придать ему смысл. Vcc Bluetooth подключен к 5 В Uno, а земля Bluetooth должна быть подключена к земле Arduino. Ниже приводится краткое описание проводки:

  • TX (Bluetooth) на RX (Arduino)
  • от RX (Bluetooth) до TX (Arduino)
  • Vcc (Bluetooth) на 5 В (Arduino)
  • GND (Bluetooth) на GND (Arduino)

После подключения модуля Bluetooth единственное изменение кода:

Серийный.begin (9600) измените на Serial.begin (115200).

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

НО, если вы попытаетесь загрузить этот код с Bluetooth, подключенным к контактам RX и TX Arduino, код не загрузится! Это связано с тем, что последовательная связь по этим контактам конфликтует с последовательной связью от платы к компьютеру.Чтобы загрузить эскиз с изменениями, самое простое решение - отключить контакты TX и RX непосредственно перед загрузкой, а затем снова подключить их после завершения загрузки. Код показан на рисунке 1.

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

Рисунок 1. Последовательный сервокод.

После загрузки программы повторно подключите TX и RX и убедитесь, что телефон сопряжен с соответствующим модулем Bluetooth.Для подключения к телефону Android выполните следующие действия:

  1. Включите модуль Bluetooth и перейдите в настройки на устройстве Android.
  2. Выполните сопряжение устройства. На некоторых телефонах этот шаг необходимо выполнить дважды, чтобы телефон смог выполнить сопряжение. Убедитесь, что у вас под рукой PIN-коды (по умолчанию для большинства Bluetooth Mates - «1234»)> включите питание обоих устройств> найдите модуль в приложении Android «Настройки» в разделе Bluetooth> отключите Uno от компьютера> Подключите Uno к батарее / адаптеру 9 В.
  3. После сопряжения устройства с телефоном откройте приложение Bluetooth SPP.
  4. Используйте меню, чтобы подключиться к и найти правильное имя устройства .
  5. Откройте «Режим реального времени» или «Режим байтового потока» (точный текст зависит от типа телефона).

Как только устройство подключено в этом режиме, телефон теперь действует как последовательный монитор, позволяя студентам управлять сервоприводом с помощью телефона!

Самая сложная часть этой задачи - это соединение. После подключения телефона и управления сервоприводом вызов следующего уровня включает:

  1. Проверить диапазон модуля.
  2. Программа «Режим клавиатуры». Подсказка: Назначьте символы клавиатуры и получите эти символы с помощью команды Serial.read ().
  3. Измените программу включения и выключения светодиода. ИЛИ измените яркость светодиода.
  4. Advanced: Создайте многосуставной палец, управляемый леской.

Заворачивать

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

Как бы вы использовали этот проект в качестве трамплина для управления чем-то важным для вас? Не могли бы вы сделать блокировку Bluetooth? Как можно сделать автомобиль-робот с управлением по Bluetooth? Какие еще у вас есть идеи?

Советы

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

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

  • Убедитесь, что телефон сопряжен. Часто это необходимо сделать дважды , когда телефон впервые сопрягается с модулями Bluetooth.
  • Убедитесь, что учащиеся изменили скорость передачи в коде Arduino на 115200 и загрузили код .
  • Помните, что код не загружается, если TX-RX подключен, поэтому удалите провода TX-RX во время загрузки, а затем снова подключите эти провода!
  • Убедитесь, что вы подключены к правильному Mate.Иногда, если это задание выполняется несколько раз, ученики по ошибке подключаются к партнеру в классе.

Несмотря на все самые лучшие намерения, студенты часто по-прежнему подключают TX-TX и RX-RX. Чтобы помочь диагностировать эти проблемы, лучше всего использовать для соединений два провода разного цвета.

Если сервопривод реагирует медленно, просмотрите ссылку на команду Serial.setTimeout (), указанную в разделе "Ресурсы".

Авторские права

© 2017 Регенты Университета Колорадо

Авторы

Дэниел Годрик

Программа поддержки

Программа ITL, Колледж инженерии и прикладных наук, Университет Колорадо в Боулдере

Благодарности

Это задание было разработано в рамках Интегрированной программы преподавания и обучения Колледжа инженерии и прикладных наук Университета Колорадо в Боулдере.

Особая благодарность Якову Сегилу и SparkFun Education.

Последнее изменение: 30 апреля 2021 г.

BlueCArd - часть 8 - управление серводвигателем из Arduino Nano с помощью устройства Android

Как подключить серводвигатель к микроконтроллеру Arduino Nano и как управлять им с устройства Android с помощью Bluetooth Low Energy (BLE).

Подключите серводвигатель к Arduino и управляйте им удаленно с устройства Android

Это руководство является частью серии руководств BlueCArd, посвященных созданию радиоуправляемой машины на базе BlueCArd на базе Arduino, управляемой с телефона Android через Bluetooth.

В этом руководстве я объясню, что такое серводвигатель и как подключить его к микроконтроллеру Arduino. Я также покажу вам, как управлять им удаленно с Android-устройства.

Это последний учебник по электронике BlueCArd.

Используйте плату из последнего руководства: Использование H-моста для управления двигателем постоянного тока от Arduino Nano

Это короткое видео о серводвигателе в действии:

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

Что такое серводвигатель?


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

Я использовал этот сервомотор для BlueCArd:

Он дешевый, прочный и простой в использовании.

Серводвигатель имеет три кабеля.

Электропитание - GND и VCC. Серводвигатель имеет очень высокий ток остановки. DC DC Boost Converter не может обеспечить требуемый ток холостого хода, поэтому мы не можем использовать его здесь.

Хорошая новость в том, что для этого двигателя требуется входное напряжение от 3,5 до 6 В. Это означает, что мы можем подключить его напрямую к аккумуляторной батарее (3x1,2V = 3.6V)

Третий кабель для управления. Я использовал для этого штифт D12 .

Хотя серводвигатель управляется ШИМ, ему не нужен вывод ШИМ. Библиотека сервоприводов заботится об управлении.

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

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

Для управления серводвигателем мы будем использовать класс Servo из библиотеки сервоприводов Arduino « Servo.h ".

Предупреждение: у этой библиотеки есть проблема с программным последовательным интерфейсом, который мы используем для связи Bluetooth. Он будет работать, но серводвигатель будет вздрагивать каждый раз при отправке данных. Мы можем избежать этого, используя библиотеку PWM (например, PWMServo), который использует выводы PWM вместо прерываний. Использование такое же, вам нужно только изменить Servo.h на PWMServo.h и класс Servo на PWMServo . с PWMServo можно использовать только контакты PWM (на Nano это контакты D9 и D10 ).

Вы можете загрузить библиотеку PWMServo с GitHub: https://github.com/PaulStoffregen/PWMServo

Таким образом, сервопривод инициализируется.

Серводвигатель управляется методом записи (угол байта) . Где угол в градусах и между 0 и 180 .

Мы отправим с Android правильное значение, поэтому все, что нам нужно сделать в скетче Arduino, - это передать это значение сервоприводу .write (angle) метод.

Сторона Android

Это элемент управления в приложении для Android:

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

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

90 градуса прямо (положение по умолчанию), поэтому ширина /2 должна быть 90 .

Мы хотим повернуть на +/- 70 градуса. Из этого 0 должно быть -70 и ширина должно быть 70 :

Используя рулевое управление сверху, мы фактически почти всегда изменяем скорость и рулевое управление одновременно. Это означает, что рекомендуется отправлять обе команды вместе. Для этого в контроллере я написал метод steer () с двумя переменными для скорости и поворота влево / вправо:

На этом управление BlueCArd завершено.

Еще одна вещь, которую нужно сделать, - это отключить двигатели / свет при потере соединения Bluetooth. Для этого мы можем использовать контакт STATE на модуле Bluetooth и отслеживать, когда он переходит от 1 до 0, или мы можем отправить сигнал пульса от Android, и если мы не получим его в течение некоторого времени, предположим, что соединение потеряно.

Я реализовал второй вариант, потому что купил устройство BLE с неработающим контактом STATE.

Вот серводвигатель в действии:

На этом электроника и программное обеспечение для автомобиля BlueCArd RC закончены.

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

Исходный код для скетча Arduino и приложения для Android можно скачать с Github здесь:

https: // github .com / nenovmy / ardcar

Следующие шаги

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

Хэштеги : #arduino #arduinonano #android #rccar # 3dprinting # 3dprinted #androidrc #arduinorc #servo #servomotor

Предыдущая: BlueCArd, часть 7 - использование H-моста для управления двигателем постоянного тока от Arduino 9000 Nano Далее: BlueCArd, часть 9 - полное руководство по печати и сборке

Учебное пособие: серводвигатель

Хорошо - приступим!

В этом руководстве вы подключите простой и дешевый серводвигатель к Arduino Mega 2560.

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

Вы сконфигурируете серводвигатель с помощью MobiFlight Connector таким образом, чтобы текущее положение двигателя было синхронизировано с текущим положением закрылков в вашем авиасимуляторе. Для этого вы будете использовать соответствующее смещение FSUIPC.

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

Обучение занимает около 10 минут.

Это то, что вам нужно для обучения

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

  • Текущая версия MobiFlight Connector (мин. 6.0.0)
  • Arduino Mega 2560 с поддержкой прошивки MobiFlight - или, скажем, плата MobiFlight 🙂
  • Серводвигатель 5 В с поворотом на 180 ° от области модели RC.Если вы будете искать на eBay «микро серводвигатель», скорее всего, вы найдете те же самые, что и у меня, по очень низкой цене.

Серводвигатель можно подключить напрямую к контактам вашего Arduino Mega:

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

  • красный - Подача напряжения 5 В через контакт на вашем Arduino Mega (например, поверх контакта 22)
  • черный - соединение GND
  • желтый - линия управления, которая может быть любым цифровым выводом вашего Arduino, на картинке это pin2

Я рекомендую использовать выводы 2-12 с поддержкой ШИМ - возможно, я смогу оптимизировать управление через эти выводы в будущем.Однако в настоящее время это не имеет никакого значения - вы можете использовать любой из цифровых выводов PWM или нет.

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

После запуска MobiFlight Connector вы увидите обзор вашей текущей конфигурации. В этом примере он пуст, потому что еще ничего не было определено.

Теперь вы открываете диалоговое окно настроек, потому что сначала вам нужно настроить MobiFlight.Вы должны указать, к какому выводу подключен ваш сервопривод.

Следовательно, выберите «Дополнения»> «Настройки»> «Модули MobiFlight» - вкладка

.

Выберите желаемую доску MobiFlight в дереве слева.

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

Теперь к вашей плате MobiFlight на базе Arduino добавлен серводвигатель.

В правой части вкладки вы теперь предоставляете некоторую дополнительную информацию - она ​​различается для разных типов устройств.

Для серводвигателя доступны следующие варианты:

  • DIN line - линия управления
  • Имя - метка устройства. Эта метка появляется позже в других диалоговых окнах конфигурации и позволяет легко отличить ее от других устройств.

В этом руководстве вы используете контакт 2 для линии управления и «Сервопривод» в качестве метки.

Не хватает одного шага: необходимо загрузить обновленную конфигурацию на выбранную плату.Нажмите кнопку загрузки на панели инструментов. Кнопка первая.

Появится сообщение об успешной загрузке. Теперь ваш MobiFlight перезапускается и знает, что подключено новое устройство и что это серводвигатель.

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

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

Сначала вы назначаете имя в поле «Описание». В этом уроке это «Положение закрылков».

Щелкните по кнопке «...» в конце ряда. Появится мастер настройки.

Выберите правильную предустановку FSUIPC, в этом случае мы берем «Закрылки - Положение 1» в качестве хорошей отправной точки.

Нажмите кнопку «ОК» рядом с раскрывающимся списком.

Теперь все настройки автоматически устанавливаются за вас со значениями из предустановки. Легко, да?

Перейдите на вкладку «Сравнить» и снимите флажок, потому что в этом случае нам не нужно никакого сравнения, поскольку все значения используются для управления вашим сервоприводом.(Предустановка предназначалась для использования со светодиодом).

Теперь перейдите на вкладку «Отображение».

В разделе «Тип дисплея» выберите из списка правильную доску MobiFlight.

В следующем раскрывающемся списке «Тип использования» выберите «Сервопривод».

Раздел «Параметры отображения» обновляется автоматически.

Выберите «Сервопривод» - элемент в раскрывающемся списке «Сервопривод».

Нажмите кнопку "Тест". Серводвигатель теперь должен вращаться до максимального отклонения 180 градусов.

При желании вы можете уменьшить величину полного вращения, отрегулировав значение «Макс. Вращение». Чем меньше значение, тем меньше вращается сервопривод. Это имеет смысл, если вы не хотите использовать полные 180 градусов или если вы хотите предотвратить слишком сильный поворот сервопривода и странные шумы. Попробуйте свои настройки, нажав кнопку тестирования.

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

Если сервопривод движется, как ожидалось, нажмите кнопку остановки еще раз.

Установите мин. Значение до нуля - это наименьшее значение, которое смещение FSUIPC удерживает для закрылков.

Установите Макс. Значение до 16383 - это наибольшее значение, которое имеет смещение FSUIPC для закрылков.

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

.

Закройте диалоговое окно ConfigWizard, нажав кнопку OK.

Активируйте новую добавленную строку конфигурации, установив флажок перед ней.

Запустите свой любимый авиасимулятор, например FSX.

Загрузите свой рейс.

Подождите, пока установится соединение FSUIPC. На это указывает значок состояния FSUIPC в строке состояния.

Запустите MobiFlight Connector, нажав кнопку «Пуск» на главной панели инструментов.

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

Ваш сервопривод должен двигаться соответственно.

Поздравляем !!!

За пару минут и несколько простых шагов вам удалось построить индикатор закрылков. О да, это было легко!

Пожалуйста, дайте нам знать, как это руководство подействовало на вас на форумах, и расскажите нам больше о том, что вы создаете с помощью MobiFlight!

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

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

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

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

Вы могли встретить джойстик или аналоговый джойстик в качестве устройства игрового контроллера. Джойстик (иногда также называемый джойстиком) - это устройство ввода, а аналоговый джойстик - это тип джойстика, который обеспечивает двумерный ввод.

ПРИМЕЧАНИЕ: В остальной части обсуждения проекта используется только термин «Джойстик».

Типичный модуль джойстика показан на следующем рисунке.

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

Компоненты джойстика

На следующем рисунке показаны внутренние компоненты типичного аналогового джойстика.Есть два потенциометра по 10 кОм каждый, а также есть переключатель, который можно активировать, нажав ручку вниз.

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

Контакты джойстика

Типичный модуль джойстика состоит из 5 контактов на своей плате. Это:

Здесь должны быть подключены контакты + 5V и GND, а также + 5V и GND источника питания (вы можете подключить их к соответствующим контактам на Arduino).VRx и VRy - это клеммы Wiper двух потенциометров.

Наконец, SW - это один конец переключателя, где другой его вывод подключен к GND (на плате джойстика).

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

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

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

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

Принципиальная схема

На следующем рисунке показано простое соединение между Arduino UNO и модулем джойстика.

Код
Схема и работа

Я думаю, что конструкция схемы очень ясна.Поскольку контакты VRx и VRy являются контактами стеклоочистителя потенциометров, они должны быть подключены к контактам аналогового входа Arduino UNO (поскольку они дают нам аналоговое напряжение).

Контакт переключателя, с другой стороны, подключен к контакту 2 цифрового ввода / вывода с внутренним подтягиванием (реализуется посредством кода).

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

Поскольку вход аналоговый, и мы конвертируем его в цифровые значения, выход джойстика по оси X и оси Y будет в диапазоне 0-1023.

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

Связанное сообщение: СЕРВОМОТОР ARDUINO

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

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

Это означает, что вы получаете два разных источника аналоговых входов и один цифровой вход. Используя аналоговые входы, то есть движения джойстика по осям X и Y, вы можете управлять различными устройствами, такими как серводвигатель, например, а с помощью цифрового входа (переключателя) вы можете управлять светодиодом, то есть включать или выключать его.

Принципиальная схема

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

Код
Схема и работа

Подключения по отношению к модулю джойстика такие же, то есть + 5V и GND к + 5V и GND Arduino, VRx и VRy к A0 и A1 (аналоговые входы 0 и 1 ) и вывод SW к цифровому выводу 2.

Что касается серводвигателей, их провода + V (красный) и GND (коричневый) подключены к + 5V и GND (предпочтительно к другому источнику питания 5V с общим GND с Arduino). Управляющие провода (желтый или оранжевый) серводвигателей подключены к контактам 10 и 11 цифрового ввода / вывода.

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

В моем случае значения холостого хода джойстика составляют 510 для оси X и 530 для оси Y. Имея это в виду, я написал код таким образом, что, когда значение потенциометра оси X падает ниже 300, положение сервопривода X уменьшается на 5 от его текущего положения, и если значение потенциометра оси X становится больше чем 700, положение сервопривода X увеличивается на 5 от его текущего положения.

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

Приложения

Джойстик может использоваться в различных приложениях, таких как

  • Управление двигателями постоянного тока и сервомоторами
  • Управление светодиодами
  • Дистанционно управляемыми автомобилями
  • Роботизированное управление

Управление сервоприводами с помощью Arduino

Дом Учебники Ардуино Управление сервоприводами с помощью Arduino

Создано: 10 сентября 2012 г.

Arduino упрощает подключение и управление сервоприводом RC-хобби.Между платой Arduino и сервоприводом необходимо подключить всего три провода.

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

Эскизы Arduino

В этом руководстве используются два эскиза из примеров, встроенных в IDE Arduino.Первый набросок "развертки" вращает вал сервопривода от 0 до 180 градусов и обратно. Второй эскиз «ручка» позволяет использовать потенциометр для вращения сервопривода.

На этом видео показаны два эскиза в действии:

Сервопривод

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

Вы можете помочь сайту Starting Electronics, сделав пожертвование:

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


Схема

Подключите красный провод от сервопривода к 5 В на Arduino, а коричневый провод от сервопривода к GND на Arduino. Оранжевый провод от сервопривода должен быть подключен к цифровому выводу 9 Arduino в этом руководстве.

При запуске эскиза ручки потенциометр подключается к среднему выводу, подключенному к аналоговому выводу A0 Arduino. Один из внешних контактов потенциометра подключен к 5V, а другой к GND.

Эскизы

После подключения сервопривода к Arduino загрузите встроенный скетч Sweep на плату Arduino. Эскиз можно найти в среде Arduino IDE в меню File → Примеры → Servo → Sweep

.

С сервоприводом и потенциометром, подключенными к Arduino, эскиз ручки можно загрузить в Arduino. Этот эскиз можно найти в среде Arduino IDE в меню File → Примеры → Servo → Knob

.

Как использовать серводвигатель

Серводвигатели

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

Обычно у них есть сервомеханизм, который может поворачиваться на 180 градусов. Используя Arduino, мы можем сказать сервоприводу перейти в указанную позицию, и он пойдет туда. Так просто, как, что!

Серводвигатели

были впервые использованы в мире дистанционного управления (RC), обычно для управления рулевым управлением радиоуправляемых машин или закрылками на радиоуправляемом самолете. Со временем они нашли свое применение в робототехнике, автоматизации и, конечно же, в мире Arduino.

Компоненты:

  • Arduino Uno
  • Серводвигатель
  • Подключение товаров

Подключения:

  • Подключите черный провод от сервопривода к контакту GND на Arduino
  • .
  • Подключите красный провод сервопривода к контакту + 5V на Arduino
  • .
  • Подключите желтый или белый провод сервопривода к цифровому выводу на Arduino
  • .

Пример кода:

 #include <Серво.h>

Сервомашина; // создаем сервообъект для управления сервоприводом


void setup () {

myservo.attach (9); // присоединяет сервопривод на выводе 9 к сервообъекту

}

void loop () {

  myservo.write (180); // идет от 0 градусов до 180 градусов

  задержка (15); // ждем 15 мс, пока сервопривод достигнет позиции

  myservo.write (180); // идет от 180 градусов до 0 градусов

  задержка (15); // ждем 15 мс, пока сервопривод достигнет позиции

} 

Теперь напишите предварительный код, который будет непрерывно вращаться от 0 до 180 градусов,

 #include <Серво.h>

Сервомашина; // создаем сервообъект для управления сервоприводом
int pos = 0; // переменная для хранения положения сервопривода

void setup () {

myservo.attach (9); // присоединяет сервопривод на выводе 9 к сервообъекту

}

void loop () {

for (pos = 0; pos <= 180; pos + = 1) {// изменяется от 0 до 180 градусов

myservo.write (pos); // сообщаем сервоприводу перейти в позицию в переменной 'pos'
задержка (15); // ждем 15 мс, пока сервопривод достигнет позиции

}

for (pos = 180; pos> = 0; pos - = 1) {// изменяется от 180 градусов до 0 градусов

мой резервуар.написать (pos); // сообщаем сервоприводу перейти в позицию в переменной 'pos'
задержка (15); // ждем 15 мс, пока сервопривод достигнет позиции

}

} 

 myservo.attach (9); 

Прикрепите серво-переменную к штифту. Обратите внимание, что в Arduino 0016 и ранее библиотека сервоприводов поддерживает только сервоприводы только на двух контактах: 9 и 10.

Синтаксис

сервопривод . Присоединение (штифт)
сервопривод .прикрепить (штифт, мин., макс.)

Параметры
Сервопривод

: переменная типа Сервопривод

штифт: номер штифта, к которому сервопривод прикреплен

мин (необязательно): ширина импульса в микросекундах, соответствующая минимальному (0 градусов) углу сервопривода (по умолчанию 544)

макс (необязательно): ширина импульса в микросекундах, соответствующая максимальному (180 градусов) углу сервопривода (по умолчанию 2400)

 myservo.		

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

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