- Урок 15. Bluetooth модуль HC-06 подключение к Arduino. Управление устройствами с телефона.
- Bluetooth HC-06 и ардуино. Приложение андроид для управления Реле с телефона.
- Не забывайте подписываться на канал Youtube и вступайте в группы в Вконтакте и Facebook.
- Всем Пока-Пока. И до встречи в следующем проекте.
- Управление нагрузкой голосом с помощью Arduino и Bluetooth HC-05
- Включение и отключение устройств по Bluetooth с помощью Arduino (видео)
- Принцип включения выключении нагрузки по Bluetooth с помощью Arduino
- Схема подключения Arduino с модулем Bluetooth
- Скетч для Arduino дабы он работал с модулем Bluetooth
- Программа для планшета или телефона (Android) для управления нагрузкой через Bluetooth
- Траблы с заливкой программы в Arduino
Урок 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 В.
- Включаем Bluetooth на телефоне и ищем новые устройства
- Находим в списке расстройств «HC-06″ и подключаемся к нему.
- Телефон спросит пин-код. необходимо ввести «1234» или «0000«
- Ура. Устройство подключено.
Теперь нужно скачать bluetooth terminal на ваш телефон. Мы рассмотрим на примере платформы Android.
Вы можете установить разные bluetooth терминалы, как правило они отличаются только разными дизайнами, функционал от этого не меняется. Так же можно найти и терминал и для продуктов ios.
После того как мы установили терминал, запускаем его выбираем наш bluetooth модуль HC-06 и подключаемся к нему.
Пришло время попробовать проект в деле. Пишем в терминале цифру «0» и отправляем. Светодиод L который находится на плате arduino рядом с pin 13, должен погаснуть. Теперь отправим через терминал цифру «1» и светодиод L должен зажечься.
Демонстрация работы:
Домашняя работа:
- Изменить скетч так, что бы светодиод зажигался и потухал с помощью одной и той же команды например «G».
- Дописать скетч и научить его преобразовывать текстовые данные приходящие через блютус в цифровые и реализовать димер, зажигать светодиод с помощью ШИМ, на заданную яркость от 0 до 254 приходящую через bluetooth.
Bluetooth HC-06 и ардуино. Приложение андроид для управления Реле с телефона.
В уроке мы использовали стороннее приложения для Android телефона или планшета. Сегодня мы напишем свое приложение в mit app inventor. Подправим скетч из Arduino урока 11, для работы с низкоуровневым реле. С высоко уровненным рее работать будет без изменения скетча. Чем отличаются высоко уровневые реле от низко уровневых. Низко уровневые включается, когда на сигнальны Пин реле подается LOW. Высоко уровневый включается, когда подадим HIGH. Конструктивные особенности и более подробную информацию ищите в интернете.
Приступим к приложению для Андроида , для этого воспользуемся самым простым решением app inventor 2. Если у вас возникли сложности с данной средой разработки у меня на сайте есть боле простые примеры написания приложений в данной среде разработки : Wi-Fi реле на NodeMCU. Управление Android приложением
Интерфейс программы будет выглядеть вот так.
В приложение нужно добавить: BluetoothClient1 и Clock1 с интервалом обновления 100.
Кнопка «Bluetooth» осуществляет подключение к hc-06 модулю.
Копка «Disconnect» разрывает соединение.
Кнопки «On» и «Off» включают и выключают реле.
Блоки программы для подключения и отключения модулю HC-06 :
Блок управления и вывода информации на дисплей.
Копка включения отправляет по блютуз каналу значение равное 1. Кнопка отключения отправляет 0.
Cloc1 это часы, проверяют информацию которая пришла по Bluetooth и выводит ее в текстовое поле Info.
Приложение на Android устройстве выгладить вот так.
После нажатия на кнопку «Bluetooth». У вас откроется окно выбора устройства.
Выбираете ваше устройство. После чего можно управлять реле. При нажатии на кнопку «On».
В поле Info выведется информация «Rele On — Portal-Pk.ru». При выключении реле на экран телефона будет строка «Rele Off — Portal-Pk.ru»
Подключаем к Arduino UNO реле и модуль по схеме.
Если у вас Arduino NANO, то реле и bluetooth модуль hc 06 подключить по схеме.
Скетч bluetooth реле ардуино будет вот таким.
int LED = 5; int val = 0; void setup() < Serial.begin(9600); //Инициирует последовательное //соединение и задает скорость передачи данных в бит/c (бод) pinMode(LED, OUTPUT); digitalWrite(LED, HIGH); >void loop() < if (Serial.available() >0) // пришли данные < val = Serial.read(); if (val=='1') // если 1 то включаем светодиод < digitalWrite(LED,LOW); Serial.print("Rele On - "); // вывод данных Serial.println("Portal-Pk.ru"); // вывод данных с переносом строки >if (val=='0') // если 0 то выключаем светодиод < digitalWrite(LED,HIGH); Serial.print("Rele Off - "); // вывод данных Serial.println("Portal-Pk.ru"); // вывод данных с переносом строки >> >
Если вы сделали все правильно, то у вас получиться вот такой результат.
Подключенная нагрузка будет включаться и выключаться . Если у вас работает наоборот возьмите код для Arduino из урока: Bluetooth модуль HC-06. Управление Arduino с телефона.
Сегодня мы разобрали связку ардуино андроид bluetooth . Планирую сделать машину с управлением по bluetooth . И много другое.
Не забывайте подписываться на канал Youtube и вступайте в группы в Вконтакте и Facebook.
Всем Пока-Пока. И до встречи в следующем проекте.
Понравилась статья? Поделитесь ею с друзьями:
Управление нагрузкой голосом с помощью Arduino и Bluetooth HC-05
Этот проект позволяет голосом управлять бытовой техникой с помощью голоса через приложение для Android. Для управления используется плата Arduino Amega2560, через которую прибор включается / выключается. Вы можете изменить приложение для Android, чтобы добавить больше функций. Скачайте Bluetalk приложение и установить его на свой Android телефон.
Схема управления состоит из Arduino Mega 2560 (board1). Чтобы включить или выключить реле плата сравнивает входные данные (речь), полученные через Bluetooth с сохраненными данными,.
Модуль Bluetooth (HC-05) подключен через последовательный порт. В данном варианте применено только одно реле, хотя ничто не мешает увеличить количество реле путем применения многоканальной платы реле для управления несколькими устройствами. Мега 2560 запрограммирова на сравнение относительных строк (речь).
Есть две программы, используемые в данном проекте. Одной из них является скетч для Arduino (Bluetalk.ino), а другой является Android приложение (Bluetalk.apk).
Для программирования Arduino используется программа IDE. Для разработки и изменения Android приложения используется MIT App Inventor, так как она проще в использовании по сравнению с Android SDK. Приложение MIT App Inventor хороша для энтузиастов, при создании небольших приложений для конкретных проектов.
Bluetalk.apk приложение использует функцию распознавания речи Google, и передает текст в Arduino через подключенный Bluetooth модуль (HC-05). Код .apk можно загрузить в MIT App Inventor с помощью импорта файла Bluetalk.aia. Оба .apk и .aia файлы включены в архив, который можно скачать в конце статьи.
Запустите Arduino IDE (v1.6.9) на вашем компьютере и подключите плату Arduino (мы используем Arduino Mega, но вы можем использовать любую другую плату Arduino). Выберите правильный последовательный COM-порт платы, а затем загрузите скетч. Отсоедините кабель от платы Arduino и подключите реле и модуль Bluetooth HC-05. Снова подключить Arduino к компьютеру.
Светодиод на модуле Bluetooth начинает быстро мигать, что означает, что он не подключен. После того, как модуль HC-05 соединиться со смартфоном, светодиод будет мигать сериями по два с некоторой задержкой.
Теперь скажите что-нибудь в свой смартфон и проверьте данные на серийный монитор среде разработки Arduino. После подтверждения того, что вы получаете данные от модуля HC-05, отсоедините кабель и подключите реле к прибору, как показано на схеме. При запуске приложения вам будет предложено ввести пароль (по умолчанию – 1234)
Источник: 2016/10 | ELECTRONICS FOR YOU
Скачать файлы к проекту (1,3 MiB, скачано: 467)
Включение и отключение устройств по Bluetooth с помощью Arduino (видео)
Эта статья будет иметь «итоговый» характер, то есть резюмировать столь невысокие, но мои достижения по работе с микроконтроллером Ардуино. Чтобы впоследствии, когда будет будет необходимо, можно было вернуться к этой платформе и реализовать не ней включение выключение каких-либо устройств.
Как я вижу сложившееся, с помощью Bluetooth модуля можно осуществлять управление устройствами для умного дома или сделать даже обычное открывание –закрывание ворот во дворе или гараже. То есть подъехал, открыл. Уезжаешь – закрыл. В принципе у меня пока нет ни частного дома, ни ворот, но как управлять ими я уже знаю:)
Итак, давайте теперь об этом я поведаю и вам.
Принцип включения выключении нагрузки по Bluetooth с помощью Arduino
Собственно принцип очень прост. Необходимо иметь какой либо девайс с возможностью установить управляющее ПО под системой Android. Скажем телефон или планшет. Далее берем Ардуино, а также блок Bluetooth, все это соединяем между собой и заливаем в Ардуино программку. Вот и все.
Схема подключения Arduino с модулем Bluetooth
Само собой в нашем случае первым делом будет физическое подключение, а затем и программное обеспечение. Так вот, начнем с подключения. Если у вас есть Ардуино UNO и модуль Bluetooth HC-06 или 05, то подключать надо будет следующим образом. При этом на схеме ни коим образом не отражено подключение для управляющих цепей. То есть приведено подключение непосредственно модуля Bluetooth HC-06 к Ардуинке.
Само собой если у вас управляющими будут выходы 11 и 13, как в нашем случае, смотрите статью далее, то к ним и будет подключаться силовой блок или просто светодиод. Важным будет то, что при подключении модуля RX на одном устройстве идет к TX на другом и наоборот. Учтите это!
Скетч для Arduino дабы он работал с модулем Bluetooth
Теперь о скетче, то есть о ПО, которое заставляет работать нашу аппаратную платформу, выразимся так. Все очень просто. Смотрим.
int val; int LED = 13; int LED1 = 11; void setup() < Serial.begin(9600); pinMode(LED, OUTPUT); digitalWrite(LED, HIGH); >void loop() < if (Serial.available()) < val = Serial.read(); // При символе "1" включаем светодиод 13 if (val == '1') < digitalWrite(LED, HIGH); >// При символе "0" выключаем светодиод 13 if ( val == '0') < digitalWrite(LED, LOW); >// При символе "2" выключаем светодиод 11 if (val == '2') < digitalWrite(LED1, HIGH); >// При символе "0" выключаем светодиод 11 if (val == '3') < digitalWrite(LED1, LOW); >> >
Собственно здесь идет назначение переменных, два светодиода на 11 и на 13 ножку в нашем случае. Потом с помощью Serial.begin(9600) мы подключаем наш блютуф. Ну и собственно осталось найти программку для управления блютуф.
Программа для планшета или телефона (Android) для управления нагрузкой через Bluetooth
Вы собственно сами можете найти любую из программ, которая поддерживает управление блютуф модулем с телефона, это уже на ваше усмотрение. Я для себя нашел и прибрал (скачать ArduinoRC) тоже установочную программку. Именно ее я и поставил на телефон.
Собственно с помощью этой программки и можно будет задавать критерии-условия для скетча, а значит получать сигнал на выходных ножках 11 и 13. В нашем случае задействованы кнопки 0,1,2,3. Именно они включают и выключают светодиоды. Смотрите скетч.
Первый раз при подключении устройства возможно затребует пароль, типа 000 или 1234.
Траблы с заливкой программы в Arduino
Последнее о чем хотелось сказать и с чем столкнулся, то есть какая проблема возникла. Так это то, что при заливке программы необходимо было отключать модуль блютуф. Так как в противном случае при подключенном модуле и при заливке программы выпадала ошибка. Скетч просто не заливался.
Резюмируя все вышесказанное можно сделать вывод о том, что используя Ардуино и модуль блютуф к ней, можно одним нажатием пальчика на своем телефоне или планшете управлять многокиловатными нагрузками.
Теперь тоже самое в видео.