Programmation du système avec Arduino

FondamentalA lire avant de commencer l'activité !

Présentation du système

Afin de réduire la consommation d'eau lors d'une douche, la startup Hydrao a donc conçu un pommeau de douche ludique qui affiche à l'utilisateur une information instantanée sous forme lumineuse. On se propose dans cette activité de programmer la fonction de commande des LED. Dans ce scenario, les LED sont remplacées par un écran LCD RGB dont la couleur de fond peut changer et le débit d'eau est simulé par un potentiomètre. La carte Microcontroleur est une carte Arduino

Carte Arduino : C'est le contrôleur principal du système. Elle est équipée d'un processeur, composant électronique programmable. Elle reçoit les informations des capteurs et donne des ordres aux actionneurs en fonction du programme transmis. Elle est équipée d'un schield grove pour faciliter les connexions.

Potentiomètre Appelé aussi « Résistance variable », le potentiomètre peut être considéré comme une résistance dont on peut faire varier la valeur ohmique en tournant l'axe rotatif. Il suffit d'appliquer une tension aux broches qui se trouvent aux extrémités et récupérer la tension qui sort sur la broche du milieu. Cette tension varie de 0 V à la tension appliquée sur le potentiomètre suivant l'angle de l'axe rotatif. Nous récupérons cette tension avec l'une des entrées analogiques de la carte Arduino UNO. Ainsi, nous changerons la couleur de la LED RVB suivant l'angle du potentiomètre.

à brancher en A0

Affichage LCD

Cet affichage est de type I2C (automatiquement reconnu). Il nous permet d'afficher du texte. Il peut également changer de couleur d'éclairage, ce que nous utiliserons sur le système réel.

à brancher sur I2C

MéthodeTravail à faire

Tâches

Méthode

1 - Connexion du système

1.1

Connecter l'écran LCD et le potentiomètre à la carte Arduino

1.2

Ouvrir mBlock

1.3

Connecter la carte Arduino à l'ordinateur et configurer la connexion entre mblock et la carte Arduino

2 - Analyse d'un programme existant :

2.1

Recréer la programme ci-contre

Scenario initial programmé :

• Si la valeur analogique lue est inférieure à 255, on obtient du rouge et on affiche inférieur à 255;

• Si la valeur analogique lue est comprise entre 255 et 510, on obtient du vert et on affiche entre 255 et 510;

• Sinon, on obtient du bleu et on affiche supérieur à 510.

2.2

Tester votre programme en cliquant sur

2.3

Enregistrer votre travail

[1]

3 - Modifier le programme afin qu'il corresponde au fonctionnement de l'hydrao

3.1

Modifier le programme afin qu'il corresponde au programme hydrao suivant :

• Tant que la consommation d'eau est inférieure à 10 litres (correspondant à une valeur analogique de 200), on obtient du vert ; on affiche sur le LCD "moins de 10L"

• Tant que la consommation d'eau est inférieure à 20 litres (correspondant à une valeur analogique de 400), on obtient du bleu turquoise ; on affiche sur le LCD "entre 10 et 20L"

• Tant que la consommation d'eau est inférieure à 30 litres (correspondant à une valeur analogique de 600), on obtient du violet ; on affiche sur le LCD "entre 20 et 30L"

• Tant que la consommation d'eau est inférieure à 40 litres (correspondant à une valeur analogique de 800), on obtient du rouge ; on affiche sur le LCD "entre 30 et 40L"

Le code RGB du violet est  255 , 0 , 255

Pour ceux qui ont fini !

4.1

Ajouter au système le comportement suivant :

• Si la consommation d'eau est supérieure à 40 litres (correspondant à une valeur analogique supérieure de 800), on obtient du rouge clignotant; on affiche sur le LCD "plus de 40L"

Pensez à utiliser une variable. Si la variable est active alors on fait clignoter :