SE3Groupe2025-11
Programmation des systèmes embarqués
Carte électronique
Carte réalisée en utilisant le logiciel KiCAD : Fichier:2025-PSE-G11-PROG.zip.
Schéma électronique de la carte :
Résultat du routage :
Résultat 3D :
Photo de la carte soudée :
Vidéo très courte et en basse résolution de la carte en fonctionnement :
Média:2025-PSE-BB-PROG-video.mp4
Programmation
Bilan
J'indique où j'en suis arrivé à la fin des séances.
Eventuellement la vidéo brève du fonctionnement complet du programmateur : Média:2025-PSE-BB-PROG-final.mp4.
Premier système embarqué
Archive GIT
Mon archive GIT pour le projet KiCAD et pour les programmes : [1].
Description du système embarqué
=== Objectif === L'objectif de ce projet est de concevoir une télécommande de présentation intelligente et sans fil. Elle devra être capable de contrôler un ordinateur à distance (diaporama, pointeur laser ), tout en assistant l'orateur dans la gestion de son temps de parole via un écran OLED, une jauge LED et des alertes haptiques. Nous l'avons donner un nom SMART PRESENTER
Fonctionnalités de la télécommande :
Notre télécommande posséderas plusieurs fonctionnalités parmi lesquels nous avons :
-> Contrôle et Navigation (Interaction avec le PC) : * Navigation des diapositives : Passage à la diapositive suivante ou précédente via des boutons physiques dédiés. * Pointeur Laser intégré : Activation d'un laser physique pour désigner directement des éléments sur un écran de projection ou un tableau. * Mode "Stay focus" : Un bouton qui envoie une commande au PC. Cela coupe l'affichage de la présentation (écran noir) pour que l'auditoire se concentre uniquement sur l'orateur. Ou encore un mode qui afficherais selement une partie de la diapos afin que l'auditoir se concentre sur un point précis délimité par un cercle ou l'extérieur est mis en mode sombre.
-> Assistance et Gestion du Temps (Feedback Utilisateur) : * Moniteur OLED : Affichage en temps réel du chronomètre, du temps restant et du nom de la partie en cours de la présentation. * Jauge de progression visuelle : Indication de l'avancement du temps via une barre de LEDs RGB intégrée (changement progressif de couleur, du vert vers le rouge). * Alertes Haptiques (Vibreur) : Vibrations discrètes ressenties dans la main pour avertir l'orateur des paliers cruciaux (mi-parcours, dernière minute, temps écoulé).
-> Fonctionnalité intelligente: * Mise en veille automatique : Utiliser un accéléromètre pour détecter si la télécommande est posée sur la table. Si elle ne bouge plus pendant 2 minutes, l'écran OLED s'éteint pour économiser la batterie.
== Conception des circuits ==
Pour la conception de notre télécommande de présentation nommée SMART PRESENTER, l'analyse de conception de ce dernier est plutôt subdivisée en deux grandes phases.
Nous aurons entre autres la conception de la télécommande principale elle-même et également du socle récepteur qui sera relié à l'ordinateur.
Le système s'appuiera sur le principe de communication radio pour l'échange de données entre la télécommande et le socle de réception connecté au PC de l'orateur.
Nous allons maintenant analyser en profondeur chacun des grands circuits de notre projet afin de choisir les composants, de valider ces derniers, de concevoir leurs schémas et de réaliser le routage du circuit final.
Composants du projets
L'architecture de notre système s'articule autour des éléments suivants :
==== Le microcontrôleur MCU :ATMEGA32U4 ====
Le microcontrôleur ATmega32U4, basé sur l'architecture AVR RISC 8 bits, constitue le cerveau et le centre d'orchestration de l'ensemble du socle récepteur.
Ce composant a été spécifiquement sélectionné pour ses caractéristiques matérielles qui répondent parfaitement aux exigences d'une passerelle de communication radio-vers-PC.
Le choix de ce composant s'articule autour des atouts techniques suivants : -> Contrôleur USB 2.0 natif (Hardware USB) : C'est l'argument principal de cette architecture. Contrairement à d'autres microcontrôleurs nécessitant une puce convertisseuse externe (type FTDI ou CH340) générant des ports séries virtuels souvent instables, l'ATmega32U4 intègre un module USB directement dans son silicium. Cela permet une émulation matérielle pure des périphériques d'interface humaine (HID), indispensable pour un fonctionnement "Plug & Play".
-> Bus de Communication (SPI Matériel) : La puce dispose d'un contrôleur matériel SPI dédié, essentiel pour dialoguer à haute vitesse avec le module radio nRF24L01+.
-> Ressources Mémoire : Doté de 32 Ko de mémoire Flash et de 2.5 Ko de SRAM, l'ATmega32U4 dispose d'un espace de stockage amplement suffisant pour héberger la pile logicielle USB (framework LUFA), les descripteurs complexes du périphérique, et la logique de décodage des trames radio.
Tout cela est résumé dans le tableau ci-dessous :
| Caractéristiques | ATmega32U4 |
|---|---|
| Architecture | AVR 8 bits |
| Mémoire Flash | 32 KB |
| RAM (SRAM) | 2.5 KB |
| EEPROM | 1 KB |
| Fréquence d'horloge max. | 16 MHz |
| Nombre de broches GPIO | 26 |
| Interfaces de communication | UART, SPI, I²C, USB 2.0 |
| Contrôleur USB intégré | Oui (USB 2.0) |
| Taille des registres | 8 bits |
| Nombre de broches | 32 |
| Différences principales | Conçu pour des applications nécessitant un contrôleur USB intégré, avec une mémoire et un nombre de broches intermédiaires |
Datasheet ATmega32u4 :
====
La communication radio
====
Il s'agit d'un transceiver (émetteur-récepteur) très basse consommation fonctionnant dans la bande de fréquences libre ISM (Industrial, Scientific and Medical) des 2.4 GHz.
il seras utiliser dans notre cas pour la réception des data provenant de la télécommande principale et le mettre a la disposition du MCU pour la transmission au PC .
Ensemble des spécificité technique du composants est décrite dans la datasheet :
Datasheet NRF24L01 :
Le Régulateur de Tension LDO (Adaptation d'Énergie)
Bien que le socle récepteur bénéficie d'une source d'énergie théoriquement infinie grâce au port USB de l'ordinateur hôte (délivrant une tension nominale de 5V), une adaptation stricte de cette tension est impérative. En effet, si le microcontrôleur ATmega32U4 exploite nativement ce 5V pour fonctionner à sa fréquence maximale de 16 MHz, le module radiofréquence nRF24L01+ possède une tolérance absolue fixée à 3.6V. Une exposition directe au VBUS de l'USB entraînerait la destruction immédiate de la puce RF.
Pour pallier ce problème et garantir l'intégrité du système, l'architecture intègre un régulateur de tension linéaire à faible chute (LDO - Low Drop-Out), tel que le LM1117-3.3.
Datasheet NRF24L01 :
Le Moteur Haptique (ERM)
Pour offrir une expérience ergonomique optimale à l'orateur, la télécommande intègre un micro-moteur vibrant de type ERM (Eccentric Rotating Mass).
Son rôle principal est de fournir un retour haptique discret. Cela permet de transmettre des alertes temporelles à l'utilisateur (par exemple, de signaler par une légère vibration qu'il ne reste que 5 minutes de présentation) sans l'obliger à regarder l'écran, lui permettant ainsi de maintenir un contact visuel constant avec son public.
D'un point de vue matériel, le pilotage de ce moteur (qui constitue une charge fortement inductive) ne peut pas se faire directement via les broches du microcontrôleur. Il nécessite un sous-circuit de puissance et de protection robuste :
Pilotage (Low-Side Switching) : Utilisation d'un transistor MOSFET Canal-N (ex: 2N7002) pour agir comme un interrupteur commandé par la masse. Il est piloté par un signal PWM de l'ATmega32U4, ce qui permet de faire varier l'intensité de la vibration. Protection (Diode de roue libre) : Ajout d'une diode Schottky rapide en anti-parallèle du moteur. Elle est vitale pour dissiper l'énergie de la bobine et bloquer les pics de tension destructeurs (force contre-électromotrice) lors de l'arrêt du moteur. Filtrage antiparasite : Un condensateur de découplage de 100 nF est placé en parallèle pour absorber le bruit électrique généré par les balais du moteur, évitant ainsi de perturber la communication du module radio nRF24L01+. Alimentation isolée : Le moteur tire son énergie directement de la batterie (VBAT_SW) et non du régulateur LDO 3.3V, pour préserver la stabilité de la tension de la logique numérique.
La baterie lithium :
Élément incontournable pour une autonomie de la télécommande nous avons opter pour la LP-402933-1S-3.
Ce choix est dicté tout dabbord par l'exigence de finesse de la télécommande . Ses 4 mm d'épaisseur permettent une intégration sans surépaisseur du boîtier, tout en garantissant une autonomie suffisante pour environ 15 à 20 présentations d'une heure. Emplacement : Pour une meilleur sécurité une tolérance de +0.2 mm dans le boîtier serais plus optimal pour prévenir un éventuel gonflement naturel de la cellule LiPo en fin de vie.
Tension & Courant de charge : La batterie est alimenté à 4.2V. Pour maximiser sa durée de vie, le circuit de charge sera configuré avec une résistance de programmation limitant le courant à 180 mA.
Le Pointeur Laser
Élément incontournable d'une télécommande de présentation, le module laser rouge (5mW / 650nm) permet à l'orateur de mettre en évidence des éléments clés sur son support visuel.
D'un point de vue de la conception électronique, nous avons délibérément choisi d'appliquer le principe KISS (Keep It Simple, Stupid) pour ce circuit. Plutôt que de piloter le laser via une broche du microcontrôleur et un transistor, l'architecture repose sur une connexion matérielle directe :
Circuit en série direct : Le laser est alimenté directement par la tension de la batterie (VBAT_SW), en passant simplement par un bouton poussoir dédié.
Avantages de cette architecture : Ce choix permet de libérer des broches d'entrées/sorties sur l'ATmega32U4 et d'alléger le code C (aucune ligne de code n'est requise pour le laser). De plus, le système offre une latence nulle et une fiabilité totale : même si le microcontrôleur est occupé par une tâche complexe ou subit un plantage, le laser fonctionnera toujours.
L'Écran OLED (Interface Visuelle)
L'écran OLED (généralement un module de 1.3 pouces) constitue le tableau de bord de la télécommande. Très économe en énergie (les pixels noirs ne consommant rien), il permet de fournir à l'orateur des informations critiques sans le distraire : temps écoulé (chronomètre), niveau de batterie restant, et confirmation de la connexion radio avec le socle récepteur.
L'intégration de ce module s'articule autour des choix techniques suivants :
Communication I²C : L'écran dialogue avec le microcontrôleur ATmega32U4 via le bus I²C (broches SDA pour les données et SCL pour l'horloge). Ce choix permet de minimiser le nombre de pistes sur le circuit imprimé (seulement 2 fils de données nécessaires).
Cohérence des niveaux logiques : Contrairement au moteur ou au laser, l'écran OLED est alimenté par le réseau régulé +3V3. Il est crucial que l'écran et le microcontrôleur partagent exactement la même tension d'alimentation (3.3V) pour que leurs signaux logiques (les 0 et les 1) soient parfaitement compatibles sans nécessiter de convertisseur de niveau logique (Level Shifter).
Contrôleur de charge MAX1873REEE+
Le MAX1873REEE est le cerveau de la gestion énergétique de notre télécommande. Son rôle est de transformer la tension d'entrée (USB) pour charger la batterie LiPo en toute sécurité. Rôle :
Protection de la batterie : le côntroleur de charge assure que la batterie LP-402933 ne dépasse jamais 4.2V, évitant ainsi tout risque de gonflement ou d'incendie dans le boîtier fermé et compact. Il gère le cycle de charge intelligent (Courant Constant / Tension Constante). Il protège donc la batterie contre les pics d'intensité qui pourraient réduire sa durée de vie.
Gestion thermique : Contrairement à des chargeurs basiques, le MAX1873REEE+ est un contrôleur à découpage qui chauffe très peu. C'est un point clé car la télécommande sera tenue en main et donc une chauffe excessive serait inconfortable pour l'utilisateur pendant une présentation
Indicateur d'état : Il permet au système de savoir quand la charge est terminée, ce qui nous permet d'éteindre la LED de charge.
Carte électronique
Carte réalisée en utilisant le logiciel KiCAD : Fichier:2025-PSE-BB-systeme.zip.
Schéma électronique de la carte :
Résultat du routage :
Photo de la carte soudée :
Vidéo très courte et en basse résolution de la carte en fonctionnement :
Média:2025-PSE-BB-systeme-video.mp4
Travail effectué
Voici l'état d'avancement des travaux de conception de notre télécommande :
-> 16 février 2026 :
*Choix du projet : Après l'émergence de plusieurs idées (écran de monitoring et régulation de température, conception d'une manette de jeu, etc.), nous avons finalement décidé de réaliser une télécommande intelligente pour la gestion des présentations. Elle inclura plusieurs fonctionnalités pour aider au mieux l'orateur, comme le contrôle des diapositives et des alertes temporelles bien définies. Nous avons nommé notre projet : SMART PRESENTER. * Mise en place des outils : Création, configuration et structuration du dépôt Git pour faciliter le partage des fichiers au sein du binôme et permettre le suivi par les examinateurs. * Documentation : Configuration du Wiki pour tracer nos choix techniques et afficher nos résultats (faisant office de rapport écrit continu de notre travail).
-> 2 mars 2026 : ' Après avoir validé le choix du projet et les configurations initiales, nous sommes passés à la phase de spécification et de conception : * Définition détaillée des différentes fonctionnalités de la carte. *Organisation du travail et finalisation de l'architecture globale du système. Il en ressort la nécessité de fabriquer deux cartes distinctes : un socle récepteur (dongle USB) et une télécommande principale sur batterie. * Début de la conception du schéma électrique pour le socle récepteur (choix des composants et validation de l'architecture). *Mise à jour du dépôt Git et du Wiki.
-> 9 mars 2026 : Revue de conception : Contrôle et validation du schéma du socle récepteur par l'examinateur. Quelques corrections ont été apportées suite à ses retours pour fiabiliser la carte. Nomenclature : Établissement de la liste des composants (BOM) du socle récepteur avec l'identification des références Mouser exactes en vue de l'achat. Carte principale : Début de la conception schématique de la télécommande principale (SMART PRESENTER).
-> 17 mars 2026 : fin des corrections des deux cartes (main_board et la receiver_board) de notre télécommande Assignations des empreintes des composants des deux cartes Debut du routage de la receiver board
-> 24 mars 2026 :
corrections des derniers erreurs sur les deux cartes ( main board et la receiver board) apres remarques du prof
fin du routage de la receiver board
Bilan
J'indique où j'en suis arrivé à la fin des séances.
Eventuellement la vidéo brève du fonctionnement complet du programmateur : Média:2025-PSE-BB-systeme-final.mp4.
faire une petite mise a jour et met rend cela bien prensenatable

