KY-018 Module à photorésistance LDR
Comprend une résistance LDR dont la valeur de la résistance diminue lorsque l'environnement devient plus lumineux.
- Arduino
- Raspberry Pi
- Micro:Bit

Comprend une résistance LDR dont la valeur de la résistance diminue lorsque l'environnement devient plus lumineux.
Cette résistance peut être déterminée à l'aide d'un diviseur de tension, où une tension connue est partagée entre une résistance connue (10KΩ) et une résistance inconnue (variable). En utilisant cette tension mesurée, la résistance peut alors être calculée - le calcul exact est inclus dans les exemples de code ci-dessous.
Résistance connue fixe | 10 kΩ |
Affectation des broches
Exemple de code Arduino
Affectation des broches Arduino
Arduino | Capteur |
---|---|
Pin A5 | Signal |
5V | +V |
GND | GND |
Le programme mesure la valeur de la tension actuelle au niveau du capteur, calcule la valeur de la résistance actuelle du capteur à partir de celle-ci et de la résistance en série connue, et transmet les résultats à la sortie série.
int sensorPin = A5; // Déclaration de la broche d'entrée
// Sortie série à 9600 bauds
void setup()
{
Serial.begin(9600);
}
// Le programme mesure la valeur de tension continue aux bornes de la LDR, il calcule la résistance du capteur <br />// et envoie le résultat vers la sortie série.
void loop()
{
// La valeur de la tension est mesurée
int rawValue = analogRead(sensorPin);
float voltage = rawValue * (5.0/1023) * 1000;
float resitance = 10000 * ( voltage / ( 5000.0 - voltage) );
// Sortie vers l'interface série
Serial.print("Tension:"); Serial.print(voltage); Serial.print("mV");
Serial.print(", Resistance:"); Serial.print(resitance); Serial.println("Ohm");
Serial.println("---------------------------------------");
delay(500);
}
Télécharger l'exemple de programme

Comprend une résistance LDR dont la valeur de la résistance diminue lorsque l'environnement devient plus lumineux.
Cette résistance peut être déterminée à l'aide d'un diviseur de tension, où une tension connue est partagée entre une résistance connue (10KΩ) et une résistance inconnue (variable). En utilisant cette tension mesurée, la résistance peut alors être calculée - le calcul exact est inclus dans les exemples de code ci-dessous.
Résistance connue fixe | 10 kΩ |
Affectation des broches
Exemple de code Raspberry Pi
Affectation des broches Raspberry Pi
Raspberry Pi | Capteur |
---|---|
- | Signal |
3,3 V [Pin 1] | +V |
GND [Pin 6] | GND |
Capteur | KY-053 |
---|---|
Signal | A0 |
+V | - |
GND | - |
Raspberry Pi | KY-053 |
---|---|
3,3 V [Pin 1] | +V |
GND [Pin 6] | GND |
GPIO 3 [Pin 5] | SCL |
GPIO 2 [Pin 3] | SDA |
Capteur analogique, il faut donc respecter les points suivants.
Contrairement à l'Arduino, le Raspberry Pi n'a pas d'entrées analogiques ou il n'y a pas d'ADC (convertisseur analogique numérique) intégré dans la puce du Raspberry Pi. Cela limite le Raspberry Pi, si vous voulez utiliser des capteurs, où les valeurs de sortie ne sont pas numériques [valeur de tension dépassée -> valeur numérique ON | valeur de tension sous-cotée -> valeur numérique OFF | exemple : bouton enfoncé [ON] bouton relâché [OFF]], mais il doit s'agir d'une valeur variable continue (exemple : potentiomètre -> autre position = autre valeur de tension).
Pour éviter ce problème, notre kit de capteur X40 a le KY-053, un module avec ADC précis de 16 bits, que vous pouvez utiliser sur le Raspberry pour l'étendre avec 4 entrées analogiques. Il est connecté au Raspberry Pi via I2C, prend en charge la mesure analogique et transmet la valeur numérique au Raspberry Pi.
Ainsi, nous recommandons de connecter le module KY-053 avec ledit ADC entre les capteurs analogiques de cet ensemble. Pour plus d'informations, veuillez consulter la page d'information sur le convertisseur analogique-numérique KY-053.
Le programme utilise les bibliothèques Python ADS1x15 et I2C correspondantes d'Adafruit pour piloter l'ADC ADS1115. Ceux-ci ont été publiés au lien suivant https://github.com/adafruit/Adafruit_CircuitPython_ADS1x15 sous la licence MIT. Les bibliothèques requises ne sont pas incluses dans le paquet de téléchargement ci-dessous.
Le programme utilise l'ADC ADS1115 pour mesurer la valeur de la tension actuelle au niveau de l'ADC, l'utilise pour calculer la résistance actuelle de la CTN, utilise les valeurs déterminées à l'avance pour ce capteur pour calculer la température, et envoie le tout à la console.
Veuillez noter que vous devez activer I2C sur votre Raspberry Pi avant d'utiliser cet exemple.
#!/usr/bin/python
# coding=utf-8
import time
import board
import busio
import adafruit_ads1x15.ads1115 as ADS
from adafruit_ads1x15.analog_in import AnalogIn
import math
# Create the I2C bus
i2c = busio.I2C(board.SCL, board.SDA)
# Create the ADC object using the I2C bus
ads = ADS.ADS1115(i2c)
voltageMax = 3.3
# Create single-ended input on channels
chan0 = AnalogIn(ads, ADS.P0)
chan1 = AnalogIn(ads, ADS.P1)
chan2 = AnalogIn(ads, ADS.P2)
chan3 = AnalogIn(ads, ADS.P3)
while True:
resistance = chan0.voltage / (voltageMax - chan0.voltage) * 10000
print("Spannungswert: ",'%.2f' % chan0.voltage,"V, Widerstand: ",'%.2f' % resistance, "Ω")
print("---------------------------------------------------")
time.sleep(1)
Exemple de téléchargement de programme
Pour commencer avec la commande :
sudo python3 KY018-RPi.py

Comprend une résistance LDR dont la valeur de la résistance diminue lorsque l'environnement devient plus lumineux.
Cette résistance peut être déterminée à l'aide d'un diviseur de tension, où une tension connue est partagée entre une résistance connue (10KΩ) et une résistance inconnue (variable). En utilisant cette tension mesurée, la résistance peut alors être calculée - le calcul exact est inclus dans les exemples de code ci-dessous.
Résistance connue fixe | 10 kΩ |
Affectation des broches
Exemple de code Micro:Bit
Affectation des broches Micro:Bit :
Micro:Bit | Sensor |
---|---|
- | Signal |
3,3 V | +V |
GND | GND |
Sensor | KY-053 |
---|---|
Signal | A0 |
+V | - |
GND | - |
Micro:Bit | KY-053 |
---|---|
Pin 19 | SCL |
Pin 20 | SDA |
3,3 V | +V |
GND | GND |
Capteur analogique, il faut donc respecter les points suivants: Le Micro:Bit dispose d'entrées analogiques ou d'un ADC (convertisseur analogique-numérique) intégré dans la puce du Micro:Bit. Cependant, ceux-ci ne sont limités qu'à 10 bits et n'offrent donc qu'une précision assez faible pour les mesures analogiques.
Pour éviter ce problème, notre kit de capteur X40 contient le KY-053, un module avec un ADC de 16 bits, que vous pouvez utiliser sur le Micro:Bit pour l'étendre de 4 entrées analogiques. Celui-ci est connecté au Micro:Bit via I2C, prend en charge la mesure analogique et transfère la valeur numériquement au Micro:Bit.
Par conséquent, nous recommandons de connecter le module KY-053 avec le CAN mentionné entre les capteurs analogiques de ce jeu. Plus d'informations peuvent être trouvées sur la page d'information du convertisseur analogique numérique Convertisseur analogique numérique KY-053.
Le programme utilise la bibliothèque correspondante de notre part pour contrôler l'ADC ADS1115. Ceci a été publié sous le lien suivant pxt-ads1115 sous la licence MIT.
