Rich--house.ru

Строительный журнал Rich—house.ru
42 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Робот на Ардуино и машинка на Bluetooth своими руками

FAMAT › Блог › ROBOTяга ARDUINO — 5. БЛЮТУЗ управление.

И так работяга стал послушней – уже умеет слушаться пульт от телевизора 🙂 www.drive2.ru/b/2818339/
А давайте его научим слушаться телефон!
И поможет нам в этом Блютуз.

Необходимо:
— Блютуз модуль — HC-06 wireless Bluetooth (либо другой).
— Провода.
— Двухсторонний скотч.
— Софт — Bluetooth RC Controller.

В комплекте с роботом шел Блютуз модуль — HC-06.
Подойдут модули типа HC-04 или 05.

Но забегу вперед – если вы все же захотите когда-нибудь загружать работягу через Блютуз рекомендую именно НС-05 – о его достоинствах рассказал здесь:
www.drive2.ru/c/2749401/

Подключение:
Все, что нужно подключить — это Блютуз модуль.
Подключение простое – смотрите таблицу ниже.

ПРИМЕЧАНИЕ: Заодно я указал подключения Моторов – я буду в каждом примере указывать необходимые подключения.

Обратите внимание, что поскольку разъем TXD Блютуз подключен к разъему RХ Arduino, то пока включении Блютуз Arduino никого будет слушать — только Блютуз.
ВНИМАНИЕ! На время когда вы хотите работать с Arduino по USB – Блютуз нужно выключать. Я для этого поставил выключатель на питание «+» Блютуз.

Прикрепляем Блютуз к роботу – можно использовать двухсторонний скотч и место в «корме» робота.

Программирование.
Сначала немного теории.
Мы уже научили работягу слушать ИК волны…
Блютуз – это то же волны – только радио.
А в остальном принцип тот же – управляющее устройство будет передавать коды по блютуз, которые РОБОТяга будет выполнять.
Только предварительно нам считывать коды с устройства не нужно – мы их сами зададим.
Кодами для команд будут буквы:
F – вперед;
B – назад;
R – вправо;
L – влево;
S – стоп.

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

Сначала устанавливаем соединение между блютузами РОБОТяги и «устройства» — через настройки Блютуз «устройства» — пароль по умолчанию для модуля робота — 1234.

Что касается софта – для компьютера можно использовать, например ARDUINO IDE или Termite 3.2. Пример здесь: lesson.iarduino.ru/page/b…-ustroystvami-s-telefona/
Установив соединение и запустив программу мы через нее можем отправлять на робот коды и робот будет выполнять команды.
Но согласитесь, это не очень удобно… удобнее нажимать на кнопки – для этого можно написать программку, например для Android – что бы кнопкам соответствовали кодовые буквы.
Но мы даже этого делать не будем – поскольку уже есть готовая программа!
А для чего же, спросите вы, я все это писал?
Для того что бы развеять «магию» Блютуза и показать как на самом деле все банально

Для Android устройств будем использовать Bluetooth RC Controller – готовую к использованию программу, позволяющую управлять не только направлением движения, но и скоростью и даже фарами!

Управление скоростью и фарами в моем скетче нет – это домашнее задание для пытливых умов 🙂
geekelectronics.org/ardui…dklyuchaem-bluetooth.html
А вот еще одной функцией программки – управление движением робота с помощью наклона «телефона/планшета» мы обязательно воспользуемся.
Bluetooth RC Controller можно скачать на Play Market.
play.google.com/store/app…uetoothRCcontroller&hl=ru
Работа с программой интуитивно понятна.

Первое, что она попросит – включить Bluetooth.
Затем нужно подключиться к РОБОТяге – нажимаем на «шестереночку» — далее «Connect» выбрать его из перечня устройств нашего РОБОТягу и соединяемся…
Дальше жмем на кнопки и едем…

Все посылаемые данной программой коды-команды указаны в настройках Bluetooth RC Controller («шестереночка» — «Settings»).

ВНИМАНИЕ! Поступили замечания, что Bluetooth RC Controller у некоторых «работяг» реагирует с задержкой — около 10 секунд! Есть информация, что это лечится в настройках — пункте «Please select data stream frequency:» нужно выбрать режим «On change/touch».

Для того чтобы перевести в режим управления акселерометром «устройства» – через наклон, нужно нажать «шестереночку» и нажать закладку «Accelerometer».
Но предупреждаю! Данный режим работает с задержкой – управлять нужно осторожней. Пример на видео 🙂

СКЕТЧ:
[code]
//Управляем роботом с помощью BLUETOOTH.
//В качестве управляющего устройства используем ANDROID устройство с программой Bluetooth RC Controller.

// *********************** Установка выводов моторов ************************
int MotorLeftSpeed = 5; // Левый (А) мотор СКОРОСТЬ — ENA
int MotorLeftForward = 4; // Левый (А) мотор ВПЕРЕД — IN1
int MotorLeftBack = 2; // Левый (А) мотор НАЗАД — IN2
int MotorRightForward = 8; // Правый (В) мотор ВПЕРЕД — IN3
int MotorRightBack = 7; // Правый (В) мотор НАЗАД — IN4
int MotorRightSpeed = 6; // Правый (В) мотор СКОРОСТЬ — ENB

// ********************** Для управления по блютуз ****************************
char btCommand = ‘S’;// Задаем переменную BLUETOOTH команда — по умолчанию «S» — СТОП

//****************** Настраиваем параметры выводов ARDUINO ******************
pinMode (MotorLeftForward, OUTPUT);
pinMode (MotorLeftBack, OUTPUT);
pinMode (MotorLeftSpeed, OUTPUT);

Готовые Arduino роботы

Начинать изучать Arduino можно не только с самой платы и подробных видео-уроков, но и с покупки готового полноценного робота на базе этой платы. Для детей начальной школы или дошкольного возраста такое готовые проекты Arduino даже предпочтительней, т.к. «неожившая» плата выглядит скучновато. Такой способ подойдет и для тех, кого электрические схемы не особо привлекают.

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

Мы предлагаем небольшой обзор готовых роботов на плате Arduino.

Машинка на Arduino, управляемая через Bluetooth

Машинка, управляемая через Bluetooth, стоимостью чуть менее $100. Поставляется в разобранном виде. Помимо корпуса, мотора, колес, литиевой батарейки и зарядного устройства, получаем плату Arduino UNO328, контроллер мотора, Bluetooth адаптер, пульт дистанционного управления и прочее.

Видео с участием этого и еще одного робота:

Более подробное описание игрушки и возможность купить на сайте интернет-магазина DealExtreme.

Аналогичный набор на Aliexpress чуть дороже. Аналогичные роботы с тремя колесами дешевле. Например, можно купить за $59.

Робот-черепаха Arduino

Комплект для сборки робота-черепахи стоимостью около $90. Не хватает только панциря, все остальное, необходимое для жизни этого героя, в комплекте: плата Arduino Uno, сервоприводы, датчики, модули слежения, ИК-приемник и пульт, батарея.

Черепаху можно купить на сайте DealExtreme, аналогичный более дешевый робот на Aliexpress.

Гусеничная машина на Arduino, управляемая с сотового телефона

Гусеничная машина, управляемая по Bluetooth с сотового телефона, стоимостью $94. Помимо гусеничной базы получаем плату Arduino Uno и плату расширения, Bluetooth плату, аккумулятор и зарядное устройство.

Гусеничную машину также можно купить на сайте DealExtreme, там же подробное описание. Может быть, более интересный железный Arduino-танк на Aliexpress.

Arduino-автомобиль, проезжающий лабиринты

Автомобиль, проезжающий лабиринты, стоимостью $83. Помимо моторов, платы Arduino Uno и прочего необходимого cодержит модули слежения и модули обхода препятствий.

Видео с этим роботом:

Страница машины на сайте DealExtreme, такой же робот на Aliexpress стоит чуть дороже.

Arduino насекомое

Оригинальный мини-робот насекомое на базе Arduino-совместимой схемы стоимостью менее $50. Помимо Arduino-совместимой платы имеет микросервоприводы и датчик для обнаружения препятствий.

Подробный обзор этого проекта на Arduino мы выполнили здесь. Приобрести можно на сайте DealExtreme или Aliexpress.

Готовый робот или каркас для робота

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

Где еще купить готовых роботов

В обзоре мы выбрали наиболее дешевых и интересных на наш взгляд готовых Arduino-роботов из китайских интернет-магазинов. Если нет времени ждать посылку из Китая — большой выбор готовых роботов в интернет-магазинах Амперка и DESSY. Низкие цены и быструю доставку предлагает интернет-магазин ROBstore. Список рекомендованных магазинов здесь.

Возможно вас также заинтересуют наши обзоры проектов на Arduino:

  • Arduino робот-художник;
  • arduino-робот Sparki;
  • деревянный робот-машинка KAKU.
  • робот-насекомое.

Обучение Arduino

Не знаете, с чего начать изучение Arduino? Подумайте, что вам ближе — сборка собственных простых моделей и постепенное их усложнение или знакомство с более сложными, но готовыми решениями?

Посты по урокам:

  1. Первый урок: Светодиод.
  2. Второй урок: Кнопка.
  3. Третий урок: Потенциометр.
  4. Четвертый урок: Сервопривод.
  5. Пятый урок: Трехцветный светодиод.
  6. Шестой урок: Пьезоэлемент.
  7. Седьмой урок: Фоторезистор.
  8. Восьмой урок: Датчик движения (PIR) на Arduino. Автоматическая отправка E-mail.
  9. Девятый урок: Подключение датчика температуры и влажности DHT.

Все посты сайта “Занимательная робототехника” по тегу Arduino.

Все цены приведены по состоянию на 30.03.14. Фото с сайта DealExtreme.

Робот, ездящий по линии под управлением Arduino

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

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

В нашем примере будет собран робот на лёгкой платформе с двумя колёсами и двумя датчиками линии, расположенными на днище робота перед колёсами.

В результате выглядеть он будет так:

Что понадобится

Для нашего примера понадобятся следующие детали:

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

Собираем робота

Сначала соберём робота, установим всю механику и электронику.

Собираем платформу

Для начала прикрепим колёса к моторам.

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

Теперь крепим балансировочный шар.

Отлично! Платформа собрана. Если вам кажется, что колёсам отведено слишком мало места и они трутся о платформу, то скорее всего вам нужно посильнее надавить на колёса, чтобы они плотнее сели на вал мотора.

Крепим сенсоры

Закрепим их, как показано на фото:

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

Читать еще:  Фрезерно-гравировальные станки с чпу BZT (Германия)

Крепим Arduino

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

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

Крепим Motor Shield и соединительные провода

Установим Motor Shield на Arduino и подсоединим соединительные провода. Обратите внимание, чтобы соотвествовать программному коду из примера ниже, моторчики соединены с Motor Shield так: правый — к клеммам M1 с прямой полярностью (плюс к плюсу), а левый — к M2 с обратной (плюс к минусу).

В этом проекте, для экономии времени концы соединительных проводов просто скручены с контактами моторов. При работе «начисто» стоит жёстко припаять провода к моторам.

Крепим Troyka Shield

Присоединяем сверху Troyka Shield и подключаем датчики к 8 и 9 цифровым контактам. В итоге получаем следующую конструкцию:

Программирование

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

Основная идея алгоритма

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

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

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

Таким образом получаем простую систему с тремя состояниями:

На вход системы поступает информация с сенсоров. Получаем следующую логику переходов:

ЛевыйПравыйЦелевое состояние
00STATE_FORWARD
01STATE_RIGHT
10STATE_LEFT
11STATE_FORWARD

Реализация на Arduino

Проблема инертности и её решение

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

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

Эксперимент проведём для разных скоростей. Код программы для эксперимента таков:

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

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

Что можно сделать?! После того, как сенсоры улавливают поворот, можно остановиться и вернуться назад на некоторое расстояние, зависящее от скорости перед остановкой. Однако мы можем отдать команду роботу ехать с какой-то скоростью, но не можем приказать ему проехать какое-то расстояние.

Для того, чтобы понять зависимость расстояния при заднем ходе от времени, был проведён ещё один замер:

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

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

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

Адаптивное поведение

Перед финальным экспериментом произведём ещё несколько поправок.

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

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

В итоге наш код будет выглядит следующим образом:

Результат

Что дальше?

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

Нет ничего лучше, чем обставить оппонента на секунду-другую.

Ведроид-мобиль — робот на Arduino — Часть 3. Подключаем Bluetooth

GeekElectronics » Arduino от А до Я » Ведроид-мобиль — робот на Arduino — Часть 3. Подключаем Bluetooth

В этот раз я опишу процесс подключения к моему роботу «Ведроид-мобиль» модуля Bluetooth JY-MCU и реализую управление через смартфон на Android.

Модернизация Motor Shield

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

Меня этот нюанс совсем не устраивает. Именно поэтому я решил взяться за паяльник и привести Motor Shield к удобному для меня виду.

Аккуратно выдрал родные панельки контактов и выкинул их нафиг.

Установил на их место нормальные.

В таком виде модулем стало пользоваться гораздо удобнее. Теперь я смогу нормально подключить провода от Bluetooth в разъемы, а не припаивать их намертво к контактам на Motor Shield.

Bluetooth модуль JY-MCU для Arduino

Сам Bluetooth модуль JY-MCU довольно миниатюрный. В комплект поставки входит кабель для подключения. Назначение выводов расписано на обратной стороне.

Запитать его можно от источника питания 3,6-6В. Это предоставляет нам возможность подключить его напрямую к Arduino без использования стабилизатора или делителя напряжения.

Код, используемый при подключении к устройству: 1234.

Подключение Bluetooth JY-MCU к Arduino Mega 2560

Подключение довольно простое.

Официальная схема подключения:

  • VCC на JY-MCU подключаем к +5В Arduino
  • GND на JY-MCU подключаем к GND Arduino
  • TXT на JY-MCU подключаем к RX (0) на Arduino
  • RXD на JY-MCU подключаем к TX (1) на Arduino

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

Меня такой вариант не устраивает, поэтому я решил использовать дискретные порты с поддержкой Serial.

Неофициальная схема подключения:

  • VCC на JY-MCU подключаем к +5В Arduino
  • GND на JY-MCU подключаем к GND Arduino
  • TXT на JY-MCU подключаем к дискретному PIN 50 на Arduino
  • RXD на JY-MCU подключаем к дискретному PIN 51 на Arduino

Вот теперь можно загружать скетчи без отключения питания модуля Bluetooth.

Чтобы закрепить Bluetooth, я решил использовать плату Proto Shield и миниатюрную беспаечную макетную плату. К ней в будущем и буду подключать остальное оборудование, элементы управления и индикации.

Скетч для управления роботом на Arduino по Bluetooth через смартфон на Android

В своём скетче я реализовал следующие функции:

  • Движение вперед
  • Движение назад
  • Разворот влево
  • Разворот вправо
  • Плавный поворот влево при движении вперед
  • Плавный поворот вправо при движении вперед
  • Плавный поворот влево при движении назад
  • Плавный поворот вправо при движении назад
  • Остановка

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

//Создаем объекты для двигателей
AF_DCMotor motor1(1); //канал М1 на Motor Shield — задний левый
AF_DCMotor motor2(2); //канал М2 на Motor Shield — задний правый
AF_DCMotor motor3(3); //канал М3 на Motor Shield — передний левый
AF_DCMotor motor4(4); //канал М4 на Motor Shield — передний правый

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

SoftwareSerial BTSerial(50, 51); // RX, TX

// Создаем переменную для команд Bluetooth
char vcmd;
// Создаем переменные для запоминания скорости двигателей
int vspdL, vspdR;
/* Создаем переменную, на значение которой будет уменьшаться скорость при плавных поворотах.
Текущая скорость должна быть больше этого значения. В противном случае двигатели со стороны направления поворота просто не будут вращаться */
int vspd = 200;

void setup() <
// Устанавливаем скорость передачи данных по Bluetooth
BTSerial.begin(9600);
// Устанавливаем скорость передачи данных по кабелю
Serial.begin(9600);
// Выбираем пин к которому подключен сервопривод
vservo.attach(9); // или 10, если воткнули в крайний разъём
// Поворачиваем сервопривод в положение 90 градусов при каждом включении
vservo.write(90);
// Устанавливаем максимальную скорость вращения двигателей
vspeed(255,255);
>

void loop() <
// Если есть данные
if (BTSerial.available())
<
// Читаем команды и заносим их в переменную. char преобразует код символа команды в символ
vcmd = (char)BTSerial.read();
// Отправляем команду в порт, чтобы можно было их проверить в «Мониторе порта»
Serial.println(vcmd);

// Вперед
if (vcmd == ‘F’) <
vforward();
>
// Назад
if (vcmd == ‘B’)
<
vbackward();
>
// Влево
if (vcmd == ‘L’)
<
vleft();
>
// Вправо
if (vcmd == ‘R’)
<
vright();
>
// Прямо и влево
if (vcmd == ‘G’)
<
vforwardleft();
>
// Прямо и вправо
if (vcmd == ‘I’)
<
vforwardright();
>
// Назад и влево
if (vcmd == ‘H’)
<
vbackwardleft();
>
// Назад и вправо
if (vcmd == ‘J’)
<
vbackwardright();
>
// Стоп
if (vcmd == ‘S’)
<
vrelease();
>
// Скорость 0%
if (vcmd == ‘0’)
<
vspeed(0,0);
>
// Скорость 10%
if (vcmd == ‘1’)
<
vspeed(25,25);
>
// Скорость 20%
if (vcmd == ‘2’)
<
vspeed(50,50);
>
// Скорость 30%
if (vcmd == ‘3’)
<
vspeed(75,75);
>
// Скорость 40%
if (vcmd == ‘4’)
<
vspeed(100,100);
>
// Скорость 50%
if (vcmd == ‘5’)
<
vspeed(125,125);
>
// Скорость 60%
if (vcmd == ‘6’)
<
vspeed(150,150);
>
// Скорость 70%
if (vcmd == ‘7’)
<
vspeed(175,175);
>
// Скорость 80%
if (vcmd == ‘8’)
<
vspeed(200,200);
>
// Скорость 90%
if (vcmd == ‘9’)
<
vspeed(225,225);
>
// Скорость 100%
if (vcmd == ‘q’)
<
vspeed(255,255);
>
>
>

// Вперед
void vforward() <
vspeed(vspdL,vspdR);
vforwardRL();
>

// Вперед для RL
void vforwardRL() <
motor1.run(FORWARD);
motor2.run(FORWARD);
motor3.run(FORWARD);
motor4.run(FORWARD);
>

// Назад
void vbackward() <
vspeed(vspdL,vspdR);
vbackwardRL();
>

// Назад для RL
void vbackwardRL() <
motor1.run(BACKWARD);
motor2.run(BACKWARD);
motor3.run(BACKWARD);
motor4.run(BACKWARD);
>

// Влево
void vleft() <
vspeed(vspdL,vspdR);
motor1.run(BACKWARD);
motor2.run(FORWARD);
motor3.run(BACKWARD);
motor4.run(FORWARD);
>

// Вправо
void vright() <
vspeed(vspdL,vspdR);
motor1.run(FORWARD);
motor2.run(BACKWARD);
motor3.run(FORWARD);
motor4.run(BACKWARD);
>

// Вперед и влево
void vforwardleft() <
if (vspdL > vspd) <
vspeed(vspdL-vspd,vspdR);
>
else
<
vspeed(0,vspdR);
>
vforwardRL();
>

// Вперед и вправо
void vforwardright() <
if (vspdR > vspd) <
vspeed(vspdL,vspdR-vspd);
>
else
<
vspeed(vspdL,0);
>
vforwardRL();
>

// Назад и влево
void vbackwardleft() <
if (vspdL > vspd) <
vspeed(vspdL-vspd,vspdR);
>
else
<
vspeed(0,vspdR);
>
vbackwardRL();
>

// Назад и вправо
void vbackwardright() <
if (vspdR > vspd) <
vspeed(vspdL,vspdR-vspd);
>
else
<
vspeed(vspdL,0);
>
vbackwardRL();
>

// Стоп
void vrelease() <
motor1.run(RELEASE);
motor2.run(RELEASE);
motor3.run(RELEASE);
motor4.run(RELEASE);
>

// Изменение скорости
void vspeed(int spdL,int spdR) <
if (spdL == spdR) <
vspdL=spdL;
vspdR=spdR;
>
motor1.setSpeed(spdL);
motor2.setSpeed(spdR);
motor3.setSpeed(spdL);
motor4.setSpeed(spdR);
>

Программа Bluetooth RC Car — управление роботом-машинкой со смартфона на Android

В свой смартфон я установил программу Bluetooth RC Car. На мой взгляд — это лучшая софтинка для управления роботом-машинкой.

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

Для работы программы требуется Android версии 2.3.3 или выше. Размер программы 3 мегабайта.

  • F – вперед
  • B – назад
  • L – влево
  • R – вправо
  • G – прямо и влево
  • I – прямо и вправо
  • H – назад и влево
  • J – назад и вправо
  • S – стоп
  • W – передняя фара включена
  • w – передняя фара выключена
  • U – задняя фара включена
  • u – задняя фара выключена
  • V – звуковой сигнал включен
  • v – звуковой сигнал выключен
  • X – сигнал “аварийка” включен
  • x — сигнал “аварийка” выключен
  • 0 – скорость движения 0%
  • 1 – скорость движения 10%
  • 2 – скорость движения 20%
  • 3 – скорость движения 30%
  • 4 – скорость движения 40%
  • 5 – скорость движения 50%
  • 6 – скорость движения 60%
  • 7 – скорость движения 70%
  • 8 – скорость движения 80%
  • 9 – скорость движения 90%
  • q – скорость движения 100%

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

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

Принцип передачи команд: при нажатии на кнопку в программе, команда передается по Bluetooth один раз, а при отпускании кнопки сразу передается команда S-остановка.

Демонстрация работы

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

Робот на Ардуино и машинка на Bluetooth своими руками

Робот – машинка на Ардуино становятся одним из самым популярных инженерных проектов в школьной робототехнике. Именно с таких устройств, автономных или управляемых со смартфона и bluetooth, начинается путь в робототехнику “после Lego”. К счастью, сегодня можно без труда купить все необходимые компоненты и достаточно быстро создать своего первого робота для езды по линии или объезда препятствий. В этой статье вы найдете подробную видео инструкцию как сделать продвинутый автомобиль Arduino Car своими руками, с питанием, датчиками линии, расстояния и управлении через bluetooth.

Робот на ардуино своими руками

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

Робот машина на Ардуино

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

Контроллер Ардуино

Куда уж без него, если мы говорим о проектах на этой платформе. Как правило, роботы машины делают на базе плат Arduino Uno и Nano. Mega будут слишком большие, Pro Mini сложнее подключать к компьютеру и соединять с остальными компонентами, а Leonardo требуют дополнительных навыков в программировании, они дороже и их основное преимущество (тесная интеграция с компьютером в качестве периферийного устройства) в данном случае не слишком востребована.

Есть еще вариант использования плат ESP8266 или ESP32, тогда в проекте появляется возможность управления машиной через WiFi. Но и сами платы и их программирование требует определенных навыков, в этой статье мы будем говорить преимущественно об Uno или Nano.

Конструкция, шасси и двигатели робота на Ардуино

Для того, чтобы что-то поехало или стало перемещаться, надо снабдить “это” колесами, гусеницами или манипуляторами-ногами. Вот тут выбор совершенно не ограничен, можно использовать совершенно любые комбинации и сочетания платформ. Как правило, в качестве начального варианта берутся уже готовые наборы платформ с Алиэкспресс.

Двигатель, шасси и колеса машинки на ардуино

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

Драйвер двигателей

Ардуино – достаточно ранимое устройство, не терпящее больших нагрузок по току. Соединяя его с “брутальными” мощными двигателями, не избежать беды. Поэтому для нормальной совместной работы нам нужно будет включить в схему робота компонент, отвечающий за управление двигателями – подающий и отключающий ток на их обмотки. Речь идет о микросхеме или готовом модуле, которые называют драйвером двигателя. На нашем сайте есть статьи, посвященные драйверам, построенным на схеме H-моста. Если вы покупаете готовые шасси, то обязательно предусмотрите возможность размещения на них подходящего драйвера.

Красивый корпус

Как правило, вся конструкция автомобиля строится вокруг его шасси. Если посмотреть примеры готовых проектов, то они часто выглядят как “провода на колесиках” – внешний вид их изобилует пучками соединительных проводов, ведущих от восседающего на троне контроллера Ардуино к драйверам, моторам и датчикам. Между тем, красивый и функциональный корпус не только вызывает правильные эстетические чувства и помогает выделить вашу модель от остальных. Хороший корпус может превратить игрушку в реальное устройство, помогает привить навыки конструирования и промышленного дизайна, что важно для инженеров любого возраста.

Питание робота

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

Питание робота на Ардуино

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

  • Обычные батарейки AA. Тут нужно понимать, что платы Arduino Uno, Nano и большинство двигателей, используемых в Ардуино-робототехнике, требуют напряжения в диапазоне 6-9 вольт. Поэтому придется собрать вместе последовательно не менее 4 батареек на 1,5 В, причем сами батарейки должны быть хорошего качества и обеспечивать работу с достаточно большим током. Например, большинство солевых батареек этим критериям не удовлетворяют. Батарейки AAA при создании ардуино-машинок практически не используются из-за своей пониженной емкости (хотя могут использоваться в миниатюрных моделях, где размер имеет первостепенное значение).
  • Аккумулятор AA. Здесь возникает еще большее ограничение по напряжению и току. Большинство аккумуляторов выдают напряжение 1,2 вольт, поэтому их требуется больше для “собирания” нужных нам 6-9 вольт. Несомненным плюсом является возможность перезарядки.
  • Литиевые аккумуляторы 18650. Это уже “серьезная артиллерия”, позволяющая получить большое время автономной работы, возможность подзарядки и приемлемые характеристики по току и напряжению. Рабочее напряжение для таких элементов питания – 3,7 В, что позволяет собирать готовую схему питания всего из двух элементов.
  • Другие источники питания. Сюда можно включить как более мощные и габаритные никель-металлгидридные, кадмиевые аккумуляторы, так и многочисленные литий-ионные “плоские” варианты, используемые в дронах, смартфонах или другой портативной цифровой технике.

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

Где купить платформу и запчасти

Все, о чем говорится в этой статье, можно без проблем купить на всем известном сайте. К сожалению, подавляющее большинство предложений основываются на стандартной платформе 4WD автомобиля с двумя несущими планками, не очень надежными двигателями и колесами, любящими ездить в “развалочку”. Но эти варианты относительно не дороги и вполне подойдут для начала работы.

10 интересных вещей, которые можно сделать на Arduino

Если у вас есть тяга к тех­но­ло­ги­ям (или ребё­нок с такой тягой), рас­смот­ри­те Arduino. Эта шту­ка оза­да­чит вас и ребён­ка на мно­го часов, а на выхо­де полу­чат­ся уди­ви­тель­ные про­ек­ты.

Что за Arduino

Arduino — это про­грам­ми­ру­е­мый мик­ро­кон­трол­лер. То есть это пла­та, на кото­рую мож­но запи­сать вашу про­грам­му, и эта пла­та смо­жет управ­лять дру­ги­ми шту­ка­ми: напри­мер, зажечь лам­поч­ку, издать звук, вклю­чить элек­тро­при­бор, изме­рить тем­пе­ра­ту­ру, отпра­вить СМС.

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

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

К Arduino есть мно­го плат рас­ши­ре­ния и дат­чи­ков. Сфе­ры при­ме­не­ния пла­ты почти без­гра­нич­ны: авто­ма­ти­за­ция, систе­мы без­опас­но­сти, умный дом, музы­ка, робо­то­тех­ни­ка и мно­гое дру­гое. Вот что мож­но делать на этой умной ита­льян­ской пла­те и на её рос­сий­ских и зару­беж­ных кло­нах.

1. Робот-бармен с Bluetooth-управлением

Слож­ность: 4/5.

Вре­мя: 5/5.

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

Глав­ная слож­ность при изго­тов­ле­нии — инже­нер­ная. Нуж­но точ­но при­кру­тить все дета­ли и соеди­нить их меж­ду собой, что­бы ёмкость ока­зы­ва­лась точ­но под нуж­ны­ми бутыл­ка­ми.

2. Светящийся куб на 512 светодиодов

Слож­ность: 3/5.

Вре­мя: 3/5.

Кра­си­вая шту­ка, кото­рая может све­тить­ся в такт музы­ке как трёх­мер­ный эква­лай­зер и пока­зы­вать 3D-анимацию. А ещё это может рабо­тать как необыч­ный ноч­ник.

Для сбор­ки пона­до­бит­ся дере­вян­ное шас­си с отвер­сти­я­ми, что­бы каж­дый ярус был таким же по раз­ме­ру и фор­ме, что и осталь­ные. Чис­ло све­то­ди­о­дов в каж­дой гра­ни выбра­но не слу­чай­но: 8 ламп = 8-битная логи­ка, самая про­стая в про­грам­ми­ро­ва­нии и управ­ле­нии через кон­трол­лер.

3. Взломщик кодовых замков

Слож­ность: 5/5.

Вре­мя: 4/5.

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

4. Nod Bang — киваем головой и делаем бит

Слож­ность: 2/5.

Вре­мя: 3/5.

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

В науш­ни­ки он встро­ил аксе­ле­ро­метр, кноп­ки отве­ча­ют за выбор зву­ка, а Arduino — за вос­про­из­ве­де­ние зву­ка на ком­пью­те­ре через MIDI-интерфейс. Что­бы всё выгля­де­ло эффект­нее, у кно­пок есть под­свет­ка, и они тоже дела­ют бит.

5. Поющее растение

Слож­ность: 2/5.

Вре­мя: 2/5.

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

Пла­та реги­стри­ру­ет изме­не­ние ампли­ту­ды сиг­на­ла, для чего автор исполь­зу­ет само­дель­ный сен­сор­ный детек­тор для ана­ли­за при­кос­но­ве­ний к цвет­ку. Кро­ме это­го пона­до­би­лась пла­та рас­ши­ре­ния Gameduino и сам цве­ток.

6. Замок, который открывается на секретный стук

Слож­ность: 3/5.

Вре­мя: 2/5.

Инте­рес­ная вещь для тех, кто хочет поиг­рать в шпи­о­нов или пус­кать в ком­на­ту толь­ко сво­их дру­зей. Замок рас­по­зна­ёт стук по две­ри и срав­ни­ва­ет его с базо­вым зву­ча­ни­ем, кото­рое уста­но­вил вла­де­лец. Если сов­па­да­ет — при­во­ды ото­дви­га­ют замок и дверь откры­ва­ет­ся, если нет — ниче­го не про­ис­хо­дит, мож­но посту­чать зано­во.

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

7. Горшок для цветов с автополивом

Слож­ность: 4/5.

Вре­мя: 3/5.

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

Основ­ные харак­те­ри­сти­ки чудо-горшка:

  • встро­ен­ный резер­ву­ар для воды;
  • дат­чик кон­тро­ля уров­ня влаж­но­сти поч­вы;
  • насос для пода­чи воды;
  • дат­чик уров­ня воды в резер­ву­а­ре;
  • све­то­ди­од, инфор­ми­ру­ю­щий о недо­стат­ке воды в резер­ву­а­ре.

8. Драм-машина

Слож­ность: 1/5.

Вре­мя: 2/5.

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

Мате­ма­ти­че­ская осно­ва это­го устрой­ства — раз­ло­же­ние в ряд Фурье, кото­рое реша­ет­ся под­клю­че­ни­ем стан­дарт­ной биб­лио­те­ки.

9. Шагающий робот

Слож­ность: 2/5.

Вре­мя: 1/5.

Про­стой в изго­тов­ле­нии четы­рёх­но­гий робот, кото­рый шага­ет и само­сто­я­тель­но пре­одо­ле­ва­ет пре­пят­ствия в сан­ти­метр высо­той.

Что­бы его сде­лать, вам пона­до­бят­ся сер­во­мо­то­ры для ног, немно­го про­во­ло­ки и любой пла­стик, из кото­ро­го дела­ет­ся шас­си. Для пита­ния — акку­му­ля­тор любой моде­ли, кото­рый кре­пит­ся на спине робо­та.

10. Робот-пылесос

Слож­ность: 4/5.

Вре­мя: 5/5.

Дмит­рий Ива­нов из Сочи собрал насто­я­щий робот-пылесос, кото­рый дела­ет всё то же самое, что и про­мыш­лен­ные устрой­ства, толь­ко с воз­мож­но­стью тон­кой настрой­ки под себя и свою квар­ти­ру.

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

Дистанционное управление роботом на базе Ардуино своими руками

Автор: alexlevchenko
Дата записи

Сегодня никого не удивишь радиоуправляемыми самоделками. Но согласитесь, как-то «по старинке» нажимать на клавиши управления… Гораздо интереснее управлять поделками с помощью движений кисти, не так ли? В данной статье показан пример того, как можно организовать дистанционное управление при помощи платы Arduino и нескольких датчиков изгиба. В качестве подопытного будет выступать PHIRO Pro

Шаг 1: Что понадобится

  • PHIRO Pro;

  • Датчики изгиба;

  • Bluetooth модуль HC-05;

Шаг 2: Загружаем стандарт Firmata на Arduino

Необходимо загрузить стандарт firmata на плату Ардуино, для того, что соединить её с Pocket Code. В данном проекте используем Arduino UNO, однако может быть использована любая плата Arduino.

  • Подключаем плату Arduino к компьютеру/ноутбуку.
  • В Arduino ID выбираем COM Port. Tools -> Serial Port -> Corresponding COM Port
  • Далее выбираем тип платы. Tools -> Board -> Your Arduino Board
  • Затем выбираем стандарт Firmata. Examples -> Firmata -> Standard Firmata
  • Нажимаем «Upload» и загружаем код на плату.

Шаг 3: Соединяем датчики с платой и крепим их на перчатку

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

Шаг 4: Подсоединяем Bluetooth модуль HC-05 к Arduino

Соединяем выводы bluetooth модуля и платы Arduino следующим образом:

  • HC05 Tx — Arduino Rx
  • HC05 Rx — Arduino Tx
  • Vcc — 5V
  • GND — GND

Шаг 5: Соединяем Arduino с батареей

Используем 9В батарею для питания платы Arduino с Bluetooth модулем. Такой тип компоновки объясняется возможностью легкого монтажа на запястье/браслете. Чем компактнее тем лучше.

Шаг 6: Программа Pocket Code

Ниже представлены примеры использования программы. Прежде всего убедитесь, что PHIRO Pro находится в Mode 3 (Bluetooth Mode). Нажмите на кнопку Mode на PHIRO не раньше, чем синий светодиод, что расположен рядом с дисплеем на верху, включится.

Для программы, в общем есть 7 режимов.

  • Указательный палец выпрямлен. Фары светятся красным. Программа показывает STOP.
  • Указательный и средний палец выпрямлены. Фары светятся зеленым. Программа показывает STOP.
  • Указательный, средний и безымянный пальцы выпрямлены. Фары светятся синим. Программа показывает STOP.
  • Ладонь открыта. PHIRO движется вперёд. Фары светятся белым. Программа показывает FORWARD (вперёд).
  • Ладонь сжата в кулак. PHIRO останавливается. Фары выключены. Программа показывает STOP.
  • Ладонь сжата в кулак и наклонена влево (телефон наклонён влево). PHIRO поворачивает налево. Левая фара светится желтым. Программа показывает LEFT (влево).
  • Ладонь сжата в кулак и наклонена вправо (телефон наклонён вправо). PHIRO поворачивает вправо. Правая фара светится желтым. Программа показывает RIGHT (право).

Шаг 7: Проводим финальный монтаж

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

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

Машинка на Ардуино с Блютуз

Машинка на Ардуино с блютуз управлением ► собирается очень просто. На сайте вы узнаете схему сборки и сможете скачать программу для Arduino UNO и Android.

Машинка на Ардуино с Bluetooth управлением от Android телефона — это очень простой, но интересный проект на Arduino UNO с использованием модуля Motor Shield. На этой странице вы узнаете какие потребуются компоненты для изготовления робота машинки на Ардуино своими руками, пошаговую инструкцию по сборке электрической схемы и сможете скачать все необходимые программы для Android и Arduino.

Для этого проекта использовался модуль Motor Shield L293D, два колеса с редукторами, плата Arduino UNO, блютуз модуль HC-05 и два светодиода для фар. Управление происходит дистанционно через Bluetooth сигнал от смартфона или планшета. После сборки модели и установки программ, вы сможете через приложение на смартфоне поворачивать машинкой, ездить вперед и назад, включать и выключать фары.

Машинка на Ардуино своими руками

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

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • Motor Control Shield L293D;
  • Bluetooth модуль HC-05/06;
  • два мотора с редукторами и колесами;
  • аккумулятор 9 Вольт (крона);
  • 2 резистора и 2 светодиода;
  • корпус и колеса от старой машинки;
  • паяльник, термопистолет, провода, припой и т.д.

Детали для робота — машинки на Ардуино УНО

Схема сборки машинки на Ардуино

Если у вас есть все необходимые детали (в проекте можно обойтись без светодиодов и резисторов), то далее мы рассмотрим, как сделать машинку из ардуино своими руками. Для начала следует припаять к контактам моторчиков провода и зафиксировать их изолентой, чтобы контакты не оторвались. Провода необходимо соединить с клеммниками M1 и M2 на Motor Shield (полярность потом можно будет поменять).

Схема сборки машинки с Блютуз управлением

Питание на Bluetooth модуль идет от контактов для сервопривода, в проекте серво нам не понадобятся. А на питание идет стабилизированное напряжение 5 Вольт, что нам подходит. К портам TX и RX удобнее будет припаять коннекторы «мама», а к портам «Pin0» и «Pin1» на Motor Shield припаять штырьки (BLS). Таким образом, вы сможете легко отключать Bluetooth модуль от Arduino при необходимости загрузки скетча.

Управление светодиодами идет от порта «Pin2», здесь провод можно припаять напрямую к порту. Если вы делаете несколько машинок с Блютуз, которыми будете управлять одновременно, то рекомендуем сделать перепрошивку модуля HC-05. Делается прошивка модуля очень просто, а затем вы уже не будете путать машинки, так как у каждой будет отображаться свое уникальное имя на Андроиде.

Приложение и скетч для машинки на Ардуино

После сборки схемы загрузите следующий скетч для машинки (не забудьте отключать Bluetooth модуль от Ардуино при загрузке) и установите приложение на смартфоне. Все файлы для проекта (библиотека AFMotor.h, скетч для машинки и приложение для Android) можно скачать одним архивом по прямой ссылке здесь. Работу скетча можно проверить управлением машинки от компьютера через Serial Monitor по USB.

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

  1. для тестирования, можно отправлять команды с компьютера через USB;
  2. вращение моторов при подключении к аккумулятору будут отличаться;
  3. вы можете задавать свою скорость вращения моторами.

Управление машинкой на Ардуино через Андроид

После проверки работы машинки, установите приложение на смартфон или планшет. При первом подключении к Bluetooth модулю HC-05/06, потребуется сделать сопряжение с Андроид (затем сопряжение будет выполняться автоматически). Если у вас возникли сложности с подключением — прочитайте эту статью Подключение блютуз модуля к Ардуино или напишите вопрос в комментариях к этой записи.

Bluetooth машинка на arduino

Привет самоделкины! Так вот в данной статье мы рассмотрим, как сделать машинку на bluetooth управлении. В роли пульта управления будет смартфон.

Также прикрепляю ссылки на некоторые компоненты

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

1. Мотор-редуктор 4 шт. ссылка
2. Деревянная доска (платформа)
3. Холдер для аккумуляторов 18650 ссылка
4. Аккумуляторы 18650 ссылка
5. Провода для соединения модулей ссылка
6. Arduino uno ссылка
7. Драйвер для моторов ссылка
8. Bluetoth модуль ссылка
9. Колёса для моторов 4 шт. ссылка

Из инструментов нам также понадобится:

1. Дрель
2. Отвёртка
3. Паяльник
4. Карандаш

Ну чтож, приступим к сборке. Перед этим обратите внимание на плату arduino. В этой статье будет применена плата arduino uno, но можно использовать и другие, более компактные версии. Главное — соблюдать схему подключения!
Также аккумуляторы 18650 можно заменить на обычные батарейки.

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

Далее припаиваем провода к нашим моторам.

Сверлим отверстия в платформе и при помощи болтов и гаек прикручиваем плату ардуино и драйвер для двигателей










Приклеиваем Bluetooth модуль и соединяем всё проводами.








Паяем провода к слоту для аккумуляторов и одеваем колеса на вал моторов



Готово! Подключаем ардуино к компьютеру и через программу загружаем код. Скачиваем приложение на смартфон и погнали!



Вот видео от автора с подробной сборкой:

0 0 голоса
Рейтинг статьи
Ссылка на основную публикацию
ВсеИнструменты