# Cesar Giovanni Oliva Mendez

*Master 1 Management de l'innovation Cesar\_Giovanni.Oliva\_Mendez@etu.sorbonne-universite.fr*

## ***Premier projet***

### Le Tigre Assis 

#### 1. Introduction 

#### Je vais maintenant vous présenter une pièce complexe : **le Tigre Assis**.

 Il s'agit d'une forme organique qui nécessite une gestion plus fine des supports et de la définition des maillages.

#### 3 Analyse de la Fabrication (Análisis de Fabricación)

Concernant les dimensions, nous avons appliqué un facteur d’échelle de 70 %, ce qui nous a donné des dimensions de 65 mm sur l’axe X, 57 mm sur l’axe Y et 37 mm sur l’axe Z. L’axe X correspond à la largeur de la pièce, tandis que l’axe Z correspond à la hauteur, L’axe Y correspond à la profondeur de la pièce. Cette dimension a également été choisie en raison du temps d’impression. En conséquence, on peut observer que la texture du tigre n’est pas totalement homogène : les bords et les reliefs restent visibles. Toutefois, avec un temps d’impression plus long, la texture serait nettement meilleure.

[![Screenshot 2026-01-17 at 16.28.11.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-01/scaled-1680-/screenshot-2026-01-17-at-16-28-11.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-01/screenshot-2026-01-17-at-16-28-11.png)

J’ai choisi les supports *on build plate only* afin que la partie de la tête ne s’affaisse pas et puisse être imprimée correctement.

![Screenshot 2026-01-17 at 16.07.34.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-01/scaled-1680-/screenshot-2026-01-17-at-16-07-34.png)

En ce qui concerne la température, ce sont les meilleures conditions, car dans le cas contraire, lorsqu’elle était trop élevée, la base du tigre se décollait parfois du plateau de l’imprimante.

![Screenshot 2026-01-17 at 15.55.09.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-01/scaled-1680-/screenshot-2026-01-17-at-15-55-09.png)

#### 4. Resultat

[![image.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-03/scaled-1680-/ESIimage.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-03/ESIimage.png)

#### 5. Conclusion 

Le résultat n'est pas mauvais, mais il aurait fallu accorder plus de temps à l'impression. En augmentant la vitesse d'extrusion, la qualité de finition du tigre n'a pas été optimale

Parmi les problèmes rencontrés lors de l’impression, on peut observer que la partie de la base, plus précisément au niveau de la queue du tigre, n’était pas très uniforme. Il serait donc nécessaire de corriger les paramètres des supports afin que le tigre ait un meilleur rendu. Néanmoins, je considère que le résultat est très bon pour une première impression réalisée.

Et pour conclure, je vous laisse ici le lien où vous pouvez trouver le fichier afin d’imprimer votre tigre. C’est un modèle très joli et une excellente petite figurine à mettre dans votre chambre. Merci.

## ***Second projet***

## La Sphère Captive (The Trapped Sphere)

### 1. Introduction (Introducción)

 je vais vous présenter un projet de design paramétrique que j'ai réalisé avec OpenSCAD : **La Sphère Captive**

### 2. Le Concept (El Concepto)

<span style="color: rgb(0, 0, 0);">Le concept est une figure géométrique impossible. Il s'agit d'une sphère enfermée à l'intérieur d'un tétraèdre. La particularité est qu'elle est imprimée en une seule pièce , ce qui rend impossible l'extraction de la balle sans briser la structure.</span>

### 3. Les Paramètres Techniques 

<div id="bkmrk-%2F%2F-----parameters---"><div>// --- Parameters ---</div><div>$fn = 80; // High resolution</div><div>sphere_radius = 18; // Larger sphere to ensure it's trapped</div><div>frame_thickness = 5; // Thicker bars for a "heavy-duty" climbing gear look</div><div>cage_scale = 22; // Smaller cage to tighten the windows</div><div>clearance = 0.5; // Movement gap</div>  
<div>// --- Mathematical Coordinates ---</div><div>// These points define a regular tetrahedron</div><div>p1 = [1, 1, 1] * cage_scale;</div><div>p2 = [1, -1, -1] * cage_scale;</div><div>p3 = [-1, 1, -1] * cage_scale;</div><div>p4 = [-1, -1, 1] * cage_scale;</div>  
<div>// --- Modules ---</div>  
<div>module create_edge(pointA, pointB) {</div><div>hull() {</div><div>translate(pointA) sphere(r = frame_thickness);</div><div>translate(pointB) sphere(r = frame_thickness);</div><div>}</div><div>}</div>  
<div>// --- Final Assembly ---</div><div>union() {</div><div>// 1. The Trapped Sphere</div><div>// Now it's physically impossible for this to pass through the gaps</div><div>color("Crimson")</div><div>sphere(r = sphere_radius);</div>  
<div>// 2. The Structural Cage</div><div>color("DimGray") {</div><div>create_edge(p1, p2);</div><div>create_edge(p1, p3);</div><div>create_edge(p1, p4);</div><div>create_edge(p2, p3);</div><div>create_edge(p2, p4);</div><div>create_edge(p3, p4);</div><div>}</div><div>}</div>  
<div>// --- Business &amp; Engineering Note ---</div><div>// The "Incircle" of the triangular opening is now smaller</div><div>// than the sphere's diameter. This is a "Print-in-Place" assembly.</div></div>;

[![Screenshot 2026-03-02 at 13.45.50.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-03/scaled-1680-/screenshot-2026-03-02-at-13-45-50.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-03/screenshot-2026-03-02-at-13-45-50.png)

### 4. Les Paramètres 

[![Capture d’écran 2026-03-02 à 00.18.03.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-03/scaled-1680-/capture-decran-2026-03-02-a-00-18-03.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-03/capture-decran-2026-03-02-a-00-18-03.png)[![Capture d’écran 2026-03-02 à 00.17.51.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-03/scaled-1680-/capture-decran-2026-03-02-a-00-17-51.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-03/capture-decran-2026-03-02-a-00-17-51.png)

### 5. Resultat 

[![image12342](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-03/scaled-1680-/gemini-generated-image-y7ttbdy7ttbdy7tt.jpg)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-03/gemini-generated-image-y7ttbdy7ttbdy7tt.jpg)

### 6. Conclusion 

Pour conclure, je dirais que la texture actuelle de ma figure n'est pas encore optimale. Je pense qu'une température d'extrusion légèrement plus élevée et une vitesse d'impression plus lente (plus de temps par couche) permettraient d'obtenir une meilleure apparence de surface et une finition plus lisse."

Cependant, les paramètres de structure et les tolérances sont bons.

### **GROUPE pour Arduino: TERZI Dila, AKSU Dilara, OLIVA MENDEZ Cesar Giovanni**

### **Exercice 3 : Clignotement de deux LEDs avec Arduino**

##### **Contexte**

Cette activité avait pour objectif de découvrir la programmation Arduino à travers la réalisation d’un montage électronique simple.  
Avant toute manipulation réelle, une phase de simulation a été effectuée sur TinkerCAD afin de vérifier la cohérence du câblage et le comportement logique du circuit.

Cette démarche permet :

- de tester le fonctionnement du programme,
- de limiter les erreurs de connexion,
- d’éviter d’endommager les composants.

##### **Objectif du premier exercice**

Le but du premier exercice était de faire clignoter deux LEDs simultanément selon un intervalle de temps défini.

Les deux LEDs doivent :

- s’allumer en même temps,
- rester allumées pendant 1 seconde,
- puis s’éteindre pendant 1 seconde,
- et répéter ce cycle en continu.

##### **Matériel utilisé**

- Carte Arduino Uno
- 2 LEDs
- 2 résistances de 220 Ω
- Breadboard
- Fils de connexion
- Logiciel Arduino IDE
- Simulateur TinkerCAD

##### **Montage du circuit**

##### ***Étape 1 – Câblage***

La borne GND de la carte Arduino est reliée à la ligne négative de la breadboard.

Pour chaque LED :

- la patte courte (cathode) est connectée à la masse (GND),
- la patte longue (anode) est reliée à une résistance de 220 Ω,
- l’autre extrémité de la résistance est connectée à la broche numérique 13.

Les résistances permettent de limiter le courant traversant les LEDs afin de protéger les composants.

[![Görüntü.jpeg](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/scaled-1680-/goruntu.jpeg)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/goruntu.jpeg)

##### ***Étape 2 – Programmation***

Le programme est structuré en deux parties :

- `setup()` : configuration initiale,
- `loop()` : exécution répétée.

Dans la fonction `setup()`, la broche 13 est configurée en sortie :

[![Ekran Resmi 2026-02-19 14.41.34.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/scaled-1680-/ekran-resmi-2026-02-19-14-41-34.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/ekran-resmi-2026-02-19-14-41-34.png)

Dans la fonction `loop()`, la LED est activée puis désactivée avec un intervalle d’une seconde :

[![Ekran Resmi 2026-02-19 14.42.03.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/scaled-1680-/ekran-resmi-2026-02-19-14-42-03.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/ekran-resmi-2026-02-19-14-42-03.png)

Le programme repose sur l’utilisation de la fonction `millis()`, qui retourne le nombre de millisecondes écoulées depuis le démarrage de la carte Arduino.

Deux temporisations indépendantes sont mises en place :

- une pour la LED 1 (2000 ms),
- une pour la LED 2 (3000 ms).

Chaque LED change d’état (ON/OFF) lorsque l’intervalle correspondant est écoulé, sans interrompre l’exécution du programme principal.

[![Ekran Resmi 2026-02-19 14.43.25.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/scaled-1680-/ekran-resmi-2026-02-19-14-43-25.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/ekran-resmi-2026-02-19-14-43-25.png)

##### **Résultat obtenu**

Les deux LEDs s’allument et s’éteignent simultanément selon un cycle régulier d’une seconde.  
Le montage fonctionne correctement et permet de comprendre le principe de base du contrôle d’une sortie numérique avec Arduino.

### **Exercice 4 : Clignotement de deux LEDs à fréquences différentes avec Arduino**

##### **Objectif**

L’objectif de cet exercice est de programmer une carte Arduino afin de faire clignoter deux LEDs de manière alternée, chacune avec un intervalle de temps défini.

Contrairement à l’exercice précédent où les LEDs fonctionnaient simultanément, ici elles doivent s’allumer à tour de rôle.

##### **Matériel utilisé**

- Carte Arduino Uno
- 2 LEDs
- 2 résistances de 220 Ω
- Breadboard
- Fils de connexion
- Logiciel Arduino IDE
- Simulateur TinkerCAD

##### **Montage du circuit**

##### ***Étape 1 – Câblage***

Le montage comprend deux LEDs reliées à deux sorties numériques différentes :

- LED 1 connectée à la broche 13
- LED 2 connectée à la broche 12

Chaque LED est montée en série avec une résistance de 220 Ω afin de limiter le courant et éviter toute détérioration.

Les cathodes des LEDs sont reliées à la masse (GND) de l’Arduino.

Ce choix de résistance est adapté à une alimentation de 5 V fournie par la carte Arduino.

[![image.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/scaled-1680-/0GUimage.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/0GUimage.png)

##### ***Étape 2 – Programmation***

Le programme commence par la déclaration des broches utilisées :

[![Ekran Resmi 2026-02-19 14.50.54.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/scaled-1680-/ekran-resmi-2026-02-19-14-50-54.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/ekran-resmi-2026-02-19-14-50-54.png)

Dans la fonction `setup()`, les deux broches sont configurées en sortie :

[![Ekran Resmi 2026-02-19 14.51.21.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/scaled-1680-/ekran-resmi-2026-02-19-14-51-21.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/ekran-resmi-2026-02-19-14-51-21.png)

Dans la boucle principale, les LEDs s’allument alternativement :

[![Ekran Resmi 2026-02-19 14.51.45.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/scaled-1680-/ekran-resmi-2026-02-19-14-51-45.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/ekran-resmi-2026-02-19-14-51-45.png)

Code utilisé :

[![Ekran Resmi 2026-02-19 14.53.08.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/scaled-1680-/ekran-resmi-2026-02-19-14-53-08.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/ekran-resmi-2026-02-19-14-53-08.png)

##### **Résultat obtenu**

Les deux LEDs clignotent de manière alternée avec un intervalle régulier d’une seconde.  
Ce montage permet de comprendre la gestion de plusieurs sorties numériques indépendantes avec Arduino.

##### **Analyse**

Cet exercice met en évidence :

- la configuration de plusieurs broches en sortie,
- le contrôle indépendant de composants,
- l’utilisation de temporisations simples via `delay()`.

Il constitue une étape intermédiaire avant l’utilisation de méthodes plus avancées comme `millis()` pour éviter les blocages du programme.

### **Exercice 5 : Capteur ultrasonique et signalisation par LEDs avec ARDUINO**

##### **Contexte**

Cette activité visait à exploiter un capteur pour contrôler des dispositifs de sortie (LEDs) en fonction des mesures obtenues. Dans le respect des méthodes de travail apprises en électronique, une phase de simulation sur TinkerCAD a été réalisée avant toute manipulation matérielle.

Cette démarche présente plusieurs avantages :

- vérifier la cohérence et la fiabilité du câblage du capteur ainsi que des LEDs ;
- analyser et corriger la logique du programme avant l’implémentation réelle ;
- limiter les risques d’erreur ou d’endommagement du matériel, notamment lorsqu’il est utilisé collectivement.

##### **Objectif**

L’objectif est d’utiliser un **capteur ultrasonique HC-SR04** pour mesurer la distance d’un objet, puis d’afficher une **signalisation visuelle** via **3 LEDs** selon des seuils de distance.  
Cet exercice permet aussi de comprendre comment on passe du **temps de propagation** de l’onde sonore à une **distance en cm**.

##### **Matériel**

- Arduino Uno
- Capteur ultrasonique **HC-SR04**
- 3 LEDs
- 3 résistances 220 Ω
- Breadboard + fils
- Arduino IDE
- (Optionnel) TinkerCAD

##### **Montage du circuit**

##### ***Étape 1 – Câblage***

**Capteur HC-SR04 :**

- VCC → **5V**
- GND → **GND**
- TRIG → **A0**
- ECHO → **A1**

**LEDs :**

- LED1 → broche **11** (avec résistance 220 Ω)
- LED2 → broche **12** (avec résistance 220 Ω)
- LED3 → broche **13** (avec résistance 220 Ω)
- Cathodes reliées au **GND**

[![image.png](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/scaled-1680-/zpKimage.png)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/zpKimage.png)

##### ***Étape 2 – Programmation***

Le programme :

1. Génère une impulsion sur la broche trigger.
2. Mesure la durée du signal reçu sur la broche echo.
3. Convertit cette durée en distance (cm).
4. Active une LED différente selon la distance mesurée :
    
    
    - Distance &gt; 100 cm → LED 1
    - 50 cm &lt; Distance ≤ 100 cm → LED 2
    - 20 cm &lt; Distance ≤ 50 cm → LED 3
5. plus l’objet est proche, plus le temps de retour est court.  
    La distance est calculée par :
6. `distance_cm = (durée_en_microsecondes × 0,0343) / 2`  
    (division par 2 car l’onde fait **aller + retour**).

<div id="bkmrk-%2F%2F-fonction-permetta"><div class="cm-editor ͼ1 ͼ2 ͼ4 ͼ1p"><div class="cm-scroller" tabindex="-1"><div aria-hidden="true" class="cm-gutters"><div class="cm-gutter cm-lineNumbers"><div class="cm-gutterElement">  
</div></div></div><div aria-multiline="true" aria-readonly="true" autocapitalize="off" autocorrect="off" class="cm-content" contenteditable="true" role="textbox" spellcheck="false" translate="no"><div class="cm-line">// Fonction permettant de mesurer la distance à l’aide d’un capteur ultrasonique</div><div class="cm-line">long readUltrasonicDistance(int triggerPin, int echoPin)</div><div class="cm-line">{</div><div class="cm-line">// Configuration de la broche trigger en sortie</div><div class="cm-line">pinMode(triggerPin, OUTPUT);</div><div class="cm-line">digitalWrite(triggerPin, LOW);</div><div class="cm-line">delayMicroseconds(2);</div><div class="cm-line">  
</div><div class="cm-line">// Envoi d’une impulsion de 10 microsecondes pour déclencher l’émission ultrasonique</div><div class="cm-line">digitalWrite(triggerPin, HIGH);</div><div class="cm-line">delayMicroseconds(10);</div><div class="cm-line">digitalWrite(triggerPin, LOW);</div><div class="cm-line">  
</div><div class="cm-line">// Configuration de la broche echo en entrée</div><div class="cm-line">pinMode(echoPin, INPUT);</div><div class="cm-line">  
</div><div class="cm-line">// Mesure du temps de retour de l’onde sonore (en microsecondes)</div><div class="cm-line">return pulseIn(echoPin, HIGH);</div><div class="cm-line">}</div><div class="cm-line">  
</div><div class="cm-line">void setup()</div><div class="cm-line">{</div><div class="cm-line">// Configuration des broches des LEDs en sortie</div><div class="cm-line">pinMode(11, OUTPUT);</div><div class="cm-line">pinMode(12, OUTPUT);</div><div class="cm-line">pinMode(13, OUTPUT);</div><div class="cm-line">}</div><div class="cm-line">  
</div><div class="cm-line">void loop()</div><div class="cm-line">{</div><div class="cm-line">// Calcul de la distance en centimètres</div><div class="cm-line">// 0.01723 correspond à la conversion du temps (µs) en distance (cm)</div><div class="cm-line">float distance = 0.01723 * readUltrasonicDistance(A0, A1);</div><div class="cm-line">  
</div><div class="cm-line">// Cas 1 : objet éloigné</div><div class="cm-line">if (distance &gt; 100) {</div><div class="cm-line">digitalWrite(11, HIGH); // LED 1 allumée</div><div class="cm-line">digitalWrite(12, LOW);</div><div class="cm-line">digitalWrite(13, LOW);</div><div class="cm-line">}</div><div class="cm-line">  
</div><div class="cm-line">// Cas 2 : distance intermédiaire</div><div class="cm-line">if (distance &gt; 50 &amp;&amp; distance &lt;= 100) {</div><div class="cm-line">digitalWrite(12, HIGH); // LED 2 allumée</div><div class="cm-line">digitalWrite(11, LOW);</div><div class="cm-line">digitalWrite(13, LOW);</div><div class="cm-line">}</div><div class="cm-line">  
</div><div class="cm-line">// Cas 3 : objet proche</div><div class="cm-line">if (distance &gt; 20 &amp;&amp; distance &lt;= 50) {</div><div class="cm-line">digitalWrite(13, HIGH); // LED 3 allumée</div><div class="cm-line">digitalWrite(11, LOW);</div><div class="cm-line">digitalWrite(12, LOW);</div><div class="cm-line">}</div><div class="cm-line">  
</div><div class="cm-line">// Petite pause pour améliorer la stabilité de la simulation</div><div class="cm-line">delay(10);</div><div class="cm-line">}</div></div><div aria-hidden="true" class="cm-layer cm-layer-above cm-cursorLayer">  
</div><div aria-hidden="true" class="cm-layer cm-selectionLayer">  
</div></div></div></div>Résultats :

[![IMG_0271.jpeg](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/scaled-1680-/img-0271.jpeg)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/img-0271.jpeg)

[![IMG_0279.jpeg](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/scaled-1680-/img-0279.jpeg)](https://wiki.fablab.sorbonne-universite.fr/BookStack/uploads/images/gallery/2026-02/img-0279.jpeg)

##### **Analyse**

Le capteur ultrasonique HC-SR04 mesure la distance en envoyant une onde sonore et en calculant le temps nécessaire à son retour après réflexion sur un obstacle. Cette durée est convertie en distance grâce à la vitesse du son, en tenant compte du trajet aller-retour.

Le programme utilise des conditions (`if`) pour allumer une LED différente selon la distance mesurée. La simulation sur TinkerCAD a permis de vérifier le bon fonctionnement du câblage et de la logique avant la réalisation réelle.

##### **Résultats obtenus**

Le système a fonctionné correctement : les LEDs s’allument selon les seuils de distance définis dans le programme. Plus l’objet se rapproche, plus la LED correspondante change, ce qui permet une signalisation visuelle claire et cohérente de la distance mesurée.