Raspberry Pi - Capteur de lumière

Ce tutoriel vous explique comment utiliser le capteur de lumière avec le Raspberry Pi. En détail :

Si vous cherchez un capteur de lumière qui fournit deux niveaux (BAS/HAUT) basés sur un seuil réglable, nous vous recommandons vivement de consulter le tutoriel Raspberry Pi - Module LDR.. Il est beaucoup plus facile et plus pratique à utiliser.

Préparation du matériel

1×Raspberry Pi 5
1×Capteur de lumière
1×10 kΩ Resistor
1×Alternativement: LDR Light Sensor Module
1×Module ADC ADS1115
1×Plaque d'essai
1×Fils de connexion
1×Recommandé: Shield à bornier à vis pour Raspberry Pi
1×Recommandé: Kit plaque de base prototypage et plaque d'essai pour Raspberry Pi
1×Recommandé: Écran tactile HDMI pour Raspberry Pi

Ou vous pouvez acheter les kits suivants:

1×Kit de Capteurs DIYables (30 capteurs/écrans)
1×Kit de Capteurs DIYables (18 capteurs/écrans)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À propos du capteur de lumière

Ce tutoriel utilise un capteur de lumière connu sous le nom de photorésistance. Il est également appelé résistance dépendante de la lumière, LDR, ou photorésistance.

Il est non seulement utilisé pour détecter la lumière, mais aussi pour mesurer le niveau de luminosité/éclairement de l'environnement.

Le Pinout du Capteur de Lumière

Une photorésistance possède deux broches qui n'ont pas besoin d'être distinguées, car c'est un type de résistance symétrique.

Brochage du capteur de lumière

Comment ça fonctionne

Plus la quantité de lumière à laquelle la face de la photorésistance est exposée est grande, plus sa résistance sera faible. Ainsi, en mesurant la résistance de la photorésistance, nous pouvons déterminer la luminosité de l'éclairage environnant.

Fonctionnement d’un capteur de lumière

WARNING

La valeur obtenue du capteur de lumière ne donne qu'une indication approximative de l'intensité lumineuse, pas une mesure précise du flux lumineux. Par conséquent, elle ne devrait pas être utilisée dans des situations nécessitant une grande précision.

Raspberry Pi - Capteur de Lumière

La carte Raspberry Pi n'est pas équipée d'un convertisseur analogique-numérique intégré, nous allons donc utiliser un module ADC externe, tel que l'ADS1115, pour lire la tension analogique d'un capteur de lumière. Suivez ces étapes pour configurer le système :

  • Connectez le capteur de lumière à l'entrée analogique du module ADS1115.
  • Le module ADS1115 effectuera la conversion analogique-numérique de la tension provenant du capteur de lumière, fournissant une valeur ADC.
  • Établissez une connexion entre le Raspberry Pi et le module ADS1115 en utilisant l'interface I2C.
  • Assurez-vous que l'I2C est activé sur le Raspberry Pi et configurez les paramètres nécessaires.
  • Utilisez des bibliothèques ou du code appropriés pour lire la valeur ADC du module ADS1115 via l'interface I2C sur le Raspberry Pi.

En suivant ces étapes, vous pouvez lire avec succès la tension analogique du capteur de lumière en utilisant le module ADS1115 avec votre Raspberry Pi.

Diagramme de câblage

Schéma de câblage du capteur de lumière Raspberry Pi

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Pour simplifier et organiser votre montage de câblage, nous recommandons l'utilisation d'un shield à bornier à vis pour Raspberry Pi. Ce shield assure des connexions plus sûres et mieux gérées, comme illustré ci-dessous :

Shield à bornier à vis pour Raspberry Pi

Code Raspberry Pi

Ce code lit la valeur d'une photocellule et évalue le niveau de lumière de manière qualitative.

Étapes rapides

  • Assurez-vous d'avoir installé Raspbian ou tout autre système d'exploitation compatible avec Raspberry Pi sur votre Pi.
  • Assurez-vous que votre Raspberry Pi est connecté au même réseau local que votre PC.
  • Assurez-vous que votre Raspberry Pi est connecté à l'internet si vous devez installer des bibliothèques.
  • Si c'est la première fois que vous utilisez Raspberry Pi, voir Installation du logiciel - Raspberry Pi.
  • Connectez votre PC au Raspberry Pi via SSH en utilisant le client SSH intégré sur Linux et macOS ou PuTTY sur Windows. Voir comment connecter votre PC au Raspberry Pi via SSH.
  • Assurez-vous que vous avez la bibliothèque RPi.GPIO installée. Sinon, installez-la en utilisant la commande suivante :
sudo apt-get update sudo apt-get install python3-rpi.gpio
  • Installez la bibliothèque Adafruit_ADS1x15 en exécutant les commandes suivantes dans le terminal de votre Raspberry Pi :
sudo pip install Adafruit-ADS1x15
  • Créez un fichier de script Python light_sensor.py et ajoutez le code suivant :
# Ce code Raspberry Pi a été développé par newbiely.fr # Ce code Raspberry Pi est mis à disposition du public sans aucune restriction. # Pour des instructions complètes et des schémas de câblage, veuillez visiter: # https://newbiely.fr/tutorials/raspberry-pi/raspberry-pi-light-sensor import time import Adafruit_ADS1x15 # Create an ADS1115 ADC object adc = Adafruit_ADS1x15.ADS1115() # Set the gain to ±4.096V (adjust if needed) GAIN = 1 # Define the threshold values for dim and bright levels DIM_THRESHOLD = 2000 # Adjust this based on your sensor's calibration BRIGHT_THRESHOLD = 3000 # Adjust this based on your sensor's calibration # Function to classify the light level def classify_light_level(raw_value): if raw_value < DIM_THRESHOLD: return "Dim" elif raw_value >= DIM_THRESHOLD and raw_value < BRIGHT_THRESHOLD: return "Moderate" else: return "Bright" # Main loop to read the analog value from the LDR and classify the light level try: while True: # Read the raw analog value from channel A3 raw_value = adc.read_adc(3, gain=GAIN) # Convert the raw value to voltage (not needed for classification) voltage = raw_value / 32767.0 * 4.096 # Assumes 4.096 V range for GAIN=1 # Classify the light level light_level = classify_light_level(raw_value) # Print the results print("Raw Value: {} \t Voltage: {:.2f} V \t Light Level: {}".format(raw_value, voltage, light_level)) # Add a delay between readings (adjust as needed) time.sleep(1) except KeyboardInterrupt: print("\nExiting the program.")
  • Enregistrez le fichier et exécutez le script Python en entrant la commande suivante dans le terminal :
python3 light_sensor.py
  • Couvrez le capteur de lumière avec votre main ou éclairez le capteur.
  • Vérifiez le Terminal pour voir le résultat.
PuTTY - Raspberry Pi
Raw Value: 1000 Voltage: 0.61 V Light Level: Dim Raw Value: 1800 Voltage: 1.10 V Light Level: Dim Raw Value: 2100 Voltage: 1.29 V Light Level: Moderate Raw Value: 2500 Voltage: 1.53 V Light Level: Moderate Raw Value: 2800 Voltage: 1.71 V Light Level: Moderate Raw Value: 3200 Voltage: 1.96 V Light Level: Moderate Raw Value: 3600 Voltage: 2.20 V Light Level: Bright Raw Value: 4000 Voltage: 2.45 V Light Level: Bright

Le script s'exécute dans une boucle infinie jusqu'à ce que vous appuyiez sur Ctrl + C dans le terminal.

Vidéo

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !