Outils pour utilisateurs

Outils du site


Panneau latéral

Accès aux Documents

documentation:wifi2

Le module WIFI2

Présentation générale du module WIFI2

Caractéristiques générales


Première utilisation : configuration du module

Par défaut, le module WIFI2 est livré avec la configuration suivante :

  • Mode : Access point
  • SSID : technozone51
  • passwd : technozone51
  • IP du module : 192.168.4.1
  • IP de la passerelle : 192.168.4.1
  • Masque de sous-réseau : 255.255.255.0
  • Verbose : off

Il est parfaitement possible d'utiliser le module wifi2 avec ses paramètres par défaut. Mais si l'on possède plusieurs module wifi2, il convient de changer les paramètres afin de pouvoir distinguer les différents modules. Si l'on préfère un fonctionnement en mode station , on pourra également adapter les paramètres à votre réseau wifi pré-existant.

Suivez le lien pour voir comment Configurer le module wifi2.


Utilisation de l'éditeur d'interface

Construire son interface

  • Glisser les widgets sur la surface de travail.
  • Il est possible d'accéder aux propriété d'un widget en cliquant sur l'icône de gauche.
  • L'icône de droite permet de supprimer un widget.
  • En bas à droite d'un widget apparaît une poignée de redimenssionnement.
  • On peut déplacer un widget en le glissant à partir de son entête bleu.

Editer les propriétés d'un widget

  • Pour chaque widdget, on peut modifier certaines propriétés qui modifie l'aspect de celui-ci. Tous les widgets ont un champ qui s'appelle “Description” qu'il convient de renseigner au mieux afin de pouvoir identifier à l'avenir le rôle de chaque widget. Ceci permettra à l'utilisateur de s'y retrouver au moment de programmer l'interaction avec son interface avec Blockly@rduino.
  • Chaque widget est associé à un unique champ numéroté ( de 1 à 100 ). C'est via ce numéro de champ, que la carte arduino pourra lire ou écrire l'état d'un widget.

Téléversement de l'interface dans le module WIFI2

  • Une fois votre interface construite, il vous suffit de vérifier que l'adresse IP de votre module est correcte ( Ne pas modifier le numéro de port qui doit être 81 ! ) puis de cliquer sur le bouton “Téléverser dans le module WIFI”.

  • Le téléversement terminé, vous pouvez accéder à votre interface depuis n'importe quel navigateur internet en tapant l'adresse : http://192.168.4.1/interface ( remplacer éventuellement le numéro IP par celui de votre module )


Interaction avec votre interface depuis une carte Arduino

Préambule

Je vous propose afin de suivre ce tutotiel de construire l'interface ci-dessous :

  • Glisser un label , changer le texte en “Etat de la led rouge” , agrandir le widget d'une case vers la droite
  • Glisser un interrupteur
  • Glisser une led
  • Téléverser votre interface dans le module WIFI1

Votre interface Web est prête, elle a été téléversée dans votre module WIFI1. Maintenant, il est temps d’interagir avec elle en programmant votre carte Arduino ( UNO ou MEGA ). Cette étape sera grandement facilitée par l'utilisation de Blockly@rduino

Utilisation de Blockly@rduino

  • Sélectionner votre carte ( UNO ou MEGA )
  • Les blocs sont accessibles sous la catégorie “Technozone51” puis “Wifi”

  • L'exemple ci-dessous , permet d'intercepter les changement d'état de l'interrupteur ( attaché au champ n°2 ) afin de modifier l'état de la led sur l'interface web ( attachée au champ n°3 ) ainsi que d'une led physique connectée à la broche 4 de l'arduino. Vous pouvez chargez ce programme directement dans Blocly@rduino

Quelques points importants sur ce premier programme :

  • Remarque 1 : Dans la boucle principale de votre programme, il faut obligatoirement y mettre une temporisation d'au moins 10ms afin de dégager du temps processeur pour que l'arduino gère correctement l'interruption logiciel qui s'occupe de la liaison série avec le module wifi1. En cas d'oublie de cette temporisation, l'interruption logiciel n'étant pas géré, la communication avec le module wifi1 est impossible !
  • Remarque 2 : Ne pas utiliser la clause sinon du test car on teste si un évènement ce produit. En effet , ce n'est pas parce qu'un événement ne se produit pas que sont événement contraire se produit ! Dans l'exemple du programme, ce n'est pas parce que l'interrupteur n'a pas basculé sur vrai qu'il a obligatoirement basculé sur faux ! C'est pourquoi le programme teste les deux événements possibles dans deux tests “si” distincts.
  • remarque 3 : Ne pas oublier de vider le tampon de réception des messages wifi, une fois tous les cas testés. Si on oublie de vider le tampon, les ordres suivants seraient ignorés…

Utilisation de mblock

Communication avec le firmware Technozone51

Par défaut, les modules WIFI2 sont livrés préprogrammés avec le firmware Technozone51. Ce firmware inclus un serveur Web ( port 80 ) et un serveur Websocket ( port 81 ). Il gère la communication avec les différents clients ( navigateurs web / websocket ) et avec la carte Arduino via un simple port série ( vitesse 9600 bauds ) en utilisant un protocole simple. La section suivante liste les commandes reconnues par le firmware Technozone51. Une fois le module WIFI2 branché à votre ordinateur via un câble USB ( avec le cavalier LOCK retiré ) , il vous suffit d'ouvrir une console “moniteur série” ( la loupe dans le logiciel Arduino ) pour communiquer avec votre module.

Attention ! certaines commandes ( delete, format ) étant irréversibles, la plus grande prudence est de mise !

  • Une fois la console série active, cliquez sur le bouton RESET du module WIFI1, Vous voyez apparaitre dans la console, les informations de démarrage du module.

  • En tapant “help” dans la console, vous avez le listing des commandes reconnues qui apparait.

Commandes reconnues par le firmware Technozone51

help :           show this quick reference
====
? :              same as help
=
mode [mode] :    set your module as a wifi station or as a wifi acces point
===========          example : mode STA                    //set your module as a Wifi Station
                     example : mode AP                     //set your module as a Wifi acces point
getip :          show the module ip
=====
getmac :         show the mac adress
======
getconfig :      show all the configuration stored in EEPROM
=========
ping :           test if module is responsive. the response is '>OK'
====
dir :            list the content of the filesystem
===
delete [file] :  delete a file from the file system
=============        example : delete /interface.html     //delete the file interface.html
format :         erase all files in the file system 
======           no recovery is possible ! so be aware that you know what you do ! Do not use it ! 
list :           show the content of all the 100 fields of the websocket server
====
read [n] :       show the content of the field number 'n' ( 1<=n<=100 ) of the websocket server
========             example : read 1                    //showing the content of the field number 1
write [n] [s] :  write the string 's' into the field number 'n' of the websocket server
=============        example : write 1 hello             //write 'hello' into the field number 1
ver :            show the firmware version of the module
===
serverip [ip] :  fix the IP of the module
=============        example : serverip 192.168.4.1     //fix the module ip
gatewayip [ip] : fix the gateway IP
==============       example : gatewayip 192.168.0.1    //fix the gateway ip
subnetip [ip] :  fix the subnet IP mask
=============        example : subnetip 255.255.255.0  //fix the subnet ip mask
ssid [ssid] :    fix your network ssid of your wifi connection
===========          example : ssid manu8756           //fix your wifi network ssid
passwd [pass] :  fix your wifi password
=============        example : passwd C6754AE23        //fix your network password
store :          stores all the configuration into the EEPROM
=====
restore :        restore all the configuration from the EEPROM
=======
log [name] [s] : append the string 's' into the file named 'log[name].txt'. Create the file if not existing
==============       example : log _test hello        //write 'hello' into the file 'log_test.txt'
                     example : log 1 13.4;15.1        //write '13.4;15.1' into the file 'log1.txt'
dump [file] :    dump the content of the file 'file'
=============        example : dump /log_test.txt     //dump the content of the file '/log_test.txt'
verbose [mode] : set the verbose mode to on or off
==============       example : verbose on            //debugging strings ar send to the serial
                     example : verbose off           //no debugging strings send to serial
camera [mode] :  set the camera mode to on or off
==============       example : camera on             //a camera shield is present
                     example : camera off            //no camera shield is present
resolution [n] : set the camera resolution 0<=n<=8 
===============      example : resolution 0         //set the camera resolution to 160x120
                     example : resolution 1         //set the camera resolution to 176x144
                     example : resolution 2         //set the camera resolution to 320x240
                     example : resolution 3         //set the camera resolution to 352x288
                     example : resolution 4         //set the camera resolution to 640x480
                     example : resolution 5         //set the camera resolution to 800x600
                     example : resolution 6         //set the camera resolution to 1024x768
                     example : resolution 7         //set the camera resolution to 1280x1024
                     example : resolution 8         //set the camera resolution to 1600x1200
shoot [n] :      take a picture and store it into /pics/[n].jpg  with n>0
==========           example : shoot 1                //Take a picture and store it into /pics/1.jpg
reset :          reset all the internal settings of the ESP. Reboot your module after waiting 1 minute
=====

Lien vers le compositeur d'interface

documentation/wifi2.txt · Dernière modification: 2018/04/16 15:01 par admin