IMA4 2017/2018 P42

De Wiki de Projets IMA
Révision datée du 15 janvier 2018 à 18:02 par Jsenella (discussion | contributions) (Choix matériel)


Présentation générale

Le but de notre projet est de recycler une imprimante 3D de façon à ce qu'elle assemble des Lego selon un modèle dessiné par l'utilisateur sur une application web.

Description

Le projet sera composé d'une imprimante 3D associée à un réservoir. Il fonctionnera avec une application web nous permettant de dessiné le modèle que l'on désire.

  • Imprimante 3D

Il nous faudra modifier la tête d'impression de l'imprimante pour qu'elle puisse récupérer les pièces de Lego et les déposer sur la plaque. Il nous faudra étudier le Gcode de l'imprimante et voir si on peut l'adapter à notre application.

  • Application web

L'application web sera séparée en deux parties:

    • Une partie permettant à l'utilisateur de dessiner le modèle qu'il désire réaliser
    • Une partie permettant à l'utilisateur de renseigner les pièces présentes dans le réservoir (position, couleur, quantité...)

Objectifs

On peut décomposer le projet en plusieurs partie:

Partie mécanique

  • Adaptation d'une base d'imprimante 3D
  • Réalisation d'un réservoir pour les pièces de Lego

Partie électronique

  • Utilisation d'un Arduino pour gérer l'imprimante 3D

Partie informatique

  • Réalisation d'une application web
  • Etude et possible modification du gcode de l'imprimante 3D
  • Réalisation d'une application pour gérer le remplissage du réservoir

Analyse du projet

Positionnement par rapport à l'existant

Notre projet possède assez peu de concurrents, la majorité d'entre eux étant des réalisations personnelles trouvables sur YouTube. Pour l'élaboration de ce projet nous nous sommes inspiré du bricasso.

Analyse du premier concurrent

Une projet similaire au notre s'appelle Bricasso [1]. Il s'agit d'un projet réalisé en Lego Mindstorm EV3.

Cette imprimante scanne un dessin papier et l'imprime en LEGO en plaçant des pièces de couleurs correspondantes. Il possèdes beaucoup de limitations dont notre projet s’affranchira : impression uniquement en 2D, un seul type de pièces, absence de connectivité.

Cependant, ce projet contient de très bonnes idées dont nous allons nous inspirer, notamment pour la tête d’impression.

Analyse du second concurrent

Au niveau de l’application WEB, notre principal concurrent serait le logiciel Lego Digital Designer qui permet de créer en 3D des objets LEGO et de les exporter sous différents formats. Ce logiciel est très complet, cependant il ne contient pas toutes les fonctionnalités dont nous aurons besoin pour notre projet. Il permet d’utiliser toutes les pièces LEGO existantes alors que seules certaines seront utilisables dans notre projet. À terme, nous voulons essayer de mettre en place une compatibilité entre notre application et le logiciel, mais les formats d’export sont très mal documentés et ce sera difficile.

Scénario d'usage du produit ou du concept envisagé

Justine, jeune elfe d’IMA4, souhaite construire des objets en LEGO pour les assembler en un robot. Elle souhaite concevoir ses LEGO en cours de réseau au lieu de travailler, mais ne dispose pas du matériel nécessaire. Une fois rentrée chez elle le soir, elle n’a pas le temps de s’en occuper car elle doit travailler son espagnol. Depuis n’importe quel ordinateur, Justine peut construire son modèle et l’enregistrer. Une fois rentrée chez elle, elle branche son imprimante LEGO et son objet se construit sans aucune intervention de sa part. Son imprimante ira chercher les pièces désirées (spécifiques à son modèle) dans le réservoir et va ensuite aller les placer sur la plaque LEGO servant de support. Le réservoir possédant 5 rails différents il est possible d'utiliser des pièces de 5 couleurs différentes. Le choix des pièces étant limité par la taille du réservoir on utilisera donc des pièces carrées LEGO 1x1.

Réponse aux questions difficiles

Comment démarrer l'imprimante à distance ?

L'impression pourra être déclenchée depuis l'application Web lorsque l'imprimante est allumée et connectée. Le processus d'impression sera divisé en plusieurs parties :

Avant ces étapes, un message est affiché à l'utilisateur pour lui rappeler de bien positionner la plaque d'impression. L'imprimante ne vérifie pas que la plaque est bien positionnée avant de lancer le processus. Si l'utilisateur valide cette étape, la processus continue.

- Connexion à l'imprimante : L'application tente de se connecter à l'Arduino de l'imprimante via Wifi. L'adresse IP de l'Arduino devra être renseignée par l'utilisateur mais pourra être enregistrée en préférences. Si la connexion échoue, un message d'erreur est affiché à l'utilisateur. Si la connexion réussit, l'impression se lance.

- Envoi des données : après la première connexion, l'application envoie les données du projet à l'Arduino.

- Impression : l'imprimante positionne la tête d'impression et lance le processus.

Comment sera calibrée la plaque d’impression ?

La plaque d'impression utilisée sera fournie avec l'imprimante. Il s'agira d'une plaque LEGO classique, ses dimensions seront donc parfaitement connues. Si l'utilisateur décide de créer un projet de dimensions inférieures dans l'application web, le coin de la plaque sera utilisé.

Étant donné que la plaque sur laquelle sera "imprimé" l'objet fait partie de l'objet il nous faut trouver un moyen pour qu'elle soit toujours à la bonne position. Nous avons pensé à réaliser un coin contre lequel un des coin de la plaque sera bloqué (comme sur un massicot pour bloquer les feuilles de papiers). L'utilisateur devra s'assurer que la plaque est dans le bon sens et qu'elle repose bien contre le coin.

Comment la plaque va se fixer sur le sol ?

Il nous faut un système qui permette de récupérer et d'installer la plaque facilement tout en s'assurant qu'elle reste en place lors de l'utilisation de l'imprimante. On pourra donc utiliser un système d'aimants en en mettant à chaque coin et au milieu de la plaque pour qu'elle reste fixée durant l'utilisation et que l'utilisateur puisse l'enlever une fois le projet terminé.

Préparation du projet

Cahier des charges

Choix techniques : matériel et logiciel

Choix matériel

Réutilisation d'une imprimante 3D Prusa i3 [2].

Réservoir
  • Réalisation d'un "toboggan" en polystyrène
  • Une face en plexiglas pour vérifier le remplissage
Tête d'impression
  • Dans un premier temps elle sera réalisée en Lego pour la modularité
  • La version finale pourra être réalisée en impression 3D
Plaque d'impression
  • La plaque d'impression sera une plaque Lego
  • Elle sera maintenu avec des aimants
  • Le coin de calibrage pourra être réalisé en plexiglas ou en bois
Informatique
  • Arduino Mega pour contrôler l'imprimante
  • Raspberry Pi3 pour le serveur
  • ESP8266 pour la communication entre le serveur et l'Arduino

Choix logiciel

Backend

Node.js : API RESTful
PostgreSQL : Base de données projets et utilisateurs

Frontend

HTML5/CSS3/JS
Utilisation de la balise canvas pour la conception du schéma.

Arduino

(provisoire) Utilisation du logiciel Marlin pour le contrôle de l'imprimante [3]

Réutilisation de la base du projet [4]

Base de l'imprimante [5]

Liste des tâches à effectuer

Calendrier prévisionnel

Réalisation du Projet

Feuille d'heures

Tâche Prélude Heures S1 Heures S2 Heures S3 Heures S4 Heures S5 Heures S6 Heures S7 Heures S8 Heures S9 Heures S10 Total
Analyse du projet 0


Prologue

Semaine 1

Semaine 2

Documents Rendus