ESP32 C3 Super Mini - Capteur de Lumière

Apprenez à connecter un capteur de lumière (photorésistance/LDR) à votre ESP32 C3 Super Mini et lire les niveaux de lumière dans vos projets Arduino. Ce guide convivial pour les débutants couvre tout, du câblage au code.

Dans ce tutoriel, vous apprendrez :

ESP32 C3 Super Mini - Capteur de Lumière

Matériel Requis

1×ESP32 C3 Super Mini
1×Câble USB Type-C
1×Capteur de Lumière
1×Résistor 10 kΩ
1×Plaque d'essai
1×Fils Jumper
1×(Optionnel) Jack Alimentation CC

Ou vous pouvez acheter les kits suivants:

1×Kit de Capteurs DIYables (18 capteurs/écrans)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

Options de Composants :

Le capteur de lumière LDR est très abordable, mais il nécessite une résistance pour le câblage, ce qui peut rendre la configuration plus complexe. Pour simplifier le câblage, vous pouvez utiliser un module de capteur de lumière LDR comme alternative.

À Propos du Capteur de Lumière

Un capteur de lumière (photorésistance) est un composant analogique qui change sa résistance en fonction de la quantité de lumière frappant sa surface.

Caractéristiques Clés :

  • Aussi appelé photocellule, résistance dépendante de la lumière (LDR)
  • Détecte la présence et la luminosité de la lumière ambiante
  • La résistance diminue quand elle est exposée à plus de lumière
  • La résistance augmente dans les conditions sombres
  • Abordable et facile à utiliser pour les débutants
  • Parfait pour les projets d'éclairage automatique et la surveillance du niveau de lumière

Spécifications Techniques :

  • Sortie analogique (résistance variable)
  • Plage de résistance typique : 200Ω (lumière brillante) à 10MΩ (obscurité)
  • Temps de réponse : 20-30ms
  • Fonctionne avec les circuits de diviseur de tension

Brochage du Capteur de Lumière

La photorésistance a deux broches non-polarisées.

  • Broche 1 : Connectez à l'un des côtés du diviseur de tension
  • Broche 2 : Connectez à l'un des côtés du diviseur de tension

Remarque : Contrairement aux LEDs ou aux diodes, les broches du capteur de lumière sont interchangeables—vous n'avez pas à vous soucier de la polarité.

Brochage du Capteur de Lumière

Comment fonctionne le Capteur de Lumière

La résistance de la photorésistance change inversement avec l'intensité lumineuse—plus de lumière signifie moins de résistance.

Principe de Fonctionnement :

  • Lumière brillante → Résistance faible → Tension plus élevée à la broche analogique ESP32
  • Lumière faible → Résistance élevée → Tension plus basse à la broche analogique ESP32
  • L'ESP32 lit la tension et la convertit en valeur numérique (0-4095)
  • Les valeurs analogiques plus élevées indiquent des conditions plus brillantes
Comment fonctionne le Capteur de Lumière

WARNING

La valeur mesurée par la photorésistance reflète la tendance approximée de l'intensité lumineuse, elle ne représente PAS exactement le flux lumineux. Par conséquent, la photorésistance ne doit pas être utilisée dans une application qui nécessite une haute précision. L'étalonnage est également requis pour certains types d'applications.

ESP32 C3 Super Mini - Capteur de Lumière

L'ESP32 C3 Super Mini lit les valeurs du capteur de lumière via ses broches d'entrée analogiques.

Comment Cela Fonctionne :

  • Les broches analogiques ESP32 convertissent la tension (0V à 3.3V) en valeurs entières (0 à 4095)
  • Cette valeur numérique s'appelle la valeur ADC (Convertisseur Analogique-Numérique)
  • Utilisez la fonction analogRead() pour lire la valeur du capteur
  • Les valeurs ADC plus élevées = conditions de lumière plus brillante
  • Les valeurs ADC plus basses = conditions plus sombres

Schéma de Câblage entre Capteur de Lumière et ESP32 C3 Super Mini

Connectez le capteur de lumière à votre ESP32 C3 Super Mini en utilisant un circuit de diviseur de tension avec une résistance de 10kΩ.

Notes de Sécurité :

  • Remarque : Vérifiez à nouveau les connexions avant d'alimenter
  • Remarque : Assurez-vous que la résistance est 10kΩ pour une division de tension appropriée
Schéma de Câblage Capteur de Lumière ESP32 C3 Super Mini

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Connexions de Câblage :

Broche du Capteur de Lumière 1 3.3V
Broche du Capteur de Lumière 2 GPIO4 (Broche Analogique) + Résistor 10kΩ
Résistor 10kΩ (Autre Extrémité) GND

Code ESP32 C3 Super Mini

Voici comment programmer votre ESP32 C3 Super Mini pour lire les valeurs du capteur de lumière et déterminer les niveaux de luminosité.

Ce Que Fait Ce Code :

  • Lit les valeurs analogiques du capteur de lumière sur GPIO4
  • Convertit les valeurs ADC en catégories de luminosité
  • Affiche le niveau de lumière sur le Moniteur Série
  • Met à jour les lectures tous les 500 millisecondes
  • Catégorise la lumière comme : Sombre, Faible, Moyen, ou Très Brillant
/* * Ce code ESP32 C3 Super Mini a été développé par newbiely.fr * Ce code ESP32 C3 Super Mini est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/esp32-c3/esp32-c3-super-mini-light-sensor */ #define LIGHT_SENSOR_PIN A0 // The ESP32 C3 SuperMini pin connect to the light sensor void setup() { // Initialize the Serial to communicate with the Serial Monitor. Serial.begin(115200); // set the ADC attenuation to 11 dB (up to ~3.3V input) analogSetAttenuation(ADC_11db); } void loop() { // reads the input on analog pin (value between 0 and 4095) int analog_value = analogRead(LIGHT_SENSOR_PIN); Serial.print("Analog Value = "); Serial.print(analog_value); // The raw analog reading // We'll have a few threshholds, qualitatively determined if (analog_value < 40) { Serial.println(" => Dark"); } else if (analog_value < 800) { Serial.println(" => Dim"); } else if (analog_value < 2000) { Serial.println(" => Light"); } else if (analog_value < 3200) { Serial.println(" => Bright"); } else { Serial.println(" => Very bright"); } delay(500); }

Étapes Rapides

  • Nouveau sur ESP32 C3 Mini ? Complétez d'abord notre tutoriel ESP32 C3 Super Mini - Premiers pas pour configurer votre environnement de développement.
  • Copiez le Code : Copiez le code ci-dessus et collez-le dans Arduino IDE.
  • Sélectionnez la Carte : Assurez-vous que ESP32 C3 Super Mini est sélectionné dans Outils > Carte.
  • Connectez ESP32 : Branchez votre ESP32 C3 Super Mini sur votre ordinateur via câble USB Type-C.
  • Téléchargez le Code : Cliquez sur le bouton Upload dans Arduino IDE.
  • Ouvrez le Moniteur Série : Cliquez sur l'icône du Moniteur Série ou appuyez sur Ctrl+Shift+M.
  • Réglez la Vitesse en Bauds : Réglez le Moniteur Série à 115200 bauds.
  • Testez le Capteur : Couvrez le capteur de lumière avec votre main, puis exposez-le à une lumière brillante.
  • Observez les Résultats : Regardez les valeurs analogiques et les descriptions de niveaux de lumière changer en temps réel.
  • Pro Tip : Les valeurs de seuil (1000, 2000, 3000) peuvent être ajustées en fonction de vos conditions de lumière ambiante pour des lectures plus précises.
Comment ouvrir le moniteur série sur Arduino IDE

Sortie Attendue du Moniteur Série :

Newbiely | Arduino IDE 2.3.8
──
File
Edit
Sketch
Tools
Help
ESP32C3 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32C3 Dev Module' on 'COM15')
New Line
9600 baud
Analog Value = 3845 => Very bright Analog Value = 3921 => Very bright Analog Value = 3887 => Very bright Analog Value = 2456 => Medium Analog Value = 2398 => Medium Analog Value = 892 => Dim Analog Value = 845 => Dim Analog Value = 312 => Dark Analog Value = 289 => Dark
Ln 11, Col 1
ESP32C3 Dev Module on COM15
2

Capteur de Lumière et LED

Créons maintenant un système d'éclairage automatique qui allume une LED quand il fait sombre.

Schéma de Câblage

Ajoutez une LED à votre circuit pour créer un interrupteur activé par la lumière.

Schéma de Câblage Capteur de Lumière LED ESP32 C3 Super Mini

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Connexions Supplémentaires :

Anode LED (Broche Longue) GPIO8 (via résistor 220Ω)
Cathode LED (Broche Courte) GND

Code ESP32 C3 Super Mini

Ce code contrôle automatiquement une LED en fonction des niveaux de lumière ambiante—parfait pour les veilleuses automatiques.

Ce Que Fait Ce Code :

  • Lit en continu les valeurs du capteur de lumière
  • Compare les lectures à une valeur de seuil (1000)
  • Allume la LED quand il fait sombre (valeur < 1000)
  • Éteint la LED quand il fait clair (valeur ≥ 1000)
  • Crée un système d'éclairage automatique
/* * Ce code ESP32 C3 Super Mini a été développé par newbiely.fr * Ce code ESP32 C3 Super Mini est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/esp32-c3/esp32-c3-super-mini-light-sensor */ #define LIGHT_SENSOR_PIN A0 // The ESP32 C3 SuperMini pin connect to the light sensor #define LED_PIN 2 // The Arduino NanO ESP32 pin connected to LED #define ANALOG_THRESHOLD 500 void setup() { // set the ADC attenuation to 11 dB (up to ~3.3V input) analogSetAttenuation(ADC_11db); pinMode(LED_PIN, OUTPUT); // set ESP32 pin to output mode } void loop() { int analog_value = analogRead(LIGHT_SENSOR_PIN); // read the value on analog pin if (analog_value < ANALOG_THRESHOLD) digitalWrite(LED_PIN, HIGH); // turn on LED else digitalWrite(LED_PIN, LOW); // turn off LED }

※ Note:

Ce tutoriel utilise la fonction analogRead() pour lire les valeurs d'un ADC (Convertisseur Analogique-Numérique) connecté à un capteur ou un composant. L'ADC de l'ESP32 C3 Super Mini convient aux projets qui ne nécessitent pas une haute précision. Cependant, pour les projets nécessitant des mesures précises, gardez à l'esprit ce qui suit :

  • L'ADC de l'ESP32 C3 Super Mini n'est pas parfaitement précis et pourrait nécessiter un étalonnage pour des résultats corrects. Chaque carte ESP32 C3 Super Mini peut varier légèrement, donc l'étalonnage est nécessaire pour chaque carte individuelle.
  • L'étalonnage peut être difficile, surtout pour les débutants, et pourrait ne pas toujours donner les résultats exacts que vous souhaitez.

Pour les projets nécessitant une haute précision, envisagez d'utiliser un ADC externe (par ex ADS1115) avec l'ESP32 C3 Super Mini ou d'utiliser un autre Arduino, comme l'Arduino Uno R4 WiFi, qui a un ADC plus fiable. Si vous souhaitez toujours étalonner l'ADC de l'ESP32 C3 Super Mini, reportez-vous à l'ESP32 ADC Calibration Driver.

Application et Idées de Projets

Maintenant que vous savez comment utiliser un capteur de lumière avec ESP32 C3 Super Mini, voici quelques idées de projets pratiques :

  • Veilleuse Automatique : LED s'allume automatiquement quand la salle devient sombre
  • Moniteur de Plante Intelligente : Suivez l'exposition au soleil de vos plantes d'intérieur
  • Système de Sécurité : Détectez quand les lumières s'allument/s'éteignent dans une pièce
  • Station Météo : Surveillez les heures de jour et la couverture nuageuse
  • Économiseur d'Énergie : Contrôlez automatiquement les stores de fenêtre en fonction du soleil
  • Photomètre Photographique : Mesurez la lumière ambiante pour les paramètres de caméra

Tutoriel Vidéo

Regardez la vidéo ci-dessous pour une présentation visuelle de ce projet.

Défi Yourself

Poussez vos compétences de capteur de lumière au niveau suivant avec ces défis :

  • Facile : Ajoutez un buzzer qui émet un bip quand le niveau de lumière change de lumineux à sombre
  • Facile : Affichez "Bonjour !" quand la lumière est détectée et "Bonne nuit !" quand il fait sombre
  • Moyen : Créez un enregistreur de données qui enregistre les niveaux de lumière chaque minute sur une carte SD
  • Moyen : Construisez un contrôleur de rideau intelligent qui ouvre/ferme en fonction du lever et du coucher du soleil
  • Avancé : Implémentez un suivi de panneau solaire qui surveille l'intensité lumineuse provenant de plusieurs capteurs
  • Avancé : Créez un système d'automatisation de serre avec contrôle d'arrosage et de ventilation basé sur la lumière

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !