5.2 Système de contrôle de la lumière

5.2.1 Capteur de photorésistance

Ouvrez le code 5.2.1Photocell-sensor avec Arduino IDE.

#define PhotocecllPin 34  //Define the photoresistor pin

void setup() {
  //Initialize the serial port
  Serial.begin(9600);
  //Set the pin to input mode
  pinMode(PhotocecllPin,INPUT);
}

void loop() {
  //Read the value of photoresistor
  int ReadValue = analogRead(PhotocecllPin);
  //Print the value. NOTE: ESP32 board is 12-bit ADC, whose detection value range is within 0~4095.
  Serial.print("Photocecll value: ");
  Serial.println(ReadValue);
  delay(500);
}

Choisissez la carte ESP32 Dev Module et le port COM, puis téléchargez le code.

5458448

Résultat du test :

Ouvrez le moniteur série.

Plus la lumière détectée par la photorésistance est forte, plus la valeur sera élevée.

image-20250417112320453

Un module de photorésistance convertit un signal lumineux en signal électrique (tension, courant et résistance). Lorsque la lumière frappe la photorésistance, plus la lumière est forte, plus la résistance sera faible, de sorte que la tension VCC passera davantage à travers la photorésistance.

image

5.2.2 Système de contrôle de la lumière

Ouvrez le code 5.2.2Light-Control-System avec Arduino IDE.

#define PhotocecllPin 34  //Define the photoresistor pin
#define LED           27  //Define LED pin

void setup() {
  //Initialize serial port
  Serial.begin(9600);
  //Set the photoresistor pin to input mode 
  pinMode(PhotocecllPin,INPUT);
  //Set the LED pin to output mode
  pinMode(LED,OUTPUT);
}

void loop() {
  //Read the value of the photoresistor
  int ReadValue = analogRead(PhotocecllPin);
  //Print the value. NOTE: ESP32 board is 12-bit ADC, whose detection value range is within 0~4095.
  Serial.print("Photocecll value: ");
  Serial.println(ReadValue);
  //Determine:
  //The value of the photoresistor >= 800, LED turns off
  //The value of the photoresistor =< 800, LED turns on
  if(ReadValue >= 800) {
    digitalWrite(LED,LOW);
    Serial.println("LED OFF");
  }
  else{
    digitalWrite(LED,HIGH);
    Serial.println("LED ON");
  }
  delay(100);
}

Choisissez la carte ESP32 Dev Module et le port COM, puis téléchargez le code.

5458448

Résultat du test :

Lorsque la valeur de la photorésistance est supérieure à 800 (en journée), la LED s’éteint. Cependant, si la valeur est inférieure à 800, la LED s’allume automatiquement.

flo2

image-20250417113142484