Communication client serveur avec un robot EV3

  • Posted on: 24 August 2015
  • By: philippe

Voici une première approche très simple et amusante du mode de communication entre un serveur et son client par l'intermédiaire d'un réseau informatique.

Principe de fonctionnement:
Classiquement, la communication entre un serveur est un client s'effectue de la façon suivante :
  - Le serveur attend une requête de la part du client.
  - Lorsqu'il en a besoin, le client envoie une requête.
  - Le serveur répond à cette requête.
Et la boucle recommence.

Dans notre cas, le serveur est situé sur le PC et le client sur le robot. La requête du robot est constituée d'une demande «what?» («que dois je faire?»).  La réponse du serveur sera tapée par l'utilisateur et contiendra une commande suivie d'un ou deux paramètres que le robot sera capable d'interpréter.
Les commandes disponibles sont pour cet exemple uniquement au nombre de deux:
  - «avance» suivie de deux paramètres (distance à parcourir et information de vitesse).
  - «tourne» suivie de deux paramètres (angle de rotation et information de vitesse).
Cette liste peut-être bien sûr complétée et il sera ainsi possible de donner des ordres au robot par l'intermédiaire d'un réseau.
Tel qu'il est présenté, ce projet n'a que peut d'intérêt (hormis l'aspect pédagogique) puis qu'on peut faire la même chose en ouvrant simplement une console en liaison ssh avec le robot. Cependant nous verrons par la suite qu'on peut extrapoler tous types d'applications comme par exemple la communication entre un Raspberry et un robot, la communication entre deux robots (pour effectuer une chorégraphie) ou encore le pilotage d'un robot à partir d'un iPhone. Nous en reparlerons dans de prochains articles.

Langage utilisé: le serveur sur le PC et le client sur le robot sont tous deux écrits en python.