Sadržaj:

LED kontrola zasnovana na Google pomoćniku pomoću Raspberry Pi: 3 koraka
LED kontrola zasnovana na Google pomoćniku pomoću Raspberry Pi: 3 koraka

Video: LED kontrola zasnovana na Google pomoćniku pomoću Raspberry Pi: 3 koraka

Video: LED kontrola zasnovana na Google pomoćniku pomoću Raspberry Pi: 3 koraka
Video: The Choice is Ours (2016) Official Full Version 2024, Novembar
Anonim
LED kontrola zasnovana na Google pomoćniku pomoću Raspberry Pi
LED kontrola zasnovana na Google pomoćniku pomoću Raspberry Pi
LED kontrola zasnovana na Google pomoćniku pomoću Raspberry Pi
LED kontrola zasnovana na Google pomoćniku pomoću Raspberry Pi
LED kontrola zasnovana na Google pomoćniku pomoću Raspberry Pi
LED kontrola zasnovana na Google pomoćniku pomoću Raspberry Pi
LED kontrola zasnovana na Google pomoćniku pomoću Raspberry Pi
LED kontrola zasnovana na Google pomoćniku pomoću Raspberry Pi

Hej!

U ovom projektu implementirat ćemo kontrolu LED -a zasnovanu na Google Asistentu pomoću Raspberry Pi 4 koristeći HTTP u Pythonu. LED diodu možete zamijeniti žaruljom (očito ne doslovno, između će vam trebati relejni modul) ili bilo kojim drugim kućanskim aparatom, tako da se ovaj projekt može dalje implementirati za potrebe kućne automatizacije.

Supplies

Šta će vam trebati za ovaj projekat:

1. Malina Pi

2. LED

3. Žice kratkospojnika-2 (muški na ženski)

4. Oglasna ploča

5. IFTTT aplikacija (https://play.google.com/store/apps/details?id=com.ifttt.ifttt&hl=en_IN)

6. Thingspeak račun (https://thingspeak.com/)

Neki preduslovi:

1. Osnove umrežavanja-HTTP

2. Python za pristup web podacima

Korak 1: Kreiranje Thingspeak kanala

Kreiranje Thingspeak kanala
Kreiranje Thingspeak kanala
Kreiranje Thingspeak kanala
Kreiranje Thingspeak kanala
Kreiranje Thingspeak kanala
Kreiranje Thingspeak kanala
Kreiranje Thingspeak kanala
Kreiranje Thingspeak kanala

Ako ste tek počeli raditi s Thingspeakom i nikada ga prije niste koristili, slijedite korake u nastavku:

Idite na

Morat ćete se prijaviti prije nego počnete koristiti Thingspeak

Nakon registracije idite na odjeljak Kanali

U odjeljku Kanali odaberite Novi kanal (pogledajte sliku za referencu)

Na Novom kanalu vidjet ćete različite okvire s podacima. Potrebno je samo da popunite polje Ime. Možete imenovati svoj kanal kako god želite. Priložio sam sliku na kojoj sam svoj kanal nazvao Raspberry Pi 4. Ostatak kutija ostavite kako jeste.

Čestitamo! Uspješno ste stvorili kanal za svoj IoT projekt. (pogledajte priloženu sliku na kojoj možete vidjeti moj kanal pod imenom Raspberry Pi 4 uspješno kreiran)

Korak 2: Upotreba IFTTT aplikacije

Korištenje IFTTT aplikacije
Korištenje IFTTT aplikacije
Korištenje IFTTT aplikacije
Korištenje IFTTT aplikacije
Korištenje IFTTT aplikacije
Korištenje IFTTT aplikacije
Korištenje IFTTT aplikacije
Korištenje IFTTT aplikacije

Moramo koristiti ovu aplikaciju za pokretanje GET zahtjeva za objavljivanje podataka na vašem kreiranom kanalu Thingspeak pomoću Google Asistenta. Zamislite ovu aplikaciju kao sučelje između Google asistenta i vašeg Thingspeak kanala.

Zatim stvaramo GET zahtjeve u aplikaciji IFTTT.

Preuzmite aplikaciju IFTTT sa

Kreirajte svoj račun

Idite na stranicu Napravite vlastite aplete od nule

Dodirnite Ako je ova opcija

Odaberite uslugu pokretanja kao Google pomoćnik

Pri tome odaberite Reci jednostavnu frazu

Pod tom opcijom pojavit će se neki okviri s podacima. U tu svrhu pogledajte slike i prema tome popunite detalje! (postoje dvije slike u tu svrhu: 1. Uključivanje LED -a 2. Isključivanje LED -a)

Završili smo dio If This koji je Google Assistant. Sada odabiremo opciju Zatim ta opcija koja je Webhooks.

Ispod toga odaberite Učini web zahtjev

Za informacije koje morate popuniti u okvirima pogledajte sliku. Pogledajte ovaj URL https://api.thingspeak.com/update?api_key=INSERT YOUR WRITE API KEY & field1 = 1

U gornjoj URL adresi primijetit ćete da sam spomenuo INSERT YOUR WRITE API KLJUČ. Ovo je API ključ koji je identitet kanala koji ste stvorili na Thingspeaku (pogledajte sliku). Write API key će vam pomoći da upišete određene podatke na svoj kanal, a na sličan način API API key će vam pomoći da dobijete podatke sa kanala.

Osim vašeg ključa API za pisanje, ostali podaci iz okvira ostaju isti.

Dakle, ovdje ste stvorili okidač gdje kada svom Google asistentu kažete "Uključi LED" on će poslati "1" vašem kanalu Thingspeak.

Sada, na sličan način, morate stvoriti novi Applet na IFTTT aplikaciji za isključivanje LED diode. Priložio sam slike ako ste isto zbunjeni. Inače, postupak isključivanja LED diode isti je kao i ono što ste prethodno učinili, osim nekih manjih promjena.

Korak 3: Konačno započinjanje kodiranja

Konačno početak kodiranja
Konačno početak kodiranja

Objasnit ću glavni cilj Python koda. Moramo dohvatiti podatke sa Thingspeak kanala koji će biti ili "1" ili "0" na osnovu onoga što kažete svom Google asistentu. Na osnovu toga moramo uključiti ili isključiti LED diodu. Ako je učitana vrijednost na kanalu Thingspeak "1", tada palimo LED, a ako je "0", isključujemo ga.

U kodu će vam trebati dvije stvari: 1. Vaš API ključ za čitanje 2. Vaš ID kanala (pogledajte slike za isti)

Evo koda (pod pretpostavkom da poznajete preduvjete HTTP -a i Pythona):

import urllib

uvozni zahtevi

import json

vreme uvoza

uvezite RPi. GPIO kao GPIO

GPIO.setmode (GPIO. BOARD)

GPIO.setup (7, GPIO. OUT)

probaj:

dok (1):

URL = 'https://api.thingspeak.com/channels/INSER YOUR CHANNEL ID/fields/1.json? Api_key =' KEY = 'INSERT YOUR READ API KEY'

HEADER = '& rezultati = 2'

NEW_URL = URL+KEY+HEADER

#print (NEW_URL)

get_data = requests.get (NEW_URL).json ()

#print (get_data)

feild_1 = get_data ['feedovi']

#print ("Polje:", feild_1)

t =

za x u feild_1:

t.append (x ['polje1'])

ispis (t [1])

ako je int (t [1]) == 1:

GPIO.izlaz (7, 1)

elif int (t [1]) == 0:

GPIO.izlaz (7, 0)

osim KeyboardInterrupt:

GPIO.cleanup ()

Preporučuje se: