Inhoudsopgave:

Huisverlichting bedienen met Google Assistant Arduino gebruiken - Ajarnpa
Huisverlichting bedienen met Google Assistant Arduino gebruiken - Ajarnpa

Video: Huisverlichting bedienen met Google Assistant Arduino gebruiken - Ajarnpa

Video: Huisverlichting bedienen met Google Assistant Arduino gebruiken - Ajarnpa
Video: Kan ik mijn Philips Hue lampen bedienen via Google Home of Amazon Alexa? 2024, November
Anonim
Bedien huisverlichting met Google Assistant met Arduino
Bedien huisverlichting met Google Assistant met Arduino
Bedien huisverlichting met Google Assistant met Arduino
Bedien huisverlichting met Google Assistant met Arduino
Bedien huisverlichting met Google Assistant met Arduino
Bedien huisverlichting met Google Assistant met Arduino
Bedien huisverlichting met Google Assistant met Arduino
Bedien huisverlichting met Google Assistant met Arduino

(Update op 22 aug 2020: deze instructable is 2 jaar oud en is afhankelijk van apps van derden. Elke wijziging aan hun kant kan ervoor zorgen dat dit project niet werkt. Het kan nu wel of niet werken, maar je kunt het volgen als een referentie en wijzig deze dienovereenkomstig.)

Hallo! Dit is mijn eerste Instructable waarin ik ga laten zien hoe we de lichten van onze huizen kunnen bedienen met onze stem via Google Voice Assistant met behulp van Arduino. Klinkt het niet cool om de verlichting in huis aan en uit te zetten door gewoon de Google-stemassistent een opdracht te geven, die we waarschijnlijk allemaal op onze smartphones hebben.

Dus laten we aan de slag met de Instructable. Deze Instrucable is niet beperkt tot alleen lampen, maar u kunt elk apparaat in uw huis bedienen. We zullen in dit project een "relaismodule" gebruiken omdat we te maken hebben met wisselstroom.

Opmerking: zorg eerst voor uw veiligheid en ga op eigen risico te werk, aangezien wisselstroom in onze huizen werkt op een hoogspanning van 100 V tot 250 V (verschilt voor verschillende landen).

Stap 1: Vereisten

Het is handig als u aan de volgende vereisten voldoet voordat u aan de slag gaat:

1) IFTTT-account (u kunt zich registreren voor een gratis account op hun website of app)

Opmerking: Registreer met dezelfde e-mail-ID die is gekoppeld aan Google Assistant

2) Blynk-account (u kunt zich registreren voor een gratis account door de blynk-app te downloaden)

3) Android-apparaat met Google Assistant (met Marshmallow 6.0 of hoger, de mijne is 6.0)

Opmerking: IOS-apparaat kan worden gebruikt met Google Assistant erin, maar ik heb het persoonlijk niet getest.

4) Windows-pc met 'Arduino IDE' geïnstalleerd

Zie de lijst met vereiste componenten in de volgende stap.

Stap 2: Benodigde componenten (met snelle specificaties)

Benodigde componenten (met snelle specificaties)
Benodigde componenten (met snelle specificaties)
Benodigde componenten (met snelle specificaties)
Benodigde componenten (met snelle specificaties)
Benodigde componenten (met snelle specificaties)
Benodigde componenten (met snelle specificaties)

Lijst met benodigde componenten:

1) Arduino Uno R3 microcontrollerkaart (Aantal: 1)

2) ESP8266 ESP-01 WiFi-module (Aantal: 1)

3) Relaismodule (Enkelkanaals 5V) (Aantal: 1)

4) Verbindingsdraden (Aantal: Vanaf vereiste)

5) AC lamp, gloeilamp socket en elektrische draden (Hoeveelheid: 1 lamp, 1 gloeilamp socket, Elektrische draad van lengte zoals vereist.)

1) Arduino Uno R3-microcontrollerkaart: U bent waarschijnlijk bekend met Arduino-microcontrollers. Voor degenen die dat niet zijn, u kunt ervan uitgaan dat het een kerncomponent is in de meeste van uw IoT-projecten (Internet of Things). In dit project heb ik "Arduino Uno" gebruikt. Op ATMega328 gebaseerde MCU. Het heeft 14 digitale I/O-pinnen (waarvan 6 pinnen kunnen worden gebruikt voor PWM-uitvoer), 6 analoge invoerpinnen, werkt op 5V en ingangsspanningsbereiken van 7V-20V, 20 MHz kloksnelheid met 32 kb flash-geheugen.

We kunnen er verschillende sensoren op aansluiten en onze logica in een code zetten om de vereiste functionaliteit uit sensoren te halen en de uiteindelijke schets uploaden naar Arduino via 'Arduino IDE'.

2) ESP8266 ESP-01 WiFi-module: ESP8266 ESP-01 is de meest betaalbare WiFi-module en we gebruiken deze om onze microcontroller op een WiFi-netwerk aan te sluiten en kleine TCP/IP-verbindingen te maken. Het heeft 8 pinnen op de chip die Ground, TX, GPIO-2 (General purpose I/O), CH_EN (Chip Enable), GPIO-0, Reset, RX, Vcc zijn. Het werkt op +3.3v voeding.

3) Relaismodule: ik heb hier een enkelkanaals 5V-relaismodule. Het heeft 3 pinnen voor verbinding met Arduino en 3 poorten om apparaten aan te sluiten. Vcc-pin wordt gebruikt om het relais van stroom te voorzien met 5V, een aardingspin, IN-pin voor digitale invoer. 3 poorten zijn COM (gemeenschappelijk), NO (normaal open), NC (normaal gesloten) om de apparaten (bijv. gloeilamp) van stroom te voorzien.

4) Jumper-draden: voor verbinding met Arduino. U kunt een set van man-naar-man, vrouw-naar-vrouw, man-vrouw jumperdraden kopen bij Amazon of een andere marktplaats naar keuze.

5) AC-lamp, gloeilampfitting en elektrische draden: voor aansluiting van socket met relaismodule. U kunt deze artikelen gemakkelijk vinden in uw huis of winkels in de buurt.

Stap 3: Blynk-app configureren

1) Open en log in op de Blynk-app.

Je krijgt 2000 energiebalans die zal worden gebruikt om widgets toe te voegen. Deze energie is hernieuwbaar bij het verwijderen van een widget, maar je krijgt het niet terug als je het deelt. Gebruik het dus verstandig.

2) Maak 'Nieuw Project' en noem het zoals je wilt.

3) Kies 'Arduino Uno' uit de apparatenlijst en Verbindingstype als 'WiFi', kies je thema en klik op 'Maken'.

4) U ontvangt een e-mail met uw geautoriseerde token. Noteer het gerust.

5) Klik nu op + teken bovenaan en voeg een knop toe.

6) Klik op de knop en stel de uitvoerpin in op 'Digitaal' en 'D7'. Stel pin-waarden respectievelijk in op 1 en 0. (Vraag kan hier in je hoofd opkomen waarom ik het heb ingesteld op (1, 0) niet (0, 1)? Nou, dat heb ik uitgelegd in stap 6 van dit Instructable). Zet de schakelmodus op 'Push' en geef alle labels de gewenste naam.

7) Klik opnieuw op + teken en voeg Tekstinvoer toe.

8) Klik op Tekstinvoer en stel 'Output' pin in op V0, 'Character limit' op 5 en u kunt andere velden een naam geven zoals u wilt.

9) Open de opdrachtprompt op uw pc met actieve internetverbinding en typ de volgende opdracht:

ping blynk-cloud.com

Noteer het IP-adres dat er ongeveer zo uitziet

188.166.206.43

Dit is het IP-adres van de blynk-server voor uw land.

Ga nu naar de volgende stap voor het maken van IFTTT-applet.

Stap 4: IFTTT-applet maken

Mogelijk hebt u uw account al aangemaakt op IFTTT.com of op de IFTTT-app. Zo niet, maak het dan aan.

Stappen voor het maken van IFTTT-applet voor Google Assistant:

1) Volg de tutorial vermeld in onderstaande link samen met de stappen die ik hier noem:

Hoe IFTTT-applet maken?

2) Trigger maken:

i) Zoek naar Google Assistent in de zoekbalk tijdens het maken van een trigger.

ii) Selecteer 'Zeg een zin met een tekstingrediënt'

iii) U kunt drie manieren invoeren om uw zin uit te spreken. Voer uw zinnen in met tekstingrediënt. Ik heb bijvoorbeeld 'turn $ lights' ingevoerd. Hier, wat ik ook zal zeggen in plaats van $ zal het tekstingrediënt zijn. Voer ook de zin in die je wilt beluisteren via je Google Assistent.

iv) Selecteer een taal en klik op Creëer trigger.

3) Kies Actie:

i) Zoek naar webhooks in de zoekbalk terwijl u actie kiest.

ii) Klik op 'Maak een webverzoek'.

iii) Plaats het volgende in het URL-veld:

"ip-adres van vorige stap"/"Uw auth-token"/pin/"Pin Aantal blynk-tekstinvoer"

Voer uw IP-adres, auth-token en pincode in (bijv. V0 of welk pinnummer dan ook dat u instelt voor tekstinvoer in de blynk-app) zonder de dubbele aanhalingstekens.

iv) Zet 'Methode' op PUT, 'Content type' op application/json en kopieer het volgende naar 'Body'

["{{TextField}}"]

4) Klik op Voltooien en ga naar de volgende stap.

Stap 5: Werken

Werken
Werken

De werking is vrij eenvoudig, zoals je op de afbeelding kunt zien, wanneer we "OK Google" zeggen en de Google Assistent de opdracht geven "lichten aan", wordt de IFTTT-applet geactiveerd en wordt "aan" als tekstingrediënt doorgegeven aan blynk app. Blynk-app ontvangt het in het invoertekstveld en we krijgen het in Arduino-code met behulp van de blynk-bibliotheekmethode param.asStr(); Wanneer "aan" wordt ontvangen, wordt de digitale pin D7 van het arduino-bord ingesteld op 0 en worden de lichten ingeschakeld en wanneer "uit" wordt ontvangen, wordt de digitale pin D7 van het arduino-bord ingesteld op 1 en worden de lichten uitgeschakeld (weer dezelfde verwarring van stap 3 …. goed! Maak je geen zorgen, ik heb het in de volgende stap uitgelegd.)

Stap 6: Aansluitingen

Verbindingen
Verbindingen
Verbindingen
Verbindingen

De vraag is misschien in je opgekomen: "waarom heb ik pin 7 van het Arduino-bord op 0 gezet voor hoge invoer en 1 voor lage invoer van relaismodule?"

Het antwoord is eenvoudig omdat de relaismodule die ik gebruik, laag actief is, wat betekent dat het relais actief is wanneer de ingang 0 is en inactief wanneer de ingang 1 is. Maar waarom is het zo? Dit komt omdat wanneer Arduino opstart, alle uitgangspinnen van Arduino standaard op hoog zijn ingesteld, waardoor het relais bij het starten actief wordt. Dus om het relais in het begin op inactief te zetten, wordt het laag actief gemaakt.

Laten we nu eens kijken naar de verbindingen.

Ik heb de verbindingen gemaakt tussen pinnen van Arduino, ESP8266 en relaismodule in de bovenstaande afbeelding. Ik heb ook de onderstaande verbanden genoemd omdat ik weet hoe geweldig mijn handschrift is:(Pindiagram van ESP8266 ESP-01 wordt getoond in stap 2.

Verbindingen tussen Arduino, ESP8266 en relaismodule:

Arduino ESP/Relais

Pin 7 ------------------------------------------------ ------- IN van relais

Pin 2 ------------------------------------------------ -- RX-pin van ESP

Pin 3 ------------------------------------------------ --TX-pin van ESP

RESET-------------------------------------------- RESET-pen van ESP

GND 1 -------------------------------------------- Aardingspen van ESP

GND 2 -------------------------------------------- Massapen van relais

+3.3V ----------------------------------------------- ------- Vcc van ESP

+5V ------------------------------------------------ ------ Vcc van relais

Aansluitingen tussen tweede uiteinde van relaismodule en AC-verlichting:

GEEN (normaal open) van relais -------------------- elk uiteinde van de lampfitting

COM (gemeenschappelijk) van relais ------------------------- +ve einde van AC-voeding

resterende einde van AC-voeding ---------------------- resterende einde van lampfitting.

NC (normaal gesloten)--------- laten zoals het is.

(Raadpleeg het bovenstaande diagram voor een beter begrip)

Stap 7: Code uploaden en testen met Google Assistant

1) Open 'Arduino IDE' op uw pc

2) Open onderstaande schets in IDE

3) Vervang auth token, WiFi ssid en uw wachtwoord door uw inloggegevens.

4) Upload de code naar het Arduino-bord. (Het is altijd het beste om de code te uploaden naar een inactief Arduino-bord en sensoren aan te sluiten na succesvol uploaden)

5) Open de Blynk-app en zet je wifi-hotspot aan.

6) Klik op de afspeelknop in de rechterbovenhoek van de Blynk-app om het project uit te voeren.

7) U krijgt bericht zodra de verbinding tot stand is gebracht.

8) Nu is het tijd voor het echte werk. Zeg "OK Google" in je telefoon, wacht tot de Google Assistent is geopend en spreek nu je zin als "lichten aan", binnen enkele seconden zal de Google Assistent op je reageren met de zin die je hebt ingevoerd om te worden beluisterd door de Google Assistent in IFTTT, zoals zoals in mijn geval is "lichten ingeschakeld"

9) Zeg "doof lichten" om ze uit te schakelen. Je kunt je verlichting ook bedienen via Button in de Blynk-app.

Gefeliciteerd! Je lichten werken nu met je stem.

Aanbevolen: