Club robotique de Sophia-Antipolis

Accueil > POBOTpedia > Capteurs > Capteurs de lumière > Capteur de lumière ambiante

Capteur de lumière ambiante

dimanche 14 septembre 2008, par Julien H.

Il existe différents types de capteur de lumière :
 les capteurs de proximité
 les capteurs de distance
 les capteurs de luminosité ambiante

Alors que les deux premiers sont largement utilisés en robotique (pour déclencher des actionneurs ou faire une mesure de l’environnement), les troisièmes ne le sont pas tellement. C’est de ceux-ci que nous allons parler.

L’usage qu’on peut en faire est pourtant pratique : adapter nos autres systèmes basés sur la lumière à des conditions variables de luminosité. Nous en avons fait plusieurs fois la désagréable expérience, les capteurs (infra-rouges, caméra, webcam) sont très sensibles aux conditions lumineuses.

Il est reconnu que les roboticiens (et tous les hobbyistes de manière générale) travaillent tard le soir, à la lumière d’une lampe d’atelier ou d’une lampe de chevet, sans variation des conditions lumineuses, tandis que leurs démonstrations ont presque toujours lieu en plein jour, dehors et surtout avec plein de gens autour (en tout cas on le souhaite). Quelle importance revêt ce dernier point ? tout simplement ces personnes vont modifier la lumière reçu par votre robot (ou votre système électronique pour généraliser) au cours de la démonstration ou du concours, donc votre calibrage de capteurs va être complètement caduque.

Il faut donc réaliser un système de calibrage des capteurs qui puisse fonctionner de manière automatique régulièrement en cours d’utilisation du robot. Nous allons d’abord tester un capteur.



Tests du capteur TEMT6000

Les capteurs de luminosité ambiante existent depuis longtemps sous la forme des photo-résistances "CdS" (Cadmium Sulfide), reconnaissables à leur petite grille et autres photo-transistors.

Mais une nouvelle génération de capteurs existe désormais. Nous allons utiliser le capteur TEMT6000 (disponible pour 1 euro chez Sparkfun, et pour 4$, intégré à un circuit de 9 mm x 9 mm).

Capteur TEMT6000
Installé sur le circuit de Sparkfun et connecté à une breadboard.
Datasheet TEMT6000

C’est un photo-transistor (ça se connecte comme tel) et c’est utilisé dans les appareils mobiles et les voitures pour adapter le rétro-éclairage des écrans à la lumière ambiante pour de l’économie d’énergie.

On connecte la sortie du transistor sur l’entrée analogique d’un micro-contrôleur et on utilise une résistance de pull-down de 10 kOhms.

Programmation

Le code utilisé pour faire des tests (sur une Arduino mais transposable à n’importe quel autre circuit) est très simple, on lit la valeur sur l’entrée analogique (sur AVR, résolution de 10 bits soit entre 0 et 1024) et on l’envoie sur la liaison série pour affichage sur l’oscilloscope minimal sous Processing.


void setup()
Serial.begin(9600) ;

void loop()
int val = analogRead(0) ;
Serial.print( 0xff, BYTE) ;
Serial.print( (val >> 8) & 0xff, BYTE) ;
Serial.print( val & 0xff, BYTE) ;

Et pour l’oscilloscope minimal, toujours le même :

/* 
 * Oscilloscope 
 * Gives a visual rendering of analog pin 0 in realtime. 
 * 
 * This project is part of Accrochages 
 * See http://accrochages.drone.ws 
 * 
 * (c) 2008 Sofian Audry (info@sofianaudry.com) 
 * 
 * GNU GPL
 */

Les résultats

Comme tout signal analogique, il y a des petites variations autour de la valeur moyenne, mais le capteur a une grande stabilité. Les copies d’écran de l’oscillo Processing sont réalisées en agitant le capteur sous une lampe.

Visualisation test
On cache avec la main le capteur et on simule des effets de lumière

Vos commentaires

  • Le 24 août 2017 à 05:28, par ADJOU En réponse à : Capteur de lumière ambiante

    Le capteur de luminosité est de quel type de sorties slvp ?

    Répondre à ce message

  • Le 17 octobre 2010 à 15:16, par BBenj En réponse à : Capteur de lumière ambiante

    Je ne sais pas si vous connaissez, mais il existe un autre capteur de lumière pas cher du tout, extrêmement répandu (tout électronicien l’a utilisé un jour 🙂 ), et avec une très grande étendue de mesure : la... LED !!

    Le principe est paru dans un numéro double d’Elektor (2008 je crois) :
    La led est branchée en inverse sur un port d’un µC réversible (entrée haute impédance ou sortie).
    On met la pin en sortie et à l’état haut un bref instant pour charger la capacité parasite de la led, puis on passe la pin en entrée et on mesure le temps qu’elle met à passer à 0. (et on recommence...)

    Ce temps est proportionnel à la luminosité ambiante. (la capa se décharge par effet photomachin)

    Et comme on mesure une période (ou une fréquence), l’étendue de mesure est très très grande ! Mais bien sûr en contrepartie, la mise en oeuvre est un peu plus compliquée.

    On peut même utiliser des leds de couleurs pour des mesures de couleur ? (je n’ai pas testé)

    • Le 6 janvier 2011 à 00:14, par Julien H. En réponse à : Capteur de lumière ambiante

      Merci pour l’info : je vais tester prochainement.

      Je ne pense pas qu’on puisse faire de la détection de couleur pour autant, mais la manip’ peut s’avérer intéressante.

    Répondre à ce message

Un message, un commentaire ?

modération a priori

Attention, votre message n’apparaîtra qu’après avoir été relu et approuvé.

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.