Ардуино андроид блютуз машинка

Bluetooth машинка на Arduino с двумя моторами

Самая простая машинка на Arduino с дистанционным управлением со смартфона по Bluetooth. Лёгкая схема, простой скетч. Едет на двух электромоторах, питается от кроны. Рама, на которой всё держится, изготавливается из подручных материалов и ограничивается лишь фантазией.

Комплектующие

  1. Arduino Uno — https://bit.ly/2P3rCI5​
  2. драйвер моторов L298N — https://bit.ly/3dvbDMg​
  3. Bluetooth модуль HC-06 или HC-05 или подобный — https://bit.ly/3x4nhFX​
  4. моторы постоянного тока с редуктором и с колёсами — 4 шт — https://bit.ly/2P4e9Qr​
  5. провода папа-папа, мама-мама, папа-мама 10-30 см — https://bit.ly/3n3z0jl​
  6. аккумулятор 9В, я использовал с разъёмом micro-USB для зарядки — https://bit.ly/2QeFbF6​
  7. зажим для аккумулятора 9В — https://bit.ly/32rmwZi​
  8. тумблер — 1 шт — https://bit.ly/3artZfr

Для изготовления рамы машинки можно использовать разнообразные материалы:

  • листовой лёгкий материал, который легко обрабатывать — оргстекло, фанера, текстолит, оргалит и т.п.
  • третье колесо, которое будет опорным — оно должно уметь ехать во всех стороны (хорошо подходят мебельные колёсики);
  • крепёжные элементы — болты, гайки, шурупы.

Схема подключения

Питание платы берётся от «Кроны» и подаётся на Arduino через пины VIN и GND. Также подаётся отдельно на драйвер двигателей через порты +12V и GND.

Blutooth модуль HC-06 получает питание в 3,3 вольта от Arduino. Если подключить к 5 вольтам, то тоже работает нормально. Выход RX модуля подключается к TX на Arduino, а TX — в RX, то есть наоборот.

На драйвере двигателей нужно снять две боковые перемычки — Enable. Пины под ними позволят нам управлять скоростью вращения двигателей. И эти пины подключаются к Arduino обязательно к ШИМ-портам (обозначенные знаком

). На схеме это порты 3 и 5.

Питание моторов подаётся на Input драйвера от Arduino с портов 2 и 4, 6 и 7. А сами моторы подключаются к Output A и Output B драйвера.

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

Если при движении вперёд машинка едет назад, то нужно поменять местами провода Output обоих двигателей (хотя, кто знает, где у ней перед, а где зад…).

Если при повороте налево, машинка едет направо, то нужно поменять местами Output A и Output B.

Если подключить всё по схеме, то скетч переделывать не нужно будет.

Скетч

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

В скетче прописанные необходимые поясняющие комментарии.

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

Со смартфона приложение по Bluetooth посылает сигналы в виде латинских букв (W, S, E и т.д.). В зависимости от пришедшей команды, с помощью оператора if, вызываются комбинации тех или иных функции. Если вы будете использовать другое приложение, не то, которое я предоставлю ниже, то оно будет посылать другие команды, другие буквы. Соответственно, придётся переписать их в скетче.

Читайте также:  Kingdom and lord android

Например, когда по Bluetooth приходит ‘ W ‘ вызываются две функции rightWheelForward (); и leftWheelForward (); что заставит оба мотора крутится вперёд.

А если приходит ‘E’, то вызываются функции rightWheelStop (); и leftWheelForward (); что заставит остановиться правый мотор и вращаться вперёд только левый, от чего машинка поведет вперёд вправо.

Есть три вида скорости, которые включаются, когда приходят команды ‘1’, ‘2’ и ‘3’. Скорость можно задавать от 0 до 250. На каждую и трёх команд в скетче прописаны скорости 120, 170 и 250, соответственно.

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

Скорость приходит в виде переменной motorSpeed в функцию analogWrite() и запускает двигатель с заданными оборотами.

Приложение

Так как я не владею навыком написания приложение под Anroid, то для создания пульта управления использовать уже известный у многих начинающих разработчиков инструмент визуального программирования — App inventor.

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

Сначала нужно включить машинку и сделать сопряжение по Bluetooth со смартфоном. Пароль модуля 0000 или 1234. После этого откройте приложение и нажмите «Подключиться к машинке». Подключитесь к модулю HC-06. Светодиод на нём должен перестать мигать.

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

И, так как я не публиковал это приложение в Google Play, смартфон может ругаться на его безопасность. Но можно смело устанавливать. В нём всё работает безопасно.

Сборка

Можно купить готовое шасси для машинки сразу вместе с моторами и колёсами. Останется только установить электронику и всё подключить.

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

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

  • Ручной или электрический лобзик (я пользовался ручным), чтобы отрезать нужные куски от материала.
  • Дрель или шуроповёрт, свёрла.
  • Крепёжные элементы — болты, гайки и саморезы любого подходящего диаметра.

Получилось дёшево и сердито. А главное работает.

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

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

Платы в идеале лучше прикручивать короткими болтами с диаметром 3 мм. Но и таких у меня не оказалось. Поэтому пришлось делать в оргстекле отверстия 2 мм и прикручивать платы саморезами. Держится вполне нормально.

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

Читайте также:  Стандартные рингтоны андроид будильник

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

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

Видео

Источник

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Читайте также:  Платформа ios или android что лучше

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

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

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

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

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

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

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

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

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

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

Источник

Оцените статью