{"id":4666,"date":"2020-05-07T19:33:21","date_gmt":"2020-05-07T17:33:21","guid":{"rendered":"http:\/\/www.ardpylab.fr\/?page_id=4666"},"modified":"2020-05-16T11:48:59","modified_gmt":"2020-05-16T09:48:59","slug":"projet-5-activite-3","status":"publish","type":"page","link":"https:\/\/www.ardpylab.fr\/?page_id=4666","title":{"rendered":"Projet 5 &#8211; Activit\u00e9 3"},"content":{"rendered":"\n<h2 style=\"text-align: center;\"><strong><em data-rich-text-format-boundary=\"true\">\u201dThermom\u00e8tre \u00e0 diodes \u00e9lectroluminescentes<\/em><\/strong><strong><em data-rich-text-format-boundary=\"true\">&nbsp;\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\" class=\"alignnone wp-image-5163 \" style=\"border: 3px solid #eeeeee; padding: 3px; margin: 3px;\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-0.png\" alt=\"\" width=\"473\" height=\"371\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-0.png 565w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-0-300x235.png 300w\" sizes=\"auto, (max-width: 473px) 100vw, 473px\" \/><\/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>Dans cette activit\u00e9, nous allons utiliser les DELS rouge, verte et bleue&nbsp;afin de visualiser la zone dans laquelle se situe la temp\u00e9rature mesur\u00e9e (T<sub>mesur\u00e9e<\/sub>) par un capteur TMP 36 ou LM 35 par rapport \u00e0 une valeur de r\u00e9f\u00e9rence (T<sub>ref<\/sub>) et un \u00e9cart de temp\u00e9rature (\u0394T) \u00e0 d\u00e9finir :<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\" style=\"padding-left: 40px;\"><img loading=\"lazy\" decoding=\"async\" width=\"427\" height=\"82\" class=\"wp-image-933\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/image-97.png\" alt=\"\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/image-97.png 427w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/03\/image-97-300x58.png 300w\" sizes=\"auto, (max-width: 427px) 100vw, 427px\" \/><\/figure>\n<p>&nbsp;<\/p>\n\n\n\n<h4><strong><span style=\"color: #3366ff;\">.\u00a0<span style=\"text-decoration: underline;\">Le programme<br \/><br \/><\/span><\/span><\/strong><\/h4>\n<p>Le code de l\u2019activit\u00e9 en Python ou en langage Arduino pourra \u00eatre modifi\u00e9 pour voir l\u2019influence des variables (temp\u00e9rature de r\u00e9f\u00e9rence, \u00e9cart de temp\u00e9rature).<br \/><br \/><\/p>\n<h4><strong>. <\/strong><u><strong>Programme en Python (\u201d<a href=\"https:\/\/www.ardpylab.fr\/downloads\/projetspython\/projet5\/projet5-activity3.zip\">Projet5\\Activity3\\PY\\Activity3.py<\/a>\u201d)<br \/><\/strong><br \/><\/u><\/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\/Activity3\/PY\/Activity3.py\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5159 size-full\" style=\"border: 3px solid #eeeeee; padding: 3px; margin: 3px;\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-1.png\" alt=\"\" width=\"766\" height=\"2171\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-1.png 766w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-1-106x300.png 106w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-1-361x1024.png 361w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-1-542x1536.png 542w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-1-723x2048.png 723w\" sizes=\"auto, (max-width: 766px) 100vw, 766px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<p><strong><u><br>D\u00e9roulement du programme<\/u><\/strong><strong>&nbsp;:<\/strong><\/p>\n<p>&#8211; <u>Importation des librairies&nbsp;et 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>&nbsp;(fonction de d\u00e9claration des entr\u00e9es et sorties, de lectures, d\u2019\u00e9critures\u2026),<\/p>\n<p style=\"padding-left: 40px;\">. 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>&nbsp;:<\/p>\n<p style=\"padding-left: 40px;\">. <strong>PinSensor = 0 <\/strong>(cst correspondant au n\u00b0 de la broche A0 sur laquelle le capteur de temp\u00e9rature est connect\u00e9)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>ValSensor = 0 <\/strong>(variable pour stocker la valeur de la broche du capteur de temp\u00e9rature)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>tension = 0 <\/strong>(variable correspondant \u00e0 la valeur de la tension en V de la broche du capteur de temp\u00e9rature)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>Temp = 0<\/strong> (variable correspondant \u00e0 la temp\u00e9rature en \u00b0C calcul\u00e9e \u00e0 partir de la valeur de la broche du capteur)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>OldTemp = 0<\/strong> (variable correspondant \u00e0 la temp\u00e9rature en \u00b0C calcul\u00e9e pr\u00e9c\u00e9demment)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>TempRef = 20 <\/strong>(constante correspondant \u00e0 la temp\u00e9rature de r\u00e9f\u00e9rence en \u00b0C)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>DT = 1<\/strong> (cst correspondant \u00e0 l&rsquo;\u00e9cart de temp\u00e9rature en \u00b0C par rapport \u00e0 la temp\u00e9rature de r\u00e9f\u00e9rence)<\/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>PinLedR = 8 <\/strong>(cst correspondant au n\u00b0 de la broche sur laquelle la DEL rouge est connect\u00e9e)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>PinLedV = 7 <\/strong>(cst correspondant au n\u00b0 de la broche sur laquelle la DEL verte est connect\u00e9e)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>PinLedB = 2 <\/strong>(cst correspondant au n\u00b0 de la broche sur laquelle la DEL verte est connect\u00e9e). <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)<\/p>\n<p style=\"padding-left: 40px;\">. <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)&nbsp;<br><br><\/p>\n<p>&#8211; <u>Connexion \u00e0 l&rsquo;Arduino<\/u>&nbsp;:<\/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&nbsp;:<\/p>\n<p style=\"padding-left: 120px;\"><strong>Set_AnalogInput_Pin(board, PinSensor)<br><br><\/strong><\/p>\n<p style=\"padding-left: 80px;\">&#8211; D\u00e9claration des broches des DELs en sorties num\u00e9riques&nbsp;:<\/p>\n<p style=\"padding-left: 120px;\"><strong>Set_DigitalOutput_Pin(board, PinLedR)<\/strong><\/p>\n<p style=\"padding-left: 120px;\"><strong>Set_DigitalOutput_Pin(board, PinLedV)<\/strong><\/p>\n<p style=\"padding-left: 120px;\"><strong>Set_DigitalOutput_Pin(board, PinLedB)<br><br><\/strong><\/p>\n<p style=\"padding-left: 80px;\">&#8211; D\u00e9claration de la broche du bouton poussoir en entr\u00e9e num\u00e9rique&nbsp;:<\/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=\"alignnone wp-image-5161 size-full\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-2.png\" alt=\"\" width=\"1118\" height=\"1989\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-2.png 1118w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-2-169x300.png 169w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-2-576x1024.png 576w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-2-768x1366.png 768w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-2-863x1536.png 863w\" sizes=\"auto, (max-width: 1118px) 100vw, 1118px\" \/><\/figure>\n<\/div>\n<p>&nbsp;<\/p>\n\n\n\n<p><strong><u>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-5164\" style=\"border: 3px solid #eeeeee; padding: 3px; margin: 3px;\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projet5-activity3-3.png\" alt=\"\" width=\"545\" height=\"213\"><br><br><\/figure>\n\n\n\n<p>\u00a0<\/p>\n<h4><strong>. <u>Programme en langage Arduino (\u201d<a href=\"https:\/\/www.ardpylab.fr\/downloads\/projetspython\/projet5\/projet5-activity3.zip\">Projet5\\Activity3\\INO\\Activity3.ino<\/a>\u201d)<br \/><br \/><\/u><\/strong><\/h4>\n<p>Le code de l\u2019activit\u00e9 en langage Arduino a d\u00e9j\u00e0 \u00e9t\u00e9 \u00e9tudi\u00e9 dans la partie:<br \/>\u201d<a href=\"https:\/\/www.ardpylab.fr\/?page_id=911\/#prog\"><strong>Activit\u00e9s pour les lyc\u00e9es \/ Temp\u00e9ratures \/ Activit\u00e9 3<\/strong><\/a>\u201d<\/p>\n\n\n\n<p>\u00a0 \u00a0 \u00a0 \u00a0 \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=4660\"><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=4670\"><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>\u201dThermom\u00e8tre \u00e0 diodes \u00e9lectroluminescentes&nbsp;\u201d &nbsp; &nbsp; .&nbsp;Objectif Dans cette activit\u00e9, nous allons utiliser les DELS rouge, verte et bleue&nbsp;afin de visualiser la zone dans laquelle se situe la temp\u00e9rature mesur\u00e9e (Tmesur\u00e9e) par un capteur TMP 36 ou LM 35 par rapport \u00e0 une valeur de r\u00e9f\u00e9rence (Tref) et un \u00e9cart de temp\u00e9rature (\u0394T) \u00e0 d\u00e9finir [&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-4666","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/pages\/4666","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=4666"}],"version-history":[{"count":1,"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/pages\/4666\/revisions"}],"predecessor-version":[{"id":5196,"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/pages\/4666\/revisions\/5196"}],"wp:attachment":[{"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4666"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}