Эта страница только для чтения. Вы можете посмотреть исходный текст, но не можете его изменить. Сообщите администратору, если считаете, что это неправильно. ====== Bluetooth модуль HC-05 ====== ===== Описание ===== Ни одно современное устройство не обходится без функции соединения и работы по Bluetooth. Теперь и вы сможете управлять любыми своими устройствами с помощью смартфона или планшета. С помощью модуля Bluetooth можно отправлять и принимать не только управляющие команды, но и медиа файлы (фото, видео, музыку). При разработке данного модуля мы постарались сделать его максимально простым и понятным даже для начинающего пользователя. Для начала работы достаточно установить приложение на смартфон, планшет, компьютер. Настройка самого модуля осуществляется быстро и просто. Bluetooth модуль HC-05 выполнен на базе наиболее популярного в настоящее время чипа HC-05. Данный модуль поддерживает работу устройств по интерфейсу Bluetooth v.2.0. Модуль HC-05 может выступать не только в slave-режиме, но также может самостоятельно подключаться к другим Bluetooth-устройствам (master-режим). Добавьте модуль к Motor Shield и получите готовое решение для управления роботом через Bluetooth. ==== Технические характеристики ==== * Рабочее напряжение: 3,3-5 В * Максимальный потребляемый ток: 40 мА * Скорость передачи данных: 9600-460800 бод * Эффективная дальность передачи: до 10 м * Максимальная дальность передачи: до 30 м ==== Физические размеры ==== * Габаритные размеры Д х Ш х В: 44 х 25 х 8 мм ==== Подключение ==== Bluetooth модуль подключается к контроллеру по последовательному интерфейсу UART. Для подключения удобно использовать Sensor Shield. Для дистанционного управления роботом можно использовать Motor Shield - на нем также предусмотрен дополнительный разъем UART. Модуль оснащен двумя дополнительными вспомогательными выводами, использование которых необязательно, но в определенных ситуациях может пригодиться: * **SYS1** - (EN) - перевод модуля в [[main:comm:hc05_at|режим AT-команд]] (осуществляется подачей логической единицы на вывод) * **SYS2** - (STATE) - индикация состояния соединения ==== Настройки по умолчанию ==== * Скорость передачи данных: 38400 бод ([[main:comm:hc05_at|для управления AT-командами]]) * Скорость передачи данных: 9600 бод (для связи с модулем) * Имя модуля: HC-05 * Пароль для подключения: 1234 Все настройки по умолчанию могут быть изменены с помощью АТ-команд. ===== Примеры подключения и использования ===== ==== Пример 1. Зажигание светодиода ==== === Шаг 1. Подготовка === **Описание:** Реализуем пример, который будет включать светодиод, по команде, переданной на блютус-модуль. Для этого, помимо самого контроллера и блютус модуля, нам понадобится какое-то устройство управления, которое будет отправлять данные на блютус модуль. В этом примере мы воспользуемся для этих целей смартфоном. **Что понадобится:** ^ Что нужно ^ Количество ^ | [[httpss://smartelements.ru/collection/kontrollery/product/kontroller-smart-uno|Контроллер Smart Uno]] | 1 | | [[httpss://smartelements.ru/collection/shildy/product/sensor-shield|Sensor Shield]] | 1 | | [[httpss://smartelements.ru/collection/svyaz/product/bluetooth-modul-hc-05|Bluetooth модуль HC-05]] | 1 | | [[httpss://smartelements.ru/collection/moduli/product/modul-svetodioda-krasnyy|Модуль светодиода (красный)]] | 1 | | [[httpss://smartelements.ru/collection/provoda-i-kabeli/product/nabor-provodov-20-sht-20sm-mama-mama|Провода "мама - мама"]] | 7 | **Схема подключения:** {{ :main:comm:hc-05_uno.png?nolink |}} === Шаг 2. Загрузите скетч на контроллер === <file Arduino> #include <SoftwareSerial.h> // подключение библиотеки для эмуляции сериал-порта SoftwareSerial HC_05(2, 3); // создание виртуального сериал соединения на выводах RX = 2, TX = 3 char appData; // String inData = ""; // переменная для хранения полученных данных void setup() { Serial.begin(9600); // инициализация сериал соединения Serial.println("HC_05 serial started at 9600"); // вывод поясняющей надписи HC_05.begin(9600); // инициализация соединения блютус модуля со скоростью 9600 бод pinMode(13, OUTPUT); // конфигурация вывода светодиода } void loop() { HC_05.listen(); // "прослушивание" порта while (HC_05.available() > 0) { // если пришла какая-то информация appData = HC_05.read(); // чтение полученных данных inData = String(appData); // сохранение данных в строковом формате Serial.write(appData); //выведем полученные данные в монитор сериал порта } if (Serial.available()) { // если что-то пришло в сериал порт delay(10); // задержка в 10 мс HC_05.write(Serial.read()); //отправить это в порт блютус модуля } if (inData == "1") { // если пришла единица Serial.println("LED ON"); // поясняющая надпись в монитор порта HC_05.println("LED ON"); // поясняющая надпись в блютус модуль digitalWrite(13, HIGH); // включить светодиод delay(500); // задержка в полсекунды digitalWrite(13, LOW); // погасить светодиод HC_05.println("LED OFF"); // поясняющая надпись в блютус модуль } } </file> === Шаг 3. Установка и настройка приложения === После того, как модуль подключен к контроллеру, а контроллер подключен к компьютеру, нам нужно установить приложение для работы с блютус на смартфоне. На примере ОС Android рассмотрим процесс установки приложения. В магазине приложений найдите приложение serial bluetooth terminal и установите его. {{ :main:comm:install_app.jpg?nolink&400 |}} В настройках телефона активируйте Bluetooth соединения. {{ :main:comm:bt_activating.jpg?nolink&400 |}} Откройте приложение Serial Bluetooth Terminal, войдите в основное меню. {{ :main:comm:btapp_main_menu.jpg?nolink&400 |}} Выберите раздел Devices, перейдите на вкладку Bluetooth Classic и найдите модуль. Выберите нужное устройство. (Если Вы до этого не меняли его имени, то имя должно быть "HC-05", мы меняли на имя "MyHC-05"). ++++ Что делать если модуля в списке нет? | Модуль может отсутствовать в списке, если к нему ещё ни разу не подключались с этого смартфона). Если его в списке нет, попробуйте добавить его через настройки Bluetooth. Для этого нажмите на изображение шестерёнки. {{ :main:comm:dev_searching_hc05.jpg?nolink&400 |}} Затем, найдите модуль в списке устройств, к которым ещё не производилось подключения. {{ :main:comm:dev_find_hc05.jpg?nolink&400 |}} Кликните по имени модуля для подключения, и введите пароль (если его не меняли с помощью AT-команд, то пароль: 1234). {{ :main:comm:dev_connecting_pass_hc05.jpg?400 |}} Вернитесь к списку устройств в приложении (назад). ++++ {{ :main:comm:devices_hc05.jpg?400 |}} При выборе устройства, приложение снова откроет начальную страницу (терминал) и отобразит состояние подключения. {{ :main:comm:btapp_just_connected_hc05.jpg?400 |}} Далее, в поле ввода, наберите с клавиатуры цифру 1, и нажмите кнопку отправить. После отправки, сообщение отобразится в терминале. На контроллере загорится встроенный светодиод на полсекунды. В терминал выведется информация о включении и отключении светодиода. {{ :main:comm:btapp_send_1_hc05.jpg?400 |}} === Шаг 4. Результат === Наблюдайте как по команде со смартфона включается и отключается светодиод на модуле.