Impression 3D
*Ces instructions sont données pour le [RepRap Prusa i3](http://hackens.org/projets/reprapi3).*
Liste de trucs à imprimer : http://www.eleves.ens.fr/pads/p/hackEns_AImprimer. Toutes nos réalisations sont visibles sur notre [compte Thingiverse](http://www.thingiverse.com/Hackens/about).
Démarrage de l'imprimante
Avant toute chose, il est bien entendu nécessaire de démarrer l'imprimante.
### 1. Allumer l'alimentation
L'imprimante est alimentée par une ATX (alimentation d'ordinateur), sur laquelle se trouve tout simplement un interrupteur.
Il faut tirer assez de puissance sur l'alim, sur le rail 5V, pour que celle-ci tourne correctement, d'où la présence d'une LED.
### 2. Démarrer Pronterface
La communication entre l'imprimante et l'ordinateur est assurée par le logiciel [Pronterface](???) (une interface graphique pour [Printrun](???)). La suite du démarrage de l'imprimante se fait donc à l'aide de cette interface.
### 3. Connecter à l'imprimante
La première chose à faire est de connecter le logiciel à l'imprimante. Normalement, le câble USB entre l'imprimante et l'ordinateur reste toujours branché, mais on ne sait jamais. Il est ensuite nécessaire d'indiquer sur quel port est branchée l'imprimante à l'aide de la liste déroulante, comme le montre cette capture d'écran :
![Liste des ports dans Pronterface](???)
Les noms des ports sont généralement `/dev/ttyUSB0`, `/dev/ttyUSB1` ou bien `/dev/ttyACM0`, `/dev/ttyACM1`, etc. Si un seul appareil USB est branché à l'ordinateur, il ne devrait y avoir qu'un seul port de proposé par l'interface.
### 4. Allumer le plateau et la buse d'impression
Une fois la communication entre l'imprimante et le logiciel établie, il est temps de démarrer les différentes composantes de l'imprimante.
Il faut d'une part faire chauffer le plateau afin d'éviter que le modèle en cours d'impression ne colle trop au support et d'autre part allumer la buse d'impression dont le rôle est de faire fondre le matériau d'impression pour en faire un filament fin.
Le réglage des températures se fait *via* les boutons suivants :
![Réglage des températures dans Pronterface](???)
Le choix de la température est validé à l'appui sur le bouton `???`, qui devient alors orangé.
La témpérature du plateau doit être d'au moins 110°C.
La température de la buse doit être très précise (à quelques degrés près) et dépend du matériau d'impression. Pour de l'ABS, la température doit être de 230°C.
La température visée et mesurée du plateau et de la buse peuvent être visualisées à l'aide du graphe suivant :
![Graphe des températures dans Pronterface](???)
### 5. Vérifier la vitesse d'impression
La vitesse d'impression peut être modifiée globalement, et il se peut que pour de précédents tests elle ait été modifiée. Vérifier qu'elle est bien de 100%.
Le paramètre `Speed` doit être situé entre 50 et 100. Il correspond à ???
![Réglage de la vitesse dans Pronterface](???)
Processus d'impression
### 1. Modéliser la pièce et l'exporter en STL
Pour imprimer un objet, il en faut bien sûr un modèle 3D. Nous utilisons généralement [Blender](???) ou [Solid Works](???), mais tout logiciel de modélisation exportant au format STL peut faire l'affaire. En fait, même si l'export direct en STL n'est pas possible, Blender peut servir d'intermédiaire dès lors qu'il peut lire ce format.
Les modèles peuvent également être trouvés sur Internet, et en particulier sur [Thingiverse](???) qui se veut être un dépôt de modèles 3D pour l'impression.
Il est recommandé de mettre sur le compte Thingiverse de hackEns les modèles fait dans le cadre de nos projets !
### 2. Ouvrir le fichier STL dans Slic3r
Le format STL est requis car c'est le format lu par Slic3r. Slic3r est un logiciel dont le rôle est de transformer l'objet 3D en une suite d'instructions bas niveau pour l'imprimante (du style « bouge ce moteur de 3 pas » ou « extrude 0.1 mm »).
Il prend donc en compte dans cette conversion un certain nombre de paramètres propres à l'imprimante et au matériau d'impression, ainsi qur des options sur la qualité/vitesse d'impression.
Pour ouvrir le fichier STL dans Slic3r, cliquer sur `Add` :
![Ajouter un objet dans Slic3r](???)
### 3. Vérifier qu'il n'y a pas d'erreurs
La représentation usuelle des modèles 3D, qui est également celle des fichiers STL, est sous forme de multiples triangles et décrit donc des surfaces. Pour qu'un objet soit imprimable, il faut que cette surface délimite en fait un volume et Slic3r fait donc un certain nombre de vérification au chargement de l'objet.
Il faut en particulier vérifier qu'il indique dans le champ de statut `Manifold: Yes` et corriger sur le modèle 3D (avec Blender par exemple) les éventuelles erreurs signalées.
![Statut de l'objet chargé dans Slic3r](???)
### 4. Orienter la pièce de sorte qu'elle soit imprimable
Une autre condition pour qu'une pièce soit imprimable est qu'elle ne comporte pas de *pont* trop important, ni de pièce qui vole, etc.
Ces problèmes peuvent parfois être résolus simplement en tournant la pièce autrement. Pour cela, après avoir sélectionné la pièce à l'aide du clic gauche, utiliser les transformations disponibles dans le menu `Objet`.
![Menu Objet dans Slic3r](???)
Il est également possible d'effectuer des opérations simples comme duppliquer une pièce, la déplacer, charger d'autres pièces à ses côtés pour en imprimer plusieurs d'un coup.
![Boutons Add, More, Fewer dans Slic3r](???)
S'il n'est vraiment pas possible de placer la pièce de sorte à éviter les ponts, il faut l'imprimer en plusieurs parties.
### 5. Vérifier que l'on ne dépasse pas des limites de la zone d'impression.
L'onglet Vue 2D permet de vérifier qu'aucun objet ne sort de la zone d'impression. La zone d'impression définie dans Slic3r ne correspond pas aux bords réels du plateau mais d'une zone virtuelle. Il n'est donc pas nécessaire de conserver une marge même s'il n'est vraiment pas possible de dépasser ces limites.
![Vue2D et limites de la zone d'impression dans Slic3r](???)
### 6. Choisir les bon réglages d'impressions
Comme signalé précédemment, Slic3r doit prendre en compte les options d'impressions, le modèle d'imprimante et le type de matériau utilisés.
Ces réglages se font dans la fenêtre `Settings`.
![Fenêtre de paramètres dans Slic3r](???)
À chaque onglet correspond une catégorie de réglage dans laquelle il est possible d'utiliser des pré-réglages.
Les pré-réglages disponibles sont `Slow` et `Fast`. La seule différence est que le second est plus faillible. L'idée est donc de tester avec `Fast`, et si ça ne marche pas, utiliser `Slow`.
Il est également possible de modifier les réglages plus avancés. Pour cela, voir la doc de [Slic3r](???), ou les info-bulles disponibles au survol des différents champs.
Lorsque vous voulez enregistrer de nouveaux pré-réglages pour un projet particulier, enregistrez-le avec le nom du projet et le paramètre principal modifié (ex : « Bras robotique - infill 10% »).
### 7. Exporter en gcode
Une fois toutes les pièces correctement placées et les bons réglages sélectionnés, la pièce peut être exportée en gcode, le code bas niveau pour l'imprimante.
Utiliser pour cela le bouton `Exporter`.
![Bouton d'export dans Slic3r](???)
Bien attendre que la mention « gcode file exported to /foo/bar » apparaissent dans la barre de statut afin d'éviter d'utiliser ensuite une version précédente du fichier.
![Statut d'export en gcode dans Slic3r](???)
Les instructions contenues dans le gcode peuvent être visualisées graphiquement sans l'onglet `Preview` pour vérifier leur cohérence.
![Onglet de prévisualisation dans Slic3r](???)
### 8. Ouvrir le fichier dans Pronterface
Le gcode est ensuite chargé dans Pronterface qui, si les consignes de démarrage de l'imprimante ont bien été suivies, devrait déjà être lancé.
À l'import, la trajectoire planifiée de la buse apparaît dans la fenêtre 3D et une estimation du temps d'impression est annoncée dans la console.
![Fenêtre 3D de Pronterface](???)
![Console de Pronterface annonçant l'ETA](???)
### 9. Tester l'extrusion du filament
Avant de lancer une impression, il est important de vérifier que l'extrusion (la création du filament fin d'impression) se passe correctement.
Une fois la bonne température atteinte pour la buse, et après avoir vérifié le paramètre `Length`, cliquer sur `Extrusion`. Si la température est vraiment trop faible, le logiciel refuse de lancer l'extrusion car celle-ci pourrait endomager la buse.
Le paramètre `Length` détermine le nombre de milimètres du filament d'origine (avant d'entrer dans la buse) qui est censé être consommé lors d'un appui sur le bouton d'extrusion. Par exemple, 10 pour les tests.
Essayer d'extruder jusqu'à ce que ça fonctionne. Il faut généralement essayer plusieurs fois car le filament a pu être remplacé ou relevé à la fin de l'impression précédente.
### 10. Aligner verticalement la tête d'impression
Bien nettoyer la tête d'impression : retirer à la pince les chutes de plastique en faisant attention à ne pas se brûler.
L'alignement vertical n'est pas (encore ?) automatisé. Il est donc nécessaire de le faire à la main, à l'aide des boutons de l'interface.
![Boutons de déplacement vertical de la buse dans Pronterface](???)
Il faut pouvoir passer une feuille de papier entre la buse et le plateau, mais pas plus.
### 11. Éventuellement démarrer le ventillateur de la tête d'impression surtout pour les petites pièces
### 12. Lancer l'impression
![Boutons d'impression dans Pronterface](???)
Matériaux
todo
La liste des plastiques disponibles est [ici](http://www.eleves.ens.fr/pads/p/hackEns_filaments).
Parler des différents plastiques :
* ABS
* PLA : moins toxique, plus cassant
## Données en vrac
* Ne jamais dépasser 240°C avec la J-Head. Cela endommagerait le PEEK et la détruirait. * Fan de la nozzle : M106 SXXX pour allumer, M107 pour éteindre, cf bouton dans Printrun * Endstop X, Y et Z fonctionnent. * On printe de l'ABS avec la J-Head à 230°C, avec un petit ventilo. Bed >110°, on printe sur du verre nu avec de la laque (et ça marche top !). Pour plus de détails, se référer au [pad des filaments](http://www.eleves.ens.fr/pads/p/hackEns_filaments). * Vitesse de Z = 140. * Vitesse de X / Y = 3000 * Réglages déjà faits dans Printrun et Slic3r, ne pas toucher !