Голосовое управление светодиодом с помощью Arduino и Bluetooth


На первый взгляд, управление светодиодом с помощью голоса может показаться достаточно трудной задачей, но с помощью такой платформы как Arduino в этом нет ничего сложного. Все, что нам нужно будет сделать – это соединить плату Arduino по последовательному каналу связи с Bluetooth модулем HC-06 и с помощью смартфона передавать голосовые команды на Bluetooth модуль HC-06. Для приема голосовых команд мы будем использовать приложение на android “Arduino Bluetooth Voice Controller”, которое можно будет скачать по ниже приведенной ссылке.

Внешний вид проекта голосового управления светодиодом с помощью Arduino и Bluetooth

Необходимые компоненты

  1. Плата Arduino Uno (купить на AliExpress).
  2. Bluetooth модуль HC-06 (купить на AliExpress).
  3. Красный и зеленый светодиоды (купить на AliExpress).
  4. Резистор 220 Ом (2 шт.) (купить на AliExpress).
  5. Arduino Bluetooth Voice Controller (можно скачать с play store по этой ссылке или непосредственно скачать прямо из смартфона по названию приложения).
  6. Макетная плата.
  7. Соединительные провода.

Bluetooth модуль HC-06

Данный модуль может функционировать в двух режимах: режим команд и режим данных. В режиме команд мы можем настраивать различные свойства Bluetooth соединения: имя, пароль, скорость передачи и т.д. Режим данных позволяет осуществлять обмен данными между модулем и микроконтроллером (в нашем случае платой Arduino). Мы в данном проекте будем использовать только режим данных, свойства Bluetooth соединения будем использовать те, которые установлены в модуле по умолчанию. Имя устройства может быть HC-05 или HC-06 (в использованном нами модуле), пароль может быть 0000 или 1234, по умолчанию скорость передачи обычно выставлена 9600 бод/с.

Модуль работает от питающего напряжения 5V, а его сигнальные контакты работают с напряжением 3.3V. В модуле присутствует встроенный регулятор напряжения, поэтому нам не стоит беспокоиться о преобразовании этих напряжений. В режиме данных мы из 6 контактов модуля будем использовать только 4. Назначение контактов Bluetooth модуля HC-06 приведено в следующей таблице.

№ по порядку Назначение контакта
1 Vcc
2 Vcc
3 Tx
4 Rx
5 State
6 EN (Enable)

На нашем сайте вы также можете следующие проекты с использованием Bluetooth модуля:

Схема проекта

Схема голосового управления светодиодом с помощью Arduino и Bluetooth представлена на следующем рисунке. Перед загрузкой программы в плату Arduino отсоедините контакты Rx и Tx, а после загрузки программы снова их подсоедините.

Схема голосового управления светодиодом с помощью Arduino и BluetoothОбъяснение программы для Arduino

Полный код программы приведен в конце статьи, здесь же мы рассмотрим его наиболее важные фрагменты.

Сначала в программе необходимо определить контакты Arduino, на которых мы будем использовать последовательную связь (Rx и Tx).

Затем установим 2-й и 3-й контакты платы Arduino (к ним подключены светодиоды) в режим вывода данных.

Далее, в функции loop плата Arduino будет непрерывно проверять поступление данных от Bluetooth модуля (который, в свою очередь управляется с помощью голосовых команд) и в соответствии с ними управлять включением/выключением светодиодов. Все принимаемые команды мы будем сохранять в переменной “Value”.

Если значение этой переменной равно "all LED turn on", то мы будем включать оба светодиода. Аналогично этому при поступлении других голосовых команд мы будем соответствующим образом включать и выключать светодиоды в нашей схеме. Более подробно все эти процессы показаны на видео, приведенном в конце статьи.

Работа проекта

Тестирование работы проекта

Шаг 1. Соберите схему, приведенную на рисунке выше. Перед загрузкой кода программы в плату Arduino отсоедините контакты Rx и Tx. После загрузки программы снова их подсоедините.

Шаг 2. Скачайте по приведенной в начале статье ссылки приложение для смартфона под названием “Arduino Bluetooth Voice Controller”. Либо вы непосредственно можете скачать его со своего смартфона по его названию.

Шаг 3. Запустите скачанное приложение, у вас на смартфоне появится его экран, показанный на приведенном ниже рисунке. Кликните на “connect to Bluetooth device” (соединиться с Bluetooth устройством), выберите после этого свой Bluetooth модуль и затем проверьте подсоединился ли он к приложению или нет. Затем кликните на иконку микрофона и после этого вы можете передавать голосовые команды Bluetooth модулю HC-06.

Запущенное приложение на экране смартфона

Примечание: когда вы будете подключаться к Bluetooth модулю HC-06 в первый вам необходимо будет ввести пароль для подключения к модулю – используйте в качестве пароля 0000 или 1234.

Шаг 4. Передавая голосовые команды Bluetooth модулю HC-06, который затем транслирует их по последовательному порту связи плате Arduino, которая выполняет принятую команду по включению/выключению светодиодов. Список реализованных в программе команд и действия, которые при их поступлении следует выполнить, представлен в следующей таблице.

№ п/п Команда Действие
1 all LED turn on включить оба светодиода
2 all LED turn off выключить оба светодиода
3 turn on Red LED включить красный светодиод
4 turn on green LED включить зеленый светодиод
5 turn off red LED выключить красный светодиод
6 turn off green LED выключить зеленый светодиод

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

Примечание: статья переведена с иностранного сайта и насколько корректно представленное приложение “Arduino Bluetooth Voice Controller” и программа для Arduino может работать со словами на русском языке, лично я пока не пробовал. Но буду признателен если вы в комментариях к данной статье отпишитесь по этому поводу если попробуете сделать это.

Исходный код программы

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

Видео, демонстрирующее работу схемы

(Проголосуй первым!)
Загрузка...
2 514 просмотров

Комментарии

Голосовое управление светодиодом с помощью Arduino и Bluetooth — 7 комментариев

  1. Здравствуйте, не работает сборка, посылаю команды в приложение а пишет что не команды не распознаны, можете пожалуйста посоветовать какое-нибудь приложение?

    • Добрый день, можете попробовать приложение AMR_Voice, пример его использования можно посмотреть в этой статье - instructables.com/Arduino-Voice-recognition-Via-Bluetooth-HC-05/

  2. Здравствуйте, не работает приложение для подключения голоса и с айфона и с андройда
    Как Загрузить приложение?

    • Добрый вечер. Можно поискать через простой поиска гугла или зайти на playstore с помощью vpn.

    • Опечатка, случайно из другого проекта перекочевала, в котором использовалось управление серводвигателем

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *