Projet

Général

Profil

Actions

Mise en œuvre de la communication Wifi

Présentation
Le projet utilise le module Wi-Fi WizFi220.Il sera branché au microcontrôleur via le port série et servira à transmettre les données récupérées par les capteurs à l'ordinateur fixe avec l'IHM déportée. C'est un module Wi-Fi à faible consommation électrique, alimenté en 3.3V. Il émet à la fréquence de 2.4Ghz, est compatible IEEE 802.1 b/g/n et gère des protocoles de sécurité diverses (WEP, WPA-WPA2...). Au niveau du réseau, il gère les protocoles UDP, TCP, DHCP, ARP et DNS. Enfin, il est de taille compacte : 32 x 23.5 x 2.9 mms.

Modes de fonctionnement
Le WizFi220 propose deux modes d'opération :
• Le mode de commande dans lequel les données envoyées au module sont traitées en tant que commandes pour le contrôler.
• Le mode données où les données transmises par le microcontrôleur sur le port série sont envoyées par le Wi-Fi et où les données reçues par Wi-Fi sont transmises par le port série.
Pour passer du mode donnée au mode commande, il faut envoyer la séquence d'échappement "+++", suivi d'une pause d'une seconde durant laquelle il ne faut envoyer aucun caractère sur le port série. Les commandes ATO (caractère ASCII O et non nombre 0), ATA et ATA2 sont utilisées afin de passer du mode commande au mode données. ATO retourne à la dernière session d’auto-connexion si elle existe, sinon elle retourne une erreur. ATA lance l’auto-connexion, en ne conservant pas les paramètres d’association actuels (serveurs TCP ou UDP lancés) mais en lançant ceux configurés par la commande AT+NAUTO, ATA2 lance l’auto-connexion, en conservant les paramètres d’association actuels.
Le module WizFi220 propose une auto connexion. Dans ce cas, le module va automatiquement démarrer les connexions réseaux sans fils en utilisant des paramètres du profil actif actuel, ensuite il transfère les données de manière transparente entre le microcontrôleur et le pc fixe avec l'IHM déportée. Toutefois, après de nombreuses tentatives infructueuses pour faire fonctionner ce mode et le risque que celui-ci représenterait (il vaut mieux régler le module Wi-Fi à chaque démarrage du microcontrôleur, on est ainsi sur de sa configuration, une mémoire n’est pas infaillible) nous avons décidé de ne pas l’utiliser.
Code d’initialisation
AT+WD
On commence d’abord par “désassocier” le module, c’est à dire supprimer toutes connexions qui pourraient être en cours
ATS0=10000
ATS1=5000
ATS2=5000
Ensuite on va grâce aux commandes ATS changer plusieurs délais de déconnexion (time out) afin de régler des problèmes de déconnexion rencontrés au cours des tests (attention, même avec ces valeurs, des déconnexions peuvent se produire au bout d’une dizaine de minutes, ce qui pour notre expérience n’est pas gênant). Les time outs affectés sont dans l’ordre respectif :
- Délai de déconnexion du réseau : passé de 10 000ms à 100 000 ms
- Délai de déconnexion d’auto-association : passé de 5 000ms à 50 000ms
- Délai de déconnexion TCP : passé de 5 000ms à 50 000ms
AT+WM=2
La commande suivante permet de changer le comportement réseau du module, que l’on va régler en mode point d’accès limité.
AT+WAUTH=2
On régle le mode de sécurité désire, ici WEP (N.B : pour pouvoir se connecter sans demande de mot de passe, il suffit de passer ce paramètre à 1).
AT+WWEP1=546ff208ee
On régle la clé de sécurité WEP
AT+NDHCP=0
On règle la nécessité pour le module de demander son adresse IP par DHCP, dans notre cas, puisque le module Wi-Fi est un point d’accès, il dispose d’une adresse IP statique fixé par la commande suivante
AT+NSET=192.168.1.1,255.255.255.0,192.168.1.1
On fixe l’adresse IP du module, l’adresse de sous-réseau et l’adresse de la passerelle
AT+DHCPSRVR=1
On demande au module Wi-Fi d’agir en tant que serveur DHCP afin de fournir au pc qui se connecteront des adresses IP valides. (Attention, afin de pouvoir agir en serveur DHCP, le module Wi-Fi doit avoir une adresse IP statique fixé à l’aide de la commande précédente).
AT+WA=BioMeca
On régle le nom du point d’accés en « BioMeca ».
AT+NSTCP=5000
On lance un serveur TCP sur le port 5000.
ATA2
On applique la configuration et on bascule en mode commande.
Données
Le module Wi-Fi doit transmettre différentes données des capteurs en direction de l’IHM.
Il s’agit des données d’angles et d’accélérations, soient 6 nombres en virgule flottante et des données des Electrocardiogramme, de l’électromyogramme et du capteur de force de préhension, soient 4 autres nombres en virgule flottante.
Il a été convenu de transmettre ses données sous la forme d’une chaine de caractère ASCII, les unes à la suite des autres, séparées par un espace, dans l’ordre d’énumération précédent.

Dans cette partie nous avons mis en oeuvre la transmission des données par le réseau Wi-Fi selon un format de données déterminé. Il faut donc ensuite mettre en place une IHM afin de réceptionner ces données et les afficher.

<- Mise en œuvre de la communication avec le port série RS232 -> IHM

Mis à jour par Anonyme il y a environ 12 ans · 2 révisions