Ардуино жалюзи: управление звуком, голосом или кнопкой

Управляем жалюзи на Ардуино звуком, голосом или кнопкой

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

Шаг 1. Комплектующие

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

1x Ардуино (использовали в уроке Arduino Nano из-за экономии места)
1x Звуковой сенсор от Adafruit (по желанию)
1x Шаговый двигатель + драйвер (сборка) Дарлингтона
3x Кнопки
1x Светодиод
Провода/перемычки
1x Макетная плата

Дизайн этой системы автоматических жалюзей Ардуино довольно прост и в нём два способа активировать занавески:

  • Используя звуковой датчик (микрофон), чтобы управлять им, используя хлопки в ладоши;
  • Использование кнопок для открывания/закрывания шторок.

Шаг 2. Как это работает?

Работа этой системы очень проста. Ардуина принимает входные сигналы от звукового датчика (микрофона) или кнопок. Затем он соответственно управляет шаговым двигателем через драйвер Дарлингтона для двигателя. Шаговый двигатель прикреплен к ручке управления шторками и, таким образом, вращает и открывает/закрывает шторы.

Шаг 3. Подключаем и настраиваем шаговый мотор

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

Первая кнопка справа активирует двигатель для вращения в определенном направлении (вы можете изменить это в коде ниже). Нажмите кнопку 4 раза и она вернется в исходное положение, так как она будет вращаться на 90 градусов во время каждого нажатия. Средняя кнопка блокирует цепь так, чтобы первая кнопка не могла активировать двигатель.

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

Шаг 4. Настройка схемы жалюзей Ардуино

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

Шаг 5. Финальные действия

Лучше использовать пенопласт, чтобы сделать держатель для двигателя (1, 2) и ручки жалюзи (3). Т.к. в некоторых домах многие предпочитают не сверлить стены позже можно использовать двусторонний скотч, чтобы зафиксировать всё на месте.

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

Посмотрите ниже демо-видео финального результата проекта, когда управление производится хлопком:

Шаг 6. Альтернативная версия с использованием кнопок

Если вам не нравится управление звуком, вы можете просто использовать кнопки. В таком случае нужно только две кнопки: активация и возврат в исходное положение (поскольку пауза нам теперь не нужна). Активация такая же, как и раньше, а кнопка сброса вернет занавеску назад в исходное положение. Код для этой версии ниже:

Демо того как это работает ниже:

На этом всё. Вы можете использовать свою фантазию и улучшить проект.

Распознавание голоса на Arduino или “Do You Know What I Am Saying?”

Фразы “О’кей, Google” и “Привет, Siri” прочно вошли в обиход у пользователей смартфонов. Голосовое управления это удобно — не надо нажимать кнопки, двигать курсором мыши в нужную область и т.д. Просто произносишь команду и ждешь ее исполнения.

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

В данной статье рассмотрим один из самых простых способов научить Arduino понимать голосовые команды — Elechouse Voice Recognition Module. В качестве примера будем управлять светодиодом. Голосовой командой мы сможем его включить, выключить или заставить мигать.

Для работы нам потребуется:

Устройство собиралось на макетной плате MB-102 с джамперами.

Подключение

Подключение модуля очень простое. Всего два пина: TX и RX. Их надо подключить к выходам Arduino 2 и 3 соответственно. Запитать модуль следует от 5V.

Обучение командам

Итак, первым делом надо наш модуль обучить командам. Как было сказано выше, всего у нас три команды:

Откройте проект vr_simple_train, поставляем в комплекте с библиотекой VoiceRecognitionV3.

Файл — Примеры — VoiceReocgnitionV3 — vr_simple_train

Залейте этот скетч в Arduino и откройте Монитор порта (СервисМонитор порта или нажмите Ctrl + Shift + M на клавиатуре)

Обязательно надо выставить скорость обмена (baud rate) 115200 и отправку по новой строке.

Перед нами интерфейс управления голосовыми командами. Введите в верхнее поле settings и нажмите кнопку “Послать“.

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

За обучение командам отвечает функция sigtrain.

Введите в поле команду sigtrain 0 On и нажмите на кнопку “Послать”. Команда означает, что в ячейку памяти 0 мы хотим записать команду с сигнатурой On. Сигнатура это некий уникальный ярлык, который описывает вашу команду.

Когда в окне появится фраза “Speak now“, то следует проговорить в микрофон нашу команду “Зажгись”.

После появления фразы “Speak again“, проговорите фразу еще раз.

Если оба слова совпали, то модуль выдаст Success: 1, что означает, что мы только успешно записали команду On.

Если же модуль не смог сопоставить две голосовых команды (например, было шумно в помещении или вы произносили просто разные слова), то модуль ответит фразой “Cann’t match” и предложит начать процесс записи команды еще раз до тех пор, пока не будут предоставлены верные данные.

То же самое надо проделать и с другими нашими командами “Выключись” и “Мигай”, но использовать надо другие ячейки памяти (1 и 2) и другие сигнатуры (Off и Blink)

Делай, что я говорю!

Модуль настроен и знает целых три команды. Залейте в Arduino следующий скетч:

Скетч ожидает от модуля голосовую команду и исполняет ее.

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

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

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

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

Синтезатор речи для вашего Arduino

Автор Instructables под ником Utsource рассказывает, как пользоваться библиотекой Talkie, позволяющей синтезировать речь при помощи Arduino. Это не тот синтезатор речи, которым вы, возможно, пользуетесь на своём смартфоне, планшете или ПК, и который может озвучить любой текст. Набор слов здесь фиксированный, но их больше тысячи (это в сумме, предусмотрены несколько подключаемых словарей). Данная библиотека реализует программно алгоритм синтеза, реализованный в своё время аппаратно в чипах фирмы TI.

Библиотека Talkie лежит здесь, также её можно скачать через менеджер библиотек, введя её название в строку поиска. Мастер показывает это на скриншоте:

Для работы библиотеки не требуется расширение ОЗУ, ПЗУ, добавление каких-либо аппаратных синтезаторов. Синтез речи полностью программный, звуковой сигнал выводится при помощи ШИМ на выход 3. Туда можно просто подключить динамическую головку через резистор, а можно воспользоваться дополнительным усилителем. Во втором случае желателен ФНЧ между Arduino и усилителем, но мастер обходится без него. При мощном усилителе ФНЧ становится обязательным. Усилитель может быть выполнен на любой элементной базе, мастер выбирает микросхему LM386. Схему включения он берёт стандартную, понятно, что показанные на ней микрофон и нагрузочный резистор для него не понадобятся – источником сигнала будет Arduino.

Эту схему он моделирует в программе Fritzing:

И собирает на макетной плате типа breadboard:

Чтобы проверить библиотеку в действии, мастер открывает в Arduino IDE редактор скетчей:

И набирает такой код:

Программа подключает ранее установленную библиотеку Talkie и два словаря, один из которых нужен для получения паузы между словами. Никаких знаков препинания этот синтезатор речи не понимает, как и сокращений вроде ЗПТ и ТЧК. При запуске программы он произнесёт монотонно фразу “опасность опасность буря с северной стороны”.

Библиотека подойдёт ардуинщикам, не желающим приобретать довольно дорогие дисплеи. Заняв динамической головкой, без усилителя или с таковым, всего одну “ногу”, можно реализовать вывод в виде речи довольно длинных фраз, а если занять ещё несколько “ног” кнопками – то и меню, в т.ч. многоуровневые.

Источники:

http://amperkot.ru/blog/voice-recognition-arduino/

http://sdelaysam-svoimirukami.ru/3208-golosovoe-upravlenie-svoimi-rukami.html

http://usamodelkina.ru/15831-sintezator-rechi-dlja-vashego-arduino.html

http://arduinoplus.ru/avr-studio-sreda-razrabotki/

Ссылка на основную публикацию