Guide du débutant pour OpenSCAD Programmation de modèles imprimés 3D

Guide du débutant pour OpenSCAD Programmation de modèles imprimés 3D / DIY

Vous avez toujours voulu concevoir vos propres modèles 3D? Qu'en est-il de l'impression 3D d'une pièce que vous avez conçue? Il existe de nombreux programmes de modélisation 3D, mais ils peuvent être difficiles à utiliser si vous n’êtes pas artistique (comme moi). OpenSCAD vous permet de concevoir des modèles spécialement pour l’impression 3D en utilisant uniquement code. Ne vous inquiétez pas si vous ne savez pas coder non plus, aujourd'hui je vous guiderai à travers les bases.

Qu'est-ce que OpenSCAD?

OpenSCAD est un logiciel gratuit Conception assistée par ordinateur solide modeleur. Il est disponible pour Windows, Mac et Linux. Ce qui le distingue de nombreux autres programmes est que vous concevez des pièces à l'aide de code plutôt que d'une souris. Cela facilite très bien les calculs mathématiques, le stockage des dimensions dans les variables, le redimensionnement des pièces, etc..

Certains facteurs doivent être pris en compte dans les modèles d'impression 3D, mais nombre d'entre eux s'appliquent aux modèles de CAO d'impression 3D en général, pas seulement aux conceptions OpenSCAD. Si vous voulez en savoir plus sur l'impression 3D, consultez notre guide du débutant ultime. Guide du débutant ultime pour l'impression 3D. Guide ultime du débutant pour l'impression 3D. Il n'a pas encore conquis le monde, mais je suis ici pour vous expliquer tout ce que vous devez savoir pour commencer. Lire la suite . Si vous recherchez un modélisateur plus interactif, lisez le guide sur la création d'objets dans Sketchup Concevez et construisez des bâtiments et objets virtuels avec Google SketchUp Concevez et construisez des édifices et bâtiments virtuels avec Google SketchUp BuildingMaker, qui permet aux graphistes de soumettre des conceptions de bâtiment à Google afin de les ajouter aux images officielles de Google Earth. Lire la suite .

Mise en place

Tout d’abord, rendez-vous sur la page des téléchargements et recherchez une version d’OpenSCAD adaptée à votre système d’exploitation. J'utilise Mac OS, mais ces principes OpenSCAD s'appliquent à tous les systèmes.

Une fois installé, allez-y et ouvrez-le. Ce menu de démarrage vous sera présenté:

Cela vous montre les derniers fichiers ouverts et vous donne la possibilité de charger quelques exemples. Ne hésitez pas à regarder autour de certains exemples, cependant, j'ai trouvé que cela rendait les choses plus confuses lors de la première utilisation. Pour ce tutoriel, créez un nouveau fichier en cliquant sur le bouton Nouveau bouton.

Une fois ouvert, vous verrez cette interface nue:

Ceci est divisé en trois zones principales. À gauche est votre éditeur et menu. C’est à cet endroit que vous écrirez votre code. Cela n’a pas encore de code, car vous créez un nouveau fichier. En haut, certains boutons de menu permettent d'effectuer des tâches de base, telles que charger, enregistrer, annuler, etc..

Le coin inférieur droit est le console. Cela vous montrera les erreurs dans la construction du modèle.

La dernière section est la Interface principale en haut à droite. Ici, vous pouvez interagir avec votre modèle, mais vous ne pourrez pas l'éditer ici (vous allez écrire du code pour le faire).

Il y a plusieurs boutons au bas de cette interface principale. Celles-ci vous permettent principalement de visualiser votre conception de différentes manières..

Continuez et enregistrez un nouveau fichier en appuyant sur la touche bouton de sauvegarde dans le menu de l'éditeur ou en allant à Fichier > sauvegarder.

Les bases

La plupart du temps, OpenSCAD fonctionne par addition et soustraction de formes simples. Vous pouvez construire des modèles très complexes de cette façon, alors sautons directement dans.

Voici la première forme, une simple boîte:

Et voici le code pour le produire:

cube(); // crée un cube

Pour que votre code soit exécuté et construit le modèle, vous devez en avoir un aperçu. OpenSCAD le fera par défaut chaque fois que vous enregistrez, ou vous pouvez appuyer sur F5 forcer un rafraîchissement. Essayez de vous déplacer dans l'espace 3D en maintenant les boutons gauche ou droit de la souris enfoncés.

Maintenant, cela produit un joli cube, mais ce n’est pas très utile sans aucune dimension. OpenSCAD ne fonctionne dans aucun système de mesure particulier, mais toutes les unités sont relatives les unes par rapport aux autres. Vous pouvez créer une boîte 20 x 10, et c'est n'importe quel programme (tel que votre trancheur d'impression 3D) qui peut en interpréter, qu'il soit métrique ou impérial. Il offre une grande flexibilité.

Ajoutons quelques dimensions à votre cube. Vous faites cela en passant des paramètres à la cube méthode:

cube (taille = [10, 20, 30]); // rectangle

Les valeurs dix, 20, et 30 représenter la taille du cube dans le X, Y, et Z axe. Remarquez comment cela a produit un rectangle beaucoup plus grand:

Par défaut, OpenSCAD dessine les composants en bas à gauche. Vous pouvez régler cela en réglant la centre paramètre à vrai. Voici le code pour faire cela au rectangle:

cube (taille = [10, 20, 30], centre = vrai); // rectangle centré

Et voici à quoi ça ressemble:

Le centrage des objets fonctionne bien pour les formes simples, mais complique les choses pour les objets non symétriques. Vous devrez décider quelle méthode vous convient le mieux..

Passant à une forme plus complexe, voici une cylindre:

Voici le code pour le créer:

cylindre (d = 10, h = 10, centre = vrai); // cylindre

contrairement à cubes, cylindres sont automatiquement dessinés au centre des axes X et Y. le paramètre signifie diamètre (vous pouvez passer dans le rayon à la place si vous préférez). le h paramètre est la hauteur. Quelque chose ne va pas ici cependant. Ce cylindre a l'air assez “bloc”. Vous devez augmenter le nombre de faces dessinées sur la circonférence. C'est facile à faire - ajoutez le paramètre suivant à votre code cylindre.

$ fn = 100

La définition du cylindre devient alors:

cylindre (d = 10, h = 10, centre = vrai, $ fn = 100);

Voici à quoi ça ressemble:

Cela augmente le nombre de faces nécessaires pour faire des cercles - 100 est un bon point de départ. Gardez à l'esprit que cela augmentera considérablement les temps de rendu, en particulier sur les modèles complexes, il est donc préférable de laisser cela de côté jusqu'à ce que vous ayez fini de concevoir..

Il est facile d'appliquer des transformations sur des formes. Vous devez appeler des méthodes spéciales avant de créer vos formes. Voici comment faire pivoter le cylindre en utilisant le tourner méthode:

faire tourner (a = [0, 90, 0]) le cylindre (d = 10, h = 10, centre = vrai); // cylindre tourné

Les valeurs transmises au une Ce paramètre représente l’angle de rotation des axes X, Y et Z. Voici le résultat:

Une autre fonction très utile est Traduire. Cela vous permet de déplacer des objets dans un espace 3D. Encore une fois, vous devrez indiquer la quantité de mouvement pour chaque axe. Voici le résultat:

Voici le code:

traduire (v = [0, 25, 0]) cylindre (d = 10, h = 10, centre = vrai); // cylindre traduit

Comprendre le Traduire La méthode est l’une des choses les plus importantes que vous puissiez faire. Il est nécessaire pour concevoir les conceptions les plus complexes.

Enfin, une autre forme utile est un sphère:

Voici le code:

sphère (d = 100);

Tout comme le cylindre, vous pouvez lisser ceci en utilisant le $ fn code ci-dessus.

Codage avancé

Maintenant que vous connaissez les bases, examinons des compétences plus avancées. Lors de la conception d'une pièce, il est utile de réfléchir à la manière dont elle pourrait être composée de formes et d'objets plus petits. Vous n'êtes pas obligé de faire cela, et vous pouvez “inventer des choses” au fur et à mesure, mais il est utile d’avoir un plan approximatif - même si c’est seulement dans votre tête.

Créons une forme avancée: un cube avec un intérieur de sphère évidé. Créer un cube et un sphère avec centre mis à true. Soustrayez l’un de l’autre en utilisant le différence méthode:

difference () // cube de soustraction (taille = [50, 50, 50], centre = vrai); // sphère de cube externe (d = 65, center = true); // sphère intérieure

Voici le résultat:

Expérimentez avec le diamètre ( paramètre) de la sphère et voir ce qui se passe.

Dans OpenSCAD, il y a généralement plusieurs façons d'accomplir la même tâche. Si vous souhaitez insérer un groove dans un cube, vous pouvez en soustraire un autre ou en ajouter deux autres au-dessus. La façon dont les choses sont faites n’importe généralement pas, mais en fonction de la complexité de la pièce, il peut être plus facile de faire certaines manipulations d’abord..

Voici comment créer un canal dans un cube. Au lieu d'utiliser un autre cube, l'utilisation d'un cylindre créera un canal arrondi. Remarquez comment différence méthode est utilisée à nouveau, et comment le Traduire et tourner des méthodes sont utilisées pour manipuler les formes. En utilisant le tourner méthode rend souvent les transformations difficiles, alors jouez avec les paramètres jusqu’à ce que vous obteniez le résultat souhaité. Voici le code:

difference () // cube de soustraction (taille = [50, 150, 50]); // cube extérieur traduire (v = [25, 150, 50]) tourner (a = [90, 0, 0]) cylindre (d = 40, h = 150); // canal du cylindre

Voici à quoi ça ressemble:

Vous vous demandez peut-être ce que sont toutes ces choses vertes. Ceci est ici parce que le modèle 3D est juste un aperçu pour le moment. Pour résoudre ce problème, appuyez sur F6 rendre entièrement le modèle. Cela peut prendre du temps, en fonction de la complexité. L'aperçu (F5) est généralement assez bon en travaillant. Voici à quoi ressemble le rendu final (avec $ fn réglé sur 100):

Voici un autre exemple avancé. Supposons que vous vouliez monter quelque chose en utilisant un boulon. Créer un trou est assez simple en utilisant cylindre, mais que faire si vous vouliez que la tête de boulon soit encastrée pour des boulons à tête fraisée? Vous pouvez simplement créer un grand cylindre pour la tête du boulon, mais cela ne sera pas très joli. La solution est un chanfrein, que vous pouvez créer avec le cylindre méthode. L'astuce ici est de spécifier deux diamètres - d1 et d2. Faites ces différentes tailles, et OpenSCAD fera le reste.

Comme je suis britannique, je vais utiliser des dimensions métriques ici, pour un boulon à tête fraisée M5. Vous pouvez facilement ajuster cela pour s'adapter à toutes les fixations que vous souhaitez utiliser. Voici le code:

$ fn = 100; // paramètres de boulon m5_clearance_diameter = 5.5; m5_head_clearance_diameter = 11; m5_head_depth = 5; difference () // soustrait un cube (20, 20, 20); trou de boulon (10, 10, 20); bolt_bevel (10, 10, 15);  module boulon_hole (x, y, hauteur) / * trou M5 à 90 degrés. * / translate (v = [x, y, 0]) cylindre (d = m5_niveau_diamètre, h = hauteur);  module bolt_bevel (x, y, z) // biseau M5 traduire (v = [x, y, z]) cylindre (d2 = m5_head_clearance_diameter, d1 = m5_clearance_diameter, h = m5_head_depth); 

Remarquez comment les dimensions des boulons sont stockées dans des variables? Cela facilite grandement le codage et la maintenance. Une méthode que vous n'avez peut-être pas encore rencontrée est module. Cela vous permet de définir un bloc de code à exécuter à tout moment. En réalité, c'est un une fonction. Tu devrais utiliser modules et les variables pour toute forme complexe, car ils facilitent la lecture et permettent d’apporter plus rapidement des modifications. Voici à quoi ressemble le chanfrein:

Regardons un dernier exemple. Supposons que vous vouliez créer une série de trous autour d'un cercle. Vous pouvez mesurer, traduire et faire pivoter manuellement tous ces éléments, mais même avec des modules, cela serait fastidieux. Voici le résultat final, 10 cylindres même répartis autour d'un cercle:

Voici le code:

$ fn = 100; number_of_holes = 10; for (i = [1: 360 / number_of_holes: 360]) // number_of_holes définit le nombre de fois que ce code est exécuté par make_cylinder (i);  module make_cylinder (i) // fabrique un cylindre et même distribue une rotation ([0, 0, i]) translate ([10, 0, 0]) cylindre (h = 2, r = 2); 

Ce code est plus simple que prévu. UNE pour La boucle est utilisée pour appeler le make_cylinder module dix fois. Comme il y a 360 degrés dans un cercle et 360/10 = 36, il faut faire pivoter chaque cylindre par incréments de 36 degrés. Chaque itération de cette boucle incrémentera la je variable de 36. Cette boucle appelle la make_cylinder module, qui dessine simplement un cylindre et le positionne en fonction des degrés passés par la boucle. Vous pouvez dessiner plus ou moins de cylindres en modifiant la nombre_de_ trous variable - bien que vous souhaitiez peut-être ajuster l'espacement si vous le faites. Voici à quoi ressemblent 100 cylindres, ils se chevauchent légèrement:

Exportation

Maintenant que vous savez coder dans OpenScad, il vous reste une dernière étape avant de pouvoir imprimer en 3D vos modèles. Vous devez exporter votre conception depuis OpenSCAD dans la norme STL format utilisé par la plupart des imprimantes 3D. heureusement, il existe un bouton d'exportation vers STL: Menu de l'éditeur > En haut à droite:

C'est tout pour aujourd'hui. Vous devez maintenant avoir une excellente connaissance pratique d'OpenSCAD - toutes les bases complexes reposent sur ces bases, et de nombreuses formes complexes combinent de nombreuses formes simples..

Pour relever un défi, pourquoi ne pas regarder certains de nos projets d’impression 3D et essayer de recréer les pièces dans OpenSCAD:

  • Imprimables 3D pour les RPG Fantasy sur table Les meilleurs imprimables 3D pour les RPG Fantaisie sur table Les meilleurs imprimables 3D pour les RPG Fantasy sur table miniatures. Lire la suite
  • Boutons de raccourci personnalisés Créez vos propres boutons de raccourci personnalisés avec un Arduino Créez vos propres boutons de raccourci personnalisés avec un Arduino L'humble Arduino peut faire beaucoup de choses, mais saviez-vous qu'il peut émuler un clavier USB? Vous pouvez combiner de longs raccourcis clavier en une seule touche de raccourci personnalisée, avec ce circuit simple. Lire la suite
  • Rouleau électronique D20 avec style avec cette puce électronique bricolage D20 Die Rouleau électronique avec style avec cette puce électronique bricolage D20 Vous voulez quelque chose d'unique lors de votre prochaine réunion de jeu? Découvrez ce D20 électronique de bricolage, avec des graphiques personnalisés pour les coups critiques et les ratés. Lire la suite
  • Jeux que vous pouvez imprimer en 3D 6 Jeux les plus cools que vous pouvez imprimer en 3D chez vous 6 Jeux les plus cools que vous pouvez imprimer en maison toute votre famille Nous parlons de jeux de table imprimés en 3D. Lire la suite

Avez-vous appris de nouveaux tours aujourd'hui? Quelle est votre fonctionnalité OpenSCAD préférée? Allez-vous bientôt changer d'un autre outil de CAO? Faites-nous savoir dans les commentaires ci-dessous!

En savoir plus sur: Modélisation 3D, Impression 3D.