|
|
| (97 versions intermédiaires par le même utilisateur non affichées) |
| Ligne 2 : |
Ligne 2 : |
| |Main_Picture=Code_minimal_des_fonctions_r_seau_WiKi_Reseau.png | | |Main_Picture=Code_minimal_des_fonctions_r_seau_WiKi_Reseau.png |
| |Licences=Attribution (CC-BY) | | |Licences=Attribution (CC-BY) |
| |Description=Nous allons résumer ici les différentes façons d'utiliser les fonction réseau des cartes compatibles Arduino possédant une puce Wi-Fi (Wemos D1 mini, ESP32, ...). Ces fonctions vont permettre à ces cartes de discuter entre elles, d'accéder à un site web, ou même de se comporter elles-même comme un (mini) site web. | | |Description=Page obsolète - voir dans la rubrique "Introduction" les liens vers les pages qui la remplacent. |
| |Disciplines scientifiques=Arduino, Computing | | |Disciplines scientifiques=Arduino, Computing |
| |Difficulty=Technical | | |Difficulty=Technical |
| Ligne 10 : |
Ligne 10 : |
| }} | | }} |
| {{Introduction | | {{Introduction |
| |Introduction=Cette expérience regroupe différentes manières de bénéficier des capacités de communication des cartes compatibles Arduino possédant une puce Wi-Fi. On suppose (''Cf. "Expériences ré-requises" ci-après'') que vous avez déjà manipulé une carte Arduino et son environnement de développement. '''Toutes les étapes décrites ici sont en fait indépendantes''' : | | |Introduction='''Page obsolète'''. Elle a été découpée en quatre épisodes, accessibles ici : |
|
| |
|
| <br /> | | <br /> |
|
| |
|
| *Les deux premières étapes permettent à notre carte de se connecter au Wi-Fi, de façon basique ('''étape 1''') ou un peu plus évoluée, et souple ('''étape 2''') ;
| | #[https://www.wikidebrouillard.org/wiki/Code_Minimal_R%C3%A9seau_-_(1)_Connecter_le_Wemos_D1_mini_%C3%A0_internet_en_wifi Connecter le Wemos D1 Mini à internet en Wi-Fi]. |
| *L''''étape 3''' permet à la carte d'être dans un mode particulier, dit "AP"(Access Point") et se comporter comme une borne Wi-Fi.
| | #[https://www.wikidebrouillard.org/wiki/Code_Minimal_R%C3%A9seau_-_(2)_H%C3%A9berger_un_site_web_sur_mon_Wemos_D1_mini Héberger un site web sur mon Wemos D1 Mini]. |
| *Les étapes suivantes correspondent à des besoins différents :
| | #[https://www.wikidebrouillard.org/wiki/Code_Minimal_R%C3%A9seau_-_(3)_Mon_D1_Mini_r%C3%A9cup%C3%A8re_des_donn%C3%A9es_sur_Internet_(Json) Mon Wemos D1 Mini récupère des données sur Internet (format Json)]. |
| **'''étape 4''' : visualiser et/ou modifier des paramètres de notre carte via une interface web ;
| | #[https://www.wikidebrouillard.org/wiki/Code_Minimal_R%C3%A9seau_-_(4)_Mes_Wemos_D1_Mini_discutent_sur_Internet_avec_MQTT Mes Wemos D1 Mini discutent sur Internet (protocole MQTT)] |
| **'''étape 5''' : permettre à notre carte d'accéder à des données d'un site externe, utilisant le format standardisé '''JSON''' <sup>(1)</sup>
| |
| **'''étape 6''' : permettre à notre carte d'envoyer et de recevoir des messages courts, via le protocole standardisé '''MQTT''' <sup>(1)</sup>
| |
|
| |
|
| Dans la même philosophie que les expériences "[https://www.wikidebrouillard.org/wiki/Code_minimal_des_capteurs_pour_Arduino Code minimal des capteurs pour Arduino]" et "[https://www.wikidebrouillard.org/wiki/Code_minimal_des_actionneurs_pour_Arduino Code minimal des actionneurs pour Arduino]", <u>nous fournirons ici uniquement le code relatif à nos besoins de connexion</u>, sans mettre au point une quelconque application. Donc, ici, pas besoin de connecter une led ou un capteur, donc <u>pas de schéma de montage</u> : vous branchez simplement votre carte en USB sur votre ordinateur, et les résultats seront visibles en mode texte dans le moniteur série de l'environnement de développement Arduino.
| |
|
| |
|
| | | <u>Il est nécessaire de commencer par l'épisode 1</u>, par contre les épisodes suivants peuvent être consultés dans n'importe quel ordre. |
| Il existe bien sûr déjà un tas de tutoriels avec des exemples similaires, sans compter bien sûr les exemples fournis avec les bibliothèques que l'on va utiliser <sup>(2)</sup>. La modeste contribution de de cette page est de tenter de regrouper les cas de figures les plus importants. S'il en manque, n'hésitez pas à mettre un commentaire, voire à ajouter une étape !
| |
| | |
| | |
| '''(1)''' ''Pas d'inquiétude sur les "JSON "et autre "MQTT", on explique tout dans les étapes correspondantes''
| |
| | |
| '''(2)''' ''On donnera d'ailleurs les liens vers les bibliothèques et leurs exemples à chaque étape.''
| |
| }}
| |
| {{Materials
| |
| |ItemList={{ItemList
| |
| |Item=D1 mini
| |
| }}{{ItemList
| |
| |Item=Câble USB - micro-USB
| |
| }}{{ItemList
| |
| |Item=Logiciel Arduino
| |
| }}
| |
| |Prerequisites={{Prerequisites
| |
| |Prerequisites=Installer l'environnement Arduino sur votre système
| |
| }}{{Prerequisites
| |
| |Prerequisites=Premiers pas avec Arduino
| |
| }}{{Prerequisites
| |
| |Prerequisites=Utiliser le D1 mini avec Arduino
| |
| }}
| |
| }}
| |
| {{Tuto Step
| |
| |Step_Title=Connexion Wi-Fi de base
| |
| |Step_Content=Cette première étape permet à un Wemos D1 mini (ou autre carte compatible Arduino avec puce Wi-Fi) de se connecter au Wi-Fi dans un environnement connu, et qui ne change pas ; C'est-à-dire que l'on à accès à une borne Wi-Fi, on connait son mot de passe - aka "clé de sécurité réseau", et a priori la carte va rester dans cet environnement.
| |
| | |
| | |
| '''METTRE LIEN(S) vers description et exemples'''
| |
| | |
| | |
| {| class="wikitable" cellspacing="0" border="0"
| |
| | height="17" bgcolor="#999999" align="left" |
| |
| | valign="middle" bgcolor="#999999" align="center" |
| |
| | bgcolor="#999999" align="center" |Connexion Wi-Fi de base
| |
| |-
| |
| | rowspan="2" valign="middle" height="49" bgcolor="#999999" align="center" |Avant le Setup
| |
| | valign="middle" bgcolor="#999999" align="center" |Importation de la bibliothèque
| |
| | valign="middle" align="left" |
| |
| |-
| |
| | valign="middle" bgcolor="#999999" align="center" |Création de l’objet
| |
| | valign="middle" align="left" |
| |
| |-
| |
| | valign="middle" height="17" bgcolor="#999999" align="center" |Dans le Setup
| |
| | valign="middle" bgcolor="#999999" align="center" |Démarrage de l’objet
| |
| | valign="middle" align="left" |
| |
| |-
| |
| | valign="middle" height="41" bgcolor="#999999" align="center" |Dans le Loop
| |
| | valign="middle" bgcolor="#999999" align="center" |Utilisation
| |
| | valign="middle" align="left" |
| |
| |}<br /><syntaxhighlight lang="arduino" line="1">
| |
| ////////////////////////
| |
| // *Code Minimal* //
| |
| // Wi-Fi de base //
| |
| ////////////////////////
| |
| /*Les programmes "Code Minimal" des petits débrouillards sont conçu pour
| |
| permettre la prise en main rapide d'un composant électronique.
| |
| A retrouver sur https://www.wikidebrouillard.org
| |
| | |
| (...)
| |
|
| |
| ___
| |
| / ___ \
| |
| |_| | |
| |
| /_/
| |
| _ ___ _
| |
| |_| |___|_| |_
| |
| ___|_ _|
| |
| |___| |_|
| |
| | |
| Les petits Débrouillards - décembre 2020 - CC-By-Sa http://creativecommons.org/licenses/by-nc-sa/3.0/
| |
| | |
| */
| |
| | |
| // Déclaration des variables constantes
| |
| (...)
| |
| | |
| // Boucle d'initialisation
| |
| void setup() {
| |
| | |
| (...)
| |
| | |
| }
| |
| | |
| //Boucle principale
| |
| void loop() {
| |
| | |
| (...)
| |
| | |
| }
| |
| </syntaxhighlight><br />
| |
| }}
| |
| {{Tuto Step
| |
| |Step_Title=Oui, mais si mon Wi-Fi change ?
| |
| |Step_Content=Dans l'étape précédente on supposait que le Wi-Fi était permanent (cas où les cartes ne quittent pas notre labo, par exemple). Mais si on souhaite faire voyager nos cartes (démos dans des écoles, etc ...), on a deux possibilités
| |
| | |
| *on vient avec son environnement de développement Arduino, on met à jour le code Arduino avec les nouvelles informations Wi-Fi, et on téléverse le code sur toutes nos cartes ... un peu laborieux ...
| |
| *on utilise la bibliothèque "wifimanager", qui nous simplifie grandement la tâche !
| |
| | |
| (... à suivre)
| |
| | |
| | |
| '''METTRE LIEN(S) vers description et exemples'''
| |
| | |
| {| class="wikitable" cellspacing="0" border="0"
| |
| | height="17" bgcolor="#999999" align="left" |
| |
| | valign="middle" bgcolor="#999999" align="center" |
| |
| | bgcolor="#999999" align="center" |Wifimanager
| |
| |-
| |
| | rowspan="2" valign="middle" height="49" bgcolor="#999999" align="center" |Avant le Setup
| |
| | valign="middle" bgcolor="#999999" align="center" |Importation de la bibliothèque
| |
| | valign="middle" align="left" |
| |
| |-
| |
| | valign="middle" bgcolor="#999999" align="center" |Création de l’objet
| |
| | valign="middle" align="left" |
| |
| |-
| |
| | valign="middle" height="17" bgcolor="#999999" align="center" |Dans le Setup
| |
| | valign="middle" bgcolor="#999999" align="center" |Démarrage de l’objet
| |
| | valign="middle" align="left" |
| |
| |-
| |
| | valign="middle" height="41" bgcolor="#999999" align="center" |Dans le Loop
| |
| | valign="middle" bgcolor="#999999" align="center" |Utilisation
| |
| | valign="middle" align="left" |
| |
| |}<br /><syntaxhighlight lang="arduino" line="1">
| |
| ////////////////////////
| |
| // *Code Minimal* //
| |
| // Wi-Fi Manager //
| |
| ////////////////////////
| |
| /*Les programmes "Code Minimal" des petits débrouillards sont conçu pour
| |
| permettre la prise en main rapide d'un composant électronique.
| |
| A retrouver sur https://www.wikidebrouillard.org
| |
| | |
| (...)
| |
|
| |
| ___
| |
| / ___ \
| |
| |_| | |
| |
| /_/
| |
| _ ___ _
| |
| |_| |___|_| |_
| |
| ___|_ _|
| |
| |___| |_|
| |
| | |
| Les petits Débrouillards - décembre 2020 - CC-By-Sa http://creativecommons.org/licenses/by-nc-sa/3.0/
| |
| | |
| */
| |
| | |
| // Déclaration des variables constantes
| |
| (...)
| |
| | |
| // Boucle d'initialisation
| |
| void setup() {
| |
| | |
| (...)
| |
| | |
| }
| |
| | |
| //Boucle principale
| |
| void loop() {
| |
| | |
| (...)
| |
| | |
| }
| |
| </syntaxhighlight><br />
| |
| }}
| |
| {{Tuto Step
| |
| |Step_Title=Et si je veux rester en mode AP (Access Point ?)
| |
| }}
| |
| {{Tuto Step
| |
| |Step_Title=Et maintenant, on fait quoi avec le Wi-Fi ? (tiens, pourquoi pas un petit serveur web ?)
| |
| |Step_Content=... Site web pour allumer une led (à détailler)
| |
| | |
| '''METTRE LIEN(S) vers description et exemples'''
| |
| {| class="wikitable" cellspacing="0" border="0"
| |
| | height="17" bgcolor="#999999" align="left" |
| |
| | valign="middle" bgcolor="#999999" align="center" |
| |
| | bgcolor="#999999" align="center" |Site web
| |
| |-
| |
| | rowspan="2" valign="middle" height="49" bgcolor="#999999" align="center" |Avant le Setup
| |
| | valign="middle" bgcolor="#999999" align="center" |Importation de la bibliothèque
| |
| | valign="middle" align="left" |
| |
| |-
| |
| | valign="middle" bgcolor="#999999" align="center" |Création de l’objet
| |
| | valign="middle" align="left" |
| |
| |-
| |
| | valign="middle" height="17" bgcolor="#999999" align="center" |Dans le Setup
| |
| | valign="middle" bgcolor="#999999" align="center" |Démarrage de l’objet
| |
| | valign="middle" align="left" |
| |
| |-
| |
| | valign="middle" height="41" bgcolor="#999999" align="center" |Dans le Loop
| |
| | valign="middle" bgcolor="#999999" align="center" |Utilisation
| |
| | valign="middle" align="left" |
| |
| |}<br /><syntaxhighlight lang="arduino" line="1">
| |
| ////////////////////////
| |
| // *Code Minimal* //
| |
| // Wi-Fi de base //
| |
| ////////////////////////
| |
| /*Les programmes "Code Minimal" des petits débrouillards sont conçu pour
| |
| permettre la prise en main rapide d'un composant électronique.
| |
| A retrouver sur https://www.wikidebrouillard.org
| |
| | |
| (...)
| |
|
| |
| ___
| |
| / ___ \
| |
| |_| | |
| |
| /_/
| |
| _ ___ _
| |
| |_| |___|_| |_
| |
| ___|_ _|
| |
| |___| |_|
| |
| | |
| Les petits Débrouillards - décembre 2020 - CC-By-Sa http://creativecommons.org/licenses/by-nc-sa/3.0/
| |
| | |
| */
| |
| | |
| // Déclaration des variables constantes
| |
| (...)
| |
| | |
| // Boucle d'initialisation
| |
| void setup() {
| |
| | |
| (...)
| |
| | |
| }
| |
| | |
| //Boucle principale
| |
| void loop() {
| |
| | |
| (...)
| |
| | |
| }
| |
| </syntaxhighlight><br />
| |
| | |
| Une application plus complète, permettant d'actionner plusieurs leds et un moteur, et de récupérer des données d'un capteur, est disponible [https://www.wikidebrouillard.org/wiki/Commander_un_D1_mini_avec_une_interface_web ici].
| |
| | |
| | |
| L'utilisation de notre carte en mode n'est qu'un exemple de ce qu'il est possible de faire, il existe plein d'autres possibilités, détaillées dans les étapes suivantes !
| |
| }}
| |
| {{Tuto Step
| |
| |Step_Title=Interrogation de serveurs web (mode JSON)
| |
| }} | | }} |
| | {{Materials}} |
| {{Tuto Step | | {{Tuto Step |
| |Step_Title=Diffusion d'information (mode MQTT) | | |Step_Title=Ben non, y en n'a plus ... |
| | |Step_Content=... puisque la page est obsolète ... (mais le Wiki impose au moins une étape) |
| }} | | }} |
| {{Notes}} | | {{Notes}} |