Перейти к содержанию

Блютуз модуль Ардуино HC-06 / 05 подключение

Блютуз модуль Ардуино HC-06 подключение

Как подключить модуль Bluetooth HC-06 / HC-05 к Arduino Uno, чтобы можно было управлять микроконтроллером дистанционно со смартфона. Модуль обеспечивает двунаправленную связь через Bluetooth связь, что означает, что вы можете не только управлять платой Ардуино, но и получать данные от устройства. Приведем схему подключения и примеры кода для HC-06 / 05, а также приложение для смартфона.


Необходимые компоненты:

  • Arduino Uno / Arduino Nano / Arduino Mega
  • bluetooth модуль hc-06 или hc-05
  • светодиоды и резисторы
  • макетная плата
  • коннекторы
  • библиотека SoftwareSerial.h
  • приложение led_ru.apk

Дополнительные материалы на эту тему:

  1. Машинка на Ардуино с Блютуз управлением
  2. Часы на адресной ленте WS2812B c Блютуз
  3. Подключение ИК приемника к Ардуино

Bluetooth связь — один из самых популярных видов связи ближнего радиуса действия, используемый в современной электронике: беспроводные наушники, клавиатуры и другие гаджеты. В проектах для начинающих пользователей с платой Ардуино модуль Bluetooth hc-06 и hc-05 используется для управления различными устройствами, например, для дистанционного управления автомобилем или лодкой со смартфона Android.

Модуль HC-06/HC-05 распиновка, характеристики

Модуль HC-06/HC-05 распиновка, характеристики

Характеристики HC-06 / HC-05 (datasheet)

  • Напряжение питания: 3,3 — 6 В
  • Протокол Bluetooth: v1.1 / 2.0
  • Частота: 2,4 ГГц
  • Мощность передатчика: менее 4 дБм, класс 2
  • Поддерживаемые профили: ведущий и ведомый
  • Рабочая температура: от -5°C до 45°C

Оба модуля построены на чипе CSR BC417, который поддерживает Bluetooth сигнал со скоростью до 3 Мбит/с. На самой плате расположена змеевидная антенна, которая обеспечивает дальность связи до 10 метров. Основным преимуществом этого модуля является устойчивость устройства к широкополосным помехам. Это означает, что сразу несколько устройств могут общаться друг с другом, не мешая друг другу.

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

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

Для начала мы будем дистанционно включать и выключать светодиод, подключенный к порту 13 на плате Ардуино. После установки приложения на смартфон или планшет с ОС Android и загрузки скетча в микроконтроллер, подключите блютуз модуль к Ардуино, как показано на схеме выше. Пока модуль bluetooth hc-05 или bluetooth hc-06 не сопряжен со смартфоном, встроенный светодиод на блютуз модуле будет быстро мигать.

Скетч для управления светодиодами по блютуз Ардуино


 

#include "SoftwareSerial.h"
SoftwareSerial mySerial(2, 3); // порты TX, RX

#define RED 10
#define BLU 12
int val;

void setup() {
  mySerial.begin(9600);
  pinMode(RED, OUTPUT);
  pinMode(BLU, OUTPUT);
}

void loop() {
  if (mySerial.available()) {
    val = mySerial.read();
 
    // включение и выключение синего светодиода
    if (val == '1') { digitalWrite(BLU, HIGH); }
    if (val == '0') { digitalWrite(BLU, LOW); }

    // включение и выключение красного светодиода
    if (val == '2') { digitalWrite(RED, HIGH); }
    if (val == '3') { digitalWrite(RED, LOW); }
  }
}

Сопряжение блютуз модуля со смартфоном

Для сопряжения смартфона с модулем Bluetooth HC-06 и HC-05 зайдите в настройки телефона и активируйте Bluetooth. После чего на устройстве активируется поиск устройства, и помимо названия HC-05 или HC-06, вы увидите адрес устройства. Для подключения необходимо ввести пароль — обычно «1234» или «0000». Пароль нужно ввести только один раз, последующее сопряжение будет проходить автоматически.

Сопряжение блютуз модуля со смартфоном

После установки приложения led_ru.apk, откройте его и нажмите на кнопку «bluetooth connection». Перед вами появится список доступных устройств с адресами — выберите нужное устройство. Если Bluetooth сопряжение прошло успешно, светодиод на модуле начнет мигать реже — примерно один раз в две секунды. И теперь вы сможете дистанционно включать и выключать светодиоды подключенные к Ардуино через Блютуз.

Подключение HC-05 к Ардуино в режиме прошивки

Подключение HC-05 к Ардуино в режиме прошивки

Для настройки модуля bluetooth необходимо подключить источник питания с напряжением 3,3 вольта, а также подать напряжение 3,3 вольта на порт 34 (см. рисунок выше). Прошивка осуществляется через последовательный порт, так как аппаратный последовательный порт Arduino (порты TX и RX) будет занят отправкой AT-команд с компьютера, мы используем программный последовательный порт с помощью библиотеки SoftwareSerial.h.

Скетч для прошивки HC-05 / HC-06 AT командами

#include "SoftwareSerial.h"
SoftwareSerial mySerial(2,3);

void setup() {
  pinMode(2,INPUT);
  pinMode(3,OUTPUT);
  
  Serial.begin(9600);
  mySerial.begin(38400);
  
  Serial.println("start setting");
}

void loop() {
  if (mySerial.available()) {
     char c = mySerial.read();
     Serial.print(c);
  }
  if (Serial.available()) {
     char c = Serial.read();
     mySerial.write(c);
  }
}

После загрузки программы откройте монитор последовательного порта Arduino IDE и отправьте AT-команды. Перед отправкой AT команд на блютуз модуль, следует выбрать «NL & CR» на мониторе последовательного порта среды Arduino IDE (смотри картинку ниже). Первым делом отправьте команду — AT, чтобы проверить подключение модуля. Если схема собрана правильно, то ответ от блютуз модуля должен быть OK.

Arduino IDE и отправка AT-команд

Чтобы изменить код доступа, имя или другие характеристики Bluetooth-модуля, необходимо отправить следующие команды через монитор последовательного порта Arduino IDE. Далее приведена пошаговая инструкция отправки AT-команд, которые необходимо использовать для небольшой конфигурации HC-06 (смена имени и пароля). А в конце статьи приведена таблица с AT-командами с краткими пояснениями.

  • узнать имя модуля: AT+NAME?
  • выбрать имя модуля: AT+NAME=ROBOT
  • узнать имя модуля: AT+NAME?
  • посмотреть пароль: AT+PSWD?
  • выбрать пароль: AT+PSWD=0000
  • узнать пароль: AT+PSWD?

Таблица с AT-командами для прошивки HC-05 / HC-06

AT-команда Ответ модуля Примечание
AT OK Тестовая команда
AT+VERSION? +VERSION: … Узнать версию прошивки модуля
AT+RESET OK Сброс настроек
AT+ADDR? +ADDR: … Узнать адрес модуля
AT+NAME? +NAME:«name» Узнать имя модуля, где «name» — имя Bluetooth-модуля
AT+NAME=«name» OK Установить новое имя, где «name» — имя Bluetooth-модуля
AT+PSWD? + PSWD:«pin» Узнать код доступа, где «pin» — код, по умолчанию 1234
AT+PSWD=«pin» «pin»
OK
Установить новый код доступа к модулю, где «pin» — код доступа к Bluetooth-модулю
AT+ROLE? +ROLE:«param» Узнать режим работы модуля, где «param» — режим:
0 — slave. К модулю может подключиться мастер;
1 — master. Модуль сам подключается к устройству.
AT+ROLE=«param» OK Установить режим работы модуля, где «param» — режим

Заключение. Приложение подходит только для ОС Android. Помимо цифр, можно отправлять команды в виде букв латинского алфавита. Библиотека SoftwareSerial.h позволяет реализовать программный последовательный порт на любом цифровом выводе платы Ардуино. Подключив блютуз модуль к портам TX и RX Arduino, невозможно будет загрузить код на плату, поэтому мы и используем библиотеку SoftwareSerial.h.

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

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

newzaym
➜