{"id":345,"date":"2017-12-27T00:33:58","date_gmt":"2017-12-26T23:33:58","guid":{"rendered":"http:\/\/wordpress.callac.online\/index.php\/arduino-et-javascript\/"},"modified":"2022-01-05T22:41:57","modified_gmt":"2022-01-05T21:41:57","slug":"arduino-et-javascript","status":"publish","type":"page","link":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/","title":{"rendered":"Arduino et Javascript"},"content":{"rendered":"<h2>Un d\u00e9p\u00f4t pour en savoir plus<\/h2>\n<p>La suite de cette article n&rsquo;est qu&rsquo;une page du <a href=\"https:\/\/github.com\/dlefur\/johnny-five\/wiki\">wiki<\/a> d&rsquo;un <a href=\"https:\/\/github.com\/dlefur\/johnny-five\/\">d\u00e9p\u00f4t github<\/a> contenant des projets et des explications pour d\u00e9buter facilement avec ses outils.<\/p>\n<h2>Arduino et Javascript<\/h2>\n<p>Le langage d&rsquo;Arduino est le C. Avec ce langage, on peut tout faire avec Arduino si on ma\u00eetrise la b\u00eate &#8230;<br \/>\nEn g\u00e9n\u00e9ral, on  va donc cr\u00e9er un programme que l&rsquo;on va t\u00e9l\u00e9verser  dans le microcontr\u00f4leur qui pourra ensuite ex\u00e9cuter le programme sans avoir besoin d&rsquo;un ordinateur.<\/p>\n<p>Par un c\u00e2ble USB, en utilisant la liaison s\u00e9rie, on peut aussi communiquer entre un terminal de l&rsquo;ordinateur et Arduino.<\/p>\n<p>Si l&rsquo;id\u00e9e est de travailler dans cette derni\u00e8re configuration, pourquoi ne pas utiliser un langage de plus haut niveau pour contr\u00f4ler la plaque ? Et pour b\u00e9n\u00e9ficier d&rsquo;une bonne interface graphique, pourquoi ne pas utiliser le navigateur de son ordinateur ? Le choix du langage ne peut donc \u00eatre que Javascript !<\/p>\n<h2>NodeJS, Johnny-Five, c&rsquo;est quoi ?<\/h2>\n<p><a href=\"https:\/\/nodejs.org\/fr\/\">NodeJS<\/a>  est un outil \u00e9crit en Javascript, disponible sur toutes les plateformes. On pourra \u00e0 partir de l&rsquo;outil <strong>node<\/strong> lancer en console n&rsquo;importe quel programme Javascript, et surtout cr\u00e9er localement un serveur, ce qui sera tr\u00e8s utile pour se servir du navigateur.<\/p>\n<p>NodeJS fonctionne par module que l&rsquo;on g\u00e8re via l&rsquo;outil <strong>npm<\/strong>. <\/p>\n<p>Pour un projet communiquant entre Arduino et le navigateur, on se servira principalement des modules <strong>socket.io<\/strong>, <strong>express<\/strong> et <strong>johnny-five<\/strong>.<\/p>\n<p><a href=\"http:\/\/johnny-five.io\/api\/\">Johnny-Five<\/a> est donc un module de l&rsquo;outil NodeJS. Son site officiel donne bon nombre d&rsquo;exemples qui mettent en valeur la facilit\u00e9 d&rsquo;utiliser Arduino en Javascript.<\/p>\n<h2>Des limitations<\/h2>\n<p>L&rsquo;id\u00e9e ici est d&rsquo;utiliser <strong>Arduino connect\u00e9 \u00e0 l&rsquo;ordinateur via un c\u00e2ble USB<\/strong>. C&rsquo;est une contrainte forte pour bon nombre de projets.<\/p>\n<p>NodeJS \u00e9tant bas\u00e9e sur une gestion des \u00e9v\u00e9nements non bloquante, ceci et le plus souvent un avantage mais est parfois d\u00e9routant car on a perdu l&rsquo;aspect s\u00e9quentiel des \u00e9v\u00e9nements. Il faut donc en tenir compte par moment.<\/p>\n<p>Enfin, m\u00eame si Johnny-Five g\u00e8re la plupart des composants courants, il faut tout de m\u00eame jeter un \u0153il sur le site officiel ou faire une recherche pour savoir comment proc\u00e9der<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Un d\u00e9p\u00f4t pour en savoir plus La suite de cette article n&rsquo;est qu&rsquo;une page du wiki d&rsquo;un d\u00e9p\u00f4t github contenant des projets et des explications pour d\u00e9buter facilement avec ses&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":978,"menu_order":8,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-345","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Arduino et Javascript - Maths &amp; Num\u00e9rique<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Arduino et Javascript - Maths &amp; Num\u00e9rique\" \/>\n<meta property=\"og:description\" content=\"Un d\u00e9p\u00f4t pour en savoir plus La suite de cette article n&rsquo;est qu&rsquo;une page du wiki d&rsquo;un d\u00e9p\u00f4t github contenant des projets et des explications pour d\u00e9buter facilement avec ses&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/\" \/>\n<meta property=\"og:site_name\" content=\"Maths &amp; Num\u00e9rique\" \/>\n<meta property=\"article:modified_time\" content=\"2022-01-05T21:41:57+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/\",\"url\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/\",\"name\":\"Arduino et Javascript - Maths &amp; Num\u00e9rique\",\"isPartOf\":{\"@id\":\"https:\/\/wordpress.callac.online\/#website\"},\"datePublished\":\"2017-12-26T23:33:58+00:00\",\"dateModified\":\"2022-01-05T21:41:57+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/wordpress.callac.online\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Num\u00e9rique\",\"item\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Arduino\",\"item\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Arduino et Javascript\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/wordpress.callac.online\/#website\",\"url\":\"https:\/\/wordpress.callac.online\/\",\"name\":\"Maths & Num\u00e9rique\",\"description\":\"Des outils pour les enseignants de math\u00e9matiques et de num\u00e9rique\",\"publisher\":{\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/wordpress.callac.online\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940\",\"name\":\"dlefur\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g\",\"caption\":\"dlefur\"},\"logo\":{\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/\"},\"description\":\"Enseignant de math\u00e9matiques Lyc\u00e9e Pasteur S\u00e3o Paulo\",\"sameAs\":[\"http:\/\/wordpress.callac.online\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Arduino et Javascript - Maths &amp; Num\u00e9rique","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/","og_locale":"fr_FR","og_type":"article","og_title":"Arduino et Javascript - Maths &amp; Num\u00e9rique","og_description":"Un d\u00e9p\u00f4t pour en savoir plus La suite de cette article n&rsquo;est qu&rsquo;une page du wiki d&rsquo;un d\u00e9p\u00f4t github contenant des projets et des explications pour d\u00e9buter facilement avec ses&hellip;","og_url":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/","og_site_name":"Maths &amp; Num\u00e9rique","article_modified_time":"2022-01-05T21:41:57+00:00","twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/","url":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/","name":"Arduino et Javascript - Maths &amp; Num\u00e9rique","isPartOf":{"@id":"https:\/\/wordpress.callac.online\/#website"},"datePublished":"2017-12-26T23:33:58+00:00","dateModified":"2022-01-05T21:41:57+00:00","breadcrumb":{"@id":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/arduino-et-javascript\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/wordpress.callac.online\/"},{"@type":"ListItem","position":2,"name":"Num\u00e9rique","item":"https:\/\/wordpress.callac.online\/index.php\/numerique\/"},{"@type":"ListItem","position":3,"name":"Arduino","item":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/"},{"@type":"ListItem","position":4,"name":"Arduino et Javascript"}]},{"@type":"WebSite","@id":"https:\/\/wordpress.callac.online\/#website","url":"https:\/\/wordpress.callac.online\/","name":"Maths & Num\u00e9rique","description":"Des outils pour les enseignants de math\u00e9matiques et de num\u00e9rique","publisher":{"@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wordpress.callac.online\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":["Person","Organization"],"@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940","name":"dlefur","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g","caption":"dlefur"},"logo":{"@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/"},"description":"Enseignant de math\u00e9matiques Lyc\u00e9e Pasteur S\u00e3o Paulo","sameAs":["http:\/\/wordpress.callac.online"]}]}},"_links":{"self":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/345","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/comments?post=345"}],"version-history":[{"count":1,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/345\/revisions"}],"predecessor-version":[{"id":1042,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/345\/revisions\/1042"}],"up":[{"embeddable":true,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/978"}],"wp:attachment":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/media?parent=345"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}