MainQuiPointeDroite.png Bonne année 2025 ! Meilleursvoeux.gif

ENIB 2025 : HOU-à-LYE

De Les Fabriques du Ponant
Aller à : navigation, rechercher

Titre de la fiche expérience :

description (résumé)

Notre équipe est constituée de Tom, Hugo et Joana.

Dans le cadre du Hackaton nous avons, à partir des éléments du projet PaperToy, créé notre projet : HOU-à-LYE. Notre prototype est un robot fortement inspiré du personnage Pixar Wall-e. Ce prototype a la tête en rotation avec des détecteurs à la place des yeux. Lorsque les yeux détectent un obstacle à une certaine distance (moins d'un mètre), le robot se fige et émet un bruit pour indiquer à son utilisateur qu'un obstacle est présent devant lui (HOU-à-LYE est un robot qui a besoin d'espace pour sa survie).

Houalye.jpg

introduction

Dans le cadre de notre projet, nous voulions ajouter diverses options supplémentaires à celui du PaperToy telles que le son et la détection. Nous avons également gardé la forme de "robot" pour simplifier notre démarche en améliorant simplement le prototype existant et en le personnalisant comme il nous semblait pertinent de le faire. En "bidouillant" avec ce que nous voulions et ce que nous avions déjà, nous avons convenu que la forme du robot type Wall-e était adapté à ce aque nous souhaitions faire de notre projet, c'est pour cela que nous avons donc continué sur cette voie.

outils et matériaux

Nous avons commencé par le kit du prototype PaperToy composé de :

  • 1 servomoteur
  • 2 leds blanches
  • 1 carte Weemos D1 mini
  • 1 câble micro-USB
  • 1 breadbord
  • 1 batterie (source d'énergie)

Puis nous avons ajouté diverses options qui impliquait les matériaux suivants :

  • 2 haut-parleurs
  • 1 capteur de distance (détecteur)
  • des câbles Dupont
  • du carton
  • 1 breadbord supplémentaire
  • 1 tube transparent (concentrer les fils ensemble au sein du robot)

Nous avons également besoin d'outils pour mener à bien le projet :

  • pistolet à colle (formation du robot en carton)
  • fer à souder
  • scotch
  • ciseaux

fichiers joints

code Arduino et patron du découpage carton pour la formation du robot

 1 #include <Servo.h>
 2 
 3 #define PIN_SERVO_2  D4
 4 
 5 int a = 180;
 6 int b = -1;
 7 int t = 50;
 8 const int trigPin = D7;  // Broche Trig du capteur
 9 const int echoPin = D8;  // Broche Echo du capteur
10 const int son = D0;      // Broche + du haut-parleur
11 
12 
13 Servo myservo_2;
14 
15 void setup() {
16 
17   // Communication série pour afficher les données
18   Serial.begin(9600);
19 
20   // Initialisation des broches
21   pinMode(trigPin, OUTPUT);
22   pinMode(echoPin, INPUT);
23   pinMode(son, OUTPUT);
24   pinMode(D3, OUTPUT);
25   pinMode(D2, OUTPUT);
26   myservo_2.attach(PIN_SERVO_2);
27   
28 }
29 
30 void loop() {
31 
32   //Vérifier que tout est bien éteint 
33   digitalWrite(D3, LOW);
34   digitalWrite(D2, LOW);
35   digitalWrite(son, LOW);
36 
37   // Générer une impulsion sur Trig
38   digitalWrite(trigPin, LOW);
39   delayMicroseconds(2);
40   digitalWrite(trigPin, HIGH);
41   delayMicroseconds(10);
42   digitalWrite(trigPin, LOW);
43  
44   // Lire la durée de l'impulsion sur Echo
45   long duration = pulseIn(echoPin, HIGH);
46 
47   // Calcul de la distance (durée en microsecondes -> distance en cm)
48   float distance = duration * 0.034 / 2; // Vitesse du son : 340 m/s
49 
50 
51   // Sécurisation en cas de valeurs aberrantes 
52   if (duration == 0) {
53     distance = 1001;
54   }
55 
56 
57   // Afficher la distance dans le moniteur série
58   Serial.print("Distance: ");
59   Serial.print(distance);
60   Serial.println(" cm");
61 
62   // Petite pause pour pas surmener la carte
63   delay(50);
64 
65   // vérification de la distance
66   if (distance <= 100){
67     digitalWrite(D3, HIGH);
68     digitalWrite(D2, HIGH);
69     while (t >= 0){
70       digitalWrite(son, HIGH);
71       delay(2);
72       digitalWrite(son, LOW);
73       delay(2);
74       t = t - 1;
75     }
76     t = 50; 
77   }
78   
79   //Mouvement d'aller retours de la tête 
80   else {
81     if (a <= 0) {
82       b = 1;
83       a = 0; // Sécurisation
84       }   
85       else if (a >= 180) {
86         b = -1;
87         a = 180; // Sécurisation
88       }
89 
90     myservo_2.write(a);
91     a = a + b*10;
92 
93   }
94 
95 }

Patrons pour réaliser le corps, la tête et les chenilles du robot

Patroncorps.JPG Patrontete.JPG Patronpattes.JPG

Pour résumer les longueurs, le corps est composé de 6 carrés chacun de 10cm de côté. La tête est composée de 4 rectangles mesurant 7.6cm X 4.5cm, elle a également 2 carrés de 4.5cm de côté et 2 trous de 1.6cm de diamètre pour effectuer les yeux où passera le capteur. Les chenilles quant à elles sont 2 bandes de 24cm de long et 5cm de large, pour le pliage de celles-ci on prend 7cm/7cm/7cm/3cm sur le long de la bande déjà découpée, puis on colle les bandes ensembles.

Attention à ne pas oublier les ailettes sur certaine bordure pour pouvoir coller le tout ensemble à la fin.

étapes de fabrication

Voici ci-dessous les différentes étapes qui nous ont permis de bien mener notre projet jusqu'au bout

étape 1 : prise en main du prototype initial

Dans un premier temps, nous avons décidé de monter partiellement le prototype de PaperToy (c'est-à-dire uniquement la partie électrique) afin de comprendre les différents composants dont il était formé, le code fournis et de se les approprier. Nous avons regardé les différentes documentations, câblé et utilisé le code déjà existant puis nous avons observé ce qu'il se passait. Il nous faut également utiliser le tuto nous permettant de connecter la carte Weemos sur le logiciel Arduino donné dans le wiki du prototype PaperToy.

étape 2 : recherche de développement

A partir de nos observations, on ajoute différents composants.

Nous commençons par ajouter un capteur de distance que nous câblons à la carte Weemos et modifions le code afin que le capteur de distance puisse récupérer des valeurs pendant que la tête tourne sur elle même. Suite à ça, nous voulons avoir des indicateurs pour savoir quand notre robot détectera quelque chose. Nous ajoutons alors 2 haut-parleurs et réutilisons les 2 leds blanches.

Étape2.jpg

étape 3 : circuit électronique

Pour que le montage cité à l'étape 2 soit fonctionnel et réagisse comme nous le souhaitons, il faut câbler les différents composants comme indiqué sur l'image ci-dessous. Des informations supplémentaire sur ce câblage est donné dans la rubrique des ressources additionnelles un peu plus bas sur cette page.

Schemajo.png

étape 4 : développement du code

Utiliser le code indiqué dans la rubrique associée ci-dessus pour l'envoyer dans la carte Weemos et avoir les fonctionnalités qu'il faut pour que le prototype soit réalisable.

Codejo.jpg

étape 5 : fabrication du patron

Avec les patrons donnés dans une rubrique ci-dessus, il faut découper sans oublier les ailettes qui seront utiles lors du pliage.

En suivant correctement les lignes, on peut obtenir le prototype tel que réalisé auparavant.

Penser à faire ls trous pour passer le câble de batterie dans le dos ainsi que celui au-dessus pour passer le servomoteur et connecter la tête qui sera coller à celui-ci.

Attention à ne pas se couper !

étape 6 : test du code et montage du ROBOT !!!

Une fois que le circuit électronique est réalisé, téléversez le code dans le robot et assurez vous de son fonctionnement. Lorsque les patrons seront découpés, il va falloir se mettre à l'ouvrage afin de construire votre propre HOU-à-LYE. Pour cela il est important de faire attention et de prendre son temps, vous allez devoir effectuer des trous au niveau du cou, comme cela il pourra tourner la tête ahah ! ensuite il faut précautionneusement accrocher le servomoteur au niveau du cou, les haut parleurs sur les bords du corps et le capteur dans la tête. vous pourrez ensuite refermer votre robot en collant les languettes puis coller les chenilles sur le corps toujours grâce aux languettes (comme ça il pourra se déplacer sur TOUTE la terre)...

Libre à vous de le customiser ensuite, couleurs, boutons, bras, antennes, oreilles FAITES DE VOTRE IMAGINATION UN MOTEUR DE CREATION !!!

Étapemontage.jpg

étape 7 : réalisation du wiki et du support de communication

Pour le support de communication, nous choisissons de faire cela sous forme d'affiche de film pour rendre hommage à notre inspiration première. C'est pourquoi il nous semble plus judicieux d'utiliser ce format. Pour l'adapter à notre projet, nous décidons de superposer une image de notre prototype sur celle de l'affiche de base. Cela sera effectué lorsque le design de notre prototype sera terminé entièrement. Concernant le wiki, nous l'alimentons au fur et à mesure que nous finalisons ou modifions certaines étapes du montage de notre prototype.

Étapeinternet.jpg

Troubleshouting

Nous avons eu un problème avec le premier servomoteur utilisé, celui-ci ne s'arrêter pas de tourner ce qui indique qu'il n'était plus utilisable car cassé intérieurement, nous avons alors changé de servomoteur.

Le haut-parleur a également eu des problèmes, il émettait des sons parasites. C'est pourquoi nous avons du changer de haut-parleur.

Sources et documentation complémentaire

Schéma de câblage de la carte Weemos D1 mini.

ne pas oublier que la broche signal sur le capteur hrc est normalement doublé, sur les broches d8 et d7.

Fichier:Schemadetail.pdf Details.png

Elément de présentation

Nous avons choisi de faire notre élément de présentation sous forme d'affiche cinématographique pour rendre hommage au célèbre Pixar : Wall-e.

ENIB PRODUCTION.png

ne pas modifier sous cette ligne