{"id":1007,"date":"2020-03-26T19:03:57","date_gmt":"2020-03-26T18:03:57","guid":{"rendered":"http:\/\/www.ardpylab.fr\/?page_id=1007"},"modified":"2020-05-16T12:17:13","modified_gmt":"2020-05-16T10:17:13","slug":"temperatures-activite-5","status":"publish","type":"page","link":"https:\/\/www.ardpylab.fr\/?page_id=1007","title":{"rendered":"Temp\u00e9ratures &#8211; Activit\u00e9 5"},"content":{"rendered":"\n<h2 style=\"text-align: center;\"><em>\u201d <\/em><span style=\"text-decoration: underline;\"><em>Mesure de temp\u00e9ratures avec une<\/em><\/span><\/h2>\n<h2 style=\"text-align: center;\"><span style=\"text-decoration: underline;\"><em>thermistance CTN<\/em><\/span> <em>\u201d<br><br><\/em><\/h2>\n\n\n\n<h4><span style=\"color: #3366ff;\"><strong><br><br>. <span style=\"text-decoration: underline;\">Objectif<\/span><\/strong><\/span><\/h4>\n<p>Pour mesurer une temp\u00e9rature avec une thermistance CTN, il faut connaitre ses grandeurs caract\u00e9ristiques. Le plus souvent, le constructeur fourni les valeurs suivantes&nbsp;:<\/p>\n<p style=\"padding-left: 40px;\"><strong>&#8211; La valeur de sa r\u00e9sistance R<sub>0<\/sub> (r\u00e9sistance nominale en \u2126) \u00e0 la temp\u00e9rature de r\u00e9f\u00e9rence T<sub>0<\/sub> = 25 \u00b0C (298,15 K)<\/strong><\/p>\n<p style=\"padding-left: 40px;\"><strong>&#8211; La valeur de \u03b2 (en K)<\/strong><\/p>\n<p style=\"padding-left: 40px;\"><strong>&#8211; La plage de temp\u00e9rature pour laquelle la relation entre la temp\u00e9rature T (en K) et R<sub>T<\/sub>, la r\u00e9sistance (en ohms) de la CTN \u00e0 cette temp\u00e9rature, est v\u00e9rifi\u00e9e&nbsp;:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"468\" height=\"224\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/image-118.png\" alt=\"\" class=\"wp-image-1008\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/image-118.png 468w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/image-118-300x144.png 300w\" sizes=\"auto, (max-width: 468px) 100vw, 468px\" \/><\/figure>\n\n\n\n<p><br>Par exemple, le capteur de temp\u00e9rature Groove est bas\u00e9 sur une thermistance CTN&nbsp;:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\" style=\"padding-left: 160px;\"><img loading=\"lazy\" decoding=\"async\" width=\"92\" height=\"80\" class=\"wp-image-1009\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/image-119.png\" alt=\"\"><\/figure>\n\n\n\n<p>Le constructeur donne les informations suivantes&nbsp;:<\/p>\n<p style=\"padding-left: 40px;\">. Voltage : 3.3 ~ 5V<br>. Zero power resistance : 100 K\u03a9<br>. Resistance Tolerance : \u00b11%<br>. Operating temperature range : -40 ~ +125 \u2103<br>. Nominal B-Constant\uff1a 4250 ~ 4299K<\/p>\n<p>&nbsp;<\/p>\n<p>En l\u2019absence de ces grandeurs caract\u00e9ristiques, il faut proc\u00e9der \u00e0 un \u00e9talonnage (cf. activit\u00e9 pr\u00e9c\u00e9dente), afin de les d\u00e9terminer exp\u00e9rimentalement.<\/p>\n<p>L\u2019objectif de l\u2019activit\u00e9 est d\u2019\u00e9crire un programme g\u00e9n\u00e9raliste permettant de mesurer une temp\u00e9rature avec une thermistance CTN quelconque, avec ce montage&nbsp;:<\/p>\n\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"400\" height=\"270\" class=\"wp-image-972 aligncenter\" style=\"border: 3px solid #eeeeee; padding: 3px; margin: 3px;\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/image-106.png\" alt=\"\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/image-106.png 400w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/image-106-300x203.png 300w\" sizes=\"auto, (max-width: 400px) 100vw, 400px\" \/><\/figure>\n<\/div>\n<p>&nbsp;<\/p>\n\n\n\n<p>Le code demande, \u00e0 l\u2019initialisation du programme, de renseigner les valeurs de T<sub>0<\/sub>, R<sub>0<\/sub> et \u03b2 afin de pouvoir calculer la temp\u00e9rature \u00e0 partir de la mesure de la r\u00e9sistance de la CTN.<\/p>\n\n\n\n<h4>\u00a0<\/h4>\n<h4><span style=\"color: #3366ff;\"><strong><a id=\"prog\"><\/a>. <\/strong><\/span><span style=\"text-decoration: underline; color: #3366ff;\"><strong>Le programme<\/strong><\/span><\/h4>\n<p>Voici <a href=\"https:\/\/www.ardpylab.fr\/downloads\/temperatures\/activity5.zip\" data-wplink-url-error=\"true\">le code de l\u2019activit\u00e9<\/a>\u00a0:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.ardpylab.fr\/downloads\/temperatures\/Activity5\/Activity5.ino\"><img loading=\"lazy\" decoding=\"async\" width=\"520\" height=\"532\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/tempcode5.png\" alt=\"\" class=\"wp-image-1026\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/tempcode5.png 520w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/tempcode5-293x300.png 293w\" sizes=\"auto, (max-width: 520px) 100vw, 520px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.ardpylab.fr\/downloads\/temperatures\/Activity5\/Activity5.ino\"><img loading=\"lazy\" decoding=\"async\" width=\"566\" height=\"740\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/tempcode5b.png\" alt=\"\" class=\"wp-image-1027\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/tempcode5b.png 566w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/tempcode5b-229x300.png 229w\" sizes=\"auto, (max-width: 566px) 100vw, 566px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.ardpylab.fr\/downloads\/temperatures\/Activity5\/Activity5.ino\"><img loading=\"lazy\" decoding=\"async\" width=\"566\" height=\"559\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/tempcode5c.png\" alt=\"\" class=\"wp-image-1028\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/tempcode5c.png 566w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/tempcode5c-300x296.png 300w\" sizes=\"auto, (max-width: 566px) 100vw, 566px\" \/><\/a><\/figure>\n\n\n\n<p><strong><u>D\u00e9roulement du programme<\/u><\/strong><strong>&nbsp;:<\/strong><\/p>\n<p>&#8211; 1. Inclusion des librairies<\/p>\n<p style=\"padding-left: 40px;\">Pour effectuer les calculs de temp\u00e9rature, le code n\u00e9cessite l\u2019importation de la librairie \u201d<strong>math.h\u201d<\/strong>.<br><br><\/p>\n<p>&#8211; 2.&nbsp; D\u00e9claration des constantes et variables&nbsp;:<\/p>\n<p style=\"padding-left: 40px;\"><strong>. const int PinCTN = 5<\/strong>&nbsp; &nbsp;(constante nombre entier correspondant \u00e0 la broche de la CTN)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>const int PinButton = 12<\/strong>&nbsp; (constante nombre entier correspondant \u00e0 la broche du bouton poussoir)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>int ValCTN = 0<\/strong>&nbsp; &nbsp;(variable nombre entier pour stocker la valeur de la broche de la CTN)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>float Temp = 0.0<\/strong>&nbsp; &nbsp; (variable nombre d\u00e9cimal pour stocker la valeur de la temp\u00e9rature)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>float OldTemp = 0.0<\/strong>&nbsp; &nbsp;(variable nombre d\u00e9cimal pour stocker la valeur pr\u00e9c\u00e9dente de la temp\u00e9rature)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>float Rt = 0.0<\/strong>&nbsp; &nbsp;(variable nombre d\u00e9cimal pour stocker la valeur de la r\u00e9sistance de la CTN)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>float Vctn = 0.0<\/strong>&nbsp; &nbsp;(variable nombre d\u00e9cimal pour stocker la valeur de la tension de la broche de la CTN)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>int TempRef = 0<\/strong>&nbsp; &nbsp;(variable nombre entier pour stocker la valeur de la temp\u00e9rature de r\u00e9f\u00e9rence)<\/p>\n<p style=\"padding-left: 40px;\">.<strong>long Ro = 0<\/strong>&nbsp; &nbsp;(variable nombre entier long pour stocker la valeur de la r\u00e9sistance de la CTN \u00e0 la temp\u00e9rature de r\u00e9f\u00e9rence)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>int B = 0<\/strong>&nbsp; &nbsp; &nbsp;(variable nombre entier pour stocker la valeur de la constante \u03b2)<\/p>\n<p style=\"padding-left: 40px;\"><strong>. int ValButton = 0&nbsp; &nbsp; &nbsp;<\/strong>(variable nombre entier pour stocker la valeur de la broche bouton poussoir)<\/p>\n<p style=\"padding-left: 40px;\"><strong>. int OldValButton = 0<\/strong>&nbsp; &nbsp;(variable nombre entier pour stocker la valeur pr\u00e9c\u00e9dente de la broche du bouton poussoir)<\/p>\n<p style=\"padding-left: 40px;\"><strong>. int State = 0&nbsp; &nbsp;<\/strong>(variable nombre entier correspondant \u00e0 l&rsquo;action \u00e0 effectuer)<\/p>\n<p style=\"padding-left: 40px;\"><strong>. int OldState = 0&nbsp;&nbsp; <\/strong><strong>&nbsp; <\/strong>(variable nombre entier correspondant \u00e0 l&rsquo;action effectu\u00e9e pr\u00e9c\u00e9demment)<br><br><\/p>\n<p>&#8211; 2. Initialisation des entr\u00e9es et sorties&nbsp;:<\/p>\n<p style=\"padding-left: 40px;\"><strong>. Initialisation de la liaison s\u00e9rie \u00e0 un d\u00e9bit de 9600 bauds,<\/strong><\/p>\n<p style=\"padding-left: 40px;\"><strong>. Initialisation de la broche du bouton poussoir en entr\u00e9e,<\/strong><\/p>\n<p style=\"padding-left: 40px;\"><strong>. <\/strong><strong>Saisie des valeurs de T<sub>0<\/sub>, R<sub>0<\/sub> et \u03b2 afin de pouvoir calculer la temp\u00e9rature \u00e0 partir de la mesure de la r\u00e9sistance de la CTN.<\/strong><\/p>\n<p style=\"padding-left: 40px;\"><span style=\"text-decoration: underline;\">Remarque<\/span> :<\/p>\n<p style=\"padding-left: 40px;\">La fonction \u201d<strong>parseInt()\u201d <\/strong>de la classe \u201d<strong>Serial\u201d <\/strong>retourne le premier entier long du tampon de la liaison s\u00e9rie. Les caract\u00e8res lettres ou le signe \u201d<strong>\u2010\u201d <\/strong>sont ignor\u00e9s. Au\u2010del\u00e0, d\u2019un certain temps (par d\u00e9faut, 1 s), la fonction se termine et retourne \u201d<strong>0\u201d<\/strong>&nbsp;si le tampon est vide ou ne contient pas de nombre.<br><br><\/p>\n<p>&#8211; 3. Fonction principale en boucle&nbsp;:<\/p>\n<p style=\"padding-left: 40px;\"><strong>. D\u00e9but des mesures en appuyant sur le bouton poussoir&nbsp;:<\/strong><\/p>\n<p style=\"padding-left: 80px;\"><strong>&#8211;&gt;Lecture de la valeur de la broche de la CTN<\/strong><\/p>\n<p style=\"padding-left: 80px;\"><strong>&#8211;&gt; <\/strong><strong>Calcul de la r\u00e9sistance de la CTN<\/strong><\/p>\n<p style=\"padding-left: 80px;\"><strong>&#8211;&gt; Calcul de la temp\u00e9rature<\/strong><\/p>\n<p style=\"padding-left: 80px;\"><strong>&#8211;&gt; <\/strong><strong>Affichage de la valeur de la r\u00e9sistance et de la temp\u00e9rature dans le moniteur s\u00e9rie si la valeur de la temp\u00e9rature est diff\u00e9rente de celle mesur\u00e9e pr\u00e9c\u00e9demment<\/strong><\/p>\n<p style=\"padding-left: 40px;\"><strong>. Fin des mesures en appuyant de nouveau sur le bouton poussoir<\/strong><\/p>\n<p>&nbsp;<\/p>\n\n\n\n<p><span style=\"text-decoration: underline;\"><strong>R\u00e9sultats dans le moniteur s\u00e9rie&nbsp;:<\/strong><\/span><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\" style=\"padding-left: 40px;\"><img loading=\"lazy\" decoding=\"async\" width=\"625\" height=\"442\" class=\"wp-image-1035\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/temp5ms.png\" alt=\"\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/temp5ms.png 625w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/temp5ms-300x212.png 300w\" sizes=\"auto, (max-width: 625px) 100vw, 625px\" \/><\/figure>\n\n\n\n<p>\u00a0 \u00a0 \u00a0 \u00a0<\/p>\n\n\n<div  class=\"grids-section grids-is-stretch\" style=\"--_gs-gap-desktop:0px 0px;--_gs-m-desktop:0 0 0 0;--_gs-p-desktop:0 0 0 0;--_gs-bg-desktop:transparent none;--_gs-bg-xp-desktop:0px;--_gs-zi-desktop:auto;--_gs-d-desktop:block;--_gs-mw-desktop:calc(100% - 0 - 0);--_gs-gap-tablet:0px 0px;--_gs-m-tablet:0 0 0 0;--_gs-p-tablet:0 0 0 0;--_gs-bg-tablet:transparent none;--_gs-bg-xp-tablet:0px;--_gs-zi-tablet:auto;--_gs-d-tablet:block;--_gs-mw-tablet:calc(100% - 0 - 0);--_gs-gap-mobile:0px 0px;--_gs-m-mobile:0 0 0 0;--_gs-p-mobile:0 0 0 0;--_gs-bg-mobile:transparent none;--_gs-bg-xp-mobile:0px;--_gs-zi-mobile:auto;--_gs-d-mobile:block;--_gs-mw-mobile:calc(100% - 0 - 0);--_gs-columns:2;--_gs-rows:1\"><div class=\"grids-s-w_i\">\n<div class=\"grids-area\" style=\"--_ga-column:1\/2;--_ga-row:1\/2;--_ga-m-desktop:0 0 0 0;--_ga-p-desktop:0 0 0 0;--_ga-bg-desktop:transparent none;--_ga-zi-desktop:auto;--_ga-d-desktop:flex;--_ga-mw-desktop:calc(100% - 0 - 0);--_ga-m-tablet:0 0 0 0;--_ga-p-tablet:0 0 0 0;--_ga-bg-tablet:transparent none;--_ga-zi-tablet:auto;--_ga-d-tablet:flex;--_ga-mw-tablet:calc(100% - 0 - 0);--_ga-m-mobile:0 0 0 0;--_ga-p-mobile:0 0 0 0;--_ga-bg-mobile:transparent none;--_ga-zi-mobile:auto;--_ga-d-mobile:flex;--_ga-mw-mobile:calc(100% - 0 - 0)\">\n\n<div class=\"wp-block-image\"><figure class=\"alignleft size-large\"><a href=\"https:\/\/www.ardpylab.fr\/?page_id=949\"><img loading=\"lazy\" decoding=\"async\" width=\"50\" height=\"28\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/moins.jpg\" alt=\"\" class=\"wp-image-107\"\/><\/a><\/figure><\/div>\n\n<\/div>\n\n<div class=\"grids-area\" style=\"--_ga-column:2\/3;--_ga-row:1\/2;--_ga-m-desktop:0 0 0 0;--_ga-p-desktop:0 0 0 0;--_ga-bg-desktop:transparent none;--_ga-zi-desktop:auto;--_ga-d-desktop:flex;--_ga-mw-desktop:calc(100% - 0 - 0);--_ga-m-tablet:0 0 0 0;--_ga-p-tablet:0 0 0 0;--_ga-bg-tablet:transparent none;--_ga-zi-tablet:auto;--_ga-d-tablet:flex;--_ga-mw-tablet:calc(100% - 0 - 0);--_ga-m-mobile:0 0 0 0;--_ga-p-mobile:0 0 0 0;--_ga-bg-mobile:transparent none;--_ga-zi-mobile:auto;--_ga-d-mobile:flex;--_ga-mw-mobile:calc(100% - 0 - 0)\">\n\n<div class=\"wp-block-image\"><figure class=\"alignright size-large\"><a href=\"https:\/\/www.ardpylab.fr\/?page_id=1140\"><img loading=\"lazy\" decoding=\"async\" width=\"50\" height=\"28\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/plus.jpg\" alt=\"\" class=\"wp-image-106\"\/><\/a><\/figure><\/div>\n\n<\/div>\n<\/div><\/div>\n\n\n\n","protected":false},"excerpt":{"rendered":"<p>\u201d Mesure de temp\u00e9ratures avec une thermistance CTN \u201d . Objectif Pour mesurer une temp\u00e9rature avec une thermistance CTN, il faut connaitre ses grandeurs caract\u00e9ristiques. Le plus souvent, le constructeur fourni les valeurs suivantes&nbsp;: &#8211; La valeur de sa r\u00e9sistance R0 (r\u00e9sistance nominale en \u2126) \u00e0 la temp\u00e9rature de r\u00e9f\u00e9rence T0 = 25 \u00b0C (298,15 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1007","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/pages\/1007","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1007"}],"version-history":[{"count":1,"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/pages\/1007\/revisions"}],"predecessor-version":[{"id":5212,"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/pages\/1007\/revisions\/5212"}],"wp:attachment":[{"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1007"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}