Table des matières:

Horloge, écran LCD, infrarouge à régler : 6 étapes
Horloge, écran LCD, infrarouge à régler : 6 étapes

Vidéo: Horloge, écran LCD, infrarouge à régler : 6 étapes

Vidéo: Horloge, écran LCD, infrarouge à régler : 6 étapes
Vidéo: [Arduino] Contrôlez votre Ecran LCD 16*2 et affichez différents messages via un bouton(Code+Montage) 2024, Juillet
Anonim
Horloge, écran LCD, infrarouge à régler
Horloge, écran LCD, infrarouge à régler
Horloge, écran LCD, infrarouge à régler
Horloge, écran LCD, infrarouge à régler

Construisez une horloge en temps réel qui maintient l'heure d'actionnement en quelques minutes par an. Le code et les composants peuvent facilement être réutilisés dans d'autres projets.

Ce projet nécessite un minimum de câblage et aucune soudure. Le chronométreur est une horloge temps réel DS3231. L'heure est affichée sur un écran LCD 1602 bon marché. Les deux modules utilisent les communications I2C. I2C n'utilise que 2 fils par module lors de la connexion à un Arduino. J'utilise un Arduino Nano car il s'adapte bien à une planche à pain. Les instructions suivantes fonctionneront avec un Arduino Uno car il a les mêmes numéros de broche que le Nano pour ce projet. L'autre composant est le récepteur infrarouge. Il vous permet d'utiliser une télécommande commune telle qu'une télécommande TV pour régler l'heure comme vous le feriez sur notre smart TV. Le récepteur infrarouge ne nécessite qu'un seul fil pour le connecter à l'Arduino.

La première étape consiste à tester l'Arduino et à le câbler à la maquette. Les étapes suivantes sont conçues pour fonctionner de manière indépendante. Chaque étape comporte des instructions de câblage et des instructions de test. Lorsque je crée des projets, je câble et teste chaque composant pour confirmer qu'ils fonctionnent. Cela permet d'intégrer nombre de composants car sachez que chacun travaille et que je peux me concentrer sur les exigences d'intégration.

Ce Instructable nécessite que vous ayez installé l'IDE Arduino. Vous devez également avoir les compétences de base pour télécharger un programme d'esquisse Arduino à partir des liens de ce projet, créer un répertoire pour le programme (nom de répertoire identique au nom du programme). Les prochaines étapes consistent à charger, afficher et éditer le programme dans l'IDE. Ensuite, téléchargez le programme via un câble USB sur votre carte Arduino.

Fournitures

  • Carte micro contrôleur Nano V3 ATmega328P CH340G pour Arduino. Comme alternative, vous pouvez utiliser un Uno.
  • Horloge temps réel DS3231 et pile CR2032.
  • 1602 LCD avec un module I2C
  • Récepteur infrarouge et télécommande. J'ai utilisé un kit de module de télécommande sans fil IR fourni avec un récepteur infrarouge et une télécommande infrarouge.
  • Planche à pain
  • Câbles métalliques
  • Adaptateur mural 5 volts

J'ai acheté les pièces sur eBay, principalement auprès de distributeurs de Hong Kong ou de Chine. Les distributeurs américains proposent parfois des pièces identiques ou similaires à des prix raisonnables et une livraison plus rapide. Les pièces en Chine prennent de 3 à 6 semaines pour être livrées. Les distributeurs que j'ai utilisés ont tous été fiables.

Coûts approximatifs: Nano 3 $, DS3231 1 $, LCD 3 $, kit infrarouge 1 $, planche à pain 2 $, paquet de 40 câbles métalliques 1 $, 1 $ pour un adaptateur mural 5 volts. Total, environ 11 $. Remarque, j'ai acheté le Nano et l'écran LCD avec les broches de la maquette déjà soudées en place, car mes compétences en soudure sont médiocres. Pour la pile de l'horloge, j'ai acheté un pack de 5 piles au lithium CR2032 pour environ 1,25 $. J'ai également acheté un pack de 5 DS3231 parce que j'aime les montres. Ce projet utilise 1 maquette. J'ai acheté un paquet de 3 planches à pain pour environ 7 $; une meilleure affaire que d'acheter une planche individuelle.

Étape 1: ajouter l'Arduino Nano à la planche à pain

Ajouter l'Arduino Nano à la planche à pain
Ajouter l'Arduino Nano à la planche à pain

Branchez l'Arduino Nano sur la planche à pain. Ou, si vous préférez, vous pouvez utiliser un Arduino Uno pour ce projet; ils utilisent tous les deux les mêmes broches pour ce projet. Connectez le Nano (ou Uno) à votre ordinateur via un câble USB.

Connectez l'alimentation et la terre de l'Arduino à la barre d'alimentation de la planche à pain. Connectez la broche Arduino 5+ à la barre positive de la maquette. Connectez la broche Arduino GRN (terre) à la barre négative (terre) de la maquette. Il sera utilisé par d'autres composants.

Téléchargez et exécutez le programme de test Arduino de base: arduinoTest.ino. Lors de l'exécution du programme, le voyant LED intégré s'allumera pendant 1 seconde, puis s'éteindra pendant 1 seconde. En outre, des messages sont publiés et peuvent être consultés dans les outils Arduino IDE/Serial Monitor.

+++ Configuration.

+ Initialisation de la broche numérique LED intégrée pour la sortie. La LED est éteinte. ++ Aller à la boucle. + Compteur de boucles = 1 + Compteur de boucles = 2 + Compteur de boucles = 3 …

À titre d'exercice, modifiez la temporisation du voyant clignotant, téléchargez le programme modifié et confirmez le changement.

Sur la photo ci-dessus se trouve une boîte de kit de câbles de cavalier sans soudure de 140 pièces que vous pouvez obtenir pour 3 à 5 dollars. Ils fabriquent des cartes plus propres qu'en utilisant de longs câbles pour des connexions courtes.

Étape 2: ajoutez le module d'horloge DS3231 et connectez-le à l'Arduino

Ajoutez le module d'horloge DS3231 et connectez-le à l'Arduino
Ajoutez le module d'horloge DS3231 et connectez-le à l'Arduino

Branchez le module d'horloge dans la maquette. Connectez la broche GND du module d'horloge à la barre de mise à la terre de la planche à pain. Connectez la broche VCC du module d'horloge à la bande de barre positive de la planche à pain. Connectez la broche SDA (données) du module d'horloge à la broche A4 de l'Arduino (broche de données I2C). Connectez la broche SCL (horloge) du module d'horloge à la broche A5 de l'Arduino (broche d'horloge I2C).

Dans l'IDE Arduino, installez une bibliothèque d'horloges DS3231. Sélectionnez Outils/Gérer les bibliothèques. Filtrez votre recherche en tapant « rtclib ». Sélectionnez RTClib par Adafruit (pour référence, le lien de la bibliothèque).

Téléchargez et exécutez le programme de test de base: clockTest.ino. Lors de l'exécution du programme, des messages d'horloge sont affichés et peuvent être consultés dans les outils Arduino IDE/Serial Monitor.

+++ Configuration.

+ Horloge réglée. ++ Aller à la boucle. ---------------------------------------- + Date et heure actuelles: 2020/3/ 22 (dimanche) 11:42:3 + Date et heure actuelles: 2020/3/22 (dimanche) 11:42:4 + Date et heure actuelles: 2020/3/22 (dimanche) 11:42:5 …

À titre d'exercice, utilisez rtc.adjust() pour régler l'heure et la date de l'horloge, téléchargez le programme modifié et confirmez le changement.

rtc.adjust(DateTime(2020, 3, 19, 10, 59, 50)); // Premier jour du printemps 2020.

Étape 3: Ajoutez le module d'affichage LCD 1602 et connectez-le à l'Arduino

Ajoutez le module d'affichage LCD 1602 et connectez-le à l'Arduino
Ajoutez le module d'affichage LCD 1602 et connectez-le à l'Arduino

Branchez le module LCD dans la maquette. Connectez la broche GND du module d'horloge à la barre de mise à la terre de la planche à pain. Connectez la broche VCC du module d'horloge à la bande de barre positive de la planche à pain. Connectez la broche SDA (données) du module d'horloge à la broche A4 de l'Arduino (broche de données I2C). Connectez la broche SCL (horloge) du module d'horloge à la broche A5 de l'Arduino (broche d'horloge I2C).

Dans l'IDE Arduino, installez une bibliothèque LCD 1602. Sélectionnez Outils/Gérer les bibliothèques. Filtrez votre recherche en tapant « LiquidCrystal ». Sélectionnez LiquidCrystal I2C de Frank de Barbander (pour référence, le lien de la bibliothèque).

Téléchargez et exécutez le programme de test de base: lcd1602Test.ino. Lors de l'exécution du programme, des messages d'horloge sont affichés et peuvent être visualisés dans les outils Arduino IDE/Serial Monitor.

+++ Configuration.

+ LCD prêt à l'emploi. +++ Aller en boucle. + leCompteur = 1 + leCompteur = 2 + leCompteur = 3 …

À titre d'exercice, modifiez les messages de l'écran LCD, téléchargez le programme modifié et confirmez le changement.

Étape 4: Ajoutez le récepteur infrarouge et connectez-le à l'Arduino

Ajoutez le récepteur infrarouge et connectez-le à l'Arduino
Ajoutez le récepteur infrarouge et connectez-le à l'Arduino

Branchez les fils du câble femelle à mâle dans le récepteur infrarouge (extrémités femelles). Connectez la broche de mise à la terre du module d'horloge à la barre de mise à la terre de la planche à pain. Connectez la broche d'alimentation du module d'horloge à la bande de barre positive de la planche à pain. Connectez la broche de sortie du récepteur infrarouge à la broche Arduino A1.

Connectez le récepteur infrarouge, les broches du haut à gauche vers la droite:

Le plus à gauche (à côté du X) - Nano pin A1 Center - 5V Droite - masse

A1 + - - Connexions nano broches

| | | - Broches du récepteur infrarouge --------- |S | | | | --- | | | | | | --- | | | ---------

Dans l'IDE Arduino, installez une bibliothèque infrarouge. Sélectionnez Outils/Gérer les bibliothèques. Filtrez votre recherche en tapant « IRremote ». Sélectionnez IRremote par Shirriff (pour référence, le lien de la bibliothèque).

Téléchargez et exécutez le programme de test de base: infrarougeReceiverTest.ino. Lors de l'exécution du programme, pointez votre télécommande vers le récepteur et appuyez sur divers boutons tels que le nombre de 0 à 9. Des messages série sont émis (imprimés) et peuvent être visualisés dans les outils Arduino IDE/Serial Monitor.

+++ Configuration.

+ Initialisé le récepteur infrarouge. ++ Aller à la boucle. + Touche OK - Bascule + Touche > - suivant + Touche < - précédent + Touche haut + Touche bas + Touche 1: + Touche 2: + Touche 3: + Touche 4: + Touche 6: + Touche 7: + Touche 8: + Touche 9: + Touche 0: + Touche * (Retour) + Touche # (Sortie)

À titre d'exercice, utilisez une télécommande de télévision pour voir les valeurs imprimées. Vous pouvez ensuite modifier le programme pour utiliser les valeurs de l'instruction switch de la fonction infrarougeSwitch(). Par exemple, appuyez sur la touche "0" et obtenez la valeur de votre télécommande, par exemple "0xE0E08877". Ensuite, ajoutez un cas dans l'instruction switch comme dans l'extrait de code suivant.

cas 0xFF9867:

case 0xE0E08877: Serial.print("+ Key 0:"); Serial.println(""); Pause;

Étape 5: Chargez le programme Clock Project Arduino Sketch et testez-le

Chargez le programme Clock Project Arduino Sketch et testez-le
Chargez le programme Clock Project Arduino Sketch et testez-le
Chargez le programme Clock Project Arduino Sketch et testez-le
Chargez le programme Clock Project Arduino Sketch et testez-le
Chargez le programme Clock Project Arduino Sketch et testez-le
Chargez le programme Clock Project Arduino Sketch et testez-le

Maintenant que tous les composants sont ajoutés à la maquette, câblés et testés; il est temps de charger le programme d'horloge principal et de l'exécuter. Le programme d'horloge obtient l'heure du module d'horloge, affiche l'heure sur l'écran LCD et vous permet de régler l'heure à l'aide d'une télécommande infrarouge.

Téléchargez et exécutez le programme d'horloge du projet: clockLcdSet.ino.

Lorsque le programme démarre, il affiche l'heure du DS3231 sur l'écran LCD 1602. Les messages sont visibles dans les outils Arduino IDE/Serial Monitor.

+++ Configuration.

+ Ensemble LCD. + syncCountWithClock, theCounterHours=13 theCounterMinutes=12 theCounterSeconds=13 + Horloge réglée et synchronisée avec les variables du programme. + Récepteur infrarouge activé. ++ Aller à la boucle. + clockPulseMinute(), theCounterMinutes= 15 + clockPulseMinute(), theCounterMinutes= 16 + clockPulseMinute(), theCounterMinutes= 17 …

Pointez votre télécommande vers le récepteur et appuyez sur la touche fléchée droite. L'année sera affichée pour le réglage. Appuyez plusieurs fois sur le bouton fléché vers la droite pour voir que vous pouvez régler l'année, le mois, le jour, l'heure, les minutes et les secondes. Pour définir une valeur de temps, accédez à la valeur. Utilisez les flèches haut et bas pour régler la valeur d'affichage. Utilisez ensuite la touche "OK" pour régler la valeur de l'horloge. Une valeur est définie à la fois.

Étape 6: Alimentation externe

Alimentation externe
Alimentation externe

Maintenant que votre horloge est testée et fonctionne, vous pouvez la débrancher de votre ordinateur et utiliser une alimentation électrique indépendante. Pour plus de simplicité, j'utilise un adaptateur mural 5 volts, qui peut être acheté pour environ un dollar, et un câble USB, un autre dollar. Le câble relie l'Arduino à l'adaptateur mural +5V. Étant donné que les broches d'alimentation et de terre Arduino sont connectées à la planche à pain, cela alimentera les autres composants.

En raison de sa simplicité et de son faible coût, j'utilise cette même combinaison pour alimenter d'autres projets.

J'espère que vous avez réussi et que vous avez apprécié la construction d'une horloge LCD à commande infrarouge.

Conseillé: