- Nový přístup pro domácí automatizační zařízení využívající Chirp
- Přehrávání zvuku Chirp s Google Assistant
- Příprava Arduino Nano 33
Nedávno jsem se zajímal o všechny nové produkty Home Automation na trhu, a proto jsem si koupil Google Home Mini a několik dalších chytrých zařízení pro ovládání světel, ventilátorů, střídavého proudu a co jiného. I když to fungovalo a všechno bylo zábavné používat, trochu mě trápilo, že se kolem mě odehrávala všechna tato bezdrátová připojení. Samotná moje ložnice měla 5 inteligentních zařízení a včetně mého notebooku a telefonu to bude celkem 7 bezdrátových zařízení kolem mě, která zůstanou vždy připojena k mému routeru. Obával jsem se, že všechny tyto signály Wi-Fi mohou být pro naše zdraví nepříznivé, a tento výzkumný dokument o Sciencedirectu přidal důkazy mým myšlenkám. To je, když jsem začal přemýšlet o alternativním řešení bezdrátové domácí automatizace, které k provozu nepotřebuje Wi-Fi / Bluetooth.
Nový přístup pro domácí automatizační zařízení využívající Chirp
Již dříve jsme vytvořili projekt IR dálkově ovládané domácí automatizace, který může fungovat bez Wi-Fi nebo Bluetooth, ale už není v pohodě a chtěl jsem zařízení ovládat hlasem. Hledal jsem techniku pro Google home mini pro přímou komunikaci s chytrými zařízeními, takže v zásadě potřebuji metodu bezdrátové komunikace Machine to Machine bez použití Wi-Fi nebo BLE.
Tehdy jsem si vzpomněl na rozhovor s Danem Jonesem, technickým ředitelem společnosti Chirp, ve kterém představil Chirpa jako „Chirp je způsob přenosu informací pomocí zvukových vln. Na rozdíl od Wi-Fi nebo Bluetooth, které používají rádiové frekvence, Chirp kóduje data v tónech, které lze přehrávat (přenášet) pomocí libovolného počítačového reproduktoru a přijímat pomocí libovolného počítačového mikrofonu, aniž by bylo nutné mít jakýkoli další hardware, například RF čipy. To umožňuje Chirp používat na jakémkoli spotřebitelském zařízení, které má v sobě reproduktor a mikrofon, jako jsou mobilní telefony, notebooky, PA systémy atd. A může přenášet informace i prostřednictvím streamu YouTube nebo televizního vysílání. “ To znamená, že můžeme použít náš Google home mini k přímému hovoru (pomocí chirpu) s naším chytrým zařízením.Vše, co potřebujeme, je mikrofon a procesor uvnitř těchto inteligentních zařízení k dekódování zvukových dat chirp k provedení požadovaných akcí. Společnost Chirp také nedávno oznámila integraci přenosu dat přes Arduino, což znamená, že bychom měli být schopni použít novou desku Arduino nano 33 BLE pro spuštění Chirp SDK pro náš projekt.
V tomto projektu tedy postavíme akustické domácí automatizační zařízení, ve kterém budeme moci ovládat toto chytré zařízení bez použití bezdrátových připojení, jako je Wi-Fi nebo Bluetooth. Budeme používat Akce pro Google a Dialogflow k vytvoření testovací aplikace pro našeho Asistenta Google, aby bylo možné přehrávat kódovaný zvuk (Chirp). Tento zvuk bude poté zachycen deskou Arduino nano BLE, na které běží program Chirp Arduino, na základě zprávy zakódované v datech, které může deska Arduino provádět jakoukoli akci, jako je přepínání zátěže střídavého proudu ovládající RGB LED atd. Může to znít jako hodně, ale je to relativně jednoduché a úplné pokyny jsou uvedeny níže. Pojďme tedy začít.
Přehrávání zvuku Chirp s Google Assistant
Nejjednodušší způsob, jak vytvořit domácí automatizaci ovládanou hlasem, je použití IFTTT s Google Assistant pro domácí automatizaci. V době psaní tohoto článku ale Chrip nemá applet na IFTTT, takže použijeme nativní platformu Akce pro Google. Existuje velká šance, že Chirp poskytl svůj vlastní applet v IFTTT v době, kdy čtete tento článek, takže si to ověřte. Pokud ne, pokračujme v Akce pro Google k vytvoření aplikace Google Assistant.
Krok 1: Otevřete konzolu Dialogflow. Možná jste se možná zaregistrovali, pokud jste tak ještě neučinili. Poté klikněte na „Vytvořit nového agenta“, jak je uvedeno níže
Krok 2: Pojmenujte svého nového agenta a klikněte na vytvořit. Pojmenoval jsem svého agenta jako „Circuitdgest_Automation“
Krok 3: Nyní se dostanete do sekce záměry. To je místo, kde trénujete svého nového agenta pro různé záměry. V našem případě napíšeme dva záměry, jedním je rozsvícení světla a druhým zhasnutí světla. Můžete napsat libovolný počet záměrů na základě aplikací a příkazů, kterým musí váš agent rozumět. Ve výchozím nastavení budete mít uvítací záměr, ale vytvořme nový pro zapnutí světla kliknutím na „Vytvořit záměr“ a pojmenuji tento záměr Světla na
Na nové stránce klikněte na „Přidat tréninkové fráze“ a zadejte příkaz, kterému musí váš asistent rozumět, v tomto případě „Zapněte světlo“. Můžete napsat libovolný počet tréninkových frází, které vyjadřují význam stejného záměru.
Krok 4: Nyní přejděte dolů a klikněte na „Přidat odpověď“. To je místo, kde řekneme asistentovi, jak reagovat zpět, pokud je spuštěn tento konkrétní záměr. Ve výchozím nastavení zde můžete zadat textovou odpověď, ale pro přehrávání našeho asistenta potřebujeme zvuk, proto klikněte na symbol „+“ v blízkosti karty „Výchozí“ a vyberte Asistenta Google a poté hodiny „Přidat odpovědi“ a vyberte „Jednoduché odpovědi “. Do tohoto kódu zadejte textové pole jednoduché odpovědi
Jedná se o jednoduchý kód SSML, který umožňuje přehrávat zvuk z adresy URL a poté říkat „Světla zapnuta“. Tento zvuk by měl být kódovaným zvukem od společnosti Chirp a měl by být nahrán jovo.tech.
Získání kódovaného zvuku z chirp:
Tento kódovaný zvuk lze získat z aplikace Chrip pro Android. Nainstalujte si aplikaci a zadejte zprávu, která se má kódovat, a kliknutím na tlačítko Odeslat poslouchejte kódovaný zvuk
Zde jsem napsal „Světla zapnuta“. Podobně můžete zadat libovolnou zprávu a kliknutím na tlačítko Odeslat zkontrolovat kódovaný zvuk. Tento zvukový soubor (formát mp3) pak můžeme uložit pomocí libovolného záznamníku zvuku. Zaznamenal jsem dva takové zvukové soubory s kódovanou zprávou „Světla zapnuta“ a „Světla vypnuta“. Pokud si chcete ušetřit čas, můžete si je stáhnout zde. Jakmile budete připraveni na zvukové soubory, přejděte na jovo tech audio converter a nahrajte soubory mp3 a získejte na to odkaz.
Toto je testovací nástroj a vaše soubory budou aktivní pouze po dobu 24 hodin. Pokud potřebujete, aby to fungovalo dlouho, musíte použít svůj vlastní webový server, jako je Google Fire-Base, jako je toto ukázkové rozhraní Google Assistant pro Firebase. Nyní, když máte odkaz, by vaše odpověď na tok dialogů měla vypadat asi takto
Nezapomeňte tento záměr uložit kliknutím na Uložit.
Krok 5: Podobně vytvořte další nový záměr a vypněte světla. Opět zadejte svoji tréninkovou frázi a také svoji odpověď. Tentokrát vložte odkaz na další zvukový soubor a požádejte jej, aby řekl Světla vypnutá, jak je znázorněno níže.
Opět nezapomeňte také uložit.
Krok 6: Nyní na levé straně klikněte na kartu integrace a vyberte Asistenta Google. To nám pomůže otestovat aplikaci pomocí Asistenta Google. Vyberte aplikaci Google Assistant a klikněte na „TEST“
Krok 7: Bude to nějakou dobu trvat, poté se zobrazí testovací obrazovka, jak je uvedeno níže. V levém rohu můžete vidět textové pole, kde můžete zadat své testovací příkazy a zjistit, jak aplikace reaguje. Některé ladicí aplikace najdete také na levé straně obrazovky.
Když napíšete „zapnout světla na čtení“, mělo by to hrát cvrlikající tón a říci, že světla jsou zapnutá, podobně jako u „Vypnout světla na čtení“. Jakmile to tady funguje, můžete to zkusit na jakémkoli zařízení Google Assistant, jako je váš telefon nebo Google Home Mini, které je připojeno k vašemu Gmail ID. Stačí říct mluvit s mojí testovací aplikací a začít ovládat zařízení.
Příprava Arduino Nano 33
Nyní po hardwarové stránce se to díky desce Arduino Nano 33 BLE Sense dostalo docela snadno. Protože deska má vestavěný mikrofon a cvrlikající knihovny připravené k nasazení přímo z vašeho Arduino IDE. Pokud jste na této desce úplně noví, doporučujeme vám přečíst si tento článek „Začínáme s Arduino Nano 33 BLE“, abyste pochopili