- Nov pristop za naprave za avtomatizacijo doma, ki uporabljajo Chirp
- Predvajanje zvočnega zvoka s Pomočnikom Google
- Priprava vašega Arduino Nano 33
Pred kratkim sem se navdušil nad vsemi novimi izdelki za domačo avtomatizacijo na trgu, zato sem kupil Google Home Mini in nekaj drugih pametnih naprav za nadzor luči, ventilatorjev, AC in še česa. Čeprav je delovalo in je bilo vse zabavno za uporabo, me je nekoliko mučilo, da so se vse te brezžične povezave dogajale okoli mene. Samo v moji spalnici je bilo pet pametnih naprav, vključno z mojim prenosnikom in telefonom, bo skupaj 7 brezžičnih naprav okoli mene ostalo vedno povezanih z mojim usmerjevalnikom. Skrbelo me je, da bi lahko vsi ti signali Wi-Fi škodovali našemu zdravju, in ta raziskovalni članek o Sciencedirectu mi je dodal dokaze. Takrat sem začel razmišljati o alternativni rešitvi brezžične avtomatizacije doma, ki za delovanje ne potrebuje Wi-Fi / Bluetooth.
Nov pristop za naprave za avtomatizacijo doma, ki uporabljajo Chirp
Že prej smo zgradili projekt IR za daljinsko vodeno avtomatizacijo, ki lahko deluje brez Wi-Fi ali Bluetootha, vendar ni več kul in želel sem upravljati naprave z glasom. Iskal sem tehniko, s katero lahko Google home mini neposredno komunicira s pametnimi napravami, zato v bistvu potrebujem način brezžične komunikacije Machine to Machine brez uporabe Wi-Fi ali BLE.
Takrat sem se spomnil intervjuja z Danom Jonesom, tehničnim direktorjem Chirpa, v katerem je Chirp predstavil kot »Chirp je način prenosa informacij z uporabo zvočnih valov. V nasprotju z Wi-Fi ali Bluetooth, ki uporablja radijske frekvence, Chirp kodira podatke v tonih, ki jih je mogoče predvajati (prenašati) s katerim koli računalniškim zvočnikom in sprejeti prek katerega koli računalniškega mikrofona, ne da bi morali imeti dodatno strojno opremo, kot so RF čipi. To omogoča, da se Chirp uporablja na vseh potrošniških napravah, ki imajo zvočnik in mikrofon, na primer mobilni telefon, prenosni računalnik, PA-sistem itd., In lahko prenaša informacije tudi prek YouTubovega toka ali televizijske oddaje. " To pomeni, da lahko z Googlovim domačim mini-jem neposredno (s čirkanjem) pogovorimo s svojo pametno napravo.Vse, kar potrebujemo, je mikrofon in procesor v teh pametnih napravah za dekodiranje zvočnih podatkov, da bi lahko izvedli zahtevana dejanja. Chirp je prav tako nedavno napovedal vključitev prekomernega prenosa podatkov za Arduino, kar pomeni, da bi morali imeti novo Arduino nano 33 BLE smiselno ploščo za zagon Chirp SDK za naš projekt.
V tem projektu bomo torej zgradili napravo za zvočno avtomatizacijo doma, v kateri bomo lahko nadzirali to pametno napravo brez uporabe kakršnih koli brezžičnih povezav, kot sta Wi-Fi ali Bluetooth. Uporabili bomo akcije za Google in Dialogflow za izdelavo preskusne aplikacije za našega pomočnika Google, da bo predvajala kodiran zvok (Chirp). Ta zvok bo nato zajela senzorska plošča Arduino nano BLE, ki izvaja program Chirp Arduino, na podlagi sporočila, kodiranega v podatkih, na katerih lahko plošča Arduino izvede katero koli dejanje, kot je preklapljanje AC obremenitve, ki nadzoruje RGB LED, itd. veliko, vendar je razmeroma preprosto in celotna navodila so navedena spodaj. Začnimo torej.
Predvajanje zvočnega zvoka s Pomočnikom Google
Najlažji način za gradnjo glasovno vodene avtomatizacije doma je uporaba IFTTT z Google Assistantom za avtomatizacijo doma. Toda v času pisanja tega članka Chrip nima programčka na IFTTT, zato bomo uporabili izvorno platformo Actions for Google. Obstaja velika verjetnost, da je Chirp v času branja tega članka zagotovil svoj programček v IFTTT, zato to preverite. Če ne, nadaljujmo z Action for Google za izdelavo aplikacije Google Assistant.
1. korak: Odprite konzolo Dialogflow. Morda se boste morali prijaviti, če tega še niste storili. Nato kliknite na "Ustvari novega agenta", kot je prikazano spodaj
2. korak: Dajte svojemu novemu agentu ime in kliknite na ustvari. Svojega agenta sem imenoval kot “Circuitdgest_Automation”
3. korak: Zdaj boste preusmerjeni na razdelek o nameri. Tu usposabljate novega agenta za različne namene. V našem primeru bomo napisali dva namena, eden je prižgati luč, drugi pa ugasniti luč. Na podlagi aplikacij in ukazov, ki jih mora razumeti vaš agent, lahko napišete poljubno število namer. Privzeto boste imeli namen dobrodošlice, toda ustvarimo novega, da prižgemo luč, tako da kliknemo na »Ustvari namen« in temu namenu bom dal ime Lučke
Na novi strani kliknite »Dodaj vadbene fraze« in vnesite ukaz, ki ga mora razumeti vaš pomočnik, v tem primeru »Vklopite luč«. Lahko napišete poljubno število stavkov za usposabljanje, ki izražajo pomen istega namena.
4. korak: Zdaj se pomaknite navzdol in kliknite na "Dodaj odgovor". Tu asistentu povemo, kako naj odgovori, če se sproži ta namen. Tu lahko privzeto vnesete besedilni odziv, toda za predvajanje našega asistenta potrebujemo zvok, zato kliknite simbol »+« blizu zavihka »Privzeto«, izberite Googlovega pomočnika in nato uro »Dodaj odgovore« in izberite »Preprosti odgovori« ". V tej kodi vnesite preprosto besedilno polje z odzivom
To je preprosta koda SSML za predvajanje zvoka z URL-ja in nato izgovoriti »Lights Turned ON«. Ta zvok mora biti kodiran zvok iz Chirpa in ga je treba naložiti jovo.tech.
Pridobivanje kodiranega zvoka iz čirpa:
Ta kodirani zvok lahko dobite v aplikaciji Chrip Android. Namestite aplikacijo in vnesite sporočilo, ki ga želite kodirati, in kliknite gumb Pošlji, da poslušate kodiran zvok
Tu sem vtipkal »Lučke vklopljene«. Podobno lahko vnesete poljubno sporočilo in kliknete gumb Pošlji, da preverite kodiran zvok. Nato lahko to zvočno datoteko (format mp3) shranimo s katerim koli snemalnikom zvoka. Posnel sem dve takšni zvočni datoteki s kodiranim sporočilom »Lights on« in »Lights off«. Če želite prihraniti čas, jih lahko prenesete od tukaj. Ko ste pripravljeni z zvočnimi datotekami, pojdite na jovo tech audio converter, da naložite svoje datoteke mp3 in dobite povezavo do njih.
Upoštevajte, da je to orodje za preizkušanje in bodo vaše datoteke živele samo 24 ur. Če potrebujete, da deluje dlje časa, morate uporabiti lasten spletni strežnik, kot je Google fire-base, kot je ta vzorec vmesnika Googlovega pomočnika firebase. Zdaj, ko imate povezavo, bi moral biti vaš odgovor na pogovorno okno videti približno tako
Če želite shraniti to namero, kliknite »Shrani«.
5. korak: Podobno ustvarite še en nov namen, da izklopite luči. Spet vnesite besedno zvezo za vadbo in tudi odgovor. Tokrat vstavite povezavo do druge zvočne datoteke in jo prosite, naj izgovori Lučke izklopljene, kot je prikazano spodaj.
Še enkrat poskrbite, da boste shranili tudi to.
6. korak: Zdaj na levi strani kliknite jeziček za integracije in izberite Googlov pomočnik. To nam bo pomagalo preizkusiti aplikacijo z Googlovim asistentom. Izberite aplikacijo Google Assistant in kliknite »TEST«
7. korak: To bo trajalo nekaj časa, nato pa boste dobili testni zaslon, kot je prikazano spodaj. V levem kotu lahko vidite besedilno polje, kamor lahko vnesete preskusne ukaze, in vidite, kako se aplikacija odziva. Na levi strani zaslona najdete tudi nekaj programov za odpravljanje napak.
Ko vtipkate »vklopi bralne lučke«, naj zazvoni žvrgolenje in izgovori, da so luči vklopljene, podobno kot pri »Izklopi bralne lučke«. Ko tukaj deluje, ga lahko preizkusite v kateri koli napravi Google asistent, kot je vaš telefon ali google home mini, ki je povezan z vašim ID-jem v Gmailu. Samo recite, da se pogovorite z mojo testno aplikacijo in začnite nadzorovati napravo.
Priprava vašega Arduino Nano 33
Zdaj na strojni strani je postalo precej enostavno zaradi plošče Arduino Nano 33 BLE Sense. Ker ima plošča vgrajen mikrofon in knjižnice, ki so pripravljene za namestitev neposredno iz vašega Arduino IDE. Če ste popolnoma novi na tej plošči, je priporočljivo, da preberete ta članek »Kako začeti z Arduino Nano 33 BLE«, da boste razumeli