Bootcamp : "Make ta machine"

Chaîne logicielle I

Etat : préciser les techniques de modélisation

Modélisation 3D 

Plusieurs moyens d'obtenir un objet 3D : en le récupérant dans une base de données coopérative en ligne (thingiverse), en numérisant un objet réel par une technique de scanner 3D, ou en le "fabriquant" par des méthodes logicielles.  

Deux types principaux de modélisation 3D :

- pour l'image ou l'animation de synthèse, des scènes sont créées à partir objets virtuels, éventuellement animés, auxquels on applique des textures, placés dans des environnements, des caméras et lumières virtuelles permettent de calculer des images ou des animations.

- pour la conception assistée par ordinateur : dans ce cas, les volumes virtuels serviront à fabriquer des pièces réelles. La géométrie et le volume des pièces doit être très précisément définis.

Ces objets peuvent être enregistrés dans différents formats, il est possible

Etapes de la modélisation logicielle

1 - plusieurs techniques logicielles permettent de créer des objets 3D,

Le modelage par interface graphique utilise la souris et le clavier pour manipuler des formes virtuelles.

Le modelage par script définit un objet sous forme de texte, la géométrie et le volume  étant définis par des procédures, cette méthode est particulièrement adaptée aux objets définis par des paramètres (par exemple : une roue dentée qui peut être définie par son diamètre et son nombre de dents)

 

Blender ( http://blender.org / linux, windows, mac OS) : modelage par interface graphique, objets procéduraux par scripts python. Blender permet principalement de créer des objets 3D pour l'image ou l'animation de synthèse (objets + textures + lumière + animation), mais peut également être utilisé pour la conception d'objets pouvant être fabriqués.

Wings 3D ( http://www.wings3d.com / linux, windows, mac OS) : modelage par interface graphique.

Sketchup ( http://sketchup.google.com / windows, mac OS) : modelage par interface graphique. Réputé pour sa simplicité d'utilisation.

Art of illusion ( http://artofillusion.org / linux, windows, mac OS) : modelage par interface graphique.

OpenSCAD ( http://openscad.org / linux, windows, mac OS) : modelage d'objets prodécuraux dans un langage adapté.

HeeksCAD ( http://code.google.com/p/heekscad/  / linux, windows) : modelage d'objets par interface graphique, logiciel dédié à la CAO

Créer des objets avec processing : voir ci-dessous

quelques techniques :

extrusion (pour passer d'une forme plate à un volume 3D, par exemple un texte écrit avec une police de caractère devient un objet)

tour : un profil de forme tourné sur une axe pivot à 360°

assemblage de formes simples : cubes, sphères, cylindres composent les pièces de base d'objets composites. Les volumes peuvent être assemblés par des opérations booléennes, l'union compose un volume correspondant au volume total des objets. L'intersection conserve le volume commun aux deux objets. La différence soustrait un volume à l'autre

(et aussi spline, nurbs, metaballs, etc.)

Ces différentes techniques peuvent être cumulées pour produire des objets

Un objet 3D est généralement composé de facettes à 3 ou 4 sommets, dont les coordonnées dans un espace en 3 dimensions sont enregistrées dans un fichier. 

Créer des objets avec Processing

Plusieurs bibliothèques de fonctions permettent de fabriquer des objets en 3D ou de contrôler l'imprimante 3D :

CodeThread ( http://www.thingiverse.com/thing:7313 ) : bibliothèque pour processing qui crée directement du G-Code

ModelBuilder de Marius Watz ( http://workshop.evolutionzone.com/2011/04/06/code-modelbuilder-library-public-release/ ) : bibliothèque de fonctions pour la fabrication numérique : création de maillages, sortie au format .STL, etc.

Toxiclibs de Karsten Schmidt ( http://toxiclibs.org ) en particulier pour les fonctions de modelage volumétrique et de simulation.

Hemesh de Frederik Vanhoutte ( http://www.wblut.com/2010/05/04/hemesh-a-3d-mesh-library-for-processing ) : construction procédurale, manipulation, modification de maillages 3D (extrusion, subdivision, tranchage, chanfreins, etc.)

Les formats de fichier 3D

pour l'impression 3D : .STL, .GCODE

.STL : Un fichier STL décrit la géométrie 3D d'un objet comme une surface de polygones définis chacun par leurs sommets et leur vecteur normal dans un système de coordonnées cartésien à trois axes. Les fichiers STL peuvent être encodés en ASCII ou en binaire. C'est un format de présentation 3D sans couleur ni texture adapté aux objets pour la fabrication numérique. L'abbréviation STL vient de stéréolithographie, le procédé d'impression par couche fine utilisé par de simprimantes 3D comme la RepRap.

.GCODE : le fichier g-code est la dernière étape de l'objet "en données", il est composé d'une suite d'instructions primitives qui sont envoyées à l'imprimante. Dans un fichier g-code les commandes sont groupées par layer. Les fichiers g-code pour reprap utilisent aussi des commandes (code M) spécifiques pour le contrôle de la machine. Le logiciel ReplicatorG permet d'éditer le code, de l'envoyer à la reprap et de régler les paramètres des moteurs et de l'extrusion.

Autres formats de fichier 3D courants : .DXF, .OBJ. Des logiciels de conversion permettent de transformer un fichier 3D d'un format en un autre (c'est une des fonctions de meshlab http://meshlab.sourceforge.net )

 

Préparer le fichier pour l'impression

objet 3D -> fichier STL -> fichier G-Code

Si l'objet n'est pas au format, il faut tout d'abord le convertir, avec meshlab par exemple 

Meshlab ( http://meshlab.sourceforge.net ): logiciel avec interface graphique et vue de de l'objet en 3D. Meshlab permet d'importer de nombreux formats d'objets 3D et de retravailler l'objet : simplification des facettes, "nettoyage", vérification que les facettes sont tournées du bon côté et plein d'autres trucs... avant de l'enregistrer au format SEL (note : sortir les fichiers STL en "binary encoded" pour la suite)

Puis le fichier STL peut-être envoyé directement au logiciel de contrôle de l'imprimante qui le transformera en instructions G-Code, directement compréhensibles par l'imprimante. Différents logiciels permettent d'assurer cette conversion, et d'en fixer les paramètres (épaisseur de l'enveloppe, type de treillis de remplissage ) :

Skeinforge ( http://fabmetheus.crsndoo.com/wiki/index.php/Skeinforge ): conversion en g-code uniquement (skeinforge peut convertir en g-code les formats suivants : .stl, .gts, .obj, .svg, .xml, .gcode, .BFB)

RepSnapper ( http://reprap.org/wiki/RepSnapper ) : conversion et contrôle de l'imprimante.

ReplicatorG ( http://replicat.org ) : conversion et contrôle de l'imprimante.

RepRap Host ( http://reprap.org/wiki/Mendel_User_Manual:_Host_Software ) : conversion et contrôle de l'imprimante.

Voir aussi : la chaine logicielle RepRap : http://reprap.org/wiki/RepRap_CAM_Toolchains 

Autres logiciels utiles

Kokompe (linux) : http://kokompe.cba.mit.edu/dist/index.html

Ressources supplémentaires

Guide pour la modélisation précise avec Blender (anglais, pdf, 150 pages)  http://homepage.ntlworld.com/r.burke2/precision_modelling1.html

Scripter avec python pour Blender (anglais) http://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro/Python_Scripting

De Sketchup à un fichier imprimable (anglais) : http://edutechwiki.unige.ch/en/Sketchup_3D_printable_objects_tutorial

Exporter des objets 3D réalisés avec Sketchup (anglais) : http://sketchup.google.com/support/bin/answer.py?hl=fr&answer=36203

Débuter avec OpenSCAD (français) : http://www.linuxgraphic.org/tutoriels/caodao/220-debuter-avec-openscad

Créer de formes 3D avec processing / hemesh (anglais) : http://vormplus.be/blog/article/creating-3d-shapes-with-hemesh

Bibliothèques d'objets libres


Thingiverse ( http://www.thingiverse.com ) : bibliothèque de modèles imprimables et plans d'objets pour la fabrication numérique.




There has been error in communication with booki server. Not sure right now where is the problem.

You should refresh this page.