- Ein neuartiger Ansatz für Heimautomationsgeräte mit Chirp
- Chirp Audio mit Google Assistant abspielen
- Vorbereiten Ihres Arduino Nano 33
Kürzlich war ich fasziniert von all den neuen Home Automation-Produkten auf dem Markt und kaufte daher ein Google Home Mini und einige andere intelligente Geräte zur Steuerung von Lichtern, Lüftern, Wechselstrom und was nicht. Während es funktionierte und es Spaß machte, alles zu benutzen, war ich ein bisschen beunruhigt darüber, dass all diese drahtlosen Verbindungen um mich herum stattfanden. Allein in meinem Schlafzimmer gab es 5 intelligente Geräte, und einschließlich meines Laptops und Telefons werden insgesamt 7 drahtlose Geräte um mich herum immer mit meinem Router verbunden bleiben. Ich befürchtete, dass all diese Wi-Fi-Signale gesundheitsschädlich sein könnten, und dieses Forschungspapier zu Sciencedirect fügte meinen Gedanken Beweise hinzu. Zu diesem Zeitpunkt begann ich über eine alternative drahtlose Hausautomationslösung nachzudenken, für deren Betrieb kein Wi-Fi / Bluetooth erforderlich ist.
Ein neuartiger Ansatz für Heimautomationsgeräte mit Chirp
Wir haben früher ein IR-ferngesteuertes Hausautomationsprojekt erstellt, das ohne Wi-Fi oder Bluetooth funktionieren kann, aber es ist nicht mehr cool und ich wollte die Geräte mit Sprache steuern. Ich suchte nach einer Technik für Google Home Mini, um direkt mit den Smart-Geräten zu kommunizieren. Daher benötige ich im Grunde eine drahtlose Kommunikationsmethode von Maschine zu Maschine, ohne Wi-Fi oder BLE zu verwenden.
Zu diesem Zeitpunkt erinnerte ich mich an das Interview mit Dan Jones, CTO von Chirp, in dem er Chirp vorstellte: „Chirp ist eine Möglichkeit, Informationen mithilfe von Schallwellen zu übertragen. Im Gegensatz zu Wi-Fi oder Bluetooth, das Radiofrequenzen verwendet, codiert Chirp Daten in Tönen, die mit jedem Computerlautsprecher abgespielt (gesendet) und über jedes Computermikrofon empfangen werden können, ohne dass zusätzliche Hardware wie RF-Chips erforderlich ist. Auf diese Weise kann Chirp auf jedem Consumer-Gerät verwendet werden, auf dem sich ein Lautsprecher und ein Mikrofon befinden, z. B. Mobiltelefone, Laptops, PA-Systeme usw., und Informationen können sogar über YouTube-Streams oder Fernsehsendungen übertragen werden. “ Dies bedeutet, dass wir mit unserem Google Home Mini direkt (mit Chirp) mit unserem Smart-Gerät kommunizieren können.Alles, was wir brauchen, ist ein Mikrofon und ein Prozessor in diesen intelligenten Geräten, um die Chirp-Audiodaten zu dekodieren und die erforderlichen Aktionen auszuführen. Chirp hat kürzlich die Integration von Data-over-Sound für Arduino angekündigt. Dies bedeutet, dass wir das neue Arduino nano 33 BLE-Sense-Board verwenden können sollten, um das Chirp SDK für unser Projekt auszuführen.
In diesem Projekt werden wir ein akustisches Hausautomationsgerät bauen, mit dem wir dieses intelligente Gerät steuern können, ohne drahtlose Verbindungen wie Wi-Fi oder Bluetooth zu verwenden. Wir werden Aktionen für Google und Dialogflow verwenden, um eine Testanwendung für unseren Google-Assistenten zu erstellen, mit der codiertes Audio (Chirp) abgespielt werden kann. Dieses Audio wird dann von der Arduino nano BLE-Erfassungskarte aufgenommen, auf der das Chirp Arduino-Programm ausgeführt wird. Auf der Grundlage der in den Daten codierten Nachricht kann die Arduino-Karte Aktionen wie das Umschalten einer Wechselstromlast, die die RGB-LED steuert, usw. ausführen viel, aber es ist relativ einfach und die vollständigen Anweisungen sind unten angegeben. Also lasst uns anfangen.
Chirp Audio mit Google Assistant abspielen
Der einfachste Weg, eine sprachgesteuerte Hausautomation zu erstellen, ist die Verwendung von IFTTT mit Google Assistant für Hausautomation. Zum Zeitpunkt des Schreibens dieses Artikels verfügt Chrip jedoch nicht über ein Applet für IFTTT. Daher verwenden wir die native Actions for Google-Plattform. Es besteht eine gute Chance, dass Chirp zum Zeitpunkt des Lesens dieses Artikels ein eigenes Applet in IFTTT bereitgestellt hat. Schauen Sie sich das an. Wenn nicht, fahren Sie mit Aktionen für Google fort, um eine Google Assistant-Anwendung zu erstellen.
Schritt 1: Öffnen Sie die Dialogflow-Konsole. Möglicherweise müssen Sie sich anmelden, wenn Sie dies noch nicht getan haben. Klicken Sie dann wie unten gezeigt auf "Neuen Agenten erstellen"
Schritt 2: Geben Sie Ihrem neuen Agenten einen Namen und klicken Sie dann auf Erstellen. Ich habe meinen Agenten als "Circuitdgest_Automation" bezeichnet.
Schritt 3: Nun werden Sie zum Abschnitt "Absichten" weitergeleitet. Hier schulen Sie Ihren neuen Agenten für verschiedene Zwecke. In unserem Fall werden wir zwei Absichten schreiben, eine ist das Einschalten des Lichts und die andere das Ausschalten des Lichts. Sie können eine beliebige Anzahl von Absichten basierend auf den Anwendungen und Befehlen schreiben, die von Ihrem Agenten verstanden werden müssen. Standardmäßig haben Sie die Begrüßungsabsicht, aber lassen Sie uns eine neue erstellen, um das Licht einzuschalten, indem Sie auf "Absicht erstellen" klicken, und ich werde diese Absicht benennen
Klicken Sie auf der neuen Seite auf "Trainingssätze hinzufügen" und geben Sie den Befehl ein, den Ihr Assistent in diesem Fall verstehen muss: "Licht einschalten". Sie können eine beliebige Anzahl von Trainingsphrasen schreiben, die die Bedeutung derselben Absicht vermitteln.
Schritt 4: Scrollen Sie nun nach unten und klicken Sie auf "Antwort hinzufügen". Hier teilen wir dem Assistenten mit, wie er reagieren soll, wenn diese bestimmte Absicht ausgelöst wird. Standardmäßig können Sie hier eine Textantwort eingeben, aber für die Wiedergabe unseres Assistenten muss Audio abgespielt werden. Klicken Sie daher auf das Symbol „+“ neben der Registerkarte „Standard“, wählen Sie den Google-Assistenten aus, klicken Sie auf „Antworten hinzufügen“ und wählen Sie „Einfache Antworten“ ”. Geben Sie in das einfache Antworttextfeld diesen Code ein
Es ist ein einfacher SSML-Code, um Audio von einer URL abzuspielen und dann "Lichter eingeschaltet" zu sagen. Dieses Audio sollte das codierte Audio von Chirp sein und es sollte jovo.tech hochgeladen werden.
Codiertes Audio von Chirp erhalten:
Dieses codierte Audio kann von der Chrip Android-Anwendung bezogen werden. Installieren Sie die App, geben Sie die zu codierende Nachricht ein und klicken Sie auf die Schaltfläche Senden, um das codierte Audio anzuhören
Hier habe ich "Lights on" eingegeben. Ebenso können Sie eine beliebige Nachricht eingeben und auf die Schaltfläche Senden klicken, um das codierte Audio zu überprüfen. Wir können diese Audiodatei (MP3-Format) dann mit einem beliebigen Soundrekorder speichern. Ich habe zwei solcher Audiodateien mit der codierten Meldung "Lights on" und "Lights off" aufgenommen. Sie können sie hier herunterladen, wenn Sie Zeit sparen möchten. Sobald Sie mit den Audiodateien fertig sind, gehen Sie zu jovo tech audio converter, um Ihre MP3-Dateien hochzuladen und einen Link dafür zu erhalten.
Beachten Sie, dass dies ein Testtool ist und Ihre Dateien nur 24 Stunden lang aktiv sind. Wenn Sie es für eine lange Zeit benötigen, müssen Sie Ihren eigenen Webserver wie Google Fire-Base wie diese Beispiel-Firebase-Google-Assistentenoberfläche verwenden. Nachdem Sie den Link erhalten haben, sollte Ihre Antwort auf den Dialogfluss ungefähr so aussehen
Stellen Sie sicher, dass Sie auf Speichern klicken, um diese Absicht zu speichern.
Schritt 5: Erstellen Sie auf ähnliche Weise eine neue Absicht und schalten Sie das Licht aus. Geben Sie erneut Ihre Trainingsphrase und auch Ihre Antwort ein. Fügen Sie diesmal den Link der anderen Audiodatei ein und bitten Sie sie zu sagen, dass die Lichter wie unten gezeigt ausgeschaltet sind.
Stellen Sie erneut sicher, dass Sie dies ebenfalls speichern.
Schritt 6: Klicken Sie nun auf der linken Seite auf die Registerkarte Integrationen und wählen Sie Google-Assistent. Auf diese Weise können wir die Anwendung mit dem Google-Assistenten testen. Wählen Sie die Google Assistant-Anwendung aus und klicken Sie auf "TEST".
Schritt 7: Dies dauert einige Zeit. Danach wird der unten gezeigte Testbildschirm angezeigt. In der linken Ecke sehen Sie ein Textfeld, in das Sie Ihre Testbefehle eingeben und sehen können, wie die Anwendung reagiert. Sie finden auch einige Debugging-Anwendungen auf der linken Seite des Bildschirms.
Wenn Sie "Leselampen einschalten" eingeben, sollte der Zwitscherton wiedergegeben und "Lichter eingeschaltet" angezeigt werden, ähnlich wie bei "Leselampen ausschalten". Sobald es hier funktioniert, können Sie es auf jedem Google Assistant-Gerät wie Ihrem Telefon oder Google Home Mini ausprobieren, das mit Ihrer Google Mail-ID verbunden ist. Sprechen Sie einfach mit meiner Test-App und steuern Sie das Gerät.
Vorbereiten Ihres Arduino Nano 33
Auf der Hardwareseite ist es dank des Arduino Nano 33 BLE Sense-Boards jetzt ziemlich einfach geworden. Weil das Board über ein eingebautes Mikrofon und Chirp-Bibliotheken verfügt, die direkt von Ihrer Arduino IDE bereitgestellt werden können. Wenn Sie mit diesem Board noch nicht vertraut sind, wird empfohlen, den Artikel „Erste Schritte mit Arduino Nano 33 BLE“ zu lesen, um dies zu verstehen