Introduction Une photorésistance est un composant électronique permettant de mesurer une intensité lumineuse. c’est une résistance dont la valeur change en fonction de la lumière qu’elle reçoit. La photorésistance peut-être utilisé pour des projets utilisant la lumière, comme par exemple un détecteur d’obscurité qui allumerait une led à partir d’un certain seuil d’obscurité, ou bien un suiveur de soleil pour les panneaux solaire. Il existe d’autre capteurs qui permettent de capter de la lumière et de le restituer sous forme de signaux électriques. Vous avez notamment la photodiode et le phototransistor. Sommaire masquer 1 Introduction 1.1 Comment cela fonctionne ? 1.2 L' unité de mesure utilisée par la photorésistance 1.3 Symbole électrique de la photorésistance 2 Comment choisir le bon modèle ? 3 Afficher valeur photorésistance sur le moniteur série 4 Détecteur d'obscurité 5 Suiveur solaire Comment cela fonctionne ? Elle fonctionne avec une résistance : plus elle est éclairé, plus sa résistivité baisse. Cette résistance prend une valeur de 50 kΩ en obscurité et varie jusqu’à 500 Ω en pleine lumière. Pour convertir cette variation de valeur en variation de courant, il faut bien entendu alimenter la résistance.La photorésistance utilise les broches analogique de la carte arduino. Cela veut dire que l’intensité lumineuse va être transformé en une tension qui sera lu par notre programme. L' unité de mesure utilisée par la photorésistance L’unité de mesure de la lumière est le lux. Voici plusieurs exemple de mesure pour que vous ayez une idée :Nuit de plein lune : 0,5 luxAppartement bien éclairé : [ 200- 400] luxExtérieur par ciel ouvert : [500 à 25000] luxExtérieur en plein soleil [50 000 -100 000] lux Symbole électrique de la photorésistance Dans les circuits électroniques, vous verrez le symbole ci-contre pour représenter la photorésistance. Comment choisir le bon modèle ? Il est parfois difficile de choisir quelle photorésistance vous avez besoin pour votre projet. Les photorésistances ont toute les mêmes caractéristiques extérieur, ce qui va changer c’est la valeur de la résistance interne et les caractéristiques techniques que l’on peut voir dans le tableau ci dessous : ModèleVoltage maximumPuissance MaximumTempératureGL551615090[-30°;70°]GL5528150100[-30°;70°]GL5537-1150 100 [-30°;70°] GL5537-2150 100 [-30°;70°] GL5539 150 100 [-30°;70°] GL5549 150 100 [-30°;70°] On voit que les valeurs sont largement suffisante pour faire des projets sur arduino, c’est pour cela que la plupart des photorésistances sont vendus dans le même paquet même si elles ont des références différentes.Néanmoins il y a d’autre manière de choisir sa photorésistance, c’est la différence entre les résistance lumineuse. Résistance lumineuse (kilo-ohms)Résistance Obscurité(Méga-Ohms)Temps de Réponse entranteTemps de réponse sortante5-100.5303010-201203020-302203030-503203050-10052030100-200102030 Comment on peut voir sur le tableau, selon le projet que vous allez faire vous allez avoir besoin d’une plus grande précision dans l’obscurité ou bien une résistance plus importante qui va couvrir une plus grande tranche lumineuse, c’est ce qui peut vous faire choisir les différentes résistances. Vous retrouverez ces valeurs sur la fiche technique de la photorésistance que vous avez choisit. Afficher valeur photorésistance sur le moniteur série On va maintenant voir comment afficher la valeur de la tension relevée par la photorésistance. On l’affichera sur le moniteur série. int valeur_photoresistance; void setup() { Serial.begin(9600); } void loop() { valeur_photoresistance = analogRead(A0); // La photorésistance est branché sur la borne analogique A0 Serial.println("Voici la valeur de la photoresistance :"); Serial.println(valeur_photoresistance); delay(100); } Voici le résultat sur le moniteur série : Détecteur d'obscurité On va maintenant voir comment faire un détecteur d’obscurité. Pour cela on va utiliser une photorésistance, et à partir d’un certain seuil d’obscurité que l’on va déterminer, la carte arduino va allumer une led.Voici le schéma du circuit : Pour ce projet on a choisit une valeur de détection d’obscurité de 15, ce qui peut être changé en fonction de quand vous voulez que votre led s’allume : const int led = 8; void setup() { pinMode(led, OUTPUT); Serial.begin(9600); } void loop() { int value_photoresistance = analogRead(A0); // La photorésistance est branché sur la borne analogique A0 if(value_photoresistance < 15) { // Si la valeur mesurée < 15 (Pas de lumière) Serial.println("-------------"); digitalWrite(led, HIGH); // On allume la led Serial.println("Il fait nuit, on allume la LED !"); delay(2000); } else { Serial.println("-------------"); Serial.println("Il fait jour, on eteint la LED !"); digitalWrite(led, LOW); // On éteint la led delay(2000); } } Suiveur solaire On va maintenant voir comment faire un suiveur solaire. Ce projet peut vous être vraiment utile si vous voulez faire des panneaux solaire qui bouge en fonction du soleil par exemple : Ici on a fait en sorte que le servomoteur se déplace si la valeur de la lumière est inférieur à “40”, néanmoins cette valeur peut être changé à votre convenance : #include <Servo.h> // Librairie pour le servomoteur Servo monServomoteur; // Déclaration du servomoteur int pos = 0; // Position initiale du servomoteur void setup() { monServomoteur.attach(9); // Le servomoteur est branché sur la borne A0. } void loop() { int value_photoresistance = analogRead(A0); // La photorésistance est branché sur la borne analogique A0 pos = map(value_photoresistance, 1,310,0,180); // On fait un produit en croix avec la valeur de la photorésistance monServomoteur.write(pos); // On actualise la position du servomoteur }