Projet IMA3 P6, 2015/2016, TD1
Sommaire
Projet IMA3-SC 2015/2016 : Titre
Cahier des charges
Composants requis
- (x1) : Capteur de pression
- (x1) : Capteur de couleurs
- (x12) : Afficheurs 16-segments
- (x4) : Boutons poussoirs
- (x1) : Interrupteur Tout-ou-Rien
(les valeurs sont susceptibles de changer suivant les modifications à apporter dans le projet)
Composants à fabriquer
- Disque coloré
- Support
Tâches à effectuer
- (1) : Programmer des modules de gestion du capteur couleur
- (2) : Programmer des modules de gestion du capteur de pression (ou d'un bouton)
- (3) : Programmer l'interface utilisateur
- (3.a) : Demander à l'utilisateur le nombre N de couleurs à mémoriser
- (3.b) : Générer une liste de N couleurs et les stocker en mémoire (à partir d'une liste de couleurs déjà existante)
- (3.c) : Fonction de comparaison de la couleur en attente de validation par l'utilisateur
- (4) : Initialiser la liste des couleurs à l'aide du disque coloré :
- (4.a) : Sous forme textuelle, code pour afficheur
- (4.b) : Sous forme exploitable, code RGB
- (5) : Créer les messages :
- (5.a) : Nombre de couleurs
- (5.b) : Succès mémorisation de la k-ème couleur
- (5.c) : Echec mémorisation de la k-ème couleur
- (5.d) : Succès du test
Réalisation du système
- Le système devra permettre à l'utilisateur rentrer un nombre entier qui sera stocké en mémoire
- Le système devra générer une liste de couleurs à partir d'une liste des couleurs pré-enregistrées
- Le système affichera les couleurs textuelles une par une pour que l'utilisateur puisse les mémoriser avec une validation (ex: bouton poussoir)
- Lorsque la dernière couleur aura été confirmée par l'utilisateur le système demandera via les afficheurs à l'utilisateur si il est prêt à commencer le test
- Le disque coloré permettra à l'utilisateur de choisir la couleur puis la validera via un bouton poussoir
- Le système affichera un message de validation ou d'echec suivant la réussite ou l'échec pour la mémorisation de la k-ème couleur. Si l'utilisateur réussi, le système enchaîne avec la couleur suivante, ou valide le test s'il s'agissait de la dernière couleur (deuxième message de réussite) sinon il se réinitialise pour une partie suivante.
Séance 1
Partie électronique
Retrait du capteur couleur pour simplifier le système. Le disque devient une palette rectangulaire où les couleurs sont sélectionnées par les leds puis la couleur choisie sera validée par un bouton. On a, donc, retiré le moteur qui pilotait le disque. On utilisera un bloc de 32 afficheurs pour l'interface.
Partie informatique
I) Modifications apportées au cahier des charges
Pour des raisons de contraintes matérielles et logicielles, nous avons décidé de nous orienter vers un système où :
- L'affichage des messages destinés à l'utilisateur se fait via un écran LCD 16x2. -> abandon des 12 afficheurs 16 segments.
- La sélection des couleurs (seconde partie) ne se fait plus via un disque coloré asservi par un servomoteur et soumis à un capteur mais à l'aide d'une série de 8 LED auxquelles sont associées 8 couleurs et le choix se fait à l'aide de 3 boutons poussoirs pour se déplacer à gauche ou à droite et de valider le choix.
- Il est possible pour l'utilisateur de choisir un niveau de difficulté :
- Facile : Lors de la partie mémorisation, l'utilisateur décide quand le système est autorisé à passer à la couleur suivante - Normal : Le système, montre via 4 LED, initialement allumées au début d'une couleur à mémoriser, le temps qu'il reste avant changement de couleur (les LED s'éteignent une par une puis le système change lorsqu'elles se sont toutes éteintes) - Difficile : Même principe mais avec un délais plus court
II) Bilan de la séance
- Le programme gérant l'affichage LCD est réalisée et pourra être adapté selon les cas
- Le programme gérant les LED est en cours d'implémentation
- Le programme du décompte du temps imparti est encore sur feuille et devra être implémenté et testé sous arduino
Séance 2
Partie électronique
- Définition exacte des tâches à effectuer
- Début de la configuration FPGA sous Altium
- Configuration terminée pour le défilement des LEDs