View  Edit  Attributes  History  Attach  Print  Search

ACCUEIL | ARDUINO > S'INSTALLER > DEBUTER > APPROFONDIR | PROCESSING | MECATRONIQUE | MATERIEL | OUTILS | TESTS | Plus...|
Python > Shell > ATELIERS Python + Qt > PyQt apps > PyQt+Arduino | Mes Robots | RepRap | Mes lib'Arduino | Mes shields Arduino | Mes distros | Les Mini-PC |
ATELIERS ARDUINO| VIDEOS | COMPRENDRE | REFERENCES | CODER | TECHNIQUE | GNU/LINUX | LIENS | Rien à voir |

... (utilise 2 cartes Arduino via 2 PC en réseau wifi)

Par X. HINAULT. Le xx Avril 2011.

Intro

Etapes préalables à la mise en place du réseau wifi entre les 2 cartes Arduino.

La mise en place du réseau wifi entre les 2 PC nécessite :

Ici, nous utilisons le port 5905.

Une connaissance minimale en structure de réseau est nécessaire ici :

  • savoir ce qu'est une adresse ip, un sous-masque réseau, un réseau
  • savoir ce qu'est un port
  • savoir ce qu'est un routeur, ce qu'est l'attribution des adresses ip en DHCP.

Rien d'inaccessible cependant !

Le schéma fonctionnel de la chaîne de connexion à réaliser

  • Voici le schéma fonctionnel de la chaine globale de programmes utilisée :

Ce que nous allons faire ici...

Etape 1 : le programme Arduino "serveur" (sur la carte Arduino distante)

Ce que fait ce programme

  • Cette étape est la plus simple : un programme Arduino classique reçoit une chaine de caractères sur le port série et envoi une réponse sur le port série.

Principe du code

Exemple de code

  • Programmer ce code dans votre carte Arduino "serveur" (carte Arduino distante) :

Tester ce programme

Préparation du Terminal côté PC dans le logiciel Arduino

  • Côté PC, il faut ouvrir la fenêtre terminal de l'IDE Arduino : pour ce faire, un simple clic sur le bouton « Sérial Monitor ».
  • La fenêtre « Terminal » s'ouvre alors :
  • Il faut alors régler le débit de communication sur la même valeur que celle utilisée par le programme avec lequel nous allons programmer la carte Arduino :

Point important, il faut également activer l'option "newline" qui active l'envoi du caractère '\n' (ascii 10) lorsque l'on saisi quelque chose dans le champ du Terminal suivi d'un <send>

  • ...

Etape 2 : le programme Processing "serveur" (sur le PC distant)

Ce que fait ce programme

  • Ce code fournit la communication entre le réseau et la carte Arduino côté "serveur".

Principe du code

Exemple de code

Test du programme

  • Lancer ce programme Processing dans l'interface Processing côté serveur. On obtient la fenêtre suivante :
  • On a donc une communication série opérationnelle entre le serveur Processing et le serveur Arduino, et la preuve que le serveur Arduino renvoie bien la chaine reçue. Jusque-là, rien de bien sorcier... Maintenant, l'étape de vérité : la communication entre le serveur Processing et le client Processing par le réseau wifi !

Etape 3 : le programme Arduino "client" (sur la carte Arduino locale)

Ce que fait ce programme

  • Le programme suivant ...

Principe du code

Exemple de code

  • Ce programme est à programmer dans la carte Arduino "client" :

Test du programme

  • Ce programme est très facile à tester : il suffit d'ouvrir une fenêtre Terminal Arduino sur le PC client et on doit voir :

Etape 4 : le programme Processing "client" (sur le PC local)

  • Cette étape est "l'étape de vérité" qui va permettre de vérifier que la communication wifi fonctionne bien entre l'interface Processing serveur et l'interface Processing client.

Ce que fait ce programme

  • Ce programme Processing fournit la communication entre le réseau wifi et la carte Arduino Client.
  • Deux champs texte permettent d'envoyer une chaine de caractère de test vers le client Arduino via le port série ou vers le serveur Processing via le réseau.

Principe du code

Exemple de code

  • Ce code est à copier/coller dans une interface Processing sur le PC client. Il ne reste plus alors qu'à lancer le programme.

Test du programme

  • Une fois que le programme est lancé (sur le poste client), on doit voir :
  • De son côté, le serveur indique qu'il a détecté une connexion d'un client et précise si l'adresse ip du client est la bonne :
  • Si vous obtenez bien ces messages, c'est que votre connexion wifi fonctionne bien entre les 2 PC !! Le simple fait que les 2 interfaces fonctionnent sans message d'erreur au lancement confirme que la connexion wifi est opérationnelle.
  • Si vous avez lancé l'accès au bureau distant du PC serveur sur le PC client, vous devez avoir les 2 fenêtres des interfaces Serveur (jaune) et Client(vert) visibles en même temps sur le PC client :