Блютуз ардуино: Ардуино Bluetooth очень просто и удобно вместе с HC05 и HC06

Содержание

Общение с Arduino по Bluetooth при помощи модуля HC-05

Ранее в заметке Мой первый радиоуправляемый робот на Arduino мы управляли гусеничным роботом при помощи пары устройств NRF24L01. Если помните, для этого приходилось использовать дополнительную Arduino с Joystick Shield. Притом вся эта конструкция получалась довольно громоздкой и неудобной, особенно если учитывать, что джойстику нужно от чего-то питаться, а также тот факт, что NRF24L01 для работы нужен дополнительный переходник со стабилизатором напряжения. Поэтому сегодня мы рассмотрим альтернативный подход, заключающийся в использовании Bluetooth-модуля HC-05.

Примечание: Существует похожий модуль HC-06. В отличие от HC-05, который может быть как ведущим (мастером), так и ведомым устройством, HC-06 может быть только ведомым. В остальном HC-05 и HC-06 практически не отличаются. Также существуют модули HC-07, HC-08 и HC-09. Прочитать про различия между ними можно здесь.

HC-05 имеет шесть пинов, но из них нам понадобится только четыре: VCC, GND, RX и TX. Кроме того, мы временно припаяем дополнительный провод к пину 34 непосредственно используемого в HC-05 Bluetooth-модуля EGBT-045MS, чтобы сменить имя, под которым будет видно устройство. Если вас устраивает имя по умолчанию, «HC-05», то можете ничего и не припаивать. Итак, VCC и GND пины подключаем к пинам 5V и GND Ардуины, TX пин HC-05 — к пину 2, а RX пин — к пину 3, и, наконец, пин 34 EGBT-045MS — к пину 4 Ардуины.

Получившаяся конструкция:

Ответ на вопрос где искать этот 34-ый пин у EGBT-045MS, содержится в EGBT-045MS / EGBT-046S Bluetooth Module Manual [PDF]:

Пример кода прошивки:

#include <Arduino.h>
#include <SoftwareSerial.h>

/* Connect HC-05 TX to Arduino RX and HC-05 RX to Arduino TX */
SoftwareSerial Bluetooth(2, 3); /* RX, TX */

const int pin34 = 4;
bool newline_printed = false;

void setup()
{  
  Serial.begin(9600);
  Serial.println("Arduino is ready");
 
  Bluetooth.begin(9600);  
  Serial.println("Bluetooth is ready");

  pinMode(pin34, OUTPUT);
  digitalWrite(pin34, HIGH);
  Bluetooth.println("AT+NAME=ARDUINO-BLUETOOTH");
  digitalWrite(pin34, LOW);
}

void loop()
{
  if(Bluetooth.available())
  {  
    char c = Bluetooth.read();
    if(c == '#')

    {
      if(!newline_printed)
      {
        Serial.println("");
        newline_printed = true;
      }
    }
    else
    {
      Serial.print(c);
      newline_printed = false;
    }
  }
 
  if(Serial.available())
  {
    char c = Serial.read();
    Serial.write(c);
    Bluetooth.write(c);  
  }
}

Взаимодействие с модулем происходит по UART. Так как мы не хотим потерять возможность обмена данными с компьютером, используется класс SoftwareSerial. Он работает точно так же, как уже знакомый нам Serial, но, в отличие от него, может использовать произвольные пины Arduino.

Подавая высокое напряжение на 34-ый пин EGBT-045MS, мы переводим его в режим выполнения AT-команд. Полный список доступных команд можно найти в уже упомянутом EGBT-045MS / EGBT-046S Bluetooth Module Manual [PDF]. В приведенном примере просто меняется имя модуля. Сменив его один раз, лишний провод можно смело отпаивать, так как модуль запомнить свое новое имя в энергонезависимой памяти.

Можно найти великое множество готовых Android-приложений, подходящих для передачи команд модулю HC-05. Мне, к примеру, очень понравилось приложение Arduino BT Joystick. У него есть как платная, так и бесплатная версия с рекламой. Интерфейс приложения выглядит как-то так:

Жмем Connect, находим в списке наше устройство, вводим пин 1234, и можно отправлять команды при помощи кнопок, а также встроенного в телефон акселерометра. Другими словами, приложение позволяет, помимо прочего, управлять Arduino, просто вращая телефон в руках.

Важно! Насколько я смог выяснить, устройства от Apple вообще не работают с HC-05 / HC-06. Для решения этой проблемы предлагается использовать BLE модули, например HM-10 или HM-11. Судя по видео на YouTube, HC-08 тоже подойдет. Опыта использования данных модулей на момент написания этих строк у меня, к сожалению, нет. В России их довольно сложно достать, видел только в одном интернет-магазине. А так нужно ждать доставки из Китая.

Разные приложения посылают данные в разных форматах. В случае Arduino BT Joystick используется формат вроде:

… где ## — это разделитель, b= указывает на то, что далее содержится код кнопки, 0, 1 и так далее — это коды кнопок. Учтите, что если пользователь ничего не нажимает, то приложение непрерывно шлет

##b=0##b=0##.... Если в приложении вы разрешили использование акселерометра, то помимо значений b также будут передаваться значения x, y и z.

Преимущество использования Bluetooth заключается в том, что не нужно делать отдельный джойстик. Подойдет любой смартфон или планшет под управлением Android. Кроме того, EGBT-045MS производит впечатление модуля, который легко выпаять из HC-05 и затем использовать в самодельный платах.

Полную версию исходников к этой заметке вы найдете на GitHub. Вопросы и дополнения, как всегда, горячо приветствуются!

Метки: AVR, Беспроводная связь, Электроника.

Bluetooth модуль для Arduino: характеристики, распиновка

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

Arduino bluetooth будет удобен для удалённого управления вашим устройством на базе микроконтроллера, но давайте разберём, что это такое и какие характеристики у bluetooth модулей hc 05 и hc 06.

Что такое bluetooth модуль и его назначение

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

Таким образом, первичное и главное назначение Ардуино блютуз – связь с вашим ПК и\или Андроидом по соответствующему протоколу. Это позволяет не только управлять разнообразными датчиками на микроконтроллере, но и, в случае необходимости, обновлять прошивку.

Полностью перепрошить устройство с его помощью не получится. Помимо этого, Android Arduino bluetooth может обеспечить связь между несколькими МК и приборами. Естественно, для этого на каждом из них должен быть установлен независимый модуль. HC-05 позволяет проложить несколько мостов по типу USAR-bluetooth-USART. При этом само устройство будет восприниматься в качестве ответного на USART. А организовывать связь уже будет аппаратная часть вашего проекта.

Модуль HC-06

У блютуз модуля под Ардуино, есть несколько преимуществ, перед стандартными дополнениями под другие МК:

  1. Инженеру нет необходимости изучать технологию протокола блютуз, чтобы написать софт или начать использовать уже готовые библиотеки.
  2. Простота использования в целом. Вам не нужно будет паять отдельную плату под распределение мощностей, просто подсоедините устройство к уже готовому МК через пины.
  3. Обширный выбор библиотек. Так как Ардуино имеет низкий порог вхождения, под все его модули можно найти большое количество библиотек, разного назначения. Но стоит отметить, что весомая их часть – бесполезны, ибо не работают или работают крайне плохо. Ведь пишет их сообщество, которое не изучало основы алгоритмизации и, в большинстве своём, в принципе, плохо разбирается в программировании. Из-за этого, во многих ситуациях, просто модифицировать чужой софт – не лучшее решение, и значительно проще написать свой.

Сфера же применения RC car Arduino bluetooth – огромна и ограничена лишь вашей фантазией. Например, вы можете купить обычную китайскую гарнитуру, припаять к ней пару модулей под Ардуино, так как они могут функционировать и без МК, и загрузить одну из готовых библиотек. После таких манипуляций наушники можно будет использовать в беспроводном режиме и исчезнет проблема с запутывающимися или гнущимися проводами. Это одна из банальных проблем реализации данного протокола в проекте, на деле их тысячи.

Предназначается bluetooth аудио модуль для бытового и коммерческого применения, чему способствуют его характеристики. Также стоит учитывать, что если вы собираетесь в дальнейшем связываться по одноимённому протоколу с ПК, то на большинстве современных устройств необходимо будет докупить блютуз по USB. Но вы можете также спаять его из МК, создав собственный bluetooth модуль для компьютера. Естественно, это не относится к ноутбукам, где поголовно устанавливаются одноимённые передатчики, и никак модифицировать их уже не требуется.

Распиновка HC-05 и HC-06

Выводы на платах отвечают за:

Вывод Значение
EN
включение/выключение модуля
VCC питание +5В
GND земля
TXD, RXD UART интерфейс для общения с контроллером
STATE индикатор состояния
KEY нога для входа в режим AT-команд

Характеристики

Давайте подробнее разберёмся, какие характеристики имеет такой bluetooth модуль для ПК и различных проектов. Сами разработчики заявляют, что выдержали коммерческий стандарт в hc 05. Соответственно, для управления устройством будет достаточно специальной программы на смартфоне или компьютере, которая позволит отправлять и получать данные с датчика. Однако существует ограничение в области применения, ведь устойчивый сигнал, без использования усилителей, можно поймать лишь на 9 метрах от чипа. Учитывайте, что это сырые цифры, в которых во внимание не берутся преграды на пути волн.

Сами hc чипы полностью совместимы с любыми адаптерами, что поддерживают SPP. На самой плате устройства размещается небольшая антенна, припаянная к верхнему слою в виде дорожки, похожей на змею. Характеристики девайса заявлены следующие:

  1. Активные частоты радиосвязи находятся в диапазоне 2.4-2.48 ГГц.
  2. Канал приспособлен к адаптивному переключению.
  3. Условная дальность связи – 10 метров, но в этой цифре не учитываются преграды и помехи.
  4. Максимальная скорость при обмене информацией – 115300 бод.
  5. Хранить чип можно в температурном диапазоне от - 40 до +85 градусов, а вот использовать – от -20 до +70.
  6. Для работы необходимо будет напряжение в 3.3 В, что мы рассмотрим чуть ниже.

Подключение

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

Устанавливать модуль необходимо достаточно плотно, для чего подойдёт стандартный МК или специальные платы, в которых применяются вилки-соединители. Но вы можете приобрести и отдельную плату под девайсы серии hc, или же сделать их самостоятельно, если у вас есть навыки по проектированию и созданию электронных плат.

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

При первом подключении важно проверить работоспособность, для этого подойдёт смартфон или ПК. Просто подайте ток на модуль и просканируйте его соответствующими устройствами.

Настройка

Для настройки чипа потребуется установить сопряжение по USART-bluetooth, где 34 контакт будет подсоединён к общему проводу. После этого вы можете подавать стандартные АТ команды или перепрошить микрочип, по вашему желанию.

Из «коробки» же пароль для подключения интерфейса – 1234, а вот скорость обмена данными ограничивается до 38400 бод. Готовых библиотек на HC 05 не много, но и направление его применения достаточно узкое, что позволяет адаптировать любой уже имеющийся софт под ваши потребности.

Page not found - Лаборатория проектов школы 169

Unfortunately the page you're looking doesn't exist (anymore) or there was an error in the link you followed or typed. This way to the home page.


Blog

  • 02/25/2021 - Новое пособие "Дизайн компьютерных игр"
  • 01/22/2021 - Snap4Arduino и проекты "виртуальной" робототехники
  • 01/21/2021 - Cеминар "Программирование микроконтроллеров в визуальных средах. От учебных проектов к профессиональным"
  • 01/18/2021 - Дистанционная внеурочка, материалы занятий по темам Робототехника и Дизайн компьютерных игр
  • 12/01/2020 - Лекция-демонстрация "Комплект на базе робота Makeblock mBot в школе и дома"
  • 11/24/2020 - Профессиональный и личностный успех в проектах технической направленности как фактор формирования социальных установок обучающихся
  • 11/23/2020 - Виртуальная робототехника на Scratch и Snap4arduino
  • 11/16/2020 - Цифровая образовательная среда. Проблемы, решения и влияние на социальные установки. Начало.
  • 11/11/2020 - Представляем 5 главу книги "Scratch и Arduino для юных программистов и конструкторов"
  • 08/25/2020 - Программа физического моделирования Algodoo, первые шаги
  • 08/19/2020 - Средства визуального программирования микроконтроллеров, краткий обзор обновлений
  • 08/04/2020 - Готовим дидактические материалы для внеурочки в условиях продолжающейся пандемии
  • 06/01/2020 - Шаг за шагом моделируем в Scratch гармонические колебания и упругое взаимодействие объектов
  • 04/27/2020 - Шаг за шагом моделируем столкновения объектов в среде Snap4arduino
  • 04/18/2020 - Шаг за шагом моделируем поведение робота в среде Snap4arduino
  • 04/04/2020 - Создание домашних заданий в TRIK Studio
  • 03/27/2020 - Дистанционное обучение робототехнике на платформе TRIK Studio
  • 03/05/2020 - Открытая учебная робоплатформа нового поколения
  • 02/25/2020 - Преемственность учебных материалов в робототехнике, альтернативы mBot
  • 12/12/2019 - Методы распределённой разработки как учебный инструмент в робототехнике
  • 12/10/2019 - Приглашаем на городской семинар «Современные микроконтроллеры и ранняя инженерная профориентация в школе»
  • 12/02/2019 - Открытые зимние состязания Санкт-Петербурга по робототехнике 2019
  • 11/22/2019 - Наш УМК по робототехнике - Победитель конкурса инновационных продуктов!
  • 10/22/2019 - Сборка робота на основе конструктива из набора "Ресурсный набор Lego Mindstorms EV3 (45560)"
  • 09/20/2019 - Наш УМК выставлен на участие в региональном конкурсе инновационных продуктов
  • 09/12/2019 - Семинар "Техносфера современной школы: создание и перспективы использования"
  • 09/01/2019 - Перевод регламента соревнований makeX 2019 года
  • 05/29/2019 - Апробация плат от Elecfreaks
  • 05/26/2019 - 2 место в категории "Следовании по линиии экстремал"
  • 05/15/2019 - Образовательный робонабор под нашу книжку.
  • 04/24/2019 - ME-Sensors 3D (модели для печати защитных пластин)
  • 04/18/2019 - Региональный круглый стол в 169-ой
  • 04/07/2019 - Поздравляем победителей открытых состязаний Санкт-Петербурга по робототехнике 6-7 апреля 2019
  • 03/31/2019 - Открытые соревнованиях по робототехнике Центрального района
  • 03/28/2019 - ИТНШ 2019. «Ноу-хау» на основной площадке конференции.
  • 03/27/2019 - ИТНШ 2019. Выездной семинар в 169-ой
  • 02/22/2019 - 3D-печать на занятиях. Из опыта работы.
  • 02/18/2019 - Fischertechnik. BT Стартовый набор. Пробуем ROBO Pro Light
  • 02/11/2019 - Образовательные продукты Makeblock - традиции, инновации и открытые стандарты
  • 02/02/2019 - Курсы робототехники в 169-ой
  • 01/30/2019 - Первый шаг в мир микроконтроллеров
  • 01/27/2019 - Городские соревнования "Юный конструктор"
  • 12/25/2018 - Обзор визуальных средств программирования микроконтроллеров (часть 2)
  • 12/20/2018 - Городской семинар "Scratch-подобные визуальные среды программирования микроконтроллеров: обзор, сравнение, расширение возможностей, опыт использования"
  • 12/19/2018 - Обзор визуальных средств программирования микроконтроллеров (часть 1)
  • 12/14/2018 - Игрофикация в робототехнике, плюсы и минусы
  • 12/14/2018 - Fischertechnik. BT Стартовый набор. Начинаем апробацию.
  • 12/05/2018 - MakeBlock Ranger. 3D модели для сборки. Вариант 1.
  • 11/22/2018 - Наш УМК - лауреат конкурса инновационных продуктов!
  • 11/21/2018 - Поздравляем нашего выпускника!
  • 10/23/2018 - В 169-ой переведен регламент MakeX Robotics Competition Blue Planet 2018
  • 10/18/2018 - Новое поколение микроконтроллеров и программных средств, в чем отличие?
  • 10/14/2018 - Зачем и как мы учим программировать микроконтроллеры. Как?
  • 10/06/2018 - Робофинист 2018: ведем мастер-классы, представляем новые продукты.
  • 10/05/2018 - Ура! В издательстве БХВ вышла наша новая книжка про роботов!
  • 09/28/2018 - 3D печать в школе - несколько зарисовок из опыта работы.
  • 09/22/2018 - Договор с MakeBlock Co.Ltd и ООО "ЦС Импэкс" о совместных исследованиях!
  • 06/08/2018 - Advanced Arduino Extension - расширение для mBlock3 от А.Григорьева
  • 04/24/2018 - Встреча: MakeBlock, DIGIS, БХВ и 169-ая))
  • 03/28/2018 - ИТНШ 2018. Выездной семинар в 169-ой.
  • 03/27/2018 - ПОФ 2018. Ярмарка «Успешных практик реализации ФГОС»
  • 03/20/2018 - mBot. Собираем оптимальную конфигурацию учебного робота.
  • 03/15/2018 - ПРОБЛЕМЫ ВНЕДРЕНИЯ УЧЕБНЫХ ПРОГРАММ ПО НАПРАВЛЕНИЮ "РОБОТОТЕХНИКА" В ОБЩЕОБРАЗОВАТЕЛЬНОЙ ШКОЛЕ
  • 03/08/2018 - 7-8 марта. Выступление на Робофесте 2018 в Москве.
  • 03/06/2018 - Новый видеоролик о mBot: "лягушка" и "жук"
  • 02/14/2018 - ОПЫТ ПРЕПОДАВАНИЯ РОБОТОТЕХНИКИ В ОБЩЕОБРАЗОВАТЕЛЬНОЙ ШКОЛЕ
  • 01/31/2018 - вебинар "Опыт школ по внедрению Инженерного инновационного класса"
  • 01/30/2018 - Семинар по программированию микроконтроллеров и технологиям "Интернет-вещей"
  • 01/18/2018 - Робототехника и экология. Выступление в Туле.
  • 12/09/2017 - "Робоняша" в 169-ой
  • 12/08/2017 - Новый ролик в видеоблоге: Робот mBot от компании Makeblock. ч.3-1. Расширение: шестиногий робот.
  • 11/30/2017 - Межрайонный мастер-класс
  • 11/25/2017 - 169-ой школе исполнилось 80 лет!
  • 11/18/2017 - Практиканты "Петровского колледжа" в 169-ой
  • 11/15/2017 - Новая книга!
  • 11/07/2017 - Проект "Знакомимся, mBot!"
  • 10/06/2017 - "Умные вещи", новый виток развития технологий
  • 10/05/2017 - Как связать два микроконтроллера по Bluetooth. Настраиваем HC-05 для работы в режиме Master
  • 10/04/2017 - СПО в школе. Давайте вместе заполним список! Часть 1. Поддержка робототехники и конструирования
  • 10/03/2017 - Робототехника... без роботов. Scratch и имитационное программирование. Движение по линии
  • 10/02/2017 - Стандарты для Arduino-роботов как возможность занять правильную нишу в образовательной робототехнике.
  • 10/02/2017 - Использование распределенных ресурсов сетевых партнеров для формирования современной техносферы образовательной организации
  • 10/02/2017 - Визуальное программирование микроконтроллеров в образовании

Как подключить Ардуино к компьютеру по Bluetooth

При проектировании измерительной системы или удаленного от ПК блока зачастую требуется обеспечить обмен данными. Можно использовать обычный USB провод и передавать через него, но это не удобно в двух случаях: 1. Устройство с Ардуино должно быть мобильным; 2. Нужно обеспечить гальваническую развязку с компьютером. В этих случаях на помощь приходит технология беспроводной передачи Bluetooth. В данной статье будет описано как это сделать очень просто!

К слову, как передать данные от Ардуино к компьютеру по USB можно посмотреть в статье о передаче в текстовом виде и передаче в бинарном формате здесь, на сайте LabData.ru. А беспроводной подход к передаче данных будет использован в проекте EasyEEG. Это обеспечит необходимую гальваническую развязку с различными устройствами и удобство использования нейрогарнитуры.

Комплектующие для подключения по Bluetooth

  1. Bluetooth модуль HC-06 (можно другие, работающие по последовательному протоколу UART. Например HC-05, HM-10,…)
модуль HC-06

Плата Ардуино, можно взять любую, имеющую выход Rx, Tx. Например, на базовых моделях Arduino UNO, NANO они находятся на выходах 0, 1.

Ардуино с подключенным Bluetooth
  1. Bluetooth адаптер или встроенный в ПК модуль bluetooth.
USB Bluetooth адаптер для ПК

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

Подключение модуля HC-06

Для соединения модуля HC-06 или подобного с Ардуино достаточно подключить его к питанию 5 V и GND, а выводы RXD и TXD соединить крест накрест с соответствующими выводами Ардуино. То есть RXD -> Tx, а TXD -> Rx.

Выводы модуля HC-06

Важный момент! Базовые версии Ардуино имеют один UART и он используется для связи по USB (для программирования), поэтому при включенном Bluetooth модуле общаться по USB не удастся! Для программирования Ардуино предусмотрите возможность отключения питания Bluetooth модуля, например отключения линии 5 V. После загрузки прошивки и отключения от USB, питание модуля можно включить, а к Ардуино подключить питание от батареи.

Схема соединения Bluetooth модуля с Ардуино

Процесс подключения к компьютеру по Bluetooth

Процесс подключения состоит из двух основных этапов:

  1. Спаривание с ПК
  2. Подключение к устройству по последовательному соединению Спаривание с ПК по Bluetooth

Процесс спаривания устройств

Спаривание проводится один раз, потом параметры соединения сохраняются. Для начала спаривания системы по Bluetooth, подайте питание на плату Ардуино и включите Bluetooth адаптер в ПК.

На ПК под управлением ОС Windows в панели задач около часов появится значок Bluetooth.

Нажмите на него правой клавишей и в открывшемся меню выберите “Добвление устройства Bluetooth

В зависимости от версии ОС Windows откроется окно с параметрами ПК, для версий выше Win8 откроются параметры ПК, там нужно выбрать пункт “Компьютеры и устройства” -> “Bluetooth“. На экране будет происходить поиск устройств Bluetooth и скорее всего включенное устройство HC-06 будет уже найдено.

Щелкните на него и нажмите на кнопку “Связать”

При запросе пароля введите “1234” или “0000” – это пароли по умолчанию Bluetooth модулей. Если же пароль был изменен, то введите актуальный пароль.

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

Подключение к ПК по последовательному соединению

Удобство соединения Ардуино по Bluetooth состоит в том, что оно происходит по тому же протоколу, что и через USB! Не придется переписывать программу приема данных для этого!
Достаточно узнать номер COM порта и задать его в принимающей программе и все.

Кстати, скорость соединения по умолчанию у Bluetooth модуля установлена 9600 бод, поэтому для обеспечения совместимости с передачей по проводному и беспроводному соединению, лучше выбирать именно такую скорость. Если же этого не достаточно, то придется перепрограммировать Bluetooth модуль при помощи AT команд.

Ну а для поиска номера порта можно воспользоваться Диспетчером устройств Windows. Он доступен в панели управления Windows.
Откройте ветку “Порты (COM и LPT)” и там найдутся две записи “Стандартный последовательный порт по соединению Bluetooth(COM..)

Вот тут есть некое отличие от проводного соединения! Создаётся сразу два порта на одно устройство. Один из них для приема, а другой для передачи. Поэтому запомните оба номера и один из них позволит принимать данные через Bluetooth. Отправлять данные в Ардуино нужно по второму.
Вот и все, что качается организации связи. Сам процесс передачи ничем не отличается от проводного соединения и подробно описан в статьях:

  1. Передача на ПК в текстовом формате
  2. Передача на ПК в бинарном формате

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

(с) Роман Исаков, 2021

Приложения для удаленного управления Arduino

В данном обзоре указаны 10 распространенных приложений в управлении Ардуино с компьютера или телефона, которые легки в изучении и использовании. Arduino – это платформа, разработанная ввиду технологий современного программирования. Плата  с USB разъемами  для блока питания. При подключении к ПК, заряжается. Во внутренней системе есть кнопка для форматирования данных.

Главные составляющие:

  • Бредбоард – соединяет платформу с устройством.
  • Светодиод – индикатор, сигнализирует об управлении.
  • Резистор — контролирует подачу электрического тока внутри платформы.
  • Фоторезистор – реагирует на тип освещения.
  • Транзистор – усиливает электрические сигналы и используется в сложных цепях.

Это было внутреннее описание. Далее переходим к обзору самого приложения. Компанией Google был создан новый интерфейс прикладного программирования под названием Arduino. Предназначается для связи Android устройства с USB. Открывает большие возможности в создании проектов и упрощает программирование и управление с экрана мобильного телефона. Помогает управлять синхронизацией данных.

Обзор возможностей Arduino:

  • создание скетчей;
  • их редактирование, компилирование и загрузка в плате;
  • программирование и разработка кодов.

Работа производится со смартфона из любой части земного шара. В данном обзоре будут описаны программы, разработанные для удаленного пользования Ардуино, а именно Bluetooth и Wi-fi — контроллерами. Они просты в использовании и позволяют работать с любого гаджета. Проект Ардуино состоит из 3 этапов:

  • написание кода;
  • макетирование;
  • прошивка.

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

Arduino Bluetooth Controller

Эта программа работает в 3 основных положениях:

Контроллер. Приложение демонстрируется в облике play идентификатора и управляется кнопками переключения. Работает одной клавишей, основная функция которой – дистанционное управление.
Диммер. На расстоянии регулирует настройки яркости и скорости.
Терминал. Осуществление отправления директива для дешифрирования.

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

ArduinoDroid — Arduino IDE

Используется программистами как средство редактирования кодов и создания программ. Особенность – написанный скетч превращается в СС+, компилируется и грузится в Arduino. Отлично подходит для работы новичков в этой области. Приложением можно пользоваться бесплатно и в открытом доступе.

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

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

RemoteXY: Arduino Control

Данная программа управления Ардуино, позволяет создать персональную панель. Дистанционное управление происходит через:

  • Инет;
  • Вай-Фай;
  • Ик-порт;
  • Блютуз.

На странице http://remotexy.com можно найти и скачать много интересных инструкций. К примеру, как создавать оригинальные клавиши и переключатели. Функционал адаптирован под новичка и не создаст проблем в использовании.

Управление ардуино с компьютера, а именно RemoteXY, возможно через облако. Это превозносит его перед аналогичными русскими софтами Arduino.

Приложение Blynk

Этакий разработчик идей, имеющий открытый вход  к запуску на платформе Ардуино. Главное требование в использовании – наличие интернета: Wi-Fi или мобильный трафик. Только в этом случае Blynk будет готов к выполнению. Начать использование можно спустя несколько  минут, после окончания настроек. Программой поддерживается АО по выбору пользователя.

Основные функции приложения Blynk заключаются в управлении устройствами при помощи удаления и добавления протоколов HTTP,  а также запросов GET и POST. Значения параметров можно обновлять и получать. Запросы обновляются в самом приложении.

Вариативность – важная точка программы. Имея связь с работающими платформами, можно соединиться с сервером любым удобным способом. Данный инстинктивный портал обладает простотой в использовании над проектом. Библиотека постоянно обновляется для всех приложений Arduino Blynk.

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

Bluino Loader – Arduino IDE

ПО для компиляции кода в файл и загрузки его на платформу Ардуино через смартфон и USB OTG. Громоздкие кнопки и запутанные провода значительно усложняют работу над проектами. Для упрощенного контроля удаленным администрированием предоставляется графический идентификатор Bluino Loader IDE. Разрабатывает проекты, доступные триггеру. Подключается к всемирной паутине с помощью: Wi-Fi, Ethernet или через накопитель ESP8266. Когда необходимые процедуры будут выполнены и произойдет начало работы, приложение даст сигнал.

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

Arduino Bluetooth Control

Сокращенное название — ABC. Управляет и контролирует основные возможности API. Используется в мониторинге контактов через Bluetooth. Работает в автономном режиме. Приобщение к работе производит строго из Ардуино.

Инструменты, используемые в процессе:

  • Metrics – передает показатели о сбоях и изменениях. Те, свою очередь, приходят на телефон в виде сообщения об остановке работы. Это подобие функции, где встряхнув гаджет можно отправить данные.
  • Клавиши с указателями – служат для отправки информации.
  • Терминал – варьирует информацией с временными показателями по назначению.
  • Accelerometer – управление жестами. Смартфон превращается в механизм для регулирования машины.
  • Голос – создает речевые команды. Доступно голосовое общение с роботом.
  • Кнопки – функционируют 6 штук в горизонтальном положении. Используются для доставки информации на Arduino.

Управление проектами в дистанционном и удаленном виде стало частой необходимостью. ABC подходит для этих целей на 100%. UART (Serial) предназначается для беспроводного соединения Ардуино и PC. Данное подключение не нуждается в библиотеках и схемах.

BT Voice Control for Arduino

Главное предназначение данного софта – передача ультразвуковых сигналов сквозь преобразователи. Они соединены с платформой Arduino андроид благодаря Bluetooth порту. Главный модуль в работе — HC-05. Он передает интервал между объектами.  Данные отображаются в смартфоне и на Hub диске портала, через это приложение.

BT Voice Control – это голосовое управление Ардуино. Владеет функцией распознавания команд: forward, back, left, right. Чувствительные датчики переадресовывают расстояние в объект Arduino. Далее при помощи модуля Bluetooth HC-05 направляет его в приложение. Программа сэкономит время, тратящееся на набор команд вручную.

Virtuino

Программа для Андроид, предназначенная для мониторинга сенсора. Управляет электро устройствами через Bluetooth, Wi-Fi или Интернет.

При помощи Виртуино создаются:

светодиоды;
кнопки;
переключатели;
дисплеи задач;
инструменты;
регуляторы.

 Приложение способно совмещать несколько проектов в один. Управляет отличными платформами единовременно через Bluetooth и Wi-fi. Бесплатно в использовании. Относится к подкатегории System Maintenance. Есть возможность проектировать внутреннее оформление с разной визуализацией.

К ним относятся:

  • светодиоды;
  • переключатели;
  • диаграммы;
  • счетчики;
  • аналоговые приборы.

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

Bluetooth Controller 8 Lamp

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

Bluetooth Controller 8 Lamp создан для регулировки функций Ардуино 8 канальным контроллером. Работает при помощи модулей Bluetooth HC-05, HC-06 и HC-07. 8 кнопочный интерфейс соответствует каждой лампочке.

Метод активен только в пределах видимости. В сравнении с другими беспроводными способами — этот самый дешевый. Комплектующие платы стоят менее 1 доллара. Для работы подходят даже подержанные варианты. Статичные девайсы, используя инфракрасный контроллер в потолочных светодиодных лентах, решают легко проблемы, возникшие в процессе.

IoT Wi-Fi контроллер

Интерфейс этого приложения показывает все операции ввода и вывода на Ардуино. Переключение GPIO и показания АЦП управляют гаджетом в реальном времени.

Добавить WI-Fi к устройствам возможно с помощью IoT контроллера. Он имеет 8-битный микроконтроллер и IMU (Inertial Measurement Unit). Соединение защищено однокристальным крипто-ускорителем ECC 608.

Уникальный интерфейс IoT Wifi Controller отображает контакты в реальном времени с подробной информацией, благодаря уровню GPIO. Показатели ADC также можно подключать к плате с помощью телефона (Айфона) или маршрутизатора.

 Не реализованные функции:

  • расширенная подсветка анаграмм;
  • автозаполнение;
  • руководства для объединения других приложений.

 Базы Uno R3 и FTDI в данное время поддерживают рабочее состояние платы Arduino. В процессе находится разработка Mega, Due и Nano. Используемые в обучении платы Arduino — USB кабель OTG не влетит в копеечку. Стоимость до 2 долларов.

Программа  «умный дом» работает при помощи платформы Arduino. В данном случае используется данный андроид и сама платформа. Для работы совместили домашние и веб серверы. Результат превзошел ожидания. Теперь при помощи мобильного устройства можно управлять системой целого дома: включать и выключать свет, электрические приборы, закрывать двери, окна и другое.

В статье рассмотрены 10 обзорных приложений — для платы «Ардуино». В процессе работы и изучения не возникнет проблем с программированием Windows и в других. Затруднения решаются подключением к пинам. Те в свою очередь аппаратно запрограммированы UART. Далее используются традиционные библиотеки.

Регулирование платформы Ардуино и ее «помощников», увеличивают программирование и соприкосновение с другими устройствами. Регулировка показателей, изменение настроек, создание роботов и машин – это теперь делается, при помощи удаленного контроля и управлению. Эта самая популярная плата, используемая в программировании.  Необходимые запчасти и аксессуары для работы и учебы, продаются по доступной цене в соответствующем магазине компьютерной техники.

Управляем Bluetooth модулем с телефона! Arduino

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

        В магазинах приложений для операционных систем на базе Android таких программ намного больше. Например, Bluetooth Terminal

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

  

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

В терминале есть возможность для обмена данными с помощью монитора порта, как на картинке ниже:

                   

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

        А если кто забыл, то напомню, что в первой части этой статьи мы разбирали код, по которому светодиод включается при отправке в порт 1, и гаснет при отправке 2. Если то же самое проделать, но уже с приложением в телефоне, то все получится также , как и через компьютер. Согласитесь, это гораздо проще и удобнее.

       На этом наша статья подходит к концу, делитесь ей с друзьями, если она была вам интересна и ожидайте новых полезных заметок! Желаю всем удачной компиляции и крутых проектов, до новых встреч!

                                                                                                                                                                                                                                             

7 крутых Bluetooth DIY проектов, которые обновят ваши старые гаджеты

Bluetooth является одним из наиболее распространенных способов взаимодействия двух устройств. Каждый телефон, планшет и ноутбук оснащен встроенным Bluetooth, как и несколько периферийных устройств. Таким образом, с помощью небольшой самостоятельной работы (DIY), вы можете сделать некоторые замечательные вещи с помощью этой технологии.

Для любого проекта в этом списке, вам нужно знать основы DIY электроники

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

1. Подключите Arduino к Arduino через Bluetooth

Основной проект, который вам нужно освоить, — это настроить Bluetooth на микроконтроллере Arduino и настроить его на беспроводную связь с другой платой Arduino. Для этого у Martyn Curry есть отличное пошаговое руководство, соединяющее две платы Arduino.

как хозяин и раб.

Естественно, для этого вам понадобятся две платы Arduino и два модуля приемника Bluetooth. Для начала начните с его основного урока, где он научит вас, как дистанционно управлять светодиодной подсветкой на подчиненном Arduino через мастер Arduino.

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

Изучение основ настройки Bluetooth на двух устройствах Arduino откроет вам массу возможностей, начиная с проектов Arduino для начинающих.

в откровенные странные проекты Arduino

,

2. Беспроводная доска объявлений для телефонных сообщений

Это может быть самый простой и полезный проект для начала. С платой Arduino, несколькими проводами и ЖК-экраном вы можете набирать текст на телефоне и отображать его на экране. Точно так же у вас будет беспроводная доска объявлений.

Этот проект не требует пайки или каких-либо дополнительных навыков, вы будете только подключать кабели к деталям. Даже код для платы Arduino готов к загрузке, и есть удобное приложение для Android, которое вы можете получить из Play Store. Все это должно занять не более получаса, и это идеальный способ начать работу над проектами электроники DIY

,

3. Добавьте Bluetooth к старым проводным наушникам

Если у вас есть пара старых проводных наушников, которые сломались

не выбрасывайте их. Этот крутой урок по самодельному обучению покажет вам, как превратить их в беспроводные наушники, добавив Bluetooth, а также даст вам новый штекер для подключения стандартного кабеля 3,5 мм.

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

В проекте вы разберете наушники и приемник, а затем спаяете их вместе. Затем вставьте все в динамик, сделайте отверстие для разъема 3,5 мм и зарядного кабеля.

Все это не будет стоить вам больше 10 долларов, что дешевле, чем даже лучшие бюджетные наушники Bluetooth

мы можем порекомендовать.

4. Добавьте Bluetooth в любую автомобильную стереосистему

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

, Как правило, простой FM-передатчик Bluetooth может сделать работу. Но это означает, что вы получаете дополнительное устройство в автомобиле вместо невидимой автомобильной стереосистемы Bluetooth. Для энтузиастов сделай сам есть лучший способ.

Стерео в вашем автомобиле на самом деле достаточно места, чтобы добавить модуль Bluetooth. Это стоит около $ 10 на eBay. Все, что вам нужно сделать, это открыть стерео, подключить модуль и немного припаять.

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

прежде чем пытаться скопировать его.

5. Умный шлем Bluetooth

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

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

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

6. Arduino Bluetooth RC Автомобиль

Кто не любит хорошую игрушку с дистанционным управлением

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

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

Наряду с этим вам понадобится шасси старого RC автомобиля, а также дешевый Arduino Nano

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

7. Bluetooth Замок

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

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

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

Остерегайтесь недостатков Bluetooth и угроз безопасности

Как бы ни была удобна технология Bluetooth, у нее есть несколько недостатков, о которых вам нужно знать. Фактически, открытый и общий характер беспроводного стандарта делает его обычной целью для злоумышленников. Если вы выполняете какой-либо из этих проектов Bluetooth DIY, ознакомьтесь с информацией о рисках безопасности Bluetooth.

,

Arduino Bluetooth Basic Tutorial - Arduino Project Hub

Посмотрите, как это работает?

Посмотрите видеоурок

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

Arduino Pins Bluetooth Pins

RX (Pin 0) ———-> TX

TX (Pin 1) ———-> RX

5V ———-> VCC

GND ———-> GND

Подключите отрицательный светодиод к GND Arduino, а положительный - к контакту 13 с сопротивлением 220 Ом - 1 кОм.На этом все готово. Это работает?

HC 05/06 работает по последовательной связи. Здесь приложение для Android предназначено для отправки последовательных данных в модуль Bluetooth при нажатии определенной кнопки. Модуль Bluetooth на другом конце получает данные и отправляет их в Arduino через вывод TX модуля Bluetooth (вывод RX Arduino).Код, передаваемый в Arduino, проверяет полученные данные и сравнивает их. Если полученные данные равны 1, светодиод гаснет, когда полученные данные равны 0

Откройте последовательный монитор и посмотрите полученные данные

Приложение для Android

В этом руководстве я не будет охватывать руководства по разработке приложений для Android. Вы можете скачать приложение для Android отсюда и исходный код всего проекта. В будущем я, возможно, буду размещать здесь обучающие материалы http://mgprojecthub.com

Как использовать приложение?

Посмотрите видео, как выполнить сопряжение с модулем Bluetooth

  • Загрузите форму заявки здесь или здесь
  • Сопряжение устройства с модулем Bluetooth HC 05/061) Включите модуль Bluetooth HC 05/062) Выполните поиск доступного устройства3) Подключите к HC 05/06, введя пароль по умолчанию 1234 ИЛИ 0000
  • Установите приложение LED на устройство Android
  • Откройте приложение
  • Нажмите сопряженные устройства
  • Выберите модуль Bluetooth из списка (HC 05)
  • После подключения успешно
  • Нажмите кнопку ON, чтобы включить светодиод, и кнопку OFF, чтобы выключить светодиод
  • Кнопка отключения для отключения от модуля Bluetooth

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

ОБНОВЛЕНИЕ: Оцените моего робота Bluetooth RC, использующего Arduino.

Ознакомьтесь с моими новыми проектами в моем блоге

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

Также см. Мои аналогичные руководства и проекты

Поддержите меня, купив мне кофе

Модули Bluetooth для Arduino | Into Robotics

Эта статья последний раз обновлялась в феврале 2018 г.

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

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

HC-05

Bluetooth-модуль HC-05

Если вы смотрите на YouTube фильм с роботом, управляемым через Bluetooth, скорее всего, беспроводная связь осуществляется с помощью модуля HC-05. Модуль HC-05 знаком, дешев (Amazon) и предназначен для прозрачной настройки беспроводного последовательного соединения с Bluetooth SPP (протокол последовательного порта).

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

Этот модуль Bluetooth покрывает 9 метров (30 футов) сигналов и работает как ведущий или как ведомый. Например, робот может быть спроектирован как ведущий, подключенный к ведомому модулю Bluetooth, или как ведомая плата для установления беспроводного соединения с ПК.

HC-06 RS232 TTL

Модуль HC-06 RS232 TTL

На втором месте после HC-05 находится модуль HC-06 (Amazon). Это также популярно и очень просто в установке с платой Arduino.

Модуль подходит там, где необходима беспроводная передача данных в ведомом режиме.Плата может быть дополнена последовательным кабелем USB-TTL для подключения к вашему ПК. Как и HC-05, модуль HC-06 может достигать диапазона до 9 метров (30 футов).

Если вам нужен модуль Bluetooth для связи со смартфоном и платой Arduino, HC-06 подойдет. Но если вы хотите поговорить с другой платой для разработки Arduino, модуль HC-05 - это то, что вам нужно.

BLE Link Bee
Добавлено в феврале 2018 г.

BLE Link Bee

BLE Link Bee - это новая линейка модулей Bluetooth, совместимых с платой Arduino.Модуль поддерживает переключение главный-подчиненный. Он имеет дальность передачи до 60 метров в свободном пространстве и делает его одним из самых мощных модулей Bluetooth.

Это модуль последовательного интерфейса Bluetooth 4.0, разработанный для использования в компактной форме разъема XBee. Это один из немногих модулей, в котором интегрирован стабилизатор напряжения, поддерживающий микроконтроллеры как на 5 В, так и на 3,3 В.

Если вы планируете использовать смартфон под управлением iOS или Android для управления роботом, вы можете использовать приложение Play Bluno, чтобы немедленно начать обмен данными между телефоном и Arduino.

BLE Mini

Модуль BLE Mini Bluetooth 4.0 с низким энергопотреблением (BLE)

Если вы хотите легко управлять роботом с помощью iPhone, iPad или iPad mini или последнего поколения iPod, вы должны использовать BLE Мини-доска. Также модуль совместим с любыми устройствами Android с оборудованием BLE.

Модуль Bluetooth легко настраивается с помощью платы Arduino и имеет радиус действия 50 метров (164 фута).

Вам разрешается разработать собственное приложение для iOS с помощью SDK с открытым исходным кодом, предоставленного компанией Red Bear.

Модуль включает технологию Bluetooth 4.0 с низким энергопотреблением (BLE) и требует только последовательного порта для связи. Как и почти любой другой модуль Bluetooth, этот совместим с некоторыми из самых популярных макетных плат, таких как Arduino, Raspberry Pi или BeagleBone Black.

BlueSMiRF

BlueSMiRF и Bluetooth Mate

Подключение к другим устройствам с помощью технологии Bluetooth не занимает много времени и действительно просто.

BlueSMiRF от Sparkfun (Amazon) - один из модулей Bluetooth, совместимых с Arduino, на котором установлен приемопередатчик. Это означает, что модуль Bluetooth может отправлять и получать данные на расстоянии до 100 метров (328 футов).

BlueSMiRF работал прямо из коробки и совместим с другими устройствами Bluetooth, поддерживающими SPP. Беспроводной модуль идеально подходит для приложений, требующих расстояния до 100 метров (328 футов).

JY-MCU

Модуль JY-MCU

Модуль JY-MCU (Amazon) может подключать устройства и роботов, которые генерируют огромные объемы данных.Совместимый с любым устройством Android, модуль Bluetooth покрывает расстояние 9 метров (30 футов) между ведущим и ведомым устройствами.

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

ITEAD BT

Защитный экран ITEAD BT Bluetooth

Модуль BT Bluetooth представляет собой штабелируемый экран с последовательными портами на основе модуля HC-06.Экран можно подключить напрямую к порту Arduino UART для беспроводной связи. Без препятствий или других помех экран Bluetooth может обмениваться данными на расстоянии до 10 метров (32 фута).

Shield Bluetooth с RN-42

Bluetooth Shield с RN-42

Bluetooth Shield RN-42 - это то, что вам нужно для любого проекта, в котором вы хотели бы использовать микроконтроллер Arduino. Но в отличие от HC-05 и HC-06, он стоит 28,00 €. Щиток устанавливается поверх платы Arduino и работает в диапазоне максимум 20 метров (65 футов).

Bluefruit EZ-Link

Модуль Bluefruit EZ-Link

Bluefruit EZ-Link представляет собой комбинацию всех модулей, описанных выше. При радиусе действия 10 метров (32 фута) модуль Bluetooth не требует дополнительного программного обеспечения или специального оборудования для беспроводной связи с другой системой Bluetooth.

Модуль Adafruit разработан для работы с последовательной консолью или с использованием кабеля типа FTDI.

В отличие от других модулей Bluetooth, EZ-Link поддерживает автоматическое определение COM-порта.

Как управлять Arduino с помощью Bluetooth? Учебник с модулями и щитами

Интересно, как можно связать плату Arduino и управлять ею с помощью Bluetooth? Если да, то вы попали в нужное место! В сегодняшнем руководстве Arduino Bluetooth я расскажу, как легко начать работу!

Наряду с руководством по Arduino Bluetooth я предоставлю:

  • Список модулей Arduino Bluetooth для вашего рассмотрения
  • Проекты Arduino Bluetooth для начала работы

Пошаговое руководство Arduino Bluetooth

Давайте сразу начнем с учебника Arduino Bluetooth Tutorial, в котором я расскажу все, что вам нужно знать о сопряжении Arduino с Bluetooth.От конфигурации оборудования до программирования и использования с вашим iPhone или устройствами Andriod!

1. Что вам понадобится для этого руководства Arduino Bluetooth:
  • Вы можете использовать Arduino nano или Arduino Uno для этого руководства по Bluetooth.

Подробнее об используемом модуле Bluetooth:

Grove - Blueseeed - Двойная модель (HM13)

Гибкая и оснащенная высокой скоростью передачи данных Bluetooth, Grove - Blueseeed LE - Dual Model (HM13) использует двухрежимный чип Bluetooth CSR с одним чипом архитектуры ARM, который поддерживает инструкции AT.

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

Вам может быть интересно; почему бы вместо этого не использовать модуль Bluetooth HC-06 или HC-05 Arduino? Что ж, с Grove - Blueseeed - Dual Model (HM13) вы получаете следующие ключевые преимущества:

  • Bluetooth 4.0 BLE вместо Bluetooth V2.0
  • Низкое энергопотребление

Чтобы больше не останавливаться на руководстве, вы можете узнать больше об этом модуле Bluetooth здесь!

2.Конфигурации оборудования:
  • Шаг 1: Подключите Grove - Blueseeed - Dual модель (HM13) к порту Grove на Grove - Base Shield через кабель Grove
  • Шаг 2: Подключите Grove - Base Shield к вашей плате Arduino
  • Шаг 3: Подключите Arduino к ПК через USB-кабель

3. Понимание программного обеспечения:

Условные обозначения

  • В режиме EDR можно настроить только ведомое устройство, в то время как ведущее или ведомое устройство может находиться в режиме BLE.
  • Заводская настройка по умолчанию:
    • EDR Имя HMSoft, роль ведомого, PinCode 1234
    • Имя BLE HMSoft, роль ведомого, PinCode 000000
    • Скорость передачи: 115200, N, 8, 1;
  • Формат AT-команды:
    • Прописные буквы Формат AT-команды. строковый формат без каких-либо других символов. (например, \ r или \ n).
    • Любая неверная команда не получит ответа.

Чтобы увидеть полный список AT-команд, перейдите на нашу вики-страницу!

4.Как программировать на модуле Bluetooth Arduino

После понимания конфигурации программного обеспечения, вот как настроить Bluetooth с помощью ПК. Информацию о подключении оборудования см. В разделе «Конфигурации оборудования». Вы обнаружите, что мигающий синий светодиод на модуле показывает, что соединение не установлено.

  • Шаг 1: Откройте последовательный терминал и установите скорость передачи: 115200, биты данных: 8, стоповые биты: 1 и отсутствие управления потоком, как указано выше.
  • Шаг 2: Отправьте «AT» на Bluetooth с последовательного терминала на проверьте, получаете ли вы «ОК».
    • Bluetooth отвечает только на AT-команды в следующих случаях:
      • Соединение не установлено
      • Все команды рассматривались как строка и отправлялись.

* Вы можете различить вышеуказанное состояние на шаге 2 с помощью светодиодной индикации.

После вышеуказанных шагов он должен выглядеть примерно так:

Вот несколько полезных конфигураций, которые можно отправить:

  1. Проверьте последовательное соединение, отправьте «AT», вернет «OK».
  2. Восстановить заводские настройки, отправить «AT + RENEW», вернуть «OK + RENEW».
  3. Сбросьте скорость последовательного порта, отправьте «AT + BAUD2», верните «OK + Set: 2».
  4. Включить аутентификацию, отправить «AT + AUTh2», вернуть «OK + Set: 1».
  5. Сбросьте настройки Bluetooth, отправьте «AT + RESET», верните «OK + RESET».
  6. Запросить версию прошивки, отправить «AT + VERS?», Вернуть «OK + Get: HMSoftV217».
  7. Запросить MAC EDR, отправить «AT + ADDE?», Вернуть «OK + Get: 000E0E002074».
  8. Запросить MAC BLE, отправить «AT + ADDB?», Вернуть «OK + Get: 000E0B002074».
  9. Задайте имя EDR, отправьте «AT + NAMEHM-13-EDR», верните «OK + Set: HM-13-EDR».
  10. Задайте имя BLE, отправьте «AT + NAMEHM-13-BLE», верните «OK + Set: HM-13-BLE».
  11. Установите пароль EDR, отправьте «AT + PINE123451», верните «OK + Set: 123451».
  12. Установите пароль BLE, отправьте «AT + PINB123451», верните «OK + Set: 123451».
  13. Включите обнаружение и возможность подключения, отправьте «AT + SCAN0», верните «OK + Set: 0».
  14. Включить уведомление о соединении, отправить «AT + NOTI1», вернуть «OK + Set: 1».
  15. Уведомить информацию, включая адрес, отправить «AT + NOTP1», вернуть «OK + Set: 1».
  16. Включить ключ пользователя, отправить «AT + PIO01», вернуть «OK + Set: 1».
  17. Установите центральный режим, отправьте «AT + ROLB1», верните «AT + ROLB1».
  18. Установите периферийный режим, отправьте «AT + ROLB0», верните «AT + ROLB0».

Мы использовали два Bluetooth, которые были подключены к ПК, один из которых был центральным, а другой - периферийным.Через несколько секунд они находят друг друга и светодиод перестает мигать подключенным!

5. Как связать модуль Bluetooth Arduino с iPhone и Andriod

Поскольку модель Grove - Blueseeed - Dual (HM13) имеет два протокола: Bluetooth EDR (повышенная скорость передачи данных) и Bluetooth с низким энергопотреблением (BLE), он может взаимодействовать как с Andriod, так и с iPhone!

В этой части руководства мы будем использовать iPhone, чтобы продемонстрировать, как вы можете взаимодействовать с Bluetooth!

* Примечание. Приведенное ниже руководство работает в более старой версии iOS, но должно работать с тем же

.
  • Шаг 1: Включите Bluetooth и настройте его как периферийную роль
  • Шаг 2: Найдите LightBlue в App Store и установите его
  • Шаг 3: Запустите приложение и подключиться к «HM-13-BLE»
  • Шаг 4: Коснитесь свойств и нажмите «прослушать уведомления», чтобы включить прием данных.
    • В правом верхнем углу под свойствами есть шестнадцатеричная клавиша для изменения формата данных.
  • Шаг 5: Нажмите «Записать новое значение» и напишите несколько слов, чтобы начать отправку данных на ПК.

С помощью последовательного терминала вы также можете передавать данные с ПК на iPhone:

6.Руководство по передаче данных Bluetooth между двумя платами Arduino

Теперь, после всех вышеперечисленных шагов, вы готовы писать код? В этом последнем разделе мы воспользуемся двумя Arduino Uno и парой модулей Bluetooth, чтобы начать работу!

  • Шаг 1: Установите соединение, указанное в разделе конфигурации оборудования.
  • Шаг 2: Назначьте роль Bluetooth для центрального устройства, изменив текст на «#define MASTER 1».
    • Программа центрального и периферийного использования тот же код, но есть различие в микроопределении в начале программы
  • Шаг 3: Следуйте приведенной ниже блок-схеме для инициализации программы

После инициализации центральное и периферийное устройства будут делать разные вещи; Central отправит сообщение в Peripheral interval и распечатает то, что получено от Peripheral, в то время как Peripheral отвечает только на центральный

  • Шаг 4: Загрузите тестовый код и откройте HM-13_SW.ino с Arduino IDE, скомпилируйте и загрузите в Arduino Uno
    • Не забудьте настроить Bluetooth на другую роль, изменив макрос в начале
  • Шаг 5: После загрузки программы откройте два окна последовательного терминала и дождитесь соединение Bluetooth
    • Соединение обозначается: светодиоды на модулях Bluetooth будут мигать в течение нескольких секунд, перестанут мигать и будут гореть

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

Список других рекомендованных модулей Bluetooth Arduino

Теперь, когда я изучил вышеупомянутое руководство по Arduino Bluetooth, вот список других рекомендуемых модулей Arduino Bluetooth, которые можно попробовать! Все они совместимы с Grove!

Grove совместим? Система

Grove является собственной инициативой Seeed, в основном направленной на то, чтобы помочь таким же пользователям, как вы, легко использовать различные модули, датчики и многое другое с помощью нашей системы plug and play!

  • В настоящее время у нас уже имеется более 200 модулей Grove, включая другие модули / типы датчиков, которые вы можете выбрать!

Не представляете, насколько легко создать пары с Grove? Ниже показан общий модуль Bluetooth Arduino по сравнению с одним из наших модулей Grove - Bluetooth:

  • Типичная схема сопряжения Arduino Bluetooth
  • С модулем Grove Bluetooth

Нравится, насколько это просто и менее беспорядочно?

Все, что вам нужно, это Grove Base Shield вместе с Arduino, и вперед!

Хорошо, теперь давайте начнем с нашего списка модулей и щитов Arduino Bluetooth!

1.Опция Bluetooth V4.0: Grove - Blueseeed (HM11)

Самая полная, самая удобная, самая стабильная передача данных Bluetooth, дистанционное управление, модуль сбора данных PIO

Ведущее устройство и ведомое устройство в одном
Пульт дистанционного управления без других микроконтроллеров
Сбор данных PIO без других микроконтроллеров

The Grove - Blueseeed LE (HM11) - это модуль Bluetooth с низким энергопотреблением, в котором используется HM11 с возможностями, описанными выше в его техническом описании.Его можно использовать с вашей платой Arduino вместе с базовым щитом, как в предыдущем руководстве!

Благодаря поддержке BLE ComAssistant APK этот модуль Bluetooth может легко связываться с вашим телефоном без сопряжения!

  • Его также можно настроить напрямую через AT-команды!

Применимый во многих условиях, таких как управление роботом или оборудование для дистанционного управления, этот модуль Arduino Bluetooth подходит как для новичков, так и для заядлых мастеров!

Хотите узнать больше?

  • Мы предоставили простой и удобный набор команд вместе с руководством по сопряжению Arduino на странице нашего продукта!

2) Grove - серийный Blueseeed (CSR BC417)

Ищете вариант, который будет конкурировать с модулем Bluetooth HC-06? Grove - Serial Blueseeed (CSR BC417) не только соответствует Bluetooth V2.0 и метод скачкообразного расширения спектра, но он поддерживает более высокую скорость передачи и простоту сопряжения!

Планируя использовать модуль Bluetooth HC-06, вы должны пройти утомительный путь преобразования напряжений, имея дело с делителями напряжения и электрическими цепями, которые не видны на Grove - Serial Blueseeed!

  • Благодаря нашей системе Grove все, что вам нужно для сопряжения Grove - Serial Blueseeed с Arduino, - это кабели Grove с функцией plug-and-play!

Помимо простоты сопряжения, он имеет выбираемую скорость передачи и функцию автоматического переподключения в течение 30 минут при отключении!

Хотите узнать больше?

  • Мы предоставили простой и удобный набор команд вместе с руководством по сопряжению Arduino на странице нашего продукта!

3) Опция Arduino Bluetooth Shield: Blueseeed Shield V2 (HM01)

Ищете вместо этого вариант Arduino Bluetooth Shield? Вот первый рекомендуемый вариант!

Основанный на модуле Bluetooth HM01, это недорогой и простой в использовании вариант с Bluetooth 2.0 и интегрированные порты Grove, чтобы вы могли установить изобилие наших модулей Grove!

Вот его особенности и технические характеристики:

  • Совместимость с Seeeduino / Arduino
  • Расстояние связи в доме до 10 м без препятствий
  • Полный набор команд конфигурации
  • Интерфейс UART (TTL) с программируемой скоростью передачи данных
  • Антенна на плате на печатной плате
  • Входное напряжение: 3,3 В
  • Скорость передачи: 9600, 19200, 38400, 57600, 115200, 230400, 460800
  • Скорость передачи по умолчанию: 9600, биты данных: 8, стоповый бит: 1, четность: без проверки четности
  • PINCODE по умолчанию: ”1234”

Хотите узнать больше?

  • Мы разместили руководство по объединению Arduino и Andriod на странице нашего продукта!

4) HM11 Shield Option: Seeed Blueseeed Shield (HM11)

Нравится то, что вы видели о модуле Bluetooth HM11 Arduino ранее с первой рекомендацией? Это версия щита; больше функций и еще более простое подключение!

Так как в нем есть именно то, что вы получите от модуля HM11; Bluetooth V4.0, диапазон 2,4 ГГц и т. Д., Я просто расскажу о его особенностях!

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

  • Модуль HM-11
  • Сигнальная лампа: Лампа будет мигать, если BLE не подключен, но лампа продолжит гореть после подключения BLE
  • Разъемы Grove: Два разъема Grove для удобного подключения Grove продуктов на плату
  • Hard или Softserial порт: Вы можете выбрать два из семи цифровых контактов в качестве канала связи, просто вставьте перемычки в разъемы
  • Зарезервированные распиновки от HM-11: Есть зарезервированные распиновки от Модуль HM-11, такой как CTS1, RTS1, PIO2 и т. Д.
  • Кнопка сброса: Для сброса экрана, не влияет на материнскую плату, даже если она подключена.

Примечание. Этот экран лучше всего совместим только со следующими платами:

  • Arduino Uno / Seeeduino v4.2
  • Arduino Leonardo / Seeeduino Lite

Хотите узнать больше?

  • Мы разместили руководство по сопряжению Arduino на странице нашего продукта!

Проекты Arduino Bluetooth

В завершение сегодняшнего руководства по модулям Arduino Bluetooth, вот два простых проекта Arduino Bluetooth, которые вы можете начать!

Управляйте своей роботизированной машиной через Bluetooth

Робототехника и Arduino - забавное и интересное хобби, которое очень часто встречается в наши дни.В этом проекте вы можете испытать это с помощью Bluetooth!

Вот что вам нужно:

Компоненты оборудования:

Программные приложения и другие услуги:

Хотите узнать больше? Ознакомьтесь с полным руководством Кевина-Ли на сайте Seeed Community Hub!

Веселая, маленькая, страшная кукла ужасов

Хотите подшутить над кем-нибудь и получить его веселую реакцию? Этот проект для вас!

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

Вот что вам нужно:

Компоненты оборудования:

В этом проекте используется Wio Link, однако вы все еще можете использовать плату Arduino с Grove - Base Shield

Хотите узнать больше? Ознакомьтесь с полным руководством shijian.fang на сайте Seeed Community Hub!

Сводка

На сегодня на Arduino Bluetooth все.Я надеюсь, что в сегодняшнем блоге вы получите более глубокое понимание того, как подключить Arduino к Bluetooth!

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

Следите за нами и ставьте лайки:

Теги: arduino ble, arduino blueooth andriod, arduino bluetooth, arduino bluetooth controller, arduino bluetooth iphone, модуль bluetooth arduino, проект bluetooth arduino, Arduino Bluetooth Shield, руководство по bluetooth arduino, arduino nano bluetooth, arduino uno bluetooth, hc05, hc06

Продолжить чтение

Arduino и модуль Bluetooth HC-06 • AranaCorp

Теги: Arduino, Bluetooth, C / C ++, Программирование, Последовательная связь

Arduino может связываться с другим устройством через Bluetooth с помощью модуля HC-06 (slave).Он позволяет подключать Arduino и обмениваться данными с другими устройствами, такими как смартфон, компьютер или другие микроконтроллеры. Связь по Bluetooth можно использовать для удаленного управления роботом, например, для отображения и хранения данных на вашем компьютере или смартфоне.

Предварительное условие: Последовательная связь Arduino

Материал

  • Компьютер
  • Arduino UNO
  • Кабель USB
  • Модуль Bluetooth HC-06
  • Кабели Dupont M / F

Обзор модуля HC-06

Модуль Bluetooth HC-06 имеет 4 контакта, 2 для питания и 2 для установления соединения.

  • Источник питания VCC. Обычно подключается к выводу 5V Arduino.
  • GND земля. Обычно подключается к контакту GND приемного контакта Arduino
  • RX. Обычно подключается к контакту передачи (TX) контакта передачи Arduino
  • TX. Обычно подключается к приемному контакту (RX) Arduino

Проверьте контакт RX / TX на вашей плате Arduino

Примечание: поскольку модуль HC-06 является подчиненным, он не может подключаться к другому устройству самостоятельно.Для этого вам понадобится главный модуль, такой как модуль Bluetooth HC-05.

Схемы

Некоторые модули HC-06 работают от 3V3 и не поддерживают уровень напряжения 5V на выводе Rx. В этом случае для преобразования логического сигнала требуется мост делителя напряжения (резистор 1 кОм между контактом 3 и Rx и 2 кОм между Rx и GND).

ВНИМАНИЕ: Мы используем контакты 2 и 3 Arduino Uno. В зависимости от микроконтроллера некоторые выводы могут не поддерживать связь через SoftwareSerial.Особенно Arduino Mega, Micro и Leonardo. Проверить документацию.

Конфигурация модуля HC-06

Настройка модуля HC-06 может быть интересной для проверки его работы, правильности подключения и изменения его параметров, таких как его имя (полезно, когда вы используете несколько модулей), PIN-код и скорость связи (скорость передачи). Чтобы разрешить настройку, модуль HC-06 должен быть запитан, но не спарен (светодиод la мигает).

Следующий код позволяет изменять параметры с помощью монитора последовательного порта.

 #include < SoftwareSerial  .h>

  SoftwareSerial  hc06 (2,3);

void setup () {
  // Инициализируем последовательный монитор
    Серийный . Начало (9600);
    Серийный номер  .println ("ENTER AT Commands:");
  // Инициализируем последовательный порт Bluetooth
  hc06.begin (9600);
}

void loop () {
  // Записываем данные из HC06 в Serial Monitor
  if (hc06.available ()) {
      Серийный  .write (hc06.read ());
  }
  
  // Запись из последовательного монитора в HC06
  if ( Serial  .available ()) {
    hc06.write ( Serial  .read ());
  }
}

 

Чтобы проверить последовательную связь, введите AT в последовательном мониторе и щелкните на отправке или нажмите Enter. Обязательно выберите «Без конечной линии» и правильную скорость передачи в параметрах связи. Модуль должен ответить ОК. Если он не работает, проверьте проводку и версию модуля.

Чтобы изменить имя модуля, введите AT + NAMEmodule_name. Модуль должен ответить OKsetname. (Пример: если вы хотите изменить имя модуля на BTM1, введите AT + NAMEBTM1)

Чтобы изменить PIN-код модуля, введите AT + PINxxxx.Модуль должен ответить OKsetPIN. (Пример: если вы хотите изменить PIN-код на 0000, введите AT + PIN0000)

Чтобы изменить скорость связи модуля (только если требуется), введите AT + BAUDx. Пример: Если вы хотите изменить скорость передачи данных на 9600, введите AT + BAUD4. Модуль должен ответить OK9600. (Примечание: 1 для 1200, 2 для 2400, 3 для 4800, 4 для 9600, 5 для 19200, 6 для 38400, 7 для 57600, 8 для 115200)

ВНИМАНИЕ: Различные версии модуля Bluetooth HC-06 exit и список AT-команд могут отличаться. Проверьте серийный номер, указанный на модуле, и версию прошивки, введя AT + VERSION.

Например, модуль HC-06, помеченный ZS-040 с версией прошивки 3.0-20170609, возвращает ОШИБКУ (0) при отправке команды AT + NAMExxxx (где xxxx - новое имя модуля). AT-команды для настройки такого модуля:

  • AT + NAME = xxxx для установки имени модуля
  • AT + PSWD: «xxxx» для установки пин-кода модуля

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

Сопряжение модуля Bluetooth HC-06

После того, как модуль настроен так, как вы хотите, вы можете выполнить сопряжение модуля HC-06 с любым устройством по вашему выбору, как с любым устройством Bluetooth.Выберите имя вашего модуля в списке доступных устройств Bluetooth (по умолчанию HC-06) и введите PIN-код (по умолчанию 1234). Когда это будет сделано, светодиод перестанет мигать.

Код

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

Для работы с модулем HC-06 мы используем библиотеку SoftwareSerial.h , который позволяет определить последовательный порт на плате Arduino. Должны быть известны следующие функции:

  • SoftwareSerial hc06 (Rx, Tx) для определения контактов последовательного порта
  • hc06.begin () для определения скорости передачи (значение должно быть таким же, как у вашего модуля)
  • hc06.available () для проверки наличия данных доступно в буфере модуля
  • hc06.read () для чтения данных по одному байту за раз
  • hc06.print () для отправки строки в форме ASCII
  • hc06.write () для отправки данных по одному байту за один раз. time
 #include < SoftwareSerial .h>

  SoftwareSerial  hc06 (2,3);

Строка cmd = "";
float sensor_val = 0;

void setup () {
 // Инициализируем последовательный монитор
  Серийный . Начало (9600);
 // Инициализируем последовательный порт Bluetooth
 hc06.begin (9600);
}

void loop () {
 // Считываем данные из HC06
 while (hc06.available ()> 0) {
 cmd + = (char) hc06.read ();
 }

 // Выбираем функцию с помощью cmd
 if (cmd! = "") {
  Серийный номер  .print ("Команда получена:");
  Серийный  .println (cmd);
 // Ожидаем ВКЛ или ВЫКЛ от bluetooth
 if (cmd == "ON") {
  Серийный .println («Функция включена»);
 } else if (cmd == "OFF") {
  Serial  .println («Функция выключена»);
 }еще{
  Serial  .println («По умолчанию функция отключена»);
 }
 cmd = ""; // сбросить cmd
 }
 // Имитация измерения датчика
 sensor_val = (с плавающей запятой) случайный (256); // случайное число от 0 до 255
 
 // Записываем данные датчика в HC06
 hc06.print (sensor_val);
 задержка (100);
}


 

Бонус: сканер скорости передачи

Если у вас возникли трудности с определением скорости передачи вашего модуля, вот код, который инициализирует Bluetooth и отправляет AT-команду для каждого значения скорости передачи.

 #include < SoftwareSerial  .h>
  SoftwareSerial  hc06 (2, 3);

void setup () {
 // Инициализируем последовательный монитор
  Серийный . Начало (9600);
 // сканировать
 scanBaudrate ();
}

void loop () {}

void scanBaudrate () {
 беззнаковые длинные боды [12] = {300, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 74880, 115200, 230400, 250000};
 for (int i = 0; i <12; i ++) {
 hc06.begin (bauds [i]);
 задержка (10);
  Серийный номер  .print (F ("Скорость передачи"));
  Серийный .println (bauds [i]);
 команда («АТ», 2000);

 }
}
Строковая команда (const char * toSend, беззнаковые длинные миллисекунды) {
 Строковый результат;
  Серийный номер  .print («Отправка:»);
  Серийный номер  .println (toSend);
 hc06.print (отправить);
 беззнаковый длинный startTime = millis ();
  Серийный номер .print (F ("Получено:"));
 while (millis () - startTime <миллисекунды) {
 if (hc06.available ()) {
 char c = hc06.read ();
  Серийный . Написать (c);
 результат + = c; // добавляем в строку результата
 }
 }
  Серийный .println (); // новая строка после тайм-аута.
 вернуть результат;
}


 

Если скорость передачи данных установлена ​​правильно, модуль Bluetooth должен ответить «ОК». Этот код быстро сообщит вам, правильно ли работает модуль и какую скорость он использует.

Приложение

Источник

Найдите другие примеры и руководства в нашем автоматическом генераторе кода
Code Architect

Arduino Bluetooth Control: Связь между Arduino и Arduino | Стрела.com

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

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

Вот как начать работу с технологией Bluetooth для вашего следующего проекта робототехники Arduino.

Как работает связь между Arduino и Arduino по Bluetooth?

Используя последовательные сигналы Bluetooth, ваш телефон управляет Arduino так же идеально, как если бы у них было аппаратное соединение. Такие приложения, как Bluetooth Terminal и ArduinoRC, отлично справляются с превращением вашего телефона в интерфейсное устройство в этом сценарии.

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

Шаг 1. Постройте схемы

Для этой сборки вам нужно будет собрать пару идентичных макетов, как показано на диаграмме Fritzing выше. Каждый из них будет использовать Arduino Nano для передачи данных через модуль Bluetooth HC-05, позволяя своему помощнику получать эти данные и отвечать миганием встроенного светодиода.Вы можете отправить сигнал от одного Arduino к другому через последовательный интерфейс компьютера, но нажатие кнопки обеспечивает сочетание клавиш для беспроводной передачи символа.

Вот что вам нужно для построения схем:

  • (2) Нано Arduino
  • (2) Макетные платы
  • (2) HC-05 Bluetooth-модуля
  • (2) Кнопки
  • (2) 1к резисторов
  • (2) 2к резистора
  • (2) резистора 20к
  • Провода перемычки
  • (2) кабеля mini-USB

Примечание: Вы можете заменить многие детали в зависимости от ваших предпочтений.Например, Arduino Uno работает так же хорошо, как и Nano. Кроме того, вы можете видеть на принципиальной схеме, что мы использовали делитель напряжения на выводе RX HC-05. Модули HC-05 работают при напряжении 3,3 В, поэтому мы сделали этот выбор, чтобы предотвратить подачу слишком высокого напряжения на этот вывод.

Сопряжение модуля Bluetooth Arduino

Рис. 2 : Открыв второй экземпляр Arduino IDE, вы можете работать с двумя отдельными платами одновременно.

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

  1. Перенесите код HC-05_AT_MODE_01, найденный здесь , на одну из ваших плат Arduino. Затем переведите модуль Bluetooth HC-05 в режим AT, включив модуль, удерживая кнопку платы нажатой.

  2. Встроенные светодиоды будут медленно мигать, когда он загружается. Откройте серийный монитор в вашей Arduino IDE; затем введите «AT.«Если все работает правильно, вы получите ответ« ОК »от терминала.

  3. Введите «AT + ROLE = 1», чтобы настроить HC-05 в качестве мастера; тогда AT + CMODE = 1, чтобы разрешить сопряжение с любым адресом (модулем).

  4. Выполните сброс устройства, и ваш HC-05 - теперь действующий как ведущий - соединится с другим HC-05, который обычно устанавливается как ведомый модуль.

Если вам нужно изменить ведущее устройство на ведомое, подключитесь к нему последовательно, как описано выше, и введите AT + ROLE = 0.Также возможно использование модуля HC-06, который работает только в ведомом режиме. Для получения дополнительных сведений используйте код, указанный на шаге 1. Вы также можете связать два модуля вместе с помощью этих дополнительных инструкций .

Когда вы работаете с двумя подобными платами Arduino, может быть очень полезно загрузить два экземпляра Arduino IDE (с помощью ярлыка, без использования file / new или file / open в среде IDE). Это позволяет одновременно загружать программы и контролировать последовательные порты, что значительно упрощает программирование и устранение неполадок.

Проверьте свой модуль управления Bluetooth Arduino

Рис. 3 : нажатие кнопки включает свет на другом Arduino Nano. Наклейки обозначают используемый последовательный порт, чтобы различать каждый из них во время программирования.

После подключения HC-05 / Arduino загрузите программное обеспечение, найденное здесь здесь , на каждый Arduino и выполните следующие действия:

  1. Откройте последовательный монитор для каждого экземпляра IDE, затем поэкспериментируйте с вводом «O» и «F» (с учетом регистра).
  2. Вы должны увидеть, как противоположная плата отреагирует включением и выключением своего встроенного светодиода. Нажми на кнопку. Это отправит символ «B» на противоположную плату, при этом светодиод будет мигать на короткое время.
  3. Вы также можете ввести «B» в последовательном мониторе, чтобы проверить эту функциональность.
  4. Убедившись, что все работает правильно, вы можете отсоединить любой из блоков и подключить их к противоположным сторонам комнаты, мигая светом взад и вперед.

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

Arduino Bluetooth Controller Простое пошаговое руководство

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

Вся магия скрыта в оборудовании.С точки зрения кода отправка чего-либо по беспроводной сети в точности аналогична отправке данных по проводам.

Единственное отличие состоит в том, что в первом варианте мы подключаем модуль Bluetooth к соответствующим контактам в Arduino, а во втором - нет.

Синтаксис кода Arduino

Это хороший повод кратко объяснить синтаксис кода Arduino.

Как видите, здесь есть два основных метода. First setup (): в этом методе мы инициализируем последовательную передачу со скоростью 9600 бод.Скорость передачи - это максимальное количество символов, которое мы можем отправить за одну секунду. Чем выше скорость передачи, тем более чувствительна передача к шуму. Мы установили его на этот конкретный номер, потому что наш модуль Bluetooth HC-06 настроен на этот номер по умолчанию.

Единственное, что важно с самого начала, это то, что мы должны установить одинаковую скорость передачи на Arduino и на стороне модуля Bluetooth.

Второй метод loop () представляет собой бесконечный цикл программы. Итак, здесь мы используем последовательную передачу для отправки текста SoftwareHut и добавляем задержку в одну секунду.И это все! Ничего больше. Лично для меня это похоже на волшебство. Вы можете добиться такой замечательной вещи, как беспроводная передача, практически без усилий.

Получение данных

Получение данных тоже несложно. Здесь у нас просто более продвинутый Hello World. В микроконтроллерах Hello World - это просто мигающий светодиод. Здесь мы изменим состояние светодиода в соответствии с полученными данными Bluetooth.

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

В методе цикла мы проверяем, получили ли мы какие-либо данные через последовательный порт. Мы можем присвоить это переменной, если результат «да». Если мы получаем 1, мы меняем состояние светодиода на высокий, чтобы он загорелся. Если мы получим 2, мы изменим состояние светодиода на LOW, чтобы он погас.

Как подключить Arduino Uno к телефону Android через Bluetooth - 42 бота

Цель этого руководства - охватить основы настройки соединения между Arduino Uno и телефоном Android через Bluetooth.Смартфоны содержат массу интересных функций (камера, ускорители, динамики, микрофон, красивый экран для отображения данных с ваших датчиков, адаптер Wi-Fi…), которые станут отличным дополнением к роботу или любому другому проекту Arduino.

Я буду использовать Blueterm, базовое бесплатное приложение-эмулятор терминала Android, чтобы отправить одну цифру (ноль или единицу) с телефона на модуль BlueTooth, подключенный к Arduino Uno через последовательное соединение. Arduino Uno считывает данные и соответственно включает или выключает светодиод.После этого он отправит статусное сообщение, которое будет отображаться на экране телефона. Это фактически подтвердит, что у нас есть двусторонняя связь между Arduino и телефоном Android через Bluetooth. Тот же подход можно использовать для взаимодействия со всем, что связано с вашим Arduino (например, с двигателями, сервоприводами и датчиками) или с интересными вещами в вашем смартфоне (камера, акселерометр и т. Д.). Так что давай посмотрим!

Это то, что вам понадобится:

  • Arduino Uno (или совместимая плата)
  • Компьютер с установленной последней версией Arduino IDE
  • Смартфон Android с функцией Bluetooth
  • Модуль Bluetooth
  • JY-MCU.Это дешевый модуль Bluetooth, который можно приобрести у многих розничных продавцов в Интернете или на eBay. (Я получил свой отсюда)
  • Какой-то способ понизить напряжение сигнальной линии Arduino с 5 В до 3,3 В. Пара резисторов подойдет. Я использую один 20 кОм и один 10 кОм, но подойдут и другие комбинации. Подробнее об этом ниже…
  • Бесплатное приложение для Android от Blueterm, поэтому у нас есть простой способ отправлять команды на Arduino с нашего телефона.

Шаг 1. Эскиз Arduino

Нам нужен простой скетч, который будет делать следующее:

  • Установить последовательное соединение между Arduino и модулем Bluetooth
  • Слушать ввод на последовательном порту и обрабатывать его
  • Включите светодиод на контакте 13, если он читает 1 (один) как последовательный вход
  • Выключите светодиод на контакте 13, если он показывает 0 (ноль) как последовательный вход
  • Отправьте «LED: on» или «LED: off» обратно в модуль Bluetooth в зависимости от состояния светодиода.

Для простоты мы будем отправлять с телефона только целые числа 1 или 0 в качестве команд.Если будет отправлен любой другой символ, он будет проигнорирован. Загрузите приведенный ниже эскиз на свой Arduino. По умолчанию используемый мной модуль Bluetooth настроен на использование скорости передачи данных 9600 бит / с. Вот ссылка на наш базовый набросок

Шаг 2: подключение модуля Bluetooth к Arduino Uno

Модуль JY-MCU связывается с Arduino через последовательное соединение. У него есть четыре контакта, которые мы будем использовать:

  • VCC используется для питания модуля. Его необходимо подключить к выводу Arduino 5v.
  • GND - вывод заземления. Его необходимо подключить к контакту
  • заземления Arduino.
  • TXD используется для отправки данных из модуля в Arduino. Он должен быть подключен к последовательному приемному выводу (RX) Arduino, который в случае Uno является выводом 0. Если вы используете другую плату Arduino, проверьте ее схемы, чтобы убедиться, что у вас правильный контакт.
  • RXD используется для получения данных от Arduino. Его необходимо подключить к контакту последовательной передачи Arduino (TX), который в случае Arduino Uno является контактом 1.
  • Мы не будем использовать контакты «STATE» и «KEY» модуля Bluetooth, поэтому они не будут подключены.

Вот как выглядит мой модуль Bluetooth. Есть несколько вариантов, которые работают практически одинаково:

На моем модуле, как вы можете видеть на фотографии выше, линия TX рассчитана на 3,3 В. Это означает, что даже если мы можем запитать модуль 5 вольт от Arduino, линии связи от и до модуля должны быть на 3.3 вольта.

Отправка данных из модуля Bluetooth (через контакт TX модуля) не будет проблемой, поскольку линия RX Arduino будет правильно интерпретировать сигнал 3,3 В от модуля Bluetooth.

Получение данных от Arduino - это то место, где нам нужно проделать больше работы. Линия RX Arduino Uno работает при 5 В, поэтому мы будем посылать более высокое напряжение на линию RX модуля Bluetooth, чем указано на этикетке. Это может привести к необратимому повреждению модуля Bluetooth!

Многие онлайн-руководства предполагают, что это не проблема, и линии TX / RX модуля JY-MCU Bluetooth могут быть безопасно подключены напрямую к Arduino.Я не хотел рисковать своим Bluetooth-модулем в первые секунды использования и ждать несколько недель, пока замена не придет по почте. На всякий случай я использовал два резистора, чтобы создать делитель напряжения и понизить напряжение линейного сигнала Arduino TX с 5 до примерно 3,3 вольт.

Я использовал резисторы 20 кОм и 10 кОм, но вы можете заменить их на другие значения, если вы получите Vout около 3,3 В на основе уравнения делителя напряжения ниже:

На схеме выше R1 = 10 кОм, R2 = 20 кОм и Vin = 5 В.Решая для Vout, получаем: Vout = 5 x 20 кОм / (20 кОм + 10 кОм) = 5 В x 20 кОм / 30 кОм = 5 В x 2/3 = 10 В / 3 = 3,33 В.

По сути, вы можете использовать любую комбинацию резисторов, если R2 в два раза больше, чем R1.

Если у вас нет под рукой резисторов, вы можете использовать положительный стабилизатор напряжения 3,3 В. Подключите входной контакт регулятора напряжения к линии Arduino TX, контакт заземления к заземлению Arduino, а выходной контакт регулятора напряжения к линии RX JY-MCU.

Третий вариант - использовать специальную плату преобразователя логических уровней, подобную этой, от Sparkfun.

Шаг 3. Подготовка телефона Android

  • Установите бесплатное приложение Blueterm для Android на свой телефон.
  • Убедитесь, что Bluetooth активен и включен на вашем телефоне. Следуйте меню настроек на телефоне, настройки Bluetooth должны находиться в категории «Беспроводная связь и сети».

Шаг 4: Самое интересное!

Наконец-то пришло время протестировать нашу установку!

  1. Включите Arduino Uno (и модуль Bluetooth).У моего модуля Bluetooth есть красный светодиодный индикатор состояния, который мигает, когда модуль включен, но не подключен.
  2. Выполните сопряжение модуля с телефоном. Значения по умолчанию для модуля Bluetooth:
    Имя по умолчанию: linvor
    Код сопряжения по умолчанию: 1234
  3. После успешного сопряжения телефона и модуля BlueTooth откройте Blueterm.
  4. Подключитесь к модулю Bluetooth (имя по умолчанию linvor) из меню Blueterm. Вы должны увидеть сообщение об успешном установлении соединения.Красный светодиодный индикатор состояния на моем модуле Bluetooth переключается с мигания на постоянный, когда он подключен.
  5. Введите «1» в консоли Blueterm. Встроенный светодиод на Arduino Uno должен загореться, и вы должны увидеть «Светодиод: включен» на экране консоли Blueterm. Теперь введите «0» (ноль). Светодиод должен погаснуть, и вы должны увидеть сообщение «Светодиод: выключен».

Поздравляем, все готово!

Далее: используйте SoftwareSerial с Bluetooth, чтобы упростить программирование Arduino и отладку кода при использовании модуля JY-MCU Bluetooth.

Советы по поиску и устранению неисправностей:

  • Первое, что нужно проверить, - это проводка между модулем Bluetooth и Arduino.
  • Убедитесь, что вы загрузили скетч из шага 1 в Arduino, прежде чем подключать модуль Bluetooth к телефону. Вы не сможете использовать , а не , использовать последовательный монитор Arduino IDE или загружать эскизы, когда подключен модуль Bluetooth, поскольку он использует те же линии RX / TX. Вы можете использовать библиотеку SoftwareSerial, чтобы подключить модуль Bluetooth к любому цифровому выводу Arduino и оставить линию RX / TX открытой.
  • Подтвердите, что Bluetooth включен и активен на вашем телефоне, проверив настройки.

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

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