Sisukord:
Video: Raspberry Pi liikumisandur IFTTT: 4 sammu
2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-13 06:57
Tere. Olen neljanda klassi õpilane ja täna hakkame tegema IFTTT liikumisandurit
Tarvikud
1x väike pappkarp
1x vaarika pi mudel b+ või a+
1x PIR -andur https://www.amazon.com/gp/product/B07KZW86YR/ref=p… (Erinevad) hüppajajuhtmed
1x nutikas lambipirn (valikuline)
Kleeplint (valikuline)
ifttti konto
Samm: lõigake:
Lõika karbi ülaosa keskele väike auk.
Samm: PIR -anduri kinnitamine:
Ühendage PIR -anduri VCC -märgistusega tihvt Raspberry Pi 5V pistikuga. See annab PIR -andurile toite. Ühendage üks märgistusega GND Pi -ga (ka märgistusega GND). See lõpetab vooluringi. Ühendage üks märgistusega OUT mis tahes nummerdatud GPIO -pistikuga Pi -l. Selles näites oleme valinud GPIO 4. OUT pin annab väljundpinge, kui andur tuvastab liikumise. Seejärel võtab pinge vastu Raspberry Pi.
Samm: veebihaakide seadistamine:
looge uus aplett ja seejärel valige Webhooks. ja seejärel tehke sama märguannetega.
4. samm: kood:
Python 3 või thonny jaoks
#! /usr/bin/python # Importsimport RPi. GPIO kui GPIOimportige ajaimpordi taotlused # Määrake GPIO nimetamise tavaGPIO.setmode (GPIO. BCM) # Lülitage GPIO hoiatused välja # Määra GPIO pin sisendiksGPIO.setup (pinpir, GPIO. IN) # Muutujad praeguse ja viimase oleku hoidmiseks.input (pinpir) == 1: currentstate = 0 print ("Valmis") # Loop kuni kasutajad lõpetavad CTRL-C, samas True: # Loe PIR oleku currentstate = GPIO.input (pinpir) # Kui PIR käivitatakse, kui praegune olek == 1 ja eelmine riik == 0: print ("Liikumine tuvastatud!") # Teie IFTTT -URL koos sündmuse nime, võtme ja jsoni parameetritega (väärtused) r = request.post ('https://maker.ifttt.com/trigger /YOUR_EVENT_NAME/koos/võtmega/YOUR_KEY_HERE ', params = {"value1": "pole", "value2": "pole", "value3": "pole"}) # Salvesta uus eelmise oleku staatus = 1 #Oota 120 sekundit enne loopimist ag ain print ("Ootab 120 sekundit") time.sleep (120) # Kui PIR on taastunud valmisolekusse elif flowcate == 0 ja eelmine riik == 1: print ("Ready") previousstate = 0 # Oodake 10 millisekundit.sleep (0.01), välja arvatud KeyboardInterrupt: print ("Quit") # Lähtesta GPIO seaded GPIO.cleanup ()
Nautige!