Модуль bluetooth hc 06 arduino подключение

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

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

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

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

Bluetooth модуль

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

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

Ардуино с подключенным Bluetooth

  1. Bluetooth адаптер или встроенный в ПК модуль bluetooth.

Bluetooth адаптер для ПК

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Читайте также:  Driver jbl flip bluetooth

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

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

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

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

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

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

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

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

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

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

Источник

Урок 15. Bluetooth модуль HC-06 подключение к Arduino. Управление устройствами с телефона.

ГЛАВНАЯ / Уроки и проекты / Урок 15. Bluetooth модуль HC-06 подключение к Arduino. Управление устройствами с телефона.

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

Один из самых популярных и распространенных методов обмена данными посредством Bluetooth.

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

Нам понадобится:

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

Подключать Bluetooth модуль к микроконтроллеру Arduino удобнее всего с помощью проводков ПАПА-МАМА.

Arduino Bluetooth
Pin 1 (TX) RXD
Pin 0 (RX) TXD
GND GND
5V VCC

Будьте внимательны, подключать подключать нужно TX -> RXD ,RX -> TXD.

Теперь необходимо записать пробный код программы:

Во время загрузки скетча необходимо что бы Bluetooth модуль был отключен от микроконтроллера arduino. В противном случае скетч не запишется, потому что связь с Bluetooth модулем происходит по одному и томуже порту RX и TX, что и USB.

int val; int LED = 13; void setup() < Serial.begin(9600); pinMode(LED, OUTPUT); digitalWrite(LED, HIGH); >void loop() < if (Serial.available()) < val = Serial.read(); // При символе "1" включаем светодиод if (val == '1') < digitalWrite(LED, HIGH); >// При символе "0" выключаем светодиод if ( val == '0') < digitalWrite(LED, LOW); >> >

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

Подключение Bluetooth к телефону

Желательно в качестве источника питания для arduino использовать не USB, а внешний Блок питания на 9 В.

  1. Включаем Bluetooth на телефоне и ищем новые устройства
  2. Находим в списке расстройств «HC-06″ и подключаемся к нему.
  3. Телефон спросит пин-код. необходимо ввести «1234» или «0000«
  4. Ура. Устройство подключено.

Теперь нужно скачать bluetooth terminal на ваш телефон. Мы рассмотрим на примере платформы Android.

Читайте также:  Гарнитура anker soundcore life tune bluetooth

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

После того как мы установили терминал, запускаем его выбираем наш bluetooth модуль HC-06 и подключаемся к нему.

Пришло время попробовать проект в деле. Пишем в терминале цифру «0» и отправляем. Светодиод L который находится на плате arduino рядом с pin 13, должен погаснуть. Теперь отправим через терминал цифру «1» и светодиод L должен зажечься.

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


Домашняя работа:

  • Изменить скетч так, что бы светодиод зажигался и потухал с помощью одной и той же команды например «G».
  • Дописать скетч и научить его преобразовывать текстовые данные приходящие через блютус в цифровые и реализовать димер, зажигать светодиод с помощью ШИМ, на заданную яркость от 0 до 254 приходящую через bluetooth.

Источник

Bluetooth-модуль HC-06

Модуль HC-06 (и старшая модель HC-05) представляет собой плату с Bluetooth-модемом с дополнительной обвязкой: стабилизатор с 5 на 3.3 вольта, светодиод, и конденсаторы на линиях питания. Также на плате установлен mosfet-транзистор (Q1), который при надобности может разрывать цепь питания блютуза, тем самым отключая его.

Модуль HC-06 используется только в режиме slave, то есть он не может самостоятельно подключаться к другим устройствам Bluetooth.

На HC-06 шесть подписанных контактов: EN, VCC, GND, TXD, RXD и State (некоторые обозначения могут иметь другие названия). Но ножками как правило оборудованы только четыре из них: VCC, GND, TXD и RXD.

HC-06

Технические характеристики

  • Питание: 3,3В–6В
  • Максимальное входное напряжение: 5В
  • Максимальный ток: 45 мА
  • Скорость передачи данных: 1200–1382400 бод
  • Рабочие частоты: 2,40 ГГц – 2,48ГГц
  • Поддержка спецификации bluetooth версии 2.1
  • Дальность связи: 30 м
  • Пароль «1234», скорость передачи данных 9600, имя модуля HС-06 (все настройки можно изменить AT-командой)

Для подключения к Arduino Uno используется следующая схема.

 HC-06 | Arduino ----------------- GND | GND VCC | 3.3V RXD | TX TXD | RX 

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

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

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

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

Сначала необходимо сделать несколько предварительных действий. Когда вы подключите HC-06 к плате, он будет готов к работе, постоянно мигая своим светодиодом. Нужно установить соединение с компьютером. Далее объяснения идут для Windows 10. В нижнем правом углу находим значок Bluetooth и выбираем пункт Show Bluetooth Devices. В открывшемся окне выбираем пункт Add a device. В успешном случае будет обнаружено новое устройство с именем HC-06. Для спаривания с ним введите пароль по умолчанию 1234.

HC-06

После успешного соединения нужно снова открыть окно Show Bluetooth Devices и выбрать пункт More Bluetooth options. В диалоговом окне переключитесь на вкладку COM Ports и запомните номер порта для Outgoing — в моём примере это был порт COM7.

HC-06

Далее следует установить программу-терминал для общения с модулем. Самой простой и популярной является Termite. Я выбрал вариант «Program only» (вторая в списке) размером всего 76 кб. Программа не требует инсталляции и не пишет ничего в реестр. Запустите программу, нажмите на кнопку Settings и в диалоговом окне выберите нужный порт (который я просил запомнить) и скорость (9600).

Читайте также:  Блютуз выключается при блокировки

Напишем скетч и зальём его на плату.

 String message; // строка для входящих сообщений void setup() < Serial.begin(9600); >void loop() < while (Serial.available()) < message += char(Serial.read()); //сохраняем строку от входящих сообщений >if (!Serial.available()) < if (message != "") < //если данные доступны Serial.println(message); //выводим данные message = ""; //очищаем данные >> delay(3000); //delay > 

В Termite вводим любое слово в нижнем текстовом поле и нажимаем клавишу Enter. В Serial Monitor будут отображаться введённые слова. Это означает, что мы можем посылать определённые команды для платы, чтобы управлять ей.

Давайте попробуем включать и выключать встроенный светодиод на контакте 13.

 int val; int LED = 13; void setup() < Serial.begin(9600); pinMode(LED, OUTPUT); >void loop() < if (Serial.available()) < val = Serial.read(); // При символе "1" включаем светодиод if (val == '1') < digitalWrite(LED, HIGH); Serial.println("On"); >// При символе "0" выключаем светодиод if ( val == '0') < digitalWrite(LED, LOW); Serial.println("Off"); >> > 

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

Подключение к Android

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

AT-команды

С помощью AT-команд можно сменить настройки по умолчанию. Имейте в виду, что в 2018 году модули стали поставляться с другой прошивкой и некоторые сведения, которые ранее были описаны в интернете, устарели. Я описываю актуальные команды на 2019 год.

Используем следующую схему подключения.

 HC-06 | Arduino ----------------- GND | GND VCC | 3.3V RXD | D3 TXD | D2 

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

 #include SoftwareSerial btSerial(2, 3); // RX, TX /* Connect pin 2 Arduino to pin TX HC-06 Connect pin 3 Arduino to pin RX HC-06 */ void setup() < Serial.begin(9600); Serial.println("Enter AT commands:"); btSerial.begin(9600); >void loop()

В Serial Monitor вводим команду AT . В ответ получим OK.

Чтобы сменить имя модуля, нужно ввести команду AT+NAME=CAT-06 , где CAT-06 — новое имя. Имя не должно превышать 20 символов.

Узнать версию модуля: AT+VERSION . Ответ: VERSION:3.0-20170609.

Смена пароля: AT+PSWD:»0000″ , где 0000 ваш новый пароль.

Есть ещё команды для смены скорости, но тут нужно быть внимательным. После смены скорости старые скетчи не будут работать, надо вносить в них изменения, чтобы соответствовать новым настройкам. Не уверен, что стоит увлекаться этим.

Сравнение модулей HC-05 и HC-06

Модули HC-05 и HC-06 являются наиболее используемыми. Оба модуля основаны на одинаковом чипе, но есть и важные отличия. Модуль HC-05 может работать в двух режимах работы – и в качестве ведущего (master), и в качестве ведомого (slave).

Модуль HC-05 стоит несколько дороже, но он имеет большее количество полезных рабочих функций. Скорость передачи АТ команд по умолчанию для HC-05 равна 38400, для HC-06 – 9600. Важным моментом является то, что в конце АТ команд для HC-05 должны быть символы CRLF.

Подключение обоих модулей к плате Arduino одинаково.

Источник

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