İçindekiler:

Raspberry Pi Kullanarak Google Asistan Tabanlı LED Kontrolü: 3 Adım
Raspberry Pi Kullanarak Google Asistan Tabanlı LED Kontrolü: 3 Adım

Video: Raspberry Pi Kullanarak Google Asistan Tabanlı LED Kontrolü: 3 Adım

Video: Raspberry Pi Kullanarak Google Asistan Tabanlı LED Kontrolü: 3 Adım
Video: Raspberry PI ile Google Asistan yaptım !!! 2024, Kasım
Anonim
Raspberry Pi Kullanarak Google Asistan Tabanlı LED Kontrolü
Raspberry Pi Kullanarak Google Asistan Tabanlı LED Kontrolü
Raspberry Pi Kullanarak Google Asistan Tabanlı LED Kontrolü
Raspberry Pi Kullanarak Google Asistan Tabanlı LED Kontrolü
Raspberry Pi Kullanan Google Asistan Tabanlı LED Kontrolü
Raspberry Pi Kullanan Google Asistan Tabanlı LED Kontrolü
Raspberry Pi Kullanan Google Asistan Tabanlı LED Kontrolü
Raspberry Pi Kullanan Google Asistan Tabanlı LED Kontrolü

Merhaba!

Bu projede, Python'da HTTP kullanarak Raspberry Pi 4 kullanarak LED'in Google Asistan tabanlı kontrolünü uygulayacağız. LED'i bir ampulle (tabii ki tam anlamıyla değil, arada bir röle modülüne ihtiyacınız olacak) veya başka bir ev aletiyle değiştirebilirsiniz, böylece bu proje ev otomasyonu amaçları için daha fazla uygulanabilir.

Gereçler

Bu proje için ihtiyacınız olacak:

1. Ahududu Pi

2. LED

3. Jumper kabloları-2 (erkek-dişi)

4. Breadboard

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

6. Thingspeak hesabı (https://thingspeak.com/)

Bazı ön koşullar:

1. Ağ temelleri-HTTP

2. Web verilerine erişmek için Python

1. Adım: Bir Thingspeak Kanalı Oluşturma

Thingspeak Kanalı Oluşturma
Thingspeak Kanalı Oluşturma
Thingspeak Kanalı Oluşturma
Thingspeak Kanalı Oluşturma
Thingspeak Kanalı Oluşturma
Thingspeak Kanalı Oluşturma
Thingspeak Kanalı Oluşturma
Thingspeak Kanalı Oluşturma

Thingspeak'te yeniyseniz ve daha önce hiç kullanmadıysanız aşağıdaki adımları izleyin:

thingspeak.com/ adresine gidin

Thingspeak'i kullanmaya başlamadan önce kaydolmanız gerekecek

Kaydolduktan sonra Kanallar bölümüne gidin

Kanallar altında Yeni Kanal'ı seçin (referans için resme bakın)

Yeni Kanal'da farklı bilgi kutuları göreceksiniz. Ad kutusunu doldurmanız yeterlidir. Kanalınıza istediğiniz ismi verebilirsiniz. Kanalıma Raspberry Pi 4 adını verdiğim bir resim ekledim. Kalan kutuları olduğu gibi bırakın.

Tebrikler! IoT projeniz için başarıyla bir kanal oluşturdunuz. (Raspberry Pi 4 adlı kanalımın başarıyla oluşturulduğunu görebileceğiniz ekteki resme bakın)

2. Adım: IFTTT Uygulamasını Kullanma

IFTTT Uygulamasını Kullanma
IFTTT Uygulamasını Kullanma
IFTTT Uygulamasını Kullanma
IFTTT Uygulamasını Kullanma
IFTTT Uygulamasını Kullanma
IFTTT Uygulamasını Kullanma
IFTTT Uygulamasını Kullanma
IFTTT Uygulamasını Kullanma

Google Asistan'ı kullanarak oluşturulan Thingspeak kanalınıza veri göndermek için bir GET isteğini tetiklemek için bu uygulamayı kullanmalıyız. Bu uygulamayı Google Asistan ile Thingspeak kanalınız arasında bir arayüz olarak düşünün.

Ardından, IFTTT uygulamasında GET istekleri oluşturuyoruz.

IFTTT uygulamasını https://play.google.com/store/apps/details?id=com… adresinden indirin.

hesabını oluştur

Sıfırdan Kendi Applet'lerinizi Yapın'a gidin

Bu seçeneğe dokunun

Google Asistan olarak tetikleme hizmetini seçin

Bunun içinde, Basit bir cümle söyle'yi seçin.

Bu seçeneğin altında bazı bilgi kutuları görünecektir. Bunun için görsellere bakın ve detayları buna göre doldurun! (bu amaçla iki resim vardır: 1. LED'i açmak için 2. LED'i kapatmak için)

Google Asistan olan If This bölümünü tamamladık. Şimdi Webhooks olan Then That seçeneğini seçiyoruz.

Bunun altında, Web isteği yap'ı seçin.

Kutulara doldurulması gereken bilgiler için resme bakın. Bu URL'ye bakın https://api.thingspeak.com/update?api_key=WRITE API ANAHTARINIZI GİRİN&field1=1

Yukarıdaki URL'de, INSERT YOUR WRITE API KEY hakkında bahsettiğimi fark edeceksiniz. Bu, Thingspeak'te oluşturduğunuz kanalın kimliği olan API anahtarıdır (resme bakın). Write API anahtarı kanalınıza belirli bir veriyi yazmanıza yardımcı olacak ve benzer şekilde Read API anahtarı da kanaldan veri almanıza yardımcı olacaktır.

Write API anahtarınız dışında, kutulardaki bilgilerin geri kalanı aynı kalır.

Burada, Google Asistanınıza "LED'i aç" dediğinizde, Thingspeak kanalınıza "1" göndereceği bir tetikleyici oluşturdunuz.

Şimdi, benzer şekilde, LED'i kapatmak için IFTTT uygulamasında yeni bir Applet oluşturmanız gerekiyor. Aynı konuda kafanız karıştıysa resimleri ekledim. Aksi takdirde, LED'i kapatma prosedürü, bazı küçük değişiklikler dışında yukarıda yaptığınızla aynıdır.

Adım 3: Sonunda Kodlamaya Başlamak

Sonunda Kodlamaya Başlıyorum
Sonunda Kodlamaya Başlıyorum

Python kodunun ana amacını açıklayacağım. Google Asistanınıza söylediklerinize bağlı olarak "1" veya "0" olacak olan Thingspeak kanalından verileri almamız gerekiyor. Buna göre LED'i açıp kapatmalıyız. Thingspeak kanalına yüklenen değer "1" ise led'i açarız, "0" ise kapatırız.

Kodda iki şeye ihtiyacınız olacak: 1. Okuma API anahtarınız 2. Kanal Kimliğiniz (aynısı için resimlere bakın)

İşte kod (HTTP ve Python'un ön koşullarını bildiğinizi varsayarak):

urllib'i içe aktar

içe aktarma istekleri

json'u içe aktar

ithalat zamanı

RPi. GPIO'yu GPIO olarak içe aktar

GPIO.setmode(GPIO. BOARD)

GPIO.setup(7, GPIO. OUT)

denemek:

süre(1):

URL='https://api.thingspeak.com/channels/KANAL Kimliğinizi/fields/1.json?api_key=' KEY='OKUMA API ANAHTARINIZI GİRİN'

HEADER='&sonuçlar=2'

NEW_URL=URL+ANAHTAR+BAŞLIK

#print(NEW_URL)

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

#print(get_data)

feild_1=get_data['feed'ler']

#print("Alan:", feild_1)

t=

feild_1 içindeki x için:

t.append(x['alan1'])

yazdır(t[1])

eğer int(t[1])==1:

GPIO.çıktı(7, 1)

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

GPIO.çıktı(7, 0)

KeyboardInterrupt hariç:

GPIO.cleanup()

Önerilen: