Skip to main content

Nouvelle page

Exercice 1 : Création d'un objet fonctionnel

J'ai choisi de créer un support pour brosse à dents. J'ai choisi cet objet car il est à la fois pratique et facile à concevoir. Il répond à un besoin quotidien tout en restant simple à réaliser grâce aux outils de modélisation 3D.

Pour la conception, j'ai utilisé OpenSCAD, un logiciel de modélisation paramétrique. Contrairement à des outils comme Fusion 360, OpenSCAD nécessite de coder les formes en utilisant des instructions simples. Cela m'a permis de mieux comprendre la logique de la modélisation 3D tout en expérimentant avec des paramètres ajustables.

Étapes de la conception :

  1. Création de la base de l’objet : Pour commencer, j’ai conçu une base rectangulaire qui sert de support principal. Dans OpenSCAD, cela se fait en créant un cube. J’ai défini les dimensions nécessaires pour que la base soit stable et adaptée au diamètre des brosses à dents.

    scad
    cube([50, 30, 10], center = false); // Largeur 50 mm, profondeur 30 mm, hauteur 10 mm 
  2. Ajout du support incliné : Ensuite, j’ai ajouté un support incliné pour tenir la brosse. Pour cela, j’ai utilisé la fonction polygon dans OpenSCAD afin de créer un triangle rectangle, que j’ai ensuite étiré en 3D avec la fonction linear_extrude. Ce support est positionné sur la base pour maintenir la brosse en position verticale.

    scad
    linear_extrude(height = 40) polygon(points = [[0, 0], [40, 0], [0, 40]]);
  3. Création du trou pour insérer la brosse : J’ai ajouté un trou cylindrique au centre du support incliné. Ce trou correspond au diamètre de la brosse à dents. J’ai utilisé la fonction difference pour soustraire un cylindre de la colonne inclinée.

    scad
    cylinder(h = 40, r = 7, center = false); // Diamètre 14 mm
  4. Ajout d’arrondis pour améliorer l’esthétique : Pour finir, j’ai ajouté des bords arrondis à la base et au support incliné. Dans OpenSCAD, cela se fait avec la fonction minkowski, qui ajoute un arrondi autour des objets.

    scad
    minkowski() { sphere(r = 1); cube([50, 30, 10], center = false); }

output (1).png

Conclusion :

Ce projet m’a permis d’appliquer des concepts simples de modélisation 3D tout en créant un objet fonctionnel. Grâce à OpenSCAD, j’ai pu ajuster facilement les dimensions et explorer des designs paramétriques adaptés à mon besoin. Si c’était à refaire, je pourrais ajouter des textures ou un second trou pour une deuxième brosse à dents.

 

 

Code OpenSCAD pour second objet :  Chaîne sans joint 

  • Une chaîne composée de maillons entrelacés qui sort directement de l'imprimante sans assemblage.
  • Utilisation : Bijoux (bracelets, colliers), composants industriels.

// Paramètres de la chaîne
rayon_anneau = 10;      // Rayon de chaque anneau
epaisseur_anneau = 3;   // Épaisseur de l'anneau
espacement = 5;         // Distance entre les anneaux
nbre_anneaux = 5;       // Nombre total d'anneaux

// Module pour un anneau
module anneau() {
    difference() {
        // Anneau extérieur
        cylinder(h = epaisseur_anneau, r = rayon_anneau, center = true);
        // Trou intérieur
        cylinder(h = epaisseur_anneau + 1, r = rayon_anneau - epaisseur_anneau, center = true);
    }
}

// Chaîne sans joint
for (i = [0 : nbre_anneaux - 1]) {
    rotate([0, 90 * (i % 2), 0]) // Alterne l'orientation de chaque anneau
    translate([0, 0, i * (2 * rayon_anneau + espacement)]) // Positionne chaque anneau
        anneau();
}


Explications :

  1. Anneau :

    • Un cylindre avec un autre cylindre soustrait au centre, créant un anneau creux. Cela correspond aux commandes cylinder() et difference().
  2. Chaîne :

    • La chaîne est formée en répétant plusieurs anneaux (for loop).
    • Chaque anneau est alternativement tourné de 90° (rotate()), pour donner l'effet entrelacé.
    • Les anneaux sont espacés le long de l'axe Z (translate()).
  3. Personnalisation :

    • rayon_anneau : Ajuste la taille de chaque anneau.
    • epaisseur_anneau : Contrôle l'épaisseur des anneaux.
    • espacement : Gère la distance entre les anneaux.
    • nbre_anneaux : Définit le nombre total d'anneaux dans la chaîne.