- Новий підхід до пристроїв автоматизації будинку, що використовують Chirp
- Відтворення Chirp Audio за допомогою Google Assistant
- Підготовка вашого Arduino Nano 33
Нещодавно я заінтригував усіма новими продуктами домашньої автоматизації на ринку, а отже, придбав Google Home Mini та кілька інших розумних пристроїв для управління освітленням, вентиляторами, змінного струму та тим, що ні. Хоча це працювало, і все було цікаво використовувати, я трохи занепокоївся тим, що всі ці бездротові зв’язки відбуваються навколо мене. Тільки в моїй спальні було 5 розумних пристроїв, і в тому числі мій ноутбук і телефон, в цілому 7 бездротових пристроїв навколо мене залишатимуться завжди під’єднаними до мого маршрутизатора. Я переживав, що всі ці сигнали Wi-Fi можуть бути шкідливими для нашого здоров'я, і ця наукова робота на Sciencedirect додала доказів у мої думки. Саме тоді я почав думати про альтернативне рішення бездротової автоматизації будинку, яке не потребує Wi-Fi / Bluetooth для роботи.
Новий підхід до пристроїв автоматизації будинку, що використовують Chirp
Раніше ми створили проект ІК-дистанційного керування домашньою автоматизацією, який може працювати без Wi-Fi або Bluetooth, але це вже не круто, і я хотів керувати пристроями за допомогою голосу. Я шукав техніку для Google home mini для безпосереднього спілкування зі смарт-пристроями, тому в основному мені потрібен метод бездротового зв'язку Machine to Machine без використання Wi-Fi або BLE.
Це було тоді, коли я згадав інтерв’ю з Деном Джонсом, технічним директором Chirp, в якому він представив Chirp як “Chirp - це спосіб передачі інформації за допомогою звукових хвиль. На відміну від Wi-Fi або Bluetooth, які використовують радіочастоти, Chirp кодує дані в тонах, які можна відтворювати (передавати) за допомогою будь-якого комп'ютерного динаміка та приймати через будь-який комп'ютерний мікрофон без необхідності наявності будь-якого додаткового обладнання, такого як RF-чіпи. Це дозволяє використовувати Chirp на будь-якому споживчому пристрої, в якому є динамік та мікрофон, наприклад, мобільні телефони, ноутбуки, системи PA тощо, і може передавати інформацію навіть через потік YouTube або телевізійну трансляцію ". Це означає, що ми можемо використовувати наш домашній міні-Google для прямого спілкування (за допомогою чірікання) зі своїм смарт-пристроєм.Все, що нам потрібно, це мікрофон і процесор всередині цих розумних пристроїв, щоб декодувати звукові дані, що чирчать, для виконання необхідних дій. Chirp також нещодавно оголосив про інтеграцію перевитрати даних для Arduino, це означає, що ми повинні мати можливість використовувати нову плату Arduino nano 33 BLE для запуску Chirp SDK для нашого проекту.
Отже, у цьому проекті ми побудуємо пристрій акустичної домашньої автоматизації, в якому ми зможемо керувати цим розумним пристроєм без використання будь-яких бездротових з’єднань, таких як Wi-Fi або Bluetooth. Ми будемо використовувати Action for Google і Dialogflow для створення тестового додатка для нашого Google Assistant, щоб він відтворював закодований звук (Chirp). Потім цей звук буде захоплений платою сенсорів Arduino nano BLE, що запускає програму Chirp Arduino, на основі повідомлення, закодованого в даних, на яких плата Arduino може виконувати будь-які дії, такі як перемикання навантаження змінного струму, керуючи RGB-світлодіодом, тощо. Це може звучати як багато, але це відносно просто, а повні інструкції наведені нижче. Тож давайте почнемо.
Відтворення Chirp Audio за допомогою Google Assistant
Найпростіший спосіб побудови голосової автоматизованої домашньої автоматизації - це використання IFTTT з Google Assistant для домашньої автоматизації. Але на момент написання цієї статті Chrip не має аплету на IFTTT, тому ми будемо використовувати власну платформу Action for Google. Існує велика ймовірність того, що Chirp надав власний аплет в IFTTT під час читання цієї статті, тому перевірте це. Якщо ні, давайте продовжимо Дії для Google для створення програми Google Assistant.
Крок 1: Відкрийте консоль Dialogflow. Можливо, вам доведеться зареєструватися, якщо ви ще цього не зробили. Потім натисніть «Створити нового агента», як показано нижче
Крок 2: Дайте своєму новому агенту ім’я, а потім натисніть на створити. Я назвав свого агента «Circuitdgest_Automation»
Крок 3: Тепер ви перейдете до розділу намірів. Тут ви навчаєте нового агента різним цілям. У нашому випадку ми напишемо два наміри, один - увімкнути світло, а інший - вимкнути світло. Ви можете написати будь-яку кількість намірів на основі програм та команд, які має розуміти ваш Агент. За замовчуванням у вас буде привітальний намір, але давайте створимо новий, щоб увімкнути світло, натиснувши “Створити намір”, і я буду називати цей задум
На новій сторінці натисніть «Додати навчальні фрази» і введіть команду, яку повинен зрозуміти ваш асистент у цьому випадку «Увімкнути світло». Ви можете написати будь-яку кількість навчальних фраз, що передають значення того самого наміру.
Крок 4: Тепер прокрутіть вниз і натисніть «Додати відповідь». Тут ми розповідаємо помічнику, як відповісти, якщо спрацьовує цей конкретний намір. За замовчуванням ви можете ввести тут текстову відповідь, але нам потрібен звук для відтворення нашого асистента, тому натисніть на символ «+» біля вкладки «За замовчуванням» і виберіть Google помічника, а потім годиннику «Додати відповіді» та виберіть «Прості відповіді ". Усередині простого текстового поля з відповіддю введіть цей код
Це простий SSML-код для відтворення звуку з URL-адреси, а потім вимови “Включено світло”. Цей звук повинен бути закодованим звуком від Chirp, і його слід завантажити jovo.tech.
Отримання закодованого звуку з чирингу:
Цей закодований звук можна отримати з програми Chrip Android. Встановіть програму та введіть повідомлення, яке потрібно закодувати, і натисніть кнопку Надіслати, щоб прослухати закодований звук
Тут я набрав "Світло включено". Так само ви можете ввести будь-яке повідомлення та натиснути кнопку Надіслати, щоб перевірити закодований звук. Потім ми можемо зберегти цей аудіофайл (формат mp3) за допомогою будь-якого звукозаписувача. Я записав два таких аудіофайли із закодованим повідомленням «Lights on» та «Lights off». Ви можете завантажити їх звідси, якщо хочете заощадити час. Після того, як ви будете готові до аудіофайлів, перейдіть до аудіоконвертера jovo tech, щоб завантажити ваші файли mp3 і отримати посилання на них.
Зауважте, що це засіб тестування, і ваші файли працюватимуть лише 24 години. Якщо вам потрібно, щоб він працював протягом тривалого часу, вам доведеться використовувати власний веб-сервер, такий як Google fire-base, як цей зразок інтерфейсу Google помічника firebase. Тепер, коли ви отримали посилання, ваша відповідь на діалоговий потік повинна виглядати приблизно так
Не забудьте натиснути кнопку Зберегти, щоб зберегти цей намір.
Крок 5: Аналогічним чином створіть ще один новий намір вимкнути світло. Знову введіть свою навчальну фразу, а також свою відповідь. Цього разу вставте посилання на інший аудіофайл і попросіть його сказати, що світло вимкнено, як показано нижче.
Ще раз переконайтеся, що ви також зберегли це.
Крок 6: Тепер клацніть ліворуч на вкладці інтеграції та виберіть Google помічник. Це допоможе нам протестувати програму за допомогою Google помічника. Виберіть додаток Google Assistant і натисніть “TEST”
Крок 7: Це займе деякий час, після чого ви отримаєте тестовий екран, як показано нижче. У лівому куті ви можете побачити текстове поле, куди ви можете ввести свої тестові команди, і побачити, як програма реагує. Ви також можете знайти деякі програми для налагодження в лівій частині екрана.
Коли ви вводите “увімкнути лампи для читання”, воно повинно відтворювати звуковий сигнал і говорити, що індикатори увімкнені, аналогічно як і для “Вимкнути лампи для читання”. Після того, як він запрацює тут, ви можете спробувати його на будь-якому пристрої помічника Google, як-от на вашому телефоні чи google home mini, що підключено до вашого ідентифікатора Gmail. Просто скажіть поговорити з моїм тестовим додатком і починайте керувати пристроєм.
Підготовка вашого Arduino Nano 33
Тепер на апаратному рівні все стало досить легко завдяки платі Arduino Nano 33 BLE Sense. Оскільки на платі є вбудований мікрофон та щебетальні бібліотеки, готові до розгортання безпосередньо з вашої Arduino IDE. Якщо ви повністю новачок у цій дошці, рекомендується прочитати цю статтю “Початок роботи з Arduino Nano 33 BLE”, щоб зрозуміти