Ignorer la navigation

Prototype de cafetière 2.0

Matériel nécessaire :

un module Arduino UNO une boite ou un sachet contenant le matériel disponible

 

Votre carton/sachet doit contenir (demandez le au professeur):

  • un afficheur (plusieurs technologies différentes suivant les cartons)

  • des boutons poussoirs (seuls ou intégrés à l'afficheur): on en a besoin de 5:
    • un MA/AR
    • un REG (pour passer en mode "réglage de l'heure de marche")
    • un PROG pour lancer le démarrage programmé (il s'arrêtera par un appui sur MA/AR)
    • et 2 BP pour régler (BP+ et BP-) heures et minutes
  • une led et sa résistance (si ce n'est pas le cas il faut utiliser la led de la carte Arduino sur la broche 13 ou afficher Marche/arrêt sur l'écran)
  • un module RTC (Real Time Clock)

  

Remarque:

Le matériel fourni est souvent associé à une librairie Arduino. Cette librairie regroupe un ensemble de fonctions écrites par les concepteurs du matériel pour nous faciliter l'utilisation du matériel. La librairie est à installer (il existe plusieurs méthodes. La plus simple consiste aller dans le menu "Croquis" (sketch) puis dans "inclure une bibliothèque" puis choisir d'inclure avec le format ZIP ou à copier la librairie "dézippée" dans le répertoire "librairies" de Arduino sur le disque dur et ensuite à relancer Arduino). L'autre solution consiste à aller dans le menu :

menu: utiliser l'outil de recherche avec le nom de la librairie recherchée:

exemples:

Dans les fichiers fournis il y a souvent un fichier "keywords.txt" qui liste le nom de toutes les fonctions disponibles (mais malheureusement pas leur syntaxe) et surtout un répertoire contenant des exemples de programmes utilisant les fonctions de la librairie. En général on commence par essayer et surtout par analyser et comprendre quelque uns de ces exemples.

 

Le fonctionnement de la cafetière:

  • par défaut, l'afficheur affiche l'heure courante et l'heure programmée de la mise en service
  • lorsque l'on appuie sur MA/AR la cafetière se met en marche (led rouge ou verte allumée). Un nouvel appui arrête la cafetière. Il s'agit d'un mode de commande instantanée et manuel.
  • lorsque l'on appuie sur PROG, la cafetière démarrera à l'heure programmée (la led rouge clignote à 1Hz). On peut sortir de ce mode PROG par un appui sur MA_AT
  • l'appuie sur REG permet de régler les heures et les minutes de l'heure à programmer (on utilisera les couches + et - pour changer ces heures et ces minutes).

 

Contraintes de programmation:

  • une variable "mode" de type INT permettra de savoir où en est le programme (à associer avec "enum" comme vu en cours).
  • 2 variables "heure_prog" et "minute_prog" seront utilisées pour mémoriser le réglage de la marche automatique
  • le programme doit être clair (choix "intelligent" du nom des variables, commentaires, ...)
  • le réglage de l'heure courante se fera par le transfert du programme Arduino (on ne prévoit pas de régler cette heure avec les boutons) et du module RTC

  

Planning (à faire obligatoirement dans l'ordre proposé): faire vérifier régulièrement par le professeur

Partie N°1: test des matériels (chacun à leur tour):

  1. tests, essais, explications et caractérisation (type de signal, type d'entrée/sortie Arduino, câblage, explication du fonctionnement électrique, ....) de la gestion des boutons poussoirs fournis (UTILISEZ LE PROGRAMME "prog_test_BP.txt" présent dans le fichier ZIP du bas de la page)
  2. tests, essais, explications de la gestion de l'afficheur (type de liaison, câblage, entrées/sorties Arduino utilisées, principales instructions utiles, ...)
  3. tests, essais, explications et caractérisation (type de signal, type d'entrée/sortie Arduino, câblage, principales instructions utiles, ....) du module RTC.

 

 Partie N°2: réalisation du programme de la cafetière

Quand on réalise un programme, on commence par faire un diagramme d'états et/ou un algorigramme de la structure du programme. Le diagramme d'état a été réalisé en cours. Commencez donc par programmer cette structure:

  1. programmer la structure générale (issue du diagramme d'état) : variables, entrées/sorties, setup(), le "enum", le "switch" et les différents "case" (qu'on laissera vide dans un premier temps)
  2. ajouter l'affichage de l'heure quand la cafetière est au repos
  3. intégrer la gestion de la commande manuelle sur votre programme précédent. Faites valider par un enseignant.
  4. ajouter la gestion de l'appui sur le bouton poussoir PROG (on règlera d'abord dans le programme une heure de mise en route "fixe"). Faire valider par un enseignant.
  5. et pour finir faire la gestion du réglage de l'heure programmée de mise en route (boutons REG, BP+ et BP-). Faire valider par un enseignant lorsque l'ensemble du programme fonctionne!.

 

Et normalement toutes les docs techniques et les librairies Arduino sont là: cafetiere Arduino eleves.zip

 

Remarque: la gestion de l'appui sur les bouton est parfois aléatoire, elle peut varier, par exemple, en fonction du temps d'appui. Des informations complémentaires peuvent vous être utile: ici (front montant) ou ici (problématique de la fonction Delay)

Créé avec eXeLearning (Nouvelle fenêtre)