Mündəricat:

Raspberry Pi Motion Sensor IFTTT: 4 addım
Raspberry Pi Motion Sensor IFTTT: 4 addım

Video: Raspberry Pi Motion Sensor IFTTT: 4 addım

Video: Raspberry Pi Motion Sensor IFTTT: 4 addım
Video: CS50 2013 - Week 10, continued 2024, Noyabr
Anonim
Raspberry Pi Hərəkət Sensoru IFTTT
Raspberry Pi Hərəkət Sensoru IFTTT
Raspberry Pi Hərəkət Sensoru IFTTT
Raspberry Pi Hərəkət Sensoru IFTTT

Salam. Mən 4 -cü sinif şagirdiyəm və bu gün IFTTT hərəkət sensoru hazırlayacağıq

Təchizat

1 x kiçik karton qutu

1x moruq pi modeli b+ və ya+

1x PIR sensoru https://www.amazon.com/gp/product/B07KZW86YR/ref=p…(Müxtəlif) keçid telləri

1x ağıllı ampul (isteğe bağlı)

Yapışqan bant (isteğe bağlı)

ifttt hesabı

Addım 1: kəsin:

Kəs
Kəs

Qutunun yuxarı hissəsinin ortasında kiçik bir çuxur kəsin.

Addım 2: PIR Sensorunun Bağlanması:

PIR sensorunun quraşdırılması
PIR sensorunun quraşdırılması
PIR sensorunun quraşdırılması
PIR sensorunun quraşdırılması

PIR sensorunun VCC etiketli pinini Raspberry Pi üzərindəki 5V pininə qoşun. Bu, PIR sensoruna güc verir. GND etiketli olanı Pi üzərindəki bir topraklama pininə (həmçinin GND etiketli) bağlayın. OUT etiketli olanı Pi üzərindəki hər hansı bir nömrəli GPIO pininə qoşun. Bu nümunədə GPIO 4 seçdik. Sensor hərəkət algıladığında ÇIKIŞ pin bir gərginlik çıxaracaq. Gərginlik daha sonra Raspberry Pi tərəfindən alınacaq.

Addım 3: Veb Qarmaqlarını Qurun:

Veb Kancaları Qurun
Veb Kancaları Qurun

yeni bir applet edin və sonra Webhooks seçin. və sonra bildirişlərlə eyni şeyi edin.

Addım 4: Kod:

Python 3 və ya thonny üçün

#! /usr/bin/python # RPi. GPIO -nu GPIOimport etmək üçün vaxt idxalı istəkləri # GPIO adlandırma konvensiyasını qurunGPIO.setmode (GPIO. BCM) # GPIO xəbərdarlıqlarını söndürün # GPIO pinini inputGPIO.setup (pinpir, GPIO. IN) olaraq təyin edin # Mövcud və son vəziyyətləri saxlamaq üçün dəyişənlər cari cərəyan = 0previousstate = 0 cəhd edin: çap edin ("PIR -in həll olunmasını gözləyir …") # GPIO zamanı PIR çıxışı 0 olana qədər döngə edin..input (pinpir) == 1: currentstate = 0 print ("Hazır") # Doğru olarkən istifadəçilər CTRL-C ilə çıxana qədər döngə: # PIR vəziyyətini oxu Currentstate = GPIO.input (pinpir) # Currentstate olarsa PIR tetiklenirse == 1 və əvvəlki dövlət == 0: çap ("Hərəkət aşkarlandı!") # Hadisə adı, açar və json parametrləri (dəyərləri) olan IFTTT URL'niz r = request.post ('https://maker.ifttt.com/trigger /YOUR_EVENT_NAME/with/key/YOUR_KEY_HERE ', params = {"value1": "none", "value2": "none", "value3": "none"}) # Yeni əvvəlki vəziyyəti qeyd edin əvvəlki dövlət = 1 # 120 saniyə gözləyin ag döngəsindən əvvəl ain print ("120 saniyə gözləyir") vaxt.yuxu (120) # Əgər PIR hazır vəziyyətə qayıdırsa elif currentstate == 0 və əvvəlki vəziyyət == 1: print ("Hazır") previousstate = 0 # 10 milisaniyə gözləyin.yuxu (0.01) KeyboardInterrupt istisna olmaqla: yazdır ("Çıx") # GPIO parametrlərini sıfırla GPIO.cleanup ()

Zövq alın!

Tövsiyə: