Мазмуну:

Google Жардамчысына негизделген LED көзөмөлү Raspberry Pi колдонуу: 3 кадам
Google Жардамчысына негизделген LED көзөмөлү Raspberry Pi колдонуу: 3 кадам

Video: Google Жардамчысына негизделген LED көзөмөлү Raspberry Pi колдонуу: 3 кадам

Video: Google Жардамчысына негизделген LED көзөмөлү Raspberry Pi колдонуу: 3 кадам
Video: Introduction to HT16K33 4 Digit LED Seven Segment Display with Arduino 2024, Ноябрь
Anonim
Google Жардамчысына негизделген LED көзөмөлү Raspberry Pi менен
Google Жардамчысына негизделген LED көзөмөлү Raspberry Pi менен
Google Жардамчысына негизделген LED көзөмөлү Raspberry Pi менен
Google Жардамчысына негизделген LED көзөмөлү Raspberry Pi менен
Google Жардамчысына негизделген LED көзөмөлү Raspberry Pi менен
Google Жардамчысына негизделген LED көзөмөлү Raspberry Pi менен
Google Жардамчысына негизделген LED көзөмөлү Raspberry Pi менен
Google Жардамчысына негизделген LED көзөмөлү Raspberry Pi менен

Эй!

Бул долбоордо биз Google Жардамчынын LEDди Raspberry Pi 4 аркылуу HTTP аркылуу Pythonдо башкарууну ишке ашырабыз. Сиз бул лампаны лампочка менен алмаштыра аласыз (албетте, сизге реле модулу керек) же башка үй шаймандары, бул долбоорду үйдү автоматташтыруу максатында андан ары ишке ашыруу үчүн.

Жабдуулар

Бул долбоор үчүн сизге эмне керек:

1. Raspberry Pi

2. LED

3. Jumper зымдары-2 (эркектен аялга)

4. Нан тактасы

5. IFTTT колдонмосу (https://play.google.com/store/apps/details?id=com.ifttt.ifttt&hl=en_IN)

6. Thingspeak аккаунту (https://thingspeak.com/)

Кээ бир шарттар:

1. Тармактын негиздери-HTTP

2. Python веб маалыматтарга жетүү үчүн

1 -кадам: Thingspeak канал түзүү

Thingspeak каналын түзүү
Thingspeak каналын түзүү
Thingspeak каналын түзүү
Thingspeak каналын түзүү
Thingspeak каналын түзүү
Thingspeak каналын түзүү
Thingspeak каналын түзүү
Thingspeak каналын түзүү

Эгерде сиз Thingspeak -те жаңы болсоңуз жана буга чейин колдоно элек болсоңуз, анда төмөнкү кадамдарды аткарыңыз:

Https://thingspeak.com/ дарегине өтүңүз

Thingspeak колдонууну баштоодон мурун катталууңуз керек болот

Катталгандан кийин, Каналдар бөлүмүнө өтүңүз

Каналдар астынан Жаңы Каналды тандаңыз (маалымдама үчүн сүрөттү караңыз)

Жаңы Каналда сиз ар кандай маалымат кутучаларын көрөсүз. Сиз жөн гана Аты кутучасын толтурушуңуз керек. Каналыңызга каалаган нерсеңизди койсоңуз болот. Мен өз каналымды Raspberry Pi 4 деп атаган сүрөттү тиркеп койдум. Калган кутучаларды ошол бойдон калтырыңыз.

Куттуктайм! Сиз IoT долбооруңуз үчүн каналды ийгиликтүү түздүңүз. (тиркелген сүрөттү караңыз, анда Raspberry Pi 4 аттуу каналым ийгиликтүү түзүлгөн)

2 -кадам: IFTTT колдонмосун колдонуу

IFTTT колдонмосун колдонуу
IFTTT колдонмосун колдонуу
IFTTT колдонмосун колдонуу
IFTTT колдонмосун колдонуу
IFTTT колдонмосун колдонуу
IFTTT колдонмосун колдонуу
IFTTT колдонмосун колдонуу
IFTTT колдонмосун колдонуу

Биз бул колдонмону Google Жардамчысы аркылуу Thingspeak каналыңызга маалыматтарды жайгаштыруу үчүн GET өтүнүчүн иштетүү үчүн колдонушубуз керек. Бул колдонмону Google Жардамчысы менен Thingspeak каналыңыздын ортосундагы интерфейс катары элестетиңиз.

Андан кийин, биз IFTTT колдонмосунда GET сурамдарын түзөбүз.

IFTTT тиркемесин https://play.google.com/store/apps/details?id=com… дарегинен жүктөп алыңыз.

Каттоо эсебиңизди түзүңүз

Өзүңүздүн апплетти нөлдөн баштап жасаңыз

Бул параметрди чыкылдатыңыз

Триггер кызматын Google Жардамчы катары тандаңыз

Мында Жөнөкөй фразаны айт тандаңыз

Бул тандоонун астында кээ бир маалымат кутучалары пайда болот. Бул үчүн сүрөттөргө кайрылыңыз жана ошого жараша деталдарды толтуруңуз! (бул үчүн эки сүрөт бар: 1. LEDди күйгүзүү үчүн 2. LEDди өчүрүү үчүн)

Биз Google Жардамчысы болгон "Бул болсо" бөлүгүн бүтүрдүк. Эми биз Webhooks дегенди тандайбыз.

Анын астында Веб сурам жасоону тандаңыз

Кутучаларга толтурулушу керек болгон маалымат үчүн сүрөттү караңыз. Бул URLге кайрылыңыз https://api.thingspeak.com/update?api_key=INRERT YOUR API API KEY & field1 = 1

Жогорудагы URLде сиз жазуу API ачкычын КИРГИЗҮҮ жөнүндө айтканымды байкайсыз. Бул Thingspeakте жараткан каналдын идентификатору болгон API ачкычы (сүрөттү караңыз). Жазуу API ачкычы сиздин каналга белгилүү бир маалыматты жазууга жардам берет жана Окуу API ачкычы сизге каналдан маалыматтарды алууга жардам берет.

Write API ачкычыңыздан башка, кутучалардан калган маалымат ошол бойдон калат.

Ошентип, бул жерде сиз Google Жардамчыңызга "LEDди күйгүзүңүз" дегенде Thingspeak каналыңызга "1" жөнөтө турган триггерди түздүңүз.

Эми, ушундай эле түрдө, LEDди өчүрүү үчүн IFTTT колдонмосунда жаңы Апплет түзүшүңүз керек. Эгерде мен сизди түшүнбөй жатса, мен сүрөттөрдү тиркеп койгом. Болбосо, LEDди өчүрүү процедурасы, кичине өзгөрүүлөрдөн тышкары, сиз жогоруда кылган менен бирдей.

3 -кадам: Акыры кодду баштоо

Акыры кодго баштоо
Акыры кодго баштоо

Мен Python кодунун негизги максатын түшүндүрөм. Thingspeak каналынан Google Жардамчыңызга айтканыңыздын негизинде "1" же "0" боло турган маалыматтарды алуубуз керек. Биз ошонун негизинде LEDди күйгүзүп же өчүрүшүбүз керек. Thingspeak каналына жүктөлгөн маани "1" болсо, анда биз LEDди күйгүзөбүз, ал эми "0" болсо, аны өчүрөбүз.

Коддо сизге эки нерсе керек болот: 1. Сиздин API окуу ачкычы 2. Каналыңыздын идентификатору (ошол эле сүрөттөрдү караңыз)

Бул жерде код (HTTP жана Pythonдун алдын ала шарттарын билесиз):

urllib импорттоо

импорттук сурамдар

json импорттоо

импорттоо убактысы

GPO катары RPi. GPIO импорттоо

GPIO.setmode (GPIO. BOARD)

GPIO.setup (7, GPIO. OUT)

аракет кыл:

ал эми (1):

URL = 'https://api.thingspeak.com/channels/INSER CHANNEL ID/fields/1.json? Api_key =' KEY = 'READ API KEY'ИҢИЗДИ КИРГИЗИҢИЗ'

HEADER = '& натыйжалар = 2'

NEW_URL = URL+KEY+HEADER

#басып чыгаруу (NEW_URL)

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

#басып чыгаруу (get_data)

feild_1 = get_data ['feeds']

#басып чыгаруу ("Талаа:", feild_1)

t =

x үчүн feild_1 үчүн:

t.append (x ['field1'])

басып чыгаруу (t [1])

эгер int (t [1]) == 1:

GPIO.output (7, 1)

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

GPIO.output (7, 0)

KeyboardInterruptдон башка:

GPIO.cleanup ()

Сунушталууда: