{"id":1125,"date":"2015-08-10T22:02:51","date_gmt":"2015-08-11T02:02:51","guid":{"rendered":"http:\/\/nagashur.com\/blog\/?p=1125"},"modified":"2015-08-14T12:52:18","modified_gmt":"2015-08-14T16:52:18","slug":"controleur-de-led-simple-utilisant-un-tip120","status":"publish","type":"post","link":"http:\/\/nagashur.com\/blog\/2015\/08\/10\/controleur-de-led-simple-utilisant-un-tip120\/","title":{"rendered":"Contr\u00f4leur de LED simple utilisant un TIP120"},"content":{"rendered":"<p>Dans le cadre du projet Domochevsky, nous cherchons \u00e0 impl\u00e9menter un <a href=\"http:\/\/nagashur.com\/blog\/2015\/08\/05\/automatisation-dun-eclairage\/\">syst\u00e8me d&#8217;\u00e9clairage intelligent, tel que nous en avons discut\u00e9 dans ce pr\u00e9c\u00e9dent billet<\/a>. Nous n&#8217;impl\u00e9menterons pas toutes les fonctionnalit\u00e9s d\u00e9crites imm\u00e9diatement, mais nous allons cr\u00e9er une base simple et extensible sur laquelle nous pourrons construire la suite du projet. Nous d\u00e9crirons ici une version minimale, facile \u00e0 mettre en oeuvre, mais malgr\u00e9 tout apte \u00e0 recevoir des ajouts ult\u00e9rieurs, pr\u00e9sent\u00e9s dans les billets suivants.<\/p>\n<p><!--more--><\/p>\n<h2>Contr\u00f4leur de LED simple : description de la version minimale<\/h2>\n<p>Dans la version minimale, nous souhaitons cr\u00e9er un contr\u00f4leur de LED simple afin de pouvoir allumer ou \u00e9teindre notre syst\u00e8me lumineux par une pression sur un bouton. Nous utiliserons ici des bandes de LED en 12v continu. C&#8217;est tr\u00e8s basique, mais nous d\u00e9crirons ce circuit \u00e9l\u00e9mentaire avant de l&#8217;am\u00e9liorer avec un d\u00e9tecteur de pr\u00e9sence dans un prochain billet. Nous utiliserons un Arduino Nano, car cette carte est compacte, tout en fournissant toutes les fonctionnalit\u00e9s d&#8217;un Arduino uno. \u00a0Dans ce cas pr\u00e9cis, il s&#8217;agit d&#8217;un <a href=\"http:\/\/nagashur.com\/blog\/2015\/08\/06\/arduino-nano-clone-chinois\/\">clone chinois de l&#8217;Arduino Nano, que j&#8217;ai d\u00e9j\u00e0 test\u00e9 ici<\/a>. Ce choix se justifie par le co\u00fbt faible (2\u20ac) de cette carte, ce qui est parfait pour un syst\u00e8me d&#8217;\u00e9clairage. Une alternative serait d&#8217;utiliser directement une puce ATMega328p, mais vu le prix du clone, on peut se simplifier la vie en s&#8217;en servant.<\/p>\n<h3>Un transistor Darlington : le\u00a0TIP 120<\/h3>\n<p>La carte Arduino fonctionne en 5V, alors que les LED s\u00e9lectionn\u00e9es fonctionnent en 12V. M\u00eame si les LED \u00e9taient en 5V, le Arduino ne pourrait pas fournir assez de courant pour alimenter une bande de LED cons\u00e9quente. Il nous faut donc un moyen de commuter un courant \u00e9lev\u00e9 (aux alentours d&#8217;une amp\u00e8re). Pour cela il est possible d&#8217;utiliser des transistors. Dans le cas pr\u00e9cis, nous utiliserons un <a href=\"https:\/\/fr.wikipedia.org\/wiki\/Transistor_Darlington\">transistor Darlington<\/a>. Il est possible d&#8217;utiliser d&#8217;autres technologies, telles que les <a href=\"https:\/\/fr.wikipedia.org\/wiki\/Transistor_%C3%A0_effet_de_champ\">FET<\/a>, mais dans notre cas, le Darlington conviendra tr\u00e8s bien. Nous utiliserons le TIP120, tr\u00e8s utilis\u00e9 par les \u00e9lectroniciens amateurs, car simple et performant. Il peut commuter jusqu&#8217;a 4 amp\u00e8res, avec tes tensions allant jusqu&#8217;\u00e0 60V. <a href=\"https:\/\/www.fairchildsemi.com\/datasheets\/TI\/TIP120.pdf\">Suivez ce lien pour acc\u00e9der \u00e0 la documentation officielle du TIP120<\/a> pour plus d&#8217;informations (pas n\u00e9cessaire pour r\u00e9aliser ce projet).<\/p>\n<p>En pratique, on connectera une sortie du Arduino \u00e0 ce transistor. Quand la sortie (disons D11) sera \u00e0 l&#8217;\u00e9tat logique haut, le transisror autorisera le passage du courant \u00e0 travers notre bande de LED. De cette fa\u00e7on, on peut commuter un courant important depuis une broche du Arduino (cela fonctionne \u00e9galement pour un Raspberry pi), \u00e0 une tension quelconque, fournie par une alimentation externe.<\/p>\n<h3>Liste des composants requis<\/h3>\n<p>Voyons maintenant le montage sur une breadboard. Il nous faut tout d&#8217;abord les composants suivants :<\/p>\n<ul>\n<li>Un arduino nano (mais on peut reproduire la m\u00eame chose avec un uno, leonardo, n&#8217;importe quel arduino en fait)<\/li>\n<li>une breadboard;<\/li>\n<li>un transistor TIP120;<\/li>\n<li>un jack d&#8217;alimentation femelle pour breadboard;<\/li>\n<li>une r\u00e9sistance entre 2 et 10K ohms;<\/li>\n<li>une r\u00e9sistance de 1K ohms;<\/li>\n<li>un bouton poussoir;<\/li>\n<li>quelques connecteurs m\u00e2le-m\u00e2le pour breadboard;<\/li>\n<li>une bande de LED;<\/li>\n<li>un transfo fournissant la tension requise pour les LED (et l&#8217;amp\u00e9rage n\u00e9cessaire).<\/li>\n<\/ul>\n<h2>Le montage minimal sur breadboard<\/h2>\n<p>Passons maintenant \u00e0 l&#8217;assemblage de notre contr\u00f4leur de led simple. Nous pla\u00e7ons la carte Arduino et les composants sur la breadboard, en connectant le tout comme sur ce schema :<\/p>\n<div id=\"attachment_1126\" style=\"width: 555px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightControllerBreadboard_basic_bb.png\"><img aria-describedby=\"caption-attachment-1126\" data-attachment-id=\"1126\" data-permalink=\"http:\/\/nagashur.com\/blog\/2015\/08\/10\/controleur-de-led-simple-utilisant-un-tip120\/lightcontrollerbreadboard_basic_bb\/\" data-orig-file=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightControllerBreadboard_basic_bb.png\" data-orig-size=\"1185,762\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"contr\u00f4leur de lumi\u00e8re basique sur arduino via un TIP120\" data-image-description=\"\" data-medium-file=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightControllerBreadboard_basic_bb-300x193.png\" data-large-file=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightControllerBreadboard_basic_bb-1024x658.png\" loading=\"lazy\" class=\"wp-image-1126 size-large\" src=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightControllerBreadboard_basic_bb-1024x658.png\" alt=\"contr\u00f4leur de LED simple sur arduino via un TIP120\" width=\"545\" height=\"350\" srcset=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightControllerBreadboard_basic_bb-1024x658.png 1024w, http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightControllerBreadboard_basic_bb-300x193.png 300w, http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightControllerBreadboard_basic_bb.png 1185w\" sizes=\"(max-width: 545px) 100vw, 545px\" \/><\/a><p id=\"caption-attachment-1126\" class=\"wp-caption-text\">contr\u00f4leur de LED simple sur arduino via un TIP120<\/p><\/div>\n<p>Nous pla\u00e7ons le Arduino sur le bord gauche de la breadboard, et connectons la broche 5V au rail 5v sur le c\u00f4t\u00e9 (fils rouges), de m\u00eame pour la masse (GND, fils noirs). On relie \u00e9galement les rails 5v et de masse des deux c\u00f4t\u00e9s de la breadboard pour simplifier le c\u00e2blage.<\/p>\n<p>On peut maintenant placer notre jack d&#8217;alimentation (l\u2019\u00e9l\u00e9ment avec un \u00e9clair sur le sch\u00e9ma) sur la breadboard. La broche connect\u00e9e au plot central du jack est le + dans la plupart des cas, c&#8217;est \u00e0 v\u00e9rifier sur votre transfo. Dans notre impl\u00e9mentation, c&#8217;est le cas. Ici, cela correspond \u00e0 la broche de droite de la petite carte. La broche de gauche, connect\u00e9e \u00e0 la lamelle sur le c\u00f4t\u00e9 long du jack est la masse. Vous pouvez v\u00e9rifier le tout avec un voltm\u00e8tre, ou en branchant votre bande de LED. Les LED ne bloquent le courant si la polarit\u00e9 est invers\u00e9e, et s&#8217;allument lorsqu&#8217;on est dans le bon sens. V\u00e9rifiez toutefois s&#8217;il n&#8217;y a pas un circuit sensible \u00e0 la polarit\u00e9 sur votre bande de LED (il ne faut surtout pas essayer avec des LED adressables). Ici, le jack apportera du 12V. On connecte la masse du jack \u00e0 la masse du circuit, et le +12V \u00e0 la broche VIN du Arduino (et surtout pas une autre!). V\u00e9rifiez bien le branchement, car le 12V sur une autre broche pourrait griller la carte.\u00a0La broche VIN permet d&#8217;amener le courant au r\u00e9gulateur de tension de la carte, qui va produire du 5V pour alimenter le reste de la carte.<\/p>\n<p>On connecte ensuite le bouton poussoir \u00e0 une entr\u00e9e (la 12 ici, via le fil vert) sur l&#8217;une des pattes du bouton. A cette m\u00eame patte, on connecte une r\u00e9sistance entre 1 et 10\u00a0kilo-Ohms (prenez ce que vous avez dans cette plage), qui est la r\u00e9sistance de tirage (ici pull-down), qui garantit que la valeur par d\u00e9faut est 0V, soit un signal logique bas. L&#8217;autre patte de la r\u00e9sistance sera connect\u00e9e \u00e0 la masse (ce qui en fait une pull-down). L&#8217;autre broche du switch sera quand \u00e0 elle connect\u00e9e au rail +5V. Ainsi, quand on appuie sur le bouton, le 5V passe, et ressort par l&#8217;entr\u00e9e D12, ou l&#8217;on lira alors un signal haut.<\/p>\n<p>Il est maintenant temps de connecter le transistor. J&#8217;ai choisi de placer la partie m\u00e9tallique vers l&#8217;ext\u00e9rieur de la breadboard, de fa\u00e7on a pouvoir fixer facilement un dissipateur si n\u00e9cessaire. La partie noire \u00e9tant face \u00e0 nous, on connecte la broche la plus \u00e0 droite \u00e0 la masse du circuit. On connecte la broche la plus \u00e0 gauche \u00e0 une r\u00e9sistance de 1K, puis l&#8217;autre c\u00f4t\u00e9 de la r\u00e9sistance \u00e0 la broche D11 du Arduino. C&#8217;est par cette broche que l&#8217;on enverra le signal commandant le transistor. La r\u00e9sistance sert \u00e0 limiter le courant. Nous sommes en 5V, et sachant que U=R*I, donc I=U\/R=5\/1000A, soit 5 mA. C&#8217;est tout \u00e0 fait dans les capacit\u00e9s d&#8217;une sortie d&#8217;un arduino. Nous avons choisi la broche D11, car celle ci est capable de <a href=\"https:\/\/fr.wikipedia.org\/wiki\/Modulation_de_largeur_d%27impulsion\">PWM<\/a>, ce qui nous servira ult\u00e9rieurement, par exemple pour changer la luminosit\u00e9 de nos LED. La broche centrale du transistor sera connect\u00e9e \u00e0 la masse de la bande de LED.<\/p>\n<p>Pour la bande de LED justement, c&#8217;est tr\u00e8s simple, puisqu&#8217;il suffit de connecter le + de la bande au + du jack d&#8217;alimentation (le 12V dans notre cas), et le &#8211; \u00e0 la borne centrale du transistor.<\/p>\n<p>Voici \u00e0 peu pr\u00e8s ce que cela donne (il s&#8217;agit d&#8217;une version un peu plus ancienne, donc les branchements et la disposition sont l\u00e9g\u00e8rement diff\u00e9rents) :<\/p>\n<div id=\"attachment_1129\" style=\"width: 310px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/basic_lightController_beta_4611_800px.jpg\"><img aria-describedby=\"caption-attachment-1129\" data-attachment-id=\"1129\" data-permalink=\"http:\/\/nagashur.com\/blog\/2015\/08\/10\/controleur-de-led-simple-utilisant-un-tip120\/basic_lightcontroller_beta_4611_800px\/\" data-orig-file=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/basic_lightController_beta_4611_800px.jpg\" data-orig-size=\"800,483\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;3.4&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;Canon PowerShot SX200 IS&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;1439240983&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;5&quot;,&quot;iso&quot;:&quot;80&quot;,&quot;shutter_speed&quot;:&quot;0.066666666666667&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"contr\u00f4leur de LED basique sur breadboard\" data-image-description=\"\" data-medium-file=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/basic_lightController_beta_4611_800px-300x181.jpg\" data-large-file=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/basic_lightController_beta_4611_800px.jpg\" loading=\"lazy\" class=\"wp-image-1129 size-medium\" src=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/basic_lightController_beta_4611_800px-300x181.jpg\" alt=\"contr\u00f4leur de LED simple sur breadboard, version beta\" width=\"300\" height=\"181\" srcset=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/basic_lightController_beta_4611_800px-300x181.jpg 300w, http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/basic_lightController_beta_4611_800px.jpg 800w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-1129\" class=\"wp-caption-text\">contr\u00f4leur de LED simple sur breadboard, version beta<\/p><\/div>\n<h2>Version perfboard<\/h2>\n<p>Notre contr\u00f4leur de LED simple peut \u00e9galement \u00eatre r\u00e9alis\u00e9 de fa\u00e7on plus durable, en utilisant une plaque de prototypage type perfboard. Ici, il faudra souder les composants afin d&#8217;assurer le contact, ce qui\u00a0rendra l&#8217;ensemble\u00a0plus solide et r\u00e9sistant aux d\u00e9branchements intempestifs. Voici le sch\u00e9ma d&#8217;une telle version :<\/p>\n<div id=\"attachment_1130\" style=\"width: 955px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightController_basic_perfboard.png\"><img aria-describedby=\"caption-attachment-1130\" data-attachment-id=\"1130\" data-permalink=\"http:\/\/nagashur.com\/blog\/2015\/08\/10\/controleur-de-led-simple-utilisant-un-tip120\/lightcontroller_basic_perfboard\/\" data-orig-file=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightController_basic_perfboard.png\" data-orig-size=\"945,810\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Contr\u00f4leur de LED simple sur perfboard \u00e0 souder\" data-image-description=\"\" data-medium-file=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightController_basic_perfboard-300x257.png\" data-large-file=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightController_basic_perfboard.png\" loading=\"lazy\" class=\"wp-image-1130 size-full\" src=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightController_basic_perfboard.png\" alt=\"Contr\u00f4leur de LED simple sur perfboard \u00e0 souder\" width=\"945\" height=\"810\" srcset=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightController_basic_perfboard.png 945w, http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/lightController_basic_perfboard-300x257.png 300w\" sizes=\"(max-width: 945px) 100vw, 945px\" \/><\/a><p id=\"caption-attachment-1130\" class=\"wp-caption-text\">Contr\u00f4leur de LED simple sur perfboard \u00e0 souder<\/p><\/div>\n<p>Cependant, m\u00eame si \u00e7a n&#8217;apparait pas ici, certains composants ne sont pas soud\u00e9s. En effet, la carte Arduino et le transistor ne sont pas soud\u00e9s. Au lieu de cela, ce sont des broches femelles qui sont soud\u00e9es sur la carte, et on enfiche le Arduino et le transistor dans ces broches femelles. Pour le Arduino \u00e7a permet de le reprogrammer plus facilement, en l&#8217;enlevant (et aussi de le changer en cas de probl\u00e8me), et donc sans avoir \u00e0 tout d\u00e9monter, et pour le transistor, cela permet de pouvoir le placer plus loin, pour pouvoir le visser sur les parois d&#8217;un boitier en m\u00e9tal si n\u00e9cessaire pour la dissipation thermique. D&#8217;autre part on pourra changer de mod\u00e8le de transistor pourvu que le brochage soit le m\u00eame.<\/p>\n<h2>Le\u00a0programme<\/h2>\n<p>Pour l&#8217;instant notre contr\u00f4leur de LED simple l&#8217;est tellement qu&#8217;il ne fait rien. Il manque pour cela un programme! Le code est relativement simple, puisque nous reprendrons ici l&#8217;exemple dans <strong><em>02.Digital\/Debounce<\/em><\/strong> de Arduino, et nous changerons les broches : buttonPin devient 12 au lieu de 2 et ledPin devient 11 au lieu de 13. Le programme changera l&#8217;\u00e9tat des LED \u00e0 chaque appui sur le bouton, avec un <em>debounce<\/em> pour \u00e9viter des effets de clignotement ind\u00e9sirables.<\/p>\n<p>Voici le code source modifi\u00e9, compact\u00e9 et avec des commentaires en fran\u00e7ais :<\/p>\n<blockquote>\n<pre>\/\/contr\u00f4leur de LED simple - version basique\r\nconst int buttonPin = 12; \/\/ le bouton est sur D12\r\nconst int ledPin = 11; \/\/ les LED sur D11\r\nint ledState = LOW; \/\/ au d\u00e9part les LED sont eteintes\r\nint buttonState; \/\/ l'etat courant du bouton\r\nint lastButtonState = LOW; \/\/ l'etat precedent du bouton\r\n\r\nlong lastDebounceTime = 0; \/\/ la derniere fois qu'on a analyse l'etat du bouton\r\nlong debounceDelay = 50; \/\/ \r\n\r\nvoid setup() \r\n{\r\n pinMode(buttonPin, INPUT); \/\/ la broche du bouton est mise en entree\r\n pinMode(ledPin, OUTPUT); \/\/ la broche des LED est mise en sortie\r\n digitalWrite(ledPin, ledState); \/\/ on initialise les LED \r\n}\r\n\r\nvoid loop() \r\n{\r\n int reading = digitalRead(buttonPin);\/\/on lit l'etat du bouton\r\n if (reading != lastButtonState) \/\/si il a change\r\n {lastDebounceTime = millis();} \/\/on met a jour le timer de debounce\r\n if ((millis() - lastDebounceTime) &gt; debounceDelay) \/\/si le temps ecoule depuis la derniere lecture est suffisant\r\n {\r\n if (reading != buttonState) \/\/si la lecture est differente de la pr\u00e9c\u00e9dente\r\n {\r\n buttonState = reading; \/\/alors on met \u00e0 jour\r\n if (buttonState == HIGH) \/\/si le bouton est enfonce\r\n {ledState = !ledState;} \/\/on inverse l'etat de la LED\r\n }\r\n }\r\n digitalWrite(ledPin, ledState); \/\/on change l'etat de la LED\r\n lastButtonState = reading; \/\/on met a jour l'etat precedent du bouton\r\n}<\/pre>\n<\/blockquote>\n<p>D\u00e8s cet instant, nous disposons d&#8217;un contr\u00f4leur de LED simple, voire assez basique, mais fonctionnel. Chaque appui sur le bouton allumera ou \u00e9teindra les LED, selon l&#8217;\u00e9tat pr\u00e9c\u00e9dent. Bien entendu, nous ne nous contenterons pas de cela, mais nous construirons sur cette base. Dans le prochain billet, nous ajouterons un capteur infrarouge pour automatiser l&#8217;allumage\/extinction des LED tout en conservant la possibilit\u00e9 d&#8217;un contr\u00f4le manuel total. Nous nous int\u00e9resserons pour cela \u00e0 la fa\u00e7on de programmer le syst\u00e8me en gardant un seul bouton tout en pouvant changer de mode simplement.<\/p>\n<p>Il est \u00e0 noter qu&#8217;au niveau de fonctionnalit\u00e9s actuel, puisque nous n&#8217;envoyons pas de signaux PWM, il aurait \u00e9t\u00e9 possible d&#8217;utiliser un relais pour commander un \u00e9clairage 220V de fa\u00e7on similaire.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dans le cadre du projet Domochevsky, nous cherchons \u00e0 impl\u00e9menter un syst\u00e8me d&#8217;\u00e9clairage intelligent, tel que nous en avons discut\u00e9 dans ce pr\u00e9c\u00e9dent billet. Nous n&#8217;impl\u00e9menterons pas toutes les fonctionnalit\u00e9s d\u00e9crites imm\u00e9diatement, mais nous allons cr\u00e9er une base simple et extensible sur laquelle nous pourrons construire la suite du projet. Nous d\u00e9crirons ici une version [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":1129,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":"","jetpack_publicize_message":""},"categories":[222,10,11,140,144],"tags":[340,174,341,143,108,262,339,342,305,157,307,338,337],"jetpack_featured_media_url":"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/basic_lightController_beta_4611_800px.jpg","jetpack_publicize_connections":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v15.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Contr\u00f4leur de LED simple utilisant un TIP120 - Nagashur<\/title>\n<meta name=\"description\" content=\"Contr\u00f4leur de led simple : tutoriel avec un Arduino nano, un TIP120 et une bande de LED, sch\u00e9mas de montage et code de base version breadboard et perfboard.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"http:\/\/nagashur.com\/blog\/2015\/08\/10\/controleur-de-led-simple-utilisant-un-tip120\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Contr\u00f4leur de LED simple utilisant un TIP120 - Nagashur\" \/>\n<meta property=\"og:description\" content=\"Contr\u00f4leur de led simple : tutoriel avec un Arduino nano, un TIP120 et une bande de LED, sch\u00e9mas de montage et code de base version breadboard et perfboard.\" \/>\n<meta property=\"og:url\" content=\"http:\/\/nagashur.com\/blog\/2015\/08\/10\/controleur-de-led-simple-utilisant-un-tip120\/\" \/>\n<meta property=\"og:site_name\" content=\"Nagashur\" \/>\n<meta property=\"article:published_time\" content=\"2015-08-11T02:02:51+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2015-08-14T16:52:18+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/basic_lightController_beta_4611_800px.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"483\" \/>\n<meta name=\"twitter:card\" content=\"summary\" \/>\n<meta name=\"twitter:creator\" content=\"@audreyrobinel\" \/>\n<meta name=\"twitter:site\" content=\"@audreyrobinel\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"http:\/\/nagashur.com\/blog\/#website\",\"url\":\"http:\/\/nagashur.com\/blog\/\",\"name\":\"Nagashur\",\"description\":\"raspi et arduino FTW :)\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"http:\/\/nagashur.com\/blog\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"ImageObject\",\"@id\":\"http:\/\/nagashur.com\/blog\/2015\/08\/10\/controleur-de-led-simple-utilisant-un-tip120\/#primaryimage\",\"inLanguage\":\"fr-FR\",\"url\":\"http:\/\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/basic_lightController_beta_4611_800px.jpg\",\"width\":800,\"height\":483,\"caption\":\"contr\\u00f4leur de LED basique sur breadboard\"},{\"@type\":\"WebPage\",\"@id\":\"http:\/\/nagashur.com\/blog\/2015\/08\/10\/controleur-de-led-simple-utilisant-un-tip120\/#webpage\",\"url\":\"http:\/\/nagashur.com\/blog\/2015\/08\/10\/controleur-de-led-simple-utilisant-un-tip120\/\",\"name\":\"Contr\\u00f4leur de LED simple utilisant un TIP120 - Nagashur\",\"isPartOf\":{\"@id\":\"http:\/\/nagashur.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"http:\/\/nagashur.com\/blog\/2015\/08\/10\/controleur-de-led-simple-utilisant-un-tip120\/#primaryimage\"},\"datePublished\":\"2015-08-11T02:02:51+00:00\",\"dateModified\":\"2015-08-14T16:52:18+00:00\",\"author\":{\"@id\":\"http:\/\/nagashur.com\/blog\/#\/schema\/person\/11a329fa33df4e94444716624beb8186\"},\"description\":\"Contr\\u00f4leur de led simple : tutoriel avec un Arduino nano, un TIP120 et une bande de LED, sch\\u00e9mas de montage et code de base version breadboard et perfboard.\",\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"http:\/\/nagashur.com\/blog\/2015\/08\/10\/controleur-de-led-simple-utilisant-un-tip120\/\"]}]},{\"@type\":\"Person\",\"@id\":\"http:\/\/nagashur.com\/blog\/#\/schema\/person\/11a329fa33df4e94444716624beb8186\",\"name\":\"sky99\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p6yqc2-i9","jetpack-related-posts":[{"id":1974,"url":"http:\/\/nagashur.com\/blog\/2017\/06\/30\/rampe-a-led-intelligente-cuisine-via-arduino-capteur-pir\/","url_meta":{"origin":1125,"position":0},"title":"Une rampe \u00e0 LED intelligente pour la cuisine via Arduino avec capteur PIR","date":"30 juin 2017","format":false,"excerpt":"Dans ma cuisine, au dessus de l'\u00e9vier, j'ai rajout\u00e9 deux lampes basses consommation. Cependant cette solution est loin d'\u00eatre id\u00e9ale : il est facile d'oublier d'\u00e9teindre ces lumi\u00e8res, l'\u00e9clairage est soit \u00e9teint, soit \u00e0 fond (\u00e9blouissant en pleine nuit), et je pr\u00e9f\u00e8re \u00e9viter d'avoir du 220V au dessus de l'\u00e9vier.\u2026","rel":"","context":"Dans &quot;Arduino&quot;","img":{"alt_text":"rampe \u00e0 LED intelligente : la carte de commande","src":"https:\/\/i2.wp.com\/nagashur.com\/blog\/wp-content\/uploads\/2017\/06\/light_board_7502_1024.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":870,"url":"http:\/\/nagashur.com\/blog\/2014\/03\/24\/controleur-daquarium-circuit-de-base\/","url_meta":{"origin":1125,"position":1},"title":"Contr\u00f4leur d'aquarium : circuit de base","date":"24 mars 2014","format":false,"excerpt":"Aujourd'hui, je vais vous pr\u00e9senter rapidement le circuit de base de mon contr\u00f4leur d'aquarium. Pour l'instant, il y a juste un \u00e9cran LCD, une sonde waterproof immerg\u00e9e dans l'aquarium, et une sonde prenant la temp\u00e9rature de l'air. Cette base est amen\u00e9e \u00e0 \u00e9voluer, mais je poste d\u00e9j\u00e0 les sch\u00e9mas simples\u2026","rel":"","context":"Dans &quot;aquariophilie&quot;","img":{"alt_text":"Aquascape dans un aquarium de 50l","src":"https:\/\/i1.wp.com\/nagashur.com\/blog\/wp-content\/uploads\/2014\/03\/aquarium_rlieh292363_800px.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":1624,"url":"http:\/\/nagashur.com\/blog\/2016\/04\/05\/boitier-de-controle-de-rlieh-controleur-automatique-daquarium\/","url_meta":{"origin":1125,"position":2},"title":"Boitier de contr\u00f4le de Rlieh, contr\u00f4leur automatique d'aquarium","date":"5 avril 2016","format":false,"excerpt":"Dans un pr\u00e9c\u00e9dent billet, nous avons d\u00e9crit le mod\u00e8le 3D du panneau de commande de Rlieh. J'ai maintenant imprim\u00e9 le bo\u00eetier, et je vais vous pr\u00e9senter le r\u00e9sultat, qui me sert de bo\u00eetier de contr\u00f4le de rlieh, mon syst\u00e8me de gestion automatique d'aquarium. Le bo\u00eetier a \u00e9t\u00e9 imprim\u00e9 en PLA.\u2026","rel":"","context":"Dans &quot;aquariophilie&quot;","img":{"alt_text":"Panneau de contr\u00f4le de Rlieh","src":"https:\/\/i2.wp.com\/nagashur.com\/blog\/wp-content\/uploads\/2016\/04\/rlieh_lcd_on_2_5465_800px.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":2007,"url":"http:\/\/nagashur.com\/blog\/2017\/07\/03\/cablage-de-rampe-a-led-intelligente-version-arduino\/","url_meta":{"origin":1125,"position":3},"title":"C\u00e2blage de la rampe \u00e0 LED intelligente version Arduino","date":"3 juillet 2017","format":false,"excerpt":"Dans un pr\u00e9c\u00e9dent billet, nous avons d\u00e9crit une rampe \u00e0 LED intelligente utilisable dans la maison ou dehors. Aujourd'hui, nous nous pencherons sur la construction et le c\u00e2blage de la rampe \u00e0 LED intelligente, en version Arduino, sur une breadboard (donc sans soudures). Mat\u00e9riel n\u00e9cessaire Voyons maintenant le mat\u00e9riel n\u00e9cessaire\u2026","rel":"","context":"Dans &quot;Arduino&quot;","img":{"alt_text":"c\u00e2blage de la rampe \u00e0 LED intelligente, miniature d'article","src":"https:\/\/i2.wp.com\/nagashur.com\/blog\/wp-content\/uploads\/2017\/06\/thumbnail_PIR_detector_arduino_oil_painting_7530.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":975,"url":"http:\/\/nagashur.com\/blog\/2015\/08\/05\/automatisation-dun-eclairage\/","url_meta":{"origin":1125,"position":4},"title":"Conception d'un syst\u00e8me d'\u00e9clairage automatis\u00e9, d\u00e9centralis\u00e9 et ergonomique","date":"5 ao\u00fbt 2015","format":false,"excerpt":"Nous discutons ici de solutions permettant un contr\u00f4le d\u00e9centralis\u00e9, une automatisation, un contr\u00f4le fin et une meilleure ergonomie de syst\u00e8mes d'\u00e9clairage.","rel":"","context":"Dans &quot;Arduino&quot;","img":{"alt_text":"contr\u00f4leur d'\u00e9clairage vu de dessus","src":"https:\/\/i0.wp.com\/nagashur.com\/blog\/wp-content\/uploads\/2015\/08\/light_controller800_4513.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":819,"url":"http:\/\/nagashur.com\/blog\/2013\/07\/13\/interfacer-un-ecran-lcd-texte-avec-un-atmega-ou-un-arduino\/","url_meta":{"origin":1125,"position":5},"title":"Interfacer un \u00e9cran LCD texte avec un ATmega ou un Arduino","date":"13 juillet 2013","format":false,"excerpt":"Dans l'optique de mon projet Milapli, Il faudra bien, \u00e0 un moment donn\u00e9, afficher les donn\u00e9es quelquepart. Dans l'absolu, on pourrait se contenter de stocker ces donn\u00e9es, puis d'y acc\u00e9der par le r\u00e9seau. Cependant, on peut trouver pour une dizaine d'euros des \u00e9crans LCD 2*16 caract\u00e8res RGB, ou divers autres\u2026","rel":"","context":"Dans &quot;Arduino&quot;","img":{"alt_text":"LCD Sparkfun 5V White on black","src":"https:\/\/i1.wp.com\/nagashur.com\/blog\/wp-content\/uploads\/2013\/07\/img_2136_crop-e1438906257917.jpg?resize=350%2C200","width":350,"height":200},"classes":[]}],"_links":{"self":[{"href":"http:\/\/nagashur.com\/blog\/wp-json\/wp\/v2\/posts\/1125"}],"collection":[{"href":"http:\/\/nagashur.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/nagashur.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/nagashur.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/nagashur.com\/blog\/wp-json\/wp\/v2\/comments?post=1125"}],"version-history":[{"count":0,"href":"http:\/\/nagashur.com\/blog\/wp-json\/wp\/v2\/posts\/1125\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/nagashur.com\/blog\/wp-json\/wp\/v2\/media\/1129"}],"wp:attachment":[{"href":"http:\/\/nagashur.com\/blog\/wp-json\/wp\/v2\/media?parent=1125"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/nagashur.com\/blog\/wp-json\/wp\/v2\/categories?post=1125"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/nagashur.com\/blog\/wp-json\/wp\/v2\/tags?post=1125"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}