Skip to main content

Remplisseur automatique de bouteille

UE 803 - Optimisation et ContrôContrôle des ProcédéProcédés - Master 2 - IngéIngénierie Chimique

 

Noms et PréPrénoms :

  • Nicolas Laloy (nicolas.laloy.1@etu.sorbonne-universite.fr)
  • Mohamed Hachcham (mohamed.hachcham@etu.sorbonne-universite.fr)
  • Faysal Bellahouel (faysal.bellahouel@etu.sorbonne-universite.fr)
  • Jakub Gontarz (jakub.gontarz@etu.sorbonne-universite.fr)
  • Muhammad Aminibayat (Mohammad.aminibayat@etu.sorbonne-universite.fr)

Cursus : Master de Chimie : SpécialitéSpécialité IngéIngénierie Chimique

Date de but : 01/09/2023

Date de fin : 01/02/2024

Introduction :

Ce projet a pour but de nous familiariser avec des notions et des ééquipements tournétournés vers l'automatisation et la gulation.

Objectif :

L'objectif est de aliser un petit systèsystème qu'est le remplisseur automatique de bouteille. Il s'agit donc remplir plusieurs bouteilles de couleurs diffédifférentes avec le liquide associéassocié àà la couleur (par exemple : jus d'orange -> bouteille orange). 

MatéMatériaux / Outils / Machines (le plus détaillédétaillé possible)

  • 2 pompes
  • 1 carte arduino et son ble 
  • X1.5 m de tuyaux
  • X12 fils de connexion
  • 21 relaisrelai pour l'arduino
  • 1 adaptateur
  • 1 alimentation
  • 1 tapis roulant comprenant un moteur àà courant continu
  • 1 support en bois et aluminium
  • 1 tecteur IR de position et le cepteur associéassocié

Construction (fichiers, photos, code, texte, paramèparamètres d’d’usinage etc.)

Journal de bord (éétapes datédatées du projet)

  • 06/11 - Choix du projet et conception :

On a porter notre flexion sur 2 projet type : compresseur de chet automatique et un remplisseur de bouteilles automatique

Figure 1: SchéSchéma de compresseur automatique


Figure 2 : SchéSchéma de remplisseur automatique 

Nous avons battu de diffédifférents schéschémas de conception pour les 2 projets.
AprèAprès avoir demandédemandé l’l’avis àà notre référéférent, il nous àà étéété conseilléconseillé de porter notre attention sur le remplisseur automatique.

Partie journal de bord

 

  • 13/11 - Listage du matématériel cessaire au deux projets / Audit de l’l’inventaire au FabLab : On a envoyéenvoyé une premièpremière liste pour le matématériel cessaire au remplisseur de bouteille automatique. A la demande de notre référéférent, nous avons fait l’l’inventaire du matématériel disponible au FabLab pour ensuite l’l’enlever de la liste du matématériel cessaire.

Article

Fournisseur

RéféRéférence

Prix Unitaire

QuantitéQuantité 

Montant HT

A commander

Pompes àà bit fixe

Lextronic

WPM447

17.9€9€

2

35.8€8€

Oui

ModuleCarte relaisshield 5V

Lextronic

OPEN406OPEN207

4.80€7.41€

21

9.60€7.41€

NonOui

Alimentation 12V

Lextronic²Lextronic²

LEX-ALIM14

10€10€

1

10€10€

Oui

Capteur IR de proximitéproximité

Fablab

 

/

/

1

/

Non

Support en aluminium et bois

UE 803

/

/

1

/

Non

Tapis roulant

UE 803

/

/

1

/

Non

bles

UE 803

/

/

15 Environ

/

Non

Gobelets

CROUS

/

1€1€

2

2€2€

Non

Adaptateur alimentation

Fablab

/

/

1

/

Non

Vis et boulons

Fablab

/

/

10

/

Non

Breadboard

Fablab

/

/

1

/

Non

Tuyaux en caoutchouc

UE 803

/

/

1 tre

/

Non

 

  • 20/11 - RécupéRécupération du matématériel demandédemandé : Nous avons récupérérécupéré une partie du matématériel demandédemandé aprèaprès la ception d’d’un mail de Pr. Pulpytel demandant aux diffédifférents groupes de venir récupérécupérer les diffédifférents composants déjàdéjà disponibles. Nous avons aussi décidédécidé de remplacer la plaque tournante de la remplisseuse par un rouleau automatique disponible dans le stock de matématériel. Nous somme ensuite aller au FabLab pour commencer àà réfléréfléchir àà la conception de notre projet avec les élééléments maintenant préprésent. Nous avons commencer par tester tout les composants cessitant une alimentation àà l'aide d'une batterie de 12V. Puis dans un premier temps pour pouvoir connecter les relaisshields au moteurs des pompes et aux moteurs du tapis nous avons nous initiéinitié àà la soudure avec l'aide du personnel du FabLab.

    Photo soudure.jpg

  • 27/11 - Le tapis roulant éétant trop glissant nous avons apportéapporté des modifications pour provoquer plus de frottement entre le tapis et le rouleau. Faute de colorimècolorimètre il nous éétait impossible de mettre en place une gulation de la couleur du liquide en fonction de la couleur du gobelet.

    Photo tapis.jpg


    Nous avons branchébranché les pompes et le moteur du tapis au relaisrelai le tout liélié àà la carte Arduino via une breadboard.
  • 20/11/12 - Le support en aluminium àà étéété récupérer.récupéré. Une des pompes fectueuse àà étéété échangééchangé. L'ensemble de nos composantcomposants demande une alimentation supésupérieur àà 9V ( pompes + moteur ). Nous avons donc choisi d'utiliséutilisé une alimentation de 12V branchébranché àà une prise de courant. anmoins afin d'ééviter de griller les circuits de la carte Arduino et par problèproblème de compatibilitécompatibilité de la sortie de l'alimentation nous avons utiliséutilisé un adaptateur :pour relier l'alimentation directement à la breadboard.

    Photo adaptateur.jpg


    pour relier l'alimentation directement à la breadboard.
  • 22/12 - Nous avons fixéfixé les pompes àà notre support en coupant celui-ci àà l'aide d'une perceuse avec un emboue scie cloche.cloche, et en serrant un fil en Aluminium, accroché au support par de petit trous, sur les deux pompes .
  • 11/01 - Nous avons fixéfixé la carte Arduino, la breadboard, le Shield ainsi que l'adaptateur de l'alimentation au support àà l'aide de perceuse préprésente au Fablab :

    Photo support.jpg


    Afin d'amener le tuyau de liquide au gobelet nous avons ajoutéajouté un support àà l'aide des chutes de bois préprésents au Fablab. Le tapis roulant éétant trop volumineux nous le fixerons pas au support :

    Photo final.jpg


    Il ne nous reste plus que le code Arduino àà fournir.
  • Nous avons fait quelques tests en utilisant ChatGPT pour tester le fonctionnement de chaque composant seul.

  • Après nous être assuré du bon fonctionnement de tout nos composants et après verification des liaisons entre la breadboard, l'Arduino et chaque composant (le terme composant étant relatif aux pompes, detecteur-recepteur IR et moteur faisant tourner le rouleau)

  • Un test pour verifier le debit volumique des pompes a été fait en utilisant une éprouvette graduée emprunté au FabLab Chimie et un chronomètre (sur téléphone). Un temps de 7 secondes à été jugé suffisant pour que le débit de la pompe puisse remplir un gobelet. 

  • Quelques tests du système à partir de codes génerés par ChatGPT ou trouvés sur des forums sur le site d'Arduino (ainsi que d'autres sites internet) ont été effectués, sans succès. Cet échec étant dû au fait que les codes implantés au système ne réussissaient pas a transmettre le signal du detecteur-recepteur IR et à activer la pompe pendant 7secondes tout en arretant le moteur pour le rouleau.

    • 12/01 - Nous avons commencéréussi àà configurer notre capteur IR àà l'aide du site suivant : image.png
      https://mataucarre.fr/index.php/2017/05/24/capteur-de-proximite-infra-rouge-fc-51-arduino/
      Notre code est donc le suivant :

      int led = 8;
      int capteur = 3;
      int detection;
      const int moteurPin = 9;
      const int pompePin = 5;
      unsigned long activationTime = 0;
      const unsigned long dureeActivation = 7000;  // Temps d'activation de la pompe en millisecondes

      void setup() {
        pinMode(led, OUTPUT);
        pinMode(capteur, INPUT);
        pinMode(moteurPin, OUTPUT);
        pinMode(pompePin, OUTPUT);
      }

      void loop() {
        // Lecture de la valeur de l'interface OUT du capteur
        detection = digitalRead(capteur);

      // Si on tecte une personne, on allume la LED et active la pompe
        if (detection == 0) {
          digitalWrite(led, HIGH);
          digitalWrite(moteurPin, LOW);
          delay(1000);
          digitalWrite(pompePin, HIGH);
          delay(7000);
          digitalWrite(moteurPin, HIGH);
          digitalWrite(pompePin, LOW);
          delay(2000);
          // Enregistre le temps d'activation de la pompe
          activationTime = millis();
        } else {
          // Si on ne tecte personne et que la pompe est encore active,
          // on ééteint la LED et la pompe aprèaprès la durédurée d'activation spécifiéspécifiée
          if (millis() - activationTime < dureeActivation) {
            digitalWrite(led, LOW);
            digitalWrite(moteurPin, HIGH);
            digitalWrite(pompePin, LOW);
      }
      }
      }


      Nous avons fixéfixé le capteur IR àavec une vis sur un bout de bois, ce bout de bois étant lui même collé à la courroie de tapis.tapis

      Nous avons testé notre pompe avec deà l'eau pour connaître le temps de remplissageaide d'unune gobeletcolle =trouvée 7au secondes.FabLab.

 

Partie Bibliographie/Ressources : 

-Nous nous sommes essentiellement basébasé sur le projet présentéprésenté sur le site ci-dessous afin d'avoir une idéidée globale : https://www.robotique.tech/tutoriel/systeme-de-remplissage-des-bouteilles-controle-par-arduino/ 

-Nous nous sommes aussi aidéaidé de diffédifférentes vidévidéos YouTube ci-dessous pour avoir une idéidée plus préprécise concernant les branchement, le codage et le matématériel cessaire :

https://www.youtube.com/watch?v=26YH8Mtsxzg&t=1004s 

https://www.youtube.com/watch?v=s5Z1mjQnKWY&t=437s 

-N'ayant pas forcéforcément fait d'éétude de codage, nous nous somme aidéaidé de diffédifférents sites:

https://www.robotique.tech/tutoriel/commander-une-pompe-a-eau-par-la-carte-arduino/ Pour le contrôcontrôles des pompes.

https://www.arduino.cc/reference/fr/ Pour connaîconnaître les commandes de référéférences d'Arduino.

https://chat.openai.com/ L'IA ChatGPT afin de corriger nos erreurs de codes
https://mataucarre.fr/index.php/2017/05/24/capteur-de-proximite-infra-rouge-fc-51-arduino/ Aide pour le codage du capteur IR