SE2a4 Projet système/réseau 2023/2024
Objectif
L'objectif est de concevoir un système permettant de gérer l'état des écrans d'une salle de travaux pratiques.
Le système est composé des éléments suivants :
- des cartes USB fixées sur les écrans et connectées en USB sur la station la plus proche ;
- des serveurs Web sur chaque station qui peuvent être accédés en utilisant un navigateur Web classique.
Le serveur Web d'une station, en plus de servir des pages Web, va gérer les cartes USB locales et écouter les requêtes UDP de gestion des écrans.
Il vous faut programmer à la fois le micro-contrôleur des cartes USB et le serveur Web.
Matériel
Vous devez concevoir et réaliser une carte électronique pour gérer un écran. Cette carte être conçue mécaniquement pour se fixer dans l'angle du moniteur où se trouvent le bouton permettant d'allumer et d'éteindre le moniteur et la LED de statut de ce même moniteur.
Un servo-moteur doit pouvoir se clipser sur la carte pour appuyer sur le bouton et un photo-récepteur doit pouvoir contrôler si la LED du moniteur est allumée ou non.
La carte doit être architecturée autour d'un ATmega16u2 et comporter quelques LED commandées en plus de l'écosystème du microcontrôleur et de ce qui est nécessaire pour faire fonctionner servo-moteur et photo-récepteur.
La conception de la carte se fait en utilisant le logiciel KiCAD
version 7.
Développement sur la carte
Il doit être possible de gérer les cartes par le protocole USB. Il est conseillé d'écrire un programme en utilisant la bibliothèque LUFA exposant une interface USB de classe spécifique liée à deux points d'accès par interruption : un entrant pour lire l'état du photo-récepteur et un sortant pour commander le servo-moteur et quelques LED.
Il est aussi demandé que l'état de la LED de statut soit répété sur une des LED commandées, le photo-récepteur pouvant masquer la LED du moniteur.
Pour le principal, appuyez-vous sur votre travail en tutorat USB.