8-900-374-94-44
[email protected]
Slide Image
Меню

Ардуино голосовой модуль: Распознавание голоса (voice recognition module v3.1)

Содержание

Распознавание голоса (voice recognition module v3.1)

Общие сведения:

Модуль распознавания голоса — Voice Recognition Module V3.1 — это компактный и простой в управлении модуль распознавания речи. На базе данного модуля можно создавать проекты с голосовым управлением.

Для работы модуля его необходимо обучить — записать через микрофон собственные голосовые команды в энергонезависимое хранилище голосовых команд модуля. Вы можете записать до 80 голосовых команд (каждая команда не более 1,5 сек., примерно одно, максимум два слова) и все они будут храниться в модуле, даже после отключения питания. Стоит отметить, что записывать можно не только голос (слова), но и различные звуки.

У модуля есть два вида памяти: память хранилища (где голосовые команды просто хранятся) и память распознавателя (где голосовые команды участвуют в сравнении со звуком поступившем через микрофон).

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

Термины:

  • Хранилище голосовых команд – энергонезависимая память состоящая из 80 ячеек, в каждую ячейку можно записать одну голосовую команду с текстовым комментарием.
  • Распознаватель голосовых команд – основная часть модуля распознавания речи, блок содержащий ОЗУ из 7 ячеек, в каждую ячейку можно загрузить одну голосовую команду из хранилища голосовых команд модуля. Блок распознавателя сравнивает загруженные в него голосовые команды с поступающим звуковым сигналом.
  • Номер ячейки – совпадает с номером записи. Память хранилища и память распознавателя разбита на ячейки. Одна ячейка может хранить одну запись (голосовую команду). Доступ к записям хранилища и записям распознавателя осуществляется по номерам ячеек.
  • Обучение – процесс записи ваших голосовых команд в хранилище.
  • Загрузка – копирование записанной голосовой команды из хранилища в распознаватель.
  • Подпись – текстовый комментарий (до 10 символов) к голосовой команде записанной в хранилище.
  • Группа – список содержащий 7 номеров ячеек хранилища. Поддерживаются, системные группы и пользовательские группы. Загрузка группы приводит к загрузке в распознаватель тех голосовых команд хранилища, номера которых указаны в группе.
    Более подробно о группах читайте в разделе Группы.

Видео:

Редактируется…

Спецификация:

  • Точность распознавания речи: 99% (при идеальных условиях).
  • Объем хранилища: до 80 голосовых команд длительностью не более 1,5 сек.
  • Одновременное распознавание: до 7 голосовых команд.
  • Напряжение питания: 4,5 … 5,5 В (постоянного тока).
  • Потребляемый ток: до 40 мА.
  • Цифровой Интерфейс: UART и GPIO уровень TTL 5В.
  • Аналоговый интерфейс: разъем микрофона jack 3,5-мм моноканальный.
  • Габариты платы: 31х50 мм.

Подключение:

  • Колодка из 4 выводов (GND, VCC, RXD, TXD) используется для подключения модуля к аппаратной или программной шине UART Arduino.
Выводы модуля:Выводы Arduino:
RXD — вход шины UART.TX — выход шины UART.
TXD — выход шины UART.RX — вход шины UART.
VCC — вход питания 5 В.5V — вывод питания 5 В.
GND — общий вывод питания.GND — общий вывод питания.

В примерах библиотеки «VoiceRecognitionV3» используется программная шина UART, где вывод модуля RXD подключается к выводу 3 Arduino UNO, а вывод модуля TXD подключается к выводу 2 Arduino UNO (выводы можно переназначить в скетче). Вместо Arduino UNO можно использовать Piranha Uno.

  • Колодка из 4 выводов (IN0, IN1, IN2, GND) может быть использована для загрузки требуемых групп голосовых команд из хранилища в распознаватель голосовых команд.
IN-2IN-1IN-0№ загружаемой группы в распознаватель голосовых команд:
000Загрузить системную или пользовательскую группу номер 00.
001Загрузить системную или пользовательскую группу номер 01.
010Загрузить системную или пользовательскую группу номер 02.
011Загрузить системную или пользовательскую группу номер 03.
100Загрузить системную или пользовательскую группу номер 04.
101Загрузить системную или пользовательскую группу номер 05.
110Загрузить системную или пользовательскую группу номер 06.
1 11Загрузить системную или пользовательскую группу номер 07.

Более подробно о группах читайте в разделе Группы.
Все выводы IN-0…IN-2 внутрисхемно подтянуты до уровня Vcc.
По умолчанию, загрузка групп при помощи выводов IN-0…IN-2 отключена.

  • Колодка из 8 выводов (OUT0-OUT6, GND) может быть использована для управления маломощными устройствами напрямую или мощными устройствами через реле, или силовые ключи.
    Выходы OUT модуля, так же как и ячейки распознавателя, пронумерованы от 0 до 6. Опознание модулем голосовой команды приводит к соответствующей реакции выхода OUT модуля, номер которого совпадает с номером ячейки распознавателя содержащей опознанную голосовую команду.
Выводы:Назначение:
OUT-0Вывод реагирует на опознание голосовой команды в 0 ячейке распознавателя.
OUT-1Вывод реагирует на опознание голосовой команды в 1 ячейке распознавателя.
OUT-2Вывод реагирует на опознание голосовой команды в 2 ячейке распознавателя.
OUT-3Вывод реагирует на опознание голосовой команды в 3 ячейке распознавателя.
OUT-4Вывод реагирует на опознание голосовой команды в 4 ячейке распознавателя.
OUT-5Вывод реагирует на опознание голосовой команды в 5 ячейке распознавателя.
OUT-6Вывод реагирует на опознание голосовой команды в 6 ячейке распознавателя.

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

Питание:

Входное напряжение питания 5В постоянного тока, подаётся на выводы Vcc и GND модуля.

Подробнее о модуле:

У модуля распознавания голоса — Voice Recognition Module V3.1 есть два вида памяти: память хранилища (где голосовые команды просто хранятся, даже после отключения питания) и память распознавателя (где голосовые команды участвуют в сравнении со звуком поступившем через микрофон).

Оба типа памяти состоят из ячеек, в одну ячейку записывается одна голосовая команда. Память хранилища голосовых команд состоит из 80 ячеек пронумерованных от 0 до 79, а память распознавателя голосовых команд состоит из 7 ячеек пронумерованных от 0 до 6. Значит модуль способен хранить до 80 голосовых команд, а одновременно сравнивать до 7 голосовых команд с поступающим звуковым сигналом.

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

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

Пример:

  • Предположим, мы желаем создать голосовое управление светом в коридоре, комнате и на кухне, а так же управление жалюзи в комнате и на кухне.
  • Записываем в ячейки хранилища следующие голосовые команды: «свет», «жалюзи», «в коридоре», «в комнате» и «на кухне».
  • Голосовые команды «свет» и «жалюзи» загружаем из хранилища в распознаватель изначально.
  • При распознавании голосовой команды «свет», загружаем в распознаватель голосовые команды «в коридоре», «в комнате» и «на кухне».
  • При распознавании голосовой команды «жалюзи», загружаем голосовые команды «в комнате» и «на кухне» (не загружая «в коридоре», если конечно у Вас там нет жалюзей).
  • Таким образом Вы можете произнести «свет, в коридоре», «свет, в комнате», «свет, на кухне», «жалюзи, в комнате», «жалюзи, на кухне», а модуль сначала распознает первое слово («свет» или «жалюзи»), а потом оставшуюся часть Вашей длинной голосовой команды.
  • Осталось добавить в программу условие, что через определённое Вами время, после опознания команды «свет» или «жалюзи», они опять должны быть загружены в распознаватель. Так модуль перейдёт в состояние готовности принять следующую длинную голосовую команду, вне зависимости от того была ли корректно распознана предыдущая, или нет.

В данный пример можно добавить немного интерактивности включив в проект MP3-плеер и записав в него несколько сообщений. Вы говорите «свет», MP3-плеер воспроизводит сообщение «где?», Вы говорите «на кухне», MP3-плеер воспроизводит сообщение «свет на кухне включён!», или «свет на кухне выключен», в зависимости от текущего состояния реле управления светом. Стоит учитывать, что модуль распознавания речи и MP3-плеер должны находиться на разных шинах UART.

Еще одним плюсом наличия двух типов памяти модуля (хранилища и распознавателя), является возможность создания голосового управления несколькими людьми (до 7 человек) на одном модуле. Каждый человек записывает одинаковые слова голосовых команд в разные ячейки хранилища модуля, а так же записывает одно стартовое слово, например, «Окей дом». В таком случае в распознаватель изначально загружаем все голосовые команды «Окей дом» записанные разными людьми. Если кто то скажет «Окей дом, свет, в коридоре», то по номеру ячейки опознанной модулем голосовой команды «Окей дом», Вы сможете определить кем она была сказана и подгрузить в распознаватель следующие команды «свет» и «жалюзи» записанные именно этим человеком.

Управление модулем может осуществляться 2 способами:

  • Через последовательный порт UART (полный функционал).
    Управление осуществляется командами протокола VR3, или методами библиотеки VoiceRecognitionV3 (некоторые примеры описаны в настоящей статье).
  • Через выводы модуля IN и OUT (частичный функционал).
    Входы IN позволяют загрузить требуемые группы голосовых команд из хранилища в распознаватель, а выходы OUT позволяют определить номер распознанной голосовой команды и управлять устройствами.

    Примеры:

    В данном разделе содержатся примеры с использованием библиотеки VoiceRecognitionV3.

    Пример обучения модуля:

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

    1. Откройте скетч из примеров: Файл -> Примеры -> VoiceRecognitionV3 -> vr_sample_train.
    2. Выберите Вашу плату Arduino (Инструменты -> Плата), выберите порт (Инструменты -> Порт).
    3. Нажмите кнопку «Загрузить», дождитесь загрузки скетча в Arduino.
    4. Откройте «Монитор последовательного порта». Установите скорость передачи 115200 бод, установите отправку с добавлением символа новой строки (NL — NewLine), или с добавлением символов возврата каретки и новой строки (NL & CR).

    В мониторе последовательного порта появится таблица со списком команд, которые Вы можете вводить:

    5. Отправьте команду «settings» (настройки) чтобы проверить настройки модуля.
    Для отправки команды введите «settings» и нажмите кнопку «Отправить», как на картинке ниже:

    В ответ на команду «settings» (настройки) в мониторе последовательного порта появятся текущие настройки модуля:

    Эти настройки означают следующее:

    Baud rate(скорость передачи данных по шине UART)9600 бит/сек.
    Output IO Mode(режим работы выходов OUT)Импульсный.
    Pulse Width(ширина импульса)10 миллисекунд.
    Auto Load(автозагрузка записей в распознаватель)Отключена.
    Group control by external IO(управление группами при помощи входов IN 0-2)Отключено.

    6. Обучение модуля распознавания голоса. Введите строку «sigtrain 0 On».

    Команда «sigtrain» указывает библиотеке что мы хотим записать голосовую команду, далее следует номер записи (ячейки) — «0» и завершает строку текстовое описание голосовой команды — «On». Вместо подписи «On» Вы можете ввести любое слово до 10 байт, например, «Вкл».

    В ответ на команду «sigtrain 0 On» (sigtrain номер подпись) в мониторе последовательного порта появится надпись «Speak now» (говорите сейчас). Вам нужно произнести свою голосовую команду (это может быть любое слово, например «Включить»). Через пару секунд в мониторе последовательного порта появятся надпись «Speak again» (говорите снова) . Вам нужно повторно произнести свою голосовую команду.

    Если обе произнесённые голосовые команды совпали, то в мониторе последовательного порта появятся надписи: «Record: 0 — Success» (Запись: 0 — Успех), «Record 0 — Trained» (Запись 0 — Обучена), «SIG: On» (Подпись: «On»).

    Это означает что Ваша голосовая команда записана в хранилище голосовых команд.

    Но если, по «мнению» модуля, голосовые команды не совпадают, то в мониторе последовательного порта появится надпись «Record: 0 — Cann’t matched» (Запись: 0 — не соответствует):

    После чего опять появится надпись «Speak now» (говорите сейчас), а затем «Speak again» (говорите снова).

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

    Что такое подпись? Подпись — это текстовое описание голосовой команды. В нашем случае мы записали команду 0 с подписью «On». После завершения обучения модуль может отображать подпись произнесённой (распознанной) голосовой команды.

    Во время обучения можно смотреть не в монитор последовательного порта, а на два светодиода расположенные рядом с разъёмом микрофона: SYS_LED (желтый) и STATUS_LED (красный).

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

    7. Попробуйте обучить модуль следующей голосовой команде.

    Ведите строку «sigtrain 1 Off». Эта строка указывает модулю что Вы собираетесь записать голосовую команду в 1 ячейку хранилища с подписью «Off». После появления надписей «Speak now» (говорите сейчас) и «Speak again» (говорите снова), произнесите слово «Отключить».

    Таким образом Вы можете записать в хранилище до 80 голосовых команд (с номерами от 0 до 79). При записи голосовых команд не обязательно соблюдать очерёдность следования номеров ячеек памяти хранилища. Можно записать голосовую команду, сначала в 3 ячейку, потом в 0, а потом, например, в 27. Главное помнить, в какой ячейке какая команда, чтоб их случайно не затереть, вот для этого то мы и указываем подпись при записи голосовых команд. Но, если Вы уверены, что подпись Вам не нужна, то вводите строку «sigtrain номер» без подписи.

    Для того что бы модуль, после обучения (записи голосовых команд), мог опознать голосовую команду, её нужно загрузить из хранилища в распознаватель. В распознаватель модуля можно загрузить до 7 из 80 записанных команд.

    8. Загрузка голосовых команд из хранилища в распознаватель модуля. Введите строку «load 0 1» для загрузки записей из 0 и 1 ячеек хранилища в память распознавателя.

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

    В ответ на команду «load 0 1» (загрузить записи 0 и 1) в мониторе последовательного порта появятся надписи «Record 0 Loaded» (запись 0 загружена) и «Record 1 Loaded» (запись 1 загружена).

    В память распознавателя можно загружать записи из любых ячеек хранилища голосовых команд, например, строка «load 3 21 17» приведёт к загрузке записей из ячеек 3, 21 и 17 хранилища голосовых команд, в память распознавателя, по порядку указания ячеек. То есть запись 3 хранилища скопируется в ячейку 0 распознавателя, запись 21 хранилища скопируется в ячейку 1 распознавателя, а запись 17 хранилища скопируется в ячейку 2 распознавателя. Но пока делать этого не стоит, ведь мы записали только 2 голосовые команды в память хранилища (ячейки 0 и 1) и загрузили их в в память распознавателя (так же ячейки 0 и 1).

    Теперь если Вы произнесёте слова «Включить» и «Отключить», то увидите сообщения

    • Распознана голосовая команда загруженная в ячейку распознавателя 0, запись загружена не группой, запись загружена из ячейки хранилища 0, голосовая команда имеет подпись «On».
    • Распознана голосовая команда загруженная в ячейку распознавателя 1, запись загружена не группой, запись загружена из ячейки хранилища 1, голосовая команда имеет подпись «Off».

    Пример управления светодиодом на плате Arduino:

    Скетч примера поставляется вместе с библиотекой «VoiceRecognitionV3».

    1. Откройте скетч из примеров: Файл -> Примеры -> VoiceRecognitionV3 -> vr_sample_control_led.
    2. Выберите Вашу плату Arduino (Инструменты -> Плата), выберите порт (Инструменты -> Порт).
    3. Нажмите кнопку «Загрузить», дождитесь загрузки скетча в Arduino.
    4. Откройте «Монитор последовательного порта». Установите скорость передачи 115200 бод, установите отправку с добавлением символа новой строки (NL — NewLine), или с добавлением символов возврата каретки и новой строки (NL & CR).

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

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

    • Распознана голосовая команда загруженная в ячейку распознавателя 0, запись загружена не группой, запись загружена из ячейки хранилища 0, голосовая команда имеет подпись «On».
    • Распознана голосовая команда загруженная в ячейку распознавателя 1, запись загружена не группой, запись загружена из ячейки хранилища 1, голосовая команда имеет подпись «Off».

    Остальные примеры включённые в библиотеку «VoiceRecognitionV3»:

    Файл -> Примеры -> VoiceRecognitionV3 -> vr_sample_multi_cmd: раскрывает принцип работы с группами голосовых команд. Голосовая команда записанная в 0 ячейку хранилища (RECORD 0) используется для переключения между двумя группами голосовых команд. Первая группа содержит номера ячеек хранилища RECORD 0,1,2,3,4,5,6, а вторая группа содержит номера ячеек хранилища RECORD 0,7,8,9,10,11,12. Перед запуском данного примера необходимо обучить модуль (записать) голосовые команды от 0 до 12.

    Файл -> Примеры -> VoiceRecognitionV3 -> vr_sample_check_baud_rate: позволяет узнать установленную скорость передачи данных по шине UART. Может пригодиться если Вы забыли пользовательские настройки.

    Файл -> Примеры -> VoiceRecognitionV3 -> vr_sample_bridge: позволяет отправлять команды протокола VR3 без кода заголовка, длины кадра и кода конца кадра. Например, для отправки команды «Check Recognizer», вместо байтов «AA 02 01 0A», нужно ввести только 01. Протокол VR3 описан в разделе Wiki — Протокол VR3 для модуля распознавания голоса.

    Группы:

    Группы используются для удобства загрузки нескольких голосовых команд из хранилища в распознаватель. Каждая группа может включать до 7 номеров ячеек хранилища голосовых команд. Загрузка группы приводит к загрузке в распознаватель всех ячеек хранилища, номера которых указаны в группе. Группы можно загружать командами UART или при помощи входов модуля IN 0-2.

    Существует два вида групп: системные группы и пользовательские группы.

    Системные группы имеют жесткую структуру и включают в себя 7 номеров ячеек хранилища голосовых команд:

    № системной группы№ ячеек хранилища голосовых команд входящих в группу:
    0000, 01, 02, 03, 04, 05, 06
    0107, 08, 09, 0A, 0B, 0C, 0D
    020E, 0F, 10, 11, 12, 13, 14
    0315, 16, 17, 18, 19, 1A, 1B
    041C, 1D, 1E, 1F, 20, 21, 22
    0523, 24, 25, 26, 27, 28, 29
    062A, 2B, 2C, 2D, 2E, 2F, 30
    0731, 32, 33, 34, 35, 36, 37
    0838, 39, 3A, 3B, 3C, 3D, 3E
    093F, 40, 41, 42, 43, 44, 45
    0A46, 47, 48, 49, 4A, 4B, 4C

    Пользовательские группы Вы можете создавать по своему усмотрению (Вы сами решаете какие ячейки хранилища голосовых команд будут входить в группу). Допускается создание до 8 пользовательских групп с номерами от 00 до 07. Каждая пользовательская группа может содержать до 7 голосовых команд хранилища.

    Управлять группами можно, как с использованием методов библиотеки VoiceRecognitionV3, так и при помощи команды протокола VR3.

    Ссылки:

    • Модуль распознавания голоса — Voice Recognition Module V3.1.
    • Библиотека VoiceRecognitionV3.
    • Wiki — Установка библиотек в Arduino IDE.
    • Wiki — Протокол VR3 для модуля распознавания голоса.

    пример простой системы / Хабр

    Разработчик по имени Питер, как и многие из нас, попал на долгое время в ловушку карантина. У него появилось свободное время, причем много, и Питер решил разработать систему распознавания речи на базе Arduino Nano.

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

    Основные элементы системы

    Главный аппаратный компонент — Arduino Nano. Контроллер используется для запуска алгоритма распознавания речи. Также есть микрофонный усилитель MAX9814 для захвата голосовых команд.

    Что касается софта, то разработчик научил взаимодействовать написанный им софт для ПК и Arduino Nano. Обучение алгоритма выполняется на ПК, но реализация выполняется в реальном времени на Arduino Nano. В целом, это типичный подход для большинства систем машинного обучения, разворачиваемых на микроконтроллере. Чтобы записать образцы звуковых команд или высказываний, создатель системы сначала должен был оптимизировать АЦП Nano, чтобы он мог получить достаточную частоту дискретизации для обработки речи. Немного запрограммировав низкоуровневую систему, он достиг частоты дискретизации 9 кбит / с, чего уже вполне достаточно для обработки звука.

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

    Это необходимо для разделении одного произнесенного слова на разные слоги. Возьмем, например, слово «seven». Как анализировать «se-» в «семи» отдельно от «-ven»? Нужно определить сегменты, каждый из которых сможет уместить произнесенный слог. 50 мс, как посчитал разработчик — оптимальное время для сегмента. Затем он рассчитал энергию 5 различных частотных диапазонов для каждого сегмента каждого высказывания. Обычно это делается с помощью преобразования Фурье, но у Nano недостаточно вычислительной мощности для вычисления преобразования Фурье в реальном времени. Поэтому Питер попробовал другой подход: он реализовал 5 наборов цифровых полосовых фильтров, что позволило ему более легко вычислять энергию сигнала в каждой полосе частот.

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

    Программа для ПК создает файл .h, который можно скомпилировать прямо на Nano. Питер использует пример распознавания произнесенных чисел — от 0 до 9, но вы можете изменить эти команды, например, на «старт» или «стоп», если захотите.

    Результат

    Что получилось в итоге? Миниатюрная система распознавания отдельных команд. Конечно, все слова она распознавать не может, лишь те из них, что заданы изначально. На основе этой системы можно создать нечто более совершенное, но в качестве демонстрации возможностей систем распознавания речи этот проект неплох. Более подробно о проекте можно узнать по этой ссылке.

    Модуль голосовых команд Arduino версия V3.1 скачать библиотеку

    Голосовой модуль 3.1

    26.12.2021 | Просмотров: 10290 | Ардуино | автор: ELECTRONOOBS

    Доля

    Это модуль распознавания голоса. Я использовал такой модуль несколько лет назад, но это новая версия, и она кажется лучше. В этом видео я расскажу вам об отличиях этого нового модуля, его характеристиках, как его использовать и покажу вам несколько примеров того, что вы можете с ним сделать. Итак, давайте начнем.

    Часть 1 — Что нам нужно?

    Для этого примера все, что нам нужно, это Arduino и голосовой модуль, который вы можете купить ЗДЕСЬ на AliExpress. Подключите контакты UART RX и TX, например, к цифровым контактам Arduino D4 и D5. Или, если вы используете Arduino MEGA, подключите их к D10 и D11, так как не все выводы могут иметь программные прерывания для сигнала UART.


    Часть 2. Схема



    Часть 3.1. Обучение голосовым командам

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

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

    Подключите Цепь к компьютеру.

    Запустите Arduino IDE.

    Проверьте, правильно ли вы выбрали плату Arduino. (Инструменты -> Доска) Проверьте, правильно ли выбран COM-порт. (Инструменты -> Порт)
    Теперь откройте пример программы для обучения модуля.
    Перейдите в Файл -> Примеры -> VoiceRecognitionV3 -> vr_sample_train


    Загрузить библиотеку распознавания голоса
    Загрузить код примера

    Часть 3.2 — Добавить голосовую команду

    Загрузите код в Arduino и подождите, пока код не будет загружен. (Ctrl + U)
    Откройте последовательный монитор. (Ctrl + Shift + M)
    Убедитесь, что скорость передачи установлена ​​на 115200 и выбрана опция «Новая строка».
    Если все в порядке, на последовательном мониторе отобразится меню, как показано на рисунке выше.
    Есть несколько команд, которые вы можете ввести в последовательный монитор, чтобы запрограммировать модуль, здесь мы будем использовать команду «train» для обучения модуля.

    V3 может хранить 80 голосовых команд, каждая продолжительностью 1500 мс. Каждая команда хранится по адресу, начинающемуся с 0 до 254.
    С помощью команды «train» мы сохраняем голосовую команду по определенному адресу, поэтому вы должны указать адрес в команде.
    Синтаксис команды следующий: адрес поезда Например: поезд 0, поезд 20, поезд 254.
    Нам потребуются две голосовые команды для управления светодиодом. Одна команда на включение, другая на выключение.
    Введите команду в последовательном мониторе, а затем адрес, который вы хотите сохранить. например: train 20.
    После того, как вы ввели команду, подождите, пока на последовательном мониторе не появится сообщение «говорите сейчас». Теперь произнесите команду включения светодиода в микрофон четко и достаточно громко.
    Если команда достаточно ясна, появится другое сообщение с просьбой говорить еще раз. Произнесите его еще раз, чтобы зарегистрировать команду.
    Код попросит вас повторить команду, если во время записи возникнет шум или если звук будет недостаточно четким. Здесь большую роль играет качество вашего микрофона. Вы можете не зарегистрировать команду, если ваш микрофон недостаточно хорош. Также тренируйте доску в бесшумной среде.
    После того, как вы успешно ввели голос в модуль, повторите тот же процесс, чтобы ввести голосовую команду для выключения светодиода. Не забудьте сохранить команду по другому адресу. Например: train 30.
    Если вы успешно загрузили обе команды, теперь вы готовы загрузить код для управления светодиодом.



    Часть 4 — см. полное обучающее видео

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

    Поддержите меня на PayPal

    Поддержите меня на PATREON


    26/12/2021 | Просмотров: 10290 | Ардуино | автор: ELECTRONOOBS

    Поделиться



    Механизм распознавания речи Arduino — Официальный магазин Arduino

    Код: AVX00031 / Штрих-код:

    €9,00

    | /

    Получите ваучер сейчас и начните это новое путешествие.

    ##цена##

    Расширьте свои возможности, добавьте в корзину: €0,00

    Обзор

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

    Механизм распознавания речи совместим с несколькими платами Arduino и с Arduino IDE и не требует дополнительного оборудования, программного обеспечения или подключения к Интернету.
    Его механизм AI/ML понимает команды, вводимые посредством ввода текста на более чем 40 языках, независимо от фактического голоса, тона или акцента говорящего. Это означает, что можно быстро настроить несколько слов и последовательностей пробуждения, и нет необходимости переобучать для разных пользователей.

    Готовы протестировать?

    Начните работу с бесплатной пробной лицензией здесь.
    У вас уже есть ваучер? Зарегистрируйте его здесь.

    Основные преимущества:
    • Мощная библиотека со встроенным модулем AI/ML для моделирования на основе фонем
    • Распознавание нескольких слов пробуждения и последовательностей команд
    • Обучение вокалу не требуется, команды настраиваются с помощью текстового ввода
    • Поддержка более 40 языков, независимо от акцента
    • Одна конфигурация для нескольких динамиков, без переобучения
    • Распознавание на периферии, нет необходимости в дополнительном оборудовании/программном обеспечении или подключении
    • Подходит для шумных помещений
    • Расширьте существующие проекты с помощью функций распознавания речи
    • Совместим с несколькими продуктами Arduino Nano и Portenta
    • Совместимость с Arduino IDE и Arduino CLI
    Промышленное распознавание речи

    Механизм распознавания речи был разработан в сотрудничестве с Cyberon, ведущим поставщиком встраиваемых речевых решений, чтобы стать частью растущей экосистемы передовых профессиональных решений Arduino Pro.

    Забудьте о периоде обучения

    Ваше следующее интеллектуальное устройство сможет сразу понимать все основные языки мира, независимо от тона или акцента говорящего. Как? Механизм распознавания речи использует текстовый ввод для определения голосовых команд, преобразовывая их в мгновенные результаты.

    Бесконечное количество приложений

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

    Слушай, слушай!

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

    Требуется распознавание речи промышленного уровня? Мы слышим вас!

    Свяжитесь с нами!

    Политика возврата

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


    Технические характеристики

                        НОМЕР ОПРЕДЕЛ. РАЗ ЗАДЕРЖКА В РЕЖИМЕ ТРИГГЕРА** СОЕДИНЕНИЕ ОБОРУДОВАНИЯ***
    ПЛАНЫ НАБОР ДАННЫХ* ТРИГГЕРЫ КОМАНДЫ
    Бесплатная пробная версия     1      1 20 макс. 50 20 с Да
    Лицензия Cyberon     1      1 20 макс. Без ограничений Да

     

     

     

     

    Выбор типа ваучера


    *Набор данных не может быть изменен после его размещения на плате
    **Задержка между входом в режим триггера и распознаванием слова пробуждения
    ***Лицензия привязана к серийному номеру одной платы Arduino

     

    Узнать больше

    • ДОКУМЕНТЫ ПО ARDUINO Для получения полной технической документации, руководств и многого другого посетите документацию по Arduino
    • .

    Получите вдохновение

    ##заголовок## ##субтитры##

    ##текст##

    читать далее

    Часто задаваемые вопросы

    Как я могу протестировать механизм распознавания речи Arduino?

    Чтобы протестировать модуль распознавания речи Arduino, у вас есть возможность: