Modifications

Sauter à la navigation Sauter à la recherche
6 325 octets ajoutés ,  19 mai 2022 à 16:47
Ligne 2 : Ligne 2 :     
== Introduction ==
 
== Introduction ==
todo
+
[[Fichier:FEATHER-MICROPYTHON-TSL2561-00.jpg|480px]]
 +
 
 +
Le senseur de luminosité TSL2561 est un senseur de lumière avancé, idéal pour une utilisation dans un large champs d'application relatif à la lumière. Ce senseur est plus précis qu'une photo résistance (CdS) et permet un calcul précis de la luminosité (en lux). Il peut être configuré pour différents gains/gamme de fréquences (gain/timing ranges) pour détecter de la lumière à la volée entre 0.1 et plus de 40,000 Lux.
 +
 
 +
Ce senseur inclus un régulateur 3.3V et "level shifter" 3-5V (circuit d'adaptation de niveaux logique). Vous pouvez donc utiliser ce TSL2561 avec n'importe quel microcontrôleur 3 ou 5v.
 +
 
 +
Le plus grand intérêt de ce senseur réside dans le fait qu'il contient deux diodes: '''une infrarouge et une pour le spectre lumineux entier'''! Cela signifie que vous pouvez séparément mesurer la lumière infrarouge, le spectre entier ou la lumière visible (par nous les humains). La plupart des senseurs peuvent mesurer l'un ou l'autre... ce qui ne reproduit pas fidèlement ce que les yeux humains perçoivent (puisque les yeux humains ne perçoivent pas les InfraRouges pourtant détecté par la plupart des photo-diodes).
 +
 
 +
Ce senseur dispose d'une interface (I2C). Vous pouvez sélectionner une des trois adresses disponibles, ce qui signifie que vous pouvez en brancher 3 sur une seule carte - chacun avec une adresse I2C différente. Le convertisseur Analogique/Digital interne permet de l'utiliser avec n'importe quel microcontrôleur, même s'il n'a pas d'entrée analogique. La consommation en courant est extrêmement faible, c'est pour cela qu'il convient particulièrement bien pour les système d'enregistrement de donnée (data-logging). Environ 0.5mA lorsque le senseur est actif et moins de  15 µA lorsqu'il est en veille.
 +
 
 +
N'hésitez pas à consulter [[TSL2561|notre tutoriel Arduino]], il reprend des informations très utiles.
 +
=== Détails techniques ===
 +
* Approche la réponse de l'oeil humain
 +
* Mesure précisément la luminosité dans différentes conditions lumineuse.
 +
* Gamme de température: -30 à 80 °C
 +
* Gamme de mesure dynamique (Lux): 0.1 à 40,000 Lux
 +
* Gamme de tension: 2.7-3.6V
 +
* Inclus un régulateur 3.3v et un Level Shifter 3-5V pour une utilisation avec microcontrôleur 3 & 5 volts
 +
* Interface: I2C
 +
* Ce composant utilise l'adresse I2C 7 bits 0x39, 0x29, 0x49 (sélectionnable à l'aide de cavalier à souder)
 +
* [http://mchobby.be/data-files/datasheet/TSL2561.pdf Fiche technique du TSL2561].
    
== Schéma ==
 
== Schéma ==
[[Fichier:FEATHER-MICROPYTHON-xxx.jpg|800px]]
+
[[Fichier:FEATHER-MICROPYTHON-TSL2561-Schema.jpg|640px]]
 +
 
 +
{{ambox|text=Depuis la création de ce tutoriel, nous avons compris pourquoi SCL ne semblait pas fiable avec certains capteurs.
 +
 
 +
Vous pouvez donc utiliser la broche SCL du Feather sans problème :-)
 +
 +
Pour mémoire, certains capteurs comme l'AM2315, nécessitent des résistance pull-up sur SDA et SCL! }}
    
== Installer ==
 
== Installer ==
 
L'utilisation requière l'installation d'une bibliothèque spécifique. Vous trouvez celle-ci ici:
 
L'utilisation requière l'installation d'une bibliothèque spécifique. Vous trouvez celle-ci ici:
   −
{{download-box|Téléchargez la bibliothèque xxx|http://lien}}
+
{{download-box|Téléchargez la bibliothèque TSL2561|https://github.com/mchobby/esp8266-upy/tree/master/tsl2561}}
    
Vous devrez copier les fichiers suivant sur votre carte MicroPython
 
Vous devrez copier les fichiers suivant sur votre carte MicroPython
* xxxx dans le répertoire racine.
+
* {{fname|tsl2561.py}} dans le répertoire racine.
    
Pour savoir comment copier vos fichiers sur votre carte MicroPython Feather ESP8266 Huzza, vous pouvez vous référer aux ressources suivantes:
 
Pour savoir comment copier vos fichiers sur votre carte MicroPython Feather ESP8266 Huzza, vous pouvez vous référer aux ressources suivantes:
Ligne 38 : Ligne 64 :  
Nous allons nous connecter en WebREPL pour tester notre code. Vous pouvez également réaliser ce test en REPL Série via la liaison USB-Série (si celle-ci est disponible).
 
Nous allons nous connecter en WebREPL pour tester notre code. Vous pouvez également réaliser ce test en REPL Série via la liaison USB-Série (si celle-ci est disponible).
   −
La connexion REPL et WEBRepl sont abordés dans nos [[https://wiki.mchobby.be/index.php?title=MicroPython-Accueil#ESP8266_en_MicroPython|tutoriels généraux ESP8266 sous MicroPython]]  
+
La connexion REPL et WEBRepl sont abordés dans nos [[MicroPython-Accueil#ESP8266_en_MicroPython|tutoriels généraux ESP8266 sous MicroPython]]  
    
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
Code Python
+
# Mesure de lumière avec Adafruit TSL2561 (ADA439) et ESP8266 MicroPython
 +
 
 +
* Shop: Adafruit TSL2561 (ADA439) - http://shop.mchobby.be/product.php?id_product=238
 +
* Wiki: https://wiki.mchobby.be/index.php?title=MicroPython-Accueil#ESP8266_en_MicroPython
 +
 
 +
from tsl2561 import *
 +
from machine import I2C, Pin
 +
 
 +
# Ne pas utiliser la broche 7 pour SCL parce ce qu'il perturbe la sequence
 +
# de boot lorsqu'une alimentation est branchée sur le connecteur microUSB
 +
#
 +
i2c = I2C( sda=Pin(4), scl=Pin(2), freq=20000 )
 +
 
 +
tsl = TSL2561( i2c )
 +
# Lecture d'une valeur
 +
#  Cela activera automatiquement le senseur (ce qui prend du temps)
 +
#  puis effectue la lecture ensuite désactive le senseur.
 +
#  Retourne une valeur en lux (ex: 6.815804 Lux)
 +
print( tsl.read() )
 +
 
 +
# Note: vous pouvez activer/désactiver manuellement le senseur avec
 +
# active(True/False).
 +
 
 +
# Vous pouvez changer manuellement le gain et temps d'intégration
 +
# * Le gain peut être 1 ou 16
 +
# * Le temps d'intégration : 0 ou 13 ou 101 ou 402 (0=manuel)
 +
tsl.gain( 16 )
 +
tsl.integration_time( 402 )
 +
print( tsl.read() )
 +
 
 +
# Vous pouvez également utiliser une sélection automatique du gain (AutoGain)
 +
# (uniquement si vous n'utilisez pas d'intégration manuelle)
 +
tsl.integration_time( 402 )
 +
print( tsl.read(autogain=True) )
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 +
== Informations pratiques ==
 +
=== Luminosité vs Lux ===
 +
Voici un petit tableau récapitulatif mettant en correspondance une mesure en Lux et la luminosité ambiante à laquelle elle correspond.
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
| align="center" | '''Lux''''
 +
| align="center" | '''Luminosité correspondante'''
 +
|- style="font-size: 90%"
 +
| align="left" | 0.002 lux
 +
| align="left" | Nuit par temps clair sans lune.
 +
|- style="font-size: 90%"
 +
| align="left" | 0.2 lux
 +
| align="left" | Minimum de lumière que doit produire un éclairage d'urgence (AS2293).
 +
|- style="font-size: 90%"
 +
| align="left" | 1 lux
 +
| align="left" | Pleine lune par temps clair.
 +
|- style="font-size: 90%"
 +
| align="left" | 3.4 lux
 +
| align="left" | Limite crépusculaire (sombre) au couché du soleil en zone urbaine.
 +
|- style="font-size: 90%"
 +
| align="left" | 50 lux
 +
| align="left" | Eclairage d'un living room
 +
|- style="font-size: 90%"
 +
| align="left" | 80 lux
 +
| align="left" | Eclairage des toilette/Hall
 +
|- style="font-size: 90%"
 +
| align="left" | 100 lux
 +
| align="left" | Journée très sombre/temps très couvert.
 +
|- style="font-size: 90%"
 +
| align="left" | 300 - 500 lux
 +
| align="left" | Levé du soleil, luminosité par temps clair. Zone de bureau correctement éclairée.
 +
|- style="font-size: 90%"
 +
| align="left" | 1,000 lux
 +
| align="left" | Temps couvert; Eclairage typique d'un studio TV
 +
|- style="font-size: 90%"
 +
| align="left" | 10,000 - 25,000 lux
 +
| align="left" | Pleine journée (pas de soleil direct)
 +
|- style="font-size: 90%"
 +
| align="left" | 32,000 - 130,000 lux
 +
| align="left" | Soleil direct
 +
|}
 +
 +
=== Adresse I2C ===
 +
L'adresse par défaut est 0x39 (lorsque la broche d'adresse reste déconnectée).
 +
 +
La broche d'adresse peut être utilisé pour modifier l'adresse I2C en cas de conflit. Connectez la broche ADDR sur la masse pour fixer l'adresse sur 0x29. Connectez sur 3.3V (vcc) pour fixer l'adresse sur 0x49.
 +
 +
=== La broche INT ===
 +
La broche INT est une sortie du senseur utilisé lorsque vous avez configuré le senseur pour signaler une modification du niveau lumineux. Si vous désirez utiliser ce signal, vous devez utiliser une résistance pull-up de 10K-100K branchée entre INT et 3.3V
    
== Encore Plus ==
 
== Encore Plus ==
Ligne 51 : Ligne 161 :     
== Où acheter ==
 
== Où acheter ==
* composant xxx
+
* {{pl|238|TLS2561 - Lux Sensor}}
 
* {{pl|846|Feather ESP8266 Huzzah}}
 
* {{pl|846|Feather ESP8266 Huzzah}}
 
* {{pl|733|Huzzah ESP8266 WiFi breakout}}
 
* {{pl|733|Huzzah ESP8266 WiFi breakout}}
29 917

modifications

Menu de navigation