- Une nouvelle approche pour les appareils domotiques utilisant Chirp
- Lecture de Chirp Audio avec l'Assistant Google
- Préparation de votre Arduino Nano 33
Récemment, j'ai été intrigué par tous les nouveaux produits domotiques sur le marché et j'ai donc acheté un Google Home Mini et quelques autres appareils intelligents pour contrôler les lumières, les ventilateurs, la climatisation, etc. Bien que cela ait fonctionné et que tout soit amusant à utiliser, j'ai été un peu troublé par le fait que toutes ces connectivités sans fil se produisent autour de moi. Ma chambre à elle seule avait 5 appareils intelligents, et y compris mon ordinateur portable et mon téléphone, ce sera un total de 7 appareils sans fil autour de moi qui resteront toujours connectés à mon routeur. J'avais peur que tous ces signaux Wi-Fi puissent être mauvais pour notre santé et ce document de recherche sur Scienceirect a ajouté des preuves à mes pensées. C'est à ce moment-là que j'ai commencé à réfléchir à une solution alternative de domotique sans fil qui n'a pas besoin de Wi-Fi / Bluetooth pour fonctionner.
Une nouvelle approche pour les appareils domotiques utilisant Chirp
Nous avons construit un projet de domotique télécommandé IR plus tôt qui peut fonctionner sans Wi-Fi ou Bluetooth, mais ce n'est plus cool et je voulais contrôler les appareils avec la voix. Je cherchais une technique pour que le Google home mini communique directement avec les appareils intelligents, j'ai donc besoin d'une méthode de communication sans fil Machine to Machine sans utiliser le Wi-Fi ou le BLE.
C'est à ce moment-là que je me suis souvenu de l'entrevue avec Dan Jones, CTO de Chirp dans laquelle il a présenté Chirp comme «Chirp est un moyen de transmettre des informations à l'aide d'ondes sonores. Contrairement au Wi-Fi ou au Bluetooth qui utilise les fréquences radio, Chirp encode les données dans des tonalités qui peuvent être lues (transmises) à l'aide de n'importe quel haut-parleur d'ordinateur et reçues via n'importe quel microphone d'ordinateur sans avoir besoin de matériel supplémentaire comme des puces RF. Cela permet d'utiliser Chirp sur n'importe quel appareil grand public doté d'un haut-parleur et d'un microphone, comme les téléphones mobiles, les ordinateurs portables, les systèmes de sonorisation, etc. et peut transmettre des informations même via un flux YouTube ou une émission télévisée. " Cela signifie que nous pouvons utiliser notre Google home mini pour parler directement (en utilisant le chirp) à notre appareil intelligent.Tout ce dont nous avons besoin est un microphone et un processeur à l'intérieur de ces appareils intelligents pour décoder les données audio chirp pour effectuer les actions requises. Chirp a également récemment annoncé l'intégration de données sur son pour Arduino, cela signifie que nous devrions être en mesure d'utiliser la nouvelle carte de détection Arduino nano 33 BLE pour exécuter Chirp SDK pour notre projet.
Donc, dans ce projet, nous allons construire un appareil de domotique acoustique dans lequel nous pourrons contrôler cet appareil intelligent sans utiliser de connexions sans fil comme le Wi-Fi ou Bluetooth. Nous utiliserons Actions pour Google et Dialogflow pour créer une application de test pour notre Assistant Google afin de lui faire lire de l'audio encodé (Chirp). Cet audio sera ensuite capturé par la carte de détection Arduino nano BLE exécutant le programme Chirp Arduino, en fonction du message codé dans les données, la carte Arduino pourrait effectuer n'importe quelle action comme basculer une charge CA contrôlant la LED RVB, etc. beaucoup, mais c'est relativement simple et les instructions complètes sont données ci-dessous. Alors, commençons.
Lecture de Chirp Audio avec l'Assistant Google
Le moyen le plus simple de créer une domotique à commande vocale consiste à utiliser IFTTT avec Google Assistant pour la domotique. Mais, au moment de la rédaction de cet article, Chrip n'a pas d'applet sur IFTTT, nous utiliserons donc la plate-forme native Actions pour Google. Il y a de fortes chances que Chirp ait fourni sa propre applet dans IFTTT au moment où vous lisez cet article, alors vérifiez-le. Sinon, procédons à Actions pour Google pour créer une application Assistant Google.
Étape 1: ouvrez la console Dialogflow. Vous devrez peut-être vous inscrire si vous ne l'avez pas encore fait. Cliquez ensuite sur «Créer un nouvel agent» comme indiqué ci-dessous
Étape 2: Donnez un nom à votre nouvel agent puis cliquez sur créer. J'ai nommé mon agent "Circuitdgest_Automation"
Étape 3: Vous serez maintenant redirigé vers la section des intentions. C'est là que vous formez votre nouvel agent à diverses fins. Dans notre cas, nous écrirons deux intentions, l'une est d'allumer la lumière et l'autre d'éteindre la lumière. Vous pouvez écrire un nombre illimité d'intentions en fonction des applications et des commandes qui doivent être comprises par votre agent. Par défaut, vous aurez l'intention de bienvenue, mais créons-en une nouvelle pour allumer la lumière en cliquant sur «Créer une intention» et je nommerai cette intention Lumières activées
Dans la nouvelle page, cliquez sur «Ajouter des phrases d'entraînement» et entrez la commande que votre assistant doit comprendre dans ce cas «Allumez la lumière». Vous pouvez écrire n'importe quel nombre de phrases d'entraînement qui transmettent la signification de la même intention.
Étape 4: Faites maintenant défiler vers le bas et cliquez sur «Ajouter une réponse». C'est ici que nous indiquons à l'assistant comment répondre si cette intention particulière est déclenchée. Par défaut, vous pouvez saisir une réponse textuelle ici, mais nous avons besoin de l'audio pour lire notre assistant, cliquez donc sur le symbole «+» près de l'onglet «Par défaut» et sélectionnez l'assistant Google, puis horloge «Ajouter des réponses» et sélectionnez «Réponses simples ». À l'intérieur de la zone de texte de réponse simple, saisissez ce code
C'est un simple code SSML pour lire l'audio à partir d'une URL, puis dire «Lumières allumées». Cet audio doit être l'audio encodé de Chirp et il doit être téléchargé sur jovo.tech.
Obtenir de l'audio encodé à partir de chirp:
Cet audio encodé peut être obtenu à partir de l'application Chrip Android. Installez l'application et tapez le message à encoder et cliquez sur le bouton Envoyer pour écouter l'audio encodé
Ici, j'ai tapé «Lumières allumées». De même, vous pouvez taper n'importe quel message et cliquer sur le bouton Envoyer pour vérifier l'audio encodé. Nous pouvons ensuite sauvegarder ce fichier audio (format mp3) à l'aide de n'importe quel enregistreur de son. J'ai enregistré deux de ces fichiers audio avec le message codé «Lights on» et «Lights off». Vous pouvez les télécharger ici si vous souhaitez gagner du temps. Une fois que vous êtes prêt avec les fichiers audio, accédez au convertisseur audio jovo tech pour télécharger vos fichiers mp3 et obtenir un lien pour ceux-ci.
Notez qu'il s'agit d'un outil de test et que vos fichiers ne seront en direct que pendant 24 heures. Si vous en avez besoin pour fonctionner pendant une longue période, vous devez utiliser votre propre serveur Web comme Google Fire-Base comme cet exemple d'interface de l'assistant Google Firebase. Maintenant que vous avez le lien, votre réponse sur le flux de dialogue devrait ressembler à ceci
Assurez-vous de cliquer sur Enregistrer pour enregistrer cette intention.
Étape 5: De même, créez une autre intention d'éteindre les lumières. Entrez à nouveau votre phrase d'entraînement et également votre réponse. Cette fois, insérez le lien de l'autre fichier audio et demandez-lui de dire Lumières éteintes comme indiqué ci-dessous.
Encore une fois, assurez-vous de sauvegarder cela également.
Étape 6: Maintenant, sur le côté gauche, cliquez sur l'onglet intégrations et sélectionnez Assistant Google Cela nous aidera à tester l'application à l'aide de l'assistant Google. Sélectionnez l'application Assistant Google et cliquez sur "TEST"
Étape 7: Cela prendra un certain temps, après quoi vous obtiendrez l'écran de test comme indiqué ci-dessous. Dans le coin gauche, vous pouvez voir une zone de texte dans laquelle vous pouvez taper vos commandes de test et voir comment l'application répond. Vous pouvez également trouver des applications de débogage sur le côté gauche de l'écran.
Lorsque vous tapez «allumer les lampes de lecture», il devrait jouer le bip et dire que les lumières sont allumées, de même qu'il devrait aussi pour «éteindre les lampes de lecture». Une fois que cela fonctionne ici, vous pouvez l'essayer sur n'importe quel appareil de l'Assistant Google, comme votre téléphone ou votre google home mini, connecté à votre identifiant Gmail. Dites simplement parler à mon application de test et commencez à contrôler l'appareil.
Préparation de votre Arduino Nano 33
Maintenant, du côté du matériel, les choses sont devenues assez faciles grâce à la carte Arduino Nano 33 BLE Sense. Parce que la carte a un microphone intégré et des bibliothèques de chirp prêtes à être déployées directement à partir de votre IDE Arduino. Si vous êtes complètement nouveau sur cette carte, il est recommandé de lire cet article «Premiers pas avec Arduino Nano 33 BLE» pour comprendre