Étape 7: Capteur de lumière
CAPTEUR DE LUMIÈRE POURQUOI ?
- Ce capteur peut être utilisé pour vérifier si plante devient la lumière qu'il est supposé obtenir
- Effectuer des actions de la logique comme éteindre lumineux ON/OFF selon la valeur de luminance
- Si vous laissez votre lumière sur 24/7, votre plante aura petites feuilles car elles n’aura pas pas de lumière. Ils ne devront pas augmenter leurs feuilles d’avoir une plus grande zone afin obtenir plus de soleil.
NOTES
- Vos résultats sont fortement influencés par la lumière. Voir les résultats des images d’une intensité lumineuse j’ai expérimenter performed0
- Plante a une « horloge interne ». Il compte le montant dans la période de lumière et l’obscurité nécessaire pour satisfaire le Cycle de Calvin
- Gardez Solid State Relay reliée à Arduino.
- Cette étape est construite à l’étape du relais
- Voir l’image pour le câblage
- VCC à 5V
- GND à la broche GND
- Sortie analogiques broches A0
- Utiliser un spectre lumineux (mélange de Blues-Violet et Orange-rouges)
- Reds sont nécessaires pour la chlorophylle A, utilisé lors de la photosynthèse
- Blues sont nécessaires pour la chlorophylle B
- Verts sont reflétés par la plante
CAPTEUR UTILISÉ
Fantôme YoYo Arduino compatible capteur de lumière - lien Amazon
- Caractéristiques du capteur
- Peut détecter la luminosité environnante ou lumière puis sortie valeur analogique
- Interface analogique.
- Sensibilité réglable.
- Performance stable.
- Dimensions : 23 mm * 21 mm.
- Tension de fonctionnement : 5V
- Adopter la résistance photoconducteurs,
- Adapté pour détecter un large éventail de luminance ou de lumière.
- Applicable à une variété de plates-formes y compris Arduino / AVR / bras.
LE CODE (code léger + relais)
#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"; } }