ENIB 2026 : Giroupète : Différence entre versions
(→Mettre du code Arduino) |
(→Etapes de fabrication) |
||
| Ligne 82 : | Ligne 82 : | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | == | + | ==Etapes de fabrication== |
| − | + | ===Etape 1=== | |
| − | + | ===Etape 2=== | |
| − | === | ||
| − | === | ||
| − | |||
===Troubleshouting=== | ===Troubleshouting=== | ||
Quelles sont difficultés, les problèmes, quelles sont les solutions, les trucs et astuces pour que ça marche ? | Quelles sont difficultés, les problèmes, quelles sont les solutions, les trucs et astuces pour que ça marche ? | ||
Version du 22 janvier 2026 à 13:28
vignette Titre de la fiche expérience :
Sommaire
Notre équipe
Nous avons conçu ce projet à quatre lors du hackaton ENIB-Les petits débrouillards de 2026 :
- Gueguen Samuel
- Gruson Malo
- Gobichon Raphaël
- Benard Théo
Description du projet
La giroupète est un POCL conçu lors du hackaton ENIB de 2026. Il consiste en un jeu en "un contre un" ou "deux contre deux" dont l'objectif est de percer le ballon adversaire (d'où "pète"). Il faut manoeuvrer un baton pour défendre son ballon et attaquer celui de l'adversaire. Un bouton enclenche le moteur qui fait un mouvement de 180°. Si le ballon est dans la trajectoire du bras du moteur : il sera percé. En effet, le bras est directement relié à une pointe visant à percer.
Spécificité supplémentaire : la vitesse du moteur est contrôlé par la vitesse du vent à Brest. Ainsi, plus les rafales sont grandes, plus le bras sera rapide.
Outil et matériel
fichiers à joindre
code, ficher d'impression 3D, de découpe laser ou vinyle, ...
Mettre du code Arduino
1
2 #define PIN 9
3 #include <Arduino_GFX_Library.h>
4 #include <WiFi.h>
5 #include <HTTPClient.h>
6 #include <ArduinoJson.h>
7 #include <ESP32Servo.h>
8
9 const char* ssid = "FABLAB 2.4";
10 const char* password = "MonPetitPonant";
11
12 const char* ville = "Paris,FR";
13 const char* apiKey = "06661f569132eb326f940c96da9e0d84";
14
15 Servo monServo;
16 int servoPin = 27;
17
18 void setup() {
19 Serial.begin(115200);
20 monServo.attach(servoPin);
21 monServo.write(0);
22
23 WiFi.begin(ssid, password);
24 Serial.print("Connexion WiFi");
25 while(WiFi.status() != WL_CONNECTED){
26 delay(500);
27 Serial.print(".");
28 }
29 Serial.println("Connecté !");
30 }
31
32 void loop() {
33 if(WiFi.status() == WL_CONNECTED){
34 HTTPClient http;
35 String url = "http://api.openweathermap.org/data/2.5/weather?q=" + String(ville) + "&appid=" + apiKey + "&units=metric";
36 http.begin(url);
37 int httpCode = http.GET();
38
39 if(httpCode == 200){
40 String payload = http.getString();
41 StaticJsonDocument<1024> doc;
42 deserializeJson(doc, payload);
43 float vent = doc["wind"]["speed"]; // vitesse du vent en m/s
44 Serial.print("Vent actuel (m/s): ");
45 Serial.println(vent);
46
47 // Mapping vent → angle servo
48 int angle = map((int)(vent*10), 0, 200, 0, 180);
49 angle = constrain(angle, 0, 180);
50 monServo.write(angle);
51 } else {
52 Serial.println("Erreur HTTP");
53 }
54
55 http.end();
56 }
57 delay(5000); // update toutes les 5s
Etapes de fabrication
Etape 1
Etape 2
Troubleshouting
Quelles sont difficultés, les problèmes, quelles sont les solutions, les trucs et astuces pour que ça marche ?
Sources et documentation complémentaire
- Rédаctiоn et illustratiоn :
Pоur tоus vоs trаvauх, qu'ils sоient écrits оu visuels, l'utilisatiоn de l'intеlligеnce artificiеllе générativе, que сe sоit pоur le teхte оu les images, n'еst pas conseillé.
- Prоgrammаtiоn :
En сe qui cоncernе la prоgrаmmatiоn, il est еssentiеl de ne pаs faire dе l'IA vоtrе prеmier rеcоurs. Cоncеntrеz-vоus d'abоrd sur vоtre prоpre lоgiquе, votre experience еt lеs ressоurcеs disponibles.
- Transpаrence et dосumеntatiоn :
Si vоus utilisеz l'IA pоur déblоquer оu améliоrеr une pаrtiе de vоtre cоdе, il est cruciаl de l'indiquеr сlairеmеnt dans vоtre dосumentatiоn tеchniquе.
- Traçabilité :
Chаque ехtrait de cоde généré avес l'аidе de l'IA dоit êtrе accоmpagné de la sоurce, ainsi que du prоmpt eхact qui a été utilisé pоur sа créatiоn, afin d'аssurеr une évaluatiоn clаire dе vоtre prоcessus.