Description
Voici une description détaillée du module détecteur de lumière visible et infrarouge (IR) – module photodétecteur, une guide d’utilisation avec Arduino, et quelques exemples pratiques de programmation. 🔎 Description du module détecteur de lumière visible et infrarouge (IR) 📦 Nom commun : Détecteur de lumière visible + infrarouge (IR) – Photodétecteur analogique/digital 🧩 Composants principaux : Photodiode ou phototransistor (détecteur de lumière visible/IR) Amplificateur opérationnel / Comparateur (sur modules avec sortie digitale) Potentiomètre (pour régler le seuil de lumière sur la sortie digitale) LED d’indication (souvent présente pour un retour visuel) Sorties : Analogique (A0) : tension proportionnelle à l’intensité lumineuse Digitale (D0) : valeur HIGH ou LOW en fonction du seuil défini 📐 Caractéristiques techniques : Caractéristique Valeur typique Tension de fonctionnement 3.3V – 5V Courant absorbé < 20 mA Type de sortie Analogique (0-1023 avec Arduino) / Digitale (0 ou 1) Sensibilité du spectre 400 – 1100 nm (visible + IR) Angle de détection Environ 60° 🔌 Connexion du module avec Arduino ⚙️ Broches du module : VCC → 5V (ou 3.3V) GND → GND A0 → broche analogique d'Arduino (ex. A0) D0 → broche digitale d'Arduino (ex. D2 – optionnel) 🔧 Schéma de connexion (Exemple avec Arduino Uno) : Module IR Arduino Uno VCC 5V GND GND A0 A0 D0 (optionnel) D2 👨💻 Guide à la programmation Arduino 1. 📈 Lecture de l'intensité lumineuse via sortie analogique (A0) int pinSens = A0; void setup() { Serial.begin(9600); } void loop() { int valeurLum = analogRead(pinSens); Serial.print("Intensité lumineuse : "); Serial.println(valeurLum); // de 0 (obscurité) à 1023 (lumière intense) delay(500); } 2. 💡 Allumer un LED en fonction de l'intensité lumineuse int pinSens = A0; int pinLED = 9; void setup() { pinMode(pinLED, OUTPUT); } void loop() { int lum = analogRead(pinSens); if (lum < 300) { // En dessous d'un seuil (lumière faible) digitalWrite(pinLED, HIGH); } else { digitalWrite(pinLED, LOW); } } 3. ⚙️ Lecture avec seuil digital (D0) Si le module a une sortie digitale réglable via potentiomètre : int pinDigital = 2; int pinLED = 9; void setup() { pinMode(pinDigital, INPUT); pinMode(pinLED, OUTPUT); } void loop() { int etat = digitalRead(pinDigital); if (etat == LOW) { // LOW = peu de lumière (dépend de la régulation) digitalWrite(pinLED, HIGH); } else { digitalWrite(pinLED, LOW); } } 🧪 Exemples d'utilisation pratique ✅ Applications courantes : Détection jour/nuit pour allumage automatique des lumières Contrôle de l'intensité lumineuse dans serres ou intérieurs Activation automatique d'afficheurs ou de dispositifs en fonction de l'éclairage Détection de passage (si combiné avec un obstacle qui bloque la lumière) 💡 Idées de projets : Lampe d'accueil : allumez un LED uniquement lorsque c'est sombre Enregistreur de données environnementales : sauvegardez les valeurs de lumière sur SD ou envoyez par WiFi Compteur optique : utilisez le module pour compter les objets qui interrompent la lumière 📌 Conseils Les modules IR peuvent être influencés par la lumière solaire directe et des sources IR (ex. téléviseurs, télécommandes). Le seuil du comparateur est réglé avec le potentiomètre présent sur le module (tournez avec une clé à étoile). Si vous utilisez uniquement la sortie analogique, ignorez le potentiomètre et la sortie D0. Si vous le souhaitez, je peux vous fournir également un exemple de projet complet, avec le code, le schéma Fritzing et le graphique sériel. Dites-moi !




















Avis
Il n’y a pas encore d’avis.