Talaan ng mga Nilalaman:

Batay sa LED Control na Batay sa Google Assistant Gamit ang Raspberry Pi: 3 Hakbang
Batay sa LED Control na Batay sa Google Assistant Gamit ang Raspberry Pi: 3 Hakbang

Video: Batay sa LED Control na Batay sa Google Assistant Gamit ang Raspberry Pi: 3 Hakbang

Video: Batay sa LED Control na Batay sa Google Assistant Gamit ang Raspberry Pi: 3 Hakbang
Video: Электрика в квартире своими руками. Финал. Переделка хрущевки от А до Я. #11 2024, Nobyembre
Anonim
Batay sa LED Control na Batay sa Google Assistant Gamit ang Raspberry Pi
Batay sa LED Control na Batay sa Google Assistant Gamit ang Raspberry Pi
Batay sa LED Control na Batay sa Google Assistant Gamit ang Raspberry Pi
Batay sa LED Control na Batay sa Google Assistant Gamit ang Raspberry Pi
Batay sa LED Control na Batay sa Google Assistant Gamit ang Raspberry Pi
Batay sa LED Control na Batay sa Google Assistant Gamit ang Raspberry Pi
Batay sa LED Control na Batay sa Google Assistant Gamit ang Raspberry Pi
Batay sa LED Control na Batay sa Google Assistant Gamit ang Raspberry Pi

Hoy!

Sa proyektong ito, ipapatupad namin ang kontrol ng batay sa Google Assistant sa LED gamit ang Raspberry Pi 4 gamit ang HTTP sa Python. Maaari mong palitan ang LED ng isang bombilya (malinaw na hindi literal, kakailanganin mo ng isang module ng relay sa pagitan) o anumang iba pang kagamitan sa bahay upang ang proyektong ito ay maaaring karagdagang ipatupad para sa mga layunin sa pag-aautomat ng bahay.

Mga gamit

Ano ang kakailanganin mo para sa proyektong ito:

1. Raspberry Pi

2. LED

3. Jumper wires-2 (lalaki hanggang babae)

4. Breadboard

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

6. Thingspeak account (https://thingspeak.com/)

Ilang mga kinakailangan:

1. Mga pangunahing kaalaman sa pag-network-HTTP

2. Python upang ma-access ang data ng web

Hakbang 1: Lumilikha ng isang Thingspeak Channel

Lumilikha ng isang Thingspeak Channel
Lumilikha ng isang Thingspeak Channel
Lumilikha ng isang Thingspeak Channel
Lumilikha ng isang Thingspeak Channel
Lumilikha ng isang Thingspeak Channel
Lumilikha ng isang Thingspeak Channel
Lumilikha ng isang Thingspeak Channel
Lumilikha ng isang Thingspeak Channel

Kung bago ka sa Thingspeak at hindi mo pa nagamit ito dati, sundin ang mga hakbang sa ibaba:

Pumunta sa

Kailangan mong mag-sign up bago ka magsimulang gumamit ng Thingspeak

Pagkatapos ng pag-sign up, pumunta sa seksyon ng Mga Channel

Sa ilalim ng Mga Channel, piliin ang Bagong Channel (tingnan ang imahe para sa sanggunian)

Sa New Channel, makikita mo ang iba't ibang mga kahon ng impormasyon. Kailangan mo lamang punan ang kahon ng Pangalan. Maaari mong pangalanan ang iyong channel kahit anong gusto mo. Nag-attach ako ng isang imahe kung saan pinangalanan ko ang aking channel bilang Raspberry Pi 4. Iwanan ang natitirang mga kahon tulad nito.

Binabati kita! Matagumpay kang nakalikha ng isang channel para sa iyong proyekto sa IoT. (tingnan ang naka-attach na imahe kung saan maaari mong makita ang aking channel na nagngangalang Raspberry Pi 4 na matagumpay na nilikha)

Hakbang 2: Paggamit ng IFTTT App

Paggamit ng IFTTT App
Paggamit ng IFTTT App
Gamit ang IFTTT App
Gamit ang IFTTT App
Paggamit ng IFTTT App
Paggamit ng IFTTT App
Gamit ang IFTTT App
Gamit ang IFTTT App

Kailangan naming gamitin ang app na ito para sa pagpapalitaw ng isang kahilingan sa GET para sa pag-post ng data sa iyong nilikha na Thingspeak channel gamit ang Google Assistant. Isipin ang app na ito bilang isang interface sa pagitan ng Google Assistant at ng iyong Thingspeak channel.

Susunod, lumilikha kami ng GET mga kahilingan sa IFTTT app.

I-download ang IFTTT app mula sa

Lumikha ng iyong account

Pumunta sa Gumawa ng iyong sariling mga Applet mula sa simula

Mag-tap sa Kung ang pagpipiliang ito

Piliin ang trigger service bilang Google Assistant

Sa iyon, piliin ang Sabihin ang isang simpleng parirala

Sa ilalim ng opsyong iyon, lilitaw ang ilang mga kahon ng impormasyon. Para doon, sumangguni sa mga imahe at punan ang mga detalye nang naaayon! (mayroong dalawang mga imahe para sa hangaring ito: 1. Upang i-on ang LED 2. Upang patayin ang LED)

Nakumpleto namin ang If This part na Google Assistant. Pinipili namin Ngayon Kung gayon ang pagpipilian na Webhooks.

Sa ilalim nito, piliin ang Gumawa ng isang kahilingan sa web

Sumangguni sa imahe para sa impormasyon na dapat mapunan sa mga kahon. Sumangguni sa URL na ito https://api.thingspeak.com/update?api_key=INSERT IYONG SUSULIN ANG API KEY & field1 = 1

Sa nasa itaas na URL, mapapansin mo na nabanggit ko ang tungkol sa I-INSERT ANG IYONG API SA PAGSULAT. Ito ang API key na isang pagkakakilanlan ng channel na iyong nilikha sa Thingspeak (tingnan ang imahe). Makakatulong sa iyo ang sumulat ng API key upang sumulat ng isang partikular na data sa iyong channel at ang katulad na Basahin ang API key ay makakatulong sa iyo upang makakuha ng data mula sa channel.

Bukod sa iyong Writing API key, ang natitirang impormasyon mula sa mga kahon ay mananatiling pareho.

Kaya't dito ka lumikha ng isang gatilyo kung saan kapag sinabi mo sa iyong Google Assistant, "I-on ang LED" magpapadala ito ng isang "1" sa iyong Thingspeak channel.

Ngayon, sa isang katulad na paraan, kailangan mong lumikha ng isang bagong Applet sa IFTTT app para sa pag-off ng LED. Nag-attach ako ng mga imahe kung nalilito ka tungkol sa pareho. Kung hindi man, ang pamamaraan para sa pagpatay sa LED ay pareho sa iyong ginawa sa itaas bukod sa ilang mga menor de edad na pagbabago.

Hakbang 3: Panghuli Nagsisimula sa Code

Panghuli Nagsisimula sa Code
Panghuli Nagsisimula sa Code

Ipapaliwanag ko ang pangunahing layunin ng Python code. Kailangan nating kunin ang data mula sa Thingspeak channel na magiging isang "1" o isang "0" batay sa sasabihin mo sa iyong Google Assistant. Kailangan nating i-on o i-off ang LED batay dito. Kung ang na-upload na halaga sa channel ng Thingspeak ay "1", pagkatapos ay i-on namin ang LED, at kung ito ay isang "0", patayin namin ito.

Sa code, kakailanganin mo ng dalawang bagay: 1. Iyong Basahin ang API key 2. Iyong Channel ID (i-refer ang mga imahe para sa pareho)

Narito ang code (ipagpapalagay na alam mo ang mga paunang kinakailangan ng HTTP at Python):

import urllib

mag-import ng mga kahilingan

import json

oras ng pag-import

i-import ang RPi. GPIO bilang GPIO

GPIO.setmode (GPIO. BOARD)

GPIO.setup (7, GPIO. OUT)

subukan:

habang (1):

URL = 'https://api.thingspeak.com/channels/INSER IYONG CHANNEL ID / mga patlang / 1.json? Api_key =' KEY = 'INSERT ANG IYONG BASAHIN ANG API KEY'

HEADER = '& mga resulta = 2'

NEW_URL = URL + KEY + HEADER

#print (NEW_URL)

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

#print (get_data)

feild_1 = get_data ['feeds']

#print ("Field:", feild_1)

t =

para sa x sa feild_1:

t.append (x ['field1'])

i-print (t [1])

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

GPIO.output (7, 1)

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

GPIO.output (7, 0)

maliban sa KeyboardInterrupt:

GPIO.cleanup ()

Inirerekumendang: