Mundarija:

IFTTT Raspberry Pi harakat sensori: 4 qadam
IFTTT Raspberry Pi harakat sensori: 4 qadam

Video: IFTTT Raspberry Pi harakat sensori: 4 qadam

Video: IFTTT Raspberry Pi harakat sensori: 4 qadam
Video: IFTTT (If This Than That) Raspberry Pi Button with Webhooks 2024, Noyabr
Anonim
Raspberry Pi harakat sensori IFTTT
Raspberry Pi harakat sensori IFTTT
Raspberry Pi harakat sensori IFTTT
Raspberry Pi harakat sensori IFTTT

Salom. Men 4 -sinf o'quvchisiman va bugun biz IFTTT harakat sensori yasaymiz

Ta'minotlar

1x kichik karton quti

1 ta malina pi modeli b+ yoki a+

1x PIR sensori https://www.amazon.com/gp/product/B07KZW86YR/ref=p…(Har xil) o'tish simlari

1x aqlli lampochka (ixtiyoriy)

Yopishqoq lenta (ixtiyoriy)

ifttt hisobi

1 -qadam: kesish:

Kesish
Kesish

Qutining yuqori qismida kichik bir teshikni kesib oling.

2 -qadam: PIR sensorini ulash:

PIR sensorini ulash
PIR sensorini ulash
PIR sensorini ulash
PIR sensorini ulash

PIR sensorining VCC bilan belgilangan pinini Raspberry Pi -dagi 5V -ga ulang. Bu PIR sensorini quvvat bilan ta'minlaydi. GND bilan belgilangan G ni Pi ustidagi pin bilan ulang (shuningdek GND deb ham belgilanadi). Bu OUT deb nomlangan raqamni Pi -dagi har qanday raqamli GPIO piniga ulang. Bu misolda biz GPIO 4 ni tanladik. Sensor harakatni aniqlaganda OUT pimi kuchlanish chiqaradi. Keyin kuchlanish Raspberry Pi tomonidan qabul qilinadi.

3 -qadam: Webhooklarni sozlash:

Veb -kancalarni sozlash
Veb -kancalarni sozlash

yangi applet yarating, so'ngra Webhooks -ni tanlang. va keyin bildirishnomalar bilan ham xuddi shunday qiling.

4 -qadam: Kod:

Python 3 yoki thonny uchun

#! /usr/bin/python # RPi. GPIO -ni GPIO -ga import qilish vaqtini import qilish so'rovlari # GPIO nomlash konventsiyasini o'rnatingGPIO.setmode (GPIO. BCM) # GPIO ogohlantirishlarini o'chiring # GPIO pinini inputGPIO.setup (pinpir, GPIO. IN) sifatida o'rnating # Joriy va oxirgi holatlarni ushlab turish uchun o'zgaruvchilar.input (pinpir) == 1: currentstate = 0 chop etish ("Tayyor") # Foydalanuvchilar CTRL-C tugmachasi bilan tugamaguncha aylaning: # PIR holatining joriy holatini o'qing = GPIO.input (pinpir) # Agar currentstate bo'lsa PIR ishga tushiriladi == 1 va oldingi davlat == 0: chop etish ("Harakat aniqlandi!") # Sizning voqea nomi, kaliti va json parametrlari (qiymatlari) bilan IFTTT manzilingiz r = request.post ('https://maker.ifttt.com/trigger /YOUR_EVENT_NAME/bilan/kalit/YOUR_KEY_HERE ', params = {"qiymat1": "hech biri", "qiymat2": "hech kim", "qiymat3": "hech biri"}) # Oldingi yangi holatni qayd qilish oldingi holat = 1 # 120 soniya kuting agni aylantirishdan oldin ain print ("120 soniya kutilmoqda") time.sleep (120) # Agar PIR tayyor holatga qaytgan bo'lsa elif currentstate == 0 va oldingi holat == 1: print ("Ready") previousstate = 0 # 10 millisekund kuting.sleep (0.01) KeyboardInterruptdan tashqari: chop etish ("Chiqish") # GPIO sozlamalarini tiklash GPIO.cleanup ()

Xursand bo'ling!

Tavsiya: