Modifications

Sauter à la navigation Sauter à la recherche
2 179 octets ajoutés ,  12 janvier 2014 à 21:28
aucun résumé de modification
Ligne 1 : Ligne 1 : −
{{tmbox | text = En cours de traduction}}
  −
   
== Qu'est ce qu'une photorésistance? ==
 
== Qu'est ce qu'une photorésistance? ==
 
Les photorésistances (''PhotoCells'' ou ''CdS'' en anglais) sont des senseurs qui permettent de détecter la lumière. elles sont petites, bon marchés, économiques en énergies, faciles à utiliser et ne s'usent pas.
 
Les photorésistances (''PhotoCells'' ou ''CdS'' en anglais) sont des senseurs qui permettent de détecter la lumière. elles sont petites, bon marchés, économiques en énergies, faciles à utiliser et ne s'usent pas.
Ligne 38 : Ligne 36 :  
Le graphique ci-dessous indique approximativement la résistance du senseur sous différents niveaux d'illumination. Souvenez vous que chaque photo-résistance est diffère des autres. Ce graphique est seulement un guide!  
 
Le graphique ci-dessous indique approximativement la résistance du senseur sous différents niveaux d'illumination. Souvenez vous que chaque photo-résistance est diffère des autres. Ce graphique est seulement un guide!  
   −
[[Fichier:cds-RvsLumen.jpg]]
+
{{ADFImage|cds-RvsLumen.jpg}}
    
Notez que le graphe n'est pas linéaire mais logarithmique.
 
Notez que le graphe n'est pas linéaire mais logarithmique.
Ligne 45 : Ligne 43 :  
En particulier, elle tendent à être sensibles à des lumières entre 700nm (rouge) et 500nm (vert).  
 
En particulier, elle tendent à être sensibles à des lumières entre 700nm (rouge) et 500nm (vert).  
   −
[[Fichier:cds-spectral-response.jpg]]
+
{{ADFImage|cds-spectral-response.jpg}}
    
Fondamentalement, la lumière bleue ne sera pas aussi efficace pour activer le senseur qu'une lumière verte/jaune!
 
Fondamentalement, la lumière bleue ne sera pas aussi efficace pour activer le senseur qu'une lumière verte/jaune!
Ligne 97 : Ligne 95 :  
Puisque une photo-résistance est fondamentalement une résistance, elles ne sont donc pas polarisées. Cela signifie que vous pouvez les connecter dans l'importe quel sens, elles fonctionnerons parfaitement!  
 
Puisque une photo-résistance est fondamentalement une résistance, elles ne sont donc pas polarisées. Cela signifie que vous pouvez les connecter dans l'importe quel sens, elles fonctionnerons parfaitement!  
   −
[[Fichier:cds-connect1.jpg]]
+
{{ADFImage|cds-connect1.jpg}}
    
Les photo-résistances sont assez robustes, vous pouvez les souder, couper/raccourcir les broches, les insérer sur un breadboard, utiliser des pinces crocodiles, etc. La seule à laquelle vous devez faire vraiment attention est de maintenir les broches bien droites sous le senseur. En effet, le senseur se brise assez facilement si vous pliez trop souvent les broches.
 
Les photo-résistances sont assez robustes, vous pouvez les souder, couper/raccourcir les broches, les insérer sur un breadboard, utiliser des pinces crocodiles, etc. La seule à laquelle vous devez faire vraiment attention est de maintenir les broches bien droites sous le senseur. En effet, le senseur se brise assez facilement si vous pliez trop souvent les broches.
   −
[[Fichier:cds-connect2.jpg]]
+
{{ADFImage|cds-connect2.jpg}}
    
== Méthode de lecture Analogique ==
 
== Méthode de lecture Analogique ==
Ligne 110 : Ligne 108 :  
On raccorde ensuite le point de connexion entre "la résistance et la photo-résistanc" sur une entrée analogique d'un micro-controlleur comme Arduino (voir ci-dessous).
 
On raccorde ensuite le point de connexion entre "la résistance et la photo-résistanc" sur une entrée analogique d'un micro-controlleur comme Arduino (voir ci-dessous).
   −
[[Fichier:cds-analog1.jpg]]
+
{{ADFImage|cds-analog1.jpg}}
   −
[[Fichier:cds-analog2.jpg]]
+
{{ADFImage|cds-analog2.jpg}}
    
Dans cet exemple, nous utilisons une tension d'alimentation de 5V mais vous pouvez aussi utiliser une tension de 3.3v tout aussi facilement.  
 
Dans cet exemple, nous utilisons une tension d'alimentation de 5V mais vous pouvez aussi utiliser une tension de 3.3v tout aussi facilement.  
Ligne 257 : Ligne 255 :  
Plus il fera noir et plus la LED sera lumineuse! Souvenez vous que la LED doit être raccordée sur une broche/sortie PWM pour que cela fonctionne correctement (nous utilisons la PIN 11 dans cet exemple).
 
Plus il fera noir et plus la LED sera lumineuse! Souvenez vous que la LED doit être raccordée sur une broche/sortie PWM pour que cela fonctionne correctement (nous utilisons la PIN 11 dans cet exemple).
   −
[[Fichier:cds-example1.jpg]]
+
{{ADFImage|cds-example1.jpg}}
   −
[[Fichier:cds-example2.jpg]]
+
{{ADFImage|cds-example2.jpg}}
    
Cet exemple part du principe que vous avez les connaissances fondamentales en programmation Arduino.
 
Cet exemple part du principe que vous avez les connaissances fondamentales en programmation Arduino.
Ligne 300 : Ligne 298 :  
}</nowiki>
 
}</nowiki>
   −
[[fichier:cds-example3.jpg]]
+
{{ADFImage|cds-example3.jpg}}
    
Vous pourriez avoir besoin d'essayer différentes résistance Pull-Down an fonction du niveau de luminosité ambiant que vous voulez détecter.
 
Vous pourriez avoir besoin d'essayer différentes résistance Pull-Down an fonction du niveau de luminosité ambiant que vous voulez détecter.
   −
== Simple code for analog light measurements ==
+
== Mesure analogique de la lumière ==
 +
 
 +
Voici un code simple qui permet de faire une lecture analogique du niveau de luminosité.
 +
 
 +
Ce code ne fait aucun calcul, il affiche seulement ce qu'il interprete comme la quantité de lumière (luminosité) de manière qualitative.
   −
This code doesn't do any calculations, it just prints out what it interprets as the amount of light in a qualitative manner. For most projects, this is pretty much all thats needed!  
+
C'est généralement plus que ce qui est nécessaire dans la plupart des projets!
   −
[[Fichier:cds-mesure1.jpg]]
+
{{ADFImage|cds-mesure1.jpg}}
   −
[[Fichier:cds-mesure2.jpg]]
+
{{ADFImage|cds-mesure2.jpg}}
   −
  <nowiki>/* Photocell simple testing sketch.  
+
  <nowiki>/* Test élémentaire de photo-résistance.  
 
   
 
   
Connect one end of the photocell to 5V, the other end to Analog 0.
+
Connecter l'une des broches des photo-résistances à +5V et l'autre bout sur la pin/broche analogique 0.
Then connect one end of a 10K resistor from Analog 0 to ground
+
Connectez ensuite une résistance de 10K entre la broche analogique 0 et la masse
 
   
 
   
For more information see www.ladyada.net/learn/sensors/cds.html */
+
Pour plus d'information:
 +
* Voir http://mchobby.be/wiki/index.php?title=Photo-résistance (en FRANCAIS)
 +
* Voir htt://www.ladyada.net/learn/sensors/cds.html           (en anglais)
 +
 
 +
*/
 
   
 
   
int photocellPin = 0;    // the cell and 10K pulldown are connected to a0
+
int photocellPin = 0;    // La photo-résistance et la résistance 10K connectées sur la pin/broche analogique A0
int photocellReading;    // the analog reading from the analog resistor divider
+
int photocellReading;    // Contient la lecture analogique sur le pont diviseur Photo-résistance + R 10 KOhms
 
   
 
   
 
void setup(void) {
 
void setup(void) {
   // We'll send debugging information via the Serial monitor
+
   // Démarrons la connexion série pour envoyer des message de debugging.
 
   Serial.begin(9600);   
 
   Serial.begin(9600);   
 
}
 
}
Ligne 330 : Ligne 336 :  
   photocellReading = analogRead(photocellPin);   
 
   photocellReading = analogRead(photocellPin);   
 
   
 
   
   Serial.print("Analog reading = ");
+
   Serial.print("Lecture Analogique = ");
   Serial.print(photocellReading);    // the raw analog reading
+
   Serial.print(photocellReading);    // La valeur analogique brute
 
   
 
   
   // We'll have a few threshholds, qualitatively determined
+
   // Utilisons quelques seuils, détermination qualitative
 
   if (photocellReading < 10) {
 
   if (photocellReading < 10) {
     Serial.println(" - Dark");
+
     Serial.println(" - Noir");   // Dark en anglais
 
   } else if (photocellReading < 200) {
 
   } else if (photocellReading < 200) {
     Serial.println(" - Dim");
+
     Serial.println(" - Sombre"); // Dim en anglais (aussi traduit par Obscur)
 
   } else if (photocellReading < 500) {
 
   } else if (photocellReading < 500) {
     Serial.println(" - Light");
+
     Serial.println(" - Léger"); // Light en anglais
 
   } else if (photocellReading < 800) {
 
   } else if (photocellReading < 800) {
     Serial.println(" - Bright");
+
     Serial.println(" - Lumineux"); // Bright en anglais
 
   } else {
 
   } else {
     Serial.println(" - Very bright");
+
     Serial.println(" - Très lumineux"); // Very bright en anglais
 
   }
 
   }
 
   delay(1000);
 
   delay(1000);
Ligne 349 : Ligne 355 :  
</nowiki>
 
</nowiki>
   −
To test it, I started in a sunlit (but shaded) room and covered the sensor with my hand, then covered it with a piece of blackout fabric.
+
Reste plus qu'a le tester.
   −
[[Fichier:cds-mesure3.jpg]]
+
J'ai commencé dans une pièce illuminée (mais à l'ombre)  et j'ai progressivement couvert le senseur avec la main. Par la suite, je l'ai recouvert avec un morceau de tissu épais et noir.
   −
== BONUS! Reading photocells without analog pins ==
+
{{ADFImage|cds-mesure3.jpg}}
   −
Because photocells are basically resistors, its possible to use them even if you don't have any analog pins on your microcontroller (or if say you want to connect more than you have analog input pins). The way we do this is by taking advantage of a basic electronic property of resistors and capacitors. It turns out that if you take a capacitor that is initially storing no voltage, and then connect it to power (like 5V) through a resistor, it will charge up to the power voltage slowly. The bigger the resistor, the slower it is.
+
== BONUS! Lecture de la phot-résistance sans entrée analogique ==
   −
[[Fichier:cds-condensateur1.jpg]]
+
C'est parce que les photo-résistances sont avant tout des résistances qu'il est possible de les utiliser même si vous ne disposez pas d'entrée analogique sur votre micro-controleur.
   −
''This capture from an oscilloscope shows whats happening on the digital pin (yellow). The blue line indicates when the sketch starts counting and when the couting is complete, about 1.2ms later.''
+
C'est aussi une option pratique si vous voulez utiliser plus de senseurs qu'il n'y a de broches analogiques disponibles.  
   −
This is because the capacitor acts like a bucket and the resistor is like a thin pipe. To fill a bucket up with a very thin pipe takes enough time that you can figure out how wide the pipe is by timing how long it takes to fill the bucket up halfway.  
+
Pour y arriver, nous utilisons les caractéristiques électroniques fondamentales des résistances et des capacités.
 +
Initialement, si la capacité ne stocke pas de tension et qu'ensuite nous appliquons une tension (ex: 5V) par l'intermédaire d'une résistance, la capacité va lentement se charger jusqu'a la tension appliquée. Plus la résistance est grande et plus il faut de temps pour charger la capacité.  
   −
[[Fichier:cds-condensateur2.jpg]]
+
{{ADFImage|cds-condensateur1.jpg}}
   −
[[Fichier:cds-condensateur3.jpg]]
+
''Cette capture d'un oscilloscope montre ce qui arrive sur une broche digitale (jaune). La ligne bleue indique quand le sketch commence à compter et lorsque l'opération est achevée, environ 1.2ms plus tard..''
 +
 
 +
C'est parce que la capacité agit comme un réservoir et la résistance comme un tuyau étroit. Remplir un réservoir avec un tuyau très étroit prend assez de temps. C'est grâce a ce temps de remplissage (que nous pouvons mesurer) que nous pouvons estimer la taille du tuyau de remplissage (donc la "valeur de la résistance"). Mesurer le remplissage de la moitié du réservoir est suffisant pour estimer la taille du tuyaux.
 +
 
 +
{{ADFImage|cds-condensateur2.jpg}}
 +
 
 +
{{ADFImage|cds-condensateur3.jpg}}
 +
 
 +
Dans notre cas, notre réservoir est une capacité céramique de 0.1uF (micro-farad). Vous pouvez changer cette capacité par presque n'importe quel autre, dans ce cas, le temps de chargement changera aussi.
 +
 
 +
=== Quel capacité choisir ===
 +
* Une capacité de 0.1uF semble être correct pour commencer avec une photo-résistance.
 +
* Si vous voulez faire des mesures dans des milieux très lumineux, il est préférable d'utiliser une capacité de 1uF (micro-Farad).
 +
* Si vous voulez faire des mesures dans des milieux sombre, utilisez alors une capacité de 0.01uF (micro-Farad).
   −
In this case, our 'bucket' is a 0.1uF ceramic capacitor. You can change the capacitor nearly any way you want but the timing values will also change. 0.1uF seems to be an OK place to start for these photocells. If you want to measure brighter ranges, use a 1uF capacitor. If you want to measure darker ranges, go down to 0.01uF.
   
  <nowiki>/* Photocell simple testing sketch.  
 
  <nowiki>/* Photocell simple testing sketch.  
Connect one end of photocell to power, the other end to pin 2.
+
Connectez une broche d'une Photo-résistance sur l'alimentation, l'autre broche sur la Pin/Broche 2.
Then connect one end of a 0.1uF capacitor from pin 2 to ground
+
Connectez ensuite une des broches d'une capacité de 0.1uF (micro-Farad) sur la Pin 2 et l'autre broche à la masse.
For more information see www.ladyada.net/learn/sensors/cds.html */
+
 
 +
Pour plus d'information:
 +
  * voir http://mchobby.be/wiki/index.php?title=Photo-r%C3%A9sistance (en FRANCAIS)
 +
  * voir http://www.ladyada.net/learn/sensors/cds.html               (en anglais)
 +
 
 +
*/
 
   
 
   
int photocellPin = 2;    // the LDR and cap are connected to pin2
+
int photocellPin = 2;    // La photorésistance et capacité connectés sur pin 2
int photocellReading;    // the digital reading
+
int photocellReading;    // Lecture de la valeur Digitale
int ledPin = 13;   // you can just use the 'built in' LED
+
int ledPin = 13;         // Vous pouvez vous contenter de la LED disponible sur la carte (Pin 13)
 
   
 
   
 
void setup(void) {
 
void setup(void) {
   // We'll send debugging information via the Serial monitor
+
   // démarrons la connection série pour envoyer des message de debugging.
 
   Serial.begin(9600);   
 
   Serial.begin(9600);   
   pinMode(ledPin, OUTPUT);  // have an LED for output
+
   pinMode(ledPin, OUTPUT);  // Activer la LED en sortie
 
}
 
}
 
   
 
   
 
void loop(void) {
 
void loop(void) {
   // read the resistor using the RCtime technique
+
   // Lecture de la résistance en utilisant la technique dite RCTime (temps chargement d'un circuit RC)
 
   photocellReading = RCtime(photocellPin);
 
   photocellReading = RCtime(photocellPin);
 
   
 
   
 
   if (photocellReading == 30000) {
 
   if (photocellReading == 30000) {
     // if we got 30000 that means we 'timed out'
+
     // Si nous obtenons 30000 cela signifie que nous avons un 'timed out'
     Serial.println("Nothing connected!");
+
     Serial.println("Rien de raccorder!");
 
   } else {
 
   } else {
     Serial.print("RCtime reading = ");
+
     Serial.print("Lecture RCtime = ");
     Serial.println(photocellReading);     // the raw analog reading
+
     Serial.println(photocellReading); // La valeur brute
 
   
 
   
     // The brighter it is, the faster it blinks!
+
     // Plus il fait lumineux et plus vite elle clignotera!
 
     digitalWrite(ledPin, HIGH);
 
     digitalWrite(ledPin, HIGH);
 
     delay(photocellReading);
 
     delay(photocellReading);
Ligne 403 : Ligne 427 :  
}
 
}
 
   
 
   
// Uses a digital pin to measure a resistor (like an FSR or photocell!)
+
// Utilisation d'une broche digitale pour mesurer une résistance (comme un photo-résistance)
// We do this by having the resistor feed current into a capacitor and
+
// Nous obtenons le résultat en utilisant la résistance pour limiter le courant qui "remplit"/charge
// counting how long it takes to get to Vcc/2 (for most arduinos, thats 2.5V)
+
// une capacité et compter combien de temps il faut pour atteindre Vcc/2  
 +
// Pour la pluslart des Arduino un entrée digitale est activée à 2.5V
 +
//
 
int RCtime(int RCpin) {
 
int RCtime(int RCpin) {
   int reading = 0;  // start with 0
+
   int reading = 0;  // Démarrer avec 0
 
   
 
   
   // set the pin to an output and pull to LOW (ground)
+
   // Activer la broche en sortie et placer à LOW (masse)
 
   pinMode(RCpin, OUTPUT);
 
   pinMode(RCpin, OUTPUT);
 
   digitalWrite(RCpin, LOW);
 
   digitalWrite(RCpin, LOW);
 
   
 
   
   // Now set the pin to an input and...
+
   // Maintenant, placer la PIN en entrée et ...
 
   pinMode(RCpin, INPUT);
 
   pinMode(RCpin, INPUT);
   while (digitalRead(RCpin) == LOW) { // count how long it takes to rise up to HIGH
+
   while (digitalRead(RCpin) == LOW) { // compter le temps qu'il faut pour quelle passe à HIGH
     reading++;      // increment to keep track of time
+
     reading++;      // l'incrémentation est proportionnelle au temps qui passe
 
   
 
   
 
     if (reading == 30000) {
 
     if (reading == 30000) {
       // if we got this far, the resistance is so high
+
       // Si nous arrivons si loin, c'est que la résistance est beaucoup trop
       // its likely that nothing is connected!  
+
       // grande... comme si rien n'était connecté!  
       break;           // leave the loop
+
       break; // Abandonner la boucle
 
     }
 
     }
 
   }
 
   }
   // OK either we maxed out at 30000 or hopefully got a reading, return the count
+
   // OK, nous avons soit atteind le maximum de 30000 ou nous avons
 +
  // plus de chance et obtenu un vrai résultat.
 +
  // Il ne reste plus qu'a retourner la valeur.
 
   
 
   
 
   return reading;
 
   return reading;
Ligne 430 : Ligne 458 :  
</nowiki>
 
</nowiki>
   −
[[Fichier:cds-condensateur4.jpg]]
+
{{ADFImage|cds-condensateur4.jpg}}
   −
Source:  [http://www.ladyada.net/learn/sensors/cds.html cds]
+
== Où acheter ==
 +
MC Hobby propose la vente des photo-résistances utilisées dans cet article. {{pl|58|Vous trouverez la "photo-résistance + extra" ici sur le WebShop}}.
    +
<hr />
 +
<small>
 +
Source:  [http://www.ladyada.net/learn/sensors/cds.html cds]. Crédit [http://www.adafruit.com AdaFruit Industries]
 +
</small>
 
{{ADF-Accord}}
 
{{ADF-Accord}}
    
{{MCH-Accord}}
 
{{MCH-Accord}}
29 917

modifications

Menu de navigation