- En ny metod för hemautomatiseringsenheter med hjälp av Chirp
- Spela Chirp Audio med Google Assistant
- Förbereda din Arduino Nano 33
Nyligen blev jag fascinerad av alla nya hemautomationsprodukter på marknaden och därför köpte jag en Google Home Mini och några andra smarta enheter för att styra lampor, fläktar, växelström och vad inte. Medan det fungerade och allt var roligt att använda blev jag lite orolig över att alla dessa trådlösa anslutningar händer runt omkring mig. Mitt sovrum ensam hade 5 smarta enheter, och inklusive min bärbara dator och telefon kommer det att vara totalt 7 trådlösa enheter runt mig som alltid är anslutna till min router. Jag var orolig för att alla dessa Wi-Fi-signaler kan vara dåliga för vår hälsa och det här forskningsdokumentet om Sciencedirect lade bevis till mina tankar. Det här var när jag började tänka på en alternativ trådlös hemautomationslösning som inte behöver Wi-Fi / Bluetooth för att fungera.
En ny metod för hemautomatiseringsenheter med hjälp av Chirp
Vi har byggt ett IR-fjärrstyrt hemautomationsprojekt tidigare som kan fungera utan Wi-Fi eller Bluetooth, men det är inte längre coolt och jag ville styra enheterna med röst. Jag letade efter en teknik för Google home mini för att kommunicera direkt med smarta enheter, så i princip behöver jag en maskin till maskin trådlös kommunikationsmetod utan att använda Wi-Fi eller BLE.
Det var då jag kom ihåg intervjun med Dan Jones, CTO för Chirp, där han introducerade Chirp som ”Chirp är ett sätt att överföra information med hjälp av ljudvågor. I motsats till Wi-Fi eller Bluetooth som använder radiofrekvenser kodar Chirp data i toner som kan spelas (sändas) med vilken datorhögtalare som helst och tas emot via vilken datormikrofon som helst utan behov av ytterligare hårdvara som RF-chips. Detta gör att Chirp kan användas på alla konsumentenheter som har en högtalare och mikrofon i sig, som mobiltelefoner, bärbara datorer, PA-system, etc. och kan överföra information även via YouTube-ström eller TV-sändning. ” Det betyder att vi kan använda vår Google mini för att prata direkt (med chirp) till vår smarta enhet.Allt vi behöver är en mikrofon och en processor inuti dessa smarta enheter för att avkoda chirp-ljuddata för att utföra nödvändiga åtgärder. Chirp har också nyligen meddelat integrationen av data-över-ljud för Arduino, vilket innebär att vi borde kunna använda den nya Arduino nano 33 BLE-sensorkortet för att köra Chirp SDK för vårt projekt.
Så i det här projektet kommer vi att bygga en akustisk hemautomationsenhet där vi kommer att kunna styra den här smarta enheten utan att använda några trådlösa anslutningar som Wi-Fi eller Bluetooth. Vi kommer att använda Actions for Google och Dialogflow för att bygga en testapplikation för vår Google Assistant för att få den att spela kodat ljud (Chirp). Detta ljud kommer då att fångas upp av Arduino nano BLE sense-kortet som kör Chirp Arduino-programmet, baserat på meddelandet kodat i data som Arduino-kortet kan utföra alla åtgärder som att växla en växelström som styr RGB-lysdioden etc. Det kan låta som mycket, men det är relativt enkelt och de fullständiga instruktionerna ges nedan. Så låt oss komma igång.
Spela Chirp Audio med Google Assistant
Det enklaste sättet att bygga röststyrd hemautomation är att använda IFTTT med Google Assistant for Home Automation. Men när denna artikel skrivs har Chrip inte någon applet på IFTTT, så vi kommer att använda de ursprungliga åtgärderna för Google-plattformen. Det finns en stor chans att Chirp har tillhandahållit sin egen applet i IFTTT när du läser den här artikeln, så kolla in det. Om inte, låt oss fortsätta med åtgärder för Google för att bygga en Google Assistant-applikation.
Steg 1: Öppna Dialogflow-konsolen. Du kan behöva registrera dig om du inte har gjort det ännu. Klicka sedan på "Skapa ny agent" som visas nedan
Steg 2: Ge din nya agent ett namn och klicka sedan på skapa. Jag har utsett min agent till "Circuitdgest_Automation"
Steg 3: Nu kommer du till avsiktsavsnittet. Det är här du tränar din nya agent för olika avsikter. I vårt fall kommer vi att skriva två avsikter, den ena är att tända ljuset och det andra att stänga av ljuset. Du kan skriva valfritt antal avsikter baserat på applikationer och kommandon som måste förstås av din agent. Som standard har du välkomstintentionen, men låt oss skapa en ny för att tända ljuset genom att klicka på "Skapa avsikt" och jag kommer att namnge denna avsikt Tänds
På den nya sidan klickar du på “Lägg till träningsfraser” och anger kommandot som din assistent måste förstå i detta fall “Tänd lampan”. Du kan skriva valfritt antal träningsfraser som förmedlar innebörden av samma avsikt.
Steg 4: Bläddra nu ner och klicka på “Lägg till svar”. Det är här vi berättar för assistenten hur man ska svara tillbaka om just denna avsikt utlöses. Som standard kan du ange textsvar här, men vi behöver ljud för att kunna spelas upp vår assistent, så klicka på "+" -symbolen nära fliken "Standard" och välj Google-assistent och klocka sedan på "Lägg till svar" och välj "Enkla svar" ”. Skriv in den här koden i det enkla svarsfältet
Det är en enkel SSML-kod att spela upp ljud från en URL och sedan säga "Lights Turned ON". Detta ljud ska vara det kodade ljudet från Chirp och det bör laddas upp jovo.tech.
Få kodat ljud från chirp:
Detta kodade ljud kan erhållas från Chrip Android-applikationen. Installera appen och skriv in meddelandet som ska kodas och klicka på Skicka för att lyssna på det kodade ljudet
Här har jag skrivit “Lights on”. På samma sätt kan du skriva valfritt meddelande och klicka på knappen Skicka för att kontrollera det kodade ljudet. Vi kan sedan spara denna ljudfil (mp3-format) med valfri ljudinspelare. Jag har spelat in två sådana ljudfiler med det kodade meddelandet “Lights on” och “Lights off”. Du kan ladda ner dem härifrån om du vill spara tid. När du är redo med ljudfilerna går du till jovo tech audio converter för att ladda upp dina mp3-filer och få en länk till den.
Observera att detta är ett testverktyg och att dina filer bara kommer att vara live i 24 timmar. Om du behöver det för att arbeta länge måste du använda din egen webbserver som Google Fire-base som detta exempel på Firebase-Googles assistentgränssnitt. Nu när du har fått länken ska ditt svar på dialogflödet se ut så här
Se till att du klickar på spara för att spara denna avsikt.
Steg 5: Skapa på liknande sätt en annan ny avsikt att stänga av lamporna. Ange igen din träningsfras och även ditt svar. Den här gången infogar du länken till den andra ljudfilen och ber den säga att lamporna är avstängda enligt bilden nedan.
Se till att du sparar igen också.
Steg 6: Klicka nu på vänster sida på fliken integrationer och välj Google-assistent. Detta hjälper oss att testa applikationen med hjälp av Googles assistent. Välj Google Assistant-applikationen och klicka på “TEST”
Steg 7: Det tar lite tid varefter du får testskärmen enligt nedan. I det vänstra hörnet kan du se en textruta där du kan skriva in dina testkommandon och se hur applikationen svarar. Du kan också hitta några felsökningsapplikationer till vänster på skärmen.
När du skriver “slå på läslampor” ska den spela kvitrtonen och säga att lamporna är tända, liknande bör det också vara för “Stäng av läslampor”. När det fungerar här kan du prova det på valfri Google Assistent-enhet som din telefon eller Google Home Mini som är ansluten till ditt Gmail-ID. Säg bara prata med min testapp och börja styra enheten.
Förbereda din Arduino Nano 33
Nu på hårdvarusidan har det blivit ganska enkelt tack vare Arduino Nano 33 BLE Sense-kortet. Eftersom kortet har en inbyggd mikrofon och chirp-bibliotek redo att distribueras direkt från din Arduino IDE. Om du är helt ny på det här kortet rekommenderas att du läser den här artikeln "Komma igång med Arduino Nano 33 BLE" för att förstå