Projet final prototypage Louly Chloé Eloïse
🎯 Définition du projet
Nom du projet : Une mise en avant originale pour Louly.gurumi - Peluche mobile crochetée sur robot télécommandé
Objectif : Créer une plateforme robotique télécommandée sur laquelle on pose un animal crocheté à la main, comme une mascotte mobile. L’idée est de donner vie aux créations en crochet en les posant sur une base motorisée que l'on peut diriger à distance.
👥 Besoin & utilisateurs
Utilisateurs visés :
-
Créateurs et créatrices de crochet
-
Enfants (objet ludique)
-
Grand public (objets décoratifs vivants)
-
Ateliers pédagogiques autour de l’électronique + artisanat
Besoins identifiés :
-
Mettre en mouvement une peluche crochetée sans câblage visible
-
Base discrète et mobile
-
Plateforme réutilisable avec différents personnages
⚙️ Fonctionnalités
Fonction principale
-
Plateforme roulante contrôlée par un code arduino
Fonctionnalités secondaires
- Rembourrage de l'animal crocheté par impression 3D (dôme)
-
Plateforme stable pour fixation de l'animal en crochet par découpe laser (capôt qui recouvre l'arduino)
-
Logo (louly.gurumi + Fablab) gravés par découpe laser
- Siège et volant pour décorer la voiture
🔍 Veille & inspirations
-
Châssis Magician DG007 utilisé dans l’enseignement Arduino
-
Projets similaires de robots décorés (sumo bots, robots mascottes)
-
Personnalisation (dôme, texture, couleur, taille)
📄 Lean Canvas
🧰 Choix techniques
Élément | Détail |
---|---|
Structure mobile | Châssis DG007 (2 roues motrices + une roue pour le support) |
Électronique | Arduino Uno + shield moteur |
Contrôle | Une fois le code arduino téléversé, la voiture est auto-pilotée grâce à la batterie. |
Alimentation | Batterie Duracell Plus (9V) |
Support supérieur | Planche découpée au laser (MDF 3 mm) |
Impressions 3D |
|
Décorations | Logo “Louly.gurumi” gravé à l'avant du capot, logo du Fablab à l'arrière |
📅 Gestion de projet
MVP (Minimum Viable Product)
-
Robot motorisé pilotable à distance
-
Dôme supportant un animal crocheté
Planning
Nous avons commencé le projet par plusieurs sessions de brainstorming pour mettre en commun nos idées et nos centres d’intérêt. C’est à ce moment-là que Louly nous a rappelé que son passe temps favoris est le crochet. Elle fabrique des animaux crochetés qu'elle propose à la vente. L'idée de notre projet est donc née : une voiture robotisée supportant une peluche crochetée by louly.gurumi !
Le projet a été validé par notre enseignant le lundi 31 mars. Ce même jour, nous avons directement commencé à concevoir le design du robot et de sa structure. Nous avons fait des croquis à la main, imaginé la forme du capot, le support pour la peluche, et commencé le montage du châssis. En parallèle, nous avons démarré la programmation sur Arduino.
Ensuite (toujours le 31 mars) nous avons modélisé un premier dôme sur Tinkercad et l’avons exporté vers IdeaMaker pour l’impression 3D. En même temps, nous avons aussi conçu la première version du capot sur Inkscape, que nous avons testée en découpe laser.
Le mardi 1er avril, nous sommes allés au FabLab pour récupérer l’impression 3D du dôme. Puis Louly a commencé à créer l’animal crocheté autour du dôme, en respectant ses dimensions. Ce même jour, nous avons poursuivi la modélisation 3D pour ajouter des éléments comme un volant et un petit siège pour rendre le support plus vivant.
Le mercredi 2 avril, nous avons fait une deuxième découpe laser du capot, après avoir revu sa forme pour l’adapter aux dimensions de la planche avec l'arduino posé sur le dessus. Nous avons aussi extrait les fichiers du siège et du volant depuis Tinkercad vers IdeaMaker pour les imprimer.
Le jeudi 3 avril, nous avons assemblé toutes les pièces : le capot, le pingouin avec le dôme. Puis, nous avons fait les premiers tests complets du prototype. Nous avons ensuite lancé l'impression du siège et du dôme mais n'avons pas pu la terminer.
Finalement, le 28 avril, nous avons ajusté nos différents éléments comme suit :
- Impression 3D : n'ayant pas terminé l'impression le 3 avril, nous l'avons relancée le 28. Nous avons ensuite récupéré les pièces et les avons attachée à notre capot.
- Découpe laser : Nous avons dû redécouper notre capot en augmentant la longueur. En effet, lors de nos premiers tests, le capot était trop petit et touchait donc les roues, ce qui modifiait leur trajectoire. Nous avons donc augmenté les dimensions du rectangle de base de 0,5cm.
- Code arduino : Lors de nos premiers tests, nous avons réussi à contrôler les moteurs pour faire avancer le chassis tout droit, à l'endroit et à l'envers. Néanmoins, nous voulions une trajectoire plus évoluée, nous avons donc décidé de faire faire à la voiture un carré, à l'endroit et à l'envers. (Cf code ci-dessous)
Enfin, nous nous sommes consacrées à la finalisation de la documentation et à la prise de photos pour illustrer le rendu final sur le wiki.
✏️ Design initial
-
Design attendu du robot + capot + peluche crochetée
Image du prototype générée par ChatGPT
-
Schéma du câblage Arduino + shield moteur
- Modélisation 3D du dome sur TINKERCAD
- Extraction du dome sur IDEAMAKER et paramètres d'impression
Hauteur de couche : 0,3mm
Impression intérieur : initiale --> Gyroïde vs finale --> Grille pour optimiser le temps d'impression
Densité de remplissage : 5% (faible car pas nécessaire comme on a fait un trou directement sur modélisation tikercad)
- Slice du dôme sur IDEAMAKER
🧾 Matériel utilisé
Élément | Quantité | Remarque |
---|---|---|
Arduino Uno | 1 | Contrôle général |
Shield moteur (DFRobot / L298P) | 1 | Contrôle des moteurs |
Chassis DG007 | 1 | Plateforme roulante |
Moteurs DC | 2 | Déjà montés |
Roue folle | 1 | Stabilisation |
Batterie (9V) | 1 | Alimentation mobile |
MDF 3 mm | 1 | Découpe laser (180x120 mm) |
PLA | - | Impression 3D |
Animal crocheté | 1 | Pingouin personnalisé |
💻 Code Arduino
const int E1 = 3; ///<Motor1 Speed
const int E2 = 11;///<Motor2 Speed
const int M1 = 4; ///<Motor1 Direction
const int M2 = 12;///<Motor2 Direction
void M1_advance(char Speed) ///<Motor1 Advance
{
digitalWrite(M1,LOW);
analogWrite(E1,Speed);
}
void M2_advance(char Speed) ///<Motor2 Advance
{
digitalWrite(M2,HIGH);
analogWrite(E2,Speed);
}
void M1_back(char Speed) ///<Motor1 Back off
{
digitalWrite(M1,HIGH);
analogWrite(E1,Speed);
}
void M2_back(char Speed) ///<Motor2 Back off
{
digitalWrite(M2,LOW);
analogWrite(E2,Speed);
}
void M1_stop() {
analogWrite(E1, 0);
}
void M2_stop() {
analogWrite(E2, 0);
}
void setup() {
for(int i=3;i<9;i++)
pinMode(i,OUTPUT);
for(int i=11;i<13;i++)
pinMode(i,OUTPUT);
delay(10000); // Pause de 3 secondes pour préparer les branchements
}
void loop() {
// Faire le carré à l'endroit
// 1er côté : Avancer tout droit
M1_advance(100); // Moteur gauche
M2_advance(100); // Moteur droit
delay(2000); // Temps pour avancer le premier côté
// Tourner à droite (90°)
M1_advance(100); // Moteur gauche rapide
M2_advance(10); // Moteur droit lent pour tourner à droite
delay(500); // Temps de virage (ajuste si nécessaire)
// 2ème côté : Avancer tout droit
M1_advance(100); // Moteur gauche
M2_advance(100); // Moteur droit
delay(2000); // Temps pour avancer le deuxième côté
// Tourner à droite (90°)
M1_advance(100); // Moteur gauche rapide
M2_advance(10); // Moteur droit lent pour tourner à droite
delay(500); // Temps de virage
// 3ème côté : Avancer tout droit
M1_advance(100); // Moteur gauche
M2_advance(100); // Moteur droit
delay(2000); // Temps pour avancer le troisième côté
// Tourner à droite (90°)
M1_advance(100); // Moteur gauche rapide
M2_advance(10); // Moteur droit lent pour tourner à droite
delay(500); // Temps de virage
// 4ème côté : Avancer tout droit
M1_advance(100); // Moteur gauche
M2_advance(100); // Moteur droit
delay(2000); // Temps pour avancer le quatrième côté
// Retourner en arrière pour faire le carré à l'envers (à reculons)
// 1er côté en arrière : Reculer tout droit
M1_back(100); // Moteur gauche
M2_back(100); // Moteur droit
delay(2000); // Temps pour reculer le premier côté
// Tourner à gauche (90°) pour revenir à l'envers
M1_advance(10); // Moteur gauche lent
M2_advance(100); // Moteur droit rapide
delay(350); // Temps de virage pour tourner à gauche
// 2ème côté en arrière : Reculer tout droit
M1_back(100); // Moteur gauche
M2_back(100); // Moteur droit
delay(2000); // Temps pour reculer le deuxième côté
// Tourner à gauche (90°) pour revenir à l'envers
M1_advance(10); // Moteur gauche lent
M2_advance(100); // Moteur droit rapide
delay(350); // Temps de virage
// 3ème côté en arrière : Reculer tout droit
M1_back(100); // Moteur gauche
M2_back(100); // Moteur droit
delay(2000); // Temps pour reculer le troisième côté
// Tourner à gauche (90°) pour revenir à l'envers
M1_advance(10); // Moteur gauche lent
M2_advance(100); // Moteur droit rapide
delay(350); // Temps de virage
// 4ème côté en arrière : Reculer tout droit
M1_back(100); // Moteur gauche
M2_back(100); // Moteur droit
delay(2000); // Temps pour reculer le quatrième côté
// Stopper les moteurs
M1_stop();
M2_stop();
// Recommencer à partir du début pour refaire le carré
delay(5000); // Pause avant de recommencer
}
✅ Tests, essais & ajustements
Tests & ajustements de la partie impression 3D et découpe laser :
-
Test d’adhérence du châssis + poids peluche
-
Ajustement forme du dôme pour stabiliser la peluche
Tests & ajustements de la partie code Arduino :
- Test moteurs : avec code minimal
- Test moteurs avec une trajectoire simple
- Ajustements de la trajectoire, pour qu'elle forme un carré, et ajustement des angles pour que ce soit bien des angles droits.
Pour toute la partie code, nous avons mis 1 jour pour faire fonctionner les moteurs sans l'alimentation par le câble USB.
Le problème résidait dans le fait qu'il n'y avait pas de connexion directe entre le shield et l'Arduino. Nous avons donc dû les relier manuellement avec des câbles pour que la voiture fonctionne à distance !
📦 Réalisation physique
-
Montage Arduino + shield + châssis
-
Impression du dôme (Tinkercad → IdeaMaker)
-
Découpe laser du capot avec dents pour imbrication
-
Gravure logo “Louly.gurumi” sur la plaque
-
Crochetage de l'animal sur le dôme
-
Pose de la peluche sur le capot
📸 Photos à intégrer
-
Montage du châssis
- Impression du capot
-
Gravure laser
- Confection de l'animal crocheté autour du dôme
🔁 Pistes d’amélioration
-
Ajouter capteurs (obstacle, lumière)
- Ajout de sons / effets lumineux
-
Rendre le robot autonome (suivi ligne ou parcours prédéfini)
-
Contrôle via bluetooth ou appli mobile
-
Batterie rechargeable + interrupteur ON/OFF
📚 Sources & inspirations
-
DFRobot Wiki (moteur shield) Tinkercad pour modélisation du dôme
-
Inkscape pour la gravure laser
-
Tutoriels IRremote Arduino
-
Documentation du FabLab Sorbonne
- https://github.com/DFRobot/pxt-motor et https://wiki.dfrobot.com/Quad_Motor_Driver_Shield_for_Arduino_SKU_DRI0039 pour le contrôle des moteurs du chassis