1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Голосовое управление своими руками

Голосовое управление своими руками

Привет друзья. Сегодня я хочу рассказать и показать Вам свою самоделку, которая использует голосовое управление. Фактически это включатель-выключатель с голосовым управление. Особенностью данной самоделки является то, что данный прибор может не только по голосовой команде управлять нагрузкой, но и может отвечать голосовыми командами, записанными ранее на флеш карту.
По внешнему виду устройство получилось такое невзрачной. Это моя вина, но я не ставил перед собой цели сделать его красивым, просто было лень. Собственно, по этой же причине я вывел минимум приспособлений для управления данным устройством, из которых на передней панели только ручка управления громкостью звука ответчика и приемник флеш карт, который по началу тоже хотел запихать внутрь.
Что же может этот выключатель? Он может выключать 3 нагрузки независимо друг от друга. Работает от следующим образом: в выключателе я организовал повышенную помехоустойчивость от нежелательных включение. Выражается это в том, что для выключения нужной нагрузки нужно сначала обратиться к прибору.
Для обращения необходимо сказать «Ардуино». Я назвал так потому что сердцем этого устройства является голосовой модуль, с котором мы будем в дальнейшим знакомиться, предназначался в первую очередь для конструктора «Arduino». Хотя я ни разу не сталкивался с Arduino и в этом приборе его модули не используются.
Обращаемся к выключателю «Ардуино», если выключатель отвечает «Слушаю», то произноси следующую из трех, назначенных мной, команд: «Лампа», «Гирлянда», «Свет». После принятия команды устройство переведет состояние подключенного прибора на противоположное: если лампа горела – выключит, если не горела – включит. И ответит, пример: «Лампа выключена» или «Лампа включена» …
Проще говоря, наш диалог с выключателем будет состоять следующим образом:
— Ардуино.
— Слушаю.
— Свет.
— Включаю свет.
Можно конечно же было запрограммировать модуль конкретными командами: «Включить свет», «Выключить свет», но я решил сделать так, чтобы одна команда и включала, и выключала.
Все ответы записаны мной на флеш карту. Это обычные файлы WAV формата. Текст читал сайт английского перевода. Это может быть любая другая программа, умеющая читать текст. Или вообще эти ответы можете записать Вы сами или Ваши родственники…
Я не знаю плюс это или минус, но данное устройство чувствительно к тембру голоса. То есть, к примеру, мою жену он пре признавал, пока я не записал отдельно её голос на модуль. И ответы я ей сделал другие: мне отвечает женщина, а ей мужчина. Прикольно, не правда ли?)
Ну теперь давайте наконец перейдем к испытания сего девайса. Включаем в сеть, подключим одну нагрузку.
Необходимо секунд 5 подождать пока загрузиться сам модуль, пока контроллер обратиться к модулю, пока плеер инициализирует флешку и фалы на ней…
Смотрите видео ниже процесса работы…
Вот так вот работает данный выключатель. Теперь давайте посмотрим на начинку выключателя. Снимаем верхнюю крышку. Первая плата плеера с усилителем. Именно она воспроизводит ответы, записанные на флешку. Управляется плата с помощью UART протокола. Команды посылает контроллер расположенный на второй плате, к которой мы вернемся чуть позже. Далее третья плата – блок питания с силовыми ключами выполнена на семестрах. Вся схема имеет гальваническую развязку по напряжению. Плата так же управляется контроллером. Блок питания выдает 5 вольт стабилизированного напряжения. Силовые ключи могут выдержать нагрузку около 200 Вт на канал. Теперь перейдем на вторую плату. На ней расположен контроллер, который всем управляет и модуль распознавания голосовых команд.
Работу, подключение и настройку модуля мы рассмотрим в следующем видео. А сейчас я поясню работу контроллера, который выполнен на atmega8. Модуль распознавший команду дает команду контроллеру по UART, контроллер обработав команду включает или выключат нагрузку и бает команду звуковому модулю на воспроизведение звукового ответа. Вроде всё просто).
Хочу сказать, что делая данную самоделку я не ставил себе задачу сделать серьёзное устройство, скорее игрушку.
В следующем видео вы рассмотрим непосредственно сам модуль, так что подпишитесь на канал, чтобы не пропустить, если конечно данный материал Вас заинтересовал.
Я построил данный выключатель пару лет назад на модуле версии V2. Но в следующем видео мы будем рассматривать более новую версию V3. Так же мы рассмотрим 2 вида работы с этим модулем: простой – это если Вы не владеете программированием и полный – это если Вы умеете программировать микроконтроллеры.

Читать еще:  Огниво из пустых зажигалок

Модуль распознавания голоса (речи) V3 — http://ali.pub/qv2kr
Модуль распознавания голоса (речи) V2 — http://ali.pub/do03a

Надеюсь Вам понравилось видео на данную тему. Спасибо за просмотр данного видео. Если Вам понравилось – поставьте лайк, так я буду знать, что Вам это не безразлично. Подписывайтесь на канал, до новых встреч.

Голосовое управление светом: как сделать умную систему своими руками

Сама по себе система «Умный дом» подразумевает дистанционное управление практически всеми доступными приборами и устройствами.

Причем, исполнение команд не ограничивается функциями «включить/выключить» или «открыть/закрыть».

Для медиа-устройств еще должны работать функции «тише/громче», для освещения – «ярче/темнее».

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

Для чего необходимо управление «Умным домом» голосом

«Умный дом» – это не просто дорогостоящая игрушка. «Умный дом» – это аппаратно-программный комплекс различных приборов и устройств, делающих жилище безопасным, комфортным, удобным для проживания.

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

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

Подача управляющих сигналов «Умному дому» от смартфона имеет свои минусы. Во-первых, гаджет необходимо постоянно носить с собой из комнаты в комнату.

Во-вторых, его аккумулятор может разрядиться, сам смартфон может потеряться, попасть в руки злоумышленников. Поэтому оптимальное решение для «Умного дома» – устройство голосового управления. Это устройство избавит обитателей дома от необходимости держать в каждой комнате по ПДУ, запоминать разные алгоритмы работы.

Такое управление в системе «Умный дом» приводит к ненужности разнокалиберных ПДУ, работающих на разные «точки входа».

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

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

Для осуществления голосового управления освещением предварительно производится детальная настройка систем распознавания голоса.

Система должна распознавать голоса всех обитателей дома, а не только одного. Она должна уметь понимать команды «включить», «выключить», «ярче», «меньше», привязывать их к конкретным осветительным приборам.

Самодельная система голосового управления освещением

Сделать своими руками управление освещением голосом – задача не из простых. Для ее решения мало одного желания.

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

Но сделать самому голосовое управление светом по принципу «Вкл./выкл.» – это просто смастерить эффектную игрушку. Ведь если сделать так, что голосом можно управлять только включением или выключением отдельно взятого осветительного прибора или группы приборов, то почему нельзя такую же функцию распространить и на другие устройства?

Чтобы уже получилась законченная, открытая для расширения система, получившая название «Умный дом».

Готовые модули для работы с голосом

Любая подобная система начинается с модуля распознавания голоса. Первые структуры распознавания акустических сигналов реагировали на хлопки: один хлопок – «включить», два хлопка – «выключить».

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

Наиболее доступные для самоделок модули:

  1. Voice Recognition Module V3.1 (FZ0475);
  2. Robotech SRL EasyVR Shield0;
  3. Voice Recognition Module LD3320;

Каждый из этих модулей имеет свои достоинства и недостатки. Elechouse Voice Recognition Module V3.1 ориентирован на работу с комплектом «Arduino».

Robotech SRL EasyVR Shield 5.0 имеет три алгоритма работы – точный, фонетический и тоновый. Voice Recognition Module LD3320 умеет редактировать ключевые слова.

Простейший голосовой выключатель освещения

Вначале следует определиться со схемой и комплектацией голосового выключателя света.

В простейшем случае в состав такого прибора войдут:

  • модуль распознавания голоса;
  • усилитель;
  • контроллер;
  • микрофон;
  • управляющее реле (количество зависит от того, сколько осветительных приборов будет подключено к выключателю);
  • блок питания на пять вольт;
  • компоненты схем – светодиоды, резисторы, конденсаторы, симисторы, монтажные розетки и др.
Читать еще:  Подушка для работы на компьютере

Усилитель необходим для того, чтобы прибор мог воспринимать сказанные слова, поданные из любой точки помещения, а не только вблизи микрофона.

Контроллер собран на базе микроконтроллера «Аtmega8», имеющего собственные оперативное и постоянное запоминающие устройства.

Симисторы используются, во-первых, в качестве силовых ключей, а, во-вторых, в качестве диммеров, регулирующих яркость освещения. Протокол обмена информацией – UART.

Как работает голосовой выключатель

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

Ведь сказать, к примеру, «включить свет» может каждый, и прибор отреагирует соответствующим образом. Это же относится и к сигналу, противоположному по значению.

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

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

Контроллер, в свою очередь, обрабатывает информацию и формирует управляющий сигнал на реле, включая заданное устройство. По команде «Выключи люстру», «Выключи торшер», «Выключи ночник», контроллер дает управляющий сигнал на отключение.

Включение голосового управления светом в систему «Умный дом»

Чтобы интегрировать голосовое управление освещением в систему «Умный дом», не нужно обладать специальными знаниями. Это просто сделать на базе комплектов «Arduino».

Чтобы система работала, нужно в каждой комнате разместить чувствительные микрофоны. Через модуль распознавания речи команды будут поступать на контроллер.

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

Заключение

Существуют разработки для смартфонов, позволяющие управлять голосом системой «Умный дом».

Для этих разработок выпускается специальная периферия с кодами доступа.

Для самодельной системы, собранной на базе «Arduino» таких ограничений нет.

Можно делать и подключать к «Умному дому» любые устройства, а не только освещение.

Видео: Голосовое управление освещением Lutron, Alexa

Управление голосовыми командами на базе модуля распознавания голоса FZ0475

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

Сегодня рассмотрим модуль, предназначенный для распознавания голосовых команд (в том числе и просто голоса в рамках записанной голосовой команды) – Voice recognition module V3.1 (V3) или часто встречающуюся кодировку название FZ0475.

В комплект поставки входит сам модуль (печатная плата очень хорошего качества), микрофон на гибкой ножке с разъемом 3,5 мм jack и угловые PLS контакты с шагом 2,56 мм для платы модуля (их можно не использовать, если подключаться к контактам модуля другим способом).

На сегодняшний день существует несколько видов модулей с аналогичным функционалом разных производителей и разработчиков или исполнений. Данный модуль распознавания голоса, на мой взгляд, имеет некий баланс между стоимостью, функционалом, удобством. Более мощным и существенно более дорогим будет модуль EasyVR. Более дешевыми и неудобными будут модули на базе LD3320 (неудобные как минимум потому, что нормальное описания на них найти не просто, а в остальном это уже субъективно).

Характеристики модуля Voice recognition module V3.1 (V3):

  • Напряжение питания – 5 вольт
  • Потребляемый ток – до 40 мА
  • Интерфейсы – UART, GPIO
  • Точность распознавания – 99% (в идеальных условиях)
  • Дальность действия – зависит от используемого микрофона, для штатного микрофона из комплекта дальность составляет 0,5 – 1 метр максимального расстояния при достаточно громком голосе, если же голос тихий, то придется подносить микрофон поближе ко рту

Модуль представляет собой небольшую аккуратную плату, на которой расположены главный микроконтроллер (черная клякса), разъем jack 3,5 мм для подключения микрофона, микросхема flash памяти, контакты GPIO, UART и питания, пара светодиодов и остальной необходимый обвес, необходимый для работы схемы – резисторы, конденсаторы, кварц. Компактный размер платы позволит без особых трудностей встраивать модуль в собственные разработки. Для увеличения дальности работы голосовых команд предположительно необходимо использовать микрофон с усилителем. При достижении приемлемой дальности модуль пригоден для использования в системах умного дома. Без доработок по улучшению дальности работы модуль можно использовать в настольных системах управления, а также в системах охраны (контроля и ограничения доступа). Со штатным микрофоном из-за небольшой дальности надежнее всего использовать модуль распознавания голоса как гарнитуру и беспроводным способом передавать команды контроллеру, который чем-то управляет, используя аккумулятор и беспроводные модули (например, HC-05 или HC-12 или подходящие любые другие). Модуль способен работать без внешнего микроконтроллера, так как производителем заложена функциональная самостоятельность, необходимо лишь однократно записать голосовые команды и задать настройки для самостоятельной работы при помощи внешнего устройства (ПК или МК).

Читать еще:  Как превратить болт в красивый маленький сувенирный охотничий нож

Итак, чтобы начать работу с модулем распознавания голоса нам необходимо подключить его или к компьютеру (нужен USB-UART переходник), или к микроконтроллеру (необходимо разрабатывать программный код для управления модулем).

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

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

Для функционирования и конфигурации модуля используется система команд. Общий вид кадра выглядит следующим образом:

Первые четыре команды 00, 01, 02, 03 используются для проверки состояния модуля и его настроек. Следующие шесть команд 10, 11, 12, 13, 14, 15 используются для изменения настроек модуля, среди которых управление портами вывода и настройки автостарта (auto load). Далее три команды 20,21, 22 используются для записи голосовых команд. Следующие три команды 30,31,32 используются для управления распознаванием голосовых команд. Команды 0A, 0D, FF используются только при возвращении данных самим модулем. Команд на самом деле не много и все это не так страшно, как кажется на первый взгляд в документации на модуль. Рассмотрим команды, необходимые для работы с модулем распознавания голоса. Не все из существующих команд несут практический характер.

Примечательно то, что модуль может работать без внешнего управляющего микроконтроллера, а также самостоятельно управлять чем-нибудь своими портами вывода. Для этого необходимо их настроить (команды 12, 13, 14).

Команда 12 – настроить порты вывода. Этой командой настраивается режим работы портов вывода модуля распознавания голоса.

Формат: | AA | 03 | 12 | MODE | 0A |

Где MODE может принимать четыре значения: 0 – импульсный режим (при срабатывании голосовой команды соответствующий команде вывод изменит свое состояние на время, устанавливаемое командой 13), 1 – режим переключателя (toggle или flip) (при каждом срабатывании голосовой команды вывод, соответствующий голосовой команде инвертируется), 2 – режим включения (при срабатывании голосовой команды вывод перейдет в состояние логической единицы и больше не перейдет в состояние логического нуля, сброс осуществляется командой 14), 3 – режим выключения (аналогично режиму включения только, наоборот, при срабатывании голосовой команды вывод переходит в состояние логического нуля).

Наиболее практичным является режим переключателя, не требующий лишних команд. Импульсный режим был бы хорош, но логика этого режима такова, что при срабатывании голосовой команды он однократно выдает логическую единицу, на время от 10 мс до 1 с. Это мало. Хотя, смотря какие требования к этому режиму, может быть полезно. Режимы включения и выключения реализованы неудобно, так как требуют исполнение дополнительных команд.

Команда 13 – задание длительности импульса соответствующего режима.

Формат: | AA | 03 | 13 | LEVEL | 0A |

Где LEVEL принимает значение от 00 до 0F (соответствует длительности от 10 мс до 1 с).

Ссылка на основную публикацию
Статьи c упоминанием слов:
Adblock
detector