15
Rodrigues Bastos Kévin Tebib Heila Tabiche Sohib Xaysakda Mélody Projet d’Electronique Thermomètre Digital Projet Ing 1 TD 5 Semestre 1 2012-2013

projet D’electronique Thermomètre Digitalsohibtabiche.fr/projet/pj_5.pdf · Nous avons ensuite placé un voltmètre virtuel afin de mesurer la valeur de la tension à la sortie

Embed Size (px)

Citation preview

Rodrigues Bastos Kévin

Tebib Heila

Tabiche Sohib

Xaysakda Mélody

Projet d’Electronique Thermomètre Digital

Projet Ing 1 TD 5

Semestre 1

2012-2013

2

Projet d’Electronique Thermomètre Digital 2012 - 2013

3

Projet d’Electronique Thermomètre Digital 2012 - 2013

Introduction P4

I Etude du schéma fonctionnel P5 – P8

II Simulation Sous Isis (Proteus) P9 – P10

III Thermomètre à affichage alphanumérique P11 –P14

- Etude de la partie matérielle P11 -P12

- Simulation sous Isis P13

- Code C associé P14

Conclusion

4

Projet d’Electronique Thermomètre Digital 2012 - 2013

Introduction

Le but de ce projet de physique appliquée est de réaliser un thermomètre digital à l’aide des notions

vues en cours et des logiciels mis à notre disposition tels que ISIS/ PROTEUS.

Ce projet se décompose en deux parties. Dans un premier temps, nous étudierons le schéma

fonctionnel puis nous mettrons en place une simulation sous ISIS enfin nous réaliserons l’étude sur

plaque d’essais. Dans un second temps, nous réaliserons un thermomètre à affichage numérique.

Pour mener à bien notre projet, nous avons décidé de nous répartir équitablement les travaux avant

de réunir nos réalisations pour finaliser un compte rendu commun. En effet, Tabiche Sohib et

Xaysakda Mélody se sont occupés de la simulation sous ISIS et de la rédaction du rapport et Tebib

Heila et Rodrigues Bastos Kevin se sont penchés sur le cas du montage et de la simulation sous

PROTEUS.

5

Projet d’Electronique Thermomètre Digital 2012 - 2013

I – Etude du schéma fonctionnel

Un thermomètre est un appareil qui mesure et affiche la valeur de la température en captant la

chaleur extérieure. Nous avons tous d’abord étudié le schéma fonctionnel du thermomètre.

Pour la réalisation structurelle, nous distinguons quatre composants : un capteur de température: le LM35, un circuit intégré : le LM3914 et les dix LEDs. Avec le schéma fonctionnel de la simulation nous avons identifié les différentes fonctions :

Nous avons donc :

● La fonction Fs1 est assurée via la thermistance LM35 (résistance qui varie en fonction de la

température).

● La fonction Fs2 transforme une tension en une grandeur analogique et simplifie l’interphase du

capteur grâce au conditionneur.

● La fonction Fs3 de conversion est assurée via le convertisseur analogique/numérique LM3914

● La fonction d’affichage (Fs4) est assurée par les LEDs.

Dans le schéma tel qu’il est donné du thermomètre digital, le capteur LM35 délivre en sortie une

donnée analogique (tension). Pour pouvoir l’exploiter et l’afficher sur plusieurs LEDs, nous avons

besoin de la convertir, tel est le rôle du LM3914 (Convertisseur Analogique/ Numérique). C’est

pourquoi le LM3914 joue un rôle important.

De plus, grâce à la documentation fournie nous avons pu caractériser les entrées et sorties des

différents composants. Le schéma ci-contre illustre ces entrées et sorties.

6

Projet d’Electronique Thermomètre Digital 2012 - 2013

Dans ce projet de physique appliquée, la grandeur physique que nous manipulons est une grandeur

thermique : la température exprimée en °C. Le support nous permettant de la véhiculer (la

température) est la tension analogique qui a pour unité le Volt.

D’autre part, à l’aide du logiciel de simulation ISIS, nous avons fait varier la température afin de

savoir à quelle température toutes les LEDs étaient éteintes et à quelle température celles-ci étaient

toutes allumées.

Suite à notre simulation nous avons trouvé que pour 0°C, toutes les LEDs étaient éteintes et que pour

40°C, elles étaient toutes allumées. De plus, nous avons remarqué que tout les 4°C, une LED s’allume.

Le pas de température observé est donc de 4.

Toujours avec ce même logiciel de simulation, nous avons voulu déterminer les limites de tension des

différentes LEDs pour cela nous avons ajouté un voltmètre en dérivation aux bornes d’une Led et

nous avons observé que lorsque la LED était allumée, la tension à ces bornes est de 2,23V et que

lorsqu’elle est éteinte celle-ci est de 0.01V. Les limites de tension des différentes LEDs sont 0V ou

2.23V.

Par la suite, nous avons voulu mesurer les tensions de sorties de LM35, nous avons donc ajouté un

voltmètre aux bornes de ce dernier.

Nous avons ainsi trouvé que pour 4°C, on a une tension de sortie de 0.13V et pour 40°c nous avons

une tension de sortie de 1.30V.

Voici les illustrations de notre simulation sous ISIS :

Fs 1

LM 35

Fs 2

Conditionneur

Fs 3

CAN LM3914

Fs 4

Afficheur (Led/LCD)

Grandeur Electrique Analogique

Tension (V)

Grandeur Physique

Température (°C)

Grandeur Electrique Analogique

Tension (V)

Grandeur Electrique

Numérique Tension (V)

Signal Lumineux

7

Projet d’Electronique Thermomètre Digital 2012 - 2013

Par ailleurs, nous avons fait varier la température de 4°C à 40°C, en relevant la tension de sortie du

LM35 dès qu’une LED s’allumait et nous avons obtenu les résultats suivants :

Température (°C) 0 4 8 12 16 20 24 28 32 36 40

Tension (V) 0 0.13 0.26 0.39 0.52 0.64 0.77 0.90 1.03 1.16 1.30

L’obtention de ces résultats nous a permis de tracer une droite représentant la tension en fonction

de la température. D’après le graphique, nous remarquons un rapport de proportionnalité, c’est une

droite du type ax +b (fonction affine). La loi de variation de l’information en fonction de la grandeur

physique est donc linéaire.

0

0,2

0,4

0,6

0,8

1

1,2

1,4

0 4 8 12 16 20 24 28 32 36 40

La tension en fonction de la température

8

Projet d’Electronique Thermomètre Digital 2012 - 2013

D’autre part, avec le LM35, nous avons cherché la valeur minimale et maximale et nous avons trouvé

respectivement -55°C et 150°C.

La datasheet vient confirmer nos résultats puisque nous retrouvons à la page 3 que la plage de

capture est de -60°c à +150°c.

9

Projet d’Electronique Thermomètre Digital 2012 - 2013

II – Première partie

2 – Simulation sous Proteus

Dans cette partie nous avons utilisé le logiciel de simulation Proteus.

Après avoir lancé la simulation, nous remarquons que les LEDs (D1 à D10), s’allument ou s’éteignent

en fonction de la température.

Cependant nous avons eu des contraintes à prendre en compte pour le choix des résistances. En

effet, la valeur des résistances ne doit pas être trop faible pour avoir un courant correct aux bornes

du LM3945 et des LEDs et la puissance des résistances ne doit être trop élevée.

Nous avons ensuite placé un voltmètre virtuel afin de mesurer la valeur de la tension à la sortie du

capteur à 14°c. Ainsi pour 14°c, nous avons obtenu 0.45V.

Puis nous avons placé un ampèremètre virtuel afin d’obtenir la valeur de l’intensité qui circule dans

les diodes pour une température de 14°c. Pour 14°c, nous observons 3 LEDs allumées et 7 éteintes.

Les Leds allumées ont un courant qui les traverse de 9.58 mA, soit environ 10 mA tandis que les LEDs

éteintes ont une intensité de 0mA.

1

0

Projet d’Electronique Thermomètre Digital 2012 - 2013

De plus, nous avons étudié le pas de variation de la température comme précédemment. A 4°C, nous

avons 1 LED allumée, à 8°C nous en avons 2 et à 40 °C nous en avons 10.

Nous remarquons que tout les 4°c nous avons une LED qui s’allume en plus. Le pas de température

est donc de 4°c pour 1 LED.

Ce pas de variation de la température peut être changé. En effet, pour le modifier il suffirait de

changer les valeurs des résistances du conditionneur. Par exemple en fixant R4= 5.5 kOhm on obtient

un pas de température de 2.

D’autre part la présence de la résistance R1 est très importante, en effet celle-ci sert à fixer le

courant aux bornes des LEDs. L’intensité des LEDs dépendent de la résistance R1. Cela provient de la

loi d’Ohm U=RI.

1

1

Projet d’Electronique Thermomètre Digital 2012 - 2013

III – Thermomètre à affichage numérique

Annualise du Matériel

Nous nous proposons maintenant de réaliser un thermomètre à affichage numérique en utilisant les

composants suivants :

- LM35

- Arduino UNO (équipé d’un µContrôleur AMEGA328P)

- Un écran LCD 16*2

L’Arduino est composé de plusieurs structures :

1- Le port Usb : ce port sert à relier la plateforme Arduino avec un ordinateur (PC, Mac, Linux),

ainsi l’utilisateur peut coder un programme et le compiler dans le microcontrôleur.

2- L’alimentation : Arduino UNO a besoin d’être alimenté en tension continue (0v et 15v max).

3- La Led L est une Led reliée à la plateforme Arduino et au microcontrôleur.

Les Leds, RX, TX sont les témoins de la transmission entre le PC et le microcontrôleur (liaison

RS232).

4- Le microcontrôleur ATMEGA328P est l’élément principal de la plaque d’Arduino, c’est lui qui

effectue tous les traitements ainsi que la gestion des entrées et sorties.

1

2

Projet d’Electronique Thermomètre Digital 2012 - 2013

4a- L’ensemble des broches numéroté 4a sont reliées au microcontrôleur. Elles représentent les

sorties de celui-ci.

4b- L’ensemble des broches numéroté 4b sont reliées au microcontrôleur et représentent les

entrées de celui-ci.

Nous allons maintenant repérer les différentes entrées et sorties de la plaque Arduino.

L’Arduino UNO dispose de plusieurs entrées et sorties. En effet l’Arduino UNO dispose d’entrées

physiques (Bouton Poussoir) ainsi que d’entrées électriques. En ce qui concerne les sorties, celles-ci

sont de forme Lumineuse (témoins lumineux Led) ou électrique (Sortie du microcontrôleur).

Entrées Sorties Broche Usb Led d’état

Alimentation Témoin de tension (Led)

Bouton Poussoir Sortie du µcontrôleur

Entrée Analogique et numérique

Sortie Numérique/Analogique µContrôleur

Témoin de tension (LED)

Bouton Poussoir

(Hard Reset)

Entrées Numériques et

Analogiques du µContrôleur

Alimentation en tension

Broche USB

Led d’état

1

3

Projet d’Electronique Thermomètre Digital 2012 - 2013

Etude du schéma fonctionnel

Afin d’afficher la température sur un afficheur LCD, nous voulons intégrer la plaque Arduino dans

notre montage précédent. Nous allons donc refaire un schéma structurel afin de faciliter la

compréhension du montage final.

Le capteur LM35, sa fonction est toujours la même c'est-à-dire qu’il capte la température et la

converti en tension.

Dans le nouveau montage, le Convertisseur Analogique Numérique (CAN) et le conditionneur ont été

remplacés par le microcontrôleur (AMEGA328P). Le schéma structurel est ainsi plus simple.

L’afficheur LCD (Liquid Crystal Display) a le même rôle que les Leds. C’est le support du signal

Lumineux.

Voici donc le montage sous ISIS en ayant identifié les différentes fonctions.

FS1 comme précédemment est assuré par le LM35 et le traitement de l’information est ici assuré par

Arduino qui délivre un signal qui se réinjecte dans l’afficheur LCD (16x2).

LM35

FS1

Arduino

FS2

Afficheur Lcd

FS3

Température

Signal Analogique image

de la température

Signal Numérique

Sur 8 broches

Signal Lumineux Alphanumérique

1

4

Projet d’Electronique Thermomètre Digital 2012 - 2013

Code C associé :

#include <LiquidCrystal.h> //Initialisation des bibliothèques

#define Entree A0

float val; // On crée une variable float qui va obtenir la valeur

de l'entrée analogique

int temp,tempfar; // On crée 2 variables de type entier .

LiquidCrystal lcd( 0, 1, 2, 3, 4, 5); // Cette fonction, permet d'indiqué les numéros de broches

dans l'ordre : rs, enable, d4, d5, d6, d7

void setup() // Fonction Obligatoire

{

lcd.begin(16, 2); // On défini la taille de l'écran ici: 16 colonnes * 2 lignes

analogReference(EXTERNAL);

pinMode(Entree, INPUT);

lcd.setCursor(0, 0); // On place le curseur d'écriture à la position: 0,0

lcd.print("Sohib, Kevin"); // On affiche de la position précédente Sohib, Kevin"

lcd.setCursor(0, 1); // On place le curseur en 0,1 c'est à dire, on va à la ligne

lcd.print("Melody, Heila"); // On affiche "Melody, Heila"

delay(100); // On fait une pause de 100 ms

lcd.clear(); // On efface l'écran

}

void loop() // Boucle de traitement (infinie)

{

val=analogRead(Entree); // On dit que la valeur de la variable val est égale à

la valeur de l'entrée analogique

val=((val*5)/1024); // Le µcontrôleur dispose d'un CAN 10bit, et d'une tension de

référence 5v donc on pose: Vref/2^10 c'est a dire, un pas de 5/1024

val = (val* 100); // Val est ici exprimé en millivolts, nous multiplions val

par 100 pour avoir le résultat en 100 de mVolt

temp=val; // On affecte à la variable temp, la valeur reçu sur l'entrée analogique

tempfar = (((9*temp)/5)+32); // /!\ Conversion dégrée Celsius, fahrenheit

lcd.setCursor(0, 0); // On place le curseur à la position 0,0

lcd.print("Temp="); // On affiche temp

lcd.setCursor(0, 1);

lcd.print("Temp=");

if (temp <10) // Si temp <10

{

lcd.setCursor(6, 0); // On décale le curseur d'un rang vers la gauche, car 9 != 90

lcd.print("0"); // On affiche un zéro

lcd.setCursor(7, 0); // On décale vers la droite d'un rang

lcd.print(temp); // On affiche la valeur de temp

lcd.setCursor(9, 0); // On décale d'un rang vers la droite

lcd.print((char)223); // On affiche le symbole "°"

lcd.print("C"); // On affiche la lettre C (Celsius)

lcd.setCursor(6, 1);lcd.print(tempfar);lcd.setCursor(9, 1);lcd.print((char)223);lcd.print("F"); // Fonction d’affiche (nous avons

compacté pour gagner de la place

}

if (temp>=10) // Si la température est > 10°

{

lcd.setCursor(6, 0);lcd.print(temp);lcd.setCursor(9, 0);lcd.print((char)223);lcd.print("C");

lcd.setCursor(6, 1);lcd.print(tempfar);lcd.setCursor(9, 1);lcd.print((char)223);lcd.print("F");

}

}

1

5

Projet d’Electronique Thermomètre Digital 2012 - 2013

Conclusion

Après l’étude du thermomètre sous ISIS/PROTEUS et du thermomètre à affichage nous pouvons dire

que le signal final est différent : en effet, dans le 1er montage la température est indiquée en fonction

du nombre de Leds allumées, c’est un signal lumineux alors que dans le 2ème montage avec Arduino

c’est l’écran LCD qui nous affiche un signal lumineux alphanumérique.

De plus, le 1er montage a besoin de plus de composants que le 2ème montage. En effet dans le 2ème

montage nous avons le microcontrôleur qui remplace à lui seul le convertisseur analogique

numérique et le conditionneur.

Le 2ème montage avec Arduino est plus coûteux que le 1er montage mais celui-ci est plus précis et

fonctionnel.

D’après nos expériences, nous pouvons conclure que la température est une grandeur mesurable.