Paso 7: Sensor de luz
¿POR QUÉ LA LUZ SENSOR?
- Este sensor puede utilizarse para comprobar si la planta está recibiendo la luz es suponga para obtener
- Realizar acciones de lógica como activar luz ON/OFF según el valor de luminancia
- Si dejas tu luz 24/7, su planta tiene hojas pequeñas ya que no carecen de luz. Que no se necesitan para crecer sus hojas para tener un área más grande en orden de conseguir más luz del sol.
NOTAS
- Los resultados están muy influenciados por la luz. Ver resultados de imágenes de una intensidad de la luz experimento I performed0
- La planta tiene un "reloj interno". Cuenta la cantidad en el período de luz y la oscuridad necesaria para satisfacer el Ciclo de Calvin
- Relé de estado sólido de mantener conectado a Arduino.
- Este paso se construye desde el paso de relé
- Ver imagen para cableado
- VCC de 5V
- GND a GND
- Hacia fuera a Analog pin A0
- Utilizar una gama completa de luz (mezcla de azul violeta y naranja-rojo)
- Rojos son necesarios para la clorofila A, utilizado durante la fotosíntesis
- Los azul son necesarios para la clorofila B
- Verdes son reflejados por la planta
SENSOR UTILIZADO
Fantasma YoYo Arduino compatible con el Sensor de luz - enlace de Amazonas
- Características del sensor
- Puede detectar la luminancia circundante o luz entonces valor analógico de salida
- Interfaz analógica.
- Sensibilidad ajustable.
- Funcionamiento estable.
- Tamaño: 23 * 21 mm.
- Voltaje de funcionamiento: 5V
- Adoptar la resistencia fotoconductivos,
- Conveniente para detectar una amplia gama de luminancia o la luz.
- Aplicable a una variedad de plataformas incluyendo Arduino / AVR / brazo.
EL código (relé + código de la luz)
#define RELAY1_PIN 3 // Digital pin for Relay Channel that controls CH1#define RELAY2_PIN 4 // Digital pin for Relay Channel that controls CH2 #define LIGHTSENSOR_PIN 0 //Analog Pin for Lightvoid setup() { //Initialize Serial to later print LightSensor value on Serial Monitor Serial.begin(9600); //Initialize Relay Pins. pinMode(RELAY1_PIN, OUTPUT); // Currently connected for Light pinMode(RELAY2_PIN, OUTPUT); // Currently connected for Water Pump }void loop() { //Read the Analog Pig connected to LightSensor and save value to Luminance variable uint16_t cur_luminance = analogRead(LIGHTSENSOR_PIN); //Print Luminance Value to Serial Monitor Serial.print("Luminance Value: "); Serial.print(cur_luminance,DEC); Serial.print(" | "); //Logic that uses luminance value to control relay if (cur_luminance <=350) { //Turn all Relay channels to HIGH digitalWrite(RELAY1_PIN, HIGH); digitalWrite(RELAY2_PIN, HIGH); } else { //Turn all Relay channels to LOW digitalWrite(RELAY1_PIN, LOW); digitalWrite(RELAY2_PIN, LOW); } //Read relay pin state and print to Serial Monitor Serial.print("Relay 1 Status: "); Serial.print(On_or_off(digitalRead(RELAY1_PIN))); Serial.print(" | Relay 2 Status: "); int relay2 = Serial.print(On_or_off(digitalRead(RELAY2_PIN))); // Sleeps for 2 second delay(2*1000); Serial.println("\n*******************************************************************************************************"); } //Function used to Print ON or OFF instead of 0 or 1 const char* On_or_off(int pin_value) { if (pin_value == 0) { return "OFF"; } else if (pin_value == 1) { return "ON "; } else { return "BAD"; } }