Voici le tableur de la partie vision sur le logiciel « In sight ». La caméra utilisé est une caméra couleur. Les programmes In-sight n’étant pas compatible avec WordPress, nous avons décidé de mettre les programmes sous forme de captures d’écrans.
détection de la couleur + coordonnées d’une pièce bleu sur le tapis.
détection de la couleur + coordonnées d’une pièce verte sur le tapis.
détection de la couleur + coordonnées d’une pièce rouge sur le tapis.
2) Staubli
Pour des raisons de non compatibilité, les programmes sont mis sous formes de captures d’écrans. Nous retrouvons trois programmes pour les prises pièces des trois couleurs Et un programme qui simule la caméra Cognex (envois de coordonnées X,Y et la couleur présente(B,G,R)) . N’ayant pas réussit à connecter la partie Staubli à la partie In-sight, nous avons décidé de simuler la caméra directement sur le logiciel Staubli avec les même chaines de caractères.
6) Partie TEST
a) côté réservoir ( Arduino )
Voici une vidéo qui montre le bon fonctionnement du réservoir de pièce. Nous pouvons voir que la libération des pièces se fais de façon aléatoire et qu’il n’est pas possibles d’avoir deux pièces identiques à la suite. Si aucune chute de pièce est détectée au bout de 5 secondes, le moteur s’arrête.
b) côté Robot/Vision
7) Conclusion
Ce projet fut très intéressant, il nous a permis d’appliquer les connaissances de In-sight et Staubli vu en cours directement sur un projet concret.
Je vois quelques points à travailler pour améliorer ce projet notamment: – Passer sur un automate serait une bonne idée – surveillé la consommation des moteurs (passer sur des moteurs à courant continu pour limiter la consommation) – Minimiser la chauffe des moteurs pour pouvoir faire tourner l’installation pendant une période plus longues.
Intégration d’un capteur de détection pièce
A côté du projet précédent, qui est un plan incliné pour la distribution de pièces pour la robotique manufacturière, nous avons procédé à l’intégration d’un capteur pouvant détecter la présence d’une pièce. Ce capteur est intégré au sein de la pince robot, au niveau des mors.
Ce capteur sera un simple interrupteur cylindrique intégré à l’un des mors. Cette intégration devra être étudiée à l’IUT Lab.
Le câblage de celui-ci est de préférence unipolaire, ce qui comprend une alimentation et un retour d’information. Pour effectuer ce câblage il faut utiliser les connecteurs J1203 sur l’avant bras du robot et J1202 sur le pied ainsi que sur la CPU. Les connecteurs à utiliser seront de la marques Binder Connector dans la gamme miniature. Ils seront de 19 broches en M16. Le format mâle est appliqué à l’avant bras et à la CPU. Tandis que le format femelle est adapté au connecteur sur le pied.
Autonomie du système et optimisation de la consommation
Intégration des composants
Mise en œuvre d’une interface utilisateur
État des lieux du projet, et amélioration possibles
Conclusion
Introduction
A l’heure actuelle, de nombreux modèles de balances connectées pour ruches sont disponibles sur le marché. Ces balances présentent parfois des fonctionnalités supplémentaires, par exemple une station-météo intégrée, un antivol GPS, etc. Le prix de ces systèmes est assez élevé et ces modèles sont principalement destinés à des professionnels. C’est pour ces raisons que nous avons choisi de réaliser notre propre balance connectée, intégrant d’autres fonctionnalités.
Premièrement, dans la gestion d’une ruche, la température et le taux d’humidité internes sont très importants. Ces deux grandeurs, informe directement l’apiculteur sur la santé de la colonie. Ensuite, nous avons choisi de mesurer les fréquence du bourdonnement des abeilles à l’intérieur de la ruche afin de pouvoir détecter un essaimage.
Cahier des charges
Solutions techniques mises en œuvre
Mesure du poids de la ruche
Nous avons choisi d’utiliser quatre capteurs de force en pont de Wheatstone, pouvant mesurer jusqu’à 50 Kg chacun. Ces capteurs sont connectés en parallèles, le poids maximal mesurable est donc de 200 Kg. La précision donnée par le constructeur est de ± 25 grammes. Les mesures sont effectuées par une carte programmable Arduino.
Capteur de force
Un amplificateur – convertisseur est nécessaire pour effectuer les mesures. Le composant choisi est un amplificateur HX711. Il permet de convertir la valeur analogique de la masse mesurée en donnée numérique, transmise ensuite à la carte Arduino par communication série.
HX711
Il est nécessaire d’effectuer une calibration de ces capteurs, au moyen d’un code fourni par le fabriquant de l’amplificateur, utilisant une bibliothèque spécifique afin de simplifier la programmation.
Mesure de la température et du taux d’humidité
Pour mesurer la température et l’humidité à l’intérieur de la ruche, un capteur comportant ces deux fonctions est utilisé. Il s’agit d’un capteur AM2320. Ce capteur est capable de mesurer une température de -40°C à +80°C avec une précision de ±0,5°C, et un taux d’humidité allant de 0% à 99,9% avec une précision de ±3%. Il communique par un bus I2C avec la carte Arduino. Ce bus comporte deux voies, une voie d’horloge (SCL) et une voie de données (SCL). C’est un protocole standardisé très répandu dans les applications électroniques. Concernant la programmation, l’utilisation d’une bibliothèque fournie par Adafruit inclus toutes les fonctions nécessaires à la programmation.
AM2320
Mesure de la fréquence des sons de la ruche
La fréquence des sons produits par les abeilles ne s’obtient pas directement par lecture de la valeur d’un capteur. Le capteur utilisé est un micro à électret amplifié ADA1063. Il dispose d’une sortie analogique. Pour obtenir la valeur de la fréquence, il est nécessaire d’effectuer une FFT (Fast Fourier Transform) sur un certain nombre d’échantillons de la sortie analogique du capteur. On choisit 128 échantillons (limite maximale pour Arduino) et une fréquence d’échantillonnage de 1212Hz, nécessaire pour mesurer des fréquences jusqu’à 600Hz. Le calcul de cette FFT est effectué par une bibliothèque Arduino (arduinoFFT). Ce calcul à ensuite été testé en utilisant un générateur de fréquences sonores sur smartphone. En faisant varier le générateur entre 50Hz et 600Hz, toutes les mesures obtenues sont justes, avec une tolérance de ± 4Hz. Cette plage de fréquences mesurables est donc tout à fait en adéquation avec la plage de fréquence des sons des abeilles, comme indiqué dans Abeille & Cie N°165.
ADA1063
Transmission des données
Pour transmettre les données issues de la ruche à l’apiculteur, nous avons choisi d’utiliser le réseau Sigfox. C’est un réseau de communication basse puissance (868Mhz) qui présente beaucoup d’avantages.
Avantages :
Basse puissance (non perturbant pour les abeilles)
Basse consommation
Couverture réseau très importante en France
14 émissions par jour
Bidirectionnel (Émission / Réception)
Inconvénients :
Abonnement nécessaire (3€/an selon Sigfox).
Transmissions « lentes » en raison de la basse fréquence.
Plusieurs modèles de modules Sigfox existent. Pour notre application, nous avons choisi d’utiliser une carte programmable Arduino MKR FOX 1200 qui intègre un moule de communication Sigfox. Cette carte est particulièrement adaptée au développement de ce type d’application, en raison de sa faible consommation, de son encombrement réduit, et de son coût.
Arduino MKR FOX 1200
Un abonnement d’un an au service Sigfox est inclus avec la carte programmable, qui s’active automatiquement dès le troisième message transmis sur Sigfox. Il sera donc nécessaire de renouveler par la suite cet abonnement.
Arduino fourni une bibliothèque Sigfox, proposant des fonctions simples pour envoyer des messages sur le réseau Sigfox. Le programme final effectue donc les mesures de poids, de température, de taux d’humidité, calcul la fréquence du son produits par les abeilles, et transmet ces données actualisées toutes les 20 minutes.
Alimentation, autonomie du système et optimisation de la consommation
Dans le but de diminuer la consommation du système, et donc d’augmenter son autonomie, plusieurs solutions sont mises en œuvre. D’une part, la programmation sous Arduino permet de réduire la consommation de deux façons. Premièrement, la carte utilisée est capable d’être « endormie » lorsqu’elle n’est pas utilisée. De la même façon, l’amplificateur HX711 peut lui aussi être mis en veille lorsqu’il n’est pas utilisé, grâce à sa bibliothèque. Passer cet amplificateur en veille réduit la consommation de 20mA.
Ensuite, il est nécessaire d’utiliser un régulateur de tension linéaire 5V, pour abaisser la tension de la batterie 12V en 5V. Dans un premier temps, nous avons utilisé un régulateur LM1085, qui consommé 10mA à vide. Nous l’avons finalement remplacé par un régulateur LM78L05, dans un boitier TO-92. La consommation à vide mesurée de ce régulateur est de 3,2mA, ce qui a permit de réduire encore la consommation de 6,8mA.
Des mesures de consommation en fonctionnement typique du système ont été effectuées. Ce fonctionnement est décomposé en 3 phases : « Sleep » lorsque la carte Arduino et l’amplificateur HX711 sont en veille entre deux transmissions, « Mesure » lorsque la carte Arduino effectue les mesures des différents capteurs et calcule la fréquence et « Emission », lorsque les données sont émises sur Sigfox. Pour un cycle, la phase « Mesures » dure 5 secondes, et la phase Emission dure 10 secondes. La phase « Sleep » dure tout le reste du temps, soit : 20min – 5s – 10s = 1195s.
Les consommations dans ces différentes phases, sont les suivantes :
Sleep : 16 mA (pendant 1195s)
Mesure : 44 mA (pendant 5s)
Emission : 59 mA (pendant 10s)
Afin de réduire encore ces consommations, la led Power implantée sur la carte Arduino, et allumée en permanence, a été dessoudée. A l’aide du schéma électronique fourni par Arduino, nous avions calculé que cette led consommait environ 10mA. Ce calcul a été confirmé par de nouvelles mesures de consommation. Supprimer cette led permet d’abaisser la consommation de 9mA. On obtient donc les mesures suivantes :
Sleep : 7 mA (pendant 1195s)
Mesure : 35 mA (pendant 5s)
Emission : 50 mA (pendant 10s)
Sur une heure, cela correspond à une consommation moyenne de 7,5mA/h soit 0,2A/h par jour.
Concernant la batterie, nous avons utilisé une batterie au plomb, que nous avions en stock à l’IUT. C’est une batterie 12V, 9Ah. Avec cette batterie, l’autonomie maximale du système est donc de 45 jours. Néanmoins le principal inconvénient de cette batterie est son encombrement. Elle mesure 15,1cm x 10,2cm x 6,5cm, et pèse 2,7Kg.
Intégration des composants
Afin de connecter les différents composants électroniques entre eux, nous avons réalisé un circuit imprimé dans le laboratoire d’électronique de l’IUT. Ce circuit permet d’accueillir le régulateur de tension, la carte Arduino et l’amplificateur HX711. Des borniers y sont aussi implantés, permettant de faciliter la connexion de l’alimentation, des capteurs de force, le micro et le capteur de température et d’humidité. Ce circuit imprimé ainsi que la batterie, sont placés dans un coffret plastique d’électricien.
Boitier électronique
Les étudiants en Génie Mécanique et Productique, ont réalisé le support de ruche intégrant les quatre capteurs de force.
Support de pesée
Mise en œuvre d’une interface utilisateur
Une interface utilisateur a été mise en œuvre, afin de faciliter la lecture et le suivi des données. Elle a été réalisée en utilisant Node Red. Elle est composée de trois onglets :
Synoptique : Dernières mesures, heure de la dernière transmission, graphique de l’évolution du poids sur 24h, météo en temps réel à l’emplacement de la balance.
Graphiques : Graphiques de l’évolution du poids sur 24h et sur 7 jours, de la fréquence sur 24h, de la température et du taux d’humidité sur 24h.
Historique : Tableau regroupant les données des 1000 dernières transmissions.
Pour ce premier prototype, nous avons choisi d’héberger cette interface sur un Raspberry Pi, en réseau local. Cela signifie qu’il est uniquement possible d’accéder à l’interface lorsque l’on est connecté sur le même réseau que le Raspberry Pi. Nous avons réalisé ce choix afin de ne pas être dépendants d’un service d’hébergement de serveur Web. Il est possible d’associer plusieurs balances à la même interface.
État des lieux du projet
Un grand nombre des fonctions définies par le cahier des charges ont pu être mises en œuvre. Premièrement, l’acquisition des données, que ce soit les données issues de la ruche, ou bien les données météorologiques récupérées sur Internet les fonctions attendues ont été mise en place. Ensuite, la transmission des données est bien autonome en utilisant le réseau Sigfox, et est régulier toutes les 20min. Néanmoins, nous n’avons pas encore mis en marche une transmission de données événementielles. L’interface utilisateur n’est pas sur un site Web et ne nécessite donc pas de système de connexion par mot de passe. De plus, les données sont actualisées à chaque nouvelle transmission, et il est possible de suivre l’évolution chronologique des différentes grandeurs. L’autonomie du système est inférieure à celle fixée par le cahier des charges, et nous n’avons pas encore pu tenter d’implanter des cellules photovoltaïques. Pour finir, l’objectif de coût du projet est respecté : le coût de tous les composants (support exclu) permettant de réaliser cette balance est d’environ 220€.
Conclusion
Pour conclure, ce projet nous a permis tout d’abord de découvrir ou d’approfondir nos connaissances en matière d’apiculture, notamment l’importance de la température et du taux d’humidité interne à la ruche, ainsi que la « signification » des signaux sonores d’une colonie d’abeilles. Ces informations permettent à l’apiculteur, amateur ou professionnel, de mieux suivre et soigner ses colonies.
Les principales fonctions du cahier des charges ont été mises en œuvre. La balance est placée sous une ruche depuis maintenant deux semaines. Les mesures effectuées sont toujours cohérentes avec l’environnement et les conditions météorologiques. Néanmoins, il est nécessaire d’effectuer des tests sur une plus longue période.
De nombreuses améliorations peuvent tout de même déjà être envisagées, en particulier au sujet de l’autonomie du système, et de son encombrement. Parvenir à rendre accessible l’interface utilisateur depuis le Web est aussi un point à travailler.
La bière est une boisson alcoolisée millénaire obtenu par fermentation d’un moût végétal. Chaque pays revendique un savoir-faire unique.
Pour produire une bière, il faut 5 ingrédients :
De l’eau
Du malt
Du houblon
De la levure
Du sucre
Il y a ensuite plusieurs étapes de la production à respecter pour réussir sa bière :
Le concassage
L’empâtage
Le rinçage
L’houblonnage
Le refroidissement
La fermentation
L’embouteillage
Premièrement, dans la fabrication d’une bière, la température et le temps de cuissons sont très importants et à respecter. Ensuite, selon la recette de bière souhaitée, nous ajoutons différents ingrédients (houblon et malt), cela déterminera le goût, le degré d’alcool et la couleur de la bière.
De nos jours, de nombreux modèles de micro-brasseries pour la création de différentes bières sont disponibles sur le marché. Le prix de ces systèmes est assez élevé et ces modèles sont principalement destinés à des professionnels. Les étudiants des années précédentes ont débuté la réalisation d’une micro-brasserie à l’IUT. Nous avons décidé de reprendre leurs travaux en intégrant des améliorations.
Analyse fonctionnelle
Un projet de bière avait déjà été fait initialement en 2019. Nous avons donc pour objectif de partir de leur maquette de projet et de reprogrammer la brasserie. Ainsi que d’automatiser le rinçage afin de simplifier cette étape.
Nous avons pas eu assez de temps pour réaliser la partie mécanique donc ni électrique et programmation. Le cahier des charges est de faire une bière blonde tout en respectant des paliers de températures. Nous avons alors régulé la température avec un automate Siemens S7-1200.
Le diagramme bête à cornes :
Paliers de températures à respecter :
Ingrédient Bière Blonde :
Réalisation du projet
Armoire Électrique :
L’armoire était déjà câblée. Seul l’automate était à remplacer par un nouveau. Il fallait donc optimiser les branchements, sertir des fils, et rendre l’armoire fonctionnelle pour le projet.
Les contacteurs utilisés ont les fonctions suivantes :
KVAR = Mise sous tension variateur
KA0 = Relais de maintien du disjoncteur de la partie puissance
KA2 = Fin de course bas
KA1 = Fin de course haut
KAdef = Défauts
KADE = Descendre la pâle
KDET = Chauffage
KAMO = Monter la pâle
Câblage de l’automate :
Les étapes que nous avons suivi :
Placer le nouvel automate SIMENS S7-1200
Câbler selon l’ancien schéma
Noter les modifications effectuées
Programmation de l’automate :
Nous avons repris le Grafcet du mode de marche (GMA) déjà réalisé par les anciens élèves.
Par la suite, nous avons fait un Grafcet qui décrit les étapes du programme:
Pour respecter les différents paliers de température, nous avons utilisé des régulateurs PID (Proportionnel Intégral Dérivé)
Paliers de température :
Création de l’IHM :
L’IHM à trois vues principales ainsi que quatre vues des recettes existantes:
Blonde
Blanche
Rousse
Brune
Exemple d’une vue de l’IHM:
La page d’accueil possède un switch auto/manuel ainsi qu’un bouton de départ/arrêt cycle. Nous avons aussi une page de gestion avec des boutons qui valident les étapes que le brasseur doit effectuer (ex: grain, rinçage). Ainsi que des voyants/afficheurs sur la valeur de la température par rapport aux différents paliers. La dernière page est le regroupement des recettes des 4 bières proposées.
Réalisation de la bière
1. Le concassage
Concasser les grains permet de mieux faire infuser le malt dans l’eau durant le brassage.
Pour notre bière blonde, nous avons utilisé :
2,7kg de malt Pale
180g de malt Vienna
180g de flocon d’avoine
2. L’empâtage
Cela consiste à mélanger et faire chauffer les grains de malt concassés à de l’eau, afin d’obtenir une pâte appelée la « drêche » et de faire chauffer le tout.
3. Le rinçage
La drêche contient des protéines dénaturées et des polyphénols qui sont responsables du trouble permanent et d’une mauvaise stabilité dans le temps de la bière. La quantité d’eau de rinçage doit être calculée au préalable et adaptée aux pertes liées à l’évaporation. Plus la drêche va être lavée, plus la composition du moût récupéré (sucres) sera diluée.
4. L’ houblonnage
Le houblonnage, également appelé aromatisation, est l’étape de la fabrication de la bière consistant à faire bouillir du houblon dans le moût afin de donner du goût à la bière. Les Houblons utilisés:
55g de houblon Cascade
13g de houblon Mosaïc
Recette: Faire cuire jusqu’à ébullition pendant 1h l’houblon Cascade puis 10 min avant la fin de l’heure, ajout de l’houblon Mosaïc.
5. Le refroidissement
Le refroidissement est réalisé en faisant passer le moût dans un serpentin de cuivre muni d’un système de refroidissement à eau. Instrument indispensable afin de descendre rapidement la température du moût après ébullition. On utilise souvent un échangeur à plaques ou bien un serpentin refroidisseur.
6. La fermentation
Cette étape consiste à ensemencer le moût avec une certaine quantité de levures afin que ces levures transforment les sucres présents en alcool et en CO2 (GAZ de fermentation). Puis laisser la cuve à température ambiante durant 3 semaines.
7. L’embouteillage
La dernière étape du brassage : l’embouteillage. La mise en bouteille est l’étape ultime, celle qui termine votre brassage et qui va permettre à votre bière d’évoluer en ajoutant du sucre. Ensuite, il va falloir attendre 3 semaines pour enfin pouvoir la déguster.
Conclusion
Ce projet nous a permis de mettre en pratique les notions de supervisions et d’automatismes que nous avions reçu durant l’année. Et nous à permis de mieux programmer des régulateurs PID, de nous familiariser avec des schémas électriques ainsi que d’apprendre à manager notre temps pour respecter la durée de fermentation de la bière.
Ce projet à été assez lucratif pour nous. Nous avons pu découvrir l’univers complexe de la fabrication de bière ainsi que d’avoir la chance de goûter notre propre bière.
Comme solution futur nous proposons :
Une automatisation de la phase de filtrage
Une intégration du capteur de température à la cuve
L’intégration d’un afficheur plus performant
Réaliser un système de refroidissement automatique
Améliorer le projet du banc de vision déjà commencé, afin de le rendre plus ergonomique, facile d’utilisation et plus présentable lors de journées des carrières et journées portes ouvertes. Le Banc de vision s’inscrit dans le savoir-faire d’un apprenant en DUT Génie électrique et informatique industrielle. C’est une maquette miniaturisée d’une ligne de supervision, pour le traitement de matières d’œuvre, défilant sur le convoyeur.
Banc de vision & convoyeur
1. Étude du projet
Besoin du projet et objectifs : Pour ce projet il fallait modifier la partie hardware et software du banc ainsi que la structure même du banc.
Pour la partie hardware, nous voulions changer le câblage et la disposition de ce dernier. Pour la partie software, nous voulions garder le corps principal du programme et ne modifier que la partie qui concerne l’avancement du tapis. Enfin pour l’esthétique de la structure, il fallait la rendre plus portable et beaucoup plus sympathique à présenter.
2. Diagrammes Fonctionnels
Pour cette étude, nous avons réalisé deux diagrammes : Une bête à corne ainsi qu’un diagramme pieuvre.
3. Modification de la structure
Pour la modification de la structure, nous avons repris une ancienne maquette que nous avons entièrement refait. On a utilisé l’IUT Lab pour « reconstruire » notre structure.
Nous avons découper les barres en aluminium afin de les adapter à une largeur convenable pour notre banc, nous avons également découper les planches, recréer une vraie structure capable de pouvoir accueillir notre tapis roulant.
Pour ce qui est du câblage, nous sommes rester sur quelque chose de relativement simple, pour la partie commande, nous avons le driver qui va commander le moteur pas à pas pour l’avance du convoyeur, puis l’arduino qui va permettre de gérer ce driver, les leds et caméras.
Nous avons ensuite créer un synoptique pour nous aider dans le câblage, relativement simple comme il se compose de deux alimentations, un driver, un moteur pas à pas, un arduino, une caméra et deux bandeaux de leds.
Pour le câblage, nous avions anciennement tout regrouper sur une platine carrée placée sous la structure. Nous avons gardé la même approche sauf que nous avons adapter la platine pour notre structure. On est passé d’un carré à un rectangle et on a aussi enlevé quelques composants du câblage qui ne nous servaient plus.
Ancienne platine de câblage
Nouvelle platine de câblage
Comme on peut le voir ci dessus, nous avons grandement réduis ce câblage malgré le fait qu’il manque quelques éléments.
4. Modification du Programme
Pour ce qui est du programme, nous voulions garder le même étant donné qu’il fonctionne correctement. Seulement nous voulons changer la partie commande du moteur. Au lieu de gérer le moteur via des boucles on veut gérer ce dernier via les timers de l’arduino. C’est à dire à l’aide d’interruptions.
Malheureusement, ce programme ne suffisait pas et ne marchait pas pour gérer le moteur à l’aide d’interruptions.
Nous souhaitons dans un premier temps remercier l’IUT de Mulhouse, pour nous avoir permis de réaliser ce projet.
Nous remercions également tous nos professeurs pour les connaissances qu’ils nous ont transmis durant ces deux années de DUT GEII et GMP, M.Steger, M.Cudel, M.Tessier et M.Stoeffel pour l’accompagnement dont nous avons bénéficié tout au long du projet.