- Необхідні компоненти:
- Крок 1: Готуємо Pi
- Крок 2: Налаштуйте звукову систему Pi
- Крок 3: Налаштуйте свій обліковий запис розробника Amazon
- Крок 4: Встановіть та налаштуйте голосову службу Alexa на Raspberry Pi
- Крок 5: Завантажте супровідну програму та запустіть AVS Client:
- Крок 6: Активуйте Alexa wake word:
Минуло майже два роки з того моменту, як Amazon випустила голосовий динамік Amazon ECHO, і популярність динаміка продовжувала зростати з причин, які, мабуть, недалекі від вражаючої продуктивності голосової служби Alexa і того факту, що платформа була відкрита для розробників, що призвело до розробки пристроїв, сумісних з Alexa, провідними виробниками електроніки та народження декількох технологічних стартапів на базі Alexa / amazon. З цієї причини в сьогоднішній статті я покажу вам, як створити власну версію самовіддачі Amazon echo та налаштувати голосову службу Alexa на Raspberry Pi.
Будь ви інженером або виробником, це буде можливість ознайомитися з основними принципами, які визначають, як працює ехо Amazon, що стане в нагоді, якщо ви вирішите побудувати пристрій на базі Amazon Echo або голосової служби Alexa.
Необхідні компоненти:
Для побудови цього проекту echo Raspberry pi amazon потрібно:
- Малина пі 3 або 2
- WiFi Dongle (якщо буде використовуватися Raspberry Pi 2)
- Мікрофон
- Вбудований динамік (із роз'ємом 3,5 мм)
- 5В, 2А USB-джерело живлення
- Кабель Ethernet
Необов’язкові вимоги
- Монітор
- Миша та клавіатура
- Кабель HDMI
Оскільки надто довго йшов USB-мікрофон, який я планував використати для цього проекту, я вирішив використовувати гарнітуру, підключену до USB-мікрофона та роз'єм для навушників для мого PlayStation 3. Якщо ви не можете отримати USB-мікрофон, як я, Ви можете використовувати будь-який інший пристрій з мікрофонним виходом, як і більшість веб-камер USB.
Цей підручник базуватиметься на розтяжній ОС Raspbian, тому, щоб продовжувати, як зазвичай, я вважаю, що ви знайомі з налаштуванням Raspberry Pi за допомогою розтяжної ОС Raspbian, і ви знаєте, як SSH в Raspberry pi за допомогою термінального програмного забезпечення, такого як шпаклівка. Якщо у вас є проблеми з цим, на цьому веб-сайті є безліч підручників з Raspberry Pi, які можуть вам допомогти.
Через природу цього підручника важливо мати можливість використовувати візуальний дисплей, такий як монітор, або переглядати робочий стіл Raspberry Pi за допомогою VNC. Причиною цього є копіювання ідентифікаторів з веб-сайту Amazon на термінал.
Цей посібник буде описаний кроками, щоб полегшити відстеження та відтворення.
Крок 1: Готуємо Pi
Перш ніж починати будь-який проект Raspberry Pi після встановлення ОС, мені подобається запускати оновлення на pi, щоб переконатися, що все в ньому оновлено.
Для цього виконайте:
sudo apt-get update оновлення sudo apt-get
Крок 2: Налаштуйте звукову систему Pi
На цьому етапі я пораджу підключити монітор або підключити до робочого столу вашого Raspberry Pi за допомогою VNC, щоб полегшити роботу.
Після запуску робочого столу Pi підключіть мікрофон через USB та динамік до 3,5-мм аудіороз'єму на Raspberry Pi. Нам потрібно переналаштувати Raspberry Pi для передачі звуку через роз'єм 3,5 мм. Для цього клацніть правою кнопкою миші кнопку звуку (динаміка) на панелі завдань Raspberry Pi на робочому столі та виберіть аналог, як показано на малюнку нижче.
Це дозволить Raspberry Pi надсилати звук через роз'єм 3,5 мм замість передачі через HDMI.
Далі нам потрібно налаштувати Raspberry Pi для використання підключеного USB-мікрофона за замовчуванням. Для цього нам потрібно відредагувати конфігурацію вдосконаленої архітектури звуку Linux Raspberry Pi.
Ми робимо це, використовуючи:
sudo nano /usr/share/alsa/alsa.conf
Відкриється редактор, перейдіть до рядка для картки PCM і змініть його з 0 на 1, як показано на малюнку нижче
Збережіть конфігурацію та вийдіть, використовуючи ctrl + x
Крок 3: Налаштуйте свій обліковий запис розробника Amazon
Наступним кроком є створення облікового запису розробника Amazon, щоб отримати ідентифікатори розробника, сертифікати та профіль безпеки, необхідні для підключення до голосової служби Amazon Alexa.
Почніть з переходу на веб-сайт розробника Amazon і створіть обліковий запис, ви можете перейти за цим посиланням, клацнути на ввійти, це призведе до сторінки створення вашого облікового запису розробника.
Після цього перейдіть за цим посиланням на домашню сторінку для розробників. У мене виникли проблеми з навігацією веб-сайтом Amazon, тому я порадив би вам перейти за цими посиланнями.
На домашній сторінці натисніть голосову службу Alexa, виділену нижче.
На наступній сторінці, натисніть на Create Product кнопку, виділену на малюнку нижче;
Заповніть форму товару, як описано нижче.
Найменування продукту: - RPi Echo (це ім'я є особистим уподобанням, ви можете використовувати будь-яке ім'я, яке хочете) Ідентифікатор продукту: RPiEcho (ви можете використовувати будь-яку назву, яку хочете, як ідентифікатор товару). Тип продукту: Виберіть пристрій із підтримкою Alexa Companion App: виберіть Ні Категорія товару: виберіть Інший Опис продукту: все, що вам спаде на думку Як взаємодіятимуть користувачі: виберіть вільні руки Завантажити зображення: завантажте будь-яке описове зображення або пропустіть. Комерційний розподіл: виберіть Ні Для дітей: виберіть Ні
Після заповнення форми натисніть на наступну кнопку в кінці сторінки. На наступній сторінці вам буде запропоновано вибрати профіль захисту, виберіть опцію Створити новий профіль .
Введіть ім'я профілю та відповідний опис та натисніть наступну кнопку.
Після натискання наступної кнопки буде сформовано ідентифікатор профілю безпеки, ідентифікатор клієнта та секрет клієнта. Бережіть ці деталі в безпеці, оскільки ми їх використаємо пізніше.
Перш ніж натиснути кнопку закінчити, нам потрібно додати шляхи до дозволеного джерела та дозволеної URL-адреси повернення.
До Дозволеного джерела додайте такі посилання:
- http: // localhost: 3000
- https: // localhost: 3000
До дозволеної URL-адреси повернення додайте такі посилання:
- https: // localhost: 3000 / authresponse
- http: // localhost: 3000 / authresponse
Додавши ці посилання, натисніть кнопку фінішу, як показано нижче.
Після створення облікового запису розробника Amazon та придбання всіх необхідних ідентифікаторів ми переходимо до встановлення голосової служби Alexa на Raspberry Pi.
Крок 4: Встановіть та налаштуйте голосову службу Alexa на Raspberry Pi
Щоб встановити голосову службу Alexa на Raspberry Pi, ми клонуємо репозиторій alexa git hub, запустивши:
клон git https://github.com/alexa/alexa-avs-sample-app.git
З клонованим репо, перейдіть до його каталогу, запустивши;
cd alexa-avs-sample-app.git
Нам потрібно налаштувати голосову службу Alexa перед запуском інсталяції. Для цього ми редагуємо файл automated_install.sh;
sudo nano automated_install.h
Введіть необхідний ідентифікатор товару, ідентифікатор клієнта та секретну інформацію про клієнта, як показано на зображенні нижче.
Використовуйте ctrl + x, щоб зберегти та вийти з редактора.
Далі нам потрібно зробити сценарій automated_install виконуваним файлом, щоб встановити його на Raspberry Pi. Для цього потрібно запустити;
Sudo chmod + x automated_install.h
Після чого ми запускаємо установку за допомогою;
./automated_install.h
Це встановить голосову службу Alexa на pi. Під час встановлення виникнуть деякі запитання, на які вам доведеться надати відповіді.
Вам також буде запропоновано вибрати аудіовихід серед запитань, переконайтесь, що вибрали аудіороз'єм 3,5 мм.
Це може зайняти деякий час, але після цього у вас буде встановлена голосова служба Alexa.
Крок 5: Завантажте супровідну програму та запустіть AVS Client:
Перш ніж запускати AVS, нам потрібно запустити супутню програму та запустити її. Супровідний додаток служить якимсь шлюзом, що дозволяє взаємодіяти між нашим клієнтом та сервером AVS.
Щоб запустити супутник, нам потрібно перейти в зразок каталогу програми avs і запустити супровідну службу супроводу. Це можна зробити, запустивши:
cd ~ / alexa-avs-sample-app / sample / companionService && npm start
Коли запущена супутня послуга, нам потрібно запустити клієнт AVS, для цього ми відкриваємо новий термінал, не закриваючи той, на якому працює супутня служба.
На новому терміналі запустити клієнт AVS, запустивши;
cd ~ / alexa-avs-sample-app / sample / javaclient && mvn exec: exec
Відразу після запуску команди ви побачите спливаюче вікно (показано нижче) із запитом автентифікувати пристрій, скопіювати посилання та вставити у веб-браузер або натиснути кнопку так.
Після натискання кнопки « Так » не натискайте кнопку «ОК» у наступному діалоговому вікні, яке з’явиться, доки ви не завершите автентифікацію на веб-сторінці.
Веб-браузер може підняти прапор і оголосити посилання небезпечним, але заздалегідь. Посилання приведе вас на сторінку входу в обліковий запис розробника Amazon, після входу в систему ви будете перенаправлені на сторінку (показану нижче), яка підтверджує автентифікацію.
Тепер ви можете натиснути кнопку в порядку в діалоговому вікні, про яке я згадав раніше. Після цього Alexa готова до використання, тепер усі кнопки в діалоговому вікні клієнта будуть увімкнені, тому ви можете натиснути, щоб видавати команди Alexa і отримувати відповідь.
Крок 6: Активуйте Alexa wake word:
Останнє, про що ми поговоримо в цьому посібнику, це активація сенсорного агента пробудження слова Alexa, ви погодитесь зі мною, що постійно натискати кнопку для спілкування з Alexa - це якось не круто. Поки існує інший агент пробудження, для цього проекту ми використовуватимемо агент слів пробудження Sensory Alexa. Агент пробудження буде працювати у фоновому режимі, чекаючи, поки ми згадаємо слово пробудження « alex a», коли він почує слово пробудження, він вказує нашому клієнту Alexa почати слухати команди.
Щоб встановити агент пробудження слова, якщо клієнтський термінал все ще працює, запустіть команду нижче на новому терміналі:
cd ~ / alexa-avs-sample-app / sample / wakeWordAgent / src &&./wakeWordAgent -e сенсорний
якщо все так, як повинно бути, ви повинні отримати відповідь, як наведена нижче.
Завдяки цьому ви зможете змусити Alexa слухати вас, вимовляючи слово Alexa wake.
Ось і все для цього підручника, є кілька інших речей, які ви можете завантажити у свій DIY малиновий пі-амазонський ехо, я постараюся охопити більшість із них у наступних кількох підручниках, якщо це дозволить час. Розгляньте проект і дайте мені знати, як він проходить.
Також перевірте інші наші подібні проекти Raspberry Pi:
- Plex Media Server на Raspberry Pi
- Сервер друку Raspberry Pi
- Як встановити Kodi на Raspberry Pi 3
- Камера спостереження Raspberry Pi із захопленням руху