Bonjour,

Je me permets de vous déranger car j'ai un petit problème, en effet je suis entrain de créer une sorte d'intercrépusculaire avec ma raspberry pi un mcp3008 une photorésistance ainsi que d'une résistance.

J'arrive à allumer la lumière à partir de 17h s'il fait nuit sinon plus tard automatiquement en fonction de la luminosité mais je voudrais que l'éclairage s'éteigne à 1h du matin mais le lendemain et c'est à ce moment que je coince.

Je vous mets mon code pour que vous puissiez voir comment ça tourne dans ma tête

Code : 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
31
32
33
34
 
# Création des différentes variables qui permettent de récupérer l'heure réelle et de créer une heure
today = datetime.time(datetime.now())
soirstart = today.replace(hour=17, minute=0, second=0, microsecond=0)
soirstop = today.replace(hour=1, minute=0, second=0, microsecond=0)
matinstart = today.replace(hour=6, minute=0, second=0, microsecond=0)
matinstop = today.replace(hour=7, minute=0, second=0, microsecond=0)
 
# Affichage des variables pour voir si tout est bien paramétré 
print("today : " + str(today))
print("soir start : " + str(soirstart))
print("soir stop: " + str(soirstop))
print("matin start : " + str(matinstart))
print("matin stop : " + str(matinstop))
 
# Valeur c'est la valeur que me renvoi la photoresistance
 
# Si la valeur est supérieure à 900 et l'heure est comprise entre 17h et le lendemain 1h du matin alors allume
# Sinon si la valeur est supérieur à 900 et l'heure est comprise entre 6h du matin et 7h du matin alors allume
# Sinon eteint
if (valeur > 900) and (soirstart<today<soirstop):
        print("Soir")
        GPIO.setup(21, GPIO.OUT)
 
elif (valeur > 900) and (matinstart<today<matinstop):
        print("Matin")
        GPIO.setup(21, GPIO.OUT)
 
else :
        print("Pas de lumière")
        GPIO.setup(21, GPIO.IN)
 
# On attend 0.5 seconde et on recommence 
time.sleep(0.5)
donc comme vous pouvez le voir j'ai paramétré des heures auxquelles je veux que ça s'allume et que ça s'éteigne mais le hic c'est pour "soirstop" car je peux ajouter une journée a la date mais dès qu'il sera minuit a l'heure réelle je passerai encore sur le jour d'après et ainsi de suite

J'espère que vous pourrez m'aider à résoudre ce petit problème

Merci d'avance