- Используемые компоненты:
- Как работать с модулем Bluetooth:
- Рабочее объяснение:
- Описание схемы:
- Конфигурация Raspberry Pi и программа Python:
Сегодня мы создаем очень полезный проект, в котором мы можем управлять светодиодными лампами с помощью нашего голоса через смартфон. В этом проекте мы будем отправлять голосовые команды со смартфона на Raspberry Pi с помощью модуля Bluetooth, а Raspberry Pi будет получать этот передаваемый сигнал по беспроводной сети и выполнять соответствующую задачу через оборудование. Мы можем заменить светодиоды на бытовую технику переменного тока, используя реле, и можем создать проект домашней автоматизации с голосовым управлением.
Используемые компоненты:
- Raspberry Pi 3 (подойдет любая модель)
- Модуль Bluetooth HC-06
- Хлебная доска
- Резисторы 100 Ом (3)
- Светодиоды (синий, красный, зеленый)
- Соединительный провод
- Источник питания
- сетевой кабель
- Телефон на Андроиде
Модуль Bluetooth:
Модуль Bluetooth состоит из двух частей: модуля последовательного интерфейса Bluetooth и адаптера Bluetooth. Последовательный модуль Bluetooth используется для преобразования последовательного порта в Bluetooth.
Как работать с модулем Bluetooth:
Вы можете напрямую использовать модуль Bluetooth после покупки на рынке, потому что нет необходимости изменять какие-либо настройки модуля Bluetooth. Скорость передачи по умолчанию нового модуля Bluetooth составляет 9600 бит / с. Вам просто нужно подключить rx и tx к контроллеру или последовательному преобразователю и подать регулируемый источник питания 5 В постоянного тока на модуль.
Модуль Bluetooth имеет два режима: один - ведущий, а второй - ведомый. Пользователь может установить любой режим с помощью некоторых AT-команд. Даже пользователь может установить настройки модуля с помощью AT-команды. Вот несколько команд использования:
Прежде всего пользователю необходимо войти в режим AT со скоростью передачи данных 38400 бит / с, нажав кнопку EN на модуле Bluetooth или установив высокий уровень на контакте EN. Примечание: все команды должны заканчиваться \ r \ n (0x0d и 0x0a) или клавишей ENTER с клавиатуры.
После этого, если вы отправите AT в модуль, модуль ответит OK.
AT à Test Command
AT + ROLE = 0 à Выбор режима ведомого
AT + ROLE = 1 à Выбор режима Master
AT + NAME = xyz à Установить имя Bluetooth
AT + PSWD = xyz à Установить пароль
AT + UART =
Например. AT + UART = 9600,0,0
Описание контактов модуля Bluetooth HC-06:
1. СОСТОЯНИЕ à Открыто
2. Rx à Пин последовательного приема
3. Tx à Последовательный передающий контакт
4. GND на землю
5. Vcc à + 5 вольт постоянного тока
6. KEY à для входа в режим AT.
Рабочее объяснение:
Работа с этим проектом светодиодов с голосовым управлением очень проста. В этом проекте мы использовали три светодиода разного цвета (синий, красный и зеленый). HC-06 модуль Bluetooth используется для приема выходных голосовых команд в формате строка. Raspberry Pi получает эту входящую строку от модуля Bluetooth, сравнивает ее с предопределенной строкой и выполняет соответствующую задачу.
В этом проекте, чтобы предоставить Raspberry Pi голосовые команды с нашего смартфона, мы использовали голосовое приложение AMR в телефоне Android (Android встречает роботов: распознавание голоса).
Установка и настройка голосового приложения AMR:
Приложение AMR Voice можно загрузить и установить в магазине Google Play. Вам также необходимо установить приложение Google Voice для этого проекта. Приложение AMR Voice принимает голос в качестве входных данных и преобразует его в текстовую строку с помощью внутреннего распознавания голоса на мобильных устройствах Android (приложение Google Voice) и последовательно отправляет этот преобразованный текст по Bluetooth.
Теперь откройте голосовое приложение AMR, перейдите в меню параметров и подключите его к модулю Bluetooth, щелкнув «Подключить робота»:
Теперь пользователь может коснуться символа микрофона на экране мобильного телефона и произнести предопределенные голосовые команды для управления светодиодами:
1. «Горит синий свет» (горит только синий светодиод)
2. «синий свет выключен» (не горит только синий светодиод)
3. «Горит красный свет» (горит только красный светодиод)
4. «красный свет не горит» (не горит только красный светодиод)
5. «Горит зеленый свет» (горит только зеленый светодиод)
6. «зеленый свет не горит» (не горит только зеленый светодиод)
7. «Все индикаторы включены» (горят синий, красный и зеленый светодиоды)
8. «все индикаторы выключены» (синий, красный и зеленый светодиоды выключены)
9. «мигание» (все светодиоды начинают мигать с периодом времени 100 миллисекунд)
Затем голосовое приложение AMR записывает этот голос и отправляет его в приложение Google Voice для преобразования в формат текстовой строки. Теперь эта преобразованная строка отправляется в Raspberry Pi через модуль Bluetooth, и Raspberry Pi считывает эту строку из порта UART и сохраняет в строке кода. А затем сравните его с предопределенными строками, если какое-либо совпадение произойдет, Raspberry Pi выполнит соответствующее действие или выполнит задачу.
Описание схемы:
Схема этого проекта очень проста, она содержит плату Raspberry Pi 3, светодиоды и модуль Bluetooth (HC-06). Raspberry Pi считывает модуль Bluetooth и соответствующим образом управляет светодиодами. Синие, красные и зеленые светодиоды подключены к GPIO 17, 27 и 22. Rx и Tx модуля Bluetooth напрямую подключены к контактам Tx и Rx Raspberry Pi. Остальные соединения показаны на принципиальной схеме.
Конфигурация Raspberry Pi и программа Python:
Здесь для Программы мы используем язык Python. Перед кодированием пользователю необходимо настроить Raspberry Pi. Вы можете проверить наши предыдущие руководства по началу работы с Raspberry Pi и установке и настройке Raspbian Jessie OS в Pi.
После этого вам нужно выполнить следующие команды, чтобы запустить последние обновления Raspbian Jessie:
sudo apt-get update sudo apt-get upgrade
После этого нам нужно установить инструмент разработки Raspberry Pi GPIO, его можно установить следующими командами:
sudo apt-get install python-dev sudo apt-get install python-rpi.gpio
Затем пользователю необходимо настроить последовательный порт Raspberry Pi. Здесь мы использовали Raspberry Pi 3 для этого проекта. Таким образом, пользователю необходимо настроить последовательный порт в соответствии со своей версией Raspberry Pi. Для Raspberry Pi 3 первый пользователь должен отключить вход в консоль через последовательный порт с помощью инструмента настройки программного обеспечения RPi. Откройте его, используя команду ниже:
sudo raspi-config
Затем перейдите в «Дополнительные параметры», выберите «Последовательный» и «Отключить».
После этого нам нужно отключить встроенный Bluetooth в Raspberry Pi 3, добавив dtoverlay = pi3-miniuart-bt в конец файла /boot/config.txt :
sudo nano /boot/config.txt
После добавления строки перезагрузите Raspberry Pi, выполнив команду sudo reboot .
Наконец, снова войдите в Raspberry Pi и настройте файл /boot/comline.txt:
sudo nano /boot/comline.txt
И отредактируйте файл, как показано ниже:
dwc_otg.lpm_enable = 0 console = tty1 console = serial0,115200 root = / dev / mmcblk0p2 rootfstype = ext4 elevator = deadline fsck.repair = yes rootwait
Теперь вы можете запустить приведенную ниже программу Python в Raspberry Pi, и все готово! Программа проста и понятна.
Итак, мы завершили создание наших устройств с голосовым управлением с использованием Raspberry Pi. Вы можете дополнительно улучшить его и модифицировать для управления бытовой техникой переменного тока, добавив реле.