2
Bonjour, aujourd'hui j'ai mis en place un capteur de proximité type reflex pour allumer un cage d'escalier tout sa avec seulement mon boitier modifier et quelque composant.



Vous aurez donc besoin de :

-un raspberry pi :D
-une alimentation de 12VDC pour le capteur
-une carte électronique qui va transformer le signal de 12vdc en 3.3vdc. Je l'ai pris sur ebay http://cgi.ebay.fr/ws/eBayISAPI.dll?ViewItem&item=181098687818&ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649#ht_500wt_1288
-une lampe pas trop puissant pour mettre la carte relais 5v
-donc une carte relais 5v citer dans mes sujet precedent
-et pour finir un capteur , personnellement j'ai recuperer un capteur festo

Ensuite il faut câbler tout sa, j'ai fait un schéma mais il faut savoir que je n'ai pas fait la solution la plus simple, je m'explique vu que beaucoup de chose on était récupérer les tension d'alimentation ne sont pas les même que le raspberry il faut donc rusé.

schéma :
Une fois fait, il faut passer à la partie programmation j'ai personnelemment opter pour un petit programme python, à chaque passage la lampe va s'allumer pendant 10 seconde.
Alors on creer un fichier :
sudo nano /home/pi/raspi-button.py

ont y colle ceci en changer les variable en consequent :
#!/usr/bin/env python
# -*- coding: latin-1 -*-

import RPi.GPIO as GPIO, time
import time
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
         #Numeros gpio de la lampe et button 
LAMPE = 23   
BUTTON1 = 7

# Dernier état connu du capteur
# Par defaut: le capteur n'est pas considéré comme activé
BUTTON1_STATE = False

GPIO.setup(LAMPE, GPIO.OUT)
GPIO.setup(BUTTON1, GPIO.IN)

while True:
        # -- Lecture avec déparasitage logiciel
        # Si le capteur a 1, la broche GPIO est raccordée
        #   à la masse. Le GPIO est donc à LOW (bas).
        #   Capteur a 1 -> Input = LOW = False
        gpioRead1 = GPIO.input( BUTTON1 )
        state1    = not(gpioRead1)
        # SI changer d'etat ALORS refaire lecture de déparasitage
        if( state1 != BUTTON1_STATE ):
                # - attendre 10ms
                time.sleep( 10 / 1000 )
                # faire une 2ieme lecture
                gpioRead2 = GPIO.input( BUTTON1 )
                state2 = not(gpioRead2)
                # SI les deux lectures concordent
                # ALORS memoriser le nouvel etat du capteur
                if( state1 == state2 ):
                        BUTTON1_STATE = state2
 # -- Programme principal --
        # SI capteur a 1
        # ALORS allumer la Lampe
        if( BUTTON1_STATE == True ):
                GPIO.output(LAMPE, False)
        else:
                GPIO.output(LAMPE, True)
                time.sleep(15)
Rendre le script executable :
 chmod +x raspi-button.py
 Une fois fait il ne rest plus que lancer le script :
sudo  /home/pi/raspi-button.py
ou pour mettre en fond de tache :
 sudo /home/pi/raspi-button.py &

Voila, c'est fini :D à bientôt.

Publier un commentaire

  1. Excellent ! je vais tester... En tout cas cela me donne des idées.
    Romain

    RépondreSupprimer
  2. Merci beaucoup, j aimerai bien savoir plus d'informations sur la carte relais

    RépondreSupprimer

 
Top