{"id":9483,"date":"2022-12-06T10:49:50","date_gmt":"2022-12-06T09:49:50","guid":{"rendered":"https:\/\/fablab21.fr\/?page_id=3549"},"modified":"2026-10-19T19:00:49","modified_gmt":"2026-10-19T17:00:49","slug":"controler-un-ruban-led-iot-arduino","status":"publish","type":"page","link":"https:\/\/www.association-ore.fr\/fr\/tutos\/tutos-arduino\/controler-un-ruban-led-iot-arduino\/","title":{"rendered":"Contr\u00f4ler un ruban LED &#8211; IOT"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Introduction<\/h2>\n\n\n<p>Ce tuto est la suite de celui-ci : <a href=\"https:\/\/fablab21.fr\/tutos\/controler-un-ruban-led-arduino\/\">https:\/\/fablab21.fr\/tutos\/controler-un-ruban-led-arduino\/<\/a><\/p><p>Nous aurons besoin de conna\u00eetre les bases d&rsquo;Arduino IOT, celles-ci sont expliqu\u00e9es ici : <a href=\"https:\/\/fablab21.fr\/tutos\/les-bases-arduino-iot\/\">https:\/\/fablab21.fr\/tutos\/les-bases-arduino-iot\/<\/a><\/p><p>Pour commencer, nous allons ajouter notre esp8266 \u00e0 la liste des \u00ab\u00a0devices\u00a0\u00bb et le connecter au r\u00e9seau wifi<\/p><p>Ensuite nous allons cr\u00e9er un \u00ab\u00a0thing\u00a0\u00bb, que nous associerons \u00e0 notre \u00ab\u00a0device\u00a0\u00bb.<\/p>\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.association-ore.fr\/fr\/wp-content\/uploads\/2022\/12\/LEDS_iot_1.png\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.association-ore.fr\/fr\/wp-content\/uploads\/2022\/12\/LEDS_iot_2.png\" alt=\"\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Configuration IOT<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Variables<\/h3>\n\n\n<p>Nous aurons besoin de trois variables pour notre \u00ab\u00a0thing\u00a0\u00bb\u00a0 :<\/p><ul><li>color de type \u00ab\u00a0CloudColor\u00a0\u00bb, pour la couleur choisie<\/li><li>numLed de type \u00ab\u00a0int\u00a0\u00bb, pour le num\u00e9ro de la LED<\/li><li>allButton de type \u00ab\u00a0bool\u00a0\u00bb, pour la position du bouton<\/li><\/ul>\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.association-ore.fr\/fr\/wp-content\/uploads\/2022\/12\/LEDS_iot_3.png\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.association-ore.fr\/fr\/wp-content\/uploads\/2022\/12\/LEDS_iot_4.png\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.association-ore.fr\/fr\/wp-content\/uploads\/2022\/12\/LEDS_iot_5-1.png\" alt=\"\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Dashboard<\/h3>\n\n\n<p>Nous allons cr\u00e9er trois widgets :<\/p><ul><li>un \u00ab\u00a0Push Button\u00a0\u00bb li\u00e9 \u00e0 allButton<\/li><li>un \u00ab\u00a0Slider\u00a0\u00bb li\u00e9 \u00e0 numLed, et allant de 1 \u00e0 10 (le num\u00e9ro des LEDs)<\/li><li>un\u00a0 \u00ab\u00a0Color\u00a0\u00bb li\u00e9 \u00e0 color<\/li><\/ul>\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.association-ore.fr\/fr\/wp-content\/uploads\/2022\/12\/LEDS_iot_6.png\" alt=\"\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Code Arduino<\/h2>\n\n\n<p>Importons maintenant le code que nous avons fait dans le tuto pr\u00e9c\u00e9dent.<\/p><p>Commen\u00e7ons par les fonctions qui ne subiront aucun changements :<\/p><ul><li>refresh<\/li><li>lightUpAll<\/li><li>onAllButtonChange<\/li><li>onNumLedChange<\/li><\/ul><p><strong>La structure des fonctions onAllButtonChange et onNumLedChange ont d\u00e9j\u00e0 \u00e9t\u00e9 cr\u00e9es lorsque nous avons ajout\u00e9s un bouton et un curseur au dashboard, il faudra donc seulement importer le contenu des<\/strong> <strong>fonctions.<\/strong><\/p>\n\n<p>Passons maintenant \u00e0 la fonction lightUp, sa structure reste identique mais son contenu va quelque peu diff\u00e9rer. Plut\u00f4t que d&rsquo;allumer la LED avec la couleur indiqu\u00e9 au d\u00e9but le code, nous allons r\u00e9cup\u00e9rer la couleur choisie sur la palette. Pour cela nous allons utiliser la quantit\u00e9 de rouge, vert et bleu (RGB) de la couleur. Cependant, la palette utilise un autre syst\u00e8me de couleur (HSB), alors nous allons commencer par convertir la couleur en RGB :<\/p>\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.association-ore.fr\/fr\/wp-content\/uploads\/2022\/12\/LEDS_iot_7-1.png\" alt=\"\"\/><\/figure>\n\n\n<p>Puis nous allons mettre la couleur correspondant \u00e0 ces valeurs dans le tableau \u00e0 l&rsquo;aide de la fonction setRGB :<\/p>\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.association-ore.fr\/fr\/wp-content\/uploads\/2022\/12\/LEDS_iot_8.png\" alt=\"\"\/><\/figure>\n\n\n<p>Maintenant occupons-nous du contenu de la fonction onColorChange, nous voulons actualiser les LEDs lorsque la couleur change, alors utilisons simplement la fonction refresh que nous avons d\u00e9j\u00e0 cr\u00e9\u00e9e :<\/p>\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.association-ore.fr\/fr\/wp-content\/uploads\/2022\/12\/LEDS_iot_9.png\" alt=\"\"\/><\/figure>\n\n\n<p>Dans le code du tuto pr\u00e9c\u00e9dent la fonction loop contenait le code pour d\u00e9tecter un changement d&rsquo;\u00e9tat du bouton ou du potentiom\u00e8tre, hors sur l&rsquo;IOT ceci est fais automatiquement, nous pouvons donc effacer le contenu de loop (sauf \u00ab\u00a0ArduinoCloud.update();\u00a0\u00bb)\u00a0 :<\/p>\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.association-ore.fr\/fr\/wp-content\/uploads\/2022\/12\/LEDS_iot_10.png\" alt=\"\"\/><\/figure>\n\n\n<p>Dans la fonction setup, on ajoutera l&rsquo;initialisation de la bande de LEDs :<\/p>\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.association-ore.fr\/fr\/wp-content\/uploads\/2022\/12\/LEDS_iot_11.png\" alt=\"\"\/><\/figure>\n\n\n<p>Enfin nous n&rsquo;aurons plus besoin de la constante du num\u00e9ro de la broche du bouton, celui-ci \u00e9tant maintenant virtuel.<\/p><p>Egalement, nous n&rsquo;aurons plus besoin des variables numLed et allButton, celles-ci ayant \u00e9t\u00e9 cr\u00e9\u00e9es dans l&rsquo;IOT (et sont cod\u00e9es dans \u00ab\u00a0thingProperties.h\u00a0\u00bb).<\/p><p><strong>Attention : Arduino IOT n&rsquo;utilise pas le GPIO mais directement le num\u00e9ro de la broche, ici on utilisera donc 5 pour la broche 5 et non plus 14.<\/strong><\/p><p>Le d\u00e9but du code ressemble donc \u00e0 ceci :<\/p>\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.association-ore.fr\/fr\/wp-content\/uploads\/2022\/12\/LEDS_iot_12-1.png\" alt=\"\"\/><\/figure>\n\n\n<p>Et le code complet :<\/p>\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.association-ore.fr\/fr\/wp-content\/uploads\/2022\/12\/oie_bYnKw6LntCNM.png\" alt=\"\"\/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Introduction Ce tuto est la suite de celui-ci : https:\/\/fablab21.fr\/tutos\/controler-un-ruban-led-arduino\/ Nous aurons besoin de conna\u00eetre les bases d&rsquo;Arduino IOT, celles-ci sont expliqu\u00e9es ici : [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":6311,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-tutoriel","meta":{"footnotes":""},"class_list":["post-9483","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.association-ore.fr\/fr\/wp-json\/wp\/v2\/pages\/9483","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.association-ore.fr\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.association-ore.fr\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.association-ore.fr\/fr\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.association-ore.fr\/fr\/wp-json\/wp\/v2\/comments?post=9483"}],"version-history":[{"count":1,"href":"https:\/\/www.association-ore.fr\/fr\/wp-json\/wp\/v2\/pages\/9483\/revisions"}],"predecessor-version":[{"id":11481,"href":"https:\/\/www.association-ore.fr\/fr\/wp-json\/wp\/v2\/pages\/9483\/revisions\/11481"}],"up":[{"embeddable":true,"href":"https:\/\/www.association-ore.fr\/fr\/wp-json\/wp\/v2\/pages\/6311"}],"wp:attachment":[{"href":"https:\/\/www.association-ore.fr\/fr\/wp-json\/wp\/v2\/media?parent=9483"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}