Микроконтроллеры Arduino, Электронные компоненты

Радиодетали, Комплектующие

Уважаемые покупатели, начиная с 11 марта, магазин работает по новому адресу: г. Москва, ул. Молодогвардейская, д.57с10, 2 этаж, офис 269.

Bluetooth модуль HC-05: обзор и подключение в Arduino IDE

Опубликовано: 13.12.2017

Bluetooth имеет такие преимущества, как простота в использовании, низкая стоимость, отсутствие проводов, высокая помехоустойчивость,  и высокая область применения. Служит он для обмена данными между различными электронными устройствами. Это может быть управление различными датчиками или объектами, либо взаимосвязь двух элементов схемы: микроконтроллер-микроконтроллер. Очень часто можно встретить компьютерные мышки, наушники и принтеры, работающие через Bluetooth.

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

В данной статье мы рассмотрим принцип работы и подключение таких модулей к Arduino на примере HC-05. Кстати, купить его и другие устройства для подобной передачи данных вы можете на нашем сайте – https://www.yourduino.ru/product/bluetooth-modul-hc-05

Модули семейства HC осуществляют передачу данных по радиосвязи с частотой в 2,4–2,48 ГГц. Дальность связи составляет до 10 метров, но в помещения этот показатель несколько меньше.

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

Проще всего будет подключить Bluetooth модуль с помощью четырех выводов. Это два пина для осуществления питания 5В и заземление (gnd), а также два управляющих вывода - TX и RX, которые подключаются по так называемому UART интерфейсу к свободным пинам, оснащенными данной функцией подключения. На плате Arduino такие контакты обозначаются соответствующе: TX и RX.

Причем стоить помнить, что для правильного подключения вывод TX на плате Bluetooth подключают к контакту RX на плате Arduino, и вывод RX нашего модуля к контакту TX.

Визуальная схема подключения есть на картинке ниже:

 

Schem.png

 

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

В нашем случае, это среда разработки Arduino IDE – там пишется весь необходимый программный код (скачать ее можно на официальном сайте Ардуино), а также программы для настройки непосредственно Bluetooth модуль – Терминалы. Например, можно использовать терминал TeraTerm или Termite.

Скачать их можно будет по этим ссылкам:

http://termite.software.informer.com/3.2/

http://wikiprograms.org/tera-term/

 

Там нужно будет настроить скорость обмена данными в 9600 бит в секунду, а также настроить символ перевода строки CR+LF.

Далее, подключаемся к COM-порту и проверяем соединение.

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

Settings1.png

Settings2.png

Settings3.png

Как правило, до установления соединения с Arduino модуль будет бесперебойно мигать встроенным светодиодом. Поэтому, нужно будет зайти в терминал и ввести команду AT. Bluetooth модуль должен подтвердить ее фразой ОК или подобной, а далее мы снова отправляем сообщение - AT+VERSION?

Далее он должен отправить вам взамен еще одно утвердительное предложение с названием версии.

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

Вот пример довольно простого кода:

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);
         }
        // При символе "2" выключаем светодиод
        if ( val == '2') {
            digitalWrite(LED, LOW);
        }
    }
}

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

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

Вот так выглядит пример из терминала  Termite:

Term1.png

Term2.png

В самом коде у нас прописывается цикл (в функции void loop), по которому в случае ввода в порт терминала определенного символа, у нас включается или выключается светодиод. То есть, при вводе значения ‘1’ подается высокий логический уровень на вывод со светодиодом, и он загорается, а при вводе в порт символа ‘2’ подается низкий логический уровень, и светодиод затухает. Вот и все.

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

А в следующей статье про Bluetooth модули вы научитесь управлять этими же проектами, но с помощью телефона – всего лишь парой нажатий по экрану.

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

 

 

Комментарии (0)
Пока нет комментариев
Вы не представились
Не правильно введен e-mail
Нам интересно Ваше мнение
Все поля обязательны к заполнению
Перед публикацией комментарии проходят модерацию

Главное меню

Каталог

Полезные ссылки

Цена
от
до
0 Корзина: 0 руб.