- Een nieuwe benadering voor Home Automation-apparaten die Chirp gebruiken
- Chirp Audio afspelen met Google Assistant
- Uw Arduino Nano voorbereiden 33
Onlangs raakte ik geïntrigeerd door alle nieuwe Home Automation-producten op de markt en daarom kocht ik een Google Home Mini en een paar andere slimme apparaten om lichten, ventilatoren, AC en wat niet te bedienen. Hoewel het werkte en alles leuk was om te gebruiken, kreeg ik een beetje last van al deze draadloze verbindingen om me heen. Mijn slaapkamer alleen al had 5 slimme apparaten, en inclusief mijn laptop en telefoon, zullen er in totaal 7 draadloze apparaten om me heen zijn die altijd verbonden blijven met mijn router. Ik was bang dat al deze wifi-signalen slecht zouden kunnen zijn voor onze gezondheid en dit onderzoeksrapport over Sciencedirect voegde bewijs toe aan mijn gedachten. Dit is toen ik begon na te denken over een alternatieve draadloze domotica-oplossing die geen Wi-Fi / Bluetooth nodig heeft om te werken.
Een nieuwe benadering voor Home Automation-apparaten die Chirp gebruiken
We hebben eerder een huisautomatiseringsproject met IR-afstandsbediening gebouwd dat kan werken zonder wifi of bluetooth, maar het is niet langer cool en ik wilde de apparaten met stem bedienen. Ik was op zoek naar een techniek voor de Google Home Mini om rechtstreeks te communiceren met de slimme apparaten, dus eigenlijk heb ik een Machine to Machine draadloze communicatiemethode nodig zonder Wi-Fi of BLE te gebruiken.
Op dat moment herinnerde ik me het interview met Dan Jones, CTO van Chirp, waarin hij Chirp introduceerde als “Chirp is een manier om informatie over te brengen met behulp van geluidsgolven. In tegenstelling tot Wi-Fi of Bluetooth die radiofrequenties gebruikt, codeert Chirp gegevens in tonen die kunnen worden afgespeeld (verzonden) met elke computerluidspreker en ontvangen via elke computermicrofoon zonder dat er extra hardware zoals RF-chips nodig zijn. Hierdoor kan Chirp worden gebruikt op elk consumentenapparaat met een luidspreker en microfoon, zoals mobiele telefoons, laptops, PA-systemen, enz. En kan het informatie zelfs via YouTube-stream of tv-uitzending verzenden. " Dit betekent dat we onze Google Home Mini kunnen gebruiken om rechtstreeks (via chirp) met ons smartapparaat te praten.Alles wat we nodig hebben, is een microfoon en een processor in deze slimme apparaten om de chirp-audiogegevens te decoderen om de vereiste acties uit te voeren. Chirp heeft onlangs ook de integratie van data-over-sound voor Arduino aangekondigd, dit betekent dat we het nieuwe Arduino nano 33 BLE-sensorbord moeten kunnen gebruiken om Chirp SDK voor ons project uit te voeren.
Dus in dit project zullen we een akoestisch apparaat voor huisautomatisering bouwen waarin we dit slimme apparaat kunnen bedienen zonder gebruik te maken van draadloze verbindingen zoals wifi of bluetooth. We zullen Actions for Google en Dialogflow gebruiken om een testapplicatie te bouwen voor onze Google Assistant om gecodeerde audio (Chirp) af te spelen. Deze audio wordt vervolgens opgevangen door het Arduino nano BLE-sensorbord waarop het Chirp Arduino-programma wordt uitgevoerd, op basis van het bericht dat is gecodeerd in de gegevens die het Arduino-bord elke actie kan uitvoeren, zoals het omschakelen van een AC-belasting die de RGB-LED bestuurt, enz. Het klinkt misschien als veel, maar het is relatief eenvoudig en de volledige instructies worden hieronder gegeven. Dus laten we beginnen.
Chirp Audio afspelen met Google Assistant
De eenvoudigste manier om spraakgestuurde domotica te bouwen , is door IFTTT te gebruiken met Google Assistant for Home Automation. Maar op het moment dat dit artikel wordt geschreven, heeft Chrip geen applet op IFTTT, dus we zullen het native Actions for Google-platform gebruiken. De kans is groot dat Chirp een eigen applet in IFTTT heeft geleverd op het moment dat u dit artikel leest, dus kijk daar eens naar. Als dit niet het geval is, gaan we verder met Actions for Google om een Google Assistant-applicatie te bouwen.
Stap 1: Open de Dialogflow-console. Mogelijk moet u zich aanmelden als u dit nog niet heeft gedaan. Klik vervolgens op "Nieuwe agent maken" zoals hieronder weergegeven
Stap 2: Geef uw nieuwe agent een naam en klik op aanmaken. Ik heb mijn agent genoemd als "Circuitdgest_Automation"
Stap 3: Nu wordt u naar de intents-sectie geleid. Hier train je je nieuwe agent voor verschillende doeleinden. In ons geval zullen we twee intenties schrijven, de ene is om het licht aan te doen en de andere is om het licht uit te doen. U kunt een onbeperkt aantal intenties schrijven op basis van de toepassingen en opdrachten die uw agent moet begrijpen. Standaard heb je de welkomstintentie, maar laten we een nieuwe maken om het licht aan te doen door op 'Intentie creëren' te klikken en ik noem deze intentie Lights on
Klik op de nieuwe pagina op "Trainingszinnen toevoegen" en voer het commando in dat uw assistent in dit geval "Turn on the light" moet begrijpen. U kunt een onbeperkt aantal trainingszinnen schrijven die de betekenis van dezelfde intentie overbrengen.
Stap 4: Scroll nu naar beneden en klik op “Reactie toevoegen”. Dit is waar we de assistent vertellen hoe hij moet reageren als deze specifieke intentie wordt geactiveerd. Standaard kunt u hier een tekstreactie invoeren, maar we hebben audio nodig om onze assistent af te spelen, dus klik op het "+" -symbool naast het tabblad "Standaard" en selecteer Google-assistent en klok vervolgens "Reacties toevoegen" en selecteer "Eenvoudige reacties" ”. Typ deze code in het eenvoudige antwoordtekstvak
Het is een eenvoudige SSML-code om audio van een URL af te spelen en vervolgens "Lights Turned ON" te zeggen. Deze audio moet de gecodeerde audio van Chirp zijn en deze moet jovo.tech worden geüpload.
Gecodeerde audio ophalen van chirp:
Deze gecodeerde audio kan worden verkregen via de Chrip Android-applicatie. Installeer de app en typ het te coderen bericht in en klik op de knop Verzenden om naar de gecodeerde audio te luisteren
Hier heb ik "Lights on" getypt. Evenzo kunt u elk bericht typen en op de knop Verzenden klikken om de gecodeerde audio te controleren. We kunnen dit audiobestand (mp3-formaat) vervolgens opslaan met elke geluidsrecorder. Ik heb twee van dergelijke audiobestanden opgenomen met het gecodeerde bericht "Lights on" en "Lights off". U kunt ze hier downloaden als u tijd wilt besparen. Zodra u klaar bent met de audiobestanden, gaat u naar de jovo tech audio-omzetter om uw mp3-bestanden te uploaden en er een link voor te krijgen.
Merk op dat dit een testtool is en dat uw bestanden slechts 24 uur live zullen zijn. Als je het nodig hebt om lang te werken, moet je je eigen webserver gebruiken, zoals Google Fire-Base, zoals dit voorbeeld van een firebase Google Assistant-interface. Nu je de link hebt, zou je reactie op de dialoogstroom er ongeveer zo uit moeten zien
Zorg ervoor dat u op opslaan klikt om deze intentie op te slaan.
Stap 5: Creëer op dezelfde manier een nieuwe intentie, schakel de lichten uit. Voer opnieuw uw trainingszin en ook uw antwoord in. Voeg deze keer de link van het andere audiobestand in en vraag het om Lichten uit te zeggen zoals hieronder weergegeven.
Zorg er opnieuw voor dat u dit ook opslaat.
Stap 6: Klik nu aan de linkerkant op het tabblad Integraties en selecteer Google-assistent. Dit helpt ons de applicatie te testen met Google Assistant. Selecteer de Google Assistant-applicatie en klik op "TEST"
Stap 7: Dit duurt even, waarna u het testscherm krijgt zoals hieronder weergegeven. In de linkerhoek ziet u een tekstvak waarin u uw testopdrachten kunt typen en kunt zien hoe de toepassing reageert. Aan de linkerkant van het scherm vindt u ook enkele toepassingen voor foutopsporing.
Als je "zet leeslampjes aan" typt, zou het de piep toon moeten spelen en moeten zeggen dat lichten aan zijn, hetzelfde zou ook moeten voor "Zet leeslampjes uit". Zodra het hier werkt, kunt u het proberen op elk Google Assistant-apparaat, zoals uw telefoon of Google Home Mini, die is verbonden met uw Gmail-ID. Zeg gewoon praat met mijn test-app en begin met het bedienen van het apparaat.
Uw Arduino Nano voorbereiden 33
Wat de hardware betreft, is het vrij eenvoudig geworden dankzij het Arduino Nano 33 BLE Sense-bord. Omdat het bord een ingebouwde microfoon heeft en chirp-bibliotheken klaar om rechtstreeks vanuit je Arduino IDE te worden ingezet. Als je helemaal nieuw bent op dit bord, is het raadzaam dit artikel "Aan de slag met Arduino Nano 33 BLE" te lezen om het te begrijpen