Commit d3625eb0 authored by Abdessamad Akabli's avatar Abdessamad Akabli

- Ajout des fonctionnalités suivantes :

    - 'Allumer_les_Led()',Eteindre_les_Led(),'Faire_Clignoter_les_Led()'
- Activer les fonctions lier au contrôle des Leds lorsqu'il y a besoin.
parent 336c1214
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Créé le 30/03/2018
@authors : Killian/Abdessamad
"""
"""On import la bibliothèque qui nous permettra de gérer le serveur"""
import liblo import liblo
from threading import Thread from threading import Thread
import RPi.GPIO as GPIO
import time
serveur = None serveur = None
port = 1234 port = 1234
class Serv(Thread): class Serv(Thread):
def __init__(self): def __init__(self):
Thread.__init__(self) Thread.__init__(self)
print("Thread initialisé ...") print("Thread initialisé ...")
def run(self)
global serveur, port def run(self):
global serveur
serveur = liblo.Server(port) serveur = liblo.Server(port)
print("Le serveur a été créé") print("Le serveur a été créé")
print("Le serveur écoute sur le port '{0}' ".format(port)) print("Le serveur écoute sur le port '{0}' ".format(port))
while True: while True:
server.recv(50) serveur.recv(50)
serveur.add_method("/signaletique/enregistrement/interrupteur", "sT", interrupteur_callback) serveur.add_method("/signaletique/enregistrement/interrupteur", "sT", interrupteur_callback)
serveur.add_method("/signaletique/enregistrement/interrupteur", "sF", interrupteur_callback) serveur.add_method("/signaletique/enregistrement/interrupteur", "sF", interrupteur_callback)
serveur.add_method(None, None, capture_tout_le_reste_callback) serveur.add_method(None, None, capture_tout_le_reste_callback)
thread = Serv() thread = Serv()
thread.start() thread.start()
INTERRUPTEUR = False INTERRUPTEUR = False
def interrupteur_callback(chemin, parametres): def interrupteur_callback(chemin, parametres):
...@@ -31,6 +45,8 @@ def interrupteur_callback(chemin, parametres): ...@@ -31,6 +45,8 @@ def interrupteur_callback(chemin, parametres):
ancien_etat = INTERRUPTEUR ancien_etat = INTERRUPTEUR
INTERRUPTEUR = etat_demande INTERRUPTEUR = etat_demande
print("Interrupteur positionné depuis '{}' vers '{}'".format(ancien_etat, etat_demande)) print("Interrupteur positionné depuis '{}' vers '{}'".format(ancien_etat, etat_demande))
Allumer_les_Led()
print("Les Leds sont allumées !")
else: else:
print("Clef de sécurité '{}' invalide, demande refusée".format(clef_securite)) print("Clef de sécurité '{}' invalide, demande refusée".format(clef_securite))
print("Interrupteur conservé en l'état '{}'".format(INTERRUPTEUR)) print("Interrupteur conservé en l'état '{}'".format(INTERRUPTEUR))
...@@ -41,3 +57,30 @@ def capture_tout_le_reste_callback(chemin, parametres, types, origine): ...@@ -41,3 +57,30 @@ def capture_tout_le_reste_callback(chemin, parametres, types, origine):
print("Paramètre de type '{}' = {}".format(type, valeur_parametre)) print("Paramètre de type '{}' = {}".format(type, valeur_parametre))
interrupteur_callback(chemin, parametres) interrupteur_callback(chemin, parametres)
LedPin = 40 # pin 40
def initialisation():
GPIO.setmode(GPIO.BOARD) # met le gpio avec son emplacement physiquement
GPIO.setup(LedPin, GPIO.OUT) # met le pin 40 en output
GPIO.output(LedPin, GPIO.HIGH) # met pin 40 en hight (+3,3V)
def Faire_Clignoter_les_Led():
while True:
GPIO.output(LedPin, GPIO.HIGH) # led allumée
time.sleep(1)
GPIO.output(LedPin, GPIO.LOW) # led éteinte
time.sleep(1)
def Allumer_les_Led():
GPIO.output(LedPin, GPIO.HIGH) # led allumée
def Eteindre_les_Led():
GPIO.output(LedPin, GPIO.LOW) # led éteinte
if __name__ == '__main__': # début de la boucle
initialisation()
Faire_Clignoter_les_Led()
Allumer_les_Led()
Eteindre_les_Led()
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment