Python 3 : jour ou nuit ?

Pour vos projets domotique, il peut être sympa de venir détecter les changements entre jour et nuit, par exemple pour pouvoir allumer automatiquement les lampes intérieures, activer la lumière extérieure lorsque vous le demandez, etc.

Voici donc un petit script en Python 3, sun.py, qui vous indiquera s’il fait jour, ou s’il fait nuit :

#!/usr/bin/python3
import ephem
import datetime
import time
somewhere = ephem.Observer()
somewhere.lat = '47.411252'
somewhere.lon = '-2.169095'
somewhere.elevation = 112
#
# Heure actuelle convertie en chiffres
#
heurenow = int(time.strftime('%H%M'))
#
# r1 = heure lever soleil
# s1 = heure coucher soleil
#
sun = ephem.Sun()
r1 = somewhere.next_rising(sun)
s1 = somewhere.next_setting(sun)
#
# coucher = heure du coucher du soleil, en chiffres
# on commence par convertir l'heure de coucher en chiffres
# après avoir extrait les informations inutiles (date, etc.)
#
heurec = str(s1)
long = len(heurec)
fin = long - 8
heurec = heurec[fin:long-3]
coucher = int(heurec[0:2] + heurec[3:5])
#
# lever = heure du lever du soleil, en chiffres
# on commence par convertir l'heure de lever en chiffres
# après avoir extrait les informations inutiles (date, etc.)
#
heurel = str(r1)
long = len(heurel)
fin = long - 8
heurel = heurel[fin:long-3]
lever = int(heurel[0:2] + heurel[3:5])
print ("Heure UTC coucher du soleil : ", coucher)
print ("Heure UTC lever du soleil : ", lever)
print("Heure UTC actuelle : ", heurenow)
print("")
if heurenow < coucher:
  print("il fait jour")
else:
  print("il fait nuit")

heurenow, coucher, et lever sont des variables numériques, faciles à comparer : si heure actuelle < heure du coucher du soleil, alors il faut jour. A l’inverse, il fera nuit, simple non ? Oui, bien entendu, un programmeur averti pourra sans doute faire bien plus complet et complexe, je n’en doute pas une seule seconde 🙂

Modifiez votre latitude et longitude en fonction du lieu d’utilisation bien entendu, en vous aidant par exemple de ce site très pratique.

A vous maintenant de l’adapter à vos besoins.

coucher soleil

 

Publications similaires

  • EdgeRouter et VLANs

    Il peut arriver de devoir installer plusieurs réseaux, totalement indépendants, séparés les uns des autres. Voici venu le moment de vous lancer dans les VLANs, des réseaux virtuels qui transitent simultanément sur vos liaisons ethernet, voir WiFi. Première étape, vous munir d’un routeur adapté, tel l’EdgeRouter Lite et ses 3 ports ethernet : Ce routeur va nous servir à générer les VLANs, mais également le serveur DHCP qui sera affecté à chaque VLAN : souvenez-vous, un VLAN, un réseau, et donc…

  • Hiver, glace et radio

    L’hiver, il neige, il gèle, et si le vent s’y met, les sites radio implantés en point haut se transforment en véritables glaçons, tel ce site dans les Pyrénées Atlantiques exploité par un opérateur bien connu : Difficile ainsi d’imaginer que la diffusion Wimax puisse continuer dans de telles conditions hivernales. Voici également ce qui se passe au Pic de Nore dans cet article, après avoir interrompu téléphone et internet dans l’Aude durant environ une semaine. Il est étonnant que…

  • Nouveau hotspot : coupons, paypal, gratuité, et gestion totale

    La demande en Hotspots WiFi évoluant rapidement, nous allons prochainement adapter nos offres vers une solution totalement malléable, extrêmement complète, à destinations des utilisateurs les plus exigeants. Nous avons ainsi posé plusieurs bases, après avoir observé nos concurrents : pas d’engagement mensuel, ni d’abonnement : Infracom n’a jamais souhaité rentrer dans ce genre de formule qui lie un client à un fournisseur pour une durée indéterminée, l’obligeant à sortir chaque mois une somme souvent non négligeable pour pouvoir bénéficier d’un produit…

  • Raspberry Pi 2 domotique : le capteur de température (9)

        Depuis hier, notre Framboise V2 est équipée d’un capteur de température, en la présence d’un BMP180, un capteur miniature de pression, altitude, et température.   A peine plus gros qu’un ongle, le BMP180 se relie via le bus I2C au Raspberry Pi 2. 4 fils suffisent : +, GND, et les signaux de commande I2C. Sur internet, on lit tout et son contraire sur la longueur maximale du câble utilisable en I2C : 50 cm, 1 m, 12…

  • Saint Apple valide la 4G début Janvier, alléluia !

    Le scoop du jour vient de tomber : Apple daigne valider la 4G des iPhone 5 pour Freemobile début Janvier ! Merci Apple, car nous apprenons une fois encore la façon de fonctionner de la firme pommée (ou paumée…), spécialiste du contrôle à outrance de tous ses appareils. Concrètement, vous achetez fort cher un précieux objet qui va non seulement se rayer, se plier, ou se casser, mais en plus vous n’avez pas toutes les fonctionnalités activées du départ :…

  • |

    VoWifi Android, l’arnaque des opérateurs français

    Vous avez entendu parler de la VoWifi ? Il s’agit de venir connecter votre smartphone au réseau WiFi de la maison, du bureau, et d’y faire transiter tous les appels entrants et sortant sur votre 06 ou 07 : plus de soucis si vous recevez mal la 2G, 3G ou 4G, tout basculera en WiFi. Si cela se fait de façon transparente sur les iPhone$ dernière génération, il n’en va pas de même sur Android puisque les opérateurs vous forcent…