Plop
Pas de relais pour le moment, juste le DHT22 et une platine avec un capteur de luminosité. Je connais pas du tout la techno arduino alors j'y vais par étape.
Le site est en PHP MySQL, c'est souple et je capitalise du code que j'avais fais il y a quelques temps

et je suis pas DEV alors c'est surement pas très sioux.
Je vais vous mettre deux trois screens mais j'ai qu'une CSS au couleur de mon ancien projet, pas trop montrable quoi ^^
Pour la remonter d'info, il y a deux méthodes visiblement, en gros une PUSH et une GET.
De ce que j'en ai compris, l'arduino est capable de se réveiller à intervalle fixe et pousser des infos via le port USB. Ensuite, le raspberry va lire ces infos et fait sa vie. On a un fonctionnement asynchrone, ça évite les blocages.
Ou alors, le raspberry va lire de lui même les infos à la demande pour les valeurs courantes et dans une base pour l'historique.
J'aime pas trop les SGBD pour stocker ce genre de données, une archive RRD est bien plus pratique :
http://fr.wikipedia.org/wiki/RRDTool
J'ai pas finis le dev, manque des méthodes pour déplacer les pieds d'un placo a un autre, quelques formulaires de modif des "objets".
En gros, on a les objets suivants :
Genotype -> Variété au sens phéno mais ça peut être une génétique (plusieurs phénos).
Box -> Ben c'est un placard, ou une serre.
Plante -> Un pied a proprement parlé, lié à un génotype et une box.
Groupe de plantes -> Comme une box mais sans une vue dédiée. Peut être à cheval sur plusieurs box.
Action -> un arrosage, pulvé, switch photoperiode, nettoyage box, changemetn lampe, root triming, etc ... C'est vraiment là que l'utilisateur enrichi la base au fur et à mesure, une action peut porter sur une box, un groupe ou une plante. Je dois faire évoluer le formulaire pour pouvoir sélectionner plusieurs plantes/groupes/box à la fois pour une action donnée.
Le but est d'avoir un compromis entre lourdeur de saisi et richesse des infos calculées à partir des données utilisateur.
Puis on a des vues :
Plante -> Bon là rien d'excitant, le F+ ou C+ calculé, le nombre de jours depuis dernier arrosage, dernière pulvé. Un lien vers la box et le génotype correspondant. + Listes des dernières actions sur la plante courante.
Geno -> L'idée de cet écran est de mettre des infos sur le phéno en question, et de créer une base de connaissance avec les runs en cours et finis de ce phéno. Ca permet de savoir quand on coupe en général (a F+xx), les fréquences d'arrosage, puis d'autres trucs surement par la suite. Il ya aussi les notes du cultivateur sur les qualités/défauts de chaque géno, pour faciliter le comparaison.
Box -> La ça devient sympa à mon avis, on a une vue "du dessus" du placo avec les plantes dedans. D'un coup d'oeil, on voit si on a pas zappé un arrosage, on voit quel age à chaque plante. + liste actions sur plantes de la box. A venir : info climatique temps réel, des graphes du climat. Yaura un system de seuils pour les températures/humi mais aussi pour les freq arrosage/pulvé, l'idée c'est d'utiliser une couleur différente (genre orange à rouge) pour alerter l'utilisateur sur une plante en particulier qui a besoin d'une action. Ces seuils pourront servir aussi au pilotage de la ventil, le chauffage, etc (mais on en ai as là)
Dashboard -> pas fait encore mais on aura une vue globale des box ainsi que des plantes dans les box, à terme ça sera l'écran le plus utile.
Pour les arrosages, ya pas d'histoire de quantité, de doses d'engrais tout ça. Je voyais pas comment ajouter ça sans rendre le formulaire relou à remplir. Par contre, il y a un champs "libre" où je mets mes dosages pour m'en souvenir plus tard.
J'essaye de faire le truc le plus flexible possible quitte a manquer de précisions sur certains aspects (arrosage par exemple), moi j'ai besoin de savoir où j'en suis niveau arrosage/traitement et ages des plantes. Je pense que d'autres cultivateurs ont des besoins différents,
Le code gère les multiutilisateurs, reinit de mot de passe, ça sert à rien en l'état mais ça pourrait servir par la suite (c'est une des avancées de la new version d'hortimax par exemple, forcément ya plusieurs employés dans une serre industriel). Je sais pas encore si je met des trucs pour uploader des photos et customiser donc les objets plantes et génotypes.
Pour le calcul de l'age, on a la date de naissance de la plante (à la création), quand on déplace la plante d'une box 18/6 à 12/12 ou 12/12 à 18/6, on met la date de switch photoperiode en base, on calcul donc si la plante est en F ou C et si avant elle etait en F ou C ou rien => Ca gère les regen en plus hu hu
Bon je vais mettre un screen de teasing, c'est la tradition sur FCF
