{"id":4763,"date":"2020-05-08T17:58:54","date_gmt":"2020-05-08T15:58:54","guid":{"rendered":"http:\/\/www.ardpylab.fr\/?page_id=4763"},"modified":"2020-05-21T19:14:16","modified_gmt":"2020-05-21T17:14:16","slug":"projet-7-activite-3","status":"publish","type":"page","link":"https:\/\/www.ardpylab.fr\/?page_id=4763","title":{"rendered":"Projet 7 &#8211; Activit\u00e9 3"},"content":{"rendered":"\n<h2 style=\"text-align: center;\"><em>\u201d<strong>D\u00e9termination de la capacit\u00e9 d\u2019un condensateur par mesure d\u2019une constante de temps <\/strong><\/em><em>\u201d<br><br><\/em><\/h2>\n\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"366\" height=\"384\" class=\"wp-image-5317 aligncenter\" style=\"border: 3px solid #eeeeee; padding: 3px; margin: 3px;\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-1.jpg\" alt=\"\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-1.jpg 366w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-1-286x300.jpg 286w\" sizes=\"auto, (max-width: 366px) 100vw, 366px\" \/><\/figure>\n<\/div>\n<p>&nbsp;<\/p>\n\n\n\n<h4>&nbsp;<\/h4>\n<h4><strong><span style=\"color: #3366ff;\">. <span style=\"text-decoration: underline;\">Objectif<\/span><\/span><\/strong><\/h4>\n<p>Dans cette activit\u00e9, nous allons modifier le programme de&nbsp;<a href=\"https:\/\/www.ardpylab.fr\/?page_id=4743\" data-wplink-url-error=\"true\">l\u2019activit\u00e9 1<\/a>&nbsp;(\u00e9tude de la charge d\u2019un condensateur) de fa\u00e7on cette fois-ci \u00e0 mesurer directement la constante de temps du circuit RC sans passer par le trac\u00e9 de la caract\u00e9ristique Uc=f(t).<\/p>\n<p>On pourra alors d\u00e9terminer la capacit\u00e9 d\u2019un condensateur inconnu puisque&nbsp;:<\/p>\n<p style=\"padding-left: 40px;\"><strong>\u03c4 = RC&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/strong>donc&nbsp;:<strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; C = \u03c4<\/strong><strong>&nbsp;\/ R<\/strong><\/p>\n<figure class=\"wp-block-image size-large\" style=\"padding-left: 40px;\"><\/figure>\n\n\n\n<p>&nbsp;<\/p>\n<h4><strong><span style=\"color: #3366ff;\">. <span style=\"text-decoration: underline;\">Descriptif&nbsp;de l\u2019activit\u00e9<\/span><\/span><\/strong><\/h4>\n<p>Lors de la charge d\u2019un condensateur, nous avons vu, qu\u2019au bout d\u2019un temps \u00e9gal \u00e0 la constante de temps&nbsp;<strong>\u03c4<\/strong>, le condensateur \u00e9tait charg\u00e9 \u00e0 63 % de la tension appliqu\u00e9e au dip\u00f4le RC (ici, \u00e0 t =&nbsp;<strong>\u03c4<\/strong>&nbsp;: Uc= 0,63 x 5 = 3,15 V).<\/p>\n<p>Avec le m\u00eame circuit que les activit\u00e9s pr\u00e9c\u00e9dentes, pour d\u00e9terminer la constante de temps, il suffit donc, par lecture de l\u2019entr\u00e9e analogique A0, de mesurer le temps que met cette entr\u00e9e pour atteindre la valeur correspondant \u00e0 la tension aux bornes du condensateur au temps&nbsp;<strong>\u03c4<\/strong>, soit&nbsp;:&nbsp;<strong>0,63 x 1023 = 644<\/strong>&nbsp;(CAN 5 V = 1023).<\/p>\n<p>Ainsi, apr\u00e8s avoir d\u00e9charg\u00e9 le condensateur, la mesure de la tension aux bornes du condensateur U<sub>c<\/sub>, lors de la charge, \u00e0 l\u2019aide de l\u2019entr\u00e9e analogique A0 est lanc\u00e9e, \u00e0 t = 0 s, par un appui sur le bouton poussoir.<\/p>\n<p>Quand la valeur de l\u2019entr\u00e9e analogique A0 souhait\u00e9e est atteinte, la constante de temps est alors calcul\u00e9e et affich\u00e9e dans le moniteur s\u00e9rie, puis le condensateur est d\u00e9charg\u00e9.<\/p>\n<p>Une nouvelle mesure est possible en appuyant de nouveau sur le bouton poussoir.<\/p>\n\n\n\n<p>&nbsp;<\/p>\n<h4><span style=\"color: #3366ff;\"><strong>. <span style=\"text-decoration: underline;\">Le programme<br><br><\/span><\/strong><\/span><\/h4>\n<p>Voici le code de l\u2019activit\u00e9 en Python et en langage Arduino&nbsp;:<br><br><\/p>\n<p><strong>. <u>Programme en Python (\u201d<a href=\"https:\/\/www.ardpylab.fr\/downloads\/projetspython\/projet7\/projet7-activity3.zip\">Projet7\\Activity3\\PY\\Activity3.py<\/a>\u201d)<\/u><\/strong><\/p>\n\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/www.ardpylab.fr\/downloads\/projetspython\/projet7\/Activity3\/PY\/Activity3.py\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5351 size-full\" style=\"border: 3px solid #eeeeee; padding: 3px; margin: 3px;\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-3-1.png\" alt=\"\" width=\"838\" height=\"1633\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-3-1.png 838w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-3-1-154x300.png 154w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-3-1-525x1024.png 525w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-3-1-768x1497.png 768w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-3-1-788x1536.png 788w\" sizes=\"auto, (max-width: 838px) 100vw, 838px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<p><strong><u><br><\/u>. <u>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>\u201dPymataExpressDef.Py\u201d<\/strong> regroupant toutes les fonctions utiles \u00e0 l\u2019utilisation de <strong>\u201dPymata<\/strong><strong>-express<\/strong><strong>\u201d<\/strong> (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<\/strong><strong>\u201d <\/strong>pour la gestion des temps de pause,<\/p>\n<p style=\"padding-left: 40px;\">. La fonction <strong>\u201d<\/strong><strong>d\u00e9charge<\/strong><strong>\u201d<\/strong> pour d\u00e9charger le condensateur avant la charge et \u00e0 la fin du programme.<br><br><\/p>\n<p>&#8211; <u>D\u00e9claration des constantes et variables<\/u>&nbsp;:<\/p>\n<p style=\"padding-left: 40px;\">. <strong>PinUc = 0 <\/strong>(cst correspondant au n\u00b0 de la broche A0 sur laquelle le condensateur est connect\u00e9)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>PinAlimC = 2<\/strong> (cst correspondant au n\u00b0 de la broche alimentant le dip\u00f4le RC)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>ValPinUC = 0 <\/strong>(variable pour stocker la valeur de la broche du condensateur)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>t0 = 0<\/strong> (variable pour stocker le temps de d\u00e9but de charge du condensateur)<\/p>\n<p style=\"padding-left: 40px;\">. <strong>dt = 0<\/strong> (variable correspondant \u00e0 la diff\u00e9rence de temps en s entre les mesures de tension du condensateur et le temps de d\u00e9but de charge)<\/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)<\/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>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 condensateur en entr\u00e9e analogique&nbsp;:<\/p>\n<p style=\"padding-left: 120px;\"><strong>Set_AnalogInput_Pin(board, PinUC)<\/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)<\/strong><\/p>\n<p style=\"padding-left: 80px;\">&#8211; D\u00e9claration de la broche alimentant le dip\u00f4le RC en sortie num\u00e9rique :<\/p>\n<p style=\"padding-left: 80px;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <strong>Set_DigitalOutput_Pin(board, PinAlimC)<\/strong><\/p>\n<p style=\"padding-left: 80px;\">&#8211; D\u00e9charge du condensateur :<\/p>\n<p style=\"padding-left: 80px;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8211;&gt; Appel de la fonction <strong>\u201ddecharge\u201d<\/strong> :&nbsp; <strong>decharge(board, PinAlimC, PinUC)<\/strong><\/p>\n<p style=\"padding-left: 80px;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; . Mise \u00e0 niveau bas de la broche d\u2019alimentation du dip\u00f4le RC:<\/p>\n<p style=\"padding-left: 160px;\"><strong>Digital_Write(board, pinalim, 0)<\/strong><\/p>\n<p style=\"padding-left: 80px;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; . Attente de la d\u00e9charge compl\u00e8te du condensateur:<\/p>\n<p style=\"padding-left: 160px;\"><strong>while Analog_Read(board, pinU) &gt; 0:&nbsp;<br><\/strong><strong>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; time.sleep(0.2)<br><br><\/strong><\/p>\n<p>&#8211; <u>Boucle principale du programme&nbsp;(boucle <\/u><u>\u201d<\/u><u>while True<\/u><u>\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-5353 size-full\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-3-2.png\" alt=\"\" width=\"1193\" height=\"1686\" srcset=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-3-2.png 1193w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-3-2-212x300.png 212w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-3-2-725x1024.png 725w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-3-2-768x1085.png 768w, https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-3-2-1087x1536.png 1087w\" sizes=\"auto, (max-width: 1193px) 100vw, 1193px\" \/><\/figure>\n<\/div>\n\n\n\n<p><strong>. <u>R\u00e9sultats dans la fen\u00eatre Python Shell<\/u><\/strong><\/p>\n\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-5354 aligncenter\" style=\"border: 3px solid #eeeeee; padding: 3px; margin: 3px;\" src=\"https:\/\/www.ardpylab.fr\/wp-content\/uploads\/2020\/05\/projetpython-7-3-3.png\" alt=\"\" width=\"593\" height=\"399\"><\/figure>\n<\/div>\n\n\n\n<p><strong><br \/>.\u00a0<u>Programme en langage Arduino (\u201d<a href=\"https:\/\/www.ardpylab.fr\/downloads\/projetspython\/projet7\/projet7-activity3.zip\">Projet7\\Activity3\\INO\\Activity3.ino<\/a>\u201d)<\/u><\/strong><\/p>\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>\u201d<a href=\"https:\/\/www.ardpylab.fr\/?page_id=1424\/#prog\"><strong>Activit\u00e9s pour les lyc\u00e9es \/ Dip\u00f4les RC \/ Activit\u00e9 3<\/strong><\/a>\u201d<br \/><br \/><\/p>\n<h4><strong><br \/><span style=\"color: #3366ff;\">.\u00a0<span style=\"text-decoration: underline;\">Exploitation des mesures<\/span><\/span><br \/><br \/><\/strong><\/h4>\n<p>L\u2019exploitation des mesures a \u00e9galement d\u00e9j\u00e0 \u00e9t\u00e9 \u00e9tudi\u00e9e dans la partie:<\/p>\n<p>\u201d<a href=\"https:\/\/www.ardpylab.fr\/?page_id=1424\/#exploit\"><strong>Activit\u00e9s pour les lyc\u00e9es \/\u00a0<\/strong><strong>Dip\u00f4les RC \/ Activit\u00e9 3 \/ 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=4751\"><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=273\"><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>\u201dD\u00e9termination de la capacit\u00e9 d\u2019un condensateur par mesure d\u2019une constante de temps \u201d &nbsp; &nbsp; . Objectif Dans cette activit\u00e9, nous allons modifier le programme de&nbsp;l\u2019activit\u00e9 1&nbsp;(\u00e9tude de la charge d\u2019un condensateur) de fa\u00e7on cette fois-ci \u00e0 mesurer directement la constante de temps du circuit RC sans passer par le trac\u00e9 de la caract\u00e9ristique Uc=f(t). [&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-4763","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/pages\/4763","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=4763"}],"version-history":[{"count":5,"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/pages\/4763\/revisions"}],"predecessor-version":[{"id":5362,"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=\/wp\/v2\/pages\/4763\/revisions\/5362"}],"wp:attachment":[{"href":"https:\/\/www.ardpylab.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4763"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}