Table des matières:
Vidéo: Capteur de mouvement Raspberry Pi IFTTT : 4 étapes
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
Bonjour. Je suis en 4e année et aujourd'hui nous allons fabriquer un capteur de mouvement IFTTT
Fournitures
1x petite boîte en carton
1x raspberry pi modèle b+ ou a+
1x capteur PIR https://www.amazon.com/gp/product/B07KZW86YR/ref=p… (Divers) fils de liaison
1x ampoule intelligente (facultatif)
Ruban adhésif (facultatif)
compte ifttt
Étape 1: Coupez:
Découpez un petit trou au milieu du haut de la boîte.
Étape 2: Fixation du capteur PIR:
Connectez la broche du capteur PIR étiquetée VCC à la broche 5V du Raspberry Pi. Cela alimente le capteur PIR. Connectez celui étiqueté GND à une broche de terre sur le Pi (également étiqueté GND). Ceci termine le circuit. Connectez celui étiqueté OUT à n'importe quelle broche GPIO numérotée sur le Pi. Dans cet exemple, nous avons choisi GPIO 4. La broche OUT produira une tension lorsque le capteur détectera un mouvement. La tension sera alors reçue par le Raspberry Pi.
Étape 3: Configurer les Webhooks:
créez une nouvelle applet, puis sélectionnez Webhooks. puis faites de même avec les notifications.
Étape 4: Coder:
Pour python 3 ou thonny
# ! /usr/bin/python # Importsimport RPi. GPIO as GPIOimport timeimport request # Définir la convention de nommage GPIOGPIO.setmode(GPIO. BCM) # Désactiver les avertissements GPIOGPIO.setwarnings(False) # Définir une variable pour contenir la broche GPIO identitypinpir = 17 # Définir la broche GPIO comme inputGPIO.setup(pinpir, GPIO. IN) # Variables pour conserver les états actuel et derniercurrentstate = 0previousstate = 0 try: print("En attente que le PIR s'installe …") # Boucle jusqu'à ce que la sortie PIR soit à 0 pendant que GPIO.input(pinpir) == 1: currentstate = 0 print(" Ready") # Boucle jusqu'à ce que les utilisateurs quittent avec CTRL-C tandis que True: # Lire l'état du PIR currentstate = GPIO.input(pinpir) # Si le PIR est déclenché si currentstate == 1 et état précédent == 0: print("Mouvement détecté !") # Votre URL IFTTT avec le nom de l'événement, la clé et les paramètres json (valeurs) r = request.post('https://maker.ifttt.com/trigger /YOUR_EVENT_NAME/with/key/YOUR_KEY_HERE', params={"value1":"none", "value2":"none", "value3":"none"}) # Enregistrer le nouvel état précédent previousstate = 1 #Attendez 120 secondes avant de boucler ag ain print("Waiting 120 seconds") time.sleep(120) # Si le PIR est revenu à l'état prêt elif currentstate == 0 and previousstate == 1: print("Ready") previousstate = 0 # Attendre 10 millisecondes.sleep(0.01) sauf KeyboardInterrupt: print(" Quit") # Réinitialiser les paramètres GPIO GPIO.cleanup()
Prendre plaisir!