Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : novembre 2018
    Messages : 1
    Points : 1
    Points
    1

    Par défaut Programmation capteurs PIR Raspberry

    Bonjour à tous,

    Dans le cadre d'un projet, je souhaite comptabiliser des objets passant devant un capteur PIR. L'objectif est d'afficher sous forme de deux compteurs le nombre d'objets passés. Voici le matériel que j'ai: 1 carte raspberry PI 3, 2 capteurs PIR et une board.
    J'ai réussi à connecté les deux capteurs et à lire le changement d'état si un objet passe devant. Cependant je n'arrive pas à faire un compteur... En faisant une boucle, je n'arrive que à changer la variable lié à un capteur et pas les deux en même temps.. Avez vous une idée? Merci d'avance, je ne suis pas un pro du code.. D'ailleurs, le voici:

    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    import RPi.GPIO as GPIO
    import time
    i=0
    j=0
     
    def callback_up(channel):
        i=0
        print(i) #je souhaite faire ma variable i+1 et afficher la valeur
     
    def callback_up2(channel):
        j=0
        print(j) #je souhaite faire ma variable j+1 et afficher la valeur
     
     
    PIR = 7
    PIR2 = 8
    GPIO.setmode(GPIO. BCM)
    GPIO.setup(PIR, GPIO.IN)
    GPIO.setup(PIR2, GPIO.IN)
     
    try:
        GPIO.add_event_detect(PIR, GPIO.RISING, callback=callback_up)
        GPIO.add_event_detect(PIR2, GPIO.RISING, callback=callback_up2)
     
        while 1:
            time.sleep(100)        
     
    except KeyboardInterrupt:
        print(" Cleaning up the GPIO")
        GPIO.cleanup()

    Merci d'avance pour vos réponses
    Raphaël

  2. #2
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Ingénieur systèmes embarqués
    Inscrit en
    juin 2009
    Messages
    3 980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur systèmes embarqués

    Informations forums :
    Inscription : juin 2009
    Messages : 3 980
    Points : 11 089
    Points
    11 089
    Billets dans le blog
    1

    Par défaut

    Salut,

    Déjà, dans tes fonctions, tu écris i=0 et j=0, aucune chance que ça s'incrémente. Mais je suppose que tu ne montres pas ton "vrai" code.

    Ton problème est lié à la portée des variables. Dans tes fonctions, i et j sont inconnues car définies ailleurs. Regarde ce code qui te donnera une solution :
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    i = 0
    j = 0
     
    def f():
        i = 10
     
    def g():
        global j
        j = 50
     
    print(i)
    print(j)
     
    f()
    g()
     
    print(i)
    print(j)

Discussions similaires

  1. Transmission de données capteurs analogiques / Raspberry
    Par Tomchlo dans le forum Raspberry Pi
    Réponses: 4
    Dernier message: 09/02/2018, 23h00
  2. Réponses: 5
    Dernier message: 22/11/2017, 20h31
  3. [Électronique] Capteur PIR retour d'expérience
    Par julien terrier dans le forum Embarqué
    Réponses: 0
    Dernier message: 18/07/2017, 16h44
  4. Problème capteur PIR (avec Raspberry pi)
    Par MRdu75 dans le forum Raspberry Pi
    Réponses: 4
    Dernier message: 20/05/2016, 22h08
  5. [Débutant] programme capteur de mouvement
    Par CrashouilleX22 dans le forum C#
    Réponses: 6
    Dernier message: 22/03/2013, 11h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo