Garduino : Jardinage + Arduino (11 / 14 étapes)

Etape 11 : Donner le contrôle de Garduino

Maintenant que vous avez tout construit, il est temps de laisser Garduino légèrement en contact avec vos amis de la plante. Voici le code que j’ai utilisé :

inclure la bibliothèque datetime, donc nos garduino pouvez garder une trace de combien de temps les lumières sont allumées
#include < DateTime.h >

définir des entrées analogiques à laquelle nous avons branché nos capteurs
int moistureSensor = 0 ;
lightSensor int = 1 ;
int tempSensor = 2 ;

définir les sorties numériques à laquelle nous avons connecte notre relais (eau et lumière) et LED (température)
pompe à eau int = 7 ;
lightSwitch int = 8 ;
tempLed int = 2 ;

définir des variables pour stocker des valeurs de température, la lumière et l’humidité
int moisture_val ;
int light_val ;
int temp_val ;

décider combien d’heures de lumière vos plantes devraient recevoir tous les jours
float hours_light_daily_desired = 14 ;

calculer les heures souhaitées de la lumière totale et supplémentaire quotidien basé sur au-dessus des valeurs
float proportion_to_light = hours_light_daily_desired / 24 ;
float seconds_light = 0 ;
float proportion_lit ;

installer une variable pour stocker secondes depuis l’arduino en marche
flotteur start_time ;
float seconds_elapsed ;
float seconds_elapsed_total ;
float seconds_for_this_cycle ;

void setup() {}
ouvrir le port série
Serial.Begin(9600) ;
mettre l’eau, la lumière et goupilles de température comme sorties qui sont éteints
pinMode (pompe à eau, sortie) ;
pinMode (lightSwitch, sortie) ;
pinMode (tempLed, sortie) ;
digitalWrite (pompe à eau, faible) ;
digitalWrite (lightSwitch, faible) ;
digitalWrite (tempLed, faible) ;

établir l’heure de début
start_time = DateTime.Now.ToString ;
seconds_elapsed_total = 0 ;

}
void loop() {}
lire la valeur dans les sondes de détection de l’humidité, l’imprimer à l’écran et attendez une seconde
moisture_val = analogRead(moistureSensor) ;
Serial.Print ("l’humidité capteur reads") ;
Serial.println (moisture_val) ;
Delay(1000) ;
lire la valeur de la sonde de lumière, l’imprimer à l’écran et attendez une seconde
light_val = analogRead(lightSensor) ;
Serial.Print ("lectures de capteur de lumière") ;
Serial.println (light_val) ;
Delay(1000) ;
lire la valeur de la sonde de température, l’imprimer à l’écran et attendez une seconde
temp_val = analogRead(tempSensor) ;
Serial.Print ("lectures de capteur de température") ;
Serial.println (temp_val) ;
Delay(1000) ;
Serial.Print ("total secondes =") ;
Serial.println (seconds_elapsed_total) ;
Delay(1000) ;
Serial.Print ("secondes allumés =") ;
Serial.println (seconds_light) ;
Delay(1000) ;
Serial.Print (« proportion désirée = ") ;
Serial.println (proportion_to_light) ;
Delay(1000) ;
Serial.Print (« proportion atteinte = ") ;
Serial.println (proportion_lit) ;
Delay(1000) ;

transformer l’eau lorsque le sol est sec et retarder jusqu'à ce que le sol est humide
Si (moisture_val < 850)
{
digitalWrite (pompe à eau, haut) ;
}

tandis que (moisture_val < 850)
{
Delay(10000) ;
Merci à JoshTW pour la correction suivante, importante
moisture_val = analogRead(moistureSensor) ;
}

digitalWrite (pompe à eau, faible) ;

mise à jour de temps et d’incrémentation seconds_light si les lumières sont allumées
seconds_for_this_cycle = DateTime.Now.ToString - seconds_elapsed_total ;
seconds_elapsed_total = DateTime.Now.ToString - start_time ;
Si (light_val > 900)
{
seconds_light = seconds_light + seconds_for_this_cycle ;
}

les journées nuageuses qui obtiennent ensoleillées encore une fois : éteindre les lumières arrière si light_val est supérieur à 900. Cela fonctionne b/c les feux supplémentaires ne sont pas aussi brillantes que le soleil:)
Si (light_val > 900)
{
digitalWrite (lightSwitch, faible) ;
}

éteindre les lumières si proportion_lit > proportion_to_light, puis attendez 5 minutes
Si (proportion_lit > proportion_to_light)
{
digitalWrite (lightSwitch, faible) ;
retard (300000) ;
}

comprendre quelle est la proportion des lumières de temps ont été sur
proportion_lit = seconds_light/seconds_elapsed_total ;

Allumez les phares si light_val est inférieur à 900 et plantes ont lumière proportion désirée moins de temps, puis attendent 10 secondes
Si (light_val < 900 et proportion_lit < proportion_to_light)
{
digitalWrite (lightSwitch, HIGH) ;
Delay(10000) ;
}

voyant d’alarme de température s’allume si temp_val est inférieur à 850 (environ 50 degrés Fahrenheit)
Si (temp_val < 850)
{
digitalWrite (tempLed, élevé) ;
}

}

Notez l’inclusion de la bibliothèque datetime, vous pouvez installer à partir ici. Placez le contenu du fichier dans le répertoire des bibliothèques du dossier arduino et vous devriez être bon d’aller.  Consultez le fichier readme dans le téléchargement si vous rencontrez des problèmes.

Suivi doit être grandement amélioré, comme Garduino doit rester là à ne rien faire la plupart du temps quand il ne fonctionne pas correctement. Vous devriez être en mesure de tirer sur les capteurs d’humidité du sol et de les allumer en quelques secondes (air = 0 conductivité entre eux), mais vous ne pouvez pas faire cela avec le capteur de lumière : il est juste essayer d’allumer pendant 16 heures toutes les 24 heures. Actuellement, brancher votre Arduino sur votre ordinateur, puis en surveillant le port série vous donnera quelques réactions significatives. Mais, cela réinitialise le compteur de temps à 0, si vous n’obtenez aucune donnée historique utile sauf si vous laissez le Garduino avec un ordinateur connecté au cours de la période que vous souhaitez surveiller...

Articles Liés

Feuille de lumière : Un moniteur de jardin d’intérieur

Feuille de lumière : Un moniteur de jardin d’intérieur

Avez vous jamais lutté pour garder une plante vivante ? Souhaité de que votre plante pourrait vous dire si elle devait être arrosé ou déplacé un peu plus près de la fenêtre ? Construire une feuille de lumière pour vos plantes d'intérieur pour vous ai
Jardinage Aruduino

Jardinage Aruduino

le but de ce projet consistait à construire une installation automatisée de jardinage Arduino.  J'ai mis en place la température, de lumière et capteurs d'humidité du sol.  Il dispose également d'un solénoïde qui s'ouvre lorsque l'humidité du sol est
Assistée par ordinateur de système de soins de plantes

Assistée par ordinateur de système de soins de plantes

Bonjour tout le monde,Mise à jour le 25/10/2014 : Planterbot-The-plante-surveillance-Robot / (un grand Merci à appleman123987!!!).C'est une mise à jour de mon précédent post, "facile et bon marché de croissance automatique système" - qui n'a pas
Système de jardinage automatisé Garduino

Système de jardinage automatisé Garduino

cette instructable est un guide pour la mise en place d'un système automatisé de jardinage en utilisant un arduino et autres composants électroniques bon marchés.  Il permet de jardiner à l'aide de capteurs pour déterminer l'humidité du sol, ainsi qu
Module de détection de compteur de l’humidité du sol pour Arduino jardinage

Module de détection de compteur de l’humidité du sol pour Arduino jardinage

Salut les gars,Ont créé le programme pour capteur de sol détectés en utilisant arduino qui permet de déterminer l'état du sol avant la plantation et Pendant l'arrosage.Espère que vous êtes été aidé avec ce instructable.a bientôtÉtape 1: Utilisation d
Garduino mise à jour, maintenant avec plus de Twitter !

Garduino mise à jour, maintenant avec plus de Twitter !

Il y a quelques mois, je suis tombé sur deux grands instructables.  Le premier était le Garduino, un jardin d'arduino contrôlée pour vous aider à faire pousser des plantes à la maison.  La seconde était la Tweet-a-Watt, un projet qui vous apprend à c
Le bras de la plante - mise à jour Garduino

Le bras de la plante - mise à jour Garduino

Bonjour tout le monde,Mise à jour: le bras de base planteJ'ai enfin fini mon bras de modernisation de la station de garduino et ne peut pas attendre pour partager avec la communauté.. ! pour rattraper mon travail s'il vous plaît lisez d'abord l'artic
$ 10 Arduino portable station météo (AWS)

$ 10 Arduino portable station météo (AWS)

Mon collège eu récemment une exposition de petite science.Donc m'a prié de mon professeur de présenter un projet dans le Collège d'enseigner aux jeunes étudiants électronique, donc en gros j'ai eu deux jours pour faire quelque chose.Comme les conditi
Arduino pour serre, jardin ou Growbox / mise à jour avril 2016

Arduino pour serre, jardin ou Growbox / mise à jour avril 2016

J'ai été en utilisant Attiny puces pour les tâches de l'irrigation dans mon jardin, mais avoir des plans pour construire une serre, un Arduino semble être la voie à suivre car il a plus de ports. Je sais, il y a plusieurs « Garduino » type projets dé
Début simple au jardinage d’intérieur avec hydroMazing

Début simple au jardinage d’intérieur avec hydroMazing

Si vous avez jamais voulu faire pousser des plantes comme les herbes, les verts, fraises et tomates à la maison, mais pensé qu'il serait moyen trop difficile et coûteuse, alors vous aurez envie de lire la suite. Vous aurez toujours besoin connaître l
Culture hydroponique polyvalent et sol jardinage Solution

Culture hydroponique polyvalent et sol jardinage Solution

J'ai déjà publié un semblable instructable et celui-ci est une version réduite de la même chose parce qu'il se sentait un peu trop compliqué pour certains. Ici, nous allons...IntroductionBeaucoup de gens pensent à partir de jardinage comme un hobby e
Simple système aquaponique à contrôlé par Arduino

Simple système aquaponique à contrôlé par Arduino

cette instructable couvre certains aspects de la construction d'un système aquaponique. J'utilise un micocontroller arduino pour régler la fréquence du système vélo.Si vous une pour construire un système aquaponique, autres instructables, blogs, livr
Intel automatisé système de jardinage

Intel automatisé système de jardinage

Bonjour tout le monde!!!Il s'agit de mon premier Instructabe sur Intel Edison. Cette instructable est un guide pour faire un système automatisé d'arrosage (Irrigation goutte à goutte) pour les petites plantes en pot ou herbes en utilisant un Edison I
Boîtier de relais contrôlé Arduino

Boîtier de relais contrôlé Arduino

ce projet est conçu pour vous aider à construire certaines boîtes de relais de commande d'alimentation de votre prise murale à l'aide d'un arduino ou un microcontrôleur.  L'inspiration pour écrire une instructable est venue lorsque j'ai décidé de con