Table des matières:
- Étape 1: Obtenez toutes les pièces
- Étape 2: Le capteur de lumière BH1750
- Étape 3: Nokia 5110 LCD
- Étape 4: Construire le luxmètre
- Étape 5: Le code du projet
- Étape 6: Tester le projet
Vidéo: Compteur de lumière Arduino DIY avec capteur BH1750 : 6 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:08
Dans ce Instructable, je vais vous montrer comment construire un posemètre avec un grand écran LCD Nokia 5110 à l'aide d'Arduino.
Construire un posemètre est une excellente expérience d'apprentissage. Lorsque vous aurez fini de construire ce projet, vous aurez une meilleure compréhension du fonctionnement des posemètres et vous verrez en action à quel point la plate-forme Arduino peut être puissante. Avec ce projet comme base et l'expérience acquise, vous pourrez facilement construire des projets plus complexes à l'avenir. Vous pouvez utiliser ce projet pour surveiller les conditions d'éclairage de votre environnement de travail, de vos plantes, etc. Sans plus tarder, commençons !
Étape 1: Obtenez toutes les pièces
Les pièces nécessaires pour construire ce projet sont les suivantes:
- Arduino Uno ▶
- BH1750
- Nokia 5110 LCD ▶
- Petite planche à pain ▶
- Fils ▶
Le coût du projet est d'environ 12 $.
Étape 2: Le capteur de lumière BH1750
Le capteur d'intensité lumineuse BH1750 est un capteur génial et très facile à utiliser. Cette carte de dérivation est livrée avec un convertisseur AD 16 bits intégré qui peut directement émettre un signal numérique, il n'y a pas besoin de calculs compliqués.
Cette carte est meilleure qu'une LDR qui ne délivre qu'une tension. Avec le capteur de lumière BH1750, l'intensité peut être mesurée directement par le luxmètre, sans avoir besoin de faire de calculs. Les données qui sont sorties par ce capteur sont directement sorties en Lux (Lx).
Le capteur utilise l'interface I2C, il est donc très facile à utiliser avec Arduino. Il vous suffit de connecter 2 fils.
De plus, le prix du capteur est très bas, il tourne autour de 2$.
Vous pouvez l'obtenir ici:
Étape 3: Nokia 5110 LCD
Le Nokia 5110 est mon écran préféré pour mes projets Arduino.
Le Nokia 5110 est un écran LCD graphique de base conçu à l'origine comme écran de téléphone portable. Il utilise le contrôleur PCD8544 qui est un contrôleur/pilote LCD CMOS à faible consommation. Pour cette raison, cet écran a une consommation d'énergie impressionnante. Il n'utilise que 0,4 mA lorsqu'il est allumé mais le rétroéclairage est désactivé. Il utilise moins de 0,06 mA en mode veille ! C'est l'une des raisons qui font de cet affichage mon préféré. Le PCD8544 s'interface aux microcontrôleurs via une interface de bus série. Cela rend l'écran très facile à utiliser avec Arduino.
Il vous suffit de connecter 8 fils et d'utiliser la bibliothèque suivante:
Cette bibliothèque impressionnante est développée par Henning Karlsen qui a déployé d'énormes efforts pour aider la communauté Arduino à aller de l'avant avec ses bibliothèques.
J'ai préparé un didacticiel détaillé sur l'utilisation de l'écran LCD Nokia 5110 avec Arduino. J'ai joint cette vidéo dans ce Instructable, elle fournira des informations utiles sur l'affichage, je vous encourage donc à la regarder attentivement.
Le coût de l'affichage est d'environ 4 $.
Vous pouvez l'obtenir ici:
Étape 4: Construire le luxmètre
Connectons maintenant toutes les pièces ensemble.
Dans un premier temps, nous connectons le module de capteur de lumière BH1750. Il n'a que 5 broches mais nous allons en connecter 4.
Connexion du capteur de tension
La broche Vcc va au 5V d'Arduino
La broche GND va au GND d'Arduino
La broche SCL va à la broche analogique 5 de l'Arduino Uno
La broche SDA va à la broche analogique 4 de l'Arduino Uno
La broche d'adresse reste déconnectée
L'étape suivante consiste à connecter l'écran LCD Nokia 5110.
Connexion de l'écran LCD Nokia 5110
RST va à la broche numérique 12 de l'Arduino
CE va à la broche numérique 11 de l'Arduino
DC va à la broche numérique 10 de l'Arduino
DIN va à la broche numérique 9 de l'Arduino
CLK va à la broche numérique 8 de l'Arduino
VCC va à Arduino 3.3V LIGHT va à Arduino GND (rétroéclairage activé)
GND va à Arduino GND
Maintenant que nous avons connecté toutes les pièces entre elles, il ne nous reste plus qu'à charger le code. Un écran de démarrage s'affiche pendant quelques secondes, puis nous pouvons commencer à mesurer l'intensité lumineuse en temps réel !
Étape 5: Le code du projet
Le code du projet se compose de 3 fichiers.
splash.cui.c
ui.c
BH1750LightMeter.ino
Code - Image de l'écran de démarrage
Dans le premier fichier splash.c, il y a les valeurs binaires de l'écran de démarrage qui s'affiche sur l'écran LCD du Nokia 5110 lorsque le projet démarre. Veuillez regarder la vidéo ci-jointe que j'ai préparée afin de voir comment charger vos graphiques personnalisés dans votre projet Arduino.
Code ui.c - L'interface utilisateur
Dans le fichier ui.c, il y a les valeurs binaires de l'interface utilisateur qui apparaissent après que le projet affiche l'écran de démarrage. Veuillez regarder la vidéo ci-jointe que j'ai préparée afin de voir comment charger vos graphiques personnalisés dans votre projet Arduino.
Code UVMeter.ino - Programme principal
Le code principal du projet est très simple. Nous devons inclure la bibliothèque Nokia 5110. Ensuite, nous déclarons quelques variables. On initialise l'affichage et on affiche l'écran de démarrage pendant 3 secondes. Après cela, nous imprimons une fois l'icône de l'interface utilisateur et nous lisons la valeur du capteur en 150 millisecondes. Toute la magie opère dans la fonction loop:
void loop() { int stringLength=0; uint16_t lux = lightSensor.readLightLevel(); // Lecture de la lumière du capteur = String(lux); //Conversion en chaîne stringLength = light.length(); //Nous devons connaître la longueur de la chaîne lcd.clrScr(); lcd.drawBitmap (0, 0, ui, 84, 48); printLight(stringLength); //Imprime la chaîne sur l'écran lcd.update(); retard (150); }
J'ai joint le code à ce Instructable. Afin de télécharger la dernière version du code, vous pouvez visiter la page Web du projet:
Étape 6: Tester le projet
Maintenant que le code est chargé, nous pouvons tester le posemètre à l'intérieur et à l'extérieur. Je le teste par une journée de printemps ensoleillée ici en Grèce. Le résultat est fantastique. Nous pouvons mesurer avec précision l'intensité lumineuse avec un projet facile à construire.
Comme vous pouvez le voir sur les photos ci-jointes, le posemètre fonctionne très bien. Ce projet est une excellente démonstration de ce dont le matériel et les logiciels open source sont capables. En quelques minutes, on peut construire un projet aussi impressionnant ! Ce projet est idéal pour les débutants et comme je l'ai dit au début, ce projet est une excellente expérience d'apprentissage. J'aimerais avoir votre avis sur ce projet. Le trouvez-vous utile ? Y a-t-il des améliorations à apporter à ce projet ? Veuillez poster vos commentaires ou idées dans la section commentaires ci-dessous!
Conseillé:
Capteur de respiration bricolage avec Arduino (capteur d'étirement tricoté conducteur): 7 étapes (avec photos)
Capteur de respiration bricolage avec Arduino (capteur d'étirement tricoté conducteur): Ce capteur de bricolage prendra la forme d'un capteur d'étirement tricoté conducteur. Il s'enroulera autour de votre poitrine/estomac, et lorsque votre poitrine/estomac se dilate et se contracte, le capteur et par conséquent les données d'entrée qui sont transmises à l'Arduino. Donc
Comment câbler et utiliser le capteur de lumière GY-30 BH1750 (GY30 / GY302) - Facile - Projet Arduino ! : 7 étapes
Comment câbler et utiliser le capteur de lumière GY-30 BH1750 (GY30 / GY302) - Facile - Projet Arduino ! : Dans ce tutoriel, nous allons apprendre à utiliser rapidement et facilement le capteur d'intensité lumineuse GY-30 BH1750 avec Arduino.Regardez une vidéo de démonstration
Capteur de lumière (photorésistance) avec Arduino dans Tinkercad : 5 étapes (avec photos)
Capteur de lumière (photorésistance) avec Arduino dans Tinkercad : Apprenons à lire une photorésistance, un type de résistance variable sensible à la lumière, à l'aide de l'entrée analogique d'Arduino. On l'appelle aussi LDR (résistance dépendante de la lumière). Jusqu'à présent, vous avez déjà appris à contrôler les LED avec la sortie analogique d'Arduino et à
CAPTEUR DE LUMIÈRE DU SOLEIL SIMPLE : 6 étapes (avec photos)
CAPTEUR DE LUMIÈRE DU SOLEIL SIMPLE : Suivez les étapes pour créer avec succès votre propre capteur de lumière. Très utile dans le système d'éclairage automatique.Composants: 7805 Régulateur IC SL100 transistor LED (de préférence rouge) 150ohm Résistance 9V Alimentation Relais (6V) LDR (communément disponible) Connexion wi
Automatiser une lumière à l'aide du capteur de mouvement MESH : 3 étapes (avec photos)
Automatiser une lumière à l'aide du capteur de mouvement MESH : Vous oubliez souvent d'éteindre les lumières ? Il est toujours possible d'oublier d'éteindre les lumières en quittant votre maison ou votre pièce, mais avec le capteur de mouvement MESH, nous avons résolu le problème en utilisant les fonctions de détection et de non-détection pour vous aider à faciliter