Відео версія статті:
Голосовий асистент з Home Assistant та ESPHome
Як ви можете знати 2023 рік, це рік голосу в Home Assistant, тож я вирішив зробити свого власного голосового помічника. Досвід з випадковими активаціями Google Home
мені не сподобався, то ж цей помічник працює без Wake-слова. Щоб активувати його треба зробити жест рукою перед рамкою або натиснути кнопку в інтерфейсі розумного будинку.
Вам знадобляться наступні деталі:
Почнемо друкувати деталі (Вам необхідний принтер з робочою областю 300х300мм мінімум, бо розмір рамки 280х280мм).
Необхідно роздрукувати:
1. Рамка - 1 шт
2. Шестерня - 10 шт
3. Елемент дисплея - 10 шт
4. Шестерня двигуна (для крокового і серво різні файли) - 1 шт
5. Кріплення двигуна - 1 шт (при використанні крокового двигуна)
6. Шаблон для зображення 1 - 1 шт
7. Шаблон для зображення 2 - 1 шт
8. Шаблон для зображення 3 - 1 шт
Після друку треба:
1. Очистити поверхню деталей
2. Вирівняти двокомпонентною шпаклівкою
3. Відшкурити поверхню
4. Пофарбувати
Збірка механічної частини:
1. Вплавити заклепку (тертям від обертання)
2. Розсвердлити отвори для прутка
3. Поєднати шестерню та елемент дисплея за допомоги прутка
4. (Опціонально) Зафіксувати пруток за допомоги суперклея
5. Обрізати частину заклепки
6. Встановити елементи дисплея на місце
7. Приклеїти неодимовий магніт в паз на шестерні крокового двигуна (це не обов'язково при використанні серводвигуна на 270 градусів)
В цьому проекті ви можете використовувати серводвигун (що може обертатись на 270 градусів) замість крокового двигуна.
Збірка електронної частини:
1. Приклеїти термоклеєм роз'єм USB Type-C
2. Приклеїти термоклеєм датчик тиску, температури та вологості BME680
3. Приклеїти термоклеєм датчик жестів APDS-9960
4. Приклеїти термоклеєм датчик Голла A3144 до тримача крокового двигуна (тільки якщо використовується кроковий двигун)
5. Приклеїти термоклеєм мікрофон INMP441
6. Приклеїти термоклеєм чотири світлодіода WS2812
7. Приклеїти термоклеєм драйвер крокового двигуна ULN2003
8. Прикрутити чотирма гвинтами М3 динамік
9. Прикрутити двома гвинтами М3 датчик вологості HDC1080
10. Прикрутити двома гвинтами M2 I2S підсилювач MAX98357
11. Прикрутити двома гвинтами M2 плату ESP32
12. Прикрутити одним гвинтом M2 двигун 28BYJ-48
13. Поєднати усі елементи проводами
14. Припаяти резистор 100К між виводами Gain та GND на MAX98357
Малювання:
1. Нарізати клейкий папір стрічками 198х60мм
2. Приклеїти папір не елементи дисплея, края паперу сховати в паз
3. Зафіксувати края папера шматочками прутка для 3D друку
4. Надійно закрити основну рамку від можливості потрапляння фарби
5. Накласти шаблони для фарбування і пофарбувати фарбою з балончика
Налаштування Home Assistant:
1. Прошити ESP32 прошивкою з esphome (на сторінці esphome попереджають, що компонент bme680_bsec використовує пропрієтарну бібліотеку Bosch, тож якщо ви не згодні з правилами використання необхідно замінити цей компонент на bme680)
2. Активувати хмару Nabu Casa або встановити аддони Whisper та Piper
3. Створити асистента та вибрати STT та TTS сервіси та мову
4. Випробувати новий пристрій
Можливо зараз цей асистент не завжди розпізнає команди, але з точки зору електроніки більше ніяких змін вносити не треба. З покращенням командного інтерпретатора в Home Assistant та нейромереж синтезу та розпізнавання голосу покращиться й якість роботи асистента.
Завантажити файли проекту -
Голосовой асистент з Home Assistant та ESPHome
Дякую за вашу увагу!