{"id":4670,"date":"2020-05-07T19:38:51","date_gmt":"2020-05-07T17:38:51","guid":{"rendered":"http:\/\/www.ardpylab.fr\/?page_id=4670"},"modified":"2020-05-16T12:46:48","modified_gmt":"2020-05-16T10:46:48","slug":"projet-5-activite-4","status":"publish","type":"page","link":"https:\/\/www.ardpylab.fr\/?page_id=4670","title":{"rendered":"Projet 5 &#8211; Activit\u00e9 4"},"content":{"rendered":"\n<h2 style=\"text-align: center;\"><strong><em data-rich-text-format-boundary=\"true\">\u201dEtalonnage d\u2019une thermistance CTN<\/em><\/strong><strong><em data-rich-text-format-boundary=\"true\">\u201d<\/em><\/strong><\/h2>\n<p>&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"577\" height=\"433\" class=\"wp-image-4633 aligncenter\" style=\"border: 3px solid #eeeeee; padding: 3px; margin: 3px;\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython5-2.jpg\" alt=\"\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython5-2.jpg 577w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython5-2-300x225.jpg 300w\" sizes=\"auto, (max-width: 577px) 100vw, 577px\" \/><\/figure>\n<\/div>\n<p>&nbsp;<\/p>\n\n\n\n<h4><strong><span style=\"color: #3366ff;\"><br>.&nbsp;<span style=\"text-decoration: underline;\">Objectif<br><br><\/span><\/span><\/strong><\/h4>\n<p>L\u2019objectif de cette activit\u00e9 est d\u2019\u00e9talonner une thermistance dont les grandeurs caract\u00e9ristiques ne sont pas connues, \u00e0 l\u2019aide d\u2019un capteur de temp\u00e9rature TMP 36 ou LM 35.<\/p>\n<p>Pour cela, nous allons faire varier la temp\u00e9rature et on va demander \u00e0 l\u2019Arduino de mesurer la r\u00e9sistance de la thermistance en fonction de la temp\u00e9rature qui sera mesur\u00e9e en parall\u00e8le par le capteur.<\/p>\n<p>On pourra alors tracer la caract\u00e9ristique <strong>r\u00e9sistance = f(temp\u00e9rature)<\/strong> qui permettra apr\u00e8s de mesurer n\u2019importe quelle temp\u00e9rature avec cette thermistance gr\u00e2ce \u00e0 la mesure de sa r\u00e9sistance.<br><br><br><\/p>\n<h4><strong><span style=\"color: #3366ff;\">.&nbsp;<span style=\"text-decoration: underline;\">Le programme<br><br><\/span><\/span><\/strong><\/h4>\n<p>Voici le code de l\u2019activit\u00e9 en Python et en langage Arduino.<br><br><\/p>\n<h4><strong>. <u>Programme en Python (\u201d<a href=\"https:\/\/www.ardpylab.fr\/downloads\/projetspython\/projet5\/projet5-activity4.zip\">Projet5\\Activity4\\PY\\Activity4.py<\/a>\u201d)<br><br><\/u><\/strong><\/h4>\n\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/www.ardpylab.fr\/downloads\/projetspython\/projet5\/Activity4\/PY\/Activity4.py\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5177 size-full\" style=\"border: 3px solid #eeeeee; padding: 3px; margin: 3px;\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity4-1.png\" alt=\"\" width=\"937\" height=\"1711\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity4-1.png 937w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity4-1-164x300.png 164w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity4-1-561x1024.png 561w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity4-1-768x1402.png 768w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity4-1-841x1536.png 841w\" sizes=\"auto, (max-width: 937px) 100vw, 937px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<p><strong><u><br \/>D\u00e9roulement du programme<\/u><\/strong><strong>\u00a0:<\/strong><\/p>\n<p>&#8211; <u>Importation des librairies\u00a0et d\u00e9finition de fonctions<\/u> :<\/p>\n<p style=\"padding-left: 40px;\">. Le module <strong>\u201dConnectToArduino.py\u201d, <\/strong>contenant les fonctions de connexion \u00e0 l\u2019Arduino via le protocole <strong>\u201dFirmata Express\u201d<\/strong>,<\/p>\n<p style=\"padding-left: 40px;\">. Le module <strong>\u201d<\/strong><strong>PymataExpressDef.Py\u201d<\/strong> regroupant toutes les fonctions utiles \u00e0 l\u2019utilisation de <strong>\u201d<\/strong><strong>Pymata<\/strong><strong>-express\u201d<\/strong>\u00a0(fonction de d\u00e9claration des entr\u00e9es et sorties, de lectures, d\u2019\u00e9critures\u2026),<\/p>\n<p>. La biblioth\u00e8que <strong>\u201d<\/strong><strong>time\u201d <\/strong>pour la gestion des temps de pause.<br \/><br \/><\/p>\n<p>&#8211; <u>D\u00e9claration des constantes et variables<\/u>\u00a0:<\/p>\n<p style=\"padding-left: 40px;\">. <strong>PinTMP = 0 <\/strong>(cst correspondant au n\u00b0 de la broche A0 sur laquelle le capteur de temp\u00e9rature TMP 36 est connect\u00e9)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>PinCTN = 5 <\/strong>(cst correspondant au n\u00b0 de la broche A5 sur laquelle la thermistance est connect\u00e9e)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>ValTMP = 0 <\/strong>(variable pour stocker la valeur de la broche du capteur de temp\u00e9rature)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>ValCTN = 0 <\/strong>(variable pour stocker la valeur de la broche de la thermistance)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>TempTMP = 0<\/strong> (variable correspondant \u00e0 la temp\u00e9rature en \u00b0C calcul\u00e9e \u00e0 partir de la valeur de la broche du capteur de temp\u00e9rature)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>OldTempTMP = 0<\/strong> (variable correspondant \u00e0 la temp\u00e9rature en \u00b0C calcul\u00e9e pr\u00e9c\u00e9demment)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>Vctn = 0 <\/strong>(variable correspondant \u00e0 la tension calcul\u00e9e en V de la broche de la thermistance)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>Rctn = 0<\/strong> (variable correspondant \u00e0 la valeur de la r\u00e9sistance calcul\u00e9e en Ohms de la thermistance)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>PinButton = 12 <\/strong>(cst correspondant au n\u00b0 de la broche sur laquelle le bouton poussoir est connect\u00e9)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>ValButton = 0<\/strong> (variable pour stocker la valeur de l\u2019\u00e9tat logique de la broche du bouton poussoir)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>OldValButton = 0<\/strong> (variable pour stocker la valeur pr\u00e9c\u00e9dente de l\u2019\u00e9tat logique de la broche du bouton poussoir). <strong>State=0<\/strong> (variable correspondant \u00e0 l\u2019action \u00e0 effectuer)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>OldState = 0<\/strong> (variable pour stocker la valeur pr\u00e9c\u00e9dente de la variable <strong>state<\/strong>)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>PortComArduino <\/strong>(port COM sur lequel l\u2019Arduino est connect\u00e9)\u00a0<br \/><br \/><\/p>\n<p>&#8211; <u>Connexion \u00e0 l&rsquo;Arduino<\/u>\u00a0:<\/p>\n<p style=\"padding-left: 40px;\">. D\u00e9tection du port COM, tentative d\u2019ouverture du port COM s\u00e9lectionn\u00e9 et connexion \u00e0 l\u2019Arduino:<\/p>\n<p style=\"padding-left: 80px;\"><strong>PortComArduino = SelectPortCOM()<\/strong><\/p>\n<p style=\"padding-left: 80px;\"><strong>board = OpenPortCom(PortComArduino)<br \/><br \/><\/strong><\/p>\n<p style=\"padding-left: 40px;\">. Si la connexion \u00e0 l\u2019Arduino est r\u00e9ussie :<\/p>\n<p style=\"padding-left: 80px;\">&#8211; D\u00e9claration de la broche du capteur de temp\u00e9rature en entr\u00e9e analogique\u00a0:<\/p>\n<p style=\"padding-left: 120px;\"><strong>Set_AnalogInput_Pin(board, PinTMP)<\/strong><\/p>\n<p style=\"padding-left: 80px;\">&#8211; D\u00e9claration de la broche de la thermistance en entr\u00e9e analogique\u00a0:<\/p>\n<p style=\"padding-left: 120px;\"><strong>Set_AnalogInput_Pin(board, PinCTN)<\/strong><\/p>\n<p style=\"padding-left: 80px;\">&#8211; D\u00e9claration de la broche du bouton poussoir en entr\u00e9e num\u00e9rique\u00a0:<\/p>\n<p style=\"padding-left: 120px;\"><strong>Set_DigitalInput_Pin(board, PinButton)<br \/><br \/><\/strong><\/p>\n<p>&#8211; <u>Boucle principale du programme (boucle \u201d<\/u><u>while True\u201d<\/u><u>)<\/u> :<\/p>\n\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5178 size-full\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity4-2.png\" alt=\"\" width=\"1165\" height=\"1854\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity4-2.png 1165w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity4-2-189x300.png 189w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity4-2-643x1024.png 643w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity4-2-768x1222.png 768w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity4-2-965x1536.png 965w\" sizes=\"auto, (max-width: 1165px) 100vw, 1165px\" \/><\/figure>\n<\/div>\n\n\n\n<p><strong><u><br>R\u00e9sultats dans la fen\u00eatre Python Shell&nbsp;:<\/u><\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\" style=\"padding-left: 40px;\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-5179\" style=\"border: 3px solid #eeeeee; padding: 3px; margin: 3px;\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity4-3.png\" alt=\"\" width=\"552\" height=\"240\"><br><br><\/figure>\n\n\n\n<h4><strong><br>. <u>Programme en langage Arduino (\u201d<a href=\"https:\/\/www.ardpylab.fr\/downloads\/projetspython\/projet5\/projet5-activity4.zip\">Projet5\\Activity4\\INO\\Activity4.ino<\/a>\u201d)<\/u><\/strong><\/h4>\n\n\n\n<p><br \/>Le code de l\u2019activit\u00e9 en langage Arduino a d\u00e9j\u00e0 \u00e9t\u00e9 \u00e9tudi\u00e9 dans la partie:<\/p>\n<p style=\"padding-left: 40px;\">\u201d<a href=\"https:\/\/www.ardpylab.fr\/?page_id=949\/#prog\"><strong>Activit\u00e9s pour les lyc\u00e9es \/ Temp\u00e9ratures \/ Activit\u00e9 4<\/strong><\/a>\u201d<\/p>\n<p><br \/><br \/><\/p>\n<h4><strong><span style=\"color: #3366ff;\">. <span style=\"text-decoration: underline;\">Exploitation des mesures<br \/><br \/><\/span><\/span><\/strong><\/h4>\n<p>L&rsquo;exploitation des mesures a \u00e9galement d\u00e9j\u00e0 \u00e9t\u00e9 \u00e9tudi\u00e9e dans la partie:<\/p>\n<p style=\"padding-left: 40px;\">\u201d<a href=\"https:\/\/www.ardpylab.fr\/?page_id=949\/#exploit\"><strong>Activit\u00e9s pour les lyc\u00e9es \/ Temp\u00e9ratures \/ Activit\u00e9 4 \/ Exploitation des mesures<\/strong><\/a>\u201d<\/p>\n<p>\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=4666\"><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=4675\"><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>\u201dEtalonnage d\u2019une thermistance CTN\u201d &nbsp; &nbsp; .&nbsp;Objectif L\u2019objectif de cette activit\u00e9 est d\u2019\u00e9talonner une thermistance dont les grandeurs caract\u00e9ristiques ne sont pas connues, \u00e0 l\u2019aide d\u2019un capteur de temp\u00e9rature TMP 36 ou LM 35. Pour cela, nous allons faire varier la temp\u00e9rature et on va demander \u00e0 l\u2019Arduino de mesurer la r\u00e9sistance de la thermistance [&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-4670","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/pages\/4670","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=4670"}],"version-history":[{"count":1,"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/pages\/4670\/revisions"}],"predecessor-version":[{"id":5218,"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/pages\/4670\/revisions\/5218"}],"wp:attachment":[{"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4670"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}