Elio Antoun - Wiki Prototypage
Séance 1 — Découverte de l'impression 3D
1. Objectif de la séance
L'objectif de cette première séance était de découvrir le fonctionnement de l'impression 3D à travers :
- la recherche d'un modèle existant,
- son importation dans un logiciel de tranchage (slicer),
- le choix de paramètres d'impression adaptés,
- et la préparation du fichier pour l'impression.
2. Recherche d'un modèle 3D
Dans un premier temps, j'ai effectué une recherche sur le web afin de trouver une base de données de modèles 3D prêts à imprimer. Je me suis orienté vers la plateforme Printables.com, qui regroupe des milliers de modèles partagés par la communauté.
Après avoir exploré plusieurs catégories, j'ai choisi de me concentrer sur des figurines, car elles permettent de tester à la fois : les détails, les volumes, et la stabilité à l'impression.
C'est dans ce cadre que j'ai sélectionné le modèle « Minecraft Baby Creeper », conçu par l'utilisateur Shark Byte. Ce choix s'explique par :
- sa forme simple mais détaillée,
- sa taille réduite,
- son aspect ludique, idéal pour une première prise en main.
3. Importation dans le slicer
Le fichier STL du Baby Creeper a été téléchargé depuis Printables puis importé dans le logiciel PrusaSlicer. Une fois le modèle chargé :
- il a été automatiquement positionné sur le plateau,
- ses dimensions ont été vérifiées,
- son orientation n'a pas été modifiée afin de conserver sa stabilité.
Dimensions globales du modèle :
4. Choix des réglages d'impression
L'objectif était d'obtenir une figurine suffisamment robuste, avec un temps d'impression raisonnable. Les réglages suivants ont été sélectionnés :
| Paramètre | Valeur |
|---|---|
| Profil | 0.15 mm SPEED |
| Filament | Generic PLA (vert) |
| Imprimante | Original Prusa MK4S HF — buse 0.4 mm |
| Supports | Seulement pour les générateurs de supports |
| Remplissage | 15 % |
| Bordure (brim) | Désactivée |
5. Résultat

Légende : Le « Minecraft Baby Creeper » imprimé en PLA vert. Les détails du visage (yeux, bouche) sont nets malgré la taille réduite, et la figurine tient parfaitement debout sur ses deux pieds.
6. Conclusion de la séance
Cette séance m'a permis de comprendre le rôle d'un slicer, manipuler un modèle 3D, choisir des paramètres adaptés, et préparer un fichier pour l'impression. Elle constitue une première étape essentielle avant de passer à des objets plus complexes et à des conceptions originales lors des séances suivantes.
Séance 2 — Conception d'un objet impossible par fabrication traditionnelle
1. Objectif de la séance
L'objectif de cette deuxième séance était de concevoir un objet dont la fabrication est impossible avec des procédés traditionnels, et qui nécessite obligatoirement l'impression 3D.
Contrairement à la séance 1 (basée sur un modèle existant), cette séance repose sur la création d'un objet original intégrant une géométrie interne non accessible.
2. Principe de l'objet
L'objet conçu est une cage sphérique contenant une boule libre à l'intérieur, imprimée en une seule pièce.
Caractéristiques principales :
- La boule interne est totalement enfermée.
- Elle peut bouger librement dans la cage.
- Il est impossible de l'assembler après fabrication, car aucune ouverture ne permet d'insérer la sphère.
Ce type de géométrie ne peut pas être produit par :
- usinage (outil non accessible),
- moulage (contre-dépouilles internes),
- assemblage (aucune ouverture).
→ Il s'agit donc d'un objet exclusivement réalisable par fabrication additive.
3. Outil de modélisation
Le modèle a été conçu avec le logiciel OpenSCAD, qui permet de créer des formes paramétriques à partir de code. Les paramètres principaux définis sont :
- le diamètre de la sphère intérieure,
- l'épaisseur de la cage,
- le jeu entre les deux éléments,
- la résolution d'affichage.
// Paramètres
$fn = 60; // Résolution (augmente à 100 pour une finition plus lisse)
diametre_interieur = 20;
epaisseur_cage = 3;
espace_jeu = 2; // L'espace pour que la boule bouge librement
// 1. La sphère intérieure (libre)
sphere(d = diametre_interieur);
// 2. La cage extérieure
difference() {
sphere(d = diametre_interieur + (epaisseur_cage * 2) + (espace_jeu * 2));
sphere(d = diametre_interieur + (espace_jeu * 2));
rotate([0, 90, 0]) cylinder(h = 100, d = 15, center = true);
rotate([90, 0, 0]) cylinder(h = 100, d = 15, center = true);
cylinder(h = 100, d = 15, center = true);
}
4. Description du modèle
Le modèle est composé de :
- Une sphère interne libre, qui représente l'élément mobile.
- Une cage sphérique externe, évidée à l'intérieur pour laisser la place à la boule.
- Trois ouvertures cylindriques orientées sur les axes X, Y et Z, permettant de voir la boule, de prouver qu'elle est enfermée, sans permettre son extraction.
5. Itérations d'impression — les trois tentatives
L'impression de cet objet s'est révélée beaucoup plus complexe qu'anticipé. La géométrie intérieure flottante (boule libre maintenue uniquement par sa cage) impose à l'imprimante de réaliser des bridges (ponts) sur de longues distances et de gérer des overhangs importants au sommet de la sphère externe. Trois tentatives ont été nécessaires avant d'obtenir un résultat satisfaisant.
Tentative n°1 — Échec (PLA blanc)
Légende : Première tentative — la voûte supérieure de la cage s'est effondrée, et l'on observe nettement les filaments qui partent en « spaghetti » au sommet. La boule interne reste en partie soudée à la paroi de la cage à cause des supports résiduels.
Diagnostic du problème :
- Effondrement du sommet : l'overhang de la sphère externe a dépassé l'angle critique (>50°) sur les dernières couches, ce qui a provoqué le décrochage du filament.
- Cooling insuffisant : les couches supérieures n'avaient pas le temps de durcir avant que la suivante ne soit posée.
- Vitesse trop élevée sur les couches sphériques, ce qui a accentué l'oscillation de la tête d'impression.
- Boule soudée : sans assez d'espace de jeu, la boule interne s'est partiellement fusionnée à la cage extérieure.
Tentative n°2 — Échec partiel (PLA orange)
Légende : Deuxième tentative — la forme générale tient mieux mais le sommet présente toujours un défaut visible (anneau aplati), et la cage est plus écrasée que sphérique. La boule interne reste mal détachée.
Ajustements appliqués après la tentative n°1 :
- Augmentation du jeu (espace_jeu) de 2 mm à 2,5 mm pour mieux désolidariser la boule de la cage.
- Vitesse d'impression réduite à 60 % sur les overhangs supérieurs.
- Cooling activé à 100 % dès la couche n°5.
Problèmes restants :
- Le sommet reste fragile car la sphère externe est trop fine (epaisseur_cage = 3 mm) — l'imprimante n'a pas assez de matière pour stabiliser la voûte.
- La forme s'aplatit sur le dessus à cause d'un cumul de chaleur local.
Tentative n°3 — Succès (PLA vert foncé)
Légende : Troisième tentative — la cage sphérique est cette fois parfaitement formée, les ouvertures sont nettes, et la boule interne se déplace librement à l'intérieur sans aucun point de contact permanent. La boule interne est parfaitement isolée et mobile. La cage présente quatre ouvertures permettant d'observer la sphère interne sous différents angles. Cet objet illustre parfaitement la spécificité de l'impression 3D : aucune autre méthode de fabrication ne permettrait de réaliser une telle pièce en monobloc.
Ajustements finaux décisifs :
- Épaisseur de la cage portée de 3 mm à 4 mm → la voûte supérieure tient mieux son propre poids.
- Augmentation de $fn à 100 pour lisser la sphère et réduire les angles vifs propices au décrochage.
- Brim de 5 mm pour une meilleure adhérence au plateau.
- Réorientation du modèle de façon à minimiser l'angle d'overhang maximal.
- Petite réduction du diamètre des ouvertures cylindriques (d = 13 au lieu de 15) pour préserver davantage de matière au sommet.
Légende : Comparaison des trois tentatives. À gauche : tentative n°1 (blanc, effondrée). Au centre : tentative n°2 (orange, déformée). À droite : tentative n°3 (verte, réussie). On observe clairement la progression de la qualité d'impression et la maîtrise progressive des paramètres.
6. Retours d'expérience
Cette séance a été particulièrement formatrice car elle a confronté la théorie de la modélisation paramétrique à la réalité physique de l'impression FDM. Les enseignements clés :
- Tout n'est pas imprimable « tel quel » : un modèle qui s'affiche correctement à l'écran peut très bien échouer en impression à cause de contraintes physiques (gravité, refroidissement, cohésion).
- Les paramètres du slicer sont aussi importants que la modélisation : la moitié des problèmes ont été résolus côté slicer (vitesse, cooling, brim), pas côté code.
- L'itération est centrale : le seul moyen d'optimiser un design innovant en impression 3D est de prototyper, observer, ajuster.
7. Conclusion
Cette séance m'a permis de passer d'un modèle existant à une conception innovante exploitant les possibilités uniques de l'impression 3D. Elle démontre que l'impression 3D ne sert pas uniquement à reproduire des objets, mais à créer des formes impossibles autrement — au prix d'une compréhension fine des contraintes physiques du procédé.
Séance 3 — Tour de Chute Libre « Spiral Hourglass »
1. Description du projet
Ce projet consiste en la modélisation et la fabrication d'un objet cinétique de type « fidget » : un sablier à spirale. Une bille d'acier descend par gravité le long d'une trajectoire hélicoïdale creusée dans un volume en forme d'hyperboloïde, le tout enfermé dans une coque externe transparente ou évidée.
Objectifs :
- Étudier la géométrie complexe de l'objet (surfaces courbes et trajectoires hélicoïdales).
- Réaliser une rétro-ingénierie d'un modèle existant pour le rendre paramétrique.
- Fabriquer l'objet en impression 3D sans supports.


2. Analyse Technique et Modélisation
Pour dépasser la simple impression de fichiers STL figés, j'ai opté pour une re-conception paramétrique sous OpenSCAD. Cela permet de modifier la taille de la bille, la vitesse de chute (nombre de tours) et les tolérances d'impression.
2.1 Concepts géométriques
L'objet repose sur deux primitives mathématiques principales :
- L'Hyperboloïde à une nappe (le corps) : la forme de « sablier » n'est pas deux cônes accolés, mais une structure continue qui permet une transition fluide pour la bille.
- L'Hélice (la trajectoire) : la rainure suit une courbe hélicoïdale dont le rayon varie en fonction de la hauteur Z.
2.2 Le code paramétrique (OpenSCAD)
// Spiral Hourglass Fidget
/* General Dimensions */
total_height = 80;
max_diameter = 40;
min_diameter = 20;
wall_thickness = 1.6;
clearance = 0.3;
/* Ball & Path */
ball_diameter = 9.5;
groove_depth_ratio = 0.6;
twists = 2.0;
resolution = 100;
/* Rendering */
part_to_show = "both"; // [both, inner, outer]
$fn = 60;
R_max = max_diameter / 2;
R_min = min_diameter / 2;
path_radius_offset = (ball_diameter / 2) + 0.5;
if (part_to_show == "inner" || part_to_show == "both") {
translate([-max_diameter/1.5, 0, 0]) Inner_Core();
}
if (part_to_show == "outer" || part_to_show == "both") {
translate([max_diameter/1.5, 0, 0]) Outer_Shell();
}
3. Fabrication
| Paramètre | Valeur |
|---|---|
| Imprimante | Prusa MK4S |
| Matériau | PLA rouge |
| Buse | 0.4 mm |
| Hauteur de couche | 0.2 mm |
| Remplissage | 15 % Gyroid |
| Supports | AUCUN |
| Adhérence | Brim de 5 mm |
4. Itérations et difficultés rencontrées
Légende : Spiral Hourglass imprimé en PLA rouge. La spirale interne torsadée est visible à travers les ouvertures de la coque externe.
Tentative initiale — manque de stabilisation
Lors de la première impression, la pièce a souffert d'un manque d'adhérence au plateau dû à sa base étroite. Les premières couches ont commencé à se décoller, ce qui a généré :
- Un léger déport des couches supérieures (effet « tour de Pise »).
- Des stries irrégulières sur la spirale, bloquant la bille à mi-parcours.
Ajustements pour la version finale :
- Ajout d'un brim de 8 mm pour stabiliser la base.
- Réduction de la vitesse sur les premières couches à 30 mm/s.
- Augmentation de la variable clearance (0.3 → 0.4) pour plus de jeu à la bille.
5. Conclusion
Ce projet a permis de comprendre concrètement comment la géométrie d'un objet conditionne sa fabricabilité : un modèle qui s'imprime « sans supports » sur le papier peut quand même échouer si l'on néglige l'adhérence ou la stabilisation pendant l'impression.
Séance 4 — Conception d'un objet fonctionnel : Support MagSafe
1. Objectif de la séance
Après avoir exploré la forme impossible (Séance 2) et l'objet cinétique (Séance 3), cette séance visait à concevoir un objet fonctionnel du quotidien entièrement personnalisé : un support de chargeur MagSafe.
2. Cahier des charges
- Maintien stable du chargeur MagSafe à hauteur de bureau.
- Inclinaison ergonomique pour faciliter la lecture du téléphone pendant la charge.
- Passage caché du câble à travers le pied du support.
- Base lourde pour éviter le basculement.
- Print-in-place : impression en une seule pièce sans assemblage.
3. Modélisation OpenSCAD
// Support MagSafe paramétrique
base_diameter = 80;
base_height = 8;
stem_diameter = 14;
stem_height = 60;
puck_diameter = 56;
puck_thickness = 6;
ring_thickness = 3;
cable_diameter = 4.5;
$fn = 100;
difference() {
union() {
cylinder(h = base_height, d = base_diameter);
translate([0, 0, base_height])
cylinder(h = stem_height, d = stem_diameter);
translate([0, 0, base_height + stem_height])
cylinder(h = puck_thickness + ring_thickness,
d = puck_diameter + 2 * ring_thickness);
}
translate([0, 0, base_height + stem_height + ring_thickness])
cylinder(h = puck_thickness + 1, d = puck_diameter);
translate([0, 0, -1])
cylinder(h = base_height + stem_height + 2, d = cable_diameter * 1.5);
translate([0, 0, base_height / 2])
rotate([0, 90, 0])
cylinder(h = base_diameter / 2 + 1, d = cable_diameter * 1.5);
}
4. Paramètres d'impression
| Paramètre | Valeur |
|---|---|
| Imprimante | Prusa MK4S |
| Matériau | PLA noir mat |
| Hauteur de couche | 0.2 mm |
| Remplissage | 30 % gyroid (poids accru pour stabilité) |
| Supports | Activés sur la couronne uniquement |
| Bordure | 4 mm |
5. Résultat
Légende : (1) Support MagSafe vide. La couronne supérieure est creusée pour accueillir précisément le diamètre du chargeur Apple. (2) Support en utilisation avec le chargeur MagSafe inséré. Le câble sort proprement par la base.
6. Itérations et apprentissages
- Première version : diamètre interne de la couronne trop large (57 mm), le chargeur ne tenait pas → resserré à 56 mm.
- Deuxième version : base trop fine (4 mm), le support basculait → épaissie à 8 mm avec remplissage à 30 %.
- Sortie de câble : refait sortie radiale au niveau de la base.
7. Aspect innovant
- La paramétrisation : un seul fichier OpenSCAD permet de regénérer un support pour n'importe quel chargeur en changeant trois variables.
- L'intégration native du câble : impossible à réaliser proprement avec un produit moulé en une seule pièce sans usinage interne.
- L'ajustement par friction : tolérance contrôlée à 0,2 mm près grâce au paramétrique.
Séance 5 — Initiation à Arduino
1. Objectif global
Cette séance d'initiation à Arduino vise à découvrir l'autre versant du prototypage : l'électronique programmable. À travers une série d'exercices progressifs, j'ai pris en main la carte Arduino Uno, l'IDE Arduino, et la logique des entrées/sorties numériques et analogiques.
2. Matériel utilisé
- Carte Arduino Uno
- Câble USB
- Planche à pain (breadboard)
- LEDs (×2)
- Résistances (220 Ω et 10 kΩ)
- Potentiomètre 10 kΩ
- Bouton poussoir
- Fils de connexion
- Ordinateur avec Arduino IDE
3. Projet 1.1 — Blink : faire clignoter une LED
Le programme Blink est l'exemple « hello world » d'Arduino : il fait clignoter la LED intégrée à la carte (broche 13) à intervalle régulier.
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
delay(1000);
}
Concepts découverts :
- Structure d'un programme Arduino : setup() (exécuté une fois) et loop() (boucle infinie).
- Fonctions pinMode(), digitalWrite(), delay().
- Notion de sortie numérique (HIGH = 5V, LOW = 0V).
Anecdote : lors du premier essai, la LED ne clignotait pas. Après vérification, le port série n'avait pas été correctement sélectionné dans l'IDE. Une fois corrigé, le clignotement a confirmé le bon fonctionnement.
4. Projet 1.2 — Read Analog Voltage : lecture d'un potentiomètre
Mesurer la tension envoyée par un potentiomètre sur l'entrée analogique A0, et afficher la valeur dans le moniteur série.
void setup() {
Serial.begin(9600);
}
void loop() {
int sensorValue = analogRead(A0);
float voltage = sensorValue * (5.0 / 1023.0);
Serial.println(voltage);
delay(100);
}
| Position du potentiomètre | Tension mesurée |
|---|---|
| Entrée 1 V (env.) | ≈ 1.02 V |
| Entrée 3 V (env.) | ≈ 2.98 V |
| Entrée 5 V (max) | ≈ 4.99 V |
Le moniteur série affiche les valeurs en temps réel, ce qui permet de visualiser concrètement la conversion d'un signal physique en donnée numérique (résolution sur 10 bits = 1024 paliers entre 0 et 5V).
5. Projet 1.3 — Deux LEDs avec fréquences différentes
Contrôler deux LEDs simultanément avec des temporisations différentes pour observer le caractère séquentiel de la fonction loop().
void setup() {
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH);
delay(500);
digitalWrite(12, HIGH);
delay(5);
digitalWrite(13, LOW);
delay(500);
digitalWrite(12, LOW);
delay(5);
}
Observations :
- LED 13 clignote lentement (≈ 1 Hz).
- LED 12 clignote très rapidement.
- Comme delay() est bloquant, les deux LEDs ne sont pas réellement indépendantes.
→ Cette limitation introduit la nécessité de techniques non-bloquantes (millis()) pour des projets plus complexes.
6. Projet 1.4 — Bouton poussoir interactif
Utiliser un bouton poussoir comme entrée numérique pour contrôler l'état d'une LED. Le bouton est câblé en logique active LOW (avec résistance pull-up).
const int bouton = 4;
const int led = 12;
int etatBouton;
void setup() {
pinMode(bouton, INPUT);
pinMode(led, OUTPUT);
Serial.begin(9600);
}
void loop() {
etatBouton = digitalRead(bouton);
if (etatBouton == LOW) {
digitalWrite(led, LOW);
} else {
digitalWrite(led, HIGH);
}
}
Observations :
- Au repos : LED allumée.
- Bouton appuyé : LED éteinte.
Ce comportement contre-intuitif s'explique par le câblage active LOW : appuyer sur le bouton met la broche à la masse (0V = LOW).
7. Bilan de la séance Arduino
Cette initiation à Arduino m'a permis de :
- Maîtriser la structure de base d'un programme embarqué (setup / loop).
- Manipuler des sorties numériques (LEDs) et des entrées numériques (bouton).
- Lire un signal analogique et le convertir en données exploitables.
- Comprendre les limites d'un programme séquentiel (delay() bloquant).
- Diagnostiquer des problèmes physiques (câblage, port série) et logiques (logique inversée).
L'Arduino constitue un outil de prototypage rapide complémentaire à l'impression 3D : là où l'impression 3D donne une forme à un objet, l'Arduino lui donne un comportement. Combiner les deux ouvre la voie à des projets d'objets connectés ou interactifs, qui constituent une suite naturelle à explorer.
Conclusion générale
Au cours de ces cinq séances, j'ai exploré progressivement les différentes facettes du prototypage rapide :
- Reproduction d'un modèle existant (Creeper) → maîtrise de la chaîne STL → slicer → imprimante.
- Conception innovante d'une forme impossible (cage sphérique) → exploitation de la spécificité de la fabrication additive, avec trois itérations pour maîtriser les contraintes physiques de l'impression FDM.
- Objet cinétique complexe (Spiral Hourglass) → conception paramétrique d'une géométrie hélicoïdale.
- Objet fonctionnel sur mesure (Support MagSafe) → personnalisation paramétrique d'un objet du quotidien.
- Électronique embarquée (Arduino) → ajout du comportement programmable au prototypage.
L'enseignement principal de ce parcours est que l'innovation en prototypage ne se limite jamais à la modélisation 3D ou au code : elle naît de l'itération entre conception, fabrication, test et ajustement. Chaque échec d'impression ou bug électronique a été l'occasion de mieux comprendre la matière, l'imprimante, ou l'algorithme — et c'est cette boucle d'apprentissage qui constitue le vrai cœur de la démarche FabLab.















No Comments