Hacking Day Sept15

Agronomie Informatique UX Design
4 janvier 2016 par laurent
2 Commentaires sur cet article

Previously in « the Hacking Day »… Vous avez peut être déjà entendu parler du principe du Hacking Day (Hackathon interne d’entreprises) et vous avez peut-être même aperçu les premières versions des H-Day organisés chez itk depuis début 2013.

Cette année, sous l’impulsion de Romain, nous avons changé le format pour redonner plus de vigueur à ce jour très spécial. Nous passons donc d’une journée par mois environ (chaque inter-sprint) à trois jours consécutifs tous les trois mois. Le temps investi reste donc le même mais la durée prolongée permet de s’investir dans un projet plus concret et de le mener à bien.
Itk nous a également attribué un petit budget ce qui nous permet de nous plonger dans le coté « hardware » des projets (complètement absent jusqu’à maintenant) et ouvre ainsi de manière conséquente le champ des possibilités.

Pour cette nouvelle édition, deux projets ont été retenus : « Panic Button » et « Irrig Manager ».

Panic Button

5 personnes – Lead by Jérémy

Romain B, Manu, Marine, Nathalie et Jérémy

Plus itk s’agrandit plus la communication inter-équipe devient compliquée. Ces derniers mois les différentes équipes ont même commencé à être séparées physiquement sur différents étages du bâtiment.

L’idée de ce projet était d’installer un gros bouton rouge en salle commune qui permet via un Raspberry Pi d’allumer des diodes dans tous les bureaux itk pour demander un rassemblement ou signaler un problème. Et pour finir avec les paroles de Jérémy « À cela on y rajoute du son, un manager et on s’éclate. »

panic button - photo 1 panic button - photo 2 panic button - photo 3

Irrig Manager

21 personnes – Lead by Romain

Ce projet est parti d’une envie de jeter un œil du coté des objets connectés. En premier lieu Romain imaginait un projet très basique visant à arroser au mieux des jardinières de tomates en couplant un petit système électronique à un modèle agronomique simple. C’était sans compter notre cher patron qui partageait l’envie d’apporter la partie « objets connectés » au savoir faire d’itk. Le projet a alors pris de l’ampleur et s’est dirigé vers l’irrigation semi-automatique de pieds de vignes : récupération de l’humidité du sol et de données d’une station météo par une web app, simulation via un modèle agronomique et irrigation de la vigne en conséquence (via des électro-vannes et des goutte-à-gouttes).

Le projet a rassemblé beaucoup de monde et a été divisé en 4 équipes :

Team « Model »

Amélie, Bastien, Jérôme, Mélanie, Carole & Nelly.

L’équipe a pris en charge le modèle agronomique calculant les besoins en eau de la plante. Pour cela, des informaticiens et des agronomes ont collaboré étroitement et apporté chacun leur expérience.

Un modèle conceptuel a d’abord été conçu pour répondre aux attentes de l’application visée, en fonction des données d’entrée disponibles. Le modèle a ensuite été développé sous Python (langage méconnu des 2 équipes), en programmation orienté objet et en mettant en place quelques patterns de programmation.

Cette collaboration a permis le double-avantage :

  • d’apprendre aux informaticiens quelques bases d’agronomie et des méthodes de travail en œuvre dans le pôle agronomique d’itk
  • d’apporter aux agronomes des bonnes pratiques de programmation mises en œuvre par le pôle informatique d’itk.

Le modèle répondait une valeur de besoin en eau proche de la réalité pour la plante étudiée, ce qui est un succès pour un modèle développé en 3 jours.

Le modèle développé est très simple: il calcule le besoin en eau de la plante en se basant sur la différence entre la quantité d’eau disponible dans le sol et la quantité d’eau nécessaire à la croissance optimale de la plante. Nous avons choisi une approche simple car d’une part nous disposions de capteurs permettant de simplifier le fonctionnement sol-plante (eg: le capteur d’humidité du sol) et d’autre part, l’équipe s’était fixée comme défi de coder l’ensemble du modèle en Python.

Il s’agissait d’un nouveau langage, à la fois pour les développeurs et les agronomes. Le développement du modèle a été l’occasion pour les agronomes de découvrir la programmation orientée objet; et pour les informaticiens de mieux appréhender les problématiques de programmation d’un modèle agronomique.

La team Model en plein travail

Team « Hardware »

Damien F, Adel, Michele, Cuong, Kamel & Benoit.

L’équipe a été en charge de la réalisation d’un objet connecté basé sur une plateforme de prototypage rapide (Arduino Yun). Dans le cadre de cette activité, des agronomes ainsi que des informaticiens ont travaillé ensemble pour mener à bien ce projet.

Dans le cadre d’une approche objet connecté, notre module n’était pas seulement capable de relever des mesures mais également d’effectuer des actions réactives (réagir en fonction d’une mesure en temps réel). L’objet connecté que nous avons développé était composé d’un certain nombre d’entrées (capteurs) et de sorties (effecteurs). La communication avec le monde extérieur était réalisée au travers de la connectivité Wifi offerte par ce module Arduino, au travers du serveur (hébergé sur le corps ARM) et client Rest.

Ce travail a été une découverte pour une grande majorité des membres de cette équipe. Ce Hacking day s’est décomposé en trois mini-ateliers : découverte de la programmation sur Arduino, puis l’étude des modules de communication proposés par une société tierce et enfin le développement de notre prototype final.

Les premiers prototypes ont consisté en la découverte de la lecture de données analogiques et numériques, puis les essais pour actionner les effecteurs par des commandes. Cette partie était ponctuée par des montages électroniques.

La deuxième journée a été consacrée à la découverte des produits proposés par l’entreprise tierce. Malheureusement, ceux-ci ne nous ont pas permis de répondre aux besoins du produit que nous souhaitions développer.

Enfin, la dernière partie a été consacrée à la finalisation du prototype. Celui-ci intégrait tous les composants nécessaires à ce projet. Ainsi notre produit final était en mesure de remonter des informations issues d’un capteur d’humidité du sol, de compter les impulsions produites par un débitmètre. Un serveur REST a été développé pour recevoir des commandes venues de l’extérieur. Ces commandes avaient pour but d’actionner des relais pour actionner pompe et électrovanne.
Certaines parties de ce projet n’ont pas abouti correctement, comme par exemple le débitmètre ou la manipulation de l’électrovanne. Ceci a principalement été dû à un manque de temps, et des choix de montage non optimaux, ainsi que des composants non adaptés au projet.

La team Hardware en plein travail

Team « Webb App »

Damien D, Loic, Imad & Jef.

La WebApp était là pour faire le pont entre le simulateur agronomique et toute la partie hardware censée contrôler le matériel pour ouvrir/fermer la pompe. Pour faciliter la communication entre le simulateur et la WebApp, l’application a été développée en python, une petite découverte pour les développeurs de l’équipe.

L’interface devait être responsive pour pouvoir être utilisée sur tablette. Les données récupérées grâce aux capteurs y sont affichées, avec la possibilité de les mettre à jour, ainsi qu’un schéma très minimaliste (à la manière du « Material Design » de Google) qui s’anime pour simuler l’irrigation en cours.

Faire l’application la plus légère et la plus maîtrisable possible a été notre fil conducteur. Chose qui nous a poussé à préférer Flask à Django pour le choix du FrameWork python ou encore à tous travailler sur la même branche git… La logique a donc bien été d’avoir le strict nécessaire pour que ça marche!

Par ailleurs, les aller-retours dans les bureaux entre les différentes équipes ont étés très nombreux. Se mettre d’accord sur les protocoles de communication et le contenu des flux n’a pas été une chose évidente. Ce qui est normal pour une application où les objectifs ne sont pas clairement définis dans les détails, tout change en permanence et très vite! Ce qui est en millilitres à 10h est en secondes à midi… Mais on a réussi : au premier raccordement de tous les composants, le système a bien fonctionné, c’était génial!

La team Model en plein travail

Team « Matos »

Sarah, Romain M, Samuel, Marek & Laurent.

Cette équipe a travaillé sur la réalisation d’un support pour le prototype et sur les systèmes d’irrigation et d’éclairage. Le montage devait :

  • être transportable facilement (pour les salons)
  • contenir tous les éléments physiques : 6 vignes naines, 1 réservoir d’eau, 1 pompe, 1 débitmètre, 1 capteur d’humidité, les tuyaux d’arrosage et goutteurs ainsi que le matériel électrique/électronique

Après avoir mesuré, scié, percé, testé et inondé tout ITK, l’équipe matos a réalisé un chef d’œuvre contemporain digne des plus grands architectes.

C’est en 3 jours seulement et avec un budget minime que le challenge a été réalisé. Cette table d’irrigation, présente de nombreux avantages. Pesant environ 20kg et démontable en moins de 5 min, elle se transporte efficacement dans tout type de transport (vélo, skateboard, airbus A380). Un système d’irrigation hi-tech comportant une électrovanne et un débitmètre dernier cri, assureront l’arrosage des cultures préalablement installées en son sein et cela sans aucune fuite !

En dehors du montage nous avons également dû gérer l’éclairage pour que nos vignes ne meurent pas lorsque nous stockons le montage en intérieur.

Aperçu du support de la team Matos

Voici pas à pas le montage du support.

La team Model en plein travail

Résultat

Au final, après 3 jours de travail acharné les quatre équipes ont su présenter un prototype fonctionnel de bout en bout.

L’application web reçoit en live les données du capteur d’humidité et de la station météo et permet à l’utilisateur de lancer une simulation du status hydrique, puis d’irriguer en conséquence.

La team Model en plein travail

laurent laurent
UX designer fan de web, de Romain, de sport, de bacon et de licorne.
Commentaires
  • Sam
    04/01/2016 17:01
    Super article ! J'ajoute qu'on a aussi utilisé une certaine quantité de teflon de plomberie et de scotch électrique haha :) (On aura même appris que le teflon se pose dans un certain sens et pas complètement au pif...)
  • Marek
    26/01/2016 15:58
    La grande classe !

UP