INHOUDSOPGAWE:

Google Assistent -gebaseerde LED -beheer met Raspberry Pi: 3 stappe
Google Assistent -gebaseerde LED -beheer met Raspberry Pi: 3 stappe

Video: Google Assistent -gebaseerde LED -beheer met Raspberry Pi: 3 stappe

Video: Google Assistent -gebaseerde LED -beheer met Raspberry Pi: 3 stappe
Video: Home Assistant Raspberry Pi 4 SSD Installation and Migration 2024, November
Anonim
Google Assistent -gebaseerde LED -beheer met behulp van Raspberry Pi
Google Assistent -gebaseerde LED -beheer met behulp van Raspberry Pi
Google Assistent -gebaseerde LED -beheer met behulp van Raspberry Pi
Google Assistent -gebaseerde LED -beheer met behulp van Raspberry Pi
Google Assistent -gebaseerde LED -beheer met behulp van Raspberry Pi
Google Assistent -gebaseerde LED -beheer met behulp van Raspberry Pi
Google Assistent -gebaseerde LED -beheer met behulp van Raspberry Pi
Google Assistent -gebaseerde LED -beheer met behulp van Raspberry Pi

Haai!

In hierdie projek implementeer ons Google Assistant -gebaseerde beheer van die LED met behulp van Raspberry Pi 4 met behulp van HTTP in Python. U kan die LED vervang met 'n gloeilamp (natuurlik nie letterlik nie; u benodig 'n aflosmodule tussenin) of enige ander huishoudelike toestel sodat hierdie projek verder geïmplementeer kan word vir tuisautomatisering.

Voorrade

Wat u benodig vir hierdie projek:

1. Framboos Pi

2. LED

3. Springdrade-2 (manlik tot vroulik)

4. Broodbord

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

6. Thingspeak -rekening (https://thingspeak.com/)

Enkele voorvereistes:

1. Netwerke basiese beginsels-HTTP

2. Python om toegang tot die webdata te verkry

Stap 1: Skep 'n Thingspeak -kanaal

Skep 'n Thingspeak -kanaal
Skep 'n Thingspeak -kanaal
Skep 'n Thingspeak -kanaal
Skep 'n Thingspeak -kanaal
Skep 'n Thingspeak -kanaal
Skep 'n Thingspeak -kanaal
Skep 'n Thingspeak -kanaal
Skep 'n Thingspeak -kanaal

As u nuut is by Thingspeak en dit nog nooit gebruik het nie, volg die onderstaande stappe:

Gaan na

U sal moet aanmeld voordat u Thingspeak begin gebruik

Nadat u aangemeld het, gaan na die afdeling Kanale

Kies nuwe kanale onder kanale (sien prent vir verwysing)

In New Channel sien u verskillende inligtingsblokkies. U hoef net die Naam -blokkie in te vul. U kan u kanaal noem wat u wil. Ek het 'n prentjie aangeheg waar ek my kanaal as Raspberry Pi 4 genoem het. Laat die res van die bokse soos dit is.

Baie geluk! U het 'n kanaal vir u IoT -projek suksesvol geskep. (sien die aangehegte prentjie waar u my kanaal met die naam Raspberry Pi 4 suksesvol geskep kan sien)

Stap 2: Gebruik die IFTTT -app

Gebruik IFTTT -app
Gebruik IFTTT -app
Gebruik IFTTT -app
Gebruik IFTTT -app
Gebruik IFTTT -app
Gebruik IFTTT -app
Gebruik IFTTT -app
Gebruik IFTTT -app

Ons moet hierdie app gebruik om 'n GET -versoek te aktiveer om data op u geskepte Thingspeak -kanaal met behulp van Google Assistant te plaas. Beskou hierdie app as 'n koppelvlak tussen Google Assistant en u Thingspeak -kanaal.

Vervolgens skep ons GET -versoeke op die IFTTT -app.

Laai die IFTTT -app af van

Skep jou rekening

Gaan na Maak jou eie applets van nuuts af

Tik op As hierdie opsie

Kies snellerdiens as Google Assistent

Kies Sê 'n eenvoudige frase daarin

Onder die opsie verskyn 'n paar inligtingsblokkies. Raadpleeg die beelde hiervoor en vul die besonderhede dienooreenkomstig in! (daar is twee beelde vir hierdie doel: 1. Om die LED aan te skakel 2. Om die LED af te skakel)

Ons het die If This -gedeelte, wat Google Assistant is, voltooi. Nou kies ons Dan die opsie wat Webhooks is.

Kies onder dit 'n webversoek

Verwys na die prentjie vir die inligting wat in die blokkies gevul moet word. Verwys na hierdie URL https://api.thingspeak.com/update?api_key=INSERT YOUR WRITE API KEY & field1 = 1

In die bogenoemde URL sien u dat ek genoem het INSERT YOUR WRITE API SLEUTEL. Dit is die API -sleutel wat 'n identiteit is van die kanaal wat u op Thingspeak geskep het (sien prent). Skryf -API -sleutel sal u help om 'n spesifieke data op u kanaal te skryf, en op dieselfde manier sal die lees -API -sleutel u help om data van die kanaal af te haal.

Afgesien van u Write API -sleutel, bly die res van die inligting uit die blokkies dieselfde.

So hier het u 'n sneller geskep waar u 'n '1' na u Thingspeak -kanaal stuur as u vir u Google Assistant sê: 'Skakel die LED aan'.

Op dieselfde manier moet u 'n nuwe applet op die IFTTT -app skep om die LED uit te skakel. Ek het prente aangeheg as u dieselfde verward is. Andersins is die prosedure om die LED uit te skakel dieselfde as wat u hierbo gedoen het, afgesien van 'n paar klein veranderinge.

Stap 3: Uiteindelik begin met die kode

Uiteindelik begin kodeer
Uiteindelik begin kodeer

Ek sal die hoofdoel van die Python -kode verduidelik. Ons moet die data van die Thingspeak -kanaal gaan haal, wat óf 'n '1' óf 'n '0' is, gebaseer op wat u aan u Google Assistant sê. Ons moet die LED op hierdie manier aan of uitskakel. As die opgelaaide waarde op die Thingspeak -kanaal '1' is, skakel ons die LED aan, en as dit 'n '0' is, skakel ons dit uit.

In die kode benodig u twee dinge: 1. U Read API -sleutel 2. U kanaal -ID (verwys na die beelde vir dieselfde)

Hier is die kode (as u die voorvereistes van HTTP en Python ken):

invoer urllib

invoer versoeke

invoer json

invoer tyd

voer RPi. GPIO in as GPIO

GPIO.setmode (GPIO. BOARD)

GPIO.setup (7, GPIO. OUT)

probeer:

terwyl (1):

URL = 'https://api.thingspeak.com/channels/INSER JOU KANAAL -ID/velde/1.json? Api_key =' KEY = 'INVOER JOU LEES API -SLEUTEL'

HEADER = '& resultate = 2'

NEW_URL = URL+SLEUTEL+HEADER

#afdruk (NEW_URL)

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

#print (get_data)

feild_1 = get_data ['feeds']

#print ("Veld:", feild_1)

t =

vir x in feild_1:

t.append (x ['veld1'])

druk (t [1])

as int (t [1]) == 1:

GPIO.uitvoer (7, 1)

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

GPIO.output (7, 0)

behalwe KeyboardInterrupt:

GPIO.cleanup ()

Aanbeveel: