Table des matières:
Vidéo: Affichage du compteur mural : 4 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
J'ai acheté un compteur de montre de poche bon marché sur eBay en pensant que cela ferait une nouveauté intéressante. Il s'est avéré que le compteur que j'avais acheté n'était pas adapté, mais à ce moment-là, je m'étais engagé à produire quelque chose qui serait accroché au mur et serait un sujet de discussion.
Le centre de l'affichage est un ampèremètre analogique qui est alimenté par un condensateur chargé qui se décharge à travers le compteur animant ainsi l'aiguille de l'aiguille.
Un affichage LED reflète le mouvement du pointeur offrant un affichage accrocheur.
L'ensemble est contrôlé par un microprocesseur Atmel 328, directement développé sur un Arduino Uno, qui mesure les niveaux lumineux actuels dans la pièce, et déclenche aléatoirement l'affichage, le tout alimenté par trois piles AA.
Fournitures
Arduino Uno avec processeur Atmel 328…voir le reste du texte
Sélection de LED, Rouge, Vert et jaune avec un Blanc
7 résistances 330R
1 x LDR
1 condensateur 220uF
1 résistance 220R
2 résistances de 10k
1 x diode de redressement
Un ampèremètre suffisamment ancien, typiquement 100uA à pleine échelle
Étape 1: Conception
Les images racontent une courte histoire, le compteur d'origine a été conçu pour être utilisé sur des radios à valve et nécessitait plus de 100 mA et ne pouvait tout simplement pas être utilisé par un Arduino. Ce sont les premières idées de mise en page d'affichage. Au final j'ai démonté le compteur avec l'intention de remplacer le mécanisme, pas très réussi.
Finalement, j'ai ramassé un vieux voltmètre avec un mécanisme de 100 uA, parfait.
Étape 2: le circuit
La version originale utilisait un Arduino pour connecter les bits dans ce qui est un système assez simple. Six broches numériques pilotent les LED colorées via des résistances 330R.
Une broche numérique est utilisée pour alimenter le diviseur de tension LDR, la tension étant mesurée sur l'une des broches ADC et utilisée pour estimer le niveau d'éclairage actuel et l'heure de la journée.
Une broche numérique est utilisée pour charger le condensateur via une diode et une résistance 220R.
Le compteur est connecté aux bornes du condensateur via une résistance de 10k. Cette valeur peut devoir être modifiée en fonction de la mesure à pleine échelle sur l'ampèremètre utilisé.
J'ai également câblé un bouton de réinitialisation, à monter sur le côté de la vitrine.
Enfin, une autre connexion est établie à partir de l'anode de l'une des LED pour fournir une référence de tension pour vérifier le niveau de tension de la batterie. Ce circuit n'a jamais été très réussi et je le remplacerai par un simple diviseur de tension la prochaine fois que les piles seront à plat et que l'écran sera hors du mur.
Étape 3: Mise en œuvre
Faire fonctionner l'écran à partir de batteries à l'aide d'un Arduino Uno n'était pas pratique, la consommation de courant serait trop élevée car une grande partie de la carte est active tout le temps, et je voulais que l'écran soit sur un mur intact pendant au moins six mois à un temps.
Pour réduire la consommation de courant, les circuits d'affichage ont été développés avec un Arduino et une planche à pain, les circuits transférés sur la carte matricielle, puis le processeur finalement programmé retiré de l'Arduino et placé dans une prise sur un petit morceau de carte matricielle, avec le xtal, et réunis avec un câble plat.
En fin de compte, l'écran fonctionne pendant 12 mois complets avec un seul jeu de piles.
Une astuce utile consiste à remplacer le processeur Atmel dans un Arduino Uno par un socket ZIF, celui-ci s'adapte bien, puis réinsérez le processeur. Une fois que le projet est prêt à démarrer, le processeur est déjà programmé et n'a plus qu'à être retiré et inséré dans un socket sur la carte finale. Lorsque j'achète des processeurs vierges, je passe une heure à installer des chargeurs de démarrage sur chacun d'eux afin qu'ils soient prêts à l'emploi à tout moment.
Étape 4: le code
Comme on peut l'imaginer, le code pour exécuter l'affichage de base n'est pas très compliqué mais le domaine clé est la réduction de la consommation d'énergie. Il existe deux approches pour cela, l'une consiste à n'exécuter l'affichage que lorsque quelqu'un le verra probablement, et l'autre à réduire au minimum la consommation d'énergie des circuits.
Le programme doit avoir les librairies Narcoleptic installées avant la compilation.
Tous les retards du système sont implémentés à l'aide de la bibliothèque narcoleptique pour un mode pleine puissance basse consommation du processeur, avec une consommation électrique mesurée en quelques nanoampères.
Le processeur se met en veille pendant quatre secondes à la fois et, au réveil, exécute une routine aléatoire pour déterminer si le système ne se réveillera pas. Sinon, le système se met en veille pendant encore quatre secondes.
Si la routine aléatoire est vraie, le circuit LDR est activé et une mesure du niveau de lumière est effectuée. Le circuit LDR est désactivé immédiatement après pour économiser de l'énergie.
Le système fonctionne sur quatre périodes de temps estimées.
- La nuit - il fait très sombre et personne n'est susceptible de regarder - ne faites rien et retournez dormir
- Tôt le matin - dans la première partie, il est peu probable qu'il y ait des observateurs, mais maintenez les statistiques comme si le jour
- Pendant la journée - il peut y avoir des observateurs, mais activez uniquement le compteur analogique, pas les LED
- Soirée - il est probable qu'il y aura des observateurs alors activez l'affichage complet
Le système estime que la durée du jour changera avec les saisons, de sorte que la soirée est prolongée jusqu'à ce qui serait autrement la nuit car la durée des jours est plus courte, mais lorsque les observateurs sont toujours susceptibles d'être présents.
Si l'heure de la journée est appropriée, une sortie numérique est utilisée pour charger le condensateur, puis éteinte. Avec un affichage uniquement analogique, le système se rendort avec toutes les sorties éteintes et le condensateur se décharge à travers le compteur dont l'aiguille, qui avait basculé à pleine échelle, revient à zéro.
Lorsque l'affichage LED est actif, le système mesure la tension sur le condensateur et présente un affichage lumineux en fonction de la tension mesurée jusqu'à ce qu'elle descende en dessous d'un seuil lorsque le système est en veille.
Une deuxième sélection aléatoire a lieu vers la fin de l'affichage pour déterminer si l'affichage sera répété ou non, offrant plus d'intérêt pour l'observateur.
Une LED blanche est activée pour éclairer la face du compteur lorsque l'affichage LED est actif.
La bibliothèque narcoleptique de Peter Knight met le processeur en mode veille complète où les sorties resteront dans l'état où elles étaient au moment de la mise en veille, mais toutes les horloges internes s'arrêtent à l'exception de la minuterie de veille qui est limitée à quatre secondes. Cela peut être testé dans un Arduino, mais à cause de la LED d'alimentation Arduino et des circuits USB, les mêmes économies d'énergie ne sont pas réalisées.
Le système contient toujours du code qui était censé tenir compte de la capacité décroissante des batteries, mais cela ne s'est pas avéré utile. La prochaine fois que ce sera hors du mur, je changerai le programme pour fournir une sorte d'état de la batterie via les LED ou l'ampèremètre.
La version finale a un bouton de réinitialisation monté sur le côté de la vitrine. La raison principale en est de permettre aux visiteurs de faire des démonstrations afin que le système exécute sa routine de base 10 fois après la réinitialisation avant de revenir à sa routine aléatoire normale.
Conseillé:
Compteur d'affichage à 7 segments avec registre à décalage : 3 étapes
Compteur d'affichage à 7 segments avec registre à décalage : il s'agit du projet parfait pour les débutants si vous apprenez simplement à utiliser un registre à décalage et à son fonctionnement avec du code. De plus, ce projet est un bon début si vous êtes nouveau sur l'affichage à 7 segments. Avant de commencer ce projet, assurez-vous de p
Affichage du compteur de vitesse de vélo : 10 étapes (avec photos)
Affichage du compteur de vitesse de vélo : qu'est-ce que c'est ? Comme son nom l'indique, dans ce projet, vous apprendrez à créer un affichage pour votre vélo qui se compose à la fois d'un compteur de vitesse et d'un odomètre. Indique la vitesse en temps réel et la distance parcourue. Le coût total de ce projet s'élève à
Affichage mural à LED : 5 étapes
Affichage mural à LED : dans cette instructable, nous allons apprendre à créer un affichage à LED mural adapté à la fois à un environnement décontracté et professionnel. Je voulais le faire parce que les LED sont un nouveau concept pour moi et souvent négligées cependant, elles peuvent être un ch
Écran mural Dakboard avec Pi Zero W : 6 étapes (avec photos)
Dakboard Wall Display With Pi Zero W : je travaille dans l'informatique. Souvent, nous recevons des clients qui souhaitent que nous retirions leur ancien kit. Cela nous laisse généralement avec un tas de déchets, et les moniteurs sont l'une des choses que nous trouvons qui sont gaspillées. À la maison, j'avais mis à niveau mes propres moniteurs et cela a laissé mon aîné o
Affichage de la température sur le module d'affichage LED P10 à l'aide d'Arduino : 3 étapes (avec photos)
Affichage de la température sur le module d'affichage à LED P10 à l'aide d'Arduino: Dans le didacticiel précédent, il a été expliqué comment afficher du texte sur le module d'affichage à LED matricielle P10 à l'aide d'Arduino et du connecteur DMD, que vous pouvez vérifier ici. Dans ce didacticiel, nous allons donner un didacticiel de projet simple en utilisant le module P10 comme moyen d'affichage