Vous êtes sur la page 1sur 28

Automatisation et Instrumentation Industriel

Rapport de projet
THERMOMETRE A BASE D’ARDUINO

Réalisé par :
 SOUAK Elmahdi
 ELOUAFI Hamza
 CHAHID Amal
 ELAZAOUY Achraf
Encadré par :
Mr.Saufi Abdlmajid
Année : 2017-2018
Page 2
Remerciements
Tout d’abord, nous remercions Allah, le tout grand puissant de nous avoir donné la force, le
courage, la patience, et la volonté, de mener à bien ce modeste travail.
Nous tenons à remercier toute l’équipe pédagogique de ISTA-IE et les intervenants
professionnels responsables de la formation de la filière Automatisation et Instrumentation
Industriel.
Nous profitions de l’occasion pour remercier notre professeur Monsieur SAUFI qui n’a pas
cessé de nous encourager pendant la durée du projet, ainsi pour sa générosité en matière de
formation et d’encadrement.
Nos remerciements vont aussi à toutes les personnes qui ont contribués de près ou de loi a
la réalisation de notre projet de fin d’étude.

Page 3
SOMMAIRE
Introduction ……………………………………………………………………………………………………………………………………………………5
Chapitre I : Les outils du projet .............................................................................................................................. 6
1-Capteur de température LM 35 ........................................................................................................................... 6
2-L’arduino ………………………………………………………………………………………………………………………………………………………7
3-Afficheur LCD 16x2………………………………………………………………………………………………………………………………………..9
4-Potentiométre ……………………………………………………………………………………………………………………………………………..11
5-Résistance électrique…………………………………………………………………………………………………………………………………….13
6-LED ....................................................................................................................................................................... 15
Chapitre II : La partie de programmation ........................................................................................................... 17
1-Le logiciel ………………………………………………………………………………………………………………………………………………………17
2-Programme principal .......................................................................................................................................... 19
Chapitre III : La partie de réalisation ………………………………………………………………………………………………………….20
1-Présentation du système………………………………………………………………………………………………………………………………20
2- Schéma du circuit ……………………………………………………………………………………………………………………………………….21
3- La simulation sur ISIS ………………………………………………………………………………………………………………………………….22
4-Cicuit imprimé ……………………………………………………………………………………………………………………………………………..23
5-La réalisation pratique ......................................................................................................................................... 24
Conclusion ……………………………………………………………………………………………………………………………………………………27

Page 4
Introduction
La température constitue une information importante dans plusieurs processus industriels et
de laboratoire. Elle intervient comme une grandeur principale dont la valeur doit être connue
avec précision ou comme paramètre influant sur la qualité d’autres mesures. Sa
valeur sera utilisée pour la correction ou la compensation.
Certains procèdes industriels ou biologiques favorisent des environnements de températures
spécifiques, ainsi la régulation de température s’impose. Cette régulation passe par la
mesure de température de manière continue. Les possibilités offertes par l’utilisation de
système à base de microprocesseur ont permis de traiter les signaux issus des capteurs
numériquement (linéarisation et conversion). Ceci a conduit à des appareils précis et bon
marché. Les systèmes à base de microcontrôleurs comme l’ARDUINO constituent la
solution la plus attractive.
Dans ce travail nous avons fait la conception d’un thermomètre à base de l’ARDUINO
UNO. Notre thermomètre utilise un capteur LM35 pour la mesure de température. Les
calculs et la conversion nécessaires et le traitement des informations sont confiés au
microcontrôleur (L’ARDUINO) et l’affichage de la température actuel, maximale et
minimal sur un Afficheur LCD 16x2 et aussi une LED qui s’allume si la température dépasse
certaine valeur.

Page 5
Chapitre I : Les outils du projet
1-Capteur de température LM35 :
Le capteur de température LM35 est un capteur analogique. Il est extrêmement populaire en
électronique, car précis, peu couteux, très simple d'utilisation et d'une fiabilité à toute
épreuve.
Le capteur de température LM35 est capable de mesurer des températures allant de -55°C à
+150°C dans sa version la plus précise et avec le montage adéquat, de quoi mesurer
n'importe quelle température.
La sortie analogique du capteur est proportionnelle à la température. Il suffit de mesurer la
tension en sortie du capteur pour en déduire la température. Chaque degré Celsius
correspond à une tension de +10mV.
Dans notre projet le capteur lm35 va mesurer la température est après l’envoyée (comme un
signal analogique) à l’entrée A0 D’ARDUINO. Donc il faut convertie la valeur analogique
de LM35 en 10bit numériques pour faire ça on doit utiliser une relation de variation de
température on fonction de la tension de sortie du capteur LM35.
Pour l’ARDUINO 0 →0V et 1→210=1023→5V si on utilise 5V comme une tension de
référence et Vout est la tension sortie de LM35 on obtient :
Température (°C) = (5.0*Vout*100.00) /1023
On multiplié Vout par 100 car chaque degré Celsius correspond à une tension de 10mv par
exemple si la température est 100°C on obtient à la sortie de LM 35 une tension = 1V, donc
LM 35 mesuré une température est après il devise ça valeur par 100 alors pour obtient la
valeur exacte de la température il faut multiplier la tension de sortie par 100.

Figure 1 : Brochage d’un capteur LM35 Figure 2 : vu de dessous

Les caractéristiques :
Alimentation : 4 à 20 V
Plage de mesure : -55°C / +150°C
Précision : 0,5°C (à 25°C)
Boîtier : TO92

Page 6
2-L’ARDUINO :
Arduino est un circuit imprimé en matériel libre (dont les plans sont publiés en licence libre)
sur lequel se trouve un microcontrôleur qui peut être programmé pour analyser et produire
des signaux électriques, de manière à effectuer des tâches très diverses comme la domotique
(le contrôle des appareils domestiques - éclairage, chauffage…), le pilotage d'un robot, etc.
Il existe différents types d’Arduino et à chaque type correspond une forme et une taille
différente. Nous n’allons pas tous les citer mais nous avons par exemple :
- L’Arduino UNO (la version que nous utilisons actuellement pour notre projet)
-L’Arduino MEGA qui possède plus d’entrées et de sorties ainsi qu’une mémoire plus
conséquente.
-L’Arduino Nano qui comme son nom l’indique est beaucoup plus petite que ses
homologues.
La carte Arduino peut être alimentée de deux façons : soit par le port USB relié à
l’ordinateur, soit avec un transformateur secteur de tension adéquate via la prise jack (on
peut également utiliser des piles).
L’Arduino accepte des tensions continues de 6 à 20V mais il est conseillé de ne pas dépasser
les 12V. La marge de sécurité offre une protection contre les éventuels creux de tension
indésirables. La carte est dotée d’un régulateur de tension qui va ramener la tension
d’alimentation à 5V et la garder constante au cas où on alimente avec une tension supérieure.
De toute manière, en alimentant l’Arduino au port USB de l’ordinateur on est sûr d’avoir
une tension de 5V.
Le microcontrôleur est l’élément le plus important de la carte Arduino. Un microcontrôleur
est un circuit intégré (IC) qui rassemble les éléments essentiels d’un ordinateur : processeur
(CPU), mémoires, horloge interne et ports d’entrées et de sorties (I/O). Le rôle du CPU est
d’exécuter des programmes stockés en mémoire. Il y a 3 types de mémoire dans un Arduino
— La mémoire FLASH : Cette mémoire sert à stocker les programmes à exécuter par le
CPU. C’est une mémoire non volatile, ce qui signifie que les données sont conservées même
lorsqu’on coupe l’alimentation.
— La mémoire SRAM (Statice Random Access Memory) : Cette mémoire permet de
stocker des données temporaires tel que les variables de notre programme. Contrairement à
la mémoire FLASH, la SRAM est une mémoire volatile. Elle est très rapide et l’Arduino
UNO en possède seulement 2 Ko.
— La mémoire EEPROM (Electrically Erasable Programmable Read Only Memory ou
mémoire morte effaçable électriquement et programmable) : Elle permet le stockage
dedonnées persistantes (données de log ou états devant être conservés). C’est une mémoire
lente mais non volatile. L’Arduino UNO possède 1Ko de cette mémoire. C’est le “disque
dur” de notre carte.

Page 7
L’horloge interne (ou oscillateur) permet de cadencer (rythmer) les actions du CPU car ce
dernier ne travaille pas en continue, il exécute un certain nombre de calculs par seconde.
Les pins ou entrées/sorties de la carte Arduino sont principalement :
— Soit des connexions d’alimentation (5V/3.3V/Vin/Ground). C’est par là que sont
alimentés les circuits qu’on réalise.
— Soit des entrées/sorties digitales ou analogiques.

Figure 3 : Carte Arduino UNO : Brochage externe

—Port USB Permet de communiquer avec la carte et de l’alimenter en 5V.


—Les entrées/sorties numériques peuvent actionner de nombreux composants (LED,
transistor, etc.) mais elles ne peuvent pas fournir beaucoup de courant (40 mA pour une
carte Arduino UNO). Pour piloter des circuits de plus forte puissance, il faut passer par des
transistors ou des relais.
—Les entrées analogiques lui permettent de mesurer une tension variable (entre 0 et 5 V)
qui peut provenir de capteurs ou d’autre composants comme potentiomètres etc.

Figure 4 : Carte Arduino UNO : Brochage interne


Page 8
3-Afficheur LCD 16x2:
Mettons tout de suite au clair les termes : LCD signifie "Liquid Crystal Display" et se traduit,
en français, par "Écran à Cristaux Liquides". Ces écrans sont PARTOUT ! Vous en
trouverez dans plein d’appareils électroniques disposant d’afficheur : les montres, le tableau
de bord de votre voiture, les calculatrices, etc. Ils sont des modules compacts intelligents et
nécessitent peu de composants externes pour un bon fonctionnement. Ils consomment
relativement peu (de 1 à 5 mA) Plusieurs afficheurs sont disponibles sur le marché et
diffèrent les uns des autres, non seulement par leurs dimensions, (de 1 à 4 lignes de 6 à 80
caractères), mais aussi par leurs caractéristiques techniques et leur tension de service. On
l'appelle LCD 16x2 car il permet d'afficher 16 caractères par ligne, sur 2 lignes.
Il existe un contrôleur standard permettant de piloter un dispositif d'affichage par l’afficheur.
Ce composant va servir à décoder un ensemble "simple" de bits pour afficher un caractère à
une position précise ou exécuter des commandes comme déplacer le curseur par exemple.
Ce composant est fabriqué principalement par Hitachi et se nomme le HD44780. Il sert de
décodeur de caractères. Ainsi, plutôt que de devoir multiplier les signaux pour commander
les pixels un à un, il nous suffira d’envoyer des octets de commandes pour lui dire par
exemple écris moi "bonjour" à partir de la colonne 3 sur la ligne 1". Ce composant possède
16 broches :

Page 9
N° Nom Rôle

1 VSS Masse

2 VDD Alimentation positive +5V

3 V0ou Cette tension permet, en la faisant varier entre 0 et +5V, le réglage du contraste de l'afficheur.
VEE

4 RS Sélection du registre (Registre Select)


Grâce à cette broche, l'afficheur est capable de faire la différence entre une commande et une
donnée. Un niveau bas indique une commande et un niveau haut indique une donnée.

5 R/W Lecture ou Ecriture(Read or Write)

6 E Entrée de validation

7à D0 à Bits de données
14 D7

15 A Anode du rétroéclairage (+5V)

16 K Cathode du rétroéclairage (masse)

Page 10
4-Potentiomètre:
Un potentiomètre (appelé familièrement potard) est un type de résistance variable à trois
bornes, dont une est reliée à un curseur se déplaçant sur une piste résistante terminée par les
deux autres bornes. Ce système permet de recueillir, entre la borne reliée au curseur et une
des deux autres bornes, une tension qui dépend de la position du curseur et de la tension à
laquelle est soumise la résistance.

Figure 5 :Un potentiomètre rotatif standard Figure 6 : Symboles du potentiomètre (en haut, symbole
européen et international, en bas américain).

Un potentiomètre linéaire est un potentiomètre dont la valeur de résistance varie


proportionnellement à la distance entre ses bornes et le curseur. Il est utilisé, par exemple
dans une source de tension variable. Ce principe est utilisé dans les appareils de mesures
tels que le pied à coulisse. La variation est progressive c'est-à-dire quand le curseur se trouve
au centre de la piste, la résistance ohmique que l'on peut mesurer entre le curseur et une
extrémité est la même que celle que l'on peut mesurer entre le curseur et l'autre extrémité :
Ra = Rb (si le potentiomètre est un modèle 100 kΩ, Ra = Rb = 50 kΩ). Quand le curseur est
à 80 % de sa course (plus vers l'extrémité haute), Ra = 20 % de la résistance totale et Rb =
80 % de la résistance totale. Il s'agit du type de potentiomètre qui est utilisé par défaut si
rien n'est spécifié par l'auteur du schéma électronique, sauf s'il s'agit d'un potentiomètre de
volume (dans ce cas un modèle logarithmique est requis).
Un Potentiomètre logarithmique est un potentiomètre dont la valeur de résistance varie de
façon exponentielle. C’est-à-dire que la valeur de sa résistance augmente ou diminue de plus
en plus rapidement lorsque l'on déplace le curseur. La variation de la valeur de la résistance
entre le curseur et une extrémité répond à une fonction logarithmique. Quand le curseur se
trouve au centre de la piste, la résistance ohmique que l'on peut mesurer entre le curseur et
une extrémité n'est pas la même que celle que l'on peut mesurer entre le curseur et l'autre
extrémité : Ra ≠ Rb. Il est évident que l'on ne peut pas utiliser un potentiomètre de ce type
dans une alimentation secteur pour ajuster finement la tension de sortie. En effet, la variation
est lente quand le curseur se déplace vers une extrémité, et est très rapide quand le curseur
arrive sur l'autre extrémité. Ce type de potentiomètre est principalement utilisé pour les
réglages de volume sonore, pour « coller » à la caractéristique de l'oreille, qui possède
justement une réponse logarithmique à la pression que l'air exerce sur les tympans. À cause
de cette particularité, le respect du sens de branchement des deux extrémités de la piste
résistive a bien plus d'importance que pour le potentiomètre linéaire.

Page 11
Un potentiomètre numérique est un composant actif qui simule le comportement d'un
potentiomètre analogique, mais à la différence de ce dernier, on ne fait pas varier sa
résistance mécaniquement en le tournant. Il varie sa résistance en fonction d'une valeur
numérique (souvent un octet) qu'il reçoit. Il ne peut donc prendre qu'un nombre fini de
valeurs de résistances possibles. L'échelle de correspondance entre les n valeurs numériques
et les différentes valeurs de résistances sont propres à chaque modèle de potentiomètre.
Dans notre montage, Nous allons ajouter un potentiomètre relié à la broche V0 de l’Écran
LCD. On va connecter une extrémité du potentiomètre à 5V et l’autre extrémité à la masse
et finalement le curseur à V0 donc ce dernier va prendre des valeurs de tension entre 0V et
5V ce qui nous permettre de varier le contraste de l'écran et ainsi permettre d'afficher le
texte.

Page 12
5-Résistance électrique:
Une résistance est un composant électronique ou électrique dont la principale caractéristique
est d'opposer une plus ou moins grande résistance (mesurée en ohms) à la circulation du
courant électrique.
La résistance électrique traduit la propriété d'un composant à s'opposer au passage d'un
courant électrique (l'une des causes de perte en ligne d'électricité). Elle est souvent désignée
par la lettre R et son unité de mesure est l'ohm (symbole : Ω). Elle est liée aux notions de
résistivité et de conductivité électrique.
La résistance est responsable d'une dissipation d'énergie sous forme de chaleur. Cette
propriété porte le nom d'effet Joule. Cette production de chaleur est parfois un effet souhaité
(résistances de chauffage), parfois un effet néfaste (pertes Joule) mais souvent inévitable.
Un des problèmes majeurs pour les ingénieurs est que la conductivité, et son inverse, la
résistivité, dépendent fortement de la température. Lorsqu'un dipôle est traversé par un
courant électrique, sa résistance provoque un échauffement qui modifie sa température,
laquelle modifie sa résistance. La résistance d'un dipôle dépend donc fortement des
conditions d'utilisation.

Figure 7 : Symbole européen Figure 8 : Symbole américain.

La valeur des résistances à couche standard est habituellement indiquée sur le composant
sous forme d'anneaux de couleurs. Le code en est défini par la norme CEI 60757. Afin de
standardiser les valeurs possibles des résistances, il existe des séries de valeurs normales
pour résistances. Ces valeurs normalisées sont définies par la norme CEI 60063.

Figure 8 : Une résistance à 4 anneaux de couleur.

Page 13
Code des couleurs pour les résistances

* Le troisième anneau n'est utilisé que lorsque la tolérance de la résistance est inférieure ou
égale à 2 %.
Un moyen mnémotechnique pour se souvenir de l'ordre des couleurs dans le code couleur
des résistances est de connaitre la phrase suivante : "Ne Manger Rien Ou Jeûner Voilà Bien
Votre Grande Bêtise" ou encore "Ne Mangez Rien Ou Je Vous Brûle Votre Grande Barbe",
et une dernière phrase "Ne Mangez Rien Ou Je Vous Bats Violemment Gros Bêta" est
intéressante car elle permet de repérer la position du violet à travers le mot "Violemment".
Chaque initiale correspond à la première lettre de chaque couleur.
Dans notre projet la résistance va jouer le rôle de la protection, la LED est connecté à la
sortie digitale 8 de l’arduino et ce dernier va envoyer soit 0 (0V) soit 1(5V) selon la valeur
de température donc pour protéger la LED contre le niveau haut (5V) il faut ajouter une
résistance de protection.

Page 14
6-LED:
Une diode électroluminescente, aussi appelée LED pour "Light-Emitting Diode", est un
composant électronique qui a la particularité d'émettre une lumière lorsqu'il est parcouru par
un courant électrique. La seconde particularité étant que le courant ne traverse ce composant
que par un seul côté, lorsque le courant passe de l'autre côté, il est bloqué et la LED ne
s'allume pas.
Ce composant de la famille des semi-conducteurs est dit "passif". Son sens est déterminé
grâce aux 2 parties qui composent ce composant : l'Anode et la Cathode. Pour s'illuminer,
le courant dans parcourir la LED de l'anode vers la cathode.
Il y a plusieurs façons pour définir et reconnaitre le sens d'une LED :
Sur le composant, l'anode est le côté où la patte du composant est la plus longue. La cathode
est donc la patte la plus courte.
Vu du dessus, la LED n'est pas totalement circulaire, il y a toujours un côté plat. Ce côté
plat représente la cathode. Cette astuce est indispensable pour reconnaitre la cathode lorsque
les pattes sont coupées. Sur un schéma électrique, la cathode est représentée par le côté où
il y a le bord plat à droite du triangle.

Figure 9 : Symbole de la LED

Il est important de retenir les 2 côtés :


Anode : pôle positif représenté par la patte la plus longue.
Cathode : pôle négatif représenté par la patte la plus court.
Ce composant est très courant en électronique. Dès lors il est composé en plusieurs familles
définies selon la puissance ou selon le spectre d'émission de lumière.
Il y a des LED qui émettent plus ou moins de lumière. Les petites LED de faible voltage
sont connus du grand public car elles servent de voyant de veille des appareils électriques.
Les LED puissantes sont quant à elles de plus en plus connues du grand public pour servir
d'ampoules, de lampe de poche ou encore de phares de voiture.

Page 15
Les LED peuvent être d'une couleur bien définie par exemple être rouge, verte, bleu ou
blanche. Mais il y a des LED qui spéciales qui peuvent changer de couleur selon le courant
qui les traverses. Il existe également des LED infrarouges qui permettent d'émettre une
lumière qui ne sera pas vue par un humain. Ces LED infrarouges sont par exemple utilisées
dans les télécommandes.
Dans notre Montage la led va s'allumer et s'éteindre selon la valeur de température et on va
déterminer cette valeur dans le programme principal de notre projet.

Page 16
Chapitre II : La partie de programmation
1-Le logiciel :
Le logiciel de programmation des modules Arduino est une application Java, libre et multi-
plateformes, servant d'éditeur de code et de compilateur, et qui peut transférer le firmware
et le programme au travers de la liaison série (RS-232, Bluetooth ou USB selon le module).

Figure 10 : Interface du logiciel

Le langage de programmation utilisé est le C++, compilé avec avr-g++ 3, et lié à la


bibliothèque dedéveloppement Arduino, permettant l'utilisation de la carte et de ses
entrées/sorties. La mise en place de ce langage standard rend aisé le développement de
programmes sur les plates-formes Arduino, à toute personne maitrisant le C ou le C++.
Un programme Arduino se structure en trois parties : la déclaration et l’initialisation des
variables, "le setup ()" et "le loop()".
Les variables sont ce qu’il y a de plus important dans un programme. C’est le nom associé
à un certain emplacement de la mémoire qui pourra être utilisé pour stocker par exemple, le
résultat d’une opération.
Une variable se déclare de la façon suivante :type nom_de_la_variable = valeur ;

Page 17
La mémoire dont on dispose est en général limitée, il existe donc plusieurs types de variable
différentes. Chaque type occupe un certain nombre d’octets (plus ou moins grand selon le
type de la variable). Le but sera donc d’utiliser le type de variable adaptée, qui optimise la
place occupée en mémoire.
Le second bloc c.-à-d. le setup, qui est ce qu’on appelle une fonction. Une fonction est un
ensemble d’instructions réunies en une unité logique possédant un nom évocateur afin d’être
appelée comme une instruction ordinaire. Toutes les instructions qu’elle contient sont
exécutée en un seul bloc. Dans la fonction setup, on va programmer les différentes broches
du microcontrôleur. Si on branche par exemple un composant sur la broche 8 de la carte, il
faut dire si cette broche est utilisée en entrée (INPUT) ou en sortie(OUTPUT).
Dans le cas d’un capteur, la broche devra être déclarée en entrée car le capteur envoie des
informations à la carte tandis que dans le cas d’une led qui est un actionneur, on la déclarera
en sortie.
Le dernier bloc est également une fonction nommée loop qui est une boucle infinie. . . c’est
elle qui contiendra les tâches que doit effectuer notre programme c-à-d. la logique au moyen
de laquelle seront interrogés les capteurs (exemple : donne-moi la température toute les x
secondes) et commandé les actionneurs (exemple : allumer une led ou faire tourner un
moteur). Les instructions se trouvant dans cette boucle seront répétées jusqu’à la mise hors
tension de la carte Arduino.

Figure 11 : la structure générale d’un programme

Page 18
2-Le programme principal :
Nous avons utilisé le logiciel d’arduino pour programmé notre thermomètre, et chaque
ligne du programme contient un commentaire commencé par // pour expliquer les
contenues et les instructions du programme.
LiquidCrystal lcd(7,6,5,4,3,2); //Cette fonction, permet d'indiqué les numéros de broches dans
l'ordre : rs, enable, d4, d5, d6, d7.
float Temp; // Déclaration des variables utilisées et le numéro de broche de chaque variable.
int tempPin = 0; // Déclaration de broche analogique de LM35.
int redledPin = 8; // Déclaration de broche digital de la led.
float minTemp = 100;//Déclaration d'un variable avec un valeur initiale pour la température minimale
float maxTemp = 0; //Déclaration d'un variable avec un valeur initiale pour la température maximale.
byte smiley[8] = { // Déclaration d’un tableau de 8 octets pour afficher un smiley(visage souriant).
sur le LCD
B00000,
B01010,
B00000,
B00000,
B10001,
B01110,
B00000,
B00000};
void setup() {
pinMode(redledPin, OUTPUT); // Définir Pin 8 comme sortie.
lcd.createChar(0,smiley); // Créer le caractère smiley.
lcd.begin(16,2); // Initialise le LCD avec 16 colonnes et 2 lignes.
delay(1000); // Pause de 1 seconde pour laisser l'initialisation.
lcd.write(byte(0)); // Afficher le caractère smiley.
lcd.setCursor(4,0); // Placer le curseur à 5éme colonne et 1ere ligne.
lcd.print("Bienvenue"); // Afficher le message "Bienvenue".
lcd.setCursor(15,0); //Placer le curseur à 16éme colonne et 1ere ligne.
lcd.write(byte(0)); // Afficher le caractère smiley.
delay(4000); // Pause de 4 secondes.
lcd.clear(); // Effacer l'écran.
delay(100); }

void loop() {
Temp = analogRead(tempPin); // Lire l'entrée A0.
Temp = (5.0*Temp*100.00) /1023; //Convertir de voltage à température en °C.
lcd.setCursor(2,0); // Placer le curseur à 4émé colonne et 1ere ligne.
lcd.print("Temp=");// Afficher le message "Temp=".
lcd.setCursor(7,0); // Placer le curseur à 8éme colonne et 1ere ligne.
lcd.print(Temp,1); // Afficher la mesure de l'entrée A0.
lcd.setCursor(11,0); // Placer le curseur à 12éme colonne et 1ere ligne.
lcd.print((char)223);// Afficher le caractère °; pour l'écran lcd le caractère ° est codée par un
nombre hexadécimal 0xDF = 223 en décimal et (char) pour indiquer qu'il s'agit d'un caractère.
lcd.setCursor(12,0); // Placer le curseur à 13éme colonne et 1ere ligne.
lcd.print("C"); // Afficher le message "C"
if (Temp > maxTemp) maxTemp = Temp ; // Condition pour identifier la température maximale (maxTemp).
if (Temp < minTemp) minTemp = Temp ; // Condition pour identifier la température minimale (minTemp).
lcd.setCursor(0,1); // Placer le curseur à 1ere colonne et 2éme ligne.
lcd.print("Min="); // Afficher le massage "Min:".
lcd.setCursor(4,1); // Placer le curseur à 5éme colonne et 2éme ligne.
lcd.print(minTemp,1); // Afficher la température Minimale.
lcd.setCursor(8,1); // Placer le curseur à 9éme colonne et 2éme ligne.
lcd.print("Max="); // Afficher le message "Max:".
lcd.setCursor(12,1); // Placer le curseur à 13éme colonne et 2éme ligne.
lcd.print(maxTemp,1); // Afficher la température Maximale.
if(Temp>25) // Si la température>25°c
{ digitalWrite(redledPin, HIGH); //Envoyer un niveau haut 1 (5V) sur la broche 8 pour allumer la LED
delay(1000); // pause de 1 seconde }
if(Temp<25) // Si la température<25°c. {
digitalWrite(redledPin, LOW); // Envoyer un niveau bas 0 (0V) sur la broche 8 pour éteindre la LED
}
delay(1000);}

Page 19
Chapitre III : La partie de réalisation
1- Présentation du système :
Un thermomètre électronique est composé d’un capteur de température et des composants
électroniques qui ont pour rôle de traiter l’information et la rende exploitable par l’usage.
Ce thermomètre devra faire la mesure de la température et à la fin de la mesure, on obtient
une tension de sortie en relation linéaire avec la température exprimée en degrés Celsius,
après l’arduino va effectuer la conversion analogique numérique de cette tension selon la
formule suivante :
Température (°C) = (5.0*Vout*100.00) /1023
Et après afficher la température en Celsius avec la valeur minimale et maximale sur un
afficheur LCD et finalement comparer cette température avec 25°C, si la valeur dépassé 25
L’arduino va envoyer une tension de 5V sur la broche 8 (digital) pour allumer une LED et
si la valeur est inférieure à 25°C L’arduino va éteindre la LED en envoyant 0V sur la broche
8.

Si la Allumer la
Température LED
> 25°C

Afficheur
Température LM35 Arduino
16x2

Si la Eteindre la
Température LED
< 25°C

Figure 12 : chaine de mesure et affichage de température

Page 20
2- Schéma du circuit :
Voilà le circuit principal de notre thermomètre :

Page 21
3-La simulation sur ISIS :
Avant de commencer la réalisation pratique de notre projet nous avons faire une
simulation sur Proteus 8 (ISIS) pour assurer le bon fonctionnement de notre projet et pour
vérifier que le programme est correct.

Figure 13 : La simulation sur ISIS

Page 22
4-Circuit Imprimé:
Pour simplifier le circuit imprimé de notre thermomètre nous avons décidé de laisser
l’arduino et LCD 16x2 et la liaison entre les deux à l’extérieur de la carte électronique. Et
utilisé des connecteurs pour faciliter le câblage.
Voilà la carte de notre circuit :

Figure 14 : Circuit imprimé

Page 23
5-Réalisation pratique:
Nous avons installé la carte et tous les composants de thermomètre dans une boîte
rectangulaire rigide avec un couvercle pour faciliter la modification sur le circuit.
L’intérieur de la boîte :

Page 24
Alimentation de L’arduino

LM 35 , les autre composant et des connecteurs dans la partie supérieure de la boîte :

Page 25
La forme finale de notre thermomètre :

Page 26
Conclusion
La réalisation de ce projet simple nous a énormément appris, soit au niveau de
l’électronique, ou bien au niveau de la programmation de l’arduino. Nous avons aussi acquis
de nouvelles connaissances au niveau de la gestion du temps et des équipes.

Nous étions fascinés par le domaine d’électronique et d'informatique, et nous trouvons la


combinaison de ces deux domaines vivants dans l’arduino.

Ce travail reste, comme toute œuvre humaine, incomplet et perfectible, nous espérons qu’il
sera une initiative visant à développer notre connaissance dans les prochains jours.

Page 27
REFERENCES BIBLIOGRAPHIQUES
[1]. Datasheet LM35

[2]. https://www.gotronic.fr/art-lm35dz-10295.htm

[3]. https://www.carnetdumaker.net/articles/mesurer-une-temperature-avec-un-capteur-lm35-et-une-carte-
arduino-genuino/

[4]. https://www.technologuepro.com/microcontroleur-2/arduino/Arduino%20uno.html

[5]. https://fr.wikipedia.org/wiki/HD44780

[6]. https://fr.wikipedia.org/wiki/Potentiom%C3%A8tre

[7]. http://www.ifpenergiesnouvelles.fr/

[8]. http://eskimon.fr/tuto-arduino-701-les-%C3%A9crans-lcd

Page 28

Vous aimerez peut-être aussi