Simon 3D : Le jeu des années 70 révolutionné !

Nous sommes Nathan JAGUENEAU et Nathan NOËL, étudiants en deuxième année de cycle préparatoire (PEIP 2A) à Polytech Angers. Dans le cadre de notre formation, nous avons eu 100 heures pour réaliser un projet technique de A à Z. Pour nous, il a été question de réinventer le jeu des années 70 : le Simon.

Plutôt que de simplement copier l’original, nous avons décidé de briser la barrière de la 2D pour créer une version cubique et interactive. Voici le récit de notre aventure, entre lignes de code, fumée de soudure et modélisation 3D.

Le Concept

L’idée était simple mais ambitieuse : transformer un jeu statique en une expérience 3D immersive. Au lieu d’avoir toutes les couleurs sur une seule face, notre Simon est un cube où le joueur doit manipuler l’objet pour suivre la séquence lumineuse.

Les objectifs du cahier des charges

  • Liberté de design : Créer un objet esthétique et ergonomique.
  • Complexité accrue : Obliger le joueur à se déplacer ou à bouger le cube pour interagir avec les 5 faces actives.
  • Maintenabilité : Concevoir un système facilement démontable pour accéder à l’électronique.

Le cœur du projet : Électronique et Code

Sous sa structure en bois, notre cube cache un véritable concentré de technologie:

  1. Le Cerveau (ESP32) : Ce microcontrôleur gère toute la logique du jeu, de la génération de séquences aléatoires à la lecture de l’état des boutons.
  2. L’Affichage (NeoPixel) : Nous avons utilisé 5 chaînes de 4 LEDs adressables chacune, permettant des animations colorées et une luminosité réglable.
  3. L’Interface : Des boutons poussoirs reliés à des plaques de plexiglas montées sur ressorts pour un ressenti “arcade”.
  4. L’Autonomie : Le cube est totalement portable grâce à une batterie interne rechargeable via un module USB-C.
Représentation des différents composants électroniques principaux

Un aperçu de l’algorithme

Nous avons développé le code sous Arduino IDE. La structure repose sur une boucle principale qui surveille l’appui sur un bouton pour lancer la partie, puis alterne entre la phase d’affichage de la combinaison et la vérification des réponses du joueur.

Code utilisé pour représenter le tour du jour

Design et CAO : Une structure sur mesure

Pour que tout ce matériel tienne en place, nous avons dû maîtriser deux outils essentiels :

  • OnShape : Faute d’accès à SolidWorks, nous avons découvert ce site internet pour modéliser une structure intérieure complexe et reproduire notre structure au complet. Cette pièce centrale supporte l’électronique et assure la fixation des boutons.
  • Découpe Laser : Le boîtier extérieur en bois a été conçu via des patrons précis, puis gravé avec des motifs esthétiques pour donner envie de s’y intéresser.

Un énorme problème nous a pris énormément de temps

Tout projet comporte ses zones d’ombre. Pour nous, ce fut la soudure. Étant novices, nous avons passé entre 30 et 40 heures à souder, dessouder et réparer des liaisons fragiles.

Soudure de nos chaines de LEDs

Le moment critique : Le module MP3 fonctionnait parfaitement sur la platine de test, mais une fois intégré au cube, des interférences électriques l’ont rendu instable. L’échéance approchant, nous avons dû prendre la décision de donner une version sans son pour garantir un jeu fonctionnel.

Bilan du projet

En conclusion, ces 100 heures ont été une expérience technique incroyable. Nous avons appris à diagnostiquer des pannes, à optimiser du code et à concevoir un objet physique de A à Z.

Répartition du temps (Total ~100h)

PhaseDescriptionDurée
ÉlectroniqueSoudure, tests, câblage35h
ConceptionCAO (OnShape), Découpe laser, Impression 3D20h
RésolutionDiagnostic pannes, réparation soudures20h
ConceptsDesign, recherches composants10h
AssemblageMontage final dans le boîtier10h
CodeProgrammation Arduino, débogage5h

Projet réalisé par Nathan JAGUENEAU & Nathan NOËL – Polytech Angers 2026.

Projet Time Walk

Par Elvin Voisin, Clément Pavageau & Niels Bonneau


Introduction

Bonjour à tous,
Nous sommes trois étudiants en deuxième année de prépa intégrée à Polytech Angers et, dans le cadre de cette formation, nous avons un projet à réaliser au dernier semestre pour une durée totale de 100 heures. Le projet que nous avons choisi est une application à but éducatif pour se rendre compte de l’échelle des temps historiques de manière réelle. Ok, vu comme ça c’est pas très clair mais ne vous inquiétez pas vous allez tout comprendre !


Les premières idées

Cette idée d’application vient de notre professeur référent M. Lhommeau et d’un autre professeur avec qui nous avons travaillé, M. Davodeau. L’idée première s’appelait “le Strava de la culture” avec pour but de parcourir le temps proportionnellement à la distance que l’on marche pour se rendre compte que quelques années ou siècles ne sont qu’une infime partie de l’histoire de notre planète. L’histoire de la Terre est impossible à imaginer à l’échelle humaine. 4,5 milliards d’années, c’est trop abstrait en particulier pour des enfants de moins de 11 ans. Et si vous pouviez remonter le temps en marchant avec votre téléphone ?

Pour cela, nous nous sommes dirigés vers le site Web MIT APP Inventor, une méthode jugée, par l’unisson du groupe, plus efficace et “accueillante” qu’une méthode classique avec du codage Python+HTML. MIT App Inventor est un environnement de développement qui simplifie la création d’applications Android. Son fonctionnement repose sur une séparation claire entre le design et les blocs logiques. En utilisant un système de programmation par blocs, nous avons pu nous concentrer sur la structure de notre projet. Cette approche ‘No-Code’ n’enlève pas toute la complexité du projet, puisqu’elle nécessite une rigueur mathématique et logique pour orchestrer plus de 1100 blocs.


Le cœur de l’appli

Écran d’accueil

Dès le lancement, l’application se transforme en tableau de bord. Ici, pas de menus compliqués : on renseigne son nom et sa distance, en mètre, à parcourir. L’objectif est de renseigner une distance d’une grandeur minimum de 1km pour avoir une représentation fiable et correcte de l’échelle du temps.

Ensuite on bascule vers un écran d’aperçu du parcours. À rappeler que cette appli a été conçue, en premier lieu, pour une sortie scolaire, c’est pourquoi il était cohérent d’afficher les images des lieux remarquables que le groupe scolaire va traverser.

Écran d’aperçu

Place au choix des événements ! C’est une touche de personnalisation que nous avons voulu mettre en œuvre. L’utilisateur a la possibilité de cocher ou décocher les événements qu’il souhaite voir passer. Il est important de remarquer qu’à l’échelle de la formation de la terre, beaucoup de temps se passe avant qu’il y ait une accélération du développement de la faune et de la flore avec les plantes, reptiles, dinosaures et enfin l’espèce humaine.

Écran de choix

Nous parvenons enfin à notre écran principal qui a pris environ 70% du temps total passé pour la confection de l’application. En effet derrière cet écran se cache beaucoup de logique. Cet écran principal affiche une barre de progression intuitive et un compteur d’années. C’est ici que la magie opère : grâce au capteur GPS de votre smartphone, chaque mètre parcouru fait défiler des millions d’années. Une carte en bas de l’écran est également présente pour visualiser sa position et la création en direct du tracé de sa marche. Nous avons aussi intégré un chronomètre précis pour suivre l’effort physique, car n’oublions pas qu’il s’agit d’une marche de 2 à 3 km ! Plus l’on avance, plus la barre se remplit, nous indiquant notre position exacte dans l’histoire de notre planète.

Écran principal
Écran récapitulatif

Une fois la ligne d’arrivée franchie, place au bilan interactif. C’est l’écran dont nous sommes le plus fiers. Vous y retrouvez une carte complète de votre parcours, jalonnée par toutes les icônes interactives débloquées. En cliquant sur chaque marqueur, une bulle d’information s’ouvre pour approfondir le sujet. Pour conclure, l’écran affiche vos statistiques de marche (temps total, distance totale, vitesse moyenne et nombre d’événements rencontrés ) et vous délivre vos badges de réussite. C’est le moment idéal pour prendre du recul sur les minutes passées !


Visuels et thèmes de couleurs

Le plus gros travail à fournir pour l’interface était la création des affiches des évènements (autrement nommés visuels des “pop-ups”) et il y en a 13 ! Nous nous sommes naturellement orientés vers Canva pour la confection de ces visuels. Le plus important était de garder un style uniforme pour chacun. C’est-à-dire que le visuel du pop-up présente un titre, un texte descriptif ne contenant pas plus de deux phrases, le logo “Time Walk” en bas de page et pour finir une image de fond à la fois belle et cohérente.

Pour continuer nous avons défini des thèmes à base de couleurs. Comme dit précédemment, nous avons décidé d’inclure 13 événements et de les trier par “thème” lors de leur choix pour que ce soit plus agréable aux yeux de l’utilisateur. Ces changements de couleurs concernent le fond d’écran en couleur très claire et la barre de progression en couleur vive. L’intégralité des couleurs de l’application a été définie par code RVB. Ces nuances évolutives habillent l’application pour qu’il se passe toujours quelque chose, même entre deux événements!


Les défis rencontrés

Développer une application ne se résume pas à assembler des blocs ; c’est aussi apprendre à dompter la technique. Voici les trois plus grands défis que nous avons relevés :

1. Précision GPS : le combat contre les “points fous”

L’un des obstacles majeurs a été le comportement des appareils que nous avions à disposition (des tablettes) et notamment la précision de la géolocalisation. Lors de nos tests, nous avons remarqué que le GPS de certaines tablettes pouvait parfois être capricieux, plaçant l’utilisateur à plusieurs mètres de sa position réelle. Pour éviter que le tracé de la marche ne ressemble à un gribouillage, nous avons dû mettre en place un système de “filtrage” : l’application n’enregistre un nouveau point que si l’utilisateur s’est déplacé d’au moins 10 mètres et ne prend pas de point s’il y a plus de 30 mètres entre chaque point, dans quel cas ce serait une erreur de position. Cela permet de gommer les petites erreurs et de garder une carte lisible.

2. La “guerre des blocs” et la performance

Plus une application devient riche en fonctionnalités, plus elle devient lourde à gérer. Avec plus de 1100 blocs logiques, notre espace de travail commençait à subir des ralentissements et même des “blocs invisibles” qui disparaissaient de l’écran! Pour sauver l’application, nous avons dû optimiser notre code : simplifier les instructions, utiliser des boucles intelligentes et réduire la redondance pour que tout reste fluide sur les tablettes des élèves.


Sortie scolaire et avis des enfants

Enfin est venu le 12 mai 2026, jour du test grandeur nature de l’application ! Nous avons réalisé une sortie avec une cinquantaine d’élèves de CM1/CM2 de l’école primaire Robert Desnos et une cinquantaine d’étudiants de l’institut agro. Le rôle de ces derniers était de concevoir les itinéraires et de détailler les points historiques avec les enfants tout au long du parcours. Lors de la sortie, nous nous sommes tous répartis en 3 grands groupes avec chacun un itinéraire propre pour faire le trajet de l’institut agro à l’école R. Desnos : un par l’étang st Nicolas (groupe de Clément, 3100m), un par l’avenue notre dame du lac (groupe d’Elvin, 2100m) et le dernier par l’avenue Patton (Niels, 2600m). Après les tests que nous avions réalisés au préalable, nous avions 11 tablettes avec une localisation fonctionnelle que nous avons donc réparties dans les trois groupes. Toutes ont très bien fonctionnées et aucun bug n’a été à signaler au cours de la sortie ce qui est une grande satisfaction et un réel aboutissement.

Les étudiants, professeurs ainsi que les enfants ont apprécié le moment et l’application bien que certains de ces derniers se disaient un peu fatigués de l’effort physique! Ils ont néanmoins “aimé la sortie et l’application” et eu le sentiment d’avoir appris/revu des choses ce qui étaient notre objectif. Nous sommes donc très heureux avoir conclu le projet de cette manière et avec de tels avis ! 


Conclusion et pistes d’améliorations

Ce projet a été pour nous bien plus qu’un simple exercice de programmation. En développant cette application, nous avons voulu prouver que la technologie, loin de nous isoler, peut devenir un formidable levier pour explorer notre environnement réel et comprendre la complexité de notre planète. Voir l’histoire de la Terre défiler sous nos pas transforme une simple balade en une expérience marquante et concrète.

Et après ?

Si notre “machine à remonter le temps” est aujourd’hui parfaitement fonctionnelle, nous imaginons déjà de nombreuses évolutions. Pourquoi ne pas intégrer des quiz interactifs pour tester les connaissances des apprentis géologues à chaque étape ?

Une chose est sûre : ce voyage à travers les millénaires ne fait que commencer !

String art : nos plus belles œuvres, on ne les a pas faites

1. Qui on est ?

On est artiste. Créatif, on crée des tableaux en tissant des fils sur des clous à la main. Tellement créatif qu’on a fini par vouloir créer une machine et lui partager tout notre savoir technique.

Ce blog raconte comment on a mené ce projet. Le temps, l’énergie consacrés, notre patience, les difficultés mais aussi les succès et différentes avancées que nous avons rencontrés durant les 100 heures prévues pour notre projet, le projet string art.

2. Page blanche ?

La consigne principale était de réussir à faire une machine capable de faire des motifs de plusieurs couleurs. Les premières heures, on se demandait comment on allait réussir à faire ce projet. On a rapidement convenu d’un rendez-vous avec nos deux professeurs référents, M.Guyonneau et M.Mercier. On a alors appris qu’il ne s’agissait pas d’un projet comme les autres. On a été le seul groupe à avoir un projet qui avait été commencé par deux groupes des années passées. Il fallait donc améliorer ces machines, et même les faire fonctionner car les motifs qu’elles faisaient pour l’instant étaient irréguliers et non précis. Il était pour l’instant impossible de faire de beaux motifs d’une simple couleur.

3. Grisaille

Un gros objectif intermédiaire était déjà de faire fonctionner une première machine dotée uniquement d’un fil noir. Il fallait commencer par comprendre la mécanique et l’électronique de la machine. C’était assez simple, un plateau de 100 clous qui tournait à l’aide d’un moteur pas à pas, un capteur comptait le nombre de clous qu’on passait et un servomoteur faisait avancer et reculer l’aiguille lorsqu’on était à la position attendue.

Ensuite il a fallu comprendre l’informatique de la machine. C’est la partie qui nous a causé le plus de problème. Elle est programmée en C++ sur une carte Arduino. Il donc fallu étudier et comprendre tout un langage de programmation qui était nouveau pour nous.

Après l’acquisition de notre première machine unicolore, on était très fier de nous et soulagé d’avoir enfin quelque chose à rendre concernant notre projet. Cette première étape nous a pris la moitié du temps imparti.

Voici ci-dessous la première oeuvre que l’on a réalisée avec notre machine monochrome fonctionelle.

L’œuvre sans l’auteur, Antoine Le Mené et Ulysse Druaux, 50 x 50 cm, 2026

Par la suite, on a essayé de faire un dessin plus complexe, le logo de Polytech. Bien que la machine fonctionnait, on n’était pas vraiment satisfait du résultat.

4. Panne d’inspiration

Il était maintenant temps de viser encore plus gros et d’enfin attaquer ce qui nous avait été demandé de faire à l’origine, sur une deuxième machine, très légèrement différente à la première dans son fonctionnement. La différence étant que ce n’est pas un servo moteur mais un moteur pas à pas qui nous permet le tissage du fil. Le premier problème était qu’un gros travail d’imagination était demandé. Nous n’avions aucune idée de la manière dont le changement de couleur pouvait être réalisé. Il fallait que les deux fils soient utilisables à tout moment sans pour autant qu’ils s’emmêlent. C’était la période la plus compliquée et frustrante du projet, on avait l’impression de ne pas avancer et l’on se demandait même si on allait réussir à produire quelque chose avant la fin.

5. L’atelier

On a finalement réussi à finir cette traversée du désert en optant pour une solution dont nous étions très fiers, remplacer le noeud qui initie une couleur par un système d’ancre et un découpage de fil pour terminer une couleur. Cela semblait éviter tous les problèmes de mélange des fils et de création d’un noeud au début de chaque couleur.

Voici une première vidéo illustrant le système de coupe fil qui termine la première couleur pour passer à la deuxième :

Et dans cette vidéo, voici une explication plus générale sur le protocole de changement de couleur :

Pour continuer, pour réaliser un motif de plusieurs couleurs, il faut d’abord déterminer le motif que doit faire chaque couleur. Pour ça, on a créé un programme python qui sépare les couleurs d’une image pour obtenir au final trois images différentes : cyan, magenta, jaune (qu’on a adapté à seulement deux couleurs pour notre machine qui ne peut en faire que deux). Enfin, on superpose chacune des couleurs séparées sur le sites stringar.com, qui va nous donner 3 motifs différents que notre machine va superposer pour réaliser notre image initial souhaitée.

Voici un exemple d’une image traitée par notre programme :

Image originale :

Jaune isolé :

Magenta isolé :

Cyan isolé :

6. La palette

Voici au final la palette de couleurs de notre machine bicolore :

7. Critique

Notre machine pourrait être plus optimisée et sécurisée notamment au niveau des lames pour couper les fils. Mais ce qui nous a le plus limité depuis le début a été le nombre de clous de notre planche, cette planche venait des années passées et si on en voulait une plus grande, il aurait fallu tout refaire. C’est exactement pour cette raison que notre dessin complexe du logo Polytech n’a pas été aussi concluant que l’on attendait.

Image avec un plateau de 100 clous :

NB : Le nombre de lignes est seulement de 1000 ici car le tableau devient juste tout noir si j’en mets 3 000 comme dans la photo ci-dessous.

Même image avec un plateau de 200 clous :

Enfin, bien que tout le mécanisme de notre machine à couleurs fonctionne, il arrive encore que le fil de la deuxième couleur s’emmêle dans un clou alors qu’on n’est pas encore sensé l’utiliser, il aurait fallu ajouter un module de retenu du fil à ce niveau là.

8. Conclusion :

A travers ce blog, on a pu voir tout le processus de recherche et de fabrication que l’on a mené dans ce projet. Bien que ces 100 heures aient été remplies de problèmes, les moments de réussite valaient bien plus. Ça a été pour nous les meilleurs créneaux que l’on ait eu lors de notre cycle préparatoire à Polytech Angers.

Merci pour votre lecture,

Antoine Le Mené et Ulysse Druaux, Peip2A.

Projet “Maquette de régulation thermique”

Maquette de régulation thermique

Bonjour !

Si vous êtes la c’est sûrement que vous en avez marre d’avoir trop chaud ou trop froid dans votre domicile non ?

Si c’est le cas on a LA SOLUTION a vos problèmes !

Une maquette réaliste et entièrement automatisée, conçue pour montrer comment elle pourrait être utilisée dans votre domicile afin de garantir votre confort au quotidien !

Elle allie un design (plus ou moins) soigné et fidèle à la réalité grâce à ses propriétés thermiques et ses capteurs étudiées par nos brillants ingénieurs (nous-mêmes, bien sûr 😄). Intégrant des technologies innovantes, cette maquette vise à offrir une qualité optimale pour l’amélioration de votre habitat.

1 – La maquette.

Tout d’abord, pour vous proposer la solution la plus adaptée, nous commençons par modéliser votre domicile en 3D à l’aide du logiciel OnShape.
Ci-dessous, vous pouvez voir la modélisation de notre maquette de présentation, représentant la forme de votre habitation ainsi que les matériaux utilisés, afin de reproduire au mieux les conditions thermiques réelles de votre logement.

Version en CAO de notre maquette sur OnShape

2 – La création.

Dans cette étape, nous avons construit une structure en bois avec des murs de 5 mm d’épaisseur, formant deux pièces.

Afin de reproduire fidèlement les propriétés thermiques d’un véritable habitat, une couche d’isolant de 1 cm est insérée entre deux parois en bois.

La maquette est divisée en deux pièces pour simuler un petit appartement et éviter que les mesures de nos capteurs ne soient faussées par des expériences précédentes, garantissant ainsi des résultats fiables, comme chez vous !

Les dimensions de la maquette sont les suivantes : 440mm x 340mm x 250mm

Les murs de notre maquette (isolant en rose)
Notre maquette vu du dessus (pendant sa construction)

3 – Le contrôle

Afin d’automatiser votre habitation, nous utilisons les données de deux capteurs.
Le premier est un DHT22, un capteur de température et d’humidité, contrôlable à l’aide d’une carte Arduino, tout comme le second capteur : le CCS811, qui mesure la qualité de l’air (taux de CO₂ et composés organiques volatils totaux — TVOC — exprimés en ppm).

Ces deux capteurs sont facilement pilotables grâce à un code simple, visible ci-contre, en utilisant les bibliothèques appropriées : (DHT.h et Adafruit_CCS811.h)
Le tout est programmé via le logiciel Arduino IDE, qui permet de transférer le code sur la carte Arduino par connexion USB.

Code Arduino contrôlant un DHT22 et un CCS811
Code Arduino pour contrôler les deux servo-moteurs

Puis, on crée le code afin de contrôler vos “facteurs de régulation”, sur notre maquette on en possède deux, les fenêtres et les ventilateurs, mais on peut aussi contrôler un système de climatisation mais de chauffage également mais les facteurs de notre maquette suffisent pour vous convaincre que notre projet saura vous conquérir. Le code ressemble alors a ceci pour les servo-moteurs permettant l’ouverture des fenêtres.

Pour ce qui est des ventilateurs, on les contrôles en utilisant une alimentation externe tout comme les servo-moteurs car l’ordinateur ne fournit pas un curant suffisant à leur utilisations respectives. Cependant, comparé aux servo-moteurs, on ne peut contrôler les ventilateurs avec une carte Arduino, on passe donc par l’utilisation de relais qui sont eux contrôlables avec Arduino qui nous permettent de gérer l’activation des ventilateurs. On peut trouver simplement un code pour les utiliser sur Internet pour les intéressé !

4-L’affichage

Pour ce qui est du suivi des données, on utilise le protocole LoRaWAN afin de transmettre nos données depuis la carte Arduino vers The Things Network, un site “relais” qui va nous permettre de renvoyé nos données vers Node-Red, une application en JavaScript. Pour ce faire en envie les données reçu par The Things Network vers Node-Red avec le protocole MQTT. Tout cela nous permet d’avoir une interface comprenant une jauge pour la température, l’humidité et le taux de CO2 mais également des graphiques pour la température et l’humidité dans chacune des pièces qui ressemble à cela :

Conclusion :

Grâce à cette maquette, nous vous démontrons qu’il est tout à fait possible d’automatiser votre logement pour un confort optimal, été comme hiver !
Entre capteurs intelligents, régulation précise et design soigné (on y tient !), notre projet allie technologie, simplicité et efficacité.

Alors, si vous en avez assez de grelotter en hiver ou de fondre en été, laissez notre système s’en charger à votre place !
Confort, économie d’énergie et innovation, le tout dans un format mini… mais aux grandes ambitions.

On remercie nos encadrants M. BOULJROUFI et M. RIAHI qui sont à l’origine de on l’espère, ce système que vous allez adopter et qui va révolutionner votre confort de vie !

Réveil connecté personnalisé

Bienvenue

Si vous repoussez trois fois votre réveil avant de vous lever, ce blog est fait pour vous !

Partez à la découverte de notre projet de deuxième année, qui allie créativité, technologies et une approche innovante pour rendre vos matins plus supportables.

Qui sommes nous?

Nous sommes Baptiste et Raphaël, deux élèves de l’école Polytech Angers, passionnés par l’innovation, la création et la programmation. Cette année, nous avons réalisé un projet commun pour valider les notions théoriques acquises au cours des deux dernières années. Ce travail a été l’occasion de développer nos premières compétences techniques et manuelles, en utilisant du matériel de pointe mis à disposition par l’école, comme des imprimantes 3D ou des fraiseuses numériques.

En somme, ce projet  a stimulé notre curiosité scientifique et constitue une étape importante dans notre parcours d’ingénieur.

Un projet, lequel?

Notre objectif principal est de créer un réveil connecté, capable de se connecter au WIFI et de régler, d’une manière autonome, l’intensité lumineuse de son écran. Nous avons également ajouté des fonctionnalités supplémentaires pour rendre ce projet plus authentique. C’est l’exemple d’un simulateur d’aube ; d’une sonnerie personnalisable avec la musique de son choix; ainsi qu’une hélice qui s’envole et qui doit être replacée sur son socle pour pouvoir arrêter la sonnerie.

Étape 1 : fonctionnalités essentielles

Pour réaliser les fonctionnalités de base de notre réveil, nous avons utilisé un ESP32 et un IDE Arduino. Il nous permet de connecter divers composants électroniques, tels que des capteurs, des moteurs et un écran.

A partir de nos connaissances en Langage C nous sommes rapidement parvenus à comprendre la programmation de notre ESP32. En outre, de nombreuses librairies sont disponibles sur internet pour simplifier nos programmes.

Nous avons donc obtenu un système composé de quatre composants : un lot de trois boutons poussoirs pour régler l’heure du réveil et de l’alarme ; un haut parleur pour émettre le son de la sonnerie, un capteur de luminosité TSL2561 pour détecter la luminosité de la pièce ; et enfin, un écran LSD qui affiche l’heure avec plus ou moins d’intensité en fonction de l’information reçue par le capteur de luminosité.

Étape 2 : fonctionnalités supplémentaires

Après 3 semaines de travail, nous avions globalement réalisé notre réveil mais nous souhaitions ajouter davantage de fonctionnalités. Sur les remarques de notre professeur référent, nous avons donc ajouté un simulateur d’aube et une sonnerie personnalisée.

Un simulateur d’aube imite le lever du soleil, afin que votre réveil soit naturel. Pour créer cette fonctionnalité, nous avons utilisé des LED RGB, un fil de plusieurs LED indépendantes à intensité variable. Un programme allume ses LED 10 minutes avant l’heure du réveil et augmente progressivement son intensité lumineuse jusqu’au déclenchement de la sonnerie.

Pour ajouter encore plus de personnalisation, nous avons décidé de laisser l’utilisateur choisir sa sonnerie. Nous avons donc utilisé un lecteur de fichiers mp3 compatible avec notre ESP32. Après quelques recherches pour comprendre le fonctionnement de ce composant, nous avons ajouté nos propres musiques sur une carte SD et obtenu le résultat souhaité.

Dans cette deuxième phase de notre projet, nous avons également remplacé nos boutons poussoirs par un encodeur rotatif pour régler l’heure de la sonnerie plus facilement.

Étape 3 : Partie mécanique

Lors des étapes précédentes, nous avons principalement fait de la programmation et nous souhaitions ajouter une partie mécanique. C’est ainsi que l’idée d’une hélice, nous obligeant à nous lever pour la replacer sur son socle, nous est venue.

Nous nous sommes inspirés des jouets que nous utilisions quand nous étions plus jeunes, en remplaçant l’action manuelle par un moteur à courant continu (comme le montre l’image ci-contre).

Mais cette idée fut de loin la plus chronophage, car nous avons rencontré de nombreux problèmes. Nous souhaitions adopter une démarche écologique pour cette étape, en réutilisant au maximum d’anciens composants. Cependant, certains composants étaient défectueux et modifiaient le comportement attendu de notre système. Nous avons donc passé de nombreuses heures à identifier ces problèmes et à trouver les solutions adéquates.

Nous sommes finalement parvenus à faire décoller notre hélice grâce à un motor driver L298N. C’est un composant qui permet de gérer la vitesse et le sens de rotation d’un moteur.

Enfin, pour détecter la présence de l’hélice sur son socle, nous avons utilisé un bouton poussoir actif sur front descendant. Ce dernier est couplé à un système d’engrenage que vous pouvez apercevoir sur l’image ci-contre. Lorsque l’utilisateur exerce une force sur l’hélice pour la replacer, il exerce également une force sur l’axe de l’engrenage qui appuie sur le bouton poussoir. 

Étape 4 : Conception CAO

Une fois toutes nos fonctionnalités réunies dans un même système, nous avons pu réaliser le design final de notre réveil.

Après avoir pris en compte toutes les cotations de nos composants, nous avons utilisé le logiciel SolidWorks pour créer un premier design numérique. Nous avons ensuite utilisé l’impression 3D pour rendre ce projet tangible.

Enfin, nous avons ajouté une plaque de polycarbonate opaque afin de transmettre la lumière des LED, sans que l’intérieur du boitier soit visible.

Le résultat final

Voici le résultat final de notre Réveil Connecté Personnalisable, que nous serons fiers de présenter au forum des projets Peip2, le vendredi 6 juin 2025.

Nous avons adoré réaliser ce projet !

Apprendre à se répartir mutuellement les tâches pour être plus efficaces et gagner du temps, mettre en commun l’avancement de nos idées, établir des deadlines comme au sein d’une start-up, réunir nos parties pour réfléchir à un design final… Tout cela nous a permis de travailler dans une bonne ambiance et de nous concentrer exclusivement sur le développement de notre projet.
En outre, échanger avec des professeurs ou des chercheurs pour exposer nos problèmes et trouver une solution commune était passionnant. Ce n’était pas un enseignement linéaire de professeurs à élèves, mais plutôt une réflexion collaborative entre deux cerveaux autour d’une même idée.

In fine, nous tenons à remercier notre professeur référent, Monsieur Bignon, ainsi que le responsable du FABLAB, Boris Rayer, pour le temps et l’aide précieuse qui nous ont été accordés.

La Maquette de Régulation Thermique

Par Adeline Mauget et Noé Moreau

Encadré par Hassen RIAHI et Hassan BOULJROUFI

Le principe est assez simple. Il faut construire un bâtiment miniature et y installer des capteurs et des actionneurs pour réguler la température et le taux d’humidité.

Chapitre 1 : De l’idée à la conception

Mais avant tout ça la première étape fut d’imaginer la maquette. Nous avons hésité entre plusieurs designs plus ou moins beaux et plus ou moins pratiques. Une seule pièce rectangulaire nous semblait trop simple et nous voulions quelque chose de plus créatif, qui puisse ressembler à un bâtiment moderne sans être extravaguant, tout en étant assez pratique à automatiser. Et pour ça quoi de mieux que le génie d’Adeline pour la conception et le design. En un rien de temps, elle avait réalisé un bâtiment à la fois simple et moderne.

Deux étages, un rez-de-chaussée de 150cm², et un premier étage déporté, soutenu par un poteau.

Quoi qu’on puisse en penser, le rendu 3D nous a parus vraiment exceptionnel, et ça s’est confirmé lors de la construction réelle de la maquette.

Avoir une maquette 3D c’est bien, mais pouvoir la construire c’est encore mieux. Pour ça, Adeline a remodélisé chaque mur, plafond, fenêtre et sol afin que ceux-ci puissent s’emboiter parfaitement et tenir à la construction.

L’intérêt a également été dans le choix des matériaux, car celui-ci était assez large. Bois, PVC, plexiglass, verre, plastique pour la réalisation des murs et fenêtres et laine de verre, liège ou polystyrène pour l’isolation. Il nous fallait trouver un matériau pratique et élégant pour notre maison miniature. Bon le choix s’est assez vite réduit pour des soucis pratiques et esthétiques mais on y reviendra plus tard.

Chapitre 2 : La partie technique de la régulation thermique

Passons maintenant à la partie technique. Bien sûr, pour que la maquette puisse réguler, il faut de la technologie. Et qui dit technologie, dit programmation et carte programmable. Pour ça, nous sommes partis sur une carte Arduino afin de pouvoir contrôler nos composants électroniques.

programme de contrôle des ventilateurs, de la pompe et de la résistance chauffante en fonction de la température et du taux d’humidité

Contrôle des ventilateurs avec le taux d’humidité

Contrôle de la résistance chauffante pour faire chauffer l’eau (la résistance fait chauffer l’eau une première fois à 40°C puis la maintient entre 35°C et 40°C)

Contrôle de la pompe (qui fait circuler l’eau chaude sous le sol pour chauffer la pièce)

Enfin pour pouvoir les programmer encore faut-il les avoir. La première étape fut donc de chercher et de commander des composants électroniques adaptés à notre maquette. Afin de réguler le taux d’humidité du rez-de-chaussée, nous sommes partis sur 2 ventilateurs placés aux extrémités de la pièce pour créer un courant d’air à l’intérieur de la maquette. Quant à la température, un système de chauffage par le sol a été la première idée qui m’est passée par la tête. Et ce fut le système le plus long et complexe à réaliser de la maquette. Pourtant la méthode semble au premier abord assez simple. Une résistance chauffante chauffe l’eau d’une réserve puis cette eau est distribuée sous le sol grâce à une pompe.

Schéma du principe de ventilation
Schéma du principe de chauffage par le sol

Pour le premier étage, le système est un peu plus simple. Deux fenêtres s’ouvrent et se ferment pour créer un courant d’air naturel. Deux capteurs viennent également capter (c’est leur métier) la température et l’humidité aux deux étages et affichent les valeurs sur un petit écran.

Le but final de notre projet étant de le présenter, j’ai également créé une application pouvant communiquer en Bluetooth avec la carte. Et oui, car si toutes les conditions sont bonnes, rien n’est en marche et ce n’est pas très marrant à regarder. C’est pourquoi cette petite application peut activer et désactiver les fenêtres, la pompe et les ventilateurs manuellement. Là, c’est tout de suite plus amusant !

Bref, une fois tous les composants branchés à la carte et aux différentes alimentations (eh oui, il y en a trois), il ne reste plus qu’à lancer notre programme principal et à voir si tout fonctionne, enfin ça, ça sera quand la maquette sera assemblée.

Test des ventilateurs et de la pompe (dans notre réserve d’eau expérimentale) contrôlés par des relais

Chapitre 3 : Une maquette est sortie de terre (ou de bois)

Passons au vif du sujet : la réalisation et la construction de notre maquette. Pour ça, nous avons pu compter sur les machines du FabLab et sur l’aide de Boris (un grand merci à lui) pour la découpe de nos mûrs, vitres et isolations, ainsi que sur l’impression des éléments en 3D comme le poteau.

Bon comme dit dans la première partie, le choix du matériau pour la construction des mûrs s’est rapidement tourné vers du bois. C’était en effet le seul matériau que nous avions sous la main, simple à découper et avec un bon rendu. Pour l’isolation, nous avons décidé d’utiliser du polystyrène pour le rez-de-chaussée (1cm de polystyrène entre deux murs en bois) et du liège pour le premier étage. Ça permet de varier les plaisirs et de comparer la capacité d’isolation des deux matériaux.

Un fois tous les murs, plafonds, sol et isolations découpés, il a fallu les assembler et les coller les uns aux autres afin d’avoir notre première ébauche de bâtiment.

Construction du rez-de-chaussée :

Assemblage des murs intérieurs
Assemblage des murs extérieurs

Construction du premier étage :

Assemblage des murs et du sol
Collage de l’isolation en liège

C’est à partir de ce moment-là qu’on s’est réellement rendu compte de la taille de notre maquette.

Assemblage de la maquette

Une fois le tout assemblé, il ne restait plus qu’à s’occuper de la décoration de la maquette. Nous avons donc décidé de créer une rambarde en bois sur le toit du rez-de-chaussée, et d’ajouter de la pelouse synthétique pour imiter un jardin de toiture. Après quelques coups de peinture et de vernis sur les murs, il ne restait plus qu’à créer et imprimer les supports pour le servomoteur et l’afficheur en impression 3D.

La dernière étape fut d’implanter le servomoteur, relié aux fenêtres par des tiges en acier afin de pouvoir les ouvrir et les fermer simplement, ainsi qu’un capteur de température et d’humidité au premier étage, puis une fois le tout assembler de tester si tous fonctionne.

C’est d’ailleurs souvent à cette étape que les problèmes commencent.

Chapitre 4 : A chaque problème, une solution il existe

Passons maintenant à la partie la plus importante de ce blog. Les Problèmes, avec un grand P.

Tout a commencé relativement tôt, lors de la recherche de composants. En effet, trouver des composants adaptés à la taille de la maquette, qui consomment peu et qui puissent être alimentés en 5V est tout bonnement impossible. Il a donc fallu innover et demander de l’aide à des personnes compétentes.

Premièrement, les ventilateurs et la pompe sont tous les 2 alimentés en 12V, il a donc fallu ajouter une alimentation 12V externe en plus de l’alimentation pour ma carte Arduino (en 5V). Jusque-là rien de très complexe.

Deuxièmement, la $#%!?@¡ de résistance chauffante. Si le système de chauffage par le sol est aussi complexe, c’est en partie grâce à elle. Les seules résistances chauffantes vendues sur le marché étaient soit des résistances de chauffe-eau, d’aquarium ou de bouilloire biens trop grandes pour rentrer dans notre réserve d’eau (qui est une tasse). Après une dizaine d’heures de recherche à essayer de trouver une solution, Adeline a eu la merveilleuse idée de demander à son père, ingénieur en électronique, s’il avait une solution. Et c’est à ce moment-là que le ciel à commencé à s’éclaircir, et qu’un rayon d’espoir a surgit d’entre les nuages. La solution parfaite était là. Une toute petite résistance, semi immergeable, avec une faible consommation.

Résistance chauffante 27.3 ohm

Au-delà des problèmes techniques, il y a également eu quelques petits soucis lors de l’assemblage de la maquette. A part quelques problèmes de dimensionnement pour emboiter les murs entre eux et quelques ajustements de l’isolation et du plancher à la ponceuse, le vrai problème fut lors de l’impression du poteau en 3D, ou plutôt, lors de la mise en place de celui-ci pour soutenir le premier étage. Et oui car dans un souci d’organisation des taches, nous avons décidé d’imprimer le poteau quasiment en premier. Sauf qu’après un changement d’épaisseur du plafond et du sol, notre poteau faisait 1cm de trop. Il a donc fallu le redécouper proprement à la scie à métaux (finalement plutôt bien adaptée pour les poteaux en 3D).

La partie programmation n’a pas non plus toujours été une partie de plaisir. Passer une demi heure sur un problème dont la solution se trouve juste sous nos yeux n’est jamais agréable. Mais pour ça, rien de mieux que de demander de l’aide et de réfléchir à plusieurs, la solution arrive rapidement et souvent par soi même.

“On appelle ça la technique du canard en plastique. Quand tu bloques sur un problème, tu en parles à un canard en plastique et tu finis souvent par trouver la solution tout seul ! “

Nathan Gallerand

Après quelques réglages, comme le remplacement d’un tuyau qui fuit ou le réglage du servomoteur qui n’en est pas un, notre maquette était enfin prête pour la dernière étape du projet.

Chapitre 5 : Test et rendu final

Bon concrètement qu’est ce que ça donne ?

Et bien ça fonctionne plus ou moins bien, du moins, d’un point de vue physique. Sur le plan technique en revanche, tout fonctionne parfaitement. La résistance chauffante chauffe les 25cl de notre réserve d’eau de 20°C à 40°C en une dizaine de minutes, la pompe se met en route quand la température est trop basse, les ventilateurs font circuler l’air pour diminuer le taux d’humidité, et après avoir découpé les fenêtres en deux pour diminuer leur poids, le servomoteur (qui n’en ai toujours pas un) arrive à les ouvrir et les fermer.

Mais du coup, qu’est-ce qui ne marche pas ? Et bien… c’est un peu le principe même de notre maquette qui fait défaut. Pour réguler le taux d’humidité tout se passe parfaitement. En revanche les tuyaux en plastique qui transportent l’eau chaude sous le sol conduisent assez peu la chaleur, et l’eau à beau être à 40°C, la température de la pièce évolue trop peu par rapport à notre objectif de base. Malgré ça, nous sommes vraiment contents du résultat, et surtout heureux d’avoir mené à bien notre projet (jusqu’au bout). Ces 100 heures nous ont permis de découvrir plein de choses, d’apprendre à travailler en équipe, et surtout de déconnecter un peu du théorique, ou du moins de l’appliquer à la réalisation de notre projet !

Rendu final

Projet d’extrusion et de bobinage de PLA recyclé

Remerciements

Nous souhaitons tout d’abord remercier nos professeurs référents Mr Laurent Saintis et Mr Adel Haddad pour le accompagnement ainsi que Boris qui à toujours été présent au fablab pour nous donner des conseils et répondre à nos requêtes quelques fois un peu étranges.

BONJOUR !!!

Nous sommes Eliott et Tristan, dans le cadre du projet de Peip2, nous avons travaillés sur un système qui permet de recycler les déchets d’impression 3D (supports, rebus …) pour en refaire du fil utilisable par les imprimantes du fablab de Polytech’Angers. Cette année nous avons récupéré un projet existant depuis 2019, nous ne sommes donc pas partis de zéro, l’extrudeuse avait été acheté par les élèves précédent (2023), les rouleau de tirage, les supports de bobine et tous les guides étaient encore en très bon état nous les avons donc gardé.

CONTEXTE

Au fablab de Polytech’Angers, un nombre important de pièces 3D est imprimée, ce qui génère une quantité non négligeable de rebus sans solution de recyclage. Il existe bien des machine sur le marché mais à des prix trop élevés comparé au bénéfice.

OBJECTIFS

La conception devra : 

  • Évaluer le système existant à partir de tests de fonctionnement 
  • Reconcevoir le système de tirage, 
  • Reconcevoir le système de bobinage pour contrôler au mieux la vitesse de rotation, 
  • Réaliser des tests de fonctionnements avec les éléments obtenus du broyeur. 

Si le temps le permet, plusieurs améliorations complémentaires peuvent être envisagées : 

  • Adapter l’automatisme d’asservissement du tirage de fil en fonction du diamètre mesuré, avec le nouvel extrudeur, 
  • Reconcevoir le sous-système de refroidissement. 

PRISE EN MAIN

Nous avons passé nos première séance à comprendre le système de départ c’est à dire le fonctionnement de l’extrudeur, l’utilité de chaque sous système et de chaque composant. L’extrudeur était relativement simple à comprendre, le fonctionnement est très instinctif, il suffit de l’allumer, de régler la température souhaité puis de saisir la vitesse de rotation de la vis sachant que ces deux paramètres peuvent êtres modifiés à tout moment une fois la machine en marche.

Nous avons ensuite tenté de mettre en marche les moteurs faisant fonctionner les systèmes de tirage et de bobinage malheureusement les engrenages n’ont pas bougé d’un millimètre. C’est ainsi que nous avons fait face à notre premier problème majeur…

ALIMENTATION DES MOTEURS

Afin régler ce premier problème, il a d’abord fallu chercher la panne ce qui nous à pris quelques heures pour conclure sur une alimentation défectueuse. Il nous a donc fallu commander une alimentation neuve pour les moteurs en respectant le voltage (12V) et ampérage(1.5A).

En attendant l’arrivé de la nouvelle alimentation, nous avons branché les moteurs sur une alimentation moins performante pour effectuer des tests, avec ces tests nous avons découvert un nouveau problème : le bruit excessif des réducteurs. Les groupes précédents avaient utilisé des réducteurs planétaires, ces réducteurs sont complexes techniquement mais beaucoup trop bruyants, nous avons donc décidé de concevoir des nouveaux réducteurs pour les systèmes de tirage et de bobinage.

LES RÉDUCTEURS

système de bobinage

Nous avons réfléchi à de nouveaux réducteurs 1/100, pour concevoir de tels systèmes, nous avons du penser à plusieurs paramètre tel que le module de chaque engrenage, comment relier les axes aux moteurs et à la sortie des systèmes, la manière de maintenir guider les axes, etc.

Les roues dentées sont donc glissé sur des axes et entraines la rotation par un méplat, les axes sont tenus par des supports en P qui sont eux mêmes glissé sur deux rails de niveau différents. L’ensemble du système est fixé à la table par des support en forme de crochets qui servent aussi à empêché les support de glisser sur leurs rails. Les supports aillant un certain jeu sur le rail nous les avons calés avec des morceaux d’adhésif pliés qui nous permettent de les maintenir tout en pouvant les retirer si besoin.

Une fois les réducteurs imprimés et montés, nous avons pu nous attaquer à la partie programmation de l’automatisation du système général.

AUTOMATISATION DU SYSTÈME

capteur de diamètre

Le but principal de notre projet est de produire un fil utilisable par les imprimantes 3D, pour cela il faut respecter un diamètre constant de 1.75mm, ainsi nous devons coder un régulateur de vitesse de tirage en fonction du diamètre du fil. Nous avons commencé par déplacer le capteur d’épaisseur entre l’extrudeuse et les rouleaux de tirage, nous l’avons ensuite câblé sur la carte arduino et programmé pour récupérer des valeurs exploitables, seulement nous avons constaté un bruit électrique dans le capteur ce qui nous a obligé à lisser les valeurs avec une moyenne sur cent diamètres pour avoir un diamètre mesuré stable et exploitable par le régulateur.
Pour réguler le diamètre nous avons utilisé une bibliothèque arduino appelé PID (potentielle intégrale dérivée). Le principe des bibliothèques en arduino est de ne pas avoir à coder un système complexe, on peut ainsi entrer les paramètres souhaités et la bibliothèque s’occupe des calculs, nous lui avons indiqué des constantes de régulations, notre diamètre cible, l’adresse du diamètre mesuré et des bornes de vitesse pour éviter qu’il devienne instable et casse les moteurs.

Nous n’avons pas pu finaliser le réglage du régulateur pour le plastique PLA car le matériaux est trop instable.

INSTABILITÉ DU PLA

Nous avons eu du mal à trouver la bonne température de fusion du PLA, si il est trop fondu il est trop malléable et trop collant si il est juste au dessus de la bonne température il est trop granuleux et si il est en dessous il devient trop fragile. Il a donc été difficile de trouver la bonne température et une fois celle si trouvé nous avons eu un problème de capteur, il nous a lâché et ne délivrait plus aucune valeur ce qui rend notre projet inabouti et notre écran inutile.

INTERFACE HOMME / MACHINE

interface (écran LCD et bouton ON/OFF)

Pour être au courant de ce qu’il ce passe dans le système nous avons eu l’idée d’installer un écran LCD qui affiche le diamètre mesuré du fil nous avons installé cet écran sur un support avec un interrupteur permettant d’allumer et éteindre les moteurs, pour éviter de faire du bruit inutilement et pour les arrêts d’urgence plus pratiques.

Une fois tous ces petits problèmes réglés, nous avons pu lancer le tirage d’un fil mais l’extrudeur à commencé à avoir du mal à tourner.

NETTOYAGE DE L’EXTRUDEUR

premier nettoyage de l’extrudeur

Nous avons entrepris de démonter entièrement l’extrudeur pour retirer les éventuels bouchons de plastiques qui pouvaient bloquer la vis. Nous avons opéré au décapeur thermique pour retirer la vis et vider le conduit. Une fois la machine remontée la vis ne tournait toujours pas normalement, après analyse il s’est avéré qu’elle n’était plus fixé correctement à l’arbre moteur, c’est donc en refixant tous les composants que nous avons pu réparer l’extrudeur

FIN DU PROJET

Nous sommes ainsi arrivé à la fin de notre période de projets, nous allons maintenant le présenter aux élèves de Peip1 et au personnel de l’école, nous leur présenterons un projet certes peut fonctionnel mais avec beaucoup de travail de fait. Nous passons alors le flambeau aux prochains groupes à passer sur ce projet dans les années à venir …

ACCORDEUR DE GUITARE AUTOMATIQUE – PROJET PEIP2A

Bienvenue à toutes et tous sur le blog du projet d’accordeur de guitare Automatique !

Ce projet s’adresse à tous les passionnés de musique et plus particulièrement d’instruments à cordes ! En effet, les cordes de nos instruments ont une fâcheuse tendance à se détendre modifiant ainsi le son de nos instruments préférés (guitare, basse, ukulele, etc…). L’accordage est donc une compétence essentielle pour tout bon musicien.

Cependant, tout le monde n’a pas l’oreille absolue!

C’est ici que notre projet prend tout son sens. L’objectif est de rendre totalement automatique l’accordage d’une guitare. De la captation et l’analyse de fréquence jusqu’à l’action mécanique d’ajustement des cordes.

Premiers pas en terre inconnue…

Les prémices de notre projet ont surtout été une recherche d’informations sur le fonctionnement du système d’accordage d’une guitare classique et les éléments qui le compose.

Nous avons aussi commencé à prendre en main le logiciel de programmation Arduino (un logiciel qu’aucun d’entre nous ne savait utiliser auparavant). Car nous n’étions pas seuls dans cette épopée, notre fidèle Arduino UNO serait là pour assurer toute la partie commande électronique du projet.

Notre projet fait appel à de nombreuses compétences dans des domaines aussi variés que le traitement du signal, l’analyse et la conception de systèmes mécaniques ou encore l’analyse de données. Nous avions pu aborder brièvement certaines de ces notions en cours cependant les appliquer dans un projet concret est une autre paire de manches. Nous avons donc décidé de décomposer les tâches de notre projet afin d’avoir un plan d’attaque!

Partie analyse fréquentielle

La musique et tous les sons existants se traduisent physiquement par des fréquences. Dans notre projet il est donc important de comprendre que chaque cordes/notes est associée à une fréquence distincte.

https://2.bp.blogspot.com/-p5dtCeP6Q4w/WLF8Ncy9iTI/AAAAAAAAGJo/rmRC4Q4YClc8SqNgeJNxupM9PQCnddrtgCK4B/s1600/Guitar%2BStrings%2BFrequency%2BChart.JPG

Bien que fièrement armé de nos bagages théoriques acquis en cours de mathématiques du signal, la partie analyse fréquentielle ne fut pas de tout repos. Nous avons essuyé plusieurs échecs de codes et de techniques de traitement de signal les unes après les autres : Transformée de Fourier, Fast Fourier Transformé, Zero Crossing

Notre code final est principalement basé sur une technique d’Autocorrélation auquel nous avons ajouté de nombreux seuils et intervalles afin d’éviter les valeurs erronées que le programme pourrait capter par erreur. En effet, même avec un code de captation optimal, plusieurs éléments parasites peuvent fausser les résultats et les valeurs acquis par notre fidèle micro Amplificateur MAX 4466!

Partie Affichage et Architecture

Après avoir terminé la partie d’analyse fréquentielle, il fallait maintenant concevoir une architecture permettant à la machine de transmettre ses résultats avec l’utilisateur. Nous avons opté pour une interface simple d’affichage sur un LCD I2C 4*16.

Afin de compléter l’architecture de notre accordeur, nous avons ajouté 6 leds indiquant la corde que nous souhaitons accorder ainsi que 2 boutons pressoirs afin de sélectionner celle-ci. (A tout cet ensemble viennent s’ajouter 3 leds de différentes couleurs dont le but est de renseigner le niveau d’accordage (Trop accordé/OK/Pas assez accordé).

Partie mécanique

Après avoir accompli les premières étapes du projet, le prochain défi de notre périple fut donc la partie système mécanique/moteur ou comment faire tourner les chevilles de réglages de la guitare.

CAO support chevilles de réglages

Le premier défi a été de modifier le fonctionnement du moteur à notre disposition. En effet, notre servo motor était un moteur de position. En d’autres termes, le moteur ne pouvait pas tourner à 360° et devait retourner à sa position initiale afin d’effectuer un nouveau serrage/desserrage.

Miuzei Servo Rc 25kg Servomoteur Digital Standard 180 Metal Waterproof Compatible avec Arduino Pour Voiture Rc 1/10 1/8 1/12 Bras Robot Modelisme Voilier

Avec beaucoup de courage et un peu de soudure, nous avons réussi à contourner les restrictions de positionnement de notre servo motor liés à sa carte électronique.

Finalement, nous avons associé les programmes liés à la partie fréquentielle et la partie contrôle moteur grâce à une Arduino Motor Shield. Cette association demande un regard attentif sur la datasheet du motor shield afin d’éviter les conflits de broches liés aux pins utilisés par défauts par le motor shield.

Conclusion

Brouillon montage
Montage final

Ça y est, c’est la fin de notre voyage. L’accordeur est fonctionnel et prêt à accorder les cordes les plus coriaces! Il ne reste plus qu’à vous faire une petite démonstration de ses capacités.

Démo moteur accordeur automatique

Bien que fonctionnel, ce projet offre de nombreuses perspectives de progression et d’amélioration. Tout d’abord, la possibilité de proposer l’accordage d’autres instruments à cordes (ukulele, basse, violon, etc…). Des questions de fréquences et de puissance mécanique seront alors à prendre en compte. Nous pouvons aussi émettre la possibilité d’accorder toutes les cordes d’une guitare en les grattant toutes en même temps comme dans la vidéo suivante :

Nous offrons ces idées dans le cas où de nouveaux étudiants voudraient reprendre le flambeau en s’appuyant sur notre travail.

Merci d’avoir suivi notre aventure/blog !

Ackhavong Kesian

Arlot Tom

Le Callet Ewen

Réveil Personnalisé

Bonjour à toutes et à tous,

Dans cet article, nous allons vous présenter notre projet de conception réalisé dans le cadre de notre deuxième année en cycle préparatoire à Polytech Angers. Nous sommes trois étudiantes à travailler ensemble sur le projet d’un réveil connecté et personnalisé, une tâche que nous avons abordée avec enthousiasme et créativité !

Nous avons choisi ce projet de part son originalité, son authenticité et sa nouveauté.

Ce projet a l’avantage d’être :

  • Innovant ;
  • Créatif ;
  • Inédit ;
  • Libre d’imagination ;
  • Réalisable dans son entièreté.

Voici une courte vidéo pour vous donner un premier aperçu de notre projet : 

Présentation Projet Réveil Personnalisé

Notre Projet

Notre projet de conception consiste à créer un réveil connecté entièrement personnalisé, regorgeant de fonctionnalités. Imaginez un réveil qui se connecte automatiquement au Wi-Fi dès que vous l’allumez, affichant ainsi en permanence l’heure exacte. Plus besoin de régler manuellement l’heure, même lors des changements saisonniers ! Ce réveil est conçu pour être simple et intuitif, accessible à tous. Notre objectif est de rendre votre routine matinale plus fluide et sans tracas. Avec ce réveil, vous pouvez commencer chaque journée du bon pied.

Présentation du matériel

Pour réaliser ce projet, nous avons utilisé plusieurs outils et composants tels que :

Logiciel de Programmation

Arduino IDE : À l’aide de ce logiciel de programmation, nous avons développé l’ensemble de notre programme. Pour cela, nous avons dû coder en langage C, en y intégrant plusieurs bibliothèques afin d’élargir le nombre d’options disponibles. Arduino fonctionne sur le principe de boucles. La boucle `setup()` s’exécute une seule fois, au démarrage, tandis que la boucle `loop()` se répète indéfiniment.

Interface Logiciel Arduino IDE
Interface logiciel Arduino IDE

Microcontrôleur

Carte ESP32
Carte ESP32

Nous avons ensuite téléchargé ce programme sur une carte ESP32. Cette carte présente plusieurs avantages :

  • Sa taille : elle est très petite ;
  • Sa basse consommation : 5V ;
  • Sa connectivité : elle dispose d’une connectivité Wi-Fi et Bluetooth, ce qui la rend parfaite pour des applications IoT.
DFPlayer Mini
DFPlayer Mini

Module de lecture audio

DFPlayer Mini : Pour ajouter une banque de musiques, nous nous sommes servies d’un module de lecture audio DFPlayer Mini. Ce composant permet de lire des fichiers MP3 directement depuis une carte micro SD et assure également la communication avec le haut-parleur.

Diffusion Audio

Haut-parleur : Pour diffuser la musique, nous avons utilisé un petit haut-parleur qui permet d’écouter les morceaux pré-téléchargés sur la carte micro SD. Ce dispositif, compact et facile à intégrer, offre une qualité sonore convenable malgré sa taille réduite.

Haut-parleur
Haut-Parleur

Affichage

Ecran TFT_eSPI 1.8
Ecran TFT 1,8

Ecran TFT_eSPI : Pour visualiser nos diverses fonctionnalités, nous avons opté pour un écran TFT de 1,8 pouce. Celui-ci nous permet d’afficher l’heure, l’alarme, la météo et le menu Paramètres. Avec ses dimensions de 128 par 160 mm, il offre à l’utilisateur un affichage suffisamment grand.

Lumière

Ruban LED

Nous avons utilisé un ruban LED comme source lumineuse, offrant plusieurs avantages :

  • Faible consommation : les LEDs consomment très peu d’énergie et fonctionnent sous 5V ;
  • Large choix de couleurs : toutes les nuances ;
  • Possibilité de sélectionner le nombre de LEDs utilisées.

Etapes de Réalisation

A. Programmation

1. Connexion Wi-Fi

Nous avons commencé par la programmation, une partie cruciale de notre projet. Pour cela, nous avons configuré le réveil pour qu’il se connecte automatiquement au Wi-Fi dès son démarrage, assurant ainsi une mise à jour continue de l’heure.

2. Configuration de l’Alarme

Ensuite, nous avons développé une fonction permettant à l’utilisateur de configurer son alarme pour le lendemain matin. Nous avons intégré un bouton “alarme”, ainsi que des boutons “plus” et “moins” pour ajuster l’heure. Une fois l’heure programmée, l’utilisateur peut facilement arrêter l’alarme en appuyant sur le bouton prévu à cet effet.

3. Menu Paramètres

Nous avons ajouté un menu paramètres accessible via un appui long sur le bouton dédié. Ce menu permet de sélectionner la musique de l’alarme, de régler la durée du simulateur d’aube et de choisir la couleur de la lampe de chevet.

4. Simulateur d’Aube

Le réveil dispose également d’une fonctionnalité “Aube” qui permet à la lumière de s’allumer progressivement avant que l’alarme ne sonne, offrant un réveil plus naturel et plus doux.

5. Affichage de la Météo

Grâce à la connexion Wi-Fi, l’adresse IP et la clé API, le réveil nous géolocalise et affiche la météo. L’utilisateur connaît alors la température et les conditions météorologiques extérieures de la ville où il se trouve.

6. Lampe de chevet

Notre réveil fait également office de lampe de chevet. L’utilisation de LEDs nous a permis de créer une ambiance personnalisée dans la chambre grâce à un large panel de couleurs : Blanc, Jaune, Orange, Rouge, Vert, Bleu, Violet et Rose.

Voici ci-dessous, le fonctionnement de notre réveil avec la démonstration des diverses options :

Vidéo explicative de l’utilisation de notre Réveil Personnalisé

B. Conception

La conception de ce réveil était essentielle pour nous, car l’aspect esthétique constituait un critère primordial. Pour le réaliser, nous avons suivi plusieurs étapes :

Étape 1

Boîte en bois mélaminé

Nous avons recherché des composants adaptés pour réaliser notre réveil :

  • Une sphère en plexiglas diffusant
  • Une boîte en bois mélaminé pour obtenir un aspect esthétique de qualité. Cette boîte, mesurant 140 x 140 x 90 mm, a été conçue avec des coupes à 45° sur les bords pour dissimuler les tranches.

Étape 2

Perçage des trous :

  • Un trou circulaire sur le dessus pour accueillir la sphère ;
  • Un trou rectangulaire pour insérer l’écran ;
  • Des petits trous de 1,5 mm pour laisser passer le son du haut-parleur ;
  • Six trous de 8 mm pour les boutons.
Perçage boutons
Perçage sphère
Perçage son
Résultat

Étape 3

Collerette blanche

Fabrication des caches pour dissimuler les bords rugueux :

  • Un rectangle noir autour de l’écran, réalisé par découpe laser;
  • Une collerette blanche en impression 3D autour de la sphère;
  • Un cache noir pour le passage du câble d’alimentation.
Logos
Soudure

Étape 4

Découpage de logos sur l’avant du réveil pour indiquer la fonction de chaque bouton.

Étape 5

Soudure : Assemblage des composants à l’aide d’un fer à souder et de gaines rétractables.

Étape 6

Réalisation en SolidWorks d’une maquette pour fixer les composants à l’intérieur de la boîte.

Étape 7

Nous avons enroulé un ruban LED sur un cylindre de façon à obtenir une lumière uniforme.

SolidWorks
Assemblage composants sur socle
Résultat intérieur Réveil

Étape 8 :

Enfin, nous avons procédé à l’assemblage et à la fixation de tous les éléments à l’intérieur de la boîte pour obtenir le produit fini.

Conclusion

À travers ce travail, nous avons pu nous exercer à la gestion de projet, à la répartition des tâches à accomplir ainsi qu’au travail d’équipe. Ce projet a également été l’occasion d’améliorer nos compétences dans plusieurs domaines tels que la programmation, l’électronique et le travail manuel. De plus, nous sommes ravies de notre travail accompli. Malgré les difficultés rencontrées, nous avons toujours su les surmonter. Avoir réussi à concrétiser notre idée de départ rend notre travail d’autant plus gratifiant. Notre réveil répond à l’ensemble de nos attentes aussi bien sur le plan technique qu’esthétique. Nous remercions notre professeur référent, Monsieur Sylvain Bignon, pour son aide et sa bienveillance tout au long de la réalisation de notre projet.

Nous vous remercions d’avoir lu ce blog, en espérant qu’il vous aura plu.

PRIOLET Amandine

BLANCHET Margot

OLLIVIER Maéva

Liens des images utilisées :

Optimisation Jeux

Et si l’on facilitait la vie des gens en un clic ?

C’est l’objectif de notre projet : Proposer un site internet à une ludo-crèche qui leur permettrait de gérer toutes leurs demandes d’emprunt de jeux, en un clic. Il nous faut pour cela : 

  • Apprendre à coder en PHP.
  • Trouver un moyen d’attribuer un ensemble de jeu à un ensemble de personnes de manière automatique.
  • Gérer tout ce qui est relatif à un site internet : mise en ligne, hébergement…

Objectif : Un site web qui satisfait les utilisateurs comme les responsables et qui fait gagner du temps a tout le monde


Première étape : Apprendre à coder

C’est parti pour apprendre à coder. Entre les bases de HTML et CSS nécessaires pour comprendre PHP, la syntaxe de PHP, la structure du code… On y a passé plus d’une vingtaine d’heures.

En plus d’apprendre à coder en PHP pour réaliser l’affichage et le fonctionnement du site, on devait aussi utiliser MySQL qui est une base de données avec son propre langage ainsi qu’un solveur : un langage de programmation visant à résoudre des problèmes mathématiques.

L’apparence d’une table d’une base de donnée MySQL


Commençons la programmation du site

Chacun de ces fichiers compte entre 10 et 500 lignes de code, de quoi vite s’y perdre…

La phase d’apprentissage étant terminée, nous avons pu commencer à réaliser une première version du site, un peu vide puisque nous avions très peu d’informations sur le contenu et l’aspect qu’il devait avoir. C’est là qu’on se heurte à nos premiers problèmes :

Le travail en coopération : étant donné le temps que l’on avait pour créer ce site, il y allait avoir beaucoup de code réparti sur beaucoup de pages. Au bout d’un moment, on s’est rendu compte que l’on n’avait pas tous la même manière de coder et la structure du code s’est vite dégradée. Il a fallu imposer des règles strictes pour s’assurer qu’on puisse garder l’ensemble des pages de codes claires tout au long du projet.

La fonction d’attribution : sans rentrer dans les détails, pour attribuer les jeux aux emprunteurs, il faut représenter cette tâche par un problème mathématique que l’on va ensuite résoudre grâce à un solveur. Ce solveur nommé GLPK sert à résoudre des programmes linéaires, cependant, il faut apprendre à coder dans ce langage. Le problème étant que quasiment personne n’utilise GLPK, et cela se ressent dans l’absence de documentation sur ce langage. Notre seule manière d’apprendre était d’utiliser un simple PDF de quelques pages sur GLPK et de faire des essais et des erreurs.


Une quantité de travail inattendue

Ce site devait simplement permettre à des utilisateurs de faire des demandes de prêt de certains jeux et permettre aux responsables du site d’attribuer ces jeux automatiquement, mais il y avait bien plus de travail derrière que ce que l’on imaginait. 

Voici une liste non exhaustive de ce qu’il faut faire pour qu’un site comme celui-là fonctionne : 

  • Faire un système de connexion/inscription.
  • Créer différentes interfaces en fonction de qui est connecté (Simple utilisateur ou responsable).
  • Stocker les données des utilisateurs et des responsables à l’aide d’une base de données.
  • Gérer les flux d’information entre les pages.
  • Lier plusieurs langages, PHP pour l’affichage et la gestion du site, GLPK pour le système d’attribution des jeux et MySQL pour le stockage de données.
  • Créer un ensemble de fonctionnalités qui font le contenu du site (Faire et supprimer des vœux, voir les jeux disponibles et demandés, voir les informations de son compte…)

Le résultat final

Malgré les quelques problèmes mentionnés plus tôt et les nombreuses heures passées à débugger le site, nous sommes finalement parvenus à la version définitive qui répondait aux attentes du client. Ce site permet aux adhérents de la ludo-crèche de demander d’emprunter des jeux, de consulter toutes les informations dont ils ont besoin (infos personnelles, infos sur les jeux, consulter leurs vœux et leurs jeux attribués…). Ce site est surtout utile aux responsables de la ludo-crèche, car ils peuvent désormais obtenir directement une liste à jour des demandes d’emprunt, attribuer les jeux d’une manière presque optimale, bien meilleure que ce qu’ils auraient fait à la main et surtout bien plus rapidement. En plus du projet initial, nos clients nous ont demandé des fonctionnalités supplémentaires afin que ce site seul permette la gestion totale des prêts de jeu. Ainsi il leur permet aussi de gérer leurs stocks et de savoir où sont les jeux plus simplement. Notre site leur offre une archive de toutes les attributions précédentes, une liste de leurs membres et la possibilité d’avoir différents modes d’emprunts.

L’ensemble des jeux demandés par chacun, ainsi qu’un bouton qui s’occupe automatiquement de l’attribution qui aurait pris plusieurs heures à la main.
Un formulaire permettant l’ajout rapide d’un jeu

Conclusion

Ce projet était une expérience vraiment différente du genre de travaux que l’on a fait jusqu’à maintenant dans nos études. Ce qui nous a motivé à nous investir autant, c’est le fait de savoir qu’il serait vraiment utile et qu’il aiderait des personnes au quotidien. Ce projet a été l’occasion de se mettre dans la peau d’un professionnel et de concevoir un produit pour un client, d’autant plus que même après la date limite de réalisation du projet, nous accompagnerons nos clients pour s’assurer que tout fonctionne correctement. C’était aussi un bon entraînement à la programmation pour deux d’entre nous qui allons poursuivre nos études dans le domaine de l’informatique.

Polytech Angers – Projets PEIP2

Projet réalisé par Florian Louveau, Maxence Martin, Noé Cabaud-Bloquel.