At команды для модуля bluetooth hc 06. Что такое bluetooth-модуль? Скетч для Arduino для работы по bluetooth

At команды для модуля bluetooth hc 06. Что такое bluetooth-модуль? Скетч для Arduino
для работы по bluetooth
At команды для модуля bluetooth hc 06. Что такое bluetooth-модуль? Скетч для Arduino для работы по bluetooth

Мы заняты разработкой приложения под Android для управления нагрузками на Arduino. Но, как вы все понимаете, просто там одно к другому не подключишь - нужен канал связи, а какой у нас самый доступный и дешманский канал? Конечно же bluetooth! О нём дальше и пойдёт речь.
Сегодня решаем производственные вопросы - подключаем Bluetooth модуль HC-06. Его главное отличие от HC-05 в том, что он урезан и предоставляет только необходимый минимум возможностей.

В целом, HC-06 можно рассматривать как беспроводной удлинитель UART. Поскольку мы подключаясь к нему с ПК через Bluetooth видим его как COM порт и подключаясь к контактам мы имеем чистый UART. Практически всё, что идёт с одной стороны - выходит с другой. За исключением AT команд со стороны контактов.

AT команды - это наследие старых модемов ещё из 1977 года. Представляют они из себя короткие строковые команды, например «AT», «AT-NAME», «AT-PIN». Обычно ввод команды завершается клавишей Enter. Но в этот раз всё немного иначе, и команда целиком должна быть получена, примерно, в течение одной секунды. По этой причине, для настройки нам не подойдут программы позволяющие писать напрямую с клавиатуры в порт (можно попробовать из буфера обмена, но есть шанс на облом). Нам нужна возможность послать по сигналу строку целиком.

Вооружившись COM Port Toolkit , мы выставляем скорость в 9600 и соответствующий номер порта. Далее готовим первую строку «AT». Отправляем и получаем на неё ответ «OK». Это уже хороший знак. Мы не перепутали RX и TX и не ошиблись со скоростью. Дальше вам наверняка захочется дать своё название модулю. Пишем: «AT-NAMEhome» и получаем в ответ что-то типа «OKhome». Меняем код доступа так: «AT-PIN010203», и получаем: «OKsetpin»
Ну что же. На этом начальная настройка закончена.

Не пропустите обновления! Подписывайтесь на нашу группу

Всем привет!

Есть модификация модуля HC-05 с 6ногами, (State,RX,TX,GND,VCC,EN), очень популярная сейчас на Алиэкспресс, так вот, для нее не нужно припаивать проводок на 34пин (KEY) и подавать туда 3.3в, чтобы включить работу RX-TX на выводах необходимо подать 3.3в. на разъем EN а не на key, после этого такой модуль начинает работать как положено начинает отвечать на AT команды отправленные с компьютера или ардуины по пинам. С трудом нашел эту информацию в одном описании этого модуля на странице товара на алиекспресс.
Короче все также как с KEY в этой статье, только 3.3в. подаем на EN! (Enter).
Привожу описание на англ.

First, the module parameters:
1.PCB Dimensions: 37.3mm (length) * 15.5mm (W)
2 Weight:. 3.5g
(3) Input voltage: 3.6V—6V, 7V ban over
4 power anti-reverse, reverse module does not work
5 leads to 6 feet: EN / VCC / GND / RXD / TXD / STATE (Bluetooth status leads to the foot, is not connected to the output low, after connecting output high)
6 with the connection status indicator, LED flash means no Bluetooth connection; LED flashing slowly that enter the AT command mode
7 onboard 3.3V regulator chip, the input voltage DC 3.6V-6V; When unpaired, current of about 30mA (because LED lights flashing, the current state of change); After successful pairing, the current is about 10mA
8 Interface level 3.3V, you can directly connect a variety of microcontroller (/51/AVR/PIC/ARM/MSP430 etc.), 5V microcontroller can also be directly connected. Directly connected to the microcontroller serial port, not through the MAX232 chip!
9 open area effective transmission distance of 10 meters, over 10 meters are possible, but do not guarantee the quality of the connection
10. After successful pairing, can be used as a full-duplex serial port. Do not need to know anything about the Bluetooth protocol, but only supports 8 data bits, 1 stop bit, no parity communication format. This is the most common communication format that does not support other formats!
11 Press the key to give the Bluetooth module is energized to enter AT mode, set parameters and query information
12 can be switched master and slave mode via AT commands
13 modules default baud rate is 9600, the default passkey is 1234, the default name for the HC-05
14 protection with transparent shrink tube
Second, wiring methods:
VCC: positive power supply
GND: power supply is negative
RXD: Receive side, the Bluetooth module receives data sent to the other device; TXD terminal normally connected to the other device to send
TXD: sending end, the Bluetooth module to send data to other devices; RXD terminal normally connected to other devices receiving
EN: Enable, then you need to enter AT mode 3.3V

Ищете простой способ беспроводного дистанционного управления вашим устройством с помощью bluetooth? Воспользуйтесь bluetooth-модулем HC-06.

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

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

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

Рабочее напряжение этого bluetooth-модуля - 3,3 В, но его входы толерантны к 5 В, поэтому он совместим со всеми платами Arduino .

Подключение

Контакты модуля можно соединить с макетной платой или Arduino проводами «мама-папа» . А с Troyka Shield через провода «мама-мама» .

Подключение стандартное для устройств, подключающихся по последовательному интерфейсу:

  • Контакт RX модуля подключается к контакту TX целевого устройства
  • Контакт TX модуля подключается к контакту RX целевого устройства

Настройки

Все настройки по умолчанию могут быть изменены с помощью АТ-команд.

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

Комплектация

В комплект не входят провода. Для подключения к управляющей электронике используйте макетные провода с разъёмами «мама» на стороне модуля или

Хотели бы вы организовать беспроводное включение/выключение света в доме? Если да, то для подобного проекта можно использовать Arduino, bluetooth модуль HC-06, реле и знания основ схемотехники.

В этой статье мы рассмотрим основы взаимодействия bluetooth модуля HC-06 с Arduino. Рассмотрим примеры передачи и приема данных через блютуз на примере включения/выключения светодиода.

Для реализации более серьезных автоматизированных систем вроде "умного дома", эти основы будут как нельзя кстати.

Начать работать с HC-06 достаточно просто. Все, что вам надо знать - расположение контактов для подключения. На HC-06 шесть контактов: wakeup, VCC, GND, TXD, RXD и State. На этапе, используем 4 контакта: VCC, GND, TXD и RXD.


Ниже показано как именно подключается Bluetooth модуль к Arduino.


HC-06 выступает в роли последовательного порта, через который вы передаете и принимаете данные. То есть, используя окно серийного монитора в Arduino IDE или Bluetooth приложение на вашем компьютере или телефоне, вы можете контролировать и управлять вашим проектом. Например, в качестве терминала можно использовать Teraterm. Перед загрузкой скетча на Arduino , отключите модуль HC-06. Так как модуль производит обмен данными с помощью контактов tx/rx, загрузить скетч не получится. После загрузки скетча можете подключать bluetooth модуль.

Echo скетч для Arduino и HC-06

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

Примечание . Если вы используете Arduino Mega, измените строку кода while(Serial.available()); на while(Serial.available()>0);. В противном случае, скетч не будет отрабатывать.

LED скетч для Arduino и HC-06

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

Взаимодействие HC-06 с компьютером

На видео ниже показано как подключить HC-06 к персональному компьютеру иди другму устройству с поддержкой bluetooth.

Примечание . На видео скачано, что программа, которую вы используете в качестве серийного монитора (Teraterm в данном конкретном случае), подключается к INCOMING (входящему) com порту. Это не правильно. Надо использовать OUTGOING (исходящий) com порт.

После подключения HC-06, откройте Teraterm или другой подходящий терминал. Выберите серийный порт, который отвечает за обмен данными с HC-06 (более детальные пояснения по этому поводу есть на видео).

После успешного подключения HC-06, можете отправлять данные на Arduino и обратно. Если вы загрузили второй скетч, вы сможете включать/выключать светодиод, отправляя символы “n” и “f” соответственно.

Пример Echo

Пример LED

Сфера применения HC-06 по сути безгранична. Можно управлять любыми роботизированными системами и процессами. Надеемся, что приведенные основы работы с bluetooth модулем HC-06 будут вам полезны в проектах на Arduino.

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

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

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

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

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

  • Набор проводов ПАПА-МАМА
  • HC-06 Bluetooth

Подключать 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.



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

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

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

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


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

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