|
Робот футболист
Статьи публикуются по мере поступления. Для упорядоченного тематического
поиска воспользуйтесь блоком "Карта сайта"
Футбольный робот может двигаться вперед, назад, вперед-влево, вперед-вправо, назад-влево и назад-вправо с помощью телефона Android. Скорость его движения регулируется углом поворота телефона. Робот также бьет по мячу при встряхивании телефона. Ниже показана схема футбольного робота. Схема построена на плате Arduino UNO (BOARD1), серводвигателе (подключенном к CON5), модуле Bluetooth JY MCU BT, драйвере двигателя L293D (IC1) и двух двигателях постоянного тока (M1 и M2).
Схема футбольного робота
В схеме используются две батареи по 9 В; один для платы Arduino (BOARD1), а другой для двигателей постоянного тока. Регулируемое питание 5 В для остальной части схемы обеспечивается самой платой Arduino. Светодиод на BOARD1 указывает на наличие источника питания. Все новые смартфоны содержат датчик акселерометра. Телефон с акселерометром может определять угол, под которым его держат. Он также может обнаруживать вращение и жесты движения, такие как раскачивание, тряска и взмахи. Акселерометр может определить, стоит ли телефон вертикально или боком, и соответственно автоматически поворачивать графику на экране. Еще одно распространенное использование - управление играми и другими приложениями (например, музыкальный проигрыватель) путем перемещения или встряхивания телефона. Когда телефон поворачивается в разные стороны, значения x, y, z датчика акселерометра меняются. Приложение для Android для этого проекта отправляет эти значения x, y, z роботу через Bluetooth.
Модуль Bluetooth
В этом проекте используется модуль Bluetooth JY MCU BT, который можно подключить к любому устройству через встроенный интерфейс UART. Он может связываться с другими устройствами с поддержкой Bluetooth, такими как мобильные телефоны, карманные компьютеры и ноутбуки. Модуль работает от питания от 3,6 до 6 В. Серводвигатель используется для удара по мячу в этом проекте. Сервоприводы чрезвычайно полезны в робототехнике. Моторы маленькие, но чрезвычайно мощные для своего размера. Серводвигатель в основном состоит из двигателя постоянного тока, системы передач, датчика положения (который обычно представляет собой потенциометр) и управляющей электроники, как показано на рис.
Компоненты серводвигателя
Двигатель постоянного тока соединен с зубчатым механизмом, который обеспечивает обратную связь с датчиком положения. Потенциометр позволяет схеме управления контролировать текущий угол серводвигателя. Если вал находится под правильным углом, двигатель отключается. Если схема обнаруживает, что угол неправильный, она оставляет двигатель включенным до тех пор, пока угол не будет исправлен. Обычный сервопривод используется для управления угловым перемещением до 180 градусов. сервоприводы не могут вращаться дальше из-за механического упора, встроенного в главную выходную шестерню.
Положения сервоприводов
Контрольный провод используется для сообщения угла. Угол определяется длительностью импульса, подаваемого на провод управления. Это называется импульсной модуляцией. Сервопривод ожидает увидеть импульс каждые 20 миллисекунд. Длина импульса определяет, как далеко вращается двигатель. Например, 1,5-миллисекундный импульс может повернуть двигатель в положение на 90 градусов (часто называемое нейтральным положением). Если импульс короче 1,5 миллисекунд, двигатель будет меньше вращаться. Если импульс длится более 1,5 миллисекунд, вал повернется на 180 градусов, как показано выше. Рычаг сервомотора соединяется с металлической или деревянной деталью, так что рычаг сервомотора действует как ножка для удара по мячу.
Arduino - это платформа для создания прототипов электроники с открытым исходным кодом, основанная на гибком, простом в использовании аппаратном и программном обеспечении. Он предназначен для художников, дизайнеров, любителей и всех, кто интересуется созданием интерактивных объектов или сред. Arduino UNO - это плата на базе микроконтроллера ATmega328. Он состоит из 14 контактов цифрового ввода / вывода, шести аналоговых входов, USB-разъема для программирования встроенного микроконтроллера, разъема питания, заголовка внутрисхемного последовательного программирования (ICSP) и кнопки сброса. Плата работает с кварцевым генератором 16 МГц и содержит все необходимое для поддержки микроконтроллера. Его очень легко использовать, поскольку пользователю просто нужно подключить его к компьютеру с помощью USB-кабеля или подключить к нему адаптер переменного тока в постоянный или аккумулятор, чтобы начать работу. Микроконтроллер на плате программируется с использованием языка программирования Arduino и среды разработки Arduino. Контакты 8 и 9 платы BOARD1 подключены к контактам Tx и Rx модуля Bluetooth соответственно. Контакт 10 соединен с ИМПУЛЬСНЫМ контактом серводвигателя для управления углом движения. Контакты 2-7 платы BOARD1 являются выходными контактами, которые подключены к IC1 для управления двигателями. Контакты 2, 3 и 4 платы BOARD1 подключены к IN3, EN2 и IN4 IC1 для управления двигателем M1, а контакты 5, 6 и 7 подключены к IN1, EN1 и IN2 IC1 для управления двигателем M2. EN1 и EN2 используются для управления скоростью двигателей. Приложение отправляет измеренные данные с акселерометра телефона на робота через Bluetooth. Данные, передаваемые телефоном, принимаются модулем Bluetooth на роботе. Полученные данные поступают на вывод 8 платы BOARD1. Микроконтроллер на BOARD1 обрабатывает полученные данные и соответственно управляет двигателями. Робот также отправляет обратно статус. В приложении вы можете увидеть метку с названием «Статус робота», под которой вы можете увидеть направление, в котором движется робот, а также статус удара. Программное обеспечение (soccer.ino) для футбольного робота написано на языке программирования Arduino. Arduino UNO программируется с использованием программного обеспечения Arduino IDE. Atmega328 на Arduino UNO поставляется с загрузчиком, который позволяет загружать в него новый код без использования внешнего аппаратного программатора. Обменивается данными по протоколу STK500. Вы также можете обойти загрузчик и запрограммировать микроконтроллер через заголовок ICSP, но программирование загрузчика выполняется быстро и легко. Выберите правильную плату в меню «Инструменты → Плата» в Arduino IDE и запишите программу (скетч) через стандартный USB-порт компьютера. Измените удар и исходное положение (в градусах) ноги футбольного робота в исходной программе в соответствии с вашим механическим расположением ноги в роботе, как показано ниже:
Int kick = 50
Int neutral = 170
Процедура установки приложения Android на телефон выглядит следующим образом: Загрузите приложение SoccerRobot.apk и скопируйте его на свой Android-смартфон или планшет. Запустите файл, и он попросит вас «завершить действие с помощью», нажмите «установщик пакета», а затем нажмите «установить». Обратите внимание, что вам также необходимо изменить скорость передачи модуля Bluetooth на роботе на 57600 с помощью AT-команды, если она еще не установлена.
Скачать исходный код: нажмите здесь
Односторонняя печатная плата футбольного робота и схема ее компонентов показаны ниже. Соберите схему на рекомендованной печатной плате, чтобы сэкономить время и минимизировать ошибки сборки. Используйте базу IC для драйвера двигателя IC1.
Выполните следующие действия, чтобы запустить робота в первый раз:
1. Включите питание робота, подключив батареи.
2. Выполните сопряжение модуля Bluetooth с телефоном Android. Во время сопряжения он спросит у вас пароль; введите «1234», который является паролем по умолчанию для модуля Bluetooth.
3. Запустите в телефоне уже установленное приложение.
4. Нажмите «ВЫБРАТЬ» (убедитесь, что Bluetooth включен), затем выберите модуль Bluetooth из списка просканированных устройств Bluetooth и нажмите «ПОДКЛЮЧИТЬ». Подключение займет 5-10 секунд. После подключения он уведомит вас о том, что Bluetooth подключен. Пришло время поиграть в футбол через свой телефон.
5. Вы можете управлять роботом, вращая телефон; «Вперед», «Назад», «Влево», «Вправо» и «Стоп».
6. Ударьте по мячу, встряхивая телефон.
Чтобы проверить правильность работы цепи, проверьте правильность подачи 5 В для цепи на TP1 по отношению к TP0. Также проверьте питание 9 В для двигателей на TP2. Данные, переданные по Bluetooth, можно наблюдать на TP3. Управляющие импульсы для серводвигателя можно увидеть на TP4.