Этот робот управляется Bluetooth смартфона. Акселерометр смартфона измеряет угол наклона телефона влево/вправо, вверх/вниз, использует эти данные для вычисления скорости двигателей направления, данные передает через Bluetooth к Arduino
Что понадобится для сборки робота.
Arduino uno, HC-06 Bluetooth Module, два редукторных мотора 300 RPM 12v, Н-мост L298N Dual H Bridge Motor Controller
12 в 1.3 А свинцовый кислотные аккумулятор. Каждый двигатель потребляет 0.4А, плюс еще потребление логики драйверов . Arduino провода, обычные 9в батареи и разъем для соединения батареи к Arduino. Электрические провода для соединения драйверов электродвигателей. Usb кабель. Телефон с версией Android 4 и выше. 4 поворотных 50мм резиновых колеса от Screwfix или ToolstationДве Lynxmotion HUB-02 универсальные ступицы.
Необходимые части
Корпус собирается из пластика длинной 22 и шириной 17см. Два двигателя должны быть подсоединены к валу и зафиксированы резьбовым штифтом.
Передние колеса.
Резина снимается с роликов и в них сверлятся два отверстия в соответствии с отверстиями на ступицах. Ступицы закрепляются на осях, проходящих через корпус, резьбовыми штифтами. После этого на ступицах закрепляются ролики, и на них одевается резина.
Задние колеса
Задние колеса просто откручиваются от шарнира и закрепляются через отверстия, просверленные в корпусе.
Электрические Соединения.
код для arduino
[926 b] (скачиваний: 427)
Будут проблемы с загрузкой кода программы в Arduino. Это связано с тем, что модуль Bluetooth, его RXТХ контакты, подключены к 1 и 2 выводу Arduino, которые также используются для передачи данных через USB. Надо изменить в подключаемой библиотеке контакты 1 и 2 на 11и 12 , которые будут использоваться для передачи данных.
Драйвер двигателя не нуждается в отдельном питании для логики. 12в достаточно для питания логики драйвера и самого мотора. Минус аккумулятора должен соединяться как с Arduino так и с драйвером мотора. Контакты ЕСА / 5V и ENB / 5V драйвера двигателя, могут быть соединены перемычкой. Ее надо удалить до подключения к Arduino. Ничего не должно быть подключено к двум выводам 5V.
Код андроид .
Прикрепленный файл надо распаковать и импортировать в Android Studio, упаковать его в apk и установить на телефон.
код для андроид
[5.28 Mb] (скачиваний: 501)
Ключевые файлы:
Paired Devices Activity:
deviceList.java
activity_device_list.xml
LED and Motion Control Activity:
ledControl.java
activity_led_control.xml
Manifest:
AndroidManifest.xml
Paired Devices Activity показывает доступные для подключения Bluetooth устройства. Как только устройства соединятся, управление передается LED and Motion Control Activity.
Кнопки on/off отправляют сообщение «on» или «off» в Arduino, включая или выключая встроенный светодиод. Управляет движением акселерометр телефона, который передает значения x/y от сенсора, каждый раз ,когда эти значения меняются. Исходя из этого , Arduino вычисляет скорость движения и направление вращение моторов в диапазоне от 0 до 255. Он передает эти значения Arduino в виде ‘L-255:’ или ‘R100’ и т.п. исходя из этого Arduino, отправляет команды скорости вращения левого двигателя на ENA, правого на ENB и изменяет направление вращения изменением полярности на IN1,IN2 для левого, N3 и N4 для правого двигателей.
Становитесь автором сайта, публикуйте собственные статьи, описания самоделок с оплатой за текст. Подробнее здесь.
Источник: