Affichage de compte à rebours précis pour le Nouvel An avec Arduino et matrice LED
Composants et fournitures
| Composant | Quantité |
|---|---|
| Matrice LED Adafruit 16x32 | 1 |
| Horloge temps réel DS3231 (avec pile bouton 3V) | 1 |
| Alimentation 5V 2A+ et prise femelle DC | 1 |
| Arduino UNO | 1 |
| Fils de connexion (genériques) | 1 |
Applications et services en ligne
- Arduino IDE
À propos de ce projet
Présentation
Cet affichage spectaculaire a été conçu comme un compte à rebours pour le Nouvel An 2019, mais il peut être utilisé pour tout événement. L'attente d'anniversaires, de vacances, de voyages ou de toute occasion spéciale peut être rendue excitante grâce à ce projet.
L'appareil bascule automatiquement entre les types d'affichage (par exemple : jours et heures lorsqu'il reste des jours, puis secondes seules à l'approche de l'événement). Pendant l'affichage, un cycle de couleurs RVB fluide anime le texte. Lorsque l'événement arrive, un message personnalisé et un fond RVB animé s'affichent.
Grâce à une horloge temps réel (RTC) avec sa propre pile, l'appareil conserve l'heure exacte même débranché.
Configuration du RTC
Pour utiliser le RTC correctement, il faut d'abord régler son heure. Nous utiliserons l'Arduino Uno et le module RTC.
- Insérez une pile bouton 3V dans le module RTC.
- Effectuez les connexions suivantes :
- UNO GND → RTC GND
- UNO 5V → RTC VCC
- UNO A5 → RTC SCL
- UNO A4 → RTC SDA
- Copiez le code « Accurate RTC Clock setter » depuis le dépôt GitHub lié dans la section Code. Collez-le dans un nouveau sketch dans l'Arduino IDE.
- Installez les bibliothèques nécessaires : RTClib et RGBmatrixPanel via le gestionnaire de bibliothèques (Croquis → Inclure une bibliothèque → Gérer les bibliothèques).
- Dans la fonction
setup(), la méthodertc.adjust()règle l'horloge RTC sur la date et l'heure de la compilation du sketch. Un attributTimeSpan()ajoute un nombre de secondes pour compenser le temps de compilation et de téléversement. - Téléversez le sketch sur l'Arduino Uno et ouvrez le moniteur série.
- Allez sur time.gov pour obtenir l'heure exacte avec les secondes, comparez avec le moniteur série et calculez la différence. Ajustez la valeur dans
TimeSpan()jusqu'à ce que les heures soient parfaitement synchronisées. - Une fois le RTC synchronisé, vous pouvez passer à l'étape suivante.
Construction de l'affichage
Référez-vous au guide Adafruit : Matrice LED RGB 32x16 / 32x32.
- Alimentation : La matrice LED consomme beaucoup de courant. Coupez et dénudez le câble d'alimentation de la matrice (il possède des anneaux ou languettes métalliques). Insérez et serrez les fils dans la prise femelle DC. Assurez-vous que les fils dénudés ne se touchent pas (du ruban électrique est recommandé).
- Branchez l'affichage pour vérifier les connexions : s'il n'y a pas d'étincelles, l'alimentation est correcte.
- Suivez les instructions pour localiser l'entrée de la matrice, puis câblez l'Arduino selon le schéma. Note : chaque fois que les images indiquent une broche D, remplacez-la par une broche GND supplémentaire.
- Le câblage final doit ressembler à l'image ci-dessous.
Le câblage du RTC reste inchangé.
Programmation de l'affichage
- Copiez le code « Arduino Code » depuis le dépôt GitHub et collez-le dans l'Arduino IDE.
- Avant de téléverser, modifiez la date et l'heure de l'événement visé ainsi que le message à afficher une fois l'événement arrivé. Ces deux éléments sont clairement commentés en haut du sketch.
- La variable
RGBPulseSpeedcontrôle la vitesse du cycle de couleurs RVB. Commencez avec une valeur inférieure à 10. - Installez les bibliothèques supplémentaires nécessaires :
- Adafruit GFX Library (via le gestionnaire de bibliothèques)
- DS3231 Library (via le gestionnaire de bibliothèques)
- Time Library : téléchargez le ZIP depuis GitHub, puis dans l'IDE : Croquis → Inclure une bibliothèque → Ajouter la bibliothèque .ZIP.
- Une fois les variables modifiées et les bibliothèques installées, téléversez le sketch sur l'Arduino.
Boîtier
Je n'ai pas encore conçu de boîtier formel, mais je recommande d'utiliser l'emballage de la matrice LED pour loger l'Arduino, le RTC et le câblage excédentaire, puis de fixer le panneau par-dessus à l'aide des vis magnétiques fournies.
Je suggère également de coller une feuille de papier calque (ou papier sulfurisé) sur la matrice pour adoucir la lumière éblouissante et masquer partiellement les LED inutilisées. Plus de couches donnent un rendu plus chaud mais moins lumineux.
Utilisation
- Alimentez l'Arduino via un bloc USB 5V (chargeur secteur). L'appareil nécessite deux prises (une pour la matrice, une pour l'Arduino), ce qui est la méthode la plus sûre.
- Le compte à rebours s'adapte automatiquement au temps restant. Une fois l'événement arrivé, le message et l'animation RVB s'affichent. Débranchez simplement les deux câbles pour arrêter.
- Si le compte à rebours est inexact, réutilisez le code de réglage du RTC pour le corriger. La précision du timing est cruciale.
Évolutions futures
- Ajouter plus d'animations pour l'arrivée de l'événement (feux d'artifice, bougies d'anniversaire, etc.).
- Permettre plus de personnalisation des messages.
- Améliorer la lisibilité et l'efficacité du code (ce projet a été réalisé rapidement, commencé la veille du Nouvel An).
Merci d'avoir consulté ce projet. N'hésitez pas à me contacter pour toute question ou commentaire, je répondrai rapidement.
Pendant que vous êtes là, jetez un œil à :
- Mes autres projets
- Ma chaîne YouTube
- Mon site web
N'oubliez pas de « respecter » (like) si vous avez aimé ce projet et de me suivre pour d'autres projets similaires.
Code
Après avoir branché le RTC sur un Arduino, téléversez le sketch « accurate RTC clock setter » en modifiant le TimeSpan dans setup() jusqu'à obtenir une précision optimale. Ensuite, collez le code « Arduino Code » dans l'IDE, téléversez-le sur le projet et profitez du résultat.
Dépôt GitHub : https://github.com/miles-nash/countdown-clock
Processus de fabrication
- Surmonter les obstacles du développement de nouveau produit : Un plan éprouvé
- Événement de réseautage chaîne d'approvisionnement éolien offshore NJ — 29 nov. 2024
- Jeu UFO Attack DIY avec Arduino UNO et Afficheur MAX7219
- Bill Lauer prend sa retraite de DVIRC, signalant une nouvelle ère en développement des affaires
- Horloge 3D RGB Arduclock – Montre LED Bluetooth avec horloge temps réel
- Surveillance de la Qualité de l'Eau : Système Arduino MKR1000 pour Rivières et Lacs
- Construire un Iron Man animé avec Arduino : capteurs, sons et relais
- Découvrez la technologie d'enroulement filamentaire de pointe et les tendances du marché à la conférence World of Filament Winding
- Nouvelle Année, Nouvelle Efficacité : Résolutions Clés pour Votre Système d'Air Comprimé