lundi 1 octobre 2018

Horloge Wi-Fi (ESP8266)

Le projet d'aujourd'hui consiste à utiliser un module ESP8266 afin d'obtenir l'heure et la date d'un serveur NTP (Network Time Protocol). De cette façon, nous obtiendrons une horloge qui vérifiera périodiquement, par Wi-Fi,  que l'heure qu'elle affiche est en accord avec l'heure officielle. Cette fonctionnalité peut également s'avérer utile pour toute autre application pour laquelle votre ESP8266 aurait besoin de connaître l'heure ou la date: data logging, tâches qui doivent être effectuées automatiquement à un moment particulier, etc.

Sketch 1: affichage de l'heure et de la date sur le moniteur série

Le sketch ci-dessous constitue un bon point de départ pour explorer l'utilisation d'un serveur NTP, puisque vous pouvez en faire l'essai sans qu'il soit nécessaire de brancher quoi que ce soit à votre module ESP8266. Le module communique avec un serveur NTP afin de connaître la date et l'heure. Chaque seconde, la date et l'heure sont affichées dans le moniteur série de l'IDE Arduino.  Toutes les 5 minutes, le serveur NTP est interrogé pour s'assurer que l'heure affichée est correcte (remarquez que, pour la plupart des applications, il n'est probablement pas utile d'interroger le serveur aussi souvent).

Le sketch ne nécessite l'installation d'aucune bibliothèque, mises à part celles qui sont déjà installées par défaut pour la programmation de l'ESP8266.

Le fuseau horaire est pris en compte grâce à la constante "decalage": une valeur de -4 convient au fuseau horaire de l'est de l'Amérique du Nord (c'est là que j'habite) mais si vous habitez ailleurs, il faudra certainement modifier sa valeur (je crois que 2 serait la valeur appropriée pour la France).

Même remarque concernant l'adresse choisie pour le serveur NTP. J'ai utilisé une adresse permettant d'interroger des serveurs canadiens (ca.pool.ntp.org), mais vous préférerez peut-être faire appel à un serveur situé plus près de chez vous, comme europe.pool.ntp.org ou africa.pool.ntp.org .






Sketch 2: affichage de l'heure et de la date sur un afficheur TM1638

Dans cette deuxième version, l'heure est affichée sur un afficheur à base de TM1638. Pendant que le bouton S1 est enfoncé, l'heure est remplacée par la date.




Ce sketch nécessite l'installation de la bibliothèque ErriezTM1638, et le module afficheur LED and KEY a été branché de la même façon que dans mon billet ESP8266 et afficheur à base de TM1638.




-


Yves Pelletier   (TwitterFacebook)

Aucun commentaire:

Enregistrer un commentaire

Related Posts Plugin for WordPress, Blogger...