Ligne 267 : | Ligne 267 : | ||
// Si la réponse est positive, on affiche le code HTTP. | // Si la réponse est positive, on affiche le code HTTP. | ||
− | if (httpCode == HTTP_CODE_OK | + | if (httpCode == HTTP_CODE_OK |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
}} | }} | ||
{{Tuto Step | {{Tuto Step | ||
Ligne 385 : | Ligne 276 : | ||
|Step_Title=Création de la maquette | |Step_Title=Création de la maquette | ||
|Step_Content=Les designers ont crées des maquettes avec plusieurs logiciel afin de pouvoir visualiser notre projet. | |Step_Content=Les designers ont crées des maquettes avec plusieurs logiciel afin de pouvoir visualiser notre projet. | ||
+ | |Step_Picture_00=Hackhathon_Trashtalk_image_67237633.JPG | ||
+ | |Step_Picture_01=Hackhathon_Trashtalk_image_67204097.JPG | ||
+ | |Step_Picture_02=Hackhathon_Trashtalk_IMG_1276.jpg | ||
+ | |Step_Picture_03=Hackhathon_Trashtalk_IMG_1278.jpg | ||
+ | |Step_Picture_04=Hackhathon_Trashtalk_IMG_1291.jpg | ||
}} | }} | ||
{{Notes | {{Notes |
Auteur Lucile Royer | Dernière modification 11/10/2024 par Lroyer001
Pas encore d'image
Informatique, poubelle, tri sélectif, données numériques, open data
En fonctionnement moteur, l'énergie électrique est transformée en énergie mécanique.En fonctionnement générateur, l'énergie mécanique est transformée en énergie électrique (elle peut se comporter comme un frein). Dans ce cas elle est aussi appelée dynamo.
Trois types de haut-parleurs, électrodynamique, électrostatique et piézoélectrique, représentent les technologies actuelles les plus courantes. Le haut-parleur électrodynamique, couvrant environ 99 % du marché, a encore un fonctionnement relativement simple pour une technologie de masse.
Le 10 décembre 1877, le premier brevet concernant un haut-parleur à bobine mobile fut accordé à Werner von Siemens. Le haut-parleur remplit une gamme très variée d'applications : on trouve des haut-parleurs aussi bien dans des cartes de vœux que reliés à des amplificateurs de puissance pour concert.Dans cette première étape, nous avions plusieurs jeux de données à analyser pour notre projet. Après avoir étudié différentes options, nous avons décidé de nous concentrer sur les données en relation avec la collecte des déchets de Bordeaux. Nous l'avons trouver sur le site de l'open data university et la ville de Bordeaux.
Pour l'étape deux, nous avons effectué un nettoyage des données sélectionnées, en retirant les informations incomplètes, erronées ou inutiles à notre projet, afin de garantir la fiabilité des données utilisées pour notre projet. Une fois les données prêtes, nous avons défini la fonction de notre objet et ses spécificités notamment la synchronisation avec les jours de collecte, le système lumineux et le haut-parleur. Cette étape nous permet de poser les bases de notre projet pour ensuite pouvoir le construire.
RépondreTransférer |
Pour l’étape trois, nous avons travaillé sur la réalisation des plans de coupe de la poubelle en carton de bois, en prenant en compte le design et les contraintes techniques. Nous avons travailler sur le système à intégrer, qui comprend : une carte mère pour intégrer le code, une carte SD pour stocker les données de collecte, un haut-parleur pour les rappels sonores, des LED pour indiquer les types de déchets, ainsi que les câbles et connexions. Cette étape nous as permis d'assembler les composants physiques et électroniques pour faire le premier prototype de la trashtalk.
Nous avons ensuite procédé au code le voici en parti :
/**
BasicHTTPSClient.ino
Created on: 14.10.2018
*/
// Programme pour effectuer une requête HTTPS via Wi-Fi depuis un microcontrôleur Arduino.
#include <Arduino.h>
#include <WiFi.h>
#include <WiFiMulti.h>
#include <HTTPClient.h>
#include <WiFiClientSecure.h>
#include <ESP32Servo.h>
#include <ArduinoJson.h>
#define PIN_SG90 22 // Broche de sortie utilisée
// Inclusion des bibliothèques nécessaires pour la gestion du Wi-Fi, des requêtes HTTP et de la connexion sécurisée.
Servo sg90;
bool motorActivated = false;
// Stockage du certificat SSL racine (CA) pour vérifier la validité du serveur. Ici, il s'agit du certificat utilisé par Gandi pour le serveur "https://jigsaw.w3.org".
const char* rootCACertificate = \
"-----BEGIN CERTIFICATE-----\n" \
"MIIF3jCCA8agAwIBAgIQAf1tMPyjylGoG7xkDjUDLTANBgkqhkiG9w0BAQwFADCB\n" \
"iDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0pl\n" \
"cnNleSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNV\n" \
"BAMTJVVTRVJUcnVzdCBSU0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTAw\n" \
"MjAxMDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBiDELMAkGA1UEBhMCVVMxEzARBgNV\n" \
"BAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYDVQQKExVU\n" \
"aGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBSU0EgQ2Vy\n" \
"dGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK\n" \
"AoICAQCAEmUXNg7D2wiz0KxXDXbtzSfTTK1Qg2HiqiBNCS1kCdzOiZ/MPans9s/B\n" \
"3PHTsdZ7NygRK0faOca8Ohm0X6a9fZ2jY0K2dvKpOyuR+OJv0OwWIJAJPuLodMkY\n" \
"tJHUYmTbf6MG8YgYapAiPLz+E/CHFHv25B+O1ORRxhFnRghRy4YUVD+8M/5+bJz/\n" \
"Fp0YvVGONaanZshyZ9shZrHUm3gDwFA66Mzw3LyeTP6vBZY1H1dat//O+T23LLb2\n" \
"VN3I5xI6Ta5MirdcmrS3ID3KfyI0rn47aGYBROcBTkZTmzNg95S+UzeQc0PzMsNT\n" \
"79uq/nROacdrjGCT3sTHDN/hMq7MkztReJVni+49Vv4M0GkPGw/zJSZrM233bkf6\n" \
"c0Plfg6lZrEpfDKEY1WJxA3Bk1QwGROs0303p+tdOmw1XNtB1xLaqUkL39iAigmT\n" \
"Yo61Zs8liM2EuLE/pDkP2QKe6xJMlXzzawWpXhaDzLhn4ugTncxbgtNMs+1b/97l\n" \
"c6wjOy0AvzVVdAlJ2ElYGn+SNuZRkg7zJn0cTRe8yexDJtC/QV9AqURE9JnnV4ee\n" \
"UB9XVKg+/XRjL7FQZQnmWEIuQxpMtPAlR1n6BB6T1CZGSlCBst6+eLf8ZxXhyVeE\n" \
"Hg9j1uliutZfVS7qXMYoCAQlObgOK6nyTJccBz8NUvXt7y+CDwIDAQABo0IwQDAd\n" \
"BgNVHQ4EFgQUU3m/WqorSs9UgOHYm8Cd8rIDZsswDgYDVR0PAQH/BAQDAgEGMA8G\n" \
"A1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEMBQADggIBAFzUfA3P9wF9QZllDHPF\n" \
"Up/L+M+ZBn8b2kMVn54CVVeWFPFSPCeHlCjtHzoBN6J2/FNQwISbxmtOuowhT6KO\n" \
"VWKR82kV2LyI48SqC/3vqOlLVSoGIG1VeCkZ7l8wXEskEVX/JJpuXior7gtNn3/3\n" \
"ATiUFJVDBwn7YKnuHKsSjKCaXqeYalltiz8I+8jRRa8YFWSQEg9zKC7F4iRO/Fjs\n" \
"8PRF/iKz6y+O0tlFYQXBl2+odnKPi4w2r78NBc5xjeambx9spnFixdjQg3IM8WcR\n" \
"iQycE0xyNN+81XHfqnHd4blsjDwSXWXavVcStkNr/+XeTWYRUc+ZruwXtuhxkYze\n" \
"Sf7dNXGiFSeUHM9h4ya7b6NnJSFd5t0dCy5oGzuCr+yDZ4XUmFF0sbmZgIn/f3gZ\n" \
"XHlKYC6SQK5MNyosycdiyA5d9zZbyuAlJQG03RoHnHcAP9Dc1ew91Pq7P8yF1m9/\n" \
"qS3fuQL39ZeatTXaw2ewh0qpKJ4jjv9cJ2vhsE/zB+4ALtRZh8tSQZXq9EfX7mRB\n" \
"VXyNWQKV3WKdwrnuWih0hKWbt5DHDAff9Yk2dDLWKMGwsAvgnEzDHNb842m1R0aB\n" \
"L6KCq9NjRHDEjf8tM7qtj3u1cIiuPhnPQCjY/MiQu12ZIvVS5ljFH4gxQ+6IHdfG\n" \
"jjxDah2nGN59PRbxYvnKkKj9\n" \
"-----END CERTIFICATE-----\n";
//URL récupérée via XTRADATA https://data.bordeaux-metropole.fr/geojson/help/#/default
const String HTTPS_URL = "https://data.bordeaux-metropole.fr/geojson/features/en_frcol_s?crs=epsg%3A4326&attributes=%5B%22jour_col%22%5D&maxfeatures=10&key=K7CB2JBXGI";
// Fonction pour synchroniser l'horloge du microcontrôleur avec un serveur NTP afin de s'assurer que l'heure est correcte pour valider les certificats SSL.
void setClock() {
configTime(0, 0, "pool.ntp.org");
Serial.print(F("Waiting for NTP time sync: "));
time_t nowSecs = time(nullptr);
while (nowSecs < 8 * 3600 * 2) {
delay(500);
Serial.print(F("."));
yield();
nowSecs = time(nullptr);
}
// Attente que l'heure soit récupérée correctement depuis le serveur NTP.
Serial.println();
struct tm timeinfo;
gmtime_r(&nowSecs, &timeinfo);
Serial.print(F("Current time: "));
Serial.print(asctime(&timeinfo));
// Affiche l'heure actuelle une fois qu'elle est correctement configurée.
}
WiFiMulti WiFiMulti;
void setup() {
Serial.begin(115200);
// Initialisation de la communication série pour le débogage.
sg90.setPeriodHertz(50); // Fréquence PWM pour le SG90
sg90.attach(PIN_SG90, 500, 2400);
Serial.println();
WiFi.mode(WIFI_STA);
WiFiMulti.addAP("Chamakito redy", "chamakito333");
// Initialisation du mode Wi-Fi en tant que station et connexion à un point d'accès ("Les Usines" avec le mot de passe "usinesnouvelles").
Serial.print("Waiting for WiFi to connect...");
while ((WiFiMulti.run() != WL_CONNECTED)) {
Serial.print(".");
}
Serial.println(" connected");
// Boucle jusqu'à ce que la connexion Wi-Fi soit établie.
setClock();
// Synchronisation de l'heure via NTP après connexion au réseau.
}
void loop() {
Serial.print(HTTPS_URL);
WiFiClientSecure *client = new WiFiClientSecure;
// Création d'un client sécurisé pour gérer la connexion HTTPS.
if(client) {
client->setCACert(rootCACertificate);
// Assignation du certificat racine au client sécurisé pour valider les connexions HTTPS.
{
HTTPClient https;
// Initialisation d'un client HTTP sécurisé.
Serial.print("[HTTPS] begin...\n");
if (https.begin(*client, HTTPS_URL)) {
// Tentative de connexion à l'URL spécifiée (une API de Bordeaux Métropole).
Serial.print("[HTTPS] GET...\n");
int httpCode = https.GET();
// Envoi d'une requête GET au serveur.
if (httpCode > 0) {
Serial.printf("[HTTPS] GET... code: %d\n", httpCode);
// Si la réponse est positive, on affiche le code HTTP.
if (httpCode == HTTP_CODE_OK
La création de notre affiche pour le POCL a été un processus créatif. Nous avons commencé par dessiner l'objet pour mettre en avant son design et ses caractéristiques. Nous avons mis en avant les principales fonctionnalités, comme les LED lumineuses et le haut-parleur. Enfin, la mise en page est claire et organisée pour une compréhension facile nous l'avons dessiné simplement.
Les designers ont crées des maquettes avec plusieurs logiciel afin de pouvoir visualiser notre projet.
En regardant la maquette de notre POCL Trashtalk, on voit tout de suite son design simple et pratique. Les LED sont placées sur le devant, s’allumant en blanc pour les ordures ménagères et en jaune pour le tri sélectif. Le haut-parleur est intégré discrètement, il est là pour rappeler le jour de sortir les poubelles.
On distingue le système d’ouverture automatique, qui fonctionne les jours de collecte.
Plusieurs éléments pourraient compromettre l'expérience. Tout d’abord, un problème de synchronisation des données, si elles ne sont pas à jours avec le calendrier des collectes cela pourrait entraîner des erreurs dans l’ouverture automatique et l’activation des LED.
Si des composants électroniques sont mal intégré, comme le haut-parleur ou les capteurs, cela rendra rappels sonores impossible. Une panne des LED ou un dysfonctionnement du système d’ouverture rendrait l’expérience beaucoup moins intuitive.
Dans un dernier temps, des erreurs de programmation ou un problème de mises à jour du calendrier pourraient rendre l’objet inutilisable.
Pour que l’expérience Trashtalk soit réussie, différents aspects doivent fonctionner. Le système doit être synchronisé avec le calendrier des collectes pour que les jours de tri et d’ordures ménagères soient bien différenciés. Les LED doivent s’allumer aux bons moments (blanc pour les ordures ménagères, jaune pour le tri), et la poubelle doit s'ouvrir automatiquement ces jours-là.
Le haut-parleur rappel aux utilisateurs de sortir les poubelles au bon moment, ce qui évite les oublis. Les capteurs doivent bien capter les informations pour déclencher les bonnes actions, sinon le système ne fonctionnera pas comme prévu.
Il faut que toute la partie électronique, comme la carte mère, les câbles, et la carte SD, soit bien installée. Si un fil est mal branché ou si un composant ne marche pas, certaines fonctionnalités, comme l’ouverture automatique ou les rappels sonores, risquent de ne pas fonctionner.
Le code doit aussi être bien écrit et sans erreurs pour que tout fonctionne correctement. S’il y a un bug, ça pourrait rendre la poubelle instable ou empêcher certaines actions de se déclencher comme prévu.
Dans la vie quotidienne, Trashtalk facilite la gestion des déchets. Il nous rappel automatiquement les jours de ramassage, donc plus besoin de vérifier le calendrier ou de craindre d’oublier de sortir les poubelles. Grâce aux LED qui changent de couleur, on sait facilement quel type de déchet sortir (tri sélectif ou ordures ménagères).
Les rappels sonores aident à éviter les oublis, surtout pour ceux qui vivent en immeuble, réduisant ainsi les conflits liés à la gestion des poubelles communes. Trashtalk rend le tri et la gestion des déchets plus simples et pratiques au quotidien.
Le POCL comporte plusieurs objectifs pédagogiques. D’abord comprendre comment fonctionnent les technologies derrière un objet connecté. Ça veut dire comprendre comment intégrer des composants comme des capteurs, des LED et un haut-parleur. On a du écrire du code pour gérer les fonctionnalités, comme les rappels pour sortir les poubelles et l’ouverture automatique. Le travail en équipe est essentiel, on doit collaborer pour concevoir, développer et présenter notre projet. Cela nous aide à améliorer nos compétences en communication, en apprenant à expliquer clairement notre idée à différents types de publics.
Pour rendre notre projet Trashtalk encore plus interactif, voici quelques idées d’animation. D'abord, on pourrait organiser des ateliers où les gens peuvent découvrir comment fonctionne notre poubelle connectée. Cela leur permettrait d’interagir avec Trashtalk et de poser toutes leurs questions.
Ensuite, on pourrait faire des démonstrations en direct pour montrer les fonctionnalités, comme l’allumage des LED et l’ouverture automatique aux jours de collecte.
On pourrait aussi créer des jeux interactifs, comme des quiz sur le tri des déchets.
On pourrait mettre en place des stations de feedback pour que les utilisateurs laissent leurs impressions sur Trashtalk. Et pourquoi ne pas créer un hashtag sur les réseaux sociaux pour que chacun partage ses expériences ?
Open data university bordeaux métropole
Dernière modification 11/10/2024 par user:Lroyer001.
Draft
Vous avez entré un nom de page invalide, avec un ou plusieurs caractères suivants :
< > @ ~ : * € £ ` + = / \ | [ ] { } ; ? #