Всем привет! Сегодня я покажу вам как подключить модули HC-05 и HC-06 к Arduino и управлять четырьмя светодиодами со смартфона.
В этом уроке использованы:
1. Плата Arduino Uno с USB кабелем для подключения к компьютеру
2. Компьютер с установленной Arduino IDE и драйверами для плат
3. Четыре светодиода и четыре резистора на 220Ом
5. Соединительные провода типа папа-папа 8 штук, типа папа-мама 4 штуки
6. Bluetooth модуль HC-05 или HC-06
Кратко о использовании Bluetooth в проектах Arduino
В проектах Arduino иногда требуется дистанционное управление. Довольно простым способом является передача данных по Bluetooth со смартфона. Для связи с Arduino по Bluetooth используется UART-интерфейс — контакты TX и RX платы. Серия модулей HC является довольно популярной. Одни из самых часто используемых — это модули HC-05 и HC-06.
Подключение Bluetooth модулей к Arduino
Давайте рассмотрим подключение модулей HC-05 и HC-06 к плате Arduino.
Встраиваемый Bluetooth USB mP3 модуль c AliExpress.Как Подключить к Колонкам + Тест.
Источник: dzen.ru
Подключение Bluetooth модуля HM-10 к Arduino и управление светодиодом из Android приложения
В настоящее время Bluetooth является одной из самых популярных беспроводных технологий. На протяжении последних лет регулярно выходили обновления этой технологии чтобы она “успевала” за все возрастающими требованиями пользователей. В этой статье мы рассмотрим подключение Bluetooth модуля HM10 к плате Arduino и управление с его помощью светодиодом из Android приложения.

Принципы работы Bluetooth модуля HM-10 (at-09)
Работа Bluetooth модуля HM-10 (он также известен под названием at-09) основана на технологии Bluetooth 4.0. Также он поддерживает технологию BLE – Bluetooth-Low-Energy (Bluetooth с низким энергопотреблением), которая специально была разработана для обеспечения низкого потребления энергии, что дает возможность устройствам достаточно долго работать от обычной батарейки. В основе Bluetooth модуля HM-10 лежит чип CC2540 (или CC2541) BLE System SoC (System on Chip – система на кристалле (чипе)) от компании Texas Instruments. Программное обеспечение (прошивка) и дизайн модуля HM-10 разработаны компанией Jinan Huamao Technology. В составе модуля есть UART (Universal asynchronous receiver/transmitter – универсальный асинхронный приемопередатчик), что позволяет достаточно просто его подключать к различным микроконтроллерам.

HM-10 в настоящее время является одним из самых популярных модулей, поддерживающих технологию Bluetooth 4.0 BLE. Поскольку модуль поддерживает технологию Bluetooth 4.0, то он не сможет соединяться с устройствами, использующими технологию Bluetooth 2/2.1, например, Bluetooth модулями HC-05, HC-06. Модуль HM-10 управляется с помощью AT команд по последовательному порту связи (UART).
Различия между HM-10 и другими Bluetooth модулями
Основное отличие HM-10 от других Bluetooth модулей заключается в версии Bluetooth. HM-10 поддерживает Bluetooth версии 4.0, поэтому от модулей предыдущих поколений он будет отличаться (в выгодную сторону) скоростью работы, пропускной способностью и дальностью действия. HM10 поддерживает скорость передачи данных до 24 Мбит/с с низким потреблением энергии. А, к примеру, модуль HC-05, поддерживающий версию Bluetooth 2.0, может обеспечить скорость передачи данных только 3 Мбит/с. Вместе с этим модуль HM-10 обеспечивают дистанцию связи до 100 метров на открытой местности.
Однако более старые и менее производительные Bluetooth модули HC-05 и HC-06 до сих пор широко применяются радиолюбителями вследствие их низкой цены. На основе этих модулей на нашем сайте вы можете найти достаточно много проектов. Все проекты на нашем сайте, в которых используется технология Bluetooth, вы можете посмотреть по этой ссылке.
Необходимые компоненты
Аппаратное обеспечение
- Плата Arduino Uno (купить на Aliexpress).
- Bluetooth модуль HM-10 (купить на Aliexpress).
- Резисторы 1 кОм, 470 Ом (купить на Aliexpress).
- Соединительные провода.
- Смартфон на операционной системе Android.
Программное обеспечение
- Arduino IDE.
- Arduino Bluetooth Controller (HM-10 Module) — Android приложение.
Работа схемы
Схема подключения Bluetooth модуля HM-10 к плате Arduino представлена на следующем рисунке. Как видите, схема крайне проста.

Но прежде чем использовать модуль HM-10 в нашем проекте убедитесь в том, что это настоящий (genuine) модуль HM-10, а не его клон. Сейчас на рынке в большом количестве присутствуют китайские клоны модуля HM-10. Чтобы отличить настоящий модуль HM-10 от его клона убедитесь в наличии кварцевого генератора (Crystal Oscillator) на 32 кГц на его плате. Если кварцевого генератора на плате модуля нет, то перед вами клон модуля HM-10 и прежде чем его использовать вам необходимо сменить его прошивку (программное обеспечение). Как это сделать можно прочитать, к примеру, в этой англоязычной статье.
Без смены прошивки вы не сможете использовать для управления клоном модуля HM-10 AT команды, также вы не сможете подключить его к смартфону. В нашем проекте мы использовали клон модуля HM-10 (он более дешевый чем настоящий), но перед этим сменили его прошивку по указанной методике.

Arduino Bluetooth Controller (HM-10 Module) – приложение на Android
Arduino Bluetooth Controller (HM-10 Module) представляет собой приложение для операционной системы Android, которое можно бесплатно скачать из Google Play Store. Это приложение обеспечивает простой и интуитивно понятный интерфейс для взаимодействия с Bluetooth модулем HM-10. В этом приложении можно создавать собственные кнопки и кастомизировать вид этого приложения под свои нужды. Мы создали в нем две кнопки для управления светодиодом, подключенным к плате Arduino.
Вначале скачайте это приложение из Google Play Store по этой ссылке (или можете сразу скачать его с помощью своего смартфона).

На главной странице этого приложения доступны такие функции как connect Device (подсоединить устройство), Search Icon (найти иконку), Delete Icon (удалить иконку), Device Status (состояние устройства), Send Text (передать текст), Add Template (добавить шаблон) и другие. Начните работу в этом приложении с поиска устройства – это можно сделать либо с помощью функции Search Icon, либо кликнув по трем точкам в верхнем правом углу приложения и выбрав connect Device.

После этого на экране приложения вы увидите все доступные для подключения устройства. Выберите среди них модуль HM-10.

После этого модуль HM-10 будет успешно подключен к вашему приложению и вы сможете видеть его состояние вверху экрана.

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

Для создания нового пользовательского шаблона (custom template) нажмите на иконку “+” в правом верхнем углу и после этого заполните необходимые параметры шаблона. “Name” – это будет название кнопки, поле “Text” будет использоваться для передачи текста (строки) на модуль HM-10, а “Description” – это будет описание кнопки.

Мы в нашем проекте создадим кнопку зеленого цвета для включения светодиода (LED ON). При нажатии этой кнопки на модуль HM-10 будет передаваться символ “N”, что будет приводить к включению светодиода, подключенного к плате Arduino. Аналогичным образом создадим кнопку красного цвета для выключения светодиода (LED OFF) – при ее нажатии на модуль HM-10 будет передаваться символ “F”.

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

Объяснение программы Arduino для управления светодиодом с помощью Bluetooth модуля HM-10
Полный текст программы и видео, демонстрирующее работу проекта, приведены в конце данной статьи. Здесь же мы кратко рассмотрим работу основных фрагментов программы.
Написание программы Arduino для этого проекта не потребует использования каких либо дополнительных библиотек если вы подключите модуль HM-10 к стандартному аппаратному последовательному порту платы Arduino – то есть к ее контактам 0 и 1 как показано на выше приведенной схеме. Однако мы в данном проекте решили использовать библиотеку для последовательной связи (Software Serial Library), с помощью которой программным способом организуем последовательный порт на контактах 2 и 3 платы Arduino (соответственно, если вы тоже хотите использовать этот подход, то вам необходимо внести изменения в приведенную выше схему).
Источник: microkontroller.ru
Блютуз модуль ардуино, hc 05, hc 06
Сегодня мы разберем простые примеры как можно подключить Bluetooth модуль к Arduino и настроить дистанционное управление с телефона.
Научимся выводить на LED индикатор значения нажатой кнопки на смартфоне. Ещё я покажу как менять имя Bluetooth модуля и пароль с помощью AT команд.
Вы не поверите, но подключение и программирование Bluetooth модулей совсем не сложное занятие и доступно даже начинающим.
Давайте убедимся в этом.
Вот так выглядят модули HC-05 и HC-06

Модули HC-05 может работать в двух режимах. В режиме Slave и Master.
Slave (ведомый) — устройство ожидает подключения, само при этом не способно подключиться к другому устройству.
Master (ведущий) устройство, которое может подключиться к Slave модулю для создания связи между двумя Ардуино посредством Bluetooth, а может работать и в режиме Slave.
Используя модуль Модули HC-05 можно объединять различные устройства по беспроводному каналу связи. Можно передавать команды от датчиков и контроллеров Arduino на Android устройства и наоборот, получать от них команды.
С помощью такой связки можно, например включать/выключать свет, или управлять поворотом сервопривода, набирая угол поворота на телефоне.
Модуль HC-05 позволяет наладить двухстороннюю связь по bluetooth, т.е. можно не только управлять Ардуино, но и получать данные от устройства.
Отличие этих модулей в том, что HC-05 может работать в качестве сервера и клиента, а HC-06 только в качестве клиента. Он может только слушать и ждать команды, сам же не может их передать.
Как можно заметить на модуле HC-05 больше выводов – это связано с тем, что он используется и для приёма, и для передачи.
Модуль состоит из двух плат, спаянных друг с другом. Одна из них сам модуль, а вторая плата со стандартными выводами с шагом 2,54мм. и стабилизатором напряжения
Основные характеристики модулей Bluetooth HC 06/ HC 05:
- Питание 3,3В – 5 В;
- Максимальное входное напряжение 5 В;
- Максимальный ток 45 мА;
- Скорость передачи данных 1200–1382400 бод;
- Рабочие частоты 2,40 ГГц – 2,48ГГц;
- Мощность передачи 0,25 – 2,5мВт (для HC-05);
- Поддержка спецификации bluetooth версии 2.1;
- Малое потребление энергии;
- Высокий уровень защиты данных;
- Дальность связи 10 м;
- Для подключения к смартфону используются следующие данные – пароль «1234», имя модуля HС-06 или HС-05.
- настройки для подключения «имя, пароль, скорость передачи данных» можно изменить при помощи АТ-команд.
- Рабочие температуры от -25С до 75С
Рассмотрим назначения выводов на модуле HC-05

STATE — проверка состояние модуля. На этом контакте дублируется сигнал, который отображает встроенный на плате светодиод. Если он очень быстро мигает, значит модуль находится в активном состоянии. В режиме установления связи ток составляет 30-40 мА. Когда модуль устанавливает связь с другим устройством, светодиод просто горит.
На выводе появляется высокий уровень, когда модуль сопряжён с другим bluetooth устройством, и низкий – когда не сопряжён. Можно считывать его значение, подключив к пину Arduino и назначив ему режим работы pinMode(pinStatus, INPUT) и таким образом узнавать состояние модуля.
RX — получение данных.
TX — передача данных.
GND — подключается к земле.
+5V — питание +5 Вольт
EN — включение / выключение модуля. Если на этот контакт подать логическую 1 (5 вольт), модуль выключится, если подать логический 0 или не подключаться к этому контакту, модуль будет работать.
Посмотрим схему подключения HC-05 и HC-06

Обратите внимание, что подключение происходит крест-накрест передатчик (Tx) Ардуино подключается к приёмнику (Rx) модуля, а приёмник (Rx) Ардуино подключается к передатчику (Tx) модуля.
Данный модуль работает на частоте от 2,40 ГГц до 2,48 ГГц и поддерживает спецификацию bluetooth версии 2.1+EDR – это значит, что он обладает:
- высокой скоростью до 3 Мбит/сек,
- пониженным потреблением энергии,
- повышенным уровнем защиты данных,
- устойчивостью к широкополосным помехам, а это значит несколько устройств могут общаться между собой, не мешая друг другу.
- лёгким соединением Bluetooth-устройств.
Устойчивый приём с модулем гарантирован в пределах 10 метров. Это обеспечено антенной из дорожки в виде змейки, нанесённой на плате модуля.
Для связи платы Ардуино и компьютера используется интерфейс UART (универсальный асинхронный приемопередатчик).
Так как любая плата Ардуино имеет хотя бы 1 последовательный порт UART, для подключения Bluetooth модуля не требуются специализированные библиотеки и схемы.
Можно использовать аппаратный или программный UART.
Если вы используете аппаратный UART, то вы должны подключаться к пинам Ардуино TX и RX, но тогда вы не сможете загружать скетч в Ардуино не отключив предварительно модуль Bluetooth от платы. В противном случае скетч не запишется, потому что связь с Bluetooth модулем происходит по одному и тому же порту RX и TX, что и USB.
И вам придётся постоянно подключать и отключать модуль от платы, что не совсем удобно.
Это не касается плат Ардуино МЕГА у которой есть ещё 3 последовательных порта.
И не забывайте отключать питание от модуля, иначе он может сгореть.
Так же желательно подключить модуль к Выводам Ардуино через делитель напряжения.

а можно через DC/DC преобразователь 5В/3,3В, но я во всех проектах подключал напрямую и всё работало замечательно. Как будете подключать вы – это ваше дело.
Если использовать программный UART, то можно подключаться к любым цифровым выводам, но для этого надо будет установить библиотеку SoftwareSerial.h
Записывается так
#include
SoftwareSerial mySerial(2, 3); // RX, TX
Здесь для работы с Bluetooth создается программный последовательный порт на выводах 2 и 3.
Тогда не нужно будет постоянно отключать модуль при перезаписи скетчей в Arduino.
Если вы подключили всё правильно, то при подаче напряжения на модуль он сразу переходит в режим ожидания подключения, это можно заметить по часто мигающему светодиоду.
- Включаем Bluetooth на телефоне и ищем новые устройства
- Находим в списке расстройств «HC-06» или «HC-05» и подключаемся к нему.
- Телефон спросит пин-код. необходимо ввести «1234» или «0000»
Пароль по умолчанию для конкретного модуля может отличаться от «1234». Эту информацию должен предоставить изготовитель (продавец) модуля.
Если не можете войти, то узнать или сменить пароль можно посмотрев 09:21 минута этого видео.
Для работы со смартфоном вам потребуется установить приложение для отправки данных на блютуз модуль hc-05/06.
Я использовал бесплатную программу Bluetooth Terminal, но можно использовать приложение RemoteXY.

В видео я показал как работать с модулем и смартфоном. На примере кнопки на смартфоне Android и нажатия номера кнопки на индикатор.
Если у вас появились вопросы, то задавайте их на моём канале Youtube в комментариях.
Источник: arduino-kid.ru
