Code minimal des fonctions réseau : Différence entre versions

Ligne 23 : Ligne 23 :
 
{{Tuto Step
 
{{Tuto Step
 
|Step_Title=Connexion Wi-Fi de base
 
|Step_Title=Connexion Wi-Fi de base
|Step_Content=Explications ...
+
|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  (c'est-à-dire que l'on à accès à une borne Wi-Fi et on connait le mot de passe ("clé de sécurité réseau") et permanent.
  
  
Ligne 89 : Ligne 89 :
 
{{Tuto Step
 
{{Tuto Step
 
|Step_Title=Oui, mais si mon Wi-Fi change ?
 
|Step_Title=Oui, mais si mon Wi-Fi change ?
|Step_Content=... Bibliothèque Wifimanager
+
|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)
 +
 
 +
 
 +
{| 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
 
{{Tuto Step
 
|Step_Title=Et maintenant, on fait quoi avec le Wi-Fi ? (un petit serveur web)
 
|Step_Title=Et maintenant, on fait quoi avec le Wi-Fi ? (un petit serveur web)
|Step_Content=... Site web pour allumer une led
+
|Step_Content=... Site web pour allumer une led (à détailler)
 +
 
 +
 
 +
{| 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].
  
  
Plein d'autres possibilités, voir étapes suivantes !
+
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
 
{{Tuto Step

Version du 21 novembre 2022 à 17:30

Auteur avatarPhilippe Blusseau | Dernière modification 6/02/2023 par Philby

Code minimal des fonctions r seau WiKi Reseau.png
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.
Licence : Attribution (CC-BY)

Introduction

(A compléter)

Étape 1 - Connexion Wi-Fi de base

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 (c'est-à-dire que l'on à accès à une borne Wi-Fi et on connait le mot de passe ("clé de sécurité réseau") et permanent.


Connexion Wi-Fi de base
Avant le Setup Importation de la bibliothèque
Création de l’objet
Dans le Setup Démarrage de l’objet
Dans le Loop Utilisation

 1 ////////////////////////
 2 //   *Code Minimal*   //
 3 //    Wi-Fi de base   //
 4 ////////////////////////
 5 /*Les programmes "Code Minimal" des petits débrouillards sont conçu pour 
 6 permettre la prise en main rapide d'un composant électronique.
 7 A retrouver sur https://www.wikidebrouillard.org
 8 
 9 (...)
10  
11    ___
12  / ___ \
13 |_|   | |
14      /_/ 
15      _   ___   _ 
16     |_| |___|_| |_
17          ___|_   _|
18         |___| |_|
19 
20 Les petits Débrouillards - décembre 2020 - CC-By-Sa http://creativecommons.org/licenses/by-nc-sa/3.0/
21 
22 */
23 
24 // Déclaration des variables constantes
25 (...)
26 
27 // Boucle d'initialisation
28 void setup() {
29 
30   (...)
31 
32 }
33 
34 //Boucle principale
35 void loop() {
36 
37   (...)
38 
39 }

Étape 2 - Oui, mais si mon Wi-Fi change ?

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)


Wifimanager
Avant le Setup Importation de la bibliothèque
Création de l’objet
Dans le Setup Démarrage de l’objet
Dans le Loop Utilisation

 1 ////////////////////////
 2 //   *Code Minimal*   //
 3 //    Wi-Fi Manager   //
 4 ////////////////////////
 5 /*Les programmes "Code Minimal" des petits débrouillards sont conçu pour 
 6 permettre la prise en main rapide d'un composant électronique.
 7 A retrouver sur https://www.wikidebrouillard.org
 8 
 9 (...)
10  
11    ___
12  / ___ \
13 |_|   | |
14      /_/ 
15      _   ___   _ 
16     |_| |___|_| |_
17          ___|_   _|
18         |___| |_|
19 
20 Les petits Débrouillards - décembre 2020 - CC-By-Sa http://creativecommons.org/licenses/by-nc-sa/3.0/
21 
22 */
23 
24 // Déclaration des variables constantes
25 (...)
26 
27 // Boucle d'initialisation
28 void setup() {
29 
30   (...)
31 
32 }
33 
34 //Boucle principale
35 void loop() {
36 
37   (...)
38 
39 }

Étape 3 - Et maintenant, on fait quoi avec le Wi-Fi ? (un petit serveur web)

... Site web pour allumer une led (à détailler)


Site web
Avant le Setup Importation de la bibliothèque
Création de l’objet
Dans le Setup Démarrage de l’objet
Dans le Loop Utilisation

 1 ////////////////////////
 2 //   *Code Minimal*   //
 3 //    Wi-Fi de base   //
 4 ////////////////////////
 5 /*Les programmes "Code Minimal" des petits débrouillards sont conçu pour 
 6 permettre la prise en main rapide d'un composant électronique.
 7 A retrouver sur https://www.wikidebrouillard.org
 8 
 9 (...)
10  
11    ___
12  / ___ \
13 |_|   | |
14      /_/ 
15      _   ___   _ 
16     |_| |___|_| |_
17          ___|_   _|
18         |___| |_|
19 
20 Les petits Débrouillards - décembre 2020 - CC-By-Sa http://creativecommons.org/licenses/by-nc-sa/3.0/
21 
22 */
23 
24 // Déclaration des variables constantes
25 (...)
26 
27 // Boucle d'initialisation
28 void setup() {
29 
30   (...)
31 
32 }
33 
34 //Boucle principale
35 void loop() {
36 
37   (...)
38 
39 }

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 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 !

Étape 4 - Interrogation de serveurs web (mode JSON)

Étape 5 - Diffusion d'information (mode MQTT)


Dernière modification 6/02/2023 par user:Philby.

Commentaires

Draft